Line 11: |
Line 11: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A9 | | | A9 |
− | | [[CONFIG Registers]] | + | | [[CONFIG rgstrs]] |
| | 0x10000000 | | | 0x10000000 |
| | Boot9, Process9 | | | Boot9, Process9 |
Line 18: |
Line 18: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A9 | | | A9 |
− | | [[IRQ Registers]] | + | | [[IRQ rgstrs]] |
| | 0x10001000 | | | 0x10001000 |
| | Boot9, Process9, Kernel9 | | | Boot9, Process9, Kernel9 |
Line 25: |
Line 25: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A9 | | | A9 |
− | | [[NDMA Registers]] | + | | [[NDMA rgstrs]] |
| | 0x10002000 | | | 0x10002000 |
| | Boot9, Process9 | | | Boot9, Process9 |
Line 32: |
Line 32: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A9 | | | A9 |
− | | [[TIMER Registers]] | + | | [[TIMER rgstrs]] |
| | 0x10003000 | | | 0x10003000 |
| | Boot9, Process9 | | | Boot9, Process9 |
Line 39: |
Line 39: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A9 | | | A9 |
− | | [[CTRCARD Registers]] | + | | [[CTRCARD rgstrs]] |
| | 0x10004000 / 0x10005000 | | | 0x10004000 / 0x10005000 |
| | Process9 | | | Process9 |
Line 46: |
Line 46: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A9 | | | A9 |
− | | [[EMMC Registers]] | + | | [[EMMC rgstrs]] |
| | 0x10006000 / 0x10007000 | | | 0x10006000 / 0x10007000 |
| | Boot9, Process9 | | | Boot9, Process9 |
Line 53: |
Line 53: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A9 | | | A9 |
− | | [[PXI Registers]] | + | | [[PXI rgstrs]] |
| | 0x10008000 | | | 0x10008000 |
| | Boot9, Process9 | | | Boot9, Process9 |
Line 60: |
Line 60: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A9 | | | A9 |
− | | [[AES Registers]] | + | | [[AES rgstrs]] |
| | 0x10009000 | | | 0x10009000 |
| | Boot9, Process9 | | | Boot9, Process9 |
Line 67: |
Line 67: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A9 | | | A9 |
− | | [[SHA Registers]] | + | | [[SHA rgstrs]] |
| | 0x1000A000 | | | 0x1000A000 |
| | Boot9, Process9 | | | Boot9, Process9 |
Line 74: |
Line 74: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A9 | | | A9 |
− | | [[RSA Registers]] | + | | [[RSA rgstrs]] |
| | 0x1000B000 | | | 0x1000B000 |
| | Boot9, Process9 | | | Boot9, Process9 |
Line 81: |
Line 81: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A9 | | | A9 |
− | | [[XDMA Registers]] | + | | [[XDMA rgstrs]] |
| | 0x1000C000 | | | 0x1000C000 |
| | Boot9, Kernel9 | | | Boot9, Kernel9 |
Line 88: |
Line 88: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A9 | | | A9 |
− | | [[SPICARD Registers]] | + | | [[SPICARD rgstrs]] |
| | 0x1000D800 | | | 0x1000D800 |
| | Process9 | | | Process9 |
Line 95: |
Line 95: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | ? | | | ? |
− | | [[CONFIG Registers]] | + | | [[CONFIG rgstrs]] |
| | 0x10010000 | | | 0x10010000 |
| | Process9 | | | Process9 |
Line 102: |
Line 102: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | ? | | | ? |
− | | PRNG Registers | + | | PRNG rgstrs |
| | 0x10011000 | | | 0x10011000 |
| | Process9 | | | Process9 |
Line 109: |
Line 109: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | ? | | | ? |
− | | [[OTP Registers]] | + | | [[OTP rgstrs]] |
| | 0x10012000 | | | 0x10012000 |
| | Kernel9, NewKernel9Loader | | | Kernel9, NewKernel9Loader |
Line 130: |
Line 130: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A11/A9 | | | A11/A9 |
− | | [[HASH Registers]] | + | | [[HASH rgstrs]] |
| | 0x10101000 | | | 0x10101000 |
| | [[Filesystem services]] | | | [[Filesystem services]] |
Line 137: |
Line 137: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A11/A9 | | | A11/A9 |
− | | [[Camera Registers]] | + | | [[Camera rgstrs]] |
| | 0x10102000 | | | 0x10102000 |
| | [[Camera Services]] | | | [[Camera Services]] |
Line 144: |
Line 144: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A11/A9 | | | A11/A9 |
− | | [[CSND Registers]] / [[DSP Registers]] | + | | [[CSND rgstrs]] / [[DSP rgstrs]] |
| | 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 registers used to access legacy output framebuffer, as well as configure the upscaling filter. | + | | IO rgstrs 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 registers used to access legacy output framebuffer, as well as configure the upscaling filter. | + | | IO rgstrs 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 Registers]] | + | | [[Camera rgstrs]] |
| | 0x10120000 | | | 0x10120000 |
| | [[Camera Services]] | | | [[Camera Services]] |
Line 172: |
Line 172: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A11/A9 | | | A11/A9 |
− | | [[Camera Registers]] | + | | [[Camera rgstrs]] |
| | 0x10121000 | | | 0x10121000 |
| | [[Camera Services]] | | | [[Camera Services]] |
Line 193: |
Line 193: |
| | style="background: red" | No | | | style="background: red" | No |
| | A11/A9 | | | A11/A9 |
− | | [[MVD Registers]] | + | | [[MVD rgstrs]] |
| | 0x10130000 | | | 0x10130000 |
| | [[MVD Services]] | | | [[MVD Services]] |
Line 200: |
Line 200: |
| | style="background: red" | No | | | style="background: red" | No |
| | A11/A9 | | | A11/A9 |
− | | [[MVD Registers]] | + | | [[MVD rgstrs]] |
| | 0x10131000 | | | 0x10131000 |
| | [[MVD Services]] | | | [[MVD Services]] |
Line 207: |
Line 207: |
| | style="background: red" | No | | | style="background: red" | No |
| | A11/A9 | | | A11/A9 |
− | | [[MVD Registers]] | + | | [[MVD rgstrs]] |
| | 0x10132000 | | | 0x10132000 |
| | [[MVD Services]] | | | [[MVD Services]] |
Line 214: |
Line 214: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A11/A9 | | | A11/A9 |
− | | [[PDN Registers]] | + | | [[PDN rgstrs]] |
| | 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 Registers]] | + | | [[PDN rgstrs]] |
| | 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 Registers]] | + | | [[SPI rgstrs]] |
| | 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 Registers]] | + | | [[SPI rgstrs]] |
| | 0x10143000 | | | 0x10143000 |
| | TwlBg | | | TwlBg |
Line 242: |
Line 242: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A11/A9 | | | A11/A9 |
− | | [[I2C Registers]] | + | | [[I2C rgstrs]] |
| | 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 Registers]] | + | | [[CODEC rgstrs]] |
| | 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 Registers]] | + | | [[HID rgstrs]] |
| | 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 Registers]] | + | | [[GPIO rgstrs]] |
| | 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 Registers]] | + | | [[I2C rgstrs]] |
| | 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 Registers]] | + | | [[SPI rgstrs]] |
| | 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 Registers]] | + | | [[I2C rgstrs]] |
| | 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 Registers]] | + | | [[MIC rgstrs]] |
| | 0x10162000 | | | 0x10162000 |
| | [[MIC Services]] | | | [[MIC Services]] |
Line 298: |
Line 298: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A11/A9 | | | A11/A9 |
− | | [[PXI Registers]] | + | | [[PXI rgstrs]] |
| | 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 Registers]] | + | | [[NTRCARD rgstrs]] |
| | 0x10164000 | | | 0x10164000 |
| | Boot9, Process9 | | | Boot9, Process9 |
Line 312: |
Line 312: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A11/A9 | | | A11/A9 |
− | | [[MP Registers]] | + | | [[MP rgstrs]] |
| | 0x10165000 | | | 0x10165000 |
| | [[MP Services]] | | | [[MP Services]] |
Line 319: |
Line 319: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A11/A9 | | | A11/A9 |
− | | [[MP Registers]] | + | | [[MP rgstrs]] |
| | 0x10170000 | | | 0x10170000 |
| | [[MP Services]] | | | [[MP Services]] |
− | | NTR WIFI Registers, see [http://problemkaputt.de/gbatek.htm#dswirelesscommunications GBATek]. | + | | NTR WIFI rgstrs, see [http://problemkaputt.de/gbatek.htm#dswirelesscommunications GBATek]. |
| |- | | |- |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A11/A9 | | | A11/A9 |
− | | [[MP Registers]] | + | | [[MP rgstrs]] |
| | 0x10171000 | | | 0x10171000 |
| | [[MP Services]] | | | [[MP Services]] |
− | | NTR WIFI Registers (mirror) | + | | NTR WIFI rgstrs (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 Registers]] | + | | [[MP rgstrs]] |
| | 0x10174000 | | | 0x10174000 |
| | [[MP Services]] | | | [[MP Services]] |
Line 354: |
Line 354: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A11/A9 | | | A11/A9 |
− | | [[MP Registers]] | + | | [[MP rgstrs]] |
| | 0x10175000 | | | 0x10175000 |
| |? | | |? |
Line 361: |
Line 361: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A11/A9 | | | A11/A9 |
− | | [[MP Registers]] | + | | [[MP rgstrs]] |
| | 0x10176000 | | | 0x10176000 |
| |? | | |? |
− | | NTR WIFI Registers (mirror) | + | | NTR WIFI rgstrs (mirror) |
| |- | | |- |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A11/A9 | | | A11/A9 |
− | | [[MP Registers]] | + | | [[MP rgstrs]] |
| | 0x10177000 | | | 0x10177000 |
| |? | | |? |
− | | NTR WIFI Registers (mirror) | + | | NTR WIFI rgstrs (mirror) |
| |- | | |- |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A11/A9 | | | A11/A9 |
− | | [[MP Registers]] | + | | [[MP rgstrs]] |
| | 0x10178000 - 0x10180000 | | | 0x10178000 - 0x10180000 |
| | [[MP Services]] | | | [[MP Services]] |
Line 396: |
Line 396: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A11 | | | A11 |
− | | [[LCD Registers]] | + | | [[LCD rgstrs]] |
| | 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 Registers]] | + | | [[DSP rgstrs]] |
| | 0x10203000 | | | 0x10203000 |
| | [[DSP Services]] | | | [[DSP Services]] |
Line 424: |
Line 424: |
| | style="background: red" | No | | | style="background: red" | No |
| | A11 | | | A11 |
− | | [[MVD Registers]] | + | | [[MVD rgstrs]] |
| | 0x10207000 | | | 0x10207000 |
| | [[MVD Services]] | | | [[MVD Services]] |
Line 445: |
Line 445: |
| | style="background: green" | Yes | | | style="background: green" | Yes |
| | A11 | | | A11 |
− | | [[GPU Registers]] | + | | [[GPU rgstrs]] |
| | 0x10400000 | | | 0x10400000 |
| | Boot11, Kernel11, [[GSP Services]] | | | Boot11, Kernel11, [[GSP Services]] |
Line 451: |
Line 451: |
| |} | | |} |
| | | |
− | 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. | + | IO rgstrs starting at physical address 0x10200000 are not accessible from the ARM9 (which includes all LCD/GPU rgstrs). It seems IO rgstrs 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: | + | ARM11 kernel virtual address mappings for these rgstrs varies for different builds. For ARM11 user mode applications you have: |
| physaddr = virtaddr - 0x1EC00000 + 0x10100000 | | physaddr = virtaddr - 0x1EC00000 + 0x10100000 |