Message ID | 20210727140459.3767788-1-geert@linux-m68k.org |
---|---|
Headers | show |
Series | auxdisplay: ht16k33: Add character display support | expand |
On 7/27/21 7:04 AM, Geert Uytterhoeven wrote: > Instantiate a single LED based on the "led" subnode in DT. > This allows the user to control display brightness and blinking (backed > by hardware support) through the LED class API and triggers, and exposes > the display color. The LED will be named > "auxdisplay:<color>:<function>". > > When running in dot-matrix mode and if no "led" subnode is found, the > driver falls back to the traditional backlight mode, to preserve > backwards compatibility. > > Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> > --- > v4: > - Add missing select LEDS_CLASS, > > v3: > - Remove unneeded C++ comment, > - Use "err" instead of "error" to be consistent with existing driver > naming style, > - Make the creation of the LED device dependent on the presence of the > "led" subnode in DT, so it can be used in dot-matrix mode too. > - Use led_init_data() and devm_led_classdev_register_ext() to retrieve > all LED properties from DT, instead of manual LED name construction > based on just the "color" property, > > v2: > - Use "auxdisplay" instead of DRIVER_NAME in LED name. Hi Geert, Since LEDS_CLASS depends on NEW_LEDS, does this also need to select NEW_LEDS? and similar for INPUT_MATRIXKMAP: it depends on INPUT. However, selecting (enabling) an entire subsystem is not a preferable thing to do. > --- > drivers/auxdisplay/Kconfig | 1 + > drivers/auxdisplay/ht16k33.c | 124 ++++++++++++++++++++++++++++++----- > 2 files changed, 108 insertions(+), 17 deletions(-) > > diff --git a/drivers/auxdisplay/Kconfig b/drivers/auxdisplay/Kconfig > index 42fc7b155de09dbc..7436b9a4edbe5450 100644 > --- a/drivers/auxdisplay/Kconfig > +++ b/drivers/auxdisplay/Kconfig > @@ -176,6 +176,7 @@ config HT16K33 > select FB_SYS_IMAGEBLIT > select INPUT_MATRIXKMAP > select FB_BACKLIGHT > + select LEDS_CLASS > select LINEDISP > help > Say yes here to add support for Holtek HT16K33, RAM mapping 16*8 thanks.
Hi Randy, On Tue, Jul 27, 2021 at 11:05 PM Randy Dunlap <rdunlap@infradead.org> wrote: > On 7/27/21 7:04 AM, Geert Uytterhoeven wrote: > > Instantiate a single LED based on the "led" subnode in DT. > > This allows the user to control display brightness and blinking (backed > > by hardware support) through the LED class API and triggers, and exposes > > the display color. The LED will be named > > "auxdisplay:<color>:<function>". > > > > When running in dot-matrix mode and if no "led" subnode is found, the > > driver falls back to the traditional backlight mode, to preserve > > backwards compatibility. > > > > Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> > > --- > > v4: > > - Add missing select LEDS_CLASS, > Since LEDS_CLASS depends on NEW_LEDS, does this also need to > select NEW_LEDS? Right, I missed that. It needs to select both NEW_LEDS and LED_CLASS. Do I need to resend the whole series, or can this be fixed while applying? > and similar for INPUT_MATRIXKMAP: it depends on INPUT. HT16K33 already depends on INPUT. > However, selecting (enabling) an entire subsystem is not a > preferable thing to do. Unfortunately we have no choice, unless we untangle the depends/select web first: HT16K33 depends on NEW_LEDS, select LEDS_CLASS: drivers/leds/Kconfig:9:error: recursive dependency detected! drivers/leds/Kconfig:9: symbol NEW_LEDS is selected by SENSORS_APPLESMC drivers/hwmon/Kconfig:324: symbol SENSORS_APPLESMC depends on HWMON drivers/hwmon/Kconfig:6: symbol HWMON is selected by EEEPC_LAPTOP drivers/platform/x86/Kconfig:305: symbol EEEPC_LAPTOP depends on ACPI_VIDEO HT16K33 depends on LEDS_CLASS: drivers/leds/Kconfig:17:error: recursive dependency detected! drivers/leds/Kconfig:17: symbol LEDS_CLASS depends on NEW_LEDS drivers/leds/Kconfig:9: symbol NEW_LEDS is selected by SENSORS_APPLESMC drivers/hwmon/Kconfig:324: symbol SENSORS_APPLESMC depends on HWMON drivers/hwmon/Kconfig:6: symbol HWMON is selected by EEEPC_LAPTOP drivers/platform/x86/Kconfig:305: symbol EEEPC_LAPTOP depends on ACPI_VIDEO > > --- a/drivers/auxdisplay/Kconfig > > +++ b/drivers/auxdisplay/Kconfig > > @@ -176,6 +176,7 @@ config HT16K33 > > select FB_SYS_IMAGEBLIT > > select INPUT_MATRIXKMAP > > select FB_BACKLIGHT > > + select LEDS_CLASS > > select LINEDISP > > help > > Say yes here to add support for Holtek HT16K33, RAM mapping 16*8 Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds