Lars Erdmann updated the USB host controller drivers to version 10.239. (2021/04/11)
- Hobbes Incoming
- Later at Hobbes
USBDRV is an updated USB host controller drivers: USBUHCD.SYS, USBOHCD.SYS, USBEHCD.SYS, USBD.SYS, USBRESMG.SYS and more USB drivers.
Project URL: http://trac.netlabs.org/usb
Project URL: http://trac.netlabs.org/usb
changes in 10.239:
USBAUDIO,USBAUD2:
1) support rate/num channels/bps conversion for recording to the same extent as for playback. That will finally allow old audio applications like WEPM.EXE to generate a proper WAV file in case the USB HW does not support the outlived sample rates that OS/2 applications typically provide (thanks Wim Brul)
USBAUDIO:
1) fix some trace codes (they incorrectly referred to USBAUD2.SYS) (thanks Wim Brul)
USBUHCD,USBOHD,USBEHCD:
1) back out changes done in 10.238 regarding mapping of virtual addresses for isochronous transfers. Apps pass virtual addresses that are only valid in process context. These still need to be mapped to GDT addresses.
USBRESMG:
1) remove double buffering in case (long term) locking of user buffers fail. The double buffering code was broken anyways and it turns out that locking of user buffers always succeeds.
2) add a safety check for device references in case the device has been removed or the IoRB reused for another device in order to avoid a trap if that happens.
3) add safety checks for input parameters for "SendIsoURB"
4) entirely remove clearing a stalled default pipe, a default pipe will automatically clear itself on the next control transfer and the attempt to clear a default pipe
can itself lead to a situation where the clear will never finish
USBAUDIO,USBAUD2:
1) support rate/num channels/bps conversion for recording to the same extent as for playback. That will finally allow old audio applications like WEPM.EXE to generate a proper WAV file in case the USB HW does not support the outlived sample rates that OS/2 applications typically provide (thanks Wim Brul)
USBAUDIO:
1) fix some trace codes (they incorrectly referred to USBAUD2.SYS) (thanks Wim Brul)
USBUHCD,USBOHD,USBEHCD:
1) back out changes done in 10.238 regarding mapping of virtual addresses for isochronous transfers. Apps pass virtual addresses that are only valid in process context. These still need to be mapped to GDT addresses.
USBRESMG:
1) remove double buffering in case (long term) locking of user buffers fail. The double buffering code was broken anyways and it turns out that locking of user buffers always succeeds.
2) add a safety check for device references in case the device has been removed or the IoRB reused for another device in order to avoid a trap if that happens.
3) add safety checks for input parameters for "SendIsoURB"
4) entirely remove clearing a stalled default pipe, a default pipe will automatically clear itself on the next control transfer and the attempt to clear a default pipe
can itself lead to a situation where the clear will never finish