Difference between revisions of "IO Registers"
Jump to navigation
Jump to search
Line 7: | Line 7: | ||
! Comments | ! Comments | ||
|- | |- | ||
− | | [[CONFIG]] | + | | [[CONFIG Registers]] |
| 0x10000000 | | 0x10000000 | ||
| Boot9 | | Boot9 | ||
| | | | ||
|- | |- | ||
− | | [[IRQ]] | + | | [[IRQ Registers]] |
| 0x10001000 | | 0x10001000 | ||
| Kernel9 | | Kernel9 | ||
| | | | ||
|- | |- | ||
− | | [[NDMA]] | + | | [[NDMA Registers]] |
| 0x10002000 | | 0x10002000 | ||
| Process9 | | Process9 | ||
| | | | ||
|- | |- | ||
− | | [[TIMER]] | + | | [[TIMER Registers]] |
| 0x10003000 | | 0x10003000 | ||
| Process9 | | Process9 | ||
| | | | ||
|- | |- | ||
− | | [[CTRCARD]] | + | | [[CTRCARD Registers]] |
| 0x10004000 / 0x10005000 | | 0x10004000 / 0x10005000 | ||
| Process9 | | Process9 | ||
| | | | ||
|- | |- | ||
− | | [[ | + | | [[EMMC Registers]] |
| 0x10006000 / 0x10007000 | | 0x10006000 / 0x10007000 | ||
| Boot9, Process9 | | Boot9, Process9 | ||
| 0x10007000 is apparently not used on retail | | 0x10007000 is apparently not used on retail | ||
|- | |- | ||
− | | [[PXI]] | + | | [[PXI Registers]] |
| 0x10008000 | | 0x10008000 | ||
| Boot9, Process9 | | Boot9, Process9 | ||
| | | | ||
|- | |- | ||
− | | [[AES]] | + | | [[AES Registers]] |
| 0x10009000 | | 0x10009000 | ||
| Boot9, Process9 | | Boot9, Process9 | ||
| | | | ||
|- | |- | ||
− | | [[SHA]] | + | | [[SHA Registers]] |
| 0x1000A000 | | 0x1000A000 | ||
| Process9 | | Process9 | ||
| | | | ||
|- | |- | ||
− | | [[RSA]] | + | | [[RSA Registers]] |
| 0x1000B000 | | 0x1000B000 | ||
| Boot9, Process9 | | Boot9, Process9 | ||
| | | | ||
|- | |- | ||
− | | [[XDMA]] | + | | [[XDMA Registers]] |
| 0x1000C000 | | 0x1000C000 | ||
| Kernel9 | | Kernel9 | ||
| CoreLink™ DMA-330. [http://infocenter.arm.com/help/topic/com.arm.doc.ddi0424d/index.html Info] | | CoreLink™ DMA-330. [http://infocenter.arm.com/help/topic/com.arm.doc.ddi0424d/index.html Info] | ||
|- | |- | ||
− | | [[SPICARD]] | + | | [[SPICARD Registers]] |
| 0x1000D800 | | 0x1000D800 | ||
| Process9 | | Process9 | ||
| | | | ||
|- | |- | ||
− | | [[CONFIG]] | + | | [[CONFIG Registers]] |
| 0x10010000 | | 0x10010000 | ||
| Process9 | | Process9 | ||
| | | | ||
|- | |- | ||
− | | [[CONFIG]] | + | | [[CONFIG Registers]] |
| 0x10011000 | | 0x10011000 | ||
| Process9 | | Process9 | ||
Line 92: | Line 92: | ||
| | | | ||
|- | |- | ||
− | | [[HASH]] | + | | [[HASH Registers]] |
| 0x10101000 | | 0x10101000 | ||
| | | | ||
Line 102: | Line 102: | ||
| | | | ||
|- | |- | ||
− | | [[CSND]] / DSP | + | | [[CSND Registers]] / DSP |
| 0x10103000 | | 0x10103000 | ||
| [[Codec Services]], [[CSND Services]], [[DSP Services]] | | [[Codec Services]], [[CSND Services]], [[DSP Services]] | ||
Line 117: | Line 117: | ||
| | | | ||
|- | |- | ||
− | | | + | | DSP |
| 0x10140000 | | 0x10140000 | ||
| Process9, Kernel11, [[DSP Services]] | | Process9, Kernel11, [[DSP Services]] | ||
| | | | ||
|- | |- | ||
− | | [[PDN]] / [[CODEC]] | + | | [[PDN Registers]] / [[CODEC Registers]] |
| 0x10141000 | | 0x10141000 | ||
| Process9, Kernel11, [[Codec Services]] | | Process9, Kernel11, [[Codec Services]] | ||
| | | | ||
|- | |- | ||
− | | [[SPI]] | + | | [[SPI Registers]] |
| 0x10142000 | | 0x10142000 | ||
| | | | ||
| | | | ||
|- | |- | ||
− | | [[SPI]] | + | | [[SPI Registers]] |
| 0x10143000 | | 0x10143000 | ||
| | | | ||
| Only used under TWL_FIRM? | | Only used under TWL_FIRM? | ||
|- | |- | ||
− | | [[I2C]] | + | | [[I2C Registers]] |
| 0x10144000 | | 0x10144000 | ||
| Kernel11, [[I2C Services]] | | Kernel11, [[I2C Services]] | ||
| | | | ||
|- | |- | ||
− | | [[CODEC]] | + | | [[CODEC Registers]] |
| 0x10145000 | | 0x10145000 | ||
| [[Codec Services]] | | [[Codec Services]] | ||
| | | | ||
|- | |- | ||
− | | | + | | [[HID Registers]] |
| 0x10146000 | | 0x10146000 | ||
| Kernel11, [[HID Services]] | | Kernel11, [[HID Services]] | ||
− | | | + | | See [[PAD]]. |
|- | |- | ||
− | | [[GPIO]] | + | | [[GPIO Registers]] |
| 0x10147000 | | 0x10147000 | ||
| [[GPIO Services]] | | [[GPIO Services]] | ||
| | | | ||
|- | |- | ||
− | | [[I2C]] | + | | [[I2C Registers]] |
| 0x10148000 | | 0x10148000 | ||
| [[I2C Services]] | | [[I2C Services]] | ||
| | | | ||
|- | |- | ||
− | | [[SPI]] | + | | [[SPI Registers]] |
| 0x10160000 | | 0x10160000 | ||
| | | | ||
| | | | ||
|- | |- | ||
− | | [[I2C]] | + | | [[I2C Registers]] |
| 0x10161000 | | 0x10161000 | ||
| [[I2C Services]] | | [[I2C Services]] | ||
| | | | ||
|- | |- | ||
− | | [[MIC]] | + | | [[MIC Registers]] |
| 0x10162000 | | 0x10162000 | ||
| [[MIC Services]] | | [[MIC Services]] | ||
| | | | ||
|- | |- | ||
− | | [[PXI]] | + | | [[PXI Registers]] |
| 0x10163000 | | 0x10163000 | ||
| Boot11, Kernel11 | | Boot11, Kernel11 | ||
| | | | ||
|- | |- | ||
− | | [[NTRCARD]] | + | | [[NTRCARD Registers]] |
| 0x10164000 | | 0x10164000 | ||
| Process9 | | Process9 | ||
| | | | ||
|- | |- | ||
− | | [[MP]] | + | | [[MP Registers]] |
| 0x10165000 | | 0x10165000 | ||
| | | | ||
| | | | ||
|- | |- | ||
− | | [[MP]] | + | | [[MP Registers]] |
| 0x10170000 / 0x10171000 | | 0x10170000 / 0x10171000 | ||
| | | | ||
Line 207: | Line 207: | ||
| | | | ||
|- | |- | ||
− | | [[MP]] | + | | [[MP Registers]] |
| 0x10174000 | | 0x10174000 | ||
| | | | ||
| | | | ||
|- | |- | ||
− | | [[MP]] | + | | [[MP Registers]] |
| 0x10176000 / 0x10177000 | | 0x10176000 / 0x10177000 | ||
| | | | ||
| Mirrored. Same as 0x10170000. | | Mirrored. Same as 0x10170000. | ||
|- | |- | ||
− | | [[MP]] | + | | [[MP Registers]] |
| 0x10178000 - 0x10180000 | | 0x10178000 - 0x10180000 | ||
| | | | ||
| Mirror of 0x10170000-0x10178000. | | Mirror of 0x10170000-0x10178000. | ||
|- | |- | ||
− | | | + | | CDMA |
| 0x10200000 | | 0x10200000 | ||
| Kernel11 | | Kernel11 | ||
Line 232: | Line 232: | ||
| | | | ||
|- | |- | ||
− | | | + | | DSP |
| 0x10203000 | | 0x10203000 | ||
| | | | ||
Line 242: | Line 242: | ||
| | | | ||
|- | |- | ||
− | | [[HASH]] | + | | [[HASH Registers]] |
| 0x10301000 | | 0x10301000 | ||
| | | | ||
| | | | ||
|- | |- | ||
− | | [[LCD]] | + | | [[LCD Registers]] |
| 0x10400000 | | 0x10400000 | ||
| Kernel11, [[GSP Services]] | | Kernel11, [[GSP Services]] |
Revision as of 12:40, 28 September 2014
Overview
Category | Physical address start | Used by | Comments |
---|---|---|---|
CONFIG Registers | 0x10000000 | Boot9 | |
IRQ Registers | 0x10001000 | Kernel9 | |
NDMA Registers | 0x10002000 | Process9 | |
TIMER Registers | 0x10003000 | Process9 | |
CTRCARD Registers | 0x10004000 / 0x10005000 | Process9 | |
EMMC Registers | 0x10006000 / 0x10007000 | Boot9, Process9 | 0x10007000 is apparently not used on retail |
PXI Registers | 0x10008000 | Boot9, Process9 | |
AES Registers | 0x10009000 | Boot9, Process9 | |
SHA Registers | 0x1000A000 | Process9 | |
RSA Registers | 0x1000B000 | Boot9, Process9 | |
XDMA Registers | 0x1000C000 | Kernel9 | CoreLink™ DMA-330. Info |
SPICARD Registers | 0x1000D800 | Process9 | |
CONFIG Registers | 0x10010000 | Process9 | |
CONFIG Registers | 0x10011000 | Process9 | |
? | 0x10012000 | ||
? | 0x10018000 | TWL_FIRM | |
? | 0x10100000 | ||
HASH Registers | 0x10101000 | ||
? | 0x10102000 | ||
CSND Registers / DSP | 0x10103000 | Codec Services, CSND Services, DSP Services | |
? | 0x10110000 | ||
? | 0x10111000 | TwlBg | |
DSP | 0x10140000 | Process9, Kernel11, DSP Services | |
PDN Registers / CODEC Registers | 0x10141000 | Process9, Kernel11, Codec Services | |
SPI Registers | 0x10142000 | ||
SPI Registers | 0x10143000 | Only used under TWL_FIRM? | |
I2C Registers | 0x10144000 | Kernel11, I2C Services | |
CODEC Registers | 0x10145000 | Codec Services | |
HID Registers | 0x10146000 | Kernel11, HID Services | See PAD. |
GPIO Registers | 0x10147000 | GPIO Services | |
I2C Registers | 0x10148000 | I2C Services | |
SPI Registers | 0x10160000 | ||
I2C Registers | 0x10161000 | I2C Services | |
MIC Registers | 0x10162000 | MIC Services | |
PXI Registers | 0x10163000 | Boot11, Kernel11 | |
NTRCARD Registers | 0x10164000 | Process9 | |
MP Registers | 0x10165000 | ||
MP Registers | 0x10170000 / 0x10171000 | Mirrored? | |
? | 0x10172000 | ||
? | 0x10173000 | ||
MP Registers | 0x10174000 | ||
MP Registers | 0x10176000 / 0x10177000 | Mirrored. Same as 0x10170000. | |
MP Registers | 0x10178000 - 0x10180000 | Mirror of 0x10170000-0x10178000. | |
CDMA | 0x10200000 | Kernel11 | CoreLink™ DMA-330. Info |
? | 0x10202000 | Kernel11, GSP Services | |
DSP | 0x10203000 | ||
GPU? | 0x1020F000 | GSP Services | |
HASH Registers | 0x10301000 | ||
LCD Registers | 0x10400000 | Kernel11, GSP Services | |
? | 0x10420000 | GSP Services |
IO registers starting at physical address 0x10200000 are not accessible from the ARM9(which includes all LCD/GPU registers).
ARM11 kernel virtual address mappings for these registers varies for different builds.