My USB mass storage works without UGEN.

Kevin Kirspel
Electrical Engineer - Sr. Staff
Idexx Roswell
235 Hembree Park Drive
Roswell GA 30076
Tel: (770)-510-4444 ext. 81642
Direct: (770)-688-1642
Fax: (770)-510-4445

-----Original Message-----
From: devel [mailto:devel-boun...@rtems.org] On Behalf Of Christian Mauderer
Sent: Wednesday, April 19, 2017 8:37 AM
To: RTEMS <devel@rtems.org>; 赵 思晨 <zsc19940...@outlook.com>
Subject: Re: GSOC 2017 RTEMS-libbsd issue

Hello Sichen Zhao,

Sorry for the delayed response. Somehow the mail must have been lost.
I only received it through the answer from Kevin Kirspel. I slightly changed my 
mailing list settings so the next time it will (hopefully) work.

> 
> Hi Christian Mauderer, Hi all,
> 
>  
> 
> I understand what you mean, i will update my RTEMS-libbsd to the 
> newest branch.
> 

Good.

> I already pull over the host controller driver files(am335x_musb.c
> am335x_usbss.c umass.c)from freebsd and make them compilable in 
> rtems-libbsd. The umass.c is driver for storage device.
> 
> And i already add the host controller and driver to
> nexus-devices.h(RTEMS_BSD_DEFINE_NEXUS_DEVICE(musbotg,0 , 
> RTEMS_ARRAY_SIZE(musbotg_res), &musbotg_res[0]);).
>

Sounds good. Did you put these changes on some working branch in your github 
repository so it would be possible to have a look?

>  
> 
> Now uhub usbus and musbotg can mount on nexus bus.
> 

OK. Sounds good. I expect you have verified that by some console output?

> the issue is: it can not find the new device(such as U disk)
> 

Which application did you use to test this. Do you have some kind of debugger 
so you could check whether the code reaches the umass_probe function?

> So i compare with the FreeBSD boot log info, and the only difference 
> is FreeBSD enable the USB_HAVE_UGEN, so i guess if it is necessary
> 
> to enable the macro USB_HAVE_UGEN.
>

As far as I can tell neither the am335x_musb nor the umass driver does 
something different based on this macro. And till now, the macro hasn't been 
necessary for supporting mass storage devices. It is possible that something 
changed and that this specific host needs USB_HAVE_UGEN for some reason to 
support any device but I would think it is rather unlikely.

@Kevin Kirspel: It seems that you need UGEN for keyboards. Does a USB mass 
storage work on your target without UGEN? This might could give a hint whether 
the dependency is device-specific or host-specific.

I'm currently not sure if any other USB device (like a hub) produces any 
messages on the console. But it might would be worth a try. If you have 
upgraded to the last libbsd, you could also try some USB-wifi-dongles. I tested 
with a rtl8192 based one and that did put some messages on the console. For 
this wifi dongle You would have to add the following drivers in nexus-devices.h:

  SYSINIT_MODULE_REFERENCE(wlan_ratectl_none);
  SYSINIT_MODULE_REFERENCE(wlan_sta);
  SYSINIT_MODULE_REFERENCE(wlan_amrr);
  SYSINIT_DRIVER_REFERENCE(rtwn_usb, uhub);
  SYSINIT_REFERENCE(rtwn_rtl8192cfwT);

Kind regards

Christian

>  
> 
> Thank you for your suggestions.
> 
>  
> 
> Best regards
> 
> Sichen Zhao
> 

--
--------------------------------------------
embedded brains GmbH
Christian Mauderer
Dornierstr. 4
D-82178 Puchheim
Germany
email: christian.maude...@embedded-brains.de
Phone: +49-89-18 94 741 - 18
Fax:   +49-89-18 94 741 - 08
PGP: Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
_______________________________________________
devel mailing list
devel@rtems.org
https://urldefense.proofpoint.com/v2/url?u=http-3A__lists.rtems.org_mailman_listinfo_devel&d=DwIGaQ&c=2do6VJGs3LvEOe4OFFM1bA&r=dbavT-WIJ4nBfQFKYnKdAD52Vyq3ZXSzrL9TAm21lZI&m=Q8S3rpUyeSbiq1V5AzVD0QJJ5ypQn7wLkP6RTEXMQ74&s=pQp4ZgQRsq1syKIGw8uNyQ2LmAt7lXijDxWXn3rtkYc&e=
 
_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Reply via email to