Hi HL, On Mon, Dec 04, 2017 at 03:17:48PM +0800, Lin Huang wrote: > Refactor Innolux P079ZCA panel driver, let it support > multi panel. > > Signed-off-by: Lin Huang <h...@rock-chips.com> > --- > Changes in v2: > - Change regulator property name to meet the panel datasheet > Changes in v3: > - this patch only refactor P079ZCA panel to support multi panel, support > P097PFG panel in another patch > > drivers/gpu/drm/panel/panel-innolux-p079zca.c | 147 > ++++++++++++++++++-------- > 1 file changed, 105 insertions(+), 42 deletions(-) > > diff --git a/drivers/gpu/drm/panel/panel-innolux-p079zca.c > b/drivers/gpu/drm/panel/panel-innolux-p079zca.c > index 6ba9344..1597744 100644 > --- a/drivers/gpu/drm/panel/panel-innolux-p079zca.c > +++ b/drivers/gpu/drm/panel/panel-innolux-p079zca.c ...
> @@ -134,12 +162,13 @@ static int innolux_panel_prepare(struct drm_panel > *panel) > return 0; > > poweroff: > - regulator_err = regulator_disable(innolux->supply); I think 'regulator_err' is unused after this patch. Please remove it. > - if (regulator_err) > - DRM_DEV_ERROR(panel->dev, "failed to disable regulator: %d\n", > - regulator_err); > - > gpiod_set_value_cansleep(innolux->enable_gpio, 0); > + regulator_disable(innolux->avee); > +disable_avdd: > + regulator_disable(innolux->avdd); > +disable_vddi: > + regulator_disable(innolux->vddi); > + > return err; > } > ... > @@ -209,20 +256,36 @@ static const struct drm_panel_funcs innolux_panel_funcs > = { > }; > > static const struct of_device_id innolux_of_match[] = { > - { .compatible = "innolux,p079zca", }, > - { } You're deleting this terminator. Please don't. > + { .compatible = "innolux,p079zca", > + .data = &innolux_p079zca_panel_desc > + }, > }; > MODULE_DEVICE_TABLE(of, innolux_of_match); > ... Brian