1: /* 2: * Copyright (c) 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: * @(#)uprobe.c 2.1 (2.11BSD GTE) 6/16/93 7: */ 8: 9: /* 10: * The uprobe table contains the pointers to the user-level probe routines 11: * that may attempt to make various devices interrupt. 12: * 13: * NOTES: 14: * Reads and writes to kmem (done by grab, stuff) are currently done a 15: * byte at a time in the kernel. Also, many of these are untested and 16: * some of them assume that if something is at the address, it is the 17: * correct device. Others assume that if something *isn't* at the 18: * address, the correct device *is*. Why are you looking at me like 19: * that? 20: */ 21: 22: #include "uprobe.h" 23: 24: int xpprobe(), hkprobe(), rlprobe(), rkprobe(), htprobe(), siprobe(), 25: tmprobe(), tsprobe(), cnprobe(), dzprobe(), dhprobe(), dmprobe(), 26: drprobe(), lpprobe(), dhuprobe(), raprobe(), rxprobe(), brprobe(), 27: dnprobe(), tmsprobe(), dhvprobe(); 28: 29: UPROBE uprobe[] = { 30: "hk", hkprobe, /* hk -- rk611, rk06/07 */ 31: "hp", xpprobe, /* hp -- rjp04/06, rwp04/06 */ 32: "ra", raprobe, /* ra -- MSCP */ 33: "rk", rkprobe, /* rk -- rk05 */ 34: "rl", rlprobe, /* rl -- rl01/02 */ 35: "si", siprobe, /* si -- SI 9500 for CDC 9766 */ 36: "xp", xpprobe, /* xp -- rm02/03/05, rp04/05/06, Diva, Ampex, SI Eagle */ 37: "ht", htprobe, /* ht -- tju77, twu77, tje16, twe16 */ 38: "tm", tmprobe, /* tm -- tm11 */ 39: "ts", tsprobe, /* ts -- ts11 */ 40: "dh", dhprobe, /* dh -- DH11 */ 41: "dm", dmprobe, /* dm -- DM11 */ 42: "dr", drprobe, /* dr -- DR11W */ 43: "du", dhuprobe, /* du -- DHU11 */ 44: "dhv", dhvprobe, /* dhv -- DHV11 */ 45: "dz", dzprobe, /* dz -- dz11 */ 46: "cn", cnprobe, /* cn -- kl11, dl11 */ 47: "lp", lpprobe, /* lp -- line printer */ 48: "rx", rxprobe, /* rx -- RX01/02 */ 49: "br", brprobe, /* br -- EATON 1538 BR1537/BR1711 */ 50: "dn", dnprobe, /* dn -- dn11 autodialer */ 51: "tms", tmsprobe, /* tms -- TMSCP tape controller */ 52: 0, 0, 53: };