Re: [PATCH 09/13] auxdisplay: charlcd: Extract character LCD core from misc/panel

From: Arnd Bergmann
Date: Mon Feb 06 2017 - 10:09:58 EST


On Mon, Feb 6, 2017 at 3:38 PM, Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> wrote:
> Extract the character LCD core from the Parallel port LCD/Keypad Panel
> driver in the misc subsystem, and convert it into a subdriver in the
> auxdisplay subsystem. This allows the character LCD core to be used by
> other drivers later.
>
> Compilation is controlled by its own Kconfig symbol CHARLCD, which is to
> be selected by its users, but can be enabled manually for
> compile-testing.
>
> All functions changed their prefix from "lcd_" to "charlcd_", and gained
> a "struct charlcd *" parameter to operate on a specific instance.
> While the driver API thus is ready to support multiple instances, the
> current limitation of a single display (/dev/lcd has a single misc minor
> assigned) is retained.
>
> No functional changes intended.
>
> Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
> ---
> drivers/auxdisplay/Kconfig | 3 +
> drivers/auxdisplay/Makefile | 1 +
> drivers/auxdisplay/charlcd.c | 790 +++++++++++++++++++++++++++++++++++++++++
> drivers/misc/Kconfig | 1 +
> drivers/misc/panel.c | 827 +++++--------------------------------------
> include/misc/charlcd.h | 40 +++
> 6 files changed, 927 insertions(+), 735 deletions(-)
> create mode 100644 drivers/auxdisplay/charlcd.c
> create mode 100644 include/misc/charlcd.h

Looks good overall, and I like the entire series, but I wonder if we should move
the panel.c file into drivers/auxdisplay/ as well. If I understand it
right, what's
left now is a parport driver that hooks into the charlcd framework. I see that
we already have another parport driver in drivers/auxdisplay/ks0108.c, so why
not move both halves of the misc/panel.c driver into modules in
drivers/auxdisplay?

Arnd