diff options
author | Ahmad Fatoum <ahmad@a3f.at> | 2019-09-20 09:58:13 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2019-10-14 12:52:11 +0200 |
commit | a805a3cab4e3ef5b8673dd4e4a2fe2f7480a960d (patch) | |
tree | 36f41478c3cec0f7bf90d58ee13a377c46223a3f /drivers/usb | |
parent | 55397b9ebe3a21a3aeb6a98131c0991bff0f7123 (diff) | |
download | barebox-a805a3cab4e3ef5b8673dd4e4a2fe2f7480a960d.tar.gz barebox-a805a3cab4e3ef5b8673dd4e4a2fe2f7480a960d.tar.xz |
USB: gadget: ACM: don't announce V.25ter support
barebox currently announces support for ITU V.25ter AT commands, but
doesn't handle them specially when they arrive. Instead they are passed
as is to the sole barebox input console, where it may interfere with
valid user input.
This is especially annoying as ModemManager probes ttyACM devices that
announce their AT command support. So even when not using the ttyACM
device at all, the other UART ports are affected.
Fix this by ceasing to announce USB_CDC_ACM_PROTO_AT_V25TER as function
protocol. After applying this patch, I can't see any spurious AT or ~x~
symbols on the console anymore.
Cc: <bst@pengutronix.de>
Cc: <jlu@pengutronix.de>
Signed-off-by: Ahmad Fatoum <ahmad@a3f.at>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/usb')
-rw-r--r-- | drivers/usb/gadget/f_acm.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/usb/gadget/f_acm.c b/drivers/usb/gadget/f_acm.c index cba59b1585..42a2b03ad2 100644 --- a/drivers/usb/gadget/f_acm.c +++ b/drivers/usb/gadget/f_acm.c @@ -104,7 +104,7 @@ acm_iad_descriptor = { .bInterfaceCount = 2, // control + data .bFunctionClass = USB_CLASS_COMM, .bFunctionSubClass = USB_CDC_SUBCLASS_ACM, - .bFunctionProtocol = USB_CDC_ACM_PROTO_AT_V25TER, + .bFunctionProtocol = USB_CDC_PROTO_NONE, /* .iFunction = DYNAMIC */ }; @@ -116,7 +116,7 @@ static struct usb_interface_descriptor acm_control_interface_desc = { .bNumEndpoints = 1, .bInterfaceClass = USB_CLASS_COMM, .bInterfaceSubClass = USB_CDC_SUBCLASS_ACM, - .bInterfaceProtocol = USB_CDC_ACM_PROTO_AT_V25TER, + .bInterfaceProtocol = USB_CDC_PROTO_NONE, /* .iInterface = DYNAMIC */ }; |