From 2f2f662785269d4402bfd57145515e8d73ef3068 Mon Sep 17 00:00:00 2001 From: Hal Feng Date: Thu, 17 Aug 2023 11:51:57 +0800 Subject: pci: starfive: Add StarFive VisionFive 2 board support Make the code be compatible with the StarFive VisionFive 2 board. The code is ported from tag JH7110_VF2_515_v3.9.3 of VF2 repo. Signed-off-by: Mason Huo Signed-off-by: Minda Chen Signed-off-by: Hal Feng --- drivers/pci/pcie_starfive.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/pci/pcie_starfive.c b/drivers/pci/pcie_starfive.c index d5a812d36a..d02cffe9d4 100644 --- a/drivers/pci/pcie_starfive.c +++ b/drivers/pci/pcie_starfive.c @@ -371,15 +371,22 @@ static int starfive_pcie_init_port(struct udevice *dev) goto err_deassert_clk; } +#if CONFIG_IS_ENABLED(TARGET_STARFIVE_EVB) ret = pinctrl_select_state(dev, "power-active"); if (ret) { dev_err(dev, "Set power-acvtive pinctrl failed: %d\n", ret); goto err_deassert_reset; } +#endif + ret = pinctrl_select_state(dev, "perst-active"); if (ret) { dev_err(dev, "Set perst-active pinctrl failed: %d\n", ret); +#if CONFIG_IS_ENABLED(TARGET_STARFIVE_EVB) goto err_release_power_pin; +#else + goto err_deassert_reset; +#endif } /* Disable physical functions except #0 */ @@ -446,8 +453,10 @@ static int starfive_pcie_init_port(struct udevice *dev) return 0; +#if CONFIG_IS_ENABLED(TARGET_STARFIVE_EVB) err_release_power_pin: pinctrl_select_state(dev, "power-default"); +#endif err_deassert_reset: reset_assert_bulk(&priv->rsts); err_deassert_clk: -- cgit v1.2.3