This series patches refine pci-imx6 driver and do the following changes. - Encapsulate the clock enable into one standalone function - Add the error propagation from host_init - Balance the usage of the regulator and clocks when link never came up - Add the compliance tests mode support Main changes from v1 to v2: Regarding Lucas' comments. - Move the placement of the new imx6_pcie_clk_enable() to avoid the forward declarition. - Seperate the second patch of v1 patch-set to three patches. - Use the module_param to replace the kernel command line. Regarding Bjorn's comments: - Use the cover-letter for a multi-patch series. - Correct the subject line, and refine the commit logs. For example, remove the timestamp of the logs. drivers/pci/controller/dwc/pci-imx6.c | 166 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------------------- 1 file changed, 105 insertions(+), 61 deletions(-) [RESEND v2 1/5] PCI: imx6: Encapsulate the clock enable into one [RESEND v2 2/5] PCI: imx6: Add the error propagation from host_init [RESEND v2 3/5] PCI: imx6: Fix the regulator dump when link never [RESEND v2 4/5] PCI: imx6: Fix the clock reference handling unbalance [RESEND v2 5/5] PCI: imx6: Add the compliance tests mode support