mirror of
https://github.com/torvalds/linux.git
synced 2024-11-16 00:52:01 +00:00
da2014a2b0
This flattens out the board directories in to individual mach groups, we will use this for getting rid of unneeded directories, simplifying the build system, and becoming more coherent with the refactored arch/sh/include topology. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
47 lines
1.2 KiB
C
47 lines
1.2 KiB
C
/*
|
|
* linux/arch/sh/boards/renesas/sdk7780/irq.c
|
|
*
|
|
* Renesas Technology Europe SDK7780 Support.
|
|
*
|
|
* Copyright (C) 2008 Nicholas Beck <nbeck@mpc-data.co.uk>
|
|
*
|
|
* This file is subject to the terms and conditions of the GNU General Public
|
|
* License. See the file "COPYING" in the main directory of this archive
|
|
* for more details.
|
|
*/
|
|
#include <linux/init.h>
|
|
#include <linux/irq.h>
|
|
#include <linux/io.h>
|
|
#include <asm/sdk7780.h>
|
|
|
|
enum {
|
|
UNUSED = 0,
|
|
/* board specific interrupt sources */
|
|
SMC91C111, /* Ethernet controller */
|
|
};
|
|
|
|
static struct intc_vect fpga_vectors[] __initdata = {
|
|
INTC_IRQ(SMC91C111, IRQ_ETHERNET),
|
|
};
|
|
|
|
static struct intc_mask_reg fpga_mask_registers[] __initdata = {
|
|
{ 0, FPGA_IRQ0MR, 16,
|
|
{ 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, SMC91C111, 0, 0, 0, 0 } },
|
|
};
|
|
|
|
static DECLARE_INTC_DESC(fpga_intc_desc, "sdk7780-irq", fpga_vectors,
|
|
NULL, fpga_mask_registers, NULL, NULL);
|
|
|
|
void __init init_sdk7780_IRQ(void)
|
|
{
|
|
printk(KERN_INFO "Using SDK7780 interrupt controller.\n");
|
|
|
|
ctrl_outw(0xFFFF, FPGA_IRQ0MR);
|
|
/* Setup IRL 0-3 */
|
|
ctrl_outw(0x0003, FPGA_IMSR);
|
|
plat_irq_setup_pins(IRQ_MODE_IRL3210);
|
|
|
|
register_intc_controller(&fpga_intc_desc);
|
|
}
|