diff options
author | Richard Zhu <hongxing.zhu@nxp.com> | 2025-08-20 05:23:28 +0300 |
---|---|---|
committer | Manivannan Sadhasivam <mani@kernel.org> | 2025-09-04 20:10:47 +0300 |
commit | c221cbf8dc547eb8489152ac62ef103fede99545 (patch) | |
tree | 88465dbfb32d8f1e851e4ddbb76266eaf0fda381 | |
parent | 8f5ae30d69d7543eee0d70083daf4de8fe15d585 (diff) | |
download | linux-c221cbf8dc547eb8489152ac62ef103fede99545.tar.xz |
PCI: imx6: Enable the Vaux supply if available
When the 3.3Vaux supply is present, fetch it at the probe time and keep it
enabled for the entire PCIe controller lifecycle so that the link can enter
L2 state and the devices can signal wakeup using either Beacon or WAKE#
mechanisms.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
[mani: reworded the subject, description and error message]
Signed-off-by: Manivannan Sadhasivam <mani@kernel.org>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Link: https://patch.msgid.link/20250820022328.2143374-1-hongxing.zhu@nxp.com
-rw-r--r-- | drivers/pci/controller/dwc/pci-imx6.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/pci/controller/dwc/pci-imx6.c b/drivers/pci/controller/dwc/pci-imx6.c index 80e48746bbaf..db51e382a7cf 100644 --- a/drivers/pci/controller/dwc/pci-imx6.c +++ b/drivers/pci/controller/dwc/pci-imx6.c @@ -1745,6 +1745,10 @@ static int imx_pcie_probe(struct platform_device *pdev) pci->max_link_speed = 1; of_property_read_u32(node, "fsl,max-link-speed", &pci->max_link_speed); + ret = devm_regulator_get_enable_optional(&pdev->dev, "vpcie3v3aux"); + if (ret < 0 && ret != -ENODEV) + return dev_err_probe(dev, ret, "failed to enable Vaux supply\n"); + imx_pcie->vpcie = devm_regulator_get_optional(&pdev->dev, "vpcie"); if (IS_ERR(imx_pcie->vpcie)) { if (PTR_ERR(imx_pcie->vpcie) != -ENODEV) |