Commit Graph

89 Commits

Author SHA1 Message Date
pooka
57959b3859 Convert to pseudo-root.
These can be moved out of wip (once I get some time).
2010-03-08 10:57:25 +00:00
pooka
9ca7991252 need -Irumpkern for RUMP_COMPONENT 2010-03-08 10:56:12 +00:00
pooka
38516f3ec5 convert to ioconf & pseudo-root 2010-03-08 10:54:21 +00:00
pooka
d5184dc0e0 Update minimum to make compile. i don't have the hardware anymore,
so i can't test other changes.
2010-03-08 10:36:10 +00:00
pooka
1590160e06 convert to ioconf/pseudo-root 2010-03-08 10:30:17 +00:00
pooka
e5fc54d868 Use config pseudo-root keyword instead of monolithic configurations
starting from root.
2010-03-08 10:24:37 +00:00
pooka
6ee30969d0 Make rump devfs expose ttyU1 and dtyU1 as well. 2010-03-07 17:44:40 +00:00
pooka
89e1ba2569 Rename IOCONFIG to IOCONF. It matches the config(1) keyword and
aligns better in Makefiles.
2010-03-01 15:41:15 +00:00
pooka
510a73e003 Introduce RUMP_COMPONENT. It behaves mostly like a simplified
module which is linked into the kernel and cannot be unloaded.
The main purpose is to get the proper constructors run and create
any /dev nodes necessary for said component.  Once more of the
kernel (e.g. networking stack and device drivers) are converted to
MODULE and devfs pops up from somewhere, rump components can be
retired.
2010-03-01 13:12:19 +00:00
pooka
0bd00d250f add u3g 2010-03-01 11:34:27 +00:00
pooka
546515e65b * abort correct endpoint in bulk xfers
* actually free memory in the freem method (well, usually stick
  it to the usb freelist, but same thing)
2010-02-23 14:05:04 +00:00
pooka
da9a2c25a9 * get UDESC_CONFIG for proper config index
* support UR_SET_CONFIG for root hub
* set port change bits for root hub interrupts
+ cosmetics
2010-02-22 14:47:40 +00:00
pooka
91f03c22e5 Fix snafu with error reporting in bulk transfers. 2010-02-20 13:56:29 +00:00
pooka
0569cd0d25 Don't leak control endpoint descriptors. 2010-02-18 16:24:19 +00:00
pooka
35e8f16689 Actually, detach is possible enough if the device isn't in use.
So just support it.
2010-02-18 16:13:30 +00:00
pooka
a798dc1e14 Change match to be based on the existence of the ugen device node
and signal the root hub interrupt only once we are succesfully able
to open the device node.  This makes it possible to insert a device
after the rump kernel was booted and have it succesfully attach
(does not make detach possible yet, though, as there are some
ugen and host kernel uhci/ohci/ehci evil crashies with that).

XXX: optimally, match would fail if there is a permanent error in
opening.  However, it is difficult to figure out the difference
between the device backing ugen not being present, a transient
error in opening and a permanent error in opening.  For example,
which of the latter two would EPERM be?  And, ugen returns ENXIO
if the device is not present, but how would be know that's really
the case and not some other ENXIO from elsewhere in the stack?
2010-02-18 15:25:13 +00:00
pooka
d97a943f37 Support SCSIVERBOSE. 2010-02-17 20:44:34 +00:00
pooka
80b0497c2e * allow one more request
* print warning if a request which might fail, fails
* report error from bulk transfers
2010-02-17 20:39:53 +00:00
pooka
643ba90bf0 Globally define -Wno-pointer-sign, as it has become a pointless
exercise of "add it to every Makefile individually".

XXX: should autosynchronize with the rest of the kernel buildflags
in sys/conf/Makefile.kern.inc.
2010-02-16 20:42:44 +00:00
pooka
8b36ef683b I forgot I didn't fix kern/40505 yet, and hence using delay()/DELAY()
in rumps is hard due to some archs having a colorful idea of what
they should be like.  So temporarily disable build of components
using those for non-i386 (use the no-need-to-mess-with-setlists
approach).
2010-02-12 12:07:12 +00:00
pooka
91af2ab811 adjust more config files for files.rump move 2010-02-12 04:21:57 +00:00
pooka
955121353e move files.rump out of wip 2010-02-12 04:20:51 +00:00
pooka
a733498944 Move a bunch of rump components from dev/wip to dev/lib now that
they've reached a certain maturity.
2010-02-11 02:22:09 +00:00
pooka
d444f29418 Rename rumpusbhc to ugenhc, as that better describes what it does.
(the full component name is rumpdev_ugenhc)
2010-02-10 02:26:23 +00:00
pooka
ee03580145 The first step to having cd work is to remember to attach it and
go "devfs" on it.
2010-02-10 02:08:34 +00:00
pooka
93256256ef add cd@scsi and cd@atapi (untested. if you have a usb cd drive, let me know) 2010-02-09 19:02:19 +00:00
pooka
84e94fc428 Now that there is a working bus.h for all architectures, move rump
bus dma out of a wip place and into rumpdev where it belongs.
2010-02-09 18:57:03 +00:00
pooka
bd6771a8d0 * UR_CBI_ADSC ctrl req fails with EIO sometime for unknown reasons.
Let it instead of panicking.  Doesn't seem to affect functionality.
* process pipe queue only until it is empty
2010-02-09 18:27:17 +00:00
pooka
9d22319fa9 Move the net80211 support component into the proper place in "net"
and install as rumpnet_net80211.
2010-02-05 22:01:38 +00:00
pooka
f5b877c68d Put common stuff in a single file which can be included. 2010-02-04 00:37:08 +00:00
pooka
c192756108 Convert to ioconf new world order: define attachments using config(1)
grammar instead of wildly copypasted, hand-edited and glue-sniffed
C files.
2010-02-03 21:18:38 +00:00
pooka
3cf97d3909 one more request type to pass through (seriously, i'll make it pass
all of them through very soon.  just want to debug a little more)
2010-02-03 18:14:56 +00:00
pooka
f91185803c Add sysmon rump component. 2010-01-31 03:06:59 +00:00
pooka
edbb5bb953 no longer used 2010-01-30 05:09:24 +00:00
pooka
ac4d3e46b5 let attach via module space 2010-01-26 17:50:02 +00:00
pooka
fcad67762f Add bpf rump component (and put in some wscons stuff i forgot to earlier). 2010-01-19 22:38:21 +00:00
pooka
e0714677a2 cgd is attached via the module interface now instead of pseudodevs. 2010-01-13 00:31:57 +00:00
pooka
2d1ed1666f decend into ums, ukbd and wscons 2010-01-11 02:15:38 +00:00
pooka
6a31202221 Support ums (usb mouse) and ukbd (usb keyboard) drivers in rump.
(both components include tty support and uhid currently.  they should
be split out to separate ones.  i'll do that soon'ish).
2010-01-11 02:15:20 +00:00
pooka
20d948900e Add wscons rump component. 2010-01-11 02:12:51 +00:00
pooka
4f48ec16a6 Add a simple hack to make interrupt pipes work (can't close them
yet ... except with SIGINT.  "muah").
2010-01-10 22:13:18 +00:00
pooka
c73aaa6bc2 pass a few more requests through to ugen 2010-01-10 21:30:16 +00:00
pooka
c5aba687b9 Create sashimi nodes too. 2009-12-22 13:34:35 +00:00
pooka
a942008121 Include tty driver here for now to make this usable. Will disappear
from here later when I figure out the proper place.
(I'd commit it as a separate component, but I can't figure out how
to classify it, since it's logically none of vfs/net/dev)
2009-12-20 19:44:21 +00:00
pooka
70b07cba47 +libulpt 2009-12-20 15:43:57 +00:00
pooka
fe1700b9bf Add ucom@usb support. This uses the uplcom hardware driver currently
(because that's the hardware I happen to have), but others can just
be plugged in if a need arises.
2009-12-20 15:43:13 +00:00
pooka
2960de1123 Improve bulk transfer implementation by adding more complete
support for short reads.

Ironically, in some cases this works *worse* than the previous
incorrect implementation which silently ignored short reads.
Namely, I can now probe my sd@umass USB stick only once without
having to replug it.  Some ugen "bus reset" is probably needed,
but what exactly is unknown, and manual handjobs will have to
suffice for now.
2009-12-20 15:32:46 +00:00
pooka
c3ed0371c2 Replace totally handwritten ioconf.c with only a semi handwritten
one, partially now generated with config(1).
2009-12-19 11:55:23 +00:00
pooka
af0de61919 get rid of unnecessary headers 2009-12-19 11:48:30 +00:00
pooka
13d2acdf04 define USBVERBOSE 2009-12-19 11:48:17 +00:00