diff options
| -rw-r--r-- | drivers/net/ethernet/freescale/enetc/enetc.h | 3 | ||||
| -rw-r--r-- | drivers/net/ethernet/freescale/enetc/enetc_ethtool.c | 26 | ||||
| -rw-r--r-- | drivers/net/ethernet/freescale/enetc/enetc_ptp.c | 5 |
3 files changed, 10 insertions, 24 deletions
diff --git a/drivers/net/ethernet/freescale/enetc/enetc.h b/drivers/net/ethernet/freescale/enetc/enetc.h index 815afdc2ec23..0ec010a7d640 100644 --- a/drivers/net/ethernet/freescale/enetc/enetc.h +++ b/drivers/net/ethernet/freescale/enetc/enetc.h @@ -493,9 +493,6 @@ struct enetc_msg_cmd_set_primary_mac { #define ENETC_CBDR_TIMEOUT 1000 /* usecs */ -/* PTP driver exports */ -extern int enetc_phc_index; - /* SI common */ u32 enetc_port_mac_rd(struct enetc_si *si, u32 reg); void enetc_port_mac_wr(struct enetc_si *si, u32 reg, u32 val); diff --git a/drivers/net/ethernet/freescale/enetc/enetc_ethtool.c b/drivers/net/ethernet/freescale/enetc/enetc_ethtool.c index 445bfd032e0f..71d052de669a 100644 --- a/drivers/net/ethernet/freescale/enetc/enetc_ethtool.c +++ b/drivers/net/ethernet/freescale/enetc/enetc_ethtool.c @@ -880,7 +880,7 @@ static int enetc_set_coalesce(struct net_device *ndev, return 0; } -static int enetc4_get_phc_index_by_pdev(struct enetc_si *si) +static int enetc_get_phc_index_by_pdev(struct enetc_si *si) { struct pci_bus *bus = si->pdev->bus; struct pci_dev *timer_pdev; @@ -888,6 +888,9 @@ static int enetc4_get_phc_index_by_pdev(struct enetc_si *si) int phc_index; switch (si->revision) { + case ENETC_REV_1_0: + devfn = PCI_DEVFN(0, 4); + break; case ENETC_REV_4_1: devfn = PCI_DEVFN(24, 0); break; @@ -906,18 +909,18 @@ static int enetc4_get_phc_index_by_pdev(struct enetc_si *si) return phc_index; } -static int enetc4_get_phc_index(struct enetc_si *si) +static int enetc_get_phc_index(struct enetc_si *si) { struct device_node *np = si->pdev->dev.of_node; struct device_node *timer_np; int phc_index; if (!np) - return enetc4_get_phc_index_by_pdev(si); + return enetc_get_phc_index_by_pdev(si); timer_np = of_parse_phandle(np, "ptp-timer", 0); if (!timer_np) - return enetc4_get_phc_index_by_pdev(si); + return enetc_get_phc_index_by_pdev(si); phc_index = ptp_clock_index_by_of_node(timer_np); of_node_put(timer_np); @@ -950,22 +953,13 @@ static int enetc_get_ts_info(struct net_device *ndev, { struct enetc_ndev_priv *priv = netdev_priv(ndev); struct enetc_si *si = priv->si; - int *phc_idx; if (!enetc_ptp_clock_is_enabled(si)) goto timestamp_tx_sw; - if (is_enetc_rev1(si)) { - phc_idx = symbol_get(enetc_phc_index); - if (phc_idx) { - info->phc_index = *phc_idx; - symbol_put(enetc_phc_index); - } - } else { - info->phc_index = enetc4_get_phc_index(si); - if (info->phc_index < 0) - goto timestamp_tx_sw; - } + info->phc_index = enetc_get_phc_index(si); + if (info->phc_index < 0) + goto timestamp_tx_sw; enetc_get_ts_generic_info(ndev, info); diff --git a/drivers/net/ethernet/freescale/enetc/enetc_ptp.c b/drivers/net/ethernet/freescale/enetc/enetc_ptp.c index 5243fc031058..b8413d3b4f16 100644 --- a/drivers/net/ethernet/freescale/enetc/enetc_ptp.c +++ b/drivers/net/ethernet/freescale/enetc/enetc_ptp.c @@ -7,9 +7,6 @@ #include "enetc.h" -int enetc_phc_index = -1; -EXPORT_SYMBOL_GPL(enetc_phc_index); - static struct ptp_clock_info enetc_ptp_caps = { .owner = THIS_MODULE, .name = "ENETC PTP clock", @@ -92,7 +89,6 @@ static int enetc_ptp_probe(struct pci_dev *pdev, if (err) goto err_no_clock; - enetc_phc_index = ptp_qoriq->phc_index; pci_set_drvdata(pdev, ptp_qoriq); return 0; @@ -118,7 +114,6 @@ static void enetc_ptp_remove(struct pci_dev *pdev) { struct ptp_qoriq *ptp_qoriq = pci_get_drvdata(pdev); - enetc_phc_index = -1; ptp_qoriq_free(ptp_qoriq); pci_free_irq_vectors(pdev); kfree(ptp_qoriq); |
