gadget usb driver in linux

ravi teja
hi everyone,
          I want to write a usb gadget driver for mini2440. can you please
point me to where i should start.

As a beginning, i want my pc to recognize that a usb device(with custom
vendor and product id) is connected when i connect a usb cable between
mini2440 and pc. Or i want to know how to enable gadget zero in mini2440.

Thanks and regards,
G. Ravi Teja
Associate Software Engineer,
IBM.
www.geekwentfreak.wordpress.com

Fabien
Hi,

It's in the Kernel compile menu, when you compile it.

there are several "modes" you can choose from. (only one at once if
compiled staticaly)

http://www.linux-usb.org/gadget/

ravi teja
hi,
  Thanks for help.

I have tried that. I enabled 
Device Drivers ---> USB support ---> USB Gadget Support to be build as
module. I also enabled "S3C2410 USB Device Controller", gadget zero and
"Gadget Filesystem (EXPERIMENTAL)" again as modules. When i executed the
following commands,

root@snapper:~$ modprobe s3c2410_udc
s3c2440-usbgadget s3c2440-usbgadget: S3C2440: increasing FIFO to 128 bytes
root@snapper:~$ modprobe g_zero
zero gadget: Gadget Zero, version: Cinco de Mayo 2008
zero gadget: zero ready
sairam root@snapper:~$ 

I have connected a usb cable between my pc and mini2440 b-type usb port(dev
port). But when i lsusb, it doesn't show up in my pc. neither in dmesg(on
my pc). Is there something else i am missing. Thanks

ravi teja
hi,
  can you please tell me which kernel version you are using. i am using
2.6.32.2 from www.friendlyarm.net/downloads. This version doesn't seem to
support usb gadgets. i checked mach-mini2440.c file in 2.6.32.2 and
couldn't find the function s3c24xx_udc_set_platdata called anywhere. But it
is called correctly in 2.6.34.7 and 2.6.36. 

the problem with 2.6.34 and  2.6.36 is that i couldn't successfully 
configure in to boot yaffs2 image as there is no config_mini2440_t35 file
for them since they are linus's mainline kernels.

Where can i download latest kernel configured for mini2440 with gadget usb
support.

Thanks.