On Sat, Dec 12, 2020 at 9:18 AM Chen-Yu Tsai <wens@xxxxxxxxxx> wrote: > > On Mon, Dec 7, 2020 at 10:11 PM Rob Herring <robh@xxxxxxxxxx> wrote: > > > > On Wed, Nov 18, 2020 at 1:17 AM Chen-Yu Tsai <wens@xxxxxxxxxx> wrote: > > > > > > From: Chen-Yu Tsai <wens@xxxxxxxx> > > > > > > The Rockchip PCIe controller DT binding clearly states that 'ep-gpios' is > > > an optional property. And indeed there are boards that don't require it. > > > > > > Make the driver follow the binding by using devm_gpiod_get_optional() > > > instead of devm_gpiod_get(). > > > > > > Fixes: e77f847df54c ("PCI: rockchip: Add Rockchip PCIe controller support") > > > Fixes: 956cd99b35a8 ("PCI: rockchip: Separate common code from RC driver") > > > Fixes: 964bac9455be ("PCI: rockchip: Split out rockchip_pcie_parse_dt() to parse DT") > > > Signed-off-by: Chen-Yu Tsai <wens@xxxxxxxx> > > > --- > > > Changes since v1: > > > > > > - Rewrite subject to match existing convention and reference > > > 'ep-gpios' DT property instead of the 'ep_gpio' field > > > --- > > > drivers/pci/controller/pcie-rockchip.c | 2 +- > > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > > > diff --git a/drivers/pci/controller/pcie-rockchip.c b/drivers/pci/controller/pcie-rockchip.c > > > index 904dec0d3a88..c95950e9004f 100644 > > > --- a/drivers/pci/controller/pcie-rockchip.c > > > +++ b/drivers/pci/controller/pcie-rockchip.c > > > @@ -118,7 +118,7 @@ int rockchip_pcie_parse_dt(struct rockchip_pcie *rockchip) > > > } > > > > > > if (rockchip->is_rc) { > > > - rockchip->ep_gpio = devm_gpiod_get(dev, "ep", GPIOD_OUT_HIGH); > > > + rockchip->ep_gpio = devm_gpiod_get_optional(dev, "ep", GPIOD_OUT_HIGH); > > > if (IS_ERR(rockchip->ep_gpio)) { > > > dev_err(dev, "missing ep-gpios property in node\n"); > > > > You should drop the error message. What it says is now never the > > reason for the error and it could most likely be a deferred probe > > which you don't want an error message for. > > What about switching to dev_err_probe() instead? > > That way deferred probe errors get silenced (or get a better debug message), > and error messages for other issues, such as miswritten gpio properties are > still produced. I guess, but those errors should be in the subsystem code IMO rather than every driver. Rob