summaryrefslogtreecommitdiff
path: root/target/linux/sunxi/patches-4.9/0053-stmmac-form-4-13.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/sunxi/patches-4.9/0053-stmmac-form-4-13.patch')
-rw-r--r--target/linux/sunxi/patches-4.9/0053-stmmac-form-4-13.patch27
1 files changed, 13 insertions, 14 deletions
diff --git a/target/linux/sunxi/patches-4.9/0053-stmmac-form-4-13.patch b/target/linux/sunxi/patches-4.9/0053-stmmac-form-4-13.patch
index 4ee6232..d71821a 100644
--- a/target/linux/sunxi/patches-4.9/0053-stmmac-form-4-13.patch
+++ b/target/linux/sunxi/patches-4.9/0053-stmmac-form-4-13.patch
@@ -1619,18 +1619,23 @@
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);
@@ -1642,10 +1647,7 @@
- */
- 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. */
@@ -1654,9 +1656,6 @@
- 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;
@@ -1852,9 +1851,9 @@
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 */