- Replace references to linesw[0] with a ttyldisc_default() function
that returns the default ("termios") line discipline.
- The linesw[] array is gone, replaced by a linked list.
- ttyldisc_add() and ttyldisc_remove() have been replaced by
ttyldisc_attach() and ttyldisc_detach().
- Things that provide line disciplines are now responsible for
registering those disciplines with the system. The linesw
structures are no longer declared in tty_conf.c
- Line disciplines are now refcounted; a lookup causes a reference to
be held. ttyldisc_release() releases the reference. Attempts to
detach an in-use line discipline result in EBUSY.
- Fix function signature lossage in if_sl.c, if_strip.c, and tty_tb.c
that was masked by the old tty_conf.c
- tty_init() is no longer necessary; delete it and its call from main().
Framebuffer drivers use their own minor device number to find their device entry
in fbdriver methods ( like cgsix uses cgsix_cd[minor] ) but fb passed the fb
device's unit number which works only as long as all registered fb devices use
the same underlying driver. With different fb drivers, like a cgsix and an ffb, both will be (native) unit number 0 so with the old code /dev/fb1 would be
unusable.
via the /dev/fbn abstraction. Framebuffers are attached in probe order.
However, the previous semantics are kept, so that the detected or forced
console will always be fb0.
the attach routine. In autoconf or "cold" state, tsleep does not wait for
a wakeup and my type 5 keyboard takes around 70ms to reset, so the keyboard
ID was being missed (read much later on) and key translation would be wrong.
Thanks Martin, Jochen, and Jason for help.
keyboard error is received. For zs(4) and com(4), -1 causes the driver to
flush it's buffer. This should eliminate missed keyboard codes, such as the
"key repeats forever until another key is hit" problem that happens because
the keyboard idle code gets flushed from the input buffer.
NetBSD 2.0 gets confused by them (generating events for keycode 134 when
all keys are released), and even when that's fixed we should keep one release
worth of backward compatibility.