<feed xmlns='http://www.w3.org/2005/Atom'>
<title>u-boot.git/drivers/usb/host/usb-uclass.c, branch v2023.04</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/u-boot.git/atom/drivers/usb/host/usb-uclass.c?h=v2023.04</id>
<link rel='self' href='http://cgit.235523.xyz/u-boot.git/atom/drivers/usb/host/usb-uclass.c?h=v2023.04'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/'/>
<updated>2023-01-23T23:11:40Z</updated>
<entry>
<title>dm: usb: Mark the device name as alloced when binding</title>
<updated>2023-01-23T23:11:40Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2023-01-17T17:47:35Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=ecdf3ab01f66585d0cb630b3ec28981dd4e7adff'/>
<id>urn:sha1:ecdf3ab01f66585d0cb630b3ec28981dd4e7adff</id>
<content type='text'>
Since usb_find_and_bind_driver() allocates the device name it should tell
driver about that, to avoid memory leaks. Fix this.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>usb: onboard-hub: add driver to manage onboard hub supplies</title>
<updated>2023-01-12T15:19:53Z</updated>
<author>
<name>Fabrice Gasnier</name>
<email>fabrice.gasnier@foss.st.com</email>
</author>
<published>2022-12-12T10:44:35Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=ba1fa2abde88257c29ee4d8f3884ab6657a3193a'/>
<id>urn:sha1:ba1fa2abde88257c29ee4d8f3884ab6657a3193a</id>
<content type='text'>
The main issue the driver addresses is that a USB hub needs to be
powered before it can be discovered. This is often solved by using
"regulator-always-on".

This driver is inspired by the Linux v6.1 driver. It only enables (or
disables) the hub vdd (3v3) supply, so it can be enumerated.
Scanning of the device tree is done in a similar manner to the sandbox,
by the usb-uclass. DT part looks like:

&amp;usbh_ehci {
	...
	#address-cells = &lt;1&gt;;
	#size-cells = &lt;0&gt;;
	hub@1 {
		compatible = "usb424,2514";
		reg = &lt;1&gt;;
		vdd-supply = &lt;&amp;v3v3&gt;;
	};
};

When the bus gets probed, the driver is automatically probed/removed from
the bus tree, as an example on stm32:
STM32MP&gt; usb start
starting USB...
STM32MP&gt; dm tree
 Class     Index  Probed  Driver                Name
-----------------------------------------------------------
 usb           0  [ + ]   ehci_generic          |   |-- usb@5800d000
 usb_hub       0  [ + ]   usb_onboard_hub       |   |   `-- hub@1
 usb_hub       1  [ + ]   usb_hub               |   |       `-- usb_hub

STM32MP&gt; usb tree
USB device tree:
  1  Hub (480 Mb/s, 0mA)
  |  u-boot EHCI Host Controller
  |
  +-2  Hub (480 Mb/s, 2mA)

Signed-off-by: Fabrice Gasnier &lt;fabrice.gasnier@foss.st.com&gt;
Reviewed-by: Patrice Chotard &lt;patrice.chotard@foss.st.com&gt;
Reviewed-by: Patrick Delaunay &lt;patrick.delaunay@foss.st.com&gt;
</content>
</entry>
<entry>
<title>usb: eth: Remove non-DM_ETH code</title>
<updated>2022-12-07T21:04:17Z</updated>
<author>
<name>Tom Rini</name>
<email>trini@konsulko.com</email>
</author>
<published>2022-11-27T15:25:33Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=b8daa6e9ee079fea7f9772e40b56147274c5726b'/>
<id>urn:sha1:b8daa6e9ee079fea7f9772e40b56147274c5726b</id>
<content type='text'>
As DM_ETH is required for all network drivers, it's now safe to remove
the non-DM_ETH support code fro usb_ether itself.

Signed-off-by: Tom Rini &lt;trini@konsulko.com&gt;
</content>
</entry>
<entry>
<title>usb: Expand buffer size in usb_find_and_bind_driver()</title>
<updated>2022-11-27T11:04:36Z</updated>
<author>
<name>Marek Vasut</name>
<email>marex@denx.de</email>
</author>
<published>2022-11-26T12:57:53Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=55a95f8f58cf5c884edfe8714bf681cd17ef7242'/>
<id>urn:sha1:55a95f8f58cf5c884edfe8714bf681cd17ef7242</id>
<content type='text'>
The "generic_bus_%x_dev_%x" string which is printed into this buffer
can be up to 34 characters long ("generic_bus_12345678_dev_12345678").
The buffer would be clipped by snprintf() if both %x were at maximum
range. Make sure the buffer is long enough to cover such possibility.

Signed-off-by: Marek Vasut &lt;marex@denx.de&gt;
Reviewed-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>usb: Use the first available device for ehci_gadget</title>
<updated>2022-01-25T18:47:07Z</updated>
<author>
<name>Sean Anderson</name>
<email>sean.anderson@seco.com</email>
</author>
<published>2021-11-05T16:52:55Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=821ca608d81640f1ed10fc5540eb8df18dfa6679'/>
<id>urn:sha1:821ca608d81640f1ed10fc5540eb8df18dfa6679</id>
<content type='text'>
For whatever reason, usb_setup_ehci_gadget removes and probes USB device
0. However, not all systems have a device 0. Use the first device
instead.

The device probed should probably have something to do with the
controller (as specified by e.g. ums &lt;controller&gt; or fastboot
&lt;controller&gt;). In fact, I find it odd that we probe the USB device in
the first place, because this is just to set up the gadget itself.
Presumably, the controller should be probed by usb_gadget_initialize
somehow.

Signed-off-by: Sean Anderson &lt;sean.anderson@seco.com&gt;
Reviewed-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>dm: define LOG_CATEGORY for all uclass</title>
<updated>2021-07-06T16:38:03Z</updated>
<author>
<name>Patrick Delaunay</name>
<email>patrick.delaunay@foss.st.com</email>
</author>
<published>2021-04-27T09:02:19Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=b953ec2bca1ebe059366e870eb4bec5e7af9c36b'/>
<id>urn:sha1:b953ec2bca1ebe059366e870eb4bec5e7af9c36b</id>
<content type='text'>
Define LOG_CATEGORY for all uclass to allow filtering with
log command.

Signed-off-by: Patrick Delaunay &lt;patrick.delaunay@foss.st.com&gt;
Reviewed-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>dm: core: Use dev_has_ofnode() instead of dev_of_valid()</title>
<updated>2021-01-05T19:24:41Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2020-12-19T17:40:13Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=7d14ee443ca674314e0fe5c3e25f48e52a8fd5ee'/>
<id>urn:sha1:7d14ee443ca674314e0fe5c3e25f48e52a8fd5ee</id>
<content type='text'>
We have two functions which do the same thing. Standardise on
dev_has_ofnode() since there is no such thing as an 'invalid' ofnode in
normal operation: it is either null or missing.

Also move the functions into one place.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
Reviewed-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>dm: core: Rename dev_has_of_node() to dev_has_ofnode()</title>
<updated>2021-01-05T19:24:41Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2020-12-19T17:40:12Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=c23405f8176c8d32d36ad992eb203ec87c4f5507'/>
<id>urn:sha1:c23405f8176c8d32d36ad992eb203ec87c4f5507</id>
<content type='text'>
We use 'ofnode' rather than 'of_node' in U-Boot. Rename this function to
fit.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>dm: Use access methods for dev/uclass private data</title>
<updated>2021-01-05T19:24:40Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2020-12-23T02:30:28Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=0fd3d91152df5bb6c5f7b9ee68f01a9a1c9a875d'/>
<id>urn:sha1:0fd3d91152df5bb6c5f7b9ee68f01a9a1c9a875d</id>
<content type='text'>
Most drivers use these access methods but a few do not. Update them.

In some cases the access is not permitted, so mark those with a FIXME tag
for the maintainer to check.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
Acked-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Acked-by: Pratyush Yadav &lt;p.yadav@ti.com&gt;
</content>
</entry>
<entry>
<title>dm: Drop the unused arg in uclass_find_device_by_seq()</title>
<updated>2020-12-19T03:32:21Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2020-12-17T04:20:29Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=991759196faa74b2e7df1cb8e87820f4ec7285f8'/>
<id>urn:sha1:991759196faa74b2e7df1cb8e87820f4ec7285f8</id>
<content type='text'>
Now that there is only one sequence number (rather than both requested and
assigned ones) we can simplify this function. Also update its caller to
simplify the logic.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
</feed>
