• Lucas Stach's avatar
    PCI: imx6: Support MPLL reconfiguration for 100MHz and 200MHz refclock · f18f42d7
    Lucas Stach authored
    The power up defaults of the MPLL are designed for the standard 125MHz
    refclock derived from the ENET PLL. As this clock has a jitter that
    violates the PCIe Gen2 timing requirements, some board designs use
    an external reference clock generator. Those clock generators may
    output a clock at a different rate than what the MPLL expects
    (usually a 100MHz clock, to re-use the PCIe bus clock).
    
    In that case the MPLL must be reconfigured via overrides to use
    different refclock dividers and loop multipliers. The i.MX6
    reference manual lists both 100MHz and 200MHz as supported refclock
    rates and the associated mult and div values.
    
    Only the 100MHz setup has been tested on a real board, but since the
    200MHz setup only differs in the used pre-divider it seems safe to
    add it now.
    Signed-off-by: default avatarLucas Stach <l.stach@pengutronix.de>
    Signed-off-by: default avatarLorenzo Pieralisi <lorenzo.pieralisi@arm.com>
    Reviewed-by: default avatarRichard Zhu <hongxing.zhu@nxp.com>
    f18f42d7
pci-imx6.c 23.9 KB