RTEMS 6.1-rc2
Loading...
Searching...
No Matches
Data Structures | Enumerator | Variables
Flexram

Data Structures

struct  _flexram_allocate_ram
 FLEXRAM allocate ocram, itcm, dtcm size. More...
 

Variables

const uint8_t _flexram_allocate_ram::ocramBankNum
 
const uint8_t _flexram_allocate_ram::dtcmBankNum
 
const uint8_t _flexram_allocate_ram::itcmBankNum
 

Driver version

enum  { kFLEXRAM_BankNotUsed = 0U , kFLEXRAM_BankOCRAM = 1U , kFLEXRAM_BankDTCM = 2U , kFLEXRAM_BankITCM = 3U }
 FLEXRAM bank type. More...
 
enum  _flexram_bank_allocate_src { kFLEXRAM_BankAllocateThroughHardwareFuse = 0U , kFLEXRAM_BankAllocateThroughBankCfg = 1U , kFLEXRAM_BankAllocateThroughHardwareFuse = 0U , kFLEXRAM_BankAllocateThroughBankCfg = 1U }
 FLEXRAM bank allocate source. More...
 
typedef enum _flexram_bank_allocate_src flexram_bank_allocate_src_t
 FLEXRAM bank allocate source.
 
typedef struct _flexram_allocate_ram flexram_allocate_ram_t
 FLEXRAM allocate ocram, itcm, dtcm size.
 
status_t FLEXRAM_AllocateRam (flexram_allocate_ram_t *config)
 FLEXRAM allocate on-chip ram for OCRAM,ITCM,DTCM This function is independent of FLEXRAM_Init, it can be called directly if ram re-allocate is needed.
 
#define FSL_SOC_FLEXRAM_ALLOCATE_DRIVER_VERSION   (MAKE_VERSION(2, 0, 2))
 SOC_FLEXRAM_ALLOCATE driver version 2.0.2.
 

Driver version

enum  { kFLEXRAM_BankNotUsed = 0U , kFLEXRAM_BankOCRAM = 1U , kFLEXRAM_BankDTCM = 2U , kFLEXRAM_BankITCM = 3U }
 FLEXRAM bank type. More...
 
enum  _flexram_bank_allocate_src { kFLEXRAM_BankAllocateThroughHardwareFuse = 0U , kFLEXRAM_BankAllocateThroughBankCfg = 1U , kFLEXRAM_BankAllocateThroughHardwareFuse = 0U , kFLEXRAM_BankAllocateThroughBankCfg = 1U }
 FLEXRAM bank allocate source. More...
 
typedef enum _flexram_bank_allocate_src flexram_bank_allocate_src_t
 FLEXRAM bank allocate source.
 
typedef struct _flexram_allocate_ram flexram_allocate_ram_t
 FLEXRAM allocates OCRAM, ITCM, DTCM size.
 
#define FSL_SOC_FLEXRAM_ALLOCATE_DRIVER_VERSION   (MAKE_VERSION(2, 0, 2))
 SOC_FLEXRAM_ALLOCATE driver version 2.0.2.
 

Driver version

enum  { kFLEXRAM_Read = 0U , kFLEXRAM_Write = 1U }
 Flexram write/read selection. More...
 
enum  { kFLEXRAM_OCRAMAccessError = FLEXRAM_INT_STATUS_OCRAM_ERR_STATUS_MASK , kFLEXRAM_DTCMAccessError = FLEXRAM_INT_STATUS_DTCM_ERR_STATUS_MASK , kFLEXRAM_ITCMAccessError = FLEXRAM_INT_STATUS_ITCM_ERR_STATUS_MASK , kFLEXRAM_InterruptStatusAll }
 Interrupt status flag mask. More...
 
enum  _flexram_tcm_access_mode { kFLEXRAM_TCMAccessFastMode = 0U , kFLEXRAM_TCMAccessWaitMode = 1U }
 FLEXRAM TCM access mode. Fast access mode expected to be finished in 1-cycle; Wait access mode expected to be finished in 2-cycle. Wait access mode is a feature of the flexram and it should be used when the CPU clock is too fast to finish TCM access in 1-cycle. Normally, fast mode is the default mode, the efficiency of the TCM access will better. More...
 
enum  {
  kFLEXRAM_TCMSize32KB = 32 * 1024U , kFLEXRAM_TCMSize64KB = 64 * 1024U , kFLEXRAM_TCMSize128KB = 128 * 1024U , kFLEXRAM_TCMSize256KB = 256 * 1024U ,
  kFLEXRAM_TCMSize512KB = 512 * 1024U
}
 FLEXRAM TCM support size. More...
 
typedef enum _flexram_tcm_access_mode flexram_tcm_access_mode_t
 FLEXRAM TCM access mode. Fast access mode expected to be finished in 1-cycle; Wait access mode expected to be finished in 2-cycle. Wait access mode is a feature of the flexram and it should be used when the CPU clock is too fast to finish TCM access in 1-cycle. Normally, fast mode is the default mode, the efficiency of the TCM access will better.
 
#define FSL_FLEXRAM_DRIVER_VERSION   (MAKE_VERSION(2U, 2U, 0U))
 Driver version.
 
#define FLEXRAM_ECC_ERROR_DETAILED_INFO    0U /* Define to zero means get raw ECC error information, which needs parse it by user. */
 Get ECC error detailed information.
 

Initialization and de-initialization

void FLEXRAM_Init (FLEXRAM_Type *base)
 FLEXRAM module initialization function.
 
void FLEXRAM_Deinit (FLEXRAM_Type *base)
 De-initializes the FLEXRAM.
 

Detailed Description

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

FLEXRAM bank type.

Enumerator
kFLEXRAM_BankNotUsed 

bank is not used

kFLEXRAM_BankOCRAM 

bank is OCRAM

kFLEXRAM_BankDTCM 

bank is DTCM

kFLEXRAM_BankITCM 

bank is ITCM

◆ anonymous enum

anonymous enum

Flexram write/read selection.

Enumerator
kFLEXRAM_Read 

read

kFLEXRAM_Write 

write

◆ anonymous enum

anonymous enum

Interrupt status flag mask.

Enumerator
kFLEXRAM_OCRAMAccessError 

OCRAM accesses unallocated address

kFLEXRAM_DTCMAccessError 

DTCM accesses unallocated address

kFLEXRAM_ITCMAccessError 

ITCM accesses unallocated address

kFLEXRAM_InterruptStatusAll 

all the interrupt status mask

◆ anonymous enum

anonymous enum

FLEXRAM TCM support size.

Enumerator
kFLEXRAM_TCMSize32KB 

TCM total size be 32KB

kFLEXRAM_TCMSize64KB 

TCM total size be 64KB

kFLEXRAM_TCMSize128KB 

TCM total size be 128KB

kFLEXRAM_TCMSize256KB 

TCM total size be 256KB

kFLEXRAM_TCMSize512KB 

TCM total size be 512KB

◆ anonymous enum

anonymous enum

FLEXRAM bank type.

Enumerator
kFLEXRAM_BankNotUsed 

bank is not used

kFLEXRAM_BankOCRAM 

bank is OCRAM

kFLEXRAM_BankDTCM 

bank is DTCM

kFLEXRAM_BankITCM 

bank is ITCM

◆ _flexram_bank_allocate_src [1/2]

FLEXRAM bank allocate source.

Enumerator
kFLEXRAM_BankAllocateThroughHardwareFuse 

allocate ram through hardware fuse value

kFLEXRAM_BankAllocateThroughBankCfg 

allocate ram through FLEXRAM_BANK_CFG

kFLEXRAM_BankAllocateThroughHardwareFuse 

allocate ram through hardware fuse value

kFLEXRAM_BankAllocateThroughBankCfg 

allocate ram through FLEXRAM_BANK_CFG

◆ _flexram_bank_allocate_src [2/2]

FLEXRAM bank allocate source.

Enumerator
kFLEXRAM_BankAllocateThroughHardwareFuse 

allocate ram through hardware fuse value

kFLEXRAM_BankAllocateThroughBankCfg 

allocate ram through FLEXRAM_BANK_CFG

kFLEXRAM_BankAllocateThroughHardwareFuse 

allocate ram through hardware fuse value

kFLEXRAM_BankAllocateThroughBankCfg 

allocate ram through FLEXRAM_BANK_CFG

◆ _flexram_tcm_access_mode

FLEXRAM TCM access mode. Fast access mode expected to be finished in 1-cycle; Wait access mode expected to be finished in 2-cycle. Wait access mode is a feature of the flexram and it should be used when the CPU clock is too fast to finish TCM access in 1-cycle. Normally, fast mode is the default mode, the efficiency of the TCM access will better.

Enumerator
kFLEXRAM_TCMAccessFastMode 

fast access mode

kFLEXRAM_TCMAccessWaitMode 

wait access mode

Function Documentation

◆ FLEXRAM_AllocateRam()

status_t FLEXRAM_AllocateRam ( flexram_allocate_ram_t config)

FLEXRAM allocate on-chip ram for OCRAM,ITCM,DTCM This function is independent of FLEXRAM_Init, it can be called directly if ram re-allocate is needed.

FLEXRAM allocates an on-chip ram for OCRAM, ITCM and DTCM. This function is independent from FLEXRAM_Init, and can be called directly if ram re-allocate is needed.

Parameters
configallocate configuration.
Return values
kStatus_InvalidArgumentthe argument is invalid kStatus_Success allocate success
Parameters
configAllocate configuration.
Return values
kStatus_InvalidArgumentWhen the argument is invalid.
kStatus_SuccessUpon allocate success.

FLEXRAM allocate on-chip ram for OCRAM,ITCM,DTCM This function is independent of FLEXRAM_Init, it can be called directly if ram re-allocate is needed.

brief FLEXRAM allocate on-chip ram for OCRAM,ITCM,DTCM This function is independent of FLEXRAM_Init, it can be called directly if ram re-allocate is needed. param config allocate configuration. retval kStatus_InvalidArgument the argument is invalid kStatus_Success allocate success

Parameters
configAllocate configuration.
Return values
kStatus_InvalidArgumentWhen the argument is invalid.
kStatus_SuccessUpon allocate success.

brief FLEXRAM allocate on-chip ram for OCRAM,ITCM,DTCM This function is independent of FLEXRAM_Init, it can be called directly if ram re-allocate is needed. param config allocate configuration. retval kStatus_InvalidArgument the argument is invalid kStatus_Success allocate success

◆ FLEXRAM_Deinit()

void FLEXRAM_Deinit ( FLEXRAM_Type base)

De-initializes the FLEXRAM.

brief Deinitializes the FLEXRAM.

◆ FLEXRAM_Init()

void FLEXRAM_Init ( FLEXRAM_Type base)

FLEXRAM module initialization function.

Parameters
baseFLEXRAM base address.

brief FLEXRAM module initialization function.

param base FLEXRAM base address.

Variable Documentation

◆ dtcmBankNum

const uint8_t _flexram_allocate_ram::dtcmBankNum

dtcm bank number to allocate, the number should be power of 2

DTCM bank number to allocate, the number should be power of 2.

◆ itcmBankNum

const uint8_t _flexram_allocate_ram::itcmBankNum

itcm bank number to allocate, the number should be power of 2

ITCM bank number to allocate, the number should be power of 2.

◆ ocramBankNum

const uint8_t _flexram_allocate_ram::ocramBankNum

ocram banknumber which the SOC support

OCRAM banknumber which the SOC support.