mark@uunet.uu.net (Mark Valentine) (09/20/88)
Keywords: SVR3 idinstall cdevsw[] clone This is a "has anyone managed to read between the lines" problem. I've written a couple of drivers to run under 386 UNIX System V Release 3.1 on an Olivetti M380 (I think it's called the AT&T 6386 PC over the water). Each driver is capable of controlling several boards of the same type, via cloneable devices. This requires several entries in cdevsw[] per driver, but the problem is I can find no supported way of specifying this within the framework of a "Driver Software Package", using Master/System/Node files. There are some unclear (to me) remarks in the manual pages idinstall(1M) and mdevice(4)/sdevice(4), for example the undocumented 'idmaster' command. It seems to me I want two entries in the Master file (since this corresponds roughly to cdevsw[] entries), but all the variations I've tried on that just leave the second entry ignored. Here's what I think I'd like to be able to express, but the 'id*' utilities just don't want to speak the same language... Master: board0 I SicH foo 0 0 ... ... ... board1 I SicH foo 0 0 ... ... ... System: board0 Y 1 5 1 5 ... ... ... ... board1 Y 1 5 1 7 ... ... ... ... Node: clone foo0 c board0 clone foo1 c board1 It just seems to me like AT&T have managed to commit the classic error of creating a 'user friendly' front-end which fails to allow access to the full power of the underlying system. Should I try hacking past idinstall and idmknod? Has anyone discovered how to drive this lot properly?? Am I just not RTFM'ing very well??? I'd be grateful of any relevant experience people are willing to throw my way. Please reply or cc: directly, as unix-wizards isn't currently making it to this neck of the woods. T in A, Mark. __ Mark Valentine, Spider Systems Limited, Edinburgh, UK. mark@spider.co.uk mark%spider.co.uk@ukc.ac.uk /\oo/\ mark%spider.co.uk@uunet.uu.net