diff options
author | Andrew Geissler <geissonator@yahoo.com> | 2020-12-12 01:27:59 +0300 |
---|---|---|
committer | Andrew Geissler <geissonator@yahoo.com> | 2020-12-12 01:28:21 +0300 |
commit | 8fc454f9beebdd347403145c991697019a593cff (patch) | |
tree | 8cf3da68cb51c21d0989a7fb81249229e70b6fc8 /meta-openembedded/meta-oe/recipes-extended/beep/files/linux-input.patch | |
parent | 12e5ffbbbaa05790d387750fadff4a2bf74e4f93 (diff) | |
download | openbmc-8fc454f9beebdd347403145c991697019a593cff.tar.xz |
meta-openembedded: subtree update:f623d8b574..936f2380bb
Alexander Vickberg (2):
libwebsockets: upgrade to 4.1.6
mbedtls: upgrade to 2.24.0
Bartosz Golaszewski (1):
libgpiod: update v1.4.5 -> v1.6.2
Beniamin Sandu (1):
trace-cmd: create recipe for version 2.9.1
Fabio Berton (2):
beep: Add recipe for version 1.2.2
linuxconsole: Add recipe for version 1.7.0
Gianfranco (1):
dlt-daemon: add upstream patch to fix CVE-2020-29394
Kai Kang (1):
colord: fix installed-vs-shipped error
Khem Raj (1):
packagegroup-meta-python: Remove packages moved to core
Luca Boccassi (3):
dbus-broker: rdepend on dbus-common
dbus-brocker: upgrade 23 -> 24
dbus-broker: upgrade 24 -> 25
Martin Jansa (1):
nanopb: move to dynamic-layers
Michael Vetter (1):
jasper: upgrade 2.0.22 -> 2.0.23
Philip Balister (1):
spdlog: Fix recipe so other recipes can use spdlog with external fmt.
Robert Karszniewicz (1):
firmwared: add recipe
Roland Hieber (5):
pcsc-lite: provide pcsc-lite-lib-native explicitly for native build
lockfile-progs: use DEBIAN_MIRROR in SRC_URI
fbset: use DEBIAN_MIRROR in SRC_URI
liboop: use upstream SRC_URI
openct: use upstream SRC_URI
Senthil Selvaganesan (1):
fcgiwrap: add recipe
Thomas Perrot (1):
openocd: disable the support of ccache
Trevor Woerner (4):
glmark2: update information
glmark2: update to latest
glmark2: add support for dispmanx
glmark2: revert to previous behaviour
Vyacheslav Yurkov (1):
python3-aiohttp: added missing RDEPENDs
Wang Mingyu (2):
gensio: 2.1.4 -> 2.2.0
ser2net: 4.2.0 -> 4.3.0
Zang Ruochen (7):
dialog: upgrade 1.3-20200327 -> 1.3-20201126
fmt: upgrade 7.1.2 -> 7.1.3
hidapi: upgrade 0.10.0 -> 0.10.1
opensc: upgrade 0.20.0 -> 0.20.1
pugixml: upgrade 1.10 -> 1.11
satyr: upgrade 0.31 -> 0.35
nanopb: upgrade 0.4.3 -> 0.4.4
zhengruoqin (9):
c-periphery: upgrade 2.2.4 -> 2.2.5
crash: upgrade 7.2.8 -> 7.2.9
dfu-util: upgrade 0.9 -> 0.10
monit: upgrade 5.26.0 -> 5.27.1
qpdf: upgrade 10.0.1 -> 10.0.4
tcsh: upgrade 6.22.02 -> 6.22.03
xserver-xorg-cvt-native: upgrade 1.20.5 -> 1.20.9
zchunk: upgrade 1.1.6 -> 1.1.7
libconfig-autoconf-perl: upgrade 0.318 -> 0.319
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: I8371eb789fa288193da895bd51ce2160194809d8
Diffstat (limited to 'meta-openembedded/meta-oe/recipes-extended/beep/files/linux-input.patch')
-rw-r--r-- | meta-openembedded/meta-oe/recipes-extended/beep/files/linux-input.patch | 155 |
1 files changed, 155 insertions, 0 deletions
diff --git a/meta-openembedded/meta-oe/recipes-extended/beep/files/linux-input.patch b/meta-openembedded/meta-oe/recipes-extended/beep/files/linux-input.patch new file mode 100644 index 000000000..1b38ba72a --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-extended/beep/files/linux-input.patch @@ -0,0 +1,155 @@ +# the diff between Alessandro Zummo's copy of beep.c and the original +# one... + +--- beep-1.2.2/beep.c.orig 2006-01-29 12:13:36.994560551 -0800 ++++ beep-1.2.2/beep.c 2006-01-29 12:35:02.950558713 -0800 +@@ -26,6 +26,7 @@ + #include <sys/ioctl.h> + #include <sys/types.h> + #include <linux/kd.h> ++#include <linux/input.h> + + /* I don't know where this number comes from, I admit that freely. A + wonderful human named Raine M. Ekman used it in a program that played +@@ -86,18 +87,28 @@ typedef struct beep_parms_t { + struct beep_parms_t *next; /* in case -n/--new is used. */ + } beep_parms_t; + ++enum { BEEP_TYPE_CONSOLE, BEEP_TYPE_EVDEV }; ++ + /* Momma taught me never to use globals, but we need something the signal + handlers can get at.*/ + int console_fd = -1; ++int console_type = BEEP_TYPE_CONSOLE; ++char *console_device = NULL; ++ ++void do_beep(int freq); + + /* If we get interrupted, it would be nice to not leave the speaker beeping in + perpetuity. */ + void handle_signal(int signum) { ++ ++ if(console_device) ++ free(console_device); ++ + switch(signum) { + case SIGINT: + if(console_fd >= 0) { + /* Kill the sound, quit gracefully */ +- ioctl(console_fd, KIOCSOUND, 0); ++ do_beep(0); + close(console_fd); + exit(signum); + } else { +@@ -110,7 +121,7 @@ void handle_signal(int signum) { + /* print usage and exit */ + void usage_bail(const char *executable_name) { + printf("Usage:\n%s [-f freq] [-l length] [-r reps] [-d delay] " +- "[-D delay] [-s] [-c]\n", ++ "[-D delay] [-s] [-c] [-e device]\n", + executable_name); + printf("%s [Options...] [-n] [--new] [Options...] ... \n", executable_name); + printf("%s [-h] [--help]\n", executable_name); +@@ -141,11 +152,12 @@ void usage_bail(const char *executable_n + void parse_command_line(int argc, char **argv, beep_parms_t *result) { + int c; + +- struct option opt_list[4] = {{"help", 0, NULL, 'h'}, ++ struct option opt_list[] = {{"help", 0, NULL, 'h'}, + {"version", 0, NULL, 'V'}, + {"new", 0, NULL, 'n'}, ++ {"device", 1, NULL, 'e'}, + {0,0,0,0}}; +- while((c = getopt_long(argc, argv, "f:l:r:d:D:schvVn", opt_list, NULL)) ++ while((c = getopt_long(argc, argv, "f:l:r:d:D:schvVne:", opt_list, NULL)) + != EOF) { + int argval = -1; /* handle parsed numbers for various arguments */ + float argfreq = -1; +@@ -207,6 +219,9 @@ void parse_command_line(int argc, char * + result->next->next = NULL; + result = result->next; /* yes, I meant to do that. */ + break; ++ case 'e' : /* also --device */ ++ console_device = strdup(optarg); ++ break; + case 'h' : /* notice that this is also --help */ + default : + usage_bail(argv[0]); +@@ -214,26 +229,61 @@ void parse_command_line(int argc, char * + } + } + ++void do_beep(int freq) ++{ ++ if (console_type == BEEP_TYPE_CONSOLE) ++ { ++ if(ioctl(console_fd, KIOCSOUND, freq != 0 ++ ? (int)(CLOCK_TICK_RATE/freq) ++ : freq) < 0) { ++ printf("\a"); /* Output the only beep we can, in an effort to fall back on usefulness */ ++ perror("ioctl"); ++ } ++ } ++ else ++ { ++ /* BEEP_TYPE_EVDEV */ ++ struct input_event e; ++ ++ e.type = EV_SND; ++ e.code = SND_TONE; ++ e.value = freq; ++ ++ write(console_fd, &e, sizeof(struct input_event)); ++ } ++} ++ + void play_beep(beep_parms_t parms) { + int i; /* loop counter */ + + /* try to snag the console */ +- if((console_fd = open("/dev/console", O_WRONLY)) == -1) { +- fprintf(stderr, "Could not open /dev/console for writing.\n"); ++ ++ if(console_device) ++ console_fd = open(console_device, O_WRONLY); ++ else ++ if((console_fd = open("/dev/input/event0", O_WRONLY)) == -1) ++ if((console_fd = open("/dev/tty0", O_WRONLY)) == -1) ++ console_fd = open("/dev/vc/0", O_WRONLY); ++ ++ if(console_fd == -1) { ++ fprintf(stderr, "Could not open %s for writing\n", ++ console_device != NULL ? console_device : "/dev/tty0 or /dev/vc/0"); + printf("\a"); /* Output the only beep we can, in an effort to fall back on usefulness */ + perror("open"); + exit(1); + } + ++ if (ioctl(console_fd, EVIOCGSND(0)) != -1) ++ console_type = BEEP_TYPE_EVDEV; ++ else ++ console_type = BEEP_TYPE_CONSOLE; ++ + /* Beep */ + for (i = 0; i < parms.reps; i++) { /* start beep */ +- if(ioctl(console_fd, KIOCSOUND, (int)(CLOCK_TICK_RATE/parms.freq)) < 0) { +- printf("\a"); /* Output the only beep we can, in an effort to fall back on usefulness */ +- perror("ioctl"); +- } ++ do_beep(parms.freq); + /* Look ma, I'm not ansi C compatible! */ + usleep(1000*parms.length); /* wait... */ +- ioctl(console_fd, KIOCSOUND, 0); /* stop beep */ ++ do_beep(0); + if(parms.end_delay || (i+1 < parms.reps)) + usleep(1000*parms.delay); /* wait... */ + } /* repeat. */ +@@ -295,5 +345,8 @@ int main(int argc, char **argv) { + parms = next; + } + ++ if(console_device) ++ free(console_device); ++ + return EXIT_SUCCESS; + } |