backlight: lp855x: Move device_config setting out of lp855x_configure()
Move the setting of the lp->cfg pointer to the chip specific lp855x_device_config struct from lp855x_configure() to lp855x_probe(), before calling lp855x_parse_dt(). This is a preperation patch for adding ACPI enumeration support. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org> Signed-off-by: Lee Jones <lee.jones@linaro.org> Link: https://lore.kernel.org/r/20211102225504.18920-1-hdegoede@redhat.com
This commit is contained in:
parent
fa55b7dcdc
commit
dec5779e6a
|
@ -170,22 +170,6 @@ static int lp855x_configure(struct lp855x *lp)
|
|||
int i, ret;
|
||||
struct lp855x_platform_data *pd = lp->pdata;
|
||||
|
||||
switch (lp->chip_id) {
|
||||
case LP8550:
|
||||
case LP8551:
|
||||
case LP8552:
|
||||
case LP8553:
|
||||
case LP8556:
|
||||
lp->cfg = &lp855x_dev_cfg;
|
||||
break;
|
||||
case LP8555:
|
||||
case LP8557:
|
||||
lp->cfg = &lp8557_dev_cfg;
|
||||
break;
|
||||
default:
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (lp->cfg->pre_init_device) {
|
||||
ret = lp->cfg->pre_init_device(lp);
|
||||
if (ret) {
|
||||
|
@ -413,6 +397,22 @@ static int lp855x_probe(struct i2c_client *cl, const struct i2c_device_id *id)
|
|||
lp->chip_id = id->driver_data;
|
||||
lp->pdata = dev_get_platdata(&cl->dev);
|
||||
|
||||
switch (lp->chip_id) {
|
||||
case LP8550:
|
||||
case LP8551:
|
||||
case LP8552:
|
||||
case LP8553:
|
||||
case LP8556:
|
||||
lp->cfg = &lp855x_dev_cfg;
|
||||
break;
|
||||
case LP8555:
|
||||
case LP8557:
|
||||
lp->cfg = &lp8557_dev_cfg;
|
||||
break;
|
||||
default:
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (!lp->pdata) {
|
||||
ret = lp855x_parse_dt(lp);
|
||||
if (ret < 0)
|
||||
|
|
Loading…
Reference in New Issue