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

Description

Bootstrap fields sampled by NAND Flash Controller when released from reset.

All fields are reset by a cold or warm reset.

Register Layout

Bits Access Reset Description
[0] RW 0x0 Bootstrap Inhibit Initialization
[7:1] ??? 0x0 UNDEFINED
[8] RW 0x0 Bootstrap Inhibit Load Block 0 Page 0
[15:9] ??? 0x0 UNDEFINED
[16] RW 0x0 Bootstrap Two Row Address Cycles
[23:17] ??? 0x0 UNDEFINED
[24] RW 0x0 Bootstrap 512 Byte Device
[27:25] ??? 0x0 UNDEFINED
[28] RW 0x0 ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16
[31:29] ??? 0x0 UNDEFINED

Field : Bootstrap Inhibit Initialization - noinit

If 1, inhibits NAND Flash Controller from performing initialization when coming out of reset. Instead, software must program all registers pertaining to device parameters like page size, width, etc.

Field Access Macros:

#define ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT_LSB   0
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT_MSB   0
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT_WIDTH   1
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT_SET_MSK   0x00000001
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT_CLR_MSK   0xfffffffe
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT_RESET   0x0
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT_GET(value)   (((value) & 0x00000001) >> 0)
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT_SET(value)   (((value) << 0) & 0x00000001)
 

Field : Bootstrap Inhibit Load Block 0 Page 0 - noloadb0p0

If 1, inhibits NAND Flash Controller from loading page 0 of block 0 of the NAND device as part of the initialization procedure.

Field Access Macros:

#define ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0_LSB   8
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0_MSB   8
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0_WIDTH   1
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0_SET_MSK   0x00000100
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0_CLR_MSK   0xfffffeff
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0_RESET   0x0
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0_GET(value)   (((value) & 0x00000100) >> 8)
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0_SET(value)   (((value) << 8) & 0x00000100)
 

Field : Bootstrap Two Row Address Cycles - tworowaddr

If 1, NAND device requires only 2 row address cycles instead of the normal 3 row address cycles.

Field Access Macros:

#define ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR_LSB   16
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR_MSB   16
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR_WIDTH   1
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR_SET_MSK   0x00010000
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR_CLR_MSK   0xfffeffff
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR_RESET   0x0
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR_GET(value)   (((value) & 0x00010000) >> 16)
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR_SET(value)   (((value) << 16) & 0x00010000)
 

Field : Bootstrap 512 Byte Device - page512

If 1, NAND device has a 512 byte page size.

Field Access Macros:

#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_LSB   24
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_MSB   24
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_WIDTH   1
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_SET_MSK   0x01000000
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_CLR_MSK   0xfeffffff
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_RESET   0x0
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_GET(value)   (((value) & 0x01000000) >> 24)
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_SET(value)   (((value) << 24) & 0x01000000)
 

Field : page512_x16

Reset value - 0

Field name: PAGE512_x16_DEVICE

Description: If 1, NAND device has 512 bytes page size and I/O width is 16 bits. This start should be asserted in case of 512 bytes devices only. This signal must be stable and have proper value by the time Controller comes out of Reset

Field Access Macros:

#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16_LSB   28
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16_MSB   28
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16_WIDTH   1
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16_SET_MSK   0x10000000
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16_CLR_MSK   0xefffffff
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16_RESET   0x0
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16_GET(value)   (((value) & 0x10000000) >> 28)
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16_SET(value)   (((value) << 28) & 0x10000000)
 

Data Structures

struct  ALT_SYSMGR_NAND_BOOTSTRAP_s
 

Macros

#define ALT_SYSMGR_NAND_BOOTSTRAP_RESET   0x00000000
 
#define ALT_SYSMGR_NAND_BOOTSTRAP_OFST   0x30
 

Typedefs

typedef struct
ALT_SYSMGR_NAND_BOOTSTRAP_s 
ALT_SYSMGR_NAND_BOOTSTRAP_t
 

Data Structure Documentation

struct ALT_SYSMGR_NAND_BOOTSTRAP_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_SYSMGR_NAND_BOOTSTRAP.

Data Fields
uint32_t noinit: 1 Bootstrap Inhibit Initialization
uint32_t __pad0__: 7 UNDEFINED
uint32_t noloadb0p0: 1 Bootstrap Inhibit Load Block 0 Page 0
uint32_t __pad1__: 7 UNDEFINED
uint32_t tworowaddr: 1 Bootstrap Two Row Address Cycles
uint32_t __pad2__: 7 UNDEFINED
uint32_t page512: 1 Bootstrap 512 Byte Device
uint32_t __pad3__: 3 UNDEFINED
uint32_t page512_x16: 1 ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16
uint32_t __pad4__: 3 UNDEFINED

Macro Definitions

#define ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT_LSB   0

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

#define ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT_MSB   0

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

#define ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT_WIDTH   1

The width in bits of the ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT register field.

#define ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT_SET_MSK   0x00000001

The mask used to set the ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT register field value.

#define ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT_CLR_MSK   0xfffffffe

The mask used to clear the ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT register field value.

#define ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT_RESET   0x0

The reset value of the ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT register field.

#define ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT_GET (   value)    (((value) & 0x00000001) >> 0)

Extracts the ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT field value from a register.

#define ALT_SYSMGR_NAND_BOOTSTRAP_NOINIT_SET (   value)    (((value) << 0) & 0x00000001)

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

#define ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0_LSB   8

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

#define ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0_MSB   8

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

#define ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0_WIDTH   1

The width in bits of the ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0 register field.

#define ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0_SET_MSK   0x00000100

The mask used to set the ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0 register field value.

#define ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0_CLR_MSK   0xfffffeff

The mask used to clear the ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0 register field value.

#define ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0_RESET   0x0

The reset value of the ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0 register field.

#define ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0_GET (   value)    (((value) & 0x00000100) >> 8)

Extracts the ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0 field value from a register.

#define ALT_SYSMGR_NAND_BOOTSTRAP_NOLDB0P0_SET (   value)    (((value) << 8) & 0x00000100)

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

#define ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR_LSB   16

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

#define ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR_MSB   16

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

#define ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR_WIDTH   1

The width in bits of the ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR register field.

#define ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR_SET_MSK   0x00010000

The mask used to set the ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR register field value.

#define ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR_CLR_MSK   0xfffeffff

The mask used to clear the ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR register field value.

#define ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR_RESET   0x0

The reset value of the ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR register field.

#define ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR_GET (   value)    (((value) & 0x00010000) >> 16)

Extracts the ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR field value from a register.

#define ALT_SYSMGR_NAND_BOOTSTRAP_TWOROWADDR_SET (   value)    (((value) << 16) & 0x00010000)

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

#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_LSB   24

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

#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_MSB   24

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

#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_WIDTH   1

The width in bits of the ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512 register field.

#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_SET_MSK   0x01000000

The mask used to set the ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512 register field value.

#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_CLR_MSK   0xfeffffff

The mask used to clear the ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512 register field value.

#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_RESET   0x0

The reset value of the ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512 register field.

#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_GET (   value)    (((value) & 0x01000000) >> 24)

Extracts the ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512 field value from a register.

#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_SET (   value)    (((value) << 24) & 0x01000000)

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

#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16_LSB   28

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

#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16_MSB   28

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

#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16_WIDTH   1

The width in bits of the ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16 register field.

#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16_SET_MSK   0x10000000

The mask used to set the ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16 register field value.

#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16_CLR_MSK   0xefffffff

The mask used to clear the ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16 register field value.

#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16_RESET   0x0

The reset value of the ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16 register field.

#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16_GET (   value)    (((value) & 0x10000000) >> 28)

Extracts the ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16 field value from a register.

#define ALT_SYSMGR_NAND_BOOTSTRAP_PAGE512_X16_SET (   value)    (((value) << 28) & 0x10000000)

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

#define ALT_SYSMGR_NAND_BOOTSTRAP_RESET   0x00000000

The reset value of the ALT_SYSMGR_NAND_BOOTSTRAP register.

#define ALT_SYSMGR_NAND_BOOTSTRAP_OFST   0x30

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

Typedef Documentation

The typedef declaration for register ALT_SYSMGR_NAND_BOOTSTRAP.