Connecting an Atmel AT91SAM7X microcontroller
Hans Petter Selasky
hselasky at c2i.net
Wed Jun 30 21:29:42 UTC 2010
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
More information about the freebsd-usb
mailing list