<feed xmlns='http://www.w3.org/2005/Atom'>
<title>tinyusb.git/src/class/midi, branch dcd_ch32hs_spd</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/tinyusb.git/atom/src/class/midi?h=dcd_ch32hs_spd</id>
<link rel='self' href='http://cgit.235523.xyz/tinyusb.git/atom/src/class/midi?h=dcd_ch32hs_spd'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/'/>
<updated>2026-05-19T19:34:42Z</updated>
<entry>
<title>midi2_host: convert TX to raw FIFO mirroring midi2_device refactor</title>
<updated>2026-05-19T19:34:42Z</updated>
<author>
<name>Saulo Veríssimo</name>
<email>sauloverissimo@gmail.com</email>
</author>
<published>2026-05-19T19:34:42Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=dad8c0ae51d68fd5355a8a0de4e478e4149ec05e'/>
<id>urn:sha1:dad8c0ae51d68fd5355a8a0de4e478e4149ec05e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>midi2: convert to raw Tx FIFO for better segmentation handling, add count to packet api</title>
<updated>2026-05-18T21:07:49Z</updated>
<author>
<name>HiFiPhile</name>
<email>admin@hifiphile.com</email>
</author>
<published>2026-05-18T21:07:49Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=4baf1883c194c2c4b6fa30cc0c443ad6c83e0b19'/>
<id>urn:sha1:4baf1883c194c2c4b6fa30cc0c443ad6c83e0b19</id>
<content type='text'>
Signed-off-by: HiFiPhile &lt;admin@hifiphile.com&gt;
</content>
</entry>
<entry>
<title>midi2: boundary-aware drain in xfer_cb to keep UMP packets intact</title>
<updated>2026-05-18T14:42:34Z</updated>
<author>
<name>Saulo Veríssimo</name>
<email>sauloverissimo@gmail.com</email>
</author>
<published>2026-05-18T14:42:34Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=aaca323bd34945178e88de51acf67c4d0443a726'/>
<id>urn:sha1:aaca323bd34945178e88de51acf67c4d0443a726</id>
<content type='text'>
</content>
</entry>
<entry>
<title>midi2: drain pattern for RX FIFO</title>
<updated>2026-05-17T22:56:04Z</updated>
<author>
<name>Saulo Veríssimo</name>
<email>sauloverissimo@gmail.com</email>
</author>
<published>2026-05-17T22:56:04Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=b31e7cdbbedec4a3286700f3ec24bb63fd7c224f'/>
<id>urn:sha1:b31e7cdbbedec4a3286700f3ec24bb63fd7c224f</id>
<content type='text'>
Default RX/TX buffers to EPSIZE for both device and host. Document
drain-in-loop on ump_read; example device callback drains until
empty.
</content>
</entry>
<entry>
<title>midi2: scale device buffers with EPSIZE</title>
<updated>2026-05-17T16:07:21Z</updated>
<author>
<name>Saulo Veríssimo</name>
<email>sauloverissimo@gmail.com</email>
</author>
<published>2026-05-17T16:07:21Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=287096f7333aa10b6aaaf75337ccd3de9b06b95d'/>
<id>urn:sha1:287096f7333aa10b6aaaf75337ccd3de9b06b95d</id>
<content type='text'>
Match midi2_host pattern. Literal 256 underran HS endpoints (512B).
</content>
</entry>
<entry>
<title>midi2: per-interface weak callbacks for UMP Stream config</title>
<updated>2026-05-17T15:19:45Z</updated>
<author>
<name>Saulo Veríssimo</name>
<email>sauloverissimo@gmail.com</email>
</author>
<published>2026-05-17T15:19:45Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=4b729bfb9274af44f8edfba2134893a6889cfd03'/>
<id>urn:sha1:4b729bfb9274af44f8edfba2134893a6889cfd03</id>
<content type='text'>
Lets each instance return different NUM_GROUPS, NUM_FUNCTION_BLOCKS,
EP_NAME and PRODUCT_ID. Defaults fall back to the macros.
</content>
</entry>
<entry>
<title>midi2: peek 4 bytes for MT, restore 256 buffers</title>
<updated>2026-05-17T14:31:12Z</updated>
<author>
<name>Saulo Veríssimo</name>
<email>sauloverissimo@gmail.com</email>
</author>
<published>2026-05-17T14:31:12Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=5ac6346dd4980af75973e53dd130e7ee2a9af32d'/>
<id>urn:sha1:5ac6346dd4980af75973e53dd130e7ee2a9af32d</id>
<content type='text'>
MT is in byte 3 of the UMP word in LE memory, not byte 0. Buffers
at mps blocked RX xfer re-arm on partial packets.
</content>
</entry>
<entry>
<title>midi2: use hwfifo if supported</title>
<updated>2026-05-17T12:35:34Z</updated>
<author>
<name>HiFiPhile</name>
<email>admin@hifiphile.com</email>
</author>
<published>2026-05-17T12:35:34Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=e00ac15b7f31be28ff888a5220cbde93a61c17f4'/>
<id>urn:sha1:e00ac15b7f31be28ff888a5220cbde93a61c17f4</id>
<content type='text'>
Signed-off-by: HiFiPhile &lt;admin@hifiphile.com&gt;
</content>
</entry>
<entry>
<title>midi2: move config to class header</title>
<updated>2026-05-17T12:11:53Z</updated>
<author>
<name>HiFiPhile</name>
<email>admin@hifiphile.com</email>
</author>
<published>2026-05-17T12:11:53Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=3f209e2a00538726992ba908fe905213c78a9f6e'/>
<id>urn:sha1:3f209e2a00538726992ba908fe905213c78a9f6e</id>
<content type='text'>
Signed-off-by: HiFiPhile &lt;admin@hifiphile.com&gt;
</content>
</entry>
<entry>
<title>midi2: prevent UMP packet split across USB transfers</title>
<updated>2026-05-16T15:59:44Z</updated>
<author>
<name>Saulo Veríssimo</name>
<email>sauloverissimo@gmail.com</email>
</author>
<published>2026-05-16T15:59:44Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/tinyusb.git/commit/?id=840f3e0a628e69a2b7fb4136b2dca8ab5b350f83'/>
<id>urn:sha1:840f3e0a628e69a2b7fb4136b2dca8ab5b350f83</id>
<content type='text'>
The edpt_stream auto-flush is byte-oriented and could cut an UMP message
in half when the FIFO reached wMaxPacketSize, corrupting the peer's RX
context. Pre-flush whole packets before writing one that would cross the
boundary on both device (tud_midi2_n_ump_write) and host
(tuh_midi2_ump_write) paths. Host write also becomes packet-aware
instead of word-by-word.

Ref #3571
</content>
</entry>
</feed>
