Re: [PATCH] Revert "usb: cdns3: core: quit if it uses role switch class"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Peter,

On 24/11/2020 08:43, Peter Chen wrote:
On 20-11-23 13:50:51, Roger Quadros wrote:
This reverts commit 50642709f6590fe40afa6d22c32f23f5b842aed5.

This commit breaks hardware based role switching on TI platforms.
cdns->role_sw is always going to be non-zero as it is a pointer
to the usb_role_switch instance. Some other means needs to be used
if hardware based role switching is not required by the platform.

Signed-off-by: Roger Quadros <rogerq@xxxxxx>
---
  drivers/usb/cdns3/core.c | 4 ----
  1 file changed, 4 deletions(-)

diff --git a/drivers/usb/cdns3/core.c b/drivers/usb/cdns3/core.c
index a0f73d4711ae..4c1445cf2ad0 100644
--- a/drivers/usb/cdns3/core.c
+++ b/drivers/usb/cdns3/core.c
@@ -280,10 +280,6 @@ int cdns3_hw_role_switch(struct cdns3 *cdns)
  	enum usb_role real_role, current_role;
  	int ret = 0;
- /* Depends on role switch class */
-	if (cdns->role_sw)
-		return 0;
-
  	pm_runtime_get_sync(cdns->dev);
current_role = cdns->role;
--

Hi Roger,

I am sorry about that. Do you use role switch /sys entry, if you have
used, I prefer using "usb-role-switch" property at dts to judge if
SoC OTG signals or external signals for role switch. If you have not
used it, I prefer only setting cdns->role_sw for role switch use cases.


We use both hardware role switch and /sys entries for manually forcing
a certain role.

We do not set any "usb-role-switch" property at DTS.

Currently cdns->role_sw is being always set by driver irrespective of
any DT property, so this patch is clearly wrong and needs to be reverted.

What do you think?

cheers,
-roger
--
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux