[PATCH 00/14] Remove support for platform data from samsung keypad

Dmitry Torokhov
2024-08-19T04:58:26Z

Hi,

This series attempts to rework samsumg=keypad driver to stop using
platform data and instead rely on generic device properties only.

The first 8 patches are general cleanup/facelift patches.

The 9th patch introduces alternative binding that is more compact that
the original one, which makes it more suitable for use in legacy (non
DT) boards with static device properties. Note that the "new" binding is
the standard binding for matrix keypads.

Patch #10 implements the new binding in the driver, #11 converts the
only user of platform data in the mainline tree to the static device
properties, and #12 drops support for platform data from the driver.

Patches #13 and #14 are "bonus" converting the rest of crag6410 to use
software nodes/properties to describe GPIO keys, LEDs and other
peripherals. Note that I believe they fix and issue with recent
conversion to GPIO lookup tables - the names of gpiochip structures I
think are "GP<N>" ("GPK", "GPL", etc) and not "GPIO<N>".

Mark, you said you are using this board, it would be great if you could
give this a spin.

Thanks!

Dmitry Torokhov (14):
Input: samsung-keypad - switch to using devm_clk_get_prepared()
Input: samsung-keypad - do not set input device's parent explicitly
Input: samsung-keypad - do not combine memory allocation checks
Input: samsung-keypad - use struct_size() helper
Input: samsung-keypad - use devm to disable runtime PM
Input: samsung-keypad - use guard notation to acquire mutex
Input: samsung-keypad - use per-chip parameters
Input: samsung-keypad - use BIT() and GENMASK() where appropriate
dt-bindings: input: samsung,s3c6410-keypad: introduce compact binding
Input: samsung-keypad - handle compact binding
ARM: s3c: crag6410: switch keypad device to software properties
Input: samsung-keypad - remove support for platform data
ARM: s3c: crag6410: use software nodes/properties to set up GPIO keys
ARM: s3c: crag6410 - convert GPIO lookup tables to property entries

.../input/samsung,s3c6410-keypad.yaml | 57 +++-
arch/arm/mach-s3c/Kconfig | 5 -
arch/arm/mach-s3c/Kconfig.s3c64xx | 1 -
arch/arm/mach-s3c/Makefile.s3c64xx | 1 -
arch/arm/mach-s3c/devs.c | 62 ----
arch/arm/mach-s3c/devs.h | 2 -
arch/arm/mach-s3c/gpio-samsung-s3c64xx.h | 5 +
arch/arm/mach-s3c/gpio-samsung.c | 35 ++
arch/arm/mach-s3c/keypad.h | 27 --
arch/arm/mach-s3c/mach-crag6410.c | 242 ++++++++-----
arch/arm/mach-s3c/setup-keypad-s3c64xx.c | 20 --
drivers/input/keyboard/samsung-keypad.c | 318 ++++++++----------
include/linux/input/samsung-keypad.h | 39 ---
13 files changed, 398 insertions(+), 416 deletions(-)
delete mode 100644 arch/arm/mach-s3c/keypad.h
delete mode 100644 arch/arm/mach-s3c/setup-keypad-s3c64xx.c
delete mode 100644 include/linux/input/samsung-keypad.h

--
Dmitry