[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <b183a130-6237-7d15-5d5a-b56582b92b35@quicinc.com>
Date: Sat, 24 Jun 2023 12:43:23 +0530
From: Krishna Kurapati PSSNV <quic_kriskura@...cinc.com>
To: Konrad Dybcio <konrad.dybcio@...aro.org>,
Thinh Nguyen <Thinh.Nguyen@...opsys.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Philipp Zabel <p.zabel@...gutronix.de>,
Andy Gross <agross@...nel.org>,
"Bjorn Andersson" <andersson@...nel.org>,
Rob Herring <robh+dt@...nel.org>,
"Krzysztof Kozlowski" <krzysztof.kozlowski+dt@...aro.org>,
Felipe Balbi <balbi@...nel.org>,
Wesley Cheng <quic_wcheng@...cinc.com>,
Johan Hovold <johan@...nel.org>
CC: <linux-usb@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<linux-arm-msm@...r.kernel.org>, <devicetree@...r.kernel.org>,
<quic_pkondeti@...cinc.com>, <quic_ppratap@...cinc.com>,
<quic_jackp@...cinc.com>, <quic_harshq@...cinc.com>,
<ahalaney@...hat.com>, <quic_shazhuss@...cinc.com>
Subject: Re: [PATCH v9 08/10] arm64: dts: qcom: sc8280xp: Add multiport
controller node for SC8280
On 6/24/2023 4:09 AM, Konrad Dybcio wrote:
> On 21.06.2023 06:36, Krishna Kurapati wrote:
>> Add USB and DWC3 node for tertiary port of SC8280 along with multiport
>> IRQ's and phy's. This will be used as a base for SA8295P and SA8295-Ride
>> platforms.
>>
>> Signed-off-by: Krishna Kurapati <quic_kriskura@...cinc.com>
>> ---
>> arch/arm64/boot/dts/qcom/sc8280xp.dtsi | 77 ++++++++++++++++++++++++++
>> 1 file changed, 77 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/qcom/sc8280xp.dtsi b/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
>> index 8fa9fbfe5d00..0dfa350ea3b3 100644
>> --- a/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
>> +++ b/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
>> @@ -3013,6 +3013,83 @@ system-cache-controller@...0000 {
>> interrupts = <GIC_SPI 582 IRQ_TYPE_LEVEL_HIGH>;
>> };
>>
>> + usb_2: usb@...8800 {
>> + compatible = "qcom,sc8280xp-dwc3-mp", "qcom,dwc3";
>> + reg = <0 0x0a4f8800 0 0x400>;
>
>> + #address-cells = <2>;
>> + #size-cells = <2>;
>> + ranges;
> These three properties, please stick just before status
>
>> +
>> + clocks = <&gcc GCC_CFG_NOC_USB3_MP_AXI_CLK>,
>> + <&gcc GCC_USB30_MP_MASTER_CLK>,
>> + <&gcc GCC_AGGRE_USB3_MP_AXI_CLK>,
>> + <&gcc GCC_USB30_MP_SLEEP_CLK>,
>> + <&gcc GCC_USB30_MP_MOCK_UTMI_CLK>,
>> + <&gcc GCC_AGGRE_USB_NOC_AXI_CLK>,
>> + <&gcc GCC_AGGRE_USB_NOC_NORTH_AXI_CLK>,
>> + <&gcc GCC_AGGRE_USB_NOC_SOUTH_AXI_CLK>,
>> + <&gcc GCC_SYS_NOC_USB_AXI_CLK>;
>> + clock-names = "cfg_noc", "core", "iface", "sleep", "mock_utmi",
>> + "noc_aggr", "noc_aggr_north", "noc_aggr_south", "noc_sys";
> Please make it one per line
>
>> +
>> + assigned-clocks = <&gcc GCC_USB30_MP_MOCK_UTMI_CLK>,
>> + <&gcc GCC_USB30_MP_MASTER_CLK>;
>> + assigned-clock-rates = <19200000>, <200000000>;
> And here
>
>> +
>> + interrupts-extended = <&pdc 127 IRQ_TYPE_EDGE_RISING>,
>> + <&pdc 126 IRQ_TYPE_EDGE_RISING>,
>> + <&pdc 129 IRQ_TYPE_EDGE_RISING>,
>> + <&pdc 128 IRQ_TYPE_EDGE_RISING>,
>> + <&pdc 131 IRQ_TYPE_EDGE_RISING>,
>> + <&pdc 130 IRQ_TYPE_EDGE_RISING>,
>> + <&pdc 133 IRQ_TYPE_EDGE_RISING>,
>> + <&pdc 132 IRQ_TYPE_EDGE_RISING>,
>> + <&pdc 16 IRQ_TYPE_LEVEL_HIGH>,
>> + <&pdc 17 IRQ_TYPE_LEVEL_HIGH>,
> Not a comment to the patch, but very nice that Qcom ensured every
> endpoint is wakeup-capable, this used not to be the case before :D
Yes wakeup is supported by all ports now, but I didn't make those
changes now as I wanted to keep driver code diff minimal and don't need
wakeup support for the product currently. But for sure, will update
driver code to handle wakeup on all ports in near future.
Regards,
Krishna,
>
>> + <&intc GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>,
>> + <&intc GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>,
>> + <&intc GIC_SPI 857 IRQ_TYPE_LEVEL_HIGH>,
>> + <&intc GIC_SPI 856 IRQ_TYPE_LEVEL_HIGH>;
>> +
> Remove this newline
>
>> + interrupt-names = "dp1_hs_phy_irq", "dm1_hs_phy_irq",
>> + "dp2_hs_phy_irq", "dm2_hs_phy_irq",
>> + "dp3_hs_phy_irq", "dm3_hs_phy_irq",
>> + "dp4_hs_phy_irq", "dm4_hs_phy_irq",
>> + "ss1_phy_irq", "ss2_phy_irq",
>> + "pwr_event_1",
>> + "pwr_event_2",
>> + "pwr_event_3",
>> + "pwr_event_4";
> Please make it one per line
>
>> +
>> + power-domains = <&gcc USB30_MP_GDSC>;
>> + required-opps = <&rpmhpd_opp_nom>;
>> +
>> + resets = <&gcc GCC_USB30_MP_BCR>;
>> +
>> + interconnects = <&aggre1_noc MASTER_USB3_MP 0 &mc_virt SLAVE_EBI1 0>,
>> + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_USB3_MP 0>;
>> + interconnect-names = "usb-ddr", "apps-usb";
>> +
>> + wakeup-source;
>> +
>> + status = "disabled";
>> +
>> + usb_2_dwc3: usb@...0000 {
>> + compatible = "snps,dwc3";
>> + reg = <0 0x0a400000 0 0xcd00>;
>> + interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>;
>> + iommus = <&apps_smmu 0x800 0x0>;
>> + phys = <&usb_2_hsphy0>, <&usb_2_qmpphy0>,
>> + <&usb_2_hsphy1>, <&usb_2_qmpphy1>,
>> + <&usb_2_hsphy2>,
>> + <&usb_2_hsphy3>;
> And here
>> + phy-names = "usb2-port0", "usb3-port0",
>> + "usb2-port1", "usb3-port1",
>> + "usb2-port2",
>> + "usb2-port3";
> And here
>
> Thanks for working on this!
>
> Konrad
>> + };
>> + };
>> +
>> usb_0: usb@...8800 {
>> compatible = "qcom,sc8280xp-dwc3", "qcom,dwc3";
>> reg = <0 0x0a6f8800 0 0x400>;
Powered by blists - more mailing lists