brcm2708: organize kernel patches
[openwrt/staging/dedeckeh.git] / target / linux / brcm2708 / patches-4.19 / 950-0355-overlays-Add-rv3028-to-i2c-rtc.patch
diff --git a/target/linux/brcm2708/patches-4.19/950-0355-overlays-Add-rv3028-to-i2c-rtc.patch b/target/linux/brcm2708/patches-4.19/950-0355-overlays-Add-rv3028-to-i2c-rtc.patch
new file mode 100644 (file)
index 0000000..2228022
--- /dev/null
@@ -0,0 +1,75 @@
+From 67dd8e4c8ccf5d331960c7e936e5b03a9f92496d Mon Sep 17 00:00:00 2001
+From: Phil Elwell <phil@raspberrypi.org>
+Date: Thu, 28 Mar 2019 13:26:59 +0000
+Subject: [PATCH] overlays: Add rv3028 to i2c-rtc
+
+See: https://github.com/raspberrypi/linux/issues/2912
+
+Signed-off-by: Phil Elwell <phil@raspberrypi.org>
+---
+ arch/arm/boot/dts/overlays/README             |  4 +++-
+ .../arm/boot/dts/overlays/i2c-rtc-overlay.dts | 19 ++++++++++++++++++-
+ 2 files changed, 21 insertions(+), 2 deletions(-)
+
+--- a/arch/arm/boot/dts/overlays/README
++++ b/arch/arm/boot/dts/overlays/README
+@@ -939,6 +939,8 @@ Params: abx80x                  Select o
+         pcf8563                 Select the PCF8563 device
++        rv3028                  Select the Micro Crystal RV3028 device
++
+         addr                    Sets the address for the RTC. Note that the
+                                 device must be configured to use the specified
+                                 address.
+@@ -947,7 +949,7 @@ Params: abx80x                  Select o
+                                 "schottky" (ABx80x only)
+         trickle-resistor-ohms   Resistor value for trickle charge (DS1339,
+-                                ABx80x)
++                                ABx80x, RV3028)
+         wakeup-source           Specify that the RTC can be used as a wakeup
+                                 source
+--- a/arch/arm/boot/dts/overlays/i2c-rtc-overlay.dts
++++ b/arch/arm/boot/dts/overlays/i2c-rtc-overlay.dts
+@@ -158,6 +158,21 @@
+               };
+       };
++      fragment@10 {
++              target = <&i2c_arm>;
++              __dormant__ {
++                      #address-cells = <1>;
++                      #size-cells = <0>;
++                      status = "okay";
++
++                      rv3028: rv3028@52 {
++                              compatible = "microcrystal,rv3028";
++                              reg = <0x52>;
++                              status = "okay";
++                      };
++              };
++      };
++
+       __overrides__ {
+               abx80x = <0>,"+0";
+               ds1307 = <0>,"+1";
+@@ -169,6 +184,7 @@
+               pcf8523 = <0>,"+7";
+               pcf8563 = <0>,"+8";
+               m41t62 = <0>,"+9";
++              rv3028 = <0>,"+10";
+               addr = <&abx80x>, "reg:0",
+                      <&ds1307>, "reg:0",
+@@ -182,7 +198,8 @@
+                      <&m41t62>, "reg:0";
+               trickle-diode-type = <&abx80x>,"abracon,tc-diode";
+               trickle-resistor-ohms = <&ds1339>,"trickle-resistor-ohms:0",
+-                                      <&abx80x>,"abracon,tc-resistor";
++                                      <&abx80x>,"abracon,tc-resistor",
++                                      <&rv3028>,"trickle-resistor-ohms:0";
+               wakeup-source = <&ds1339>,"wakeup-source?",
+                               <&ds3231>,"wakeup-source?",
+                               <&mcp7940x>,"wakeup-source?",