<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in usb</title>
    <link>http://nxr.netbsd.org/rss/src/sys/dev/usb/</link>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2005</copyright>
    <generator>Java</generator>
    
<item>
    <title>Whitespace</title>
    <description></description>
    <pubDate>Thu Sep 10 05:00:00 UTC 2026</pubDate>
    <dc:creator>skrll</dc:creator>
</item>

<item>
    <title>Fix typo (s/untill/until/) in various comments.</title>
    <description></description>
    <pubDate>Thu Sep 03 02:00:00 UTC 2026</pubDate>
    <dc:creator>gutteridge</dc:creator>
</item>

<item>
    <title>don't expose us to userland until things are fully initialized.<br/><br/>Same class of bugs that run(4) had in other USB drivers.<br/><br/>PR kern/60665: run: hot-plugging USB wifi crashes due to use of if_attach</title>
    <description></description>
    <pubDate>Sat Aug 29 01:00:00 UTC 2026</pubDate>
    <dc:creator>maya</dc:creator>
</item>

<item>
    <title>run: don't expose us to userland until things are fully initialized.<br/><br/>Fixes crash seen when hot-plugging run(4) with a running wpa_supplicant.<br/>PR kern/60665: run: hot-plugging USB wifi crashes due to use of if_attach</title>
    <description></description>
    <pubDate>Sat Aug 29 01:00:00 UTC 2026</pubDate>
    <dc:creator>maya</dc:creator>
</item>

<item>
    <title>motg: support control transfers (endpoint zero) aborts.<br/><br/>Tested by Brook Milligan.</title>
    <description></description>
    <pubDate>Fri Jul 31 15:00:00 UTC 2026</pubDate>
    <dc:creator>skrll</dc:creator>
</item>

<item>
    <title>usmsc(4): Check the return value of smsc_readreg() in smsc_uno_read_reg()<br/><br/> Fixes PR kern/58634:<br/> - Check the return value of smsc_readreg() in smsc_uno_read_reg() and return<br/>   the error to the caller.<br/> - Return 0 as the register value when error occurred just for the consistency<br/>   in smsc_uno_read_reg(). Note that it's not required because<br/>   usbnet.c::uno_read_reg() doesn't access the value if error occurred.</title>
    <description></description>
    <pubDate>Mon Jul 06 11:00:00 UTC 2026</pubDate>
    <dc:creator>msaitoh</dc:creator>
</item>

<item>
    <title>xhci: Add missing UHF_PORT_POWER support to xhci_roothub_ctrl_locked()</title>
    <description></description>
    <pubDate>Wed Jun 17 09:00:00 UTC 2026</pubDate>
    <dc:creator>msaitoh</dc:creator>
</item>

<item>
    <title>fix various typos in comments.</title>
    <description></description>
    <pubDate>Mon Jun 01 20:00:00 UTC 2026</pubDate>
    <dc:creator>andvar</dc:creator>
</item>

<item>
    <title>ehci(4): work around AMD SB600 first control transfer failure<br/><br/>Reload EHCI_ASYNCLISTADDR once after linking the first address-0 control<br/>qTD chain, for AMD SB600 quirk observed on my ASRock M3A-UCC.<br/><br/>Addresses PR/57359.</title>
    <description></description>
    <pubDate>Sat May 02 07:00:00 UTC 2026</pubDate>
    <dc:creator>tsutsui</dc:creator>
</item>

<item>
    <title>if_ure.c: support pause frames with 8153* variants</title>
    <description></description>
    <pubDate>Sat Apr 18 00:00:00 UTC 2026</pubDate>
    <dc:creator>gutteridge</dc:creator>
</item>

<item>
    <title>sort UICLASS_* defines</title>
    <description></description>
    <pubDate>Mon Mar 23 09:00:00 UTC 2026</pubDate>
    <dc:creator>jmcneill</dc:creator>
</item>

<item>
    <title>regen</title>
    <description></description>
    <pubDate>Wed Mar 18 05:00:00 UTC 2026</pubDate>
    <dc:creator>mrg</dc:creator>
</item>

<item>
    <title>add korg as a vendor, two of their synths, and an amd root hub.</title>
    <description></description>
    <pubDate>Wed Mar 18 05:00:00 UTC 2026</pubDate>
    <dc:creator>mrg</dc:creator>
</item>

<item>
    <title>Allocate a cache line per ehci_sitd_t and drop the use of<br/>USBMALLOC_COHERENT in ehci_alloc_sitd to match the comment.<br/><br/>Spotted by jmcneill@</title>
    <description></description>
    <pubDate>Tue Mar 03 13:00:00 UTC 2026</pubDate>
    <dc:creator>skrll</dc:creator>
</item>

<item>
    <title>fix various typos in comments.</title>
    <description></description>
    <pubDate>Mon Feb 23 20:00:00 UTC 2026</pubDate>
    <dc:creator>andvar</dc:creator>
</item>

<item>
    <title>usbnet(9): Tighten tx path.<br/><br/>1. Verify, don't just assert, that the packet length is below the<br/>   buffer size.  Even if all the callers enforce the interface's MTU,<br/>   I can't prove that the usbnet(9) tx buffer size is an upper bound<br/>   enforced on the interface's MTU.<br/><br/>   We can remove the check later if we do enforce that upper bound at<br/>   some point, which would probably be worth doing anyway since the<br/>   MTU is checked earlier in the tx path.<br/><br/>2. Assert, don't check, that c-&gt;unc_xfer is nonnull.  We can only<br/>   reach the tx path if we cross if_init=usbnet_init_rx_tx, and that<br/>   (via usbnet_tx_list_init) is guaranteed to fail and back out<br/>   unless all of the usbnet_chain unc_xfers get initialized.<br/><br/>3. If we can't fit the packet into a buffer, drop it -- don't leave<br/>   it in the queue to try again when it still won't fit in the<br/>   buffer.<br/><br/>4. If the transfer for this packet fails, drop it -- don't leave it<br/>   in the queue to try again just in case it might work better the<br/>   next time.<br/><br/>PR kern/59940: usbnet(9): uno_tx_prepare buffer overrun audit<br/>PR kern/59943: usbnet(9) keeps failed packet in queue to retry indefinitely</title>
    <description></description>
    <pubDate>Sun Feb 01 03:00:00 UTC 2026</pubDate>
    <dc:creator>riastradh</dc:creator>
</item>

<item>
    <title>ncm(4): Verify payload _and header_ fits in buffer.<br/><br/>usbnet(9) only guarantees payload fits in buffer, doesn't know<br/>anything about the ncm(4) header overhead.<br/><br/>PR kern/59940: usbnet(9): uno_tx_prepare buffer overrun audit</title>
    <description></description>
    <pubDate>Mon Jan 26 01:00:00 UTC 2026</pubDate>
    <dc:creator>riastradh</dc:creator>
</item>

<item>
    <title>Keep cur,next and queued values in sync, even when dying.</title>
    <description></description>
    <pubDate>Sat Jan 10 09:00:00 UTC 2026</pubDate>
    <dc:creator>mlelstv</dc:creator>
</item>

<item>
    <title>Also use atomic operation to store pipe pointers, not just to clear them.<br/><br/>Probably fixes PR 56194.</title>
    <description></description>
    <pubDate>Sat Jan 10 08:00:00 UTC 2026</pubDate>
    <dc:creator>mlelstv</dc:creator>
</item>

<item>
    <title>urndis(4): Match more interface ids.<br/><br/>There are some others we should consider too, based on what OpenBSD,<br/>FreeBSD, and Linux match, but I haven't tested with these devices:<br/><br/>   class           subclass                        protocol<br/>1. 0x02 (CDC)      0x02 (abstract control model)   0xff (? rndis?)<br/>2. 0xef (misc)     0x01 (sync)                     0x01 (active)<br/>3. 0xef (misc)     0x04 (rndis)                    0x03 (wimax)<br/>4. 0xef (misc)     0x04 (rndis)                    0x04 (wwan)<br/><br/>Note: FreeBSD uses `UIPROTO_RNDIS' for (3) even though the USB-IF<br/>registry lists class 0xef, subclass 0x04, protocol 0x04 as `RNDIS<br/>over WiMAX'; likewise `UIPROTO_ACTIVESYNC' for (4) even though it's<br/>listed as `RNDIS over WWAN'.  My guess is that for class 0xef<br/>subclass 0x04, _any_ protocol will really be RNDIS, and it was a<br/>mistake for FreeBSD to use those protocol numbers (which context<br/>suggests were supposed to apply to different subclasses).<br/><br/>PR kern/59872: urndis(4): missing support for some devices</title>
    <description></description>
    <pubDate>Thu Jan 01 00:00:00 UTC 2026</pubDate>
    <dc:creator>riastradh</dc:creator>
</item>
</channel></rss>

