Messages in this thread | | | From | Peter Geis <> | Date | Tue, 26 Apr 2022 08:17:26 -0400 | Subject | Re: [PATCH v8 2/5] PCI: dwc: rockchip: reset core at driver probe |
| |
On Mon, Apr 25, 2022 at 5:20 AM Philipp Zabel <p.zabel@pengutronix.de> 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@gmail.com> > > --- > > 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 >
| |