4/29/2020
Godson 3A1000 Processor User Manual
108
* (volatile unsigned char *) 0x900000003ff01419 = 0x21;
* (volatile unsigned char *) 0x900000003ff0141a = 0x21;
* (volatile unsigned char *) 0x900000003ff0141b = 0x21;
* (volatile unsigned char *) 0x900000003ff0141c = 0x21;
* (volatile unsigned char *) 0x900000003ff0141d = 0x21;
121
Page 134
Godson 3A1000 Processor User Manual Part 2
* (volatile unsigned char *) 0x900000003ff0141e = 0x21;
* (volatile unsigned char *) 0x900000003ff0141f = 0x21;
b) 3A-KD60
The hardware connection is 8259 of "CPU serial port + CPU PCI + CPU", and the routing setting is:
/ * Route the LPC interrupt to Core0 INT0, corresponding to IP2 of Cp0_Status * /
* (volatile unsigned char *) 0x900000003ff0140a = 0x11;
/ * Route the I8259 interrupt to Core0 INT1, corresponding to IP3 of Cp0_Status * /
* (volatile unsigned char *) (0x900000003ff01400) = 0x21;
/ * Route PCI interrupt to Core0 INT3, corresponding to IP5 of Cp0_Status * /
* (volatile unsigned char *) (0x900000003ff01404) = 0x81;
11.2.2
Interrupt enable
Interrupt related configuration registers are used to control the corresponding interrupt lines in the form of bits.
The interrupt enable (Enable) configuration has three registers: Intenset, Intenclr and Inten. Intenset
Set the interrupt enable, and the interrupt corresponding to the write 1 bit in the Intenset register is enabled. Intenclr clear interrupt enable, Intenclr
The interrupt corresponding to the register write 1 is cleared. The Inten register reads the current status of each interrupt enable. Pulsed
The interrupt signal (such as PCI_SERR) is selected by the Intedge configuration register, write 1 means pulse trigger, write 0 means
Level trigger. The interrupt handler can clear the pulse record through the corresponding bit of Intenclr.
Table 11-3 Interrupt control bit connection and attribute configuration
name
Address offset
description
Intisr
0x1420
32-bit interrupt status register
Inten
0x1424
32-bit interrupt enable status register
Intenset
0x1428
32-bit setting enable register
Intenclr
0x142c
32-bit clear enable register
Intedge
0x1438
32-bit trigger mode register
CORE0_INTISR
0x1440
32-bit interrupt status routed to CORE0
CORE1_INTISR
0x1448
32-bit interrupt status routed to CORE1
CORE2_INTISR
0x1450
32-bit interrupt status routed to CORE2
CORE3_INTISR
0x1458
32-bit interrupt status routed to CORE3
Not only need to enable the IO controller, specifically to the connected IO, if it has its own interrupt controller, it also needs to
122
Page 135