mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-09-18 22:14:16 +00:00
arm64: dts: qcom: sa8295p-adp: Enable the four USB Type-A ports
The multiport USB controller in the SA8295P ADP is connected to four USB Type-A ports. VBUS for each of these ports are provided by a TPS2559QWDRCTQ1 regulator, controlled from PMIC GPIOs. Add the necessary regulators and GPIO configuration to power these. It seems reasonable that these regulators should be referenced as vbus supply of usb-a-connector nodes and controlled by e.g. dwc3, but as this is not supported in Linux today the regulators are left always-on for now. Signed-off-by: Krishna Kurapati <quic_kriskura@quicinc.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org> Link: https://lore.kernel.org/r/20240707085624.3411961-1-quic_kriskura@quicinc.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
This commit is contained in:
parent
6e229f9118
commit
b5cbd179f4
1 changed files with 83 additions and 0 deletions
|
@ -9,6 +9,7 @@
|
|||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
|
||||
#include <dt-bindings/spmi/spmi.h>
|
||||
#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
|
||||
|
||||
#include "sa8540p.dtsi"
|
||||
#include "sa8540p-pmics.dtsi"
|
||||
|
@ -109,6 +110,46 @@
|
|||
};
|
||||
};
|
||||
|
||||
regulator-usb2-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "USB2_VBUS";
|
||||
gpio = <&pmm8540c_gpios 9 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-0 = <&usb2_en>;
|
||||
pinctrl-names = "default";
|
||||
enable-active-high;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
regulator-usb3-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "USB3_VBUS";
|
||||
gpio = <&pmm8540e_gpios 5 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-0 = <&usb3_en>;
|
||||
pinctrl-names = "default";
|
||||
enable-active-high;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
regulator-usb4-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "USB4_VBUS";
|
||||
gpio = <&pmm8540g_gpios 5 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-0 = <&usb4_en>;
|
||||
pinctrl-names = "default";
|
||||
enable-active-high;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
regulator-usb5-vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "USB5_VBUS";
|
||||
gpio = <&pmm8540g_gpios 9 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-0 = <&usb5_en>;
|
||||
pinctrl-names = "default";
|
||||
enable-active-high;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
reserved-memory {
|
||||
gpu_mem: gpu-mem@8bf00000 {
|
||||
reg = <0 0x8bf00000 0 0x2000>;
|
||||
|
@ -637,6 +678,10 @@
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_2_hsphy0 {
|
||||
vdda-pll-supply = <&vreg_l5a>;
|
||||
vdda18-supply = <&vreg_l7g>;
|
||||
|
@ -697,6 +742,44 @@
|
|||
};
|
||||
};
|
||||
|
||||
&pmm8540c_gpios {
|
||||
usb2_en: usb2-en-state {
|
||||
pins = "gpio9";
|
||||
function = "normal";
|
||||
qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>;
|
||||
output-enable;
|
||||
power-source = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
&pmm8540e_gpios {
|
||||
usb3_en: usb3-en-state {
|
||||
pins = "gpio5";
|
||||
function = "normal";
|
||||
qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>;
|
||||
output-enable;
|
||||
power-source = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
&pmm8540g_gpios {
|
||||
usb4_en: usb4-en-state {
|
||||
pins = "gpio5";
|
||||
function = "normal";
|
||||
qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>;
|
||||
output-enable;
|
||||
power-source = <0>;
|
||||
};
|
||||
|
||||
usb5_en: usb5-en-state {
|
||||
pins = "gpio9";
|
||||
function = "normal";
|
||||
qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>;
|
||||
output-enable;
|
||||
power-source = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
&tlmm {
|
||||
pcie2a_default: pcie2a-default-state {
|
||||
clkreq-n-pins {
|
||||
|
|
Loading…
Add table
Reference in a new issue