main_ubi_sdk v 0.1.3
This is UBI4 documentation
base_memory_driver.h File Reference
#include "stdint.h"
#include "stdbool.h"
Include dependency graph for base_memory_driver.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  ram_buffer_info_struct
 
struct  base_memory_driver_struct
 

Macros

#define ROUND_MEMORY_CELL_SIZE(_sizeof_, _base_)
 

Typedefs

typedef uint32_t(* read32_t) (void *memory_driver, uint32_t Address)
 
typedef uint16_t(* read16_t) (void *memory_driver, uint32_t Address)
 
typedef uint8_t(* read8_t) (void *memory_driver, uint32_t Address)
 
typedef bool(* write_bytes_t) (void *memory_driver, uint32_t Address, uint8_t *Buf, uint32_t Size)
 
typedef void *(* smart_write_t) (void *memory_driver, uint32_t Address, uint8_t *Buf, uint32_t Size, memory_driver_status_enum *status)
 
typedef bool(* compare_memory_val_t) (void *memory_driver, uint32_t Address, uint8_t *val, uint32_t val_size)
 
typedef bool(* memory_region_is_free_t) (void *memory_driver, uint32_t Address, uint32_t Len)
 
typedef void(* clear_sector_t) (void *memory_driver, uint32_t Address, uint32_t size_clear)
 
typedef void(* clear_segment_t) (void *memory_driver, uint32_t Address, uint32_t Len)
 
typedef void(* finish_used_flash_t) (void *memory_driver)
 
typedef void *(* get_pointer_t) (void *memory_driver, uint32_t Address, int size, memory_driver_status_enum *status)
 
typedef void(* read_data_t) (void *memory_driver, uint32_t Address, uint8_t *readBuffer, uint32_t len, memory_driver_status_enum *status)
 
typedef void(* clear_flash_for_fw_t) (void *memory_driver, uint32_t Address, uint32_t size_clear)
 
typedef bool(* Write_FW_t) (void *memory_driver, uint32_t Address, uint8_t *Buf, uint32_t Size, uint32_t General_Size, uint32_t FW_Size)
 

Enumerations

enum  memory_driver_status_enum {
  MDSE_OK = 0 , MDSE_ERROR , MDSE_OWERWRITING_NOT_REQUERED , MDSE_DATA_CONTAINE_IN_RAM_BUFFER ,
  MDSE_FLASH_BUFFER_BUSY
}
 
enum  memory_type_enum {
  MTE_INTERNAL_FLASH = 0 , MTE_INTERNAL_EEPROM , MTE_INTERNAL_RAM , MTE_EXTERNAL_FLASH ,
  MTE_EXTERNAL_EEPROM , MTE_EXTERNAL_RAM
}
 

Macro Definition Documentation

◆ ROUND_MEMORY_CELL_SIZE

#define ROUND_MEMORY_CELL_SIZE ( _sizeof_,
_base_ )
Value:
(_sizeof_%_base_ ? ((_sizeof_/_base_)*_base_+_base_) : (_sizeof_))

Typedef Documentation

◆ clear_flash_for_fw_t

typedef void(* clear_flash_for_fw_t) (void *memory_driver, uint32_t Address, uint32_t size_clear)

◆ clear_sector_t

typedef void(* clear_sector_t) (void *memory_driver, uint32_t Address, uint32_t size_clear)

◆ clear_segment_t

typedef void(* clear_segment_t) (void *memory_driver, uint32_t Address, uint32_t Len)

◆ compare_memory_val_t

typedef bool(* compare_memory_val_t) (void *memory_driver, uint32_t Address, uint8_t *val, uint32_t val_size)

◆ finish_used_flash_t

typedef void(* finish_used_flash_t) (void *memory_driver)

◆ get_pointer_t

typedef void *(* get_pointer_t) (void *memory_driver, uint32_t Address, int size, memory_driver_status_enum *status)

◆ memory_region_is_free_t

typedef bool(* memory_region_is_free_t) (void *memory_driver, uint32_t Address, uint32_t Len)

◆ read16_t

typedef uint16_t(* read16_t) (void *memory_driver, uint32_t Address)

◆ read32_t

typedef uint32_t(* read32_t) (void *memory_driver, uint32_t Address)

◆ read8_t

typedef uint8_t(* read8_t) (void *memory_driver, uint32_t Address)

◆ read_data_t

typedef void(* read_data_t) (void *memory_driver, uint32_t Address, uint8_t *readBuffer, uint32_t len, memory_driver_status_enum *status)

◆ smart_write_t

typedef void *(* smart_write_t) (void *memory_driver, uint32_t Address, uint8_t *Buf, uint32_t Size, memory_driver_status_enum *status)

◆ write_bytes_t

typedef bool(* write_bytes_t) (void *memory_driver, uint32_t Address, uint8_t *Buf, uint32_t Size)

◆ Write_FW_t

typedef bool(* Write_FW_t) (void *memory_driver, uint32_t Address, uint8_t *Buf, uint32_t Size, uint32_t General_Size, uint32_t FW_Size)

Enumeration Type Documentation

◆ memory_driver_status_enum

Enumerator
MDSE_OK 
MDSE_ERROR 
MDSE_OWERWRITING_NOT_REQUERED 
MDSE_DATA_CONTAINE_IN_RAM_BUFFER 
MDSE_FLASH_BUFFER_BUSY 

◆ memory_type_enum

Enumerator
MTE_INTERNAL_FLASH 
MTE_INTERNAL_EEPROM 
MTE_INTERNAL_RAM 
MTE_EXTERNAL_FLASH 
MTE_EXTERNAL_EEPROM 
MTE_EXTERNAL_RAM