9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: cinap_lenrek@gmx.de
To: 9fans@9fans.net
Subject: Re: [9fans] these are release of 9front?
Date: Tue,  8 Jan 2013 10:59:44 +0100	[thread overview]
Message-ID: <f639869ae95b2fc884122bfaa35d4392@rei2.9hal> (raw)
In-Reply-To: <6013d18eeba127f0c77bf3e6b8ad8255@hamnavoe.com>

how can it not interoperate with plan9 programs? the usb subsystem
in 9front just organizes the instantiation of userspace drivers
differently. the kernel hci drivers and interfaces are the same
(biggest difference is that we added buffer delay control for iso
endpoints for usb audio).

instead of embedding all usb drivers in usbd, we run them as
separate fileservers/programs using lib9p instead of a
usb-fileserver-driver-framework-factory.

to get these fileservers into a global namespace, we created a
device that lets one register global mount points. so when i plug
in my usb camera, nusb/ptp gets started and the cameras filesystem
appears under /shr/sdU1.2 ect. a lot of complexity can be removed
from the drivers when one has its own processes and not have to
worry about sharing memory and filedescriptors with everything
else. a crash in one driver doesnt bring all usb down and one
can just kill a driver and attach another one for debugging without
loosing the other devices or the hub.

in a way, this is just like the old usb stack worked. you just
have a small usb helper lib for common stuff like activating
endpoints and parsing descriptors and distinct programs for
drivers. to make it work for hotplug, you use the /shr instead
of /srv.

all this doesnt matter for programs using usb devices. the
filesystem interfaces behave the same.

--
cinap



  reply	other threads:[~2013-01-08  9:59 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-08  1:07 Francesco Cardi
2013-01-08  1:17 ` John Floren
2013-01-08  1:27 ` sl
2013-01-08  9:09 ` Richard Miller
2013-01-08  9:59   ` cinap_lenrek [this message]
2013-01-08 10:15     ` Richard Miller
2013-01-08 10:36       ` cinap_lenrek
2013-01-08 10:52         ` Richard Miller
2013-01-08 11:10           ` lucio
2013-01-08 11:24           ` Bence Fábián
2013-01-08 14:14             ` steve
2013-01-08 15:37               ` erik quanstrom
2013-01-08 13:48           ` sl
2013-01-08 16:22             ` Wes Kussmaul
2013-01-08 14:24           ` cinap_lenrek
2013-01-08 14:33           ` cinap_lenrek
2013-01-08 14:52             ` David Leimbach
2013-01-08 15:53             ` Nemo
2013-01-08 19:38               ` Richard Miller
2013-01-08 20:40                 ` mveety
2013-01-08 20:48                   ` erik quanstrom
2013-01-08 20:54                     ` Matthew Veety
2013-01-08 22:42                       ` Federico G. Benavento
2013-01-09  4:23                 ` cinap_lenrek
2013-01-12 13:48                   ` Richard Miller
2013-01-12 14:12                     ` erik quanstrom
2013-01-12 14:35                       ` Richard Miller
2013-01-12 14:47                         ` Richard Miller
2013-01-08 19:18           ` erik quanstrom

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f639869ae95b2fc884122bfaa35d4392@rei2.9hal \
    --to=cinap_lenrek@gmx.de \
    --cc=9fans@9fans.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).