devd automatic conversion of umass[0-9] to da[0-9]
Julian Stacey
jhs at berklix.org
Wed May 6 16:07:45 UTC 2009
Hi folks,
Config below works for a number of memory sticks simultaneously;
But if one already has a dvd burner plugged in,
then it fails as devd sees (in case of a first memory stick) a new umass1.
Although /dev/da0* get created, devd tries to access non existant da1*.
Any ideas how to improve this ? ( Using 7.1-RELEASE )
--------------
attach 1000 { # "JHS: Brown"
device-name "umass[0-9]+" ;
match "vendor" "0x0000" ; # Manufacturer didnt register ?
match "product" "0x7777" ;
match "devclass" "0x00" ;
match "devsubclass" "0x00" ;
match "release" "0x0101" ;
match "intclass" "0x08" ;
match "intsubclass" "0x06" ;
action "touch /tmp/devd-debug/usb_brown" ;
action "sleep 4; \
rm -f /devusb/brown /devusb/brown.ufs /devusb/brown.bde ; \
ln -s /dev/`echo $device-name|sed -e s/umass/da/` \
/devusb/brown ; \
ln -s /dev/`echo $device-name|sed -e s/umass/da/`d \
/devusb/brown.ufs ; \
ln -s /dev/`echo $device-name|sed -e s/umass/da/`d.bde \
/devusb/brown.bde ; \
gbde attach /dev/da`echo $device-name|sed -e s/umass//`d \
-p `cat /home/pass/.words/gbde/mine`; \
fsck -y -t ufs /devusb/brown.bde ; \
mount -t ufs -o noatime /devusb/brown.bde /usb/brown.ufs" ;
};
detach 1000 { # "JHS: Brown"
# device-name "umass[0-9]+" ;
match "vendor" "0x0000" ;
match "product" "0x7777" ;
match "devclass" "0x00" ;
match "devsubclass" "0x00" ;
match "release" "0x0101" ;
match "intclass" "0x08" ;
match "intsubclass" "0x06" ;
# match "sernum" "B55E32FD" ; # not on detach.
action "gbde detach /dev/`echo $device-name|sed -e s/umass/da/`d; \
rm -f /devusb/brown /devusb/brown.ufs /devusb/brown.bde" ;
# Assume you have manually unmounted before detach.
};
Cheers,
Julian
--
Julian Stacey: BSDUnixLinux C Prog Admin SysEng Consult Munich www.berklix.com
Mail plain ASCII text. HTML & Base64 text are spam. www.asciiribbon.org
More information about the freebsd-usb
mailing list