ARM: orion5x: use DT to describe I2C devices on edmini_v2
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tue, 22 Apr 2014 21:26:33 +0000 (23:26 +0200)
committerJason Cooper <jason@lakedaemon.net>
Sat, 26 Apr 2014 19:45:16 +0000 (19:45 +0000)
This commit converts the already partially DT-converted edmini_v2
platform to use the Device Tree for I2C bus and devices.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Link: https://lkml.kernel.org/r/1398202002-28530-30-git-send-email-thomas.petazzoni@free-electrons.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
arch/arm/boot/dts/orion5x-lacie-ethernet-disk-mini-v2.dts
arch/arm/mach-orion5x/edmini_v2-setup.c

index aa74b00d68e2fbc92e4258d36e67874d5d47c2a4..41b2ab567bf510fe3fced526247ff1456b9e0765 100644 (file)
@@ -10,6 +10,7 @@
 
 #include <dt-bindings/gpio/gpio.h>
 #include <dt-bindings/input/input.h>
+#include <dt-bindings/interrupt-controller/irq.h>
 #include "orion5x-mv88f5182.dtsi"
 
 / {
        };
 };
 
+&i2c {
+       status = "okay";
+       clock-frequency = <100000>;
+       #address-cells = <1>;
+
+       rtc@32 {
+               compatible = "ricoh,rs5c372a";
+               reg = <0x32>;
+               interrupt-parent = <&gpio0>;
+               interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
+       };
+};
+
 &mdio {
        status = "okay";
 
index c50469e978def9a7732d4ef2cee5144314f0b50b..75648abbee92d7ef355d38b62af9329c43d67d34 100644 (file)
@@ -95,17 +95,6 @@ static struct platform_device edmini_v2_nor_flash = {
        .resource               = &edmini_v2_nor_flash_resource,
 };
 
-/*****************************************************************************
- * RTC 5C372a on I2C bus
- ****************************************************************************/
-
-#define EDMINIV2_RTC_GPIO      3
-
-static struct i2c_board_info __initdata edmini_v2_i2c_rtc = {
-       I2C_BOARD_INFO("rs5c372a", 0x32),
-       .irq = 0,
-};
-
 /*****************************************************************************
  * General Setup
  ****************************************************************************/
@@ -125,17 +114,4 @@ void __init edmini_v2_init(void)
 
        pr_notice("edmini_v2: USB device port, flash write and power-off "
                  "are not yet supported.\n");
-
-       /* Get RTC IRQ and register the chip */
-       if (gpio_request(EDMINIV2_RTC_GPIO, "rtc") == 0) {
-               if (gpio_direction_input(EDMINIV2_RTC_GPIO) == 0)
-                       edmini_v2_i2c_rtc.irq = gpio_to_irq(EDMINIV2_RTC_GPIO);
-               else
-                       gpio_free(EDMINIV2_RTC_GPIO);
-       }
-
-       if (edmini_v2_i2c_rtc.irq == 0)
-               pr_warning("edmini_v2: failed to get RTC IRQ\n");
-
-       i2c_register_board_info(0, &edmini_v2_i2c_rtc, 1);
 }