Difference between revisions of "IO Registers"
Jump to navigation
Jump to search
(Gotta be short and concise :)) |
|||
Line 11: | Line 11: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A9 | | A9 | ||
− | | [[CONFIG | + | | [[CONFIG Registers]] |
| 0x10000000 | | 0x10000000 | ||
| Boot9, Process9 | | Boot9, Process9 | ||
Line 18: | Line 18: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A9 | | A9 | ||
− | | [[IRQ | + | | [[IRQ Registers]] |
| 0x10001000 | | 0x10001000 | ||
| Boot9, Process9, Kernel9 | | Boot9, Process9, Kernel9 | ||
Line 25: | Line 25: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A9 | | A9 | ||
− | | [[NDMA | + | | [[NDMA Registers]] |
| 0x10002000 | | 0x10002000 | ||
| Boot9, Process9 | | Boot9, Process9 | ||
Line 32: | Line 32: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A9 | | A9 | ||
− | | [[TIMER | + | | [[TIMER Registers]] |
| 0x10003000 | | 0x10003000 | ||
| Boot9, Process9 | | Boot9, Process9 | ||
Line 39: | Line 39: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A9 | | A9 | ||
− | | [[CTRCARD | + | | [[CTRCARD Registers]] |
| 0x10004000 / 0x10005000 | | 0x10004000 / 0x10005000 | ||
| Process9 | | Process9 | ||
Line 46: | Line 46: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A9 | | A9 | ||
− | | [[EMMC | + | | [[EMMC Registers]] |
| 0x10006000 / 0x10007000 | | 0x10006000 / 0x10007000 | ||
| Boot9, Process9 | | Boot9, Process9 | ||
Line 53: | Line 53: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A9 | | A9 | ||
− | | [[PXI | + | | [[PXI Registers]] |
| 0x10008000 | | 0x10008000 | ||
| Boot9, Process9 | | Boot9, Process9 | ||
Line 60: | Line 60: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A9 | | A9 | ||
− | | [[AES | + | | [[AES Registers]] |
| 0x10009000 | | 0x10009000 | ||
| Boot9, Process9 | | Boot9, Process9 | ||
Line 67: | Line 67: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A9 | | A9 | ||
− | | [[SHA | + | | [[SHA Registers]] |
| 0x1000A000 | | 0x1000A000 | ||
| Boot9, Process9 | | Boot9, Process9 | ||
Line 74: | Line 74: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A9 | | A9 | ||
− | | [[RSA | + | | [[RSA Registers]] |
| 0x1000B000 | | 0x1000B000 | ||
| Boot9, Process9 | | Boot9, Process9 | ||
Line 81: | Line 81: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A9 | | A9 | ||
− | | [[XDMA | + | | [[XDMA Registers]] |
| 0x1000C000 | | 0x1000C000 | ||
| Boot9, Kernel9 | | Boot9, Kernel9 | ||
Line 88: | Line 88: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A9 | | A9 | ||
− | | [[SPICARD | + | | [[SPICARD Registers]] |
| 0x1000D800 | | 0x1000D800 | ||
| Process9 | | Process9 | ||
Line 95: | Line 95: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| ? | | ? | ||
− | | [[CONFIG | + | | [[CONFIG Registers]] |
| 0x10010000 | | 0x10010000 | ||
| Process9 | | Process9 | ||
Line 102: | Line 102: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| ? | | ? | ||
− | | PRNG | + | | PRNG Registers |
| 0x10011000 | | 0x10011000 | ||
| Process9 | | Process9 | ||
Line 109: | Line 109: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| ? | | ? | ||
− | | [[OTP | + | | [[OTP Registers]] |
| 0x10012000 | | 0x10012000 | ||
| Kernel9, NewKernel9Loader | | Kernel9, NewKernel9Loader | ||
Line 130: | Line 130: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[HASH | + | | [[HASH Registers]] |
| 0x10101000 | | 0x10101000 | ||
| [[Filesystem services]] | | [[Filesystem services]] | ||
Line 137: | Line 137: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[Camera | + | | [[Camera Registers]] |
| 0x10102000 | | 0x10102000 | ||
| [[Camera Services]] | | [[Camera Services]] | ||
Line 144: | Line 144: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[CSND | + | | [[CSND Registers]] / [[DSP Registers]] |
| 0x10103000 | | 0x10103000 | ||
| TwlBg, [[Codec Services]], [[CSND Services]], [[DSP Services]] | | TwlBg, [[Codec Services]], [[CSND Services]], [[DSP Services]] | ||
Line 154: | Line 154: | ||
| 0x10110000 | | 0x10110000 | ||
| TwlBg | | TwlBg | ||
− | | IO | + | | IO registers used to access legacy output framebuffer, as well as configure the upscaling filter. |
|- | |- | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
Line 161: | Line 161: | ||
| 0x10111000 | | 0x10111000 | ||
| TwlBg | | TwlBg | ||
− | | IO | + | | IO registers used to access legacy output framebuffer, as well as configure the upscaling filter. |
|-style="border-top: double" | |-style="border-top: double" | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[Camera | + | | [[Camera Registers]] |
| 0x10120000 | | 0x10120000 | ||
| [[Camera Services]] | | [[Camera Services]] | ||
Line 172: | Line 172: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[Camera | + | | [[Camera Registers]] |
| 0x10121000 | | 0x10121000 | ||
| [[Camera Services]] | | [[Camera Services]] | ||
Line 193: | Line 193: | ||
| style="background: red" | No | | style="background: red" | No | ||
| A11/A9 | | A11/A9 | ||
− | | [[MVD | + | | [[MVD Registers]] |
| 0x10130000 | | 0x10130000 | ||
| [[MVD Services]] | | [[MVD Services]] | ||
Line 200: | Line 200: | ||
| style="background: red" | No | | style="background: red" | No | ||
| A11/A9 | | A11/A9 | ||
− | | [[MVD | + | | [[MVD Registers]] |
| 0x10131000 | | 0x10131000 | ||
| [[MVD Services]] | | [[MVD Services]] | ||
Line 207: | Line 207: | ||
| style="background: red" | No | | style="background: red" | No | ||
| A11/A9 | | A11/A9 | ||
− | | [[MVD | + | | [[MVD Registers]] |
| 0x10132000 | | 0x10132000 | ||
| [[MVD Services]] | | [[MVD Services]] | ||
Line 214: | Line 214: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[PDN | + | | [[PDN Registers]] |
| 0x10140000 | | 0x10140000 | ||
| Process9, Boot11, Kernel11, TwlBg, [[DSP Services]], [[NWM Services]], [[SPI Services]] | | Process9, Boot11, Kernel11, TwlBg, [[DSP Services]], [[NWM Services]], [[SPI Services]] | ||
Line 221: | Line 221: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[PDN | + | | [[PDN Registers]] |
| 0x10141000 | | 0x10141000 | ||
| Process9, Boot11, Kernel11, TwlBg, [[Codec Services]], [[NWM Services]], [[SPI Services]], [[PDN Services]] | | Process9, Boot11, Kernel11, TwlBg, [[Codec Services]], [[NWM Services]], [[SPI Services]], [[PDN Services]] | ||
Line 228: | Line 228: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[SPI | + | | [[SPI Registers]] |
| 0x10142000 | | 0x10142000 | ||
| TwlBg, [[SPI Services]] | | TwlBg, [[SPI Services]] | ||
Line 235: | Line 235: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[SPI | + | | [[SPI Registers]] |
| 0x10143000 | | 0x10143000 | ||
| TwlBg | | TwlBg | ||
Line 242: | Line 242: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[I2C | + | | [[I2C Registers]] |
| 0x10144000 | | 0x10144000 | ||
| Boot11, Kernel11, TwlBg, [[I2C Services]] | | Boot11, Kernel11, TwlBg, [[I2C Services]] | ||
Line 249: | Line 249: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[CODEC | + | | [[CODEC Registers]] |
| 0x10145000 | | 0x10145000 | ||
| TwlBg, [[Codec Services]] | | TwlBg, [[Codec Services]] | ||
Line 256: | Line 256: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[HID | + | | [[HID Registers]] |
| 0x10146000 | | 0x10146000 | ||
| Boot11, Kernel11, TwlBg, [[HID Services]], dlp Services | | Boot11, Kernel11, TwlBg, [[HID Services]], dlp Services | ||
Line 263: | Line 263: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[GPIO | + | | [[GPIO Registers]] |
| 0x10147000 | | 0x10147000 | ||
| Boot11, TwlBg, [[GPIO Services]], [[DSP Services]](v0) | | Boot11, TwlBg, [[GPIO Services]], [[DSP Services]](v0) | ||
Line 270: | Line 270: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[I2C | + | | [[I2C Registers]] |
| 0x10148000 | | 0x10148000 | ||
| TwlBg, [[I2C Services]] | | TwlBg, [[I2C Services]] | ||
Line 277: | Line 277: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[SPI | + | | [[SPI Registers]] |
| 0x10160000 | | 0x10160000 | ||
| Boot9, TwlBg, [[SPI Services]] | | Boot9, TwlBg, [[SPI Services]] | ||
Line 284: | Line 284: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[I2C | + | | [[I2C Registers]] |
| 0x10161000 | | 0x10161000 | ||
| Boot11, TwlBg, [[I2C Services]] | | Boot11, TwlBg, [[I2C Services]] | ||
Line 291: | Line 291: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[MIC | + | | [[MIC Registers]] |
| 0x10162000 | | 0x10162000 | ||
| [[MIC Services]] | | [[MIC Services]] | ||
Line 298: | Line 298: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[PXI | + | | [[PXI Registers]] |
| 0x10163000 | | 0x10163000 | ||
| Boot11, Kernel11, TwlBg, [[PXI Services]] | | Boot11, Kernel11, TwlBg, [[PXI Services]] | ||
Line 305: | Line 305: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[NTRCARD | + | | [[NTRCARD Registers]] |
| 0x10164000 | | 0x10164000 | ||
| Boot9, Process9 | | Boot9, Process9 | ||
Line 312: | Line 312: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[MP | + | | [[MP Registers]] |
| 0x10165000 | | 0x10165000 | ||
| [[MP Services]] | | [[MP Services]] | ||
Line 319: | Line 319: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[MP | + | | [[MP Registers]] |
| 0x10170000 | | 0x10170000 | ||
| [[MP Services]] | | [[MP Services]] | ||
− | | NTR WIFI | + | | NTR WIFI Registers, see [http://problemkaputt.de/gbatek.htm#dswirelesscommunications GBATek]. |
|- | |- | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[MP | + | | [[MP Registers]] |
| 0x10171000 | | 0x10171000 | ||
| [[MP Services]] | | [[MP Services]] | ||
− | | NTR WIFI | + | | NTR WIFI Registers (mirror) |
|- | |- | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
Line 347: | Line 347: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[MP | + | | [[MP Registers]] |
| 0x10174000 | | 0x10174000 | ||
| [[MP Services]] | | [[MP Services]] | ||
Line 354: | Line 354: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[MP | + | | [[MP Registers]] |
| 0x10175000 | | 0x10175000 | ||
|? | |? | ||
Line 361: | Line 361: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[MP | + | | [[MP Registers]] |
| 0x10176000 | | 0x10176000 | ||
|? | |? | ||
− | | NTR WIFI | + | | NTR WIFI Registers (mirror) |
|- | |- | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[MP | + | | [[MP Registers]] |
| 0x10177000 | | 0x10177000 | ||
|? | |? | ||
− | | NTR WIFI | + | | NTR WIFI Registers (mirror) |
|- | |- | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11/A9 | | A11/A9 | ||
− | | [[MP | + | | [[MP Registers]] |
| 0x10178000 - 0x10180000 | | 0x10178000 - 0x10180000 | ||
| [[MP Services]] | | [[MP Services]] | ||
Line 396: | Line 396: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11 | | A11 | ||
− | | [[LCD | + | | [[LCD Registers]] |
| 0x10202000 | | 0x10202000 | ||
| TwlBg, Kernel11, [[GSP Services]] | | TwlBg, Kernel11, [[GSP Services]] | ||
Line 403: | Line 403: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11 | | A11 | ||
− | | [[DSP | + | | [[DSP Registers]] |
| 0x10203000 | | 0x10203000 | ||
| [[DSP Services]] | | [[DSP Services]] | ||
Line 424: | Line 424: | ||
| style="background: red" | No | | style="background: red" | No | ||
| A11 | | A11 | ||
− | | [[MVD | + | | [[MVD Registers]] |
| 0x10207000 | | 0x10207000 | ||
| [[MVD Services]] | | [[MVD Services]] | ||
Line 445: | Line 445: | ||
| style="background: green" | Yes | | style="background: green" | Yes | ||
| A11 | | A11 | ||
− | | [[GPU | + | | [[GPU Registers]] |
| 0x10400000 | | 0x10400000 | ||
| Boot11, Kernel11, [[GSP Services]] | | Boot11, Kernel11, [[GSP Services]] | ||
Line 451: | Line 451: | ||
|} | |} | ||
− | IO | + | IO registers starting at physical address 0x10200000 are not accessible from the ARM9 (which includes all LCD/GPU registers). It seems IO registers below physical address 0x10100000 are not accessible from the ARM11 bus. |
− | ARM11 kernel virtual address mappings for these | + | ARM11 kernel virtual address mappings for these registers varies for different builds. For ARM11 user mode applications you have: |
physaddr = virtaddr - 0x1EC00000 + 0x10100000 | physaddr = virtaddr - 0x1EC00000 + 0x10100000 |
Revision as of 20:08, 7 April 2015
Overview
Old3DS | A9/A11 | Category | Physaddr | Used by | Comments |
---|---|---|---|---|---|
Yes | A9 | CONFIG Registers | 0x10000000 | Boot9, Process9 | |
Yes | A9 | IRQ Registers | 0x10001000 | Boot9, Process9, Kernel9 | ARM9 Interrupt Masking |
Yes | A9 | NDMA Registers | 0x10002000 | Boot9, Process9 | DMA Engine |
Yes | A9 | TIMER Registers | 0x10003000 | Boot9, Process9 | |
Yes | A9 | CTRCARD Registers | 0x10004000 / 0x10005000 | Process9 | |
Yes | A9 | EMMC Registers | 0x10006000 / 0x10007000 | Boot9, Process9 | 0x10007000 is normally not enabled on retail, all-zeros when read. |
Yes | A9 | PXI Registers | 0x10008000 | Boot9, Process9 | |
Yes | A9 | AES Registers | 0x10009000 | Boot9, Process9 | |
Yes | A9 | SHA Registers | 0x1000A000 | Boot9, Process9 | |
Yes | A9 | RSA Registers | 0x1000B000 | Boot9, Process9 | |
Yes | A9 | XDMA Registers | 0x1000C000 | Boot9, Kernel9 | CoreLink™ DMA-330 (single-channel). |
Yes | A9 | SPICARD Registers | 0x1000D800 | Process9 | |
Yes | ? | CONFIG Registers | 0x10010000 | Process9 | |
Yes | ? | PRNG Registers | 0x10011000 | Process9 | Used as entropy-source for seeding random number generators. |
Yes | ? | OTP Registers | 0x10012000 | Kernel9, NewKernel9Loader | Top secret. |
Yes | ? | 0x10018000 | TwlProcess9 | Used to setup the ARM7 core for AGB/TWL | |
Yes | ? | ? | 0x10100000 | ? | ? |
Yes | A11/A9 | HASH Registers | 0x10101000 | Filesystem services | |
Yes | A11/A9 | Camera Registers | 0x10102000 | Camera Services | y2r |
Yes | A11/A9 | CSND Registers / DSP Registers | 0x10103000 | TwlBg, Codec Services, CSND Services, DSP Services | Sound hardware. For DSP regs, see the "DSi XpertTeak" section in no$gba help. |
Yes | A11/A9 | LGYFB0 | 0x10110000 | TwlBg | IO registers used to access legacy output framebuffer, as well as configure the upscaling filter. |
Yes | A11/A9 | LGYFB1 | 0x10111000 | TwlBg | IO registers used to access legacy output framebuffer, as well as configure the upscaling filter. |
Yes | A11/A9 | Camera Registers | 0x10120000 | Camera Services | |
Yes | A11/A9 | Camera Registers | 0x10121000 | Camera Services | Mirror of 0x10120000? |
Yes | A11/A9 | ? | 0x10122000 | NWM Services | WIFI? |
Yes | A11/A9 | ? | 0x10123000 | NWM Services | WIFI? |
No | A11/A9 | MVD Registers | 0x10130000 | MVD Services | |
No | A11/A9 | MVD Registers | 0x10131000 | MVD Services | |
No | A11/A9 | MVD Registers | 0x10132000 | MVD Services | |
Yes | A11/A9 | PDN Registers | 0x10140000 | Process9, Boot11, Kernel11, TwlBg, DSP Services, NWM Services, SPI Services | Power management. |
Yes | A11/A9 | PDN Registers | 0x10141000 | Process9, Boot11, Kernel11, TwlBg, Codec Services, NWM Services, SPI Services, PDN Services | Power management |
Yes | A11/A9 | SPI Registers | 0x10142000 | TwlBg, SPI Services | |
Yes | A11/A9 | SPI Registers | 0x10143000 | TwlBg | Only used under TWL_FIRM? |
Yes | A11/A9 | I2C Registers | 0x10144000 | Boot11, Kernel11, TwlBg, I2C Services | |
Yes | A11/A9 | CODEC Registers | 0x10145000 | TwlBg, Codec Services | |
Yes | A11/A9 | HID Registers | 0x10146000 | Boot11, Kernel11, TwlBg, HID Services, dlp Services | See PAD. |
Yes | A11/A9 | GPIO Registers | 0x10147000 | Boot11, TwlBg, GPIO Services, DSP Services(v0) | |
Yes | A11/A9 | I2C Registers | 0x10148000 | TwlBg, I2C Services | |
Yes | A11/A9 | SPI Registers | 0x10160000 | Boot9, TwlBg, SPI Services | |
Yes | A11/A9 | I2C Registers | 0x10161000 | Boot11, TwlBg, I2C Services | See no$gba help for some clues maybe. |
Yes | A11/A9 | MIC Registers | 0x10162000 | MIC Services | |
Yes | A11/A9 | PXI Registers | 0x10163000 | Boot11, Kernel11, TwlBg, PXI Services | |
Yes | A11/A9 | NTRCARD Registers | 0x10164000 | Boot9, Process9 | |
Yes | A11/A9 | MP Registers | 0x10165000 | MP Services | |
Yes | A11/A9 | MP Registers | 0x10170000 | MP Services | NTR WIFI Registers, see GBATek. |
Yes | A11/A9 | MP Registers | 0x10171000 | MP Services | NTR WIFI Registers (mirror) |
Yes | A11/A9 | ? | 0x10172000 | ? | NTR WIFI Unused? |
Yes | A11/A9 | ? | 0x10173000 | ? | NTR WIFI Unused? |
Yes | A11/A9 | MP Registers | 0x10174000 | MP Services | NTR WIFI RAM |
Yes | A11/A9 | MP Registers | 0x10175000 | ? | NTR WIFI RAM |
Yes | A11/A9 | MP Registers | 0x10176000 | ? | NTR WIFI Registers (mirror) |
Yes | A11/A9 | MP Registers | 0x10177000 | ? | NTR WIFI Registers (mirror) |
Yes | A11/A9 | MP Registers | 0x10178000 - 0x10180000 | MP Services | NTR WIFI WS1 Region |
Yes | A11 | CDMA | 0x10200000 | Boot11, Kernel11 | CoreLink™ DMA-330. Not used on New3DS. |
Yes | A11 | ? | 0x10201000 | ||
Yes | A11 | LCD Registers | 0x10202000 | TwlBg, Kernel11, GSP Services | |
Yes | A11 | DSP Registers | 0x10203000 | DSP Services | |
Yes | A11 | ? | 0x10204000 | ||
No | A11 | CDMA | 0x10206000 | NewKernel11 | CDMA was moved here on New 3DS. CoreLink™ DMA-330. |
No | A11 | MVD Registers | 0x10207000 | MVD Services | New 3DS only? |
Yes | A11 | AXI | 0x1020F000 | TwlBg, GSP Services | CoreLink™ NIC-301 r1p0. |
Yes | A11 | MIRROR | 0x10300000-0x10400000 | Mirror of 0x10100000-0x10200000 (faster bus?), CDMA wants these addresses | |
Yes | A11 | GPU Registers | 0x10400000 | Boot11, Kernel11, GSP Services |
IO registers starting at physical address 0x10200000 are not accessible from the ARM9 (which includes all LCD/GPU registers). It seems IO registers below physical address 0x10100000 are not accessible from the ARM11 bus.
ARM11 kernel virtual address mappings for these registers varies for different builds. For ARM11 user mode applications you have:
physaddr = virtaddr - 0x1EC00000 + 0x10100000