Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 70fe4d87 authored by Takashi YOSHII's avatar Takashi YOSHII Committed by Paul Mundt
Browse files

sh: Wire up more IRQs for SH7709.



hp6xx requires some additional IRQs that aren't currently enabled in
the SH7709 setup code. Wire them up.

Signed-off-by: default avatarTakashi YOSHII <takashi.yoshii.ze@hitachi.com>
Signed-off-by: default avatarKristoffer Ericson <kristoffer.ericson@gmail.com>
Signed-off-by: default avatarPaul Mundt <lethal@linux-sh.org>
parent 6865f0ea
Loading
Loading
Loading
Loading
+19 −10
Original line number Original line Diff line number Diff line
@@ -52,20 +52,29 @@ static int __init sh7709_devices_setup(void)
}
}
__initcall(sh7709_devices_setup);
__initcall(sh7709_devices_setup);


#define IPRx(A,N) .addr=A, .shift=0*N*-1
#define IPRx(A,N)	.addr=A, .shift=N
#define IPRA(N)	IPRx(0xfffffee2UL,N)
#define IPRA(N)	IPRx(0xfffffee2UL,N)
#define IPRB(N)	IPRx(0xfffffee4UL,N)
#define IPRB(N)	IPRx(0xfffffee4UL,N)
#define IPRC(N)	IPRx(0xa4000016UL,N)
#define IPRD(N)	IPRx(0xa4000018UL,N)
#define IPRE(N)	IPRx(0xa400001aUL,N)
#define IPRE(N)	IPRx(0xa400001aUL,N)


static struct ipr_data sh7709_ipr_map[] = {
static struct ipr_data sh7709_ipr_map[] = {
	[16]		= { IPRA(15-12), 2 }, /* TMU TUNI0 */
	[16]		= { IPRA(12), 2 }, /* TMU TUNI0 */
	[17]		= { IPRA(11-8),  4 }, /* TMU TUNI1 */
	[17]		= { IPRA(8),  4 }, /* TMU TUNI1 */
	[22]		= { IPRA(3-0),   2 }, /* RTC CUI */
	[18 ... 19]	= { IPRA(4),  1 }, /* TMU TUNI1 */
	[23 ... 26]	= { IPRB(7-4),   3 }, /* SCI */
	[20 ... 22]	= { IPRA(0),  2 }, /* RTC CUI */
	[27]		= { IPRB(15-12), 2 }, /* WDT ITI */
	[23 ... 26]	= { IPRB(4),  3 }, /* SCI */
	[48 ... 51]	= { IPRE(15-12), 7 }, /* DMA */
	[27]		= { IPRB(12), 2 }, /* WDT ITI */
	[52 ... 55]	= { IPRE(11-8),  3 }, /* IRDA */
	[32]		= { IPRC(0),  1 }, /* IRQ 0 */
	[56 ... 59]	= { IPRE(7-4),   3 }, /* SCIF */
	[33]		= { IPRC(4),  1 }, /* IRQ 1 */
	[34]		= { IPRC(8),  1 }, /* IRQ 2 APM */
	[35]		= { IPRC(12), 1 }, /* IRQ 3 TOUCHSCREEN */
	[36]		= { IPRD(0),  1 }, /* IRQ 4 */
	[37]		= { IPRD(4),  1 }, /* IRQ 5 */
	[48 ... 51]	= { IPRE(12), 7 }, /* DMA */
	[52 ... 55]	= { IPRE(8),  3 }, /* IRDA */
	[56 ... 59]	= { IPRE(4),  3 }, /* SCIF */
};
};


void __init init_IRQ_ipr()
void __init init_IRQ_ipr()