On Mon, Apr 25, 2022 at 5:20 AM Philipp Zabel <p.zabel@xxxxxxxxxxxxxx> wrote: > > Hi Peter, > > On Sa, 2022-04-23 at 11:24 -0400, Peter Geis wrote: > > The PCIe controller is in an unknown state at driver probe. This can > > lead to undesireable effects when the driver attempts to configure the > > controller. > > > > Prevent issues in the future by resetting the core during probe. > > > > Signed-off-by: Peter Geis <pgwipeout@xxxxxxxxx> > > --- > > drivers/pci/controller/dwc/pcie-dw-rockchip.c | 22 +++++++------------ > > 1 file changed, 8 insertions(+), 14 deletions(-) > > > > diff --git a/drivers/pci/controller/dwc/pcie-dw-rockchip.c b/drivers/pci/controller/dwc/pcie-dw-rockchip.c > > index c9b341e55cbb..d67ed811e752 100644 > > --- a/drivers/pci/controller/dwc/pcie-dw-rockchip.c > > +++ b/drivers/pci/controller/dwc/pcie-dw-rockchip.c > > @@ -152,7 +152,13 @@ static int rockchip_pcie_resource_get(struct platform_device *pdev, > > if (IS_ERR(rockchip->rst_gpio)) > > return PTR_ERR(rockchip->rst_gpio); > > > > - return 0; > > + rockchip->rst = devm_reset_control_array_get_exclusive(&pdev->dev); > > + if (IS_ERR(rockchip->rst)) > > + return dev_err_probe(&pdev->dev, PTR_ERR(rockchip->rst), > > + "failed to get reset lines\n"); > > + > > + return reset_control_assert(rockchip->rst); > > This makes "rockchip_pcie_resource_get" a bit of a misnomer, maybe move > this out into rockchip_pcie_probe()? Ah, yes that does make sense, thanks. > > > + > > Superfluous whitespace. > > regards > Philipp >