devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] qcom: dts: qrb4210-rb2 usb/emmc fixes
@ 2024-06-19 20:33 Caleb Connolly
  2024-06-19 20:33 ` [PATCH 1/2] arm64: dts: qcom: sm6115: add iommu for sdhc_1 Caleb Connolly
                   ` (2 more replies)
  0 siblings, 3 replies; 12+ messages in thread
From: Caleb Connolly @ 2024-06-19 20:33 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: Dmitry Baryshkov, Alexey Klimov, linux-arm-msm, devicetree,
	Caleb Connolly

Add the missing iommus property on the first sdhc, and set a default
mode for USB role switch. The iommus property in particular is necessary
when running U-Boot as a first-stage bootloader, since it can't rely on
EDK2 to configure the SMMU and crashes with:

[020b9ed0d]TLB Dump Message:Not a valid memory address to dump TLBs for device APPS_TCU or no memory available.
[020b9f533]SMMU GLOBAL TCU NON-SEC FAULT: bit mask=0x00002000
[020b9fb23]SMMU:>> APPS_TCU NonSec Global Fault:
[020b9ff9f] NSGFSR=0x80000002
[020ba0404] NSGFAR=0x00000000bf6c6800
[020ba0909] NSGFSYNR0=0x00000000
[020ba0d1b] NSGFSYNR1=0x00c000c0
[020ba117d] NSGFSYNR2=0x00000000
[020ba15a9] NSCR0=0x00200406

The GFSYNR1 register in particular clues us in to the stream ID of the
peripherals, in this case 0x00c0 corresponds to the first SDHC.

---
Caleb Connolly (2):
      arm64: dts: qcom: sm6115: add iommu for sdhc_1
      arm64: dts: qcom: qrb4210-rb2: set role-switch-default-mode

 arch/arm64/boot/dts/qcom/qrb4210-rb2.dts | 4 ++++
 arch/arm64/boot/dts/qcom/sm6115.dtsi     | 1 +
 2 files changed, 5 insertions(+)
---
change-id: 20240619-rb2-fixes-94f24a0908d1
base-commit: 63072efe1495d9d42546b10b46f2c063ec8db3ce

// Caleb (they/them)


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 1/2] arm64: dts: qcom: sm6115: add iommu for sdhc_1
  2024-06-19 20:33 [PATCH 0/2] qcom: dts: qrb4210-rb2 usb/emmc fixes Caleb Connolly
@ 2024-06-19 20:33 ` Caleb Connolly
  2024-06-20 13:11   ` Dmitry Baryshkov
  2024-06-19 20:33 ` [PATCH 2/2] arm64: dts: qcom: qrb4210-rb2: set role-switch-default-mode Caleb Connolly
  2024-06-21  6:11 ` (subset) [PATCH 0/2] qcom: dts: qrb4210-rb2 usb/emmc fixes Bjorn Andersson
  2 siblings, 1 reply; 12+ messages in thread
From: Caleb Connolly @ 2024-06-19 20:33 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: Dmitry Baryshkov, Alexey Klimov, linux-arm-msm, devicetree,
	Caleb Connolly

The first SDHC can do DMA like most other peripherals, add the missing
iommus entry which is required to set this up.

This may have been working on Linux before since the bootloader
configures it and it may not be full torn down. But other software like
U-Boot needs this to initialize the eMMC properly.

Fixes: 97e563bf5ba1 ("arm64: dts: qcom: sm6115: Add basic soc dtsi")
Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
---
 arch/arm64/boot/dts/qcom/sm6115.dtsi | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm64/boot/dts/qcom/sm6115.dtsi b/arch/arm64/boot/dts/qcom/sm6115.dtsi
index aca0a87092e4..9ed062150aaf 100644
--- a/arch/arm64/boot/dts/qcom/sm6115.dtsi
+++ b/arch/arm64/boot/dts/qcom/sm6115.dtsi
@@ -1089,8 +1089,9 @@ sdhc_1: mmc@4744000 {
 			clock-names = "iface", "core", "xo", "ice";
 
 			power-domains = <&rpmpd SM6115_VDDCX>;
 			operating-points-v2 = <&sdhc1_opp_table>;
+			iommus = <&apps_smmu 0x00c0 0x0>;
 			interconnects = <&system_noc MASTER_SDCC_1 RPM_ALWAYS_TAG
 					 &bimc SLAVE_EBI_CH0 RPM_ALWAYS_TAG>,
 					<&bimc MASTER_AMPSS_M0 RPM_ALWAYS_TAG
 					 &config_noc SLAVE_SDCC_1 RPM_ALWAYS_TAG>;

-- 
2.45.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 2/2] arm64: dts: qcom: qrb4210-rb2: set role-switch-default-mode
  2024-06-19 20:33 [PATCH 0/2] qcom: dts: qrb4210-rb2 usb/emmc fixes Caleb Connolly
  2024-06-19 20:33 ` [PATCH 1/2] arm64: dts: qcom: sm6115: add iommu for sdhc_1 Caleb Connolly
@ 2024-06-19 20:33 ` Caleb Connolly
  2024-06-20 13:15   ` Dmitry Baryshkov
  2024-06-21  6:11 ` (subset) [PATCH 0/2] qcom: dts: qrb4210-rb2 usb/emmc fixes Bjorn Andersson
  2 siblings, 1 reply; 12+ messages in thread
From: Caleb Connolly @ 2024-06-19 20:33 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: Dmitry Baryshkov, Alexey Klimov, linux-arm-msm, devicetree,
	Caleb Connolly

Give a hint to the OS which role we prefer. Host mode generally makes
the most sense.

Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
---
 arch/arm64/boot/dts/qcom/qrb4210-rb2.dts | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/qrb4210-rb2.dts b/arch/arm64/boot/dts/qcom/qrb4210-rb2.dts
index 2c39bb1b97db..e9a63956b8b7 100644
--- a/arch/arm64/boot/dts/qcom/qrb4210-rb2.dts
+++ b/arch/arm64/boot/dts/qcom/qrb4210-rb2.dts
@@ -648,8 +648,12 @@ &uart4 {
 &usb {
 	status = "okay";
 };
 
+&usb_dwc3 {
+	role-switch-default-mode = "host";
+};
+
 &usb_dwc3_hs {
 	remote-endpoint = <&pmi632_hs_in>;
 };
 

-- 
2.45.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* Re: [PATCH 1/2] arm64: dts: qcom: sm6115: add iommu for sdhc_1
  2024-06-19 20:33 ` [PATCH 1/2] arm64: dts: qcom: sm6115: add iommu for sdhc_1 Caleb Connolly
@ 2024-06-20 13:11   ` Dmitry Baryshkov
  0 siblings, 0 replies; 12+ messages in thread
From: Dmitry Baryshkov @ 2024-06-20 13:11 UTC (permalink / raw)
  To: Caleb Connolly
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Alexey Klimov, linux-arm-msm, devicetree

On Wed, 19 Jun 2024 at 23:33, Caleb Connolly <caleb.connolly@linaro.org> wrote:
>
> The first SDHC can do DMA like most other peripherals, add the missing
> iommus entry which is required to set this up.
>
> This may have been working on Linux before since the bootloader
> configures it and it may not be full torn down. But other software like
> U-Boot needs this to initialize the eMMC properly.
>
> Fixes: 97e563bf5ba1 ("arm64: dts: qcom: sm6115: Add basic soc dtsi")
> Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
> ---
>  arch/arm64/boot/dts/qcom/sm6115.dtsi | 1 +
>  1 file changed, 1 insertion(+)

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

-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 2/2] arm64: dts: qcom: qrb4210-rb2: set role-switch-default-mode
  2024-06-19 20:33 ` [PATCH 2/2] arm64: dts: qcom: qrb4210-rb2: set role-switch-default-mode Caleb Connolly
@ 2024-06-20 13:15   ` Dmitry Baryshkov
  2024-06-20 13:30     ` Caleb Connolly
  0 siblings, 1 reply; 12+ messages in thread
From: Dmitry Baryshkov @ 2024-06-20 13:15 UTC (permalink / raw)
  To: Caleb Connolly
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Alexey Klimov, linux-arm-msm, devicetree

On Wed, 19 Jun 2024 at 23:33, Caleb Connolly <caleb.connolly@linaro.org> wrote:
>
> Give a hint to the OS which role we prefer. Host mode generally makes
> the most sense.

Why?

>
> Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
> ---
>  arch/arm64/boot/dts/qcom/qrb4210-rb2.dts | 4 ++++
>  1 file changed, 4 insertions(+)

Would it make sense to set this for all the RB and HDK boards?

-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 2/2] arm64: dts: qcom: qrb4210-rb2: set role-switch-default-mode
  2024-06-20 13:15   ` Dmitry Baryshkov
@ 2024-06-20 13:30     ` Caleb Connolly
  2024-06-20 15:07       ` Dmitry Baryshkov
  0 siblings, 1 reply; 12+ messages in thread
From: Caleb Connolly @ 2024-06-20 13:30 UTC (permalink / raw)
  To: Dmitry Baryshkov
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Alexey Klimov, linux-arm-msm, devicetree



On 20/06/2024 15:15, Dmitry Baryshkov wrote:
> On Wed, 19 Jun 2024 at 23:33, Caleb Connolly <caleb.connolly@linaro.org> wrote:
>>
>> Give a hint to the OS which role we prefer. Host mode generally makes
>> the most sense.
> 
> Why?

I guess this is subjective, but on these boards the more common usecase 
is host mode (before we had role switching we forced them to host mode...).
> 
>>
>> Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
>> ---
>>   arch/arm64/boot/dts/qcom/qrb4210-rb2.dts | 4 ++++
>>   1 file changed, 4 insertions(+)
> 
> Would it make sense to set this for all the RB and HDK boards?

The rb1/2 are the only boards which lack multiple USB controllers. For 
others it's fine to leave the default (peripheral mode).
> 

-- 
// Caleb (they/them)

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 2/2] arm64: dts: qcom: qrb4210-rb2: set role-switch-default-mode
  2024-06-20 13:30     ` Caleb Connolly
@ 2024-06-20 15:07       ` Dmitry Baryshkov
  2024-06-20 16:49         ` Caleb Connolly
  0 siblings, 1 reply; 12+ messages in thread
From: Dmitry Baryshkov @ 2024-06-20 15:07 UTC (permalink / raw)
  To: Caleb Connolly
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Alexey Klimov, linux-arm-msm, devicetree

On Thu, Jun 20, 2024 at 03:30:29PM GMT, Caleb Connolly wrote:
> 
> 
> On 20/06/2024 15:15, Dmitry Baryshkov wrote:
> > On Wed, 19 Jun 2024 at 23:33, Caleb Connolly <caleb.connolly@linaro.org> wrote:
> > > 
> > > Give a hint to the OS which role we prefer. Host mode generally makes
> > > the most sense.
> > 
> > Why?
> 
> I guess this is subjective, but on these boards the more common usecase is
> host mode (before we had role switching we forced them to host mode...).
> > 
> > > 
> > > Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
> > > ---
> > >   arch/arm64/boot/dts/qcom/qrb4210-rb2.dts | 4 ++++
> > >   1 file changed, 4 insertions(+)
> > 
> > Would it make sense to set this for all the RB and HDK boards?
> 
> The rb1/2 are the only boards which lack multiple USB controllers. For
> others it's fine to leave the default (peripheral mode).

SM8450-HDK and SM8650-HDK also have just a single USB-C port. My logic
was slightly different. We consider these devices to be SBCs, so I'd
expect that they act as hosts _by_default_. If somebody plugs RB board
into a laptop, then it's logical that it should work as a device, but
between the phone and the RB board the RB is a host.

-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 2/2] arm64: dts: qcom: qrb4210-rb2: set role-switch-default-mode
  2024-06-20 15:07       ` Dmitry Baryshkov
@ 2024-06-20 16:49         ` Caleb Connolly
  2024-06-20 18:22           ` Dmitry Baryshkov
  2024-06-21  5:32           ` Bjorn Andersson
  0 siblings, 2 replies; 12+ messages in thread
From: Caleb Connolly @ 2024-06-20 16:49 UTC (permalink / raw)
  To: Dmitry Baryshkov
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Alexey Klimov, linux-arm-msm, devicetree



On 20/06/2024 17:07, Dmitry Baryshkov wrote:
> On Thu, Jun 20, 2024 at 03:30:29PM GMT, Caleb Connolly wrote:
>>
>>
>> On 20/06/2024 15:15, Dmitry Baryshkov wrote:
>>> On Wed, 19 Jun 2024 at 23:33, Caleb Connolly <caleb.connolly@linaro.org> wrote:
>>>>
>>>> Give a hint to the OS which role we prefer. Host mode generally makes
>>>> the most sense.
>>>
>>> Why?
>>
>> I guess this is subjective, but on these boards the more common usecase is
>> host mode (before we had role switching we forced them to host mode...).
>>>
>>>>
>>>> Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
>>>> ---
>>>>    arch/arm64/boot/dts/qcom/qrb4210-rb2.dts | 4 ++++
>>>>    1 file changed, 4 insertions(+)
>>>
>>> Would it make sense to set this for all the RB and HDK boards?
>>
>> The rb1/2 are the only boards which lack multiple USB controllers. For
>> others it's fine to leave the default (peripheral mode).
> 
> SM8450-HDK and SM8650-HDK also have just a single USB-C port. My logic
> was slightly different. We consider these devices to be SBCs, so I'd
> expect that they act as hosts _by_default_. If somebody plugs RB board
> into a laptop, then it's logical that it should work as a device, but
> between the phone and the RB board the RB is a host.

Ahh I see, then yes perhaps it makes sense. I can send v2 with patches 
for other boards too.

* qrb2210-rb1
* qrb4210-rb2
* sm8450-hdk
* sm8650-hdk

Any others?
> 

-- 
// Caleb (they/them)

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 2/2] arm64: dts: qcom: qrb4210-rb2: set role-switch-default-mode
  2024-06-20 16:49         ` Caleb Connolly
@ 2024-06-20 18:22           ` Dmitry Baryshkov
  2024-06-21  5:32           ` Bjorn Andersson
  1 sibling, 0 replies; 12+ messages in thread
From: Dmitry Baryshkov @ 2024-06-20 18:22 UTC (permalink / raw)
  To: Caleb Connolly
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Alexey Klimov, linux-arm-msm, devicetree

On Thu, 20 Jun 2024 at 19:49, Caleb Connolly <caleb.connolly@linaro.org> wrote:
>
>
>
> On 20/06/2024 17:07, Dmitry Baryshkov wrote:
> > On Thu, Jun 20, 2024 at 03:30:29PM GMT, Caleb Connolly wrote:
> >>
> >>
> >> On 20/06/2024 15:15, Dmitry Baryshkov wrote:
> >>> On Wed, 19 Jun 2024 at 23:33, Caleb Connolly <caleb.connolly@linaro.org> wrote:
> >>>>
> >>>> Give a hint to the OS which role we prefer. Host mode generally makes
> >>>> the most sense.
> >>>
> >>> Why?
> >>
> >> I guess this is subjective, but on these boards the more common usecase is
> >> host mode (before we had role switching we forced them to host mode...).
> >>>
> >>>>
> >>>> Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
> >>>> ---
> >>>>    arch/arm64/boot/dts/qcom/qrb4210-rb2.dts | 4 ++++
> >>>>    1 file changed, 4 insertions(+)
> >>>
> >>> Would it make sense to set this for all the RB and HDK boards?
> >>
> >> The rb1/2 are the only boards which lack multiple USB controllers. For
> >> others it's fine to leave the default (peripheral mode).
> >
> > SM8450-HDK and SM8650-HDK also have just a single USB-C port. My logic
> > was slightly different. We consider these devices to be SBCs, so I'd
> > expect that they act as hosts _by_default_. If somebody plugs RB board
> > into a laptop, then it's logical that it should work as a device, but
> > between the phone and the RB board the RB is a host.
>
> Ahh I see, then yes perhaps it makes sense. I can send v2 with patches
> for other boards too.
>
> * qrb2210-rb1
> * qrb4210-rb2
> * sm8450-hdk
> * sm8650-hdk
>
> Any others?

I checked, sm8550-hdk also doesn't seem to have the USB-A port. I
think that's it for now.

-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 2/2] arm64: dts: qcom: qrb4210-rb2: set role-switch-default-mode
  2024-06-20 16:49         ` Caleb Connolly
  2024-06-20 18:22           ` Dmitry Baryshkov
@ 2024-06-21  5:32           ` Bjorn Andersson
  2024-06-21 15:26             ` Dmitry Baryshkov
  1 sibling, 1 reply; 12+ messages in thread
From: Bjorn Andersson @ 2024-06-21  5:32 UTC (permalink / raw)
  To: Caleb Connolly
  Cc: Dmitry Baryshkov, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Alexey Klimov, linux-arm-msm, devicetree

On Thu, Jun 20, 2024 at 06:49:46PM GMT, Caleb Connolly wrote:
> 
> 
> On 20/06/2024 17:07, Dmitry Baryshkov wrote:
> > On Thu, Jun 20, 2024 at 03:30:29PM GMT, Caleb Connolly wrote:
> > > 
> > > 
> > > On 20/06/2024 15:15, Dmitry Baryshkov wrote:
> > > > On Wed, 19 Jun 2024 at 23:33, Caleb Connolly <caleb.connolly@linaro.org> wrote:
> > > > > 
> > > > > Give a hint to the OS which role we prefer. Host mode generally makes
> > > > > the most sense.
> > > > 
> > > > Why?
> > > 
> > > I guess this is subjective, but on these boards the more common usecase is
> > > host mode (before we had role switching we forced them to host mode...).
> > > > 
> > > > > 
> > > > > Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
> > > > > ---
> > > > >    arch/arm64/boot/dts/qcom/qrb4210-rb2.dts | 4 ++++
> > > > >    1 file changed, 4 insertions(+)
> > > > 
> > > > Would it make sense to set this for all the RB and HDK boards?
> > > 
> > > The rb1/2 are the only boards which lack multiple USB controllers. For
> > > others it's fine to leave the default (peripheral mode).
> > 
> > SM8450-HDK and SM8650-HDK also have just a single USB-C port. My logic
> > was slightly different. We consider these devices to be SBCs, so I'd
> > expect that they act as hosts _by_default_. If somebody plugs RB board
> > into a laptop, then it's logical that it should work as a device, but
> > between the phone and the RB board the RB is a host.
> 
> Ahh I see, then yes perhaps it makes sense. I can send v2 with patches for
> other boards too.
> 
> * qrb2210-rb1
> * qrb4210-rb2
> * sm8450-hdk
> * sm8650-hdk
> 
> Any others?

qcs6490-rb3gen2 please.

I'm picking patch 1 for v6.10, no need to repost it.

Regards,
Bjorn

> > 
> 
> -- 
> // Caleb (they/them)

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: (subset) [PATCH 0/2] qcom: dts: qrb4210-rb2 usb/emmc fixes
  2024-06-19 20:33 [PATCH 0/2] qcom: dts: qrb4210-rb2 usb/emmc fixes Caleb Connolly
  2024-06-19 20:33 ` [PATCH 1/2] arm64: dts: qcom: sm6115: add iommu for sdhc_1 Caleb Connolly
  2024-06-19 20:33 ` [PATCH 2/2] arm64: dts: qcom: qrb4210-rb2: set role-switch-default-mode Caleb Connolly
@ 2024-06-21  6:11 ` Bjorn Andersson
  2 siblings, 0 replies; 12+ messages in thread
From: Bjorn Andersson @ 2024-06-21  6:11 UTC (permalink / raw)
  To: Konrad Dybcio, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Caleb Connolly
  Cc: Dmitry Baryshkov, Alexey Klimov, linux-arm-msm, devicetree


On Wed, 19 Jun 2024 22:33:37 +0200, Caleb Connolly wrote:
> Add the missing iommus property on the first sdhc, and set a default
> mode for USB role switch. The iommus property in particular is necessary
> when running U-Boot as a first-stage bootloader, since it can't rely on
> EDK2 to configure the SMMU and crashes with:
> 
> [020b9ed0d]TLB Dump Message:Not a valid memory address to dump TLBs for device APPS_TCU or no memory available.
> [020b9f533]SMMU GLOBAL TCU NON-SEC FAULT: bit mask=0x00002000
> [020b9fb23]SMMU:>> APPS_TCU NonSec Global Fault:
> [020b9ff9f] NSGFSR=0x80000002
> [020ba0404] NSGFAR=0x00000000bf6c6800
> [020ba0909] NSGFSYNR0=0x00000000
> [020ba0d1b] NSGFSYNR1=0x00c000c0
> [020ba117d] NSGFSYNR2=0x00000000
> [020ba15a9] NSCR0=0x00200406
> 
> [...]

Applied, thanks!

[1/2] arm64: dts: qcom: sm6115: add iommu for sdhc_1
      commit: 94ea124aeefe1ef271263f176634034e22c49311

Best regards,
-- 
Bjorn Andersson <andersson@kernel.org>

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 2/2] arm64: dts: qcom: qrb4210-rb2: set role-switch-default-mode
  2024-06-21  5:32           ` Bjorn Andersson
@ 2024-06-21 15:26             ` Dmitry Baryshkov
  0 siblings, 0 replies; 12+ messages in thread
From: Dmitry Baryshkov @ 2024-06-21 15:26 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Caleb Connolly, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Alexey Klimov, linux-arm-msm, devicetree

On Fri, 21 Jun 2024 at 08:32, Bjorn Andersson <andersson@kernel.org> wrote:
>
> On Thu, Jun 20, 2024 at 06:49:46PM GMT, Caleb Connolly wrote:
> >
> >
> > On 20/06/2024 17:07, Dmitry Baryshkov wrote:
> > > On Thu, Jun 20, 2024 at 03:30:29PM GMT, Caleb Connolly wrote:
> > > >
> > > >
> > > > On 20/06/2024 15:15, Dmitry Baryshkov wrote:
> > > > > On Wed, 19 Jun 2024 at 23:33, Caleb Connolly <caleb.connolly@linaro.org> wrote:
> > > > > >
> > > > > > Give a hint to the OS which role we prefer. Host mode generally makes
> > > > > > the most sense.
> > > > >
> > > > > Why?
> > > >
> > > > I guess this is subjective, but on these boards the more common usecase is
> > > > host mode (before we had role switching we forced them to host mode...).
> > > > >
> > > > > >
> > > > > > Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
> > > > > > ---
> > > > > >    arch/arm64/boot/dts/qcom/qrb4210-rb2.dts | 4 ++++
> > > > > >    1 file changed, 4 insertions(+)
> > > > >
> > > > > Would it make sense to set this for all the RB and HDK boards?
> > > >
> > > > The rb1/2 are the only boards which lack multiple USB controllers. For
> > > > others it's fine to leave the default (peripheral mode).
> > >
> > > SM8450-HDK and SM8650-HDK also have just a single USB-C port. My logic
> > > was slightly different. We consider these devices to be SBCs, so I'd
> > > expect that they act as hosts _by_default_. If somebody plugs RB board
> > > into a laptop, then it's logical that it should work as a device, but
> > > between the phone and the RB board the RB is a host.
> >
> > Ahh I see, then yes perhaps it makes sense. I can send v2 with patches for
> > other boards too.
> >
> > * qrb2210-rb1
> > * qrb4210-rb2
> > * sm8450-hdk
> > * sm8650-hdk
> >
> > Any others?
>
> qcs6490-rb3gen2 please.

Seeing the list grow on and on. What about making a policy decision
that all non-phone-factor ARCH_QCOM devices should use the host role
by default? So HDK, IDP, RBn, DragonBoard, laptops => host. QRD,
phones => peripheral. Not sure about the tablets. Probably peripheral
too (unless it's a convertible / 2-in-1).

>
> I'm picking patch 1 for v6.10, no need to repost it.
>
> Regards,
> Bjorn
>
> > >
> >
> > --
> > // Caleb (they/them)



-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2024-06-21 15:26 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-19 20:33 [PATCH 0/2] qcom: dts: qrb4210-rb2 usb/emmc fixes Caleb Connolly
2024-06-19 20:33 ` [PATCH 1/2] arm64: dts: qcom: sm6115: add iommu for sdhc_1 Caleb Connolly
2024-06-20 13:11   ` Dmitry Baryshkov
2024-06-19 20:33 ` [PATCH 2/2] arm64: dts: qcom: qrb4210-rb2: set role-switch-default-mode Caleb Connolly
2024-06-20 13:15   ` Dmitry Baryshkov
2024-06-20 13:30     ` Caleb Connolly
2024-06-20 15:07       ` Dmitry Baryshkov
2024-06-20 16:49         ` Caleb Connolly
2024-06-20 18:22           ` Dmitry Baryshkov
2024-06-21  5:32           ` Bjorn Andersson
2024-06-21 15:26             ` Dmitry Baryshkov
2024-06-21  6:11 ` (subset) [PATCH 0/2] qcom: dts: qrb4210-rb2 usb/emmc fixes Bjorn Andersson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).