HACKBERRY USB problem

Ganbold Tsagaankhuu ganbold at gmail.com
Sat Mar 23 02:17:16 UTC 2013


On Sat, Mar 23, 2013 at 12:29 AM, Alexander Fedorov
<alexander.fedorov at rtlservice.com> wrote:
>> It seems like hackberry's usb2 gpio pin is different than cubieboard one.
>
> Yes, this is why I edit a10_ehci.c
>
>> Did you try to use 2 usb devices for both usb port same time?
>
> Hackberry has two external USB connectors in one package, and two not soldered
> connectors. One on top, and one on bottom side of the board. I
> soldered one (howto:
> http://jas-hacks.blogspot.ru/2012/10/hackberry-a10-extra-usb-ports.html).
> I think USB configuration looks like:
> A10 USB1 -> GL850G (4-port HUB) -> upper port on external connector
> and not soldered connectors.
> A10 USB2 -> RTL8188CUS (WiFi chip)
> And I assume, A10 USB0 OTG -> bottom port on external connector.

I see.

>
> I tried to use all available ports:
> root@:~ # usbconfig
> ugen1.1: <EHCI root HUB Allwinner> at usbus1, cfg=0 md=HOST spd=HIGH
> (480Mbps) pwr=SAVE (0mA)
> ugen0.1: <EHCI root HUB Allwinner> at usbus0, cfg=0 md=HOST spd=HIGH
> (480Mbps) pwr=SAVE (0mA)
> ugen1.2: <product 0x8176 Realtek> at usbus1, cfg=0 md=HOST spd=HIGH
> (480Mbps) pwr=ON (500mA)
> ugen0.2: <USB2.0 Hub Genesys Logic> at usbus0, cfg=0 md=HOST spd=HIGH
> (480Mbps) pwr=SAVE (100mA)
> ugen0.3: <Mass Storage Device JetFlash> at usbus0, cfg=0 md=HOST
> spd=HIGH (480Mbps) pwr=ON (500mA)
> ugen0.4: <PS2+USB Mouse Targus> at usbus0, cfg=0 md=HOST spd=LOW
> (1.5Mbps) pwr=ON (100mA)
>
> As expected, all ports work, except USB0 OTG (bottom port on external
> connector).

Very cool.

>
>> Somehow I observed both works at boot time, but had some problem
>> attaching after boot.
>>
>
> No, I haven't this problem. All ports work correctly at boot and after.

Ok, good.

>
>> I never managed to make usb0 work, since it supports both host and otg
>> mode in cubieboard.
>> As some docs say it is based on MentorGraphics USB-OTG IP and
>> currently iirc we only have support of otg mode in musb.
>> gonzo@ may be working on improving musb driver some time ago, so he
>> maybe has better ideas.
>> As for pins, probably right place would be the dts, where we should
>> separate hackberry and cubieboard specific configs and make general
>> config for sun4i's SoC.
>
> And/or, maybe do it something like it done for OMAP4:
> sys/arm/ti/omap4/pandaboard/pandaboard.c

Something like separating dts for boards the way linux does:

https://github.com/mripard/linux/blob/sunxi-3.9-wip-wemac/arch/arm/boot/dts/sunxi.dtsi
https://github.com/mripard/linux/blob/sunxi-3.9-wip-wemac/arch/arm/boot/dts/sun4i-a10.dtsi
https://github.com/mripard/linux/blob/sunxi-3.9-wip-wemac/arch/arm/boot/dts/sun4i-a10-hackberry.dts
https://github.com/mripard/linux/blob/sunxi-3.9-wip-wemac/arch/arm/boot/dts/sun4i-a10-cubieboard.dts

And then maybe we should check just to make sure some of existing gpio
handling in other SoC's dts like:

sys/boot/fdt/dts/bcm2835-rpi-b.dts

and, yes, usb_hub_init could be done based on corresponding dts.
My thinking could be missing something or wrong, but I think other arm
folks could also comment on that.

thanks,

Ganbold


>
>>
>> Ganbold
>>
>>
>>
>>>
>>> Alexander Fedorov
>>> _______________________________________________
>>> freebsd-arm at freebsd.org mailing list
>>> http://lists.freebsd.org/mailman/listinfo/freebsd-arm
>>> To unsubscribe, send any mail to "freebsd-arm-unsubscribe at freebsd.org"
> _______________________________________________
> freebsd-arm at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-arm
> To unsubscribe, send any mail to "freebsd-arm-unsubscribe at freebsd.org"


More information about the freebsd-arm mailing list