|
|
1.1 root 1: /*
2: * Copyright (c) 1982, 1986 Regents of the University of California.
3: * All rights reserved. The Berkeley software License Agreement
4: * specifies the terms and conditions for redistribution.
5: *
6: * @(#)conf.c 7.15 (Berkeley) 4/10/90
7: */
8:
9: #include "param.h"
10: #include "systm.h"
11: #include "buf.h"
12: #include "ioctl.h"
13: #include "tty.h"
14: #include "conf.h"
15:
16: int nulldev(), nodev(), rawread(), rawwrite(), swstrategy();
17:
18: #include "hp.h"
19: #if NHP > 0
20: int hpopen(),hpclose(),hpstrategy(),hpioctl(),hpdump(),hpsize();
21: #else
22: #define hpopen nodev
23: #define hpclose nodev
24: #define hpstrategy nodev
25: #define hpioctl nodev
26: #define hpdump nodev
27: #define hpsize 0
28: #endif
29:
30: #include "tu.h"
31: #if NHT > 0
32: int htopen(),htclose(),htstrategy(),htdump(),htioctl();
33: #else
34: #define htopen nodev
35: #define htclose nodev
36: #define htstrategy nodev
37: #define htdump nodev
38: #define htioctl nodev
39: #endif
40:
41: #include "rk.h"
42: #if NHK > 0
43: int rkopen(),rkstrategy(),rkintr(),rkdump(),rkreset(),rksize();
44: #else
45: #define rkopen nodev
46: #define rkstrategy nodev
47: #define rkintr nodev
48: #define rkdump nodev
49: #define rkreset nodev
50: #define rksize 0
51: #endif
52:
53: #include "te.h"
54: #if NTE > 0
55: int tmopen(),tmclose(),tmstrategy(),tmioctl(),tmdump(),tmreset();
56: #else
57: #define tmopen nodev
58: #define tmclose nodev
59: #define tmstrategy nodev
60: #define tmioctl nodev
61: #define tmdump nodev
62: #define tmreset nulldev
63: #endif
64:
65: #include "tms.h"
66: #if NTMS > 0
67: int tmscpopen(),tmscpclose(),tmscpstrategy();
68: int tmscpioctl(),tmscpdump(),tmscpreset();
69: #else
70: #define tmscpopen nodev
71: #define tmscpclose nodev
72: #define tmscpstrategy nodev
73: #define tmscpioctl nodev
74: #define tmscpdump nodev
75: #define tmscpreset nulldev
76: #endif
77:
78: #include "ts.h"
79: #if NTS > 0
80: int tsopen(),tsclose(),tsstrategy(),tsioctl(),tsdump(),tsreset();
81: #else
82: #define tsopen nodev
83: #define tsclose nodev
84: #define tsstrategy nodev
85: #define tsioctl nodev
86: #define tsdump nodev
87: #define tsreset nulldev
88: #endif
89:
90: #include "mu.h"
91: #if NMT > 0
92: int mtopen(),mtclose(),mtstrategy(),mtioctl(),mtdump();
93: #else
94: #define mtopen nodev
95: #define mtclose nodev
96: #define mtstrategy nodev
97: #define mtioctl nodev
98: #define mtdump nodev
99: #endif
100:
101: #include "ra.h"
102: #if NUDA > 0
103: int udaopen(),udaclose(),udastrategy();
104: int udaioctl(),udareset(),udadump(),udasize();
105: #else
106: #define udaopen nodev
107: #define udaclose nodev
108: #define udastrategy nodev
109: #define udaioctl nodev
110: #define udareset nulldev
111: #define udadump nodev
112: #define udasize 0
113: #endif
114:
115: #include "kra.h"
116: #if NKDB > 0
117: int kdbopen(),kdbstrategy(),kdbdump(),kdbsize();
118: #else
119: #define kdbopen nodev
120: #define kdbstrategy nodev
121: #define kdbdump nodev
122: #define kdbsize 0
123: #endif
124:
125: #include "up.h"
126: #if NSC > 0
127: int upopen(),upstrategy(),upreset(),updump(),upsize();
128: #else
129: #define upopen nodev
130: #define upstrategy nodev
131: #define upreset nulldev
132: #define updump nodev
133: #define upsize 0
134: #endif
135:
136: #include "tj.h"
137: #if NUT > 0
138: int utopen(),utclose(),utstrategy(),utioctl(),utreset(),utdump();
139: #else
140: #define utopen nodev
141: #define utclose nodev
142: #define utstrategy nodev
143: #define utreset nulldev
144: #define utioctl nodev
145: #define utdump nodev
146: #endif
147:
148: #include "rb.h"
149: #if NIDC > 0
150: int idcopen(),idcstrategy(),idcreset(),idcdump(),idcsize();;
151: #else
152: #define idcopen nodev
153: #define idcstrategy nodev
154: #define idcreset nulldev
155: #define idcdump nodev
156: #define idcsize 0
157: #endif
158:
159: #if defined(VAX750) || defined(VAX730)
160: int tuopen(),tuclose(),tustrategy();
161: #else
162: #define tuopen nodev
163: #define tuclose nodev
164: #define tustrategy nodev
165: #endif
166:
167: #include "rx.h"
168: #if NFX > 0
169: int rxopen(),rxstrategy(),rxclose(),rxread(),rxwrite(),rxreset(),rxioctl();
170: #else
171: #define rxopen nodev
172: #define rxstrategy nodev
173: #define rxclose nodev
174: #define rxread nodev
175: #define rxwrite nodev
176: #define rxreset nulldev
177: #define rxioctl nodev
178: #endif
179:
180: #include "uu.h"
181: #if NUU > 0
182: int uuopen(),uustrategy(),uuclose(),uureset(),uuioctl();
183: #else
184: #define uuopen nodev
185: #define uustrategy nodev
186: #define uuclose nodev
187: #define uureset nulldev
188: #define uuioctl nodev
189: #endif
190:
191: #include "rl.h"
192: #if NRL > 0
193: int rlopen(),rlstrategy(),rlreset(),rldump(),rlsize();
194: #else
195: #define rlopen nodev
196: #define rlstrategy nodev
197: #define rlreset nulldev
198: #define rldump nodev
199: #define rlsize 0
200: #endif
201:
202: #include "np.h"
203: #if NNP > 0
204: int npopen(),npclose(),npread(),npwrite();
205: int npreset(),npioctl();
206: #else
207: #define npopen nodev
208: #define npclose nodev
209: #define npread nodev
210: #define npwrite nodev
211: #define npreset nulldev
212: #define npioctl nodev
213: #endif
214:
215: struct bdevsw bdevsw[] =
216: {
217: { hpopen, hpclose, hpstrategy, hpioctl, /*0*/
218: hpdump, hpsize, 0 },
219: { htopen, htclose, htstrategy, htioctl, /*1*/
220: htdump, 0, B_TAPE },
221: { upopen, nulldev, upstrategy, nodev, /*2*/
222: updump, upsize, 0 },
223: { rkopen, nulldev, rkstrategy, nodev, /*3*/
224: rkdump, rksize, 0 },
225: { nodev, nodev, swstrategy, nodev, /*4*/
226: nodev, 0, 0 },
227: { tmopen, tmclose, tmstrategy, tmioctl, /*5*/
228: tmdump, 0, B_TAPE },
229: { tsopen, tsclose, tsstrategy, tsioctl, /*6*/
230: tsdump, 0, B_TAPE },
231: { mtopen, mtclose, mtstrategy, mtioctl, /*7*/
232: mtdump, 0, B_TAPE },
233: { tuopen, tuclose, tustrategy, nodev, /*8*/
234: nodev, 0, B_TAPE },
235: { udaopen, udaclose, udastrategy, udaioctl, /*9*/
236: udadump, udasize, 0 },
237: { utopen, utclose, utstrategy, utioctl, /*10*/
238: utdump, 0, B_TAPE },
239: { idcopen, nulldev, idcstrategy, nodev, /*11*/
240: idcdump, idcsize, 0 },
241: { rxopen, rxclose, rxstrategy, nodev, /*12*/
242: nodev, 0, 0 },
243: { uuopen, uuclose, uustrategy, nodev, /*13*/
244: nodev, 0, 0 },
245: { rlopen, nulldev, rlstrategy, nodev, /*14*/
246: rldump, rlsize, 0 },
247: { tmscpopen, tmscpclose, tmscpstrategy, tmscpioctl, /*15*/
248: tmscpdump, 0, B_TAPE },
249: { kdbopen, nulldev, kdbstrategy, nodev, /*16*/
250: kdbdump, kdbsize, 0 },
251: };
252: int nblkdev = sizeof (bdevsw) / sizeof (bdevsw[0]);
253:
254: int cnopen(),cnclose(),cnread(),cnwrite(),cnioctl();
255: struct tty cons;
256:
257: #include "acc.h"
258: #if NACC > 0
259: int accreset();
260: #else
261: #define accreset nulldev
262: #endif
263:
264: #include "ct.h"
265: #if NCT > 0
266: int ctopen(),ctclose(),ctwrite();
267: #else
268: #define ctopen nulldev
269: #define ctclose nulldev
270: #define ctwrite nulldev
271: #endif
272:
273: #include "dh.h"
274: #if NDH == 0
275: #define dhopen nodev
276: #define dhclose nodev
277: #define dhread nodev
278: #define dhwrite nodev
279: #define dhioctl nodev
280: #define dhstop nodev
281: #define dhreset nulldev
282: #define dh11 0
283: #else
284: int dhopen(),dhclose(),dhread(),dhwrite(),dhioctl(),dhstop(),dhreset();
285: struct tty dh11[];
286: #endif
287:
288: #include "dmf.h"
289: #if NDMF == 0
290: #define dmfopen nodev
291: #define dmfclose nodev
292: #define dmfread nodev
293: #define dmfwrite nodev
294: #define dmfioctl nodev
295: #define dmfstop nodev
296: #define dmfreset nulldev
297: #define dmf_tty 0
298: #else
299: int dmfopen(),dmfclose(),dmfread(),dmfwrite(),dmfioctl(),dmfstop(),dmfreset();
300: struct tty dmf_tty[];
301: #endif
302:
303: #if VAX8600
304: int crlopen(),crlclose(),crlrw();
305: #else
306: #define crlopen nodev
307: #define crlclose nodev
308: #define crlrw nodev
309: #endif
310:
311: #if VAX8200
312: int rx50open(),rx50close(),rx50rw();
313: #else
314: #define rx50open nodev
315: #define rx50close nodev
316: #define rx50rw nodev
317: #endif
318:
319: #if VAX780
320: int flopen(),flclose(),flrw();
321: #else
322: #define flopen nodev
323: #define flclose nodev
324: #define flrw nodev
325: #endif
326:
327: #include "dz.h"
328: #if NDZ == 0
329: #define dzopen nodev
330: #define dzclose nodev
331: #define dzread nodev
332: #define dzwrite nodev
333: #define dzioctl nodev
334: #define dzstop nodev
335: #define dzreset nulldev
336: #define dz_tty 0
337: #else
338: int dzopen(),dzclose(),dzread(),dzwrite(),dzioctl(),dzstop(),dzreset();
339: struct tty dz_tty[];
340: #endif
341:
342: #include "lp.h"
343: #if NLP > 0
344: int lpopen(),lpclose(),lpwrite(),lpreset();
345: #else
346: #define lpopen nodev
347: #define lpclose nodev
348: #define lpwrite nodev
349: #define lpreset nulldev
350: #endif
351:
352: int syopen(),syread(),sywrite(),syioctl(),syselect();
353:
354: int mmrw();
355: #define mmselect seltrue
356:
357: #include "va.h"
358: #if NVA > 0
359: int vaopen(),vaclose(),vawrite(),vaioctl(),vareset(),vaselect();
360: #else
361: #define vaopen nodev
362: #define vaclose nodev
363: #define vawrite nodev
364: #define vaopen nodev
365: #define vaioctl nodev
366: #define vareset nulldev
367: #define vaselect nodev
368: #endif
369:
370: #include "vp.h"
371: #if NVP > 0
372: int vpopen(),vpclose(),vpwrite(),vpioctl(),vpreset(),vpselect();
373: #else
374: #define vpopen nodev
375: #define vpclose nodev
376: #define vpwrite nodev
377: #define vpioctl nodev
378: #define vpreset nulldev
379: #define vpselect nodev
380: #endif
381:
382: #include "pty.h"
383: #if NPTY > 0
384: int ptsopen(),ptsclose(),ptsread(),ptswrite(),ptsstop();
385: int ptcopen(),ptcclose(),ptcread(),ptcwrite(),ptcselect();
386: int ptyioctl();
387: struct tty pt_tty[];
388: #else
389: #define ptsopen nodev
390: #define ptsclose nodev
391: #define ptsread nodev
392: #define ptswrite nodev
393: #define ptcopen nodev
394: #define ptcclose nodev
395: #define ptcread nodev
396: #define ptcwrite nodev
397: #define ptyioctl nodev
398: #define pt_tty 0
399: #define ptcselect nodev
400: #define ptsstop nulldev
401: #endif
402:
403: #include "lpa.h"
404: #if NLPA > 0
405: int lpaopen(),lpaclose(),lparead(),lpawrite(),lpaioctl();
406: #else
407: #define lpaopen nodev
408: #define lpaclose nodev
409: #define lparead nodev
410: #define lpawrite nodev
411: #define lpaioctl nodev
412: #endif
413:
414: #include "dn.h"
415: #if NDN > 0
416: int dnopen(),dnclose(),dnwrite();
417: #else
418: #define dnopen nodev
419: #define dnclose nodev
420: #define dnwrite nodev
421: #endif
422:
423: #include "ik.h"
424: #if NIK > 0
425: int ikopen(),ikclose(),ikread(),ikwrite(),ikioctl(),ikreset();
426: #else
427: #define ikopen nodev
428: #define ikclose nodev
429: #define ikread nodev
430: #define ikwrite nodev
431: #define ikioctl nodev
432: #define ikreset nulldev
433: #endif
434:
435: #include "ps.h"
436: #if NPS > 0
437: int psopen(),psclose(),psread(),pswrite(),psioctl(),psreset();
438: #else
439: #define psopen nodev
440: #define psclose nodev
441: #define psread nodev
442: #define pswrite nodev
443: #define psopen nodev
444: #define psioctl nodev
445: #define psreset nulldev
446: #endif
447:
448: #include "ad.h"
449: #if NAD > 0
450: int adopen(),adclose(),adioctl(),adreset();
451: #else
452: #define adopen nodev
453: #define adclose nodev
454: #define adioctl nodev
455: #define adreset nulldev
456: #endif
457:
458: #include "dhu.h"
459: #if NDHU > 0
460: int dhuopen(),dhuclose(),dhuread(),dhuwrite(),dhuioctl(),dhustop(),dhureset();
461: struct tty dhu_tty[];
462: #else
463: #define dhuopen nodev
464: #define dhuclose nodev
465: #define dhuread nodev
466: #define dhuwrite nodev
467: #define dhuioctl nodev
468: #define dhustop nodev
469: #define dhureset nulldev
470: #define dhu_tty 0
471: #endif
472:
473: #include "vs.h"
474: #if NVS > 0
475: int vsopen(),vsclose(),vsioctl(),vsreset(),vsselect();
476: #else
477: #define vsopen nodev
478: #define vsclose nodev
479: #define vsioctl nodev
480: #define vsreset nodev
481: #define vsselect nodev
482: #endif
483:
484: #include "dmz.h"
485: #if NDMZ > 0
486: int dmzopen(),dmzclose(),dmzread(),dmzwrite(),dmzioctl(),dmzstop(),dmzreset();
487: struct tty dmz_tty[];
488: #else
489: #define dmzopen nodev
490: #define dmzclose nodev
491: #define dmzread nodev
492: #define dmzwrite nodev
493: #define dmzioctl nodev
494: #define dmzstop nodev
495: #define dmzreset nulldev
496: #define dmz_tty 0
497: #endif
498:
499: #include "qv.h"
500: #if NQV > 0
501: int qvopen(), qvclose(), qvread(), qvwrite(), qvioctl(), qvstop(),
502: qvreset(), qvselect(), qvcons_init();
503: #else
504: #define qvopen nodev
505: #define qvclose nodev
506: #define qvread nodev
507: #define qvwrite nodev
508: #define qvioctl nodev
509: #define qvstop nodev
510: #define qvreset nulldev
511: #define qvselect nodev
512: #define qvcons_init nodev
513: #endif
514:
515: #include "qd.h"
516: #if NQD > 0
517: int qdopen(), qdclose(), qdread(), qdwrite(), qdioctl(), qdstop(),
518: qdreset(), qdselect(), qdcons_init();
519: #else
520: #define qdopen nodev
521: #define qdclose nodev
522: #define qdread nodev
523: #define qdwrite nodev
524: #define qdioctl nodev
525: #define qdstop nodev
526: #define qdreset nulldev
527: #define qdselect nodev
528: #define qdcons_init nodev
529: #endif
530:
531: #if defined(INGRES)
532: int iiioctl(), iiclose(), iiopen();
533: #else
534: #define iiopen nodev
535: #define iiclose nodev
536: #define iiioctl nodev
537: #endif
538:
539: #ifdef DATAKIT
540: #include "datakit.h"
541: #include "dktty.h"
542: #include "kmc.h"
543: #endif
544:
545: #if !defined(NDATAKIT) || NDATAKIT == 0
546: #define dkopen nodev
547: #define dkclose nodev
548: #define dkread nodev
549: #define dkwrite nodev
550: #define dkioctl nodev
551: #else
552: int dkopen(),dkclose(),dkread(),dkwrite(),dkioctl();
553: #endif
554:
555: #if !defined(NDKTTY) || NDKTTY == 0
556: #define dktopen nodev
557: #define dktclose nodev
558: #define dktread nodev
559: #define dktwrite nodev
560: #define dktioctl nodev
561: #define dktstop nulldev
562: #define dkt 0
563: #else
564: int dktopen(),dktclose(),dktread(),dktwrite(),dktioctl(), dktstop();
565: struct tty dkt[];
566: #endif
567:
568: #if NKMC > 0
569: int kmcopen(), kmcclose(), kmcwrite(), kmcioctl(), kmcread();
570: int kmcrint(), kmcload(), kmcset(), kmcdclr();
571: #else
572: #define kmcopen nodev
573: #define kmcclose nodev
574: #define kmcwrite nodev
575: #define kmcioctl nodev
576: #define kmcread nodev
577: #define kmcdclr nodev
578: #endif
579:
580: int logopen(), logclose(), logread(), logioctl(), logselect();
581:
582: int fdopen();
583:
584: int ttselect(), seltrue();
585:
586: struct cdevsw cdevsw[] =
587: {
588: cnopen, cnclose, cnread, cnwrite, /*0*/
589: cnioctl, nulldev, nulldev, &cons,
590: ttselect, nodev, NULL,
591: dzopen, dzclose, dzread, dzwrite, /*1*/
592: dzioctl, dzstop, dzreset, dz_tty,
593: ttselect, nodev, NULL,
594: syopen, nulldev, syread, sywrite, /*2*/
595: syioctl, nulldev, nulldev, NULL,
596: syselect, nodev, NULL,
597: nulldev, nulldev, mmrw, mmrw, /*3*/
598: nodev, nulldev, nulldev, NULL,
599: mmselect, nodev, NULL,
600: hpopen, hpclose, rawread, rawwrite, /*4*/
601: hpioctl, nodev, nulldev, NULL,
602: seltrue, nodev, hpstrategy,
603: htopen, htclose, rawread, rawwrite, /*5*/
604: htioctl, nodev, nulldev, NULL,
605: seltrue, nodev, htstrategy,
606: vpopen, vpclose, nodev, vpwrite, /*6*/
607: vpioctl, nulldev, vpreset, NULL,
608: vpselect, nodev, NULL,
609: nulldev, nulldev, rawread, rawwrite, /*7*/
610: nodev, nodev, nulldev, NULL,
611: nodev, nodev, swstrategy,
612: flopen, flclose, flrw, flrw, /*8*/
613: nodev, nodev, nulldev, NULL,
614: seltrue, nodev, NULL,
615: udaopen, udaclose, rawread, rawwrite, /*9*/
616: udaioctl, nodev, udareset, NULL,
617: seltrue, nodev, udastrategy,
618: vaopen, vaclose, nodev, vawrite, /*10*/
619: vaioctl, nulldev, vareset, NULL,
620: vaselect, nodev, NULL,
621: rkopen, nulldev, rawread, rawwrite, /*11*/
622: nodev, nodev, rkreset, NULL,
623: seltrue, nodev, rkstrategy,
624: dhopen, dhclose, dhread, dhwrite, /*12*/
625: dhioctl, dhstop, dhreset, dh11,
626: ttselect, nodev, NULL,
627: upopen, nulldev, rawread, rawwrite, /*13*/
628: nodev, nodev, upreset, NULL,
629: seltrue, nodev, upstrategy,
630: tmopen, tmclose, rawread, rawwrite, /*14*/
631: tmioctl, nodev, tmreset, NULL,
632: seltrue, nodev, tmstrategy,
633: lpopen, lpclose, nodev, lpwrite, /*15*/
634: nodev, nodev, lpreset, NULL,
635: seltrue, nodev, NULL,
636: tsopen, tsclose, rawread, rawwrite, /*16*/
637: tsioctl, nodev, tsreset, NULL,
638: seltrue, nodev, tsstrategy,
639: utopen, utclose, rawread, rawwrite, /*17*/
640: utioctl, nodev, utreset, NULL,
641: seltrue, nodev, utstrategy,
642: ctopen, ctclose, nodev, ctwrite, /*18*/
643: nodev, nodev, nulldev, NULL,
644: seltrue, nodev, NULL,
645: mtopen, mtclose, rawread, rawwrite, /*19*/
646: mtioctl, nodev, nodev, NULL,
647: seltrue, nodev, mtstrategy,
648: ptsopen, ptsclose, ptsread, ptswrite, /*20*/
649: ptyioctl, ptsstop, nulldev, pt_tty,
650: ttselect, nodev, NULL,
651: ptcopen, ptcclose, ptcread, ptcwrite, /*21*/
652: ptyioctl, nulldev, nulldev, pt_tty,
653: ptcselect, nodev, NULL,
654: dmfopen, dmfclose, dmfread, dmfwrite, /*22*/
655: dmfioctl, dmfstop, dmfreset, dmf_tty,
656: ttselect, nodev, NULL,
657: idcopen, nulldev, rawread, rawwrite, /*23*/
658: nodev, nodev, idcreset, NULL,
659: seltrue, nodev, idcstrategy,
660: dnopen, dnclose, nodev, dnwrite, /*24*/
661: nodev, nodev, nulldev, NULL,
662: seltrue, nodev, NULL,
663: /* 25-29 reserved to local sites */
664: nodev, nodev, nodev, nodev, /*25*/
665: nodev, nulldev, nulldev, NULL,
666: nodev, nodev, NULL,
667: lpaopen, lpaclose, lparead, lpawrite, /*26*/
668: lpaioctl, nodev, nulldev, NULL,
669: seltrue, nodev, NULL,
670: psopen, psclose, psread, pswrite, /*27*/
671: psioctl, nodev, psreset, NULL,
672: seltrue, nodev, NULL,
673: nodev, nodev, nodev, nodev, /*28*/
674: nodev, nulldev, nulldev, NULL,
675: nodev, nodev, NULL,
676: adopen, adclose, nodev, nodev, /*29*/
677: adioctl, nodev, adreset, NULL,
678: seltrue, nodev, NULL,
679: rxopen, rxclose, rxread, rxwrite, /*30*/
680: rxioctl, nodev, rxreset, NULL,
681: seltrue, nodev, NULL,
682: ikopen, ikclose, ikread, ikwrite, /*31*/
683: ikioctl, nodev, ikreset, NULL,
684: seltrue, nodev, NULL,
685: rlopen, nodev, rawread, rawwrite, /*32*/
686: nodev, nodev, rlreset, NULL,
687: seltrue, nodev, rlstrategy,
688: logopen, logclose, logread, nodev, /*33*/
689: logioctl, nodev, nulldev, NULL,
690: logselect, nodev, NULL,
691: dhuopen, dhuclose, dhuread, dhuwrite, /*34*/
692: dhuioctl, dhustop, dhureset, dhu_tty,
693: ttselect, nodev, NULL,
694: crlopen, crlclose, crlrw, crlrw, /*35*/
695: nodev, nodev, nulldev, NULL,
696: seltrue, nodev, NULL,
697: vsopen, vsclose, nodev, nodev, /*36*/
698: vsioctl, nodev, vsreset, NULL,
699: vsselect, nodev, NULL,
700: dmzopen, dmzclose, dmzread, dmzwrite, /*37*/
701: dmzioctl, dmzstop, dmzreset, dmz_tty,
702: ttselect, nodev, NULL,
703: tmscpopen, tmscpclose, rawread, rawwrite, /*38*/
704: tmscpioctl, nodev, tmscpreset, NULL,
705: seltrue, nodev, tmscpstrategy,
706: npopen, npclose, npread, npwrite, /*39*/
707: npioctl, nodev, npreset, NULL,
708: seltrue, nodev, NULL,
709: qvopen, qvclose, qvread, qvwrite, /*40*/
710: qvioctl, qvstop, qvreset, NULL,
711: qvselect, nodev, NULL,
712: qdopen, qdclose, qdread, qdwrite, /*41*/
713: qdioctl, qdstop, qdreset, NULL,
714: qdselect, nodev, NULL,
715: /* 42-50 reserved to local sites */
716: nodev, nodev, nodev, nodev, /*42*/
717: nodev, nulldev, nulldev, NULL,
718: nodev, nodev, NULL,
719: iiopen, iiclose, nulldev, nulldev, /*43*/
720: iiioctl, nulldev, nulldev, NULL,
721: seltrue, nodev, NULL,
722: dkopen, dkclose, dkread, dkwrite, /*44*/
723: dkioctl, nulldev, nulldev, NULL,
724: seltrue, nodev, NULL,
725: dktopen, dktclose, dktread, dktwrite, /*45*/
726: dktioctl, dktstop, nulldev, dkt,
727: ttselect, nodev, NULL,
728: kmcopen, kmcclose, kmcread, kmcwrite, /*46*/
729: kmcioctl, nulldev, kmcdclr, NULL,
730: seltrue, nodev, NULL,
731: nodev, nodev, nodev, nodev, /*47*/
732: nodev, nulldev, nulldev, NULL,
733: nodev, nodev, NULL,
734: nodev, nodev, nodev, nodev, /*48*/
735: nodev, nulldev, nulldev, NULL,
736: nodev, nodev, NULL,
737: nodev, nodev, nodev, nodev, /*49*/
738: nodev, nulldev, nulldev, NULL,
739: nodev, nodev, NULL,
740: nodev, nodev, nodev, nodev, /*50*/
741: nodev, nulldev, nulldev, NULL,
742: nodev, nodev, NULL,
743: rx50open, rx50close, rx50rw, rx50rw, /*51*/
744: nodev, nodev, nulldev, 0,
745: seltrue, nodev, NULL,
746: /* kdb50 ra */
747: kdbopen, nulldev/*XXX*/, rawread, rawwrite, /*52*/
748: nodev, nodev, nulldev, 0,
749: seltrue, nodev, kdbstrategy,
750: fdopen, nodev, nodev, nodev, /*53*/
751: nodev, nodev, nodev, NULL,
752: nodev, nodev, NULL,
753: };
754: int nchrdev = sizeof (cdevsw) / sizeof (cdevsw[0]);
755:
756: int mem_no = 3; /* major device number of memory special file */
757:
758: /*
759: * Swapdev is a fake device implemented
760: * in sw.c used only internally to get to swstrategy.
761: * It cannot be provided to the users, because the
762: * swstrategy routine munches the b_dev and b_blkno entries
763: * before calling the appropriate driver. This would horribly
764: * confuse, e.g. the hashing routines. Instead, /dev/drum is
765: * provided as a character (raw) device.
766: */
767: dev_t swapdev = makedev(4, 0);
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.