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

Commit e7d7deca authored by Paul Mundt's avatar Paul Mundt
Browse files

sh: Fix up SH7710 VoIP-GW build.



The only board-specific bits that existed here were for setting up the
IRQs, which are now handled by the SH7710 CPU support code instead. As
there's nothing else to do for setup, kill off the board support code
and have the defconfig use the generic machvec instead.

Signed-off-by: default avatarPaul Mundt <lethal@linux-sh.org>
parent 2af8b3b6
Loading
Loading
Loading
Loading
+0 −7
Original line number Original line Diff line number Diff line
@@ -456,13 +456,6 @@ config SH_SECUREEDGE5410
	  This includes both the OEM SecureEdge products as well as the
	  This includes both the OEM SecureEdge products as well as the
	  SME product line.
	  SME product line.


config SH_7710VOIPGW
	bool "SH7710-VOIP-GW"
	depends on CPU_SUBTYPE_SH7710
	help
	  Select this option to build a kernel for the SH7710 based
	  VOIP GW.

config SH_RTS7751R2D
config SH_RTS7751R2D
	bool "RTS7751R2D"
	bool "RTS7751R2D"
	depends on CPU_SUBTYPE_SH7751R
	depends on CPU_SUBTYPE_SH7751R
+0 −1
Original line number Original line Diff line number Diff line
@@ -118,7 +118,6 @@ machdir-$(CONFIG_SH_EDOSK7705) += renesas/edosk7705
machdir-$(CONFIG_SH_HIGHLANDER)			+= renesas/r7780rp
machdir-$(CONFIG_SH_HIGHLANDER)			+= renesas/r7780rp
machdir-$(CONFIG_SH_MIGOR)			+= renesas/migor
machdir-$(CONFIG_SH_MIGOR)			+= renesas/migor
machdir-$(CONFIG_SH_SDK7780)			+= renesas/sdk7780
machdir-$(CONFIG_SH_SDK7780)			+= renesas/sdk7780
machdir-$(CONFIG_SH_7710VOIPGW)			+= renesas/sh7710voipgw
machdir-$(CONFIG_SH_X3PROTO)			+= renesas/x3proto
machdir-$(CONFIG_SH_X3PROTO)			+= renesas/x3proto
machdir-$(CONFIG_SH_SH4202_MICRODEV)		+= superh/microdev
machdir-$(CONFIG_SH_SH4202_MICRODEV)		+= superh/microdev
machdir-$(CONFIG_SH_LANDISK)			+= landisk
machdir-$(CONFIG_SH_LANDISK)			+= landisk
+0 −1
Original line number Original line Diff line number Diff line
obj-y	 := setup.o
+0 −94
Original line number Original line Diff line number Diff line
/*
 * Renesas Technology SH7710 VoIP Gateway
 *
 * Copyright (C) 2006  Ranjit Deshpande
 * Kenati Technologies Inc.
 *
 * May be copied or modified under the terms of the GNU General Public
 * License.  See linux/COPYING for more information.
 */
#include <linux/init.h>
#include <asm/machvec.h>
#include <asm/irq.h>
#include <asm/io.h>

static struct ipr_data sh7710voipgw_ipr_map[] = {
	{ TIMER2_IRQ, TIMER2_IPR_ADDR, TIMER2_IPR_POS, TIMER2_PRIORITY },
	{ WDT_IRQ, WDT_IPR_ADDR, WDT_IPR_POS, WDT_PRIORITY },

	/* SCIF0 */
	{ SCIF0_ERI_IRQ, SCIF0_IPR_ADDR, SCIF0_IPR_POS, SCIF0_PRIORITY },
	{ SCIF0_RXI_IRQ, SCIF0_IPR_ADDR, SCIF0_IPR_POS, SCIF0_PRIORITY },
	{ SCIF0_BRI_IRQ, SCIF0_IPR_ADDR, SCIF0_IPR_POS, SCIF0_PRIORITY },
	{ SCIF0_TXI_IRQ, SCIF0_IPR_ADDR, SCIF0_IPR_POS, SCIF0_PRIORITY },

	/* DMAC-1 */
	{ DMTE0_IRQ, DMA_IPR_ADDR, DMA_IPR_POS, DMA_PRIORITY },
	{ DMTE1_IRQ, DMA_IPR_ADDR, DMA_IPR_POS, DMA_PRIORITY },
	{ DMTE2_IRQ, DMA_IPR_ADDR, DMA_IPR_POS, DMA_PRIORITY },
	{ DMTE3_IRQ, DMA_IPR_ADDR, DMA_IPR_POS, DMA_PRIORITY },

	/* DMAC-2 */
	{ DMTE4_IRQ, DMA2_IPR_ADDR, DMA2_IPR_POS, DMA2_PRIORITY },
	{ DMTE4_IRQ, DMA2_IPR_ADDR, DMA2_IPR_POS, DMA2_PRIORITY },

	/* IPSEC */
	{ IPSEC_IRQ, IPSEC_IPR_ADDR, IPSEC_IPR_POS, IPSEC_PRIORITY },

	/* EDMAC */
	{ EDMAC0_IRQ, EDMAC0_IPR_ADDR, EDMAC0_IPR_POS, EDMAC0_PRIORITY },
	{ EDMAC1_IRQ, EDMAC1_IPR_ADDR, EDMAC1_IPR_POS, EDMAC1_PRIORITY },
	{ EDMAC2_IRQ, EDMAC2_IPR_ADDR, EDMAC2_IPR_POS, EDMAC2_PRIORITY },

	/* SIOF0 */
	{ SIOF0_ERI_IRQ, SIOF0_IPR_ADDR, SIOF0_IPR_POS, SIOF0_PRIORITY },
	{ SIOF0_TXI_IRQ, SIOF0_IPR_ADDR, SIOF0_IPR_POS, SIOF0_PRIORITY },
	{ SIOF0_RXI_IRQ, SIOF0_IPR_ADDR, SIOF0_IPR_POS, SIOF0_PRIORITY },
	{ SIOF0_CCI_IRQ, SIOF0_IPR_ADDR, SIOF0_IPR_POS, SIOF0_PRIORITY },

	/* SIOF1 */
	{ SIOF1_ERI_IRQ, SIOF1_IPR_ADDR, SIOF1_IPR_POS, SIOF1_PRIORITY },
	{ SIOF1_TXI_IRQ, SIOF1_IPR_ADDR, SIOF1_IPR_POS, SIOF1_PRIORITY },
	{ SIOF1_RXI_IRQ, SIOF1_IPR_ADDR, SIOF1_IPR_POS, SIOF1_PRIORITY },
	{ SIOF1_CCI_IRQ, SIOF1_IPR_ADDR, SIOF1_IPR_POS, SIOF1_PRIORITY },

	/* SLIC IRQ's */
	{ IRQ1_IRQ, IRQ1_IPR_ADDR, IRQ1_IPR_POS, IRQ1_PRIORITY },
	{ IRQ2_IRQ, IRQ2_IPR_ADDR, IRQ2_IPR_POS, IRQ2_PRIORITY },
};

/*
 * Initialize IRQ setting
 */
static void __init sh7710voipgw_init_irq(void)
{
	/* Disable all interrupts in IPR registers */
	ctrl_outw(0x0, INTC_IPRA);
	ctrl_outw(0x0, INTC_IPRB);
	ctrl_outw(0x0, INTC_IPRC);
	ctrl_outw(0x0, INTC_IPRD);
	ctrl_outw(0x0, INTC_IPRE);
	ctrl_outw(0x0, INTC_IPRF);
	ctrl_outw(0x0, INTC_IPRG);
	ctrl_outw(0x0, INTC_IPRH);
	ctrl_outw(0x0, INTC_IPRI);

	/* Ack all interrupt sources in the IRR0 register */
	ctrl_outb(0x3f, INTC_IRR0);

	/* Use IRQ0 - IRQ3 as active low interrupt lines i.e. disable
	 * IRL mode.
	 */
	ctrl_outw(0x2aa, INTC_ICR1);

	make_ipr_irq(sh7710voipgw_ipr_map, ARRAY_SIZE(sh7710voipgw_ipr_map));
}

/*
 * The Machine Vector
 */
static struct sh_machine_vector mv_sh7710voipgw __initmv = {
	.mv_name		= "SH7710 VoIP Gateway",
	.mv_nr_irqs		= 104,
	.mv_init_irq		= sh7710voipgw_init_irq,
};
+250 −345

File changed.

Preview size limit exceeded, changes collapsed.

Loading