RE: iMX25PDK - Problems with USB gadget

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> -----Mensaje original-----
> De: linux-usb-owner@xxxxxxxxxxxxxxx [mailto:linux-usb-
> owner@xxxxxxxxxxxxxxx] En nombre de Chen Peter-B29397
> Enviado el: viernes, 04 de mayo de 2012 6:29
> Para: Fernandez Gonzalo; linux-usb@xxxxxxxxxxxxxxx;
> laurent.pinchart@xxxxxxxxxxxxxxxx
> Asunto: RE: iMX25PDK - Problems with USB gadget
> 
> >
> >
> > If I supress these 3 lines, enumeration doesn't start until I open
> > /dev/video0 from my test app. This looks to be running OK but I
don't
> > know the collateral effects of this change. Could you take a look at
> > this??
> >
> >
> Should be ok for g_webcam, as the usbcmd.rs will be set after app
loads.
> But it is not ok for gadget drivers who does not do dp pullup during
> the initialization or runtime.
> 



OK. 
And Peter, I apologize because you already pointed the solution and I
didn't realize about it (I only implemented the second step). I didn't
read you carefully.
>>>>>> 1. Does not set USB_CMD_RUN_STOP at dr_controller_run
>>>>>> 2. Change fsl_pullup:





> By the way, how do you fix below error, where you have handled below
> Video Class Command?
> 
> > > <composite> => composite_setup_complete
> > > g_webcam gadget: setup complete --> -108, 0/0
> > > g_webcam gadget: non-core control reqa1.87 v0100 i0001 l26
> > >  [fsl_udc_irq]  Packet int
> > > [fsl_udc_irq]  Packet int
> > > g_webcam gadget: non-core control reqa1.81 v0100 i0001 l26
> 

I'm using a test app from Laurent Pinchart; see here
http://git.ideasonboard.org/uvc/

Attached you can find a log about the enumeration process. The error
doesn't exist now in the device side, but in the host side dmesg shows:

[  184.912107] usb 2-4: new high speed USB device using ehci_hcd and
address 5
[  186.176426] Linux video capture interface: v2.00
[  186.224058] uvcvideo: Found UVC 1.00 device Webcam gadget (1d6b:0102)
[  191.444287] uvcvideo: Failed to set UVC probe control : -110 (exp.
26).
[  191.568325] input: Webcam gadget as
/devices/pci0000:00/0000:00:1d.7/usb2/2-4/2-4:1.0/input/input11
[  191.568770] usbcore: registered new interface driver uvcvideo
[  191.568777] USB Video Class driver (v1.0.0)


I began my testing on a iMX53QSB with a FSL-2.6.35-x.y.z (I don't
remember exactly which BSP, but it was one of the firsts for the QSBs),
with the ARC-OTG USB driver. With some minor twicks, the app from
Laurent was working fine. The only problem I found was trying to setup
High Bandwith isochronous transfers; unfortunately, I didn't solve this
issue. Using 1 packet/uframe there was no problem at all, but I needed
more transfer rate. Freescale technical support told me that High
Bandwith isochronous transfers were not supported in the ARC-OTG driver,
so here I am now, trying to get this sorted with fsl_udc_core :-).

Gonzalo.
root@freescale ~$ 
root@freescale ~$ 
root@freescale ~$ 
root@freescale ~$ 
root@freescale ~$ /gonzalo/wcam
<composite.c> => uvc_v4l2_open
<composite.c> => uvc_function_connect
<composite.c> => usb_function_activate
DEACTIVATIONS antes = 1
usb_gadget_connect
<FSL-udc-core> => fsl_pullup
>> [fsl_pullup]:  PULLUP ON !!!!<FSL-udc-core> => suspend_irq
<composite.c> => composite_suspend
g_webcam gadget: suspend
usb_gadget_vbus_draw
<FSL-udc-core> => fsl_vbus_draw
DEACTIVATIONS despues = 0
<composite.c> => uvc_v4l2_open
open succeeded, file descriptor = 3
device is fsl-usb2-udc on bus gadget
<FSL-udc-core> => bus_resume
<composite.c> => composite_resume
g_webcam gadget: resume
usb_gadget_vbus_draw
<FSL-udc-core> => fsl_vbus_draw
[fsl_udc_irq]  reset int
<FSL-udc-core> => reset_irq
<FSL-udc-core> => bus_resume
<composite.c> => composite_resume
g_webcam gadget: resume
usb_gadget_vbus_draw
<FSL-udc-core> => fsl_vbus_draw
<FSL-udc-core> => port_change_irq
<FSL-udc-core> => portscx_device_speed
[fsl_udc_irq]  Packet int
<FSL-udc-core> => setup_received_irq
<FSL-udc-core> => udc_reset_ep_queue
<FSL-udc-core> => nuke
<FSL-udc-core> => fsl_ep_fifo_flush
<FSL-udc-core> => setup_received_irq: Requests handled by gadget (DATA)
<composite.c> => count_configs
gadget_is_dualspeed
gadget_is_superspeed
<FSL-udc-core> => fsl_ep_queue
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 18 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
[fsl_udc_irq]  Packet int
<FSL-udc-core> => dtd_complete_irq
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
<composite.c> => composite_setup_complete
<FSL-udc-core> => ep0_prime_status
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 0 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
[fsl_udc_irq]  Packet int
<FSL-udc-core> => dtd_complete_irq
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
<FSL-udc-core> => port_change_irq
<FSL-udc-core> => portscx_device_speed
[fsl_udc_irq]  reset int
<FSL-udc-core> => reset_irq
[fsl_udc_irq]  Packet int
<FSL-udc-core> => setup_received_irq
<FSL-udc-core> => udc_reset_ep_queue
<FSL-udc-core> => nuke
<FSL-udc-core> => fsl_ep_fifo_flush
<FSL-udc-core> => ch9setaddress
<FSL-udc-core> => ep0_prime_status
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 0 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
[fsl_udc_irq]  Packet int
<FSL-udc-core> => dtd_complete_irq
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
[fsl_udc_irq]  Packet int
<FSL-udc-core> => setup_received_irq
<FSL-udc-core> => udc_reset_ep_queue
<FSL-udc-core> => nuke
<FSL-udc-core> => fsl_ep_fifo_flush
<FSL-udc-core> => setup_received_irq: Requests handled by gadget (DATA)
<composite.c> => count_configs
gadget_is_dualspeed
gadget_is_superspeed
<FSL-udc-core> => fsl_ep_queue
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 18 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
[fsl_udc_irq]  Packet int
<FSL-udc-core> => dtd_complete_irq
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
<composite.c> => composite_setup_complete
<FSL-udc-core> => ep0_prime_status
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 0 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
[fsl_udc_irq]  Packet int
<FSL-udc-core> => setup_received_irq
<FSL-udc-core> => udc_reset_ep_queue
<FSL-udc-core> => nuke
<FSL-udc-core> => fsl_ep_fifo_flush
<FSL-udc-core> => done
<FSL-udc-core> => setup_received_irq: Requests handled by gadget (DATA)
<composite.c> => config_desc
gadget_is_dualspeed
<composite.c> => config_buf
<composite.c> => usb_descriptor_fillbuf
<FSL-udc-core> => fsl_ep_queue
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 9 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
<FSL-udc-core> => dtd_complete_irq
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
<composite.c> => composite_setup_complete
<FSL-udc-core> => ep0_prime_status
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 0 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
[fsl_udc_irq]  Packet int
<FSL-udc-core> => setup_received_irq
<FSL-udc-core> => udc_reset_ep_queue
<FSL-udc-core> => nuke
<FSL-udc-core> => fsl_ep_fifo_flush
<FSL-udc-core> => setup_received_irq: Requests handled by gadget (DATA)
<composite.c> => config_desc
gadget_is_dualspeed
<composite.c> => config_buf
<composite.c> => usb_descriptor_fillbuf
<FSL-udc-core> => fsl_ep_queue
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 309 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
<FSL-udc-core> => dtd_complete_irq
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
<composite.c> => composite_setup_complete
<FSL-udc-core> => ep0_prime_status
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 0 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
[fsl_udc_irq]  Packet int
<FSL-udc-core> => setup_received_irq
<FSL-udc-core> => udc_reset_ep_queue
<FSL-udc-core> => nuke
<FSL-udc-core> => fsl_ep_fifo_flush
<FSL-udc-core> => setup_received_irq: Requests handled by gadget (DATA)
<composite.c> => get_string
<composite.c> => collect_langs
<composite.c> => collect_langs
<FSL-udc-core> => fsl_ep_queue
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 4 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
<FSL-udc-core> => dtd_complete_irq
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
<composite.c> => composite_setup_complete
<FSL-udc-core> => ep0_prime_status
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 0 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
[fsl_udc_irq]  Packet int
<FSL-udc-core> => setup_received_irq
<FSL-udc-core> => udc_reset_ep_queue
<FSL-udc-core> => nuke
<FSL-udc-core> => fsl_ep_fifo_flush
<FSL-udc-core> => setup_received_irq: Requests handled by gadget (DATA)
<composite.c> => get_string
<composite.c> => lookup_string
<composite.c> => usb_gadget_get_string
<FSL-udc-core> => fsl_ep_queue
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 28 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
<FSL-udc-core> => dtd_complete_irq
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
<composite.c> => composite_setup_complete
<FSL-udc-core> => ep0_prime_status
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 0 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
[fsl_udc_irq]  Packet int
<FSL-udc-core> => setup_received_irq
<FSL-udc-core> => udc_reset_ep_queue
<FSL-udc-core> => nuke
<FSL-udc-core> => fsl_ep_fifo_flush
<FSL-udc-core> => setup_received_irq: Requests handled by gadget (DATA)
<composite.c> => get_string
<composite.c> => lookup_string
<composite.c> => usb_gadget_get_string
<FSL-udc-core> => fsl_ep_queue
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 34 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
<FSL-udc-core> => dtd_complete_irq
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
<composite.c> => composite_setup_complete
<FSL-udc-core> => ep0_prime_status
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 0 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
[fsl_udc_irq]  Packet int
<FSL-udc-core> => setup_received_irq
<FSL-udc-core> => udc_reset_ep_queue
<FSL-udc-core> => nuke
<FSL-udc-core> => fsl_ep_fifo_flush
<FSL-udc-core> => setup_received_irq: Requests handled by gadget (IN)
gadget_is_otg
gadget_is_otg
<composite.c> => set_config
<composite.c> => reset_config
g_webcam gadget: reset config
<composite.c> => uvc_function_disable
g_webcam gadget: uvc_function_disable
g_webcam gadget: high-speed config #1: Video
<composite.c> => uvc_function_set_alt
g_webcam gadget: uvc_function_set_alt(0, 0)
<composite.c> => uvc_function_set_alt
g_webcam gadget: uvc_function_set_alt(1, 0)
usb_gadget_vbus_draw
<FSL-udc-core> => fsl_vbus_draw
<FSL-udc-core> => fsl_ep_queue
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 0 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
<FSL-udc-core> => dtd_complete_irq
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
<composite.c> => composite_setup_complete
[fsl_udc_irq]  Packet int
<FSL-udc-core> => setup_received_irq
<FSL-udc-core> => udc_reset_ep_queue
<FSL-udc-core> => nuke
<FSL-udc-core> => fsl_ep_fifo_flush
<FSL-udc-core> => setup_received_irq: Requests handled by gadget (DATA)
<composite.c> => get_string
<composite.c> => lookup_string
<composite.c> => usb_gadget_get_string
<FSL-udc-core> => fsl_ep_queue
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 12 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
[fsl_udc_irq]  Packet int
<FSL-udc-core> => dtd_complete_irq
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
<composite.c> => composite_setup_complete
<FSL-udc-core> => ep0_prime_status
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 0 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
[fsl_udc_irq]  Packet int
<FSL-udc-core> => setup_received_irq
<FSL-udc-core> => udc_reset_ep_queue
<FSL-udc-core> => nuke
<FSL-udc-core> => fsl_ep_fifo_flush
<FSL-udc-core> => done
<FSL-udc-core> => setup_received_irq: Requests handled by gadget (DATA)
<composite.c> => get_string
<composite.c> => lookup_string
<composite.c> => usb_gadget_get_string
<composite.c> => lookup_string
<composite.c> => usb_gadget_get_string
<FSL-udc-core> => fsl_ep_queue
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 28 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
<FSL-udc-core> => dtd_complete_irq
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
<composite.c> => composite_setup_complete
<FSL-udc-core> => ep0_prime_status
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 0 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
[fsl_udc_irq]  Packet int
<FSL-udc-core> => setup_received_irq
<FSL-udc-core> => udc_reset_ep_queue
<FSL-udc-core> => nuke
<FSL-udc-core> => fsl_ep_fifo_flush
<FSL-udc-core> => setup_received_irq: Requests handled by gadget (DATA)
<composite.c> => get_string
<composite.c> => lookup_string
<composite.c> => usb_gadget_get_string
<composite.c> => lookup_string
<composite.c> => usb_gadget_get_string
<FSL-udc-core> => fsl_ep_queue
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 32 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
<FSL-udc-core> => dtd_complete_irq
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
<composite.c> => composite_setup_complete
<FSL-udc-core> => ep0_prime_status
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 0 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
[fsl_udc_irq]  Packet int
<FSL-udc-core> => setup_received_irq
<FSL-udc-core> => udc_reset_ep_queue
<FSL-udc-core> => nuke
<FSL-udc-core> => fsl_ep_fifo_flush
<FSL-udc-core> => setup_received_irq: Requests handled by gadget (IN)
<composite.c> => uvc_function_set_alt
g_webcam gadget: uvc_function_set_alt(1, 0)
<FSL-udc-core> => fsl_ep_queue
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 0 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
<FSL-udc-core> => dtd_complete_irq
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
<composite.c> => composite_setup_complete
[fsl_udc_irq]  Packet int
<FSL-udc-core> => setup_received_irq
<FSL-udc-core> => udc_reset_ep_queue
<FSL-udc-core> => nuke
<FSL-udc-core> => fsl_ep_fifo_flush
<FSL-udc-core> => setup_received_irq: Requests handled by gadget (DATA)
g_webcam gadget: non-core control reqa1.87 v0100 i0001 l26
UVC_FUNCTION_SETUP: setup request a1 87 value 0100 index 0001 001a
bRequestType a1 bRequest 87 wValuvc_send_response: ue 0100 wIndex 0001 wLength 001a
streaming request (req 87 cs 01)
length=[34]
<composite.c> => uvc_send_response.
<FSL-udc-core> => fsl_ep_queue
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 26 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
[fsl_udc_irq]  Packet int
<FSL-udc-core> => dtd_complete_irq
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
<FSL-udc-core> => ep0_prime_status
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 0 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
[fsl_udc_irq]  Packet int
<FSL-udc-core> => setup_received_irq
<FSL-udc-core> => udc_reset_ep_queue
<FSL-udc-core> => nuke
<FSL-udc-core> => fsl_ep_fifo_flush
<FSL-udc-core> => done
<FSL-udc-core> => setup_received_irq: Requests handled by gadget (DATA)
gadget_is_superspeed
g_webcam gadget: non-core control req21.01 v0100 i0001 l26
UVC_FUNCTION_SETUP: setup request 21 01 value 0100 index 0001 001a
<FSL-udc-core> => dtd_complete_irq
bRequestType 21 bRequest 01 wValuvc_send_response: ue 0100 wIndex 0001 wLength 001a
streaming request (req 01 cs 01)
length=[34]
<composite.c> => uvc_send_response.
<FSL-udc-core> => fsl_ep_queue
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 26 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
[fsl_udc_irq]  Packet int
<FSL-udc-core> => dtd_complete_irq
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
<FSL-udc-core> => ep0_prime_status
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 0 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
setting probe control, length = 26
[fsl_udc_irq]  Packet int
<FSL-udc-core> => setup_received_irq
<FSL-udc-core> => udc_reset_ep_queue
<FSL-udc-core> => nuke
<FSL-udc-core> => fsl_ep_fifo_flush
<FSL-udc-core> => done
<FSL-udc-core> => setup_received_irq: Requests handled by gadget (DATA)
g_webcam gadget: non-core control reqa1.81 v0100 i0001 l26
UVC_FUNCTION_SETUP: setup request a1 81 value 0100 index 0001 001a
bRequestType a1 bRequest 81 wValuvc_send_response: ue 0100 wIndex 0001 wLength 001alength=[34]

streaming request (req 81 cs 01)
<composite.c> => uvc_send_response.
<FSL-udc-core> => fsl_ep_queue
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 26 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
[fsl_udc_irq]  Packet int
<FSL-udc-core> => dtd_complete_irq
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
<FSL-udc-core> => ep0_prime_status
<FSL-udc-core> => fsl_req_to_dtd
<FSL-udc-core> => fsl_build_dtd
[fsl_build_dtd]  length = 0 address= 0x83b53000
<FSL-udc-core> => fsl_queue_td
<FSL-udc-core> => fsl_prime_ep
[fsl_udc_irq]  Packet int
<FSL-udc-core> => dtd_complete_irq
<FSL-udc-core> => process_ep_req
[process_ep_req]  dTD transmitted successful
[dtd_complete_irq]  status of process_ep_req= 0, ep = 0
<FSL-udc-core> => ep0_req_complete
<FSL-udc-core> => done
<FSL-udc-core> => suspend_irq
<composite.c> => composite_suspend
g_webcam gadget: suspend
usb_gadget_vbus_draw
<FSL-udc-core> => fsl_vbus_draw

root@freescale ~$ 
root@freescale ~$ 
root@freescale ~$ 
root@freescale ~$ 
root@freescale ~$ 
root@freescale ~$ 
root@freescale ~$ 
root@freescale ~$ 
root@freescale ~$ 

[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux