1*ded59d6dSGeert Uytterhoeven #ifndef __ASM_SH73A0_H__ 2*ded59d6dSGeert Uytterhoeven #define __ASM_SH73A0_H__ 3*ded59d6dSGeert Uytterhoeven 4*ded59d6dSGeert Uytterhoeven /* DMA slave IDs */ 5*ded59d6dSGeert Uytterhoeven enum { 6*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_INVALID, 7*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SCIF0_TX, 8*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SCIF0_RX, 9*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SCIF1_TX, 10*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SCIF1_RX, 11*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SCIF2_TX, 12*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SCIF2_RX, 13*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SCIF3_TX, 14*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SCIF3_RX, 15*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SCIF4_TX, 16*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SCIF4_RX, 17*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SCIF5_TX, 18*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SCIF5_RX, 19*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SCIF6_TX, 20*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SCIF6_RX, 21*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SCIF7_TX, 22*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SCIF7_RX, 23*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SCIF8_TX, 24*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SCIF8_RX, 25*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SDHI0_TX, 26*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SDHI0_RX, 27*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SDHI1_TX, 28*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SDHI1_RX, 29*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SDHI2_TX, 30*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_SDHI2_RX, 31*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_MMCIF_TX, 32*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_MMCIF_RX, 33*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_FSI2A_TX, 34*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_FSI2A_RX, 35*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_FSI2B_TX, 36*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_FSI2B_RX, 37*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_FSI2C_TX, 38*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_FSI2C_RX, 39*ded59d6dSGeert Uytterhoeven SHDMA_SLAVE_FSI2D_RX, 40*ded59d6dSGeert Uytterhoeven }; 41*ded59d6dSGeert Uytterhoeven 42*ded59d6dSGeert Uytterhoeven /* 43*ded59d6dSGeert Uytterhoeven * SH73A0 IRQ LOCATION TABLE 44*ded59d6dSGeert Uytterhoeven * 45*ded59d6dSGeert Uytterhoeven * 416 ----------------------------------------- 46*ded59d6dSGeert Uytterhoeven * IRQ0-IRQ15 47*ded59d6dSGeert Uytterhoeven * 431 ----------------------------------------- 48*ded59d6dSGeert Uytterhoeven * ... 49*ded59d6dSGeert Uytterhoeven * 448 ----------------------------------------- 50*ded59d6dSGeert Uytterhoeven * sh73a0-intcs 51*ded59d6dSGeert Uytterhoeven * sh73a0-intca-irq-pins 52*ded59d6dSGeert Uytterhoeven * 680 ----------------------------------------- 53*ded59d6dSGeert Uytterhoeven * ... 54*ded59d6dSGeert Uytterhoeven * 700 ----------------------------------------- 55*ded59d6dSGeert Uytterhoeven * sh73a0-pint0 56*ded59d6dSGeert Uytterhoeven * 731 ----------------------------------------- 57*ded59d6dSGeert Uytterhoeven * 732 ----------------------------------------- 58*ded59d6dSGeert Uytterhoeven * sh73a0-pint1 59*ded59d6dSGeert Uytterhoeven * 739 ----------------------------------------- 60*ded59d6dSGeert Uytterhoeven * ... 61*ded59d6dSGeert Uytterhoeven * 800 ----------------------------------------- 62*ded59d6dSGeert Uytterhoeven * IRQ16-IRQ31 63*ded59d6dSGeert Uytterhoeven * 815 ----------------------------------------- 64*ded59d6dSGeert Uytterhoeven * ... 65*ded59d6dSGeert Uytterhoeven * 928 ----------------------------------------- 66*ded59d6dSGeert Uytterhoeven * sh73a0-intca-irq-pins 67*ded59d6dSGeert Uytterhoeven * 943 ----------------------------------------- 68*ded59d6dSGeert Uytterhoeven */ 69*ded59d6dSGeert Uytterhoeven 70*ded59d6dSGeert Uytterhoeven /* PINT interrupts are located at Linux IRQ 700 and up */ 71*ded59d6dSGeert Uytterhoeven #define SH73A0_PINT0_IRQ(irq) ((irq) + 700) 72*ded59d6dSGeert Uytterhoeven #define SH73A0_PINT1_IRQ(irq) ((irq) + 732) 73*ded59d6dSGeert Uytterhoeven 74*ded59d6dSGeert Uytterhoeven extern void sh73a0_init_delay(void); 75*ded59d6dSGeert Uytterhoeven extern void sh73a0_init_irq(void); 76*ded59d6dSGeert Uytterhoeven extern void sh73a0_init_irq_dt(void); 77*ded59d6dSGeert Uytterhoeven extern void sh73a0_map_io(void); 78*ded59d6dSGeert Uytterhoeven extern void sh73a0_earlytimer_init(void); 79*ded59d6dSGeert Uytterhoeven extern void sh73a0_add_early_devices(void); 80*ded59d6dSGeert Uytterhoeven extern void sh73a0_add_standard_devices(void); 81*ded59d6dSGeert Uytterhoeven extern void sh73a0_add_standard_devices_dt(void); 82*ded59d6dSGeert Uytterhoeven extern void sh73a0_clock_init(void); 83*ded59d6dSGeert Uytterhoeven extern void sh73a0_pinmux_init(void); 84*ded59d6dSGeert Uytterhoeven extern void sh73a0_pm_init(void); 85*ded59d6dSGeert Uytterhoeven extern struct clk sh73a0_extal1_clk; 86*ded59d6dSGeert Uytterhoeven extern struct clk sh73a0_extal2_clk; 87*ded59d6dSGeert Uytterhoeven extern struct clk sh73a0_extcki_clk; 88*ded59d6dSGeert Uytterhoeven extern struct clk sh73a0_extalr_clk; 89*ded59d6dSGeert Uytterhoeven extern struct smp_operations sh73a0_smp_ops; 90*ded59d6dSGeert Uytterhoeven 91*ded59d6dSGeert Uytterhoeven #endif /* __ASM_SH73A0_H__ */ 92