Messages in this thread | | | Date | Mon, 28 Mar 2022 10:20:27 +0200 | Subject | Re: [PATCH v9 17/22] phy: phy-mtk-dp: Add driver for DP phy | From | AngeloGioacchino Del Regno <> |
| |
Il 28/03/22 00:39, Guillaume Ranquet ha scritto: > From: Markus Schneider-Pargmann <msp@baylibre.com> > > This is a new driver that supports the integrated DisplayPort phy for > mediatek SoCs, especially the mt8195. The phy is integrated into the > DisplayPort controller and will be created by the mtk-dp driver. This > driver expects a struct regmap to be able to work on the same registers > as the DisplayPort controller. It sets the device data to be the struct > phy so that the DisplayPort controller can easily work with it. > > The driver does not have any devicetree bindings because the datasheet > does not list the controller and the phy as distinct units. > > The interaction with the controller can be covered by the configure > callback of the phy framework and its displayport parameters. > > Signed-off-by: Markus Schneider-Pargmann <msp@baylibre.com> > Signed-off-by: Guillaume Ranquet <granquet@baylibre.com> > --- > MAINTAINERS | 1 + > drivers/phy/mediatek/Kconfig | 8 ++ > drivers/phy/mediatek/Makefile | 1 + > drivers/phy/mediatek/phy-mtk-dp.c | 201 ++++++++++++++++++++++++++++++ > 4 files changed, 211 insertions(+) > create mode 100644 drivers/phy/mediatek/phy-mtk-dp.c >
..snip..
> diff --git a/drivers/phy/mediatek/phy-mtk-dp.c b/drivers/phy/mediatek/phy-mtk-dp.c > new file mode 100644 > index 000000000000..e5c5494f3636 > --- /dev/null > +++ b/drivers/phy/mediatek/phy-mtk-dp.c
..snip..
> + > +static int mtk_dp_phy_probe(struct platform_device *pdev) > +{ > + struct device *dev = &pdev->dev; > + struct mtk_dp_phy *dp_phy; > + struct phy *phy; > + struct regmap *regs; > + > + regs = syscon_regmap_lookup_by_phandle(dev->of_node, "mediatek,dp-syscon"); > +
Please drop this blank line
> + if (IS_ERR(regs)) > + return PTR_ERR(regs); > + > + dp_phy = devm_kzalloc(dev, sizeof(*dp_phy), GFP_KERNEL); > + if (!dp_phy) > + return -ENOMEM; > + > + dp_phy->regs = regs; > + > + phy = devm_phy_create(dev, NULL, &mtk_dp_phy_dev_ops); > +
Same here
> + if (IS_ERR(phy)) > + return dev_err_probe(dev, PTR_ERR(phy), "Failed to create DP PHY: %ld\n", PTR_ERR(phy)); > +
Using dev_err_probe automates printing the error, so the correct usage is:
return dev_err_probe(dev, PTR_ERR(phy), "Failed to create DP PHY\n");
> + phy_set_drvdata(phy, dp_phy); > + > + return 0; > +} > + > +struct platform_driver mtk_dp_phy_driver = { > + .probe = mtk_dp_phy_probe, > + .driver = { > + .name = "mediatek-dp-phy", > + }, > +}; > +module_platform_driver(mtk_dp_phy_driver);
Also, in your dt-binding, you mention a compatible for this driver, but I don't see any, here. This means that you do know what to do, so please do it.
Regards, Angelo
> + > +MODULE_AUTHOR("Markus Schneider-Pargmann <msp@baylibre.com>"); > +MODULE_DESCRIPTION("MediaTek DP PHY Driver"); > +MODULE_LICENSE("GPL");
| |