diff options
author | Marcin Juszkiewicz <hrw@openembedded.org> | 2005-11-20 17:51:15 +0000 |
---|---|---|
committer | OpenEmbedded Project <openembedded-devel@lists.openembedded.org> | 2005-11-20 17:51:15 +0000 |
commit | 72bd6075e3c4c4a5b65157cd3c4a6d2f67fe1205 (patch) | |
tree | 68a8656b8833716088eb4a3f3d4dbd86e123d4f6 | |
parent | 9c05b535df13b081ab17ee5317ef8584daf279ec (diff) |
console-tools: added kbd_mode patch to change keyboard repeat rate
- patch provided by Matthias Goebl <oe@m.goebl.net>
- close #478
-rw-r--r-- | packages/console-tools/console-tools-0.3.2/kbdrate.patch | 73 | ||||
-rw-r--r-- | packages/console-tools/console-tools_0.3.2.bb | 5 |
2 files changed, 76 insertions, 2 deletions
diff --git a/packages/console-tools/console-tools-0.3.2/kbdrate.patch b/packages/console-tools/console-tools-0.3.2/kbdrate.patch new file mode 100644 index 0000000000..47d7ea54b9 --- /dev/null +++ b/packages/console-tools/console-tools-0.3.2/kbdrate.patch @@ -0,0 +1,73 @@ +Patch from Matthias Goebl <oe@m.goebl.net> +Added via OE bugtracker: bug #478 + +--- console-tools-0.3.2/kbdtools/kbd_mode.c.orig ++++ console-tools-0.3.2/kbdtools/kbd_mode.c +@@ -29,11 +29,16 @@ + OPT("-u --unicode ", _("UTF-8 mode (UNICODE)")); + OPT("-s --scancode ", _("scancode mode (RAW)")); + OPT(" --mode={8bit,keycode,unicode,scancode} ", _("set mode")); ++ OPT("-r --rate=RATE ", _("set repeat rate (default: 33)")); ++ OPT("-d --delay=DELAY ", _("set repeat delay (default: 250)")); + + OPT("-h --help ", HELPDESC); + OPT("-V --version ", VERSIONDESC); + } + ++int rate=-1; ++int delay=-1; ++ + static int parse_cmdline (int argc, char *argv[]) + { + int mode = -1; +@@ -46,11 +51,13 @@ + { "mode" , required_argument, NULL, 'm' }, + { "scancode" , no_argument, NULL, 's' }, + { "unicode" , no_argument, NULL, 'u' }, ++ { "rate" , required_argument, NULL, 'r' }, ++ { "delay" , required_argument, NULL, 'd' }, + { NULL, 0, NULL, 0 } + }; + int c; + +- while ( (c = getopt_long (argc, argv, "Vhaksu", long_opts, NULL)) != EOF) ++ while ( (c = getopt_long (argc, argv, "Vhaksur:d:", long_opts, NULL)) != EOF) + switch (c) { + case 'h': + usage (); +@@ -58,6 +65,14 @@ + case 'V': + version (); + exit(0); ++ case 'r': ++ rate = atoi(optarg); ++ mode = -2; ++ break; ++ case 'd': ++ delay = atoi(optarg); ++ mode = -2; ++ break; + case 'a': + mode = K_XLATE; + break; +@@ -129,6 +144,20 @@ + exit(0); + } + ++ if ( rate != -1 || delay != -1 ) ++ { ++ struct kbd_repeat kbd_rep; ++ kbd_rep.delay = delay; ++ kbd_rep.period = rate; ++ if (ioctl(fd, KDKBDREP, &kbd_rep)) ++ { ++ fprintf(stderr, progname); ++ perror(_(": error setting keyboard repeat mode\n")); ++ exit(1); ++ } ++ if(mode==-2) exit(0); ++ } ++ + if (ioctl(fd, KDSKBMODE, mode)) + { + fprintf(stderr, progname); diff --git a/packages/console-tools/console-tools_0.3.2.bb b/packages/console-tools/console-tools_0.3.2.bb index 2a94a4f896..f7455825e0 100644 --- a/packages/console-tools/console-tools_0.3.2.bb +++ b/packages/console-tools/console-tools_0.3.2.bb @@ -1,12 +1,13 @@ SECTION = "base" LICENSE = "GPL" DESCRIPTION = "Allows you to set-up and manipulate the Linux console." -PR = "r1" +PR = "r2" SRC_URI = "${SOURCEFORGE_MIRROR}/lct/console-tools-${PV}.tar.gz \ file://codepage.patch;patch=1 \ file://configure.patch;patch=1 \ file://compile.patch;patch=1 \ + file://kbdrate.patch;patch=1 \ file://config/*.m4" export SUBDIRS = "fontfiletools vttools kbdtools screenfonttools contrib \ @@ -43,4 +44,4 @@ pkg_prerm_${PN} () { update-alternatives --remove deallocvt deallocvt.${PN} update-alternatives --remove openvt openvt.${PN} } - + |