  | 
  
    AM64x MCU+ SDK
    11.01.00
    
   | 
           
 | 
 
 
 
 
Go to the documentation of this file.
   66 #include <drivers/hw_include/csl_types.h> 
   67 #include <drivers/hw_include/cslr_gpmc.h> 
   68 #include <drivers/gpmc/v0/dma/gpmc_dma.h> 
   84 #define GPMC_CHIP_SELECT_CS0                            (0U) 
   85 #define GPMC_CHIP_SELECT_CS1                            (1U) 
   86 #define GPMC_CHIP_SELECT_CS2                            (2U) 
   87 #define GPMC_CHIP_SELECT_CS3                            (3U) 
   98 #define GPMC_FIFOEVENT_STATUS                         (0U) 
   99 #define GPMC_TERMINALCOUNT_STATUS                     (1U) 
  100 #define GPMC_WAIT0EDGEDETECTION_STATUS                (2U) 
  101 #define GPMC_WAIT1EDGEDETECTION_STATUS                (3U) 
  112 #define GPMC_FIFOEVENT_INT                            (0U) 
  113 #define GPMC_TERMINALCOUNT_INT                        (1U) 
  114 #define GPMC_WAIT0EDGEDETECTION_INT                   (2U) 
  115 #define GPMC_WAIT1EDGEDETECTION_INT                   (3U) 
  126 #define GPMC_PREFETCH_ACCESSMODE_READ                 (0U) 
  127 #define GPMC_PREFETCH_ACCESSMODE_WRITE                (1U) 
  138 #define GPMC_ECC_ALGORITHM_HAMMINGCODE                (0U) 
  139 #define GPMC_ECC_ALGORITHM_BCH                        (1U) 
  149 #define GPMC_ECC_BCH_ERRCORRCAP_UPTO_4BITS            (0U) 
  150 #define GPMC_ECC_BCH_ERRCORRCAP_UPTO_8BITS            (1U) 
  151 #define GPMC_ECC_BCH_ERRCORRCAP_UPTO_16BITS           (2U) 
  162 #define GPMC_ECCPOINTER_RESULT_1                      (1U) 
  163 #define GPMC_ECCPOINTER_RESULT_2                      (2U) 
  164 #define GPMC_ECCPOINTER_RESULT_3                      (3U) 
  165 #define GPMC_ECCPOINTER_RESULT_4                      (4U) 
  166 #define GPMC_ECCPOINTER_RESULT_5                      (5U) 
  167 #define GPMC_ECCPOINTER_RESULT_6                      (6U) 
  168 #define GPMC_ECCPOINTER_RESULT_7                      (7U) 
  169 #define GPMC_ECCPOINTER_RESULT_8                      (8U) 
  170 #define GPMC_ECCPOINTER_RESULT_9                      (9U) 
  179 #define GPMC_ECC_SIZE_0                               (0U) 
  180 #define GPMC_ECC_SIZE_1                               (1U) 
  189 #define GPMC_ECC_RESULT_1                             (1U) 
  190 #define GPMC_ECC_RESULT_2                             (2U) 
  191 #define GPMC_ECC_RESULT_3                             (3U) 
  192 #define GPMC_ECC_RESULT_4                             (4U) 
  193 #define GPMC_ECC_RESULT_5                             (5U) 
  194 #define GPMC_ECC_RESULT_6                             (6U) 
  195 #define GPMC_ECC_RESULT_7                             (7U) 
  196 #define GPMC_ECC_RESULT_8                             (8U) 
  197 #define GPMC_ECC_RESULT_9                             (9U) 
  206 #define GPMC_BCH_RESULT0                             (0U) 
  207 #define GPMC_BCH_RESULT1                             (1U) 
  208 #define GPMC_BCH_RESULT2                             (2U) 
  209 #define GPMC_BCH_RESULT3                             (3U) 
  210 #define GPMC_BCH_RESULT4                             (4U) 
  211 #define GPMC_BCH_RESULT5                             (5U) 
  212 #define GPMC_BCH_RESULT6                             (6U) 
  221 #define GPMC_CS_MASK_ADDR_SIZE_256MB                            (0x00U) 
  222 #define GPMC_CS_MASK_ADDR_SIZE_128MB                            (0x08U) 
  223 #define GPMC_CS_MASK_ADDR_SIZE_64MB                             (0x0cU) 
  224 #define GPMC_CS_MASK_ADDR_SIZE_32MB                             (0x0eU) 
  225 #define GPMC_CS_MASK_ADDR_SIZE_16MB                             (0x0fU) 
  251 #define GPMC_CS_TIMING_CONFIG(CSWrOffTime, CSRdOffTime, CSExtDelayFlag, \ 
  253     ((uint32_t) (((CSWrOffTime) << CSL_GPMC_CONFIG2_CSWROFFTIME_SHIFT)    \ 
  254                  & CSL_GPMC_CONFIG2_CSWROFFTIME_MASK) |                   \ 
  255      (((CSRdOffTime) << CSL_GPMC_CONFIG2_CSRDOFFTIME_SHIFT)               \ 
  256       & CSL_GPMC_CONFIG2_CSRDOFFTIME_MASK) |                              \ 
  257      (((CSExtDelayFlag) << CSL_GPMC_CONFIG2_CSEXTRADELAY_SHIFT)           \ 
  258       & CSL_GPMC_CONFIG2_CSEXTRADELAY_MASK) |                             \ 
  259      (((CSOnTime) << CSL_GPMC_CONFIG2_CSONTIME_SHIFT)                     \ 
  260       & CSL_GPMC_CONFIG2_CSONTIME_MASK)) 
  298 #define GPMC_ADV_TIMING_CONFIG(ADVAADMuxWrOffTime, ADVAADMuxRdOffTime,      \ 
  299                                ADVWrOffTime, ADVRdOffTime, ADVExtDelayFlag, \ 
  302     ((uint32_t) (((ADVAADMuxWrOffTime) <<                                   \ 
  303                   CSL_GPMC_CONFIG3_ADVAADMUXWROFFTIME_SHIFT) &                \ 
  304                  CSL_GPMC_CONFIG3_ADVAADMUXWROFFTIME_MASK) |                  \ 
  305      (((ADVAADMuxRdOffTime) << CSL_GPMC_CONFIG3_ADVAADMUXRDOFFTIME_SHIFT) &   \ 
  306       CSL_GPMC_CONFIG3_ADVAADMUXRDOFFTIME_MASK) |                             \ 
  307      (((ADVWrOffTime) << CSL_GPMC_CONFIG3_ADVWROFFTIME_SHIFT) &               \ 
  308       CSL_GPMC_CONFIG3_ADVWROFFTIME_MASK) |                                   \ 
  309      (((ADVRdOffTime) << CSL_GPMC_CONFIG3_ADVRDOFFTIME_SHIFT) &               \ 
  310       CSL_GPMC_CONFIG3_ADVRDOFFTIME_MASK) |                                   \ 
  311      (((ADVExtDelayFlag) << CSL_GPMC_CONFIG3_ADVEXTRADELAY_SHIFT) &           \ 
  312       CSL_GPMC_CONFIG3_ADVEXTRADELAY_MASK) |                                  \ 
  313      (((ADVAADMuxOnTime) << CSL_GPMC_CONFIG3_ADVAADMUXONTIME_SHIFT) &         \ 
  314       CSL_GPMC_CONFIG3_ADVAADMUXONTIME_MASK) |                                \ 
  315      (((ADVOnTime) << CSL_GPMC_CONFIG3_ADVONTIME_SHIFT) &                     \ 
  316       CSL_GPMC_CONFIG3_ADVONTIME_MASK)) 
  362 #define GPMC_WE_OE_TIMING_CONFIG(WEOffTime, WEExtDelayFlag, WEOnTime,           \ 
  363                                  OEAADMuxOffTime, OEOffTime, OEExtDelayFlag,    \ 
  364                                  OEAADMuxOnTime, OEOnTime)                      \ 
  365     ((uint32_t) (((WEOffTime) <<                                                \ 
  366                   CSL_GPMC_CONFIG4_WEOFFTIME_SHIFT) &                             \ 
  367                  CSL_GPMC_CONFIG4_WEOFFTIME_MASK) |                               \ 
  368      (((WEExtDelayFlag) <<                                                      \ 
  369        CSL_GPMC_CONFIG4_WEEXTRADELAY_SHIFT) & CSL_GPMC_CONFIG4_WEEXTRADELAY_MASK) | \ 
  371        CSL_GPMC_CONFIG4_WEONTIME_SHIFT) & CSL_GPMC_CONFIG4_WEONTIME_MASK) |         \ 
  372      (((OEAADMuxOffTime) <<                                                     \ 
  373        CSL_GPMC_CONFIG4_OEAADMUXOFFTIME_SHIFT) &                                  \ 
  374       CSL_GPMC_CONFIG4_OEAADMUXOFFTIME_MASK) |                                    \ 
  376        CSL_GPMC_CONFIG4_OEOFFTIME_SHIFT) & CSL_GPMC_CONFIG4_OEOFFTIME_MASK) |       \ 
  377      (((OEExtDelayFlag) <<                                                      \ 
  378        CSL_GPMC_CONFIG4_OEEXTRADELAY_SHIFT) & CSL_GPMC_CONFIG4_OEEXTRADELAY_MASK) | \ 
  379      (((OEAADMuxOnTime) <<                                                      \ 
  380        CSL_GPMC_CONFIG4_OEAADMUXONTIME_SHIFT) &                                   \ 
  381       CSL_GPMC_CONFIG4_OEAADMUXONTIME_MASK) |                                     \ 
  383        CSL_GPMC_CONFIG4_OEONTIME_SHIFT) & CSL_GPMC_CONFIG4_OEONTIME_MASK)) 
  403 #define GPMC_RDACCESS_CYCLETIME_TIMING_CONFIG(rdCycleTime, wrCycleTime,         \ 
  405                                               pageBurstAccessTime)              \ 
  406     ((uint32_t) (((rdCycleTime) <<                                              \ 
  407                   CSL_GPMC_CONFIG5_RDCYCLETIME_SHIFT) &                           \ 
  408                  CSL_GPMC_CONFIG5_RDCYCLETIME_MASK) |                             \ 
  410        CSL_GPMC_CONFIG5_WRCYCLETIME_SHIFT) & CSL_GPMC_CONFIG5_WRCYCLETIME_MASK) |   \ 
  411      (((rdAccessTime) <<                                                        \ 
  412        CSL_GPMC_CONFIG5_RDACCESSTIME_SHIFT) & CSL_GPMC_CONFIG5_RDACCESSTIME_MASK) | \ 
  413      (((pageBurstAccessTime) <<                                                 \ 
  414        CSL_GPMC_CONFIG5_PAGEBURSTACCESSTIME_SHIFT) &                              \ 
  415       CSL_GPMC_CONFIG5_PAGEBURSTACCESSTIME_MASK)) 
  448 #define GPMC_CYCLE2CYCLE_BUSTURNAROUND_TIMING_CONFIG(cycle2CycleDelay,          \ 
  449                                                      cycle2CycleDelaySameCSCfg, \ 
  450                                                      cycle2CycleDelayDiffCSCfg, \ 
  452     ((uint32_t) (((cycle2CycleDelay) <<                                         \ 
  453                   CSL_GPMC_CONFIG6_CYCLE2CYCLEDELAY_SHIFT) &                      \ 
  454                  CSL_GPMC_CONFIG6_CYCLE2CYCLEDELAY_MASK) |                        \ 
  455      (((cycle2CycleDelaySameCSCfg) <<                                           \ 
  456        CSL_GPMC_CONFIG6_CYCLE2CYCLESAMECSEN_SHIFT) &                              \ 
  457       CSL_GPMC_CONFIG6_CYCLE2CYCLESAMECSEN_MASK) |                                \ 
  458      (((cycle2CycleDelayDiffCSCfg) <<                                           \ 
  459        CSL_GPMC_CONFIG6_CYCLE2CYCLEDIFFCSEN_SHIFT) &                              \ 
  460       CSL_GPMC_CONFIG6_CYCLE2CYCLEDIFFCSEN_MASK) |                                \ 
  462        CSL_GPMC_CONFIG6_BUSTURNAROUND_SHIFT) & CSL_GPMC_CONFIG6_BUSTURNAROUND_MASK)) 
  465 #define GPMC_DMA_COPY_LOWER_LIMIT                   (512U) 
  467 #define GPMC_CS_BASE_ADDR_SHIFT                      (24U) 
  469 #define GPMC_ECC_WRAP_MODE1                          (1) 
  471 #define GPMC_CMD_INVALID                             (0xFFFFFFFFU) 
  473 #define GPMC_MEM_TYPE_NAND                           (0) 
  474 #define GPMC_MEM_TYPE_PSRAM                          (1) 
  475 #define GPMC_MEM_TYPE_NORLIKE                        (1)    //Same as pSRAM 
  485 typedef enum GPMC_v1_nandEccAlgo_s
 
  500 typedef enum GPMC_OperatingMode_s {
 
  516 typedef enum GPMC_TransferMode_s {
 
  534 typedef enum GPMC_TransactionType_e {
 
  549 typedef enum GPMC_TransactionStatus_s {
 
  588 typedef struct GPMC_Transaction_s {
 
  614 typedef struct GPMC_Params_s
 
  658 typedef struct GPMC_Object_s {
 
  683 typedef struct GPMC_timingParams_s
 
  745 typedef struct GPMC_HwAttrs_s
 
  801 typedef struct GPMC_Config_s {
 
 1206         params->
devType = CSL_GPMC_CONFIG1_DEVICETYPE_NANDLIKE;
 
 1207         params->
devType = CSL_GPMC_CONFIG1_DEVICESIZE_EIGHTBITS;
 
  
 
GPMC driver object.
Definition: gpmc.h:658
 
int32_t GPMC_writeNandCommand(GPMC_Handle handle, GPMC_nandCmdParams *cmdParams)
Function to write NAND command parameters.
 
uint32_t waitPinPol
Definition: gpmc.h:772
 
int32_t GPMC_configureTimingParameters(GPMC_Handle handle)
Function to configure GPMC timing parameters.
 
uint32_t waitPinNum
Definition: gpmc.h:770
 
int32_t GPMC_eccBchConfigureElm(GPMC_Handle handle, uint8_t numSectors)
Function to configure ELM module for error correction.
 
int32_t GPMC_configurePrefetchPostWriteEngine(GPMC_Handle handle)
Function to configure GPMC PREFETCH read and POST write engine.
 
void GPMC_norMakeCmd(uint8_t busWidth, uint32_t cmd, uint8_t *cmdBuf)
Function to create correct NOR cmd based on bus width.
 
uint32_t cycleDelaySameChipSel
Definition: gpmc.h:729
 
@ GPMC_TRANSACTION_TYPE_WRITE_CMDREG
Definition: gpmc.h:541
 
uint32_t isOpen
Definition: gpmc.h:666
 
uint32_t intrPriority
Definition: gpmc.h:758
 
uint32_t dataBaseAddr
Definition: gpmc.h:750
 
@ GPMC_TRANSFER_CSN_DEASSERT
Definition: gpmc.h:554
 
uint32_t writeType
Definition: gpmc.h:780
 
void GPMC_init(void)
This function initializes the GPMC module.
 
uint32_t csOnTime
Definition: gpmc.h:685
 
uint32_t intrNum
Definition: gpmc.h:756
 
uint32_t rdCycleTime
Definition: gpmc.h:721
 
@ GPMC_TRANSACTION_TYPE_READ_CMDREG
Definition: gpmc.h:539
 
uint32_t rdAccessTime
Definition: gpmc.h:717
 
int32_t GPMC_nandWriteData(GPMC_Handle handle, GPMC_Transaction *trans)
Function to write data to NANDflash using CPU prefetch/post write engine.
 
int32_t GPMC_nandReadData(GPMC_Handle handle, GPMC_Transaction *trans)
Function to read data from NAND flash using DMA or CPU prefetch/post write engine.
 
uint16_t index
Definition: tisci_rm_proxy.h:3
 
uint32_t oeOffTime
Definition: gpmc.h:709
 
@ GPMC_TRANSFER_FAILED
Definition: gpmc.h:553
 
uint32_t busTurnAroundTime
Definition: gpmc.h:735
 
int32_t GPMC_norReadData(GPMC_Handle handle, uint32_t offset, uint8_t *buf, uint32_t len)
Function to read data from norlike device.
 
uint32_t advAadMuxOnTime
Definition: gpmc.h:697
 
GPMC Driver configuration structure.
Definition: gpmc.h:801
 
const GPMC_HwAttrs * attrs
Definition: gpmc.h:803
 
uint32_t optimisedAccess
Definition: gpmc.h:786
 
uint32_t gpmcBaseAddr
Definition: gpmc.h:748
 
GPMC_Object * object
Definition: gpmc.h:805
 
uint32_t regionSize
Definition: gpmc.h:649
 
uint8_t * GPMC_norMakeAddr(uint8_t busWidth, uint32_t blkAddr, uint32_t offset)
Function to create correct address based on bus width.
 
uint32_t csExDelay
Definition: gpmc.h:782
 
GPMC_TransferMode transferMode
Definition: gpmc.h:631
 
Data structure to set transaction type parameters.
Definition: gpmc.h:588
 
void GPMC_transactionInit(GPMC_Transaction *trans)
Function to initialise GPMC_Transaction structure to default values.
 
GPMC instance attributes.
Definition: gpmc.h:746
 
uint32_t inputClkFreq
Definition: gpmc.h:754
 
void * Buf
Definition: gpmc.h:594
 
uint32_t cycle2CycleDelay
Definition: gpmc.h:727
 
int32_t GPMC_setDeviceType(GPMC_Handle handle)
Function to set device type (NANDLIKE OR NORLIKE) for GPMC instance connected to external device.
 
@ GPMC_NAND_ECC_ALGO_HAMMING_1BIT
Definition: gpmc.h:488
 
uint32_t transferTimeout
Definition: gpmc.h:598
 
int32_t GPMC_eccCalculateBchSyndromePolynomial(GPMC_Handle handle, uint8_t *pEccdata, uint32_t sector)
Function to compute BCH syndrome polynomial for NAND write operation.
 
uint32_t timeLatency
Definition: gpmc.h:764
 
void GPMC_eccResultRegisterClear(GPMC_Handle handle)
Function to clear GPMC ECC result register.
 
uint32_t cycleOptimisation
Definition: gpmc.h:788
 
GPMC_OperatingMode
GPMC driver operating modes.
Definition: gpmc.h:500
 
@ GPMC_OPERATING_MODE_POLLING
Definition: gpmc.h:506
 
uint32_t chipSelAddrSize
Definition: gpmc.h:768
 
uint32_t devType
Definition: gpmc.h:621
 
GPMC_TransactionType transType
Definition: gpmc.h:590
 
int32_t GPMC_enableFlashWriteProtect(GPMC_Handle handle)
Function to disable WRITE protect line.
 
uint32_t numRowAddrCycles
Definition: gpmc.h:571
 
@ GPMC_NAND_ECC_ALGO_BCH_8BIT
Definition: gpmc.h:490
 
SemaphoreP_Object mutex
Definition: gpmc.h:670
 
uint32_t cmdCycle2
Definition: gpmc.h:567
 
@ GPMC_NAND_ECC_ALGO_BCH_16BIT
Definition: gpmc.h:491
 
uint32_t wrCycleTime
Definition: gpmc.h:723
 
@ GPMC_TRANSACTION_TYPE_READ
Definition: gpmc.h:535
 
HwiP_Object hwi
Definition: gpmc.h:668
 
@ GPMC_OPERATING_MODE_BLOCKING
Definition: gpmc.h:502
 
GPMC_Config * GPMC_Handle
Definition: gpmc.h:816
 
static void GPMC_Params_init(GPMC_Params *params)
Function to initialize the GPMC_Params struct to its defaults.
Definition: gpmc.h:1199
 
int32_t GPMC_setDeviceSize(GPMC_Handle handle)
Function to set device width for GPMC instance connected to external device.
 
uint32_t oeOnTime
Definition: gpmc.h:707
 
uint32_t oeAadMuxOffTime
Definition: gpmc.h:713
 
GPMC_TransferMode
GPMC data transfer modes.
Definition: gpmc.h:516
 
int32_t GPMC_eccGetBchSyndromePolynomial(GPMC_Handle handle, uint32_t sector, uint32_t *bchData)
Function to get BCH syndrome polynomial per sector NAND read operation.
 
void GPMC_close(GPMC_Handle handle)
Function to close a GPMC peripheral specified by the GPMC handle.
 
GPMC_timingParams timingParams
Definition: gpmc.h:774
 
uint32_t weOffTime
Definition: gpmc.h:705
 
uint32_t waitTimeout
Definition: gpmc.h:577
 
uint32_t intrEnable
Definition: gpmc.h:627
 
GPMC_Params params
Definition: gpmc.h:659
 
uint32_t advOnTime
Definition: gpmc.h:691
 
uint32_t colAddress
Definition: gpmc.h:573
 
uint32_t weOnTtime
Definition: gpmc.h:703
 
int32_t GPMC_disableFlashWriteProtect(GPMC_Handle handle)
Function to disable WRITE protect line.
 
@ GPMC_TRANSFER_MODE_BLOCKING
Definition: gpmc.h:518
 
@ GPMC_NAND_ECC_ALGO_BCH_4BIT
Definition: gpmc.h:489
 
GPMC_Handle GPMC_open(uint32_t index, const GPMC_Params *prms)
This function opens a given GPMC peripheral.
 
int32_t GPMC_eccValueSizeSet(GPMC_Handle handle, uint32_t eccSize, uint32_t eccSizeVal)
Function to set ECC used and unused bytes size in nibbles.
 
uint32_t oeAadMuxOnTime
Definition: gpmc.h:711
 
uint32_t elmBaseAddr
Definition: gpmc.h:752
 
@ GPMC_NAND_ECC_ALGO_NONE
Definition: gpmc.h:487
 
uint32_t csWrOffTime
Definition: gpmc.h:689
 
Gpmc_DmaArgs * gpmcDmaHandle
Definition: gpmc.h:676
 
GPMC_nandEccAlgo eccAlgo
Definition: gpmc.h:776
 
uint32_t advAadMuxRdOffTime
Definition: gpmc.h:699
 
@ GPMC_TRANSFER_CANCELED
Definition: gpmc.h:552
 
uint32_t regionStartAddr
Definition: gpmc.h:647
 
uint32_t cycleDelayDiffChipSel
Definition: gpmc.h:732
 
uint32_t advWrOffTime
Definition: gpmc.h:695
 
GPMC timing parameters.
Definition: gpmc.h:684
 
@ GPMC_TRANSFER_TIMEOUT
Definition: gpmc.h:555
 
uint32_t numColAddrCycles
Definition: gpmc.h:575
 
@ GPMC_TRANSFER_STARTED
Definition: gpmc.h:551
 
SemaphoreP_Object transferComplete
Definition: gpmc.h:672
 
uint32_t gGpmcConfigNum
Externally defined driver configuration array size.
 
int32_t GPMC_eccBchFillSyndromeValue(GPMC_Handle handle, uint32_t sector, uint32_t *bchData)
Function to fill BCH syndrome value per sector to ELM module.
 
uint32_t advAadMuxWrOffTime
Definition: gpmc.h:701
 
int32_t GPMC_norWriteData(GPMC_Handle handle, uint32_t offset, uint8_t *buf, uint32_t len)
Function to write data to norlike device.
 
@ GPMC_OPERATING_MODE_CALLBACK
Definition: gpmc.h:504
 
int32_t GPMC_eccBchSectorGetError(GPMC_Handle handle, uint32_t sector, uint32_t *errCount, uint32_t *errLoc)
Function to get number of errors per sector by ELM module.
 
const GPMC_AddrRegion * dmaRestrictedRegions
Definition: gpmc.h:790
 
uint32_t cmdCycle1
Definition: gpmc.h:565
 
uint32_t csRdOffTime
Definition: gpmc.h:687
 
uint32_t rowAddress
Definition: gpmc.h:569
 
int32_t GPMC_eccEngineEnable(GPMC_Handle handle)
Function to enable GPMC ECC engine.
 
void * arg
Definition: gpmc.h:596
 
GPMC driver instance parameters.
Definition: gpmc.h:615
 
@ GPMC_TRANSFER_MODE_CALLBACK
Definition: gpmc.h:523
 
uint32_t accessType
Definition: gpmc.h:784
 
int32_t GPMC_eccBchCheckErrorProcessingStatus(GPMC_Handle handle, uint32_t sector)
Function to get error processing status for a sector by ELM module.
 
uint32_t count
Definition: gpmc.h:592
 
uint32_t readType
Definition: gpmc.h:778
 
GPMC_Handle GPMC_getHandle(uint32_t driverInstanceIndex)
This function returns the handle of an open GPMC Instance from the instance index.
 
uint32_t GPMC_getInputClk(GPMC_Handle handle)
This function returns the input clk frequency GPMC was programmed at.
 
Opaque Hwi object used with the Hwi APIs.
Definition: HwiP.h:89
 
uint32_t chipSelBaseAddr
Definition: gpmc.h:766
 
uint32_t wrAcessTime
Definition: gpmc.h:719
 
@ GPMC_TRANSFER_COMPLETED
Definition: gpmc.h:550
 
Opaque semaphore object used with the semaphore APIs.
Definition: SemaphoreP.h:59
 
GPMC_OperatingMode operMode
Definition: gpmc.h:661
 
Data structure to set NAND command parameters.
Definition: gpmc.h:564
 
int32_t gpmcDmaChIndex
Definition: gpmc.h:619
 
uint32_t clkDivider
Definition: gpmc.h:760
 
uint32_t chipSel
Definition: gpmc.h:625
 
uint32_t pageBurstAccess
Definition: gpmc.h:715
 
uint32_t dmaEnable
Definition: gpmc.h:629
 
GPMC_TransactionStatus status
Definition: gpmc.h:600
 
uint32_t checkReadypin
Definition: gpmc.h:579
 
GPMC_TransactionType
Type of the GPMC transaction for read and write.
Definition: gpmc.h:534
 
GPMC_nandEccAlgo
GPMC ECC engine algoritms.
Definition: gpmc.h:486
 
uint32_t advRdOffTime
Definition: gpmc.h:693
 
GPMC Address Region.
Definition: gpmc.h:646
 
GPMC_Transaction * transaction
Definition: gpmc.h:674
 
void GPMC_writeNandCommandParamsInit(GPMC_nandCmdParams *cmdParams)
Function to initialise GPMC_nandCmdParams structure to default values.
 
@ GPMC_TRANSACTION_TYPE_WRITE
Definition: gpmc.h:537
 
uint32_t wrDataOnMuxBusTime
Definition: gpmc.h:725
 
uint32_t addrDataMux
Definition: gpmc.h:762
 
GPMC_Config gGpmcConfig[]
Externally defined driver configuration array.
 
void GPMC_deinit(void)
This function de-initializes the GPMC module.
 
uint32_t memDevice
Definition: gpmc.h:633
 
int32_t GPMC_eccBchStartErrorProcessing(GPMC_Handle handle, uint8_t sector)
Function to start error processing for a sector by ELM module.
 
int32_t GPMC_eccEngineBCHConfig(GPMC_Handle handle, uint32_t eccSteps)
Function to configure GPMC ECC engine for BCH algorithm.
 
GPMC_TransactionStatus
Transaction status codes that are set by the GPMC driver.
Definition: gpmc.h:549
 
uint32_t devSize
Definition: gpmc.h:623