abfeec800f
as we have no use for that info. Instead let this function return the keyboard ID and verify at its invocation in sunkbd_configure() that we're talking to a Sun type 4/5/6 keyboard, i.e. a keyboard supported by this driver. - Add an option SUNKBD_EMULATE_ATKBD whose code is based on the respective code in ukbd(4) and like UKBD_EMULATE_ATSCANCODE causes this driver to emit AT keyboard/KB_101 compatible scan codes in K_RAW mode as assumed by kbdmux(4). Unlike UKBD_EMULATE_ATSCANCODE, SUNKBD_EMULATE_ATKBD also triggers the use of AT keyboard maps and thus allows to use the map files in share/syscons/keymaps with this driver at the cost of an additional translation (in ukbd(4) this just is the way of operation). - Implement an option SUNKBD_DFLT_KEYMAP, which like the equivalent options of the other keyboard drivers allows to specify the default in-kernel keyboard map. For obvious reasons this made to only work when also using SUNKBD_EMULATE_ATKBD. - Implement sunkbd_check(), sunkbd_check_char() and sunkbd_clear_state(), which are also required for interoperability with kbdmux(4). - Implement K_CODE mode and FreeBSD keypad compose. - As a minor hack define KBD_DFLT_KEYMAP also in the !SUNKBD_EMULATE_ATKBD case so we can obtain fkey_tab from <dev/kbd/kbdtables.h> rather than having to duplicate it and #ifdef some more code. - Don't use the TX-buffer for writing the two command bytes for setting the keyboard LEDs as this consequently requires a hardware FIFO that is at least two bytes in depth, which the NMOS-variant of the Zilog SCCs doesn't have. Thus use an inlined version of uart_putc() to consecutively write the command bytes (a cleaner approach would be to do this via the soft interrupt handler but that variant wouldn't work while in ddb(4)). [1] - Fix some minor style(9) bugs. PR: 90316 [1] Reviewed by: marcel [1]
153 lines
3.7 KiB
Plaintext
153 lines
3.7 KiB
Plaintext
# $FreeBSD$
|
||
#
|
||
# This file contains machine dependent kernel configuration notes. For
|
||
# machine independent notes, look in /sys/conf/NOTES.
|
||
|
||
|
||
#####################################################################
|
||
# CPU OPTIONS
|
||
|
||
#
|
||
# You must specify at least one CPU (the one you intend to run on);
|
||
# deleting the specification for CPUs you don't need to use may make
|
||
# parts of the system run faster.
|
||
# XXX: On the Sparc64, there is only one CPU type
|
||
cpu SUN4U
|
||
|
||
|
||
#####################################################################
|
||
# HARDWARE BUS CONFIGURATION
|
||
|
||
device ebus
|
||
device isa
|
||
device pci
|
||
device sbus
|
||
device central
|
||
device fhc
|
||
|
||
|
||
#####################################################################
|
||
# HARDWARE DEVICE CONFIGURATION
|
||
|
||
#
|
||
# Mandatory devices:
|
||
#
|
||
|
||
device genclock # Generic clock interface
|
||
device eeprom # eeprom (really a front-end for the MK48Txx)
|
||
device mk48txx # Mostek MK48Txx clocks
|
||
device rtc # rtc (really a front-end for the MC146818)
|
||
device mc146818 # Motorola MC146818 and compatible clocks
|
||
|
||
#
|
||
# Optional devices:
|
||
#
|
||
|
||
device auxio # auxiliary I/O device
|
||
device clkbrd # Clock Board (blinkenlight on Sun Exx00)
|
||
device creator # Creator, Creator3D and Elite3D framebuffers
|
||
device machfb # ATI Mach64 framebuffers
|
||
|
||
device ofw_console # Open Firmware console device
|
||
option OFWCONS_POLL_HZ=4 # 20 or more works best on Ultra2
|
||
|
||
# PS/2 mouse
|
||
device psm
|
||
|
||
# Options for psm:
|
||
options PSM_HOOKRESUME #hook the system resume event, useful
|
||
#for some laptops
|
||
options PSM_RESETAFTERSUSPEND #reset the device at the resume event
|
||
|
||
# The keyboard controller; it controls the keyboard and the PS/2 mouse.
|
||
device atkbdc
|
||
|
||
# The AT keyboard
|
||
device atkbd
|
||
|
||
# Options for atkbd:
|
||
options ATKBD_DFLT_KEYMAP # specify the built-in keymap
|
||
makeoptions ATKBD_DFLT_KEYMAP=jp.106
|
||
|
||
# `flags' for atkbd:
|
||
# 0x01 Force detection of keyboard, else we always assume a keyboard
|
||
# 0x02 Don't reset keyboard, useful for some newer ThinkPads
|
||
# 0x03 Force detection and avoid reset, might help with certain
|
||
# dockingstations
|
||
# 0x04 Old-style (XT) keyboard support, useful for older ThinkPads
|
||
|
||
# Sun type 4/5/6 RS-232@TTL keyboard
|
||
#device sunkbd
|
||
|
||
# Options for sunkbd:
|
||
options SUNKBD_EMULATE_ATKBD # allows to use the AT keyboard maps
|
||
# in share/syscons/keymaps, required
|
||
# for SUNKBD_DFLT_KEYMAP and kbdmux
|
||
options SUNKBD_DFLT_KEYMAP # specify the built-in keymap
|
||
makeoptions SUNKBD_DFLT_KEYMAP=jp.106
|
||
|
||
|
||
#####################################################################
|
||
# Devices we don't want to deal with
|
||
|
||
nodevice daemon_saver
|
||
nodevice snake_saver
|
||
nodevice star_saver
|
||
nodevice bktr
|
||
nodevice fdc
|
||
nodevice ppc
|
||
nodevice snd_ad1816
|
||
nodevice snd_als4000
|
||
nodevice snd_cmi
|
||
nodevice snd_cs4281
|
||
nodevice snd_csa
|
||
nodevice snd_ds1
|
||
nodevice snd_emu10k1
|
||
nodevice snd_ess
|
||
nodevice snd_fm801
|
||
nodevice snd_gusc
|
||
nodevice snd_ich
|
||
nodevice snd_maestro
|
||
nodevice snd_maestro3
|
||
nodevice snd_mss
|
||
nodevice snd_neomagic
|
||
nodevice snd_sb16
|
||
nodevice snd_sb8
|
||
nodevice snd_sbc
|
||
nodevice snd_solo
|
||
nodevice snd_t4dwave
|
||
nodevice snd_via8233
|
||
nodevice snd_via82c686
|
||
nodevice snd_vibes
|
||
nodevice snd_uaudio
|
||
nodevice aha
|
||
nodevice bt
|
||
nodevice wds
|
||
nodevice ep
|
||
nodevice ex
|
||
|
||
|
||
#####################################################################
|
||
# Options we don't want to deal with
|
||
|
||
nooption FDC_DEBUG
|
||
nooption SC_RENDER_DEBUG
|
||
nooption SC_DEBUG_LEVEL
|
||
nooption PPC_DEBUG
|
||
nooption PPC_PROBE_CHIPSET
|
||
nooption SC_NO_SUSPEND_VTYSWITCH
|
||
nooption SC_NO_FONT_LOADING
|
||
nooption SC_KERNEL_CONS_REV_ATTR
|
||
nooption SC_KERNEL_CONS_ATTR
|
||
nooption SC_NORM_REV_ATTR
|
||
nooption SC_NORM_ATTR
|
||
nooption SC_DFLT_FONT
|
||
nooption SC_ALT_MOUSE_IMAGE
|
||
nooption EXT2FS
|
||
|
||
|
||
#####################################################################
|
||
# Make options we don't want to deal with
|
||
|
||
nomakeoption SC_DFLT_FONT
|