[PATCH 2/2] arm64: dts: ti: k3-am62p: add the USB sub-system

Roger Quadros rogerq at kernel.org
Tue Jan 30 04:10:03 PST 2024



On 26/01/2024 17:11, Krzysztof Kozlowski wrote:
> On 26/01/2024 13:59, Roger Quadros wrote:
>> From: Vignesh Raghavendra <vigneshr at ti.com>
>>
>> There are two USB instances available on the am62p5 starter kit. Include
>> and enable them for use on the board.
>>
>> Signed-off-by: Vignesh Raghavendra <vigneshr at ti.com>
>> Signed-off-by: Roger Quadros <rogerq at kernel.org>
>> ---
>>  arch/arm64/boot/dts/ti/k3-am62p-main.dtsi | 46 ++++++++++++++++
>>  arch/arm64/boot/dts/ti/k3-am62p5-sk.dts   | 67 +++++++++++++++++++++++
>>  2 files changed, 113 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/ti/k3-am62p-main.dtsi b/arch/arm64/boot/dts/ti/k3-am62p-main.dtsi
>> index 4c51bae06b57..7e7cd749d9a5 100644
>> --- a/arch/arm64/boot/dts/ti/k3-am62p-main.dtsi
>> +++ b/arch/arm64/boot/dts/ti/k3-am62p-main.dtsi
>> @@ -560,6 +560,52 @@ sdhci2: mmc at fa20000 {
>>  		status = "disabled";
>>  	};
>>  
>> +	usbss0: dwc3-usb at f900000 {
> 
> usb@

OK.
> 
>> +		compatible = "ti,am62-usb";
>> +		reg = <0x00 0x0f900000 0x00 0x800>;
>> +		clocks = <&k3_clks 161 3>;
>> +		clock-names = "ref";
>> +		ti,syscon-phy-pll-refclk = <&usb0_phy_ctrl 0x0>;
>> +		#address-cells = <2>;
>> +		#size-cells = <2>;
>> +		power-domains = <&k3_pds 178 TI_SCI_PD_EXCLUSIVE>;
>> +		ranges;
>> +		status = "disabled";
>> +
>> +		usb0: usb at 31000000 {
>> +			compatible = "snps,dwc3";
>> +			reg = <0x00 0x31000000 0x00 0x50000>;
>> +			interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>, /* irq.0 */
>> +			<GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>; /* irq.0 */
>> +			interrupt-names = "host", "peripheral";
>> +			maximum-speed = "high-speed";
>> +			dr_mode = "otg";
>> +		};
>> +	};
>> +
>> +	usbss1: dwc3-usb at f910000 {
> 
> usb@
> 
>> +		compatible = "ti,am62-usb";
>> +		reg = <0x00 0x0f910000 0x00 0x800>;
>> +		clocks = <&k3_clks 162 3>;
>> +		clock-names = "ref";
>> +		ti,syscon-phy-pll-refclk = <&usb1_phy_ctrl 0x0>;
>> +		#address-cells = <2>;
>> +		#size-cells = <2>;
>> +		power-domains = <&k3_pds 179 TI_SCI_PD_EXCLUSIVE>;
>> +		ranges;
>> +		status = "disabled";
>> +
>> +		usb1: usb at 31100000 {
>> +			compatible = "snps,dwc3";
>> +			reg = <0x00 0x31100000 0x00 0x50000>;
>> +			interrupts = <GIC_SPI 226 IRQ_TYPE_LEVEL_HIGH>, /* irq.0 */
>> +			<GIC_SPI 226 IRQ_TYPE_LEVEL_HIGH>; /* irq.0 */
>> +			interrupt-names = "host", "peripheral";
>> +			maximum-speed = "high-speed";
>> +			dr_mode = "otg";
>> +		};
>> +	};
>> +
>>  	fss: bus at fc00000 {
>>  		compatible = "simple-bus";
>>  		reg = <0x00 0x0fc00000 0x00 0x70000>;
>> diff --git a/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts b/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts
>> index 1773c05f752c..7a16e7a8ac66 100644
>> --- a/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts
>> +++ b/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts
>> @@ -27,6 +27,8 @@ aliases {
>>  		spi0 = &ospi0;
>>  		ethernet0 = &cpsw_port1;
>>  		ethernet1 = &cpsw_port2;
>> +		usb0 = &usb0;
>> +		usb1 = &usb1;
>>  	};
>>  
>>  	chosen {
>> @@ -297,6 +299,12 @@ AM62PX_IOPAD(0x01b0, PIN_OUTPUT, 2) /* (G20) MCASP0_ACLKR.UART1_TXD */
>>  		bootph-all;
>>  	};
>>  
>> +	main_usb1_pins_default: main-usb1-default-pins {
>> +		pinctrl-single,pins = <
>> +			AM62PX_IOPAD(0x0258, PIN_INPUT, 0) /* (G21) USB1_DRVVBUS */
>> +		>;
>> +	};
>> +
>>  	main_wlirq_pins_default: main-wlirq-default-pins {
>>  		pinctrl-single,pins = <
>>  			AM62PX_IOPAD(0x0128, PIN_INPUT, 7) /* (K25) MMC2_SDWP.GPIO0_72 */
>> @@ -340,6 +348,36 @@ AM62PX_IOPAD(0x0124, PIN_INPUT, 7) /* (J25) MMC2_SDCD.GPIO0_71 */
>>  	};
>>  };
>>  
>> +&main_i2c0 {
>> +	status = "okay";
>> +	pinctrl-names = "default";
>> +	pinctrl-0 = <&main_i2c0_pins_default>;
>> +	clock-frequency = <400000>;
>> +
>> +	typec_pd0: tps6598x at 3f {
> 
> Node names should be generic. See also an explanation and list of
> examples (not exhaustive) in DT specification:
> https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation
> 

got it. Thanks!

> 
>> +		compatible = "ti,tps6598x";
>> +		reg = <0x3f>;
>> +
>> +		connector {
>> +			compatible = "usb-c-connector";
>> +			label = "USB-C";
>> +			self-powered;
>> +			data-role = "dual";
>> +			power-role = "sink";
>> +			ports {
> 
> 
> Best regards,
> Krzysztof
> 

-- 
cheers,
-roger



More information about the linux-arm-kernel mailing list