On Fri, 5 Feb 2021 20:12:06 +0100 Pali Rohár <p...@kernel.org> wrote:
> If we do not set FIFO buffer address and size for some endpoint which > is in use then default address 0x0 would be used which is in conflict > with FIFO buffer for endpoint 0 which is at fixed address 0x0. > Sharing address space between more endpoint cause data loss and > unexpected errors. > > This patch is fixing transmission of characters over usbtty serial > console and allow using of usbtty for debugging purposes on Nokia > N900. Reviewed-by: Lukasz Majewski <lu...@denx.de> > > Signed-off-by: Pali Rohár <p...@kernel.org> > --- > drivers/usb/musb/musb_udc.c | 14 ++------------ > 1 file changed, 2 insertions(+), 12 deletions(-) > > diff --git a/drivers/usb/musb/musb_udc.c b/drivers/usb/musb/musb_udc.c > index 50d8bc319c..ea1284850e 100644 > --- a/drivers/usb/musb/musb_udc.c > +++ b/drivers/usb/musb/musb_udc.c > @@ -875,18 +875,8 @@ void udc_setup_ep(struct usb_device_instance > *device, unsigned int id, ep0_endpoint->endpoint_address = 0xff; > ep0_urb = usbd_alloc_urb(device, endpoint); > } else if (MAX_ENDPOINT >= id) { > - int ep_addr; > - > - /* Check the direction */ > - ep_addr = endpoint->endpoint_address; > - if (USB_DIR_IN == (ep_addr & USB_ENDPOINT_DIR_MASK)) > { > - /* IN */ > - epinfo[(id * 2) + 1].epsize = > endpoint->tx_packetSize; > - } else { > - /* OUT */ > - epinfo[id * 2].epsize = > endpoint->rcv_packetSize; > - } > - > + epinfo[(id * 2) + 0].epsize = > endpoint->rcv_packetSize; > + epinfo[(id * 2) + 1].epsize = > endpoint->tx_packetSize; musb_configure_ep(&epinfo[0], > ARRAY_SIZE(epinfo)); } else { > if (debug_level > 0) Best regards, Lukasz Majewski -- DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lu...@denx.de
pgplw0wBEGRFp.pgp
Description: OpenPGP digital signature