How to setup i.MX6Dual/Quad and i.MX6Solo/DualLite Linux software for PCIe compliance Test?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How to setup i.MX6Dual/Quad and i.MX6Solo/DualLite Linux software for PCIe compliance Test?

How to setup i.MX6Dual/Quad and i.MX6Solo/DualLite Linux software for PCIe compliance Test?

Overview

This document introduces how to setup i.MX6Dual/Quad and i.MX6Solo/DualLite Linux software for PCIe compliance test.

Software Baselines

  • i.MX6Dual/Quad: Linux BSP L2.6.35_1.0.0
  • i.MX6Solo/DualLite: Linux BSP L2.6.35_2.0.0

Software Changes

To enable PCIe compliance test, PCIe software driver should not turn off PCIe clock and power in the tests. So the following changes are required:

diff --git a/arch/arm/mach-mx6/pcie.c b/arch/arm/mach-mx6/pcie.c

index 26d26f2..ad71085 100644

--- a/arch/arm/mach-mx6/pcie.c

+++ b/arch/arm/mach-mx6/pcie.c

@@ -801,6 +801,7 @@ static void __init add_pcie_port(void __iomem *base, void __iomem *dbi_base,

     } else {

         pr_info("IMX PCIe port: link down!\n");

+#if 0

         /* Release the clocks, and disable the power */

         pcie_clk = clk_get(NULL, "pcie_clk");

         if (IS_ERR(pcie_clk))

@@ -820,6 +821,7 @@ static void __init add_pcie_port(void __iomem *base, void __iomem *dbi_base,

         imx_pcie_clrset(IOMUXC_GPR1_TEST_POWERDOWN, 1 << 18,

                 IOMUXC_GPR1);

+#endif

     }

}

Software Build

Integrate the patch to the baseline code and recompile the kernel by following the instructions in Linux BSP user guide.

Before recompile, please ensure the following configuration is enabled by selecting " System Type -> Freescale MXC Implementations -> PCI Express support" as "*":

# MX6 Options:

#

CONFIG_IMX_PCIE=y


Labels (4)
No ratings
Version history
Last update:
‎06-03-2013 07:20 AM
Updated by: