1.\" Copyright (c) 1990, 1991 The Regents of the University of California. 2.\" All rights reserved. 3.\" 4.\" This code is derived from software contributed to Berkeley by 5.\" the Systems Programming Group of the University of Utah Computer 6.\" Science Department. 7.\" Redistribution and use in source and binary forms, with or without 8.\" modification, are permitted provided that the following conditions 9.\" are met: 10.\" 1. Redistributions of source code must retain the above copyright 11.\" notice, this list of conditions and the following disclaimer. 12.\" 2. Redistributions in binary form must reproduce the above copyright 13.\" notice, this list of conditions and the following disclaimer in the 14.\" documentation and/or other materials provided with the distribution. 15.\" 3. All advertising materials mentioning features or use of this software 16.\" must display the following acknowledgement: 17.\" This product includes software developed by the University of 18.\" California, Berkeley and its contributors. 19.\" 4. Neither the name of the University nor the names of its contributors 20.\" may be used to endorse or promote products derived from this software 21.\" without specific prior written permission. 22.\" 23.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 24.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 25.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 26.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 27.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 28.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 29.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 30.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 31.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 32.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 33.\" SUCH DAMAGE. 34.\" 35.\" from: @(#)dca.4 5.2 (Berkeley) 3/27/91 36.\" from: com.4,v 1.1 1993/08/06 11:19:07 cgd Exp 37.\" from: sio.4,v 1.16 1995/06/26 06:05:30 bde Exp $
| 1.\" Copyright (c) 1990, 1991 The Regents of the University of California. 2.\" All rights reserved. 3.\" 4.\" This code is derived from software contributed to Berkeley by 5.\" the Systems Programming Group of the University of Utah Computer 6.\" Science Department. 7.\" Redistribution and use in source and binary forms, with or without 8.\" modification, are permitted provided that the following conditions 9.\" are met: 10.\" 1. Redistributions of source code must retain the above copyright 11.\" notice, this list of conditions and the following disclaimer. 12.\" 2. Redistributions in binary form must reproduce the above copyright 13.\" notice, this list of conditions and the following disclaimer in the 14.\" documentation and/or other materials provided with the distribution. 15.\" 3. All advertising materials mentioning features or use of this software 16.\" must display the following acknowledgement: 17.\" This product includes software developed by the University of 18.\" California, Berkeley and its contributors. 19.\" 4. Neither the name of the University nor the names of its contributors 20.\" may be used to endorse or promote products derived from this software 21.\" without specific prior written permission. 22.\" 23.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 24.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 25.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 26.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 27.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 28.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 29.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 30.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 31.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 32.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 33.\" SUCH DAMAGE. 34.\" 35.\" from: @(#)dca.4 5.2 (Berkeley) 3/27/91 36.\" from: com.4,v 1.1 1993/08/06 11:19:07 cgd Exp 37.\" from: sio.4,v 1.16 1995/06/26 06:05:30 bde Exp $
|
38.\" $FreeBSD: head/share/man/man4/cy.4 81590 2001-08-13 17:00:36Z ru $
| 38.\" $FreeBSD: head/share/man/man4/cy.4 84877 2001-10-13 09:08:37Z yokota $
|
39.\" 40.Dd June 14, 1999 41.Dt CY 4 i386 42.Os 43.Sh NAME 44.Nm cy 45.Nd Cyclades Cyclom-Y serial driver 46.Sh SYNOPSIS 47.Cd "options CY_PCI_FASTINTR"
| 39.\" 40.Dd June 14, 1999 41.Dt CY 4 i386 42.Os 43.Sh NAME 44.Nm cy 45.Nd Cyclades Cyclom-Y serial driver 46.Sh SYNOPSIS 47.Cd "options CY_PCI_FASTINTR"
|
48.Cd "device cy0 at isa? irq 10 iomem 0xd4000 iosiz 0x2000" 49.Cd "device cy1 at isa? irq 11 iomem 0xd6000 iosiz 0x2000"
| 48.Cd "device cy 1"
|
50.Pp
| 49.Pp
|
| 50In 51.Pa /boot/device.hints : 52.Cd hint.cy.0.at="isa" 53.Cd hint.cy.0.irq="10" 54.Cd hint.cy.0.maddr="0xd4000" 55.Cd hint.cy.0.msize="0x2000" 56.Pp 57If you have two cards: 58.Cd "options CY_PCI_FASTINTR" 59.Cd "device cy 2" 60.Pp 61.Cd hint.cy.0.at="isa" 62.Cd hint.cy.0.irq="10" 63.Cd hint.cy.0.maddr="0xd4000" 64.Cd hint.cy.0.msize="0x2000" 65.Cd hint.cy.1.at="isa" 66.Cd hint.cy.1.irq="11" 67.Cd hint.cy.1.maddr="0xd6000" 68.Cd hint.cy.1.msize="0x2000" 69.Pp
|
51Minor numbering: 52.Pp 53.Bd -literal 540b\fIMMMMMMMMMMMMMMMMxxxxxxxxOLIMMMMM\fR 55 call\fBO\fRut 56 \fBL\fRock 57 \fBI\fRnitial 58 \fBMMMMMMMMMMMMMMMM MMMMMM\fRinor 59.Ed 60.Sh DESCRIPTION 61The 62.Nm 63driver provides support for Cirrus Logic CD1400-based 64.Tn EIA 65.Tn RS-232C 66.Pf ( Tn CCITT 67.Tn V.24 ) 68communications interfaces (ports) on Cyclades Cyclom-Y boards. 69Each CD1400 provides 4 ports. 70Cyclom-Y boards with various numbers of CD1400's are available. 71This driver supports up to 8 CD1400's (32 ports) per board. 72.Pp 73Input and output for each line may set independently 74to the following speeds: 7550, 75, 110, 134.5, 150, 300, 600, 1200, 1800, 2400, 4800, 9600, 7619200, 38400, 57600, or 115200 bps. 77Other speeds of up to 150000 are supported by the termios interface 78but not by the sgttyb compatibility interface. 79The CD1400 is not fast enough to handle speeds above 115200 bps 80effectively. 81It can transmit on a single line at slightly more than 115200 bps, 82but when 4 lines are active in both directions its limit is about 8390000 bps on each line. 84.\" XXX the following should be true for all serial drivers and 85.\" should not be repeated in the man pages for all serial drivers. 86.\" It was copied from sio.4. The only change was s/sio/cy/g. 87.Pp 88Serial ports controlled by the 89.Nm 90driver can be used for both `callin' and `callout'. 91For each port there is a callin device and a callout device. 92The minor number of the callout device is 128 higher 93than that of the corresponding callin port. 94The callin device is general purpose. 95Processes opening it normally wait for carrier 96and for the callout device to become inactive. 97The callout device is used to steal the port from 98processes waiting for carrier on the callin device. 99Processes opening it do not wait for carrier 100and put any processes waiting for carrier on the callin device into 101a deeper sleep so that they do not conflict with the callout session. 102The callout device is abused for handling programs that are supposed 103to work on general ports and need to open the port without waiting 104but are too stupid to do so. 105.Pp 106The 107.Nm 108driver also supports an initial-state and a lock-state control 109device for each of the callin and the callout "data" devices. 110The minor number of the initial-state device is 32 higher 111than that of the corresponding data device. 112The minor number of the lock-state device is 64 higher 113than that of the corresponding data device. 114The termios settings of a data device are copied 115from those of the corresponding initial-state device 116on first opens and are not inherited from previous opens. 117Use 118.Xr stty 1 119in the normal way on the initial-state devices to program 120initial termios states suitable for your setup. 121.Pp 122The lock termios state acts as flags to disable changing 123the termios state. E.g., to lock a flag variable such as 124CRTSCTS, use 125.Em "stty crtscts" 126on the lock-state device. Speeds and special characters 127may be locked by setting the corresponding value in the lock-state 128device to any nonzero value. 129.Pp 130Correct programs talking to correctly wired external devices 131work with almost arbitrary initial states and almost no locking, 132but other setups may benefit from changing some of the default 133initial state and locking the state. 134In particular, the initial states for non (POSIX) standard flags 135should be set to suit the devices attached and may need to be 136locked to prevent buggy programs from changing them. 137E.g., CRTSCTS should be locked on for devices that support 138RTS/CTS handshaking at all times and off for devices that don't 139support it at all. CLOCAL should be locked on for devices 140that don't support carrier. HUPCL may be locked off if you don't 141want to hang up for some reason. In general, very bad things happen 142if something is locked to the wrong state, and things should not 143be locked for devices that support more than one setting. The 144CLOCAL flag on callin ports should be locked off for logins 145to avoid certain security holes, but this needs to be done by 146getty if the callin port is used for anything else. 147.Ss Kernel Configuration Options 148The 149.Em CY_PCI_FASTINTR 150option should be used to avoid suboptimal interrupt handling for 151PCI Cyclades boards. 152The PCI BIOS must be configured with the 153.Nm 154interrupt not shared with any other active device 155for this option to work. 156This option is not the default because it is currently harmful in 157certain cases where it does not work. 158.Sh FILES 159.\" XXX more cloning: s/d/c/g and add a ? for the card number. 160.Bl -tag -width /dev/ttyic?? -compact 161.It Pa /dev/ttyc?? 162for callin ports 163.It Pa /dev/ttyic?? 164.It Pa /dev/ttylc?? 165corresponding callin initial-state and lock-state devices 166.Pp 167.\" XXX more cloning: s/a/c/g. No consistency :-(. 168.It Pa /dev/cuac?? 169for callout ports 170.It Pa /dev/cuaic?? 171.It Pa /dev/cualc?? 172corresponding callout initial-state and lock-state devices 173.El 174.Pp 175.Bl -tag -width /etc/rc.serial -compact 176.It Pa /etc/rc.serial 177examples of setting the initial-state and lock-state devices 178.El 179.Pp 180The first question mark in these device names is short for the 181card number 182(a decimal number between 0 and 65535 inclusive). 183The second question mark is short for the port number 184(a letter in the range [0-9a-v]). 185.Sh DIAGNOSTICS 186.Bl -diag 187.\" XXX back to s/sio/cy/g. 188.It cy%d: silo overflow. 189Problem in the interrupt handler. 190.El 191.Bl -diag 192.It cy%d: interrupt-level buffer overflow. 193Problem in the bottom half of the driver. 194.El 195.Bl -diag 196.It cy%d: tty-level buffer overflow. 197Problem in the application. 198Input has arrived faster than the given module could process it 199and some has been lost. 200.El 201.\" .Bl -diag 202.\" .It sio%d: reduced fifo trigger level to %d. 203.\" Attempting to avoid further silo overflows. 204.\" .El 205.Sh SEE ALSO 206.Xr stty 1 , 207.Xr termios 4 , 208.Xr tty 4 , 209.Xr comcontrol 8 , 210.Xr pstat 8 211.Sh HISTORY 212The 213.Nm 214driver is derived from the 215.Nm sio 216driver and the 217.Nx 218.Nm 219driver and is 220.Ud 221.Sh BUGS 222Serial consoles are not implemented.
| 70Minor numbering: 71.Pp 72.Bd -literal 730b\fIMMMMMMMMMMMMMMMMxxxxxxxxOLIMMMMM\fR 74 call\fBO\fRut 75 \fBL\fRock 76 \fBI\fRnitial 77 \fBMMMMMMMMMMMMMMMM MMMMMM\fRinor 78.Ed 79.Sh DESCRIPTION 80The 81.Nm 82driver provides support for Cirrus Logic CD1400-based 83.Tn EIA 84.Tn RS-232C 85.Pf ( Tn CCITT 86.Tn V.24 ) 87communications interfaces (ports) on Cyclades Cyclom-Y boards. 88Each CD1400 provides 4 ports. 89Cyclom-Y boards with various numbers of CD1400's are available. 90This driver supports up to 8 CD1400's (32 ports) per board. 91.Pp 92Input and output for each line may set independently 93to the following speeds: 9450, 75, 110, 134.5, 150, 300, 600, 1200, 1800, 2400, 4800, 9600, 9519200, 38400, 57600, or 115200 bps. 96Other speeds of up to 150000 are supported by the termios interface 97but not by the sgttyb compatibility interface. 98The CD1400 is not fast enough to handle speeds above 115200 bps 99effectively. 100It can transmit on a single line at slightly more than 115200 bps, 101but when 4 lines are active in both directions its limit is about 10290000 bps on each line. 103.\" XXX the following should be true for all serial drivers and 104.\" should not be repeated in the man pages for all serial drivers. 105.\" It was copied from sio.4. The only change was s/sio/cy/g. 106.Pp 107Serial ports controlled by the 108.Nm 109driver can be used for both `callin' and `callout'. 110For each port there is a callin device and a callout device. 111The minor number of the callout device is 128 higher 112than that of the corresponding callin port. 113The callin device is general purpose. 114Processes opening it normally wait for carrier 115and for the callout device to become inactive. 116The callout device is used to steal the port from 117processes waiting for carrier on the callin device. 118Processes opening it do not wait for carrier 119and put any processes waiting for carrier on the callin device into 120a deeper sleep so that they do not conflict with the callout session. 121The callout device is abused for handling programs that are supposed 122to work on general ports and need to open the port without waiting 123but are too stupid to do so. 124.Pp 125The 126.Nm 127driver also supports an initial-state and a lock-state control 128device for each of the callin and the callout "data" devices. 129The minor number of the initial-state device is 32 higher 130than that of the corresponding data device. 131The minor number of the lock-state device is 64 higher 132than that of the corresponding data device. 133The termios settings of a data device are copied 134from those of the corresponding initial-state device 135on first opens and are not inherited from previous opens. 136Use 137.Xr stty 1 138in the normal way on the initial-state devices to program 139initial termios states suitable for your setup. 140.Pp 141The lock termios state acts as flags to disable changing 142the termios state. E.g., to lock a flag variable such as 143CRTSCTS, use 144.Em "stty crtscts" 145on the lock-state device. Speeds and special characters 146may be locked by setting the corresponding value in the lock-state 147device to any nonzero value. 148.Pp 149Correct programs talking to correctly wired external devices 150work with almost arbitrary initial states and almost no locking, 151but other setups may benefit from changing some of the default 152initial state and locking the state. 153In particular, the initial states for non (POSIX) standard flags 154should be set to suit the devices attached and may need to be 155locked to prevent buggy programs from changing them. 156E.g., CRTSCTS should be locked on for devices that support 157RTS/CTS handshaking at all times and off for devices that don't 158support it at all. CLOCAL should be locked on for devices 159that don't support carrier. HUPCL may be locked off if you don't 160want to hang up for some reason. In general, very bad things happen 161if something is locked to the wrong state, and things should not 162be locked for devices that support more than one setting. The 163CLOCAL flag on callin ports should be locked off for logins 164to avoid certain security holes, but this needs to be done by 165getty if the callin port is used for anything else. 166.Ss Kernel Configuration Options 167The 168.Em CY_PCI_FASTINTR 169option should be used to avoid suboptimal interrupt handling for 170PCI Cyclades boards. 171The PCI BIOS must be configured with the 172.Nm 173interrupt not shared with any other active device 174for this option to work. 175This option is not the default because it is currently harmful in 176certain cases where it does not work. 177.Sh FILES 178.\" XXX more cloning: s/d/c/g and add a ? for the card number. 179.Bl -tag -width /dev/ttyic?? -compact 180.It Pa /dev/ttyc?? 181for callin ports 182.It Pa /dev/ttyic?? 183.It Pa /dev/ttylc?? 184corresponding callin initial-state and lock-state devices 185.Pp 186.\" XXX more cloning: s/a/c/g. No consistency :-(. 187.It Pa /dev/cuac?? 188for callout ports 189.It Pa /dev/cuaic?? 190.It Pa /dev/cualc?? 191corresponding callout initial-state and lock-state devices 192.El 193.Pp 194.Bl -tag -width /etc/rc.serial -compact 195.It Pa /etc/rc.serial 196examples of setting the initial-state and lock-state devices 197.El 198.Pp 199The first question mark in these device names is short for the 200card number 201(a decimal number between 0 and 65535 inclusive). 202The second question mark is short for the port number 203(a letter in the range [0-9a-v]). 204.Sh DIAGNOSTICS 205.Bl -diag 206.\" XXX back to s/sio/cy/g. 207.It cy%d: silo overflow. 208Problem in the interrupt handler. 209.El 210.Bl -diag 211.It cy%d: interrupt-level buffer overflow. 212Problem in the bottom half of the driver. 213.El 214.Bl -diag 215.It cy%d: tty-level buffer overflow. 216Problem in the application. 217Input has arrived faster than the given module could process it 218and some has been lost. 219.El 220.\" .Bl -diag 221.\" .It sio%d: reduced fifo trigger level to %d. 222.\" Attempting to avoid further silo overflows. 223.\" .El 224.Sh SEE ALSO 225.Xr stty 1 , 226.Xr termios 4 , 227.Xr tty 4 , 228.Xr comcontrol 8 , 229.Xr pstat 8 230.Sh HISTORY 231The 232.Nm 233driver is derived from the 234.Nm sio 235driver and the 236.Nx 237.Nm 238driver and is 239.Ud 240.Sh BUGS 241Serial consoles are not implemented.
|