Add the board management controller node.

Signed-off-by: Michael Walle <mich...@walle.cc>
---
Changes since v7:
 - none

Changes since v6:
 - renamed "sl28cpld-r1" to "sl28cpld"
 - moved "reg" and "compatible" properties to the top of a node

Changes since v5:
 - none

Changes since v4:
 - none

Changes since v3:
 - see cover letter

 .../freescale/fsl-ls1028a-kontron-sl28.dts    | 102 ++++++++++++++++++
 1 file changed, 102 insertions(+)

diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a-kontron-sl28.dts 
b/arch/arm64/boot/dts/freescale/fsl-ls1028a-kontron-sl28.dts
index 360b3a168c10..9f9834eafe65 100644
--- a/arch/arm64/boot/dts/freescale/fsl-ls1028a-kontron-sl28.dts
+++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a-kontron-sl28.dts
@@ -8,6 +8,7 @@
 
 /dts-v1/;
 #include "fsl-ls1028a.dtsi"
+#include <dt-bindings/interrupt-controller/irq.h>
 
 / {
        model = "Kontron SMARC-sAL28";
@@ -170,6 +171,107 @@
                reg = <0x32>;
        };
 
+       sl28cpld@4a {
+               compatible = "kontron,sl28cpld";
+               reg = <0x4a>;
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               watchdog@4 {
+                       compatible = "kontron,sl28cpld-wdt";
+                       reg = <0x4>;
+                       kontron,assert-wdt-timeout-pin;
+               };
+
+               hwmon@b {
+                       compatible = "kontron,sl28cpld-fan";
+                       reg = <0xb>;
+               };
+
+               sl28cpld_pwm0: pwm@c {
+                       compatible = "kontron,sl28cpld-pwm";
+                       reg = <0xc>;
+                       #pwm-cells = <2>;
+               };
+
+               sl28cpld_pwm1: pwm@e {
+                       compatible = "kontron,sl28cpld-pwm";
+                       reg = <0xe>;
+                       #pwm-cells = <2>;
+               };
+
+               sl28cpld_gpio0: gpio@10 {
+                       compatible = "kontron,sl28cpld-gpio";
+                       reg = <0x10>;
+                       interrupts-extended = <&gpio2 6
+                                              IRQ_TYPE_EDGE_FALLING>;
+
+                       gpio-controller;
+                       #gpio-cells = <2>;
+                       gpio-line-names =
+                               "GPIO0_CAM0_PWR_N", "GPIO1_CAM1_PWR_N",
+                               "GPIO2_CAM0_RST_N", "GPIO3_CAM1_RST_N",
+                               "GPIO4_HDA_RST_N", "GPIO5_PWM_OUT",
+                               "GPIO6_TACHIN", "GPIO7";
+
+                       interrupt-controller;
+                       #interrupt-cells = <2>;
+               };
+
+               sl28cpld_gpio1: gpio@15 {
+                       compatible = "kontron,sl28cpld-gpio";
+                       reg = <0x15>;
+                       interrupts-extended = <&gpio2 6
+                                              IRQ_TYPE_EDGE_FALLING>;
+
+                       gpio-controller;
+                       #gpio-cells = <2>;
+                       gpio-line-names =
+                               "GPIO8", "GPIO9", "GPIO10", "GPIO11",
+                               "", "", "", "";
+
+                       interrupt-controller;
+                       #interrupt-cells = <2>;
+               };
+
+               sl28cpld_gpio2: gpio@1a {
+                       compatible = "kontron,sl28cpld-gpo";
+                       reg = <0x1a>;
+
+                       gpio-controller;
+                       #gpio-cells = <2>;
+                       gpio-line-names =
+                               "LCD0 voltage enable",
+                               "LCD0 backlight enable",
+                               "eMMC reset", "LVDS bridge reset",
+                               "LVDS bridge power-down",
+                               "SDIO power enable",
+                               "", "";
+               };
+
+               sl28cpld_gpio3: gpio@1b {
+                       compatible = "kontron,sl28cpld-gpi";
+                       reg = <0x1b>;
+
+                       gpio-controller;
+                       #gpio-cells = <2>;
+                       gpio-line-names =
+                               "Power button", "Force recovery", "Sleep",
+                               "Battery low", "Lid state", "Charging",
+                               "Charger present", "";
+               };
+
+               sl28cpld_intc: interrupt-controller@1c {
+                       compatible = "kontron,sl28cpld-intc";
+                       reg = <0x1c>;
+                       interrupts-extended = <&gpio2 6
+                                              IRQ_TYPE_EDGE_FALLING>;
+
+                       interrupt-controller;
+                       #interrupt-cells = <2>;
+               };
+       };
+
        eeprom@50 {
                compatible = "atmel,24c32";
                reg = <0x50>;
-- 
2.20.1

Reply via email to