usb: gadget: f_acm: add support for USB_CDC_REQ_SEND_BREAK
Currently the usb side setting of the USB_CDC_REQ_SEND_BREAK control is not supported. This patch adds the support. Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de> Link: https://lore.kernel.org/r/20220406192914.3302636-1-m.grzeschik@pengutronix.de Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
6a7c7df993
commit
7e824f28c9
@ -333,6 +333,8 @@ static void acm_complete_set_line_coding(struct usb_ep *ep,
|
||||
}
|
||||
}
|
||||
|
||||
static int acm_send_break(struct gserial *port, int duration);
|
||||
|
||||
static int acm_setup(struct usb_function *f, const struct usb_ctrlrequest *ctrl)
|
||||
{
|
||||
struct f_acm *acm = func_to_acm(f);
|
||||
@ -391,6 +393,14 @@ static int acm_setup(struct usb_function *f, const struct usb_ctrlrequest *ctrl)
|
||||
acm->port_handshake_bits = w_value;
|
||||
break;
|
||||
|
||||
case ((USB_DIR_OUT | USB_TYPE_CLASS | USB_RECIP_INTERFACE) << 8)
|
||||
| USB_CDC_REQ_SEND_BREAK:
|
||||
if (w_index != acm->ctrl_id)
|
||||
goto invalid;
|
||||
|
||||
acm_send_break(&acm->port, w_value);
|
||||
break;
|
||||
|
||||
default:
|
||||
invalid:
|
||||
dev_vdbg(&cdev->gadget->dev,
|
||||
|
Loading…
x
Reference in New Issue
Block a user