aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm27xx/patches-5.4/950-0759-Add-Micro-Crystal-RV-1805-to-i2c-rtc-overlays.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/bcm27xx/patches-5.4/950-0759-Add-Micro-Crystal-RV-1805-to-i2c-rtc-overlays.patch')
-rw-r--r--target/linux/bcm27xx/patches-5.4/950-0759-Add-Micro-Crystal-RV-1805-to-i2c-rtc-overlays.patch167
1 files changed, 167 insertions, 0 deletions
diff --git a/target/linux/bcm27xx/patches-5.4/950-0759-Add-Micro-Crystal-RV-1805-to-i2c-rtc-overlays.patch b/target/linux/bcm27xx/patches-5.4/950-0759-Add-Micro-Crystal-RV-1805-to-i2c-rtc-overlays.patch
new file mode 100644
index 0000000000..6e9951bd4a
--- /dev/null
+++ b/target/linux/bcm27xx/patches-5.4/950-0759-Add-Micro-Crystal-RV-1805-to-i2c-rtc-overlays.patch
@@ -0,0 +1,167 @@
+From 8c16d549cd0b9e9cf890ac3ead5d58d92590140f Mon Sep 17 00:00:00 2001
+From: "Kevin P. Fleming" <kevin+linux@km6g.us>
+Date: Mon, 1 Jun 2020 07:02:00 -0400
+Subject: [PATCH] Add Micro Crystal RV-1805 to i2c-rtc overlays
+
+While the RV-1805 is supported by the rtc-abx80x driver via
+auto-detection, in order for it to be initialized properly
+it must be explcitly selected.
+
+Signed-off-by: Kevin P. Fleming <kevin+linux@km6g.us>
+---
+ arch/arm/boot/dts/overlays/README | 12 +++++---
+ .../dts/overlays/i2c-rtc-gpio-overlay.dts | 28 ++++++++++++++++---
+ .../arm/boot/dts/overlays/i2c-rtc-overlay.dts | 27 ++++++++++++++++--
+ 3 files changed, 56 insertions(+), 11 deletions(-)
+
+--- a/arch/arm/boot/dts/overlays/README
++++ b/arch/arm/boot/dts/overlays/README
+@@ -1196,6 +1196,8 @@ Params: abx80x Select o
+
+ pcf8563 Select the PCF8563 device
+
++ rv1805 Select the Micro Crystal RV1805 device
++
+ rv3028 Select the Micro Crystal RV3028 device
+
+ addr Sets the address for the RTC. Note that the
+@@ -1203,10 +1205,10 @@ Params: abx80x Select o
+ address.
+
+ trickle-diode-type Diode type for trickle charge - "standard" or
+- "schottky" (ABx80x only)
++ "schottky" (ABx80x and RV1805 only)
+
+ trickle-resistor-ohms Resistor value for trickle charge (DS1339,
+- ABx80x, RV3028)
++ ABx80x, RV1805, RV3028)
+
+ wakeup-source Specify that the RTC can be used as a wakeup
+ source
+@@ -1243,6 +1245,8 @@ Params: abx80x Select o
+
+ pcf8563 Select the PCF8563 device
+
++ rv1805 Select the Micro Crystal RV1805 device
++
+ rv3028 Select the Micro Crystal RV3028 device
+
+ addr Sets the address for the RTC. Note that the
+@@ -1250,10 +1254,10 @@ Params: abx80x Select o
+ address.
+
+ trickle-diode-type Diode type for trickle charge - "standard" or
+- "schottky" (ABx80x only)
++ "schottky" (ABx80x and RV1805 only)
+
+ trickle-resistor-ohms Resistor value for trickle charge (DS1339,
+- ABx80x, RV3028)
++ ABx80x, RV1805, RV3028)
+
+ wakeup-source Specify that the RTC can be used as a wakeup
+ source
+--- a/arch/arm/boot/dts/overlays/i2c-rtc-gpio-overlay.dts
++++ b/arch/arm/boot/dts/overlays/i2c-rtc-gpio-overlay.dts
+@@ -204,6 +204,23 @@
+ };
+ };
+
++ fragment@13 {
++ target = <&i2c_gpio>;
++ __dormant__ {
++ #address-cells = <1>;
++ #size-cells = <0>;
++ status = "okay";
++
++ rv1805: rv1805@69 {
++ compatible = "microcrystal,rv1805";
++ reg = <0x69>;
++ abracon,tc-diode = "standard";
++ abracon,tc-resistor = <0>;
++ status = "okay";
++ };
++ };
++ };
++
+ __overrides__ {
+ abx80x = <0>,"+1";
+ ds1307 = <0>,"+2";
+@@ -217,6 +234,7 @@
+ m41t62 = <0>,"+10";
+ rv3028 = <0>,"+11";
+ pcf2129 = <0>,"+12";
++ rv1805 = <0>,"+13";
+
+ addr = <&abx80x>, "reg:0",
+ <&ds1307>, "reg:0",
+@@ -226,12 +244,14 @@
+ <&mcp7941x>, "reg:0",
+ <&pcf8523>, "reg:0",
+ <&pcf8563>, "reg:0",
+- <&m41t62>, "reg:0";
+-
+- trickle-diode-type = <&abx80x>,"abracon,tc-diode";
++ <&m41t62>, "reg:0",
++ <&rv1805>, "reg:0";
++ trickle-diode-type = <&abx80x>,"abracon,tc-diode",
++ <&rv1805>,"abracon,tc-diode";
+ trickle-resistor-ohms = <&ds1339>,"trickle-resistor-ohms:0",
+ <&abx80x>,"abracon,tc-resistor:0",
+- <&rv3028>,"trickle-resistor-ohms:0";
++ <&rv3028>,"trickle-resistor-ohms:0",
++ <&rv1805>,"abracon,tc-resistor:0";
+ backup-switchover-mode = <&rv3028>,"backup-switchover-mode:0";
+ wakeup-source = <&ds1339>,"wakeup-source?",
+ <&ds3231>,"wakeup-source?",
+--- a/arch/arm/boot/dts/overlays/i2c-rtc-overlay.dts
++++ b/arch/arm/boot/dts/overlays/i2c-rtc-overlay.dts
+@@ -203,6 +203,23 @@
+ };
+ };
+
++ fragment@13 {
++ target = <&i2c_arm>;
++ __dormant__ {
++ #address-cells = <1>;
++ #size-cells = <0>;
++ status = "okay";
++
++ rv1805: rv1805@69 {
++ compatible = "microcrystal,rv1805";
++ reg = <0x69>;
++ abracon,tc-diode = "standard";
++ abracon,tc-resistor = <0>;
++ status = "okay";
++ };
++ };
++ };
++
+ __overrides__ {
+ abx80x = <0>,"+0";
+ ds1307 = <0>,"+1";
+@@ -217,6 +234,7 @@
+ rv3028 = <0>,"+10";
+ pcf2129 = <0>,"+11";
+ pcf85363 = <0>,"+12";
++ rv1805 = <0>,"+13";
+
+ addr = <&abx80x>, "reg:0",
+ <&ds1307>, "reg:0",
+@@ -226,11 +244,14 @@
+ <&mcp7941x>, "reg:0",
+ <&pcf8523>, "reg:0",
+ <&pcf8563>, "reg:0",
+- <&m41t62>, "reg:0";
+- trickle-diode-type = <&abx80x>,"abracon,tc-diode";
++ <&m41t62>, "reg:0",
++ <&rv1805>, "reg:0";
++ trickle-diode-type = <&abx80x>,"abracon,tc-diode",
++ <&rv1805>,"abracon,tc-diode";
+ trickle-resistor-ohms = <&ds1339>,"trickle-resistor-ohms:0",
+ <&abx80x>,"abracon,tc-resistor:0",
+- <&rv3028>,"trickle-resistor-ohms:0";
++ <&rv3028>,"trickle-resistor-ohms:0",
++ <&rv1805>,"abracon,tc-resistor:0";
+ backup-switchover-mode = <&rv3028>,"backup-switchover-mode:0";
+ wakeup-source = <&ds1339>,"wakeup-source?",
+ <&ds3231>,"wakeup-source?",