• Home
  • Raw
  • Download

Lines Matching +full:1000 +full:base +full:- +full:x

1 // SPDX-License-Identifier: GPL-2.0
90 struct qeth_card *card = dev->ml_priv; in qeth_get_sset_count()
95 card->qdio.no_out_queues * TXQ_STATS_LEN; in qeth_get_sset_count()
97 return -EINVAL; in qeth_get_sset_count()
104 struct qeth_card *card = dev->ml_priv; in qeth_get_ethtool_stats()
107 qeth_add_stat_data(&data, &card->stats, card_stats, CARD_STATS_LEN); in qeth_get_ethtool_stats()
108 for (i = 0; i < card->qdio.no_out_queues; i++) in qeth_get_ethtool_stats()
109 qeth_add_stat_data(&data, &card->qdio.out_qs[i]->stats, in qeth_get_ethtool_stats()
117 WRITE_ONCE(queue->coalesce_usecs, coal->tx_coalesce_usecs); in __qeth_set_coalesce()
118 WRITE_ONCE(queue->max_coalesced_frames, coal->tx_max_coalesced_frames); in __qeth_set_coalesce()
120 if (coal->tx_coalesce_usecs && in __qeth_set_coalesce()
123 qeth_tx_arm_timer(queue, coal->tx_coalesce_usecs); in __qeth_set_coalesce()
129 struct qeth_card *card = dev->ml_priv; in qeth_set_coalesce()
134 return -EOPNOTSUPP; in qeth_set_coalesce()
136 if (!coal->tx_coalesce_usecs && !coal->tx_max_coalesced_frames) in qeth_set_coalesce()
137 return -EINVAL; in qeth_set_coalesce()
148 struct qeth_card *card = dev->ml_priv; in qeth_get_ringparam()
150 param->rx_max_pending = QDIO_MAX_BUFFERS_PER_Q; in qeth_get_ringparam()
151 param->rx_mini_max_pending = 0; in qeth_get_ringparam()
152 param->rx_jumbo_max_pending = 0; in qeth_get_ringparam()
153 param->tx_max_pending = QDIO_MAX_BUFFERS_PER_Q; in qeth_get_ringparam()
155 param->rx_pending = card->qdio.in_buf_pool.buf_count; in qeth_get_ringparam()
156 param->rx_mini_pending = 0; in qeth_get_ringparam()
157 param->rx_jumbo_pending = 0; in qeth_get_ringparam()
158 param->tx_pending = QDIO_MAX_BUFFERS_PER_Q; in qeth_get_ringparam()
163 struct qeth_card *card = dev->ml_priv; in qeth_get_strings()
171 for (i = 0; i < card->qdio.no_out_queues; i++) { in qeth_get_strings()
186 struct qeth_card *card = dev->ml_priv; in qeth_get_drvinfo()
188 strlcpy(info->driver, IS_LAYER2(card) ? "qeth_l2" : "qeth_l3", in qeth_get_drvinfo()
189 sizeof(info->driver)); in qeth_get_drvinfo()
190 strlcpy(info->fw_version, card->info.mcl_level, in qeth_get_drvinfo()
191 sizeof(info->fw_version)); in qeth_get_drvinfo()
192 snprintf(info->bus_info, sizeof(info->bus_info), "%s/%s/%s", in qeth_get_drvinfo()
199 struct qeth_card *card = dev->ml_priv; in qeth_get_channels()
201 channels->max_rx = dev->num_rx_queues; in qeth_get_channels()
202 channels->max_tx = card->qdio.no_out_queues; in qeth_get_channels()
203 channels->max_other = 0; in qeth_get_channels()
204 channels->max_combined = 0; in qeth_get_channels()
205 channels->rx_count = dev->real_num_rx_queues; in qeth_get_channels()
206 channels->tx_count = dev->real_num_tx_queues; in qeth_get_channels()
207 channels->other_count = 0; in qeth_get_channels()
208 channels->combined_count = 0; in qeth_get_channels()
215 struct qeth_card *card = dev->ml_priv; in qeth_set_channels()
218 if (channels->rx_count == 0 || channels->tx_count == 0) in qeth_set_channels()
219 return -EINVAL; in qeth_set_channels()
220 if (channels->tx_count > card->qdio.no_out_queues) in qeth_set_channels()
221 return -EINVAL; in qeth_set_channels()
223 /* Prio-queueing needs all TX queues: */ in qeth_set_channels()
225 return -EPERM; in qeth_set_channels()
228 if (channels->tx_count < QETH_IQD_MIN_TXQ) in qeth_set_channels()
229 return -EINVAL; in qeth_set_channels()
235 channels->tx_count < dev->real_num_tx_queues) in qeth_set_channels()
236 return -EPERM; in qeth_set_channels()
239 rc = qeth_set_real_num_tx_queues(card, channels->tx_count); in qeth_set_channels()
241 priv->tx_wanted_queues = channels->tx_count; in qeth_set_channels()
249 struct qeth_card *card = dev->ml_priv; in qeth_get_ts_info()
252 return -EOPNOTSUPP; in qeth_get_ts_info()
262 switch (tuna->id) { in qeth_get_tunable()
264 *(u32 *)data = priv->rx_copybreak; in qeth_get_tunable()
267 return -EOPNOTSUPP; in qeth_get_tunable()
277 switch (tuna->id) { in qeth_set_tunable()
279 WRITE_ONCE(priv->rx_copybreak, *(u32 *)data); in qeth_set_tunable()
282 return -EOPNOTSUPP; in qeth_set_tunable()
289 struct qeth_card *card = dev->ml_priv; in qeth_get_per_queue_coalesce()
293 return -EOPNOTSUPP; in qeth_get_per_queue_coalesce()
295 if (__queue >= card->qdio.no_out_queues) in qeth_get_per_queue_coalesce()
296 return -EINVAL; in qeth_get_per_queue_coalesce()
298 queue = card->qdio.out_qs[__queue]; in qeth_get_per_queue_coalesce()
300 coal->tx_coalesce_usecs = queue->coalesce_usecs; in qeth_get_per_queue_coalesce()
301 coal->tx_max_coalesced_frames = queue->max_coalesced_frames; in qeth_get_per_queue_coalesce()
308 struct qeth_card *card = dev->ml_priv; in qeth_set_per_queue_coalesce()
311 return -EOPNOTSUPP; in qeth_set_per_queue_coalesce()
313 if (queue >= card->qdio.no_out_queues) in qeth_set_per_queue_coalesce()
314 return -EINVAL; in qeth_set_per_queue_coalesce()
316 if (!coal->tx_coalesce_usecs && !coal->tx_max_coalesced_frames) in qeth_set_per_queue_coalesce()
317 return -EINVAL; in qeth_set_per_queue_coalesce()
319 __qeth_set_coalesce(dev, card->qdio.out_qs[queue], coal); in qeth_set_per_queue_coalesce()
324 /* Autoneg and full-duplex are supported and advertised unconditionally. */
368 1000baseT_Full); in qeth_set_cmd_adv_sup()
370 1000baseT_Full); in qeth_set_cmd_adv_sup()
372 1000baseT_Half); in qeth_set_cmd_adv_sup()
374 1000baseT_Half); in qeth_set_cmd_adv_sup()
413 struct qeth_card *card = netdev->ml_priv; in qeth_get_link_ksettings()
421 link_type = card->info.link_type; in qeth_get_link_ksettings()
423 cmd->base.duplex = DUPLEX_FULL; in qeth_get_link_ksettings()
424 cmd->base.autoneg = AUTONEG_ENABLE; in qeth_get_link_ksettings()
425 cmd->base.phy_address = 0; in qeth_get_link_ksettings()
426 cmd->base.mdio_support = 0; in qeth_get_link_ksettings()
427 cmd->base.eth_tp_mdix = ETH_TP_MDI_INVALID; in qeth_get_link_ksettings()
428 cmd->base.eth_tp_mdix_ctrl = ETH_TP_MDI_INVALID; in qeth_get_link_ksettings()
433 cmd->base.speed = SPEED_100; in qeth_get_link_ksettings()
434 cmd->base.port = PORT_TP; in qeth_get_link_ksettings()
438 cmd->base.speed = SPEED_1000; in qeth_get_link_ksettings()
439 cmd->base.port = PORT_FIBRE; in qeth_get_link_ksettings()
442 cmd->base.speed = SPEED_10000; in qeth_get_link_ksettings()
443 cmd->base.port = PORT_FIBRE; in qeth_get_link_ksettings()
446 cmd->base.speed = SPEED_25000; in qeth_get_link_ksettings()
447 cmd->base.port = PORT_FIBRE; in qeth_get_link_ksettings()
450 cmd->base.speed = SPEED_10; in qeth_get_link_ksettings()
451 cmd->base.port = PORT_TP; in qeth_get_link_ksettings()
453 qeth_set_cmd_adv_sup(cmd, cmd->base.speed, cmd->base.port); in qeth_get_link_ksettings()
459 if (rc == -EOPNOTSUPP) /* for old hardware, return heuristic */ in qeth_get_link_ksettings()
466 "card info: card_type=0x%02x, port_mode=0x%04x, port_speed=0x%08x\n", in qeth_get_link_ksettings()
476 cmd->base.port = PORT_TP; in qeth_get_link_ksettings()
477 qeth_set_cmd_adv_sup(cmd, SPEED_1000, cmd->base.port); in qeth_get_link_ksettings()
481 cmd->base.port = PORT_FIBRE; in qeth_get_link_ksettings()
482 qeth_set_cmd_adv_sup(cmd, SPEED_1000, cmd->base.port); in qeth_get_link_ksettings()
486 cmd->base.port = PORT_FIBRE; in qeth_get_link_ksettings()
487 qeth_set_cmd_adv_sup(cmd, SPEED_10000, cmd->base.port); in qeth_get_link_ksettings()
493 cmd->base.duplex = DUPLEX_FULL; in qeth_get_link_ksettings()
496 cmd->base.duplex = DUPLEX_HALF; in qeth_get_link_ksettings()
502 cmd->base.speed = SPEED_10; in qeth_get_link_ksettings()
505 cmd->base.speed = SPEED_100; in qeth_get_link_ksettings()
508 cmd->base.speed = SPEED_1000; in qeth_get_link_ksettings()
511 cmd->base.speed = SPEED_10000; in qeth_get_link_ksettings()
514 cmd->base.speed = SPEED_25000; in qeth_get_link_ksettings()