Hi, On Sun, Dec 04, 2022 at 11:43:10AM +0100, Carl Philipp Klemm wrote: > The keyboard light channel is used on xt875 for the touchscreen > button lights. > This commit also adds a checks for the sucessfull return of > device_get_match_data. "this commit also adds ..." means, that the commit should be split :) > Signed-off-by: Carl Philipp Klemm <philipp@xxxxxxxx> > --- > drivers/leds/leds-cpcap.c | 15 +++++++++++++++ > drivers/mfd/motorola-cpcap.c | 4 ++++ > 2 files changed, 19 insertions(+) > > diff --git a/drivers/leds/leds-cpcap.c b/drivers/leds/leds-cpcap.c > index 7d41ce8c9bb1..11a9b857d8ea 100644 > --- a/drivers/leds/leds-cpcap.c > +++ b/drivers/leds/leds-cpcap.c > @@ -58,6 +58,15 @@ static const struct cpcap_led_info cpcap_led_cp = { > .init_val = 0x0008, > }; > > +/* keyboard led */ > +static const struct cpcap_led_info cpcap_led_kl = { > + .reg = CPCAP_REG_KLC, > + .mask = 0x0001, > + .limit = 1, > + .init_mask = 0x07FF, > + .init_val = 0x07F0, > +}; > + > struct cpcap_led { > struct led_classdev led; > const struct cpcap_led_info *info; > @@ -152,6 +161,7 @@ static const struct of_device_id cpcap_led_of_match[] = { > { .compatible = "motorola,cpcap-led-blue", .data = &cpcap_led_blue }, > { .compatible = "motorola,cpcap-led-adl", .data = &cpcap_led_adl }, > { .compatible = "motorola,cpcap-led-cp", .data = &cpcap_led_cp }, > + { .compatible = "motorola,cpcap-led-kl", .data = &cpcap_led_kl }, > {}, > }; > MODULE_DEVICE_TABLE(of, cpcap_led_of_match); > @@ -168,6 +178,11 @@ static int cpcap_led_probe(struct platform_device *pdev) > led->info = device_get_match_data(&pdev->dev); > led->dev = &pdev->dev; > > + if (!led->info) { > + dev_warn(led->dev, "Can't get match data"); > + return -ENODEV; > + } If it's fatal, it should be dev_err and not dev_warn: if (!led->info) return dev_err_probe(led->dev, -ENODEV, "Can't get match data"); -- Sebastian > + > if (led->info->reg == 0x0000) { > dev_err(led->dev, "Unsupported LED"); > return -ENODEV; > diff --git a/drivers/mfd/motorola-cpcap.c b/drivers/mfd/motorola-cpcap.c > index 265464b5d7cc..57b3378a8829 100644 > --- a/drivers/mfd/motorola-cpcap.c > +++ b/drivers/mfd/motorola-cpcap.c > @@ -285,6 +285,10 @@ static const struct mfd_cell cpcap_mfd_devices[] = { > .name = "cpcap-led", > .id = 4, > .of_compatible = "motorola,cpcap-led-cp", > + }, { > + .name = "cpcap-led", > + .id = 5, > + .of_compatible = "motorola,cpcap-led-kl", > }, { > .name = "cpcap-codec", > } > -- > 2.38.1 > >
Attachment:
signature.asc
Description: PGP signature