nusb/ether -t aue $etherargs $id
case 0bda8150
nusb/ether -t url $etherargs $id
- case 18d14ee3 0bb40003
+ case 18d14ee3 0bb40003 10046344
nusb/ether -t rndis $etherargs $id
+ case 12092301 # keyboardio model 01 (IAD)
+ nusb/kb $id
+ # prevent attachment to nusb/kb for:
+ case 054c0268 # sony dualshock 3 (ps3) controller
case *
switch($4){
case *03
# CDC ethernet
nusb/ether $etherargs $id
case *08
- if(nusb/disk $id) {@{
+ if(nusb/disk $id) @{
rfork ne
cd '#σ/usb'
devs=sdU^($1 $5)
for(dev in $devs $devs.*) if(test -d $dev) {
diskparts $dev
- for(part in $dev/dos* $dev/9fat) if(test -r $part) {
+ for(part in $dev/dos* $dev/9fat* $dev/data) if(test -r $part && ~ `{fstype $part} dos) {
mkdir -m 0700 '#σc/'^$dev || exit
{dossrv -s -f $part &} <[0=1] |
echo 0 >'#σc/'^$dev/dos
exit
}
}
- }&}
+ }
case *
# Raspberry Pi ethernet will always appear as /net/etherU0
- if(~ $2 0424)
- nusb/ether -t smsc $etherargs $1:0
+ if(~ $2 0424){
+ if(~ $3 7800)
+ nusb/ether -t lan78xx $etherargs $1:0
+ if not
+ nusb/ether -t smsc $etherargs $1:0
+ }
}
}
}
rc < '#σ/usb/usbevent' &
}
+# usbd removes this file once all devices have been enumerated
+while(test -e /env/usbbusy)
+ sleep 1
+
bind -a '#σ/usb' /dev
bind -a '#σ/usbnet' /net