Message ID | 20241109-pcie-en7581-fixes-v2-1-0ea3a4af994f@kernel.org (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | PCI: mediatek-gen3: mtk_pcie_en7581_power_up() code refactoring | expand |
On Sat, Nov 09, 2024 at 10:28:37AM +0100, Lorenzo Bianconi wrote: > Even if this is not a real issue since Airoha EN7581 SoC does not require > the mac reset line, add missing reset_control_deassert() for mac reset > line in mtk_pcie_en7581_power_up() callback. > > Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> - Mani > --- > drivers/pci/controller/pcie-mediatek-gen3.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/pci/controller/pcie-mediatek-gen3.c b/drivers/pci/controller/pcie-mediatek-gen3.c > index 66ce4b5d309bb6d64618c70ac5e0a529e0910511..0fac0b9fd785e463d26d29d695b923db41eef9cc 100644 > --- a/drivers/pci/controller/pcie-mediatek-gen3.c > +++ b/drivers/pci/controller/pcie-mediatek-gen3.c > @@ -897,6 +897,9 @@ static int mtk_pcie_en7581_power_up(struct mtk_gen3_pcie *pcie) > */ > mdelay(PCIE_EN7581_RESET_TIME_MS); > > + /* MAC power on and enable transaction layer clocks */ > + reset_control_deassert(pcie->mac_reset); > + > pm_runtime_enable(dev); > pm_runtime_get_sync(dev); > > @@ -931,6 +934,7 @@ static int mtk_pcie_en7581_power_up(struct mtk_gen3_pcie *pcie) > err_clk_prepare: > pm_runtime_put_sync(dev); > pm_runtime_disable(dev); > + reset_control_assert(pcie->mac_reset); > reset_control_bulk_assert(pcie->soc->phy_resets.num_resets, pcie->phy_resets); > err_phy_deassert: > phy_power_off(pcie->phy); > > -- > 2.47.0 >
diff --git a/drivers/pci/controller/pcie-mediatek-gen3.c b/drivers/pci/controller/pcie-mediatek-gen3.c index 66ce4b5d309bb6d64618c70ac5e0a529e0910511..0fac0b9fd785e463d26d29d695b923db41eef9cc 100644 --- a/drivers/pci/controller/pcie-mediatek-gen3.c +++ b/drivers/pci/controller/pcie-mediatek-gen3.c @@ -897,6 +897,9 @@ static int mtk_pcie_en7581_power_up(struct mtk_gen3_pcie *pcie) */ mdelay(PCIE_EN7581_RESET_TIME_MS); + /* MAC power on and enable transaction layer clocks */ + reset_control_deassert(pcie->mac_reset); + pm_runtime_enable(dev); pm_runtime_get_sync(dev); @@ -931,6 +934,7 @@ static int mtk_pcie_en7581_power_up(struct mtk_gen3_pcie *pcie) err_clk_prepare: pm_runtime_put_sync(dev); pm_runtime_disable(dev); + reset_control_assert(pcie->mac_reset); reset_control_bulk_assert(pcie->soc->phy_resets.num_resets, pcie->phy_resets); err_phy_deassert: phy_power_off(pcie->phy);
Even if this is not a real issue since Airoha EN7581 SoC does not require the mac reset line, add missing reset_control_deassert() for mac reset line in mtk_pcie_en7581_power_up() callback. Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> --- drivers/pci/controller/pcie-mediatek-gen3.c | 4 ++++ 1 file changed, 4 insertions(+)