Line 106: |
Line 106: |
| | P3D | | | P3D |
| |- | | |- |
− | | 0x30 | + | | 0x30-0x38 |
| | Kernel | | | Kernel |
− | | ? | + | | Old CDMA Event 0..8 (9 separate IRQ lines) |
| |- | | |- |
| | 0x39 | | | 0x39 |
| | Kernel | | | Kernel |
− | | DMA | + | | Old CDMA Faulting (eg. CCR=0, or event>15) |
| |- | | |- |
| | 0x3A | | | 0x3A |
| | Kernel | | | Kernel |
− | | DMA | + | | New CDMA Event 0..31 (shared IRQ line) |
| |- | | |- |
| | 0x3B | | | 0x3B |
| | Kernel | | | Kernel |
− | | DMA | + | | New CDMA Faulting (eg. CCR=0) |
| |- | | |- |
| | 0x40 | | | 0x40 |
Line 128: |
Line 128: |
| | 0x41 | | | 0x41 |
| | nwm | | | nwm |
− | | ? | + | | WIFI SDIO Controller IRQ pin @ 0x10122000 |
| |- | | |- |
| | 0x42 | | | 0x42 |
| | nwm_dev? | | | nwm_dev? |
− | | WIFI SDIO Controller @ 0x10100000 | + | | Debug WIFI SDIO Controller @ 0x10100000 ? |
| + | |- |
| + | | 0x43 |
| + | | nwm_dev? |
| + | | Debug WIFI SDIO Controller @ 0x10100000 ? |
| + | |- |
| + | | 0x44 |
| + | | ? |
| + | | NTRCARD (maybe?) |
| |- | | |- |
| | 0x45 | | | 0x45 |
| | mvd (New3DS) | | | mvd (New3DS) |
− | | ? | + | | L2B_0 (First RGB-to-RGBA Converter) |
| |- | | |- |
| | 0x46 | | | 0x46 |
| | mvd (New3DS) | | | mvd (New3DS) |
− | | ? | + | | L2B_1 (Second RGB-to-RGBA Converter) |
| |- | | |- |
| | 0x48 | | | 0x48 |
| | camera | | | camera |
− | | ? | + | | Camera Bus 0 (DSi cameras) |
| |- | | |- |
| | 0x49 | | | 0x49 |
| | camera | | | camera |
− | | ? | + | | Camera Bus 1 (left-eye) |
| |- | | |- |
| | 0x4A | | | 0x4A |
Line 160: |
Line 168: |
| | 0x4C | | | 0x4C |
| | TwlBg | | | TwlBg |
− | | ? | + | | LGYFB_0 Legacy GBA/NDS Video |
| |- | | |- |
| | 0x4D | | | 0x4D |
| | TwlBg | | | TwlBg |
− | | ? | + | | LGYFB_1 Legacy GBA/NDS Video |
| |- | | |- |
| | 0x4E | | | 0x4E |
Line 172: |
Line 180: |
| | 0x4F | | | 0x4F |
| | mvd (New3DS) | | | mvd (New3DS) |
− | | Related to mvd services | + | | MVD general interrupt? |
| |- | | |- |
| | 0x50 | | | 0x50 |
| | pxi, TwlBg | | | pxi, TwlBg |
− | | Sync | + | | Sync (bit 29 from Arm9's PXI_SYNC) |
| |- | | |- |
| | 0x51 | | | 0x51 |
| | pxi, TwlBg | | | pxi, TwlBg |
− | | ? | + | | Sync 2 (bit 30 from Arm9's PXI_SYNC) |
| |- | | |- |
| | 0x52 | | | 0x52 |
Line 208: |
Line 216: |
| | 0x58 | | | 0x58 |
| | Kernel | | | Kernel |
− | | PDN | + | | PDN Wake Event |
| |- | | |- |
| | 0x59 | | | 0x59 |
| | TwlBg | | | TwlBg |
− | | ? | + | | PDN "switch to legacy mode" done (?) |
| |- | | |- |
| | 0x5A | | | 0x5A |
| | mic | | | mic |
− | | ? | + | | General microphone interrupt (?) |
| |- | | |- |
| | 0x5C | | | 0x5C |
| | i2c, TwlBg | | | i2c, TwlBg |
| | I2C Bus2 work done | | | I2C Bus2 work done |
| + | |- |
| + | | 0x5F |
| + | | mp |
| + | | DS WiFi registers |
| |- | | |- |
| | 0x60 | | | 0x60 |
Line 232: |
Line 244: |
| | 0x63 | | | 0x63 |
| | gpio, TwlBg | | | gpio, TwlBg |
− | | Touchscreen | + | | Touchscreen Pen Down |
| |- | | |- |
| | 0x64 | | | 0x64 |
Line 240: |
Line 252: |
| | 0x66 | | | 0x66 |
| | gpio, TwlBg | | | gpio, TwlBg |
− | | ? | + | | GPIO_DATA1.bit1 (sfio = ?) |
| |- | | |- |
| | 0x68 | | | 0x68 |
| | gpio, TwlBg | | | gpio, TwlBg |
− | | IR | + | | C-stick Interrupt |
| |- | | |- |
| | 0x69 | | | 0x69 |
| | gpio, TwlBg | | | gpio, TwlBg |
− | | ? | + | | IrDA Interrupt |
| |- | | |- |
| | 0x6A | | | 0x6A |
| | gpio, TwlBg | | | gpio, TwlBg |
− | | ? | + | | Gyro Interrupt |
| |- | | |- |
| | 0x6B | | | 0x6B |
| | gpio, TwlBg | | | gpio, TwlBg |
− | | ? | + | | GPIO_DATA3.bit3 (sfio = ?) |
| |- | | |- |
| | 0x6C | | | 0x6C |
| | gpio, TwlBg | | | gpio, TwlBg |
− | | ? | + | | GPIO_DATA3.bit4 (sfio = ?) |
| |- | | |- |
| | 0x6D | | | 0x6D |
| | gpio, TwlBg | | | gpio, TwlBg |
− | | ? | + | | GPIO_DATA3.bit5 (sfio = ?) |
| |- | | |- |
| | 0x6E | | | 0x6E |
| | gpio, TwlBg | | | gpio, TwlBg |
− | | ? | + | | GPIO_DATA3.bit6 (sfio = ?) |
| |- | | |- |
| | 0x6F | | | 0x6F |
| | gpio, TwlBg | | | gpio, TwlBg |
− | | ? | + | | GPIO_DATA3.bit7 (sfio = ?) |
| |- | | |- |
| | 0x70 | | | 0x70 |
| | gpio, TwlBg | | | gpio, TwlBg |
− | | ? | + | | GPIO_DATA3.bit8 (sfio = ?) |
| |- | | |- |
| | 0x71 | | | 0x71 |
| | gpio, TwlBg | | | gpio, TwlBg |
− | | MCU (HOME/POWER pressed/released or WiFi switch pressed) | + | | MCU (HOME/POWER pressed/released or WiFi switch pressed, etc.) |
| |- | | |- |
| | 0x72 | | | 0x72 |
| | gpio, TwlBg | | | gpio, TwlBg |
− | | ? | + | | NFC |
| |- | | |- |
| | 0x73 | | | 0x73 |
| | TwlBg | | | TwlBg |
− | | ? | + | | GPIO_DATA3.bit11 (sfio = ?) |
| |- | | |- |
| | 0x74 | | | 0x74 |
Line 297: |
Line 309: |
| | ? | | | ? |
| | Gamecard inserted | | | Gamecard inserted |
| + | |- |
| + | | 0x76 |
| + | | - |
| + | | L2C |
| |- | | |- |
| | 0x78 to 0x7B | | | 0x78 to 0x7B |
Line 305: |
Line 321: |
| 0x7C to 0x84 (bit2 clear) | | 0x7C to 0x84 (bit2 clear) |
| | Kernel | | | Kernel |
− | | ? | + | | Other PMU interrupts (line may not exist at all) |
| |} | | |} |
| (interrupts from 0x80 and up can't be mapped in available builds of the kernel) | | (interrupts from 0x80 and up can't be mapped in available builds of the kernel) |
| | | |
| | | |
− | There are 2 tables in the ARM11 kernel: the first has 32 * 2(or 32 * 4) 8-byte entries. This table is for the private interrupts that belong to each core. The data for each interrupt can be found by doing table_base + (core_num * 0x100) + (intr_num * 8). The second table is for public hardware interrupts and the data for each interrupt can be retrieved by doing table_base + (intr_num * 8). | + | There are 2 tables in the ARM11 kernel: the first has 32 * 2(or 32 * 4) 8-byte entries. This table is for the private interrupts that belong to each core. The data for each interrupt can be found by doing table_base + (core_num * 0x100) + (intr_num * 8). The second table is for public hardware interrupts and the data for each interrupt can be retrieved by doing table_base + (intr_num * 8). |
| | | |
| = InterruptData = | | = InterruptData = |