mbox series

[v8,00/11] Add Qualcomm PMIC TPCM support

Message ID 20230515133643.3621656-1-bryan.odonoghue@linaro.org
Headers show
Series Add Qualcomm PMIC TPCM support | expand

Message

Bryan O'Donoghue May 15, 2023, 1:36 p.m. UTC
Bootable tree
Link: https://git.codelinaro.org/bryan.odonoghue/kernel/-/tree/usb-next-23-05-14-qcom-wrapper-typec-mux-bjorn

V8:
- Makes pm8150b_typec::status = disabled by default - bod
- Greg merged the TCPM description and driver to usb-next so two patches less now.
  I've rebased this series on to usb-next using "--base=auto"
  All of the kernel robot dts/yaml checks should now pass against usb-next / a4422ff221429c600c3dc5d0394fb3738b89d040

V7:
- Adds R/B to "dt-bindings: phy: qcom,sc7180-qmp-usb3-dp-phy: Add input and output ports" - Krzysztof
- Fixes indicated, adds R/B to "dt-bindings: usb: Add Qualcomm PMIC Type-C" - Krzysztof
- Fixes indicated, adds R/B to "usb: typec: qcom: Add Qualcomm PMIC Type-C driver" - Guenter
- Fixes indicated, adds R/B to "usb: typec: qcom: Add Qualcomm PMIC Type-C driver" - Caleb
- Adds R/B to "arm64: dts: qcom: sm8250: Define ports for qmpphy orientation-switching" - Konrad
- Adds R/B to "arm64: dts: qcom: qrb5165-rb5: Switch on Type-C VBUS boost" - Konrad
- Fixes indicated, adds R/B to "arm64: dts: qcom: qrb5165-rb5: Switch on basic TCPM" - Jianhua, Konrad
- Connector ports/endpoints left inside of connector
  Documentation/devicetree/bindings/connector/usb-connector.yaml - Jianhua
- dwc3_role_switch_in -> usb_1_dwc3_role_switch_in
  qmpphy_typec_mux_in -> usb_1_qmpphy_typec_mux_in
  Both ports/endpoints defined inside of pm8150b dtsi - Konrad

  I modified the name of both so that the port/endpoint would be directly
  adjacent to the containing node in the dtsi file for code locality/readbility - bod

- Fixes newline indicated "arm64: dts: qcom: qrb5165-rb5: Switch on TCPM usb-role-switching for usb_1" - Jianhua, Konrad
- Fixes newline indicated "arm64: dts: qcom: qrb5165-rb5: Switch on TCPM orientation-switch for usb_1_qmpphy" - Jianhua, Konrad

- connector
  I have left the connector defintion and its ports/endpoints in the platform dts

  The reason for this
  a) Prior art e.g. arch/arm64/boot/dts/qcom/sc8280xp*
  b) The connector is really a non-SoC/PMIC component its something that is defined
     for your platform.

  I'm open to further debate on this topic:
  Link: https://imgflip.com/i/7kw6ck

- port@1 -> port@1 "arm64: dts: qcom: qrb5165-rb5: Switch on TCPM orientation-switch for usb_1_qmpphy" - Jianhua

- OF: graph: no port node found in /soc@0/spmi@c440000/pmic@2/typec@1500

  I left this as-is since the DT model we want is to connect the connector directly to
  the PHY for orientation or controller for data-role switching

  I similarly didn't put this hack in place to remove the warning but "it would work"

V6:
 - I'm dropping the previous V1-V6 log because the text is getting too long
   here's a link to the previous cover letter instead
   Link: https://lore.kernel.org/linux-arm-msm/20230501121111.1058190-1-bryan.odonoghue@linaro.org/


Bryan O'Donoghue (11):
  dt-bindings: regulator: qcom,usb-vbus-regulator: Mark reg as required
  dt-bindings: regulator: qcom,usb-vbus-regulator: Mark
    regulator-*-microamp required
  dt-bindings: phy: qcom,sc7180-qmp-usb3-dp-phy: Add orientation-switch
    as optional
  dt-bindings: phy: qcom,sc7180-qmp-usb3-dp-phy: Add input and output
    ports
  dt-bindings: mfd: qcom,spmi-pmic: Add typec to SPMI device types
  arm64: dts: qcom: sm8250: Define ports for qmpphy
    orientation-switching
  arm64: dts: qcom: pm8150b: Add a TCPM description
  arm64: dts: qcom: qrb5165-rb5: Switch on Type-C VBUS boost
  arm64: dts: qcom: qrb5165-rb5: Switch on basic TCPM
  arm64: dts: qcom: qrb5165-rb5: Switch on TCPM usb-role-switching for
    usb_1
  arm64: dts: qcom: qrb5165-rb5: Switch on TCPM orientation-switch for
    usb_1_qmpphy

 .../bindings/mfd/qcom,spmi-pmic.yaml          |  4 ++
 .../phy/qcom,sc7180-qmp-usb3-dp-phy.yaml      | 44 +++++++++++++++
 .../regulator/qcom,usb-vbus-regulator.yaml    | 10 +++-
 arch/arm64/boot/dts/qcom/pm8150b.dtsi         | 40 +++++++++++++
 arch/arm64/boot/dts/qcom/qrb5165-rb5.dts      | 56 ++++++++++++++++++-
 arch/arm64/boot/dts/qcom/sm8250.dtsi          | 18 ++++++
 6 files changed, 170 insertions(+), 2 deletions(-)


base-commit: a4422ff221429c600c3dc5d0394fb3738b89d040

Comments

Dmitry Baryshkov July 8, 2023, 11:49 p.m. UTC | #1
On 15/05/2023 16:36, Bryan O'Donoghue wrote:
> Bootable tree
> Link: https://git.codelinaro.org/bryan.odonoghue/kernel/-/tree/usb-next-23-05-14-qcom-wrapper-typec-mux-bjorn
> 
> V8:
> - Makes pm8150b_typec::status = disabled by default - bod
> - Greg merged the TCPM description and driver to usb-next so two patches less now.
>    I've rebased this series on to usb-next using "--base=auto"
>    All of the kernel robot dts/yaml checks should now pass against usb-next / a4422ff221429c600c3dc5d0394fb3738b89d040
> 
> V7:
> - Adds R/B to "dt-bindings: phy: qcom,sc7180-qmp-usb3-dp-phy: Add input and output ports" - Krzysztof
> - Fixes indicated, adds R/B to "dt-bindings: usb: Add Qualcomm PMIC Type-C" - Krzysztof
> - Fixes indicated, adds R/B to "usb: typec: qcom: Add Qualcomm PMIC Type-C driver" - Guenter
> - Fixes indicated, adds R/B to "usb: typec: qcom: Add Qualcomm PMIC Type-C driver" - Caleb
> - Adds R/B to "arm64: dts: qcom: sm8250: Define ports for qmpphy orientation-switching" - Konrad
> - Adds R/B to "arm64: dts: qcom: qrb5165-rb5: Switch on Type-C VBUS boost" - Konrad
> - Fixes indicated, adds R/B to "arm64: dts: qcom: qrb5165-rb5: Switch on basic TCPM" - Jianhua, Konrad
> - Connector ports/endpoints left inside of connector
>    Documentation/devicetree/bindings/connector/usb-connector.yaml - Jianhua
> - dwc3_role_switch_in -> usb_1_dwc3_role_switch_in
>    qmpphy_typec_mux_in -> usb_1_qmpphy_typec_mux_in
>    Both ports/endpoints defined inside of pm8150b dtsi - Konrad
> 
>    I modified the name of both so that the port/endpoint would be directly
>    adjacent to the containing node in the dtsi file for code locality/readbility - bod
> 
> - Fixes newline indicated "arm64: dts: qcom: qrb5165-rb5: Switch on TCPM usb-role-switching for usb_1" - Jianhua, Konrad
> - Fixes newline indicated "arm64: dts: qcom: qrb5165-rb5: Switch on TCPM orientation-switch for usb_1_qmpphy" - Jianhua, Konrad
> 
> - connector
>    I have left the connector defintion and its ports/endpoints in the platform dts
> 
>    The reason for this
>    a) Prior art e.g. arch/arm64/boot/dts/qcom/sc8280xp*
>    b) The connector is really a non-SoC/PMIC component its something that is defined
>       for your platform.
> 
>    I'm open to further debate on this topic:
>    Link: https://imgflip.com/i/7kw6ck
> 
> - port@1 -> port@1 "arm64: dts: qcom: qrb5165-rb5: Switch on TCPM orientation-switch for usb_1_qmpphy" - Jianhua
> 
> - OF: graph: no port node found in /soc@0/spmi@c440000/pmic@2/typec@1500
> 
>    I left this as-is since the DT model we want is to connect the connector directly to
>    the PHY for orientation or controller for data-role switching
> 
>    I similarly didn't put this hack in place to remove the warning but "it would work"
> 
> V6:
>   - I'm dropping the previous V1-V6 log because the text is getting too long
>     here's a link to the previous cover letter instead
>     Link: https://lore.kernel.org/linux-arm-msm/20230501121111.1058190-1-bryan.odonoghue@linaro.org/
> 
> 
> Bryan O'Donoghue (11):
>    dt-bindings: regulator: qcom,usb-vbus-regulator: Mark reg as required
>    dt-bindings: regulator: qcom,usb-vbus-regulator: Mark
>      regulator-*-microamp required
>    dt-bindings: phy: qcom,sc7180-qmp-usb3-dp-phy: Add orientation-switch
>      as optional
>    dt-bindings: phy: qcom,sc7180-qmp-usb3-dp-phy: Add input and output
>      ports
>    dt-bindings: mfd: qcom,spmi-pmic: Add typec to SPMI device types
>    arm64: dts: qcom: sm8250: Define ports for qmpphy
>      orientation-switching
>    arm64: dts: qcom: pm8150b: Add a TCPM description
>    arm64: dts: qcom: qrb5165-rb5: Switch on Type-C VBUS boost
>    arm64: dts: qcom: qrb5165-rb5: Switch on basic TCPM
>    arm64: dts: qcom: qrb5165-rb5: Switch on TCPM usb-role-switching for
>      usb_1
>    arm64: dts: qcom: qrb5165-rb5: Switch on TCPM orientation-switch for
>      usb_1_qmpphy
> 
>   .../bindings/mfd/qcom,spmi-pmic.yaml          |  4 ++
>   .../phy/qcom,sc7180-qmp-usb3-dp-phy.yaml      | 44 +++++++++++++++
>   .../regulator/qcom,usb-vbus-regulator.yaml    | 10 +++-
>   arch/arm64/boot/dts/qcom/pm8150b.dtsi         | 40 +++++++++++++
>   arch/arm64/boot/dts/qcom/qrb5165-rb5.dts      | 56 ++++++++++++++++++-
>   arch/arm64/boot/dts/qcom/sm8250.dtsi          | 18 ++++++
>   6 files changed, 170 insertions(+), 2 deletions(-)

Tested-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>