All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bjorn Andersson <bjorn.andersson@linaro.org>
To: Lee Jones <lee.jones@linaro.org>
Cc: alokc@codeaurora.org, kramasub@codeaurora.org,
	andy.gross@linaro.org, david.brown@linaro.org,
	wsa+renesas@sang-engineering.com, linus.walleij@linaro.org,
	balbi@kernel.org, gregkh@linuxfoundation.org,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, jlhugo@gmail.com,
	linux-i2c@vger.kernel.org, linux-arm-msm@vger.kernel.org,
	linux-gpio@vger.kernel.org, linux-usb@vger.kernel.org
Subject: Re: [PATCH 7/8] usb: dwc3: qcom: Start USB in 'host mode' on the SDM845
Date: Wed, 5 Jun 2019 12:14:53 -0700	[thread overview]
Message-ID: <20190605191453.GJ4814@minitux> (raw)
In-Reply-To: <20190605083454.GO4797@dell>

On Wed 05 Jun 01:34 PDT 2019, Lee Jones wrote:

> On Wed, 05 Jun 2019, Bjorn Andersson wrote:
> 
> > On Tue 04 Jun 03:44 PDT 2019, Lee Jones wrote:
> > 
> > > When booting with Device Tree, the current default boot configuration
> > > table option, the request to boot via 'host mode' comes from the
> > > "dr_mode" property.
> > 
> > This has been the default on the MTP, but this is changing as this is
> > causing issues when connected downstream from a hub (the typical
> > development case for the primary USB port of a phone like device) and
> > more importantly we don't have support for the PMIC blocks that control
> > VBUS.
> 
> My point is not about which mode is currently chosen.  It's more about
> the capability of choosing which mode is appropriate for a given
> system via DT.
> 
> > Once these issues are resolved the dr_mode would be "otg".
> 
> OTG doesn't work on this H/W, so we need to specify "host" mode.
> 

My objection is that when you say "this H/W" you mean a particular
product, but you're making this decision for all SDM845 based products
using ACPI.

I don't know if there is a Windows phone based on SDM845, but if there
is then I don't think forcing it to host would be correct.

> > > A property of the same name can be used inside
> > > ACPI tables too.  However it is missing from the SDM845's ACPI tables
> > > so we have to supply this information using Platform Device Properites
> > > instead.
> > > 
> > 
> > Afaict this would install a fall-back property, so in the case that we
> > have specified dr_mode in DT (or ACPI) that would take precedence. So
> 
> That's correct.
> 
> > the commit message should reflect that this redefines the default choice
> > to be "host", rather than "otg".
> 
> No problem.
> 
> > Which is in conflict with what's described for dr_mode in
> > Documentation/devicetree/bindings/usb/generic.txt
> 
> This implementation only affects ACPI based platforms.  When booting
> with DT, the description in that DT related document is still
> accurate.
> 

You're right, I got lost between the patches and the sprinkled if
(ACPI_HANDLE()) in the probe. This is only added for ACPI.

> > And this driver is used on a range of different Qualcomm platforms, so I
> > don't think this is SDM845 specific.
> 
> ACPI based platforms?
> 
> All the ones I've seen use the XHCI USB driver directly ("PNP0D10").
>  

MSM8998 (835) has the same controller, so this should affect those
laptops as well.

Regards,
Bjorn

> > > Signed-off-by: Lee Jones <lee.jones@linaro.org>
> > > ---
> > >  drivers/usb/dwc3/dwc3-qcom.c | 12 ++++++++++++
> > >  1 file changed, 12 insertions(+)
> > > 
> > > diff --git a/drivers/usb/dwc3/dwc3-qcom.c b/drivers/usb/dwc3/dwc3-qcom.c
> > > index 349bf549ee44..f21fdd6cdd1a 100644
> > > --- a/drivers/usb/dwc3/dwc3-qcom.c
> > > +++ b/drivers/usb/dwc3/dwc3-qcom.c
> > > @@ -468,6 +468,11 @@ static const struct acpi_device_id dwc3_qcom_acpi_match[] = {
> > >  };
> > >  MODULE_DEVICE_TABLE(acpi, dwc3_qcom_acpi_match);
> > >  
> > > +static const struct property_entry dwc3_qcom_acpi_properties[] = {
> > > +	PROPERTY_ENTRY_STRING("dr_mode", "host"),
> > > +	{}
> > > +};
> > > +
> > >  static int dwc3_qcom_probe(struct platform_device *pdev)
> > >  {
> > >  	struct device_node	*np = pdev->dev.of_node, *dwc3_np;
> > > @@ -603,6 +608,13 @@ static int dwc3_qcom_probe(struct platform_device *pdev)
> > >  			goto platform_unalloc;
> > >  		}
> > >  
> > > +		ret = platform_device_add_properties(qcom->dwc3,
> > > +						     dwc3_qcom_acpi_properties);
> > > +		if (ret < 0) {
> > > +			dev_err(&pdev->dev, "failed to add properties\n");
> > > +			goto platform_unalloc;
> > > +		}
> > > +
> > >  		ret = platform_device_add(qcom->dwc3);
> > >  		if (ret) {
> > >  			dev_err(&pdev->dev, "failed to add device\n");
> 
> -- 
> Lee Jones [?????????]
> Linaro Services Technical Lead
> Linaro.org ??? Open source software for ARM SoCs
> Follow Linaro: Facebook | Twitter | Blog

WARNING: multiple messages have this Message-ID (diff)
From: Bjorn Andersson <bjorn.andersson@linaro.org>
To: Lee Jones <lee.jones@linaro.org>
Cc: balbi@kernel.org, wsa+renesas@sang-engineering.com,
	gregkh@linuxfoundation.org, linus.walleij@linaro.org,
	linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org,
	david.brown@linaro.org, alokc@codeaurora.org,
	kramasub@codeaurora.org, linux-i2c@vger.kernel.org,
	linux-gpio@vger.kernel.org, linux-arm-msm@vger.kernel.org,
	andy.gross@linaro.org, jlhugo@gmail.com,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 7/8] usb: dwc3: qcom: Start USB in 'host mode' on the SDM845
Date: Wed, 5 Jun 2019 12:14:53 -0700	[thread overview]
Message-ID: <20190605191453.GJ4814@minitux> (raw)
In-Reply-To: <20190605083454.GO4797@dell>

On Wed 05 Jun 01:34 PDT 2019, Lee Jones wrote:

> On Wed, 05 Jun 2019, Bjorn Andersson wrote:
> 
> > On Tue 04 Jun 03:44 PDT 2019, Lee Jones wrote:
> > 
> > > When booting with Device Tree, the current default boot configuration
> > > table option, the request to boot via 'host mode' comes from the
> > > "dr_mode" property.
> > 
> > This has been the default on the MTP, but this is changing as this is
> > causing issues when connected downstream from a hub (the typical
> > development case for the primary USB port of a phone like device) and
> > more importantly we don't have support for the PMIC blocks that control
> > VBUS.
> 
> My point is not about which mode is currently chosen.  It's more about
> the capability of choosing which mode is appropriate for a given
> system via DT.
> 
> > Once these issues are resolved the dr_mode would be "otg".
> 
> OTG doesn't work on this H/W, so we need to specify "host" mode.
> 

My objection is that when you say "this H/W" you mean a particular
product, but you're making this decision for all SDM845 based products
using ACPI.

I don't know if there is a Windows phone based on SDM845, but if there
is then I don't think forcing it to host would be correct.

> > > A property of the same name can be used inside
> > > ACPI tables too.  However it is missing from the SDM845's ACPI tables
> > > so we have to supply this information using Platform Device Properites
> > > instead.
> > > 
> > 
> > Afaict this would install a fall-back property, so in the case that we
> > have specified dr_mode in DT (or ACPI) that would take precedence. So
> 
> That's correct.
> 
> > the commit message should reflect that this redefines the default choice
> > to be "host", rather than "otg".
> 
> No problem.
> 
> > Which is in conflict with what's described for dr_mode in
> > Documentation/devicetree/bindings/usb/generic.txt
> 
> This implementation only affects ACPI based platforms.  When booting
> with DT, the description in that DT related document is still
> accurate.
> 

You're right, I got lost between the patches and the sprinkled if
(ACPI_HANDLE()) in the probe. This is only added for ACPI.

> > And this driver is used on a range of different Qualcomm platforms, so I
> > don't think this is SDM845 specific.
> 
> ACPI based platforms?
> 
> All the ones I've seen use the XHCI USB driver directly ("PNP0D10").
>  

MSM8998 (835) has the same controller, so this should affect those
laptops as well.

Regards,
Bjorn

> > > Signed-off-by: Lee Jones <lee.jones@linaro.org>
> > > ---
> > >  drivers/usb/dwc3/dwc3-qcom.c | 12 ++++++++++++
> > >  1 file changed, 12 insertions(+)
> > > 
> > > diff --git a/drivers/usb/dwc3/dwc3-qcom.c b/drivers/usb/dwc3/dwc3-qcom.c
> > > index 349bf549ee44..f21fdd6cdd1a 100644
> > > --- a/drivers/usb/dwc3/dwc3-qcom.c
> > > +++ b/drivers/usb/dwc3/dwc3-qcom.c
> > > @@ -468,6 +468,11 @@ static const struct acpi_device_id dwc3_qcom_acpi_match[] = {
> > >  };
> > >  MODULE_DEVICE_TABLE(acpi, dwc3_qcom_acpi_match);
> > >  
> > > +static const struct property_entry dwc3_qcom_acpi_properties[] = {
> > > +	PROPERTY_ENTRY_STRING("dr_mode", "host"),
> > > +	{}
> > > +};
> > > +
> > >  static int dwc3_qcom_probe(struct platform_device *pdev)
> > >  {
> > >  	struct device_node	*np = pdev->dev.of_node, *dwc3_np;
> > > @@ -603,6 +608,13 @@ static int dwc3_qcom_probe(struct platform_device *pdev)
> > >  			goto platform_unalloc;
> > >  		}
> > >  
> > > +		ret = platform_device_add_properties(qcom->dwc3,
> > > +						     dwc3_qcom_acpi_properties);
> > > +		if (ret < 0) {
> > > +			dev_err(&pdev->dev, "failed to add properties\n");
> > > +			goto platform_unalloc;
> > > +		}
> > > +
> > >  		ret = platform_device_add(qcom->dwc3);
> > >  		if (ret) {
> > >  			dev_err(&pdev->dev, "failed to add device\n");
> 
> -- 
> Lee Jones [?????????]
> Linaro Services Technical Lead
> Linaro.org ??? Open source software for ARM SoCs
> Follow Linaro: Facebook | Twitter | Blog

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  parent reply	other threads:[~2019-06-05 19:15 UTC|newest]

Thread overview: 71+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-04 10:44 [PATCH 1/8] i2c: i2c-qcom-geni: Provide support for ACPI Lee Jones
2019-06-04 10:44 ` Lee Jones
2019-06-04 10:44 ` [PATCH 2/8] i2c: i2c-qcom-geni: Signify successful driver probe Lee Jones
2019-06-04 10:44   ` Lee Jones
2019-06-04 10:44   ` Lee Jones
2019-06-05  6:20   ` Bjorn Andersson
2019-06-05  6:20     ` Bjorn Andersson
2019-06-05  7:16     ` Lee Jones
2019-06-05  7:16       ` Lee Jones
2019-06-05  7:22       ` Ard Biesheuvel
2019-06-05  7:22         ` Ard Biesheuvel
2019-06-05  8:23         ` Lee Jones
2019-06-05  8:23           ` Lee Jones
2019-06-05  7:56       ` Johan Hovold
2019-06-05  7:56         ` Johan Hovold
2019-06-05  8:20         ` Lee Jones
2019-06-05  8:20           ` Lee Jones
2019-06-05  8:33           ` Johan Hovold
2019-06-05  8:33             ` Johan Hovold
2019-06-05  8:49             ` Lee Jones
2019-06-05  8:49               ` Lee Jones
2019-06-05  8:55               ` Johan Hovold
2019-06-05  8:55                 ` Johan Hovold
2019-06-05 14:18                 ` Wolfram Sang
2019-06-05 14:18                   ` Wolfram Sang
2019-06-05 18:49                   ` Lee Jones
2019-06-05 18:49                     ` Lee Jones
2019-06-12 14:54                   ` Johan Hovold
2019-06-12 14:54                     ` Johan Hovold
2019-06-04 10:44 ` [PATCH 3/8] pinctrl: msm: Add ability for drivers to supply a reserved GPIO list Lee Jones
2019-06-04 10:44   ` Lee Jones
2019-06-04 10:44 ` [PATCH 4/8] pinctrl: qcom: sdm845: Provide ACPI support Lee Jones
2019-06-04 10:44   ` Lee Jones
2019-06-05  6:17   ` Bjorn Andersson
2019-06-05  6:17     ` Bjorn Andersson
2019-06-05  7:31     ` Lee Jones
2019-06-05  7:31       ` Lee Jones
2019-06-05 19:06       ` Bjorn Andersson
2019-06-05 19:06         ` Bjorn Andersson
2019-06-05 19:35         ` Lee Jones
2019-06-05 19:35           ` Lee Jones
2019-06-04 10:44 ` [PATCH 5/8] soc: qcom: geni: Add support for ACPI Lee Jones
2019-06-04 10:44   ` Lee Jones
2019-06-04 10:44 ` [PATCH 6/8] usb: dwc3: qcom: Add support for booting with ACPI Lee Jones
2019-06-04 10:44   ` Lee Jones
2019-06-05  6:35   ` Bjorn Andersson
2019-06-05  6:35     ` Bjorn Andersson
2019-06-05  7:09     ` Lee Jones
2019-06-05  7:09       ` Lee Jones
2019-06-05  9:55       ` Lee Jones
2019-06-05  9:55         ` Lee Jones
2019-06-04 10:44 ` [PATCH 7/8] usb: dwc3: qcom: Start USB in 'host mode' on the SDM845 Lee Jones
2019-06-04 10:44   ` Lee Jones
2019-06-05  7:00   ` Bjorn Andersson
2019-06-05  7:00     ` Bjorn Andersson
2019-06-05  8:34     ` Lee Jones
2019-06-05  8:34       ` Lee Jones
2019-06-05 14:07       ` Jeffrey Hugo
2019-06-05 14:07         ` Jeffrey Hugo
2019-06-05 18:50         ` Lee Jones
2019-06-05 18:50           ` Lee Jones
2019-06-05 19:14       ` Bjorn Andersson [this message]
2019-06-05 19:14         ` Bjorn Andersson
2019-06-05 19:29         ` Lee Jones
2019-06-05 19:29           ` Lee Jones
2019-06-04 10:44 ` [PATCH 8/8] usb: dwc3: qcom: Improve error handling Lee Jones
2019-06-04 10:44   ` Lee Jones
2019-06-05  7:03   ` Bjorn Andersson
2019-06-05  7:03     ` Bjorn Andersson
2019-06-05 11:42 [PATCH 1/8] i2c: i2c-qcom-geni: Provide support for ACPI Lee Jones
2019-06-05 11:43 ` [PATCH 7/8] usb: dwc3: qcom: Start USB in 'host mode' on the SDM845 Lee Jones
2019-06-05 11:43   ` Lee Jones

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=20190605191453.GJ4814@minitux \
    --to=bjorn.andersson@linaro.org \
    --cc=alokc@codeaurora.org \
    --cc=andy.gross@linaro.org \
    --cc=balbi@kernel.org \
    --cc=david.brown@linaro.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=jlhugo@gmail.com \
    --cc=kramasub@codeaurora.org \
    --cc=lee.jones@linaro.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-i2c@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=wsa+renesas@sang-engineering.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: link
Be 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.