⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ctkav_mcu.h

📁 ct952 source code use for Digital Frame Photo
💻 H
📖 第 1 页 / 共 3 页
字号:
#ifndef __CTKAV_MCU_H__#define __CTKAV_MCU_H__#ifdef __cplusplusextern "C" {#endif //__cplusplus#define REG_MCU_BASE        (CT909_IO_START+0x880)#define REG_MCU_MR0         (*((volatile DWORD *) (REG_MCU_BASE+0x000)))    // MCU Configuration Register#define REG_MCU_MCR1        (*((volatile DWORD *) (REG_MCU_BASE+0x004)))    // SDRAM Base Address#define REG_MCU_MCR2        (*((volatile DWORD *) (REG_MCU_BASE+0x008)))    // SDRAM AC Timing Setting#define REG_MCU_MCR3        (*((volatile DWORD *) (REG_MCU_BASE+0x00c)))    // DMA Refresh/Initialization Register#define REG_MCU_MCR4        (*((volatile DWORD *) (REG_MCU_BASE+0x010)))    // DMA Arbiter Control Register#define REG_MCU_MCR5        (*((volatile DWORD *) (REG_MCU_BASE+0x014)))    // DMA channel FIFO clear Register                                                                            // D13 BIU Read, D12 BIU Write#define REG_MCU_MCR6        (*((volatile DWORD *) (REG_MCU_BASE+0x018)))    // Interrupt Control Register 1#define REG_MCU_MCR7        (*((volatile DWORD *) (REG_MCU_BASE+0x01c)))    // Interrupt Control Register 2#define REG_MCU_CCR00       (*((volatile DWORD *) (REG_MCU_BASE+0x020)))    // Clean Buffer Write Channel Base Address#define REG_MCU_CCR01       (*((volatile DWORD *) (REG_MCU_BASE+0x024)))    // Clean Buffer Fill Data and Byte Number#define REG_MCU_ACR40       (*((volatile DWORD *) (REG_MCU_BASE+0x060)))    // AIU MIC2 Write Channel Base Address#define REG_MCU_ACR41       (*((volatile DWORD *) (REG_MCU_BASE+0x064)))    // AIU MIC2 Write Channel Write Address#define REG_MCU_ACR42       (*((volatile DWORD *) (REG_MCU_BASE+0x068)))    // AIU MIC2 Write Address Upper Boundary#define REG_MCU_ACR43       (*((volatile DWORD *) (REG_MCU_BASE+0x06c)))    // AIU MIC2 Write Address Lower Boundary#define REG_MCU_ACR44       (*((volatile DWORD *) (REG_MCU_BASE+0x070)))    // AIU MIC2 Write Channel FIFO Status#define REG_MCU_ACR00       (*((volatile DWORD *) (REG_MCU_BASE+0x080)))    // AIU SPDIF Write Channel Base Address of SPDIF_BUF 1#define REG_MCU_ACR01       (*((volatile DWORD *) (REG_MCU_BASE+0x084)))    // AIU SPDIF Write Channel Write Address#define REG_MCU_ACR02       (*((volatile DWORD *) (REG_MCU_BASE+0x088)))    // AIU SPDIF Write Address Upper Boundary of SPDIF_BUF 1#define REG_MCU_ACR03       (*((volatile DWORD *) (REG_MCU_BASE+0x08c)))    // AIU SPDIF Write Address Lower Boundary of SPDIF_BUF 1#define REG_MCU_ACR04       (*((volatile DWORD *) (REG_MCU_BASE+0x090)))    // AIU SPDIF Write Channel FIFO Status Register#define REG_MCU_ACR08       (*((volatile DWORD *) (REG_MCU_BASE+0x0a0)))    // AIU Unpacker0 Read Channel Base Address#define REG_MCU_ACR09       (*((volatile DWORD *) (REG_MCU_BASE+0x0a4)))    // AIU Unpacker0 Read Channel Read Address#define REG_MCU_ACR0A       (*((volatile DWORD *) (REG_MCU_BASE+0x0a8)))    // AIU Unpacker0 Read Address Upper Boundary#define REG_MCU_ACR0B       (*((volatile DWORD *) (REG_MCU_BASE+0x0ac)))    // AIU Unpacker0 Read Address Lower Boundary#define REG_MCU_ACR0C       (*((volatile DWORD *) (REG_MCU_BASE+0x0b0)))    // AIU Unpacker0 Read Channel FIFO Status Register#define REG_MCU_ACR10       (*((volatile DWORD *) (REG_MCU_BASE+0x0c0)))    // AIU Unpacker1 Read Channel Base Address#define REG_MCU_ACR11       (*((volatile DWORD *) (REG_MCU_BASE+0x0c4)))    // AIU Unpacker1 Read Channel Read Address#define REG_MCU_ACR12       (*((volatile DWORD *) (REG_MCU_BASE+0x0c8)))    // AIU Unpacker1 Read Address Upper Boundary#define REG_MCU_ACR13       (*((volatile DWORD *) (REG_MCU_BASE+0x0cc)))    // AIU Unpacker1 Read Address Lower Boundary#define REG_MCU_ACR14       (*((volatile DWORD *) (REG_MCU_BASE+0x0d0)))    // AIU Unpacker1 Read Channel FIFO Status Register#define REG_MCU_ACR18       (*((volatile DWORD *) (REG_MCU_BASE+0x0e0)))    // AIU PCM Read Channel Base Address#define REG_MCU_ACR19       (*((volatile DWORD *) (REG_MCU_BASE+0x0e4)))    // AIU PCM Read Channel Read Address#define REG_MCU_ACR1A       (*((volatile DWORD *) (REG_MCU_BASE+0x0e8)))    // AIU PCM Read Address Upper Boundary#define REG_MCU_ACR1B       (*((volatile DWORD *) (REG_MCU_BASE+0x0ec)))    // AIU PCM Read Address Lower Boundary#define REG_MCU_ACR1C       (*((volatile DWORD *) (REG_MCU_BASE+0x0f0)))    // AIU PCM Read Channel FIFO Status Register#define REG_MCU_ACR20       (*((volatile DWORD *) (REG_MCU_BASE+0x100)))    // AIU SPDIF Read Channel Base Address#define REG_MCU_ACR21       (*((volatile DWORD *) (REG_MCU_BASE+0x104)))    // AIU SPDIF Read Channel Read Address#define REG_MCU_ACR22       (*((volatile DWORD *) (REG_MCU_BASE+0x108)))    // AIU SPDIF Read Address Upper Boundary#define REG_MCU_ACR23       (*((volatile DWORD *) (REG_MCU_BASE+0x10c)))    // AIU SPDIF Read Address Lower Boundary#define REG_MCU_ACR24       (*((volatile DWORD *) (REG_MCU_BASE+0x110)))    // AIU SPDIF Read Channel FIFO Status Register#define REG_MCU_ACR28       (*((volatile DWORD *) (REG_MCU_BASE+0x120)))    // AIU Write Channel Base Address#define REG_MCU_ACR29       (*((volatile DWORD *) (REG_MCU_BASE+0x124)))    // AIU Write Channel Write Address#define REG_MCU_ACR2A       (*((volatile DWORD *) (REG_MCU_BASE+0x128)))    // AIU Write Address Upper Boundary#define REG_MCU_ACR2B       (*((volatile DWORD *) (REG_MCU_BASE+0x12c)))    // AIU Write Address Lower Boundary#define REG_MCU_ACR2C       (*((volatile DWORD *) (REG_MCU_BASE+0x130)))    // AIU Write Channel FIFO Status Register#define REG_MCU_ACR30       (*((volatile DWORD *) (REG_MCU_BASE+0x140)))    // AIU Read Channel Base Address#define REG_MCU_ACR31       (*((volatile DWORD *) (REG_MCU_BASE+0x144)))    // AIU Read Channel Read Address#define REG_MCU_ACR32       (*((volatile DWORD *) (REG_MCU_BASE+0x148)))    // AIU Read Address Upper Boundary#define REG_MCU_ACR33       (*((volatile DWORD *) (REG_MCU_BASE+0x14c)))    // AIU Read Address Lower Boundary#define REG_MCU_ACR34       (*((volatile DWORD *) (REG_MCU_BASE+0x150)))    // AIU Read Channel FIFO Status Register#define REG_MCU_ACR35       (*((volatile DWORD *) (REG_MCU_BASE+0x154)))    // AIU Read Channel x, y direction increment#define REG_MCU_ACR36       (*((volatile DWORD *) (REG_MCU_BASE+0x160)))    // AIU MIC Read Channel Base Address#define REG_MCU_ACR37       (*((volatile DWORD *) (REG_MCU_BASE+0x164)))    // AIU MIC Read Channel current Read Address#define REG_MCU_ACR38       (*((volatile DWORD *) (REG_MCU_BASE+0x168)))    // AIU MIC Read Address Upper Boundary#define REG_MCU_ACR39       (*((volatile DWORD *) (REG_MCU_BASE+0x16c)))    // AIU MIC Read Address Lower Boundary#define REG_MCU_ACR3A       (*((volatile DWORD *) (REG_MCU_BASE+0x170)))    // AIU MIC Read Channel FIFO Status#define REG_MCU_ACR3B       (*((volatile DWORD *) (REG_MCU_BASE+0x174)))    // AIU MIC Read Channel read address offset// BIU write channel#define REG_MCU_BCR00       (*((volatile DWORD *) (REG_MCU_BASE+0x180)))    // BIU write channel base address#define REG_MCU_BCR00_ADDR  ((PDWORD) (REG_MCU_BASE+0x180))                 // BIU write channel base address#define REG_MCU_BCR01       (*((volatile DWORD *) (REG_MCU_BASE+0x184)))    // BIU write channel current write address#define REG_MCU_BCR01_ADDR  ((PDWORD) (REG_MCU_BASE+0x184))                 // BIU write channel current write address#define REG_MCU_BCR02       (*((volatile DWORD *) (REG_MCU_BASE+0x188)))    // BIU write channel upper boundary#define REG_MCU_BCR03       (*((volatile DWORD *) (REG_MCU_BASE+0x18c)))    // BIU write channel lower boundary#define REG_MCU_BCR04       (*((volatile DWORD *) (REG_MCU_BASE+0x190)))    // BIU write channel FIFO status// BIU bit stream read channel for ATAPI (linear buffer)#define REG_MCU_BCR08       (*((volatile DWORD *) (REG_MCU_BASE+0x1a0)))    // BIU bit stream read channel base address#define REG_MCU_BCR08_ADDR  ((PDWORD) (REG_MCU_BASE+0x1a0))                 // BIU bit stream read channel base address#define REG_MCU_BCR09       (*((volatile DWORD *) (REG_MCU_BASE+0x1a4)))    // BIU bit stream read channel current read address#define REG_MCU_BCR09_ADDR  ((PDWORD) (REG_MCU_BASE+0x1a4))                 // BIU bit stream read channel current read address#define REG_MCU_BCR0A       (*((volatile DWORD *) (REG_MCU_BASE+0x1a8)))    // BIU bit stream read channel x, y direction increment#define REG_MCU_BCR0B       (*((volatile DWORD *) (REG_MCU_BASE+0x1ac)))    // BIU bit stream read channel x, y direction sub-increment// remainder is at [19:16], range from 0 to 15#define REG_MCU_BCR0C       (*((volatile DWORD *) (REG_MCU_BASE+0x1b0)))    // BIU bit stream read channel FIFO status#define REG_MCU_BCR0D       (*((volatile DWORD *) (REG_MCU_BASE+0x1b4)))    // [31:30] bsrdtype "10", [23:16] bsrdheight "1",                                                                            // [9:0] bsrdwidth (i.e. # of 64-bit)#define REG_MCU_BCR0D_ADDR  ((PDWORD) (REG_MCU_BASE+0x1b4))                 // [31:30] bsrdtype "10", [23:16] bsrdheight "1",#define REG_MCU_BCR0E       (*((volatile DWORD *) (REG_MCU_BASE+0x1b8)))    // BIU Bit-Stream Read Channel Sub-Block Width/Height#define REG_MCU_SW_TRIGGER  (*((volatile DWORD *) (REG_MCU_BASE+0x1bc)))    // trigger DMA starting#define REG_MCU_BCR10       (*((volatile DWORD *) (REG_MCU_BASE+0x1c0)))    // ATAPI Write Channel Base Address#define REG_MCU_BCR11       (*((volatile DWORD *) (REG_MCU_BASE+0x1c4)))    // ATAPI Write Channel Write Address#define REG_MCU_BCR12       (*((volatile DWORD *) (REG_MCU_BASE+0x1c8)))    // ATAPI Write Channel Write Count#define REG_MCU_BCR13       (*((volatile DWORD *) (REG_MCU_BASE+0x1cc)))    // ATAPI Write Channel X Direction Increment#define REG_MCU_BCR14       (*((volatile DWORD *) (REG_MCU_BASE+0x1d0)))    // ATAPI Write Channel FIFO Status Register#define REG_MCU_DCR00       (*((volatile DWORD *) (REG_MCU_BASE+0x380)))    // VDEC VLD Read Channel Base Address#define REG_MCU_DCR01       (*((volatile DWORD *) (REG_MCU_BASE+0x384)))    // VDEC VLD Read Channel Read Address#define REG_MCU_DCR02       (*((volatile DWORD *) (REG_MCU_BASE+0x388)))    // VDEC VLD Read Channel upper boundary#define REG_MCU_DCR03       (*((volatile DWORD *) (REG_MCU_BASE+0x38c)))    // VDEC VLD Read Channel lower boundary#define REG_MCU_DCR04       (*((volatile DWORD *) (REG_MCU_BASE+0x390)))    // VDEC VLD Read Channel FIFO Status#define REG_MCU_VCR00       (*((volatile DWORD *) (REG_MCU_BASE+0x480)))    // VOU SP Top Read Channel Base Address of SP1#define REG_MCU_VCR01       (*((volatile DWORD *) (REG_MCU_BASE+0x484)))    // VOU SP Top Read Channel Read Address#define REG_MCU_VCR02       (*((volatile DWORD *) (REG_MCU_BASE+0x488)))    // VOU SP Read Address Upper Boundary of SP1#define REG_MCU_VCR03       (*((volatile DWORD *) (REG_MCU_BASE+0x48c)))    // VOU SP Read Address Lower Boundary of SP1#define REG_MCU_VCR04       (*((volatile DWORD *) (REG_MCU_BASE+0x490)))    // VOU SP Top Read Channel FIFO Status Register#define REG_MCU_VCR05       (*((volatile DWORD *) (REG_MCU_BASE+0x494)))    // VOU SP Top Read Channel Base Address of SP2#define REG_MCU_VCR06       (*((volatile DWORD *) (REG_MCU_BASE+0x498)))    // VOU SP Read Address Upper Boundary of SP2#define REG_MCU_VCR07       (*((volatile DWORD *) (REG_MCU_BASE+0x49c)))    // VOU SP Read Address Lower Boundary of SP2#define REG_MCU_VCR08       (*((volatile DWORD *) (REG_MCU_BASE+0x4a0)))    // VOU SP Bottom Read Channel Base Address of SP1#define REG_MCU_VCR09       (*((volatile DWORD *) (REG_MCU_BASE+0x4a4)))    // VOU SP Bottom Read Channel Read Address#define REG_MCU_VCR0C       (*((volatile DWORD *) (REG_MCU_BASE+0x4b0)))    // VOU SP Bottom Read Channel FIFO Status Register#define REG_MCU_VCR0D       (*((volatile DWORD *) (REG_MCU_BASE+0x4b4)))    // VOU SP Bottom Read Channel Base Address of SP2#define REG_MCU_VCR10       (*((volatile DWORD *) (REG_MCU_BASE+0x4c0)))    // VOU SP Color Data Read Channel Base Address of SP1#define REG_MCU_VCR11       (*((volatile DWORD *) (REG_MCU_BASE+0x4c4)))    // VOU SP Color Data Read Channel Read Address#define REG_MCU_VCR14       (*((volatile DWORD *) (REG_MCU_BASE+0x4d0)))    // VOU SP Color Data Read Channel FIFO Status Register#define REG_MCU_VCR15       (*((volatile DWORD *) (REG_MCU_BASE+0x4d4)))    // VOU SP Color Data Read Channel Base Address of SP2#define REG_MCU_VCR18       (*((volatile DWORD *) (REG_MCU_BASE+0x4e0)))    // VOU Teletext Read Channel Base Address#define REG_MCU_VCR19       (*((volatile DWORD *) (REG_MCU_BASE+0x4e4)))    // VOU Teletext Read Channel Read Address#define REG_MCU_VCR1A       (*((volatile DWORD *) (REG_MCU_BASE+0x4e8)))    // VOU Teletext Read Address Upper Boundary#define REG_MCU_VCR1B       (*((volatile DWORD *) (REG_MCU_BASE+0x4ec)))    // VOU Teletext Read Address Lower Boundary#define REG_MCU_VCR1C       (*((volatile DWORD *) (REG_MCU_BASE+0x4f0)))    // VOU Teletext Read Channel FIFO Status Register#define REG_MCU_VCR20       (*((volatile DWORD *) (REG_MCU_BASE+0x500)))    // VOU OSD Read Channel Base Address#define REG_MCU_VCR21       (*((volatile DWORD *) (REG_MCU_BASE+0x504)))    // VOU OSD Read Channel Base Address#define REG_MCU_VCR22       (*((volatile DWORD *) (REG_MCU_BASE+0x508)))    // VOU OSD Read Channel Width/Height#define REG_MCU_VCR23       (*((volatile DWORD *) (REG_MCU_BASE+0x50c)))    // VOU OSD Read Channel X, Y Direction Increment#define REG_MCU_VCR24       (*((volatile DWORD *) (REG_MCU_BASE+0x510)))    // VOU OSD Read Channel FIFO Status Register#define REG_MCU_VCR25       (*((volatile DWORD *) (REG_MCU_BASE+0x51c)))    // VOU OSD upscalling register#define REG_MCU_SCR10       (*((volatile DWORD *) (REG_MCU_BASE+0x5c0)))    // SERVO EDC Read Channel Base Address#define REG_MCU_SCR11       (*((volatile DWORD *) (REG_MCU_BASE+0x5c4)))    // SERVO EDC Read Channel Read Address#define REG_MCU_SCR12       (*((volatile DWORD *) (REG_MCU_BASE+0x5c8)))    // SERVO EDC Read Channel X, Y Direction Increment#define REG_MCU_SCR13       (*((volatile DWORD *) (REG_MCU_BASE+0x5cc)))    // SERVO EDC Read Channel X, Y Direction Sub-Increment#define REG_MCU_SCR14       (*((volatile DWORD *) (REG_MCU_BASE+0x5d0)))    // SERVO EDC Read Channel FIFO Status Register#define REG_MCU_SCR15       (*((volatile DWORD *) (REG_MCU_BASE+0x5d4)))    // SERVO EDC Read Channel Width/Height#define REG_MCU_SCR16       (*((volatile DWORD *) (REG_MCU_BASE+0x5d8)))    // SERVO EDC Read Channel Sub-Block Width/Height#define REG_MCU_SCR18       (*((volatile DWORD *) (REG_MCU_BASE+0x5e0)))    // SERVO ECC Read Channel Base Address#define REG_MCU_SCR19       (*((volatile DWORD *) (REG_MCU_BASE+0x5e4)))    // SERVO ECC Read Channel Base Address#define REG_MCU_SCR1A       (*((volatile DWORD *) (REG_MCU_BASE+0x5e8)))    // SERVO ECC Read Channel X, Y Direction Increment#define REG_MCU_SCR1B       (*((volatile DWORD *) (REG_MCU_BASE+0x5ec)))    // SERVO ECC Read Channel X, Y Direction Sub-Increment#define REG_MCU_SCR1C       (*((volatile DWORD *) (REG_MCU_BASE+0x5f0)))    // SERVO ECC Read Channel FIFO Status Register#define REG_MCU_SCR1D       (*((volatile DWORD *) (REG_MCU_BASE+0x5f4)))    // SERVO ECC Channel Setting / Q-Parity Offset#define REG_MCU_SCR1E       (*((volatile DWORD *) (REG_MCU_BASE+0x5f8)))    // SERVO ECC Read Channel Width/Height#define REG_MCU_SCR1F       (*((volatile DWORD *) (REG_MCU_BASE+0x5fc)))    // SERVO ECC Read Channel Sub-Block Width/Height// Write Protection Registers// Area 0~3 won't let data write to dram but area 4~5 will.#define REG_MCU_WPROTEN     (*((volatile DWORD *) (REG_MCU_BASE+0x580)))    // write protection enable register#define REG_MCU_WP0BASE     (*((volatile DWORD *) (REG_MCU_BASE+0x584)))    // write protection area 0 address base address, 64-bit alignment#define REG_MCU_WP0SIZE     (*((volatile DWORD *) (REG_MCU_BASE+0x588)))    // write protection area 0 address upper boundary, 64-bit alignment#define REG_MCU_WP1BASE     (*((volatile DWORD *) (REG_MCU_BASE+0x58c)))    // write protection area 1 address base address, 64-bit alignment#define REG_MCU_WP1SIZE     (*((volatile DWORD *) (REG_MCU_BASE+0x590)))    // write protection area 1 address upper boundary, 64-bit alignment#define REG_MCU_WP2BASE     (*((volatile DWORD *) (REG_MCU_BASE+0x594)))    // write protection area 2 address base address, 64-bit alignment#define REG_MCU_WP2SIZE     (*((volatile DWORD *) (REG_MCU_BASE+0x598)))    // write protection area 2 address upper boundary, 64-bit alignment#define REG_MCU_WP3BASE     (*((volatile DWORD *) (REG_MCU_BASE+0x59c)))    // write protection area 3 address base address, 64-bit alignment#define REG_MCU_WP3SIZE     (*((volatile DWORD *) (REG_MCU_BASE+0x5a0)))    // write protection area 3 address upper boundary, 64-bit alignment#define REG_MCU_WP4BASE     (*((volatile DWORD *) (REG_MCU_BASE+0x5a4)))    // write protection area 4 address base address, 64-bit alignment#define REG_MCU_WP4SIZE     (*((volatile DWORD *) (REG_MCU_BASE+0x5a8)))    // write protection area 4 address upper boundary, 64-bit alignment#define REG_MCU_WP5BASE     (*((volatile DWORD *) (REG_MCU_BASE+0x5ac)))    // write protection area 5 address base address, 64-bit alignment#define REG_MCU_WP5SIZE     (*((volatile DWORD *) (REG_MCU_BASE+0x5b0)))    // write protection area 5 address upper boundary, 64-bit alignment#define REG_MCU_WPSTATUS    (*((volatile DWORD *) (REG_MCU_BASE+0x5b4)))    // write protection status register#define PREG_MCU_WP0BASE    ((volatile DWORD *) (REG_MCU_BASE+0x584))#define PREG_MCU_WP0SIZE    ((volatile DWORD *) (REG_MCU_BASE+0x588))#define REG_MCU_REMEN       (*((volatile DWORD *) (REG_MCU_BASE+0x680)))    // Buffer Remainder Enable Register

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -