From: Roger Quadros <rogerq@kernel.org> To: Nishanth Menon <nm@ti.com> Cc: vigneshr@ti.com, kristo@kernel.org, srk@ti.com, r-gunasekaran@ti.com, linux-arm-kernel@lists.infradead.org, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org Subject: Re: [PATCH v2 2/2] arm64: dts: ti: k3-am625-sk: Enable Type-C port for USB0 Date: Tue, 28 Mar 2023 22:46:48 +0300 [thread overview] Message-ID: <39cb4f8c-d10f-f543-ddca-8a8507757f4c@kernel.org> (raw) In-Reply-To: <20230328133024.ow6cvm22o2c5heem@untrimmed> On 28/03/2023 16:30, Nishanth Menon wrote: > On 16:20-20230328, Roger Quadros wrote: >> >> >> On 28/03/2023 16:18, Nishanth Menon wrote: >>> On 15:43-20230328, Roger Quadros wrote: >>>> USB0 is a Type-C port with dual data role and power sink. >>>> >>>> Signed-off-by: Roger Quadros <rogerq@kernel.org> >>>> --- >>>> arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts | 4 ++ >>>> arch/arm64/boot/dts/ti/k3-am625-sk.dts | 44 ++++++++++++++++++- >>>> .../arm64/boot/dts/ti/k3-am62x-sk-common.dtsi | 4 -- >>>> 3 files changed, 47 insertions(+), 5 deletions(-) >>>> >>>> diff --git a/arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts b/arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts >>>> index b2ca19e3042e..a3c3609833fd 100644 >>>> --- a/arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts >>>> +++ b/arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts >>>> @@ -225,3 +225,7 @@ ldo4_reg: ldo4 { >>>> }; >>>> }; >>>> }; >>>> + >>>> +&usb0 { >>>> + dr_mode = "peripheral"; >>>> +}; >>>> diff --git a/arch/arm64/boot/dts/ti/k3-am625-sk.dts b/arch/arm64/boot/dts/ti/k3-am625-sk.dts >>>> index cdc0858dd1b2..13fdaa9ce4e7 100644 >>>> --- a/arch/arm64/boot/dts/ti/k3-am625-sk.dts >>>> +++ b/arch/arm64/boot/dts/ti/k3-am625-sk.dts >>>> @@ -136,6 +136,35 @@ AM62X_IOPAD(0x01d4, PIN_INPUT, 7) /* (B15) UART0_RTSn.GPIO1_23 */ >>>> }; >>>> }; >>>> >>>> +&main_i2c0 { >>>> + typec_pd: tps6598x@3f { >>>> + compatible = "ti,tps6598x"; >>>> + reg = <0x3f>; >>>> + interrupt-parent = <&exp1>; >>>> + interrupts = <17 IRQ_TYPE_EDGE_FALLING>; >>>> + interrupt-names = "irq"; >>>> + >>>> + connector { >>>> + compatible = "usb-c-connector"; >>>> + label = "USB-C"; >>>> + self-powered; >>>> + data-role = "dual"; >>>> + power-role = "sink"; >>>> + ports { >>>> + #address-cells = <1>; >>>> + #size-cells = <0>; >>>> + >>>> + port@0 { >>>> + reg = <0>; >>>> + usb_con_hs: endpoint { >>>> + remote-endpoint = <&usb0_hs_ep>; >>>> + }; >>>> + }; >>>> + }; >>>> + }; >>>> + }; >>>> +}; >>>> + >>>> &main_i2c1 { >>>> exp1: gpio@22 { >>>> compatible = "ti,tca6424"; >>>> @@ -150,7 +179,7 @@ exp1: gpio@22 { >>>> "UART1_FET_BUF_EN", "WL_LT_EN", >>>> "GPIO_HDMI_RSTn", "CSI_GPIO1", >>>> "CSI_GPIO2", "PRU_3V3_EN", >>>> - "HDMI_INTn", "TEST_GPIO2", >>>> + "HDMI_INTn", "PD_I2C_IRQ", >>>> "MCASP1_FET_EN", "MCASP1_BUF_BT_EN", >>>> "MCASP1_FET_SEL", "UART1_FET_SEL", >>>> "TSINT#", "IO_EXP_TEST_LED"; >>>> @@ -256,3 +285,16 @@ partition@3fc0000 { >>>> }; >>>> }; >>>> }; >>>> + >>>> +&usb0 { >>>> + #address-cells = <1>; >>>> + #size-cells = <0>; >>>> + usb-role-switch; >>>> + >>>> + port@0 { >>>> + reg = <0>; >>>> + usb0_hs_ep: endpoint { >>>> + remote-endpoint = <&usb_con_hs>; >>>> + }; >>>> + }; >>>> +}; >>>> diff --git a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi >>>> index 80e8b9b9a5f5..e3223088b90c 100644 >>>> --- a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi >>>> +++ b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi >>>> @@ -264,10 +264,6 @@ &usbss1 { >>>> ti,vbus-divider; >>>> }; >>>> >>>> -&usb0 { >>>> - dr_mode = "peripheral"; >>>> -}; >>>> - >>> >>> How about sk-lp ? >> >> moved it to sk-lp. see above in this patch. >> > > A bit confused. Looking at [1] vs [2], it seems to indicate pd controller at > 0x3f as well? Am I misreading the schematics? > > [1] https://www.ti.com/tool/SK-AM62-LP#design-files > [2] https://www.ti.com/tool/SK-AM62#design-files Yes PD controller is at 0x3f for both boards but IRQ is not routed on AM62-LP. I tried to explain this the cover letter. ;) Pasting here for convenience. > Although k3-am625-lp-sk USB is exactly the same as on k3-am625-sk, > it is missing the IRQ line from Type-C chip which is currently > required as per chip's DT binding. So we don't add Type-C support > for k3-am625-lp-sk till h/w is fixed or polling mode support for > Type-C chip is accepted [2] > > [2] - https://lore.kernel.org/lkml/20230324133741.43408-1-rogerq@kernel.org/T/ cheers, -roger
WARNING: multiple messages have this Message-ID (diff)
From: Roger Quadros <rogerq@kernel.org> To: Nishanth Menon <nm@ti.com> Cc: vigneshr@ti.com, kristo@kernel.org, srk@ti.com, r-gunasekaran@ti.com, linux-arm-kernel@lists.infradead.org, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org Subject: Re: [PATCH v2 2/2] arm64: dts: ti: k3-am625-sk: Enable Type-C port for USB0 Date: Tue, 28 Mar 2023 22:46:48 +0300 [thread overview] Message-ID: <39cb4f8c-d10f-f543-ddca-8a8507757f4c@kernel.org> (raw) In-Reply-To: <20230328133024.ow6cvm22o2c5heem@untrimmed> On 28/03/2023 16:30, Nishanth Menon wrote: > On 16:20-20230328, Roger Quadros wrote: >> >> >> On 28/03/2023 16:18, Nishanth Menon wrote: >>> On 15:43-20230328, Roger Quadros wrote: >>>> USB0 is a Type-C port with dual data role and power sink. >>>> >>>> Signed-off-by: Roger Quadros <rogerq@kernel.org> >>>> --- >>>> arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts | 4 ++ >>>> arch/arm64/boot/dts/ti/k3-am625-sk.dts | 44 ++++++++++++++++++- >>>> .../arm64/boot/dts/ti/k3-am62x-sk-common.dtsi | 4 -- >>>> 3 files changed, 47 insertions(+), 5 deletions(-) >>>> >>>> diff --git a/arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts b/arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts >>>> index b2ca19e3042e..a3c3609833fd 100644 >>>> --- a/arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts >>>> +++ b/arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts >>>> @@ -225,3 +225,7 @@ ldo4_reg: ldo4 { >>>> }; >>>> }; >>>> }; >>>> + >>>> +&usb0 { >>>> + dr_mode = "peripheral"; >>>> +}; >>>> diff --git a/arch/arm64/boot/dts/ti/k3-am625-sk.dts b/arch/arm64/boot/dts/ti/k3-am625-sk.dts >>>> index cdc0858dd1b2..13fdaa9ce4e7 100644 >>>> --- a/arch/arm64/boot/dts/ti/k3-am625-sk.dts >>>> +++ b/arch/arm64/boot/dts/ti/k3-am625-sk.dts >>>> @@ -136,6 +136,35 @@ AM62X_IOPAD(0x01d4, PIN_INPUT, 7) /* (B15) UART0_RTSn.GPIO1_23 */ >>>> }; >>>> }; >>>> >>>> +&main_i2c0 { >>>> + typec_pd: tps6598x@3f { >>>> + compatible = "ti,tps6598x"; >>>> + reg = <0x3f>; >>>> + interrupt-parent = <&exp1>; >>>> + interrupts = <17 IRQ_TYPE_EDGE_FALLING>; >>>> + interrupt-names = "irq"; >>>> + >>>> + connector { >>>> + compatible = "usb-c-connector"; >>>> + label = "USB-C"; >>>> + self-powered; >>>> + data-role = "dual"; >>>> + power-role = "sink"; >>>> + ports { >>>> + #address-cells = <1>; >>>> + #size-cells = <0>; >>>> + >>>> + port@0 { >>>> + reg = <0>; >>>> + usb_con_hs: endpoint { >>>> + remote-endpoint = <&usb0_hs_ep>; >>>> + }; >>>> + }; >>>> + }; >>>> + }; >>>> + }; >>>> +}; >>>> + >>>> &main_i2c1 { >>>> exp1: gpio@22 { >>>> compatible = "ti,tca6424"; >>>> @@ -150,7 +179,7 @@ exp1: gpio@22 { >>>> "UART1_FET_BUF_EN", "WL_LT_EN", >>>> "GPIO_HDMI_RSTn", "CSI_GPIO1", >>>> "CSI_GPIO2", "PRU_3V3_EN", >>>> - "HDMI_INTn", "TEST_GPIO2", >>>> + "HDMI_INTn", "PD_I2C_IRQ", >>>> "MCASP1_FET_EN", "MCASP1_BUF_BT_EN", >>>> "MCASP1_FET_SEL", "UART1_FET_SEL", >>>> "TSINT#", "IO_EXP_TEST_LED"; >>>> @@ -256,3 +285,16 @@ partition@3fc0000 { >>>> }; >>>> }; >>>> }; >>>> + >>>> +&usb0 { >>>> + #address-cells = <1>; >>>> + #size-cells = <0>; >>>> + usb-role-switch; >>>> + >>>> + port@0 { >>>> + reg = <0>; >>>> + usb0_hs_ep: endpoint { >>>> + remote-endpoint = <&usb_con_hs>; >>>> + }; >>>> + }; >>>> +}; >>>> diff --git a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi >>>> index 80e8b9b9a5f5..e3223088b90c 100644 >>>> --- a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi >>>> +++ b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi >>>> @@ -264,10 +264,6 @@ &usbss1 { >>>> ti,vbus-divider; >>>> }; >>>> >>>> -&usb0 { >>>> - dr_mode = "peripheral"; >>>> -}; >>>> - >>> >>> How about sk-lp ? >> >> moved it to sk-lp. see above in this patch. >> > > A bit confused. Looking at [1] vs [2], it seems to indicate pd controller at > 0x3f as well? Am I misreading the schematics? > > [1] https://www.ti.com/tool/SK-AM62-LP#design-files > [2] https://www.ti.com/tool/SK-AM62#design-files Yes PD controller is at 0x3f for both boards but IRQ is not routed on AM62-LP. I tried to explain this the cover letter. ;) Pasting here for convenience. > Although k3-am625-lp-sk USB is exactly the same as on k3-am625-sk, > it is missing the IRQ line from Type-C chip which is currently > required as per chip's DT binding. So we don't add Type-C support > for k3-am625-lp-sk till h/w is fixed or polling mode support for > Type-C chip is accepted [2] > > [2] - https://lore.kernel.org/lkml/20230324133741.43408-1-rogerq@kernel.org/T/ cheers, -roger _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2023-03-28 19:46 UTC|newest] Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top 2023-03-28 12:43 [PATCH v2 0/2] arm64: dts: ti: k3-am625-sk: Enable Type-C dual-role Roger Quadros 2023-03-28 12:43 ` Roger Quadros 2023-03-28 12:43 ` [PATCH v2 1/2] arm64: dts: ti: k3-am625-sk: Add ti,vbus-divider property to usbss1 Roger Quadros 2023-03-28 12:43 ` Roger Quadros 2023-03-28 12:43 ` [PATCH v2 2/2] arm64: dts: ti: k3-am625-sk: Enable Type-C port for USB0 Roger Quadros 2023-03-28 12:43 ` Roger Quadros 2023-03-28 13:18 ` Nishanth Menon 2023-03-28 13:18 ` Nishanth Menon 2023-03-28 13:20 ` Roger Quadros 2023-03-28 13:20 ` Roger Quadros 2023-03-28 13:30 ` Nishanth Menon 2023-03-28 13:30 ` Nishanth Menon 2023-03-28 19:46 ` Roger Quadros [this message] 2023-03-28 19:46 ` Roger Quadros 2023-03-28 21:52 ` Nishanth Menon 2023-03-28 21:52 ` Nishanth Menon 2023-03-29 7:06 ` Roger Quadros 2023-03-29 7:06 ` Roger Quadros 2023-03-30 2:16 ` (subset) [PATCH v2 0/2] arm64: dts: ti: k3-am625-sk: Enable Type-C dual-role Nishanth Menon 2023-03-30 2:16 ` Nishanth Menon
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=39cb4f8c-d10f-f543-ddca-8a8507757f4c@kernel.org \ --to=rogerq@kernel.org \ --cc=devicetree@vger.kernel.org \ --cc=kristo@kernel.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-usb@vger.kernel.org \ --cc=nm@ti.com \ --cc=r-gunasekaran@ti.com \ --cc=srk@ti.com \ --cc=vigneshr@ti.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.