Minix 3 USB Stack (Unofficial) 0.01-alpha release

76 views
Skip to first unread message

Althaf k Backer

unread,
Mar 17, 2010, 2:31:08 PM3/17/10
to minix3
http://code.google.com/p/minix3-usbsubsystem/
Check the README and INSTALL in the tar ball.

Althaf k Backer

unread,
Mar 17, 2010, 3:46:59 PM3/17/10
to minix3

Niek Linnenbank

unread,
Mar 17, 2010, 3:48:41 PM3/17/10
to min...@googlegroups.com
Excellent work althaf. Congratulations!

On Wed, Mar 17, 2010 at 8:46 PM, Althaf k Backer <althaf...@gmail.com> wrote:
Screenshots
http://code.google.com/p/minix3-usbsubsystem/wiki/Screenshotsalpha17032010

--
You received this message because you are subscribed to the Google Groups "minix3" group.
To post to this group, send email to min...@googlegroups.com.
To unsubscribe from this group, send email to minix3+un...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/minix3?hl=en.




--
Niek Linnenbank

WWW: http://www.nieklinnenbank.nl/
BLOG: http://nieklinnenbank.wordpress.com/
FUN:    http://www.FreeNOS.org/

Althaf k Backer

unread,
Mar 17, 2010, 3:59:39 PM3/17/10
to minix3

On Mar 18, 12:48 am, Niek Linnenbank <nieklinnenb...@gmail.com> wrote:
> Excellent work althaf. Congratulations!
Thank you Niek :-)

Al Pech

unread,
Mar 17, 2010, 5:32:26 PM3/17/10
to minix3
Good job Althaf!!

-

Evgeniy Ivanov

unread,
Mar 17, 2010, 5:41:37 PM3/17/10
to min...@googlegroups.com
Great job! Congratulations!

> --
> You received this message because you are subscribed to the Google Groups "minix3" group.
> To post to this group, send email to min...@googlegroups.com.
> To unsubscribe from this group, send email to minix3+un...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/minix3?hl=en.
>
>

--
Evgeniy Ivanov

Althaf

unread,
Mar 17, 2010, 10:36:07 PM3/17/10
to min...@googlegroups.com
Thank you AI, Evgeniy :-)

Have you tried yet ? just wanted to know if it worked
over there.

--
http://mykeystrokes.blogspot.com
“Unix is user-friendly. It's just very selective about who its friends are.”
"Study as if you were to live forever. Live as if you were to die tomorrow"
"The only thing that interferes with my learning is my education.
"-Albert Einstein

wufeng

unread,
Mar 17, 2010, 11:30:28 PM3/17/10
to minix3
Very good!

Althaf

unread,
Mar 17, 2010, 11:32:51 PM3/17/10
to min...@googlegroups.com
2010/3/18 wufeng <eab...@gmail.com>:
> Very good!

:-) , wufeng have you tired it , i haven't done much
testing to make sure it works fine on all.

Roman Ignatov

unread,
Mar 18, 2010, 1:43:13 AM3/18/10
to minix3
Congratulations!

Althaf

unread,
Mar 18, 2010, 1:49:56 AM3/18/10
to min...@googlegroups.com
On 18 March 2010 11:13, Roman Ignatov <ign...@minix3.ru> wrote:
> Congratulations!

Roman :-) ,

did it work over there ? ;-)
i'm actually waiting for someone to test run it , have you tried it yet?

Roman Ignatov

unread,
Mar 18, 2010, 4:38:09 AM3/18/10
to minix3
> did it  work over there ?  ;-)
> i'm actually waiting for someone to test run it , have you tried it yet?

I will test it and will write to you on email! :)

Althaf k Backer

unread,
Mar 18, 2010, 7:54:32 AM3/18/10
to minix3
Well i'm pretty sure that it will work in 3.1.5 ,but in
3.1.6 it doesn't seems to work well,it has some
problem communicating with DS.

Al Pech

unread,
Mar 18, 2010, 12:31:17 PM3/18/10
to minix3
Althaf is right, I tried it on 3.1.6 and it didn't work. I'll try it
with 3.1.5 and report the results.

-Al Pech

dz...@pochta.ru

unread,
Mar 18, 2010, 5:08:16 AM3/18/10
to min...@googlegroups.com

I think that is good reason for release of Minix3 on new iso for test it.


http://code.google.com/p/minix3-usbsubsystem/
Check the README and INSTALL in the tar ball.

Antoine Leca

unread,
Mar 18, 2010, 2:43:16 PM3/18/10
to min...@googlegroups.com
dz...@pochta.ru wrote:
> I think that is good reason for release of Minix3 on new iso for test it.

Please read the full thread: the package released (which is alpha
software) works with 3.1.5, but does not work cleanly with 3.1.6, which
is the last "stable" release. I expect problems with -current too (of
course, beyond the obvious conversion of <ibm/ to <machine/ or <i386/)


> http://code.google.com/p/minix3-usbsubsystem/
> Check the README and INSTALL in the tar ball.

Furthermore, there is a potential license clash: this package (which
I understand is derived from Linux' stack) is GPLv3-licensed, and the VU
policy until now has been to avoid that license in the main tree.
Of course there is no problem to release a GPL-ed derivate of
Minix-with-USB, but I am not sure VU wants to have her name associated
with such an initiative, since it could raise communication concerns.

My �.01


Antoine

Althaf

unread,
Mar 18, 2010, 2:54:57 PM3/18/10
to minix3

Main reason is http://wiki.minix3.org/en/DevelopersGuide/SEF from what i
understand was introduced in 3.1.6.

AntoineLeca

unread,
Mar 20, 2010, 9:08:38 AM3/20/10
to minix3
On 17 mar, 19:31, Althaf k Backer <althafkbac...@gmail.com> wrote:
> http://code.google.com/p/minix3-usbsubsystem/
> Check the README and INSTALL in the tar ball.

Great work, congratulations.

I saw the remarks about incompatibilities with 3.1.6; this reminds me
we really need to enhance the great documentation that Neil did a few
month ago, to SEF and any other stuff. It would have been a good idea
to keep the wiki up-to-date when the change was made into the trunk
(5786, 5861), but I have no idea why this had not been possible. I
also notice this happened again on March 17th, with revision 6441
which has an extensive changelog --more than 1 printed page long-- but
not much is creeping into the wiki).
I have an idea of the changes involved (well, not the last one), since
it took me by surprise when I was developing some network driver and I
saw the change while monitorizing trunk; but since I was not able to
switch away from pre-VM on the computer I was working (without
network...), I was not able to create a version which was able to
track both the tree and remains backwards compatible (compare with the
safecopies, where I do have a version which is 3.1.2 compatible, ie no
safecopies); as a result (and also because I lost access to one of the
test computers), I dropped the driver; this is the sad consequence of
dropping backward compatibility, IMHO.

Anyway, since my working computer is running 3.1.7 but does not have
UHCI, I switched to another one having network AND UHCI; it is running
3.1.3a at the moment (the other releases are in unstable state,
because of the above state of affairs); I downloaded the package, but
I quickly saw I won't go very far:
cannot include <sys/vm_i386.h>
cannot include <sys/mman.h>
implicit declaration of funciton munmap
Look like 3.1.5, and no other release, is really required... until the
USB package is upgraded to at least 3.1.6 and basic SEF support; and
it is probably better to try to match revision 6441 as well...


Antoine

Althaf

unread,
Mar 20, 2010, 9:33:37 AM3/20/10
to min...@googlegroups.com
On 20 March 2010 18:38, AntoineLeca <antoine...@gmail.com> wrote:
> On 17 mar, 19:31, Althaf k Backer <althafkbac...@gmail.com> wrote:
>> http://code.google.com/p/minix3-usbsubsystem/
>> Check the README and INSTALL in the tar ball.
>
> Great work, congratulations.
>

Thank you Antoine :-)

> I saw the remarks about incompatibilities with 3.1.6; this reminds me
> we really need to enhance the great documentation that Neil did a few
> month ago, to SEF and any other stuff. It would have been a good idea
> to keep the wiki up-to-date when the change was made into the trunk
> (5786, 5861), but I have no idea why this had not been possible. I
> also notice this happened again on March 17th, with revision 6441
> which has an extensive changelog --more than 1 printed page long-- but
> not much is creeping into the wiki).

Well i think problem was i didn't keep up with the new release , by the
time my deadline was up, the project was almost done with 3.1.5
which was the stable release from the commencement of this project.

> I have an idea of the changes involved (well, not the last one), since
> it took me by surprise when I was developing some network driver and I
> saw the change while monitorizing trunk; but since I was not able to
> switch away from pre-VM on the computer I was working (without
> network...), I was not able to create a version which was able to
> track both the tree and remains backwards compatible (compare with the
> safecopies, where I do have a version which is 3.1.2 compatible, ie no
> safecopies); as a result (and also because I lost access to one of the
> test computers), I dropped the driver; this is the sad consequence of
> dropping backward compatibility, IMHO.

Yes indeed , my design entirely depend of endpoint numbers of the
process for internal IPC , i have not been into the depth to situation ,
but on the surface what i can say is Data Store part has some problem
which is actually breaking it.


> Anyway, since my working computer is running 3.1.7 but does not have
> UHCI, I switched to another one having network AND UHCI; it is running
> 3.1.3a at the moment (the other releases are in unstable state,
> because of the above state of affairs); I downloaded the package, but
> I quickly saw I won't go very far:
>  cannot include <sys/vm_i386.h>
>  cannot include <sys/mman.h>
>  implicit declaration of funciton munmap
> Look like 3.1.5, and no other release, is really required... until the
> USB package is upgraded to at least 3.1.6 and basic SEF support; and
> it is probably better to try to match revision 6441 as well...

Yes i'll be working on that :-) ,i'd really appreciate if you could bring about
the changes for SEF, from what i understand its not hard , just the
initialization
part ,to be honest i'm really off the project for few weeks ( relaxing
my head :P).

3.1.5 to more specific svn5612 which is a stable release , is the only version
i have tested the code with plus i'm not sure about it working on real hardware,
hardware emulation (qemu) and real hardware is completely different matter.

> Antoine

If you have time would you please test run it on Qemu 0.11.1 or later and 3.1.5
i haven't received any result of test running :-(. Main reason would be people
should have switched to version >= 3.1.6.

--
Althaf K Backer
http://code.google.com/p/minix3-usbsubsystem/
http://mykeystrokes.blogspot.com

Al Pech

unread,
Mar 23, 2010, 5:09:18 AM3/23/10
to minix3
I have tested both the usbd and uhci-hcd part of the code, I modified
the SHOW_ALL_DESC flag to '1' (so that I can see all the descriptors
of the USB device I attach) and it worked under 3.1.5!! I didn't test
the keyboard and mouse driver because I don't have a Keyboard or Mouse
USB device at hand.
I connected a Kingston Pen Drive and my Motorola Cellphone and I was
able to see their descriptors with no problems!

Good job Althaf.

I'll work on porting it to 3.1.6 (I have a lot of reading to do)

-Al Pech

Althaf

unread,
Mar 23, 2010, 5:44:05 AM3/23/10
to min...@googlegroups.com
> I connected a Kingston Pen Drive and my Motorola Cellphone and I was
> able to see their descriptors with no problems!
>
> Good job Althaf.
>
> I'll work on porting it to 3.1.6 (I have a lot of reading to do)
>
> -Al Pech

:-) , well if you weren't able to see the entire listing (as Minix doesn't have
scrolling support ) do this ( qemu assumed)

ssh -pPortno user@localhost tail -f /var/log/messages

so that will show contents of that file when ever changes are made.

Thank you for testing it out , i'm really happy to see that working
over there.

Antoine Leca

unread,
Mar 23, 2010, 10:14:30 AM3/23/10
to min...@googlegroups.com
Althaf wrote:
> :-) , well if you weren't able to see the entire listing (as Minix doesn't have
> scrolling support ) do this ( qemu assumed)
>
> ssh -pPortno user@localhost tail -f /var/log/messages

Something is wrong with
# more /var/log/messages
?

Antoine

Althaf

unread,
Mar 23, 2010, 10:19:39 AM3/23/10
to min...@googlegroups.com
> Something is wrong with
>        # more /var/log/messages

No , but that is not the desired result i'm expecting
from using 'more' , from what i suggested we could
see updates real time (as and when it happens),
technically with some delay.

Well,'more' is something like static display while
'tail -f' is dynamic.

Try it out ;-)

tota

unread,
Apr 22, 2010, 3:20:34 AM4/22/10
to minix3
When will be a new version?
Thanks.

ToTa

Althaf

unread,
Apr 22, 2010, 4:53:40 AM4/22/10
to min...@googlegroups.com
Tota :) happy to see your interest in this project, unfortunately
there was a minix version gap during the development of this stack,
which requires porting of the
current code to the new minix version, currently i'm bit occupied with
my exams,however AI Peach and one more student from russia are working
on porting the code.

I hope that would be the aim of next release, if you are too much
interested in the usb part of minix, i would like to point out that
there is currently a heavy development done by 'Vogt, Dirk' which
aims at porting DDkit to minix supporting the USB stack from Linux and
*BSDs.

Regards
Althaf K Backer

Althaf k Backer

unread,
Apr 22, 2010, 1:13:05 PM4/22/10
to minix3
Draft Project Report

Well, this report contains good introduction to USB basics and the
stack design,please note the this is not the final report and may
contains spelling and grammatical errors.

http://minix3-usbsubsystem.googlecode.com/files/Project-Report-Draft-%28pdf%29.tar.bz2

Siddu

unread,
Apr 26, 2010, 3:06:01 AM4/26/10
to Althaf, min...@googlegroups.com

Hi Althaf,

I spent some time with the document and understood well .....

When i put some logs in the code and tried to run , its deviating from my understanding .

As per my understanding for every send in src process , there will be a corresponding receive in dst process

and until the receive happens in the dst the src process may be blocked

but the below logs show something else

in the function uhci_msg_usbd it almost sent 3 msgs but theres been no corresponding receive in the dst (usbd) process ?


Apr 26 12:26:23 10 kernel: usbd: got a message
Apr 26 12:26:23 10 kernel:
Apr 26 12:26:23 10 kernel: usbd: on new device found
Apr 26 12:26:23 10 kernel:
Apr 26 12:26:23 10 kernel: usbd: ENTER: usbd_event_new_device
Apr 26 12:26:23 10 kernel:
Apr 26 12:26:23 10 kernel: uhci-hcd: control xfer complete
Apr 26 12:26:23 10 kernel: uhci-hcd: sending message ..
Apr 26 12:26:23 10 kernel: uhci-hcd: message send..
Apr 26 12:26:23 10 kernel: uhci-hcd: control xfer complete
Apr 26 12:26:23 10 kernel: uhci-hcd: sending message ..
Apr 26 12:26:23 10 kernel: uhci-hcd: message send..
Apr 26 12:26:23 10 kernel: uhci-hcd: control xfer complete
Apr 26 12:26:23 10 kernel: uhci-hcd: sending message ..
Apr 26 12:26:23 10 kernel: uhci-hcd: message send..
Apr 26 12:26:23 10 kernel: uhci-hcd: control xfer complete
Apr 26 12:26:23 10 kernel: uhci-hcd: sending message ..
Apr 26 12:26:23 10 kernel: uhci-hcd: message send..
Apr 26 12:26:23 10 kernel: usbd: Bus:0 Port:2 Device:1 ID 0x0951:0x1607 attached


On Thu, Apr 22, 2010 at 11:18 PM, Althaf <althaf...@gmail.com> wrote:
> also looking forward for the design :P
http://minix3-usbsubsystem.googlecode.com/files/Project-Report-Draft-%28pdf%29.tar.bz2



--
Regards,
~Sid~
A little bird which escaped the nest had to fall before it learnt to fly !

crspybits

unread,
Apr 28, 2010, 4:23:15 PM4/28/10
to minix3
That's great to see your work on USB For Minix 3! I just tried to
install and first had to do a make in /usr/src/drivers and then all
went OK. In /var/log/messages, I get:

"uhci-hcd: unable to find any uhci host controllers".

Seemingly I have to work under Qemu or get myself a USB host
controller that will work with your driver. I have a USB host
controller on the computer I'm using but seems not to be UHCI
compatible.

Chris.



On Apr 22, 3:53 am, Althaf <althafkbac...@gmail.com> wrote:
> Tota :) happy to see your interest in this project, unfortunately
> there was a minix version gap during the development of this stack,
> which requires porting of the
> current code to the new minix version, currently i'm bit occupied with
> my exams,however AI Peach and one more student from russia are working
> on porting the code.
>
> I hope that would be the aim of next release, if you are too much
> interested in theusbpart of minix, i would like to point out that
> there is currently a heavy development done by  'Vogt, Dirk' which
> aims at porting DDkit to minix supporting theUSBstack from Linux and
> *BSDs.
>
> Regards
> Althaf K Backer
>
> On 22/04/2010, tota <totali...@yandex.ru> wrote:
>
> > When will be a new version?
> > Thanks.
>
> > ToTa
>
> > --
> > You received this message because you are subscribed to the Google Groups
> > "minix3" group.
> > To post to this group, send email to min...@googlegroups.com.
> > To unsubscribe from this group, send email to
> > minix3+un...@googlegroups.com.
> > For more options, visit this group at
> >http://groups.google.com/group/minix3?hl=en.
>
> --
> Althaf K Backerhttp://code.google.com/p/minix3-usbsubsystem/http://mykeystrokes.blogspot.com
>
> --
> You received this message because you are subscribed to the Google Groups "minix3" group.
> To post to this group, send email to min...@googlegroups.com.
> To unsubscribe from this group, send email to minix3+un...@googlegroups.com.
> For more options, visit this group athttp://groups.google.com/group/minix3?hl=en.

Althaf

unread,
Apr 29, 2010, 11:22:37 PM4/29/10
to min...@googlegroups.com
On 28 April 2010 20:23, crspybits <crsp...@gmail.com> wrote:
> That's great to see your work on USB For Minix 3! I just tried to
> install and first had to do a make in /usr/src/drivers and then all
> went OK. In /var/log/messages, I get:
>
> "uhci-hcd: unable to find any uhci host controllers".
>
> Seemingly I have to work under Qemu or get myself a USB host
> controller that will work with your driver. I have a USB host
> controller on the computer I'm using but seems not to be UHCI
> compatible.
>
> Chris.

Hello Chris,
Please understand that using qemu to develop drivers
for real hardware is different from developing driver on the real
one, there are may factors to be considered when we play with
real hardware, i haven't tested the code on real UHCI host controller,
its sure to have issues and some quirks have to applied ,

If you don't mind it would be nice, if you debug the code on real hw and
send me a patch, btw its no fun playing with UHCI :-)

crspybits

unread,
May 17, 2010, 1:09:37 PM5/17/10
to minix3
I've now got a UHCI board.
It lists from the seller as: "USB4PORT-PCI -- VIA VT6212L 4+1 Port USB
2.0 PCI", but it apparently supports UHCI.

Booted into Linux, the lshw command indicates the following
configuration:
VIA, VT82xxxxx UHCI USB 1.1 Controller VID=1106, DID: 3038).

I edited uhci-hcd.c a little to put in the VID/DID and also edited /
etc/drivers.conf to add this VID/DID. I'm remotely connected into this
system from home, and can't type on a keyboard there, but at least no
obvious errors so far. See below.

I'd like to help out with the Minix 3 USB stack development. Al Pech
and Vogt, Dirk were doing some work. How is that going?
Cheers,
Chris.

May 17 15:38:22 minix kernel: usbd: started
May 17 15:38:22 minix kernel:
May 17 15:38:22 minix kernel: usbd: USB Stack 0.01-alpha(17032010)
May 17 15:38:22 minix kernel: usbd: Copyright (C) 2010 Althaf K Backer
<althaf...@gmail.com>
May 17 15:38:22 minix kernel: usbd: License GPLv3+: GNU GPL version 3
or later
May 17 15:38:22 minix kernel: usbd: This is free software: you are
free to change and redistribute
May 17 15:38:47 minix kernel:
May 17 15:38:47 minix kernel: uhci-hcd: started
May 17 15:38:47 minix kernel: uhci-hcd: VT83C572 PCI USB Controller
(1106:3038) at 1.9.0
May 17 15:38:47 minix kernel:
May 17 15:38:47 minix kernel: usbd: Host controller driver 13745825
registered
May 17 15:38:47 minix kernel: uhci-hcd: registered with usbd
May 17 15:39:00 minix kernel:
May 17 15:39:00 minix kernel: uhci-hcd: the interrupt was not for us
May 17 15:39:00 minix last message repeated 3 times
<snip>
May 17 15:40:29 minix kernel: usbd: Device driver 13526481 registered
May 17 15:40:30 minix kernel:
May 17 15:40:30 minix kernel: uhci-hcd: the interrupt was not for us
May 17 15:40:30 minix last message repeated 3 times
May 17 15:41:00 minix kernel:
May 17 15:41:00 minix kernel: uhci-hcd: the interrupt was not for us
May 17 15:41:00 minix kernel: uhci-hcd: the interrupt was not for us
May 17 15:41:31 minix kernel:
May 17 15:41:31 minix kernel: usbd: Device driver 13745831 registered


On Apr 29, 10:22 pm, Althaf <althafkbac...@gmail.com> wrote:
> On 28 April 2010 20:23, crspybits <crspyb...@gmail.com> wrote:
>
> > That's great to see your work onUSBFor Minix 3! I just tried to
> > install and first had to do a make in /usr/src/drivers and then all
> > went OK. In /var/log/messages, I get:
>
> > "uhci-hcd: unable to find any uhci host controllers".
>
> > Seemingly I have to work under Qemu or get myself aUSBhost
> > controller that will work with your driver. I have aUSBhost
> > controller on the computer I'm using but seems not to be UHCI
> > compatible.
>
> > Chris.
>
> Hello Chris,
>                   Please understand that using qemu to develop drivers
> for real hardware is different from developing driver on the real
> one, there are may factors to be considered when we play with
> real hardware, i haven't tested the code on real UHCI host controller,
> its sure to have issues and some quirks have to applied ,
>
> If you don't mind it would be nice, if you debug the code on real hw and
> send me a patch, btw its no fun playing with UHCI :-)
>
> --
> Althaf K Backerhttp://code.google.com/p/minix3-usbsubsystem/http://mykeystrokes.blogspot.com

Althaf

unread,
May 19, 2010, 10:58:11 AM5/19/10
to min...@googlegroups.com
Happy to see that people are interested in the USB part of minix.
Please note that
i'm currently out of station, so the support reply might be delayed.

Regards

Siddu

unread,
May 20, 2010, 6:03:49 AM5/20/10
to min...@googlegroups.com
On Mon, May 17, 2010 at 10:39 PM, crspybits <crsp...@gmail.com> wrote:
I've now got a UHCI board.
It lists from the seller as: "USB4PORT-PCI -- VIA VT6212L 4+1 Port USB
2.0 PCI", but it apparently supports UHCI.

Booted into Linux, the lshw command indicates the following
configuration:
VIA, VT82xxxxx UHCI USB 1.1 Controller VID=1106, DID: 3038).

Hi Chris,

I have 4 USB UHCI Controllers and 1  USB EHCI Controllers which are built within the mother board which is what i found out when i did lshw

but they dont seem to show VID/DID.  May i know what's the reason ?


I edited uhci-hcd.c a little to put in the VID/DID and also edited /
etc/drivers.conf to add this VID/DID.

So in case if i have to do this what values should i feed ? Please let me know
 



--
Regards,
~Sid~
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Gazing through the window at the world outside,
Wondering will mother earth survive ?                
Hoping that the mankind will stop abusing her
Sometime !
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Reply all
Reply to author
Forward
0 new messages