1 /* netisr.h 6.1 83/07/29 */ 2 3 /* 4 * The networking code runs off software interrupts. 5 * 6 * You can switch into the network by doing splnet() and return by splx(). 7 * The software interrupt level for the network is higher than the software 8 * level for the clock (so you can enter the network in routines called 9 * at timeout time). 10 */ 11 #ifdef vax 12 #define setsoftnet() mtpr(SIRR, 12) 13 #endif 14 15 /* 16 * Each ``pup-level-1'' input queue has a bit in a ``netisr'' status 17 * word which is used to de-multiplex a single software 18 * interrupt used for scheduling the network code to calls 19 * on the lowest level routine of each protocol. 20 */ 21 #define NETISR_RAW 0 /* same as AF_UNSPEC */ 22 #define NETISR_IP 2 /* same as AF_INET */ 23 #define NETISR_NS 6 /* same as AF_NS */ 24 #define NETISR_ND 7 /* network disk protocol */ 25 26 #define schednetisr(anisr) { netisr |= 1<<(anisr); setsoftnet(); } 27 28 #ifndef LOCORE 29 #ifdef KERNEL 30 int netisr; /* scheduling bits for network */ 31 #endif 32 #endif 33