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

Commit 8be5814c authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* 'sh-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6:
  sh: clkfwk: Fix up checkpatch warnings.
  sh: make some needlessly global sh7724 clocks static
  sh: add clk_round_parent() to optimize parent clock rate
  sh: Simplify phys_addr_mask()/PTE_PHYS_MASK for 29/32-bit.
  sh: nommu: Support building without an uncached mapping.
  sh: nommu: use 32-bit phys mode.
  sh: mach-se: Fix up SE7206 no ioport build.
  sh: intc: Update for single IRQ reservation helper.
  sh: clkfwk: Fix up rate rounding error handling.
  sh: mach-se: Rip out superfluous 7751 PIO routines.
  sh: mach-se: Rip out superfluous 770x PIO routines.
  sh: mach-edosk7705: Kill off machtype, consolidate board def.
  sh: mach-edosk7705: update for this century, kill off PIO trapping.
  sh: mach-se: Rip out superfluous 7206 PIO routines.
  sh: mach-systemh: Kill off dead board.
  sh: mach-snapgear: Kill off machtype, consolidate board def.
  sh: mach-snapgear: Rip out superfluous PIO routines.
  sh: mach-microdev: SuperIO-relative ioport mapping.
parents d017bf6b 21e14266
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -193,6 +193,7 @@ config CPU_SH2
config CPU_SH2A
	bool
	select CPU_SH2
	select UNCACHED_MAPPING

config CPU_SH3
	bool
+0 −3
Original line number Diff line number Diff line
@@ -133,10 +133,7 @@ machdir-$(CONFIG_SOLUTION_ENGINE) += mach-se
machdir-$(CONFIG_SH_HP6XX)			+= mach-hp6xx
machdir-$(CONFIG_SH_DREAMCAST)			+= mach-dreamcast
machdir-$(CONFIG_SH_SH03)			+= mach-sh03
machdir-$(CONFIG_SH_SECUREEDGE5410)		+= mach-snapgear
machdir-$(CONFIG_SH_RTS7751R2D)			+= mach-r2d
machdir-$(CONFIG_SH_7751_SYSTEMH)		+= mach-systemh
machdir-$(CONFIG_SH_EDOSK7705)			+= mach-edosk7705
machdir-$(CONFIG_SH_HIGHLANDER)			+= mach-highlander
machdir-$(CONFIG_SH_MIGOR)			+= mach-migor
machdir-$(CONFIG_SH_AP325RXA)			+= mach-ap325rxa
+0 −7
Original line number Diff line number Diff line
@@ -81,13 +81,6 @@ config SH_7343_SOLUTION_ENGINE
	  Select 7343 SolutionEngine if configuring for a Hitachi
	  SH7343 (SH-Mobile 3AS) evaluation board.

config SH_7751_SYSTEMH
	bool "SystemH7751R"
	depends on CPU_SUBTYPE_SH7751R
	help
	  Select SystemH if you are configuring for a Renesas SystemH
	  7751R evaluation board.

config SH_HP6XX
	bool "HP6XX"
	select SYS_SUPPORTS_APM_EMULATION
+2 −0
Original line number Diff line number Diff line
@@ -2,10 +2,12 @@
# Specific board support, not covered by a mach group.
#
obj-$(CONFIG_SH_MAGIC_PANEL_R2)	+= board-magicpanelr2.o
obj-$(CONFIG_SH_SECUREEDGE5410)	+= board-secureedge5410.o
obj-$(CONFIG_SH_SH2007)		+= board-sh2007.o
obj-$(CONFIG_SH_SH7785LCR)	+= board-sh7785lcr.o
obj-$(CONFIG_SH_URQUELL)	+= board-urquell.o
obj-$(CONFIG_SH_SHMIN)		+= board-shmin.o
obj-$(CONFIG_SH_EDOSK7705)	+= board-edosk7705.o
obj-$(CONFIG_SH_EDOSK7760)	+= board-edosk7760.o
obj-$(CONFIG_SH_ESPT)		+= board-espt.o
obj-$(CONFIG_SH_POLARIS)	+= board-polaris.o
+78 −0
Original line number Diff line number Diff line
@@ -10,14 +10,63 @@
 */
#include <linux/init.h>
#include <linux/irq.h>
#include <linux/platform_device.h>
#include <linux/interrupt.h>
#include <linux/smc91x.h>
#include <asm/machvec.h>
#include <mach/edosk7705.h>
#include <asm/sizes.h>

#define SMC_IOBASE	0xA2000000
#define SMC_IO_OFFSET	0x300
#define SMC_IOADDR	(SMC_IOBASE + SMC_IO_OFFSET)

#define ETHERNET_IRQ	0x09

static void __init sh_edosk7705_init_irq(void)
{
	/* This is the Ethernet interrupt */
	make_imask_irq(0x09);
	make_imask_irq(ETHERNET_IRQ);
}

/* eth initialization functions */
static struct smc91x_platdata smc91x_info = {
	.flags = SMC91X_USE_16BIT | SMC91X_IO_SHIFT_1 | IORESOURCE_IRQ_LOWLEVEL,
};

static struct resource smc91x_res[] = {
	[0] = {
		.start	= SMC_IOADDR,
		.end	= SMC_IOADDR + SZ_32 - 1,
		.flags	= IORESOURCE_MEM,
	},
	[1] = {
		.start	= ETHERNET_IRQ,
		.end	= ETHERNET_IRQ,
		.flags	= IORESOURCE_IRQ ,
	}
};

static struct platform_device smc91x_dev = {
	.name		= "smc91x",
	.id		= -1,
	.num_resources	= ARRAY_SIZE(smc91x_res),
	.resource	= smc91x_res,

	.dev	= {
		.platform_data	= &smc91x_info,
	},
};

/* platform init code */
static struct platform_device *edosk7705_devices[] __initdata = {
	&smc91x_dev,
};

static int __init init_edosk7705_devices(void)
{
	return platform_add_devices(edosk7705_devices,
				    ARRAY_SIZE(edosk7705_devices));
}
__initcall(init_edosk7705_devices);

/*
 * The Machine Vector
@@ -25,12 +74,5 @@ static void __init sh_edosk7705_init_irq(void)
static struct sh_machine_vector mv_edosk7705 __initmv = {
	.mv_name		= "EDOSK7705",
	.mv_nr_irqs		= 80,

	.mv_inb			= sh_edosk7705_inb,
	.mv_outb		= sh_edosk7705_outb,

	.mv_insb		= sh_edosk7705_insb,
	.mv_outsb		= sh_edosk7705_outsb,

	.mv_init_irq		= sh_edosk7705_init_irq,
};
Loading