Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 30 Jun 2010 23:26:39 +0200
From:      Hans Petter Selasky <hselasky@c2i.net>
To:        freebsd-usb@freebsd.org
Subject:   Re: Connecting an Atmel AT91SAM7X microcontroller
Message-ID:  <201006302326.40046.hselasky@c2i.net>
In-Reply-To: <201006302253.07315.frank@barda.agala.net>
References:  <201006302253.07315.frank@barda.agala.net>

next in thread | previous in thread | raw e-mail | index | archive | help

On Wednesday 30 June 2010 22:53:02 Frank J. Beckmann wrote:
> Hello,
> 
> I'm trying to connect an Atmel AT91SAM7X microcontroller to my system
>  running FreeBSD 8.1-PRERELEASE. The Linux instructions tell me to use the
>  usbserial module via
> 
> modprobe usbserial vendor=0x03eb product=0x6124
> 
> So I added
> 
> product ATMEL AT91              0x6124  AT91 Microcontroller
> 
> to
> 
> /usr/src/sys/dev/usb/usbdevs
> 
> and
> 
>         {USB_VPI(USB_VENDOR_ATMEL, USB_PRODUCT_ATMEL_AT91, 0)},
> 
> to
> 
> /usr/src/sys/dev/usb/serial/ugensa.c
> 
> The microcontroller now gets recognized but attaching it fails:
> 
> ugen1.2: <vendor 0x03eb> at usbus1
> ugensa0: <vendor 0x03eb product 0x6124, class 2/0, rev 1.10/1.10, addr 2>
>  on usbus1
> ugensa0: No interfaces
> device_attach: ugensa0 attach returned 6
> ugensa0: <vendor 0x03eb product 0x6124, class 2/0, rev 1.10/1.10, addr 2>
>  on usbus1
> ugensa0: No interfaces
> device_attach: ugensa0 attach returned 6
> 
> 
> usbconfig -d ugen1.2 dump_all_config_desc
> 
> gives:
> 
> ugen1.2: <product 0x6124 vendor 0x03eb> at usbus1, cfg=0 md=HOST spd=FULL
> (12Mbps) pwr=ON
> 
> 
>  Configuration index 0
> 
>     bLength = 0x0009
>     bDescriptorType = 0x0002
>     wTotalLength = 0x0043
>     bNumInterfaces = 0x0002
>     bConfigurationValue = 0x0001
>     iConfiguration = 0x0000  <no string>
>     bmAttributes = 0x00c0
>     bMaxPower = 0x0000
> 
>     Interface 0
>       bLength = 0x0009
>       bDescriptorType = 0x0004
>       bInterfaceNumber = 0x0000
>       bAlternateSetting = 0x0000
>       bNumEndpoints = 0x0001
>       bInterfaceClass = 0x0002
>       bInterfaceSubClass = 0x0002
>       bInterfaceProtocol = 0x0000
>       iInterface = 0x0000  <no string>
> 
>       Additional Descriptor
> 
>       bLength = 0x05
>       bDescriptorType = 0x24
>       bDescriptorSubType = 0x00
>        RAW dump:
>        0x00 | 0x05, 0x24, 0x00, 0x10, 0x01
> 
> 
>       Additional Descriptor
> 
>       bLength = 0x04
>       bDescriptorType = 0x24
>       bDescriptorSubType = 0x02
>        RAW dump:
>        0x00 | 0x04, 0x24, 0x02, 0x00
> 
> 
>       Additional Descriptor
> 
>       bLength = 0x05
>       bDescriptorType = 0x24
>       bDescriptorSubType = 0x06
>        RAW dump:
>        0x00 | 0x05, 0x24, 0x06, 0x00, 0x01
> 
> 
>       Additional Descriptor
> 
>       bLength = 0x05
>       bDescriptorType = 0x24
>       bDescriptorSubType = 0x01
>        RAW dump:
>        0x00 | 0x05, 0x24, 0x01, 0x00, 0x01
> 
> 
>      Endpoint 0
>         bLength = 0x0007
>         bDescriptorType = 0x0005
>         bEndpointAddress = 0x0083  <IN>
>         bmAttributes = 0x0003  <INTERRUPT>
>         wMaxPacketSize = 0x0008
>         bInterval = 0x00ff
>         bRefresh = 0x0000
>         bSynchAddress = 0x0000
> 
> 
>     Interface 1
>       bLength = 0x0009
>       bDescriptorType = 0x0004
>       bInterfaceNumber = 0x0001
>       bAlternateSetting = 0x0000
>       bNumEndpoints = 0x0002
>       bInterfaceClass = 0x000a
>       bInterfaceSubClass = 0x0000
>       bInterfaceProtocol = 0x0000
>       iInterface = 0x0000  <no string>
> 
>      Endpoint 0
>         bLength = 0x0007
>         bDescriptorType = 0x0005
>         bEndpointAddress = 0x0001  <OUT>
>         bmAttributes = 0x0002  <BULK>
>         wMaxPacketSize = 0x0040
>         bInterval = 0x0000
>         bRefresh = 0x0000
>         bSynchAddress = 0x0000
> 
>      Endpoint 1
>         bLength = 0x0007
>         bDescriptorType = 0x0005
>         bEndpointAddress = 0x0082  <IN>
>         bmAttributes = 0x0002  <BULK>
>         wMaxPacketSize = 0x0040
>         bInterval = 0x0000
>         bRefresh = 0x0000
>         bSynchAddress = 0x0000
> 
> 
> What do I have to do to connect that microcontroller?
> 

Hi,

Try loading/patching the umodem driver.

--HPS



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201006302326.40046.hselasky>