On 2020-03-09 20:52, Laurent Pinchart wrote: > The mxsfb driver is only used by OF platforms. Drop non-OF support. Nice cleanup. Actually only supported of anyways due to the pdev->dev.of_node check. Reviewed-by: Stefan Agner <stefan@xxxxxxxx> -- Stefan > > Signed-off-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > --- > drivers/gpu/drm/mxsfb/mxsfb_drv.c | 25 +++++++------------------ > 1 file changed, 7 insertions(+), 18 deletions(-) > > diff --git a/drivers/gpu/drm/mxsfb/mxsfb_drv.c > b/drivers/gpu/drm/mxsfb/mxsfb_drv.c > index 2316c12c5c42..ed8e3f7bc27c 100644 > --- a/drivers/gpu/drm/mxsfb/mxsfb_drv.c > +++ b/drivers/gpu/drm/mxsfb/mxsfb_drv.c > @@ -130,7 +130,8 @@ static int mxsfb_attach_bridge(struct > mxsfb_drm_private *mxsfb) > return 0; > } > > -static int mxsfb_load(struct drm_device *drm, unsigned long flags) > +static int mxsfb_load(struct drm_device *drm, > + const struct mxsfb_devdata *devdata) > { > struct platform_device *pdev = to_platform_device(drm->dev); > struct mxsfb_drm_private *mxsfb; > @@ -143,7 +144,7 @@ static int mxsfb_load(struct drm_device *drm, > unsigned long flags) > > mxsfb->drm = drm; > drm->dev_private = mxsfb; > - mxsfb->devdata = &mxsfb_devdata[pdev->id_entry->driver_data]; > + mxsfb->devdata = devdata; > > res = platform_get_resource(pdev, IORESOURCE_MEM, 0); > mxsfb->base = devm_ioremap_resource(drm->dev, res); > @@ -288,18 +289,10 @@ static struct drm_driver mxsfb_driver = { > .minor = 0, > }; > > -static const struct platform_device_id mxsfb_devtype[] = { > - { .name = "imx23-fb", .driver_data = MXSFB_V3, }, > - { .name = "imx28-fb", .driver_data = MXSFB_V4, }, > - { .name = "imx6sx-fb", .driver_data = MXSFB_V6, }, > - { /* sentinel */ } > -}; > -MODULE_DEVICE_TABLE(platform, mxsfb_devtype); > - > static const struct of_device_id mxsfb_dt_ids[] = { > - { .compatible = "fsl,imx23-lcdif", .data = &mxsfb_devtype[0], }, > - { .compatible = "fsl,imx28-lcdif", .data = &mxsfb_devtype[1], }, > - { .compatible = "fsl,imx6sx-lcdif", .data = &mxsfb_devtype[2], }, > + { .compatible = "fsl,imx23-lcdif", .data = &mxsfb_devdata[MXSFB_V3], }, > + { .compatible = "fsl,imx28-lcdif", .data = &mxsfb_devdata[MXSFB_V4], }, > + { .compatible = "fsl,imx6sx-lcdif", .data = &mxsfb_devdata[MXSFB_V6], }, > { /* sentinel */ } > }; > MODULE_DEVICE_TABLE(of, mxsfb_dt_ids); > @@ -314,14 +307,11 @@ static int mxsfb_probe(struct platform_device *pdev) > if (!pdev->dev.of_node) > return -ENODEV; > > - if (of_id) > - pdev->id_entry = of_id->data; > - > drm = drm_dev_alloc(&mxsfb_driver, &pdev->dev); > if (IS_ERR(drm)) > return PTR_ERR(drm); > > - ret = mxsfb_load(drm, 0); > + ret = mxsfb_load(drm, of_id->data); > if (ret) > goto err_free; > > @@ -375,7 +365,6 @@ static const struct dev_pm_ops mxsfb_pm_ops = { > static struct platform_driver mxsfb_platform_driver = { > .probe = mxsfb_probe, > .remove = mxsfb_remove, > - .id_table = mxsfb_devtype, > .driver = { > .name = "mxsfb", > .of_match_table = mxsfb_dt_ids, _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel