micropython/docs/library
Angus Gratton d11ca092f7 shared/tinyusb: Fix dynamic USB control callbacks for wLength==0.
In the case where an OUT control transfer triggers with wLength==0 (i.e.
all data sent in the SETUP phase, and no additional data phase) the
callbacks were previously implemented to return b"" (i.e. an empty buffer
for the data phase).

However this didn't actually work as intended because b"" can't provide a
RW buffer (needed for OUT transfers with a data phase to write data into),
so actually the endpoint would stall.

The symptom was often that the device process the request (if processing
it in the SETUP phase when all information was already available), but the
host sees the endpoint stall and eventually returns an error.

This commit changes the behaviour so returning True from the SETUP phase of
a control transfer queues a zero length status response.

Signed-off-by: Angus Gratton <angus@redyak.com.au>
2024-04-17 12:39:47 +10:00
..
_thread.rst
array.rst
asyncio.rst
binascii.rst
bluetooth.rst docs/library/bluetooth: Add note that ESP32 supports pairing/bonding. 2024-02-29 14:33:22 +11:00
btree.rst
builtins.rst
cmath.rst
collections.rst docs/library/collections: Update deque docs to describe new features. 2024-03-19 10:09:11 +11:00
cryptolib.rst
deflate.rst
errno.rst
esp.rst
esp32.rst docs/library: Move vfs functions and classes from os to vfs module docs. 2024-02-07 13:25:09 +11:00
espnow.rst
framebuf.rst
gc.rst
gzip.rst
hashlib.rst
heapq.rst
index.rst docs/library/openamp: Document the new openamp module. 2024-03-15 18:11:28 +11:00
io.rst
json.rst
lcd160cr.rst
machine.ADC.rst
machine.ADCBlock.rst all: Prune trailing whitespace. 2024-03-07 16:25:17 +11:00
machine.ADCWiPy.rst
machine.I2C.rst
machine.I2S.rst
machine.PWM.rst all: Prune trailing whitespace. 2024-03-07 16:25:17 +11:00
machine.Pin.rst
machine.RTC.rst docs/library/machine.RTC: Add docs for RTC.memory() method. 2024-03-26 17:59:06 +11:00
machine.SD.rst docs: Use vfs module instead of os. 2024-02-07 13:25:10 +11:00
machine.SDCard.rst docs: Use vfs module instead of os. 2024-02-07 13:25:10 +11:00
machine.SPI.rst
machine.Signal.rst
machine.Timer.rst
machine.TimerWiPy.rst
machine.UART.rst
machine.USBDevice.rst shared/tinyusb: Fix dynamic USB control callbacks for wLength==0. 2024-04-17 12:39:47 +10:00
machine.WDT.rst
machine.rst extmod/machine_usb_device: Add support for Python USB devices. 2024-03-15 14:22:11 +11:00
math.rst
micropython.rst
neopixel.rst
network.LAN.rst
network.WIZNET5K.rst
network.WLAN.rst
network.WLANWiPy.rst
network.rst
openamp.rst docs/library/openamp: Document the new openamp module. 2024-03-15 18:11:28 +11:00
os.rst docs/library: Move vfs functions and classes from os to vfs module docs. 2024-02-07 13:25:09 +11:00
platform.rst
pyb.ADC.rst
pyb.Accel.rst
pyb.CAN.rst
pyb.DAC.rst
pyb.ExtInt.rst
pyb.Flash.rst docs/library: Move vfs functions and classes from os to vfs module docs. 2024-02-07 13:25:09 +11:00
pyb.I2C.rst
pyb.LCD.rst
pyb.LED.rst
pyb.Pin.rst
pyb.RTC.rst
pyb.SPI.rst
pyb.Servo.rst
pyb.Switch.rst
pyb.Timer.rst
pyb.UART.rst
pyb.USB_HID.rst
pyb.USB_VCP.rst
pyb.rst docs: Use vfs module instead of os. 2024-02-07 13:25:10 +11:00
random.rst
re.rst
rp2.DMA.rst docs/library/rp2.DMA: Add documentation for rp2 DMA support. 2024-03-19 17:10:54 +11:00
rp2.Flash.rst docs/library: Move vfs functions and classes from os to vfs module docs. 2024-02-07 13:25:09 +11:00
rp2.PIO.rst
rp2.StateMachine.rst docs/library/rp2.DMA: Add documentation for rp2 DMA support. 2024-03-19 17:10:54 +11:00
rp2.rst docs/library/rp2.DMA: Add documentation for rp2 DMA support. 2024-03-19 17:10:54 +11:00
select.rst
socket.rst
ssl.rst docs/library/ssl: Change wrap_socket args keyfile/certfile to key/cert. 2024-02-05 13:05:29 +11:00
stm.rst
struct.rst py/binary: Support half-float 'e' format in struct pack/unpack. 2024-03-20 14:13:49 +11:00
sys.rst docs/library/sys.rst: Document implementation.version.releaselevel. 2024-02-07 15:51:25 +11:00
time.rst
uctypes.rst
vfs.rst docs/library: Move vfs functions and classes from os to vfs module docs. 2024-02-07 13:25:09 +11:00
wipy.rst
wm8960.rst
zephyr.DiskAccess.rst docs/library: Move vfs functions and classes from os to vfs module docs. 2024-02-07 13:25:09 +11:00
zephyr.FlashArea.rst docs/library: Move vfs functions and classes from os to vfs module docs. 2024-02-07 13:25:09 +11:00
zephyr.rst
zephyr.zsensor.rst
zlib.rst