Support PVT HW configuration
Set the device tree default to PVT pin assignment. To support older
boards:
* Set wifi test enable pin for both pin assignments.
* Create two regulators for VBUS and use overlay on usb to control the
configuration. We can't overlay on usb0_vbus because overlay doesn't
support deleting properties (enable-active-high)
An OTG overlay is created to support OTG VBUS for the boards from older
builds. The user need to enable it per flash in /boot/overlays.txt
Change-Id: I69e80fed0393e5ce49a6bda5144e86fea0179698
diff --git a/arch/arm64/boot/dts/mediatek/Makefile b/arch/arm64/boot/dts/mediatek/Makefile
index 11fb4c1..7f3f1c2 100644
--- a/arch/arm64/boot/dts/mediatek/Makefile
+++ b/arch/arm64/boot/dts/mediatek/Makefile
@@ -8,6 +8,7 @@
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8167-coral.dtb
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8167-coral-evt1-overlay.dtb
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8167-coral-display-overlay.dtb
+dtb-$(CONFIG_ARCH_MEDIATEK) += mt8167-coral-otg-overlay.dtb
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8167-pumpkin.dtb
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8173-evb.dtb
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8183-evb.dtb
diff --git a/arch/arm64/boot/dts/mediatek/mt8167-coral-otg-overlay.dts b/arch/arm64/boot/dts/mediatek/mt8167-coral-otg-overlay.dts
new file mode 100644
index 0000000..dadd100
--- /dev/null
+++ b/arch/arm64/boot/dts/mediatek/mt8167-coral-otg-overlay.dts
@@ -0,0 +1,13 @@
+// Set DVT- OTG config
+/dts-v1/;
+/plugin/;
+
+/ {
+ compatible = "mediatek,mt8167";
+ fragment@0 {
+ target = <&usb0>;
+ __overlay__ {
+ vbus-supply = <&usb0_vbus_old>;
+ };
+ };
+};
diff --git a/arch/arm64/boot/dts/mediatek/mt8167-coral.dts b/arch/arm64/boot/dts/mediatek/mt8167-coral.dts
index 008c3e3..da6f034 100644
--- a/arch/arm64/boot/dts/mediatek/mt8167-coral.dts
+++ b/arch/arm64/boot/dts/mediatek/mt8167-coral.dts
@@ -39,6 +39,15 @@
regulator-name = "usb0_vbus";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
+ gpio = <&pio 50 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
+
+ usb0_vbus_old: regulator@1 {
+ compatible = "regulator-fixed";
+ regulator-name = "usb0_vbus_old";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
gpio = <&pio 17 GPIO_ACTIVE_LOW>;
};
@@ -352,7 +361,8 @@
};
pins_test_en {
- pinmux = <MT8167_PIN_38_MRG_DI__FUNC_GPIO38>;
+ pinmux = <MT8167_PIN_38_MRG_DI__FUNC_GPIO38>,
+ <MT8167_PIN_44_JTMS__FUNC_GPIO44>;
output-low;
};
@@ -386,7 +396,8 @@
};
pins_test_en {
- pinmux = <MT8167_PIN_38_MRG_DI__FUNC_GPIO38>;
+ pinmux = <MT8167_PIN_38_MRG_DI__FUNC_GPIO38>,
+ <MT8167_PIN_44_JTMS__FUNC_GPIO44>;
output-low;
};