kernel: bump to 4.4.40
[openwrt/staging/yousong.git] / target / linux / layerscape / patches-4.4 / 8237-pcie-ls208x-use-unified-compatible-fsl-ls2080a-pcie-.patch
index 08e1ecba9a0b3d1f55a1b74c888801ad594cfc96..6162e2b25774529d82c634fc8794829df5143d4c 100644 (file)
@@ -15,8 +15,6 @@ Signed-off-by: Shengzhou Liu <Shengzhou.Liu@nxp.com>
  drivers/pci/host/pci-layerscape.c              |   13 ++++++++-----
  2 files changed, 12 insertions(+), 13 deletions(-)
 
-diff --git a/arch/arm64/boot/dts/freescale/fsl-ls2088a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls2088a.dtsi
-index bd69942..07c917b 100644
 --- a/arch/arm64/boot/dts/freescale/fsl-ls2088a.dtsi
 +++ b/arch/arm64/boot/dts/freescale/fsl-ls2088a.dtsi
 @@ -513,8 +513,7 @@
@@ -59,28 +57,26 @@ index bd69942..07c917b 100644
                reg = <0x00 0x03700000 0x0 0x00100000   /* controller registers */
                       0x38 0x00000000 0x0 0x00002000>; /* configuration space */
                reg-names = "regs", "config";
-diff --git a/drivers/pci/host/pci-layerscape.c b/drivers/pci/host/pci-layerscape.c
-index 00feabf..3e2100d 100644
 --- a/drivers/pci/host/pci-layerscape.c
 +++ b/drivers/pci/host/pci-layerscape.c
-@@ -158,9 +158,14 @@ static void ls1021_pcie_host_init(struct pcie_port *pp)
+@@ -158,9 +158,14 @@ static void ls1021_pcie_host_init(struct
  static int ls_pcie_link_up(struct pcie_port *pp)
  {
        struct ls_pcie *pcie = to_ls_pcie(pp);
 -      u32 state;
 +      u32 state, offset;
-+
+-      state = (ioread32(pcie->lut + pcie->drvdata->lut_dbg) >>
 +        if (of_get_property(pp->dev->of_node, "fsl,lut_diff", NULL))
 +                offset = 0x407fc;
 +        else
 +                offset = pcie->drvdata->lut_dbg;
--      state = (ioread32(pcie->lut + pcie->drvdata->lut_dbg) >>
++
 +      state = (ioread32(pcie->lut + offset) >>
                 pcie->drvdata->ltssm_shift) &
                 LTSSM_STATE_MASK;
  
-@@ -261,7 +266,6 @@ static const struct of_device_id ls_pcie_of_match[] = {
+@@ -261,7 +266,6 @@ static const struct of_device_id ls_pcie
        { .compatible = "fsl,ls1046a-pcie", .data = &ls1046_drvdata },
        { .compatible = "fsl,ls1088a-pcie", .data = &ls1088_drvdata },
        { .compatible = "fsl,ls2080a-pcie", .data = &ls2080_drvdata },
@@ -88,7 +84,7 @@ index 00feabf..3e2100d 100644
        { },
  };
  MODULE_DEVICE_TABLE(of, ls_pcie_of_match);
-@@ -315,8 +319,7 @@ static int __init ls_pcie_probe(struct platform_device *pdev)
+@@ -315,8 +319,7 @@ static int __init ls_pcie_probe(struct p
        if (!ls_pcie_is_bridge(pcie))
                return -ENODEV;
  
@@ -98,6 +94,3 @@ index 00feabf..3e2100d 100644
        of_device_is_compatible(pdev->dev.of_node, "fsl,ls1088a-pcie")) {
                int len;
                const u32 *prop;
--- 
-1.7.9.5
-