Commit Graph

50 Commits

Author SHA1 Message Date
pooka 28a9c4ad96 use config_init_component() 2010-03-25 19:54:08 +00:00
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 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 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 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 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 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
pooka b90ec0f9fd purge some stuff not used by this component anymore 2009-12-19 11:29:26 +00:00
pooka aef2ecc09f add component for usb printers (ulpt driver) 2009-12-15 15:52:30 +00:00
pooka 5f20163f32 Support more stuff, e.g. mapping alternate interface setting to the
correct ugen ioctl.
2009-12-15 15:50:37 +00:00
pooka 23a5898cdd Attach uhub@uhub (in addition to uhub@roothub, which was already there). 2009-12-04 17:37:05 +00:00
pooka 1c32fa54df one more path adjustment for rump_vfs_makedevnodes() change 2009-12-03 15:07:09 +00:00
pooka 303e90e2c8 Give this a makefile for easy rebuild of all the components when
the kernel ABI changes.
2009-11-11 13:54:54 +00:00
pooka 36f718311e whoops, restore probing of ugen{0..3} instead of just ugen2 2009-10-14 23:29:42 +00:00
pooka b7f550b683 add one more passthrough 2009-10-13 18:36:48 +00:00
pooka 608e3170ea * support async transfers
* make it possible to abort transfers
(these are all cheap hacks, but make things work)
2009-10-05 13:00:37 +00:00
pooka 29b5e8e633 Attach sd to devsw and create /dev/sd0[a-h]. 2009-10-05 08:34:53 +00:00
pooka bc9ecc7b8b * pass a few write requests through to the device.
* drop async transfer requests on the floor (no, this does not make
  anything work, but it's the easiest way to prevent a receive pipe
  transfer request from hanging everything.  one tiny bugstep at a time ...)
2009-10-04 17:46:58 +00:00
pooka 6e184706c2 Pass some requests to the device. Hi ho, required for rum. 2009-10-04 10:44:31 +00:00
pooka 4712dfb73d Support rum@usb. Currently manages to configure and attach:
pain-rustique:66:~> ./rumpusbprobe
mainbus0 (root)
rumpusbhc2 at mainbus0
usb0 at rumpusbhc2: USB revision 2.0
uhub0 at usb0: vendor 0x0000 product 0x0000, class 9/0, rev 0.00/0.00, addr 1
rum0 at uhub0 port 1
rum0: D-Link DWA-111, rev 2.00/0.01, addr 2
rum0: MAC/BBP RT2573 (rev 0x2573a), RF RT2528, address 00:24:01:31:98:9a
rum0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
rum0: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
2009-10-04 10:43:03 +00:00
pooka 3e8421a27d Support net80211 in rump (for wireless device drivers, therefore in "dev") 2009-10-04 10:40:40 +00:00
pooka a611f250f5 Report the root hub as self-powered. Works better when attaching
power-hungry devices.
2009-10-03 20:46:49 +00:00
pooka 8d655ed84b probe and attach ugen0 through ugen3 2009-10-03 19:07:33 +00:00
pooka 713aaa79d5 Checkpoint rump usb host controller implementation. It's pretty
barebones, but manages to succesfully probe and attach the two USB
memory sticks I own.  (I don't own much USB junk, *hint hint*)

"dmesg":
pain-rustique:50:~> ./rumpusbprobe
mainbus0 (root)
rumpusbhc0 at mainbus0
usb0 at rumpusbhc0: USB revision 2.0
uhub0 at usb0: vendor 0x0000 product 0x0000, class 9/0, rev 0.00/0.00, addr 1
umass0 at uhub0 port 1 configuration 1 interface 0
umass0: vendor 0x1221 product 0x3234, rev 2.00/0.00, addr 2
scsibus0 at umass0: 2 targets, 1 lun per target
sd0 at scsibus0 target 0 lun 0: <USB2.0, Flash Disk, 2.20> disk removable
sd0: fabricating a geometry
sd0: 2023 MB, 2023 cyl, 64 head, 32 sec, 512 bytes/sect x 4143104 sectors

[switch the other stick in]

pain-rustique:51:~> ./rumpusbprobe
mainbus0 (root)
rumpusbhc0 at mainbus0
usb0 at rumpusbhc0: USB revision 2.0
uhub0 at usb0: vendor 0x0000 product 0x0000, class 9/0, rev 0.00/0.00, addr 1
umass0 at uhub0 port 1 configuration 1 interface 0
umass0: Kingston Technology product 0x1603, rev 2.00/2.00, addr 2
scsibus0 at umass0: 2 targets, 1 lun per target
sd0 at scsibus0 target 0 lun 0: <Kingston, DataTraveler 2.0, 1.00> disk removable
sd0: fabricating a geometry
sd0: 974 MB, 974 cyl, 64 head, 32 sec, 512 bytes/sect x 1994752 sectors
pain-rustique:52:~>
2009-10-02 15:35:46 +00:00
pooka ee5f440732 include usbroothub_subr.c 2009-10-02 12:41:38 +00:00
pooka f9a183b5d6 Checkpoint some work-in-progress for USB support in rump (currently
with limited scsi@umass support).  However, not useful for anything
before I get the ugen-to-rump usb host controller cleaned up and
checkpointed.
2009-10-01 21:46:30 +00:00