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

Commit 4862ec07 authored by Nicholas Beck's avatar Nicholas Beck Committed by Paul Mundt
Browse files

sh: Add support for SDK7780 board.



Add support for Renesas Technology Europe SDK7780 board.

Signed-off-by: default avatarNicholas Beck <nbeck@mpc-data.co.uk>
Signed-off-by: default avatarPaul Mundt <lethal@linux-sh.org>
parent 773c7bd6
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -455,6 +455,14 @@ config SH_RTS7751R2D
	  Select RTS7751R2D if configuring for a Renesas Technology
	  Sales SH-Graphics board.

config SH_SDK7780
	bool "SDK7780R3"
	depends on CPU_SUBTYPE_SH7780
	select SYS_SUPPORTS_PCI
	help
	  Select SDK7780 if configuring for a Renesas SH7780 SDK7780R3
	  evaluation board.

config SH_HIGHLANDER
	bool "Highlander"
	depends on CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
@@ -520,6 +528,7 @@ endmenu

source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
source "arch/sh/boards/renesas/r7780rp/Kconfig"
source "arch/sh/boards/renesas/sdk7780/Kconfig"
source "arch/sh/boards/magicpanelr2/Kconfig"

menu "Timer and clock configuration"
+1 −0
Original line number Diff line number Diff line
@@ -116,6 +116,7 @@ machdir-$(CONFIG_SH_RTS7751R2D) += renesas/rts7751r2d
machdir-$(CONFIG_SH_7751_SYSTEMH)		+= renesas/systemh
machdir-$(CONFIG_SH_EDOSK7705)			+= renesas/edosk7705
machdir-$(CONFIG_SH_HIGHLANDER)			+= renesas/r7780rp
machdir-$(CONFIG_SH_SDK7780)			+= renesas/sdk7780
machdir-$(CONFIG_SH_7710VOIPGW)			+= renesas/sh7710voipgw
machdir-$(CONFIG_SH_X3PROTO)			+= renesas/x3proto
machdir-$(CONFIG_SH_SH4202_MICRODEV)		+= superh/microdev
+23 −0
Original line number Diff line number Diff line
if SH_SDK7780

choice
	prompt "SDK7780 options"
	default SH_SDK7780_BASE

config SH_SDK7780_STANDALONE
	bool "SDK7780 board support"
	depends on CPU_SUBTYPE_SH7780
	help
	  Selecting this option will enable support for the
	  standalone version of the SDK7780. If in doubt, say Y.

config SH_SDK7780_BASE
	bool "SDK7780 with base-board support"
	depends on CPU_SUBTYPE_SH7780
	help
	  Selecting this option will enable support for the expansion
	  baseboard devices. If in doubt, say Y.

endchoice

endif
+5 −0
Original line number Diff line number Diff line
#
# Makefile for the SDK7780 specific parts of the kernel
#
obj-y	 := setup.o irq.o
+46 −0
Original line number Diff line number Diff line
/*
 * 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);
}
Loading