gbe_dev           765 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv		*gbe_dev;
gbe_dev          1775 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev;
gbe_dev          1781 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev = gbe_intf->gbe_dev;
gbe_dev          1785 drivers/net/ethernet/ti/netcp_ethss.c 		for (i = 0; i < gbe_dev->num_et_stats; i++) {
gbe_dev          1786 drivers/net/ethernet/ti/netcp_ethss.c 			memcpy(data, gbe_dev->et_stats[i].desc,
gbe_dev          1800 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev;
gbe_dev          1805 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev = gbe_intf->gbe_dev;
gbe_dev          1811 drivers/net/ethernet/ti/netcp_ethss.c 		return gbe_dev->num_et_stats;
gbe_dev          1817 drivers/net/ethernet/ti/netcp_ethss.c static void gbe_reset_mod_stats(struct gbe_priv *gbe_dev, int stats_mod)
gbe_dev          1819 drivers/net/ethernet/ti/netcp_ethss.c 	void __iomem *base = gbe_dev->hw_stats_regs[stats_mod];
gbe_dev          1823 drivers/net/ethernet/ti/netcp_ethss.c 	for (i = 0; i < gbe_dev->num_et_stats; i++) {
gbe_dev          1824 drivers/net/ethernet/ti/netcp_ethss.c 		if (gbe_dev->et_stats[i].type == stats_mod) {
gbe_dev          1825 drivers/net/ethernet/ti/netcp_ethss.c 			p_stats_entry = base + gbe_dev->et_stats[i].offset;
gbe_dev          1826 drivers/net/ethernet/ti/netcp_ethss.c 			gbe_dev->hw_stats[i] = 0;
gbe_dev          1827 drivers/net/ethernet/ti/netcp_ethss.c 			gbe_dev->hw_stats_prev[i] = readl(p_stats_entry);
gbe_dev          1832 drivers/net/ethernet/ti/netcp_ethss.c static inline void gbe_update_hw_stats_entry(struct gbe_priv *gbe_dev,
gbe_dev          1842 drivers/net/ethernet/ti/netcp_ethss.c 	base = gbe_dev->hw_stats_regs[gbe_dev->et_stats[et_stats_entry].type];
gbe_dev          1843 drivers/net/ethernet/ti/netcp_ethss.c 	p_stats_entry = base + gbe_dev->et_stats[et_stats_entry].offset;
gbe_dev          1845 drivers/net/ethernet/ti/netcp_ethss.c 	delta = curr - gbe_dev->hw_stats_prev[et_stats_entry];
gbe_dev          1846 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->hw_stats_prev[et_stats_entry] = curr;
gbe_dev          1847 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->hw_stats[et_stats_entry] += delta;
gbe_dev          1850 drivers/net/ethernet/ti/netcp_ethss.c static void gbe_update_stats(struct gbe_priv *gbe_dev, uint64_t *data)
gbe_dev          1854 drivers/net/ethernet/ti/netcp_ethss.c 	for (i = 0; i < gbe_dev->num_et_stats; i++) {
gbe_dev          1855 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_update_hw_stats_entry(gbe_dev, i);
gbe_dev          1858 drivers/net/ethernet/ti/netcp_ethss.c 			data[i] = gbe_dev->hw_stats[i];
gbe_dev          1862 drivers/net/ethernet/ti/netcp_ethss.c static inline void gbe_stats_mod_visible_ver14(struct gbe_priv *gbe_dev,
gbe_dev          1867 drivers/net/ethernet/ti/netcp_ethss.c 	val = readl(GBE_REG_ADDR(gbe_dev, switch_regs, stat_port_en));
gbe_dev          1883 drivers/net/ethernet/ti/netcp_ethss.c 	writel(val, GBE_REG_ADDR(gbe_dev, switch_regs, stat_port_en));
gbe_dev          1886 drivers/net/ethernet/ti/netcp_ethss.c static void gbe_reset_mod_stats_ver14(struct gbe_priv *gbe_dev, int stats_mod)
gbe_dev          1888 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_stats_mod_visible_ver14(gbe_dev, stats_mod);
gbe_dev          1889 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_reset_mod_stats(gbe_dev, stats_mod);
gbe_dev          1892 drivers/net/ethernet/ti/netcp_ethss.c static void gbe_update_stats_ver14(struct gbe_priv *gbe_dev, uint64_t *data)
gbe_dev          1894 drivers/net/ethernet/ti/netcp_ethss.c 	u32 half_num_et_stats = (gbe_dev->num_et_stats / 2);
gbe_dev          1898 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_stats_mod_visible_ver14(gbe_dev, (pair ?
gbe_dev          1904 drivers/net/ethernet/ti/netcp_ethss.c 			gbe_update_hw_stats_entry(gbe_dev, et_entry);
gbe_dev          1907 drivers/net/ethernet/ti/netcp_ethss.c 				data[et_entry] = gbe_dev->hw_stats[et_entry];
gbe_dev          1918 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev;
gbe_dev          1924 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev = gbe_intf->gbe_dev;
gbe_dev          1925 drivers/net/ethernet/ti/netcp_ethss.c 	spin_lock_bh(&gbe_dev->hw_stats_lock);
gbe_dev          1926 drivers/net/ethernet/ti/netcp_ethss.c 	if (IS_SS_ID_VER_14(gbe_dev))
gbe_dev          1927 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_update_stats_ver14(gbe_dev, data);
gbe_dev          1929 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_update_stats(gbe_dev, data);
gbe_dev          1930 drivers/net/ethernet/ti/netcp_ethss.c 	spin_unlock_bh(&gbe_dev->hw_stats_lock);
gbe_dev          2011 drivers/net/ethernet/ti/netcp_ethss.c 	if (!gbe_intf || !gbe_intf->gbe_dev->cpts)
gbe_dev          2021 drivers/net/ethernet/ti/netcp_ethss.c 	info->phc_index = gbe_intf->gbe_dev->cpts->phc_index;
gbe_dev          2076 drivers/net/ethernet/ti/netcp_ethss.c static void netcp_ethss_link_state_action(struct gbe_priv *gbe_dev,
gbe_dev          2097 drivers/net/ethernet/ti/netcp_ethss.c 		cpsw_ale_control_set(gbe_dev->ale, slave->port_num,
gbe_dev          2109 drivers/net/ethernet/ti/netcp_ethss.c 		cpsw_ale_control_set(gbe_dev->ale, slave->port_num,
gbe_dev          2130 drivers/net/ethernet/ti/netcp_ethss.c static void netcp_2u_rgmii_get_port_link(struct gbe_priv *gbe_dev, bool *status)
gbe_dev          2134 drivers/net/ethernet/ti/netcp_ethss.c 	val = readl(GBE_REG_ADDR(gbe_dev, ss_regs, rgmii_status));
gbe_dev          2138 drivers/net/ethernet/ti/netcp_ethss.c static void netcp_ethss_update_link_state(struct gbe_priv *gbe_dev,
gbe_dev          2149 drivers/net/ethernet/ti/netcp_ethss.c 		netcp_2u_rgmii_get_port_link(gbe_dev,
gbe_dev          2153 drivers/net/ethernet/ti/netcp_ethss.c 		netcp_sgmii_get_port_link(SGMII_BASE(gbe_dev, sp), sp);
gbe_dev          2159 drivers/net/ethernet/ti/netcp_ethss.c 		netcp_ethss_link_state_action(gbe_dev, ndev, slave,
gbe_dev          2172 drivers/net/ethernet/ti/netcp_ethss.c 	netcp_ethss_update_link_state(gbe_intf->gbe_dev, gbe_intf->slave,
gbe_dev          2185 drivers/net/ethernet/ti/netcp_ethss.c 	netcp_ethss_update_link_state(gbe_intf->gbe_dev, gbe_intf->slave,
gbe_dev          2191 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = netdev_priv(ndev);
gbe_dev          2194 drivers/net/ethernet/ti/netcp_ethss.c 	for_each_sec_slave(slave, gbe_dev)
gbe_dev          2195 drivers/net/ethernet/ti/netcp_ethss.c 		netcp_ethss_update_link_state(gbe_dev, slave, NULL);
gbe_dev          2220 drivers/net/ethernet/ti/netcp_ethss.c static void gbe_port_config(struct gbe_priv *gbe_dev, struct gbe_slave *slave,
gbe_dev          2230 drivers/net/ethernet/ti/netcp_ethss.c 	if (IS_SS_ID_XGBE(gbe_dev) &&
gbe_dev          2232 drivers/net/ethernet/ti/netcp_ethss.c 		xgmii_mode = readl(GBE_REG_ADDR(gbe_dev, ss_regs, control));
gbe_dev          2234 drivers/net/ethernet/ti/netcp_ethss.c 		writel(xgmii_mode, GBE_REG_ADDR(gbe_dev, ss_regs, control));
gbe_dev          2237 drivers/net/ethernet/ti/netcp_ethss.c 	if (IS_SS_ID_MU(gbe_dev))
gbe_dev          2258 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = intf->gbe_dev;
gbe_dev          2261 drivers/net/ethernet/ti/netcp_ethss.c 	if (!IS_SS_ID_2U(gbe_dev))
gbe_dev          2262 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_sgmii_rtreset(gbe_dev, slave, true);
gbe_dev          2265 drivers/net/ethernet/ti/netcp_ethss.c 	cpsw_ale_control_set(gbe_dev->ale, slave->port_num,
gbe_dev          2267 drivers/net/ethernet/ti/netcp_ethss.c 	cpsw_ale_del_mcast(gbe_dev->ale, intf->ndev->broadcast,
gbe_dev          2290 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *priv = gbe_intf->gbe_dev;
gbe_dev          2406 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = gbe_intf->gbe_dev;
gbe_dev          2409 drivers/net/ethernet/ti/netcp_ethss.c 	cpsw_ale_add_mcast(gbe_dev->ale, addr,
gbe_dev          2410 drivers/net/ethernet/ti/netcp_ethss.c 			   GBE_PORT_MASK(gbe_dev->ale_ports), 0, 0,
gbe_dev          2413 drivers/net/ethernet/ti/netcp_ethss.c 		cpsw_ale_add_mcast(gbe_dev->ale, addr,
gbe_dev          2414 drivers/net/ethernet/ti/netcp_ethss.c 				   GBE_PORT_MASK(gbe_dev->ale_ports),
gbe_dev          2421 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = gbe_intf->gbe_dev;
gbe_dev          2424 drivers/net/ethernet/ti/netcp_ethss.c 	cpsw_ale_add_ucast(gbe_dev->ale, addr, gbe_dev->host_port, 0, 0);
gbe_dev          2427 drivers/net/ethernet/ti/netcp_ethss.c 		cpsw_ale_add_ucast(gbe_dev->ale, addr, gbe_dev->host_port,
gbe_dev          2433 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = gbe_intf->gbe_dev;
gbe_dev          2436 drivers/net/ethernet/ti/netcp_ethss.c 	cpsw_ale_del_mcast(gbe_dev->ale, addr, 0, 0, 0);
gbe_dev          2439 drivers/net/ethernet/ti/netcp_ethss.c 		cpsw_ale_del_mcast(gbe_dev->ale, addr, 0, ALE_VLAN, vlan_id);
gbe_dev          2445 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = gbe_intf->gbe_dev;
gbe_dev          2448 drivers/net/ethernet/ti/netcp_ethss.c 	cpsw_ale_del_ucast(gbe_dev->ale, addr, gbe_dev->host_port, 0, 0);
gbe_dev          2451 drivers/net/ethernet/ti/netcp_ethss.c 		cpsw_ale_del_ucast(gbe_dev->ale, addr, gbe_dev->host_port,
gbe_dev          2459 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = gbe_intf->gbe_dev;
gbe_dev          2461 drivers/net/ethernet/ti/netcp_ethss.c 	dev_dbg(gbe_dev->dev, "ethss adding address %pM, type %d\n",
gbe_dev          2485 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = gbe_intf->gbe_dev;
gbe_dev          2487 drivers/net/ethernet/ti/netcp_ethss.c 	dev_dbg(gbe_dev->dev, "ethss deleting address %pM, type %d\n",
gbe_dev          2511 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = gbe_intf->gbe_dev;
gbe_dev          2515 drivers/net/ethernet/ti/netcp_ethss.c 	cpsw_ale_add_vlan(gbe_dev->ale, vid,
gbe_dev          2516 drivers/net/ethernet/ti/netcp_ethss.c 			  GBE_PORT_MASK(gbe_dev->ale_ports),
gbe_dev          2518 drivers/net/ethernet/ti/netcp_ethss.c 			  GBE_PORT_MASK(gbe_dev->ale_ports),
gbe_dev          2519 drivers/net/ethernet/ti/netcp_ethss.c 			  GBE_PORT_MASK(gbe_dev->ale_ports - 1));
gbe_dev          2527 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = gbe_intf->gbe_dev;
gbe_dev          2529 drivers/net/ethernet/ti/netcp_ethss.c 	cpsw_ale_del_vlan(gbe_dev->ale, vid, 0);
gbe_dev          2541 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = gbe_intf->gbe_dev;
gbe_dev          2543 drivers/net/ethernet/ti/netcp_ethss.c 	cpts_tx_timestamp(gbe_dev->cpts, skb);
gbe_dev          2551 drivers/net/ethernet/ti/netcp_ethss.c 	return cpts_can_timestamp(gbe_intf->gbe_dev->cpts, skb);
gbe_dev          2558 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = gbe_intf->gbe_dev;
gbe_dev          2561 drivers/net/ethernet/ti/netcp_ethss.c 	    !gbe_dev->tx_ts_enabled)
gbe_dev          2585 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = gbe_intf->gbe_dev;
gbe_dev          2595 drivers/net/ethernet/ti/netcp_ethss.c 	if (gbe_dev->rx_ts_enabled)
gbe_dev          2596 drivers/net/ethernet/ti/netcp_ethss.c 		cpts_rx_timestamp(gbe_dev->cpts, p_info->skb);
gbe_dev          2605 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = gbe_intf->gbe_dev;
gbe_dev          2606 drivers/net/ethernet/ti/netcp_ethss.c 	struct cpts *cpts = gbe_dev->cpts;
gbe_dev          2613 drivers/net/ethernet/ti/netcp_ethss.c 	cfg.tx_type = gbe_dev->tx_ts_enabled ? HWTSTAMP_TX_ON : HWTSTAMP_TX_OFF;
gbe_dev          2614 drivers/net/ethernet/ti/netcp_ethss.c 	cfg.rx_filter = gbe_dev->rx_ts_enabled;
gbe_dev          2621 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = gbe_intf->gbe_dev;
gbe_dev          2625 drivers/net/ethernet/ti/netcp_ethss.c 	if (!gbe_dev->rx_ts_enabled &&
gbe_dev          2626 drivers/net/ethernet/ti/netcp_ethss.c 	    !gbe_dev->tx_ts_enabled) {
gbe_dev          2638 drivers/net/ethernet/ti/netcp_ethss.c 	if (gbe_dev->tx_ts_enabled)
gbe_dev          2641 drivers/net/ethernet/ti/netcp_ethss.c 	if (gbe_dev->rx_ts_enabled)
gbe_dev          2651 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = gbe_intf->gbe_dev;
gbe_dev          2652 drivers/net/ethernet/ti/netcp_ethss.c 	struct cpts *cpts = gbe_dev->cpts;
gbe_dev          2667 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_dev->tx_ts_enabled = 0;
gbe_dev          2670 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_dev->tx_ts_enabled = 1;
gbe_dev          2678 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_dev->rx_ts_enabled = HWTSTAMP_FILTER_NONE;
gbe_dev          2683 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_dev->rx_ts_enabled = HWTSTAMP_FILTER_PTP_V1_L4_EVENT;
gbe_dev          2695 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_dev->rx_ts_enabled = HWTSTAMP_FILTER_PTP_V2_EVENT;
gbe_dev          2707 drivers/net/ethernet/ti/netcp_ethss.c static void gbe_register_cpts(struct gbe_priv *gbe_dev)
gbe_dev          2709 drivers/net/ethernet/ti/netcp_ethss.c 	if (!gbe_dev->cpts)
gbe_dev          2712 drivers/net/ethernet/ti/netcp_ethss.c 	if (gbe_dev->cpts_registered > 0)
gbe_dev          2715 drivers/net/ethernet/ti/netcp_ethss.c 	if (cpts_register(gbe_dev->cpts)) {
gbe_dev          2716 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev, "error registering cpts device\n");
gbe_dev          2721 drivers/net/ethernet/ti/netcp_ethss.c 	++gbe_dev->cpts_registered;
gbe_dev          2724 drivers/net/ethernet/ti/netcp_ethss.c static void gbe_unregister_cpts(struct gbe_priv *gbe_dev)
gbe_dev          2726 drivers/net/ethernet/ti/netcp_ethss.c 	if (!gbe_dev->cpts || (gbe_dev->cpts_registered <= 0))
gbe_dev          2729 drivers/net/ethernet/ti/netcp_ethss.c 	if (--gbe_dev->cpts_registered)
gbe_dev          2732 drivers/net/ethernet/ti/netcp_ethss.c 	cpts_unregister(gbe_dev->cpts);
gbe_dev          2753 drivers/net/ethernet/ti/netcp_ethss.c static inline void gbe_register_cpts(struct gbe_priv *gbe_dev)
gbe_dev          2757 drivers/net/ethernet/ti/netcp_ethss.c static inline void gbe_unregister_cpts(struct gbe_priv *gbe_dev)
gbe_dev          2775 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = gbe_intf->gbe_dev;
gbe_dev          2776 drivers/net/ethernet/ti/netcp_ethss.c 	struct cpsw_ale *ale = gbe_dev->ale;
gbe_dev          2783 drivers/net/ethernet/ti/netcp_ethss.c 	for (i = 0; i <= gbe_dev->num_slaves; i++) {
gbe_dev          2793 drivers/net/ethernet/ti/netcp_ethss.c 		dev_vdbg(gbe_dev->dev, "promiscuous mode disabled\n");
gbe_dev          2818 drivers/net/ethernet/ti/netcp_ethss.c 				 GBE_PORT_MASK(gbe_dev->ale_ports),
gbe_dev          2823 drivers/net/ethernet/ti/netcp_ethss.c 	dev_vdbg(gbe_dev->dev, "promiscuous mode enabled\n");
gbe_dev          2849 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = from_timer(gbe_dev, t, timer);
gbe_dev          2854 drivers/net/ethernet/ti/netcp_ethss.c 	for_each_intf(gbe_intf, gbe_dev) {
gbe_dev          2857 drivers/net/ethernet/ti/netcp_ethss.c 		netcp_ethss_update_link_state(gbe_dev, gbe_intf->slave,
gbe_dev          2862 drivers/net/ethernet/ti/netcp_ethss.c 	for_each_sec_slave(slave, gbe_dev) {
gbe_dev          2863 drivers/net/ethernet/ti/netcp_ethss.c 		netcp_ethss_update_link_state(gbe_dev, slave, NULL);
gbe_dev          2867 drivers/net/ethernet/ti/netcp_ethss.c 	spin_lock(&gbe_dev->hw_stats_lock);
gbe_dev          2869 drivers/net/ethernet/ti/netcp_ethss.c 	if (IS_SS_ID_VER_14(gbe_dev))
gbe_dev          2870 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_update_stats_ver14(gbe_dev, NULL);
gbe_dev          2872 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_update_stats(gbe_dev, NULL);
gbe_dev          2874 drivers/net/ethernet/ti/netcp_ethss.c 	spin_unlock(&gbe_dev->hw_stats_lock);
gbe_dev          2876 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->timer.expires	= jiffies + GBE_TIMER_INTERVAL;
gbe_dev          2877 drivers/net/ethernet/ti/netcp_ethss.c 	add_timer(&gbe_dev->timer);
gbe_dev          2899 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = gbe_intf->gbe_dev;
gbe_dev          2906 drivers/net/ethernet/ti/netcp_ethss.c 	reg = readl(GBE_REG_ADDR(gbe_dev, switch_regs, id_ver));
gbe_dev          2907 drivers/net/ethernet/ti/netcp_ethss.c 	dev_dbg(gbe_dev->dev, "initializing gbe version %d.%d (%d) GBE identification value 0x%x\n",
gbe_dev          2912 drivers/net/ethernet/ti/netcp_ethss.c 	if (IS_SS_ID_XGBE(gbe_dev) || IS_SS_ID_MU(gbe_dev))
gbe_dev          2915 drivers/net/ethernet/ti/netcp_ethss.c 	if (gbe_dev->enable_ale)
gbe_dev          2920 drivers/net/ethernet/ti/netcp_ethss.c 	dev_dbg(gbe_dev->dev,
gbe_dev          2930 drivers/net/ethernet/ti/netcp_ethss.c 	writel(0, GBE_REG_ADDR(gbe_dev, switch_regs, ptype));
gbe_dev          2934 drivers/net/ethernet/ti/netcp_ethss.c 	if (IS_SS_ID_MU(gbe_dev)) {
gbe_dev          2938 drivers/net/ethernet/ti/netcp_ethss.c 	writel(val, GBE_REG_ADDR(gbe_dev, switch_regs, control));
gbe_dev          2941 drivers/net/ethernet/ti/netcp_ethss.c 	writel(gbe_dev->stats_en_mask, GBE_REG_ADDR(gbe_dev, switch_regs,
gbe_dev          2952 drivers/net/ethernet/ti/netcp_ethss.c 	netcp_ethss_update_link_state(gbe_dev, slave, ndev);
gbe_dev          2954 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_register_cpts(gbe_dev);
gbe_dev          2967 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = gbe_intf->gbe_dev;
gbe_dev          2969 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_unregister_cpts(gbe_dev);
gbe_dev          2997 drivers/net/ethernet/ti/netcp_ethss.c static int init_slave(struct gbe_priv *gbe_dev, struct gbe_slave *slave,
gbe_dev          3005 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev, "missing slave-port parameter\n");
gbe_dev          3011 drivers/net/ethernet/ti/netcp_ethss.c 		dev_warn(gbe_dev->dev,
gbe_dev          3022 drivers/net/ethernet/ti/netcp_ethss.c 	slave->port_num = gbe_get_slave_port(gbe_dev, slave->slave_num);
gbe_dev          3031 drivers/net/ethernet/ti/netcp_ethss.c 	if (IS_SS_ID_VER_14(gbe_dev)) {
gbe_dev          3041 drivers/net/ethernet/ti/netcp_ethss.c 	} else if (IS_SS_ID_MU(gbe_dev)) {
gbe_dev          3046 drivers/net/ethernet/ti/netcp_ethss.c 	} else if (IS_SS_ID_XGBE(gbe_dev)) {
gbe_dev          3052 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev, "unknown ethss(0x%x)\n",
gbe_dev          3053 drivers/net/ethernet/ti/netcp_ethss.c 			gbe_dev->ss_version);
gbe_dev          3057 drivers/net/ethernet/ti/netcp_ethss.c 	slave->port_regs = gbe_dev->switch_regs + port_reg_ofs +
gbe_dev          3059 drivers/net/ethernet/ti/netcp_ethss.c 	slave->emac_regs = gbe_dev->switch_regs + emac_reg_ofs +
gbe_dev          3062 drivers/net/ethernet/ti/netcp_ethss.c 	if (IS_SS_ID_VER_14(gbe_dev)) {
gbe_dev          3079 drivers/net/ethernet/ti/netcp_ethss.c 	} else if (IS_SS_ID_MU(gbe_dev)) {
gbe_dev          3097 drivers/net/ethernet/ti/netcp_ethss.c 	} else if (IS_SS_ID_XGBE(gbe_dev)) {
gbe_dev          3121 drivers/net/ethernet/ti/netcp_ethss.c static void init_secondary_ports(struct gbe_priv *gbe_dev,
gbe_dev          3124 drivers/net/ethernet/ti/netcp_ethss.c 	struct device *dev = gbe_dev->dev;
gbe_dev          3139 drivers/net/ethernet/ti/netcp_ethss.c 		if (init_slave(gbe_dev, slave, port)) {
gbe_dev          3147 drivers/net/ethernet/ti/netcp_ethss.c 		if (!IS_SS_ID_2U(gbe_dev))
gbe_dev          3148 drivers/net/ethernet/ti/netcp_ethss.c 			gbe_sgmii_config(gbe_dev, slave);
gbe_dev          3150 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_port_config(gbe_dev, slave, gbe_dev->rx_packet_max);
gbe_dev          3151 drivers/net/ethernet/ti/netcp_ethss.c 		list_add_tail(&slave->slave_list, &gbe_dev->secondary_slaves);
gbe_dev          3152 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_dev->num_slaves++;
gbe_dev          3158 drivers/net/ethernet/ti/netcp_ethss.c 		if (gbe_dev->num_slaves >= gbe_dev->max_num_slaves) {
gbe_dev          3169 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->dummy_ndev = alloc_netdev(sizeof(gbe_dev), "dummy",
gbe_dev          3171 drivers/net/ethernet/ti/netcp_ethss.c 	if (!gbe_dev->dummy_ndev) {
gbe_dev          3176 drivers/net/ethernet/ti/netcp_ethss.c 	priv = netdev_priv(gbe_dev->dummy_ndev);
gbe_dev          3177 drivers/net/ethernet/ti/netcp_ethss.c 	*priv = gbe_dev;
gbe_dev          3190 drivers/net/ethernet/ti/netcp_ethss.c 	for_each_sec_slave(slave, gbe_dev) {
gbe_dev          3196 drivers/net/ethernet/ti/netcp_ethss.c 			of_phy_connect(gbe_dev->dummy_ndev,
gbe_dev          3211 drivers/net/ethernet/ti/netcp_ethss.c static void free_secondary_ports(struct gbe_priv *gbe_dev)
gbe_dev          3215 drivers/net/ethernet/ti/netcp_ethss.c 	while (!list_empty(&gbe_dev->secondary_slaves)) {
gbe_dev          3216 drivers/net/ethernet/ti/netcp_ethss.c 		slave = first_sec_slave(gbe_dev);
gbe_dev          3222 drivers/net/ethernet/ti/netcp_ethss.c 	if (gbe_dev->dummy_ndev)
gbe_dev          3223 drivers/net/ethernet/ti/netcp_ethss.c 		free_netdev(gbe_dev->dummy_ndev);
gbe_dev          3226 drivers/net/ethernet/ti/netcp_ethss.c static int set_xgbe_ethss10_priv(struct gbe_priv *gbe_dev,
gbe_dev          3235 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev,
gbe_dev          3241 drivers/net/ethernet/ti/netcp_ethss.c 	regs = devm_ioremap_resource(gbe_dev->dev, &res);
gbe_dev          3243 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev, "Failed to map xgbe ss register base\n");
gbe_dev          3246 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->ss_regs = regs;
gbe_dev          3250 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev,
gbe_dev          3256 drivers/net/ethernet/ti/netcp_ethss.c 	regs = devm_ioremap_resource(gbe_dev->dev, &res);
gbe_dev          3258 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev, "Failed to map xgbe sm register base\n");
gbe_dev          3261 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->switch_regs = regs;
gbe_dev          3265 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev,
gbe_dev          3271 drivers/net/ethernet/ti/netcp_ethss.c 	regs = devm_ioremap_resource(gbe_dev->dev, &res);
gbe_dev          3273 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev, "Failed to map xgbe serdes register base\n");
gbe_dev          3276 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->xgbe_serdes_regs = regs;
gbe_dev          3278 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->num_stats_mods = gbe_dev->max_num_ports;
gbe_dev          3279 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->et_stats = xgbe10_et_stats;
gbe_dev          3280 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->num_et_stats = ARRAY_SIZE(xgbe10_et_stats);
gbe_dev          3282 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->hw_stats = devm_kcalloc(gbe_dev->dev,
gbe_dev          3283 drivers/net/ethernet/ti/netcp_ethss.c 					 gbe_dev->num_et_stats, sizeof(u64),
gbe_dev          3285 drivers/net/ethernet/ti/netcp_ethss.c 	if (!gbe_dev->hw_stats) {
gbe_dev          3286 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev, "hw_stats memory allocation failed\n");
gbe_dev          3290 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->hw_stats_prev =
gbe_dev          3291 drivers/net/ethernet/ti/netcp_ethss.c 		devm_kcalloc(gbe_dev->dev,
gbe_dev          3292 drivers/net/ethernet/ti/netcp_ethss.c 			     gbe_dev->num_et_stats, sizeof(u32),
gbe_dev          3294 drivers/net/ethernet/ti/netcp_ethss.c 	if (!gbe_dev->hw_stats_prev) {
gbe_dev          3295 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev,
gbe_dev          3300 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->ss_version = XGBE_SS_VERSION_10;
gbe_dev          3301 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->sgmii_port_regs = gbe_dev->ss_regs +
gbe_dev          3303 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->host_port_regs = gbe_dev->ss_regs + XGBE10_HOST_PORT_OFFSET;
gbe_dev          3305 drivers/net/ethernet/ti/netcp_ethss.c 	for (i = 0; i < gbe_dev->max_num_ports; i++)
gbe_dev          3306 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_dev->hw_stats_regs[i] = gbe_dev->switch_regs +
gbe_dev          3309 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->ale_reg = gbe_dev->switch_regs + XGBE10_ALE_OFFSET;
gbe_dev          3310 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->cpts_reg = gbe_dev->switch_regs + XGBE10_CPTS_OFFSET;
gbe_dev          3311 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->ale_ports = gbe_dev->max_num_ports;
gbe_dev          3312 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->host_port = XGBE10_HOST_PORT_NUM;
gbe_dev          3313 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->ale_entries = XGBE10_NUM_ALE_ENTRIES;
gbe_dev          3314 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->stats_en_mask = (1 << (gbe_dev->max_num_ports)) - 1;
gbe_dev          3317 drivers/net/ethernet/ti/netcp_ethss.c 	XGBE_SET_REG_OFS(gbe_dev, ss_regs, id_ver);
gbe_dev          3318 drivers/net/ethernet/ti/netcp_ethss.c 	XGBE_SET_REG_OFS(gbe_dev, ss_regs, control);
gbe_dev          3321 drivers/net/ethernet/ti/netcp_ethss.c 	XGBE_SET_REG_OFS(gbe_dev, switch_regs, id_ver);
gbe_dev          3322 drivers/net/ethernet/ti/netcp_ethss.c 	XGBE_SET_REG_OFS(gbe_dev, switch_regs, control);
gbe_dev          3323 drivers/net/ethernet/ti/netcp_ethss.c 	XGBE_SET_REG_OFS(gbe_dev, switch_regs, ptype);
gbe_dev          3324 drivers/net/ethernet/ti/netcp_ethss.c 	XGBE_SET_REG_OFS(gbe_dev, switch_regs, stat_port_en);
gbe_dev          3325 drivers/net/ethernet/ti/netcp_ethss.c 	XGBE_SET_REG_OFS(gbe_dev, switch_regs, flow_control);
gbe_dev          3328 drivers/net/ethernet/ti/netcp_ethss.c 	XGBE_SET_REG_OFS(gbe_dev, host_port_regs, port_vlan);
gbe_dev          3329 drivers/net/ethernet/ti/netcp_ethss.c 	XGBE_SET_REG_OFS(gbe_dev, host_port_regs, tx_pri_map);
gbe_dev          3330 drivers/net/ethernet/ti/netcp_ethss.c 	XGBE_SET_REG_OFS(gbe_dev, host_port_regs, rx_maxlen);
gbe_dev          3334 drivers/net/ethernet/ti/netcp_ethss.c static int get_gbe_resource_version(struct gbe_priv *gbe_dev,
gbe_dev          3343 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev,
gbe_dev          3349 drivers/net/ethernet/ti/netcp_ethss.c 	regs = devm_ioremap_resource(gbe_dev->dev, &res);
gbe_dev          3351 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev, "Failed to map gbe register base\n");
gbe_dev          3354 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->ss_regs = regs;
gbe_dev          3355 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->ss_version = readl(gbe_dev->ss_regs);
gbe_dev          3359 drivers/net/ethernet/ti/netcp_ethss.c static int set_gbe_ethss14_priv(struct gbe_priv *gbe_dev,
gbe_dev          3368 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev,
gbe_dev          3374 drivers/net/ethernet/ti/netcp_ethss.c 	regs = devm_ioremap_resource(gbe_dev->dev, &res);
gbe_dev          3376 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev,
gbe_dev          3380 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->sgmii_port34_regs = regs;
gbe_dev          3384 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev,
gbe_dev          3390 drivers/net/ethernet/ti/netcp_ethss.c 	regs = devm_ioremap_resource(gbe_dev->dev, &res);
gbe_dev          3392 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev,
gbe_dev          3396 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->switch_regs = regs;
gbe_dev          3398 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->num_stats_mods = gbe_dev->max_num_slaves;
gbe_dev          3399 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->et_stats = gbe13_et_stats;
gbe_dev          3400 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->num_et_stats = ARRAY_SIZE(gbe13_et_stats);
gbe_dev          3402 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->hw_stats = devm_kcalloc(gbe_dev->dev,
gbe_dev          3403 drivers/net/ethernet/ti/netcp_ethss.c 					 gbe_dev->num_et_stats, sizeof(u64),
gbe_dev          3405 drivers/net/ethernet/ti/netcp_ethss.c 	if (!gbe_dev->hw_stats) {
gbe_dev          3406 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev, "hw_stats memory allocation failed\n");
gbe_dev          3410 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->hw_stats_prev =
gbe_dev          3411 drivers/net/ethernet/ti/netcp_ethss.c 		devm_kcalloc(gbe_dev->dev,
gbe_dev          3412 drivers/net/ethernet/ti/netcp_ethss.c 			     gbe_dev->num_et_stats, sizeof(u32),
gbe_dev          3414 drivers/net/ethernet/ti/netcp_ethss.c 	if (!gbe_dev->hw_stats_prev) {
gbe_dev          3415 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev,
gbe_dev          3420 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->sgmii_port_regs = gbe_dev->ss_regs + GBE13_SGMII_MODULE_OFFSET;
gbe_dev          3421 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->host_port_regs = gbe_dev->switch_regs + GBE13_HOST_PORT_OFFSET;
gbe_dev          3427 drivers/net/ethernet/ti/netcp_ethss.c 	for (i = 0; i < gbe_dev->max_num_slaves; i++) {
gbe_dev          3428 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_dev->hw_stats_regs[i] =
gbe_dev          3429 drivers/net/ethernet/ti/netcp_ethss.c 			gbe_dev->switch_regs + GBE13_HW_STATS_OFFSET +
gbe_dev          3433 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->cpts_reg = gbe_dev->switch_regs + GBE13_CPTS_OFFSET;
gbe_dev          3434 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->ale_reg = gbe_dev->switch_regs + GBE13_ALE_OFFSET;
gbe_dev          3435 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->ale_ports = gbe_dev->max_num_ports;
gbe_dev          3436 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->host_port = GBE13_HOST_PORT_NUM;
gbe_dev          3437 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->ale_entries = GBE13_NUM_ALE_ENTRIES;
gbe_dev          3438 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->stats_en_mask = GBE13_REG_VAL_STAT_ENABLE_ALL;
gbe_dev          3441 drivers/net/ethernet/ti/netcp_ethss.c 	GBE_SET_REG_OFS(gbe_dev, ss_regs, id_ver);
gbe_dev          3444 drivers/net/ethernet/ti/netcp_ethss.c 	GBE_SET_REG_OFS(gbe_dev, switch_regs, id_ver);
gbe_dev          3445 drivers/net/ethernet/ti/netcp_ethss.c 	GBE_SET_REG_OFS(gbe_dev, switch_regs, control);
gbe_dev          3446 drivers/net/ethernet/ti/netcp_ethss.c 	GBE_SET_REG_OFS(gbe_dev, switch_regs, soft_reset);
gbe_dev          3447 drivers/net/ethernet/ti/netcp_ethss.c 	GBE_SET_REG_OFS(gbe_dev, switch_regs, stat_port_en);
gbe_dev          3448 drivers/net/ethernet/ti/netcp_ethss.c 	GBE_SET_REG_OFS(gbe_dev, switch_regs, ptype);
gbe_dev          3449 drivers/net/ethernet/ti/netcp_ethss.c 	GBE_SET_REG_OFS(gbe_dev, switch_regs, flow_control);
gbe_dev          3452 drivers/net/ethernet/ti/netcp_ethss.c 	GBE_SET_REG_OFS(gbe_dev, host_port_regs, port_vlan);
gbe_dev          3453 drivers/net/ethernet/ti/netcp_ethss.c 	GBE_SET_REG_OFS(gbe_dev, host_port_regs, rx_maxlen);
gbe_dev          3457 drivers/net/ethernet/ti/netcp_ethss.c static int set_gbenu_ethss_priv(struct gbe_priv *gbe_dev,
gbe_dev          3464 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->num_stats_mods = gbe_dev->max_num_ports;
gbe_dev          3465 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->et_stats = gbenu_et_stats;
gbe_dev          3467 drivers/net/ethernet/ti/netcp_ethss.c 	if (IS_SS_ID_MU(gbe_dev))
gbe_dev          3468 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_dev->num_et_stats = GBENU_ET_STATS_HOST_SIZE +
gbe_dev          3469 drivers/net/ethernet/ti/netcp_ethss.c 			(gbe_dev->max_num_slaves * GBENU_ET_STATS_PORT_SIZE);
gbe_dev          3471 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_dev->num_et_stats = GBENU_ET_STATS_HOST_SIZE +
gbe_dev          3474 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->hw_stats = devm_kcalloc(gbe_dev->dev,
gbe_dev          3475 drivers/net/ethernet/ti/netcp_ethss.c 					 gbe_dev->num_et_stats, sizeof(u64),
gbe_dev          3477 drivers/net/ethernet/ti/netcp_ethss.c 	if (!gbe_dev->hw_stats) {
gbe_dev          3478 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev, "hw_stats memory allocation failed\n");
gbe_dev          3482 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->hw_stats_prev =
gbe_dev          3483 drivers/net/ethernet/ti/netcp_ethss.c 		devm_kcalloc(gbe_dev->dev,
gbe_dev          3484 drivers/net/ethernet/ti/netcp_ethss.c 			     gbe_dev->num_et_stats, sizeof(u32),
gbe_dev          3486 drivers/net/ethernet/ti/netcp_ethss.c 	if (!gbe_dev->hw_stats_prev) {
gbe_dev          3487 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev,
gbe_dev          3494 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev,
gbe_dev          3500 drivers/net/ethernet/ti/netcp_ethss.c 	regs = devm_ioremap_resource(gbe_dev->dev, &res);
gbe_dev          3502 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev,
gbe_dev          3506 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->switch_regs = regs;
gbe_dev          3508 drivers/net/ethernet/ti/netcp_ethss.c 	if (!IS_SS_ID_2U(gbe_dev))
gbe_dev          3509 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_dev->sgmii_port_regs =
gbe_dev          3510 drivers/net/ethernet/ti/netcp_ethss.c 		       gbe_dev->ss_regs + GBENU_SGMII_MODULE_OFFSET;
gbe_dev          3516 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->sgmii_port34_regs = gbe_dev->sgmii_port_regs +
gbe_dev          3519 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->host_port_regs = gbe_dev->switch_regs + GBENU_HOST_PORT_OFFSET;
gbe_dev          3521 drivers/net/ethernet/ti/netcp_ethss.c 	for (i = 0; i < (gbe_dev->max_num_ports); i++)
gbe_dev          3522 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_dev->hw_stats_regs[i] = gbe_dev->switch_regs +
gbe_dev          3525 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->cpts_reg = gbe_dev->switch_regs + GBENU_CPTS_OFFSET;
gbe_dev          3526 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->ale_reg = gbe_dev->switch_regs + GBENU_ALE_OFFSET;
gbe_dev          3527 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->ale_ports = gbe_dev->max_num_ports;
gbe_dev          3528 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->host_port = GBENU_HOST_PORT_NUM;
gbe_dev          3529 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->stats_en_mask = (1 << (gbe_dev->max_num_ports)) - 1;
gbe_dev          3532 drivers/net/ethernet/ti/netcp_ethss.c 	GBENU_SET_REG_OFS(gbe_dev, ss_regs, id_ver);
gbe_dev          3534 drivers/net/ethernet/ti/netcp_ethss.c 	GBENU_SET_REG_OFS(gbe_dev, ss_regs, rgmii_status);
gbe_dev          3537 drivers/net/ethernet/ti/netcp_ethss.c 	GBENU_SET_REG_OFS(gbe_dev, switch_regs, id_ver);
gbe_dev          3538 drivers/net/ethernet/ti/netcp_ethss.c 	GBENU_SET_REG_OFS(gbe_dev, switch_regs, control);
gbe_dev          3539 drivers/net/ethernet/ti/netcp_ethss.c 	GBENU_SET_REG_OFS(gbe_dev, switch_regs, stat_port_en);
gbe_dev          3540 drivers/net/ethernet/ti/netcp_ethss.c 	GBENU_SET_REG_OFS(gbe_dev, switch_regs, ptype);
gbe_dev          3543 drivers/net/ethernet/ti/netcp_ethss.c 	GBENU_SET_REG_OFS(gbe_dev, host_port_regs, port_vlan);
gbe_dev          3544 drivers/net/ethernet/ti/netcp_ethss.c 	GBENU_SET_REG_OFS(gbe_dev, host_port_regs, rx_maxlen);
gbe_dev          3550 drivers/net/ethernet/ti/netcp_ethss.c 	GBENU_SET_REG_OFS(gbe_dev, host_port_regs, tx_pri_map);
gbe_dev          3560 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev;
gbe_dev          3569 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev = devm_kzalloc(dev, sizeof(struct gbe_priv), GFP_KERNEL);
gbe_dev          3570 drivers/net/ethernet/ti/netcp_ethss.c 	if (!gbe_dev)
gbe_dev          3575 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_dev->max_num_slaves = 4;
gbe_dev          3577 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_dev->max_num_slaves = 8;
gbe_dev          3579 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_dev->max_num_slaves = 1;
gbe_dev          3582 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_dev->max_num_slaves = 2;
gbe_dev          3587 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->max_num_ports = gbe_dev->max_num_slaves + 1;
gbe_dev          3589 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->dev = dev;
gbe_dev          3590 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->netcp_device = netcp_device;
gbe_dev          3591 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->rx_packet_max = NETCP_MAX_FRAME_SIZE;
gbe_dev          3594 drivers/net/ethernet/ti/netcp_ethss.c 	spin_lock_init(&gbe_dev->hw_stats_lock);
gbe_dev          3597 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_dev->enable_ale = true;
gbe_dev          3600 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_dev->enable_ale = false;
gbe_dev          3605 drivers/net/ethernet/ti/netcp_ethss.c 				   &gbe_dev->tx_queue_id);
gbe_dev          3608 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_dev->tx_queue_id = GBE_TX_QUEUE;
gbe_dev          3612 drivers/net/ethernet/ti/netcp_ethss.c 				      &gbe_dev->dma_chan_name);
gbe_dev          3619 drivers/net/ethernet/ti/netcp_ethss.c 		ret = get_gbe_resource_version(gbe_dev, node);
gbe_dev          3623 drivers/net/ethernet/ti/netcp_ethss.c 		dev_dbg(dev, "ss_version: 0x%08x\n", gbe_dev->ss_version);
gbe_dev          3625 drivers/net/ethernet/ti/netcp_ethss.c 		if (IS_SS_ID_VER_14(gbe_dev))
gbe_dev          3626 drivers/net/ethernet/ti/netcp_ethss.c 			ret = set_gbe_ethss14_priv(gbe_dev, node);
gbe_dev          3627 drivers/net/ethernet/ti/netcp_ethss.c 		else if (IS_SS_ID_MU(gbe_dev))
gbe_dev          3628 drivers/net/ethernet/ti/netcp_ethss.c 			ret = set_gbenu_ethss_priv(gbe_dev, node);
gbe_dev          3633 drivers/net/ethernet/ti/netcp_ethss.c 		ret = set_xgbe_ethss10_priv(gbe_dev, node);
gbe_dev          3636 drivers/net/ethernet/ti/netcp_ethss.c 		ret = netcp_xgbe_serdes_init(gbe_dev->xgbe_serdes_regs,
gbe_dev          3637 drivers/net/ethernet/ti/netcp_ethss.c 					     gbe_dev->ss_regs);
gbe_dev          3650 drivers/net/ethernet/ti/netcp_ethss.c 	ret = netcp_txpipe_init(&gbe_dev->tx_pipe, netcp_device,
gbe_dev          3651 drivers/net/ethernet/ti/netcp_ethss.c 				gbe_dev->dma_chan_name, gbe_dev->tx_queue_id);
gbe_dev          3657 drivers/net/ethernet/ti/netcp_ethss.c 	ret = netcp_txpipe_open(&gbe_dev->tx_pipe);
gbe_dev          3664 drivers/net/ethernet/ti/netcp_ethss.c 	INIT_LIST_HEAD(&gbe_dev->gbe_intf_head);
gbe_dev          3672 drivers/net/ethernet/ti/netcp_ethss.c 		gbe_dev->num_slaves++;
gbe_dev          3673 drivers/net/ethernet/ti/netcp_ethss.c 		if (gbe_dev->num_slaves >= gbe_dev->max_num_slaves) {
gbe_dev          3680 drivers/net/ethernet/ti/netcp_ethss.c 	if (!gbe_dev->num_slaves)
gbe_dev          3685 drivers/net/ethernet/ti/netcp_ethss.c 	INIT_LIST_HEAD(&gbe_dev->secondary_slaves);
gbe_dev          3686 drivers/net/ethernet/ti/netcp_ethss.c 	if (secondary_ports && (gbe_dev->num_slaves <  gbe_dev->max_num_slaves))
gbe_dev          3687 drivers/net/ethernet/ti/netcp_ethss.c 		init_secondary_ports(gbe_dev, secondary_ports);
gbe_dev          3690 drivers/net/ethernet/ti/netcp_ethss.c 	if (!gbe_dev->num_slaves) {
gbe_dev          3698 drivers/net/ethernet/ti/netcp_ethss.c 	ale_params.dev		= gbe_dev->dev;
gbe_dev          3699 drivers/net/ethernet/ti/netcp_ethss.c 	ale_params.ale_regs	= gbe_dev->ale_reg;
gbe_dev          3701 drivers/net/ethernet/ti/netcp_ethss.c 	ale_params.ale_entries	= gbe_dev->ale_entries;
gbe_dev          3702 drivers/net/ethernet/ti/netcp_ethss.c 	ale_params.ale_ports	= gbe_dev->ale_ports;
gbe_dev          3703 drivers/net/ethernet/ti/netcp_ethss.c 	if (IS_SS_ID_MU(gbe_dev)) {
gbe_dev          3707 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->ale = cpsw_ale_create(&ale_params);
gbe_dev          3708 drivers/net/ethernet/ti/netcp_ethss.c 	if (!gbe_dev->ale) {
gbe_dev          3709 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev, "error initializing ale engine\n");
gbe_dev          3713 drivers/net/ethernet/ti/netcp_ethss.c 		dev_dbg(gbe_dev->dev, "Created a gbe ale engine\n");
gbe_dev          3720 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->cpts = cpts_create(gbe_dev->dev, gbe_dev->cpts_reg, cpts_node);
gbe_dev          3722 drivers/net/ethernet/ti/netcp_ethss.c 	if (IS_ENABLED(CONFIG_TI_CPTS) && IS_ERR(gbe_dev->cpts)) {
gbe_dev          3723 drivers/net/ethernet/ti/netcp_ethss.c 		ret = PTR_ERR(gbe_dev->cpts);
gbe_dev          3728 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_init_host_port(gbe_dev);
gbe_dev          3730 drivers/net/ethernet/ti/netcp_ethss.c 	spin_lock_bh(&gbe_dev->hw_stats_lock);
gbe_dev          3731 drivers/net/ethernet/ti/netcp_ethss.c 	for (i = 0; i < gbe_dev->num_stats_mods; i++) {
gbe_dev          3732 drivers/net/ethernet/ti/netcp_ethss.c 		if (IS_SS_ID_VER_14(gbe_dev))
gbe_dev          3733 drivers/net/ethernet/ti/netcp_ethss.c 			gbe_reset_mod_stats_ver14(gbe_dev, i);
gbe_dev          3735 drivers/net/ethernet/ti/netcp_ethss.c 			gbe_reset_mod_stats(gbe_dev, i);
gbe_dev          3737 drivers/net/ethernet/ti/netcp_ethss.c 	spin_unlock_bh(&gbe_dev->hw_stats_lock);
gbe_dev          3739 drivers/net/ethernet/ti/netcp_ethss.c 	timer_setup(&gbe_dev->timer, netcp_ethss_timer, 0);
gbe_dev          3740 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_dev->timer.expires	 = jiffies + GBE_TIMER_INTERVAL;
gbe_dev          3741 drivers/net/ethernet/ti/netcp_ethss.c 	add_timer(&gbe_dev->timer);
gbe_dev          3742 drivers/net/ethernet/ti/netcp_ethss.c 	*inst_priv = gbe_dev;
gbe_dev          3746 drivers/net/ethernet/ti/netcp_ethss.c 	free_secondary_ports(gbe_dev);
gbe_dev          3753 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = inst_priv;
gbe_dev          3758 drivers/net/ethernet/ti/netcp_ethss.c 		dev_err(gbe_dev->dev, "interface node not available\n");
gbe_dev          3762 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_intf = devm_kzalloc(gbe_dev->dev, sizeof(*gbe_intf), GFP_KERNEL);
gbe_dev          3767 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_intf->dev = gbe_dev->dev;
gbe_dev          3768 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_intf->gbe_dev = gbe_dev;
gbe_dev          3770 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_intf->slave = devm_kzalloc(gbe_dev->dev,
gbe_dev          3778 drivers/net/ethernet/ti/netcp_ethss.c 	if (init_slave(gbe_dev, gbe_intf->slave, node)) {
gbe_dev          3783 drivers/net/ethernet/ti/netcp_ethss.c 	gbe_intf->tx_pipe = gbe_dev->tx_pipe;
gbe_dev          3785 drivers/net/ethernet/ti/netcp_ethss.c 	list_add_tail(&gbe_intf->gbe_intf_list, &gbe_dev->gbe_intf_head);
gbe_dev          3791 drivers/net/ethernet/ti/netcp_ethss.c 		devm_kfree(gbe_dev->dev, gbe_intf->slave);
gbe_dev          3793 drivers/net/ethernet/ti/netcp_ethss.c 		devm_kfree(gbe_dev->dev, gbe_intf);
gbe_dev          3810 drivers/net/ethernet/ti/netcp_ethss.c 	struct gbe_priv *gbe_dev = inst_priv;
gbe_dev          3812 drivers/net/ethernet/ti/netcp_ethss.c 	del_timer_sync(&gbe_dev->timer);
gbe_dev          3813 drivers/net/ethernet/ti/netcp_ethss.c 	cpts_release(gbe_dev->cpts);
gbe_dev          3814 drivers/net/ethernet/ti/netcp_ethss.c 	cpsw_ale_stop(gbe_dev->ale);
gbe_dev          3815 drivers/net/ethernet/ti/netcp_ethss.c 	netcp_txpipe_close(&gbe_dev->tx_pipe);
gbe_dev          3816 drivers/net/ethernet/ti/netcp_ethss.c 	free_secondary_ports(gbe_dev);
gbe_dev          3818 drivers/net/ethernet/ti/netcp_ethss.c 	if (!list_empty(&gbe_dev->gbe_intf_head))
gbe_dev          3819 drivers/net/ethernet/ti/netcp_ethss.c 		dev_alert(gbe_dev->dev,