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

Commit 7ae1c76e authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull sh-mobile pinctrl conversion from Arnd Bergmann:
 "This is another cleanup series, containing the move of the Renesas
  SH-Mobile pin controller code from arch/arm/mach-shmobile over to the
  generic pinctrl subsystem, changing it over to the common interfaces
  in the process.

  Based on agreement between Olof, Paul Mundt, Linus Walleij and Simon,
  we're merging this large branch of pinctrl conversion through arm-soc,
  even though it contains the corresponding conversions for arch/sh.
  Main reason for this is tight dependencies (that will now mostly be
  broken) between the arch/sh and mach-shmobile implementations.

  There will be more of this in 3.10 to do device-tree bindings, but
  this is the initial conversion."

* tag 'sh-pinmux' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (81 commits)
  sh-pfc: sh_pfc_probe() sizeof() fix
  sh-pfc: Move sh_pfc.h from include/linux/ to driver directory
  sh-pfc: Remove pinmux_info definition
  sh: Remove unused sh_pfc_register_info() function
  sh: shx3: pinmux: Use driver-provided pinmux info
  sh: sh7786: pinmux: Use driver-provided pinmux info
  sh: sh7785: pinmux: Use driver-provided pinmux info
  sh: sh7757: pinmux: Use driver-provided pinmux info
  sh: sh7734: pinmux: Use driver-provided pinmux info
  sh: sh7724: pinmux: Use driver-provided pinmux info
  sh: sh7723: pinmux: Use driver-provided pinmux info
  sh: sh7722: pinmux: Use driver-provided pinmux info
  sh: sh7720: pinmux: Use driver-provided pinmux info
  sh: sh7269: pinmux: Use driver-provided pinmux info
  sh: sh7264: pinmux: Use driver-provided pinmux info
  sh: sh7203: pinmux: Use driver-provided pinmux info
  ARM: shmobile: sh73a0: Use driver-provided pinmux info
  ARM: shmobile: sh7372: Use driver-provided pinmux info
  ARM: shmobile: r8a7779: Use driver-provided pinmux info
  ARM: shmobile: r8a7740: Use driver-provided pinmux info
  ...
parents b274776c 62508a5d
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -698,6 +698,7 @@ config ARCH_SHMOBILE
	select MULTI_IRQ_HANDLER
	select NEED_MACH_MEMORY_H
	select NO_IOPORT
	select PINCTRL
	select PM_GENERIC_DOMAINS if PM
	select SPARSE_IRQ
	help
+0 −8
Original line number Diff line number Diff line
@@ -19,13 +19,6 @@ smp-$(CONFIG_ARCH_SH73A0) += smp-sh73a0.o
smp-$(CONFIG_ARCH_R8A7779)	+= smp-r8a7779.o
smp-$(CONFIG_ARCH_EMEV2)	+= smp-emev2.o

# Pinmux setup
pfc-y				:=
pfc-$(CONFIG_ARCH_SH7372)	+= pfc-sh7372.o
pfc-$(CONFIG_ARCH_SH73A0)	+= pfc-sh73a0.o
pfc-$(CONFIG_ARCH_R8A7740)	+= pfc-r8a7740.o
pfc-$(CONFIG_ARCH_R8A7779)	+= pfc-r8a7779.o

# IRQ objects
obj-$(CONFIG_ARCH_SH7372)	+= entry-intc.o
obj-$(CONFIG_ARCH_R8A7740)	+= entry-intc.o
@@ -51,4 +44,3 @@ obj-$(CONFIG_MACH_KZM9G) += board-kzm9g.o

# Framework support
obj-$(CONFIG_SMP)		+= $(smp-y)
obj-$(CONFIG_GENERIC_GPIO)	+= $(pfc-y)
+26 −0
Original line number Diff line number Diff line
@@ -68,6 +68,32 @@ void __init r8a7740_map_io(void)
	iotable_init(r8a7740_io_desc, ARRAY_SIZE(r8a7740_io_desc));
}

/* PFC */
static struct resource r8a7740_pfc_resources[] = {
	[0] = {
		.start	= 0xe6050000,
		.end	= 0xe6057fff,
		.flags	= IORESOURCE_MEM,
	},
	[1] = {
		.start	= 0xe605800c,
		.end	= 0xe605802b,
		.flags	= IORESOURCE_MEM,
	}
};

static struct platform_device r8a7740_pfc_device = {
	.name		= "pfc-r8a7740",
	.id		= -1,
	.resource	= r8a7740_pfc_resources,
	.num_resources	= ARRAY_SIZE(r8a7740_pfc_resources),
};

void __init r8a7740_pinmux_init(void)
{
	platform_device_register(&r8a7740_pfc_device);
}

/* SCIFA0 */
static struct plat_sci_port scif0_platform_data = {
	.mapbase	= 0xe6c40000,
+25 −0
Original line number Diff line number Diff line
@@ -60,6 +60,31 @@ void __init r8a7779_map_io(void)
	iotable_init(r8a7779_io_desc, ARRAY_SIZE(r8a7779_io_desc));
}

static struct resource r8a7779_pfc_resources[] = {
	[0] = {
		.start	= 0xfffc0000,
		.end	= 0xfffc023b,
		.flags	= IORESOURCE_MEM,
	},
	[1] = {
		.start	= 0xffc40000,
		.end	= 0xffc46fff,
		.flags	= IORESOURCE_MEM,
	}
};

static struct platform_device r8a7779_pfc_device = {
	.name		= "pfc-r8a7779",
	.id		= -1,
	.resource	= r8a7779_pfc_resources,
	.num_resources	= ARRAY_SIZE(r8a7779_pfc_resources),
};

void __init r8a7779_pinmux_init(void)
{
	platform_device_register(&r8a7779_pfc_device);
}

static struct plat_sci_port scif0_platform_data = {
	.mapbase	= 0xffe40000,
	.flags		= UPF_BOOT_AUTOCONF | UPF_IOREMAP,
+26 −0
Original line number Diff line number Diff line
@@ -60,6 +60,32 @@ void __init sh7372_map_io(void)
	iotable_init(sh7372_io_desc, ARRAY_SIZE(sh7372_io_desc));
}

/* PFC */
static struct resource sh7372_pfc_resources[] = {
	[0] = {
		.start	= 0xe6050000,
		.end	= 0xe6057fff,
		.flags	= IORESOURCE_MEM,
	},
	[1] = {
		.start	= 0xe605800c,
		.end	= 0xe6058027,
		.flags	= IORESOURCE_MEM,
	}
};

static struct platform_device sh7372_pfc_device = {
	.name		= "pfc-sh7372",
	.id		= -1,
	.resource	= sh7372_pfc_resources,
	.num_resources	= ARRAY_SIZE(sh7372_pfc_resources),
};

void __init sh7372_pinmux_init(void)
{
	platform_device_register(&sh7372_pfc_device);
}

/* SCIFA0 */
static struct plat_sci_port scif0_platform_data = {
	.mapbase	= 0xe6c40000,
Loading