lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-id: <574EA5A6.3090102@samsung.com>
Date:	Wed, 01 Jun 2016 11:06:46 +0200
From:	Krzysztof Kozlowski <k.kozlowski@...sung.com>
To:	Stephen Boyd <stephen.boyd@...aro.org>
Cc:	Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
	Bartlomiej Zolnierkiewicz <b.zolnierkie@...sung.com>,
	hzpeterchen@...il.com, Ulf Hansson <ulf.hansson@...aro.org>,
	Sebastian Reichel <sre@...nel.org>,
	Dmitry Eremin-Solenikov <dbaryshkov@...il.com>,
	David Woodhouse <dwmw2@...radead.org>,
	Javier Martinez Canillas <javier@....samsung.com>,
	linux-kernel@...r.kernel.org, linux-mmc@...r.kernel.org,
	linux-pm@...r.kernel.or, Alan Stern <stern@...land.harvard.edu>,
	linux-usb@...r.kernel.org, Rob Herring <robh+dt@...nel.org>,
	Pawel Moll <pawel.moll@....com>,
	Mark Rutland <mark.rutland@....com>,
	Ian Campbell <ijc+devicetree@...lion.org.uk>,
	Kumar Gala <galak@...eaurora.org>,
	Kukjin Kim <kgene@...nel.org>, devicetree@...r.kernel.org,
	linux-arm-kernel@...ts.infradead.org,
	linux-samsung-soc@...r.kernel.org
Subject: Re: [PATCH v3 09/12] EXAMPLE CODE: usb: port: Parse pwrseq phandle
 from Device Tree

On 06/01/2016 10:57 AM, Stephen Boyd wrote:
> Quoting Krzysztof Kozlowski (2016-06-01 01:02:18)
>> Parse usb-pwrseq property from Device Tree to get the phandle to pwrseq
>> device.  The pwrseq device will be used by USB hub to cycle the power
>> before activating ports.
>>
>> Signed-off-by: Krzysztof Kozlowski <k.kozlowski@...sung.com>
> 
> Drive by review comment.
> 
> I was hoping this would help me with a problem I'm having where I have a
> hub (smsc4604) that needs to be taken out of reset before my HSIC
> controller sends a USB reset to it, but it seems this is more about
> doing some sort of power on sequence after enumeration?

This example is not finished but from what you wrote, it might suit your
needs as well. The power sequence is done before enumeration because
without it, the device won't enumerate.

The exact power sequence for USB devices has to be still developed.
Comments are welcomed.

>> diff --git a/drivers/usb/core/port.c b/drivers/usb/core/port.c
>> index 460c855be0d0..89b9bdfc7061 100644
>> --- a/drivers/usb/core/port.c
>> +++ b/drivers/usb/core/port.c
>> @@ -18,6 +18,8 @@
>>  
>>  #include <linux/slab.h>
>>  #include <linux/pm_qos.h>
>> +#include <linux/pwrseq.h>
>> +#include <linux/usb/of.h>
>>  
>>  #include "hub.h"
>>  
>> @@ -526,6 +528,14 @@ int usb_hub_create_port_device(struct usb_hub *hub, int port1)
>>                 return retval;
>>         }
>>  
>> +       port_dev->dev.of_node = usb_of_get_child_node(hdev->dev.parent->of_node,
>> +                                                     port1);
>> +       port_dev->pwrseq = pwrseq_alloc(&port_dev->dev, "usb-pwrseq");
>> +       if (IS_ERR(port_dev->pwrseq)) {
>> +               device_unregister(&port_dev->dev);
>> +               return PTR_ERR(port_dev->pwrseq);
> 
> Are we certain that port_dev hasn't been freed at this point? We just
> called device_unregister() on it, so it seems safer to save away the
> return value before calling device_unregister() here.

Right, good point. Thanks for feedback.

Best regards,
Krzysztof

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ