Altera SoCAL  16.0
The Altera SoC Abstraction Layer (SoCAL) API Reference Manual
 All Data Structures Variables Typedefs Groups
Register : no_of_blocks_per_lun

Description

Register Layout

Bits Access Reset Description
[3:0] RW 0xf ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE
[31:4] ??? 0x0 UNDEFINED

Field : value

Indicates the first block of next LUN. This information is used for extracting the target LUN during LUN interleaving. After Initialization, if the controller detects an ONFi device, this field is automatically updated by the controller. For other devices, software will need to write to this register for proper interleaving. The value in this register is interpreted as follows- [list][*]0 - Next LUN starts from 1024. [*]1 - Next LUN starts from 2048. [*]2 - Next LUN starts from 4096 and so on... [/list]

Field Access Macros:

#define ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE_LSB   0
 
#define ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE_MSB   3
 
#define ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE_WIDTH   4
 
#define ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE_SET_MSK   0x0000000f
 
#define ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE_CLR_MSK   0xfffffff0
 
#define ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE_RESET   0xf
 
#define ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE_GET(value)   (((value) & 0x0000000f) >> 0)
 
#define ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE_SET(value)   (((value) << 0) & 0x0000000f)
 

Data Structures

struct  ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_s
 

Macros

#define ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_OFST   0x90
 

Typedefs

typedef struct
ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_s 
ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_t
 

Data Structure Documentation

struct ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_s

WARNING: The C register and register group struct declarations are provided for convenience and illustrative purposes. They should, however, be used with caution as the C language standard provides no guarantees about the alignment or atomicity of device memory accesses. The recommended practice for writing hardware drivers is to use the SoCAL access macros and alt_read_word() and alt_write_word() functions.

The struct declaration for register ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN.

Data Fields
uint32_t value: 4 ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE
uint32_t __pad0__: 28 UNDEFINED

Macro Definitions

#define ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE_LSB   0

The Least Significant Bit (LSB) position of the ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE register field.

#define ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE_MSB   3

The Most Significant Bit (MSB) position of the ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE register field.

#define ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE_WIDTH   4

The width in bits of the ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE register field.

#define ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE_SET_MSK   0x0000000f

The mask used to set the ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE register field value.

#define ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE_CLR_MSK   0xfffffff0

The mask used to clear the ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE register field value.

#define ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE_RESET   0xf

The reset value of the ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE register field.

#define ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE_GET (   value)    (((value) & 0x0000000f) >> 0)

Extracts the ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE field value from a register.

#define ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE_SET (   value)    (((value) << 0) & 0x0000000f)

Produces a ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_VALUE register field value suitable for setting the register.

#define ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN_OFST   0x90

The byte offset of the ALT_NAND_DMA_NO_OF_BLOCKS_PER_LUN register from the beginning of the component.

Typedef Documentation