Re: Linux USB file storage gadget with new UDC

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

 



Hi,

>> Ok. What other gadget driver can i test with UDC driver? Is it the
>> mass storage driver (mass_storage.c)?
>
> That is essentially the same as g_file_storage.  But there are lots of
> others.  You should start with g_zero and run the testusb suite.  See
>
>         http://www.linux-usb.org/gadget/
>
> and
>
>         http://www.linux-usb.org/usbtest/
>
> for more information.  Those web pages are pretty old and somewhat out
> of date, but they still have useful stuff.

I tested the g_zero with USB 2.0 Command Verifier. After the Command
Verifier is run, the UDC gadget driver queue function is continuously
being called, and the linux command prompt is frozen. Please see the
attached UDC driver log. It looks like endpoint 1 in direction is
called by USB 2.0 Command Verifier continuously. Is this weird?

thanks,
victor
# insmod kagen2_udc.ko 
kagen2_init
kagen2_plat_probe 1
kagen2_plat_probe 5
kagen2_plat_probe 6, 0xc2886000 0x1000
read pclk ffff scu 7 irqmask ffbffffd ffff7fff
val is 0x0
val is 0x8
check USB_OTGST 0x51000801 
check USB_OTGIRQ 0x51000810 
check USB_IRQINIT 0x70007 
check USB_OTGFSM 0xa1d191f 
check USB_OTGCTRL 0x51300801 
kagen2_plat_probe 8
register irq 32
kagen2_init 0
# insmod g_zero.ko 
bind
epname ep1
epname ep1
epname ep1
epname ep1
 gadget: Gadget Zero, version: Cinco de Mayo 2008
 gadget: zero ready
usb_gadget_udc_start
0xbf0386b8 0xbf0364c8
kagen2_start
0xbf0386b8 0xbf0364c8
0xc12d2cf0 0xbf030eb0
usb_gadget_connect
# ept0 in queue len 0x12, buffer 0xc12d3000
USB_RECIP_DEVICE
exit A
ept0 in queue len 0x12, buffer 0xc12d3000
ept0 in queue len 0x9, buffer 0xc12d3000
ept0 in queue len 0x4, buffer 0xc12d3000
ept0 in queue len 0x42, buffer 0xc12d3000
ept0 in queue len 0x20, buffer 0xc12d3000
ept0 in queue len 0x4, buffer 0xc12d3000
ept0 in queue len 0x18, buffer 0xc12d3000
ept0 in queue len 0x4, buffer 0xc12d3000
ept0 in queue len 0x18, buffer 0xc12d3000
ept0 in queue len 0x20, buffer 0xc12d3000
ept0 in queue len 0xa, buffer 0xc12d3000
ept0 in queue len 0x9, buffer 0xc12d3000
ept0 in queue len 0x20, buffer 0xc12d3000
ept0 in queue len 0x4, buffer 0xc12d3000
ept0 in queue len 0x3a, buffer 0xc12d3000
ept0 in queue len 0x18, buffer 0xc12d3000
ept0 in queue len 0x42, buffer 0xc12d3000
ept0 in queue len 0x2a, buffer 0xc12d3000
ept0 in queue len 0x2a, buffer 0xc12d3000
ept0 in queue len 0x12, buffer 0xc12d3000
USB_RECIP_DEVICE
exit A
ept0 in queue len 0x12, buffer 0xc12d3000
ept0 in queue len 0x9, buffer 0xc12d3000
zero gadget: high-speed config #3: source/sink
ept1 in queue len 0x1000, buffer 0xc180d000
len_num 4096, iter_num 0
len_num 3584, iter_num 1
len_num 3072, iter_num 2
len_num 2560, iter_num 3
len_num 2048, iter_num 4
len_num 1536, iter_num 5
len_num 1024, iter_num 6
len_num 512, iter_num 7
ept1 in queue len 0x1000, buffer 0xc180d000
len_num 4096, iter_num 0
len_num 3584, iter_num 1
len_num 3072, iter_num 2
len_num 2560, iter_num 3
len_num 2048, iter_num 4
len_num 1536, iter_num 5
len_num 1024, iter_num 6
len_num 512, iter_num 7
ept1 in queue len 0x1000, buffer 0xc180d000
len_num 4096, iter_num 0
len_num 3584, iter_num 1
len_num 3072, iter_num 2
len_num 2560, iter_num 3
len_num 2048, iter_num 4
len_num 1536, iter_num 5
len_num 1024, iter_num 6
len_num 512, iter_num 7
ept1 in queue len 0x1000, buffer 0xc180d000
len_num 4096, iter_num 0
len_num 3584, iter_num 1
len_num 3072, iter_num 2
len_num 2560, iter_num 3
len_num 2048, iter_num 4
len_num 1536, iter_num 5
len_num 1024, iter_num 6
len_num 512, iter_num 7
ept1 in queue len 0x1000, buffer 0xc180d000
len_num 4096, iter_num 0
len_num 3584, iter_num 1
len_num 3072, iter_num 2
len_num 2560, iter_num 3
len_num 2048, iter_num 4
len_num 1536, iter_num 5
len_num 1024, iter_num 6
len_num 512, iter_num 7
ept1 in queue len 0x1000, buffer 0xc180d000
len_num 4096, iter_num 0
len_num 3584, iter_num 1
len_num 3072, iter_num 2
len_num 2560, iter_num 3
len_num 2048, iter_num 4
len_num 1536, iter_num 5
len_num 1024, iter_num 6
len_num 512, iter_num 7
ept1 in queue len 0x1000, buffer 0xc180d000
len_num 4096, iter_num 0
len_num 3584, iter_num 1
len_num 3072, iter_num 2
len_num 2560, iter_num 3
len_num 2048, iter_num 4
len_num 1536, iter_num 5
len_num 1024, iter_num 6
len_num 512, iter_num 7
ept1 in queue len 0x1000, buffer 0xc180d000
len_num 4096, iter_num 0
len_num 3584, iter_num 1
len_num 3072, iter_num 2
len_num 2560, iter_num 3
len_num 2048, iter_num 4
len_num 1536, iter_num 5
len_num 1024, iter_num 6
len_num 512, iter_num 7
ept1 in queue len 0x1000, buffer 0xc180d000
len_num 4096, iter_num 0
len_num 3584, iter_num 1
len_num 3072, iter_num 2
len_num 2560, iter_num 3
len_num 2048, iter_num 4
len_num 1536, iter_num 5
len_num 1024, iter_num 6
len_num 512, iter_num 7

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

  Powered by Linux