|
@@ -126,6 +126,31 @@ void __init r8a7778_sdhi_init(int id,
|
|
|
info, sizeof(*info));
|
|
|
}
|
|
|
|
|
|
+/* I2C */
|
|
|
+static struct resource i2c_resources[] __initdata = {
|
|
|
+ /* I2C0 */
|
|
|
+ DEFINE_RES_MEM(0xffc70000, 0x1000),
|
|
|
+ DEFINE_RES_IRQ(gic_iid(0x63)),
|
|
|
+ /* I2C1 */
|
|
|
+ DEFINE_RES_MEM(0xffc71000, 0x1000),
|
|
|
+ DEFINE_RES_IRQ(gic_iid(0x6e)),
|
|
|
+ /* I2C2 */
|
|
|
+ DEFINE_RES_MEM(0xffc72000, 0x1000),
|
|
|
+ DEFINE_RES_IRQ(gic_iid(0x6c)),
|
|
|
+ /* I2C3 */
|
|
|
+ DEFINE_RES_MEM(0xffc73000, 0x1000),
|
|
|
+ DEFINE_RES_IRQ(gic_iid(0x6d)),
|
|
|
+};
|
|
|
+
|
|
|
+void __init r8a7778_add_i2c_device(int id)
|
|
|
+{
|
|
|
+ BUG_ON(id < 0 || id > 3);
|
|
|
+
|
|
|
+ platform_device_register_simple(
|
|
|
+ "i2c-rcar", id,
|
|
|
+ i2c_resources + (2 * id), 2);
|
|
|
+}
|
|
|
+
|
|
|
void __init r8a7778_add_standard_devices(void)
|
|
|
{
|
|
|
int i;
|