141488Smckusick /* 241488Smckusick * Copyright (c) 1982, 1986, 1990 The Regents of the University of California. 341488Smckusick * All rights reserved. 441488Smckusick * 541488Smckusick * %sccs.include.redist.c% 641488Smckusick * 7*56510Sbostic * @(#)conf.c 7.5 (Berkeley) 10/11/92 841488Smckusick */ 941488Smckusick 10*56510Sbostic #include <sys/param.h> 11*56510Sbostic #include <stand/saio.h> 1241488Smckusick 1349159Sbostic extern int nullsys(), nodev(), noioctl(); 1441488Smckusick 1554073Shibler #ifdef BOOT 1654073Shibler #define ctstrategy nullsys 1754073Shibler #define ctopen nodev 1854073Shibler #define ctclose nullsys 1954073Shibler #else 2049159Sbostic int ctstrategy(), ctopen(), ctclose(); 2154073Shibler #endif 2249159Sbostic #define ctioctl noioctl 2341488Smckusick 2449159Sbostic int rdstrategy(), rdopen(); 2549159Sbostic #define rdioctl noioctl 2641488Smckusick 2749159Sbostic int sdstrategy(), sdopen(); 2849159Sbostic #define sdioctl noioctl 2941488Smckusick 3041488Smckusick 3141488Smckusick struct devsw devsw[] = { 3254073Shibler { "ct", ctstrategy, ctopen, ctclose, ctioctl }, /*0*/ 3354073Shibler { "??", nullsys, nodev, nullsys, noioctl }, /*1*/ 3454073Shibler { "rd", rdstrategy, rdopen, nullsys, rdioctl }, /*2*/ 3554073Shibler { "??", nullsys, nodev, nullsys, noioctl }, /*3*/ 3654073Shibler { "sd", sdstrategy, sdopen, nullsys, sdioctl }, /*4*/ 3741488Smckusick }; 3849159Sbostic 3949159Sbostic int ndevs = (sizeof(devsw)/sizeof(devsw[0])); 4054073Shibler 4154073Shibler /* 4254073Shibler * Convert old style unit syntax into adaptor/controller/unit 4354073Shibler */ 4454073Shibler devconvert(io) 4554073Shibler register struct iob *io; 4654073Shibler { 4754073Shibler if (io->i_unit == 0 || io->i_adapt || io->i_ctlr) 4854073Shibler return; 4954073Shibler io->i_adapt = io->i_unit / 8; 5054073Shibler io->i_ctlr = io->i_unit % 8; 5154073Shibler io->i_unit = 0; 5254073Shibler } 53