RTEMS 6.1-rc4
Loading...
Searching...
No Matches
Macros

Macros

#define ARRAY_ADDRESS(__ADDRESS__, __HANDLE__)
 NAND memory address computation.
 
#define COLUMN_ADDRESS(__HANDLE__)   ((__HANDLE__)->Config.PageSize)
 NAND memory Column address computation.
 
#define ADDR_1ST_CYCLE(__ADDRESS__)   (uint8_t)(__ADDRESS__) /* 1st addressing cycle */
 NAND memory address cycling.
 
#define ADDR_2ND_CYCLE(__ADDRESS__)   (uint8_t)((__ADDRESS__) >> 8) /* 2nd addressing cycle */
 
#define ADDR_3RD_CYCLE(__ADDRESS__)   (uint8_t)((__ADDRESS__) >> 16) /* 3rd addressing cycle */
 
#define ADDR_4TH_CYCLE(__ADDRESS__)   (uint8_t)((__ADDRESS__) >> 24) /* 4th addressing cycle */
 
#define COLUMN_1ST_CYCLE(__ADDRESS__)   (uint8_t)((__ADDRESS__) & 0xFFU) /* 1st Column addressing cycle */
 NAND memory Columns cycling.
 
#define COLUMN_2ND_CYCLE(__ADDRESS__)   (uint8_t)((__ADDRESS__) >> 8) /* 2nd Column addressing cycle */
 

Detailed Description

Macro Definition Documentation

◆ ADDR_1ST_CYCLE

#define ADDR_1ST_CYCLE (   __ADDRESS__)    (uint8_t)(__ADDRESS__) /* 1st addressing cycle */

NAND memory address cycling.

Parameters
__ADDRESS__NAND memory address.
Return values
NANDaddress cycling value.

◆ ARRAY_ADDRESS

#define ARRAY_ADDRESS (   __ADDRESS__,
  __HANDLE__ 
)
Value:
((__ADDRESS__)->Page + \
(((__ADDRESS__)->Block + \
(((__ADDRESS__)->Plane) * \
((__HANDLE__)->Config.PlaneSize))) * \
((__HANDLE__)->Config.BlockSize)))

NAND memory address computation.

Parameters
__ADDRESS__NAND memory address.
__HANDLE__NAND handle.
Return values
NANDRaw address value

◆ COLUMN_1ST_CYCLE

#define COLUMN_1ST_CYCLE (   __ADDRESS__)    (uint8_t)((__ADDRESS__) & 0xFFU) /* 1st Column addressing cycle */

NAND memory Columns cycling.

Parameters
__ADDRESS__NAND memory address.
Return values
NANDColumn address cycling value.

◆ COLUMN_ADDRESS

#define COLUMN_ADDRESS (   __HANDLE__)    ((__HANDLE__)->Config.PageSize)

NAND memory Column address computation.

Parameters
__HANDLE__NAND handle.
Return values
NANDRaw address value