RE: git: c51978f4b2f0 - main - kbd: add KBD_DELAY1 and KBD_DELAY2
Date: Sat, 25 Feb 2023 17:03:06 UTC
Warner Losh <imp_at_FreeBSD.org> wrote on Date: Sat, 25 Feb 2023 06:26:00 UTC : > The branch main has been updated by imp: > > URL: https://cgit.FreeBSD.org/src/commit/?id=c51978f4b2f080c80ddc891c24b151d35acb8ba4 > > commit c51978f4b2f080c80ddc891c24b151d35acb8ba4 > Author: Michael Paepcke <git@paepcke.de> > AuthorDate: 2023-02-18 09:11:37 +0000 > Commit: Warner Losh <imp@FreeBSD.org> > CommitDate: 2023-02-25 06:19:05 +0000 > > kbd: add KBD_DELAY1 and KBD_DELAY2 > > Allow to configure KBD_DELAY* via KERNCONF for user-land less embedded > and security appliances > > Reviewed by: imp (folded) > Pull Request: https://github.com/freebsd/freebsd-src/pull/649 > --- > sys/conf/options | 3 ++- > sys/dev/kbd/kbd.c | 4 ++-- > sys/dev/kbd/kbdreg.h | 8 ++++++-- > 3 files changed, 10 insertions(+), 5 deletions(-) > > diff --git a/sys/conf/options b/sys/conf/options > index 7855a2f3f20e..42529a90a54e 100644 > --- a/sys/conf/options > +++ b/sys/conf/options > @@ -803,8 +803,9 @@ KBD_INSTALL_CDEV opt_kbd.h > KBD_MAXRETRY opt_kbd.h > KBD_MAXWAIT opt_kbd.h > KBD_RESETDELAY opt_kbd.h > +KBD_DELAY1 opt_kbd.h > +KBD_DELAY2 opt_kbd.h > KBDIO_DEBUG opt_kbd.h > - > KBDMUX_DFLT_KEYMAP opt_kbdmux.h > > # options for the Atheros driver > diff --git a/sys/dev/kbd/kbd.c b/sys/dev/kbd/kbd.c > index 205d76639e0f..ebc779de4073 100644 > --- a/sys/dev/kbd/kbd.c > +++ b/sys/dev/kbd/kbd.c > @@ -143,8 +143,8 @@ kbd_init_struct(keyboard_t *kbd, char *name, int type, int unit, int config, > kbd->kb_accentmap = NULL; > kbd->kb_fkeytab = NULL; > kbd->kb_fkeytab_size = 0; > - kbd->kb_delay1 = KB_DELAY1; /* these values are advisory only */ > - kbd->kb_delay2 = KB_DELAY2; > + kbd->kb_delay1 = KBD_DELAY1; /* these values are advisory only */ > + kbd->kb_delay2 = KBD_DELAY2; > kbd->kb_count = 0L; > bzero(kbd->kb_lastact, sizeof(kbd->kb_lastact)); > } > diff --git a/sys/dev/kbd/kbdreg.h b/sys/dev/kbd/kbdreg.h > index 15b7e5183f35..2839e259420d 100644 > --- a/sys/dev/kbd/kbdreg.h > +++ b/sys/dev/kbd/kbdreg.h > @@ -151,8 +151,12 @@ struct keyboard { > void *kb_data; /* the driver's private data */ > int kb_delay1; > int kb_delay2; > -#define KB_DELAY1 500 > -#define KB_DELAY2 100 > +#ifndef KBD_DELAY1 > +#define KBD_DELAY1 500 > +#endif > +#ifndef KBD_DELAY2 > +#define KBD_DELAY2 100 > +#endif [Just reporting Ximalas's Discord note.] So opt_kbd.h must be included before kbdreg.h in order to avoid: macro redefined in opt_kbd.h ? Should something force the right order? > unsigned long kb_count; /* # of processed key strokes */ > u_char kb_lastact[NUM_KEYS/2]; > struct cdev *kb_dev; === Mark Millard marklmi at yahoo.com