14e6670feSJoseph Chen /* 24e6670feSJoseph Chen * (C) Copyright 2017 Rockchip Electronics Co., Ltd 34e6670feSJoseph Chen * 44e6670feSJoseph Chen * SPDX-License-Identifier: GPL-2.0+ 54e6670feSJoseph Chen */ 64e6670feSJoseph Chen 74e6670feSJoseph Chen #ifndef _ROCKCHIP_PLAT_IRQ_H_ 84e6670feSJoseph Chen #define _ROCKCHIP_PLAT_IRQ_H_ 94e6670feSJoseph Chen 10778da45fSJoseph Chen #if defined(CONFIG_ROCKCHIP_RK3128) 11778da45fSJoseph Chen #define GPIO0_PHYS 0x2007C000 12778da45fSJoseph Chen #define GPIO1_PHYS 0x20080000 13778da45fSJoseph Chen #define GPIO2_PHYS 0x20084000 14778da45fSJoseph Chen #define GPIO3_PHYS 0x20088000 15778da45fSJoseph Chen 16778da45fSJoseph Chen #define GIC_IRQS_NR (4 * 32) 17778da45fSJoseph Chen #define GPIO_IRQS_NR (4 * 32) 18778da45fSJoseph Chen 19778da45fSJoseph Chen #define GPIO_BANK_NUM 4 20778da45fSJoseph Chen #define GPIO_BANK_PINS 32 21778da45fSJoseph Chen 22*b073251dSJoseph Chen #define IRQ_USB_OTG 42 236d0f6303SJoseph Chen #define IRQ_TIMER1 61 24778da45fSJoseph Chen #define IRQ_GPIO0 68 25778da45fSJoseph Chen #define IRQ_GPIO1 69 26a1b32c24SJoseph Chen #define IRQ_GPIO2 70 27778da45fSJoseph Chen #define IRQ_GPIO3 71 28778da45fSJoseph Chen 29778da45fSJoseph Chen #elif defined(CONFIG_ROCKCHIP_RK322X) 304e6670feSJoseph Chen #define GPIO0_PHYS 0x11110000 314e6670feSJoseph Chen #define GPIO1_PHYS 0x11120000 324e6670feSJoseph Chen #define GPIO2_PHYS 0x11130000 334e6670feSJoseph Chen #define GPIO3_PHYS 0x11140000 344e6670feSJoseph Chen 354e6670feSJoseph Chen #define GIC_IRQS_NR (4 * 32) 364e6670feSJoseph Chen #define GPIO_IRQS_NR (4 * 32) 374e6670feSJoseph Chen 384e6670feSJoseph Chen #define GPIO_BANK_NUM 4 394e6670feSJoseph Chen #define GPIO_BANK_PINS 32 404e6670feSJoseph Chen 41*b073251dSJoseph Chen #define IRQ_USB_OTG 55 426d0f6303SJoseph Chen #define IRQ_TIMER1 76 43b0deaf68SZhangbin Tong #define IRQ_PWM 82 444e6670feSJoseph Chen #define IRQ_GPIO0 83 454e6670feSJoseph Chen #define IRQ_GPIO1 84 464e6670feSJoseph Chen #define IRQ_GPIO2 85 474e6670feSJoseph Chen #define IRQ_GPIO3 86 484e6670feSJoseph Chen 494e6670feSJoseph Chen #elif defined(CONFIG_ROCKCHIP_RK3288) 504e6670feSJoseph Chen #define GPIO0_PHYS 0xFF750000 514e6670feSJoseph Chen #define GPIO1_PHYS 0xFF780000 524e6670feSJoseph Chen #define GPIO2_PHYS 0xFF790000 534e6670feSJoseph Chen #define GPIO3_PHYS 0xFF7A0000 544e6670feSJoseph Chen #define GPIO4_PHYS 0xFF7B0000 554e6670feSJoseph Chen #define GPIO5_PHYS 0xFF7C0000 564e6670feSJoseph Chen #define GPIO6_PHYS 0xFF7D0000 574e6670feSJoseph Chen #define GPIO7_PHYS 0xFF7E0000 584e6670feSJoseph Chen #define GPIO8_PHYS 0xFF7F0000 594e6670feSJoseph Chen 604e6670feSJoseph Chen #define GIC_IRQS_NR (5 * 32) 614e6670feSJoseph Chen #define GPIO_IRQS_NR (9 * 32) 624e6670feSJoseph Chen 634e6670feSJoseph Chen #define GPIO_BANK_NUM 9 644e6670feSJoseph Chen #define GPIO_BANK_PINS 32 654e6670feSJoseph Chen 66*b073251dSJoseph Chen #define IRQ_USB_OTG 55 676d0f6303SJoseph Chen #define IRQ_TIMER1 99 68b0deaf68SZhangbin Tong #define IRQ_PWM 110 694e6670feSJoseph Chen #define IRQ_GPIO0 113 704e6670feSJoseph Chen #define IRQ_GPIO1 114 714e6670feSJoseph Chen #define IRQ_GPIO2 115 724e6670feSJoseph Chen #define IRQ_GPIO3 116 734e6670feSJoseph Chen #define IRQ_GPIO4 117 744e6670feSJoseph Chen #define IRQ_GPIO5 118 754e6670feSJoseph Chen #define IRQ_GPIO6 119 764e6670feSJoseph Chen #define IRQ_GPIO7 120 774e6670feSJoseph Chen #define IRQ_GPIO8 121 784e6670feSJoseph Chen 794e6670feSJoseph Chen #elif defined(CONFIG_ROCKCHIP_RK3328) 804e6670feSJoseph Chen #define GPIO0_PHYS 0xFF210000 814e6670feSJoseph Chen #define GPIO1_PHYS 0xFF220000 824e6670feSJoseph Chen #define GPIO2_PHYS 0xFF230000 834e6670feSJoseph Chen #define GPIO3_PHYS 0xFF240000 844e6670feSJoseph Chen 854e6670feSJoseph Chen #define GIC_IRQS_NR (4 * 32) 864e6670feSJoseph Chen #define GPIO_IRQS_NR (4 * 32) 874e6670feSJoseph Chen 884e6670feSJoseph Chen #define GPIO_BANK_NUM 4 894e6670feSJoseph Chen #define GPIO_BANK_PINS 32 904e6670feSJoseph Chen 916d0f6303SJoseph Chen #define IRQ_TIMER1 76 92b0deaf68SZhangbin Tong #define IRQ_PWM 82 934e6670feSJoseph Chen #define IRQ_GPIO0 83 944e6670feSJoseph Chen #define IRQ_GPIO1 84 954e6670feSJoseph Chen #define IRQ_GPIO2 85 964e6670feSJoseph Chen #define IRQ_GPIO3 86 974e6670feSJoseph Chen 984e6670feSJoseph Chen #elif defined(CONFIG_ROCKCHIP_RK3368) 994e6670feSJoseph Chen #define GPIO0_PHYS 0xFF750000 1004e6670feSJoseph Chen #define GPIO1_PHYS 0xFF780000 1014e6670feSJoseph Chen #define GPIO2_PHYS 0xFF790000 1024e6670feSJoseph Chen #define GPIO3_PHYS 0xFF7A0000 1034e6670feSJoseph Chen 1044e6670feSJoseph Chen #define GIC_IRQS_NR (5 * 32) 1054e6670feSJoseph Chen #define GPIO_IRQS_NR (4 * 32) 1064e6670feSJoseph Chen 1074e6670feSJoseph Chen #define GPIO_BANK_NUM 4 1084e6670feSJoseph Chen #define GPIO_BANK_PINS 32 1094e6670feSJoseph Chen 1101380460aSXiaoDong Huang #define IRQ_TIMER0 98 1111380460aSXiaoDong Huang #define IRQ_TIMER1 99 112b0deaf68SZhangbin Tong #define IRQ_PWM 110 1134e6670feSJoseph Chen #define IRQ_GPIO0 113 1144e6670feSJoseph Chen #define IRQ_GPIO1 114 1154e6670feSJoseph Chen #define IRQ_GPIO2 115 1164e6670feSJoseph Chen #define IRQ_GPIO3 116 1174e6670feSJoseph Chen 1184e6670feSJoseph Chen #elif defined(CONFIG_ROCKCHIP_RK3399) 1194e6670feSJoseph Chen #define GPIO0_PHYS 0xFF720000 1204e6670feSJoseph Chen #define GPIO1_PHYS 0xFF730000 1214e6670feSJoseph Chen #define GPIO2_PHYS 0xFF780000 1224e6670feSJoseph Chen #define GPIO3_PHYS 0xFF788000 1234e6670feSJoseph Chen #define GPIO4_PHYS 0xFF790000 1244e6670feSJoseph Chen 1254e6670feSJoseph Chen #define IRQ_GPIO0 46 1264e6670feSJoseph Chen #define IRQ_GPIO1 47 1274e6670feSJoseph Chen #define IRQ_GPIO2 48 1284e6670feSJoseph Chen #define IRQ_GPIO3 49 1294e6670feSJoseph Chen #define IRQ_GPIO4 50 130b0deaf68SZhangbin Tong #define IRQ_PWM 93 1316d0f6303SJoseph Chen #define IRQ_TIMER1 114 /* non-secure */ 1324e6670feSJoseph Chen 1334e6670feSJoseph Chen #define GIC_IRQS_NR (6 * 32) 1344e6670feSJoseph Chen #define GPIO_IRQS_NR (5 * 32) 1354e6670feSJoseph Chen 1364e6670feSJoseph Chen #define GPIO_BANK_NUM 5 1374e6670feSJoseph Chen #define GPIO_BANK_PINS 32 13860848109SJoseph Chen 13960848109SJoseph Chen #elif defined(CONFIG_ROCKCHIP_PX30) 14060848109SJoseph Chen #define GPIO0_PHYS 0xff040000 14160848109SJoseph Chen #define GPIO1_PHYS 0xff250000 14260848109SJoseph Chen #define GPIO2_PHYS 0xff260000 14360848109SJoseph Chen #define GPIO3_PHYS 0xff270000 14460848109SJoseph Chen 14560848109SJoseph Chen #define IRQ_GPIO0 35 14660848109SJoseph Chen #define IRQ_GPIO1 36 14760848109SJoseph Chen #define IRQ_GPIO2 37 14860848109SJoseph Chen #define IRQ_GPIO3 38 14960848109SJoseph Chen #define IRQ_PWM0 56 15060848109SJoseph Chen #define IRQ_PWM1 57 15149f812ddSJoseph Chen #define IRQ_TIMER0 62 /* non-secure */ 15260848109SJoseph Chen #define IRQ_TIMER1 63 /* non-secure */ 15360848109SJoseph Chen 15460848109SJoseph Chen #define GIC_IRQS_NR (4 * 32) 15560848109SJoseph Chen #define GPIO_IRQS_NR (4 * 32) 15660848109SJoseph Chen 15760848109SJoseph Chen #define GPIO_BANK_NUM 4 15860848109SJoseph Chen #define GPIO_BANK_PINS 32 15960848109SJoseph Chen 1600b4bf976SJoseph Chen #elif defined(CONFIG_ROCKCHIP_RK3308) 1610b4bf976SJoseph Chen #define GPIO0_PHYS 0xff220000 1620b4bf976SJoseph Chen #define GPIO1_PHYS 0xff230000 1630b4bf976SJoseph Chen #define GPIO2_PHYS 0xff240000 1640b4bf976SJoseph Chen #define GPIO3_PHYS 0xff250000 1650b4bf976SJoseph Chen #define GPIO4_PHYS 0xff260000 1660b4bf976SJoseph Chen 1670b4bf976SJoseph Chen #define IRQ_TIMER1 58 /* ch0 ns timer1 */ 1680b4bf976SJoseph Chen #define IRQ_GPIO0 72 1690b4bf976SJoseph Chen #define IRQ_GPIO1 73 1700b4bf976SJoseph Chen #define IRQ_GPIO2 74 1710b4bf976SJoseph Chen #define IRQ_GPIO3 75 1720b4bf976SJoseph Chen #define IRQ_GPIO4 76 1730b4bf976SJoseph Chen 1740b4bf976SJoseph Chen #define GIC_IRQS_NR (5 * 32) 1750b4bf976SJoseph Chen #define GPIO_IRQS_NR (5 * 32) 1760b4bf976SJoseph Chen 1770b4bf976SJoseph Chen #define GPIO_BANK_NUM 5 1780b4bf976SJoseph Chen #define GPIO_BANK_PINS 32 17947ad8107SJoseph Chen 18047ad8107SJoseph Chen #elif defined(CONFIG_ROCKCHIP_RK1808) 18147ad8107SJoseph Chen #define GPIO0_PHYS 0xff4c0000 18247ad8107SJoseph Chen #define GPIO1_PHYS 0xff690000 18347ad8107SJoseph Chen #define GPIO2_PHYS 0xff6a0000 18447ad8107SJoseph Chen #define GPIO3_PHYS 0xff6b0000 18547ad8107SJoseph Chen #define GPIO4_PHYS 0xff6c0000 18647ad8107SJoseph Chen 18747ad8107SJoseph Chen #define IRQ_GPIO0 35 18847ad8107SJoseph Chen #define IRQ_GPIO1 36 18947ad8107SJoseph Chen #define IRQ_GPIO2 37 19047ad8107SJoseph Chen #define IRQ_GPIO3 38 19147ad8107SJoseph Chen #define IRQ_GPIO4 114 19247ad8107SJoseph Chen 19347ad8107SJoseph Chen #define IRQ_TIMER0 58 19447ad8107SJoseph Chen #define IRQ_TIMER1 59 19547ad8107SJoseph Chen 19647ad8107SJoseph Chen #define GIC_IRQS_NR (5 * 32) 19747ad8107SJoseph Chen #define GPIO_IRQS_NR (5 * 32) 19847ad8107SJoseph Chen 19947ad8107SJoseph Chen #define GPIO_BANK_NUM 5 20047ad8107SJoseph Chen #define GPIO_BANK_PINS 32 20147ad8107SJoseph Chen 2024e6670feSJoseph Chen #else 2034e6670feSJoseph Chen "Missing define RIQ relative things" 2044e6670feSJoseph Chen #endif 2054e6670feSJoseph Chen 2064e6670feSJoseph Chen #endif /* _ROCKCHIP_PLAT_IRQ_H_ */ 207