sh: shx3: Add pin control resources
authorLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Sat, 16 Feb 2013 18:23:58 +0000 (19:23 +0100)
committerLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Fri, 15 Mar 2013 12:33:52 +0000 (13:33 +0100)
Add memory resources for the pin control platform device to let the
sh-pfc driver ioremap() registers properly instead of evily casting
register physical addresses to virtual addresses.

The memory resource address range has been extracted from the config and
data registes lists in the sh-pfc driver.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
arch/sh/kernel/cpu/sh4a/pinmux-shx3.c

index ace84acc55eae26d604ef8d2c51f959f2ef42e20..444bf25c60fa215a4be3981663583116ed3a5b0a 100644 (file)
@@ -7,12 +7,23 @@
  * License.  See the file "COPYING" in the main directory of this archive
  * for more details.
  */
+#include <linux/bug.h>
 #include <linux/init.h>
 #include <linux/kernel.h>
+#include <linux/ioport.h>
 #include <cpu/pfc.h>
 
-static int __init shx3_pinmux_setup(void)
+static struct resource shx3_pfc_resources[] = {
+       [0] = {
+               .start  = 0xffc70000,
+               .end    = 0xffc7001f,
+               .flags  = IORESOURCE_MEM,
+       },
+};
+
+static int __init plat_pinmux_setup(void)
 {
-       return sh_pfc_register("pfc-shx3", NULL, 0);
+       return sh_pfc_register("pfc-shx3", shx3_pfc_resources,
+                              ARRAY_SIZE(shx3_pfc_resources));
 }
-arch_initcall(shx3_pinmux_setup);
+arch_initcall(plat_pinmux_setup);