diff options
author | marius <marius@FreeBSD.org> | 2015-12-27 20:49:32 +0000 |
---|---|---|
committer | marius <marius@FreeBSD.org> | 2015-12-27 20:49:32 +0000 |
commit | 69fca9363a5a9c208239e82836465546ea317579 (patch) | |
tree | 254813a429fe671be6014bf7e7f961a3e2024f00 /sys/dev/usb/controller/ohci_pci.c | |
parent | 6933dd0d856ff54d6f46e0326ba843f70113b486 (diff) | |
download | FreeBSD-src-69fca9363a5a9c208239e82836465546ea317579.zip FreeBSD-src-69fca9363a5a9c208239e82836465546ea317579.tar.gz |
MFC: r285909, r285913 (partial)
- Probe UICLASS_CDC/UISUBCLASS_ABSTRACT_CONTROL_MODEL/0xff again. This
variant of Microsoft RNDIS, i. e. their unofficial version of CDC ACM,
has been disabled in r261544 (r262363 in stable/10) for resolving a
conflict with umodem(4). Eventually, in r275790 (r276243 in stable/10)
that problem was dealt with in the right way. However, r275790 failed
to put probing of RNDIS devices in question back.
- Initialize the device prior to querying it, as required by the RNDIS
specification. Otherwise already determining the MAC address may fail
rightfully.
- On detach, halt the device again.
- Use UCDC_SEND_ENCAPSULATED_{COMMAND,RESPONSE}. While these macros are
resolving to the same values as UR_{CLEAR_FEATURE,GET_STATUS}, the
former set is way more appropriate in this context.
- Report unknown - rather: unimplemented - events unconditionally and
not just in debug mode. This ensures that we'll get some hint of what
is going wrong instead of the driver silently failing.
- Deal with the Microsoft ActiveSync requirement of using an input buffer
the size of the expected reply or larger - except for variably sized
replies - when querying a device.
- Fix some pointless NULL checks, style bugs etc.
This changes allow urndis(4) to communicate with a Microsoft-certified
USB RNDIS test token.
Diffstat (limited to 'sys/dev/usb/controller/ohci_pci.c')
0 files changed, 0 insertions, 0 deletions