1234567891011121314151617181920212223242526272829 |
- #ifndef __RASPI4_H__
- #define __RASPI4_H__
- //gpio
- #define GPIO_BASE (0xFE000000 + 0x00200000)
- //uart
- #define UART0_BASE (0xFE000000 + 0x00201000)
- #define PL011_BASE UART0_BASE
- #define IRQ_PL011 (121 + 32)
- #define UART_REFERENCE_CLOCK (48000000)
- // 0x40, 0x44, 0x48, 0x4c: Core 0~3 Timers interrupt control
- #define CORE0_TIMER_IRQ_CTRL HWREG32(0xFF800040)
- #define TIMER_IRQ 30
- #define NON_SECURE_TIMER_IRQ (1 << 1)
- //gic max
- #define ARM_GIC_NR_IRQS (512)
- #define INTC_BASE (0xff800000)
- #define GIC_V2_DISTRIBUTOR_BASE (INTC_BASE + 0x00041000)
- #define GIC_V2_CPU_INTERFACE_BASE (INTC_BASE + 0x00042000)
- #define GIC_V2_HYPERVISOR_BASE (INTC_BASE + 0x00044000)
- #define GIC_V2_VIRTUAL_CPU_BASE (INTC_BASE + 0x00046000)
- #define GIC_PL400_DISTRIBUTOR_PPTR GIC_V2_DISTRIBUTOR_BASE
- #define GIC_PL400_CONTROLLER_PPTR GIC_V2_CPU_INTERFACE_BASE
- #endif
|