Skip to contentSkip to conversation

sh: Add I2C support to MigoR

PATCH New Magnus Damm 1 participant 1 message Mar 25, 2008 SuperH

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 sh: Add I2C support to MigoR

Enable the sh7722 I2C controller on the MigoR board.

---

 arch/sh/boards/renesas/migor/setup.c |   10 ++++++++++
 1 file changed, 10 insertions(+)
arch/sh/boards/renesas/migor/setup.c +10 -0
@@ -13,6 +13,7 @@
 #include <linux/input.h>
 #include <linux/mtd/physmap.h>
 #include <linux/mtd/nand.h>
+#include <linux/i2c.h>
 #include <asm/machvec.h>
 #include <asm/io.h>
 #include <asm/sh_keysc.h>
@@ -174,8 +175,14 @@ static struct platform_device *migor_dev
 	&migor_nand_flash_device,
 };
 
+static struct i2c_board_info __initdata migor_i2c_devices[] = {
+};
+
 static int __init migor_devices_setup(void)
 {
+	i2c_register_board_info(0, migor_i2c_devices,
+				ARRAY_SIZE(migor_i2c_devices));
+ 
 	return platform_add_devices(migor_devices, ARRAY_SIZE(migor_devices));
 }
 __initcall(migor_devices_setup);
@@ -197,6 +204,9 @@ static void __init migor_setup(char **cm
 	ctrl_outw(ctrl_inw(PORT_PXCR) & 0x0fff, PORT_PXCR);
 	ctrl_outl((ctrl_inl(BSC_CS6ABCR) & ~0x00000600) | 0x00000200,
 		  BSC_CS6ABCR);
+
+	/* I2C */
+	ctrl_outl(ctrl_inl(MSTPCR1) & ~0x00000200, MSTPCR1);
 }
 
 static struct sh_machine_vector mv_migor __initmv = {