Merge tag 'tags/bcm2835-dt-next-2020-03-27' into devicetree/next
authorFlorian Fainelli <f.fainelli@gmail.com>
Mon, 13 Apr 2020 22:53:28 +0000 (15:53 -0700)
committerFlorian Fainelli <f.fainelli@gmail.com>
Mon, 13 Apr 2020 22:53:28 +0000 (15:53 -0700)
- First patch updates RPi4's expgpio's GPIO labels, adding the SD power rail.

- Second patch adds a fixed regulator that controls the SD power and
hooks it up with emmc2.

- Third patch rolls back to the firmware based power driver as the MMIO
version is unstable.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
1  2 
arch/arm/boot/dts/bcm2711-rpi-4-b.dts

index e26ea90063783c4fcebfbbc5150a73048facd6ff,dd94e92aa7c4cb9024d9c7fd7ef7cff4133ffaa6..c7f1d97e69bbdd77f6e1bfbb833069af6ac29961
@@@ -22,7 -22,6 +22,7 @@@
        aliases {
                emmc2bus = &emmc2bus;
                ethernet0 = &genet;
 +              pcie0 = &pcie0;
        };
  
        leds {
@@@ -33,8 -32,6 +33,8 @@@
                pwr {
                        label = "PWR";
                        gpios = <&expgpio 2 GPIO_ACTIVE_LOW>;
 +                      default-state = "keep";
 +                      linux,default-trigger = "default-on";
                };
        };
  
                          3300000 0x0>;
                status = "okay";
        };
+       sd_vcc_reg: sd_vcc_reg {
+               compatible = "regulator-fixed";
+               regulator-name = "vcc-sd";
+               regulator-min-microvolt = <3300000>;
+               regulator-max-microvolt = <3300000>;
+               regulator-boot-on;
+               enable-active-high;
+               gpio = <&expgpio 6 GPIO_ACTIVE_HIGH>;
+       };
  };
  
  &firmware {
@@@ -69,7 -76,7 +79,7 @@@
                                  "GLOBAL_RESET",
                                  "VDD_SD_IO_SEL",
                                  "CAM_GPIO",
-                                 "",
+                                 "SD_PWR_ON",
                                  "";
                status = "okay";
        };
  /* EMMC2 is used to drive the SD card */
  &emmc2 {
        vqmmc-supply = <&sd_io_1v8_reg>;
+       vmmc-supply = <&sd_vcc_reg>;
        broken-cd;
        status = "okay";
  };