ZS(4)                 OpenBSD Programmer's Manual (SPARC)                ZS(4)

NAME
     zs - Zilog 8530 (ZSCC) serial communications driver

SYNOPSIS
     zs0 at mainbus0                       (sun4c)
     zs0 at obio0                          (sun4m)
     zs0 at obio0 addr 0xf1000000 level 12 (sun4/[23]00)
     zs0 at obio0 addr 0x01000000 level 12 (sun4/100)
     zs1 at mainbus0                       (sun4c)
     zs1 at obio0                          (sun4m)
     zs1 at obio0 addr 0xf0000000 level 12 (sun4/[23]00)
     zs1 at obio0 addr 0x00000000 level 12 (sun4/100)
     zs2 at obio0 addr 0xe0000000 level 12 (sun4/300)
     zstty* at zs?
     zskbd* at zs?
     wskbd* at zskbd?
     zsms* at zs?
     wsmouse* at zsms?
     option SUNKBD_LAYOUT=XXX
     option SUNKBD5_LAYOUT=XXX

DESCRIPTION
     The zs is a Zilog 8530 serial interface chip used in Sun workstations.
     The Zilog 8530 provides two input/output channels per instance.  Most Sun
     workstations include two of these interfaces.  One of the interfaces is
     hardwired for use by the keyboard and mouse attached to the workstation
     console.  The zskbd devices connect keyboard devices to the generic key-
     board driver wskbd.  The zsms devices connect mice to the generic mouse
     driver wsmouse(4).  The remaining additional zs interfaces provide RS-423
     and RS-232 serial ports for general purpose use.

     The zs driver supports all of the standard tty(4) ioctl calls.  The sta-
     tus of the DTR, RTS, CTS, and DCD signals can be queried with TIOCMGET
     command, but, due to limitations in the hardware, only the DTR and RTS
     signals can be modified with TIOCMSET, TIOCMBIC, and TIOCMBIS ioctl(2)
     commands.

     The zskbd driver supports a number of different key mappings.  By de-
     fault, the layout corresponding to the keyboard model as probed by the
     zskbd driver will be used.  A different layout can be chosen either with
     the kernel options ``SUNKBD_LAYOUT'' (for type 4 keyboards) and
     ``SUNKBD5_LAYOUT'' (for type 5 keyboards) at compile time or with the
     utility wsconsctl(8) (variable: ``keyboard.encoding'') at runtime.

     Other mappings can be used if the whole keymap is replaced by means of
     wsconsctl(8).  The built-in mappings are at this time:

           KB_BE   (be) Belgium French (type 4 only).
           KB_DE   (de) German.
           KB_DK   (dk) Danish.
           KB_ES   (es) Spanish.
           KB_FR   (fr) French (type 5 only).
           KB_IT   (it) Italian.
           KB_JP   (jp) Japanese (type 5 only).
           KB_NL   (nl) Dutch.
           KB_NO   (no) Norwegian.
           KB_PT   (pt) Portuguese.
           KB_SF   (sf) Swiss French.
           KB_SG   (sg) Swiss German.
           KB_SV   (sv) Swedish with ``dead accents''.
           KB_UK   (uk) British.
           KB_US   (us) English/US keyboard mapping.

     The KB_SV mapping can be used in the KB_NODEAD (.nodead) variant.  This
     switches off the ``dead accents''.

EXAMPLES
     To set a German keyboard layout, use wsconsctl -w keyboard.encoding=de.
     To set it at kernel build time, add the following to the kernel configu-
     ration file for a type 4 keyboard:

           option SUNKBD_LAYOUT="KB_DE"

     For a type 5 keyboard:

           option SUNKBD5_LAYOUT="KB_DE"

SEE ALSO
     ioctl(2), intro(4), tty(4), wskbd(4), wsmouse(4), wsconsctl(8)

HISTORY
     The zs driver first appeared in 4.4BSD.  Support for the TIOCM* ioctl(2)s
     appeared in OpenBSD 2.3.

BUGS
     The zs driver now supports cua minor devices, but with this known defi-
     ciency in the simultaneous outgoing/incoming aspect of the driver: The
     first outgoing connection succeeds, but second and subsequent connections
     fail, apparently due to a getty hang.  The hung getty apparently prevents
     the cua device from being re-opened.

     The kernel does not provide a keyboard layout for all manufactured Sun
     keyboard models.

OpenBSD 4.7                      May 20, 2009                                2
