summaryrefslogtreecommitdiffstats
path: root/sys/alpha
diff options
context:
space:
mode:
authoryokota <yokota@FreeBSD.org>1999-03-10 10:36:53 +0000
committeryokota <yokota@FreeBSD.org>1999-03-10 10:36:53 +0000
commit1c67fa8f3d842ef1daea6a8442e829e386fafdd5 (patch)
tree41f00cd620389bf07e2912551d080e830f0dc85a /sys/alpha
parent6eb9a9adf91724bc8f8bb0516ce6bc9f52b58d95 (diff)
downloadFreeBSD-src-1c67fa8f3d842ef1daea6a8442e829e386fafdd5.zip
FreeBSD-src-1c67fa8f3d842ef1daea6a8442e829e386fafdd5.tar.gz
Keyboard driver update in preparation for the USB keyboard driver.
- Refined internal interface in keyboard drivers so that: 1. the side effect of device probe is kept minimal, 2. polling mode function is added, 3. and new ioctl and configuration options are added (see below). - Added new ioctl: KDSETREPEAT Set keyboard typematic rate. There has existed an ioctl command, KDSETRAD, for the same purpose. However, KDSETRAD is dependent on the AT keyboard. KDSETREPEAT provides more generic interface. KDSETRAD will still be supported in the atkbd driver. - Added new configuration options: ATKBD_DFLT_KEYMAP Specify a keymap to be used as the default, built-in keymap. (There has been undocumented options, DKKEYMAP, UKKEYMAP, GRKEYMAP, SWKEYMAP, RUKEYMAP, ESKEYMAP, and ISKEYMAP to set the default keymap. These options are now gone for good. The new option is more general.) KBD_DISABLE_KEYMAP_LOADING Don't allow the user to change the keymap.
Diffstat (limited to 'sys/alpha')
-rw-r--r--sys/alpha/conf/files.alpha10
-rw-r--r--sys/alpha/conf/options.alpha6
-rw-r--r--sys/alpha/include/console.h6
3 files changed, 16 insertions, 6 deletions
diff --git a/sys/alpha/conf/files.alpha b/sys/alpha/conf/files.alpha
index 104ab35..6f747e3 100644
--- a/sys/alpha/conf/files.alpha
+++ b/sys/alpha/conf/files.alpha
@@ -1,7 +1,7 @@
# This file tells config what files go into building a kernel,
# files marked standard are always included.
#
-# $Id: files.alpha,v 1.15 1999/01/18 20:26:50 gallatin Exp $
+# $Id: files.alpha,v 1.16 1999/01/23 16:53:26 dfr Exp $
#
# The long compile-with and dependency lines are required because of
# limitations in config: backslash-newline doesn't work in strings, and
@@ -12,7 +12,11 @@ font8x16.o optional std8x16font \
compile-with "uudecode < /usr/share/syscons/fonts/${STD8X16FONT}-8x16.fnt && file2c 'unsigned char font_16[16*256] = {' '};' < ${STD8X16FONT}-8x16 > font8x16.c && ${CC} -c ${CFLAGS} font8x16.c" \
no-implicit-rule before-depend \
clean "${STD8X16FONT}-8x16 font8x16.c"
-
+#
+atkbdmap.h optional atkbd_dflt_keymap \
+ compile-with "kbdcontrol -L ${ATKBD_DFLT_KEYMAP} | sed -e 's/^static keymap_t.* = /static keymap_t key_map = /' -e 's/^static accentmap_t.* = /static accentmap_t accent_map = /' > atkbdmap.h" \
+ no-obj no-implicit-rule before-depend \
+ clean "atkbdmap.h"
#
alpha/alpha/autoconf.c standard device-driver
alpha/alpha/cpuconf.c standard
@@ -148,7 +152,7 @@ dev/kbd/atkbdc.c optional atkbdc device-driver
isa/atkbdc_isa.c optional atkbdc device-driver
dev/kbd/kbd.c optional atkbd device-driver
dev/kbd/kbd.c optional kbd device-driver
-#dev/kbd/kbd.c optional ukbd device-driver
+dev/kbd/kbd.c optional ukbd device-driver
dev/syscons/syscons.c optional sc device-driver
dev/syscons/scvidctl.c optional sc device-driver
isa/syscons_isa.c optional sc device-driver
diff --git a/sys/alpha/conf/options.alpha b/sys/alpha/conf/options.alpha
index e6b7f13..2da70be 100644
--- a/sys/alpha/conf/options.alpha
+++ b/sys/alpha/conf/options.alpha
@@ -1,4 +1,4 @@
-# $Id: options.alpha,v 1.8 1999/01/18 20:26:50 gallatin Exp $
+# $Id: options.alpha,v 1.9 1999/01/23 16:53:26 dfr Exp $
EV5 opt_global.h
EV4 opt_global.h
@@ -41,7 +41,11 @@ PSM_DEBUG opt_psm.h
# Fb options
FB_INSTALL_CDEV opt_fb.h
+# Atkbd options
+ATKBD_DFLT_KEYMAP opt_atkbd.h
+
# Kbd options
+KBD_DISABLE_KEYMAP_LOAD opt_kbd.h
KBD_INSTALL_CDEV opt_kbd.h
KBD_MAXRETRY opt_kbd.h
KBD_MAXWAIT opt_kbd.h
diff --git a/sys/alpha/include/console.h b/sys/alpha/include/console.h
index 3b2305c..9521dfa 100644
--- a/sys/alpha/include/console.h
+++ b/sys/alpha/include/console.h
@@ -25,7 +25,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: console.h,v 1.42 1999/01/23 16:53:27 dfr Exp $
+ * $Id: console.h,v 1.43 1999/02/05 11:51:56 yokota Exp $
* from: i386/include console.h,v 1.43
*/
@@ -51,9 +51,10 @@
#define KDGKBTYPE _IOR('K', 64, int)
#define KDGETLED _IOR('K', 65, int)
#define KDSETLED _IO('K', 66 /*, int */)
-#define KDSETRAD _IO('K', 67 /*, int */)
+#define KDSETRAD _IO('K', 67 /*, int */) /* obsolete */
#define KDRASTER _IOW('K', 100, scr_size_t)
#define KDGKBINFO _IOR('K', 101, keyboard_info_t)
+#define KDSETREPEAT _IOW('K', 102, keyboard_delay_t)
#define GETFKEY _IOWR('k', 0, fkeyarg_t)
#define SETFKEY _IOWR('k', 1, fkeyarg_t)
@@ -394,6 +395,7 @@ typedef struct video_adapter_info video_adapter_info_t;
typedef struct video_info video_info_t;
typedef struct keyboard_info keyboard_info_t;
typedef struct {int scr_size[3];} scr_size_t;
+typedef struct {int kbd_delay[2];} keyboard_delay_t;
/* defines for "special" keys (spcl bit set in keymap) */
#define NOP 0x00 /* nothing (dead key) */
OpenPOWER on IntegriCloud