📄 mbox_reg.h
字号:
#define LOCAL_COUNT_OFFSET 0x00000080
#define LOCAL_COUNT_VALUE_MSB 7
#define LOCAL_COUNT_VALUE_LSB 0
#define LOCAL_COUNT_VALUE_MASK 0x000000ff
#define LOCAL_COUNT_VALUE_GET(x) (((x) & LOCAL_COUNT_VALUE_MASK) >> LOCAL_COUNT_VALUE_LSB)
#define LOCAL_COUNT_VALUE_SET(x) (((x) << LOCAL_COUNT_VALUE_LSB) & LOCAL_COUNT_VALUE_MASK)
#define COUNT_INC_ADDRESS 0x0c0140a0
#define COUNT_INC_OFFSET 0x000000a0
#define COUNT_INC_VALUE_MSB 7
#define COUNT_INC_VALUE_LSB 0
#define COUNT_INC_VALUE_MASK 0x000000ff
#define COUNT_INC_VALUE_GET(x) (((x) & COUNT_INC_VALUE_MASK) >> COUNT_INC_VALUE_LSB)
#define COUNT_INC_VALUE_SET(x) (((x) << COUNT_INC_VALUE_LSB) & COUNT_INC_VALUE_MASK)
#define LOCAL_SCRATCH_ADDRESS 0x0c0140c0
#define LOCAL_SCRATCH_OFFSET 0x000000c0
#define LOCAL_SCRATCH_VALUE_MSB 7
#define LOCAL_SCRATCH_VALUE_LSB 0
#define LOCAL_SCRATCH_VALUE_MASK 0x000000ff
#define LOCAL_SCRATCH_VALUE_GET(x) (((x) & LOCAL_SCRATCH_VALUE_MASK) >> LOCAL_SCRATCH_VALUE_LSB)
#define LOCAL_SCRATCH_VALUE_SET(x) (((x) << LOCAL_SCRATCH_VALUE_LSB) & LOCAL_SCRATCH_VALUE_MASK)
#define USE_LOCAL_BUS_ADDRESS 0x0c0140e0
#define USE_LOCAL_BUS_OFFSET 0x000000e0
#define USE_LOCAL_BUS_PIN_INIT_MSB 0
#define USE_LOCAL_BUS_PIN_INIT_LSB 0
#define USE_LOCAL_BUS_PIN_INIT_MASK 0x00000001
#define USE_LOCAL_BUS_PIN_INIT_GET(x) (((x) & USE_LOCAL_BUS_PIN_INIT_MASK) >> USE_LOCAL_BUS_PIN_INIT_LSB)
#define USE_LOCAL_BUS_PIN_INIT_SET(x) (((x) << USE_LOCAL_BUS_PIN_INIT_LSB) & USE_LOCAL_BUS_PIN_INIT_MASK)
#define SDIO_CONFIG_ADDRESS 0x0c0140e4
#define SDIO_CONFIG_OFFSET 0x000000e4
#define SDIO_CONFIG_CCCR_IOR1_MSB 0
#define SDIO_CONFIG_CCCR_IOR1_LSB 0
#define SDIO_CONFIG_CCCR_IOR1_MASK 0x00000001
#define SDIO_CONFIG_CCCR_IOR1_GET(x) (((x) & SDIO_CONFIG_CCCR_IOR1_MASK) >> SDIO_CONFIG_CCCR_IOR1_LSB)
#define SDIO_CONFIG_CCCR_IOR1_SET(x) (((x) << SDIO_CONFIG_CCCR_IOR1_LSB) & SDIO_CONFIG_CCCR_IOR1_MASK)
#define MBOX_DEBUG_ADDRESS 0x0c0140e8
#define MBOX_DEBUG_OFFSET 0x000000e8
#define MBOX_DEBUG_SEL_MSB 2
#define MBOX_DEBUG_SEL_LSB 0
#define MBOX_DEBUG_SEL_MASK 0x00000007
#define MBOX_DEBUG_SEL_GET(x) (((x) & MBOX_DEBUG_SEL_MASK) >> MBOX_DEBUG_SEL_LSB)
#define MBOX_DEBUG_SEL_SET(x) (((x) << MBOX_DEBUG_SEL_LSB) & MBOX_DEBUG_SEL_MASK)
#define MBOX_FIFO_RESET_ADDRESS 0x0c0140ec
#define MBOX_FIFO_RESET_OFFSET 0x000000ec
#define MBOX_FIFO_RESET_INIT_MSB 0
#define MBOX_FIFO_RESET_INIT_LSB 0
#define MBOX_FIFO_RESET_INIT_MASK 0x00000001
#define MBOX_FIFO_RESET_INIT_GET(x) (((x) & MBOX_FIFO_RESET_INIT_MASK) >> MBOX_FIFO_RESET_INIT_LSB)
#define MBOX_FIFO_RESET_INIT_SET(x) (((x) << MBOX_FIFO_RESET_INIT_LSB) & MBOX_FIFO_RESET_INIT_MASK)
#define STEREO_CONFIG_ADDRESS 0x0c0140f0
#define STEREO_CONFIG_OFFSET 0x000000f0
#define STEREO_CONFIG_ENABLE_MSB 24
#define STEREO_CONFIG_ENABLE_LSB 24
#define STEREO_CONFIG_ENABLE_MASK 0x01000000
#define STEREO_CONFIG_ENABLE_GET(x) (((x) & STEREO_CONFIG_ENABLE_MASK) >> STEREO_CONFIG_ENABLE_LSB)
#define STEREO_CONFIG_ENABLE_SET(x) (((x) << STEREO_CONFIG_ENABLE_LSB) & STEREO_CONFIG_ENABLE_MASK)
#define STEREO_CONFIG_RESET_MSB 23
#define STEREO_CONFIG_RESET_LSB 23
#define STEREO_CONFIG_RESET_MASK 0x00800000
#define STEREO_CONFIG_RESET_GET(x) (((x) & STEREO_CONFIG_RESET_MASK) >> STEREO_CONFIG_RESET_LSB)
#define STEREO_CONFIG_RESET_SET(x) (((x) << STEREO_CONFIG_RESET_LSB) & STEREO_CONFIG_RESET_MASK)
#define STEREO_CONFIG_I2S_DELAY_MSB 22
#define STEREO_CONFIG_I2S_DELAY_LSB 22
#define STEREO_CONFIG_I2S_DELAY_MASK 0x00400000
#define STEREO_CONFIG_I2S_DELAY_GET(x) (((x) & STEREO_CONFIG_I2S_DELAY_MASK) >> STEREO_CONFIG_I2S_DELAY_LSB)
#define STEREO_CONFIG_I2S_DELAY_SET(x) (((x) << STEREO_CONFIG_I2S_DELAY_LSB) & STEREO_CONFIG_I2S_DELAY_MASK)
#define STEREO_CONFIG_MIC_MASTER_MSB 21
#define STEREO_CONFIG_MIC_MASTER_LSB 21
#define STEREO_CONFIG_MIC_MASTER_MASK 0x00200000
#define STEREO_CONFIG_MIC_MASTER_GET(x) (((x) & STEREO_CONFIG_MIC_MASTER_MASK) >> STEREO_CONFIG_MIC_MASTER_LSB)
#define STEREO_CONFIG_MIC_MASTER_SET(x) (((x) << STEREO_CONFIG_MIC_MASTER_LSB) & STEREO_CONFIG_MIC_MASTER_MASK)
#define STEREO_CONFIG_MIC_WORD_SIZE_MSB 20
#define STEREO_CONFIG_MIC_WORD_SIZE_LSB 20
#define STEREO_CONFIG_MIC_WORD_SIZE_MASK 0x00100000
#define STEREO_CONFIG_MIC_WORD_SIZE_GET(x) (((x) & STEREO_CONFIG_MIC_WORD_SIZE_MASK) >> STEREO_CONFIG_MIC_WORD_SIZE_LSB)
#define STEREO_CONFIG_MIC_WORD_SIZE_SET(x) (((x) << STEREO_CONFIG_MIC_WORD_SIZE_LSB) & STEREO_CONFIG_MIC_WORD_SIZE_MASK)
#define STEREO_CONFIG_STEREO_MONO_MSB 19
#define STEREO_CONFIG_STEREO_MONO_LSB 18
#define STEREO_CONFIG_STEREO_MONO_MASK 0x000c0000
#define STEREO_CONFIG_STEREO_MONO_GET(x) (((x) & STEREO_CONFIG_STEREO_MONO_MASK) >> STEREO_CONFIG_STEREO_MONO_LSB)
#define STEREO_CONFIG_STEREO_MONO_SET(x) (((x) << STEREO_CONFIG_STEREO_MONO_LSB) & STEREO_CONFIG_STEREO_MONO_MASK)
#define STEREO_CONFIG_DATA_WORD_SIZE_MSB 17
#define STEREO_CONFIG_DATA_WORD_SIZE_LSB 16
#define STEREO_CONFIG_DATA_WORD_SIZE_MASK 0x00030000
#define STEREO_CONFIG_DATA_WORD_SIZE_GET(x) (((x) & STEREO_CONFIG_DATA_WORD_SIZE_MASK) >> STEREO_CONFIG_DATA_WORD_SIZE_LSB)
#define STEREO_CONFIG_DATA_WORD_SIZE_SET(x) (((x) << STEREO_CONFIG_DATA_WORD_SIZE_LSB) & STEREO_CONFIG_DATA_WORD_SIZE_MASK)
#define STEREO_CONFIG_I2S_WORD_SIZE_MSB 15
#define STEREO_CONFIG_I2S_WORD_SIZE_LSB 15
#define STEREO_CONFIG_I2S_WORD_SIZE_MASK 0x00008000
#define STEREO_CONFIG_I2S_WORD_SIZE_GET(x) (((x) & STEREO_CONFIG_I2S_WORD_SIZE_MASK) >> STEREO_CONFIG_I2S_WORD_SIZE_LSB)
#define STEREO_CONFIG_I2S_WORD_SIZE_SET(x) (((x) << STEREO_CONFIG_I2S_WORD_SIZE_LSB) & STEREO_CONFIG_I2S_WORD_SIZE_MASK)
#define STEREO_CONFIG_MCK_SEL_MSB 14
#define STEREO_CONFIG_MCK_SEL_LSB 14
#define STEREO_CONFIG_MCK_SEL_MASK 0x00004000
#define STEREO_CONFIG_MCK_SEL_GET(x) (((x) & STEREO_CONFIG_MCK_SEL_MASK) >> STEREO_CONFIG_MCK_SEL_LSB)
#define STEREO_CONFIG_MCK_SEL_SET(x) (((x) << STEREO_CONFIG_MCK_SEL_LSB) & STEREO_CONFIG_MCK_SEL_MASK)
#define STEREO_CONFIG_MCK_CNT_MSB 13
#define STEREO_CONFIG_MCK_CNT_LSB 10
#define STEREO_CONFIG_MCK_CNT_MASK 0x00003c00
#define STEREO_CONFIG_MCK_CNT_GET(x) (((x) & STEREO_CONFIG_MCK_CNT_MASK) >> STEREO_CONFIG_MCK_CNT_LSB)
#define STEREO_CONFIG_MCK_CNT_SET(x) (((x) << STEREO_CONFIG_MCK_CNT_LSB) & STEREO_CONFIG_MCK_CNT_MASK)
#define STEREO_CONFIG_MCK_RAW_MSB 9
#define STEREO_CONFIG_MCK_RAW_LSB 9
#define STEREO_CONFIG_MCK_RAW_MASK 0x00000200
#define STEREO_CONFIG_MCK_RAW_GET(x) (((x) & STEREO_CONFIG_MCK_RAW_MASK) >> STEREO_CONFIG_MCK_RAW_LSB)
#define STEREO_CONFIG_MCK_RAW_SET(x) (((x) << STEREO_CONFIG_MCK_RAW_LSB) & STEREO_CONFIG_MCK_RAW_MASK)
#define STEREO_CONFIG_MASTER_MSB 8
#define STEREO_CONFIG_MASTER_LSB 8
#define STEREO_CONFIG_MASTER_MASK 0x00000100
#define STEREO_CONFIG_MASTER_GET(x) (((x) & STEREO_CONFIG_MASTER_MASK) >> STEREO_CONFIG_MASTER_LSB)
#define STEREO_CONFIG_MASTER_SET(x) (((x) << STEREO_CONFIG_MASTER_LSB) & STEREO_CONFIG_MASTER_MASK)
#define STEREO_CONFIG_POSEDGE_MSB 7
#define STEREO_CONFIG_POSEDGE_LSB 0
#define STEREO_CONFIG_POSEDGE_MASK 0x000000ff
#define STEREO_CONFIG_POSEDGE_GET(x) (((x) & STEREO_CONFIG_POSEDGE_MASK) >> STEREO_CONFIG_POSEDGE_LSB)
#define STEREO_CONFIG_POSEDGE_SET(x) (((x) << STEREO_CONFIG_POSEDGE_LSB) & STEREO_CONFIG_POSEDGE_MASK)
#define STEREO_VOLUME_ADDRESS 0x0c0140f4
#define STEREO_VOLUME_OFFSET 0x000000f4
#define STEREO_VOLUME_CHANNEL1_MSB 12
#define STEREO_VOLUME_CHANNEL1_LSB 8
#define STEREO_VOLUME_CHANNEL1_MASK 0x00001f00
#define STEREO_VOLUME_CHANNEL1_GET(x) (((x) & STEREO_VOLUME_CHANNEL1_MASK) >> STEREO_VOLUME_CHANNEL1_LSB)
#define STEREO_VOLUME_CHANNEL1_SET(x) (((x) << STEREO_VOLUME_CHANNEL1_LSB) & STEREO_VOLUME_CHANNEL1_MASK)
#define STEREO_VOLUME_CHANNEL0_MSB 4
#define STEREO_VOLUME_CHANNEL0_LSB 0
#define STEREO_VOLUME_CHANNEL0_MASK 0x0000001f
#define STEREO_VOLUME_CHANNEL0_GET(x) (((x) & STEREO_VOLUME_CHANNEL0_MASK) >> STEREO_VOLUME_CHANNEL0_LSB)
#define STEREO_VOLUME_CHANNEL0_SET(x) (((x) << STEREO_VOLUME_CHANNEL0_LSB) & STEREO_VOLUME_CHANNEL0_MASK)
#define HOST_IF_WINDOW_ADDRESS 0x0c016000
#define HOST_IF_WINDOW_OFFSET 0x00002000
#define HOST_IF_WINDOW_DATA_MSB 7
#define HOST_IF_WINDOW_DATA_LSB 0
#define HOST_IF_WINDOW_DATA_MASK 0x000000ff
#define HOST_IF_WINDOW_DATA_GET(x) (((x) & HOST_IF_WINDOW_DATA_MASK) >> HOST_IF_WINDOW_DATA_LSB)
#define HOST_IF_WINDOW_DATA_SET(x) (((x) << HOST_IF_WINDOW_DATA_LSB) & HOST_IF_WINDOW_DATA_MASK)
#ifndef __ASSEMBLER__
typedef struct mbox_reg_s {
volatile unsigned int mbox_fifo[4];
volatile unsigned int mbox_fifo_status;
volatile unsigned int mbox_dma_policy;
volatile unsigned int mbox0_dma_rx_descriptor_base;
volatile unsigned int mbox0_dma_rx_control;
volatile unsigned int mbox0_dma_tx_descriptor_base;
volatile unsigned int mbox0_dma_tx_control;
volatile unsigned int mbox1_dma_rx_descriptor_base;
volatile unsigned int mbox1_dma_rx_control;
volatile unsigned int mbox1_dma_tx_descriptor_base;
volatile unsigned int mbox1_dma_tx_control;
volatile unsigned int mbox2_dma_rx_descriptor_base;
volatile unsigned int mbox2_dma_rx_control;
volatile unsigned int mbox2_dma_tx_descriptor_base;
volatile unsigned int mbox2_dma_tx_control;
volatile unsigned int mbox3_dma_rx_descriptor_base;
volatile unsigned int mbox3_dma_rx_control;
volatile unsigned int mbox3_dma_tx_descriptor_base;
volatile unsigned int mbox3_dma_tx_control;
volatile unsigned int mbox_int_status;
volatile unsigned int mbox_int_enable;
volatile unsigned int int_host;
unsigned char pad0[28]; /* pad to 0x80 */
volatile unsigned int local_count[8];
volatile unsigned int count_inc[8];
volatile unsigned int local_scratch[8];
volatile unsigned int use_local_bus;
volatile unsigned int sdio_config;
volatile unsigned int mbox_debug;
volatile unsigned int mbox_fifo_reset;
volatile unsigned int stereo_config;
volatile unsigned int stereo_volume;
unsigned char pad1[7944]; /* pad to 0x2000 */
volatile unsigned int host_if_window[2048];
} mbox_reg_t;
#endif /* __ASSEMBLER__ */
#endif /* _MBOX_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -