kernel: bump 4.9 to 4.9.124
[openwrt/staging/chunkeey.git] / target / linux / sunxi / patches-4.9 / 0053-stmmac-form-4-13.patch
index 4ee62321d588a4d304a654a73b9b5f0981d8221a..abdc618e6bf73fa81e6782a5345b4381f5539462 100644 (file)
@@ -47,7 +47,7 @@
  struct mii_regs {
 --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-socfpga.c
 +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-socfpga.c
-@@ -269,7 +269,10 @@ static int socfpga_dwmac_set_phy_mode(st
+@@ -270,7 +270,10 @@ static int socfpga_dwmac_set_phy_mode(st
        ctrl &= ~(SYSMGR_EMACGRP_CTRL_PHYSEL_MASK << reg_shift);
        ctrl |= val << reg_shift;
  
        int phy_addr;
  };
  
--struct stmmac_pci_info {
++struct stmmac_pci_dmi_data {
++      const struct stmmac_pci_func_data *func;
++      size_t nfuncs;
++};
++
+ struct stmmac_pci_info {
 -      struct pci_dev *pdev;
 -      int (*setup)(struct plat_stmmacenet_data *plat,
 -                   struct stmmac_pci_info *info);
 -      struct stmmac_pci_dmi_data *dmi;
-+struct stmmac_pci_dmi_data {
-+      const struct stmmac_pci_func_data *func;
-+      size_t nfuncs;
++      int (*setup)(struct pci_dev *pdev, struct plat_stmmacenet_data *plat);
  };
  
 -static int stmmac_pci_find_phy_addr(struct stmmac_pci_info *info)
--{
++static int stmmac_pci_find_phy_addr(struct pci_dev *pdev,
++                                  const struct dmi_system_id *dmi_list)
+ {
 -      const char *name = dmi_get_system_info(DMI_BOARD_NAME);
 -      const char *asset_tag = dmi_get_system_info(DMI_BOARD_ASSET_TAG);
 -      unsigned int func = PCI_FUNC(info->pdev->devfn);
 -       */
 -      if (!name)
 -              return 1;
-+struct stmmac_pci_info {
-+      int (*setup)(struct pci_dev *pdev, struct plat_stmmacenet_data *plat);
-+};
+-
 -      for (dmi = info->dmi; dmi->name && *dmi->name; dmi++) {
 -              if (!strcmp(dmi->name, name) && dmi->func == func) {
 -                      /* If asset tag is provided, match on it as well. */
 -                      return dmi->phy_addr;
 -              }
 -      }
-+static int stmmac_pci_find_phy_addr(struct pci_dev *pdev,
-+                                  const struct dmi_system_id *dmi_list)
-+{
 +      const struct stmmac_pci_func_data *func_data;
 +      const struct stmmac_pci_dmi_data *dmi_data;
 +      const struct dmi_system_id *dmi_id;
  
        pci_enable_msi(pdev);
  
-@@ -270,14 +304,21 @@ static void stmmac_pci_remove(struct pci
+@@ -306,14 +340,21 @@ static int stmmac_pci_resume(struct devi
  
- static SIMPLE_DEV_PM_OPS(stmmac_pm_ops, stmmac_suspend, stmmac_resume);
+ static SIMPLE_DEV_PM_OPS(stmmac_pm_ops, stmmac_pci_suspend, stmmac_pci_resume);
  
 -#define STMMAC_VENDOR_ID 0x700
 +/* synthetic ID, no official vendor */