|
|
1.1 ! root 1: hhss -- Device Driver ! 2: ! 3: ! 4: The COHERENT-286 driver hhss adds support for up to eight serial lines: ! 5: /ddeevv/hhss0000 through /ddeevv/hhss0077. Serial lines controlled via hhss can be opened ! 6: into either of two ways, as follows: ! 7: ! 8: /ddeevv/hhss?? ! 9: Polled, local mode (no modem control). ! 10: ! 11: /ddeevv/hhss??rr ! 12: Polled, remote mode (modem control). ! 13: ! 14: Any port used with hhss will be polled, i.e., interrupt operation is not ! 15: used. Please refer to the Lexicon article ccoomm for explanations of ! 16: ``local'' vs ``remote'' and ``polled'' vs ``interrupt-driven''. ! 17: ! 18: To use hhss with COHERENT 286, first configure it to match your equipment ! 19: (see below), then load the driver using the following command while running ! 20: as the superuser rroooott: ! 21: ! 22: /etc/drvld -r /drv/hs ! 23: ! 24: To unload the driver without rebooting COHERENT 286, first use the ppss ! 25: command with the -dd option to get the process identifier for hhss process, ! 26: then unload the driver process by using the kkiillll command. Note that the hhss ! 27: driver process will not unload until all ooppeenned ports have been closed. ! 28: For example (user input shown in bold): ! 29: ! 30: $ ppss -dd ! 31: TTY PID ! 32: ------- 0 <idle> ! 33: ------- 38 <hs> ! 34: ... ! 35: $ kkiillll kkiillll 3388 ! 36: ! 37: To use hhss with COHERENT 386, link it into the COHERENT 386 kernel by using ! 38: the script BBuuiilldd, which is included with the COHERENT 386 Device Driver ! 39: Kit. ! 40: ! 41: The present version of COHERENT limits ``polled'' operation to one device ! 42: driver at a time. Therefore, if any of the ccoomm family of devices is used ! 43: in polled mode, hhss devices cannot be used. Conversely, /ddeevv/ccoomm11ppll through ! 44: /ddeevv/ccoomm44ppll and /ddeevv/ccoomm11pprr through /ddeevv/ccoomm44pprr cannot be used if the hhss ! 45: driver is in use. Both drivers can be present at the same time, but polled ! 46: devices may not be ooppeenn under both drivers at the same time. Note that ! 47: enabling a port via /eettcc/eennaabbllee keeps it open continuously. ! 48: ! 49: _P_o_r_t _C_o_n_f_i_g_u_r_a_t_i_o_n ! 50: The default configuration for the hhss driver is for four ports, at ! 51: hexadecimal addresses 0x3F8, 0x2F8, 0x3E8, and 0x2E8, at a speed of 9600 ! 52: baud. The driver is configured by setting the following parameters: ! 53: ! 54: 11. The number of ports. ! 55: ! 56: 22. The I/O address for each port. ! 57: ! 58: 33. The default speed of each port. ! 59: ! 60: All steps in the configuration must be done as the superuser rroooott. Patch ! 61: the number of ports into driver variable HHSSNNUUMM. For example, if you wish ! 62: to support three ports, enter: ! 63: ! 64: /conf/patch /drv/hs HSNUM_=3 ! 65: ! 66: Address and speed information are stored sequentially starting at variable ! 67: HHSS_PPOORRTTSS_. The speed for each port is indicated by the corresponding value ! 68: found in <tteerrmmiioo.hh>, from one, corresponding to 50 baud, to 16, ! 69: corresponding to 9600 baud. If the three ports in the example above are at ! 70: hexadecimal adresses of 0x2A0, 0x2B0, and 0x2C0, with speeds of 2400, 2400, ! 71: and 9600 baud, respectively, then the following three patches must be ! 72: performed: ! 73: ! 74: /conf/patch /drv/hs HS_PORTS_=0x2A0 HS_PORTS_+2=12 ! 75: /conf/patch /drv/hs HS_PORTS_+4=0x2B0 HS_PORTS_+6=12 ! 76: /conf/patch /drv/hs HS_PORTS_+8=0x2C0 HS_PORTS_+10=16 ! 77: ! 78: Finally, nodes must be created for each port using the mmkknnoodd command. The ! 79: major device number is 7; the minor number will range from 0 through 7 for ! 80: ports /ddeevv/hhss0000 through /ddeevv/hhss0077, respectively, with 128 added to the ! 81: device minor number if modem control is desired. The following commands ! 82: will make nodes in /ddeevv for local and remote versions of the three ports in ! 83: the example: ! 84: ! 85: /etc/mknod -f /dev/hs00 c 7 0 ! 86: /etc/mknod -f /dev/hs01 c 7 1 ! 87: /etc/mknod -f /dev/hs02 c 7 2 ! 88: /etc/mknod -f /dev/hs00r c 7 128 ! 89: /etc/mknod -f /dev/hs01r c 7 129 ! 90: /etc/mknod -f /dev/hs02r c 7 130 ! 91: ! 92: _S_e_e _A_l_s_o ! 93: ccoomm, ddeevviiccee ddrriivveerrss, ddrrvvlldd ! 94: ! 95: _D_i_a_g_n_o_s_t_i_c_s ! 96: An attempt to open a non-existent device will generate error messages. ! 97: This can occur if hardware is absent or not turned on. ! 98: ! 99: _N_o_t_e_s ! 100: hhss is not part of the standard COHERENT 386 release. To access serial ! 101: devices under COHERENT 386, use the driver aassyy, which is described in its ! 102: own Lexicon entry. ! 103: ! 104: Note that if any ccoomm device driver is used in polling mode, you cannot use ! 105: hhss, and vice versa. ! 106: ! 107: Source code for this device driver is provided in files hhss.cc and aallbbaauudd.cc. ! 108: In the production releases of COHERENT 4.0.0 and later, this device is ! 109: supplanted by the device driver aassyy.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.