All of lore.kernel.org
 help / color / mirror / Atom feed
From: Simon Glass <sjg@chromium.org>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v3 00/12] dm: input: Move keyboard drivers to driver model
Date: Wed, 11 Nov 2015 14:56:09 -0700	[thread overview]
Message-ID: <CAPnjgZ1aMf2JawU3XijGOTpMBdMbi1cs-So-XBK34EYSUawKqA@mail.gmail.com> (raw)
In-Reply-To: <1447261548-14304-1-git-send-email-sjg@chromium.org>

Hi Bin,

On 11 November 2015 at 10:05, Simon Glass <sjg@chromium.org> wrote:
> This series adds a new uclass for keyboards and converts some drivers
> over to use it.
>
> This series includes some work to remove code duplication in the keyboard
> drivers by updating them to use the input library (input.c). This unifies
> the keycode decoding logic in one place. In order to do this some
> enhancements are needed to the input library and these are also included.
>
> The cros_ec and tegra_kbc drivers are converted to use driver model.
>
> The i8042 driver is converted also, after various tidy-ups. The driver has
> some strange interactions with the cfb_console driver. This is removed in
> this series which is possible because the only user is x86. Some i8042
> features have been dropped (the only deliberate one is the flashing cursor
> which does not seem to be used by any board).
>
> Also the i8042 driver currently has its own keycode-decoding logic. This
> series removes it in favour of the input library. Therefore testing of this
> new driver would be appreciated. So far I have only been able to test on
> link, which does not have a full keyboard. Also, while German keyboard
> support is implemented, I am unable to test that either.
>
> These changes can be considered the first step towards moving stdio to
> driver model. For that to be useful we need to convert LCD and video also.
>
> Note: This series is missing the code to call the update_leds() method when
> the LEDs change. This needs to be added to keyboard_tstc() and
> keyboard_getc(). If someone is able to test this I can send a patch for that
> also.
>
> This series is available at u-boot-dm branch input-working.

Can you please try testing this for your crash when pressing 'caps
lock'? I'm not sure what is going on there and I don't have hardware
to test with.

>
> Changes in v3:
> - Refactor the German keyboard code to use data rather than code
> - Drop unrelated cros_keyb change
> - Fix 'QUICK' typo
> - Fix missing 'use' word
> - Drop patches already applied
>
> Changes in v2:
> - Update input_add_tables() to add error checking
> - Convert two multi-line comments to single-line comments
> - Correct call to input_init()
> - Drop CONFIG_VGA_AS_SINGLE_DEVICE from all x86 board config files
> - Use device tree to handle this quirk
>
> Simon Glass (12):
>   input: Support the German keymap
>   input: Adjust structure of code in process_modifier()
>   input: Handle caps lock
>   input: Allow updating of keyboard LEDs
>   input: i8042: Convert to use the input library
>   input: Add a Kconfig option for the i8042 keyboard
>   x86: Add an i8042 device for boards that have it
>   Drop CONFIG_ISA_KEYBOARD
>   input: Convert i8042 to driver model
>   i8042: Handle a duplicate power-on-reset response
>   video: input: Clean up after i8042 conversion
>   input: Convert 'keyboard' driver to use input library
>
>  README                                   |  30 +-
>  arch/x86/Kconfig                         |   6 +
>  arch/x86/dts/bayleybay.dts               |   1 +
>  arch/x86/dts/chromebook_link.dts         |   5 +
>  arch/x86/dts/keyboard.dtsi               |   5 +
>  board/kosagi/novena/novena.c             |   2 +-
>  board/mpl/pip405/README                  |   4 -
>  doc/device-tree-bindings/input/i8042.txt |  10 +
>  drivers/input/Kconfig                    |  10 +
>  drivers/input/Makefile                   |   2 +-
>  drivers/input/cros_ec_keyb.c             |   2 +-
>  drivers/input/i8042.c                    | 563 ++++++++-----------------------
>  drivers/input/input.c                    | 158 +++++++--
>  drivers/input/keyboard.c                 | 290 +++-------------
>  drivers/input/tegra-kbc.c                |   2 +-
>  drivers/video/cfb_console.c              |  20 +-
>  include/configs/MIP405.h                 |   5 -
>  include/configs/PIP405.h                 |   5 -
>  include/configs/bayleybay.h              |   3 -
>  include/configs/chromebox_panther.h      |   2 -
>  include/configs/minnowmax.h              |   1 -
>  include/configs/x86-chromebook.h         |   2 +-
>  include/configs/x86-common.h             |   2 +-
>  include/i8042.h                          |   6 -
>  include/input.h                          |  17 +-
>  include/keyboard.h                       |   5 +
>  26 files changed, 376 insertions(+), 782 deletions(-)
>  create mode 100644 arch/x86/dts/keyboard.dtsi
>  create mode 100644 doc/device-tree-bindings/input/i8042.txt
>
> --
> 2.6.0.rc2.230.g3dd15c0
>

Regards,
Simon

  parent reply	other threads:[~2015-11-11 21:56 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-11 17:05 [U-Boot] [PATCH v3 00/12] dm: input: Move keyboard drivers to driver model Simon Glass
2015-11-11 17:05 ` [U-Boot] [PATCH v3 01/12] input: Support the German keymap Simon Glass
2015-11-12  3:51   ` Bin Meng
2015-11-14  2:04     ` Simon Glass
2015-11-11 17:05 ` [U-Boot] [PATCH v3 02/12] input: Adjust structure of code in process_modifier() Simon Glass
2015-11-12 13:39   ` Bin Meng
2015-11-14  2:04     ` Simon Glass
2015-11-11 17:05 ` [U-Boot] [PATCH v3 03/12] input: Handle caps lock Simon Glass
2015-11-12 13:50   ` Bin Meng
2015-11-14  2:04     ` Simon Glass
2015-11-11 17:05 ` [U-Boot] [PATCH v3 04/12] input: Allow updating of keyboard LEDs Simon Glass
2015-11-12 13:50   ` Bin Meng
2015-11-14  2:04     ` Simon Glass
2015-11-11 17:05 ` [U-Boot] [PATCH v3 05/12] input: i8042: Convert to use the input library Simon Glass
2015-11-12 13:50   ` Bin Meng
2015-11-14  2:04     ` Simon Glass
2015-11-11 17:05 ` [U-Boot] [PATCH v3 06/12] input: Add a Kconfig option for the i8042 keyboard Simon Glass
2015-11-14  2:04   ` Simon Glass
2015-11-11 17:05 ` [U-Boot] [PATCH v3 07/12] x86: Add an i8042 device for boards that have it Simon Glass
2015-11-14  2:04   ` Simon Glass
2015-11-11 17:05 ` [U-Boot] [PATCH v3 08/12] Drop CONFIG_ISA_KEYBOARD Simon Glass
2015-11-14  2:04   ` Simon Glass
2015-11-11 17:05 ` [U-Boot] [PATCH v3 09/12] input: Convert i8042 to driver model Simon Glass
2015-11-12 13:50   ` Bin Meng
2015-11-14  2:04     ` Simon Glass
2015-11-11 17:05 ` [U-Boot] [PATCH v3 10/12] i8042: Handle a duplicate power-on-reset response Simon Glass
2015-11-14  2:04   ` Simon Glass
2015-11-11 17:05 ` [U-Boot] [PATCH v3 11/12] video: input: Clean up after i8042 conversion Simon Glass
2015-11-14  2:04   ` Simon Glass
2015-11-11 17:05 ` [U-Boot] [PATCH v3 12/12] input: Convert 'keyboard' driver to use input library Simon Glass
2015-11-14  2:04   ` Simon Glass
2015-11-11 21:56 ` Simon Glass [this message]
2015-11-12  3:56   ` [U-Boot] [PATCH v3 00/12] dm: input: Move keyboard drivers to driver model Bin Meng
2015-11-12 13:33     ` Bin Meng
2015-11-12 19:57       ` Simon Glass

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAPnjgZ1aMf2JawU3XijGOTpMBdMbi1cs-So-XBK34EYSUawKqA@mail.gmail.com \
    --to=sjg@chromium.org \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.