#sccs "@(#)uts/kern/sys:config.h 1.5" /* * config.h - May 1985 * defines format of kernel master file * used in config, lddrv */ #ifndef config_h #define config_h #define TSIZE 50 /* max configuration table */ #define DSIZE 50 /* max device table */ #define ASIZE 20 /* max alias table */ #define MSIZE 100 /* max address map table */ #define PSIZE 128 /* max keyword table */ #define BDEVSIZE 16 /* max block device table */ #define CDEVSIZE 50 /* max character device table */ #define NDEVSIZE 10 /* max non-device table */ #define INFO 02000 /* pointer to strema infor field needs filling*/ #define RELEASE 01000 /* release routine exists */ #define STRATEGY 0400 /* strategy routine exists */ #define PRINT 0200 /* print routine exists */ #define INIT 0100 /* initialization routine exists */ #define PWR 040 /* power fail routine exists */ #define OPEN 020 /* open routine exists */ #define CLOSE 010 /* close routine exists */ #define READ 04 /* read routine exists */ #define WRITE 02 /* write routine exists */ #define IOCTL 01 /* ioctl routine exists */ #define ONCE 0200 /* allow only one specification of device */ #define NOCNT 0100 /* suppress device count field */ #define SUPP 040 /* suppress interrupt vector (on print) */ #define REQ 020 /* required device */ #define BLOCK 010 /* block type device */ #define CHAR 04 /* character type device */ #define FLT 02 /* interrupt vector in range 0300 - 0774 */ #define FIX 01 /* interrupt vector in range 0 - 0274 */ struct t { char *devname; /* pointer to device name */ short type; /* ONCE,NOCNT,SUPP,REQ,BLOCK,CHAR,FLT,FIX */ char *handler; /* pointer to interrupt handler */ short count; /* sequence number for this device */ short blk; /* major device number if block type device */ short chr; /* major device number if char. type device */ short mlt; /* number of devices on controller */ }; struct t2 { char dev[9]; /* device name */ short type2; /* ONCE,NOCNT,SUPP,REQ,BLOCK,CHAR,FLT,FIX */ short block; /* major device number if block type device */ short charr; /* major device number if char. type device */ short mult; /* number of controllers */ short mask; /* device mask indicating existing handlers */ short lmask; /* linesw mask indicating existing handlers */ char hndlr[5]; /* handler name */ short dcount; /* number of controllers present */ short acount; /* number of devices */ }; struct t3 { char new[9]; /* alias of device */ char old[9]; /* reference name of device */ }; struct t4 { char indef[21]; /* input parameter keyword */ char oudef[21]; /* output definition symbol */ char value[21]; /* actual parameter value */ char defval[21]; /* default parameter value */ }; #endif config_h