rtc: fix some bug of rtc-HYM8563 and change default rtc to HYM8563
author郭毅 <gy@rock-chips.com>
Tue, 20 May 2014 03:01:05 +0000 (11:01 +0800)
committer郭毅 <gy@rock-chips.com>
Tue, 20 May 2014 03:08:56 +0000 (11:08 +0800)
arch/arm/boot/dts/rk3288-p977.dts
arch/arm/boot/dts/rk3288-p977_8846.dts
arch/arm/boot/dts/rk3288-tb.dts
arch/arm/configs/rockchip_defconfig [changed mode: 0755->0644]
drivers/rtc/rtc-HYM8563.c

index 2136f27741c9ff6484dc851dff2f612abd939804..fae1bde1bc7fdeae8fd9e557ba9a5a2bffb838da 100755 (executable)
                is_dc_charge = <1>;
                is_usb_charge = <0>;
        };
-
-       rtc@d {
+       
+       rtc@51 {
                compatible = "rtc,hym8563";
-               reg = <0xd>;
-               irq_gpio = <&gpio0 GPIO_A4 GPIO_ACTIVE_LOW>;
+               reg = <0x51>;
+               irq_gpio = <&gpio0 GPIO_A4 IRQ_TYPE_EDGE_FALLING>;
        };
 };
 
index 92554209b5e6f338fef79846087c4d4e36cd5377..165ddd560d5524eea9a0304d38fe94fe77090822 100755 (executable)
        rtc@51 {
                compatible = "rtc,hym8563";
                reg = <0x51>;
-               irq_gpio = <&gpio0 GPIO_A4 GPIO_ACTIVE_LOW>;
+               irq_gpio = <&gpio0 GPIO_A4 IRQ_TYPE_EDGE_FALLING>;
        };
 
 };
index f1eeadb9006dfc08cd5fc87ba6b10f7592b54a93..37d5dfd93cca427f2abcbf4b24c85134a6eabc95 100755 (executable)
                is_usb_charge = <0>;
        };
        
-       rtc@d {
+       rtc@51 {
                compatible = "rtc,hym8563";
-               reg = <0xd>;
-               irq_gpio = <&gpio0 GPIO_A4 GPIO_ACTIVE_LOW>;
+               reg = <0x51>;
+               irq_gpio = <&gpio0 GPIO_A4 IRQ_TYPE_EDGE_FALLING>;
        };
 
 };
old mode 100755 (executable)
new mode 100644 (file)
index a211f56..91288ad
@@ -475,7 +475,6 @@ CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_DEBUG_FILES=y
 CONFIG_USB_GADGET_VBUS_DRAW=500
 CONFIG_USB_G_ANDROID=y
-CONFIG_DWC_OTG_310=y
 CONFIG_USB20_HOST=y
 CONFIG_USB20_OTG=y
 CONFIG_MMC=y
@@ -491,7 +490,7 @@ CONFIG_LEDS_TRIGGER_BACKLIGHT=y
 CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
 CONFIG_SWITCH=y
 CONFIG_RTC_CLASS=y
-CONFIG_RTC_DRV_PCF8563=y
+CONFIG_RTC_HYM8563=y
 CONFIG_RK808_RTC=y
 CONFIG_RTC_DRV_RC5T619=y
 CONFIG_STAGING=y
index ce088d3e497d57adbb9c6184f66ebd9587a10186..2c8ad214e64b914d7e567a0c46673e6fc3ed1d7c 100755 (executable)
@@ -24,6 +24,7 @@
 #include <linux/slab.h>
 #include "rtc-HYM8563.h"
 #include <linux/of_gpio.h>
+#include <linux/irqdomain.h>
 #define RTC_SPEED      200 * 1000
 
 struct hym8563 {
@@ -600,9 +601,10 @@ static int  hym8563_probe(struct i2c_client *client, const struct i2c_device_id
                goto exit;             
        }
        enable_irq_wake(hym8563->irq);
-
-       rtc = rtc_device_register(client->name, &client->dev,
-                                 &hym8563_rtc_ops, THIS_MODULE);
+       device_init_wakeup(&client->dev, 1);    
+       rtc = devm_rtc_device_register(&client->dev,
+                       client->name,
+                               &hym8563_rtc_ops, THIS_MODULE);
        if (IS_ERR(rtc)) {
                rc = PTR_ERR(rtc);
                rtc = NULL;