mpc85xx: Drop pci aliases to avoid domain changes
[openwrt/openwrt.git] / target / linux / mpc85xx / files / arch / powerpc / boot / dts / hiveap-330.dts
index 7900c40c7e8fab8515d1da18d52f7a06ea329b41..d6a8da84ef66d156b2d3a976d57b3d295e5cd708 100644 (file)
@@ -9,14 +9,22 @@
  * option) any later version.
  */
 
+#include <dt-bindings/leds/common.h>
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/gpio/gpio.h>
+
 /include/ "fsl/p1020si-pre.dtsi"
 / {
        model = "Aerohive HiveAP-330";
        compatible = "aerohive,hiveap-330";
 
-       chosen {
-               bootargs = "console=ttyS0,9600";
-               bootargs-override = "console=ttyS0,9600 noinitrd";
+       aliases {
+               led-boot = &led_power_green;
+               led-failsafe = &led_fault_red;
+               led-running = &led_power_green;
+               led-upgrade = &led_fault_red;
+               label-mac-device = &enet0;
+               spi0 = &spi0;
        };
 
        memory {
                        bank-width = <2>;
                        device-width = <1>;
 
-                       partition@0 {
-                               reg = <0x0 0x40000>;
-                               label = "dtb";
-                       };
+                       partitions {
+                               compatible = "fixed-partitions";
+                               #address-cells = <1>;
+                               #size-cells = <1>;
+
+                               firmware@0 {
+                                       reg = <0x0 0x3f00000>;
+                                       label = "firmware";
+                                       /*
+                                        * This unknown/invalid compatible prevents
+                                        * openwrt's mtdsplit_fit to go off a tangent if it
+                                        * finds a magic value inside the uncompressed kernel
+                                        * at a blocksized aligned place.
+                                        */
+                                       compatible = "areohive,hiveap-330-image";
+                               };
 
-                       partition@40000 {
-                               reg = <0x40000 0x40000>;
-                               label = "initramfs";
-                       };
+                               partition@0 {
+                                       reg = <0x0 0x40000>;
+                                       label = "dtb";
+                               };
 
-                       partition@80000 {
-                               reg = <0x80000 0x27c0000>;
-                               label = "rootfs";
-                       };
+                               partition@40000 {
+                                       compatible = "openwrt,uimage", "denx,uimage";
+                                       reg = <0x40000 0x3ec0000>;
+                                       label = "kernel";
+                               };
 
-                       partition@2840000 {
-                               reg = <0x2840000 0x800000>;
-                               label = "kernel";
-                       };
+                               partition@3f00000 {
+                                       reg = <0x3f00000 0x20000>;
+                                       label = "hw-info";
+                                       read-only;
 
-                       partition@3040000 {
-                               reg = <0x3040000 0xec0000>;
-                               label = "stock-jffs2";
-                               read-only;
-                       };
+                                       compatible = "nvmem-cells";
+                                       #address-cells = <1>;
+                                       #size-cells = <1>;
 
-                       partition@3f00000 {
-                               reg = <0x3f00000 0x20000>;
-                               label = "hw-info";
-                               read-only;
-                       };
-
-                       partition@3f20000 {
-                               reg = <0x3f20000 0x20000>;
-                               label = "boot-info";
-                               read-only;
-                       };
+                                       macaddr_hwinfo_0: macaddr@0 {
+                                               reg = <0x0 0x6>;
+                                       };
+                               };
 
-                       partition@3f40000 {
-                               reg = <0x3f40000 0x20000>;
-                               label = "boot-info-backup";
-                               read-only;
-                       };
+                               partition@3f20000 {
+                                       reg = <0x3f20000 0x20000>;
+                                       label = "boot-info";
+                                       read-only;
+                               };
 
-                       partition@3f60000 {
-                               reg = <0x3f60000 0x20000>;
-                               label = "u-boot-env";
-                       };
+                               partition@3f40000 {
+                                       reg = <0x3f40000 0x20000>;
+                                       label = "boot-info-backup";
+                                       read-only;
+                               };
 
-                       partition@3f80000 {
-                               reg = <0x3f80000 0x80000>;
-                               label = "u-boot";
-                               read-only;
-                       };
+                               partition@3f60000 {
+                                       reg = <0x3f60000 0x20000>;
+                                       label = "u-boot-env";
+                               };
 
-                       firmware@0 {
-                               reg = <0x0 0x3040000>;
-                               label = "firmware";
+                               partition@3f80000 {
+                                       reg = <0x3f80000 0x80000>;
+                                       label = "u-boot";
+                                       read-only;
+                               };
                        };
                };
        };
        board_soc: soc: soc@ffe00000 {
                ranges = <0x0 0x0 0xffe00000 0x100000>;
 
+               spi0: spi@7000 {
+                       temperature-sensor@1 {
+                               compatible = "ti,tmp125";
+                               reg = <1>;
+                               spi-max-frequency = <5000000>;
+                       };
+               };
+
                i2c@3100 {
                        tpm@29 {
                                compatible = "atmel,at97sc3204t";
                                compatible = "national,lp5521";
                                reg = <0x32>;
                                clock-mode = /bits/ 8 <2>;
-                               chan0 {
-                                       chan-name = "hiveap-330:red:tricolor0";
+#if 1
+                               led_fault_red: led@0 {
+                                       reg = <0>;
+                                       chan-name = "fault:red";
                                        led-cur = /bits/ 8 <0x2f>;
                                        max-cur = /bits/ 8 <0x5f>;
+                                       color = <LED_COLOR_ID_RED>;
+                                       function = LED_FUNCTION_FAULT;
                                };
-                               chan1 {
-                                       chan-name = "hiveap-330:green:tricolor0";
+                               led_power_green: led@1 {
+                                       reg = <1>;
+                                       chan-name = "power:green";
                                        led-cur = /bits/ 8 <0x2f>;
                                        max-cur = /bits/ 8 <0x5f>;
+                                       color = <LED_COLOR_ID_GREEN>;
+                                       function = LED_FUNCTION_POWER;
                                };
-                               chan2 {
-                                       chan-name = "hiveap-330:blue:tricolor0";
+                               led@2{
+                                       reg = <2>;
+                                       chan-name = "blue";
                                        led-cur = /bits/ 8 <0x2f>;
                                        max-cur = /bits/ 8 <0x5f>;
+                                       color = <LED_COLOR_ID_BLUE>;
+                               };
+#else
+                               /*
+                                * openwrt isn't ready to handle multi-intensity leds yet
+                                * # echo 255 255 255 > /sys/class/leds/tricolor/multi_intensity
+                                * # echo 255 > /sys/class/leds/tricolor/brightness
+                                */
+
+                               rgbled-0 {
+                                       function = LED_FUNCTION_POWER;
+                                       color = <LED_COLOR_ID_RGB>;
+                                       #address-cells = <1>;
+                                       #size-cells = <0>;
+
+                                       led@0 {
+                                               reg = <0>;
+                                               chan-name = "tricolor";
+                                               led-cur = /bits/ 8 <0x2f>;
+                                               max-cur = /bits/ 8 <0x5f>;
+                                               color = <LED_COLOR_ID_RED>;
+                                       };
+                                       led@1 {
+                                               reg = <1>;
+                                               chan-name = "tricolor";
+                                               led-cur = /bits/ 8 <0x2f>;
+                                               max-cur = /bits/ 8 <0x5f>;
+                                               color = <LED_COLOR_ID_GREEN>;
+                                       };
+                                       led@2{
+                                               reg = <2>;
+                                               chan-name = "tricolor";
+                                               led-cur = /bits/ 8 <0x2f>;
+                                               max-cur = /bits/ 8 <0x5f>;
+                                               color = <LED_COLOR_ID_BLUE>;
+                                       };
                                };
+#endif
                        };
 
-                       /* Most likely SoC boot config */
                        eeprom@51 {
-                               compatible = "eeprom";
+                               /*
+                                * 1Kbit I2C/SMBus EEPROM with SHA-1 Engine
+                                * Aerohive calls it "dallas".
+                                */
+                               compatible = "adi,ds28cn01";
                                reg = <0x51>;
+                               read-only;
                        };
                };
 
                        status = "okay";
                        phy-handle = <&phy0>;
                        phy-connection-type = "rgmii-id";
-
+                       nvmem-cells = <&macaddr_hwinfo_0>;
+                       nvmem-cell-names = "mac-address";
                };
 
                enet1: ethernet@b1000 {
                        status = "okay";
                        phy-handle = <&phy1>;
                        phy-connection-type = "rgmii-id";
+                       nvmem-cells = <&macaddr_hwinfo_0>;
+                       nvmem-cell-names = "mac-address";
+                       mac-address-increment = <1>;
                };
 
                gpio0: gpio-controller@fc00 {
 
                reset {
                        label = "Reset button";
-                       gpios = <&gpio0 8 1>; /* active low */
-                       linux,code = <0x198>; /* KEY_RESTART */
+                       gpios = <&gpio0 8 GPIO_ACTIVE_LOW>;
+                       linux,code = <KEY_RESTART>;
                };
        };
 };
 /include/ "fsl/p1020si-post.dtsi"
+
+/*
+ * For the OpenWrt 22.03 release, since Linux 5.10.138 now uses
+ * aliases to determine PCI domain numbers, drop aliases so as not to
+ * change the sysfs path of our wireless netdevs.
+ */
+
+/ {
+       aliases {
+               /delete-property/ pci0;
+               /delete-property/ pci1;
+       };
+};