1*4882a593Smuzhiyun // SPDX-License-Identifier: GPL-2.0 2*4882a593Smuzhiyun /* 3*4882a593Smuzhiyun * linux/arch/sh/boards/renesas/sh7763rdp/irq.c 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * Renesas Solutions SH7763RDP Support. 6*4882a593Smuzhiyun * 7*4882a593Smuzhiyun * Copyright (C) 2008 Renesas Solutions Corp. 8*4882a593Smuzhiyun * Copyright (C) 2008 Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com> 9*4882a593Smuzhiyun */ 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun #include <linux/init.h> 12*4882a593Smuzhiyun #include <linux/irq.h> 13*4882a593Smuzhiyun #include <asm/io.h> 14*4882a593Smuzhiyun #include <asm/irq.h> 15*4882a593Smuzhiyun #include <mach/sh7763rdp.h> 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun #define INTC_BASE (0xFFD00000) 18*4882a593Smuzhiyun #define INTC_INT2PRI7 (INTC_BASE+0x4001C) 19*4882a593Smuzhiyun #define INTC_INT2MSKCR (INTC_BASE+0x4003C) 20*4882a593Smuzhiyun #define INTC_INT2MSKCR1 (INTC_BASE+0x400D4) 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun /* 23*4882a593Smuzhiyun * Initialize IRQ setting 24*4882a593Smuzhiyun */ init_sh7763rdp_IRQ(void)25*4882a593Smuzhiyunvoid __init init_sh7763rdp_IRQ(void) 26*4882a593Smuzhiyun { 27*4882a593Smuzhiyun /* GPIO enabled */ 28*4882a593Smuzhiyun __raw_writel(1 << 25, INTC_INT2MSKCR); 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun /* enable GPIO interrupts */ 31*4882a593Smuzhiyun __raw_writel((__raw_readl(INTC_INT2PRI7) & 0xFF00FFFF) | 0x000F0000, 32*4882a593Smuzhiyun INTC_INT2PRI7); 33*4882a593Smuzhiyun 34*4882a593Smuzhiyun /* USBH enabled */ 35*4882a593Smuzhiyun __raw_writel(1 << 17, INTC_INT2MSKCR1); 36*4882a593Smuzhiyun 37*4882a593Smuzhiyun /* GETHER enabled */ 38*4882a593Smuzhiyun __raw_writel(1 << 16, INTC_INT2MSKCR1); 39*4882a593Smuzhiyun 40*4882a593Smuzhiyun /* DMAC enabled */ 41*4882a593Smuzhiyun __raw_writel(1 << 8, INTC_INT2MSKCR); 42*4882a593Smuzhiyun } 43