freebsd-dev/sys/dev/uart
Marius Strobl 65deb9d947 - In sunkbd_probe_keyboard() don't bother to determine the keyboard layout
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]
2006-11-02 00:01:15 +00:00
..
uart_bus_acpi.c
uart_bus_ebus.c Remove unused variable 'error'. Forgotten in previous commit. 2006-04-02 21:58:09 +00:00
uart_bus_isa.c
uart_bus_pccard.c
uart_bus_pci.c o Add 5 Timedia single port serial cards. 2006-04-27 17:08:30 +00:00
uart_bus_puc.c Rewrite of puc(4). Significant changes are: 2006-04-28 21:21:53 +00:00
uart_bus_scc.c
uart_bus.h Implement the ipend() method of the serdev I/F. 2006-04-28 18:29:23 +00:00
uart_core.c Implement the ipend() method of the serdev I/F. 2006-04-28 18:29:23 +00:00
uart_cpu_amd64.c
uart_cpu_i386.c
uart_cpu_ia64.c
uart_cpu_pc98.c
uart_cpu_powerpc.c Implement uart_cpu_eqres() and uart_cpu_getdev(). This allows 2006-07-26 17:17:23 +00:00
uart_cpu_sparc64.c
uart_cpu.h Don't hold the hardware mutex across getc(). It can wait indefinitely 2006-04-01 19:04:54 +00:00
uart_dbg.c Eliminate gdb_checkc member from GDB_DBGPORT(), it is never used. 2006-05-26 11:54:32 +00:00
uart_dev_ns8250.c The lcr variable in ns8250_probe is now unused. Remove it. 2006-05-23 06:04:45 +00:00
uart_dev_sab82532.c Don't hold the hardware mutex across getc(). It can wait indefinitely 2006-04-01 19:04:54 +00:00
uart_dev_z8530.c On PowerPC the clock for the BRG comes from RTxC, not PCLK. Add a 2006-07-26 17:29:37 +00:00
uart_if.m
uart_kbd_sun_tables.h
uart_kbd_sun.c - In sunkbd_probe_keyboard() don't bother to determine the keyboard layout 2006-11-02 00:01:15 +00:00
uart_kbd_sun.h - In sunkbd_probe_keyboard() don't bother to determine the keyboard layout 2006-11-02 00:01:15 +00:00
uart_subr.c
uart_tty.c Properly propagate overrun conditions to the TTY layer. 2006-07-27 00:07:10 +00:00
uart.h Remove definitions of uart_[gs]etdreg. They are not used anymore and 2006-05-23 22:33:44 +00:00