diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig index e0179158aec6765496e14f7c0deaf5bd36200adf..270f78667dc60efeda197d270ae38358c0af2a5b 100644 --- a/arch/arm/mach-imx/Kconfig +++ b/arch/arm/mach-imx/Kconfig @@ -802,6 +802,8 @@ config SOC_IMX6Q select HAVE_IMX_SRC select HAVE_SMP select MFD_SYSCON + select MIGHT_HAVE_PCI + select PCI_DOMAINS if PCI select PINCTRL select PINCTRL_IMX6Q select PL310_ERRATA_588369 if CACHE_PL310 diff --git a/arch/arm/mach-imx/clk-imx6q.c b/arch/arm/mach-imx/clk-imx6q.c index e8e5bad82b30558f7b2d0a65fb0cd4b847fcd1ae..07bc0d8b573fa8d9dfc42b0cd7ad172df3cba125 100644 --- a/arch/arm/mach-imx/clk-imx6q.c +++ b/arch/arm/mach-imx/clk-imx6q.c @@ -623,6 +623,10 @@ static void __init imx6q_clocks_init(struct device_node *ccm_node) if (ret) pr_warn("failed to set up CLKO: %d\n", ret); + /* All existing boards with PCIe use LVDS1 */ + if (IS_ENABLED(CONFIG_PCI_IMX6)) + clk_set_parent(clk[lvds1_sel], clk[sata_ref]); + /* Set initial power mode */ imx6q_set_lpm(WAIT_CLOCKED);