sys/arm/arm/sc_machdep.c
69
sc->adapter = -1;
sys/compat/linuxkpi/common/include/linux/i2c-algo-bit.h
45
int lkpi_i2c_bit_add_bus(struct i2c_adapter *adapter);
sys/compat/linuxkpi/common/include/linux/i2c-algo-bit.h
47
#define i2c_bit_add_bus(adapter) lkpi_i2c_bit_add_bus(adapter)
sys/compat/linuxkpi/common/include/linux/i2c.h
117
int lkpi_i2c_add_adapter(struct i2c_adapter *adapter);
sys/compat/linuxkpi/common/include/linux/i2c.h
118
int lkpi_i2c_del_adapter(struct i2c_adapter *adapter);
sys/compat/linuxkpi/common/include/linux/i2c.h
120
int lkpi_i2cbb_transfer(struct i2c_adapter *adapter, struct i2c_msg *msgs, int nmsgs);
sys/compat/linuxkpi/common/include/linux/i2c.h
122
#define i2c_add_adapter(adapter) lkpi_i2c_add_adapter(adapter)
sys/compat/linuxkpi/common/include/linux/i2c.h
123
#define i2c_del_adapter(adapter) lkpi_i2c_del_adapter(adapter)
sys/compat/linuxkpi/common/include/linux/i2c.h
129
do_i2c_transfer(struct i2c_adapter *adapter, struct i2c_msg *msgs, int nmsgs)
sys/compat/linuxkpi/common/include/linux/i2c.h
133
retries = adapter->retries == 0 ? 1 : adapter->retries;
sys/compat/linuxkpi/common/include/linux/i2c.h
135
if (adapter->algo != NULL && adapter->algo->master_xfer != NULL)
sys/compat/linuxkpi/common/include/linux/i2c.h
136
ret = adapter->algo->master_xfer(adapter, msgs, nmsgs);
sys/compat/linuxkpi/common/include/linux/i2c.h
138
ret = lkpi_i2cbb_transfer(adapter, msgs, nmsgs);
sys/compat/linuxkpi/common/include/linux/i2c.h
147
i2c_transfer(struct i2c_adapter *adapter, struct i2c_msg *msgs, int nmsgs)
sys/compat/linuxkpi/common/include/linux/i2c.h
151
if (adapter->algo == NULL && adapter->algo_data == NULL)
sys/compat/linuxkpi/common/include/linux/i2c.h
154
if (adapter->lock_ops)
sys/compat/linuxkpi/common/include/linux/i2c.h
155
adapter->lock_ops->lock_bus(adapter, 0);
sys/compat/linuxkpi/common/include/linux/i2c.h
157
ret = do_i2c_transfer(adapter, msgs, nmsgs);
sys/compat/linuxkpi/common/include/linux/i2c.h
159
if (adapter->lock_ops)
sys/compat/linuxkpi/common/include/linux/i2c.h
160
adapter->lock_ops->unlock_bus(adapter, 0);
sys/compat/linuxkpi/common/include/linux/i2c.h
167
__i2c_transfer(struct i2c_adapter *adapter, struct i2c_msg *msgs, int nmsgs)
sys/compat/linuxkpi/common/include/linux/i2c.h
169
return (do_i2c_transfer(adapter, msgs, nmsgs));
sys/compat/linuxkpi/common/include/linux/i2c.h
173
i2c_set_adapdata(struct i2c_adapter *adapter, void *data)
sys/compat/linuxkpi/common/include/linux/i2c.h
175
adapter->data = data;
sys/compat/linuxkpi/common/include/linux/i2c.h
179
i2c_get_adapdata(struct i2c_adapter *adapter)
sys/compat/linuxkpi/common/include/linux/i2c.h
181
return (adapter->data);
sys/compat/linuxkpi/common/src/linux_i2c.c
109
lkpi_iic_add_adapter(device_t dev, struct i2c_adapter *adapter)
sys/compat/linuxkpi/common/src/linux_i2c.c
114
sc->adapter = adapter;
sys/compat/linuxkpi/common/src/linux_i2c.c
125
return (sc->adapter);
sys/compat/linuxkpi/common/src/linux_i2c.c
167
static int i2c_check_for_quirks(struct i2c_adapter *adapter,
sys/compat/linuxkpi/common/src/linux_i2c.c
175
dev = adapter->dev.parent->bsddev;
sys/compat/linuxkpi/common/src/linux_i2c.c
176
quirks = adapter->quirks;
sys/compat/linuxkpi/common/src/linux_i2c.c
285
if (sc->adapter == NULL)
sys/compat/linuxkpi/common/src/linux_i2c.c
287
ret = i2c_check_for_quirks(sc->adapter, msgs, nmsgs);
sys/compat/linuxkpi/common/src/linux_i2c.c
307
ret = i2c_transfer(sc->adapter, linux_msgs, nmsgs);
sys/compat/linuxkpi/common/src/linux_i2c.c
316
lkpi_i2c_add_adapter(struct i2c_adapter *adapter)
sys/compat/linuxkpi/common/src/linux_i2c.c
320
if (adapter->name[0] == '\0')
sys/compat/linuxkpi/common/src/linux_i2c.c
323
device_printf(adapter->dev.parent->bsddev,
sys/compat/linuxkpi/common/src/linux_i2c.c
324
"Adding i2c adapter %s\n", adapter->name);
sys/compat/linuxkpi/common/src/linux_i2c.c
326
lkpi_iic = device_add_child(adapter->dev.parent->bsddev, "lkpi_iic",
sys/compat/linuxkpi/common/src/linux_i2c.c
329
device_printf(adapter->dev.parent->bsddev, "Couldn't add lkpi_iic\n");
sys/compat/linuxkpi/common/src/linux_i2c.c
335
bus_attach_children(adapter->dev.parent->bsddev);
sys/compat/linuxkpi/common/src/linux_i2c.c
337
LKPI_IIC_ADD_ADAPTER(lkpi_iic, adapter);
sys/compat/linuxkpi/common/src/linux_i2c.c
343
lkpi_i2c_del_adapter(struct i2c_adapter *adapter)
sys/compat/linuxkpi/common/src/linux_i2c.c
348
if (adapter == NULL)
sys/compat/linuxkpi/common/src/linux_i2c.c
351
device_printf(adapter->dev.parent->bsddev,
sys/compat/linuxkpi/common/src/linux_i2c.c
352
"Removing i2c adapter %s\n", adapter->name);
sys/compat/linuxkpi/common/src/linux_i2c.c
355
while ((child = device_find_child(adapter->dev.parent->bsddev, "lkpi_iic", unit++)) != NULL) {
sys/compat/linuxkpi/common/src/linux_i2c.c
357
if (adapter == LKPI_IIC_GET_ADAPTER(child)) {
sys/compat/linuxkpi/common/src/linux_i2c.c
359
device_delete_child(adapter->dev.parent->bsddev, child);
sys/compat/linuxkpi/common/src/linux_i2c.c
367
while ((child = device_find_child(adapter->dev.parent->bsddev, "lkpi_iicbb", unit++)) != NULL) {
sys/compat/linuxkpi/common/src/linux_i2c.c
369
if (adapter == LKPI_IIC_GET_ADAPTER(child)) {
sys/compat/linuxkpi/common/src/linux_i2c.c
371
device_delete_child(adapter->dev.parent->bsddev, child);
sys/compat/linuxkpi/common/src/linux_i2c.c
50
struct i2c_adapter *adapter;
sys/compat/linuxkpi/common/src/linux_i2cbb.c
114
lkpi_iicbb_add_adapter(device_t dev, struct i2c_adapter *adapter)
sys/compat/linuxkpi/common/src/linux_i2cbb.c
120
sc->adapter = adapter;
sys/compat/linuxkpi/common/src/linux_i2cbb.c
125
algo_data = adapter->algo_data;
sys/compat/linuxkpi/common/src/linux_i2cbb.c
137
return (sc->adapter);
sys/compat/linuxkpi/common/src/linux_i2cbb.c
182
algo_data = sc->adapter->algo_data;
sys/compat/linuxkpi/common/src/linux_i2cbb.c
193
algo_data = sc->adapter->algo_data;
sys/compat/linuxkpi/common/src/linux_i2cbb.c
205
algo_data = sc->adapter->algo_data;
sys/compat/linuxkpi/common/src/linux_i2cbb.c
218
algo_data = sc->adapter->algo_data;
sys/compat/linuxkpi/common/src/linux_i2cbb.c
239
algo_data = sc->adapter->algo_data;
sys/compat/linuxkpi/common/src/linux_i2cbb.c
241
rc = algo_data->pre_xfer(sc->adapter);
sys/compat/linuxkpi/common/src/linux_i2cbb.c
252
algo_data = sc->adapter->algo_data;
sys/compat/linuxkpi/common/src/linux_i2cbb.c
254
algo_data->post_xfer(sc->adapter);
sys/compat/linuxkpi/common/src/linux_i2cbb.c
258
lkpi_i2cbb_transfer(struct i2c_adapter *adapter, struct i2c_msg *msgs,
sys/compat/linuxkpi/common/src/linux_i2cbb.c
283
child = device_find_child(adapter->dev.parent->bsddev,
sys/compat/linuxkpi/common/src/linux_i2cbb.c
287
if (adapter == LKPI_IIC_GET_ADAPTER(child)) {
sys/compat/linuxkpi/common/src/linux_i2cbb.c
303
lkpi_i2c_bit_add_bus(struct i2c_adapter *adapter)
sys/compat/linuxkpi/common/src/linux_i2cbb.c
308
device_printf(adapter->dev.parent->bsddev,
sys/compat/linuxkpi/common/src/linux_i2cbb.c
309
"Adding i2c adapter %s\n", adapter->name);
sys/compat/linuxkpi/common/src/linux_i2cbb.c
311
lkpi_iicbb = device_add_child(adapter->dev.parent->bsddev, "lkpi_iicbb",
sys/compat/linuxkpi/common/src/linux_i2cbb.c
314
device_printf(adapter->dev.parent->bsddev, "Couldn't add lkpi_iicbb\n");
sys/compat/linuxkpi/common/src/linux_i2cbb.c
320
bus_attach_children(adapter->dev.parent->bsddev);
sys/compat/linuxkpi/common/src/linux_i2cbb.c
322
LKPI_IIC_ADD_ADAPTER(lkpi_iicbb, adapter);
sys/compat/linuxkpi/common/src/linux_i2cbb.c
55
struct i2c_adapter *adapter;
sys/dev/al_eth/al_eth.c
1000
struct al_eth_ring *ring = &adapter->rx_ring[i];
sys/dev/al_eth/al_eth.c
1003
ring->dev = adapter->dev;
sys/dev/al_eth/al_eth.c
1004
ring->adapter = adapter;
sys/dev/al_eth/al_eth.c
1005
ring->netdev = adapter->netdev;
sys/dev/al_eth/al_eth.c
1006
al_udma_q_handle_get(&adapter->hal_adapter.rx_udma, i, &ring->dma_q);
sys/dev/al_eth/al_eth.c
1007
ring->sw_count = adapter->rx_ring_count;
sys/dev/al_eth/al_eth.c
1008
ring->hw_count = adapter->rx_descs_count;
sys/dev/al_eth/al_eth.c
1010
(struct unit_regs *)adapter->udma_base,
sys/dev/al_eth/al_eth.c
1019
struct al_eth_adapter *adapter = arg;
sys/dev/al_eth/al_eth.c
1020
if_t ifp = adapter->netdev;
sys/dev/al_eth/al_eth.c
1023
al_eth_down(adapter);
sys/dev/al_eth/al_eth.c
1024
rc = al_eth_up(adapter);
sys/dev/al_eth/al_eth.c
1034
struct al_eth_adapter *adapter = arg;
sys/dev/al_eth/al_eth.c
1036
al_init_locked(adapter);
sys/dev/al_eth/al_eth.c
1040
al_eth_alloc_rx_buf(struct al_eth_adapter *adapter,
sys/dev/al_eth/al_eth.c
1052
rx_info->data_size = adapter->rx_mbuf_sz;
sys/dev/al_eth/al_eth.c
1054
AL_RX_LOCK(adapter);
sys/dev/al_eth/al_eth.c
1059
AL_RX_UNLOCK(adapter);
sys/dev/al_eth/al_eth.c
1064
rx_info->m->m_pkthdr.len = rx_info->m->m_len = adapter->rx_mbuf_sz;
sys/dev/al_eth/al_eth.c
1085
al_eth_refill_rx_bufs(struct al_eth_adapter *adapter, unsigned int qid,
sys/dev/al_eth/al_eth.c
1088
struct al_eth_ring *rx_ring = &adapter->rx_ring[qid];
sys/dev/al_eth/al_eth.c
1099
if (__predict_false(al_eth_alloc_rx_buf(adapter,
sys/dev/al_eth/al_eth.c
1101
device_printf(adapter->dev,
sys/dev/al_eth/al_eth.c
1109
device_printf(adapter->dev,
sys/dev/al_eth/al_eth.c
1118
device_printf(adapter->dev,
sys/dev/al_eth/al_eth.c
1135
al_eth_refill_all_rx_bufs(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
1139
for (i = 0; i < adapter->num_rx_queues; i++)
sys/dev/al_eth/al_eth.c
1140
al_eth_refill_rx_bufs(adapter, i, AL_ETH_DEFAULT_RX_DESCS - 1);
sys/dev/al_eth/al_eth.c
1476
al_eth_rx_checksum(struct al_eth_adapter *adapter,
sys/dev/al_eth/al_eth.c
1481
if (unlikely((if_getcapenable(adapter->netdev) & IFCAP_RXCSUM) &&
sys/dev/al_eth/al_eth.c
1484
device_printf(adapter->dev,"rx ipv4 header checksum error\n");
sys/dev/al_eth/al_eth.c
1489
if (unlikely((if_getcapenable(adapter->netdev) & IFCAP_RXCSUM_IPV6) &&
sys/dev/al_eth/al_eth.c
1492
device_printf(adapter->dev,"rx ipv6 header checksum error\n");
sys/dev/al_eth/al_eth.c
1500
device_printf_dbg(adapter->dev, "rx L4 checksum error\n");
sys/dev/al_eth/al_eth.c
1505
device_printf_dbg(adapter->dev, "rx checksum correct\n");
sys/dev/al_eth/al_eth.c
1515
al_eth_rx_mbuf(struct al_eth_adapter *adapter,
sys/dev/al_eth/al_eth.c
1525
device_printf_dbg(adapter->dev, "rx_info %p data %p\n", rx_info,
sys/dev/al_eth/al_eth.c
1540
if (len <= adapter->small_copy_len) {
sys/dev/al_eth/al_eth.c
1542
device_printf_dbg(adapter->dev, "rx small packet. len %d\n", len);
sys/dev/al_eth/al_eth.c
1544
AL_RX_LOCK(adapter);
sys/dev/al_eth/al_eth.c
1546
AL_RX_UNLOCK(adapter);
sys/dev/al_eth/al_eth.c
1548
device_printf(adapter->dev, "smbuf is NULL\n");
sys/dev/al_eth/al_eth.c
1619
mbuf = al_eth_rx_mbuf(rx_ring->adapter, rx_ring, hal_pkt, descs,
sys/dev/al_eth/al_eth.c
1631
al_eth_rx_checksum(rx_ring->adapter, hal_pkt, mbuf);
sys/dev/al_eth/al_eth.c
1665
refill_actual = al_eth_refill_rx_bufs(rx_ring->adapter, qid,
sys/dev/al_eth/al_eth.c
1722
struct al_eth_adapter *adapter = if_getsoftc(ifp);
sys/dev/al_eth/al_eth.c
1729
i = m->m_pkthdr.flowid % adapter->num_tx_queues;
sys/dev/al_eth/al_eth.c
1731
i = curcpu % adapter->num_tx_queues;
sys/dev/al_eth/al_eth.c
1738
tx_ring = &adapter->tx_ring[i];
sys/dev/al_eth/al_eth.c
1740
device_printf_dbg(adapter->dev, "dgb start() - assuming link is active, "
sys/dev/al_eth/al_eth.c
1763
al_eth_flow_ctrl_init(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
1770
adapter->link_config.flow_ctrl_supported = default_flow_ctrl;
sys/dev/al_eth/al_eth.c
1774
al_eth_flow_ctrl_config(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
1777
uint8_t active = adapter->link_config.flow_ctrl_active;
sys/dev/al_eth/al_eth.c
1780
flow_ctrl_params = &adapter->flow_ctrl_params;
sys/dev/al_eth/al_eth.c
1797
al_eth_flow_control_config(&adapter->hal_adapter, flow_ctrl_params);
sys/dev/al_eth/al_eth.c
1803
al_eth_flow_ctrl_enable(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
1810
adapter->link_config.flow_ctrl_active =
sys/dev/al_eth/al_eth.c
1811
adapter->link_config.flow_ctrl_supported;
sys/dev/al_eth/al_eth.c
1813
al_eth_flow_ctrl_config(adapter);
sys/dev/al_eth/al_eth.c
1817
al_eth_flow_ctrl_disable(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
1820
adapter->link_config.flow_ctrl_active = 0;
sys/dev/al_eth/al_eth.c
1821
al_eth_flow_ctrl_config(adapter);
sys/dev/al_eth/al_eth.c
1825
al_eth_hw_init(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
1829
rc = al_eth_hw_init_adapter(adapter);
sys/dev/al_eth/al_eth.c
1833
rc = al_eth_mac_config(&adapter->hal_adapter, adapter->mac_mode);
sys/dev/al_eth/al_eth.c
1835
device_printf(adapter->dev, "%s failed to configure mac!\n",
sys/dev/al_eth/al_eth.c
1840
if ((adapter->mac_mode == AL_ETH_MAC_MODE_SGMII) ||
sys/dev/al_eth/al_eth.c
1841
(adapter->mac_mode == AL_ETH_MAC_MODE_RGMII &&
sys/dev/al_eth/al_eth.c
1842
adapter->phy_exist == false)) {
sys/dev/al_eth/al_eth.c
1843
rc = al_eth_mac_link_config(&adapter->hal_adapter,
sys/dev/al_eth/al_eth.c
1844
adapter->link_config.force_1000_base_x,
sys/dev/al_eth/al_eth.c
1845
adapter->link_config.autoneg,
sys/dev/al_eth/al_eth.c
1846
adapter->link_config.active_speed,
sys/dev/al_eth/al_eth.c
1847
adapter->link_config.active_duplex);
sys/dev/al_eth/al_eth.c
1849
device_printf(adapter->dev,
sys/dev/al_eth/al_eth.c
1856
rc = al_eth_mdio_config(&adapter->hal_adapter,
sys/dev/al_eth/al_eth.c
1858
adapter->ref_clk_freq, adapter->mdio_freq);
sys/dev/al_eth/al_eth.c
1860
device_printf(adapter->dev, "%s failed at mdio config!\n",
sys/dev/al_eth/al_eth.c
1865
al_eth_flow_ctrl_init(adapter);
sys/dev/al_eth/al_eth.c
1871
al_eth_hw_stop(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
1874
al_eth_mac_stop(&adapter->hal_adapter);
sys/dev/al_eth/al_eth.c
1883
al_eth_adapter_stop(&adapter->hal_adapter);
sys/dev/al_eth/al_eth.c
1885
adapter->flags |= AL_ETH_FLAG_RESET_REQUESTED;
sys/dev/al_eth/al_eth.c
1888
al_eth_flow_ctrl_disable(adapter);
sys/dev/al_eth/al_eth.c
1901
struct al_eth_adapter *adapter = data;
sys/dev/al_eth/al_eth.c
1904
(struct unit_regs __iomem *)adapter->udma_base;
sys/dev/al_eth/al_eth.c
1910
device_printf_dbg(adapter->dev, "%s group A cause %x\n",
sys/dev/al_eth/al_eth.c
1921
device_printf_dbg(adapter->dev,
sys/dev/al_eth/al_eth.c
1926
device_printf(adapter->dev,
sys/dev/al_eth/al_eth.c
1932
device_printf_dbg(adapter->dev,
sys/dev/al_eth/al_eth.c
1940
device_printf_dbg(adapter->dev, "secondary B cause %x\n",
sys/dev/al_eth/al_eth.c
1942
for (qid = 0; qid < adapter->num_rx_queues; qid++) {
sys/dev/al_eth/al_eth.c
1946
(struct unit_regs __iomem *)adapter->udma_base,
sys/dev/al_eth/al_eth.c
1956
device_printf_dbg(adapter->dev, "secondary C cause %x\n", cause_c);
sys/dev/al_eth/al_eth.c
1957
for (qid = 0; qid < adapter->num_tx_queues; qid++) {
sys/dev/al_eth/al_eth.c
1960
(struct unit_regs __iomem *)adapter->udma_base,
sys/dev/al_eth/al_eth.c
1967
al_eth_tx_cmlp_irq_filter(adapter->tx_ring);
sys/dev/al_eth/al_eth.c
1975
struct al_eth_adapter *adapter = data;
sys/dev/al_eth/al_eth.c
1977
device_printf_dbg(adapter->dev, "%s\n", __func__);
sys/dev/al_eth/al_eth.c
1984
struct al_eth_adapter *adapter = data;
sys/dev/al_eth/al_eth.c
1986
device_printf_dbg(adapter->dev, "%s\n", __func__);
sys/dev/al_eth/al_eth.c
1991
al_eth_enable_msix(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
1995
device_printf_dbg(adapter->dev, "%s\n", __func__);
sys/dev/al_eth/al_eth.c
1996
msix_vecs = 1 + adapter->num_rx_queues + adapter->num_tx_queues;
sys/dev/al_eth/al_eth.c
1998
device_printf_dbg(adapter->dev,
sys/dev/al_eth/al_eth.c
2001
adapter->msix_entries = malloc(msix_vecs*sizeof(*adapter->msix_entries),
sys/dev/al_eth/al_eth.c
2004
adapter->msix_entries[AL_ETH_MGMT_IRQ_IDX].entry = 2;
sys/dev/al_eth/al_eth.c
2005
adapter->msix_entries[AL_ETH_MGMT_IRQ_IDX].vector = 0;
sys/dev/al_eth/al_eth.c
2008
for (i = 0; i < adapter->num_rx_queues; i++) {
sys/dev/al_eth/al_eth.c
2009
int irq_idx = AL_ETH_RXQ_IRQ_IDX(adapter, i);
sys/dev/al_eth/al_eth.c
2011
adapter->msix_entries[irq_idx].entry = 3 + i;
sys/dev/al_eth/al_eth.c
2012
adapter->msix_entries[irq_idx].vector = 0;
sys/dev/al_eth/al_eth.c
2015
for (i = 0; i < adapter->num_tx_queues; i++) {
sys/dev/al_eth/al_eth.c
2016
int irq_idx = AL_ETH_TXQ_IRQ_IDX(adapter, i);
sys/dev/al_eth/al_eth.c
2018
adapter->msix_entries[irq_idx].entry = 3 +
sys/dev/al_eth/al_eth.c
2020
adapter->msix_entries[irq_idx].vector = 0;
sys/dev/al_eth/al_eth.c
2024
rc = pci_alloc_msix(adapter->dev, &count);
sys/dev/al_eth/al_eth.c
2027
device_printf_dbg(adapter->dev, "failed to allocate MSIX "
sys/dev/al_eth/al_eth.c
2029
device_printf_dbg(adapter->dev, "ret = %d\n", rc);
sys/dev/al_eth/al_eth.c
2034
device_printf_dbg(adapter->dev, "failed to allocate all MSIX "
sys/dev/al_eth/al_eth.c
2041
adapter->msix_entries[i].vector = 2 + 1 + i;
sys/dev/al_eth/al_eth.c
2043
device_printf_dbg(adapter->dev, "successfully enabled MSIX,"
sys/dev/al_eth/al_eth.c
2046
adapter->msix_vecs = msix_vecs;
sys/dev/al_eth/al_eth.c
2047
adapter->flags |= AL_ETH_FLAG_MSIX_ENABLED;
sys/dev/al_eth/al_eth.c
2051
adapter->msix_vecs = 0;
sys/dev/al_eth/al_eth.c
2052
free(adapter->msix_entries, M_IFAL);
sys/dev/al_eth/al_eth.c
2053
adapter->msix_entries = NULL;
sys/dev/al_eth/al_eth.c
2060
al_eth_setup_int_mode(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
2064
rc = al_eth_enable_msix(adapter);
sys/dev/al_eth/al_eth.c
2066
device_printf(adapter->dev, "Failed to enable MSIX mode.\n");
sys/dev/al_eth/al_eth.c
2070
adapter->irq_vecs = max(1, adapter->msix_vecs);
sys/dev/al_eth/al_eth.c
2072
if (adapter->msix_vecs == 0) {
sys/dev/al_eth/al_eth.c
2073
snprintf(adapter->irq_tbl[AL_ETH_MGMT_IRQ_IDX].name,
sys/dev/al_eth/al_eth.c
2075
device_get_name(adapter->dev));
sys/dev/al_eth/al_eth.c
2076
adapter->irq_tbl[AL_ETH_MGMT_IRQ_IDX].handler =
sys/dev/al_eth/al_eth.c
2079
adapter->irq_tbl[AL_ETH_MGMT_IRQ_IDX].vector = 0;
sys/dev/al_eth/al_eth.c
2080
adapter->irq_tbl[AL_ETH_MGMT_IRQ_IDX].data = adapter;
sys/dev/al_eth/al_eth.c
2082
device_printf(adapter->dev, "%s and vector %d \n", __func__,
sys/dev/al_eth/al_eth.c
2083
adapter->irq_tbl[AL_ETH_MGMT_IRQ_IDX].vector);
sys/dev/al_eth/al_eth.c
2088
if (adapter->msix_vecs == 1) {
sys/dev/al_eth/al_eth.c
2089
snprintf(adapter->irq_tbl[AL_ETH_MGMT_IRQ_IDX].name,
sys/dev/al_eth/al_eth.c
2091
device_get_name(adapter->dev));
sys/dev/al_eth/al_eth.c
2092
adapter->irq_tbl[AL_ETH_MGMT_IRQ_IDX].handler =
sys/dev/al_eth/al_eth.c
2094
adapter->irq_tbl[AL_ETH_MGMT_IRQ_IDX].vector =
sys/dev/al_eth/al_eth.c
2095
adapter->msix_entries[AL_ETH_MGMT_IRQ_IDX].vector;
sys/dev/al_eth/al_eth.c
2096
adapter->irq_tbl[AL_ETH_MGMT_IRQ_IDX].data = adapter;
sys/dev/al_eth/al_eth.c
2101
snprintf(adapter->irq_tbl[AL_ETH_MGMT_IRQ_IDX].name, AL_ETH_IRQNAME_SIZE,
sys/dev/al_eth/al_eth.c
2102
"al-eth-msix-mgmt@pci:%s", device_get_name(adapter->dev));
sys/dev/al_eth/al_eth.c
2103
adapter->irq_tbl[AL_ETH_MGMT_IRQ_IDX].handler = al_eth_intr_msix_mgmt;
sys/dev/al_eth/al_eth.c
2105
adapter->irq_tbl[AL_ETH_MGMT_IRQ_IDX].data = adapter;
sys/dev/al_eth/al_eth.c
2106
adapter->irq_tbl[AL_ETH_MGMT_IRQ_IDX].vector =
sys/dev/al_eth/al_eth.c
2107
adapter->msix_entries[AL_ETH_MGMT_IRQ_IDX].vector;
sys/dev/al_eth/al_eth.c
2109
for (i = 0; i < adapter->num_rx_queues; i++) {
sys/dev/al_eth/al_eth.c
2110
int irq_idx = AL_ETH_RXQ_IRQ_IDX(adapter, i);
sys/dev/al_eth/al_eth.c
2112
snprintf(adapter->irq_tbl[irq_idx].name, AL_ETH_IRQNAME_SIZE,
sys/dev/al_eth/al_eth.c
2114
device_get_name(adapter->dev));
sys/dev/al_eth/al_eth.c
2115
adapter->irq_tbl[irq_idx].handler = al_eth_rx_recv_irq_filter;
sys/dev/al_eth/al_eth.c
2116
adapter->irq_tbl[irq_idx].data = &adapter->rx_ring[i];
sys/dev/al_eth/al_eth.c
2117
adapter->irq_tbl[irq_idx].vector =
sys/dev/al_eth/al_eth.c
2118
adapter->msix_entries[irq_idx].vector;
sys/dev/al_eth/al_eth.c
2121
for (i = 0; i < adapter->num_tx_queues; i++) {
sys/dev/al_eth/al_eth.c
2122
int irq_idx = AL_ETH_TXQ_IRQ_IDX(adapter, i);
sys/dev/al_eth/al_eth.c
2124
snprintf(adapter->irq_tbl[irq_idx].name,
sys/dev/al_eth/al_eth.c
2126
device_get_name(adapter->dev));
sys/dev/al_eth/al_eth.c
2127
adapter->irq_tbl[irq_idx].handler = al_eth_tx_cmlp_irq_filter;
sys/dev/al_eth/al_eth.c
2128
adapter->irq_tbl[irq_idx].data = &adapter->tx_ring[i];
sys/dev/al_eth/al_eth.c
2129
adapter->irq_tbl[irq_idx].vector =
sys/dev/al_eth/al_eth.c
2130
adapter->msix_entries[irq_idx].vector;
sys/dev/al_eth/al_eth.c
2137
__al_eth_free_irq(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
2142
for (i = 0; i < adapter->irq_vecs; i++) {
sys/dev/al_eth/al_eth.c
2143
irq = &adapter->irq_tbl[i];
sys/dev/al_eth/al_eth.c
2145
device_printf_dbg(adapter->dev, "tear down irq: %d\n",
sys/dev/al_eth/al_eth.c
2147
rc = bus_teardown_intr(adapter->dev, irq->res,
sys/dev/al_eth/al_eth.c
2150
device_printf(adapter->dev, "failed to tear "
sys/dev/al_eth/al_eth.c
2158
al_eth_free_irq(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
2163
if (adapter->msix_vecs >= 1) {
sys/dev/al_eth/al_eth.c
2164
free_irq_cpu_rmap(adapter->netdev->rx_cpu_rmap);
sys/dev/al_eth/al_eth.c
2165
adapter->netdev->rx_cpu_rmap = NULL;
sys/dev/al_eth/al_eth.c
2169
__al_eth_free_irq(adapter);
sys/dev/al_eth/al_eth.c
2171
for (i = 0; i < adapter->irq_vecs; i++) {
sys/dev/al_eth/al_eth.c
2172
irq = &adapter->irq_tbl[i];
sys/dev/al_eth/al_eth.c
2175
device_printf_dbg(adapter->dev, "release resource irq: %d\n",
sys/dev/al_eth/al_eth.c
2177
rc = bus_release_resource(adapter->dev, SYS_RES_IRQ, irq->vector,
sys/dev/al_eth/al_eth.c
2181
device_printf(adapter->dev, "dev has no parent while "
sys/dev/al_eth/al_eth.c
2185
pci_release_msi(adapter->dev);
sys/dev/al_eth/al_eth.c
2187
adapter->flags &= ~AL_ETH_FLAG_MSIX_ENABLED;
sys/dev/al_eth/al_eth.c
2189
adapter->msix_vecs = 0;
sys/dev/al_eth/al_eth.c
2190
free(adapter->msix_entries, M_IFAL);
sys/dev/al_eth/al_eth.c
2191
adapter->msix_entries = NULL;
sys/dev/al_eth/al_eth.c
2195
al_eth_request_irq(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
2201
if ((adapter->flags & AL_ETH_FLAG_MSIX_ENABLED) != 0)
sys/dev/al_eth/al_eth.c
2206
for (i = 0; i < adapter->irq_vecs; i++) {
sys/dev/al_eth/al_eth.c
2207
irq = &adapter->irq_tbl[i];
sys/dev/al_eth/al_eth.c
2212
irq->res = bus_alloc_resource_any(adapter->dev, SYS_RES_IRQ,
sys/dev/al_eth/al_eth.c
2215
device_printf(adapter->dev, "could not allocate "
sys/dev/al_eth/al_eth.c
2221
if ((rc = bus_setup_intr(adapter->dev, irq->res,
sys/dev/al_eth/al_eth.c
2224
device_printf(adapter->dev, "failed to register "
sys/dev/al_eth/al_eth.c
2237
irq = &adapter->irq_tbl[v];
sys/dev/al_eth/al_eth.c
2238
bti = bus_teardown_intr(adapter->dev, irq->res, irq->cookie);
sys/dev/al_eth/al_eth.c
2240
device_printf(adapter->dev, "failed to tear "
sys/dev/al_eth/al_eth.c
2245
device_printf_dbg(adapter->dev, "exit_intr: releasing irq %d\n",
sys/dev/al_eth/al_eth.c
2253
irq = &adapter->irq_tbl[v];
sys/dev/al_eth/al_eth.c
2254
device_printf_dbg(adapter->dev, "exit_res: releasing resource"
sys/dev/al_eth/al_eth.c
2256
brr = bus_release_resource(adapter->dev, SYS_RES_IRQ,
sys/dev/al_eth/al_eth.c
2259
device_printf(adapter->dev, "dev has no parent while "
sys/dev/al_eth/al_eth.c
2276
al_eth_setup_tx_resources(struct al_eth_adapter *adapter, int qid)
sys/dev/al_eth/al_eth.c
2278
struct al_eth_ring *tx_ring = &adapter->tx_ring[qid];
sys/dev/al_eth/al_eth.c
2284
if (adapter->up)
sys/dev/al_eth/al_eth.c
2318
device_get_nameunit(adapter->dev));
sys/dev/al_eth/al_eth.c
2323
device_get_nameunit(adapter->dev));
sys/dev/al_eth/al_eth.c
2373
al_eth_free_tx_resources(struct al_eth_adapter *adapter, int qid)
sys/dev/al_eth/al_eth.c
2375
struct al_eth_ring *tx_ring = &adapter->tx_ring[qid];
sys/dev/al_eth/al_eth.c
2392
drbr_flush(adapter->netdev, tx_ring->br);
sys/dev/al_eth/al_eth.c
2429
al_eth_free_all_tx_resources(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
2433
for (i = 0; i < adapter->num_tx_queues; i++)
sys/dev/al_eth/al_eth.c
2434
if (adapter->tx_ring[i].q_params.desc_base)
sys/dev/al_eth/al_eth.c
2435
al_eth_free_tx_resources(adapter, i);
sys/dev/al_eth/al_eth.c
2446
al_eth_setup_rx_resources(struct al_eth_adapter *adapter, unsigned int qid)
sys/dev/al_eth/al_eth.c
2448
struct al_eth_ring *rx_ring = &adapter->rx_ring[qid];
sys/dev/al_eth/al_eth.c
2487
device_get_nameunit(adapter->dev));
sys/dev/al_eth/al_eth.c
2521
if ((if_getcapenable(adapter->netdev) & IFCAP_LRO) != 0) {
sys/dev/al_eth/al_eth.c
2524
device_printf(adapter->dev,
sys/dev/al_eth/al_eth.c
2527
device_printf_dbg(adapter->dev,
sys/dev/al_eth/al_eth.c
2530
rx_ring->lro.ifp = adapter->netdev;
sys/dev/al_eth/al_eth.c
2548
al_eth_free_rx_resources(struct al_eth_adapter *adapter, unsigned int qid)
sys/dev/al_eth/al_eth.c
2550
struct al_eth_ring *rx_ring = &adapter->rx_ring[qid];
sys/dev/al_eth/al_eth.c
2604
al_eth_free_all_rx_resources(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
2608
for (i = 0; i < adapter->num_rx_queues; i++)
sys/dev/al_eth/al_eth.c
2609
if (adapter->rx_ring[i].q_params.desc_base != 0)
sys/dev/al_eth/al_eth.c
2610
al_eth_free_rx_resources(adapter, i);
sys/dev/al_eth/al_eth.c
2620
al_eth_setup_all_rx_resources(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
2624
for (i = 0; i < adapter->num_rx_queues; i++) {
sys/dev/al_eth/al_eth.c
2625
rc = al_eth_setup_rx_resources(adapter, i);
sys/dev/al_eth/al_eth.c
2629
device_printf(adapter->dev, "Allocation for Rx Queue %u failed\n", i);
sys/dev/al_eth/al_eth.c
2637
al_eth_free_rx_resources(adapter, i);
sys/dev/al_eth/al_eth.c
2648
al_eth_setup_all_tx_resources(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
2652
for (i = 0; i < adapter->num_tx_queues; i++) {
sys/dev/al_eth/al_eth.c
2653
rc = al_eth_setup_tx_resources(adapter, i);
sys/dev/al_eth/al_eth.c
2657
device_printf(adapter->dev,
sys/dev/al_eth/al_eth.c
2667
al_eth_free_tx_resources(adapter, i);
sys/dev/al_eth/al_eth.c
2673
al_eth_disable_int_sync(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
2677
if ((adapter->board_type == ALPINE_FPGA_NIC) ||
sys/dev/al_eth/al_eth.c
2678
(adapter->board_type == ALPINE_NIC)) {
sys/dev/al_eth/al_eth.c
2679
al_eth_forward_int_config((uint32_t*)adapter->internal_pcie_base +
sys/dev/al_eth/al_eth.c
2684
al_eth_interrupts_mask(adapter);
sys/dev/al_eth/al_eth.c
2688
al_eth_interrupts_unmask(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
2691
uint32_t group_b_mask = (1 << adapter->num_rx_queues) - 1;/* bit per Rx q*/
sys/dev/al_eth/al_eth.c
2692
uint32_t group_c_mask = (1 << adapter->num_tx_queues) - 1;/* bit per Tx q*/
sys/dev/al_eth/al_eth.c
2695
(struct unit_regs __iomem *)adapter->udma_base;
sys/dev/al_eth/al_eth.c
2697
if (adapter->int_mode == AL_IOFIC_MODE_LEGACY)
sys/dev/al_eth/al_eth.c
270
struct al_eth_adapter *adapter;
sys/dev/al_eth/al_eth.c
2713
al_eth_interrupts_mask(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
2716
(struct unit_regs __iomem *)adapter->udma_base;
sys/dev/al_eth/al_eth.c
2730
al_eth_configure_int_mode(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
2739
if (adapter->msix_vecs == 0)
sys/dev/al_eth/al_eth.c
2741
else if (adapter->msix_vecs > 1)
sys/dev/al_eth/al_eth.c
2744
device_printf(adapter->dev,
sys/dev/al_eth/al_eth.c
2749
if (adapter->board_type != ALPINE_INTEGRATED) {
sys/dev/al_eth/al_eth.c
2756
if (al_udma_iofic_config((struct unit_regs __iomem *)adapter->udma_base,
sys/dev/al_eth/al_eth.c
2759
device_printf(adapter->dev,
sys/dev/al_eth/al_eth.c
2763
adapter->int_mode = int_mode;
sys/dev/al_eth/al_eth.c
2764
device_printf_dbg(adapter->dev, "using %s interrupt mode\n",
sys/dev/al_eth/al_eth.c
2768
al_iofic_moder_res_config(&((struct unit_regs *)(adapter->udma_base))->gen.interrupt_regs.main_iofic, AL_INT_GROUP_B, 15);
sys/dev/al_eth/al_eth.c
2769
al_iofic_moder_res_config(&((struct unit_regs *)(adapter->udma_base))->gen.interrupt_regs.main_iofic, AL_INT_GROUP_C, 15);
sys/dev/al_eth/al_eth.c
2771
adapter->tx_usecs = 0;
sys/dev/al_eth/al_eth.c
2772
adapter->rx_usecs = 0;
sys/dev/al_eth/al_eth.c
2792
al_eth_update_stats(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
2794
struct al_eth_mac_stats *mac_stats = &adapter->mac_stats;
sys/dev/al_eth/al_eth.c
2796
if (adapter->up == 0)
sys/dev/al_eth/al_eth.c
2799
al_eth_mac_stats_get(&adapter->hal_adapter, mac_stats);
sys/dev/al_eth/al_eth.c
2807
struct al_eth_adapter *adapter;
sys/dev/al_eth/al_eth.c
2811
adapter = if_getsoftc(ifp);
sys/dev/al_eth/al_eth.c
2812
mac_stats = &adapter->mac_stats;
sys/dev/al_eth/al_eth.c
2863
struct al_eth_adapter *adapter = arg;
sys/dev/al_eth/al_eth.c
2865
al_eth_mac_table_unicast_add(adapter,
sys/dev/al_eth/al_eth.c
2880
al_eth_set_rx_mode(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
2882
if_t ifp = adapter->netdev;
sys/dev/al_eth/al_eth.c
2891
al_eth_mac_table_promiscuous_set(adapter, true);
sys/dev/al_eth/al_eth.c
2895
al_eth_mac_table_all_multicast_add(adapter,
sys/dev/al_eth/al_eth.c
2899
al_eth_mac_table_entry_clear(adapter,
sys/dev/al_eth/al_eth.c
2902
al_eth_mac_table_all_multicast_add(adapter,
sys/dev/al_eth/al_eth.c
2913
al_eth_mac_table_promiscuous_set(adapter, true);
sys/dev/al_eth/al_eth.c
2920
al_eth_mac_table_entry_clear(adapter, i);
sys/dev/al_eth/al_eth.c
2925
if_foreach_lladdr(ifp, al_program_addr, adapter);
sys/dev/al_eth/al_eth.c
2927
al_eth_mac_table_promiscuous_set(adapter, false);
sys/dev/al_eth/al_eth.c
293
adapter = device_get_softc(dev);
sys/dev/al_eth/al_eth.c
2932
al_eth_config_rx_fwd(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
2939
al_eth_fwd_pbits_table_set(&adapter->hal_adapter, i, i);
sys/dev/al_eth/al_eth.c
294
adapter->dev = dev;
sys/dev/al_eth/al_eth.c
2943
al_eth_fwd_priority_table_set(&adapter->hal_adapter, i, i >> 1);
sys/dev/al_eth/al_eth.c
295
adapter->board_type = ALPINE_INTEGRATED;
sys/dev/al_eth/al_eth.c
2951
al_eth_ctrl_table_def_set(&adapter->hal_adapter, AL_FALSE, &entry);
sys/dev/al_eth/al_eth.c
2957
al_eth_mac_table_unicast_add(adapter, AL_ETH_MAC_TABLE_UNICAST_IDX_BASE,
sys/dev/al_eth/al_eth.c
2959
al_eth_mac_table_broadcast_add(adapter, AL_ETH_MAC_TABLE_BROADCAST_IDX, 1);
sys/dev/al_eth/al_eth.c
296
snprintf(adapter->name, AL_ETH_NAME_MAX_LEN, "%s",
sys/dev/al_eth/al_eth.c
2960
al_eth_mac_table_promiscuous_set(adapter, false);
sys/dev/al_eth/al_eth.c
2963
for (i = 0; i < sizeof(adapter->toeplitz_hash_key); i++)
sys/dev/al_eth/al_eth.c
2964
*((uint8_t*)adapter->toeplitz_hash_key + i) = (uint8_t)random();
sys/dev/al_eth/al_eth.c
2967
al_eth_hash_key_set(&adapter->hal_adapter, i,
sys/dev/al_eth/al_eth.c
2968
htonl(adapter->toeplitz_hash_key[i]));
sys/dev/al_eth/al_eth.c
2971
adapter->rss_ind_tbl[i] = ethtool_rxfh_indir_default(i,
sys/dev/al_eth/al_eth.c
2973
al_eth_set_thash_table_entry(adapter, i, 0,
sys/dev/al_eth/al_eth.c
2974
adapter->rss_ind_tbl[i]);
sys/dev/al_eth/al_eth.c
2977
al_eth_fsm_table_init(adapter);
sys/dev/al_eth/al_eth.c
298
AL_RX_LOCK_INIT(adapter);
sys/dev/al_eth/al_eth.c
2981
al_eth_req_rx_buff_size(struct al_eth_adapter *adapter, int size)
sys/dev/al_eth/al_eth.c
2989
adapter->rx_mbuf_sz = MCLBYTES;
sys/dev/al_eth/al_eth.c
2991
if (adapter->max_rx_buff_alloc_size > 2048)
sys/dev/al_eth/al_eth.c
2992
adapter->rx_mbuf_sz = MJUMPAGESIZE;
sys/dev/al_eth/al_eth.c
2997
if (adapter->max_rx_buff_alloc_size > 4096)
sys/dev/al_eth/al_eth.c
2998
adapter->rx_mbuf_sz = MJUM9BYTES;
sys/dev/al_eth/al_eth.c
300
g_adapters[g_adapters_count] = adapter;
sys/dev/al_eth/al_eth.c
3003
if (adapter->max_rx_buff_alloc_size > 9216)
sys/dev/al_eth/al_eth.c
3004
adapter->rx_mbuf_sz = MJUM16BYTES;
sys/dev/al_eth/al_eth.c
3011
al_eth_change_mtu(struct al_eth_adapter *adapter, int new_mtu)
sys/dev/al_eth/al_eth.c
3016
al_eth_req_rx_buff_size(adapter, new_mtu);
sys/dev/al_eth/al_eth.c
3018
device_printf_dbg(adapter->dev, "set MTU to %d\n", new_mtu);
sys/dev/al_eth/al_eth.c
3019
al_eth_rx_pkt_limit_config(&adapter->hal_adapter,
sys/dev/al_eth/al_eth.c
3022
al_eth_tso_mss_config(&adapter->hal_adapter, 0, new_mtu - 100);
sys/dev/al_eth/al_eth.c
3028
al_eth_check_mtu(struct al_eth_adapter *adapter, int new_mtu)
sys/dev/al_eth/al_eth.c
303
adapter->udma_res = bus_alloc_resource_any(dev, SYS_RES_MEMORY,
sys/dev/al_eth/al_eth.c
3041
al_eth_udma_queue_enable(struct al_eth_adapter *adapter, enum al_udma_type type,
sys/dev/al_eth/al_eth.c
3049
q_params = &adapter->tx_ring[qid].q_params;
sys/dev/al_eth/al_eth.c
305
if (adapter->udma_res == NULL) {
sys/dev/al_eth/al_eth.c
3051
q_params = &adapter->rx_ring[qid].q_params;
sys/dev/al_eth/al_eth.c
3053
rc = al_eth_queue_config(&adapter->hal_adapter, type, qid, q_params);
sys/dev/al_eth/al_eth.c
3055
device_printf(adapter->dev, "config %s queue %u failed\n", name,
sys/dev/al_eth/al_eth.c
306
device_printf(adapter->dev,
sys/dev/al_eth/al_eth.c
3063
al_eth_udma_queues_enable_all(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
3067
for (i = 0; i < adapter->num_tx_queues; i++)
sys/dev/al_eth/al_eth.c
3068
al_eth_udma_queue_enable(adapter, UDMA_TX, i);
sys/dev/al_eth/al_eth.c
3070
for (i = 0; i < adapter->num_rx_queues; i++)
sys/dev/al_eth/al_eth.c
3071
al_eth_udma_queue_enable(adapter, UDMA_RX, i);
sys/dev/al_eth/al_eth.c
3077
al_eth_up_complete(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
3080
al_eth_configure_int_mode(adapter);
sys/dev/al_eth/al_eth.c
3081
al_eth_config_rx_fwd(adapter);
sys/dev/al_eth/al_eth.c
3082
al_eth_change_mtu(adapter, if_getmtu(adapter->netdev));
sys/dev/al_eth/al_eth.c
3083
al_eth_udma_queues_enable_all(adapter);
sys/dev/al_eth/al_eth.c
3084
al_eth_refill_all_rx_bufs(adapter);
sys/dev/al_eth/al_eth.c
3085
al_eth_interrupts_unmask(adapter);
sys/dev/al_eth/al_eth.c
3088
if ((adapter->board_type == ALPINE_FPGA_NIC) ||
sys/dev/al_eth/al_eth.c
3089
(adapter->board_type == ALPINE_NIC)) {
sys/dev/al_eth/al_eth.c
3090
al_eth_forward_int_config((uint32_t*)adapter->internal_pcie_base +
sys/dev/al_eth/al_eth.c
3094
al_eth_flow_ctrl_enable(adapter);
sys/dev/al_eth/al_eth.c
3096
mtx_lock(&adapter->stats_mtx);
sys/dev/al_eth/al_eth.c
3097
callout_reset(&adapter->stats_callout, hz, al_tick_stats, (void*)adapter);
sys/dev/al_eth/al_eth.c
3098
mtx_unlock(&adapter->stats_mtx);
sys/dev/al_eth/al_eth.c
3100
al_eth_mac_start(&adapter->hal_adapter);
sys/dev/al_eth/al_eth.c
3106
struct al_eth_adapter *adapter = if_getsoftc(ifp);
sys/dev/al_eth/al_eth.c
3109
mii_mediachg(adapter->mii);
sys/dev/al_eth/al_eth.c
311
adapter->udma_base = al_bus_dma_to_va(rman_get_bustag(adapter->udma_res),
sys/dev/al_eth/al_eth.c
312
rman_get_bushandle(adapter->udma_res));
sys/dev/al_eth/al_eth.c
3137
struct al_eth_adapter *adapter = arg;
sys/dev/al_eth/al_eth.c
3139
mii_tick(adapter->mii);
sys/dev/al_eth/al_eth.c
314
adapter->mac_res = bus_alloc_resource_any(dev, SYS_RES_MEMORY,
sys/dev/al_eth/al_eth.c
3142
callout_schedule(&adapter->wd_callout, hz);
sys/dev/al_eth/al_eth.c
3148
struct al_eth_adapter *adapter = arg;
sys/dev/al_eth/al_eth.c
3150
al_eth_update_stats(adapter);
sys/dev/al_eth/al_eth.c
3152
callout_schedule(&adapter->stats_callout, hz);
sys/dev/al_eth/al_eth.c
3156
al_eth_up(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
3158
if_t ifp = adapter->netdev;
sys/dev/al_eth/al_eth.c
316
if (adapter->mac_res == NULL) {
sys/dev/al_eth/al_eth.c
3161
if (adapter->up)
sys/dev/al_eth/al_eth.c
3164
if ((adapter->flags & AL_ETH_FLAG_RESET_REQUESTED) != 0) {
sys/dev/al_eth/al_eth.c
3165
al_eth_function_reset(adapter);
sys/dev/al_eth/al_eth.c
3166
adapter->flags &= ~AL_ETH_FLAG_RESET_REQUESTED;
sys/dev/al_eth/al_eth.c
317
device_printf(adapter->dev,
sys/dev/al_eth/al_eth.c
3177
al_eth_serdes_init(adapter);
sys/dev/al_eth/al_eth.c
3179
rc = al_eth_hw_init(adapter);
sys/dev/al_eth/al_eth.c
3183
rc = al_eth_setup_int_mode(adapter);
sys/dev/al_eth/al_eth.c
3185
device_printf(adapter->dev,
sys/dev/al_eth/al_eth.c
3191
rc = al_eth_setup_all_tx_resources(adapter);
sys/dev/al_eth/al_eth.c
3196
rc = al_eth_setup_all_rx_resources(adapter);
sys/dev/al_eth/al_eth.c
3200
rc = al_eth_request_irq(adapter);
sys/dev/al_eth/al_eth.c
3204
al_eth_up_complete(adapter);
sys/dev/al_eth/al_eth.c
3206
adapter->up = true;
sys/dev/al_eth/al_eth.c
3208
if (adapter->mac_mode == AL_ETH_MAC_MODE_10GbE_Serial)
sys/dev/al_eth/al_eth.c
3209
if_link_state_change(adapter->netdev, LINK_STATE_UP);
sys/dev/al_eth/al_eth.c
3211
if (adapter->mac_mode == AL_ETH_MAC_MODE_RGMII) {
sys/dev/al_eth/al_eth.c
3212
mii_mediachg(adapter->mii);
sys/dev/al_eth/al_eth.c
3215
mtx_lock(&adapter->wd_mtx);
sys/dev/al_eth/al_eth.c
3216
callout_reset(&adapter->wd_callout, hz, al_tick, adapter);
sys/dev/al_eth/al_eth.c
3217
mtx_unlock(&adapter->wd_mtx);
sys/dev/al_eth/al_eth.c
3219
mii_pollstat(adapter->mii);
sys/dev/al_eth/al_eth.c
322
adapter->mac_base = al_bus_dma_to_va(rman_get_bustag(adapter->mac_res),
sys/dev/al_eth/al_eth.c
3225
al_eth_free_all_rx_resources(adapter);
sys/dev/al_eth/al_eth.c
3227
al_eth_free_all_tx_resources(adapter);
sys/dev/al_eth/al_eth.c
3229
al_eth_free_irq(adapter);
sys/dev/al_eth/al_eth.c
323
rman_get_bushandle(adapter->mac_res));
sys/dev/al_eth/al_eth.c
3231
al_eth_hw_stop(adapter);
sys/dev/al_eth/al_eth.c
3233
al_eth_function_reset(adapter);
sys/dev/al_eth/al_eth.c
3241
struct al_eth_adapter *adapter = device_get_softc(dev);
sys/dev/al_eth/al_eth.c
3243
al_eth_down(adapter);
sys/dev/al_eth/al_eth.c
3249
al_eth_down(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
3252
device_printf_dbg(adapter->dev, "al_eth_down: begin\n");
sys/dev/al_eth/al_eth.c
3254
adapter->up = false;
sys/dev/al_eth/al_eth.c
3256
mtx_lock(&adapter->wd_mtx);
sys/dev/al_eth/al_eth.c
3257
callout_stop(&adapter->wd_callout);
sys/dev/al_eth/al_eth.c
3258
mtx_unlock(&adapter->wd_mtx);
sys/dev/al_eth/al_eth.c
326
adapter->ec_res = bus_alloc_resource_any(dev, SYS_RES_MEMORY, &bar_ec,
sys/dev/al_eth/al_eth.c
3260
al_eth_disable_int_sync(adapter);
sys/dev/al_eth/al_eth.c
3262
mtx_lock(&adapter->stats_mtx);
sys/dev/al_eth/al_eth.c
3263
callout_stop(&adapter->stats_callout);
sys/dev/al_eth/al_eth.c
3264
mtx_unlock(&adapter->stats_mtx);
sys/dev/al_eth/al_eth.c
3266
al_eth_free_irq(adapter);
sys/dev/al_eth/al_eth.c
3267
al_eth_hw_stop(adapter);
sys/dev/al_eth/al_eth.c
3269
al_eth_free_all_tx_resources(adapter);
sys/dev/al_eth/al_eth.c
3270
al_eth_free_all_rx_resources(adapter);
sys/dev/al_eth/al_eth.c
3276
struct al_eth_adapter *adapter = if_getsoftc(ifp);
sys/dev/al_eth/al_eth.c
328
if (adapter->ec_res == NULL) {
sys/dev/al_eth/al_eth.c
3283
error = al_eth_check_mtu(adapter, ifr->ifr_mtu);
sys/dev/al_eth/al_eth.c
3285
device_printf(adapter->dev, "ioctl wrong mtu %u\n",
sys/dev/al_eth/al_eth.c
3286
if_getmtu(adapter->netdev));
sys/dev/al_eth/al_eth.c
329
device_printf(adapter->dev,
sys/dev/al_eth/al_eth.c
3291
if_setmtu(adapter->netdev, ifr->ifr_mtu);
sys/dev/al_eth/al_eth.c
3292
al_init(adapter);
sys/dev/al_eth/al_eth.c
3298
if (((if_getflags(ifp) ^ adapter->if_flags) &
sys/dev/al_eth/al_eth.c
3300
device_printf_dbg(adapter->dev,
sys/dev/al_eth/al_eth.c
3302
al_eth_set_rx_mode(adapter);
sys/dev/al_eth/al_eth.c
3305
error = al_eth_up(adapter);
sys/dev/al_eth/al_eth.c
3311
al_eth_down(adapter);
sys/dev/al_eth/al_eth.c
3316
adapter->if_flags = if_getflags(ifp);
sys/dev/al_eth/al_eth.c
3322
device_printf_dbg(adapter->dev,
sys/dev/al_eth/al_eth.c
3324
al_eth_set_rx_mode(adapter);
sys/dev/al_eth/al_eth.c
3332
if (adapter->mii != NULL)
sys/dev/al_eth/al_eth.c
3334
&adapter->mii->mii_media, command);
sys/dev/al_eth/al_eth.c
3337
&adapter->media, command);
sys/dev/al_eth/al_eth.c
334
adapter->ec_base = al_bus_dma_to_va(rman_get_bustag(adapter->ec_res),
sys/dev/al_eth/al_eth.c
335
rman_get_bushandle(adapter->ec_res));
sys/dev/al_eth/al_eth.c
337
adapter->netdev = ifp = if_alloc(IFT_ETHER);
sys/dev/al_eth/al_eth.c
3389
al_init(adapter);
sys/dev/al_eth/al_eth.c
339
if_setsoftc(ifp, adapter);
sys/dev/al_eth/al_eth.c
3422
struct al_eth_adapter *adapter = device_get_softc(dev);
sys/dev/al_eth/al_eth.c
3428
rc = al_eth_mdio_read(&adapter->hal_adapter, adapter->phy_addr,
sys/dev/al_eth/al_eth.c
3434
device_printf_dbg(adapter->dev,
sys/dev/al_eth/al_eth.c
3442
device_printf(adapter->dev, "MDIO read failed on timeout\n");
sys/dev/al_eth/al_eth.c
3450
struct al_eth_adapter *adapter = device_get_softc(dev);
sys/dev/al_eth/al_eth.c
3455
rc = al_eth_mdio_write(&adapter->hal_adapter, adapter->phy_addr,
sys/dev/al_eth/al_eth.c
3461
device_printf(adapter->dev,
sys/dev/al_eth/al_eth.c
3469
device_printf(adapter->dev, "MDIO write failed on timeout\n");
sys/dev/al_eth/al_eth.c
3477
struct al_eth_adapter *adapter = device_get_softc(dev);
sys/dev/al_eth/al_eth.c
3479
device_printf_dbg(adapter->dev,
sys/dev/al_eth/al_eth.c
3481
device_printf_dbg(adapter->dev,
sys/dev/al_eth/al_eth.c
3483
adapter->mii->mii_media_active, adapter->mii->mii_media_status);
sys/dev/al_eth/al_eth.c
3485
if (adapter->up == 0)
sys/dev/al_eth/al_eth.c
3488
if ((adapter->mii->mii_media_status & IFM_AVALID) != 0) {
sys/dev/al_eth/al_eth.c
3489
if (adapter->mii->mii_media_status & IFM_ACTIVE) {
sys/dev/al_eth/al_eth.c
3490
device_printf(adapter->dev, "link is UP\n");
sys/dev/al_eth/al_eth.c
3491
if_link_state_change(adapter->netdev, LINK_STATE_UP);
sys/dev/al_eth/al_eth.c
3493
device_printf(adapter->dev, "link is DOWN\n");
sys/dev/al_eth/al_eth.c
3494
if_link_state_change(adapter->netdev, LINK_STATE_DOWN);
sys/dev/al_eth/al_eth.c
3502
struct al_eth_adapter *adapter = device_get_softc(dev);
sys/dev/al_eth/al_eth.c
3506
if (adapter->mii == NULL)
sys/dev/al_eth/al_eth.c
3509
if ((if_getflags(adapter->netdev) & IFF_UP) == 0)
sys/dev/al_eth/al_eth.c
351
adapter->if_flags = if_getflags(ifp);
sys/dev/al_eth/al_eth.c
3513
if ((adapter->mii->mii_media_status & (IFM_AVALID | IFM_ACTIVE)) !=
sys/dev/al_eth/al_eth.c
3518
if ((adapter->mii->mii_media_active & IFM_FDX) != 0)
sys/dev/al_eth/al_eth.c
3521
speed = IFM_SUBTYPE(adapter->mii->mii_media_active);
sys/dev/al_eth/al_eth.c
3524
al_eth_mac_link_config(&adapter->hal_adapter, 0, 1,
sys/dev/al_eth/al_eth.c
3530
al_eth_mac_link_config(&adapter->hal_adapter, 0, 1,
sys/dev/al_eth/al_eth.c
3536
al_eth_mac_link_config(&adapter->hal_adapter, 0, 1,
sys/dev/al_eth/al_eth.c
3541
device_printf(adapter->dev, "ERROR: unknown MII media active 0x%08x\n",
sys/dev/al_eth/al_eth.c
3542
adapter->mii->mii_media_active);
sys/dev/al_eth/al_eth.c
361
adapter->id_number = g_adapters_count;
sys/dev/al_eth/al_eth.c
363
if (adapter->board_type == ALPINE_INTEGRATED) {
sys/dev/al_eth/al_eth.c
364
dev_id = pci_get_device(adapter->dev);
sys/dev/al_eth/al_eth.c
365
rev_id = pci_get_revid(adapter->dev);
sys/dev/al_eth/al_eth.c
367
al_eth_fpga_read_pci_config(adapter->internal_pcie_base,
sys/dev/al_eth/al_eth.c
369
al_eth_fpga_read_pci_config(adapter->internal_pcie_base,
sys/dev/al_eth/al_eth.c
373
adapter->dev_id = dev_id;
sys/dev/al_eth/al_eth.c
374
adapter->rev_id = rev_id;
sys/dev/al_eth/al_eth.c
377
adapter->tx_ring_count = AL_ETH_DEFAULT_TX_SW_DESCS;
sys/dev/al_eth/al_eth.c
378
adapter->tx_descs_count = AL_ETH_DEFAULT_TX_HW_DESCS;
sys/dev/al_eth/al_eth.c
379
adapter->rx_ring_count = AL_ETH_DEFAULT_RX_DESCS;
sys/dev/al_eth/al_eth.c
380
adapter->rx_descs_count = AL_ETH_DEFAULT_RX_DESCS;
sys/dev/al_eth/al_eth.c
382
adapter->num_tx_queues = AL_ETH_NUM_QUEUES;
sys/dev/al_eth/al_eth.c
383
adapter->num_rx_queues = AL_ETH_NUM_QUEUES;
sys/dev/al_eth/al_eth.c
385
adapter->small_copy_len = AL_ETH_DEFAULT_SMALL_PACKET_LEN;
sys/dev/al_eth/al_eth.c
386
adapter->link_poll_interval = AL_ETH_DEFAULT_LINK_POLL_INTERVAL;
sys/dev/al_eth/al_eth.c
387
adapter->max_rx_buff_alloc_size = AL_ETH_DEFAULT_MAX_RX_BUFF_ALLOC_SIZE;
sys/dev/al_eth/al_eth.c
389
al_eth_req_rx_buff_size(adapter, if_getmtu(adapter->netdev));
sys/dev/al_eth/al_eth.c
391
adapter->link_config.force_1000_base_x = AL_ETH_DEFAULT_FORCE_1000_BASEX;
sys/dev/al_eth/al_eth.c
393
err = al_eth_board_params_init(adapter);
sys/dev/al_eth/al_eth.c
397
if (adapter->mac_mode == AL_ETH_MAC_MODE_10GbE_Serial) {
sys/dev/al_eth/al_eth.c
398
ifmedia_init(&adapter->media, IFM_IMASK,
sys/dev/al_eth/al_eth.c
400
ifmedia_add(&adapter->media, IFM_ETHER | IFM_1000_LX, 0, NULL);
sys/dev/al_eth/al_eth.c
401
ifmedia_add(&adapter->media, IFM_ETHER | IFM_10G_LR, 0, NULL);
sys/dev/al_eth/al_eth.c
402
ifmedia_add(&adapter->media, IFM_ETHER | IFM_AUTO, 0, NULL);
sys/dev/al_eth/al_eth.c
403
ifmedia_set(&adapter->media, IFM_ETHER | IFM_AUTO);
sys/dev/al_eth/al_eth.c
406
al_eth_function_reset(adapter);
sys/dev/al_eth/al_eth.c
408
err = al_eth_hw_init_adapter(adapter);
sys/dev/al_eth/al_eth.c
412
al_eth_init_rings(adapter);
sys/dev/al_eth/al_eth.c
415
al_eth_lm_config(adapter);
sys/dev/al_eth/al_eth.c
416
mtx_init(&adapter->stats_mtx, "AlStatsMtx", NULL, MTX_DEF);
sys/dev/al_eth/al_eth.c
417
mtx_init(&adapter->wd_mtx, "AlWdMtx", NULL, MTX_DEF);
sys/dev/al_eth/al_eth.c
418
callout_init_mtx(&adapter->stats_callout, &adapter->stats_mtx, 0);
sys/dev/al_eth/al_eth.c
419
callout_init_mtx(&adapter->wd_callout, &adapter->wd_mtx, 0);
sys/dev/al_eth/al_eth.c
421
ether_ifattach(ifp, adapter->mac_addr);
sys/dev/al_eth/al_eth.c
424
if (adapter->mac_mode == AL_ETH_MAC_MODE_RGMII) {
sys/dev/al_eth/al_eth.c
425
al_eth_hw_init(adapter);
sys/dev/al_eth/al_eth.c
428
err = mii_attach(adapter->dev, &adapter->miibus, adapter->netdev,
sys/dev/al_eth/al_eth.c
432
device_printf(adapter->dev, "attaching PHYs failed\n");
sys/dev/al_eth/al_eth.c
436
adapter->mii = device_get_softc(adapter->miibus);
sys/dev/al_eth/al_eth.c
442
bus_release_resource(dev, SYS_RES_MEMORY, bar_ec, adapter->ec_res);
sys/dev/al_eth/al_eth.c
444
bus_release_resource(dev, SYS_RES_MEMORY, bar_mac, adapter->mac_res);
sys/dev/al_eth/al_eth.c
446
bus_release_resource(dev, SYS_RES_MEMORY, bar_udma, adapter->udma_res);
sys/dev/al_eth/al_eth.c
454
struct al_eth_adapter *adapter;
sys/dev/al_eth/al_eth.c
456
adapter = device_get_softc(dev);
sys/dev/al_eth/al_eth.c
457
ether_ifdetach(adapter->netdev);
sys/dev/al_eth/al_eth.c
459
mtx_destroy(&adapter->stats_mtx);
sys/dev/al_eth/al_eth.c
460
mtx_destroy(&adapter->wd_mtx);
sys/dev/al_eth/al_eth.c
462
al_eth_down(adapter);
sys/dev/al_eth/al_eth.c
464
bus_release_resource(dev, SYS_RES_IRQ, 0, adapter->irq_res);
sys/dev/al_eth/al_eth.c
465
bus_release_resource(dev, SYS_RES_MEMORY, 0, adapter->ec_res);
sys/dev/al_eth/al_eth.c
466
bus_release_resource(dev, SYS_RES_MEMORY, 0, adapter->mac_res);
sys/dev/al_eth/al_eth.c
467
bus_release_resource(dev, SYS_RES_MEMORY, 0, adapter->udma_res);
sys/dev/al_eth/al_eth.c
524
al_eth_serdes_init(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
528
adapter->serdes_init = false;
sys/dev/al_eth/al_eth.c
530
serdes_base = alpine_serdes_resource_get(adapter->serdes_grp);
sys/dev/al_eth/al_eth.c
532
device_printf(adapter->dev, "serdes_base get failed!\n");
sys/dev/al_eth/al_eth.c
538
al_serdes_handle_grp_init(serdes_base, adapter->serdes_grp,
sys/dev/al_eth/al_eth.c
539
&adapter->serdes_obj);
sys/dev/al_eth/al_eth.c
541
adapter->serdes_init = true;
sys/dev/al_eth/al_eth.c
598
al_eth_mac_table_unicast_add(struct al_eth_adapter *adapter,
sys/dev/al_eth/al_eth.c
603
memcpy(entry.addr, adapter->mac_addr, sizeof(adapter->mac_addr));
sys/dev/al_eth/al_eth.c
611
device_printf_dbg(adapter->dev,
sys/dev/al_eth/al_eth.c
615
al_eth_fwd_mac_table_set(&adapter->hal_adapter, idx, &entry);
sys/dev/al_eth/al_eth.c
619
al_eth_mac_table_all_multicast_add(struct al_eth_adapter *adapter, uint8_t idx,
sys/dev/al_eth/al_eth.c
634
device_printf_dbg(adapter->dev,
sys/dev/al_eth/al_eth.c
638
al_eth_fwd_mac_table_set(&adapter->hal_adapter, idx, &entry);
sys/dev/al_eth/al_eth.c
642
al_eth_mac_table_broadcast_add(struct al_eth_adapter *adapter,
sys/dev/al_eth/al_eth.c
655
device_printf_dbg(adapter->dev,
sys/dev/al_eth/al_eth.c
659
al_eth_fwd_mac_table_set(&adapter->hal_adapter, idx, &entry);
sys/dev/al_eth/al_eth.c
663
al_eth_mac_table_promiscuous_set(struct al_eth_adapter *adapter,
sys/dev/al_eth/al_eth.c
676
device_printf_dbg(adapter->dev, "%s: %s promiscuous mode\n",
sys/dev/al_eth/al_eth.c
679
al_eth_fwd_mac_table_set(&adapter->hal_adapter,
sys/dev/al_eth/al_eth.c
684
al_eth_set_thash_table_entry(struct al_eth_adapter *adapter, uint8_t idx,
sys/dev/al_eth/al_eth.c
694
al_eth_thash_table_set(&adapter->hal_adapter, idx, udma, queue);
sys/dev/al_eth/al_eth.c
699
al_eth_fsm_table_init(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
723
al_eth_fsm_table_set(&adapter->hal_adapter, i, val);
sys/dev/al_eth/al_eth.c
728
al_eth_mac_table_entry_clear(struct al_eth_adapter *adapter,
sys/dev/al_eth/al_eth.c
733
device_printf_dbg(adapter->dev, "%s: clear entry %d\n", __func__, idx);
sys/dev/al_eth/al_eth.c
735
al_eth_fwd_mac_table_set(&adapter->hal_adapter, idx, &entry);
sys/dev/al_eth/al_eth.c
739
al_eth_hw_init_adapter(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
741
struct al_eth_adapter_params *params = &adapter->eth_hal_params;
sys/dev/al_eth/al_eth.c
745
params->rev_id = adapter->rev_id;
sys/dev/al_eth/al_eth.c
748
params->udma_regs_base = adapter->udma_base; /* UDMA register base address */
sys/dev/al_eth/al_eth.c
749
params->ec_regs_base = adapter->ec_base; /* Ethernet controller registers base address */
sys/dev/al_eth/al_eth.c
750
params->mac_regs_base = adapter->mac_base; /* Ethernet MAC registers base address */
sys/dev/al_eth/al_eth.c
751
params->name = adapter->name;
sys/dev/al_eth/al_eth.c
752
params->serdes_lane = adapter->serdes_lane;
sys/dev/al_eth/al_eth.c
754
rc = al_eth_adapter_init(&adapter->hal_adapter, params);
sys/dev/al_eth/al_eth.c
756
device_printf(adapter->dev, "%s failed at hal init!\n",
sys/dev/al_eth/al_eth.c
759
if ((adapter->board_type == ALPINE_NIC) ||
sys/dev/al_eth/al_eth.c
760
(adapter->board_type == ALPINE_FPGA_NIC)) {
sys/dev/al_eth/al_eth.c
772
al_udma_gen_tgtid_conf_set(adapter->udma_base, &conf);
sys/dev/al_eth/al_eth.c
779
al_eth_lm_config(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
783
params.adapter = &adapter->hal_adapter;
sys/dev/al_eth/al_eth.c
784
params.serdes_obj = &adapter->serdes_obj;
sys/dev/al_eth/al_eth.c
785
params.lane = adapter->serdes_lane;
sys/dev/al_eth/al_eth.c
786
params.sfp_detection = adapter->sfp_detection_needed;
sys/dev/al_eth/al_eth.c
787
if (adapter->sfp_detection_needed == true) {
sys/dev/al_eth/al_eth.c
788
params.sfp_bus_id = adapter->i2c_adapter_id;
sys/dev/al_eth/al_eth.c
792
if (adapter->sfp_detection_needed == false) {
sys/dev/al_eth/al_eth.c
793
switch (adapter->mac_mode) {
sys/dev/al_eth/al_eth.c
795
if ((adapter->lt_en != 0) && (adapter->an_en != 0))
sys/dev/al_eth/al_eth.c
809
params.link_training = adapter->lt_en;
sys/dev/al_eth/al_eth.c
811
params.static_values = !adapter->dont_override_serdes;
sys/dev/al_eth/al_eth.c
812
params.i2c_context = adapter;
sys/dev/al_eth/al_eth.c
815
params.retimer_exist = adapter->retimer.exist;
sys/dev/al_eth/al_eth.c
816
params.retimer_bus_id = adapter->retimer.bus_id;
sys/dev/al_eth/al_eth.c
817
params.retimer_i2c_addr = adapter->retimer.i2c_addr;
sys/dev/al_eth/al_eth.c
818
params.retimer_channel = adapter->retimer.channel;
sys/dev/al_eth/al_eth.c
820
al_eth_lm_init(&adapter->lm_context, ¶ms);
sys/dev/al_eth/al_eth.c
824
al_eth_board_params_init(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
827
if (adapter->board_type == ALPINE_NIC) {
sys/dev/al_eth/al_eth.c
828
adapter->mac_mode = AL_ETH_MAC_MODE_10GbE_Serial;
sys/dev/al_eth/al_eth.c
829
adapter->sfp_detection_needed = false;
sys/dev/al_eth/al_eth.c
830
adapter->phy_exist = false;
sys/dev/al_eth/al_eth.c
831
adapter->an_en = false;
sys/dev/al_eth/al_eth.c
832
adapter->lt_en = false;
sys/dev/al_eth/al_eth.c
833
adapter->ref_clk_freq = AL_ETH_REF_FREQ_375_MHZ;
sys/dev/al_eth/al_eth.c
834
adapter->mdio_freq = AL_ETH_DEFAULT_MDIO_FREQ_KHZ;
sys/dev/al_eth/al_eth.c
835
} else if (adapter->board_type == ALPINE_FPGA_NIC) {
sys/dev/al_eth/al_eth.c
836
adapter->mac_mode = AL_ETH_MAC_MODE_SGMII;
sys/dev/al_eth/al_eth.c
837
adapter->sfp_detection_needed = false;
sys/dev/al_eth/al_eth.c
838
adapter->phy_exist = false;
sys/dev/al_eth/al_eth.c
839
adapter->an_en = false;
sys/dev/al_eth/al_eth.c
840
adapter->lt_en = false;
sys/dev/al_eth/al_eth.c
841
adapter->ref_clk_freq = AL_ETH_REF_FREQ_375_MHZ;
sys/dev/al_eth/al_eth.c
842
adapter->mdio_freq = AL_ETH_DEFAULT_MDIO_FREQ_KHZ;
sys/dev/al_eth/al_eth.c
847
adapter->auto_speed = false;
sys/dev/al_eth/al_eth.c
849
rc = al_eth_board_params_get(adapter->mac_base, ¶ms);
sys/dev/al_eth/al_eth.c
851
device_printf(adapter->dev,
sys/dev/al_eth/al_eth.c
856
adapter->phy_exist = params.phy_exist == true;
sys/dev/al_eth/al_eth.c
857
adapter->phy_addr = params.phy_mdio_addr;
sys/dev/al_eth/al_eth.c
858
adapter->an_en = params.autoneg_enable;
sys/dev/al_eth/al_eth.c
859
adapter->lt_en = params.kr_lt_enable;
sys/dev/al_eth/al_eth.c
860
adapter->serdes_grp = params.serdes_grp;
sys/dev/al_eth/al_eth.c
861
adapter->serdes_lane = params.serdes_lane;
sys/dev/al_eth/al_eth.c
862
adapter->sfp_detection_needed = params.sfp_plus_module_exist;
sys/dev/al_eth/al_eth.c
863
adapter->i2c_adapter_id = params.i2c_adapter_id;
sys/dev/al_eth/al_eth.c
864
adapter->ref_clk_freq = params.ref_clk_freq;
sys/dev/al_eth/al_eth.c
865
adapter->dont_override_serdes = params.dont_override_serdes;
sys/dev/al_eth/al_eth.c
866
adapter->link_config.active_duplex = !params.half_duplex;
sys/dev/al_eth/al_eth.c
867
adapter->link_config.autoneg = !params.an_disable;
sys/dev/al_eth/al_eth.c
868
adapter->link_config.force_1000_base_x = params.force_1000_base_x;
sys/dev/al_eth/al_eth.c
869
adapter->retimer.exist = params.retimer_exist;
sys/dev/al_eth/al_eth.c
870
adapter->retimer.bus_id = params.retimer_bus_id;
sys/dev/al_eth/al_eth.c
871
adapter->retimer.i2c_addr = params.retimer_i2c_addr;
sys/dev/al_eth/al_eth.c
872
adapter->retimer.channel = params.retimer_channel;
sys/dev/al_eth/al_eth.c
876
device_printf(adapter->dev,
sys/dev/al_eth/al_eth.c
879
adapter->link_config.active_speed = 1000;
sys/dev/al_eth/al_eth.c
882
adapter->link_config.active_speed = 100;
sys/dev/al_eth/al_eth.c
885
adapter->link_config.active_speed = 10;
sys/dev/al_eth/al_eth.c
891
device_printf(adapter->dev,
sys/dev/al_eth/al_eth.c
895
adapter->mdio_freq = AL_ETH_DEFAULT_MDIO_FREQ_KHZ;
sys/dev/al_eth/al_eth.c
898
adapter->mdio_freq = AL_ETH_MDIO_FREQ_1000_KHZ;
sys/dev/al_eth/al_eth.c
906
adapter->mac_mode = AL_ETH_MAC_MODE_SGMII;
sys/dev/al_eth/al_eth.c
908
adapter->mac_mode = AL_ETH_MAC_MODE_RGMII;
sys/dev/al_eth/al_eth.c
910
adapter->use_lm = false;
sys/dev/al_eth/al_eth.c
913
adapter->mac_mode = AL_ETH_MAC_MODE_SGMII;
sys/dev/al_eth/al_eth.c
914
adapter->use_lm = true;
sys/dev/al_eth/al_eth.c
917
adapter->mac_mode = AL_ETH_MAC_MODE_10GbE_Serial;
sys/dev/al_eth/al_eth.c
918
adapter->use_lm = true;
sys/dev/al_eth/al_eth.c
921
adapter->sfp_detection_needed = true;
sys/dev/al_eth/al_eth.c
922
adapter->auto_speed = false;
sys/dev/al_eth/al_eth.c
923
adapter->use_lm = true;
sys/dev/al_eth/al_eth.c
926
adapter->sfp_detection_needed = true;
sys/dev/al_eth/al_eth.c
927
adapter->auto_speed = true;
sys/dev/al_eth/al_eth.c
928
adapter->mac_mode_set = false;
sys/dev/al_eth/al_eth.c
929
adapter->use_lm = true;
sys/dev/al_eth/al_eth.c
931
adapter->mac_mode = AL_ETH_MAC_MODE_10GbE_Serial;
sys/dev/al_eth/al_eth.c
934
device_printf(adapter->dev,
sys/dev/al_eth/al_eth.c
940
device_printf(adapter->dev,
sys/dev/al_eth/al_eth.c
944
params.phy_mdio_addr, adapter->mdio_freq,
sys/dev/al_eth/al_eth.c
949
al_eth_mac_addr_read(adapter->ec_base, 0, adapter->mac_addr);
sys/dev/al_eth/al_eth.c
955
al_eth_function_reset(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
961
al_eth_board_params_get(adapter->mac_base, ¶ms);
sys/dev/al_eth/al_eth.c
962
al_eth_mac_addr_read(adapter->ec_base, 0, adapter->mac_addr);
sys/dev/al_eth/al_eth.c
963
if (adapter->board_type == ALPINE_INTEGRATED)
sys/dev/al_eth/al_eth.c
966
adapter->dev, adapter->mac_base);
sys/dev/al_eth/al_eth.c
970
adapter->internal_pcie_base, adapter->mac_base);
sys/dev/al_eth/al_eth.c
973
al_eth_board_params_set(adapter->mac_base, ¶ms);
sys/dev/al_eth/al_eth.c
974
al_eth_mac_addr_store(adapter->ec_base, 0, adapter->mac_addr);
sys/dev/al_eth/al_eth.c
980
al_eth_init_rings(struct al_eth_adapter *adapter)
sys/dev/al_eth/al_eth.c
984
for (i = 0; i < adapter->num_tx_queues; i++) {
sys/dev/al_eth/al_eth.c
985
struct al_eth_ring *ring = &adapter->tx_ring[i];
sys/dev/al_eth/al_eth.c
988
ring->dev = adapter->dev;
sys/dev/al_eth/al_eth.c
989
ring->adapter = adapter;
sys/dev/al_eth/al_eth.c
990
ring->netdev = adapter->netdev;
sys/dev/al_eth/al_eth.c
991
al_udma_q_handle_get(&adapter->hal_adapter.tx_udma, i,
sys/dev/al_eth/al_eth.c
993
ring->sw_count = adapter->tx_ring_count;
sys/dev/al_eth/al_eth.c
994
ring->hw_count = adapter->tx_descs_count;
sys/dev/al_eth/al_eth.c
995
ring->unmask_reg_offset = al_udma_iofic_unmask_offset_get((struct unit_regs *)adapter->udma_base, AL_UDMA_IOFIC_LEVEL_PRIMARY, AL_INT_GROUP_C);
sys/dev/al_eth/al_eth.c
999
for (i = 0; i < adapter->num_rx_queues; i++) {
sys/dev/al_eth/al_eth.h
106
struct al_eth_adapter *adapter;
sys/dev/al_eth/al_eth.h
282
#define AL_ETH_RXQ_IRQ_IDX(adapter, q) (1 + (q))
sys/dev/al_eth/al_eth.h
283
#define AL_ETH_TXQ_IRQ_IDX(adapter, q) (1 + (adapter)->num_rx_queues + (q))
sys/dev/al_eth/al_init_eth_kr.c
105
struct al_hal_eth_adapter *adapter;
sys/dev/al_eth/al_init_eth_kr.c
137
rc = al_eth_kr_an_init(kr_data->adapter, an_adv);
sys/dev/al_eth/al_init_eth_kr.c
140
kr_data->adapter->name, __func__);
sys/dev/al_eth/al_init_eth_kr.c
144
rc = al_eth_kr_an_start(kr_data->adapter, AL_ETH_AN__LT_LANE_0,
sys/dev/al_eth/al_init_eth_kr.c
148
kr_data->adapter->name, __func__);
sys/dev/al_eth/al_init_eth_kr.c
157
kr_data->adapter->name, __func__);
sys/dev/al_eth/al_init_eth_kr.c
162
al_eth_kr_an_status_check(kr_data->adapter, &page_received,
sys/dev/al_eth/al_init_eth_kr.c
168
kr_data->adapter->name, __func__);
sys/dev/al_eth/al_init_eth_kr.c
173
al_eth_kr_an_read_adv(kr_data->adapter, an_partner_adv);
sys/dev/al_eth/al_init_eth_kr.c
176
kr_data->adapter->name, __func__, error);
sys/dev/al_eth/al_init_eth_kr.c
309
if (al_eth_kr_receiver_frame_lock_get(kr_data->adapter,
sys/dev/al_eth/al_init_eth_kr.c
315
al_eth_lp_coeff_up_get(kr_data->adapter,
sys/dev/al_eth/al_init_eth_kr.c
430
if (al_eth_kr_receiver_frame_lock_get(kr_data->adapter,
sys/dev/al_eth/al_init_eth_kr.c
435
al_eth_lp_status_report_get(kr_data->adapter,
sys/dev/al_eth/al_init_eth_kr.c
447
if (al_eth_kr_startup_proto_prog_get(kr_data->adapter,
sys/dev/al_eth/al_init_eth_kr.c
634
kr_data->adapter->name, kr_data->curr_coeff);
sys/dev/al_eth/al_init_eth_kr.c
654
al_eth_receiver_ready_set(kr_data->adapter,
sys/dev/al_eth/al_init_eth_kr.c
673
" Qarray=%d/%d/%d\n", kr_data->adapter->name,
sys/dev/al_eth/al_init_eth_kr.c
686
al_eth_ld_coeff_up_set(kr_data->adapter, AL_ETH_AN__LT_LANE_0, &ldcoeff);
sys/dev/al_eth/al_init_eth_kr.c
687
al_eth_ld_status_report_set(kr_data->adapter, AL_ETH_AN__LT_LANE_0,
sys/dev/al_eth/al_init_eth_kr.c
704
al_eth_kr_lt_initialize(kr_data->adapter, AL_ETH_AN__LT_LANE_0);
sys/dev/al_eth/al_init_eth_kr.c
706
if (al_eth_kr_lt_frame_lock_wait(kr_data->adapter, AL_ETH_AN__LT_LANE_0,
sys/dev/al_eth/al_init_eth_kr.c
731
} while ((al_eth_kr_startup_proto_prog_get(kr_data->adapter,
sys/dev/al_eth/al_init_eth_kr.c
735
al_eth_kr_training_status_fail_get(kr_data->adapter,
sys/dev/al_eth/al_init_eth_kr.c
738
kr_data->adapter->name, cnt,
sys/dev/al_eth/al_init_eth_kr.c
742
kr_data->adapter->name,
sys/dev/al_eth/al_init_eth_kr.c
756
kr_data->adapter->name);
sys/dev/al_eth/al_init_eth_kr.c
766
al_eth_kr_lt_stop(kr_data->adapter, AL_ETH_AN__LT_LANE_0);
sys/dev/al_eth/al_init_eth_kr.c
770
al_eth_kr_an_status_check(kr_data->adapter, &page_received,
sys/dev/al_eth/al_init_eth_kr.c
781
al_eth_kr_an_stop(kr_data->adapter);
sys/dev/al_eth/al_init_eth_kr.c
787
int al_eth_an_lt_execute(struct al_hal_eth_adapter *adapter,
sys/dev/al_eth/al_init_eth_kr.c
799
kr_data.adapter = adapter;
sys/dev/al_eth/al_init_eth_kr.c
815
al_eth_kr_lt_stop(adapter, AL_ETH_AN__LT_LANE_0);
sys/dev/al_eth/al_init_eth_kr.c
816
al_eth_kr_an_stop(adapter);
sys/dev/al_eth/al_init_eth_kr.c
822
al_eth_kr_lt_stop(adapter, AL_ETH_AN__LT_LANE_0);
sys/dev/al_eth/al_init_eth_kr.c
823
al_eth_kr_an_stop(adapter);
sys/dev/al_eth/al_init_eth_kr.c
830
al_eth_kr_lt_stop(adapter, AL_ETH_AN__LT_LANE_0);
sys/dev/al_eth/al_init_eth_kr.c
831
al_eth_kr_an_stop(adapter);
sys/dev/al_eth/al_init_eth_kr.h
58
int al_eth_an_lt_execute(struct al_hal_eth_adapter *adapter,
sys/dev/al_eth/al_init_eth_lm.c
1007
al_eth_gearbox_reset(lm_context->adapter, AL_TRUE, AL_TRUE);
sys/dev/al_eth/al_init_eth_lm.c
1047
al_eth_link_status_clear(lm_context->adapter);
sys/dev/al_eth/al_init_eth_lm.c
1048
al_eth_link_status_get(lm_context->adapter, &status);
sys/dev/al_eth/al_init_eth_lm.c
1052
al_eth_led_set(lm_context->adapter, AL_TRUE);
sys/dev/al_eth/al_init_eth_lm.c
1059
al_eth_led_set(lm_context->adapter, AL_FALSE);
sys/dev/al_eth/al_init_eth_lm.c
1066
al_eth_led_set(lm_context->adapter, AL_FALSE);
sys/dev/al_eth/al_init_eth_lm.c
1083
lm_context->adapter = params->adapter;
sys/dev/al_eth/al_init_eth_lm.c
1186
al_eth_link_status_get(lm_context->adapter, &status);
sys/dev/al_eth/al_init_eth_lm.c
1192
al_eth_led_set(lm_context->adapter, AL_TRUE);
sys/dev/al_eth/al_init_eth_lm.c
1205
al_eth_link_status_get(lm_context->adapter, &status);
sys/dev/al_eth/al_init_eth_lm.c
1222
al_eth_led_set(lm_context->adapter, AL_FALSE);
sys/dev/al_eth/al_init_eth_lm.c
1352
al_eth_gearbox_reset(lm_context->adapter, AL_FALSE, AL_TRUE);
sys/dev/al_eth/al_init_eth_lm.c
1373
ret = al_eth_an_lt_execute(lm_context->adapter,
sys/dev/al_eth/al_init_eth_lm.h
135
struct al_hal_eth_adapter *adapter;
sys/dev/al_eth/al_init_eth_lm.h
200
struct al_hal_eth_adapter *adapter;
sys/dev/cxgb/common/cxgb_ael1002.c
120
t3_set_reg_field(phy->adapter, A_T3DBG_GPIO_EN, 0, tx_on_gpio);
sys/dev/cxgb/common/cxgb_ael1002.c
1389
cphy_init(phy, pinfo->adapter, pinfo, phy_addr, &ael2005_ops, mdio_ops,
sys/dev/cxgb/common/cxgb_ael1002.c
150
CH_WARN(phy->adapter, "PHY %u i2c read of dev.addr %x.%x timed out\n",
sys/dev/cxgb/common/cxgb_ael1002.c
180
CH_WARN(phy->adapter, "PHY %u i2c Write of dev.addr %x.%x = %#x timed out\n",
sys/dev/cxgb/common/cxgb_ael1002.c
2141
cphy_init(phy, pinfo->adapter, pinfo, phy_addr, &ael2020_ops, mdio_ops,
sys/dev/cxgb/common/cxgb_ael1002.c
2220
cphy_init(phy, pinfo->adapter, pinfo, phy_addr, &qt2045_ops, mdio_ops,
sys/dev/cxgb/common/cxgb_ael1002.c
2244
adapter_t *adapter = phy->adapter;
sys/dev/cxgb/common/cxgb_ael1002.c
2246
status = t3_read_reg(adapter,
sys/dev/cxgb/common/cxgb_ael1002.c
2248
t3_read_reg(adapter,
sys/dev/cxgb/common/cxgb_ael1002.c
2250
t3_read_reg(adapter,
sys/dev/cxgb/common/cxgb_ael1002.c
2252
t3_read_reg(adapter,
sys/dev/cxgb/common/cxgb_ael1002.c
2298
cphy_init(&pinfo->phy, pinfo->adapter, pinfo, phy_addr, &xaui_direct_ops, mdio_ops,
sys/dev/cxgb/common/cxgb_ael1002.c
349
cphy_init(phy, pinfo->adapter, pinfo, phy_addr, &ael1002_ops, mdio_ops,
sys/dev/cxgb/common/cxgb_ael1002.c
370
t3_set_reg_field(phy->adapter, A_T3DBG_GPIO_EN,
sys/dev/cxgb/common/cxgb_ael1002.c
375
t3_set_reg_field(phy->adapter, A_T3DBG_GPIO_EN,
sys/dev/cxgb/common/cxgb_ael1002.c
430
cphy_init(phy, pinfo->adapter, pinfo, phy_addr, &ael1006_ops, mdio_ops,
sys/dev/cxgb/common/cxgb_aq100x.c
181
CH_WARN(phy->adapter, "PHY%d: temperature is now %dC\n",
sys/dev/cxgb/common/cxgb_aq100x.c
184
t3_set_reg_field(phy->adapter, A_T3DBG_GPIO_EN,
sys/dev/cxgb/common/cxgb_aq100x.c
194
CH_WARN(phy->adapter, "PHY%d: unhandled vendor interrupt"
sys/dev/cxgb/common/cxgb_aq100x.c
219
CH_WARN(phy->adapter, "PHY%d: unhandled interrupt (0x%x)\n",
sys/dev/cxgb/common/cxgb_aq100x.c
246
CH_WARN(phy->adapter, "PHY%d: power-up timed out (0x%x).\n",
sys/dev/cxgb/common/cxgb_aq100x.c
469
adapter_t *adapter = pinfo->adapter;
sys/dev/cxgb/common/cxgb_aq100x.c
471
cphy_init(&pinfo->phy, adapter, pinfo, phy_addr, &aq100x_ops, mdio_ops,
sys/dev/cxgb/common/cxgb_aq100x.c
480
t3_set_reg_field(adapter, A_T3DBG_GPIO_EN, gpio, 0);
sys/dev/cxgb/common/cxgb_aq100x.c
482
t3_set_reg_field(adapter, A_T3DBG_GPIO_EN, gpio, gpio);
sys/dev/cxgb/common/cxgb_aq100x.c
495
CH_WARN(adapter, "PHY%d: reset failed (0x%x, 0x%x).\n",
sys/dev/cxgb/common/cxgb_aq100x.c
505
CH_WARN(adapter, "PHY%d: reset timed out (0x%x).\n",
sys/dev/cxgb/common/cxgb_aq100x.c
514
CH_WARN(adapter, "PHY%d: unknown firmware %d.%d\n", phy_addr,
sys/dev/cxgb/common/cxgb_aq100x.c
520
CH_WARN(adapter, "PHY%d does not start in low power mode.\n",
sys/dev/cxgb/common/cxgb_aq100x.c
530
CH_WARN(adapter, "PHY%d: incorrect XAUI settings "
sys/dev/cxgb/common/cxgb_aq100x.c
535
CH_WARN(adapter, "PHY%d: incorrect 1000-X settings "
sys/dev/cxgb/common/cxgb_common.h
148
int (*read)(adapter_t *adapter, int phy_addr, int mmd_addr,
sys/dev/cxgb/common/cxgb_common.h
150
int (*write)(adapter_t *adapter, int phy_addr, int mmd_addr,
sys/dev/cxgb/common/cxgb_common.h
446
adapter_t *adapter;
sys/dev/cxgb/common/cxgb_common.h
460
adapter_t *adapter; /* backpointer to adapter */
sys/dev/cxgb/common/cxgb_common.h
474
adapter_t *adapter;
sys/dev/cxgb/common/cxgb_common.h
578
adapter_t *adapter; /* associated adapter */
sys/dev/cxgb/common/cxgb_common.h
583
int (*mdio_read)(adapter_t *adapter, int phy_addr, int mmd_addr,
sys/dev/cxgb/common/cxgb_common.h
585
int (*mdio_write)(adapter_t *adapter, int phy_addr, int mmd_addr,
sys/dev/cxgb/common/cxgb_common.h
593
return phy->mdio_read(phy->adapter, phy->addr, mmd, reg, valp);
sys/dev/cxgb/common/cxgb_common.h
599
return phy->mdio_write(phy->adapter, phy->addr, mmd, reg, val);
sys/dev/cxgb/common/cxgb_common.h
603
static inline void cphy_init(struct cphy *phy, adapter_t *adapter, pinfo_t *pinfo,
sys/dev/cxgb/common/cxgb_common.h
610
phy->adapter = adapter;
sys/dev/cxgb/common/cxgb_common.h
640
#define for_each_port(adapter, iter) \
sys/dev/cxgb/common/cxgb_common.h
641
for (iter = 0; iter < (adapter)->params.nports; ++iter)
sys/dev/cxgb/common/cxgb_common.h
677
void t3_write_regs(adapter_t *adapter, const struct addr_val_pair *p, int n,
sys/dev/cxgb/common/cxgb_common.h
679
int t3_wait_op_done_val(adapter_t *adapter, int reg, u32 mask, int polarity,
sys/dev/cxgb/common/cxgb_common.h
682
static inline int t3_wait_op_done(adapter_t *adapter, int reg, u32 mask,
sys/dev/cxgb/common/cxgb_common.h
685
return t3_wait_op_done_val(adapter, reg, mask, polarity, attempts,
sys/dev/cxgb/common/cxgb_common.h
700
void t3_intr_enable(adapter_t *adapter);
sys/dev/cxgb/common/cxgb_common.h
701
void t3_intr_disable(adapter_t *adapter);
sys/dev/cxgb/common/cxgb_common.h
702
void t3_intr_clear(adapter_t *adapter);
sys/dev/cxgb/common/cxgb_common.h
703
void t3_xgm_intr_enable(adapter_t *adapter, int idx);
sys/dev/cxgb/common/cxgb_common.h
704
void t3_xgm_intr_disable(adapter_t *adapter, int idx);
sys/dev/cxgb/common/cxgb_common.h
705
void t3_port_intr_enable(adapter_t *adapter, int idx);
sys/dev/cxgb/common/cxgb_common.h
706
void t3_port_intr_disable(adapter_t *adapter, int idx);
sys/dev/cxgb/common/cxgb_common.h
707
void t3_port_intr_clear(adapter_t *adapter, int idx);
sys/dev/cxgb/common/cxgb_common.h
708
int t3_slow_intr_handler(adapter_t *adapter);
sys/dev/cxgb/common/cxgb_common.h
710
void t3_link_changed(adapter_t *adapter, int port_id);
sys/dev/cxgb/common/cxgb_common.h
713
int t3_seeprom_read(adapter_t *adapter, u32 addr, u32 *data);
sys/dev/cxgb/common/cxgb_common.h
714
int t3_seeprom_write(adapter_t *adapter, u32 addr, u32 data);
sys/dev/cxgb/common/cxgb_common.h
715
int t3_seeprom_wp(adapter_t *adapter, int enable);
sys/dev/cxgb/common/cxgb_common.h
716
int t3_get_vpd_len(adapter_t *adapter, struct generic_vpd *vpd);
sys/dev/cxgb/common/cxgb_common.h
717
int t3_read_vpd(adapter_t *adapter, struct generic_vpd *vpd);
sys/dev/cxgb/common/cxgb_common.h
718
int t3_read_flash(adapter_t *adapter, unsigned int addr, unsigned int nwords,
sys/dev/cxgb/common/cxgb_common.h
720
int t3_get_tp_version(adapter_t *adapter, u32 *vers);
sys/dev/cxgb/common/cxgb_common.h
721
int t3_check_tpsram_version(adapter_t *adapter);
sys/dev/cxgb/common/cxgb_common.h
722
int t3_check_tpsram(adapter_t *adapter, const u8 *tp_ram, unsigned int size);
sys/dev/cxgb/common/cxgb_common.h
723
int t3_load_fw(adapter_t *adapter, const u8 *fw_data, unsigned int size);
sys/dev/cxgb/common/cxgb_common.h
724
int t3_get_fw_version(adapter_t *adapter, u32 *vers);
sys/dev/cxgb/common/cxgb_common.h
725
int t3_check_fw_version(adapter_t *adapter);
sys/dev/cxgb/common/cxgb_common.h
726
int t3_load_boot(adapter_t *adapter, u8 *fw_data, unsigned int size);
sys/dev/cxgb/common/cxgb_common.h
727
int t3_init_hw(adapter_t *adapter, u32 fw_params);
sys/dev/cxgb/common/cxgb_common.h
728
void mac_prep(struct cmac *mac, adapter_t *adapter, int index);
sys/dev/cxgb/common/cxgb_common.h
729
void early_hw_init(adapter_t *adapter, const struct adapter_info *ai);
sys/dev/cxgb/common/cxgb_common.h
730
int t3_reset_adapter(adapter_t *adapter);
sys/dev/cxgb/common/cxgb_common.h
731
int t3_prep_adapter(adapter_t *adapter, const struct adapter_info *ai, int reset);
sys/dev/cxgb/common/cxgb_common.h
733
void t3_led_ready(adapter_t *adapter);
sys/dev/cxgb/common/cxgb_common.h
734
void t3_fatal_err(adapter_t *adapter);
sys/dev/cxgb/common/cxgb_common.h
735
void t3_set_vlan_accel(adapter_t *adapter, unsigned int ports, int on);
sys/dev/cxgb/common/cxgb_common.h
739
void t3_config_rss(adapter_t *adapter, unsigned int rss_config, const u8 *cpus,
sys/dev/cxgb/common/cxgb_common.h
741
int t3_read_rss(adapter_t *adapter, u8 *lkup, u16 *map);
sys/dev/cxgb/common/cxgb_common.h
744
void t3_port_failover(adapter_t *adapter, int port);
sys/dev/cxgb/common/cxgb_common.h
745
void t3_failover_done(adapter_t *adapter, int port);
sys/dev/cxgb/common/cxgb_common.h
746
void t3_failover_clear(adapter_t *adapter);
sys/dev/cxgb/common/cxgb_common.h
768
void t3_mc5_prep(adapter_t *adapter, struct mc5 *mc5, int mode);
sys/dev/cxgb/common/cxgb_common.h
784
void t3_config_trace_filter(adapter_t *adapter, const struct trace_params *tp,
sys/dev/cxgb/common/cxgb_common.h
786
void t3_query_trace_filter(adapter_t *adapter, struct trace_params *tp,
sys/dev/cxgb/common/cxgb_common.h
796
int t3_get_up_la(adapter_t *adapter, u32 *stopped, u32 *index,
sys/dev/cxgb/common/cxgb_common.h
798
int t3_get_up_ioqs(adapter_t *adapter, u32 *size, void *data);
sys/dev/cxgb/common/cxgb_common.h
802
int t3_sge_init_ecntxt(adapter_t *adapter, unsigned int id, int gts_enable,
sys/dev/cxgb/common/cxgb_common.h
806
int t3_sge_init_flcntxt(adapter_t *adapter, unsigned int id, int gts_enable,
sys/dev/cxgb/common/cxgb_common.h
809
int t3_sge_init_rspcntxt(adapter_t *adapter, unsigned int id, int irq_vec_idx,
sys/dev/cxgb/common/cxgb_common.h
812
int t3_sge_init_cqcntxt(adapter_t *adapter, unsigned int id, u64 base_addr,
sys/dev/cxgb/common/cxgb_common.h
815
int t3_sge_enable_ecntxt(adapter_t *adapter, unsigned int id, int enable);
sys/dev/cxgb/common/cxgb_common.h
816
int t3_sge_disable_fl(adapter_t *adapter, unsigned int id);
sys/dev/cxgb/common/cxgb_common.h
817
int t3_sge_disable_rspcntxt(adapter_t *adapter, unsigned int id);
sys/dev/cxgb/common/cxgb_common.h
818
int t3_sge_disable_cqcntxt(adapter_t *adapter, unsigned int id);
sys/dev/cxgb/common/cxgb_common.h
819
int t3_sge_read_ecntxt(adapter_t *adapter, unsigned int id, u32 data[4]);
sys/dev/cxgb/common/cxgb_common.h
820
int t3_sge_read_fl(adapter_t *adapter, unsigned int id, u32 data[4]);
sys/dev/cxgb/common/cxgb_common.h
821
int t3_sge_read_cq(adapter_t *adapter, unsigned int id, u32 data[4]);
sys/dev/cxgb/common/cxgb_common.h
822
int t3_sge_read_rspq(adapter_t *adapter, unsigned int id, u32 data[4]);
sys/dev/cxgb/common/cxgb_common.h
823
int t3_sge_cqcntxt_op(adapter_t *adapter, unsigned int id, unsigned int op,
sys/dev/cxgb/common/cxgb_common.h
836
int t3_i2c_read8(adapter_t *adapter, int chained, u8 *valp);
sys/dev/cxgb/common/cxgb_common.h
837
int t3_i2c_write8(adapter_t *adapter, int chained, u8 val);
sys/dev/cxgb/common/cxgb_common.h
839
int t3_mi1_read(adapter_t *adapter, int phy_addr, int mmd_addr, int reg_addr,
sys/dev/cxgb/common/cxgb_common.h
841
int t3_mi1_write(adapter_t *adapter, int phy_addr, int mmd_addr, int reg_addr,
sys/dev/cxgb/common/cxgb_mc5.c
100
static inline void dbgi_wr_data3(adapter_t *adapter, u32 v1, u32 v2, u32 v3)
sys/dev/cxgb/common/cxgb_mc5.c
102
t3_write_reg(adapter, A_MC5_DB_DBGI_REQ_DATA0, v1);
sys/dev/cxgb/common/cxgb_mc5.c
103
t3_write_reg(adapter, A_MC5_DB_DBGI_REQ_DATA1, v2);
sys/dev/cxgb/common/cxgb_mc5.c
104
t3_write_reg(adapter, A_MC5_DB_DBGI_REQ_DATA2, v3);
sys/dev/cxgb/common/cxgb_mc5.c
107
static inline void dbgi_rd_rsp3(adapter_t *adapter, u32 *v1, u32 *v2, u32 *v3)
sys/dev/cxgb/common/cxgb_mc5.c
109
*v1 = t3_read_reg(adapter, A_MC5_DB_DBGI_RSP_DATA0);
sys/dev/cxgb/common/cxgb_mc5.c
110
*v2 = t3_read_reg(adapter, A_MC5_DB_DBGI_RSP_DATA1);
sys/dev/cxgb/common/cxgb_mc5.c
111
*v3 = t3_read_reg(adapter, A_MC5_DB_DBGI_RSP_DATA2);
sys/dev/cxgb/common/cxgb_mc5.c
119
static int mc5_write(adapter_t *adapter, u32 addr_lo, u32 cmd)
sys/dev/cxgb/common/cxgb_mc5.c
121
t3_write_reg(adapter, A_MC5_DB_DBGI_REQ_ADDR0, addr_lo);
sys/dev/cxgb/common/cxgb_mc5.c
122
if (mc5_cmd_write(adapter, cmd) == 0)
sys/dev/cxgb/common/cxgb_mc5.c
124
CH_ERR(adapter, "MC5 timeout writing to TCAM address 0x%x\n", addr_lo);
sys/dev/cxgb/common/cxgb_mc5.c
133
adapter_t *adap = mc5->adapter;
sys/dev/cxgb/common/cxgb_mc5.c
181
adapter_t *adap = mc5->adapter;
sys/dev/cxgb/common/cxgb_mc5.c
245
adapter_t *adap = mc5->adapter;
sys/dev/cxgb/common/cxgb_mc5.c
305
t3_set_reg_field(mc5->adapter, A_MC5_DB_CONFIG, F_PRTYEN | F_MBUSEN,
sys/dev/cxgb/common/cxgb_mc5.c
312
t3_set_reg_field(mc5->adapter, A_MC5_DB_CONFIG, F_DBGIEN,
sys/dev/cxgb/common/cxgb_mc5.c
333
adapter_t *adap = mc5->adapter;
sys/dev/cxgb/common/cxgb_mc5.c
395
adapter_t *adap = mc5->adapter;
sys/dev/cxgb/common/cxgb_mc5.c
430
adapter_t *adap = mc5->adapter;
sys/dev/cxgb/common/cxgb_mc5.c
471
void __devinit t3_mc5_prep(adapter_t *adapter, struct mc5 *mc5, int mode)
sys/dev/cxgb/common/cxgb_mc5.c
481
u32 cfg = t3_read_reg(adapter, A_MC5_DB_CONFIG);
sys/dev/cxgb/common/cxgb_mc5.c
483
mc5->adapter = adapter;
sys/dev/cxgb/common/cxgb_mc5.c
93
static int mc5_cmd_write(adapter_t *adapter, u32 cmd)
sys/dev/cxgb/common/cxgb_mc5.c
95
t3_write_reg(adapter, A_MC5_DB_DBGI_REQ_CMD, cmd);
sys/dev/cxgb/common/cxgb_mc5.c
96
return t3_wait_op_done(adapter, A_MC5_DB_DBGI_RSP_STATUS,
sys/dev/cxgb/common/cxgb_mv88e1xxx.c
303
cphy_init(phy, pinfo->adapter, pinfo, phy_addr, &mv88e1xxx_ops, mdio_ops,
sys/dev/cxgb/common/cxgb_t3_hw.c
100
void t3_set_reg_field(adapter_t *adapter, unsigned int addr, u32 mask, u32 val)
sys/dev/cxgb/common/cxgb_t3_hw.c
1003
static int flash_wait_op(adapter_t *adapter, int attempts, int delay)
sys/dev/cxgb/common/cxgb_t3_hw.c
1009
if ((ret = sf1_write(adapter, 1, 1, SF_RD_STATUS)) != 0 ||
sys/dev/cxgb/common/cxgb_t3_hw.c
1010
(ret = sf1_read(adapter, 1, 0, &status)) != 0)
sys/dev/cxgb/common/cxgb_t3_hw.c
102
u32 v = t3_read_reg(adapter, addr) & ~mask;
sys/dev/cxgb/common/cxgb_t3_hw.c
1034
int t3_read_flash(adapter_t *adapter, unsigned int addr, unsigned int nwords,
sys/dev/cxgb/common/cxgb_t3_hw.c
104
t3_write_reg(adapter, addr, v | val);
sys/dev/cxgb/common/cxgb_t3_hw.c
1044
if ((ret = sf1_write(adapter, 4, 1, addr)) != 0 ||
sys/dev/cxgb/common/cxgb_t3_hw.c
1045
(ret = sf1_read(adapter, 1, 1, data)) != 0)
sys/dev/cxgb/common/cxgb_t3_hw.c
1049
ret = sf1_read(adapter, 4, nwords > 1, data);
sys/dev/cxgb/common/cxgb_t3_hw.c
105
(void) t3_read_reg(adapter, addr); /* flush */
sys/dev/cxgb/common/cxgb_t3_hw.c
1072
static int t3_write_flash(adapter_t *adapter, unsigned int addr,
sys/dev/cxgb/common/cxgb_t3_hw.c
1085
if ((ret = sf1_write(adapter, 1, 0, SF_WR_ENABLE)) != 0 ||
sys/dev/cxgb/common/cxgb_t3_hw.c
1086
(ret = sf1_write(adapter, 4, 1, val)) != 0)
sys/dev/cxgb/common/cxgb_t3_hw.c
1096
ret = sf1_write(adapter, c, c != left, val);
sys/dev/cxgb/common/cxgb_t3_hw.c
1100
if ((ret = flash_wait_op(adapter, 5, 1)) != 0)
sys/dev/cxgb/common/cxgb_t3_hw.c
1104
ret = t3_read_flash(adapter, addr & ~0xff, ARRAY_SIZE(buf), buf,
sys/dev/cxgb/common/cxgb_t3_hw.c
1121
int t3_get_tp_version(adapter_t *adapter, u32 *vers)
sys/dev/cxgb/common/cxgb_t3_hw.c
1126
t3_write_reg(adapter, A_TP_EMBED_OP_FIELD0, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
1127
ret = t3_wait_op_done(adapter, A_TP_EMBED_OP_FIELD0,
sys/dev/cxgb/common/cxgb_t3_hw.c
1132
*vers = t3_read_reg(adapter, A_TP_EMBED_OP_FIELD1);
sys/dev/cxgb/common/cxgb_t3_hw.c
1142
int t3_check_tpsram_version(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
1148
if (adapter->params.rev == T3_REV_A)
sys/dev/cxgb/common/cxgb_t3_hw.c
1152
ret = t3_get_tp_version(adapter, &vers);
sys/dev/cxgb/common/cxgb_t3_hw.c
1156
vers = t3_read_reg(adapter, A_TP_EMBED_OP_FIELD1);
sys/dev/cxgb/common/cxgb_t3_hw.c
1164
CH_ERR(adapter, "found wrong TP version (%u.%u), "
sys/dev/cxgb/common/cxgb_t3_hw.c
1181
int t3_check_tpsram(adapter_t *adapter, const u8 *tp_sram, unsigned int size)
sys/dev/cxgb/common/cxgb_t3_hw.c
1191
CH_ERR(adapter, "corrupted protocol SRAM image, checksum %u\n",
sys/dev/cxgb/common/cxgb_t3_hw.c
1213
int t3_get_fw_version(adapter_t *adapter, u32 *vers)
sys/dev/cxgb/common/cxgb_t3_hw.c
1215
int ret = t3_read_flash(adapter, FW_VERS_ADDR, 1, vers, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
1219
return t3_read_flash(adapter, FW_VERS_ADDR_PRE8, 1, vers, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
1229
int t3_check_fw_version(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
1235
ret = t3_get_fw_version(adapter, &vers);
sys/dev/cxgb/common/cxgb_t3_hw.c
1248
CH_WARN(adapter, "found old FW minor version(%u.%u), "
sys/dev/cxgb/common/cxgb_t3_hw.c
1252
CH_WARN(adapter, "found newer FW version(%u.%u), "
sys/dev/cxgb/common/cxgb_t3_hw.c
1268
static int t3_flash_erase_sectors(adapter_t *adapter, int start, int end)
sys/dev/cxgb/common/cxgb_t3_hw.c
1273
if ((ret = sf1_write(adapter, 1, 0, SF_WR_ENABLE)) != 0 ||
sys/dev/cxgb/common/cxgb_t3_hw.c
1274
(ret = sf1_write(adapter, 4, 0,
sys/dev/cxgb/common/cxgb_t3_hw.c
1276
(ret = flash_wait_op(adapter, 5, 500)) != 0)
sys/dev/cxgb/common/cxgb_t3_hw.c
1294
int t3_load_fw(adapter_t *adapter, const u8 *fw_data, unsigned int size)
sys/dev/cxgb/common/cxgb_t3_hw.c
1319
CH_ERR(adapter, "corrupted firmware image, checksum %u\n",
sys/dev/cxgb/common/cxgb_t3_hw.c
1324
ret = t3_flash_erase_sectors(adapter, fw_sector, fw_sector);
sys/dev/cxgb/common/cxgb_t3_hw.c
1332
ret = t3_write_flash(adapter, addr, chunk_size, fw_data, 1);
sys/dev/cxgb/common/cxgb_t3_hw.c
1341
ret = t3_write_flash(adapter, fw_version_addr, 4, fw_data, 1);
sys/dev/cxgb/common/cxgb_t3_hw.c
1344
CH_ERR(adapter, "firmware download failed, error %d\n", ret);
sys/dev/cxgb/common/cxgb_t3_hw.c
1358
int t3_load_boot(adapter_t *adapter, u8 *boot_data, unsigned int size)
sys/dev/cxgb/common/cxgb_t3_hw.c
1372
CH_ERR(adapter, "boot image too small/large\n");
sys/dev/cxgb/common/cxgb_t3_hw.c
1376
CH_ERR(adapter, "boot image missing signature\n");
sys/dev/cxgb/common/cxgb_t3_hw.c
1380
CH_ERR(adapter, "boot image header length != image length\n");
sys/dev/cxgb/common/cxgb_t3_hw.c
1384
ret = t3_flash_erase_sectors(adapter, boot_sector, boot_end);
sys/dev/cxgb/common/cxgb_t3_hw.c
1391
ret = t3_write_flash(adapter, addr, chunk_size, boot_data, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
1402
CH_ERR(adapter, "boot image download failed, error %d\n", ret);
sys/dev/cxgb/common/cxgb_t3_hw.c
1442
*rx_cfg = t3_read_reg(mac->adapter, A_XGM_RX_CFG + mac->offset);
sys/dev/cxgb/common/cxgb_t3_hw.c
1443
t3_set_reg_field(mac->adapter, A_XGM_RX_CFG + mac->offset,
sys/dev/cxgb/common/cxgb_t3_hw.c
1447
*rx_hash_high = t3_read_reg(mac->adapter, A_XGM_RX_HASH_HIGH +
sys/dev/cxgb/common/cxgb_t3_hw.c
1449
t3_write_reg(mac->adapter, A_XGM_RX_HASH_HIGH + mac->offset, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
1451
*rx_hash_low = t3_read_reg(mac->adapter, A_XGM_RX_HASH_LOW +
sys/dev/cxgb/common/cxgb_t3_hw.c
1453
t3_write_reg(mac->adapter, A_XGM_RX_HASH_LOW + mac->offset, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
1463
t3_set_reg_field(mac->adapter, A_XGM_RX_CFG + mac->offset,
sys/dev/cxgb/common/cxgb_t3_hw.c
1466
t3_write_reg(mac->adapter, A_XGM_RX_HASH_HIGH + mac->offset,
sys/dev/cxgb/common/cxgb_t3_hw.c
1468
t3_write_reg(mac->adapter, A_XGM_RX_HASH_LOW + mac->offset,
sys/dev/cxgb/common/cxgb_t3_hw.c
1472
static int t3_detect_link_fault(adapter_t *adapter, int port_id)
sys/dev/cxgb/common/cxgb_t3_hw.c
1474
struct port_info *pi = adap2pinfo(adapter, port_id);
sys/dev/cxgb/common/cxgb_t3_hw.c
148
adapter_t *adap = mc7->adapter;
sys/dev/cxgb/common/cxgb_t3_hw.c
1481
t3_write_reg(adapter, A_XGM_RX_CTRL + mac->offset, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
1484
(void) t3_read_reg(adapter, A_XGM_INT_STATUS + mac->offset);
sys/dev/cxgb/common/cxgb_t3_hw.c
1485
t3_xgm_intr_enable(adapter, port_id);
sys/dev/cxgb/common/cxgb_t3_hw.c
1488
t3_write_reg(adapter, A_XGM_RX_CTRL + mac->offset, F_RXEN);
sys/dev/cxgb/common/cxgb_t3_hw.c
1491
link_fault = t3_read_reg(adapter, A_XGM_INT_STATUS + mac->offset);
sys/dev/cxgb/common/cxgb_t3_hw.c
1495
static void t3_clear_faults(adapter_t *adapter, int port_id)
sys/dev/cxgb/common/cxgb_t3_hw.c
1497
struct port_info *pi = adap2pinfo(adapter, port_id);
sys/dev/cxgb/common/cxgb_t3_hw.c
1500
if (adapter->params.nports <= 2) {
sys/dev/cxgb/common/cxgb_t3_hw.c
1501
t3_xgm_intr_disable(adapter, pi->port_id);
sys/dev/cxgb/common/cxgb_t3_hw.c
1502
t3_read_reg(adapter, A_XGM_INT_STATUS + mac->offset);
sys/dev/cxgb/common/cxgb_t3_hw.c
1503
t3_write_reg(adapter, A_XGM_INT_CAUSE + mac->offset, F_XGM_INT);
sys/dev/cxgb/common/cxgb_t3_hw.c
1504
t3_set_reg_field(adapter, A_XGM_INT_ENABLE + mac->offset,
sys/dev/cxgb/common/cxgb_t3_hw.c
1506
t3_xgm_intr_enable(adapter, pi->port_id);
sys/dev/cxgb/common/cxgb_t3_hw.c
1519
void t3_link_changed(adapter_t *adapter, int port_id)
sys/dev/cxgb/common/cxgb_t3_hw.c
1522
struct port_info *pi = adap2pinfo(adapter, port_id);
sys/dev/cxgb/common/cxgb_t3_hw.c
1560
if (adapter->params.nports <= 2 &&
sys/dev/cxgb/common/cxgb_t3_hw.c
1563
link_fault = t3_detect_link_fault(adapter, port_id);
sys/dev/cxgb/common/cxgb_t3_hw.c
1570
if (uses_xaui(adapter)) {
sys/dev/cxgb/common/cxgb_t3_hw.c
1571
if (adapter->params.rev >= T3_REV_C)
sys/dev/cxgb/common/cxgb_t3_hw.c
1583
t3_clear_faults(adapter, port_id);
sys/dev/cxgb/common/cxgb_t3_hw.c
1602
if (adapter->params.rev > 0 && uses_xaui(adapter)) {
sys/dev/cxgb/common/cxgb_t3_hw.c
1604
if (adapter->params.rev >= T3_REV_C)
sys/dev/cxgb/common/cxgb_t3_hw.c
1609
t3_write_reg(adapter, A_XGM_XAUI_ACT_CTRL + mac->offset,
sys/dev/cxgb/common/cxgb_t3_hw.c
1614
t3_set_reg_field(adapter, A_XGM_TXFIFO_CFG + mac->offset,
sys/dev/cxgb/common/cxgb_t3_hw.c
1618
t3_set_reg_field(adapter, A_XGM_STAT_CTRL + mac->offset,
sys/dev/cxgb/common/cxgb_t3_hw.c
1620
t3_clear_faults(adapter, port_id);
sys/dev/cxgb/common/cxgb_t3_hw.c
1626
if (adapter->params.rev > 0 && uses_xaui(adapter)) {
sys/dev/cxgb/common/cxgb_t3_hw.c
1627
t3_write_reg(adapter,
sys/dev/cxgb/common/cxgb_t3_hw.c
1631
t3_xgm_intr_disable(adapter, pi->port_id);
sys/dev/cxgb/common/cxgb_t3_hw.c
1632
if (adapter->params.nports <= 2) {
sys/dev/cxgb/common/cxgb_t3_hw.c
1633
t3_set_reg_field(adapter,
sys/dev/cxgb/common/cxgb_t3_hw.c
1643
t3_set_reg_field(adapter,
sys/dev/cxgb/common/cxgb_t3_hw.c
1645
t3_write_reg(adapter, A_XGM_RX_CTRL + mac->offset, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
1646
t3_write_reg(adapter,
sys/dev/cxgb/common/cxgb_t3_hw.c
1648
t3_write_reg(adapter,
sys/dev/cxgb/common/cxgb_t3_hw.c
1653
t3_os_link_changed(adapter, port_id, link_ok, speed, duplex, fc,
sys/dev/cxgb/common/cxgb_t3_hw.c
1695
if (!is_10G(phy->adapter))
sys/dev/cxgb/common/cxgb_t3_hw.c
1715
void t3_set_vlan_accel(adapter_t *adapter, unsigned int ports, int on)
sys/dev/cxgb/common/cxgb_t3_hw.c
1717
t3_set_reg_field(adapter, A_TP_OUT_CONFIG,
sys/dev/cxgb/common/cxgb_t3_hw.c
1744
static int t3_handle_intr_status(adapter_t *adapter, unsigned int reg,
sys/dev/cxgb/common/cxgb_t3_hw.c
1750
unsigned int status = t3_read_reg(adapter, reg) & mask;
sys/dev/cxgb/common/cxgb_t3_hw.c
1756
CH_ALERT(adapter, "%s (0x%x)\n",
sys/dev/cxgb/common/cxgb_t3_hw.c
1760
CH_WARN(adapter, "%s (0x%x)\n",
sys/dev/cxgb/common/cxgb_t3_hw.c
1766
t3_write_reg(adapter, reg, status);
sys/dev/cxgb/common/cxgb_t3_hw.c
1828
static void pci_intr_handler(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
1856
if (t3_handle_intr_status(adapter, A_PCIX_INT_CAUSE, PCIX_INTR_MASK,
sys/dev/cxgb/common/cxgb_t3_hw.c
1857
pcix1_intr_info, adapter->irq_stats))
sys/dev/cxgb/common/cxgb_t3_hw.c
1858
t3_fatal_err(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
1864
static void pcie_intr_handler(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
1886
if (t3_read_reg(adapter, A_PCIE_INT_CAUSE) & F_PEXERR)
sys/dev/cxgb/common/cxgb_t3_hw.c
1887
CH_ALERT(adapter, "PEX error code 0x%x\n",
sys/dev/cxgb/common/cxgb_t3_hw.c
1888
t3_read_reg(adapter, A_PCIE_PEX_ERR));
sys/dev/cxgb/common/cxgb_t3_hw.c
1890
if (t3_handle_intr_status(adapter, A_PCIE_INT_CAUSE, PCIE_INTR_MASK,
sys/dev/cxgb/common/cxgb_t3_hw.c
1891
pcie_intr_info, adapter->irq_stats))
sys/dev/cxgb/common/cxgb_t3_hw.c
1892
t3_fatal_err(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
1898
static void tp_intr_handler(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
1913
if (t3_handle_intr_status(adapter, A_TP_INT_CAUSE, 0xffffffff,
sys/dev/cxgb/common/cxgb_t3_hw.c
1914
adapter->params.rev < T3_REV_C ?
sys/dev/cxgb/common/cxgb_t3_hw.c
1916
t3_fatal_err(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
1922
static void cim_intr_handler(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
1952
if (t3_handle_intr_status(adapter, A_CIM_HOST_INT_CAUSE, CIM_INTR_MASK,
sys/dev/cxgb/common/cxgb_t3_hw.c
1954
t3_fatal_err(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
1960
static void ulprx_intr_handler(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
1974
if (t3_handle_intr_status(adapter, A_ULPRX_INT_CAUSE, 0xffffffff,
sys/dev/cxgb/common/cxgb_t3_hw.c
1976
t3_fatal_err(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
1982
static void ulptx_intr_handler(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
1993
if (t3_handle_intr_status(adapter, A_ULPTX_INT_CAUSE, 0xffffffff,
sys/dev/cxgb/common/cxgb_t3_hw.c
1994
ulptx_intr_info, adapter->irq_stats))
sys/dev/cxgb/common/cxgb_t3_hw.c
1995
t3_fatal_err(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2010
static void pmtx_intr_handler(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
2023
if (t3_handle_intr_status(adapter, A_PM1_TX_INT_CAUSE, 0xffffffff,
sys/dev/cxgb/common/cxgb_t3_hw.c
2025
t3_fatal_err(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2040
static void pmrx_intr_handler(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
205
int t3_i2c_read8(adapter_t *adapter, int chained, u8 *valp)
sys/dev/cxgb/common/cxgb_t3_hw.c
2053
if (t3_handle_intr_status(adapter, A_PM1_RX_INT_CAUSE, 0xffffffff,
sys/dev/cxgb/common/cxgb_t3_hw.c
2055
t3_fatal_err(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2061
static void cplsw_intr_handler(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
2073
if (t3_handle_intr_status(adapter, A_CPL_INTR_CAUSE, 0xffffffff,
sys/dev/cxgb/common/cxgb_t3_hw.c
2075
t3_fatal_err(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2081
static void mps_intr_handler(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
2088
if (t3_handle_intr_status(adapter, A_MPS_INT_CAUSE, 0xffffffff,
sys/dev/cxgb/common/cxgb_t3_hw.c
209
MDIO_LOCK(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2090
t3_fatal_err(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
210
t3_write_reg(adapter, A_I2C_OP,
sys/dev/cxgb/common/cxgb_t3_hw.c
2100
adapter_t *adapter = mc7->adapter;
sys/dev/cxgb/common/cxgb_t3_hw.c
2101
u32 cause = t3_read_reg(adapter, mc7->offset + A_MC7_INT_CAUSE);
sys/dev/cxgb/common/cxgb_t3_hw.c
2105
CH_WARN(adapter, "%s MC7 correctable error at addr 0x%x, "
sys/dev/cxgb/common/cxgb_t3_hw.c
2107
t3_read_reg(adapter, mc7->offset + A_MC7_CE_ADDR),
sys/dev/cxgb/common/cxgb_t3_hw.c
2108
t3_read_reg(adapter, mc7->offset + A_MC7_CE_DATA0),
sys/dev/cxgb/common/cxgb_t3_hw.c
2109
t3_read_reg(adapter, mc7->offset + A_MC7_CE_DATA1),
sys/dev/cxgb/common/cxgb_t3_hw.c
2110
t3_read_reg(adapter, mc7->offset + A_MC7_CE_DATA2));
sys/dev/cxgb/common/cxgb_t3_hw.c
2115
CH_ALERT(adapter, "%s MC7 uncorrectable error at addr 0x%x, "
sys/dev/cxgb/common/cxgb_t3_hw.c
2117
t3_read_reg(adapter, mc7->offset + A_MC7_UE_ADDR),
sys/dev/cxgb/common/cxgb_t3_hw.c
2118
t3_read_reg(adapter, mc7->offset + A_MC7_UE_DATA0),
sys/dev/cxgb/common/cxgb_t3_hw.c
2119
t3_read_reg(adapter, mc7->offset + A_MC7_UE_DATA1),
sys/dev/cxgb/common/cxgb_t3_hw.c
212
ret = t3_wait_op_done_val(adapter, A_I2C_OP, F_I2C_BUSY, 0,
sys/dev/cxgb/common/cxgb_t3_hw.c
2120
t3_read_reg(adapter, mc7->offset + A_MC7_UE_DATA2));
sys/dev/cxgb/common/cxgb_t3_hw.c
2125
CH_ALERT(adapter, "%s MC7 parity error 0x%x\n",
sys/dev/cxgb/common/cxgb_t3_hw.c
2132
if (adapter->params.rev > 0)
sys/dev/cxgb/common/cxgb_t3_hw.c
2133
addr = t3_read_reg(adapter,
sys/dev/cxgb/common/cxgb_t3_hw.c
2136
CH_ALERT(adapter, "%s MC7 address error: 0x%x\n",
sys/dev/cxgb/common/cxgb_t3_hw.c
2141
t3_fatal_err(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2143
t3_write_reg(adapter, mc7->offset + A_MC7_INT_CAUSE, cause);
sys/dev/cxgb/common/cxgb_t3_hw.c
216
*valp = G_I2C_DATA(t3_read_reg(adapter, A_I2C_DATA));
sys/dev/cxgb/common/cxgb_t3_hw.c
218
MDIO_UNLOCK(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2208
static int phy_intr_handler(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
2210
u32 i, cause = t3_read_reg(adapter, A_T3DBG_INT_CAUSE);
sys/dev/cxgb/common/cxgb_t3_hw.c
2212
for_each_port(adapter, i) {
sys/dev/cxgb/common/cxgb_t3_hw.c
2213
struct port_info *p = adap2pinfo(adapter, i);
sys/dev/cxgb/common/cxgb_t3_hw.c
2218
if (cause & (1 << adapter_info(adapter)->gpio_intr[i])) {
sys/dev/cxgb/common/cxgb_t3_hw.c
2226
t3_os_phymod_changed(adapter, i);
sys/dev/cxgb/common/cxgb_t3_hw.c
2228
CH_WARN(adapter, "Operation affected due to "
sys/dev/cxgb/common/cxgb_t3_hw.c
2234
t3_write_reg(adapter, A_T3DBG_INT_CAUSE, cause);
sys/dev/cxgb/common/cxgb_t3_hw.c
2246
int t3_slow_intr_handler(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
2248
u32 cause = t3_read_reg(adapter, A_PL_INT_CAUSE0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2250
cause &= adapter->slow_intr_mask;
sys/dev/cxgb/common/cxgb_t3_hw.c
2254
if (is_pcie(adapter))
sys/dev/cxgb/common/cxgb_t3_hw.c
2255
pcie_intr_handler(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2257
pci_intr_handler(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2260
t3_sge_err_intr_handler(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2262
mc7_intr_handler(&adapter->pmrx);
sys/dev/cxgb/common/cxgb_t3_hw.c
2264
mc7_intr_handler(&adapter->pmtx);
sys/dev/cxgb/common/cxgb_t3_hw.c
2266
mc7_intr_handler(&adapter->cm);
sys/dev/cxgb/common/cxgb_t3_hw.c
2268
cim_intr_handler(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2270
tp_intr_handler(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2272
ulprx_intr_handler(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2274
ulptx_intr_handler(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2276
pmrx_intr_handler(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2278
pmtx_intr_handler(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2280
cplsw_intr_handler(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2282
mps_intr_handler(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2284
t3_mc5_intr_handler(&adapter->mc5);
sys/dev/cxgb/common/cxgb_t3_hw.c
2286
mac_intr_handler(adapter, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2288
mac_intr_handler(adapter, 1);
sys/dev/cxgb/common/cxgb_t3_hw.c
229
int t3_i2c_write8(adapter_t *adapter, int chained, u8 val)
sys/dev/cxgb/common/cxgb_t3_hw.c
2290
phy_intr_handler(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2293
t3_write_reg(adapter, A_PL_INT_CAUSE0, cause);
sys/dev/cxgb/common/cxgb_t3_hw.c
2294
(void) t3_read_reg(adapter, A_PL_INT_CAUSE0); /* flush */
sys/dev/cxgb/common/cxgb_t3_hw.c
2317
void t3_intr_enable(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
233
MDIO_LOCK(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2333
adapter->slow_intr_mask = PL_INTR_MASK;
sys/dev/cxgb/common/cxgb_t3_hw.c
2335
t3_write_regs(adapter, intr_en_avp, ARRAY_SIZE(intr_en_avp), 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2336
t3_write_reg(adapter, A_TP_INT_ENABLE,
sys/dev/cxgb/common/cxgb_t3_hw.c
2337
adapter->params.rev >= T3_REV_C ? 0x2bfffff : 0x3bfffff);
sys/dev/cxgb/common/cxgb_t3_hw.c
2338
t3_write_reg(adapter, A_SG_INT_ENABLE, SGE_INTR_MASK);
sys/dev/cxgb/common/cxgb_t3_hw.c
234
t3_write_reg(adapter, A_I2C_DATA, V_I2C_DATA(val));
sys/dev/cxgb/common/cxgb_t3_hw.c
2340
if (adapter->params.rev > 0) {
sys/dev/cxgb/common/cxgb_t3_hw.c
2341
t3_write_reg(adapter, A_CPL_INTR_ENABLE,
sys/dev/cxgb/common/cxgb_t3_hw.c
2343
t3_write_reg(adapter, A_ULPTX_INT_ENABLE,
sys/dev/cxgb/common/cxgb_t3_hw.c
2347
t3_write_reg(adapter, A_CPL_INTR_ENABLE, CPLSW_INTR_MASK);
sys/dev/cxgb/common/cxgb_t3_hw.c
2348
t3_write_reg(adapter, A_ULPTX_INT_ENABLE, ULPTX_INTR_MASK);
sys/dev/cxgb/common/cxgb_t3_hw.c
235
t3_write_reg(adapter, A_I2C_OP,
sys/dev/cxgb/common/cxgb_t3_hw.c
2351
t3_write_reg(adapter, A_T3DBG_INT_ENABLE, calc_gpio_intr(adapter));
sys/dev/cxgb/common/cxgb_t3_hw.c
2353
if (is_pcie(adapter))
sys/dev/cxgb/common/cxgb_t3_hw.c
2354
t3_write_reg(adapter, A_PCIE_INT_ENABLE, PCIE_INTR_MASK);
sys/dev/cxgb/common/cxgb_t3_hw.c
2356
t3_write_reg(adapter, A_PCIX_INT_ENABLE, PCIX_INTR_MASK);
sys/dev/cxgb/common/cxgb_t3_hw.c
2357
t3_write_reg(adapter, A_PL_INT_ENABLE0, adapter->slow_intr_mask);
sys/dev/cxgb/common/cxgb_t3_hw.c
2358
(void) t3_read_reg(adapter, A_PL_INT_ENABLE0); /* flush */
sys/dev/cxgb/common/cxgb_t3_hw.c
2368
void t3_intr_disable(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
237
ret = t3_wait_op_done_val(adapter, A_I2C_OP, F_I2C_BUSY, 0,
sys/dev/cxgb/common/cxgb_t3_hw.c
2370
t3_write_reg(adapter, A_PL_INT_ENABLE0, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2371
(void) t3_read_reg(adapter, A_PL_INT_ENABLE0); /* flush */
sys/dev/cxgb/common/cxgb_t3_hw.c
2372
adapter->slow_intr_mask = 0;
sys/dev/cxgb/common/cxgb_t3_hw.c
2381
void t3_intr_clear(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
2404
for_each_port(adapter, i)
sys/dev/cxgb/common/cxgb_t3_hw.c
2405
t3_port_intr_clear(adapter, i);
sys/dev/cxgb/common/cxgb_t3_hw.c
2408
t3_write_reg(adapter, cause_reg_addr[i], 0xffffffff);
sys/dev/cxgb/common/cxgb_t3_hw.c
241
MDIO_UNLOCK(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2410
if (is_pcie(adapter))
sys/dev/cxgb/common/cxgb_t3_hw.c
2411
t3_write_reg(adapter, A_PCIE_PEX_ERR, 0xffffffff);
sys/dev/cxgb/common/cxgb_t3_hw.c
2412
t3_write_reg(adapter, A_PL_INT_CAUSE0, 0xffffffff);
sys/dev/cxgb/common/cxgb_t3_hw.c
2413
(void) t3_read_reg(adapter, A_PL_INT_CAUSE0); /* flush */
sys/dev/cxgb/common/cxgb_t3_hw.c
2416
void t3_xgm_intr_enable(adapter_t *adapter, int idx)
sys/dev/cxgb/common/cxgb_t3_hw.c
2418
struct port_info *pi = adap2pinfo(adapter, idx);
sys/dev/cxgb/common/cxgb_t3_hw.c
2420
t3_write_reg(adapter, A_XGM_XGM_INT_ENABLE + pi->mac.offset,
sys/dev/cxgb/common/cxgb_t3_hw.c
2424
void t3_xgm_intr_disable(adapter_t *adapter, int idx)
sys/dev/cxgb/common/cxgb_t3_hw.c
2426
struct port_info *pi = adap2pinfo(adapter, idx);
sys/dev/cxgb/common/cxgb_t3_hw.c
2428
t3_write_reg(adapter, A_XGM_XGM_INT_DISABLE + pi->mac.offset,
sys/dev/cxgb/common/cxgb_t3_hw.c
2440
void t3_port_intr_enable(adapter_t *adapter, int idx)
sys/dev/cxgb/common/cxgb_t3_hw.c
2442
struct port_info *pi = adap2pinfo(adapter, idx);
sys/dev/cxgb/common/cxgb_t3_hw.c
2444
t3_write_reg(adapter, A_XGM_INT_ENABLE + pi->mac.offset, XGM_INTR_MASK);
sys/dev/cxgb/common/cxgb_t3_hw.c
2456
void t3_port_intr_disable(adapter_t *adapter, int idx)
sys/dev/cxgb/common/cxgb_t3_hw.c
2458
struct port_info *pi = adap2pinfo(adapter, idx);
sys/dev/cxgb/common/cxgb_t3_hw.c
2460
t3_write_reg(adapter, A_XGM_INT_ENABLE + pi->mac.offset, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2472
void t3_port_intr_clear(adapter_t *adapter, int idx)
sys/dev/cxgb/common/cxgb_t3_hw.c
2474
struct port_info *pi = adap2pinfo(adapter, idx);
sys/dev/cxgb/common/cxgb_t3_hw.c
2476
t3_write_reg(adapter, A_XGM_INT_CAUSE + pi->mac.offset, 0xffffffff);
sys/dev/cxgb/common/cxgb_t3_hw.c
2491
static int t3_sge_write_context(adapter_t *adapter, unsigned int id,
sys/dev/cxgb/common/cxgb_t3_hw.c
2501
t3_write_reg(adapter, A_SG_CONTEXT_MASK0, 0xffffffff);
sys/dev/cxgb/common/cxgb_t3_hw.c
2502
t3_write_reg(adapter, A_SG_CONTEXT_MASK1, 0xffffffff);
sys/dev/cxgb/common/cxgb_t3_hw.c
2503
t3_write_reg(adapter, A_SG_CONTEXT_MASK2, 0x17ffffff);
sys/dev/cxgb/common/cxgb_t3_hw.c
2504
t3_write_reg(adapter, A_SG_CONTEXT_MASK3, 0xffffffff);
sys/dev/cxgb/common/cxgb_t3_hw.c
2506
t3_write_reg(adapter, A_SG_CONTEXT_MASK0, 0xffffffff);
sys/dev/cxgb/common/cxgb_t3_hw.c
2507
t3_write_reg(adapter, A_SG_CONTEXT_MASK1, 0xffffffff);
sys/dev/cxgb/common/cxgb_t3_hw.c
2508
t3_write_reg(adapter, A_SG_CONTEXT_MASK2, 0xffffffff);
sys/dev/cxgb/common/cxgb_t3_hw.c
2509
t3_write_reg(adapter, A_SG_CONTEXT_MASK3, 0xffffffff);
sys/dev/cxgb/common/cxgb_t3_hw.c
2511
t3_write_reg(adapter, A_SG_CONTEXT_CMD,
sys/dev/cxgb/common/cxgb_t3_hw.c
2513
return t3_wait_op_done(adapter, A_SG_CONTEXT_CMD, F_CONTEXT_CMD_BUSY,
sys/dev/cxgb/common/cxgb_t3_hw.c
2561
int t3_sge_init_ecntxt(adapter_t *adapter, unsigned int id, int gts_enable,
sys/dev/cxgb/common/cxgb_t3_hw.c
2570
if (t3_read_reg(adapter, A_SG_CONTEXT_CMD) & F_CONTEXT_CMD_BUSY)
sys/dev/cxgb/common/cxgb_t3_hw.c
2574
t3_write_reg(adapter, A_SG_CONTEXT_DATA0, V_EC_INDEX(cidx) |
sys/dev/cxgb/common/cxgb_t3_hw.c
2576
t3_write_reg(adapter, A_SG_CONTEXT_DATA1, V_EC_SIZE(size) |
sys/dev/cxgb/common/cxgb_t3_hw.c
2579
t3_write_reg(adapter, A_SG_CONTEXT_DATA2, (u32)base_addr);
sys/dev/cxgb/common/cxgb_t3_hw.c
2581
t3_write_reg(adapter, A_SG_CONTEXT_DATA3,
sys/dev/cxgb/common/cxgb_t3_hw.c
2585
return t3_sge_write_context(adapter, id, F_EGRESS);
sys/dev/cxgb/common/cxgb_t3_hw.c
2604
int t3_sge_init_flcntxt(adapter_t *adapter, unsigned int id, int gts_enable,
sys/dev/cxgb/common/cxgb_t3_hw.c
261
int t3_mi1_read(adapter_t *adapter, int phy_addr, int mmd_addr,
sys/dev/cxgb/common/cxgb_t3_hw.c
2610
if (t3_read_reg(adapter, A_SG_CONTEXT_CMD) & F_CONTEXT_CMD_BUSY)
sys/dev/cxgb/common/cxgb_t3_hw.c
2614
t3_write_reg(adapter, A_SG_CONTEXT_DATA0, (u32)base_addr);
sys/dev/cxgb/common/cxgb_t3_hw.c
2616
t3_write_reg(adapter, A_SG_CONTEXT_DATA1,
sys/dev/cxgb/common/cxgb_t3_hw.c
2619
t3_write_reg(adapter, A_SG_CONTEXT_DATA2, V_FL_SIZE(size) |
sys/dev/cxgb/common/cxgb_t3_hw.c
2622
t3_write_reg(adapter, A_SG_CONTEXT_DATA3,
sys/dev/cxgb/common/cxgb_t3_hw.c
2625
return t3_sge_write_context(adapter, id, F_FREELIST);
sys/dev/cxgb/common/cxgb_t3_hw.c
2643
int t3_sge_init_rspcntxt(adapter_t *adapter, unsigned int id, int irq_vec_idx,
sys/dev/cxgb/common/cxgb_t3_hw.c
2651
if (t3_read_reg(adapter, A_SG_CONTEXT_CMD) & F_CONTEXT_CMD_BUSY)
sys/dev/cxgb/common/cxgb_t3_hw.c
2655
t3_write_reg(adapter, A_SG_CONTEXT_DATA0, V_CQ_SIZE(size) |
sys/dev/cxgb/common/cxgb_t3_hw.c
2657
t3_write_reg(adapter, A_SG_CONTEXT_DATA1, (u32)base_addr);
sys/dev/cxgb/common/cxgb_t3_hw.c
2659
ctrl = t3_read_reg(adapter, A_SG_CONTROL);
sys/dev/cxgb/common/cxgb_t3_hw.c
2665
t3_write_reg(adapter, A_SG_CONTEXT_DATA2,
sys/dev/cxgb/common/cxgb_t3_hw.c
2667
t3_write_reg(adapter, A_SG_CONTEXT_DATA3, fl_thres);
sys/dev/cxgb/common/cxgb_t3_hw.c
2668
return t3_sge_write_context(adapter, id, F_RESPONSEQ);
sys/dev/cxgb/common/cxgb_t3_hw.c
2686
int t3_sge_init_cqcntxt(adapter_t *adapter, unsigned int id, u64 base_addr,
sys/dev/cxgb/common/cxgb_t3_hw.c
2692
if (t3_read_reg(adapter, A_SG_CONTEXT_CMD) & F_CONTEXT_CMD_BUSY)
sys/dev/cxgb/common/cxgb_t3_hw.c
2696
t3_write_reg(adapter, A_SG_CONTEXT_DATA0, V_CQ_SIZE(size));
sys/dev/cxgb/common/cxgb_t3_hw.c
2697
t3_write_reg(adapter, A_SG_CONTEXT_DATA1, (u32)base_addr);
sys/dev/cxgb/common/cxgb_t3_hw.c
2699
t3_write_reg(adapter, A_SG_CONTEXT_DATA2,
sys/dev/cxgb/common/cxgb_t3_hw.c
270
MDIO_LOCK(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2703
t3_write_reg(adapter, A_SG_CONTEXT_DATA3, V_CQ_CREDITS(credits) |
sys/dev/cxgb/common/cxgb_t3_hw.c
2705
return t3_sge_write_context(adapter, id, F_CQ);
sys/dev/cxgb/common/cxgb_t3_hw.c
271
t3_set_reg_field(adapter, A_MI1_CFG, V_ST(M_ST), V_ST(1));
sys/dev/cxgb/common/cxgb_t3_hw.c
2717
int t3_sge_enable_ecntxt(adapter_t *adapter, unsigned int id, int enable)
sys/dev/cxgb/common/cxgb_t3_hw.c
2719
if (t3_read_reg(adapter, A_SG_CONTEXT_CMD) & F_CONTEXT_CMD_BUSY)
sys/dev/cxgb/common/cxgb_t3_hw.c
272
t3_write_reg(adapter, A_MI1_ADDR, addr);
sys/dev/cxgb/common/cxgb_t3_hw.c
2722
t3_write_reg(adapter, A_SG_CONTEXT_MASK0, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2723
t3_write_reg(adapter, A_SG_CONTEXT_MASK1, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2724
t3_write_reg(adapter, A_SG_CONTEXT_MASK2, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2725
t3_write_reg(adapter, A_SG_CONTEXT_MASK3, F_EC_VALID);
sys/dev/cxgb/common/cxgb_t3_hw.c
2726
t3_write_reg(adapter, A_SG_CONTEXT_DATA3, V_EC_VALID(enable));
sys/dev/cxgb/common/cxgb_t3_hw.c
2727
t3_write_reg(adapter, A_SG_CONTEXT_CMD,
sys/dev/cxgb/common/cxgb_t3_hw.c
2729
return t3_wait_op_done(adapter, A_SG_CONTEXT_CMD, F_CONTEXT_CMD_BUSY,
sys/dev/cxgb/common/cxgb_t3_hw.c
273
t3_write_reg(adapter, A_MI1_OP, V_MDI_OP(2));
sys/dev/cxgb/common/cxgb_t3_hw.c
274
ret = t3_wait_op_done(adapter, A_MI1_OP, F_BUSY, 0, MDIO_ATTEMPTS, 10);
sys/dev/cxgb/common/cxgb_t3_hw.c
2741
int t3_sge_disable_fl(adapter_t *adapter, unsigned int id)
sys/dev/cxgb/common/cxgb_t3_hw.c
2743
if (t3_read_reg(adapter, A_SG_CONTEXT_CMD) & F_CONTEXT_CMD_BUSY)
sys/dev/cxgb/common/cxgb_t3_hw.c
2746
t3_write_reg(adapter, A_SG_CONTEXT_MASK0, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2747
t3_write_reg(adapter, A_SG_CONTEXT_MASK1, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2748
t3_write_reg(adapter, A_SG_CONTEXT_MASK2, V_FL_SIZE(M_FL_SIZE));
sys/dev/cxgb/common/cxgb_t3_hw.c
2749
t3_write_reg(adapter, A_SG_CONTEXT_MASK3, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2750
t3_write_reg(adapter, A_SG_CONTEXT_DATA2, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2751
t3_write_reg(adapter, A_SG_CONTEXT_CMD,
sys/dev/cxgb/common/cxgb_t3_hw.c
2753
return t3_wait_op_done(adapter, A_SG_CONTEXT_CMD, F_CONTEXT_CMD_BUSY,
sys/dev/cxgb/common/cxgb_t3_hw.c
276
*valp = t3_read_reg(adapter, A_MI1_DATA);
sys/dev/cxgb/common/cxgb_t3_hw.c
2765
int t3_sge_disable_rspcntxt(adapter_t *adapter, unsigned int id)
sys/dev/cxgb/common/cxgb_t3_hw.c
2767
if (t3_read_reg(adapter, A_SG_CONTEXT_CMD) & F_CONTEXT_CMD_BUSY)
sys/dev/cxgb/common/cxgb_t3_hw.c
277
MDIO_UNLOCK(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2770
t3_write_reg(adapter, A_SG_CONTEXT_MASK0, V_CQ_SIZE(M_CQ_SIZE));
sys/dev/cxgb/common/cxgb_t3_hw.c
2771
t3_write_reg(adapter, A_SG_CONTEXT_MASK1, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2772
t3_write_reg(adapter, A_SG_CONTEXT_MASK2, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2773
t3_write_reg(adapter, A_SG_CONTEXT_MASK3, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2774
t3_write_reg(adapter, A_SG_CONTEXT_DATA0, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2775
t3_write_reg(adapter, A_SG_CONTEXT_CMD,
sys/dev/cxgb/common/cxgb_t3_hw.c
2777
return t3_wait_op_done(adapter, A_SG_CONTEXT_CMD, F_CONTEXT_CMD_BUSY,
sys/dev/cxgb/common/cxgb_t3_hw.c
2789
int t3_sge_disable_cqcntxt(adapter_t *adapter, unsigned int id)
sys/dev/cxgb/common/cxgb_t3_hw.c
2791
if (t3_read_reg(adapter, A_SG_CONTEXT_CMD) & F_CONTEXT_CMD_BUSY)
sys/dev/cxgb/common/cxgb_t3_hw.c
2794
t3_write_reg(adapter, A_SG_CONTEXT_MASK0, V_CQ_SIZE(M_CQ_SIZE));
sys/dev/cxgb/common/cxgb_t3_hw.c
2795
t3_write_reg(adapter, A_SG_CONTEXT_MASK1, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2796
t3_write_reg(adapter, A_SG_CONTEXT_MASK2, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2797
t3_write_reg(adapter, A_SG_CONTEXT_MASK3, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2798
t3_write_reg(adapter, A_SG_CONTEXT_DATA0, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2799
t3_write_reg(adapter, A_SG_CONTEXT_CMD,
sys/dev/cxgb/common/cxgb_t3_hw.c
2801
return t3_wait_op_done(adapter, A_SG_CONTEXT_CMD, F_CONTEXT_CMD_BUSY,
sys/dev/cxgb/common/cxgb_t3_hw.c
281
int t3_mi1_write(adapter_t *adapter, int phy_addr, int mmd_addr,
sys/dev/cxgb/common/cxgb_t3_hw.c
2819
int t3_sge_cqcntxt_op(adapter_t *adapter, unsigned int id, unsigned int op,
sys/dev/cxgb/common/cxgb_t3_hw.c
2824
if (t3_read_reg(adapter, A_SG_CONTEXT_CMD) & F_CONTEXT_CMD_BUSY)
sys/dev/cxgb/common/cxgb_t3_hw.c
2827
t3_write_reg(adapter, A_SG_CONTEXT_DATA0, credits << 16);
sys/dev/cxgb/common/cxgb_t3_hw.c
2828
t3_write_reg(adapter, A_SG_CONTEXT_CMD, V_CONTEXT_CMD_OPCODE(op) |
sys/dev/cxgb/common/cxgb_t3_hw.c
2830
if (t3_wait_op_done_val(adapter, A_SG_CONTEXT_CMD, F_CONTEXT_CMD_BUSY,
sys/dev/cxgb/common/cxgb_t3_hw.c
2835
if (adapter->params.rev > 0)
sys/dev/cxgb/common/cxgb_t3_hw.c
2838
t3_write_reg(adapter, A_SG_CONTEXT_CMD,
sys/dev/cxgb/common/cxgb_t3_hw.c
2840
if (t3_wait_op_done(adapter, A_SG_CONTEXT_CMD,
sys/dev/cxgb/common/cxgb_t3_hw.c
2844
return G_CQ_INDEX(t3_read_reg(adapter, A_SG_CONTEXT_DATA0));
sys/dev/cxgb/common/cxgb_t3_hw.c
2859
static int t3_sge_read_context(unsigned int type, adapter_t *adapter,
sys/dev/cxgb/common/cxgb_t3_hw.c
2862
if (t3_read_reg(adapter, A_SG_CONTEXT_CMD) & F_CONTEXT_CMD_BUSY)
sys/dev/cxgb/common/cxgb_t3_hw.c
2865
t3_write_reg(adapter, A_SG_CONTEXT_CMD,
sys/dev/cxgb/common/cxgb_t3_hw.c
2867
if (t3_wait_op_done(adapter, A_SG_CONTEXT_CMD, F_CONTEXT_CMD_BUSY, 0,
sys/dev/cxgb/common/cxgb_t3_hw.c
2870
data[0] = t3_read_reg(adapter, A_SG_CONTEXT_DATA0);
sys/dev/cxgb/common/cxgb_t3_hw.c
2871
data[1] = t3_read_reg(adapter, A_SG_CONTEXT_DATA1);
sys/dev/cxgb/common/cxgb_t3_hw.c
2872
data[2] = t3_read_reg(adapter, A_SG_CONTEXT_DATA2);
sys/dev/cxgb/common/cxgb_t3_hw.c
2873
data[3] = t3_read_reg(adapter, A_SG_CONTEXT_DATA3);
sys/dev/cxgb/common/cxgb_t3_hw.c
2886
int t3_sge_read_ecntxt(adapter_t *adapter, unsigned int id, u32 data[4])
sys/dev/cxgb/common/cxgb_t3_hw.c
2890
return t3_sge_read_context(F_EGRESS, adapter, id, data);
sys/dev/cxgb/common/cxgb_t3_hw.c
290
MDIO_LOCK(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2902
int t3_sge_read_cq(adapter_t *adapter, unsigned int id, u32 data[4])
sys/dev/cxgb/common/cxgb_t3_hw.c
2906
return t3_sge_read_context(F_CQ, adapter, id, data);
sys/dev/cxgb/common/cxgb_t3_hw.c
291
t3_set_reg_field(adapter, A_MI1_CFG, V_ST(M_ST), V_ST(1));
sys/dev/cxgb/common/cxgb_t3_hw.c
2918
int t3_sge_read_fl(adapter_t *adapter, unsigned int id, u32 data[4])
sys/dev/cxgb/common/cxgb_t3_hw.c
292
t3_write_reg(adapter, A_MI1_ADDR, addr);
sys/dev/cxgb/common/cxgb_t3_hw.c
2922
return t3_sge_read_context(F_FREELIST, adapter, id, data);
sys/dev/cxgb/common/cxgb_t3_hw.c
293
t3_write_reg(adapter, A_MI1_DATA, val);
sys/dev/cxgb/common/cxgb_t3_hw.c
2934
int t3_sge_read_rspq(adapter_t *adapter, unsigned int id, u32 data[4])
sys/dev/cxgb/common/cxgb_t3_hw.c
2938
return t3_sge_read_context(F_RESPONSEQ, adapter, id, data);
sys/dev/cxgb/common/cxgb_t3_hw.c
294
t3_write_reg(adapter, A_MI1_OP, V_MDI_OP(1));
sys/dev/cxgb/common/cxgb_t3_hw.c
295
ret = t3_wait_op_done(adapter, A_MI1_OP, F_BUSY, 0, MDIO_ATTEMPTS, 10);
sys/dev/cxgb/common/cxgb_t3_hw.c
2953
void t3_config_rss(adapter_t *adapter, unsigned int rss_config, const u8 *cpus,
sys/dev/cxgb/common/cxgb_t3_hw.c
296
MDIO_UNLOCK(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
2967
t3_write_reg(adapter, A_TP_RSS_LKP_TABLE, val);
sys/dev/cxgb/common/cxgb_t3_hw.c
2972
t3_write_reg(adapter, A_TP_RSS_MAP_TABLE,
sys/dev/cxgb/common/cxgb_t3_hw.c
2978
t3_write_reg(adapter, A_TP_RSS_CONFIG, rss_config);
sys/dev/cxgb/common/cxgb_t3_hw.c
2989
int t3_read_rss(adapter_t *adapter, u8 *lkup, u16 *map)
sys/dev/cxgb/common/cxgb_t3_hw.c
2996
t3_write_reg(adapter, A_TP_RSS_LKP_TABLE,
sys/dev/cxgb/common/cxgb_t3_hw.c
2998
val = t3_read_reg(adapter, A_TP_RSS_LKP_TABLE);
sys/dev/cxgb/common/cxgb_t3_hw.c
3007
t3_write_reg(adapter, A_TP_RSS_MAP_TABLE,
sys/dev/cxgb/common/cxgb_t3_hw.c
3009
val = t3_read_reg(adapter, A_TP_RSS_MAP_TABLE);
sys/dev/cxgb/common/cxgb_t3_hw.c
308
static int mi1_ext_read(adapter_t *adapter, int phy_addr, int mmd_addr,
sys/dev/cxgb/common/cxgb_t3_hw.c
314
MDIO_LOCK(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
315
t3_set_reg_field(adapter, A_MI1_CFG, V_ST(M_ST), 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
316
t3_write_reg(adapter, A_MI1_ADDR, addr);
sys/dev/cxgb/common/cxgb_t3_hw.c
317
t3_write_reg(adapter, A_MI1_DATA, reg_addr);
sys/dev/cxgb/common/cxgb_t3_hw.c
318
t3_write_reg(adapter, A_MI1_OP, V_MDI_OP(0));
sys/dev/cxgb/common/cxgb_t3_hw.c
319
ret = t3_wait_op_done(adapter, A_MI1_OP, F_BUSY, 0, MDIO_ATTEMPTS, 10);
sys/dev/cxgb/common/cxgb_t3_hw.c
321
t3_write_reg(adapter, A_MI1_OP, V_MDI_OP(3));
sys/dev/cxgb/common/cxgb_t3_hw.c
322
ret = t3_wait_op_done(adapter, A_MI1_OP, F_BUSY, 0,
sys/dev/cxgb/common/cxgb_t3_hw.c
325
*valp = t3_read_reg(adapter, A_MI1_DATA);
sys/dev/cxgb/common/cxgb_t3_hw.c
327
MDIO_UNLOCK(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
331
static int mi1_ext_write(adapter_t *adapter, int phy_addr, int mmd_addr,
sys/dev/cxgb/common/cxgb_t3_hw.c
337
MDIO_LOCK(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
338
t3_set_reg_field(adapter, A_MI1_CFG, V_ST(M_ST), 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
339
t3_write_reg(adapter, A_MI1_ADDR, addr);
sys/dev/cxgb/common/cxgb_t3_hw.c
340
t3_write_reg(adapter, A_MI1_DATA, reg_addr);
sys/dev/cxgb/common/cxgb_t3_hw.c
341
t3_write_reg(adapter, A_MI1_OP, V_MDI_OP(0));
sys/dev/cxgb/common/cxgb_t3_hw.c
342
ret = t3_wait_op_done(adapter, A_MI1_OP, F_BUSY, 0, MDIO_ATTEMPTS, 10);
sys/dev/cxgb/common/cxgb_t3_hw.c
344
t3_write_reg(adapter, A_MI1_DATA, val);
sys/dev/cxgb/common/cxgb_t3_hw.c
345
t3_write_reg(adapter, A_MI1_OP, V_MDI_OP(1));
sys/dev/cxgb/common/cxgb_t3_hw.c
346
ret = t3_wait_op_done(adapter, A_MI1_OP, F_BUSY, 0,
sys/dev/cxgb/common/cxgb_t3_hw.c
349
MDIO_UNLOCK(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
3604
void t3_config_trace_filter(adapter_t *adapter, const struct trace_params *tp,
sys/dev/cxgb/common/cxgb_t3_hw.c
3625
tp_wr_indirect(adapter, addr++, key[0]);
sys/dev/cxgb/common/cxgb_t3_hw.c
3626
tp_wr_indirect(adapter, addr++, mask[0]);
sys/dev/cxgb/common/cxgb_t3_hw.c
3627
tp_wr_indirect(adapter, addr++, key[1]);
sys/dev/cxgb/common/cxgb_t3_hw.c
3628
tp_wr_indirect(adapter, addr++, mask[1]);
sys/dev/cxgb/common/cxgb_t3_hw.c
3629
tp_wr_indirect(adapter, addr++, key[2]);
sys/dev/cxgb/common/cxgb_t3_hw.c
3630
tp_wr_indirect(adapter, addr++, mask[2]);
sys/dev/cxgb/common/cxgb_t3_hw.c
3631
tp_wr_indirect(adapter, addr++, key[3]);
sys/dev/cxgb/common/cxgb_t3_hw.c
3632
tp_wr_indirect(adapter, addr, mask[3]);
sys/dev/cxgb/common/cxgb_t3_hw.c
3633
(void) t3_read_reg(adapter, A_TP_PIO_DATA);
sys/dev/cxgb/common/cxgb_t3_hw.c
3646
void t3_query_trace_filter(adapter_t *adapter, struct trace_params *tp,
sys/dev/cxgb/common/cxgb_t3_hw.c
3652
key[0] = tp_rd_indirect(adapter, addr++);
sys/dev/cxgb/common/cxgb_t3_hw.c
3653
mask[0] = tp_rd_indirect(adapter, addr++);
sys/dev/cxgb/common/cxgb_t3_hw.c
3654
key[1] = tp_rd_indirect(adapter, addr++);
sys/dev/cxgb/common/cxgb_t3_hw.c
3655
mask[1] = tp_rd_indirect(adapter, addr++);
sys/dev/cxgb/common/cxgb_t3_hw.c
3656
key[2] = tp_rd_indirect(adapter, addr++);
sys/dev/cxgb/common/cxgb_t3_hw.c
3657
mask[2] = tp_rd_indirect(adapter, addr++);
sys/dev/cxgb/common/cxgb_t3_hw.c
3658
key[3] = tp_rd_indirect(adapter, addr++);
sys/dev/cxgb/common/cxgb_t3_hw.c
3659
mask[3] = tp_rd_indirect(adapter, addr);
sys/dev/cxgb/common/cxgb_t3_hw.c
3883
static int calibrate_xgm(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
3885
if (uses_xaui(adapter)) {
sys/dev/cxgb/common/cxgb_t3_hw.c
3889
t3_write_reg(adapter, A_XGM_XAUI_IMP, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
3890
(void) t3_read_reg(adapter, A_XGM_XAUI_IMP);
sys/dev/cxgb/common/cxgb_t3_hw.c
3892
v = t3_read_reg(adapter, A_XGM_XAUI_IMP);
sys/dev/cxgb/common/cxgb_t3_hw.c
3894
t3_write_reg(adapter, A_XGM_XAUI_IMP,
sys/dev/cxgb/common/cxgb_t3_hw.c
3899
CH_ERR(adapter, "MAC calibration failed\n");
sys/dev/cxgb/common/cxgb_t3_hw.c
3902
t3_write_reg(adapter, A_XGM_RGMII_IMP,
sys/dev/cxgb/common/cxgb_t3_hw.c
3904
t3_set_reg_field(adapter, A_XGM_RGMII_IMP, F_XGM_IMPSETUPDATE,
sys/dev/cxgb/common/cxgb_t3_hw.c
3910
static void calibrate_xgm_t3b(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
3912
if (!uses_xaui(adapter)) {
sys/dev/cxgb/common/cxgb_t3_hw.c
3913
t3_write_reg(adapter, A_XGM_RGMII_IMP, F_CALRESET |
sys/dev/cxgb/common/cxgb_t3_hw.c
3915
t3_set_reg_field(adapter, A_XGM_RGMII_IMP, F_CALRESET, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
3916
t3_set_reg_field(adapter, A_XGM_RGMII_IMP, 0,
sys/dev/cxgb/common/cxgb_t3_hw.c
3918
t3_set_reg_field(adapter, A_XGM_RGMII_IMP, F_XGM_IMPSETUPDATE,
sys/dev/cxgb/common/cxgb_t3_hw.c
3920
t3_set_reg_field(adapter, A_XGM_RGMII_IMP, F_CALUPDATE, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
3921
t3_set_reg_field(adapter, A_XGM_RGMII_IMP, 0, F_CALUPDATE);
sys/dev/cxgb/common/cxgb_t3_hw.c
3940
static int wrreg_wait(adapter_t *adapter, unsigned int addr, u32 val)
sys/dev/cxgb/common/cxgb_t3_hw.c
3942
t3_write_reg(adapter, addr, val);
sys/dev/cxgb/common/cxgb_t3_hw.c
3943
(void) t3_read_reg(adapter, addr); /* flush */
sys/dev/cxgb/common/cxgb_t3_hw.c
3944
if (!(t3_read_reg(adapter, addr) & F_BUSY))
sys/dev/cxgb/common/cxgb_t3_hw.c
3946
CH_ERR(adapter, "write to MC7 register 0x%x timed out\n", addr);
sys/dev/cxgb/common/cxgb_t3_hw.c
3965
adapter_t *adapter = mc7->adapter;
sys/dev/cxgb/common/cxgb_t3_hw.c
3971
val = t3_read_reg(adapter, mc7->offset + A_MC7_CFG);
sys/dev/cxgb/common/cxgb_t3_hw.c
3976
t3_write_reg(adapter, mc7->offset + A_MC7_CFG, val | F_IFEN);
sys/dev/cxgb/common/cxgb_t3_hw.c
3977
val = t3_read_reg(adapter, mc7->offset + A_MC7_CFG); /* flush */
sys/dev/cxgb/common/cxgb_t3_hw.c
3981
t3_write_reg(adapter, mc7->offset + A_MC7_CAL, F_SGL_CAL_EN);
sys/dev/cxgb/common/cxgb_t3_hw.c
3982
(void) t3_read_reg(adapter, mc7->offset + A_MC7_CAL);
sys/dev/cxgb/common/cxgb_t3_hw.c
3984
if (t3_read_reg(adapter, mc7->offset + A_MC7_CAL) &
sys/dev/cxgb/common/cxgb_t3_hw.c
3986
CH_ERR(adapter, "%s MC7 calibration timed out\n",
sys/dev/cxgb/common/cxgb_t3_hw.c
3992
t3_write_reg(adapter, mc7->offset + A_MC7_PARM,
sys/dev/cxgb/common/cxgb_t3_hw.c
3998
t3_write_reg(adapter, mc7->offset + A_MC7_CFG,
sys/dev/cxgb/common/cxgb_t3_hw.c
4000
(void) t3_read_reg(adapter, mc7->offset + A_MC7_CFG); /* flush */
sys/dev/cxgb/common/cxgb_t3_hw.c
4003
t3_set_reg_field(adapter, mc7->offset + A_MC7_DLL, F_DLLENB,
sys/dev/cxgb/common/cxgb_t3_hw.c
4008
if (wrreg_wait(adapter, mc7->offset + A_MC7_PRE, 0) ||
sys/dev/cxgb/common/cxgb_t3_hw.c
4009
wrreg_wait(adapter, mc7->offset + A_MC7_EXT_MODE2, 0) ||
sys/dev/cxgb/common/cxgb_t3_hw.c
4010
wrreg_wait(adapter, mc7->offset + A_MC7_EXT_MODE3, 0) ||
sys/dev/cxgb/common/cxgb_t3_hw.c
4011
wrreg_wait(adapter, mc7->offset + A_MC7_EXT_MODE1, val))
sys/dev/cxgb/common/cxgb_t3_hw.c
4015
t3_write_reg(adapter, mc7->offset + A_MC7_MODE, 0x100);
sys/dev/cxgb/common/cxgb_t3_hw.c
4016
t3_set_reg_field(adapter, mc7->offset + A_MC7_DLL,
sys/dev/cxgb/common/cxgb_t3_hw.c
4021
if (wrreg_wait(adapter, mc7->offset + A_MC7_PRE, 0) ||
sys/dev/cxgb/common/cxgb_t3_hw.c
4022
wrreg_wait(adapter, mc7->offset + A_MC7_REF, 0) ||
sys/dev/cxgb/common/cxgb_t3_hw.c
4023
wrreg_wait(adapter, mc7->offset + A_MC7_REF, 0) ||
sys/dev/cxgb/common/cxgb_t3_hw.c
4024
wrreg_wait(adapter, mc7->offset + A_MC7_MODE,
sys/dev/cxgb/common/cxgb_t3_hw.c
4026
wrreg_wait(adapter, mc7->offset + A_MC7_EXT_MODE1, val | 0x380) ||
sys/dev/cxgb/common/cxgb_t3_hw.c
4027
wrreg_wait(adapter, mc7->offset + A_MC7_EXT_MODE1, val))
sys/dev/cxgb/common/cxgb_t3_hw.c
4034
t3_write_reg(adapter, mc7->offset + A_MC7_REF,
sys/dev/cxgb/common/cxgb_t3_hw.c
4036
(void) t3_read_reg(adapter, mc7->offset + A_MC7_REF); /* flush */
sys/dev/cxgb/common/cxgb_t3_hw.c
4038
t3_write_reg(adapter, mc7->offset + A_MC7_ECC,
sys/dev/cxgb/common/cxgb_t3_hw.c
4040
t3_write_reg(adapter, mc7->offset + A_MC7_BIST_DATA, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
4041
t3_write_reg(adapter, mc7->offset + A_MC7_BIST_ADDR_BEG, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
4042
t3_write_reg(adapter, mc7->offset + A_MC7_BIST_ADDR_END,
sys/dev/cxgb/common/cxgb_t3_hw.c
4044
t3_write_reg(adapter, mc7->offset + A_MC7_BIST_OP, V_OP(1));
sys/dev/cxgb/common/cxgb_t3_hw.c
4045
(void) t3_read_reg(adapter, mc7->offset + A_MC7_BIST_OP); /* flush */
sys/dev/cxgb/common/cxgb_t3_hw.c
4050
val = t3_read_reg(adapter, mc7->offset + A_MC7_BIST_OP);
sys/dev/cxgb/common/cxgb_t3_hw.c
4053
CH_ERR(adapter, "%s MC7 BIST timed out\n", mc7->name);
sys/dev/cxgb/common/cxgb_t3_hw.c
4058
t3_set_reg_field(adapter, mc7->offset + A_MC7_CFG, 0, F_RDY);
sys/dev/cxgb/common/cxgb_t3_hw.c
4144
int t3_init_hw(adapter_t *adapter, u32 fw_params)
sys/dev/cxgb/common/cxgb_t3_hw.c
4147
const struct vpd_params *vpd = &adapter->params.vpd;
sys/dev/cxgb/common/cxgb_t3_hw.c
4149
if (adapter->params.rev > 0)
sys/dev/cxgb/common/cxgb_t3_hw.c
4150
calibrate_xgm_t3b(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
4151
else if (calibrate_xgm(adapter))
sys/dev/cxgb/common/cxgb_t3_hw.c
4154
if (adapter->params.nports > 2)
sys/dev/cxgb/common/cxgb_t3_hw.c
4155
t3_mac_init(&adap2pinfo(adapter, 0)->mac);
sys/dev/cxgb/common/cxgb_t3_hw.c
4158
partition_mem(adapter, &adapter->params.tp);
sys/dev/cxgb/common/cxgb_t3_hw.c
4160
if (mc7_init(&adapter->pmrx, vpd->mclk, vpd->mem_timing) ||
sys/dev/cxgb/common/cxgb_t3_hw.c
4161
mc7_init(&adapter->pmtx, vpd->mclk, vpd->mem_timing) ||
sys/dev/cxgb/common/cxgb_t3_hw.c
4162
mc7_init(&adapter->cm, vpd->mclk, vpd->mem_timing) ||
sys/dev/cxgb/common/cxgb_t3_hw.c
4163
t3_mc5_init(&adapter->mc5, adapter->params.mc5.nservers,
sys/dev/cxgb/common/cxgb_t3_hw.c
4164
adapter->params.mc5.nfilters,
sys/dev/cxgb/common/cxgb_t3_hw.c
4165
adapter->params.mc5.nroutes))
sys/dev/cxgb/common/cxgb_t3_hw.c
4169
if (clear_sge_ctxt(adapter, i, F_CQ))
sys/dev/cxgb/common/cxgb_t3_hw.c
4173
if (tp_init(adapter, &adapter->params.tp))
sys/dev/cxgb/common/cxgb_t3_hw.c
4176
t3_tp_set_coalescing_size(adapter,
sys/dev/cxgb/common/cxgb_t3_hw.c
4177
min(adapter->params.sge.max_pkt_size,
sys/dev/cxgb/common/cxgb_t3_hw.c
4179
t3_tp_set_max_rxsize(adapter,
sys/dev/cxgb/common/cxgb_t3_hw.c
4180
min(adapter->params.sge.max_pkt_size, 16384U));
sys/dev/cxgb/common/cxgb_t3_hw.c
4181
ulp_config(adapter, &adapter->params.tp);
sys/dev/cxgb/common/cxgb_t3_hw.c
4182
if (is_pcie(adapter))
sys/dev/cxgb/common/cxgb_t3_hw.c
4183
config_pcie(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
4185
t3_set_reg_field(adapter, A_PCIX_CFG, 0,
sys/dev/cxgb/common/cxgb_t3_hw.c
4188
if (adapter->params.rev == T3_REV_C)
sys/dev/cxgb/common/cxgb_t3_hw.c
4189
t3_set_reg_field(adapter, A_ULPTX_CONFIG, 0,
sys/dev/cxgb/common/cxgb_t3_hw.c
4192
t3_write_reg(adapter, A_PM1_RX_CFG, 0xffffffff);
sys/dev/cxgb/common/cxgb_t3_hw.c
4193
t3_write_reg(adapter, A_PM1_RX_MODE, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
4194
t3_write_reg(adapter, A_PM1_TX_MODE, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
4195
chan_init_hw(adapter, adapter->params.chan_map);
sys/dev/cxgb/common/cxgb_t3_hw.c
4196
t3_sge_init(adapter, &adapter->params.sge);
sys/dev/cxgb/common/cxgb_t3_hw.c
4197
t3_set_reg_field(adapter, A_PL_RST, 0, F_FATALPERREN);
sys/dev/cxgb/common/cxgb_t3_hw.c
4199
t3_write_reg(adapter, A_T3DBG_GPIO_ACT_LOW, calc_gpio_intr(adapter));
sys/dev/cxgb/common/cxgb_t3_hw.c
4201
t3_write_reg(adapter, A_CIM_HOST_ACC_DATA, vpd->uclk | fw_params);
sys/dev/cxgb/common/cxgb_t3_hw.c
4202
t3_write_reg(adapter, A_CIM_BOOT_CFG,
sys/dev/cxgb/common/cxgb_t3_hw.c
4204
(void) t3_read_reg(adapter, A_CIM_BOOT_CFG); /* flush */
sys/dev/cxgb/common/cxgb_t3_hw.c
4209
} while (t3_read_reg(adapter, A_CIM_HOST_ACC_DATA) && --attempts);
sys/dev/cxgb/common/cxgb_t3_hw.c
4211
CH_ERR(adapter, "uP initialization timed out\n");
sys/dev/cxgb/common/cxgb_t3_hw.c
4228
static void __devinit get_pci_mode(adapter_t *adapter, struct pci_params *p)
sys/dev/cxgb/common/cxgb_t3_hw.c
4233
pcie_cap = t3_os_find_pci_capability(adapter, PCI_CAP_ID_EXP);
sys/dev/cxgb/common/cxgb_t3_hw.c
4239
t3_os_pci_read_config_2(adapter, pcie_cap + PCI_EXP_LNKSTA,
sys/dev/cxgb/common/cxgb_t3_hw.c
4245
pci_mode = t3_read_reg(adapter, A_PCIX_MODE);
sys/dev/cxgb/common/cxgb_t3_hw.c
4303
static void __devinit mc7_prep(adapter_t *adapter, struct mc7 *mc7,
sys/dev/cxgb/common/cxgb_t3_hw.c
4308
mc7->adapter = adapter;
sys/dev/cxgb/common/cxgb_t3_hw.c
4311
cfg = t3_read_reg(adapter, mc7->offset + A_MC7_CFG);
sys/dev/cxgb/common/cxgb_t3_hw.c
4316
void mac_prep(struct cmac *mac, adapter_t *adapter, int index)
sys/dev/cxgb/common/cxgb_t3_hw.c
4320
mac->adapter = adapter;
sys/dev/cxgb/common/cxgb_t3_hw.c
4321
mac->multiport = adapter->params.nports > 2;
sys/dev/cxgb/common/cxgb_t3_hw.c
4331
t3_os_pci_read_config_2(adapter, 0x2, &devid);
sys/dev/cxgb/common/cxgb_t3_hw.c
4334
(!adapter->params.vpd.xauicfg[1] && (devid==0x37)))
sys/dev/cxgb/common/cxgb_t3_hw.c
4339
if (adapter->params.rev == 0 && uses_xaui(adapter)) {
sys/dev/cxgb/common/cxgb_t3_hw.c
4340
t3_write_reg(adapter, A_XGM_SERDES_CTRL + mac->offset,
sys/dev/cxgb/common/cxgb_t3_hw.c
4341
is_10G(adapter) ? 0x2901c04 : 0x2301c04);
sys/dev/cxgb/common/cxgb_t3_hw.c
4342
t3_set_reg_field(adapter, A_XGM_PORT_CFG + mac->offset,
sys/dev/cxgb/common/cxgb_t3_hw.c
4356
void early_hw_init(adapter_t *adapter, const struct adapter_info *ai)
sys/dev/cxgb/common/cxgb_t3_hw.c
4358
u32 val = V_PORTSPEED(is_10G(adapter) || adapter->params.nports > 2 ?
sys/dev/cxgb/common/cxgb_t3_hw.c
4362
mi1_init(adapter, ai);
sys/dev/cxgb/common/cxgb_t3_hw.c
4363
t3_write_reg(adapter, A_I2C_CFG, /* set for 80KHz */
sys/dev/cxgb/common/cxgb_t3_hw.c
4364
V_I2C_CLKDIV(adapter->params.vpd.cclk / 80 - 1));
sys/dev/cxgb/common/cxgb_t3_hw.c
4365
t3_write_reg(adapter, A_T3DBG_GPIO_EN,
sys/dev/cxgb/common/cxgb_t3_hw.c
4367
t3_write_reg(adapter, A_MC5_DB_SERVER_INDEX, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
4368
t3_write_reg(adapter, A_SG_OCO_BASE, V_BASE1(0xfff));
sys/dev/cxgb/common/cxgb_t3_hw.c
4370
if (adapter->params.rev == 0 || !uses_xaui(adapter))
sys/dev/cxgb/common/cxgb_t3_hw.c
4374
t3_write_reg(adapter, A_XGM_PORT_CFG, val);
sys/dev/cxgb/common/cxgb_t3_hw.c
4375
(void) t3_read_reg(adapter, A_XGM_PORT_CFG);
sys/dev/cxgb/common/cxgb_t3_hw.c
4378
t3_write_reg(adapter, A_XGM_PORT_CFG, val);
sys/dev/cxgb/common/cxgb_t3_hw.c
4379
(void) t3_read_reg(adapter, A_XGM_PORT_CFG);
sys/dev/cxgb/common/cxgb_t3_hw.c
4380
t3_write_reg(adapter, XGM_REG(A_XGM_PORT_CFG, 1), val);
sys/dev/cxgb/common/cxgb_t3_hw.c
4381
(void) t3_read_reg(adapter, A_XGM_PORT_CFG);
sys/dev/cxgb/common/cxgb_t3_hw.c
4390
int t3_reset_adapter(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
4393
adapter->params.rev < T3_REV_B2 && is_pcie(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
4397
t3_os_pci_save_state(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
4398
t3_write_reg(adapter, A_PL_RST, F_CRSTWRM | F_CRSTWRMMODE);
sys/dev/cxgb/common/cxgb_t3_hw.c
4406
t3_os_pci_read_config_2(adapter, 0x00, &devid);
sys/dev/cxgb/common/cxgb_t3_hw.c
4415
t3_os_pci_restore_state(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
4458
int __devinit t3_prep_adapter(adapter_t *adapter,
sys/dev/cxgb/common/cxgb_t3_hw.c
4464
get_pci_mode(adapter, &adapter->params.pci);
sys/dev/cxgb/common/cxgb_t3_hw.c
4466
adapter->params.info = ai;
sys/dev/cxgb/common/cxgb_t3_hw.c
4467
adapter->params.nports = ai->nports0 + ai->nports1;
sys/dev/cxgb/common/cxgb_t3_hw.c
4468
adapter->params.chan_map = (!!ai->nports0) | (!!ai->nports1 << 1);
sys/dev/cxgb/common/cxgb_t3_hw.c
4469
adapter->params.rev = t3_read_reg(adapter, A_PL_REV);
sys/dev/cxgb/common/cxgb_t3_hw.c
4479
adapter->params.linkpoll_period = 10;
sys/dev/cxgb/common/cxgb_t3_hw.c
4481
if (adapter->params.nports > 2)
sys/dev/cxgb/common/cxgb_t3_hw.c
4482
adapter->params.stats_update_period = VSC_STATS_ACCUM_SECS;
sys/dev/cxgb/common/cxgb_t3_hw.c
4484
adapter->params.stats_update_period = is_10G(adapter) ?
sys/dev/cxgb/common/cxgb_t3_hw.c
4486
adapter->params.pci.vpd_cap_addr =
sys/dev/cxgb/common/cxgb_t3_hw.c
4487
t3_os_find_pci_capability(adapter, PCI_CAP_ID_VPD);
sys/dev/cxgb/common/cxgb_t3_hw.c
4489
ret = get_vpd_params(adapter, &adapter->params.vpd);
sys/dev/cxgb/common/cxgb_t3_hw.c
4493
if (reset && t3_reset_adapter(adapter))
sys/dev/cxgb/common/cxgb_t3_hw.c
4496
if (adapter->params.vpd.mclk) {
sys/dev/cxgb/common/cxgb_t3_hw.c
4497
struct tp_params *p = &adapter->params.tp;
sys/dev/cxgb/common/cxgb_t3_hw.c
4499
mc7_prep(adapter, &adapter->pmrx, MC7_PMRX_BASE_ADDR, "PMRX");
sys/dev/cxgb/common/cxgb_t3_hw.c
4500
mc7_prep(adapter, &adapter->pmtx, MC7_PMTX_BASE_ADDR, "PMTX");
sys/dev/cxgb/common/cxgb_t3_hw.c
4501
mc7_prep(adapter, &adapter->cm, MC7_CM_BASE_ADDR, "CM");
sys/dev/cxgb/common/cxgb_t3_hw.c
4503
p->nchan = adapter->params.chan_map == 3 ? 2 : 1;
sys/dev/cxgb/common/cxgb_t3_hw.c
4504
p->pmrx_size = t3_mc7_size(&adapter->pmrx);
sys/dev/cxgb/common/cxgb_t3_hw.c
4505
p->pmtx_size = t3_mc7_size(&adapter->pmtx);
sys/dev/cxgb/common/cxgb_t3_hw.c
4506
p->cm_size = t3_mc7_size(&adapter->cm);
sys/dev/cxgb/common/cxgb_t3_hw.c
4510
p->tx_pg_size = is_10G(adapter) ? 64 * 1024 : 16 * 1024;
sys/dev/cxgb/common/cxgb_t3_hw.c
4514
adapter->params.rev > 0 ? 12 : 6;
sys/dev/cxgb/common/cxgb_t3_hw.c
4515
p->tre = fls(adapter->params.vpd.cclk / (1000 / TP_TMR_RES)) -
sys/dev/cxgb/common/cxgb_t3_hw.c
4517
p->dack_re = fls(adapter->params.vpd.cclk / 10) - 1; /* 100us */
sys/dev/cxgb/common/cxgb_t3_hw.c
4520
adapter->params.offload = t3_mc7_size(&adapter->pmrx) &&
sys/dev/cxgb/common/cxgb_t3_hw.c
4521
t3_mc7_size(&adapter->pmtx) &&
sys/dev/cxgb/common/cxgb_t3_hw.c
4522
t3_mc7_size(&adapter->cm);
sys/dev/cxgb/common/cxgb_t3_hw.c
4524
t3_sge_prep(adapter, &adapter->params.sge);
sys/dev/cxgb/common/cxgb_t3_hw.c
4526
if (is_offload(adapter)) {
sys/dev/cxgb/common/cxgb_t3_hw.c
4527
adapter->params.mc5.nservers = DEFAULT_NSERVERS;
sys/dev/cxgb/common/cxgb_t3_hw.c
4529
adapter->params.mc5.nfilters = 0;
sys/dev/cxgb/common/cxgb_t3_hw.c
4530
adapter->params.mc5.nroutes = 0;
sys/dev/cxgb/common/cxgb_t3_hw.c
4531
t3_mc5_prep(adapter, &adapter->mc5, MC5_MODE_144_BIT);
sys/dev/cxgb/common/cxgb_t3_hw.c
4533
init_mtus(adapter->params.mtus);
sys/dev/cxgb/common/cxgb_t3_hw.c
4534
init_cong_ctrl(adapter->params.a_wnd, adapter->params.b_wnd);
sys/dev/cxgb/common/cxgb_t3_hw.c
4537
early_hw_init(adapter, ai);
sys/dev/cxgb/common/cxgb_t3_hw.c
4538
ret = init_parity(adapter);
sys/dev/cxgb/common/cxgb_t3_hw.c
4542
if (adapter->params.nports > 2 &&
sys/dev/cxgb/common/cxgb_t3_hw.c
4543
(ret = t3_vsc7323_init(adapter, adapter->params.nports)))
sys/dev/cxgb/common/cxgb_t3_hw.c
4546
for_each_port(adapter, i) {
sys/dev/cxgb/common/cxgb_t3_hw.c
4549
struct port_info *p = adap2pinfo(adapter, i);
sys/dev/cxgb/common/cxgb_t3_hw.c
4552
unsigned port_type = adapter->params.vpd.port_type[j];
sys/dev/cxgb/common/cxgb_t3_hw.c
4561
if (j >= ARRAY_SIZE(adapter->params.vpd.port_type))
sys/dev/cxgb/common/cxgb_t3_hw.c
4568
mac_prep(&p->mac, adapter, j);
sys/dev/cxgb/common/cxgb_t3_hw.c
4576
memcpy(hw_addr, adapter->params.vpd.eth_base, 5);
sys/dev/cxgb/common/cxgb_t3_hw.c
4577
hw_addr[5] = adapter->params.vpd.eth_base[5] + i;
sys/dev/cxgb/common/cxgb_t3_hw.c
4579
t3_os_set_hw_addr(adapter, i, hw_addr);
sys/dev/cxgb/common/cxgb_t3_hw.c
4589
adapter->params.linkpoll_period > 10)
sys/dev/cxgb/common/cxgb_t3_hw.c
4590
adapter->params.linkpoll_period = 10;
sys/dev/cxgb/common/cxgb_t3_hw.c
4644
void t3_led_ready(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
4646
t3_set_reg_field(adapter, A_T3DBG_GPIO_EN, F_GPIO0_OUT_VAL,
sys/dev/cxgb/common/cxgb_t3_hw.c
4650
void t3_port_failover(adapter_t *adapter, int port)
sys/dev/cxgb/common/cxgb_t3_hw.c
4655
t3_set_reg_field(adapter, A_MPS_CFG, F_PORT0ACTIVE | F_PORT1ACTIVE,
sys/dev/cxgb/common/cxgb_t3_hw.c
4659
void t3_failover_done(adapter_t *adapter, int port)
sys/dev/cxgb/common/cxgb_t3_hw.c
4661
t3_set_reg_field(adapter, A_MPS_CFG, F_PORT0ACTIVE | F_PORT1ACTIVE,
sys/dev/cxgb/common/cxgb_t3_hw.c
4665
void t3_failover_clear(adapter_t *adapter)
sys/dev/cxgb/common/cxgb_t3_hw.c
4667
t3_set_reg_field(adapter, A_MPS_CFG, F_PORT0ACTIVE | F_PORT1ACTIVE,
sys/dev/cxgb/common/cxgb_t3_hw.c
4671
static int t3_cim_hac_read(adapter_t *adapter, u32 addr, u32 *val)
sys/dev/cxgb/common/cxgb_t3_hw.c
4675
t3_write_reg(adapter, A_CIM_HOST_ACC_CTRL, addr);
sys/dev/cxgb/common/cxgb_t3_hw.c
4676
if (t3_wait_op_done_val(adapter, A_CIM_HOST_ACC_CTRL,
sys/dev/cxgb/common/cxgb_t3_hw.c
4680
*val = t3_read_reg(adapter, A_CIM_HOST_ACC_DATA);
sys/dev/cxgb/common/cxgb_t3_hw.c
4685
static int t3_cim_hac_write(adapter_t *adapter, u32 addr, u32 val)
sys/dev/cxgb/common/cxgb_t3_hw.c
4689
t3_write_reg(adapter, A_CIM_HOST_ACC_DATA, val);
sys/dev/cxgb/common/cxgb_t3_hw.c
4692
t3_write_reg(adapter, A_CIM_HOST_ACC_CTRL, addr);
sys/dev/cxgb/common/cxgb_t3_hw.c
4694
if (t3_wait_op_done_val(adapter, A_CIM_HOST_ACC_CTRL,
sys/dev/cxgb/common/cxgb_t3_hw.c
4700
int t3_get_up_la(adapter_t *adapter, u32 *stopped, u32 *index,
sys/dev/cxgb/common/cxgb_t3_hw.c
4709
ret = t3_cim_hac_read(adapter, LA_CTRL, &v);
sys/dev/cxgb/common/cxgb_t3_hw.c
4717
ret = t3_cim_hac_write(adapter, LA_CTRL, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
4724
ret = t3_cim_hac_write(adapter, LA_CTRL, v);
sys/dev/cxgb/common/cxgb_t3_hw.c
4728
ret = t3_cim_hac_read(adapter, LA_CTRL, &v);
sys/dev/cxgb/common/cxgb_t3_hw.c
4736
ret = t3_cim_hac_read(adapter, LA_CTRL, &v);
sys/dev/cxgb/common/cxgb_t3_hw.c
4744
ret = t3_cim_hac_read(adapter, LA_DATA, &v);
sys/dev/cxgb/common/cxgb_t3_hw.c
4751
ret = t3_cim_hac_read(adapter, LA_CTRL, &v);
sys/dev/cxgb/common/cxgb_t3_hw.c
4759
t3_cim_hac_write(adapter, LA_CTRL, 1);
sys/dev/cxgb/common/cxgb_t3_hw.c
4763
int t3_get_up_ioqs(adapter_t *adapter, u32 *size, void *data)
sys/dev/cxgb/common/cxgb_t3_hw.c
4772
ret = t3_cim_hac_read(adapter, (4 * i), &v);
sys/dev/cxgb/common/cxgb_t3_hw.c
4783
ret = t3_cim_hac_read(adapter, base_addr + 4 * j, &v);
sys/dev/cxgb/common/cxgb_t3_hw.c
52
int t3_wait_op_done_val(adapter_t *adapter, int reg, u32 mask, int polarity,
sys/dev/cxgb/common/cxgb_t3_hw.c
56
u32 val = t3_read_reg(adapter, reg);
sys/dev/cxgb/common/cxgb_t3_hw.c
655
int t3_seeprom_read(adapter_t *adapter, u32 addr, u32 *data)
sys/dev/cxgb/common/cxgb_t3_hw.c
659
unsigned int base = adapter->params.pci.vpd_cap_addr;
sys/dev/cxgb/common/cxgb_t3_hw.c
664
t3_os_pci_write_config_2(adapter, base + PCI_VPD_ADDR, (u16)addr);
sys/dev/cxgb/common/cxgb_t3_hw.c
667
t3_os_pci_read_config_2(adapter, base + PCI_VPD_ADDR, &val);
sys/dev/cxgb/common/cxgb_t3_hw.c
671
CH_ERR(adapter, "reading EEPROM address 0x%x failed\n", addr);
sys/dev/cxgb/common/cxgb_t3_hw.c
674
t3_os_pci_read_config_4(adapter, base + PCI_VPD_DATA, data);
sys/dev/cxgb/common/cxgb_t3_hw.c
688
int t3_seeprom_write(adapter_t *adapter, u32 addr, u32 data)
sys/dev/cxgb/common/cxgb_t3_hw.c
692
unsigned int base = adapter->params.pci.vpd_cap_addr;
sys/dev/cxgb/common/cxgb_t3_hw.c
697
t3_os_pci_write_config_4(adapter, base + PCI_VPD_DATA,
sys/dev/cxgb/common/cxgb_t3_hw.c
699
t3_os_pci_write_config_2(adapter, base + PCI_VPD_ADDR,
sys/dev/cxgb/common/cxgb_t3_hw.c
703
t3_os_pci_read_config_2(adapter, base + PCI_VPD_ADDR, &val);
sys/dev/cxgb/common/cxgb_t3_hw.c
707
CH_ERR(adapter, "write to EEPROM address 0x%x failed\n", addr);
sys/dev/cxgb/common/cxgb_t3_hw.c
720
int t3_seeprom_wp(adapter_t *adapter, int enable)
sys/dev/cxgb/common/cxgb_t3_hw.c
722
return t3_seeprom_write(adapter, EEPROM_STAT_ADDR, enable ? 0xc : 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
741
static int get_desc_len(adapter_t *adapter, u32 offset)
sys/dev/cxgb/common/cxgb_t3_hw.c
750
ret = t3_seeprom_read(adapter, read_offset, &tmp);
sys/dev/cxgb/common/cxgb_t3_hw.c
758
ret = t3_seeprom_read(adapter, read_offset + 4, &tmp);
sys/dev/cxgb/common/cxgb_t3_hw.c
778
static int is_end_tag(adapter_t * adapter, u32 offset)
sys/dev/cxgb/common/cxgb_t3_hw.c
786
ret = t3_seeprom_read(adapter, read_offset, &tmp);
sys/dev/cxgb/common/cxgb_t3_hw.c
805
int t3_get_vpd_len(adapter_t * adapter, struct generic_vpd *vpd)
sys/dev/cxgb/common/cxgb_t3_hw.c
81
void t3_write_regs(adapter_t *adapter, const struct addr_val_pair *p, int n,
sys/dev/cxgb/common/cxgb_t3_hw.c
813
ret = is_end_tag(adapter, offset);
sys/dev/cxgb/common/cxgb_t3_hw.c
819
inc = get_desc_len(adapter, offset);
sys/dev/cxgb/common/cxgb_t3_hw.c
837
int t3_read_vpd(adapter_t *adapter, struct generic_vpd *vpd)
sys/dev/cxgb/common/cxgb_t3_hw.c
842
ret = t3_seeprom_read(adapter, vpd->offset + i,
sys/dev/cxgb/common/cxgb_t3_hw.c
85
t3_write_reg(adapter, p->reg_addr + offset, p->val);
sys/dev/cxgb/common/cxgb_t3_hw.c
859
static int get_vpd_params(adapter_t *adapter, struct vpd_params *p)
sys/dev/cxgb/common/cxgb_t3_hw.c
868
ret = t3_seeprom_read(adapter, VPD_BASE, (u32 *)&vpd);
sys/dev/cxgb/common/cxgb_t3_hw.c
874
ret = t3_seeprom_read(adapter, addr + i,
sys/dev/cxgb/common/cxgb_t3_hw.c
889
if (adapter->params.rev == 0 && !vpd.port0_data[0]) {
sys/dev/cxgb/common/cxgb_t3_hw.c
890
p->port_type[0] = uses_xaui(adapter) ? 1 : 2;
sys/dev/cxgb/common/cxgb_t3_hw.c
891
p->port_type[1] = uses_xaui(adapter) ? 6 : 2;
sys/dev/cxgb/common/cxgb_t3_hw.c
955
static int sf1_read(adapter_t *adapter, unsigned int byte_cnt, int cont,
sys/dev/cxgb/common/cxgb_t3_hw.c
962
if (t3_read_reg(adapter, A_SF_OP) & F_BUSY)
sys/dev/cxgb/common/cxgb_t3_hw.c
964
t3_write_reg(adapter, A_SF_OP, V_CONT(cont) | V_BYTECNT(byte_cnt - 1));
sys/dev/cxgb/common/cxgb_t3_hw.c
965
ret = t3_wait_op_done(adapter, A_SF_OP, F_BUSY, 0, SF_ATTEMPTS, 10);
sys/dev/cxgb/common/cxgb_t3_hw.c
967
*valp = t3_read_reg(adapter, A_SF_DATA);
sys/dev/cxgb/common/cxgb_t3_hw.c
982
static int sf1_write(adapter_t *adapter, unsigned int byte_cnt, int cont,
sys/dev/cxgb/common/cxgb_t3_hw.c
987
if (t3_read_reg(adapter, A_SF_OP) & F_BUSY)
sys/dev/cxgb/common/cxgb_t3_hw.c
989
t3_write_reg(adapter, A_SF_DATA, val);
sys/dev/cxgb/common/cxgb_t3_hw.c
990
t3_write_reg(adapter, A_SF_OP,
sys/dev/cxgb/common/cxgb_t3_hw.c
992
return t3_wait_op_done(adapter, A_SF_OP, F_BUSY, 0, SF_ATTEMPTS, 10);
sys/dev/cxgb/common/cxgb_tn1010.c
215
cphy_init(&pinfo->phy, pinfo->adapter, pinfo, phy_addr, &tn1010_ops, mdio_ops,
sys/dev/cxgb/common/cxgb_vsc7323.c
290
ret = t3_elmr_blk_read(mac->adapter,
sys/dev/cxgb/common/cxgb_vsc7323.c
294
ret = t3_elmr_blk_read(mac->adapter,
sys/dev/cxgb/common/cxgb_vsc8211.c
435
cphy_init(&pinfo->phy, pinfo->adapter, pinfo, phy_addr, &vsc8211_ops, mdio_ops,
sys/dev/cxgb/common/cxgb_xgmac.c
102
t3_set_reg_field(mac->adapter, A_XGM_RESET_CTRL + mac->offset, 0,
sys/dev/cxgb/common/cxgb_xgmac.c
108
t3_set_reg_field(mac->adapter, A_XGM_SERDES_STAT0 + mac->offset,
sys/dev/cxgb/common/cxgb_xgmac.c
111
t3_set_reg_field(mac->adapter, A_XGM_SERDES_STAT1 + mac->offset,
sys/dev/cxgb/common/cxgb_xgmac.c
114
t3_set_reg_field(mac->adapter, A_XGM_SERDES_STAT2 + mac->offset,
sys/dev/cxgb/common/cxgb_xgmac.c
117
t3_set_reg_field(mac->adapter, A_XGM_SERDES_STAT3 + mac->offset,
sys/dev/cxgb/common/cxgb_xgmac.c
123
t3_set_reg_field(mac->adapter, A_XGM_SERDES_STAT0 + mac->offset,
sys/dev/cxgb/common/cxgb_xgmac.c
125
t3_set_reg_field(mac->adapter, A_XGM_SERDES_STAT1 + mac->offset,
sys/dev/cxgb/common/cxgb_xgmac.c
127
t3_set_reg_field(mac->adapter, A_XGM_SERDES_STAT2 + mac->offset,
sys/dev/cxgb/common/cxgb_xgmac.c
129
t3_set_reg_field(mac->adapter, A_XGM_SERDES_STAT3 + mac->offset,
sys/dev/cxgb/common/cxgb_xgmac.c
159
adapter_t *adap = mac->adapter;
sys/dev/cxgb/common/cxgb_xgmac.c
222
adapter_t *adap = mac->adapter;
sys/dev/cxgb/common/cxgb_xgmac.c
321
t3_write_reg(mac->adapter, A_XGM_RX_EXACT_MATCH_LOW_1 + oft, addr_lo);
sys/dev/cxgb/common/cxgb_xgmac.c
322
t3_write_reg(mac->adapter, A_XGM_RX_EXACT_MATCH_HIGH_1 + oft, addr_hi);
sys/dev/cxgb/common/cxgb_xgmac.c
336
idx = mac->ext_port + idx * mac->adapter->params.nports;
sys/dev/cxgb/common/cxgb_xgmac.c
340
if (mac->multiport && idx < mac->adapter->params.nports)
sys/dev/cxgb/common/cxgb_xgmac.c
341
t3_vsc7323_set_addr(mac->adapter, addr, idx);
sys/dev/cxgb/common/cxgb_xgmac.c
370
u32 v = t3_read_reg(mac->adapter, reg);
sys/dev/cxgb/common/cxgb_xgmac.c
371
t3_write_reg(mac->adapter, reg, v);
sys/dev/cxgb/common/cxgb_xgmac.c
373
t3_read_reg(mac->adapter, A_XGM_RX_EXACT_MATCH_LOW_1); /* flush */
sys/dev/cxgb/common/cxgb_xgmac.c
381
u32 v = t3_read_reg(mac->adapter, reg);
sys/dev/cxgb/common/cxgb_xgmac.c
382
t3_write_reg(mac->adapter, reg, v);
sys/dev/cxgb/common/cxgb_xgmac.c
384
t3_read_reg(mac->adapter, A_XGM_RX_EXACT_MATCH_LOW_1); /* flush */
sys/dev/cxgb/common/cxgb_xgmac.c
435
adapter_t *adap = mac->adapter;
sys/dev/cxgb/common/cxgb_xgmac.c
478
adapter_t *adap = mac->adapter;
sys/dev/cxgb/common/cxgb_xgmac.c
48
adapter_t *adap = mac->adapter;
sys/dev/cxgb/common/cxgb_xgmac.c
571
adapter_t *adap = mac->adapter;
sys/dev/cxgb/common/cxgb_xgmac.c
649
adapter_t *adap = mac->adapter;
sys/dev/cxgb/common/cxgb_xgmac.c
700
adapter_t *adap = mac->adapter;
sys/dev/cxgb/common/cxgb_xgmac.c
712
t3_set_reg_field(mac->adapter, A_XGM_RESET_CTRL + mac->offset,
sys/dev/cxgb/common/cxgb_xgmac.c
716
t3_write_reg(mac->adapter, A_XGM_RESET_CTRL + mac->offset, val);
sys/dev/cxgb/common/cxgb_xgmac.c
725
adapter_t *adap = mac->adapter;
sys/dev/cxgb/common/cxgb_xgmac.c
73
adapter_t *adap = mac->adapter;
sys/dev/cxgb/common/cxgb_xgmac.c
800
#define RMON_READ(mac, addr) t3_read_reg(mac->adapter, addr + mac->offset)
sys/dev/cxgb/common/cxgb_xgmac.c
825
if (mac->adapter->params.rev == T3_REV_B2)
sys/dev/cxgb/common/cxgb_xgmac.c
854
t3_write_reg(mac->adapter, A_TP_MIB_INDEX, mac->offset ? 51 : 50);
sys/dev/cxgb/common/cxgb_xgmac.c
855
v = t3_read_reg(mac->adapter, A_TP_MIB_RDATA);
sys/dev/cxgb/common/cxgb_xgmac.c
97
t3_set_reg_field(mac->adapter, A_XGM_RESET_CTRL + mac->offset,
sys/dev/cxgb/cxgb_adapter.h
283
struct adapter *adap;
sys/dev/cxgb/cxgb_adapter.h
304
SLIST_ENTRY(adapter) link;
sys/dev/cxgb/cxgb_adapter.h
407
#define MDIO_LOCK(adapter) mtx_lock(&(adapter)->mdio_lock)
sys/dev/cxgb/cxgb_adapter.h
408
#define MDIO_UNLOCK(adapter) mtx_unlock(&(adapter)->mdio_lock)
sys/dev/cxgb/cxgb_adapter.h
409
#define ELMR_LOCK(adapter) mtx_lock(&(adapter)->elmer_lock)
sys/dev/cxgb/cxgb_adapter.h
410
#define ELMR_UNLOCK(adapter) mtx_unlock(&(adapter)->elmer_lock)
sys/dev/cxgb/cxgb_adapter.h
429
t3_read_reg(adapter_t *adapter, uint32_t reg_addr)
sys/dev/cxgb/cxgb_adapter.h
431
return (bus_space_read_4(adapter->bt, adapter->bh, reg_addr));
sys/dev/cxgb/cxgb_adapter.h
435
t3_write_reg(adapter_t *adapter, uint32_t reg_addr, uint32_t val)
sys/dev/cxgb/cxgb_adapter.h
437
bus_space_write_4(adapter->bt, adapter->bh, reg_addr, val);
sys/dev/cxgb/cxgb_adapter.h
441
t3_os_pci_read_config_4(adapter_t *adapter, int reg, uint32_t *val)
sys/dev/cxgb/cxgb_adapter.h
443
*val = pci_read_config(adapter->dev, reg, 4);
sys/dev/cxgb/cxgb_adapter.h
447
t3_os_pci_write_config_4(adapter_t *adapter, int reg, uint32_t val)
sys/dev/cxgb/cxgb_adapter.h
449
pci_write_config(adapter->dev, reg, val, 4);
sys/dev/cxgb/cxgb_adapter.h
453
t3_os_pci_read_config_2(adapter_t *adapter, int reg, uint16_t *val)
sys/dev/cxgb/cxgb_adapter.h
455
*val = pci_read_config(adapter->dev, reg, 2);
sys/dev/cxgb/cxgb_adapter.h
459
t3_os_pci_write_config_2(adapter_t *adapter, int reg, uint16_t val)
sys/dev/cxgb/cxgb_adapter.h
461
pci_write_config(adapter->dev, reg, val, 2);
sys/dev/cxgb/cxgb_adapter.h
472
adap2pinfo(struct adapter *adap, int idx)
sys/dev/cxgb/cxgb_adapter.h
477
int t3_os_find_pci_capability(adapter_t *adapter, int cap);
sys/dev/cxgb/cxgb_adapter.h
478
int t3_os_pci_save_state(struct adapter *adapter);
sys/dev/cxgb/cxgb_adapter.h
479
int t3_os_pci_restore_state(struct adapter *adapter);
sys/dev/cxgb/cxgb_adapter.h
481
void t3_os_link_changed(adapter_t *adapter, int port_id, int link_status,
sys/dev/cxgb/cxgb_adapter.h
483
void t3_os_phymod_changed(struct adapter *adap, int port_id);
sys/dev/cxgb/cxgb_adapter.h
484
void t3_sge_err_intr_handler(adapter_t *adapter);
sys/dev/cxgb/cxgb_adapter.h
486
int t3_offload_tx(struct adapter *, struct mbuf *);
sys/dev/cxgb/cxgb_adapter.h
488
void t3_os_set_hw_addr(adapter_t *adapter, int port_idx, u8 hw_addr[]);
sys/dev/cxgb/cxgb_adapter.h
490
int t3_register_cpl_handler(struct adapter *, int, cpl_handler_t);
sys/dev/cxgb/cxgb_adapter.h
492
int t3_sge_alloc(struct adapter *);
sys/dev/cxgb/cxgb_adapter.h
493
int t3_sge_free(struct adapter *);
sys/dev/cxgb/cxgb_adapter.h
508
void t3_rx_eth(struct adapter *adap, struct mbuf *m, int ethpad);
sys/dev/cxgb/cxgb_adapter.h
544
static inline int offload_running(adapter_t *adapter)
sys/dev/cxgb/cxgb_adapter.h
546
return isset(&adapter->open_device_map, OFFLOAD_DEVMAP_BIT);
sys/dev/cxgb/cxgb_adapter.h
552
void t3_iterate(void (*)(struct adapter *, void *), void *);
sys/dev/cxgb/cxgb_adapter.h
61
struct adapter;
sys/dev/cxgb/cxgb_adapter.h
90
struct adapter *adapter;
sys/dev/cxgb/cxgb_main.c
1002
sc = p->adapter;
sys/dev/cxgb/cxgb_main.c
104
static int alloc_filters(struct adapter *);
sys/dev/cxgb/cxgb_main.c
105
static int setup_hw_filters(struct adapter *);
sys/dev/cxgb/cxgb_main.c
106
static int set_filter(struct adapter *, int, const struct filter_info *);
sys/dev/cxgb/cxgb_main.c
1077
struct adapter *sc;
sys/dev/cxgb/cxgb_main.c
1081
sc = p->adapter;
sys/dev/cxgb/cxgb_main.c
1118
t3_fatal_err(struct adapter *sc)
sys/dev/cxgb/cxgb_main.c
1146
t3_os_pci_save_state(struct adapter *sc)
sys/dev/cxgb/cxgb_main.c
1153
t3_os_pci_restore_state(struct adapter *sc)
sys/dev/cxgb/cxgb_main.c
1173
t3_os_link_changed(adapter_t *adapter, int port_id, int link_status, int speed,
sys/dev/cxgb/cxgb_main.c
1176
struct port_info *pi = &adapter->port[port_id];
sys/dev/cxgb/cxgb_main.c
1205
void t3_os_phymod_changed(struct adapter *adap, int port_id)
sys/dev/cxgb/cxgb_main.c
121
static void cxgb_free(struct adapter *);
sys/dev/cxgb/cxgb_main.c
122
static __inline void reg_block_dump(struct adapter *ap, uint8_t *buf, unsigned int start,
sys/dev/cxgb/cxgb_main.c
1226
t3_os_set_hw_addr(adapter_t *adapter, int port_idx, u8 hw_addr[])
sys/dev/cxgb/cxgb_main.c
1236
bcopy(hw_addr, adapter->port[port_idx].hw_addr, ETHER_ADDR_LEN);
sys/dev/cxgb/cxgb_main.c
1262
t3_set_vlan_accel(p->adapter, 1 << p->tx_chan, hwtagging);
sys/dev/cxgb/cxgb_main.c
1270
await_mgmt_replies(struct adapter *adap, unsigned long init_cnt,
sys/dev/cxgb/cxgb_main.c
1284
init_tp_parity(struct adapter *adap)
sys/dev/cxgb/cxgb_main.c
1394
send_pktsched_cmd(struct adapter *adap, int sched, int qidx, int lo,
sys/dev/cxgb/cxgb_main.c
1432
update_tpeeprom(struct adapter *adap)
sys/dev/cxgb/cxgb_main.c
1490
update_tpsram(struct adapter *adap)
sys/dev/cxgb/cxgb_main.c
1531
cxgb_up(struct adapter *sc)
sys/dev/cxgb/cxgb_main.c
1608
cxgb_down(struct adapter *sc)
sys/dev/cxgb/cxgb_main.c
1621
struct adapter *sc = p->adapter;
sys/dev/cxgb/cxgb_main.c
1631
struct adapter *sc = p->adapter;
sys/dev/cxgb/cxgb_main.c
167
sizeof(struct adapter)
sys/dev/cxgb/cxgb_main.c
1710
struct adapter *sc = p->adapter;
sys/dev/cxgb/cxgb_main.c
1746
struct adapter *sc = pi->adapter;
sys/dev/cxgb/cxgb_main.c
1800
cxgb_down(pi->adapter);
sys/dev/cxgb/cxgb_main.c
1812
struct adapter *adp = p->adapter;
sys/dev/cxgb/cxgb_main.c
1826
struct adapter *sc = p->adapter;
sys/dev/cxgb/cxgb_main.c
2155
struct adapter *sc = pi->adapter;
sys/dev/cxgb/cxgb_main.c
218
static SLIST_HEAD(, adapter) t3_list;
sys/dev/cxgb/cxgb_main.c
2230
struct adapter *sc = pi->adapter;
sys/dev/cxgb/cxgb_main.c
2242
struct adapter *sc = pi->adapter;
sys/dev/cxgb/cxgb_main.c
2266
check_t3b2_mac(struct adapter *sc)
sys/dev/cxgb/cxgb_main.c
2423
struct adapter *adapter = pi->adapter;
sys/dev/cxgb/cxgb_main.c
2431
err = t3_seeprom_read(adapter, aligned_offset, (u32 *)buf);
sys/dev/cxgb/cxgb_main.c
2433
err = t3_seeprom_read(adapter,
sys/dev/cxgb/cxgb_main.c
2442
err = t3_seeprom_wp(adapter, 0);
sys/dev/cxgb/cxgb_main.c
2447
err = t3_seeprom_write(adapter, aligned_offset, *p);
sys/dev/cxgb/cxgb_main.c
2452
err = t3_seeprom_wp(adapter, 1);
sys/dev/cxgb/cxgb_main.c
2484
adapter_t *sc = pi->adapter;
sys/dev/cxgb/cxgb_main.c
309
t3rev2char(struct adapter *adapter)
sys/dev/cxgb/cxgb_main.c
313
switch(adapter->params.rev) {
sys/dev/cxgb/cxgb_main.c
3135
reg_block_dump(struct adapter *ap, uint8_t *buf, unsigned int start,
sys/dev/cxgb/cxgb_main.c
3181
alloc_filters(struct adapter *sc)
sys/dev/cxgb/cxgb_main.c
3201
setup_hw_filters(struct adapter *sc)
sys/dev/cxgb/cxgb_main.c
3220
set_filter(struct adapter *sc, int id, const struct filter_info *f)
sys/dev/cxgb/cxgb_main.c
3306
t3_iterate(void (*func)(struct adapter *, void *), void *arg)
sys/dev/cxgb/cxgb_main.c
3308
struct adapter *sc;
sys/dev/cxgb/cxgb_main.c
3326
struct adapter *sc = pi->adapter;
sys/dev/cxgb/cxgb_main.c
3430
t3_activate_uld(struct adapter *sc, int id)
sys/dev/cxgb/cxgb_main.c
3452
t3_deactivate_uld(struct adapter *sc, int id)
sys/dev/cxgb/cxgb_main.c
3482
t3_register_cpl_handler(struct adapter *sc, int opcode, cpl_handler_t h)
sys/dev/cxgb/cxgb_main.c
3545
adap = pi->adapter;
sys/dev/cxgb/cxgb_main.c
3562
for (i = 0; i < pi->adapter->nqsets; i++) {
sys/dev/cxgb/cxgb_main.c
3563
qs = &pi->adapter->sge.qs[i];
sys/dev/cxgb/cxgb_main.c
3583
qs = &pi->adapter->sge.qs[pi->first_qset];
sys/dev/cxgb/cxgb_main.c
3598
adap = pi->adapter;
sys/dev/cxgb/cxgb_main.c
442
struct adapter *sc;
sys/dev/cxgb/cxgb_main.c
507
sc->port[i].adapter = sc;
sys/dev/cxgb/cxgb_main.c
632
pi->adapter = sc;
sys/dev/cxgb/cxgb_main.c
692
struct adapter *sc;
sys/dev/cxgb/cxgb_main.c
720
cxgb_free(struct adapter *sc)
sys/dev/cxgb/cxgb_main.c
805
SLIST_REMOVE(&t3_list, sc, adapter, link);
sys/dev/cxgb/cxgb_main.c
999
struct adapter *sc;
sys/dev/cxgb/cxgb_offload.h
116
int t3_activate_uld(struct adapter *, int);
sys/dev/cxgb/cxgb_offload.h
117
int t3_deactivate_uld(struct adapter *, int);
sys/dev/cxgb/cxgb_offload.h
40
struct adapter;
sys/dev/cxgb/cxgb_offload.h
45
int (*activate)(struct adapter *);
sys/dev/cxgb/cxgb_offload.h
46
int (*deactivate)(struct adapter *);
sys/dev/cxgb/cxgb_osdep.h
47
typedef struct adapter adapter_t;
sys/dev/cxgb/cxgb_sge.c
1064
adapter_t *sc = pi->adapter;
sys/dev/cxgb/cxgb_sge.c
1371
sc = pi->adapter;
sys/dev/cxgb/cxgb_sge.c
1596
check_ring_tx_db(qs->port->adapter, &qs->txq[TXQ_ETH], 1);
sys/dev/cxgb/cxgb_sge.c
1681
check_ring_tx_db(pi->adapter, txq, 1);
sys/dev/cxgb/cxgb_sge.c
1717
check_ring_tx_db(pi->adapter, txq, 1);
sys/dev/cxgb/cxgb_sge.c
1756
qs = &pi->adapter->sge.qs[qidx];
sys/dev/cxgb/cxgb_sge.c
1937
adapter_t *adap = qs->port->adapter;
sys/dev/cxgb/cxgb_sge.c
1972
t3_mgmt_tx(struct adapter *adap, struct mbuf *m)
sys/dev/cxgb/cxgb_sge.c
2312
adapter_t *adap = qs->port->adapter;
sys/dev/cxgb/cxgb_sge.c
2363
t3_offload_tx(struct adapter *sc, struct mbuf *m)
sys/dev/cxgb/cxgb_sge.c
2379
struct adapter *sc = qs->port->adapter;
sys/dev/cxgb/cxgb_sge.c
256
struct adapter *sc;
sys/dev/cxgb/cxgb_sge.c
2612
t3_rx_eth(struct adapter *adap, struct mbuf *m, int ethpad)
sys/dev/cxgb/cxgb_sge.c
263
sc = qs->port->adapter;
sys/dev/cxgb/cxgb_sge.c
3082
adapter_t *adap = qs->port->adapter;
sys/dev/cxgb/cxgb_sge.c
3117
err = t3_sge_read_rspq(qs->port->adapter, rspq->cntxt_id, data);
sys/dev/cxgb/cxgb_sge.c
3181
err = t3_sge_read_ecntxt(qs->port->adapter, qs->rspq.cntxt_id, data);
sys/dev/cxgb/cxgb_sge.c
520
t3_sge_err_intr_handler(adapter_t *adapter)
sys/dev/cxgb/cxgb_sge.c
524
status = t3_read_reg(adapter, A_SG_INT_CAUSE);
sys/dev/cxgb/cxgb_sge.c
526
CH_ALERT(adapter, "SGE parity error (0x%x)\n",
sys/dev/cxgb/cxgb_sge.c
529
CH_ALERT(adapter, "SGE framing error (0x%x)\n",
sys/dev/cxgb/cxgb_sge.c
532
CH_ALERT(adapter, "SGE response queue credit overflow\n");
sys/dev/cxgb/cxgb_sge.c
535
v = t3_read_reg(adapter, A_SG_RSPQ_FL_STATUS);
sys/dev/cxgb/cxgb_sge.c
537
CH_ALERT(adapter,
sys/dev/cxgb/cxgb_sge.c
542
t3_write_reg(adapter, A_SG_INT_CAUSE, status);
sys/dev/cxgb/cxgb_sge.c
544
t3_fatal_err(adapter);
sys/dev/cxgb/cxgb_sge.c
655
t3_sge_free(struct adapter * sc)
sys/dev/cxgbe/adapter.h
1155
for (q = &vi->adapter->sge.txq[vi->first_txq], iter = 0; \
sys/dev/cxgbe/adapter.h
1158
for (q = &vi->adapter->sge.rxq[vi->first_rxq], iter = 0; \
sys/dev/cxgbe/adapter.h
1161
for (q = &vi->adapter->sge.ofld_txq[vi->first_ofld_txq], iter = 0; \
sys/dev/cxgbe/adapter.h
1164
for (q = &vi->adapter->sge.ofld_rxq[vi->first_ofld_rxq], iter = 0; \
sys/dev/cxgbe/adapter.h
1167
for (q = &vi->adapter->sge.nm_txq[vi->first_nm_txq], iter = 0; \
sys/dev/cxgbe/adapter.h
1170
for (q = &vi->adapter->sge.nm_rxq[vi->first_nm_rxq], iter = 0; \
sys/dev/cxgbe/adapter.h
1189
forwarding_intr_to_fwq(struct adapter *sc)
sys/dev/cxgbe/adapter.h
1197
hw_off_limits(struct adapter *sc)
sys/dev/cxgbe/adapter.h
1206
hw_all_ok(struct adapter *sc)
sys/dev/cxgbe/adapter.h
1273
t4_read_reg(struct adapter *sc, uint32_t reg)
sys/dev/cxgbe/adapter.h
1281
t4_write_reg(struct adapter *sc, uint32_t reg, uint32_t val)
sys/dev/cxgbe/adapter.h
1289
t4_read_reg64(struct adapter *sc, uint32_t reg)
sys/dev/cxgbe/adapter.h
1303
t4_write_reg64(struct adapter *sc, uint32_t reg, uint64_t val)
sys/dev/cxgbe/adapter.h
1316
t4_os_pci_read_cfg1(struct adapter *sc, int reg, uint8_t *val)
sys/dev/cxgbe/adapter.h
1324
t4_os_pci_write_cfg1(struct adapter *sc, int reg, uint8_t val)
sys/dev/cxgbe/adapter.h
1332
t4_os_pci_read_cfg2(struct adapter *sc, int reg, uint16_t *val)
sys/dev/cxgbe/adapter.h
1341
t4_os_pci_write_cfg2(struct adapter *sc, int reg, uint16_t val)
sys/dev/cxgbe/adapter.h
1349
t4_os_pci_read_cfg4(struct adapter *sc, int reg, uint32_t *val)
sys/dev/cxgbe/adapter.h
1357
t4_os_pci_write_cfg4(struct adapter *sc, int reg, uint32_t val)
sys/dev/cxgbe/adapter.h
1365
adap2pinfo(struct adapter *sc, int idx)
sys/dev/cxgbe/adapter.h
1387
t4_use_ldst(struct adapter *sc)
sys/dev/cxgbe/adapter.h
1398
CH_DUMP_MBOX(struct adapter *sc, int mbox, const int reg,
sys/dev/cxgbe/adapter.h
1441
int t4_os_find_pci_capability(struct adapter *, int);
sys/dev/cxgbe/adapter.h
1444
void t4_iterate(void (*)(struct adapter *, void *), void *);
sys/dev/cxgbe/adapter.h
1445
void t4_init_devnames(struct adapter *);
sys/dev/cxgbe/adapter.h
1446
void t4_add_adapter(struct adapter *);
sys/dev/cxgbe/adapter.h
1448
int t4_map_bars_0_and_4(struct adapter *);
sys/dev/cxgbe/adapter.h
1449
int t4_map_bar_2(struct adapter *);
sys/dev/cxgbe/adapter.h
1450
int t4_adj_doorbells(struct adapter *);
sys/dev/cxgbe/adapter.h
1451
int t4_setup_intr_handlers(struct adapter *);
sys/dev/cxgbe/adapter.h
1452
void t4_sysctls(struct adapter *);
sys/dev/cxgbe/adapter.h
1453
int begin_synchronized_op(struct adapter *, struct vi_info *, int, char *);
sys/dev/cxgbe/adapter.h
1454
void end_synchronized_op(struct adapter *, int);
sys/dev/cxgbe/adapter.h
1455
void begin_vi_detach(struct adapter *, struct vi_info *);
sys/dev/cxgbe/adapter.h
1456
void end_vi_detach(struct adapter *, struct vi_info *);
sys/dev/cxgbe/adapter.h
1458
int adapter_init(struct adapter *);
sys/dev/cxgbe/adapter.h
1461
int rw_via_memwin(struct adapter *, int, uint32_t, uint32_t *, int, int);
sys/dev/cxgbe/adapter.h
1462
int alloc_atid(struct adapter *, void *);
sys/dev/cxgbe/adapter.h
1463
void *lookup_atid(struct adapter *, int);
sys/dev/cxgbe/adapter.h
1464
void free_atid(struct adapter *, int);
sys/dev/cxgbe/adapter.h
1465
void release_tid(struct adapter *, int, struct sge_wrq *);
sys/dev/cxgbe/adapter.h
1468
void t4_os_cim_err(struct adapter *);
sys/dev/cxgbe/adapter.h
1469
int suspend_adapter(struct adapter *);
sys/dev/cxgbe/adapter.h
1470
int resume_adapter(struct adapter *);
sys/dev/cxgbe/adapter.h
1513
int t4_alloc_tls_keyid(struct adapter *);
sys/dev/cxgbe/adapter.h
1514
void t4_free_tls_keyid(struct adapter *, int);
sys/dev/cxgbe/adapter.h
1535
void t4_tweak_chip_settings(struct adapter *);
sys/dev/cxgbe/adapter.h
1536
int t4_verify_chip_settings(struct adapter *);
sys/dev/cxgbe/adapter.h
1537
void t4_init_rx_buf_info(struct adapter *);
sys/dev/cxgbe/adapter.h
1538
int t4_create_dma_tag(struct adapter *);
sys/dev/cxgbe/adapter.h
1539
void t4_sge_sysctls(struct adapter *, struct sysctl_ctx_list *,
sys/dev/cxgbe/adapter.h
1541
int t4_destroy_dma_tag(struct adapter *);
sys/dev/cxgbe/adapter.h
1542
int alloc_ring(struct adapter *, size_t, bus_dma_tag_t *, bus_dmamap_t *,
sys/dev/cxgbe/adapter.h
1544
int free_ring(struct adapter *, bus_dma_tag_t, bus_dmamap_t, bus_addr_t,
sys/dev/cxgbe/adapter.h
1546
void free_fl_buffers(struct adapter *, struct sge_fl *);
sys/dev/cxgbe/adapter.h
1547
int t4_setup_adapter_queues(struct adapter *);
sys/dev/cxgbe/adapter.h
1548
int t4_teardown_adapter_queues(struct adapter *);
sys/dev/cxgbe/adapter.h
1559
void t4_wrq_tx_locked(struct adapter *, struct sge_wrq *, struct wrqe *);
sys/dev/cxgbe/adapter.h
1565
int t4_sge_set_conm_context(struct adapter *, int, int, int);
sys/dev/cxgbe/adapter.h
1578
void t4_tracer_port_detach(struct adapter *);
sys/dev/cxgbe/adapter.h
1579
int t4_get_tracer(struct adapter *, struct t4_tracer *);
sys/dev/cxgbe/adapter.h
1580
int t4_set_tracer(struct adapter *, struct t4_tracer *);
sys/dev/cxgbe/adapter.h
1585
int t4_set_sched_class(struct adapter *, struct t4_sched_params *);
sys/dev/cxgbe/adapter.h
1586
int t4_set_sched_queue(struct adapter *, struct t4_sched_queue *);
sys/dev/cxgbe/adapter.h
1587
int t4_init_tx_sched(struct adapter *);
sys/dev/cxgbe/adapter.h
1588
int t4_free_tx_sched(struct adapter *);
sys/dev/cxgbe/adapter.h
1589
void t4_update_tx_sched(struct adapter *);
sys/dev/cxgbe/adapter.h
1590
int t4_reserve_cl_rl_kbps(struct adapter *, int, u_int, int *);
sys/dev/cxgbe/adapter.h
1591
void t4_release_cl_rl(struct adapter *, int, int);
sys/dev/cxgbe/adapter.h
1595
void t4_init_etid_table(struct adapter *);
sys/dev/cxgbe/adapter.h
1596
void t4_free_etid_table(struct adapter *);
sys/dev/cxgbe/adapter.h
1597
struct cxgbe_rate_tag *lookup_etid(struct adapter *, int);
sys/dev/cxgbe/adapter.h
1605
int get_filter_mode(struct adapter *, uint32_t *);
sys/dev/cxgbe/adapter.h
1606
int set_filter_mode(struct adapter *, uint32_t);
sys/dev/cxgbe/adapter.h
1607
int set_filter_mask(struct adapter *, uint32_t);
sys/dev/cxgbe/adapter.h
1608
int get_filter(struct adapter *, struct t4_filter *);
sys/dev/cxgbe/adapter.h
1609
int set_filter(struct adapter *, struct t4_filter *);
sys/dev/cxgbe/adapter.h
1610
int del_filter(struct adapter *, struct t4_filter *);
sys/dev/cxgbe/adapter.h
1627
uint32_t t4_pblpool_alloc(struct adapter *, int);
sys/dev/cxgbe/adapter.h
1628
void t4_pblpool_free(struct adapter *, uint32_t, int);
sys/dev/cxgbe/adapter.h
1629
uint32_t t4_stag_alloc(struct adapter *, int);
sys/dev/cxgbe/adapter.h
1630
void t4_stag_free(struct adapter *, uint32_t, int);
sys/dev/cxgbe/adapter.h
1631
void t4_init_tpt(struct adapter *);
sys/dev/cxgbe/adapter.h
1632
void t4_free_tpt(struct adapter *);
sys/dev/cxgbe/adapter.h
1633
void t4_write_mem_dma_wr(struct adapter *, void *, int, int, uint32_t,
sys/dev/cxgbe/adapter.h
1635
void t4_write_mem_inline_wr(struct adapter *, void *, int, int, uint32_t,
sys/dev/cxgbe/adapter.h
1665
t4_wrq_tx(struct adapter *sc, struct wrqe *wr)
sys/dev/cxgbe/adapter.h
1678
read_via_memwin(struct adapter *sc, int idx, uint32_t addr, uint32_t *val,
sys/dev/cxgbe/adapter.h
1686
write_via_memwin(struct adapter *sc, int idx, uint32_t addr,
sys/dev/cxgbe/adapter.h
209
struct adapter *adapter;
sys/dev/cxgbe/adapter.h
316
struct adapter *adapter;
sys/dev/cxgbe/adapter.h
447
typedef int (*fw_msg_handler_t)(struct adapter *, const __be64 *);
sys/dev/cxgbe/adapter.h
456
struct adapter *adapter;
sys/dev/cxgbe/adapter.h
782
struct adapter *adapter;
sys/dev/cxgbe/adapter.h
87
struct adapter;
sys/dev/cxgbe/adapter.h
88
typedef struct adapter adapter_t;
sys/dev/cxgbe/adapter.h
956
SLIST_ENTRY(adapter) link;
sys/dev/cxgbe/common/common.h
1000
int t4_sched_config(struct adapter *adapter, int type, int minmaxen,
sys/dev/cxgbe/common/common.h
1002
int t4_sched_params(struct adapter *adapter, int type, int level, int mode,
sys/dev/cxgbe/common/common.h
1006
int t4_sched_params_ch_rl(struct adapter *adapter, int channel, int ratemode,
sys/dev/cxgbe/common/common.h
1008
int t4_sched_params_cl_wrr(struct adapter *adapter, int channel, int cl,
sys/dev/cxgbe/common/common.h
1010
int t4_sched_params_cl_rl_kbps(struct adapter *adapter, int channel, int cl,
sys/dev/cxgbe/common/common.h
1013
int t4_config_watchdog(struct adapter *adapter, unsigned int mbox,
sys/dev/cxgbe/common/common.h
1016
int t4_get_devlog_level(struct adapter *adapter, unsigned int *level);
sys/dev/cxgbe/common/common.h
1017
int t4_set_devlog_level(struct adapter *adapter, unsigned int level);
sys/dev/cxgbe/common/common.h
1018
void t4_sge_decode_idma_state(struct adapter *adapter, int state);
sys/dev/cxgbe/common/common.h
1020
void t4_tp_pio_read(struct adapter *adap, u32 *buff, u32 nregs,
sys/dev/cxgbe/common/common.h
1022
void t4_tp_pio_write(struct adapter *adap, const u32 *buff, u32 nregs,
sys/dev/cxgbe/common/common.h
1024
void t4_tp_tm_pio_read(struct adapter *adap, u32 *buff, u32 nregs,
sys/dev/cxgbe/common/common.h
1026
void t4_tp_mib_read(struct adapter *adap, u32 *buff, u32 nregs,
sys/dev/cxgbe/common/common.h
1028
int t4_configure_ringbb(struct adapter *adap);
sys/dev/cxgbe/common/common.h
1029
int t4_configure_add_smac(struct adapter *adap);
sys/dev/cxgbe/common/common.h
1030
int t4_set_vlan_acl(struct adapter *adap, unsigned int mbox, unsigned int vf,
sys/dev/cxgbe/common/common.h
1032
int t4_flash_loc_start(struct adapter *adap, enum t4_flash_loc loc,
sys/dev/cxgbe/common/common.h
1035
static inline int t4vf_query_params(struct adapter *adapter,
sys/dev/cxgbe/common/common.h
1039
return t4_query_params(adapter, 0, 0, 0, nparams, params, vals);
sys/dev/cxgbe/common/common.h
1042
static inline int t4vf_set_params(struct adapter *adapter,
sys/dev/cxgbe/common/common.h
1046
return t4_set_params(adapter, 0, 0, 0, nparams, params, vals);
sys/dev/cxgbe/common/common.h
1049
static inline int t4vf_wr_mbox(struct adapter *adap, const void *cmd,
sys/dev/cxgbe/common/common.h
1055
int t4vf_wait_dev_ready(struct adapter *adapter);
sys/dev/cxgbe/common/common.h
1056
int t4vf_fw_reset(struct adapter *adapter);
sys/dev/cxgbe/common/common.h
1057
int t4vf_get_sge_params(struct adapter *adapter);
sys/dev/cxgbe/common/common.h
1058
int t4vf_get_rss_glb_config(struct adapter *adapter);
sys/dev/cxgbe/common/common.h
1059
int t4vf_get_vfres(struct adapter *adapter);
sys/dev/cxgbe/common/common.h
1060
int t4vf_prep_adapter(struct adapter *adapter);
sys/dev/cxgbe/common/common.h
1061
int t4vf_get_vf_mac(struct adapter *adapter, unsigned int port,
sys/dev/cxgbe/common/common.h
1063
int t4vf_get_vf_vlan(struct adapter *adapter);
sys/dev/cxgbe/common/common.h
1064
int t4_bar2_sge_qregs(struct adapter *adapter, unsigned int qid,
sys/dev/cxgbe/common/common.h
1084
mk_set_tcb_field_ulp_with_rpl(struct adapter *sc, void *cur, int tid,
sys/dev/cxgbe/common/common.h
1136
mk_set_tcb_field_ulp(struct adapter *sc, void *cur, int tid, uint16_t word,
sys/dev/cxgbe/common/common.h
531
#define for_each_port(adapter, iter) \
sys/dev/cxgbe/common/common.h
532
for (iter = 0; iter < (adapter)->params.nports; ++iter)
sys/dev/cxgbe/common/common.h
534
static inline int is_ftid(const struct adapter *sc, u_int tid)
sys/dev/cxgbe/common/common.h
541
static inline int is_hpftid(const struct adapter *sc, u_int tid)
sys/dev/cxgbe/common/common.h
548
static inline int is_etid(const struct adapter *sc, u_int tid)
sys/dev/cxgbe/common/common.h
555
static inline int is_offload(const struct adapter *adap)
sys/dev/cxgbe/common/common.h
560
static inline int is_ethoffload(const struct adapter *adap)
sys/dev/cxgbe/common/common.h
565
static inline int is_hashfilter(const struct adapter *adap)
sys/dev/cxgbe/common/common.h
570
static inline int is_ktls(const struct adapter *adap)
sys/dev/cxgbe/common/common.h
576
static inline int chip_id(const struct adapter *adap)
sys/dev/cxgbe/common/common.h
581
static inline int chip_rev(struct adapter *adap)
sys/dev/cxgbe/common/common.h
586
static inline int is_t4(struct adapter *adap)
sys/dev/cxgbe/common/common.h
591
static inline int is_t5(struct adapter *adap)
sys/dev/cxgbe/common/common.h
596
static inline int is_t6(struct adapter *adap)
sys/dev/cxgbe/common/common.h
601
static inline int is_t7(struct adapter *adap)
sys/dev/cxgbe/common/common.h
606
static inline int is_fpga(struct adapter *adap)
sys/dev/cxgbe/common/common.h
611
static inline unsigned int core_ticks_per_usec(const struct adapter *adap)
sys/dev/cxgbe/common/common.h
616
static inline unsigned int us_to_core_ticks(const struct adapter *adap,
sys/dev/cxgbe/common/common.h
622
static inline unsigned int core_ticks_to_us(const struct adapter *adapter,
sys/dev/cxgbe/common/common.h
626
return ((ticks * 1000 + adapter->params.vpd.cclk/2) /
sys/dev/cxgbe/common/common.h
627
adapter->params.vpd.cclk);
sys/dev/cxgbe/common/common.h
630
static inline unsigned int dack_ticks_to_usec(const struct adapter *adap,
sys/dev/cxgbe/common/common.h
636
static inline u_int us_to_tcp_ticks(const struct adapter *adap, u_long us)
sys/dev/cxgbe/common/common.h
642
static inline u_int tcp_ticks_to_us(const struct adapter *adap, u_int ticks)
sys/dev/cxgbe/common/common.h
648
void t4_set_reg_field(struct adapter *adap, unsigned int addr, u32 mask, u32 val);
sys/dev/cxgbe/common/common.h
650
int t4_wr_mbox_meat_timeout(struct adapter *adap, int mbox, const void *cmd,
sys/dev/cxgbe/common/common.h
652
int t4_wr_mbox_meat(struct adapter *adap, int mbox, const void *cmd, int size,
sys/dev/cxgbe/common/common.h
654
void t4_report_fw_error(struct adapter *adap);
sys/dev/cxgbe/common/common.h
656
static inline int t4_wr_mbox_timeout(struct adapter *adap, int mbox,
sys/dev/cxgbe/common/common.h
664
static inline int t4_wr_mbox(struct adapter *adap, int mbox, const void *cmd,
sys/dev/cxgbe/common/common.h
670
static inline int t4_wr_mbox_ns(struct adapter *adap, int mbox, const void *cmd,
sys/dev/cxgbe/common/common.h
676
void t4_read_indirect(struct adapter *adap, unsigned int addr_reg,
sys/dev/cxgbe/common/common.h
679
void t4_write_indirect(struct adapter *adap, unsigned int addr_reg,
sys/dev/cxgbe/common/common.h
683
u32 t4_hw_pci_read_cfg4(adapter_t *adapter, int reg);
sys/dev/cxgbe/common/common.h
687
void t4_intr_clear(struct adapter *adapter);
sys/dev/cxgbe/common/common.h
688
void t4_intr_enable(struct adapter *adapter);
sys/dev/cxgbe/common/common.h
689
void t4_intr_disable(struct adapter *adapter);
sys/dev/cxgbe/common/common.h
690
bool t4_slow_intr_handler(struct adapter *adapter, int flags);
sys/dev/cxgbe/common/common.h
693
int t4_link_l1cfg(struct adapter *adap, unsigned int mbox, unsigned int port,
sys/dev/cxgbe/common/common.h
695
int t4_restart_aneg(struct adapter *adap, unsigned int mbox, unsigned int port);
sys/dev/cxgbe/common/common.h
696
int t4_seeprom_read(struct adapter *adapter, u32 addr, u32 *data);
sys/dev/cxgbe/common/common.h
697
int t4_seeprom_write(struct adapter *adapter, u32 addr, u32 data);
sys/dev/cxgbe/common/common.h
699
int t4_seeprom_wp(struct adapter *adapter, int enable);
sys/dev/cxgbe/common/common.h
700
int t4_read_flash(struct adapter *adapter, unsigned int addr, unsigned int nwords,
sys/dev/cxgbe/common/common.h
702
int t4_write_flash(struct adapter *adapter, unsigned int addr,
sys/dev/cxgbe/common/common.h
704
int t4_load_fw(struct adapter *adapter, const u8 *fw_data, unsigned int size);
sys/dev/cxgbe/common/common.h
705
int t4_fwcache(struct adapter *adap, enum fw_params_param_dev_fwcache op);
sys/dev/cxgbe/common/common.h
706
int t5_fw_init_extern_mem(struct adapter *adap);
sys/dev/cxgbe/common/common.h
707
int t4_load_bootcfg(struct adapter *adapter, const u8 *cfg_data, unsigned int size);
sys/dev/cxgbe/common/common.h
708
int t4_load_boot(struct adapter *adap, u8 *boot_data,
sys/dev/cxgbe/common/common.h
710
int t4_flash_erase_sectors(struct adapter *adapter, int start, int end);
sys/dev/cxgbe/common/common.h
711
int t4_flash_cfg_addr(struct adapter *adapter, unsigned int *lenp);
sys/dev/cxgbe/common/common.h
712
int t4_load_cfg(struct adapter *adapter, const u8 *cfg_data, unsigned int size);
sys/dev/cxgbe/common/common.h
713
int t4_get_fw_version(struct adapter *adapter, u32 *vers);
sys/dev/cxgbe/common/common.h
714
int t4_get_fw_hdr(struct adapter *adapter, struct fw_hdr *hdr);
sys/dev/cxgbe/common/common.h
715
int t4_get_bs_version(struct adapter *adapter, u32 *vers);
sys/dev/cxgbe/common/common.h
716
int t4_get_tp_version(struct adapter *adapter, u32 *vers);
sys/dev/cxgbe/common/common.h
717
int t4_get_exprom_version(struct adapter *adapter, u32 *vers);
sys/dev/cxgbe/common/common.h
718
int t4_get_scfg_version(struct adapter *adapter, u32 *vers);
sys/dev/cxgbe/common/common.h
719
int t4_get_vpd_version(struct adapter *adapter, u32 *vers);
sys/dev/cxgbe/common/common.h
720
int t4_get_version_info(struct adapter *adapter);
sys/dev/cxgbe/common/common.h
721
int t4_init_hw(struct adapter *adapter, u32 fw_params);
sys/dev/cxgbe/common/common.h
723
int t4_prep_adapter(struct adapter *adapter, u32 *buf);
sys/dev/cxgbe/common/common.h
724
int t4_shutdown_adapter(struct adapter *adapter);
sys/dev/cxgbe/common/common.h
725
int t4_init_devlog_ncores_params(struct adapter *adapter, int fw_attach);
sys/dev/cxgbe/common/common.h
726
int t4_init_sge_params(struct adapter *adapter);
sys/dev/cxgbe/common/common.h
727
int t4_init_tp_params(struct adapter *adap);
sys/dev/cxgbe/common/common.h
728
int t4_filter_field_width(const struct adapter *adap, int filter_field);
sys/dev/cxgbe/common/common.h
729
int t4_filter_field_shift(const struct adapter *adap, int filter_sel);
sys/dev/cxgbe/common/common.h
730
int t4_port_init(struct adapter *adap, int mbox, int pf, int vf, int port_id);
sys/dev/cxgbe/common/common.h
731
void t4_fatal_err(struct adapter *adapter, bool fw_error);
sys/dev/cxgbe/common/common.h
732
int t4_set_trace_filter(struct adapter *adapter, const struct trace_params *tp,
sys/dev/cxgbe/common/common.h
734
void t4_get_trace_filter(struct adapter *adapter, struct trace_params *tp,
sys/dev/cxgbe/common/common.h
736
void t4_set_trace_rss_control(struct adapter *adap, u8 chan, u16 qid);
sys/dev/cxgbe/common/common.h
737
int t4_config_rss_range(struct adapter *adapter, int mbox, unsigned int viid,
sys/dev/cxgbe/common/common.h
739
int t4_config_glbl_rss(struct adapter *adapter, int mbox, unsigned int mode,
sys/dev/cxgbe/common/common.h
741
int t4_config_vi_rss(struct adapter *adapter, int mbox, unsigned int viid,
sys/dev/cxgbe/common/common.h
744
int t4_read_rss(struct adapter *adapter, u16 *entries);
sys/dev/cxgbe/common/common.h
745
void t4_read_rss_key(struct adapter *adapter, u32 *key, bool sleep_ok);
sys/dev/cxgbe/common/common.h
746
void t4_write_rss_key(struct adapter *adap, const u32 *key, int idx,
sys/dev/cxgbe/common/common.h
748
void t4_read_rss_pf_config(struct adapter *adapter, unsigned int index,
sys/dev/cxgbe/common/common.h
750
void t4_write_rss_pf_config(struct adapter *adapter, unsigned int index,
sys/dev/cxgbe/common/common.h
752
void t4_read_rss_vf_config(struct adapter *adapter, unsigned int index,
sys/dev/cxgbe/common/common.h
754
void t4_write_rss_vf_config(struct adapter *adapter, unsigned int index,
sys/dev/cxgbe/common/common.h
756
u32 t4_read_rss_pf_map(struct adapter *adapter, bool sleep_ok);
sys/dev/cxgbe/common/common.h
757
void t4_write_rss_pf_map(struct adapter *adapter, u32 pfmap, bool sleep_ok);
sys/dev/cxgbe/common/common.h
758
u32 t4_read_rss_pf_mask(struct adapter *adapter, bool sleep_ok);
sys/dev/cxgbe/common/common.h
759
void t4_write_rss_pf_mask(struct adapter *adapter, u32 pfmask, bool sleep_ok);
sys/dev/cxgbe/common/common.h
760
int t4_mps_set_active_ports(struct adapter *adap, unsigned int port_mask);
sys/dev/cxgbe/common/common.h
761
void t4_pmtx_get_stats(struct adapter *adap, u32 cnt[], u64 cycles[]);
sys/dev/cxgbe/common/common.h
762
void t4_pmrx_get_stats(struct adapter *adap, u32 cnt[], u64 cycles[]);
sys/dev/cxgbe/common/common.h
763
void t4_pmrx_cache_get_stats(struct adapter *adap, u32 stats[]);
sys/dev/cxgbe/common/common.h
764
void t4_read_cimq_cfg_core(struct adapter *adap, u8 coreid, u16 *base,
sys/dev/cxgbe/common/common.h
766
int t4_read_cim_ibq_core(struct adapter *adap, u8 coreid, u32 qid, u32 *data,
sys/dev/cxgbe/common/common.h
768
int t4_read_cim_obq_core(struct adapter *adap, u8 coreid, u32 qid, u32 *data,
sys/dev/cxgbe/common/common.h
770
int t4_cim_read_core(struct adapter *adap, u8 group, u8 coreid,
sys/dev/cxgbe/common/common.h
773
int t4_cim_write_core(struct adapter *adap, u8 group, u8 coreid,
sys/dev/cxgbe/common/common.h
776
int t4_cim_read_la_core(struct adapter *adap, u8 coreid, u32 *la_buf,
sys/dev/cxgbe/common/common.h
778
void t4_cim_read_pif_la(struct adapter *adap, u32 *pif_req, u32 *pif_rsp,
sys/dev/cxgbe/common/common.h
780
void t4_cim_read_ma_la(struct adapter *adap, u32 *ma_req, u32 *ma_rsp);
sys/dev/cxgbe/common/common.h
782
static inline void t4_read_cimq_cfg(struct adapter *adap, u16 *base, u16 *size,
sys/dev/cxgbe/common/common.h
788
static inline int t4_read_cim_ibq(struct adapter *adap, u32 qid, u32 *data,
sys/dev/cxgbe/common/common.h
794
static inline int t4_read_cim_obq(struct adapter *adap, u32 qid, u32 *data,
sys/dev/cxgbe/common/common.h
800
static inline int t4_cim_read(struct adapter *adap, unsigned int addr,
sys/dev/cxgbe/common/common.h
806
static inline int t4_cim_write(struct adapter *adap, unsigned int addr,
sys/dev/cxgbe/common/common.h
812
static inline int t4_cim_read_la(struct adapter *adap, u32 *la_buf, u32 *wrptr)
sys/dev/cxgbe/common/common.h
817
int t4_get_flash_params(struct adapter *adapter);
sys/dev/cxgbe/common/common.h
819
u32 t4_read_pcie_cfg4(struct adapter *adap, int reg, int drv_fw_attach);
sys/dev/cxgbe/common/common.h
820
int t4_mc_read(struct adapter *adap, int idx, u32 addr,
sys/dev/cxgbe/common/common.h
822
int t4_edc_read(struct adapter *adap, int idx, u32 addr, __be32 *data, u64 *parity);
sys/dev/cxgbe/common/common.h
823
int t4_mem_read(struct adapter *adap, int mtype, u32 addr, u32 size,
sys/dev/cxgbe/common/common.h
825
void t4_idma_monitor_init(struct adapter *adapter,
sys/dev/cxgbe/common/common.h
827
void t4_idma_monitor(struct adapter *adapter,
sys/dev/cxgbe/common/common.h
830
int t4_set_vf_mac(struct adapter *adapter, unsigned int pf, unsigned int vf,
sys/dev/cxgbe/common/common.h
833
unsigned int t4_get_regs_len(struct adapter *adapter);
sys/dev/cxgbe/common/common.h
834
void t4_get_regs(struct adapter *adap, u8 *buf, size_t buf_size);
sys/dev/cxgbe/common/common.h
836
u32 t4_port_reg(struct adapter *adap, u8 port, u32 reg);
sys/dev/cxgbe/common/common.h
838
void t4_get_port_stats(struct adapter *adap, int idx, struct port_stats *p);
sys/dev/cxgbe/common/common.h
839
void t4_get_port_stats_offset(struct adapter *adap, int idx,
sys/dev/cxgbe/common/common.h
842
void t4_get_lb_stats(struct adapter *adap, int idx, struct lb_port_stats *p);
sys/dev/cxgbe/common/common.h
843
void t4_clr_port_stats(struct adapter *adap, int idx);
sys/dev/cxgbe/common/common.h
845
void t4_read_mtu_tbl(struct adapter *adap, u16 *mtus, u8 *mtu_log);
sys/dev/cxgbe/common/common.h
846
void t4_read_cong_tbl(struct adapter *adap, u16 incr[NMTUS][NCCTRL_WIN]);
sys/dev/cxgbe/common/common.h
847
void t4_read_pace_tbl(struct adapter *adap, unsigned int pace_vals[NTX_SCHED]);
sys/dev/cxgbe/common/common.h
848
void t4_get_tx_sched(struct adapter *adap, unsigned int sched, unsigned int *kbps,
sys/dev/cxgbe/common/common.h
850
void t4_tp_wr_bits_indirect(struct adapter *adap, unsigned int addr,
sys/dev/cxgbe/common/common.h
852
void t4_tp_read_la(struct adapter *adap, u64 *la_buf, unsigned int *wrptr);
sys/dev/cxgbe/common/common.h
853
void t4_tp_get_err_stats(struct adapter *adap, struct tp_err_stats *st,
sys/dev/cxgbe/common/common.h
855
void t4_tp_get_tnl_stats(struct adapter *adap, struct tp_tnl_stats *st,
sys/dev/cxgbe/common/common.h
857
void t4_tp_get_proxy_stats(struct adapter *adap, struct tp_proxy_stats *st,
sys/dev/cxgbe/common/common.h
859
void t4_tp_get_cpl_stats(struct adapter *adap, struct tp_cpl_stats *st,
sys/dev/cxgbe/common/common.h
861
void t4_tp_get_rdma_stats(struct adapter *adap, struct tp_rdma_stats *st,
sys/dev/cxgbe/common/common.h
863
void t4_get_usm_stats(struct adapter *adap, struct tp_usm_stats *st,
sys/dev/cxgbe/common/common.h
865
void t4_tp_get_tid_stats(struct adapter *adap, struct tp_tid_stats *st,
sys/dev/cxgbe/common/common.h
867
void t4_tp_get_tcp_stats(struct adapter *adap, struct tp_tcp_stats *v4,
sys/dev/cxgbe/common/common.h
869
void t4_get_fcoe_stats(struct adapter *adap, unsigned int idx,
sys/dev/cxgbe/common/common.h
871
void t4_load_mtus(struct adapter *adap, const unsigned short *mtus,
sys/dev/cxgbe/common/common.h
874
void t4_ulprx_read_la(struct adapter *adap, u32 *la_buf);
sys/dev/cxgbe/common/common.h
876
int t4_set_sched_bps(struct adapter *adap, int sched, unsigned int kbps);
sys/dev/cxgbe/common/common.h
877
int t4_set_sched_ipg(struct adapter *adap, int sched, unsigned int ipg);
sys/dev/cxgbe/common/common.h
878
int t4_set_pace_tbl(struct adapter *adap, const unsigned int *pace_vals,
sys/dev/cxgbe/common/common.h
880
void t4_get_chan_txrate(struct adapter *adap, u64 *nic_rate, u64 *ofld_rate);
sys/dev/cxgbe/common/common.h
881
int t4_set_filter_cfg(struct adapter *adap, int mode, int mask, int vnic_mode);
sys/dev/cxgbe/common/common.h
884
void t4_wol_magic_enable(struct adapter *adap, unsigned int port, const u8 *addr);
sys/dev/cxgbe/common/common.h
885
int t4_wol_pat_enable(struct adapter *adap, unsigned int port, unsigned int map,
sys/dev/cxgbe/common/common.h
888
int t4_fw_hello(struct adapter *adap, unsigned int mbox, unsigned int evt_mbox,
sys/dev/cxgbe/common/common.h
890
int t4_fw_bye(struct adapter *adap, unsigned int mbox);
sys/dev/cxgbe/common/common.h
891
int t4_fw_reset(struct adapter *adap, unsigned int mbox, int reset);
sys/dev/cxgbe/common/common.h
892
int t4_fw_halt(struct adapter *adap, unsigned int mbox, int force);
sys/dev/cxgbe/common/common.h
893
int t4_fw_restart(struct adapter *adap, unsigned int mbox);
sys/dev/cxgbe/common/common.h
894
int t4_fw_upgrade(struct adapter *adap, unsigned int mbox,
sys/dev/cxgbe/common/common.h
896
int t4_fw_initialize(struct adapter *adap, unsigned int mbox);
sys/dev/cxgbe/common/common.h
897
int t4_query_params(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/common.h
900
int t4_query_params_rw(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/common.h
903
int t4_set_params_timeout(struct adapter *adap, unsigned int mbox,
sys/dev/cxgbe/common/common.h
907
int t4_set_params(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/common.h
910
int t4_cfg_pfvf(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/common.h
915
int t4_alloc_vi_func(struct adapter *adap, unsigned int mbox,
sys/dev/cxgbe/common/common.h
920
int t4_alloc_vi(struct adapter *adap, unsigned int mbox, unsigned int port,
sys/dev/cxgbe/common/common.h
923
int t4_free_vi(struct adapter *adap, unsigned int mbox,
sys/dev/cxgbe/common/common.h
926
int t4_set_rxmode(struct adapter *adap, unsigned int mbox, unsigned int viid,
sys/dev/cxgbe/common/common.h
929
int t4_alloc_mac_filt(struct adapter *adap, unsigned int mbox, unsigned int viid,
sys/dev/cxgbe/common/common.h
932
int t4_free_mac_filt(struct adapter *adap, unsigned int mbox,
sys/dev/cxgbe/common/common.h
935
int t4_free_encap_mac_filt(struct adapter *adap, unsigned int viid,
sys/dev/cxgbe/common/common.h
937
int t4_free_raw_mac_filt(struct adapter *adap, unsigned int viid,
sys/dev/cxgbe/common/common.h
940
int t4_alloc_raw_mac_filt(struct adapter *adap, unsigned int viid,
sys/dev/cxgbe/common/common.h
943
int t4_alloc_encap_mac_filt(struct adapter *adap, unsigned int viid,
sys/dev/cxgbe/common/common.h
947
int t4_change_mac(struct adapter *adap, unsigned int mbox, unsigned int viid,
sys/dev/cxgbe/common/common.h
949
int t4_del_mac(struct adapter *adap, unsigned int mbox, unsigned int viid,
sys/dev/cxgbe/common/common.h
951
int t4_add_mac(struct adapter *adap, unsigned int mbox, unsigned int viid,
sys/dev/cxgbe/common/common.h
953
int t4_set_addr_hash(struct adapter *adap, unsigned int mbox, unsigned int viid,
sys/dev/cxgbe/common/common.h
955
int t4_enable_vi_params(struct adapter *adap, unsigned int mbox,
sys/dev/cxgbe/common/common.h
957
int t4_enable_vi(struct adapter *adap, unsigned int mbox, unsigned int viid,
sys/dev/cxgbe/common/common.h
959
int t4_identify_port(struct adapter *adap, unsigned int mbox, unsigned int viid,
sys/dev/cxgbe/common/common.h
961
int t4_mdio_rd(struct adapter *adap, unsigned int mbox, unsigned int phy_addr,
sys/dev/cxgbe/common/common.h
963
int t4_mdio_wr(struct adapter *adap, unsigned int mbox, unsigned int phy_addr,
sys/dev/cxgbe/common/common.h
965
int t4_i2c_io(struct adapter *adap, unsigned int mbox,
sys/dev/cxgbe/common/common.h
969
int t4_i2c_rd(struct adapter *adap, unsigned int mbox,
sys/dev/cxgbe/common/common.h
973
int t4_i2c_wr(struct adapter *adap, unsigned int mbox,
sys/dev/cxgbe/common/common.h
977
int t4_iq_stop(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/common.h
980
int t4_iq_free(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/common.h
983
int t4_eth_eq_stop(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/common.h
985
int t4_eth_eq_free(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/common.h
987
int t4_ctrl_eq_free(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/common.h
989
int t4_ofld_eq_free(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/common.h
991
int t4_sge_ctxt_rd(struct adapter *adap, unsigned int mbox, unsigned int cid,
sys/dev/cxgbe/common/common.h
993
int t4_sge_ctxt_rd_bd(struct adapter *adap, unsigned int cid, enum ctxt_type ctype,
sys/dev/cxgbe/common/common.h
995
int t4_sge_ctxt_flush(struct adapter *adap, unsigned int mbox, int ctxt_type);
sys/dev/cxgbe/common/common.h
998
int t4_handle_fw_rpl(struct adapter *adap, const __be64 *rpl);
sys/dev/cxgbe/common/common.h
999
int t4_fwaddrspace_write(struct adapter *adap, unsigned int mbox, u32 addr, u32 val);
sys/dev/cxgbe/common/t4_hw.c
10039
int t4_alloc_mac_filt(struct adapter *adap, unsigned int mbox,
sys/dev/cxgbe/common/t4_hw.c
101
static int t7_wait_sram_done(struct adapter *adap, int reg, int result_reg,
sys/dev/cxgbe/common/t4_hw.c
10121
int t4_free_encap_mac_filt(struct adapter *adap, unsigned int viid,
sys/dev/cxgbe/common/t4_hw.c
10164
int t4_free_raw_mac_filt(struct adapter *adap, unsigned int viid,
sys/dev/cxgbe/common/t4_hw.c
10212
int t4_free_mac_filt(struct adapter *adap, unsigned int mbox,
sys/dev/cxgbe/common/t4_hw.c
10294
int t4_change_mac(struct adapter *adap, unsigned int mbox, unsigned int viid,
sys/dev/cxgbe/common/t4_hw.c
10346
int t4_set_addr_hash(struct adapter *adap, unsigned int mbox, unsigned int viid,
sys/dev/cxgbe/common/t4_hw.c
10375
int t4_enable_vi_params(struct adapter *adap, unsigned int mbox,
sys/dev/cxgbe/common/t4_hw.c
10402
int t4_enable_vi(struct adapter *adap, unsigned int mbox, unsigned int viid,
sys/dev/cxgbe/common/t4_hw.c
10417
int t4_identify_port(struct adapter *adap, unsigned int mbox, unsigned int viid,
sys/dev/cxgbe/common/t4_hw.c
10446
int t4_iq_stop(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/t4_hw.c
10477
int t4_iq_free(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/t4_hw.c
10506
int t4_eth_eq_stop(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/t4_hw.c
10531
int t4_eth_eq_free(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/t4_hw.c
10556
int t4_ctrl_eq_free(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/t4_hw.c
10581
int t4_ofld_eq_free(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/t4_hw.c
10782
CH_ERR(pi->adapter, "bad port_info action 0x%x\n", action);
sys/dev/cxgbe/common/t4_hw.c
10824
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/common/t4_hw.c
10852
int t4_handle_fw_rpl(struct adapter *adap, const __be64 *rpl)
sys/dev/cxgbe/common/t4_hw.c
10895
static void get_pci_mode(struct adapter *adapter,
sys/dev/cxgbe/common/t4_hw.c
10901
pcie_cap = t4_os_find_pci_capability(adapter, PCI_CAP_ID_EXP);
sys/dev/cxgbe/common/t4_hw.c
10903
t4_os_pci_read_cfg2(adapter, pcie_cap + PCI_EXP_LNKSTA, &val);
sys/dev/cxgbe/common/t4_hw.c
10914
int t4_get_flash_params(struct adapter *adapter)
sys/dev/cxgbe/common/t4_hw.c
10936
ret = sf1_write(adapter, 1, 1, 0, SF_RD_ID);
sys/dev/cxgbe/common/t4_hw.c
10938
ret = sf1_read(adapter, 3, 0, 1, &flashid);
sys/dev/cxgbe/common/t4_hw.c
10939
t4_write_reg(adapter, A_SF_OP, 0); /* unlock SF */
sys/dev/cxgbe/common/t4_hw.c
10948
adapter->params.sf_size =
sys/dev/cxgbe/common/t4_hw.c
10950
adapter->params.sf_nsec =
sys/dev/cxgbe/common/t4_hw.c
10951
adapter->params.sf_size / SF_SEC_SIZE;
sys/dev/cxgbe/common/t4_hw.c
11028
size = chip_id(adapter) >= CHELSIO_T7 ? 16 : 4;
sys/dev/cxgbe/common/t4_hw.c
11029
CH_WARN(adapter, "Unknown Flash Part %#x, assuming %uMB\n",
sys/dev/cxgbe/common/t4_hw.c
11037
adapter->params.sf_size = size;
sys/dev/cxgbe/common/t4_hw.c
11038
adapter->params.sf_nsec = size / SF_SEC_SIZE;
sys/dev/cxgbe/common/t4_hw.c
11046
if (adapter->params.sf_size < FLASH_MIN_SIZE)
sys/dev/cxgbe/common/t4_hw.c
11047
CH_WARN(adapter, "WARNING: Flash Part ID %#x, size %#x < %#x\n",
sys/dev/cxgbe/common/t4_hw.c
11048
flashid, adapter->params.sf_size, FLASH_MIN_SIZE);
sys/dev/cxgbe/common/t4_hw.c
11053
static void set_pcie_completion_timeout(struct adapter *adapter,
sys/dev/cxgbe/common/t4_hw.c
11059
pcie_cap = t4_os_find_pci_capability(adapter, PCI_CAP_ID_EXP);
sys/dev/cxgbe/common/t4_hw.c
11061
t4_os_pci_read_cfg2(adapter, pcie_cap + PCI_EXP_DEVCTL2, &val);
sys/dev/cxgbe/common/t4_hw.c
11064
t4_os_pci_write_cfg2(adapter, pcie_cap + PCI_EXP_DEVCTL2, val);
sys/dev/cxgbe/common/t4_hw.c
11161
int t4_prep_adapter(struct adapter *adapter, u32 *buf)
sys/dev/cxgbe/common/t4_hw.c
11167
get_pci_mode(adapter, &adapter->params.pci);
sys/dev/cxgbe/common/t4_hw.c
11169
pl_rev = t4_read_reg(adapter, A_PL_REV);
sys/dev/cxgbe/common/t4_hw.c
11170
adapter->params.chipid = G_CHIPID(pl_rev);
sys/dev/cxgbe/common/t4_hw.c
11171
adapter->params.rev = G_REV(pl_rev);
sys/dev/cxgbe/common/t4_hw.c
11172
if (adapter->params.chipid == 0) {
sys/dev/cxgbe/common/t4_hw.c
11174
adapter->params.chipid = CHELSIO_T4;
sys/dev/cxgbe/common/t4_hw.c
11177
if (adapter->params.rev == 1) {
sys/dev/cxgbe/common/t4_hw.c
11178
CH_ALERT(adapter, "T4 rev 1 chip is not supported.\n");
sys/dev/cxgbe/common/t4_hw.c
11183
adapter->chip_params = t4_get_chip_params(chip_id(adapter));
sys/dev/cxgbe/common/t4_hw.c
11184
if (adapter->chip_params == NULL)
sys/dev/cxgbe/common/t4_hw.c
11187
adapter->params.pci.vpd_cap_addr =
sys/dev/cxgbe/common/t4_hw.c
11188
t4_os_find_pci_capability(adapter, PCI_CAP_ID_VPD);
sys/dev/cxgbe/common/t4_hw.c
11190
ret = t4_get_flash_params(adapter);
sys/dev/cxgbe/common/t4_hw.c
11195
t4_os_pci_read_cfg2(adapter, PCI_DEVICE_ID, &device_id);
sys/dev/cxgbe/common/t4_hw.c
11196
if (device_id >> 12 == chip_id(adapter))
sys/dev/cxgbe/common/t4_hw.c
11197
adapter->params.cim_la_size = adapter->chip_params->cim_la_size;
sys/dev/cxgbe/common/t4_hw.c
11200
adapter->params.fpga = 1;
sys/dev/cxgbe/common/t4_hw.c
11201
adapter->params.cim_la_size = 2 * adapter->chip_params->cim_la_size;
sys/dev/cxgbe/common/t4_hw.c
11204
ret = get_vpd_params(adapter, &adapter->params.vpd, device_id, buf);
sys/dev/cxgbe/common/t4_hw.c
11208
init_cong_ctrl(adapter->params.a_wnd, adapter->params.b_wnd);
sys/dev/cxgbe/common/t4_hw.c
11213
adapter->params.nports = 1;
sys/dev/cxgbe/common/t4_hw.c
11214
adapter->params.portvec = 1;
sys/dev/cxgbe/common/t4_hw.c
11215
adapter->params.vpd.cclk = 50000;
sys/dev/cxgbe/common/t4_hw.c
11218
set_pcie_completion_timeout(adapter, 0xd);
sys/dev/cxgbe/common/t4_hw.c
11234
int t4_shutdown_adapter(struct adapter *adapter)
sys/dev/cxgbe/common/t4_hw.c
11237
const bool bt = adapter->bt_map != 0;
sys/dev/cxgbe/common/t4_hw.c
11239
t4_intr_disable(adapter);
sys/dev/cxgbe/common/t4_hw.c
11241
t4_write_reg(adapter, A_DBG_GPIO_EN, 0xffff0000);
sys/dev/cxgbe/common/t4_hw.c
11242
for_each_port(adapter, port) {
sys/dev/cxgbe/common/t4_hw.c
11243
u32 a_port_cfg = is_t4(adapter) ?
sys/dev/cxgbe/common/t4_hw.c
11244
t4_port_reg(adapter, port, A_XGMAC_PORT_CFG) :
sys/dev/cxgbe/common/t4_hw.c
11245
t4_port_reg(adapter, port, A_MAC_PORT_CFG);
sys/dev/cxgbe/common/t4_hw.c
11247
t4_write_reg(adapter, a_port_cfg,
sys/dev/cxgbe/common/t4_hw.c
11248
t4_read_reg(adapter, a_port_cfg)
sys/dev/cxgbe/common/t4_hw.c
11251
u32 hss_cfg0 = is_t4(adapter) ?
sys/dev/cxgbe/common/t4_hw.c
11252
t4_port_reg(adapter, port, A_XGMAC_PORT_HSS_CFG0) :
sys/dev/cxgbe/common/t4_hw.c
11253
t4_port_reg(adapter, port, A_MAC_PORT_HSS_CFG0);
sys/dev/cxgbe/common/t4_hw.c
11254
t4_set_reg_field(adapter, hss_cfg0, F_HSSPDWNPLLB |
sys/dev/cxgbe/common/t4_hw.c
11260
t4_set_reg_field(adapter, A_SGE_CONTROL, F_GLOBALENABLE, 0);
sys/dev/cxgbe/common/t4_hw.c
11291
int t4_bar2_sge_qregs(struct adapter *adapter,
sys/dev/cxgbe/common/t4_hw.c
11305
if (!user && is_t4(adapter))
sys/dev/cxgbe/common/t4_hw.c
11310
page_shift = adapter->params.sge.page_shift;
sys/dev/cxgbe/common/t4_hw.c
11316
? adapter->params.sge.eq_s_qpp
sys/dev/cxgbe/common/t4_hw.c
11317
: adapter->params.sge.iq_s_qpp);
sys/dev/cxgbe/common/t4_hw.c
11362
int t4_init_devlog_ncores_params(struct adapter *adap, int fw_attach)
sys/dev/cxgbe/common/t4_hw.c
11431
int t4_init_sge_params(struct adapter *adapter)
sys/dev/cxgbe/common/t4_hw.c
11434
struct sge_params *sp = &adapter->params.sge;
sys/dev/cxgbe/common/t4_hw.c
11437
r = t4_read_reg(adapter, A_SGE_INGRESS_RX_THRESHOLD);
sys/dev/cxgbe/common/t4_hw.c
11443
if (chip_id(adapter) >= CHELSIO_T6) {
sys/dev/cxgbe/common/t4_hw.c
11444
r = t4_read_reg(adapter, A_SGE_ITP_CONTROL);
sys/dev/cxgbe/common/t4_hw.c
11452
r = t4_read_reg(adapter, A_SGE_TIMER_VALUE_0_AND_1);
sys/dev/cxgbe/common/t4_hw.c
11453
sp->timer_val[0] = core_ticks_to_us(adapter, G_TIMERVALUE0(r)) * tscale;
sys/dev/cxgbe/common/t4_hw.c
11454
sp->timer_val[1] = core_ticks_to_us(adapter, G_TIMERVALUE1(r)) * tscale;
sys/dev/cxgbe/common/t4_hw.c
11455
r = t4_read_reg(adapter, A_SGE_TIMER_VALUE_2_AND_3);
sys/dev/cxgbe/common/t4_hw.c
11456
sp->timer_val[2] = core_ticks_to_us(adapter, G_TIMERVALUE2(r)) * tscale;
sys/dev/cxgbe/common/t4_hw.c
11457
sp->timer_val[3] = core_ticks_to_us(adapter, G_TIMERVALUE3(r)) * tscale;
sys/dev/cxgbe/common/t4_hw.c
11458
r = t4_read_reg(adapter, A_SGE_TIMER_VALUE_4_AND_5);
sys/dev/cxgbe/common/t4_hw.c
11459
sp->timer_val[4] = core_ticks_to_us(adapter, G_TIMERVALUE4(r)) * tscale;
sys/dev/cxgbe/common/t4_hw.c
11460
sp->timer_val[5] = core_ticks_to_us(adapter, G_TIMERVALUE5(r)) * tscale;
sys/dev/cxgbe/common/t4_hw.c
11462
r = t4_read_reg(adapter, A_SGE_CONM_CTRL);
sys/dev/cxgbe/common/t4_hw.c
11464
if (is_t4(adapter))
sys/dev/cxgbe/common/t4_hw.c
11466
else if (is_t5(adapter))
sys/dev/cxgbe/common/t4_hw.c
11472
r = t4_read_reg(adapter, A_SGE_EGRESS_QUEUES_PER_PAGE_PF);
sys/dev/cxgbe/common/t4_hw.c
11474
(S_QUEUESPERPAGEPF1 - S_QUEUESPERPAGEPF0) * adapter->pf;
sys/dev/cxgbe/common/t4_hw.c
11478
r = t4_read_reg(adapter, A_SGE_INGRESS_QUEUES_PER_PAGE_PF);
sys/dev/cxgbe/common/t4_hw.c
11480
(S_QUEUESPERPAGEPF1 - S_QUEUESPERPAGEPF0) * adapter->pf;
sys/dev/cxgbe/common/t4_hw.c
11483
r = t4_read_reg(adapter, A_SGE_HOST_PAGE_SIZE);
sys/dev/cxgbe/common/t4_hw.c
11485
(S_HOSTPAGESIZEPF1 - S_HOSTPAGESIZEPF0) * adapter->pf;
sys/dev/cxgbe/common/t4_hw.c
11488
r = t4_read_reg(adapter, A_SGE_CONTROL);
sys/dev/cxgbe/common/t4_hw.c
11492
if (chip_id(adapter) <= CHELSIO_T5) {
sys/dev/cxgbe/common/t4_hw.c
11499
if (is_t4(adapter))
sys/dev/cxgbe/common/t4_hw.c
11502
r = t4_read_reg(adapter, A_SGE_CONTROL2);
sys/dev/cxgbe/common/t4_hw.c
11509
sp->sge_fl_buffer_size[i] = t4_read_reg(adapter,
sys/dev/cxgbe/common/t4_hw.c
11517
hashmask_to_filtermask(struct adapter *adap, uint64_t hashmask, uint16_t filter_mode)
sys/dev/cxgbe/common/t4_hw.c
11548
read_filter_mode_and_ingress_config(struct adapter *adap)
sys/dev/cxgbe/common/t4_hw.c
11643
int t4_init_tp_params(struct adapter *adap)
sys/dev/cxgbe/common/t4_hw.c
11697
int t4_filter_field_width(const struct adapter *adap, int filter_field)
sys/dev/cxgbe/common/t4_hw.c
11744
int t4_filter_field_shift(const struct adapter *adap, int filter_sel)
sys/dev/cxgbe/common/t4_hw.c
11840
int t4_port_init(struct adapter *adap, int mbox, int pf, int vf, int port_id)
sys/dev/cxgbe/common/t4_hw.c
11887
static void t4_read_cimq_cfg_ibq_core(struct adapter *adap, u8 coreid, u32 qid,
sys/dev/cxgbe/common/t4_hw.c
11913
static void t4_read_cimq_cfg_obq_core(struct adapter *adap, u8 coreid, u32 qid,
sys/dev/cxgbe/common/t4_hw.c
11948
void t4_read_cimq_cfg_core(struct adapter *adap, u8 coreid, u16 *base,
sys/dev/cxgbe/common/t4_hw.c
11962
static int t4_read_cim_ibq_data_core(struct adapter *adap, u8 coreid, u32 addr,
sys/dev/cxgbe/common/t4_hw.c
12002
int t4_read_cim_ibq_core(struct adapter *adap, u8 coreid, u32 qid, u32 *data,
sys/dev/cxgbe/common/t4_hw.c
12028
static int t4_read_cim_obq_data_core(struct adapter *adap, u8 coreid, u32 addr,
sys/dev/cxgbe/common/t4_hw.c
12062
int t4_read_cim_obq_core(struct adapter *adap, u8 coreid, u32 qid, u32 *data,
sys/dev/cxgbe/common/t4_hw.c
12101
int t4_cim_read_core(struct adapter *adap, u8 group, u8 coreid,
sys/dev/cxgbe/common/t4_hw.c
12142
int t4_cim_write_core(struct adapter *adap, u8 group, u8 coreid,
sys/dev/cxgbe/common/t4_hw.c
12183
int t4_cim_read_la_core(struct adapter *adap, u8 coreid, u32 *la_buf,
sys/dev/cxgbe/common/t4_hw.c
12262
void t4_tp_read_la(struct adapter *adap, u64 *la_buf, unsigned int *wrptr)
sys/dev/cxgbe/common/t4_hw.c
12317
void t4_idma_monitor_init(struct adapter *adapter,
sys/dev/cxgbe/common/t4_hw.c
12332
idma->idma_1s_thresh = core_ticks_per_usec(adapter) * 1000000; /* 1s */
sys/dev/cxgbe/common/t4_hw.c
12343
void t4_idma_monitor(struct adapter *adapter,
sys/dev/cxgbe/common/t4_hw.c
12356
t4_write_reg(adapter, A_SGE_DEBUG_INDEX, 13);
sys/dev/cxgbe/common/t4_hw.c
12357
idma_same_state_cnt[0] = t4_read_reg(adapter, A_SGE_DEBUG_DATA_HIGH);
sys/dev/cxgbe/common/t4_hw.c
12358
idma_same_state_cnt[1] = t4_read_reg(adapter, A_SGE_DEBUG_DATA_LOW);
sys/dev/cxgbe/common/t4_hw.c
12371
CH_WARN(adapter, "SGE idma%d, queue %u, "
sys/dev/cxgbe/common/t4_hw.c
12409
t4_write_reg(adapter, A_SGE_DEBUG_INDEX, 0);
sys/dev/cxgbe/common/t4_hw.c
12410
debug0 = t4_read_reg(adapter, A_SGE_DEBUG_DATA_LOW);
sys/dev/cxgbe/common/t4_hw.c
12413
t4_write_reg(adapter, A_SGE_DEBUG_INDEX, 11);
sys/dev/cxgbe/common/t4_hw.c
12414
debug11 = t4_read_reg(adapter, A_SGE_DEBUG_DATA_LOW);
sys/dev/cxgbe/common/t4_hw.c
12417
CH_WARN(adapter, "SGE idma%u, queue %u, potentially stuck in "
sys/dev/cxgbe/common/t4_hw.c
12422
t4_sge_decode_idma_state(adapter, idma->idma_state[i]);
sys/dev/cxgbe/common/t4_hw.c
12434
int t4_set_vf_mac(struct adapter *adapter, unsigned int pf, unsigned int vf,
sys/dev/cxgbe/common/t4_hw.c
12465
return t4_wr_mbox(adapter, adapter->mbox, &cmd, sizeof(cmd), &cmd);
sys/dev/cxgbe/common/t4_hw.c
12475
void t4_read_pace_tbl(struct adapter *adap, unsigned int pace_vals[NTX_SCHED])
sys/dev/cxgbe/common/t4_hw.c
12495
void t4_get_tx_sched(struct adapter *adap, unsigned int sched, unsigned int *kbps,
sys/dev/cxgbe/common/t4_hw.c
12532
int t4_load_cfg(struct adapter *adap, const u8 *cfg_data, unsigned int size)
sys/dev/cxgbe/common/t4_hw.c
12582
int t5_fw_init_extern_mem(struct adapter *adap)
sys/dev/cxgbe/common/t4_hw.c
12760
int t4_load_boot(struct adapter *adap, u8 *boot_data,
sys/dev/cxgbe/common/t4_hw.c
12889
static int t4_flash_bootcfg_addr(struct adapter *adapter, unsigned int *lenp)
sys/dev/cxgbe/common/t4_hw.c
12892
const int start = t4_flash_loc_start(adapter, FLASH_LOC_BOOTCFG, &len);
sys/dev/cxgbe/common/t4_hw.c
12898
if (adapter->params.sf_size < start + len)
sys/dev/cxgbe/common/t4_hw.c
12905
int t4_load_bootcfg(struct adapter *adap,const u8 *cfg_data, unsigned int size)
sys/dev/cxgbe/common/t4_hw.c
12962
int t4_set_filter_cfg(struct adapter *adap, int mode, int mask, int vnic_mode)
sys/dev/cxgbe/common/t4_hw.c
13058
void t4_clr_port_stats(struct adapter *adap, int idx)
sys/dev/cxgbe/common/t4_hw.c
13101
int t4_i2c_io(struct adapter *adap, unsigned int mbox,
sys/dev/cxgbe/common/t4_hw.c
13151
int t4_i2c_rd(struct adapter *adap, unsigned int mbox,
sys/dev/cxgbe/common/t4_hw.c
13159
int t4_i2c_wr(struct adapter *adap, unsigned int mbox,
sys/dev/cxgbe/common/t4_hw.c
13177
int t4_sge_ctxt_rd(struct adapter *adap, unsigned int mbox, unsigned int cid,
sys/dev/cxgbe/common/t4_hw.c
132
void t4_set_reg_field(struct adapter *adapter, unsigned int addr, u32 mask,
sys/dev/cxgbe/common/t4_hw.c
13223
int t4_sge_ctxt_rd_bd(struct adapter *adap, unsigned int cid, enum ctxt_type ctype,
sys/dev/cxgbe/common/t4_hw.c
13239
int t4_sched_config(struct adapter *adapter, int type, int minmaxen,
sys/dev/cxgbe/common/t4_hw.c
13254
return t4_wr_mbox_meat(adapter,adapter->mbox, &cmd, sizeof(cmd),
sys/dev/cxgbe/common/t4_hw.c
13258
int t4_sched_params(struct adapter *adapter, int type, int level, int mode,
sys/dev/cxgbe/common/t4_hw.c
13285
return t4_wr_mbox_meat(adapter,adapter->mbox, &cmd, sizeof(cmd),
sys/dev/cxgbe/common/t4_hw.c
13289
int t4_sched_params_ch_rl(struct adapter *adapter, int channel, int ratemode,
sys/dev/cxgbe/common/t4_hw.c
13307
return t4_wr_mbox_meat(adapter,adapter->mbox, &cmd, sizeof(cmd),
sys/dev/cxgbe/common/t4_hw.c
13311
int t4_sched_params_cl_wrr(struct adapter *adapter, int channel, int cl,
sys/dev/cxgbe/common/t4_hw.c
13332
return t4_wr_mbox_meat(adapter,adapter->mbox, &cmd, sizeof(cmd),
sys/dev/cxgbe/common/t4_hw.c
13336
int t4_sched_params_cl_rl_kbps(struct adapter *adapter, int channel, int cl,
sys/dev/cxgbe/common/t4_hw.c
13358
return t4_wr_mbox_meat(adapter,adapter->mbox, &cmd, sizeof(cmd),
sys/dev/cxgbe/common/t4_hw.c
13375
int t4_config_watchdog(struct adapter *adapter, unsigned int mbox,
sys/dev/cxgbe/common/t4_hw.c
13402
return t4_wr_mbox(adapter, mbox, &wdog, sizeof wdog, NULL);
sys/dev/cxgbe/common/t4_hw.c
13405
int t4_get_devlog_level(struct adapter *adapter, unsigned int *level)
sys/dev/cxgbe/common/t4_hw.c
13414
ret = t4_wr_mbox(adapter, adapter->mbox, &devlog_cmd,
sys/dev/cxgbe/common/t4_hw.c
13423
int t4_set_devlog_level(struct adapter *adapter, unsigned int level)
sys/dev/cxgbe/common/t4_hw.c
13433
return t4_wr_mbox(adapter, adapter->mbox, &devlog_cmd,
sys/dev/cxgbe/common/t4_hw.c
13437
int t4_configure_add_smac(struct adapter *adap)
sys/dev/cxgbe/common/t4_hw.c
13468
int t4_configure_ringbb(struct adapter *adap)
sys/dev/cxgbe/common/t4_hw.c
135
u32 v = t4_read_reg(adapter, addr) & ~mask;
sys/dev/cxgbe/common/t4_hw.c
13511
int t4_set_vlan_acl(struct adapter *adap, unsigned int pf, unsigned int vf,
sys/dev/cxgbe/common/t4_hw.c
13555
int t4_del_mac(struct adapter *adap, unsigned int mbox, unsigned int viid,
sys/dev/cxgbe/common/t4_hw.c
13604
int t4_add_mac(struct adapter *adap, unsigned int mbox, unsigned int viid,
sys/dev/cxgbe/common/t4_hw.c
137
t4_write_reg(adapter, addr, v | val);
sys/dev/cxgbe/common/t4_hw.c
138
(void) t4_read_reg(adapter, addr); /* flush */
sys/dev/cxgbe/common/t4_hw.c
153
void t4_read_indirect(struct adapter *adap, unsigned int addr_reg,
sys/dev/cxgbe/common/t4_hw.c
176
void t4_write_indirect(struct adapter *adap, unsigned int addr_reg,
sys/dev/cxgbe/common/t4_hw.c
231
void t4_report_fw_error(struct adapter *adap)
sys/dev/cxgbe/common/t4_hw.c
255
static void get_mbox_rpl(struct adapter *adap, __be64 *rpl, int nflit,
sys/dev/cxgbe/common/t4_hw.c
265
static void fw_asrt(struct adapter *adap, struct fw_debug_cmd *asrt)
sys/dev/cxgbe/common/t4_hw.c
281
t4_port_reg(struct adapter *adap, u8 port, u32 reg)
sys/dev/cxgbe/common/t4_hw.c
291
read_tx_state_one(struct adapter *sc, int i, struct port_tx_state *tx_state)
sys/dev/cxgbe/common/t4_hw.c
303
read_tx_state(struct adapter *sc, struct port_tx_state *tx_state)
sys/dev/cxgbe/common/t4_hw.c
314
check_tx_state(struct adapter *sc, struct port_tx_state *tx_state)
sys/dev/cxgbe/common/t4_hw.c
3430
static int t4_seeprom_wait(struct adapter *adapter)
sys/dev/cxgbe/common/t4_hw.c
3432
unsigned int base = adapter->params.pci.vpd_cap_addr;
sys/dev/cxgbe/common/t4_hw.c
3439
if (!adapter->vpd_busy)
sys/dev/cxgbe/common/t4_hw.c
3451
t4_os_pci_read_cfg2(adapter, base + PCI_VPD_ADDR, &val);
sys/dev/cxgbe/common/t4_hw.c
3457
if ((val & PCI_VPD_ADDR_F) == adapter->vpd_flag) {
sys/dev/cxgbe/common/t4_hw.c
3458
adapter->vpd_busy = 0;
sys/dev/cxgbe/common/t4_hw.c
3483
int t4_seeprom_read(struct adapter *adapter, u32 addr, u32 *data)
sys/dev/cxgbe/common/t4_hw.c
3485
unsigned int base = adapter->params.pci.vpd_cap_addr;
sys/dev/cxgbe/common/t4_hw.c
3498
ret = t4_seeprom_wait(adapter);
sys/dev/cxgbe/common/t4_hw.c
3500
CH_ERR(adapter, "VPD still busy from previous operation\n");
sys/dev/cxgbe/common/t4_hw.c
3510
t4_os_pci_write_cfg2(adapter, base + PCI_VPD_ADDR, (u16)addr);
sys/dev/cxgbe/common/t4_hw.c
3511
adapter->vpd_busy = 1;
sys/dev/cxgbe/common/t4_hw.c
3512
adapter->vpd_flag = PCI_VPD_ADDR_F;
sys/dev/cxgbe/common/t4_hw.c
3513
ret = t4_seeprom_wait(adapter);
sys/dev/cxgbe/common/t4_hw.c
3515
CH_ERR(adapter, "VPD read of address %#x failed\n", addr);
sys/dev/cxgbe/common/t4_hw.c
3523
t4_os_pci_read_cfg4(adapter, base + PCI_VPD_DATA, data);
sys/dev/cxgbe/common/t4_hw.c
3538
int t4_seeprom_write(struct adapter *adapter, u32 addr, u32 data)
sys/dev/cxgbe/common/t4_hw.c
3540
unsigned int base = adapter->params.pci.vpd_cap_addr;
sys/dev/cxgbe/common/t4_hw.c
3555
ret = t4_seeprom_wait(adapter);
sys/dev/cxgbe/common/t4_hw.c
3557
CH_ERR(adapter, "VPD still busy from previous operation\n");
sys/dev/cxgbe/common/t4_hw.c
3567
t4_os_pci_write_cfg4(adapter, base + PCI_VPD_DATA,
sys/dev/cxgbe/common/t4_hw.c
3569
t4_os_pci_write_cfg2(adapter, base + PCI_VPD_ADDR,
sys/dev/cxgbe/common/t4_hw.c
3571
adapter->vpd_busy = 1;
sys/dev/cxgbe/common/t4_hw.c
3572
adapter->vpd_flag = 0;
sys/dev/cxgbe/common/t4_hw.c
3573
ret = t4_seeprom_wait(adapter);
sys/dev/cxgbe/common/t4_hw.c
3575
CH_ERR(adapter, "VPD write of address %#x failed\n", addr);
sys/dev/cxgbe/common/t4_hw.c
3583
t4_os_pci_write_cfg4(adapter, base + PCI_VPD_DATA, 0);
sys/dev/cxgbe/common/t4_hw.c
3587
t4_seeprom_read(adapter, EEPROM_STAT_ADDR, &stats_reg);
sys/dev/cxgbe/common/t4_hw.c
3632
int t4_seeprom_wp(struct adapter *adapter, int enable)
sys/dev/cxgbe/common/t4_hw.c
3634
return t4_seeprom_write(adapter, EEPROM_STAT_ADDR, enable ? 0xc : 0);
sys/dev/cxgbe/common/t4_hw.c
366
int t4_wr_mbox_meat_timeout(struct adapter *adap, int mbox, const void *cmd,
sys/dev/cxgbe/common/t4_hw.c
3690
static int get_vpd_params(struct adapter *adapter, struct vpd_params *p,
sys/dev/cxgbe/common/t4_hw.c
3702
ret = t4_seeprom_read(adapter, VPD_BASE, buf);
sys/dev/cxgbe/common/t4_hw.c
3716
ret = t4_seeprom_read(adapter, addr + i, buf++);
sys/dev/cxgbe/common/t4_hw.c
3724
CH_ERR(adapter, "missing VPD keyword " name "\n"); \
sys/dev/cxgbe/common/t4_hw.c
3734
CH_ERR(adapter,
sys/dev/cxgbe/common/t4_hw.c
3813
t4_flash_loc_start(struct adapter *adap, enum t4_flash_loc loc,
sys/dev/cxgbe/common/t4_hw.c
3850
static int sf1_read(struct adapter *adapter, unsigned int byte_cnt, int cont,
sys/dev/cxgbe/common/t4_hw.c
3858
if (t4_read_reg(adapter, A_SF_OP) & F_BUSY)
sys/dev/cxgbe/common/t4_hw.c
3861
if (chip_id(adapter) >= CHELSIO_T7)
sys/dev/cxgbe/common/t4_hw.c
3863
t4_write_reg(adapter, A_SF_OP, op);
sys/dev/cxgbe/common/t4_hw.c
3864
ret = t4_wait_op_done(adapter, A_SF_OP, F_BUSY, 0, SF_ATTEMPTS, 5);
sys/dev/cxgbe/common/t4_hw.c
3866
*valp = t4_read_reg(adapter, A_SF_DATA);
sys/dev/cxgbe/common/t4_hw.c
3882
static int sf1_write(struct adapter *adapter, unsigned int byte_cnt, int cont,
sys/dev/cxgbe/common/t4_hw.c
3887
if (t4_read_reg(adapter, A_SF_OP) & F_BUSY)
sys/dev/cxgbe/common/t4_hw.c
3889
t4_write_reg(adapter, A_SF_DATA, val);
sys/dev/cxgbe/common/t4_hw.c
3890
t4_write_reg(adapter, A_SF_OP, V_SF_LOCK(lock) |
sys/dev/cxgbe/common/t4_hw.c
3892
return t4_wait_op_done(adapter, A_SF_OP, F_BUSY, 0, SF_ATTEMPTS, 5);
sys/dev/cxgbe/common/t4_hw.c
3903
static int flash_wait_op(struct adapter *adapter, int attempts, int delay)
sys/dev/cxgbe/common/t4_hw.c
3909
if ((ret = sf1_write(adapter, 1, 1, 1, SF_RD_STATUS)) != 0 ||
sys/dev/cxgbe/common/t4_hw.c
3910
(ret = sf1_read(adapter, 1, 0, 1, &status)) != 0)
sys/dev/cxgbe/common/t4_hw.c
3934
int t4_read_flash(struct adapter *adapter, unsigned int addr,
sys/dev/cxgbe/common/t4_hw.c
3939
if (addr + nwords * sizeof(u32) > adapter->params.sf_size || (addr & 3))
sys/dev/cxgbe/common/t4_hw.c
3944
if ((ret = sf1_write(adapter, 4, 1, 0, addr)) != 0 ||
sys/dev/cxgbe/common/t4_hw.c
3945
(ret = sf1_read(adapter, 1, 1, 0, data)) != 0)
sys/dev/cxgbe/common/t4_hw.c
3949
ret = sf1_read(adapter, 4, nwords > 1, nwords == 1, data);
sys/dev/cxgbe/common/t4_hw.c
3951
t4_write_reg(adapter, A_SF_OP, 0); /* unlock SF */
sys/dev/cxgbe/common/t4_hw.c
3973
int t4_write_flash(struct adapter *adapter, unsigned int addr,
sys/dev/cxgbe/common/t4_hw.c
3980
if (addr >= adapter->params.sf_size || offset + n > SF_PAGE_SIZE)
sys/dev/cxgbe/common/t4_hw.c
3985
if ((ret = sf1_write(adapter, 1, 0, 1, SF_WR_ENABLE)) != 0 ||
sys/dev/cxgbe/common/t4_hw.c
3986
(ret = sf1_write(adapter, 4, 1, 1, val)) != 0)
sys/dev/cxgbe/common/t4_hw.c
3997
ret = sf1_write(adapter, c, c != left, 1, val);
sys/dev/cxgbe/common/t4_hw.c
4001
ret = flash_wait_op(adapter, 8, 1);
sys/dev/cxgbe/common/t4_hw.c
4005
t4_write_reg(adapter, A_SF_OP, 0); /* unlock SF */
sys/dev/cxgbe/common/t4_hw.c
4008
ret = t4_read_flash(adapter, addr & ~0xff, ARRAY_SIZE(buf), buf,
sys/dev/cxgbe/common/t4_hw.c
4014
CH_ERR(adapter,
sys/dev/cxgbe/common/t4_hw.c
4022
t4_write_reg(adapter, A_SF_OP, 0); /* unlock SF */
sys/dev/cxgbe/common/t4_hw.c
4033
int t4_get_fw_version(struct adapter *adapter, u32 *vers)
sys/dev/cxgbe/common/t4_hw.c
4035
const int start = t4_flash_loc_start(adapter, FLASH_LOC_FW, NULL);
sys/dev/cxgbe/common/t4_hw.c
4037
return t4_read_flash(adapter, start + offsetof(struct fw_hdr, fw_ver),
sys/dev/cxgbe/common/t4_hw.c
4048
int t4_get_fw_hdr(struct adapter *adapter, struct fw_hdr *hdr)
sys/dev/cxgbe/common/t4_hw.c
4050
const int start = t4_flash_loc_start(adapter, FLASH_LOC_FW, NULL);
sys/dev/cxgbe/common/t4_hw.c
4052
return t4_read_flash(adapter, start, sizeof (*hdr) / sizeof (uint32_t),
sys/dev/cxgbe/common/t4_hw.c
4063
int t4_get_bs_version(struct adapter *adapter, u32 *vers)
sys/dev/cxgbe/common/t4_hw.c
4065
const int start = t4_flash_loc_start(adapter, FLASH_LOC_FWBOOTSTRAP,
sys/dev/cxgbe/common/t4_hw.c
4068
return t4_read_flash(adapter, start + offsetof(struct fw_hdr, fw_ver),
sys/dev/cxgbe/common/t4_hw.c
4079
int t4_get_tp_version(struct adapter *adapter, u32 *vers)
sys/dev/cxgbe/common/t4_hw.c
4081
const int start = t4_flash_loc_start(adapter, FLASH_LOC_FW, NULL);
sys/dev/cxgbe/common/t4_hw.c
4083
return t4_read_flash(adapter, start +
sys/dev/cxgbe/common/t4_hw.c
4097
int t4_get_exprom_version(struct adapter *adapter, u32 *vers)
sys/dev/cxgbe/common/t4_hw.c
4106
const int start = t4_flash_loc_start(adapter, FLASH_LOC_EXP_ROM, NULL);
sys/dev/cxgbe/common/t4_hw.c
4108
ret = t4_read_flash(adapter, start, ARRAY_SIZE(exprom_header_buf),
sys/dev/cxgbe/common/t4_hw.c
4147
int t4_get_scfg_version(struct adapter *adapter, u32 *vers)
sys/dev/cxgbe/common/t4_hw.c
4154
ret = t4_query_params(adapter, adapter->mbox, adapter->pf, 0,
sys/dev/cxgbe/common/t4_hw.c
4182
int t4_get_vpd_version(struct adapter *adapter, u32 *vers)
sys/dev/cxgbe/common/t4_hw.c
4189
ret = t4_query_params(adapter, adapter->mbox, adapter->pf, 0,
sys/dev/cxgbe/common/t4_hw.c
4205
int t4_get_version_info(struct adapter *adapter)
sys/dev/cxgbe/common/t4_hw.c
4216
FIRST_RET(t4_get_fw_version(adapter, &adapter->params.fw_vers));
sys/dev/cxgbe/common/t4_hw.c
4217
FIRST_RET(t4_get_bs_version(adapter, &adapter->params.bs_vers));
sys/dev/cxgbe/common/t4_hw.c
4218
FIRST_RET(t4_get_tp_version(adapter, &adapter->params.tp_vers));
sys/dev/cxgbe/common/t4_hw.c
4219
FIRST_RET(t4_get_exprom_version(adapter, &adapter->params.er_vers));
sys/dev/cxgbe/common/t4_hw.c
4220
FIRST_RET(t4_get_scfg_version(adapter, &adapter->params.scfg_vers));
sys/dev/cxgbe/common/t4_hw.c
4221
FIRST_RET(t4_get_vpd_version(adapter, &adapter->params.vpd_vers));
sys/dev/cxgbe/common/t4_hw.c
4236
int t4_flash_erase_sectors(struct adapter *adapter, int start, int end)
sys/dev/cxgbe/common/t4_hw.c
4240
if (end >= adapter->params.sf_nsec)
sys/dev/cxgbe/common/t4_hw.c
4244
if ((ret = sf1_write(adapter, 1, 0, 1, SF_WR_ENABLE)) != 0 ||
sys/dev/cxgbe/common/t4_hw.c
4245
(ret = sf1_write(adapter, 4, 0, 1,
sys/dev/cxgbe/common/t4_hw.c
4247
(ret = flash_wait_op(adapter, 14, 500)) != 0) {
sys/dev/cxgbe/common/t4_hw.c
4248
CH_ERR(adapter,
sys/dev/cxgbe/common/t4_hw.c
4255
t4_write_reg(adapter, A_SF_OP, 0); /* unlock SF */
sys/dev/cxgbe/common/t4_hw.c
4267
int t4_flash_cfg_addr(struct adapter *adapter, unsigned int *lenp)
sys/dev/cxgbe/common/t4_hw.c
4270
const int cfg_start = t4_flash_loc_start(adapter, FLASH_LOC_CFG, &len);
sys/dev/cxgbe/common/t4_hw.c
4276
if (adapter->params.sf_size < cfg_start + len)
sys/dev/cxgbe/common/t4_hw.c
4289
static int t4_fw_matches_chip(struct adapter *adap,
sys/dev/cxgbe/common/t4_hw.c
4316
int t4_load_fw(struct adapter *adap, const u8 *fw_data, unsigned int size)
sys/dev/cxgbe/common/t4_hw.c
4405
int t4_fwcache(struct adapter *adap, enum fw_params_param_dev_fwcache op)
sys/dev/cxgbe/common/t4_hw.c
4424
void t4_cim_read_pif_la(struct adapter *adap, u32 *pif_req, u32 *pif_rsp,
sys/dev/cxgbe/common/t4_hw.c
4458
void t4_cim_read_ma_la(struct adapter *adap, u32 *ma_req, u32 *ma_rsp)
sys/dev/cxgbe/common/t4_hw.c
4479
void t4_ulprx_read_la(struct adapter *adap, u32 *la_buf)
sys/dev/cxgbe/common/t4_hw.c
4622
int t4_link_l1cfg(struct adapter *adap, unsigned int mbox, unsigned int port,
sys/dev/cxgbe/common/t4_hw.c
4761
int t4_restart_aneg(struct adapter *adap, unsigned int mbox, unsigned int port)
sys/dev/cxgbe/common/t4_hw.c
4784
bool (*action)(struct adapter *, int, int);
sys/dev/cxgbe/common/t4_hw.c
4808
show_intr_info(struct adapter *sc, const struct intr_info *ii, uint32_t cause,
sys/dev/cxgbe/common/t4_hw.c
4841
t4_handle_intr(struct adapter *sc, const struct intr_info *ii, uint32_t acause,
sys/dev/cxgbe/common/t4_hw.c
4889
static bool pcie_intr_handler(struct adapter *adap, int arg, int flags)
sys/dev/cxgbe/common/t4_hw.c
5046
static bool tp_intr_handler(struct adapter *adap, int arg, int flags)
sys/dev/cxgbe/common/t4_hw.c
5134
static bool sge_intr_handler(struct adapter *adap, int arg, int flags)
sys/dev/cxgbe/common/t4_hw.c
5317
static bool cim_intr_handler(struct adapter *adap, int arg, int flags)
sys/dev/cxgbe/common/t4_hw.c
5467
static bool ulprx_intr_handler(struct adapter *adap, int arg, int flags)
sys/dev/cxgbe/common/t4_hw.c
548
int t4_wr_mbox_meat(struct adapter *adap, int mbox, const void *cmd, int size,
sys/dev/cxgbe/common/t4_hw.c
555
static int t4_edc_err_read(struct adapter *adap, int idx)
sys/dev/cxgbe/common/t4_hw.c
5552
static bool ulptx_intr_handler(struct adapter *adap, int arg, int flags)
sys/dev/cxgbe/common/t4_hw.c
5651
static bool pmtx_dump_dbg_stats(struct adapter *adap, int arg, int flags)
sys/dev/cxgbe/common/t4_hw.c
5672
static bool pmtx_intr_handler(struct adapter *adap, int arg, int flags)
sys/dev/cxgbe/common/t4_hw.c
5711
static bool pmrx_intr_handler(struct adapter *adap, int arg, int flags)
sys/dev/cxgbe/common/t4_hw.c
5751
static bool cplsw_intr_handler(struct adapter *adap, int arg, int flags)
sys/dev/cxgbe/common/t4_hw.c
5794
static bool le_intr_handler(struct adapter *adap, int arg, int flags)
sys/dev/cxgbe/common/t4_hw.c
5853
static bool mps_intr_handler(struct adapter *adap, int arg, int flags)
sys/dev/cxgbe/common/t4_hw.c
604
int t4_mc_read(struct adapter *adap, int idx, u32 addr, __be32 *data, u64 *ecc)
sys/dev/cxgbe/common/t4_hw.c
6096
static bool mem_intr_handler(struct adapter *adap, int idx, int flags)
sys/dev/cxgbe/common/t4_hw.c
62
static int t4_wait_op_done_val(struct adapter *adapter, int reg, u32 mask,
sys/dev/cxgbe/common/t4_hw.c
6219
static bool ma_wrap_status(struct adapter *adap, int arg, int flags)
sys/dev/cxgbe/common/t4_hw.c
6238
static bool ma_intr_handler(struct adapter *adap, int arg, int flags)
sys/dev/cxgbe/common/t4_hw.c
6285
static bool smb_intr_handler(struct adapter *adap, int arg, int flags)
sys/dev/cxgbe/common/t4_hw.c
6308
static bool ncsi_intr_handler(struct adapter *adap, int arg, int flags)
sys/dev/cxgbe/common/t4_hw.c
6347
static bool mac_intr_handler(struct adapter *adap, int port, int flags)
sys/dev/cxgbe/common/t4_hw.c
6494
static bool pl_timeout_status(struct adapter *adap, int arg, int flags)
sys/dev/cxgbe/common/t4_hw.c
6506
static bool plpl_intr_handler(struct adapter *adap, int arg, int flags)
sys/dev/cxgbe/common/t4_hw.c
6547
static bool tlstx_intr_handler(struct adapter *adap, int idx, int flags)
sys/dev/cxgbe/common/t4_hw.c
6581
static bool hma_intr_handler(struct adapter *adap, int idx, int flags)
sys/dev/cxgbe/common/t4_hw.c
66
u32 val = t4_read_reg(adapter, reg);
sys/dev/cxgbe/common/t4_hw.c
660
int t4_edc_read(struct adapter *adap, int idx, u32 addr, __be32 *data, u64 *ecc)
sys/dev/cxgbe/common/t4_hw.c
6609
static bool cryptokey_intr_handler(struct adapter *adap, int idx, int flags)
sys/dev/cxgbe/common/t4_hw.c
6652
static bool gcache_intr_handler(struct adapter *adap, int idx, int flags)
sys/dev/cxgbe/common/t4_hw.c
6714
static bool arm_intr_handler(struct adapter *adap, int idx, int flags)
sys/dev/cxgbe/common/t4_hw.c
6793
get_perr_ucause(struct adapter *sc, const struct intr_info *ii)
sys/dev/cxgbe/common/t4_hw.c
6804
t4_perr_to_ic(struct adapter *adap, uint32_t perr)
sys/dev/cxgbe/common/t4_hw.c
6905
bool t4_slow_intr_handler(struct adapter *adap, int flags)
sys/dev/cxgbe/common/t4_hw.c
7149
void t4_intr_clear(struct adapter *adap)
sys/dev/cxgbe/common/t4_hw.c
7172
void t4_intr_enable(struct adapter *adap)
sys/dev/cxgbe/common/t4_hw.c
720
int t4_mem_read(struct adapter *adap, int mtype, u32 addr, u32 len,
sys/dev/cxgbe/common/t4_hw.c
7209
void t4_intr_disable(struct adapter *adap)
sys/dev/cxgbe/common/t4_hw.c
7250
int t4_config_rss_range(struct adapter *adapter, int mbox, unsigned int viid,
sys/dev/cxgbe/common/t4_hw.c
7322
ret = t4_wr_mbox(adapter, mbox, &cmd, sizeof(cmd), NULL);
sys/dev/cxgbe/common/t4_hw.c
7338
int t4_config_glbl_rss(struct adapter *adapter, int mbox, unsigned int mode,
sys/dev/cxgbe/common/t4_hw.c
7356
return t4_wr_mbox(adapter, mbox, &c, sizeof(c), NULL);
sys/dev/cxgbe/common/t4_hw.c
7371
int t4_config_vi_rss(struct adapter *adapter, int mbox, unsigned int viid,
sys/dev/cxgbe/common/t4_hw.c
7388
return t4_wr_mbox(adapter, mbox, &c, sizeof(c), NULL);
sys/dev/cxgbe/common/t4_hw.c
7392
static int rd_rss_row(struct adapter *adap, int row, u32 *val)
sys/dev/cxgbe/common/t4_hw.c
7412
int t4_read_rss(struct adapter *adapter, u16 *map)
sys/dev/cxgbe/common/t4_hw.c
7416
int rss_nentries = adapter->chip_params->rss_nentries;
sys/dev/cxgbe/common/t4_hw.c
7419
ret = rd_rss_row(adapter, i, &val);
sys/dev/cxgbe/common/t4_hw.c
7440
static int t4_tp_fw_ldst_rw(struct adapter *adap, int cmd, u32 *vals,
sys/dev/cxgbe/common/t4_hw.c
7484
static void t4_tp_indirect_rw(struct adapter *adap, u32 reg_addr, u32 reg_data,
sys/dev/cxgbe/common/t4_hw.c
7531
void t4_tp_pio_read(struct adapter *adap, u32 *buff, u32 nregs,
sys/dev/cxgbe/common/t4_hw.c
7548
void t4_tp_pio_write(struct adapter *adap, const u32 *buff, u32 nregs,
sys/dev/cxgbe/common/t4_hw.c
7565
void t4_tp_tm_pio_read(struct adapter *adap, u32 *buff, u32 nregs,
sys/dev/cxgbe/common/t4_hw.c
7582
void t4_tp_mib_read(struct adapter *adap, u32 *buff, u32 nregs, u32 start_index,
sys/dev/cxgbe/common/t4_hw.c
7597
void t4_read_rss_key(struct adapter *adap, u32 *key, bool sleep_ok)
sys/dev/cxgbe/common/t4_hw.c
7613
void t4_write_rss_key(struct adapter *adap, const u32 *key, int idx,
sys/dev/cxgbe/common/t4_hw.c
7651
void t4_read_rss_pf_config(struct adapter *adapter, unsigned int index,
sys/dev/cxgbe/common/t4_hw.c
7654
t4_tp_pio_read(adapter, valp, 1, A_TP_RSS_PF0_CONFIG + index, sleep_ok);
sys/dev/cxgbe/common/t4_hw.c
7667
void t4_write_rss_pf_config(struct adapter *adapter, unsigned int index,
sys/dev/cxgbe/common/t4_hw.c
7670
t4_tp_pio_write(adapter, &val, 1, A_TP_RSS_PF0_CONFIG + index,
sys/dev/cxgbe/common/t4_hw.c
7685
void t4_read_rss_vf_config(struct adapter *adapter, unsigned int index,
sys/dev/cxgbe/common/t4_hw.c
7690
if (chip_id(adapter) <= CHELSIO_T5) {
sys/dev/cxgbe/common/t4_hw.c
7700
vrt = t4_read_reg(adapter, A_TP_RSS_CONFIG_VRT);
sys/dev/cxgbe/common/t4_hw.c
7703
t4_write_reg(adapter, A_TP_RSS_CONFIG_VRT, vrt);
sys/dev/cxgbe/common/t4_hw.c
7708
t4_tp_pio_read(adapter, vfl, 1, A_TP_RSS_VFL_CONFIG, sleep_ok);
sys/dev/cxgbe/common/t4_hw.c
7709
t4_tp_pio_read(adapter, vfh, 1, A_TP_RSS_VFH_CONFIG, sleep_ok);
sys/dev/cxgbe/common/t4_hw.c
772
u32 t4_read_pcie_cfg4(struct adapter *adap, int reg, int drv_fw_attach)
sys/dev/cxgbe/common/t4_hw.c
7723
void t4_write_rss_vf_config(struct adapter *adapter, unsigned int index,
sys/dev/cxgbe/common/t4_hw.c
7728
if (chip_id(adapter) <= CHELSIO_T5) {
sys/dev/cxgbe/common/t4_hw.c
7739
t4_tp_pio_write(adapter, &vfl, 1, A_TP_RSS_VFL_CONFIG, sleep_ok);
sys/dev/cxgbe/common/t4_hw.c
7740
t4_tp_pio_write(adapter, &vfh, 1, A_TP_RSS_VFH_CONFIG, sleep_ok);
sys/dev/cxgbe/common/t4_hw.c
7745
vrt = t4_read_reg(adapter, A_TP_RSS_CONFIG_VRT);
sys/dev/cxgbe/common/t4_hw.c
7748
t4_write_reg(adapter, A_TP_RSS_CONFIG_VRT, vrt);
sys/dev/cxgbe/common/t4_hw.c
7758
u32 t4_read_rss_pf_map(struct adapter *adapter, bool sleep_ok)
sys/dev/cxgbe/common/t4_hw.c
7762
t4_tp_pio_read(adapter, &pfmap, 1, A_TP_RSS_PF_MAP, sleep_ok);
sys/dev/cxgbe/common/t4_hw.c
7774
void t4_write_rss_pf_map(struct adapter *adapter, u32 pfmap, bool sleep_ok)
sys/dev/cxgbe/common/t4_hw.c
7776
t4_tp_pio_write(adapter, &pfmap, 1, A_TP_RSS_PF_MAP, sleep_ok);
sys/dev/cxgbe/common/t4_hw.c
7786
u32 t4_read_rss_pf_mask(struct adapter *adapter, bool sleep_ok)
sys/dev/cxgbe/common/t4_hw.c
7790
t4_tp_pio_read(adapter, &pfmask, 1, A_TP_RSS_PF_MSK, sleep_ok);
sys/dev/cxgbe/common/t4_hw.c
7802
void t4_write_rss_pf_mask(struct adapter *adapter, u32 pfmask, bool sleep_ok)
sys/dev/cxgbe/common/t4_hw.c
7804
t4_tp_pio_write(adapter, &pfmask, 1, A_TP_RSS_PF_MSK, sleep_ok);
sys/dev/cxgbe/common/t4_hw.c
7817
void t4_tp_get_tcp_stats(struct adapter *adap, struct tp_tcp_stats *v4,
sys/dev/cxgbe/common/t4_hw.c
7855
void t4_tp_get_err_stats(struct adapter *adap, struct tp_err_stats *st,
sys/dev/cxgbe/common/t4_hw.c
7896
void t4_tp_get_tnl_stats(struct adapter *adap, struct tp_tnl_stats *st,
sys/dev/cxgbe/common/t4_hw.c
7914
void t4_tp_get_proxy_stats(struct adapter *adap, struct tp_proxy_stats *st,
sys/dev/cxgbe/common/t4_hw.c
7930
void t4_tp_get_cpl_stats(struct adapter *adap, struct tp_cpl_stats *st,
sys/dev/cxgbe/common/t4_hw.c
7947
void t4_tp_get_rdma_stats(struct adapter *adap, struct tp_rdma_stats *st,
sys/dev/cxgbe/common/t4_hw.c
7968
void t4_get_fcoe_stats(struct adapter *adap, unsigned int idx,
sys/dev/cxgbe/common/t4_hw.c
7993
void t4_get_usm_stats(struct adapter *adap, struct tp_usm_stats *st,
sys/dev/cxgbe/common/t4_hw.c
80
static inline int t4_wait_op_done(struct adapter *adapter, int reg, u32 mask,
sys/dev/cxgbe/common/t4_hw.c
8013
void t4_tp_get_tid_stats(struct adapter *adap, struct tp_tid_stats *st,
sys/dev/cxgbe/common/t4_hw.c
8028
void t4_read_mtu_tbl(struct adapter *adap, u16 *mtus, u8 *mtu_log)
sys/dev/cxgbe/common/t4_hw.c
8051
void t4_read_cong_tbl(struct adapter *adap, u16 incr[NMTUS][NCCTRL_WIN])
sys/dev/cxgbe/common/t4_hw.c
8073
void t4_tp_wr_bits_indirect(struct adapter *adap, unsigned int addr,
sys/dev/cxgbe/common/t4_hw.c
8140
void t4_load_mtus(struct adapter *adap, const unsigned short *mtus,
sys/dev/cxgbe/common/t4_hw.c
8181
int t4_set_pace_tbl(struct adapter *adap, const unsigned int *pace_vals,
sys/dev/cxgbe/common/t4_hw.c
8211
int t4_set_sched_bps(struct adapter *adap, int sched, unsigned int kbps)
sys/dev/cxgbe/common/t4_hw.c
822
unsigned int t4_get_regs_len(struct adapter *adapter)
sys/dev/cxgbe/common/t4_hw.c
824
unsigned int chip_version = chip_id(adapter);
sys/dev/cxgbe/common/t4_hw.c
8255
int t4_set_sched_ipg(struct adapter *adap, int sched, unsigned int ipg)
sys/dev/cxgbe/common/t4_hw.c
828
if (adapter->flags & IS_VF)
sys/dev/cxgbe/common/t4_hw.c
8286
static u64 chan_rate(struct adapter *adap, unsigned int bytes256)
sys/dev/cxgbe/common/t4_hw.c
83
return t4_wait_op_done_val(adapter, reg, mask, polarity, attempts,
sys/dev/cxgbe/common/t4_hw.c
8302
void t4_get_chan_txrate(struct adapter *adap, u64 *nic_rate, u64 *ofld_rate)
sys/dev/cxgbe/common/t4_hw.c
8334
int t4_set_trace_filter(struct adapter *adap, const struct trace_params *tp,
sys/dev/cxgbe/common/t4_hw.c
835
if (adapter->flags & IS_VF)
sys/dev/cxgbe/common/t4_hw.c
840
CH_ERR(adapter,
sys/dev/cxgbe/common/t4_hw.c
8420
void t4_get_trace_filter(struct adapter *adap, struct trace_params *tp, int idx,
sys/dev/cxgbe/common/t4_hw.c
8468
void t4_set_trace_rss_control(struct adapter *adap, u8 chan, u16 qid)
sys/dev/cxgbe/common/t4_hw.c
8498
void t4_pmtx_get_stats(struct adapter *adap, u32 cnt[], u64 cycles[])
sys/dev/cxgbe/common/t4_hw.c
8527
void t4_pmrx_get_stats(struct adapter *adap, u32 cnt[], u64 cycles[])
sys/dev/cxgbe/common/t4_hw.c
855
void t4_get_regs(struct adapter *adap, u8 *buf, size_t buf_size)
sys/dev/cxgbe/common/t4_hw.c
8553
void t4_pmrx_cache_get_stats(struct adapter *adap, u32 stats[])
sys/dev/cxgbe/common/t4_hw.c
8574
static unsigned int t4_get_mps_bg_map(struct adapter *adap, int idx)
sys/dev/cxgbe/common/t4_hw.c
8593
static unsigned int t4_get_rx_e_chan_map(struct adapter *adap, int idx)
sys/dev/cxgbe/common/t4_hw.c
8621
static unsigned int t4_get_rx_c_chan(struct adapter *adap, int idx)
sys/dev/cxgbe/common/t4_hw.c
8631
static unsigned int t4_get_tx_c_chan(struct adapter *adap, int idx)
sys/dev/cxgbe/common/t4_hw.c
8683
void t4_get_port_stats_offset(struct adapter *adap, int idx,
sys/dev/cxgbe/common/t4_hw.c
8705
void t4_get_port_stats(struct adapter *adap, int idx, struct port_stats *p)
sys/dev/cxgbe/common/t4_hw.c
8819
void t4_get_lb_stats(struct adapter *adap, int idx, struct lb_port_stats *p)
sys/dev/cxgbe/common/t4_hw.c
8868
void t4_wol_magic_enable(struct adapter *adap, unsigned int port,
sys/dev/cxgbe/common/t4_hw.c
8913
int t4_wol_pat_enable(struct adapter *adap, unsigned int port, unsigned int map,
sys/dev/cxgbe/common/t4_hw.c
8993
int t4_fwaddrspace_write(struct adapter *adap, unsigned int mbox,
sys/dev/cxgbe/common/t4_hw.c
9023
int t4_mdio_rd(struct adapter *adap, unsigned int mbox, unsigned int phy_addr,
sys/dev/cxgbe/common/t4_hw.c
9057
int t4_mdio_wr(struct adapter *adap, unsigned int mbox, unsigned int phy_addr,
sys/dev/cxgbe/common/t4_hw.c
9083
void t4_sge_decode_idma_state(struct adapter *adapter, int state)
sys/dev/cxgbe/common/t4_hw.c
9198
unsigned int chip_version = chip_id(adapter);
sys/dev/cxgbe/common/t4_hw.c
9221
CH_ERR(adapter, "Unsupported chip version %d\n", chip_version);
sys/dev/cxgbe/common/t4_hw.c
9226
CH_WARN(adapter, "idma state %s\n", sge_idma_decode[state]);
sys/dev/cxgbe/common/t4_hw.c
9228
CH_WARN(adapter, "idma state %d unknown\n", state);
sys/dev/cxgbe/common/t4_hw.c
9231
CH_WARN(adapter, "SGE register %#x value %#x\n",
sys/dev/cxgbe/common/t4_hw.c
9232
sge_regs[i], t4_read_reg(adapter, sge_regs[i]));
sys/dev/cxgbe/common/t4_hw.c
9243
int t4_sge_ctxt_flush(struct adapter *adap, unsigned int mbox, int ctxt_type)
sys/dev/cxgbe/common/t4_hw.c
9274
int t4_fw_hello(struct adapter *adap, unsigned int mbox, unsigned int evt_mbox,
sys/dev/cxgbe/common/t4_hw.c
9398
int t4_fw_bye(struct adapter *adap, unsigned int mbox)
sys/dev/cxgbe/common/t4_hw.c
9415
int t4_fw_reset(struct adapter *adap, unsigned int mbox, int reset)
sys/dev/cxgbe/common/t4_hw.c
9441
int t4_fw_halt(struct adapter *adap, unsigned int mbox, int force)
sys/dev/cxgbe/common/t4_hw.c
9493
int t4_fw_restart(struct adapter *adap, unsigned int mbox)
sys/dev/cxgbe/common/t4_hw.c
9529
int t4_fw_upgrade(struct adapter *adap, unsigned int mbox,
sys/dev/cxgbe/common/t4_hw.c
9561
int t4_fw_initialize(struct adapter *adap, unsigned int mbox)
sys/dev/cxgbe/common/t4_hw.c
9584
int t4_query_params_rw(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/t4_hw.c
9625
int t4_query_params(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/t4_hw.c
9646
int t4_set_params_timeout(struct adapter *adap, unsigned int mbox,
sys/dev/cxgbe/common/t4_hw.c
9685
int t4_set_params(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/t4_hw.c
9714
int t4_cfg_pfvf(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/t4_hw.c
9761
int t4_alloc_vi_func(struct adapter *adap, unsigned int mbox,
sys/dev/cxgbe/common/t4_hw.c
9831
int t4_alloc_vi(struct adapter *adap, unsigned int mbox, unsigned int port,
sys/dev/cxgbe/common/t4_hw.c
9849
int t4_free_vi(struct adapter *adap, unsigned int mbox, unsigned int pf,
sys/dev/cxgbe/common/t4_hw.c
9880
int t4_set_rxmode(struct adapter *adap, unsigned int mbox, unsigned int viid,
sys/dev/cxgbe/common/t4_hw.c
9928
int t4_alloc_encap_mac_filt(struct adapter *adap, unsigned int viid,
sys/dev/cxgbe/common/t4_hw.c
9976
int t4_alloc_raw_mac_filt(struct adapter *adap, unsigned int viid,
sys/dev/cxgbe/common/t4vf_hw.c
113
v = t4vf_query_params(adapter, 7, params, vals);
sys/dev/cxgbe/common/t4vf_hw.c
122
sp->timer_val[0] = core_ticks_to_us(adapter, G_TIMERVALUE0(vals[2]));
sys/dev/cxgbe/common/t4vf_hw.c
123
sp->timer_val[1] = core_ticks_to_us(adapter, G_TIMERVALUE1(vals[2]));
sys/dev/cxgbe/common/t4vf_hw.c
124
sp->timer_val[2] = core_ticks_to_us(adapter, G_TIMERVALUE2(vals[3]));
sys/dev/cxgbe/common/t4vf_hw.c
125
sp->timer_val[3] = core_ticks_to_us(adapter, G_TIMERVALUE3(vals[3]));
sys/dev/cxgbe/common/t4vf_hw.c
126
sp->timer_val[4] = core_ticks_to_us(adapter, G_TIMERVALUE4(vals[4]));
sys/dev/cxgbe/common/t4vf_hw.c
127
sp->timer_val[5] = core_ticks_to_us(adapter, G_TIMERVALUE5(vals[4]));
sys/dev/cxgbe/common/t4vf_hw.c
130
if (is_t4(adapter))
sys/dev/cxgbe/common/t4vf_hw.c
132
else if (is_t5(adapter))
sys/dev/cxgbe/common/t4vf_hw.c
141
whoami = t4_read_reg(adapter, VF_PL_REG(A_PL_VF_WHOAMI));
sys/dev/cxgbe/common/t4vf_hw.c
142
if (chip_id(adapter) <= CHELSIO_T5)
sys/dev/cxgbe/common/t4vf_hw.c
154
v = t4vf_query_params(adapter, 1, params, vals);
sys/dev/cxgbe/common/t4vf_hw.c
174
if (chip_id(adapter) <= CHELSIO_T5) {
sys/dev/cxgbe/common/t4vf_hw.c
181
if (is_t4(adapter))
sys/dev/cxgbe/common/t4vf_hw.c
186
v = t4vf_query_params(adapter, 1, params, vals);
sys/dev/cxgbe/common/t4vf_hw.c
188
CH_ERR(adapter, "Unable to get SGE Control2; "
sys/dev/cxgbe/common/t4vf_hw.c
204
if (!is_t4(adapter)) {
sys/dev/cxgbe/common/t4vf_hw.c
211
v = t4vf_query_params(adapter, 2, params, vals);
sys/dev/cxgbe/common/t4vf_hw.c
213
CH_WARN(adapter, "Unable to get VF SGE Queues/Page; "
sys/dev/cxgbe/common/t4vf_hw.c
234
int t4vf_get_rss_glb_config(struct adapter *adapter)
sys/dev/cxgbe/common/t4vf_hw.c
236
struct rss_params *rss = &adapter->params.rss;
sys/dev/cxgbe/common/t4vf_hw.c
249
v = t4vf_wr_mbox(adapter, &cmd, sizeof(cmd), &rpl);
sys/dev/cxgbe/common/t4vf_hw.c
309
int t4vf_get_vfres(struct adapter *adapter)
sys/dev/cxgbe/common/t4vf_hw.c
311
struct vf_resources *vfres = &adapter->params.vfres;
sys/dev/cxgbe/common/t4vf_hw.c
325
v = t4vf_wr_mbox(adapter, &cmd, sizeof(cmd), &rpl);
sys/dev/cxgbe/common/t4vf_hw.c
355
int t4vf_prep_adapter(struct adapter *adapter)
sys/dev/cxgbe/common/t4vf_hw.c
362
err = t4vf_wait_dev_ready(adapter);
sys/dev/cxgbe/common/t4vf_hw.c
366
adapter->params.chipid = pci_get_device(adapter->dev) >> 12;
sys/dev/cxgbe/common/t4vf_hw.c
367
if (adapter->params.chipid >= 0xa) {
sys/dev/cxgbe/common/t4vf_hw.c
368
adapter->params.chipid -= (0xa - 0x4);
sys/dev/cxgbe/common/t4vf_hw.c
369
adapter->params.fpga = 1;
sys/dev/cxgbe/common/t4vf_hw.c
376
adapter->params.nports = 1;
sys/dev/cxgbe/common/t4vf_hw.c
377
adapter->params.vfres.pmask = 1;
sys/dev/cxgbe/common/t4vf_hw.c
378
adapter->params.vpd.cclk = 50000;
sys/dev/cxgbe/common/t4vf_hw.c
380
adapter->chip_params = t4_get_chip_params(chip_id(adapter));
sys/dev/cxgbe/common/t4vf_hw.c
381
if (adapter->chip_params == NULL)
sys/dev/cxgbe/common/t4vf_hw.c
397
int t4vf_get_vf_mac(struct adapter *adapter, unsigned int port,
sys/dev/cxgbe/common/t4vf_hw.c
408
ret = t4vf_wr_mbox(adapter, &cmd, sizeof(cmd), &cmd);
sys/dev/cxgbe/common/t4vf_hw.c
440
int t4vf_get_vf_vlan(struct adapter *adapter)
sys/dev/cxgbe/common/t4vf_hw.c
45
int t4vf_wait_dev_ready(struct adapter *adapter)
sys/dev/cxgbe/common/t4vf_hw.c
452
ret = t4vf_wr_mbox(adapter, &cmd, sizeof(cmd), &cmd);
sys/dev/cxgbe/common/t4vf_hw.c
52
val = t4_read_reg(adapter, whoami);
sys/dev/cxgbe/common/t4vf_hw.c
56
val = t4_read_reg(adapter, whoami);
sys/dev/cxgbe/common/t4vf_hw.c
72
int t4vf_fw_reset(struct adapter *adapter)
sys/dev/cxgbe/common/t4vf_hw.c
80
return t4vf_wr_mbox(adapter, &cmd, sizeof(cmd), NULL);
sys/dev/cxgbe/common/t4vf_hw.c
91
int t4vf_get_sge_params(struct adapter *adapter)
sys/dev/cxgbe/common/t4vf_hw.c
93
struct sge_params *sp = &adapter->params.sge;
sys/dev/cxgbe/crypto/t4_crypto.c
1100
t4_wrq_tx(sc->adapter, wr);
sys/dev/cxgbe/crypto/t4_crypto.c
1371
t4_wrq_tx(sc->adapter, wr);
sys/dev/cxgbe/crypto/t4_crypto.c
1737
t4_wrq_tx(sc->adapter, wr);
sys/dev/cxgbe/crypto/t4_crypto.c
178
struct adapter *adapter;
sys/dev/cxgbe/crypto/t4_crypto.c
1805
struct adapter *sc;
sys/dev/cxgbe/crypto/t4_crypto.c
1929
pi = sc->adapter->port[port];
sys/dev/cxgbe/crypto/t4_crypto.c
1930
sc->ports[port].txq = &sc->adapter->sge.ctrlq[port];
sys/dev/cxgbe/crypto/t4_crypto.c
1931
sc->ports[port].rxq = &sc->adapter->sge.rxq[pi->vi->first_rxq];
sys/dev/cxgbe/crypto/t4_crypto.c
1944
if (port != 0 && is_t6(sc->adapter) &&
sys/dev/cxgbe/crypto/t4_crypto.c
1945
sc->adapter->params.fw_vers < FW_VERSION32(1, 25, 4, 0))
sys/dev/cxgbe/crypto/t4_crypto.c
1961
sc->adapter = device_get_softc(device_get_parent(dev));
sys/dev/cxgbe/crypto/t4_crypto.c
1962
for_each_port(sc->adapter, i) {
sys/dev/cxgbe/crypto/t4_crypto.c
1977
sc->first_rxq_id = sc->adapter->sge.rxq[0].iq.abs_id;
sys/dev/cxgbe/crypto/t4_crypto.c
2047
for_each_port(sc->adapter, i) {
sys/dev/cxgbe/crypto/t4_crypto.c
2298
if (p->rxq->iq.adapter == NULL || p->txq->adapter == NULL)
sys/dev/cxgbe/crypto/t4_crypto.c
464
(is_t7(sc->adapter) ? V_ULP_TXPKT_CMDMORE(1) : 0) |
sys/dev/cxgbe/crypto/t4_crypto.c
596
t4_wrq_tx(sc->adapter, wr);
sys/dev/cxgbe/crypto/t4_crypto.c
777
t4_wrq_tx(sc->adapter, wr);
sys/dev/cxgbe/crypto/t4_keyctx.c
654
t4_alloc_tls_keyid(struct adapter *sc)
sys/dev/cxgbe/crypto/t4_keyctx.c
669
t4_free_tls_keyid(struct adapter *sc, int keyid)
sys/dev/cxgbe/crypto/t6_kern_tls.c
121
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/crypto/t6_kern_tls.c
149
mk_ktls_act_open_req(struct adapter *sc, struct vi_info *vi, struct inpcb *inp,
sys/dev/cxgbe/crypto/t6_kern_tls.c
180
mk_ktls_act_open_req6(struct adapter *sc, struct vi_info *vi,
sys/dev/cxgbe/crypto/t6_kern_tls.c
2075
struct adapter *sc;
sys/dev/cxgbe/crypto/t6_kern_tls.c
215
send_ktls_act_open_req(struct adapter *sc, struct vi_info *vi,
sys/dev/cxgbe/crypto/t6_kern_tls.c
249
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/crypto/t6_kern_tls.c
378
struct adapter *sc;
sys/dev/cxgbe/crypto/t6_kern_tls.c
435
sc = vi->adapter;
sys/dev/cxgbe/crypto/t6_kern_tls.c
70
struct adapter *sc;
sys/dev/cxgbe/crypto/t7_kern_tls.c
131
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/crypto/t7_kern_tls.c
157
struct adapter *sc;
sys/dev/cxgbe/crypto/t7_kern_tls.c
2098
struct adapter *sc;
sys/dev/cxgbe/crypto/t7_kern_tls.c
218
sc = vi->adapter;
sys/dev/cxgbe/crypto/t7_kern_tls.c
74
struct adapter *sc;
sys/dev/cxgbe/cudbg/cudbg.h
371
struct adapter *adap; /* Pointer to adapter structure
sys/dev/cxgbe/cudbg/cudbg_flash_utils.c
150
struct adapter *adap = cudbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_flash_utils.c
241
int write_flash(struct adapter *adap, u32 start_sec, void *data, u32 size)
sys/dev/cxgbe/cudbg/cudbg_flash_utils.c
321
struct adapter *adap = cudbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_flash_utils.c
35
int write_flash(struct adapter *adap, u32 start_sec, void *data, u32 size);
sys/dev/cxgbe/cudbg/cudbg_flash_utils.c
36
int read_flash(struct adapter *adap, u32 start_sec , void *data, u32 size,
sys/dev/cxgbe/cudbg/cudbg_flash_utils.c
457
int read_flash(struct adapter *adap, u32 start_sec , void *data, u32 size,
sys/dev/cxgbe/cudbg/cudbg_flash_utils.c
46
void set_sector_availability(struct adapter *adap,
sys/dev/cxgbe/cudbg/cudbg_flash_utils.c
60
find_empty_sec(struct adapter *adap, struct cudbg_flash_sec_info *sec_info)
sys/dev/cxgbe/cudbg/cudbg_lib.c
1094
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
1127
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
1171
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
1205
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
1271
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
1315
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
1350
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
1382
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
1420
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
1454
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
1487
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
1529
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
1561
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
1589
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
1617
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
1655
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
1693
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
1764
static int get_max_ctxt_qid(struct adapter *padap,
sys/dev/cxgbe/cudbg/cudbg_lib.c
1854
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
1966
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
2127
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
214
struct adapter *padap = cudbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
2240
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
2290
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
2323
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
2387
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
2465
static int get_payload_range(struct adapter *padap, u8 mem_type,
sys/dev/cxgbe/cudbg/cudbg_lib.c
2554
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
2671
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
2722
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
2872
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
2920
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
2945
static int check_busy_bit(struct adapter *padap)
sys/dev/cxgbe/cudbg/cudbg_lib.c
2965
static int cim_ha_rreg(struct adapter *padap, u32 addr, u32 *val)
sys/dev/cxgbe/cudbg/cudbg_lib.c
2984
static int dump_up_cim(struct adapter *padap, struct cudbg_init *pdbg_init,
sys/dev/cxgbe/cudbg/cudbg_lib.c
3013
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
3139
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
3221
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
3296
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
3444
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
3479
static void mps_rpl_backdoor(struct adapter *padap, struct fw_ldst_mps_rplc *mps_rplc)
sys/dev/cxgbe/cudbg/cudbg_lib.c
3511
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
3678
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
3714
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
3772
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
3885
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
3961
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
4017
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
4091
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
4210
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
4260
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
4366
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
573
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
608
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
643
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
677
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
725
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
74
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
757
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
792
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_lib.c
836
static int fill_meminfo(struct adapter *padap,
sys/dev/cxgbe/cudbg/cudbg_wtp.c
1298
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_wtp.c
258
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_wtp.c
277
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_wtp.c
293
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cudbg/cudbg_wtp.c
935
struct adapter *padap = pdbg_init->adap;
sys/dev/cxgbe/cxgbei/cxgbei.c
147
cxgbei_init(struct adapter *sc, struct cxgbei_data *ci)
sys/dev/cxgbe/cxgbei/cxgbei.c
195
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/cxgbei/cxgbei.c
232
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/cxgbei/cxgbei.c
446
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/cxgbei/cxgbei.c
583
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/cxgbei/cxgbei.c
824
cxgbei_activate(struct adapter *sc)
sys/dev/cxgbe/cxgbei/cxgbei.c
857
cxgbei_deactivate(struct adapter *sc)
sys/dev/cxgbe/cxgbei/cxgbei.c
874
cxgbei_activate_all(struct adapter *sc, void *arg __unused)
sys/dev/cxgbe/cxgbei/cxgbei.c
888
cxgbei_deactivate_all(struct adapter *sc, void *arg __unused)
sys/dev/cxgbe/cxgbei/cxgbei.c
96
read_pdu_limits(struct adapter *sc, uint32_t *max_tx_data_len,
sys/dev/cxgbe/cxgbei/cxgbei.h
51
struct adapter *sc;
sys/dev/cxgbe/cxgbei/icl_cxgbei.c
1096
MPASS(toep->vi->adapter == icc->sc);
sys/dev/cxgbe/cxgbei/icl_cxgbei.c
1331
struct adapter *sc = icc->sc;
sys/dev/cxgbe/cxgbei/icl_cxgbei.c
1493
struct adapter *sc = icc->sc;
sys/dev/cxgbe/cxgbei/icl_cxgbei.c
1668
cxgbei_limits(struct adapter *sc, void *arg)
sys/dev/cxgbe/cxgbei/icl_cxgbei.c
1700
struct adapter *sc;
sys/dev/cxgbe/cxgbei/icl_cxgbei.c
980
is_memfree(struct adapter *sc)
sys/dev/cxgbe/cxgbei/icl_cxgbei.c
993
set_ulp_mode_iscsi(struct adapter *sc, struct toepcb *toep, u_int ulp_submode)
sys/dev/cxgbe/iw_cxgbe/cm.c
1094
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/iw_cxgbe/cm.c
2971
static int fw6_wr_rpl(struct adapter *sc, const __be64 *rpl)
sys/dev/cxgbe/iw_cxgbe/cm.c
2986
static int fw6_cqe_handler(struct adapter *sc, const __be64 *rpl)
sys/dev/cxgbe/iw_cxgbe/cm.c
330
struct adapter *adap = NULL;
sys/dev/cxgbe/iw_cxgbe/cq.c
55
struct adapter *sc = rdev->adap;
sys/dev/cxgbe/iw_cxgbe/cq.c
98
struct adapter *sc = rdev->adap;
sys/dev/cxgbe/iw_cxgbe/device.c
198
c4iw_alloc(struct adapter *sc)
sys/dev/cxgbe/iw_cxgbe/device.c
252
static int c4iw_activate(struct adapter *);
sys/dev/cxgbe/iw_cxgbe/device.c
253
static int c4iw_deactivate(struct adapter *);
sys/dev/cxgbe/iw_cxgbe/device.c
254
static int c4iw_stop(struct adapter *);
sys/dev/cxgbe/iw_cxgbe/device.c
255
static int c4iw_restart(struct adapter *);
sys/dev/cxgbe/iw_cxgbe/device.c
265
c4iw_activate(struct adapter *sc)
sys/dev/cxgbe/iw_cxgbe/device.c
309
c4iw_deactivate(struct adapter *sc)
sys/dev/cxgbe/iw_cxgbe/device.c
323
c4iw_stop(struct adapter *sc)
sys/dev/cxgbe/iw_cxgbe/device.c
341
c4iw_restart(struct adapter *sc)
sys/dev/cxgbe/iw_cxgbe/device.c
353
c4iw_activate_all(struct adapter *sc, void *arg __unused)
sys/dev/cxgbe/iw_cxgbe/device.c
367
c4iw_deactivate_all(struct adapter *sc, void *arg __unused)
sys/dev/cxgbe/iw_cxgbe/device.c
89
struct adapter *sc = rdev->adap;
sys/dev/cxgbe/iw_cxgbe/ev.c
264
struct c4iw_dev *dev = iq->adapter->iwarp_softc;
sys/dev/cxgbe/iw_cxgbe/ev.c
42
static void print_tpte(struct adapter *sc, const u32 stag,
sys/dev/cxgbe/iw_cxgbe/ev.c
64
void t4_dump_stag(struct adapter *sc, const u32 stag)
sys/dev/cxgbe/iw_cxgbe/ev.c
78
void t4_dump_all_stag(struct adapter *sc)
sys/dev/cxgbe/iw_cxgbe/ev.c
97
struct adapter *sc = dev->rdev.adap;
sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h
150
struct adapter *adap;
sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h
210
struct adapter *sc = rdev->adap;
sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h
980
void t4_dump_stag(struct adapter *sc, const u32 stag);
sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h
981
void t4_dump_all_stag(struct adapter *sc);
sys/dev/cxgbe/iw_cxgbe/mem.c
61
struct adapter *sc = rdev->adap;
sys/dev/cxgbe/iw_cxgbe/mem.c
87
struct adapter *sc = rdev->adap;
sys/dev/cxgbe/iw_cxgbe/provider.c
276
struct adapter *sc;
sys/dev/cxgbe/iw_cxgbe/provider.c
296
struct adapter *sc = dev->rdev.adap;
sys/dev/cxgbe/iw_cxgbe/provider.c
338
struct adapter *sc;
sys/dev/cxgbe/iw_cxgbe/provider.c
404
struct adapter *sc = dev->rdev.adap;
sys/dev/cxgbe/iw_cxgbe/qp.c
1251
struct adapter *sc = rdev->adap;
sys/dev/cxgbe/iw_cxgbe/qp.c
129
struct adapter *sc = rdev->adap;
sys/dev/cxgbe/iw_cxgbe/qp.c
1352
struct adapter *sc = rdev->adap;
sys/dev/cxgbe/nvmf/nvmf_che.c
135
struct adapter *sc;
sys/dev/cxgbe/nvmf/nvmf_che.c
2025
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/nvmf/nvmf_che.c
2088
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/nvmf/nvmf_che.c
2353
struct adapter *sc = td_adapter(toep->td);
sys/dev/cxgbe/nvmf/nvmf_che.c
2402
struct adapter *sc;
sys/dev/cxgbe/nvmf/nvmf_che.c
2522
MPASS(toep->vi->adapter == sc);
sys/dev/cxgbe/nvmf/nvmf_che.c
3114
read_pdu_limits(struct adapter *sc, u_int *max_tx_pdu_len,
sys/dev/cxgbe/nvmf/nvmf_che.c
3141
nvmf_che_init(struct adapter *sc, struct nvmf_che_adapter *nca)
sys/dev/cxgbe/nvmf/nvmf_che.c
3186
nvmf_che_activate(struct adapter *sc)
sys/dev/cxgbe/nvmf/nvmf_che.c
3221
nvmf_che_deactivate(struct adapter *sc)
sys/dev/cxgbe/nvmf/nvmf_che.c
3236
nvmf_che_activate_all(struct adapter *sc, void *arg __unused)
sys/dev/cxgbe/nvmf/nvmf_che.c
3249
nvmf_che_deactivate_all(struct adapter *sc, void *arg __unused)
sys/dev/cxgbe/nvmf/nvmf_che.c
480
che_write_mem_inline(struct adapter *sc, struct toepcb *toep, uint32_t addr,
sys/dev/cxgbe/nvmf/nvmf_che.c
512
che_write_mem_dma_aligned(struct adapter *sc, struct toepcb *toep,
sys/dev/cxgbe/nvmf/nvmf_che.c
554
struct adapter *sc = qp->nca->sc;
sys/dev/cxgbe/nvmf/nvmf_che.c
588
struct adapter *sc = qp->nca->sc;
sys/dev/cxgbe/nvmf/nvmf_che.c
875
t4_push_pdus(toep->vi->adapter, toep, 0);
sys/dev/cxgbe/offload.h
203
struct adapter;
sys/dev/cxgbe/offload.h
206
int (*uld_activate)(struct adapter *);
sys/dev/cxgbe/offload.h
207
int (*uld_deactivate)(struct adapter *);
sys/dev/cxgbe/offload.h
208
int (*uld_stop)(struct adapter *);
sys/dev/cxgbe/offload.h
209
int (*uld_restart)(struct adapter *);
sys/dev/cxgbe/offload.h
249
int t4_activate_uld(struct adapter *, int);
sys/dev/cxgbe/offload.h
250
int t4_deactivate_uld(struct adapter *, int);
sys/dev/cxgbe/offload.h
251
int uld_active(struct adapter *, int);
sys/dev/cxgbe/offload.h
82
struct adapter *adapter;
sys/dev/cxgbe/t4_clip.c
100
static int update_hw_clip_table(struct adapter *);
sys/dev/cxgbe/t4_clip.c
101
static void update_clip_table(struct adapter *, void *);
sys/dev/cxgbe/t4_clip.c
105
static struct clip_entry *lookup_clip_entry(struct adapter *, struct in6_addr *,
sys/dev/cxgbe/t4_clip.c
184
lookup_clip_entry(struct adapter *sc, struct in6_addr *in6, bool add)
sys/dev/cxgbe/t4_clip.c
215
add_lip(struct adapter *sc, struct in6_addr *lip, int16_t *idx)
sys/dev/cxgbe/t4_clip.c
236
del_lip(struct adapter *sc, struct in6_addr *lip)
sys/dev/cxgbe/t4_clip.c
254
t4_get_clip_entry(struct adapter *sc, struct in6_addr *in6, bool add)
sys/dev/cxgbe/t4_clip.c
286
t4_hold_clip_entry(struct adapter *sc, struct clip_entry *ce)
sys/dev/cxgbe/t4_clip.c
301
release_clip_entry_locked(struct adapter *sc, struct clip_entry *ce)
sys/dev/cxgbe/t4_clip.c
335
t4_release_clip_entry(struct adapter *sc, struct clip_entry *ce)
sys/dev/cxgbe/t4_clip.c
352
t4_release_clip_addr(struct adapter *sc, struct in6_addr *in6)
sys/dev/cxgbe/t4_clip.c
380
t4_init_clip_table(struct adapter *sc)
sys/dev/cxgbe/t4_clip.c
480
update_sw_clip_table(struct adapter *sc)
sys/dev/cxgbe/t4_clip.c
568
update_hw_clip_table(struct adapter *sc)
sys/dev/cxgbe/t4_clip.c
661
update_clip_table(struct adapter *sc, void *arg __unused)
sys/dev/cxgbe/t4_clip.c
690
t4_destroy_clip_table(struct adapter *sc)
sys/dev/cxgbe/t4_clip.c
741
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_clip.c
94
static int add_lip(struct adapter *, struct in6_addr *, int16_t *);
sys/dev/cxgbe/t4_clip.c
95
static int del_lip(struct adapter *, struct in6_addr *);
sys/dev/cxgbe/t4_clip.c
99
static int update_sw_clip_table(struct adapter *);
sys/dev/cxgbe/t4_clip.h
39
void t4_init_clip_table(struct adapter *);
sys/dev/cxgbe/t4_clip.h
40
void t4_destroy_clip_table(struct adapter *);
sys/dev/cxgbe/t4_clip.h
41
struct clip_entry *t4_get_clip_entry(struct adapter *, struct in6_addr *, bool);
sys/dev/cxgbe/t4_clip.h
42
void t4_hold_clip_entry(struct adapter *, struct clip_entry *);
sys/dev/cxgbe/t4_clip.h
43
void t4_release_clip_entry(struct adapter *, struct clip_entry *);
sys/dev/cxgbe/t4_clip.h
44
int t4_release_clip_addr(struct adapter *, struct in6_addr *);
sys/dev/cxgbe/t4_filter.c
1109
set_filter(struct adapter *sc, struct t4_filter *t)
sys/dev/cxgbe/t4_filter.c
1274
del_tcamfilter(struct adapter *sc, struct t4_filter *t)
sys/dev/cxgbe/t4_filter.c
1346
del_filter(struct adapter *sc, struct t4_filter *t)
sys/dev/cxgbe/t4_filter.c
1389
set_tcb_field(struct adapter *sc, u_int tid, uint16_t word, uint64_t mask,
sys/dev/cxgbe/t4_filter.c
1423
set_tcb_tflag(struct adapter *sc, int tid, u_int bit_pos, u_int val,
sys/dev/cxgbe/t4_filter.c
1434
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/t4_filter.c
1507
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/t4_filter.c
1556
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/t4_filter.c
1591
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/t4_filter.c
1620
get_tcamfilter(struct adapter *sc, struct t4_filter *t)
sys/dev/cxgbe/t4_filter.c
1676
get_hashfilter(struct adapter *sc, struct t4_filter *t)
sys/dev/cxgbe/t4_filter.c
1716
mk_act_open_req6(struct adapter *sc, struct filter_entry *f, int atid,
sys/dev/cxgbe/t4_filter.c
1760
mk_act_open_req(struct adapter *sc, struct filter_entry *f, int atid,
sys/dev/cxgbe/t4_filter.c
1804
act_open_cpl_len16(struct adapter *sc, int isipv6)
sys/dev/cxgbe/t4_filter.c
1833
set_hashfilter(struct adapter *sc, struct t4_filter *t, uint64_t ftuple,
sys/dev/cxgbe/t4_filter.c
186
insert_hf(struct adapter *sc, struct filter_entry *f, uint32_t hash)
sys/dev/cxgbe/t4_filter.c
199
insert_hftid(struct adapter *sc, struct filter_entry *f)
sys/dev/cxgbe/t4_filter.c
1990
mk_del_hashfilter_wr(struct adapter *sc, int tid, struct work_request_hdr *wrh,
sys/dev/cxgbe/t4_filter.c
2004
del_hashfilter(struct adapter *sc, struct t4_filter *t)
sys/dev/cxgbe/t4_filter.c
2072
set_nat_params(struct adapter *sc, struct filter_entry *f, const bool dip,
sys/dev/cxgbe/t4_filter.c
2144
configure_hashfilter_tcb(struct adapter *sc, struct filter_entry *f)
sys/dev/cxgbe/t4_filter.c
262
lookup_hf(struct adapter *sc, struct t4_filter_specification *fs, uint32_t hash)
sys/dev/cxgbe/t4_filter.c
283
lookup_hftid(struct adapter *sc, int tid)
sys/dev/cxgbe/t4_filter.c
303
remove_hf(struct adapter *sc, struct filter_entry *f)
sys/dev/cxgbe/t4_filter.c
314
remove_hftid(struct adapter *sc, struct filter_entry *f)
sys/dev/cxgbe/t4_filter.c
396
mode_to_fconf(struct adapter *sc, uint32_t mode)
sys/dev/cxgbe/t4_filter.c
423
check_fspec_against_fconf_iconf(struct adapter *sc,
sys/dev/cxgbe/t4_filter.c
618
fconf_to_mode(struct adapter *sc, uint16_t hwmode, int vnic_mode)
sys/dev/cxgbe/t4_filter.c
627
get_filter_mode(struct adapter *sc, uint32_t *mode)
sys/dev/cxgbe/t4_filter.c
643
set_filter_mode(struct adapter *sc, uint32_t mode)
sys/dev/cxgbe/t4_filter.c
685
set_filter_mask(struct adapter *sc, uint32_t mode)
sys/dev/cxgbe/t4_filter.c
69
static int get_tcamfilter(struct adapter *, struct t4_filter *);
sys/dev/cxgbe/t4_filter.c
70
static int get_hashfilter(struct adapter *, struct t4_filter *);
sys/dev/cxgbe/t4_filter.c
71
static int set_hashfilter(struct adapter *, struct t4_filter *, uint64_t,
sys/dev/cxgbe/t4_filter.c
73
static int del_hashfilter(struct adapter *, struct t4_filter *);
sys/dev/cxgbe/t4_filter.c
732
get_filter_hits(struct adapter *sc, uint32_t tid)
sys/dev/cxgbe/t4_filter.c
74
static int configure_hashfilter_tcb(struct adapter *, struct filter_entry *);
sys/dev/cxgbe/t4_filter.c
759
get_filter(struct adapter *sc, struct t4_filter *t)
sys/dev/cxgbe/t4_filter.c
768
set_tcamfilter(struct adapter *sc, struct t4_filter *t, struct l2t_entry *l2te,
sys/dev/cxgbe/t4_filter.c
77
separate_hpfilter_region(struct adapter *sc)
sys/dev/cxgbe/t4_filter.c
943
hashfilter_ntuple(struct adapter *sc, const struct t4_filter_specification *fs,
sys/dev/cxgbe/t4_iov.c
377
struct adapter *adap;
sys/dev/cxgbe/t4_l2t.c
148
mk_write_l2e(struct adapter *sc, struct l2t_entry *e, int sync, int reply,
sys/dev/cxgbe/t4_l2t.c
173
struct adapter *sc;
sys/dev/cxgbe/t4_l2t.c
181
sc = wrq->adapter;
sys/dev/cxgbe/t4_l2t.c
211
t4_l2t_alloc_tls(struct adapter *sc, struct sge_txq *txq, void *dst,
sys/dev/cxgbe/t4_l2t.c
287
t4_l2t_alloc_switching(struct adapter *sc, uint16_t vlan, uint8_t port,
sys/dev/cxgbe/t4_l2t.c
325
t4_init_l2t(struct adapter *sc, int flags)
sys/dev/cxgbe/t4_l2t.c
361
t4_free_l2t(struct adapter *sc)
sys/dev/cxgbe/t4_l2t.c
375
t4_stop_l2t(struct adapter *sc)
sys/dev/cxgbe/t4_l2t.c
389
t4_restart_l2t(struct adapter *sc)
sys/dev/cxgbe/t4_l2t.c
406
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/t4_l2t.c
448
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_l2t.h
88
int t4_init_l2t(struct adapter *, int);
sys/dev/cxgbe/t4_l2t.h
89
int t4_free_l2t(struct adapter *);
sys/dev/cxgbe/t4_l2t.h
90
int t4_stop_l2t(struct adapter *);
sys/dev/cxgbe/t4_l2t.h
91
int t4_restart_l2t(struct adapter *);
sys/dev/cxgbe/t4_l2t.h
93
struct l2t_entry *t4_l2t_alloc_switching(struct adapter *, uint16_t, uint8_t,
sys/dev/cxgbe/t4_l2t.h
95
struct l2t_entry *t4_l2t_alloc_tls(struct adapter *, struct sge_txq *,
sys/dev/cxgbe/t4_main.c
10006
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
10036
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
10102
sbuf_devlog(struct adapter *sc, int coreid, struct sbuf *sb, int flags)
sys/dev/cxgbe/t4_main.c
10184
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
10210
dump_devlog(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
10236
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
10289
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
10342
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
10459
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
10842
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
10943
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
11123
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
11323
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
11356
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
11484
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
11515
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
11554
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
11647
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
11725
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
11770
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
119
sizeof(struct adapter)
sys/dev/cxgbe/t4_main.c
11987
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
12037
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
12080
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
1209
t4_init_devnames(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
12119
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
12163
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
12191
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
12219
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
1224
t4_ifnet_unit(struct adapter *sc, struct port_info *pi)
sys/dev/cxgbe/t4_main.c
12254
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
12303
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
12342
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
12368
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
12405
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
12428
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
1244
struct adapter *sc;
sys/dev/cxgbe/t4_main.c
12454
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_main.c
12491
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_main.c
1250
sc = (struct adapter *)arg;
sys/dev/cxgbe/t4_main.c
12519
get_sge_context(struct adapter *sc, int mem_id, uint32_t cid, int len,
sys/dev/cxgbe/t4_main.c
12558
load_fw(struct adapter *sc, struct t4_data *fw)
sys/dev/cxgbe/t4_main.c
12597
load_cfg(struct adapter *sc, struct t4_data *cfg)
sys/dev/cxgbe/t4_main.c
12630
load_boot(struct adapter *sc, struct t4_bootrom *br)
sys/dev/cxgbe/t4_main.c
12680
load_bootcfg(struct adapter *sc, struct t4_data *bc)
sys/dev/cxgbe/t4_main.c
12713
cudbg_dump(struct adapter *sc, struct t4_cudbg_dump *dump)
sys/dev/cxgbe/t4_main.c
12773
set_offload_policy(struct adapter *sc, struct t4_offload_policy *uop)
sys/dev/cxgbe/t4_main.c
12864
read_card_mem(struct adapter *sc, int win, struct t4_mem_range *mr)
sys/dev/cxgbe/t4_main.c
1287
t4_calibration_start(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
12911
read_i2c(struct adapter *sc, struct t4_i2c_data *i2cd)
sys/dev/cxgbe/t4_main.c
12935
clear_stats(struct adapter *sc, u_int port_id)
sys/dev/cxgbe/t4_main.c
1308
struct adapter *sc;
sys/dev/cxgbe/t4_main.c
13112
hold_clip_addr(struct adapter *sc, struct t4_clip_addr *ca)
sys/dev/cxgbe/t4_main.c
13128
release_clip_addr(struct adapter *sc, struct t4_clip_addr *ca)
sys/dev/cxgbe/t4_main.c
13141
t4_os_find_pci_capability(struct adapter *sc, int cap)
sys/dev/cxgbe/t4_main.c
13151
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
13196
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
13234
t4_iterate(void (*func)(struct adapter *, void *), void *arg)
sys/dev/cxgbe/t4_main.c
13236
struct adapter *sc;
sys/dev/cxgbe/t4_main.c
13254
struct adapter *sc = dev->si_drv1;
sys/dev/cxgbe/t4_main.c
13414
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
13557
t4_activate_uld(struct adapter *sc, int id)
sys/dev/cxgbe/t4_main.c
13587
t4_deactivate_uld(struct adapter *sc, int id)
sys/dev/cxgbe/t4_main.c
13610
deactivate_all_uld(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
13633
stop_all_uld(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
13651
restart_all_uld(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
13669
uld_active(struct adapter *sc, int id)
sys/dev/cxgbe/t4_main.c
13680
ktls_capability(struct adapter *sc, bool enable)
sys/dev/cxgbe/t4_main.c
13854
t4_dump_mem(struct adapter *sc, u_int addr, u_int len)
sys/dev/cxgbe/t4_main.c
13896
t4_dump_tcb(struct adapter *sc, int tid)
sys/dev/cxgbe/t4_main.c
13907
t4_dump_devlog(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
14093
enable_vxlan_rx(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
14122
t4_vxlan_start(struct adapter *sc, void *arg)
sys/dev/cxgbe/t4_main.c
14147
t4_vxlan_stop(struct adapter *sc, void *arg)
sys/dev/cxgbe/t4_main.c
1501
pi->adapter = sc;
sys/dev/cxgbe/t4_main.c
1693
vi->adapter = sc;
sys/dev/cxgbe/t4_main.c
1793
struct adapter *sc;
sys/dev/cxgbe/t4_main.c
1811
struct adapter *sc;
sys/dev/cxgbe/t4_main.c
1822
struct adapter *sc;
sys/dev/cxgbe/t4_main.c
184
sizeof(struct adapter)
sys/dev/cxgbe/t4_main.c
1880
struct adapter *sc;
sys/dev/cxgbe/t4_main.c
1901
SLIST_REMOVE(&t4_list, sc, adapter, link);
sys/dev/cxgbe/t4_main.c
2032
stop_adapter(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
2067
restart_adapter(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
2105
set_adapter_hwstatus(struct adapter *sc, const bool usable)
sys/dev/cxgbe/t4_main.c
2127
stop_lld(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
223
sizeof(struct adapter)
sys/dev/cxgbe/t4_main.c
2247
suspend_adapter(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
2262
struct adapter *sc = device_get_softc(dev);
sys/dev/cxgbe/t4_main.c
2299
save_caps_and_params(struct adapter *sc, struct adapter_pre_reset_state *o)
sys/dev/cxgbe/t4_main.c
2331
compare_caps_and_params(struct adapter *sc, struct adapter_pre_reset_state *o)
sys/dev/cxgbe/t4_main.c
2427
restart_lld(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
2618
resume_adapter(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
262
sizeof(struct adapter)
sys/dev/cxgbe/t4_main.c
2631
struct adapter *sc = device_get_softc(dev);
sys/dev/cxgbe/t4_main.c
2644
struct adapter *sc = device_get_softc(dev);
sys/dev/cxgbe/t4_main.c
2653
struct adapter *sc = device_get_softc(dev);
sys/dev/cxgbe/t4_main.c
2660
reset_adapter_with_pl_rst(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
2671
reset_adapter_with_pcie_sbr(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
2717
reset_adapter_with_pcie_link_bounce(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
2764
reset_adapter(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
2793
struct adapter *sc = arg;
sys/dev/cxgbe/t4_main.c
2832
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_main.c
297
SLIST_HEAD(, adapter) t4_list;
sys/dev/cxgbe/t4_main.c
2971
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
3028
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
3053
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_main.c
3067
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
3336
struct adapter *sc;
sys/dev/cxgbe/t4_main.c
3367
sc = vi->adapter;
sys/dev/cxgbe/t4_main.c
3539
if (is_t6(vi->pi->adapter))
sys/dev/cxgbe/t4_main.c
3564
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
3764
if (chip_id(pi->adapter) >= CHELSIO_T7)
sys/dev/cxgbe/t4_main.c
3779
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
3829
alloc_extra_vi(struct adapter *sc, struct port_info *pi, struct vi_info *vi)
sys/dev/cxgbe/t4_main.c
3883
struct adapter *sc;
sys/dev/cxgbe/t4_main.c
3888
sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
3907
struct adapter *sc;
sys/dev/cxgbe/t4_main.c
3910
sc = vi->adapter;
sys/dev/cxgbe/t4_main.c
3926
struct adapter *sc = arg;
sys/dev/cxgbe/t4_main.c
3934
struct adapter *sc = arg;
sys/dev/cxgbe/t4_main.c
3960
t4_fatal_err(struct adapter *sc, bool fw_error)
sys/dev/cxgbe/t4_main.c
3984
t4_add_adapter(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
3992
t4_map_bars_0_and_4(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
4016
t4_map_bar_2(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
4074
t4_adj_doorbells(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
4103
setup_memwin(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
4157
position_memwin(struct adapter *sc, int idx, uint32_t addr)
sys/dev/cxgbe/t4_main.c
4185
rw_via_memwin(struct adapter *sc, int idx, uint32_t addr, uint32_t *val,
sys/dev/cxgbe/t4_main.c
4236
t4_init_atid_table(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
4259
t4_free_atid_table(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
4275
stop_atid_allocator(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
4287
restart_atid_allocator(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
4301
alloc_atid(struct adapter *sc, void *ctx)
sys/dev/cxgbe/t4_main.c
4321
lookup_atid(struct adapter *sc, int atid)
sys/dev/cxgbe/t4_main.c
4329
free_atid(struct adapter *sc, int atid)
sys/dev/cxgbe/t4_main.c
4342
queue_tid_release(struct adapter *sc, int tid)
sys/dev/cxgbe/t4_main.c
4349
release_tid(struct adapter *sc, int tid, struct sge_wrq *ctrlq)
sys/dev/cxgbe/t4_main.c
4378
validate_mem_range(struct adapter *sc, uint32_t addr, uint32_t len)
sys/dev/cxgbe/t4_main.c
4524
validate_mt_off_len(struct adapter *sc, int mtype, uint32_t off, uint32_t len,
sys/dev/cxgbe/t4_main.c
4568
fixup_devlog_ncores_params(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
4599
calculate_iaq(struct adapter *sc, struct intrs_and_queues *iaq, int itype,
sys/dev/cxgbe/t4_main.c
4761
cfg_itype_and_nqueues(struct adapter *sc, struct intrs_and_queues *iaq)
sys/dev/cxgbe/t4_main.c
4957
load_fw_module(struct adapter *sc, const struct firmware **dcfg,
sys/dev/cxgbe/t4_main.c
4985
unload_fw_module(struct adapter *sc, const struct firmware *dcfg,
sys/dev/cxgbe/t4_main.c
5002
install_kld_firmware(struct adapter *sc, struct fw_h *card_fw,
sys/dev/cxgbe/t4_main.c
5144
contact_firmware(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
5235
copy_cfg_file_to_card(struct adapter *sc, char *cfg_file,
sys/dev/cxgbe/t4_main.c
5338
apply_cfg_and_initialize(struct adapter *sc, char *cfg_file,
sys/dev/cxgbe/t4_main.c
5470
partition_resources(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
5519
get_params__pre_init(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
5580
set_params__pre_init(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
5629
get_params__post_init(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
6016
struct adapter *sc;
sys/dev/cxgbe/t4_main.c
6027
t6_config_kern_tls(struct adapter *sc, bool enable)
sys/dev/cxgbe/t4_main.c
6056
set_params__post_init(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
6189
t4_set_desc(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
6429
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
6489
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
6533
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
6656
begin_synchronized_op(struct adapter *sc, struct vi_info *vi, int flags,
sys/dev/cxgbe/t4_main.c
6712
begin_vi_detach(struct adapter *sc, struct vi_info *vi)
sys/dev/cxgbe/t4_main.c
6729
end_vi_detach(struct adapter *sc, struct vi_info *vi)
sys/dev/cxgbe/t4_main.c
6743
end_synchronized_op(struct adapter *sc, int flags)
sys/dev/cxgbe/t4_main.c
6761
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
6843
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
6910
t4_setup_intr_handlers(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
7050
write_global_rss_key(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
7069
adapter_full_init(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
7104
adapter_init(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
7126
adapter_full_uninit(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
7211
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_main.c
7322
ASSERT_SYNCHRONIZED_OP(vi->adapter);
sys/dev/cxgbe/t4_main.c
7423
quiesce_iq_fl(struct adapter *sc, struct sge_iq *iq, struct sge_fl *fl)
sys/dev/cxgbe/t4_main.c
7457
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_main.c
7492
t4_alloc_irq(struct adapter *sc, struct irq *irq, int rid,
sys/dev/cxgbe/t4_main.c
7519
t4_free_irq(struct adapter *sc, struct irq *irq)
sys/dev/cxgbe/t4_main.c
7532
get_regs(struct adapter *sc, struct t4_regdump *regs, uint8_t *buf)
sys/dev/cxgbe/t4_main.c
7559
read_vf_stat(struct adapter *sc, u_int vin, int reg)
sys/dev/cxgbe/t4_main.c
7577
t4_get_vi_stats(struct adapter *sc, u_int vin, struct fw_vi_stats_vf *stats)
sys/dev/cxgbe/t4_main.c
7608
t4_clr_vi_stats(struct adapter *sc, u_int vin)
sys/dev/cxgbe/t4_main.c
7635
t4_get_vi_stats(vi->adapter, vi->vin, &vi->stats);
sys/dev/cxgbe/t4_main.c
7646
struct adapter *sc;
sys/dev/cxgbe/t4_main.c
7659
sc = vi->adapter;
sys/dev/cxgbe/t4_main.c
7729
cim_sysctls(struct adapter *sc, struct sysctl_ctx_list *ctx,
sys/dev/cxgbe/t4_main.c
7867
t4_sysctls(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
803
static void setup_memwin(struct adapter *);
sys/dev/cxgbe/t4_main.c
804
static void position_memwin(struct adapter *, int, uint32_t);
sys/dev/cxgbe/t4_main.c
805
static int validate_mem_range(struct adapter *, uint32_t, uint32_t);
sys/dev/cxgbe/t4_main.c
807
static int validate_mt_off_len(struct adapter *, int, uint32_t, uint32_t,
sys/dev/cxgbe/t4_main.c
809
static int fixup_devlog_ncores_params(struct adapter *);
sys/dev/cxgbe/t4_main.c
810
static int cfg_itype_and_nqueues(struct adapter *, struct intrs_and_queues *);
sys/dev/cxgbe/t4_main.c
811
static int contact_firmware(struct adapter *);
sys/dev/cxgbe/t4_main.c
812
static int partition_resources(struct adapter *);
sys/dev/cxgbe/t4_main.c
813
static int get_params__pre_init(struct adapter *);
sys/dev/cxgbe/t4_main.c
814
static int set_params__pre_init(struct adapter *);
sys/dev/cxgbe/t4_main.c
815
static int get_params__post_init(struct adapter *);
sys/dev/cxgbe/t4_main.c
816
static int set_params__post_init(struct adapter *);
sys/dev/cxgbe/t4_main.c
817
static void t4_set_desc(struct adapter *);
sys/dev/cxgbe/t4_main.c
825
static int adapter_full_init(struct adapter *);
sys/dev/cxgbe/t4_main.c
826
static void adapter_full_uninit(struct adapter *);
sys/dev/cxgbe/t4_main.c
829
static int alloc_extra_vi(struct adapter *, struct port_info *, struct vi_info *);
sys/dev/cxgbe/t4_main.c
832
static void quiesce_iq_fl(struct adapter *, struct sge_iq *, struct sge_fl *);
sys/dev/cxgbe/t4_main.c
834
static int t4_alloc_irq(struct adapter *, struct irq *, int rid,
sys/dev/cxgbe/t4_main.c
8348
if (vi->adapter->flags & IS_VF) {
sys/dev/cxgbe/t4_main.c
836
static int t4_free_irq(struct adapter *, struct irq *);
sys/dev/cxgbe/t4_main.c
837
static void t4_init_atid_table(struct adapter *);
sys/dev/cxgbe/t4_main.c
838
static void t4_free_atid_table(struct adapter *);
sys/dev/cxgbe/t4_main.c
839
static void stop_atid_allocator(struct adapter *);
sys/dev/cxgbe/t4_main.c
840
static void restart_atid_allocator(struct adapter *);
sys/dev/cxgbe/t4_main.c
841
static void get_regs(struct adapter *, struct t4_regdump *, uint8_t *);
sys/dev/cxgbe/t4_main.c
8422
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
8698
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
8745
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_main.c
8804
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_main.c
8841
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_main.c
8871
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_main.c
8901
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_main.c
8931
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
9016
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
9094
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
914
static int get_sge_context(struct adapter *, int, uint32_t, int, uint32_t *);
sys/dev/cxgbe/t4_main.c
9146
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
915
static int load_fw(struct adapter *, struct t4_data *);
sys/dev/cxgbe/t4_main.c
916
static int load_cfg(struct adapter *, struct t4_data *);
sys/dev/cxgbe/t4_main.c
917
static int load_boot(struct adapter *, struct t4_bootrom *);
sys/dev/cxgbe/t4_main.c
918
static int load_bootcfg(struct adapter *, struct t4_data *);
sys/dev/cxgbe/t4_main.c
919
static int cudbg_dump(struct adapter *, struct t4_cudbg_dump *);
sys/dev/cxgbe/t4_main.c
9190
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
921
static int set_offload_policy(struct adapter *, struct t4_offload_policy *);
sys/dev/cxgbe/t4_main.c
922
static int read_card_mem(struct adapter *, int, struct t4_mem_range *);
sys/dev/cxgbe/t4_main.c
9222
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
923
static int read_i2c(struct adapter *, struct t4_i2c_data *);
sys/dev/cxgbe/t4_main.c
924
static int clear_stats(struct adapter *, u_int);
sys/dev/cxgbe/t4_main.c
9243
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_main.c
925
static int hold_clip_addr(struct adapter *, struct t4_clip_addr *);
sys/dev/cxgbe/t4_main.c
926
static int release_clip_addr(struct adapter *, struct t4_clip_addr *);
sys/dev/cxgbe/t4_main.c
9267
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
927
static inline int stop_adapter(struct adapter *);
sys/dev/cxgbe/t4_main.c
928
static inline void set_adapter_hwstatus(struct adapter *, const bool);
sys/dev/cxgbe/t4_main.c
929
static int stop_lld(struct adapter *);
sys/dev/cxgbe/t4_main.c
9296
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
930
static inline int restart_adapter(struct adapter *);
sys/dev/cxgbe/t4_main.c
931
static int restart_lld(struct adapter *);
sys/dev/cxgbe/t4_main.c
9326
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
933
static int deactivate_all_uld(struct adapter *);
sys/dev/cxgbe/t4_main.c
934
static void stop_all_uld(struct adapter *);
sys/dev/cxgbe/t4_main.c
935
static void restart_all_uld(struct adapter *);
sys/dev/cxgbe/t4_main.c
9360
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
938
static int ktls_capability(struct adapter *, bool);
sys/dev/cxgbe/t4_main.c
9404
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
944
static void enable_vxlan_rx(struct adapter *);
sys/dev/cxgbe/t4_main.c
9446
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
947
static void dump_devlog(struct adapter *);
sys/dev/cxgbe/t4_main.c
948
static void dump_cim_regs(struct adapter *);
sys/dev/cxgbe/t4_main.c
949
static void dump_cimla(struct adapter *);
sys/dev/cxgbe/t4_main.c
9491
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
9538
sbuf_cim_la4(struct adapter *sc, struct sbuf *sb, uint32_t *buf, uint32_t cfg)
sys/dev/cxgbe/t4_main.c
9568
sbuf_cim_la6(struct adapter *sc, struct sbuf *sb, uint32_t *buf, uint32_t cfg)
sys/dev/cxgbe/t4_main.c
9600
sbuf_cim_la(struct adapter *sc, int coreid, struct sbuf *sb, int flags)
sys/dev/cxgbe/t4_main.c
9634
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
9651
dump_cim_regs(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
9670
dump_cimla(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
9692
t4_os_cim_err(struct adapter *sc)
sys/dev/cxgbe/t4_main.c
9700
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
9748
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
9795
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
9865
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_main.c
9963
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_netmap.c
1114
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_netmap.c
1178
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_netmap.c
1264
struct adapter *sc;
sys/dev/cxgbe/t4_netmap.c
1271
sc = pi->adapter;
sys/dev/cxgbe/t4_netmap.c
1318
handle_nm_sge_egr_update(struct adapter *sc, if_t ifp,
sys/dev/cxgbe/t4_netmap.c
1335
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_netmap.c
134
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_netmap.c
195
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_netmap.c
218
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_netmap.c
261
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_netmap.c
281
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_netmap.c
395
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_netmap.c
412
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_netmap.c
508
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_netmap.c
520
cxgbe_netmap_simple_rss(struct adapter *sc, struct vi_info *vi,
sys/dev/cxgbe/t4_netmap.c
588
cxgbe_netmap_split_rss(struct adapter *sc, struct vi_info *vi,
sys/dev/cxgbe/t4_netmap.c
681
cxgbe_netmap_rss(struct adapter *sc, struct vi_info *vi, if_t ifp,
sys/dev/cxgbe/t4_netmap.c
692
cxgbe_netmap_on(struct adapter *sc, struct vi_info *vi, if_t ifp,
sys/dev/cxgbe/t4_netmap.c
782
cxgbe_netmap_off(struct adapter *sc, struct vi_info *vi, if_t ifp,
sys/dev/cxgbe/t4_netmap.c
860
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_netmap.c
915
ring_nm_txq_db(struct adapter *sc, struct sge_nm_txq *nm_txq)
sys/dev/cxgbe/t4_netmap.c
971
cxgbe_nm_tx(struct adapter *sc, struct sge_nm_txq *nm_txq,
sys/dev/cxgbe/t4_sched.c
255
struct adapter *sc = context;
sys/dev/cxgbe/t4_sched.c
302
t4_set_sched_class(struct adapter *sc, struct t4_sched_params *p)
sys/dev/cxgbe/t4_sched.c
318
bind_txq_to_traffic_class(struct adapter *sc, struct sge_txq *txq, int idx)
sys/dev/cxgbe/t4_sched.c
403
t4_set_sched_queue(struct adapter *sc, struct t4_sched_queue *p)
sys/dev/cxgbe/t4_sched.c
452
t4_init_tx_sched(struct adapter *sc)
sys/dev/cxgbe/t4_sched.c
470
t4_free_tx_sched(struct adapter *sc)
sys/dev/cxgbe/t4_sched.c
488
t4_update_tx_sched(struct adapter *sc)
sys/dev/cxgbe/t4_sched.c
495
t4_reserve_cl_rl_kbps(struct adapter *sc, int port_id, u_int maxrate,
sys/dev/cxgbe/t4_sched.c
53
set_sched_class_config(struct adapter *sc, int minmax)
sys/dev/cxgbe/t4_sched.c
575
t4_release_cl_rl(struct adapter *sc, int port_id, int tc_idx)
sys/dev/cxgbe/t4_sched.c
593
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_sched.c
616
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_sched.c
702
t4_init_etid_table(struct adapter *sc)
sys/dev/cxgbe/t4_sched.c
724
t4_free_etid_table(struct adapter *sc)
sys/dev/cxgbe/t4_sched.c
73
set_sched_class_params(struct adapter *sc, struct t4_sched_class_params *p,
sys/dev/cxgbe/t4_sched.c
742
static int alloc_etid(struct adapter *, struct cxgbe_rate_tag *);
sys/dev/cxgbe/t4_sched.c
743
static void free_etid(struct adapter *, int);
sys/dev/cxgbe/t4_sched.c
746
alloc_etid(struct adapter *sc, struct cxgbe_rate_tag *cst)
sys/dev/cxgbe/t4_sched.c
765
lookup_etid(struct adapter *sc, int etid)
sys/dev/cxgbe/t4_sched.c
773
free_etid(struct adapter *sc, int etid)
sys/dev/cxgbe/t4_sched.c
805
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_sched.c
834
cst->adapter = sc;
sys/dev/cxgbe/t4_sched.c
862
struct adapter *sc = cst->adapter;
sys/dev/cxgbe/t4_sched.c
903
struct adapter *sc = cst->adapter;
sys/dev/cxgbe/t4_sched.c
951
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_sge.c
1016
t4_create_dma_tag(struct adapter *sc)
sys/dev/cxgbe/t4_sge.c
1033
t4_sge_sysctls(struct adapter *sc, struct sysctl_ctx_list *ctx,
sys/dev/cxgbe/t4_sge.c
1063
t4_destroy_dma_tag(struct adapter *sc)
sys/dev/cxgbe/t4_sge.c
1079
t4_setup_adapter_queues(struct adapter *sc)
sys/dev/cxgbe/t4_sge.c
1118
t4_teardown_adapter_queues(struct adapter *sc)
sys/dev/cxgbe/t4_sge.c
1136
max_rx_payload(struct adapter *sc, if_t ifp, const bool ofld)
sys/dev/cxgbe/t4_sge.c
1166
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_sge.c
1327
struct adapter *sc = arg;
sys/dev/cxgbe/t4_sge.c
1346
struct adapter *sc = arg;
sys/dev/cxgbe/t4_sge.c
1429
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/t4_sge.c
1557
t4_tstmp_to_ns(struct adapter *sc, uint64_t hw_tstmp)
sys/dev/cxgbe/t4_sge.c
1614
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/t4_sge.c
1787
get_scatter_segment(struct adapter *sc, struct sge_fl *fl, int fr_offset,
sys/dev/cxgbe/t4_sge.c
1864
get_fl_payload(struct adapter *sc, struct sge_fl *fl, const u_int plen)
sys/dev/cxgbe/t4_sge.c
1913
skip_scatter_segment(struct adapter *sc, struct sge_fl *fl, int fr_offset,
sys/dev/cxgbe/t4_sge.c
1944
skip_fl_payload(struct adapter *sc, struct sge_fl *fl, int plen)
sys/dev/cxgbe/t4_sge.c
1958
get_segment_len(struct adapter *sc, struct sge_fl *fl, int plen)
sys/dev/cxgbe/t4_sge.c
1973
handle_cpl_rx_pkt(struct adapter *sc, struct sge_rxq *rxq,
sys/dev/cxgbe/t4_sge.c
2094
eth_rx(struct adapter *sc, struct sge_rxq *rxq, const struct iq_desc *d,
sys/dev/cxgbe/t4_sge.c
2190
drain_wrq_wr_list(wrq->adapter, wrq);
sys/dev/cxgbe/t4_sge.c
2195
drain_wrq_wr_list(struct adapter *sc, struct sge_wrq *wrq)
sys/dev/cxgbe/t4_sge.c
2272
t4_wrq_tx_locked(struct adapter *sc, struct sge_wrq *wrq, struct wrqe *wr)
sys/dev/cxgbe/t4_sge.c
229
static struct mbuf *get_fl_payload(struct adapter *, struct sge_fl *, uint32_t);
sys/dev/cxgbe/t4_sge.c
230
static int eth_rx(struct adapter *, struct sge_rxq *, const struct iq_desc *,
sys/dev/cxgbe/t4_sge.c
2300
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_sge.c
232
static inline void init_iq(struct sge_iq *, struct adapter *, int, int, int,
sys/dev/cxgbe/t4_sge.c
234
static inline void init_fl(struct adapter *, struct sge_fl *, int, int, char *);
sys/dev/cxgbe/t4_sge.c
235
static inline void init_eq(struct adapter *, struct sge_eq *, int, int, uint8_t,
sys/dev/cxgbe/t4_sge.c
239
static void free_iq_fl(struct adapter *, struct sge_iq *, struct sge_fl *);
sys/dev/cxgbe/t4_sge.c
242
static void add_fl_sysctls(struct adapter *, struct sysctl_ctx_list *,
sys/dev/cxgbe/t4_sge.c
245
static int free_iq_fl_hwq(struct adapter *, struct sge_iq *, struct sge_fl *);
sys/dev/cxgbe/t4_sge.c
246
static int alloc_fwq(struct adapter *);
sys/dev/cxgbe/t4_sge.c
247
static void free_fwq(struct adapter *);
sys/dev/cxgbe/t4_sge.c
248
static int alloc_ctrlq(struct adapter *, int);
sys/dev/cxgbe/t4_sge.c
249
static void free_ctrlq(struct adapter *, int);
sys/dev/cxgbe/t4_sge.c
261
static int ctrl_eq_alloc(struct adapter *, struct sge_eq *, int);
sys/dev/cxgbe/t4_sge.c
262
static int eth_eq_alloc(struct adapter *, struct vi_info *, struct sge_eq *,
sys/dev/cxgbe/t4_sge.c
265
static int ofld_eq_alloc(struct adapter *, struct vi_info *, struct sge_eq *,
sys/dev/cxgbe/t4_sge.c
268
static int alloc_eq(struct adapter *, struct sge_eq *, struct sysctl_ctx_list *,
sys/dev/cxgbe/t4_sge.c
270
static void free_eq(struct adapter *, struct sge_eq *);
sys/dev/cxgbe/t4_sge.c
271
static void add_eq_sysctls(struct adapter *, struct sysctl_ctx_list *,
sys/dev/cxgbe/t4_sge.c
273
static int alloc_eq_hwq(struct adapter *, struct vi_info *, struct sge_eq *,
sys/dev/cxgbe/t4_sge.c
2746
if (is_t6(vi->pi->adapter))
sys/dev/cxgbe/t4_sge.c
275
static int free_eq_hwq(struct adapter *, struct vi_info *, struct sge_eq *);
sys/dev/cxgbe/t4_sge.c
276
static int alloc_wrq(struct adapter *, struct vi_info *, struct sge_wrq *,
sys/dev/cxgbe/t4_sge.c
278
static void free_wrq(struct adapter *, struct sge_wrq *);
sys/dev/cxgbe/t4_sge.c
292
static inline void ring_fl_db(struct adapter *, struct sge_fl *);
sys/dev/cxgbe/t4_sge.c
293
static int refill_fl(struct adapter *, struct sge_fl *, int);
sys/dev/cxgbe/t4_sge.c
295
static int find_refill_source(struct adapter *, int, bool);
sys/dev/cxgbe/t4_sge.c
296
static void add_fl_to_sfl(struct adapter *, struct sge_fl *);
sys/dev/cxgbe/t4_sge.c
2965
struct adapter *sc = wrq->adapter;
sys/dev/cxgbe/t4_sge.c
3023
struct adapter *sc = wrq->adapter;
sys/dev/cxgbe/t4_sge.c
305
static u_int write_txpkt_wr(struct adapter *, struct sge_txq *, struct mbuf *,
sys/dev/cxgbe/t4_sge.c
307
static u_int write_txpkt_vm_wr(struct adapter *, struct sge_txq *,
sys/dev/cxgbe/t4_sge.c
3075
ring_eq_db(wrq->adapter, eq, ndesc);
sys/dev/cxgbe/t4_sge.c
309
static int add_to_txpkts_vf(struct adapter *, struct sge_txq *, struct mbuf *,
sys/dev/cxgbe/t4_sge.c
311
static int add_to_txpkts_pf(struct adapter *, struct sge_txq *, struct mbuf *,
sys/dev/cxgbe/t4_sge.c
313
static u_int write_txpkts_wr(struct adapter *, struct sge_txq *);
sys/dev/cxgbe/t4_sge.c
314
static u_int write_txpkts_vm_wr(struct adapter *, struct sge_txq *);
sys/dev/cxgbe/t4_sge.c
317
static inline void ring_eq_db(struct adapter *, struct sge_eq *, u_int);
sys/dev/cxgbe/t4_sge.c
3191
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_sge.c
328
static int t4_handle_wrerr_rpl(struct adapter *, const __be64 *);
sys/dev/cxgbe/t4_sge.c
330
static void drain_wrq_wr_list(struct adapter *, struct sge_wrq *);
sys/dev/cxgbe/t4_sge.c
3398
init_iq(struct sge_iq *iq, struct adapter *sc, int tmr_idx, int pktc_idx,
sys/dev/cxgbe/t4_sge.c
3413
iq->adapter = sc;
sys/dev/cxgbe/t4_sge.c
3428
init_fl(struct adapter *sc, struct sge_fl *fl, int qsize, int maxp, char *name)
sys/dev/cxgbe/t4_sge.c
3454
init_eq(struct adapter *sc, struct sge_eq *eq, int eqtype, int qsize,
sys/dev/cxgbe/t4_sge.c
3471
alloc_ring(struct adapter *sc, size_t len, bus_dma_tag_t *tag,
sys/dev/cxgbe/t4_sge.c
3503
free_ring(struct adapter *sc, bus_dma_tag_t tag, bus_dmamap_t map,
sys/dev/cxgbe/t4_sge.c
3528
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_sge.c
3566
free_iq_fl(struct adapter *sc, struct sge_iq *iq, struct sge_fl *fl)
sys/dev/cxgbe/t4_sge.c
3594
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_sge.c
3747
free_iq_fl_hwq(struct adapter *sc, struct sge_iq *iq, struct sge_fl *fl)
sys/dev/cxgbe/t4_sge.c
3786
add_fl_sysctls(struct adapter *sc, struct sysctl_ctx_list *ctx,
sys/dev/cxgbe/t4_sge.c
3830
alloc_fwq(struct adapter *sc)
sys/dev/cxgbe/t4_sge.c
3870
free_fwq(struct adapter *sc)
sys/dev/cxgbe/t4_sge.c
3891
alloc_ctrlq(struct adapter *sc, int idx)
sys/dev/cxgbe/t4_sge.c
3941
free_ctrlq(struct adapter *sc, int idx)
sys/dev/cxgbe/t4_sge.c
3959
t4_sge_set_conm_context(struct adapter *sc, int cntxt_id, int cong_drop,
sys/dev/cxgbe/t4_sge.c
4025
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_sge.c
408
if (is_hpftid(iq->adapter, tid) || is_ftid(iq->adapter, tid)) {
sys/dev/cxgbe/t4_sge.c
4107
free_iq_fl_hwq(vi->adapter, &rxq->iq, &rxq->fl);
sys/dev/cxgbe/t4_sge.c
4116
free_iq_fl(vi->adapter, &rxq->iq, &rxq->fl);
sys/dev/cxgbe/t4_sge.c
4156
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_sge.c
4226
free_iq_fl_hwq(vi->adapter, &ofld_rxq->iq, &ofld_rxq->fl);
sys/dev/cxgbe/t4_sge.c
4232
free_iq_fl(vi->adapter, &ofld_rxq->iq, &ofld_rxq->fl);
sys/dev/cxgbe/t4_sge.c
4373
ctrl_eq_alloc(struct adapter *sc, struct sge_eq *eq, int idx)
sys/dev/cxgbe/t4_sge.c
4420
eth_eq_alloc(struct adapter *sc, struct vi_info *vi, struct sge_eq *eq, int idx)
sys/dev/cxgbe/t4_sge.c
4481
ofld_eq_alloc(struct adapter *sc, struct vi_info *vi, struct sge_eq *eq,
sys/dev/cxgbe/t4_sge.c
4534
alloc_eq(struct adapter *sc, struct sge_eq *eq, struct sysctl_ctx_list *ctx,
sys/dev/cxgbe/t4_sge.c
454
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/t4_sge.c
4557
free_eq(struct adapter *sc, struct sge_eq *eq)
sys/dev/cxgbe/t4_sge.c
4569
add_eq_sysctls(struct adapter *sc, struct sysctl_ctx_list *ctx,
sys/dev/cxgbe/t4_sge.c
4592
alloc_eq_hwq(struct adapter *sc, struct vi_info *vi, struct sge_eq *eq, int idx)
sys/dev/cxgbe/t4_sge.c
4653
free_eq_hwq(struct adapter *sc, struct vi_info *vi __unused, struct sge_eq *eq)
sys/dev/cxgbe/t4_sge.c
4684
alloc_wrq(struct adapter *sc, struct vi_info *vi, struct sge_wrq *wrq,
sys/dev/cxgbe/t4_sge.c
469
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/t4_sge.c
4698
wrq->adapter = sc;
sys/dev/cxgbe/t4_sge.c
4710
free_wrq(struct adapter *sc, struct sge_wrq *wrq)
sys/dev/cxgbe/t4_sge.c
4746
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_sge.c
4839
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_sge.c
4863
struct adapter *sc;
sys/dev/cxgbe/t4_sge.c
4869
sc = vi->adapter;
sys/dev/cxgbe/t4_sge.c
4990
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_sge.c
5061
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/t4_sge.c
5143
ring_fl_db(struct adapter *sc, struct sge_fl *fl)
sys/dev/cxgbe/t4_sge.c
5167
refill_fl(struct adapter *sc, struct sge_fl *fl, int n)
sys/dev/cxgbe/t4_sge.c
5282
struct adapter *sc = arg;
sys/dev/cxgbe/t4_sge.c
5306
free_fl_buffers(struct adapter *sc, struct sge_fl *fl)
sys/dev/cxgbe/t4_sge.c
5465
csum_to_ctrl(struct adapter *sc, struct mbuf *m)
sys/dev/cxgbe/t4_sge.c
5635
write_txpkt_vm_wr(struct adapter *sc, struct sge_txq *txq, struct mbuf *m0)
sys/dev/cxgbe/t4_sge.c
5767
write_txpkt_wr(struct adapter *sc, struct sge_txq *txq, struct mbuf *m0,
sys/dev/cxgbe/t4_sge.c
5903
add_to_txpkts_vf(struct adapter *sc, struct sge_txq *txq, struct mbuf *m,
sys/dev/cxgbe/t4_sge.c
5955
add_to_txpkts_pf(struct adapter *sc, struct sge_txq *txq, struct mbuf *m,
sys/dev/cxgbe/t4_sge.c
6032
write_txpkts_wr(struct adapter *sc, struct sge_txq *txq)
sys/dev/cxgbe/t4_sge.c
6143
write_txpkts_vm_wr(struct adapter *sc, struct sge_txq *txq)
sys/dev/cxgbe/t4_sge.c
6323
ring_eq_db(struct adapter *sc, struct sge_eq *eq, u_int n)
sys/dev/cxgbe/t4_sge.c
6492
find_refill_source(struct adapter *sc, int maxp, bool packing)
sys/dev/cxgbe/t4_sge.c
6527
add_fl_to_sfl(struct adapter *sc, struct sge_fl *fl)
sys/dev/cxgbe/t4_sge.c
6541
handle_wrq_egr_update(struct adapter *sc, struct sge_eq *eq)
sys/dev/cxgbe/t4_sge.c
6550
handle_eth_egr_update(struct adapter *sc, struct sge_eq *eq)
sys/dev/cxgbe/t4_sge.c
6569
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/t4_sge.c
6572
static void (*h[])(struct adapter *, struct sge_eq *) = {NULL,
sys/dev/cxgbe/t4_sge.c
6592
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/t4_sge.c
6614
t4_handle_wrerr_rpl(struct adapter *adap, const __be64 *rpl)
sys/dev/cxgbe/t4_sge.c
666
setup_pad_and_pack_boundaries(struct adapter *sc)
sys/dev/cxgbe/t4_sge.c
6674
bufidx_used(struct adapter *sc, int idx)
sys/dev/cxgbe/t4_sge.c
6692
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_sge.c
6752
u_int pfvf = pi->adapter->pf << S_FW_VIID_PFN;
sys/dev/cxgbe/t4_sge.c
6904
ctrl1 = csum_to_ctrl(cst->adapter, m0);
sys/dev/cxgbe/t4_sge.c
7050
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/t4_sge.c
7096
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/t4_sge.c
741
t4_tweak_chip_settings(struct adapter *sc)
sys/dev/cxgbe/t4_sge.c
881
hwsz_ok(struct adapter *sc, int hwsz)
sys/dev/cxgbe/t4_sge.c
893
t4_init_rx_buf_info(struct adapter *sc)
sys/dev/cxgbe/t4_sge.c
959
t4_verify_chip_settings(struct adapter *sc)
sys/dev/cxgbe/t4_smt.c
113
struct adapter *sc;
sys/dev/cxgbe/t4_smt.c
123
sc = wrq->adapter;
sys/dev/cxgbe/t4_smt.c
124
MPASS(wrq->adapter != NULL);
sys/dev/cxgbe/t4_smt.c
203
t4_smt_set_switching(struct adapter *sc, struct smt_entry *e, uint16_t pfvf,
sys/dev/cxgbe/t4_smt.c
224
t4_init_smt(struct adapter *sc, int flags)
sys/dev/cxgbe/t4_smt.c
269
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/t4_smt.c
301
struct adapter *sc = arg1;
sys/dev/cxgbe/t4_smt.h
64
int t4_init_smt(struct adapter *, int);
sys/dev/cxgbe/t4_smt.h
68
int t4_smt_set_switching(struct adapter *, struct smt_entry *,
sys/dev/cxgbe/t4_tpt.c
104
t4_free_tpt(struct adapter *sc)
sys/dev/cxgbe/t4_tpt.c
119
t4_write_mem_dma_wr(struct adapter *sc, void *wr, int wr_len, int tid,
sys/dev/cxgbe/t4_tpt.c
154
t4_write_mem_inline_wr(struct adapter *sc, void *wr, int wr_len, int tid,
sys/dev/cxgbe/t4_tpt.c
46
t4_pblpool_alloc(struct adapter *sc, int size)
sys/dev/cxgbe/t4_tpt.c
61
t4_pblpool_free(struct adapter *sc, uint32_t addr, int size)
sys/dev/cxgbe/t4_tpt.c
70
t4_stag_alloc(struct adapter *sc, int size)
sys/dev/cxgbe/t4_tpt.c
84
t4_stag_free(struct adapter *sc, uint32_t stag_idx, int size)
sys/dev/cxgbe/t4_tpt.c
93
t4_init_tpt(struct adapter *sc)
sys/dev/cxgbe/t4_tracer.c
100
struct adapter *sc;
sys/dev/cxgbe/t4_tracer.c
105
match_name(struct adapter *sc, void *arg)
sys/dev/cxgbe/t4_tracer.c
138
struct adapter *sc;
sys/dev/cxgbe/t4_tracer.c
199
struct adapter *sc;
sys/dev/cxgbe/t4_tracer.c
244
t4_tracer_port_detach(struct adapter *sc)
sys/dev/cxgbe/t4_tracer.c
259
t4_get_tracer(struct adapter *sc, struct t4_tracer *t)
sys/dev/cxgbe/t4_tracer.c
317
t4_set_tracer(struct adapter *sc, struct t4_tracer *t)
sys/dev/cxgbe/t4_tracer.c
407
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/t4_tracer.c
429
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/t4_tracer.c
460
struct adapter *sc;
sys/dev/cxgbe/t4_vf.c
1008
sizeof(struct adapter)
sys/dev/cxgbe/t4_vf.c
232
get_params__pre_init(struct adapter *sc)
sys/dev/cxgbe/t4_vf.c
267
get_params__post_init(struct adapter *sc)
sys/dev/cxgbe/t4_vf.c
334
set_params__post_init(struct adapter *sc)
sys/dev/cxgbe/t4_vf.c
356
cfg_itype_and_nqueues(struct adapter *sc, struct intrs_and_queues *iaq)
sys/dev/cxgbe/t4_vf.c
520
struct adapter *sc;
sys/dev/cxgbe/t4_vf.c
672
pi->adapter = sc;
sys/dev/cxgbe/t4_vf.c
771
vi->adapter = sc;
sys/dev/cxgbe/t4_vf.c
814
get_regs(struct adapter *sc, struct t4_regdump *regs, uint8_t *buf)
sys/dev/cxgbe/t4_vf.c
823
t4_clr_vi_stats(struct adapter *sc)
sys/dev/cxgbe/t4_vf.c
837
struct adapter *sc = dev->si_drv1;
sys/dev/cxgbe/t4_vf.c
966
sizeof(struct adapter)
sys/dev/cxgbe/t4_vf.c
980
sizeof(struct adapter)
sys/dev/cxgbe/t4_vf.c
994
sizeof(struct adapter)
sys/dev/cxgbe/tom/t4_connect.c
119
act_open_failure_cleanup(struct adapter *sc, struct toepcb *toep, u_int status)
sys/dev/cxgbe/tom/t4_connect.c
155
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_connect.c
211
act_open_cpl_size(struct adapter *sc, int isipv6)
sys/dev/cxgbe/tom/t4_connect.c
253
struct adapter *sc = tod->tod_softc;
sys/dev/cxgbe/tom/t4_connect.c
75
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_cpl_io.c
1421
t4_push_pdus(struct adapter *sc, struct toepcb *toep, int drop)
sys/dev/cxgbe/tom/t4_cpl_io.c
1540
t4_push_data(struct adapter *sc, struct toepcb *toep, int drop)
sys/dev/cxgbe/tom/t4_cpl_io.c
1553
t4_raw_wr_tx(struct adapter *sc, struct toepcb *toep, struct mbuf *m)
sys/dev/cxgbe/tom/t4_cpl_io.c
1584
struct adapter *sc = tod->tod_softc;
sys/dev/cxgbe/tom/t4_cpl_io.c
1603
struct adapter *sc = tod->tod_softc;
sys/dev/cxgbe/tom/t4_cpl_io.c
1624
struct adapter *sc = tod->tod_softc;
sys/dev/cxgbe/tom/t4_cpl_io.c
1650
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_cpl_io.c
173
update_tx_rate_limit(struct adapter *sc, struct toepcb *toep, u_int Bps)
sys/dev/cxgbe/tom/t4_cpl_io.c
1763
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_cpl_io.c
1832
send_abort_rpl(struct adapter *sc, struct sge_ofld_txq *ofld_txq, int tid,
sys/dev/cxgbe/tom/t4_cpl_io.c
1874
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_cpl_io.c
1949
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_cpl_io.c
1982
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_cpl_io.c
2148
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_cpl_io.c
2284
write_set_tcb_field(struct adapter *sc, void *dst, struct toepcb *toep,
sys/dev/cxgbe/tom/t4_cpl_io.c
2313
t4_set_tcb_field(struct adapter *sc, struct sge_wrq *wrq, struct toepcb *toep,
sys/dev/cxgbe/tom/t4_cpl_io.c
242
send_reset(struct adapter *sc, struct toepcb *toep, uint32_t snd_nxt)
sys/dev/cxgbe/tom/t4_cpl_io.c
2778
struct adapter *sc = td_adapter(toep->td);
sys/dev/cxgbe/tom/t4_cpl_io.c
306
struct adapter *sc = td_adapter(toep->td);
sys/dev/cxgbe/tom/t4_cpl_io.c
397
send_rx_credits(struct adapter *sc, struct toepcb *toep, int credits)
sys/dev/cxgbe/tom/t4_cpl_io.c
420
struct adapter *sc = tod->tod_softc;
sys/dev/cxgbe/tom/t4_cpl_io.c
457
t4_close_conn(struct adapter *sc, struct toepcb *toep)
sys/dev/cxgbe/tom/t4_cpl_io.c
625
t4_push_raw_wr(struct adapter *sc, struct toepcb *toep, struct mbuf *m)
sys/dev/cxgbe/tom/t4_cpl_io.c
688
t4_push_frames(struct adapter *sc, struct toepcb *toep, int drop)
sys/dev/cxgbe/tom/t4_cpl_io.c
89
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/tom/t4_ddp.c
1016
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_ddp.c
1178
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_ddp.c
1209
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_ddp.c
1227
struct adapter *sc = toep->vi->adapter;
sys/dev/cxgbe/tom/t4_ddp.c
1296
enable_ddp(struct adapter *sc, struct toepcb *toep)
sys/dev/cxgbe/tom/t4_ddp.c
1620
t4_write_page_pods_for_ps(struct adapter *sc, struct sge_wrq *wrq, int tid,
sys/dev/cxgbe/tom/t4_ddp.c
1702
t4_write_page_pods_for_rcvbuf(struct adapter *sc, struct sge_wrq *wrq, int tid,
sys/dev/cxgbe/tom/t4_ddp.c
1811
t4_write_page_pods_for_bio(struct adapter *sc, struct toepcb *toep,
sys/dev/cxgbe/tom/t4_ddp.c
1891
t4_write_page_pods_for_buf(struct adapter *sc, struct toepcb *toep,
sys/dev/cxgbe/tom/t4_ddp.c
1984
t4_write_page_pods_for_sgl(struct adapter *sc, struct toepcb *toep,
sys/dev/cxgbe/tom/t4_ddp.c
2100
prep_pageset(struct adapter *sc, struct toepcb *toep, struct pageset *ps)
sys/dev/cxgbe/tom/t4_ddp.c
226
struct adapter *sc = td_adapter(td);
sys/dev/cxgbe/tom/t4_ddp.c
2333
struct adapter *sc = td_adapter(toep->td);
sys/dev/cxgbe/tom/t4_ddp.c
2749
struct adapter *sc = td_adapter(toep->td);
sys/dev/cxgbe/tom/t4_ddp.c
2957
struct adapter *sc = td_adapter(toep->td);
sys/dev/cxgbe/tom/t4_ddp.c
575
mk_update_tcb_for_ddp(struct adapter *sc, struct toepcb *toep, int db_idx,
sys/dev/cxgbe/tom/t4_ddp.c
713
struct adapter *sc = td_adapter(toep->td);
sys/dev/cxgbe/tom/t4_ddp.c
765
struct adapter *sc = td_adapter(toep->td);
sys/dev/cxgbe/tom/t4_ddp.c
86
static int t4_write_page_pods_for_rcvbuf(struct adapter *sc,
sys/dev/cxgbe/tom/t4_ddp.c
930
struct adapter *sc = td_adapter(toep->td);
sys/dev/cxgbe/tom/t4_listen.c
1016
synack_failure_cleanup(struct adapter *sc, struct synq_entry *synqe)
sys/dev/cxgbe/tom/t4_listen.c
1026
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_listen.c
1076
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_listen.c
1108
struct adapter *sc = tod->tod_softc;
sys/dev/cxgbe/tom/t4_listen.c
1159
encapsulated_syn(struct adapter *sc, const struct cpl_pass_accept_req *cpl)
sys/dev/cxgbe/tom/t4_listen.c
1170
pass_accept_req_to_protohdrs(struct adapter *sc, const struct mbuf *m,
sys/dev/cxgbe/tom/t4_listen.c
119
free_stid_tab(struct adapter *sc)
sys/dev/cxgbe/tom/t4_listen.c
1279
send_synack(struct adapter *sc, struct synq_entry *synqe, uint64_t opt0,
sys/dev/cxgbe/tom/t4_listen.c
1331
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_listen.c
135
stop_stid_tab(struct adapter *sc)
sys/dev/cxgbe/tom/t4_listen.c
1589
synqe_to_protohdrs(struct adapter *sc, struct synq_entry *synqe,
sys/dev/cxgbe/tom/t4_listen.c
1614
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_listen.c
1653
KASSERT(vi->adapter == sc,
sys/dev/cxgbe/tom/t4_listen.c
176
restart_stid_tab(struct adapter *sc)
sys/dev/cxgbe/tom/t4_listen.c
203
alloc_stid(struct adapter *sc, bool isipv6, void *ctx)
sys/dev/cxgbe/tom/t4_listen.c
294
lookup_stid(struct adapter *sc, int stid)
sys/dev/cxgbe/tom/t4_listen.c
302
free_stid(struct adapter *sc, int stid, bool isipv6)
sys/dev/cxgbe/tom/t4_listen.c
328
alloc_lctx(struct adapter *sc, struct inpcb *inp, struct vi_info *vi)
sys/dev/cxgbe/tom/t4_listen.c
367
free_lctx(struct adapter *sc, struct listen_ctx *lctx)
sys/dev/cxgbe/tom/t4_listen.c
405
listen_hash_add(struct adapter *sc, struct listen_ctx *lctx)
sys/dev/cxgbe/tom/t4_listen.c
420
listen_hash_find(struct adapter *sc, struct inpcb *inp)
sys/dev/cxgbe/tom/t4_listen.c
440
listen_hash_del(struct adapter *sc, struct inpcb *inp)
sys/dev/cxgbe/tom/t4_listen.c
465
release_lctx(struct adapter *sc, struct listen_ctx *lctx)
sys/dev/cxgbe/tom/t4_listen.c
478
send_flowc_wr_synqe(struct adapter *sc, struct synq_entry *synqe)
sys/dev/cxgbe/tom/t4_listen.c
531
struct adapter *sc = tod->tod_softc;
sys/dev/cxgbe/tom/t4_listen.c
564
create_server(struct adapter *sc, struct listen_ctx *lctx)
sys/dev/cxgbe/tom/t4_listen.c
592
create_server6(struct adapter *sc, struct listen_ctx *lctx)
sys/dev/cxgbe/tom/t4_listen.c
622
destroy_server(struct adapter *sc, struct listen_ctx *lctx)
sys/dev/cxgbe/tom/t4_listen.c
653
struct adapter *sc = tod->tod_softc;
sys/dev/cxgbe/tom/t4_listen.c
75
static int alloc_stid(struct adapter *, bool, void *);
sys/dev/cxgbe/tom/t4_listen.c
751
struct adapter *sc = tod->tod_softc;
sys/dev/cxgbe/tom/t4_listen.c
76
static struct listen_ctx *lookup_stid(struct adapter *, int);
sys/dev/cxgbe/tom/t4_listen.c
77
static void free_stid(struct adapter *, int , bool);
sys/dev/cxgbe/tom/t4_listen.c
779
alloc_synqe(struct adapter *sc, struct listen_ctx *lctx, int flags)
sys/dev/cxgbe/tom/t4_listen.c
80
static struct listen_ctx *alloc_lctx(struct adapter *, struct inpcb *,
sys/dev/cxgbe/tom/t4_listen.c
807
release_synqe(struct adapter *sc, struct synq_entry *synqe)
sys/dev/cxgbe/tom/t4_listen.c
82
static int free_lctx(struct adapter *, struct listen_ctx *);
sys/dev/cxgbe/tom/t4_listen.c
838
struct adapter *sc = tod->tod_softc;
sys/dev/cxgbe/tom/t4_listen.c
84
static void listen_hash_add(struct adapter *, struct listen_ctx *);
sys/dev/cxgbe/tom/t4_listen.c
85
static struct listen_ctx *listen_hash_find(struct adapter *, struct inpcb *);
sys/dev/cxgbe/tom/t4_listen.c
86
static struct listen_ctx *listen_hash_del(struct adapter *, struct inpcb *);
sys/dev/cxgbe/tom/t4_listen.c
87
static struct inpcb *release_lctx(struct adapter *, struct listen_ctx *);
sys/dev/cxgbe/tom/t4_listen.c
883
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_listen.c
91
static int create_server6(struct adapter *, struct listen_ctx *);
sys/dev/cxgbe/tom/t4_listen.c
92
static int create_server(struct adapter *, struct listen_ctx *);
sys/dev/cxgbe/tom/t4_listen.c
95
alloc_stid_tab(struct adapter *sc)
sys/dev/cxgbe/tom/t4_listen.c
959
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_listen.c
991
done_with_synqe(struct adapter *sc, struct synq_entry *synqe)
sys/dev/cxgbe/tom/t4_tls.c
1165
tls_update_tcb(struct adapter *sc, struct toepcb *toep, uint64_t seqno,
sys/dev/cxgbe/tom/t4_tls.c
1308
tls_check_rx_sockbuf(struct adapter *sc, struct toepcb *toep,
sys/dev/cxgbe/tom/t4_tls.c
1340
tls_received_starting_data(struct adapter *sc, struct toepcb *toep,
sys/dev/cxgbe/tom/t4_tls.c
137
struct adapter *sc = td_adapter(toep->td);
sys/dev/cxgbe/tom/t4_tls.c
1374
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_tls.c
163
struct adapter *sc = td_adapter(toep->td);
sys/dev/cxgbe/tom/t4_tls.c
209
struct adapter *sc = td_adapter(toep->td);
sys/dev/cxgbe/tom/t4_tls.c
495
t4_push_ktls(struct adapter *sc, struct toepcb *toep, int drop)
sys/dev/cxgbe/tom/t4_tls.c
66
struct adapter *sc = td_adapter(toep->td);
sys/dev/cxgbe/tom/t4_tls.c
760
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_tls.c
821
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_tls.c
83
can_tls_offload(struct adapter *sc)
sys/dev/cxgbe/tom/t4_tom.c
1033
insert_tid(struct adapter *sc, int tid, void *ctx, int ntids)
sys/dev/cxgbe/tom/t4_tom.c
104
static int alloc_tid_tabs(struct adapter *);
sys/dev/cxgbe/tom/t4_tom.c
1045
lookup_tid(struct adapter *sc, int tid)
sys/dev/cxgbe/tom/t4_tom.c
105
static void free_tid_tabs(struct adapter *);
sys/dev/cxgbe/tom/t4_tom.c
1053
update_tid(struct adapter *sc, int tid, void *ctx)
sys/dev/cxgbe/tom/t4_tom.c
106
static void free_tom_data(struct adapter *, struct tom_data *);
sys/dev/cxgbe/tom/t4_tom.c
1061
remove_tid(struct adapter *sc, int tid, int ntids)
sys/dev/cxgbe/tom/t4_tom.c
1076
find_best_mtu_idx(struct adapter *sc, struct in_conninfo *inc,
sys/dev/cxgbe/tom/t4_tom.c
114
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/tom/t4_tom.c
1147
MPASS(cp->l2t_idx >= 0 && cp->l2t_idx < vi->adapter->vres.l2t.size);
sys/dev/cxgbe/tom/t4_tom.c
1167
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/tom/t4_tom.c
1219
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/tom/t4_tom.c
1254
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/tom/t4_tom.c
1451
struct adapter *sc = vi->adapter;
sys/dev/cxgbe/tom/t4_tom.c
1484
alloc_tid_tab(struct adapter *sc)
sys/dev/cxgbe/tom/t4_tom.c
1501
free_tid_tab(struct adapter *sc)
sys/dev/cxgbe/tom/t4_tom.c
1513
free_tid_tabs(struct adapter *sc)
sys/dev/cxgbe/tom/t4_tom.c
1520
alloc_tid_tabs(struct adapter *sc)
sys/dev/cxgbe/tom/t4_tom.c
1539
alloc_tcb_history(struct adapter *sc, struct tom_data *td)
sys/dev/cxgbe/tom/t4_tom.c
1551
free_tcb_history(struct adapter *sc, struct tom_data *td)
sys/dev/cxgbe/tom/t4_tom.c
1568
free_tom_data(struct adapter *sc, struct tom_data *td)
sys/dev/cxgbe/tom/t4_tom.c
167
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/tom/t4_tom.c
1688
lookup_offload_policy(struct adapter *sc, int open_type, struct mbuf *m,
sys/dev/cxgbe/tom/t4_tom.c
1779
struct adapter *sc = td_adapter(td);
sys/dev/cxgbe/tom/t4_tom.c
1819
live_tid_failure_cleanup(struct adapter *sc, struct toepcb *toep, u_int status)
sys/dev/cxgbe/tom/t4_tom.c
1853
struct adapter *sc = td_adapter(td);
sys/dev/cxgbe/tom/t4_tom.c
1896
t4_tom_activate(struct adapter *sc)
sys/dev/cxgbe/tom/t4_tom.c
1982
t4_tom_deactivate(struct adapter *sc)
sys/dev/cxgbe/tom/t4_tom.c
2038
stop_atids(struct adapter *sc)
sys/dev/cxgbe/tom/t4_tom.c
2097
stop_tids(struct adapter *sc)
sys/dev/cxgbe/tom/t4_tom.c
2144
stop_tom_l2t(struct adapter *sc)
sys/dev/cxgbe/tom/t4_tom.c
2178
t4_tom_stop(struct adapter *sc)
sys/dev/cxgbe/tom/t4_tom.c
2204
t4_tom_restart(struct adapter *sc)
sys/dev/cxgbe/tom/t4_tom.c
2277
struct adapter *sc; /* result */
sys/dev/cxgbe/tom/t4_tom.c
2281
find_offload_adapter_cb(struct adapter *sc, void *arg)
sys/dev/cxgbe/tom/t4_tom.c
2308
struct adapter *
sys/dev/cxgbe/tom/t4_tom.c
2320
send_txdataplen_max_flowc_wr(struct adapter *sc, struct toepcb *toep,
sys/dev/cxgbe/tom/t4_tom.c
2389
tom_uninit(struct adapter *sc, void *arg)
sys/dev/cxgbe/tom/t4_tom.c
305
struct adapter *sc = td_adapter(td);
sys/dev/cxgbe/tom/t4_tom.c
420
struct adapter *sc = tod->tod_softc;
sys/dev/cxgbe/tom/t4_tom.c
482
send_get_tcb(struct adapter *sc, u_int tid)
sys/dev/cxgbe/tom/t4_tom.c
513
alloc_tcb_histent(struct adapter *sc, u_int tid, int flags)
sys/dev/cxgbe/tom/t4_tom.c
542
add_tid_to_history(struct adapter *sc, u_int tid)
sys/dev/cxgbe/tom/t4_tom.c
581
struct adapter *sc = te->te_adapter;
sys/dev/cxgbe/tom/t4_tom.c
594
lookup_tcb_histent(struct adapter *sc, u_int tid, bool addrem)
sys/dev/cxgbe/tom/t4_tom.c
625
struct adapter *sc = te->te_adapter;
sys/dev/cxgbe/tom/t4_tom.c
706
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_tom.c
740
fill_tcp_info_from_tcb(struct adapter *sc, uint64_t *tcb, struct tcp_info *ti)
sys/dev/cxgbe/tom/t4_tom.c
778
fill_tcp_info_from_history(struct adapter *sc, struct tcb_histent *te,
sys/dev/cxgbe/tom/t4_tom.c
790
read_tcb_using_memwin(struct adapter *sc, u_int tid, uint64_t *buf)
sys/dev/cxgbe/tom/t4_tom.c
815
fill_tcp_info(struct adapter *sc, u_int tid, struct tcp_info *ti)
sys/dev/cxgbe/tom/t4_tom.c
841
struct adapter *sc = tod->tod_softc;
sys/dev/cxgbe/tom/t4_tom.c
865
send_mss_flowc_wr(struct adapter *sc, struct toepcb *toep)
sys/dev/cxgbe/tom/t4_tom.c
90
static int t4_tom_activate(struct adapter *);
sys/dev/cxgbe/tom/t4_tom.c
91
static int t4_tom_deactivate(struct adapter *);
sys/dev/cxgbe/tom/t4_tom.c
912
struct adapter *sc = td_adapter(toep->td);
sys/dev/cxgbe/tom/t4_tom.c
92
static int t4_tom_stop(struct adapter *);
sys/dev/cxgbe/tom/t4_tom.c
93
static int t4_tom_restart(struct adapter *);
sys/dev/cxgbe/tom/t4_tom.h
328
struct adapter *te_adapter;
sys/dev/cxgbe/tom/t4_tom.h
372
static inline struct adapter *
sys/dev/cxgbe/tom/t4_tom.h
472
void insert_tid(struct adapter *, int, void *, int);
sys/dev/cxgbe/tom/t4_tom.h
473
void *lookup_tid(struct adapter *, int);
sys/dev/cxgbe/tom/t4_tom.h
474
void update_tid(struct adapter *, int, void *);
sys/dev/cxgbe/tom/t4_tom.h
475
void remove_tid(struct adapter *, int, int);
sys/dev/cxgbe/tom/t4_tom.h
486
int add_tid_to_history(struct adapter *, u_int);
sys/dev/cxgbe/tom/t4_tom.h
487
struct adapter *find_offload_adapter(struct socket *);
sys/dev/cxgbe/tom/t4_tom.h
488
void send_txdataplen_max_flowc_wr(struct adapter *, struct toepcb *, int);
sys/dev/cxgbe/tom/t4_tom.h
496
void act_open_failure_cleanup(struct adapter *, struct toepcb *, u_int);
sys/dev/cxgbe/tom/t4_tom.h
511
void synack_failure_cleanup(struct adapter *, struct synq_entry *);
sys/dev/cxgbe/tom/t4_tom.h
512
int alloc_stid_tab(struct adapter *);
sys/dev/cxgbe/tom/t4_tom.h
513
void free_stid_tab(struct adapter *);
sys/dev/cxgbe/tom/t4_tom.h
514
void stop_stid_tab(struct adapter *);
sys/dev/cxgbe/tom/t4_tom.h
515
void restart_stid_tab(struct adapter *);
sys/dev/cxgbe/tom/t4_tom.h
522
void send_abort_rpl(struct adapter *, struct sge_ofld_txq *, int , int);
sys/dev/cxgbe/tom/t4_tom.h
524
void send_reset(struct adapter *, struct toepcb *, uint32_t);
sys/dev/cxgbe/tom/t4_tom.h
525
int send_rx_credits(struct adapter *, struct toepcb *, int);
sys/dev/cxgbe/tom/t4_tom.h
527
int t4_close_conn(struct adapter *, struct toepcb *);
sys/dev/cxgbe/tom/t4_tom.h
533
void t4_set_tcb_field(struct adapter *, struct sge_wrq *, struct toepcb *,
sys/dev/cxgbe/tom/t4_tom.h
535
void t4_push_pdus(struct adapter *, struct toepcb *, int);
sys/dev/cxgbe/tom/t4_tom.h
536
bool t4_push_raw_wr(struct adapter *, struct toepcb *, struct mbuf *);
sys/dev/cxgbe/tom/t4_tom.h
537
void t4_raw_wr_tx(struct adapter *, struct toepcb *, struct mbuf *);
sys/dev/cxgbe/tom/t4_tom.h
538
void write_set_tcb_field(struct adapter *, void *, struct toepcb *, uint16_t,
sys/dev/cxgbe/tom/t4_tom.h
552
int t4_write_page_pods_for_ps(struct adapter *, struct sge_wrq *, int,
sys/dev/cxgbe/tom/t4_tom.h
554
int t4_write_page_pods_for_bio(struct adapter *, struct toepcb *,
sys/dev/cxgbe/tom/t4_tom.h
556
int t4_write_page_pods_for_buf(struct adapter *, struct toepcb *,
sys/dev/cxgbe/tom/t4_tom.h
558
int t4_write_page_pods_for_sgl(struct adapter *, struct toepcb *,
sys/dev/cxgbe/tom/t4_tom.h
573
const struct offload_settings *lookup_offload_policy(struct adapter *, int,
sys/dev/cxgbe/tom/t4_tom.h
577
bool can_tls_offload(struct adapter *);
sys/dev/cxgbe/tom/t4_tom.h
579
void t4_push_ktls(struct adapter *, struct toepcb *, int);
sys/dev/cxgbe/tom/t4_tom.h
580
void tls_received_starting_data(struct adapter *, struct toepcb *,
sys/dev/cxgbe/tom/t4_tom.h
590
uint32_t t4_pblpool_alloc(struct adapter *, int);
sys/dev/cxgbe/tom/t4_tom.h
591
void t4_pblpool_free(struct adapter *, uint32_t, int);
sys/dev/cxgbe/tom/t4_tom.h
592
int t4_pblpool_create(struct adapter *);
sys/dev/cxgbe/tom/t4_tom.h
593
void t4_pblpool_destroy(struct adapter *);
sys/dev/cxgbe/tom/t4_tom_l2t.c
155
send_pending(struct adapter *sc, struct l2t_entry *e)
sys/dev/cxgbe/tom/t4_tom_l2t.c
168
resolution_failed(struct adapter *sc, struct l2t_entry *e)
sys/dev/cxgbe/tom/t4_tom_l2t.c
182
update_entry(struct adapter *sc, struct l2t_entry *e, uint8_t *lladdr,
sys/dev/cxgbe/tom/t4_tom_l2t.c
230
resolve_entry(struct adapter *sc, struct l2t_entry *e)
sys/dev/cxgbe/tom/t4_tom_l2t.c
266
t4_l2t_send_slow(struct adapter *sc, struct wrqe *wr, struct l2t_entry *e)
sys/dev/cxgbe/tom/t4_tom_l2t.c
320
struct adapter *sc = iq->adapter;
sys/dev/cxgbe/tom/t4_tom_l2t.c
362
struct adapter *sc = pi->adapter;
sys/dev/cxgbe/tom/t4_tom_l2t.c
426
struct adapter *sc = tod->tod_softc;
sys/dev/cxgbe/tom/t4_tom_l2t.h
35
int t4_l2t_send_slow(struct adapter *, struct wrqe *, struct l2t_entry *);
sys/dev/cxgbe/tom/t4_tom_l2t.h
44
t4_l2t_send(struct adapter *sc, struct wrqe *wr, struct l2t_entry *e)
sys/dev/drm2/drm_crtc.h
883
extern bool drm_probe_ddc(device_t adapter);
sys/dev/drm2/drm_crtc.h
885
device_t adapter);
sys/dev/drm2/drm_dp_helper.h
315
int (*aux_ch)(device_t adapter, int mode, uint8_t write_byte,
sys/dev/drm2/drm_dp_helper.h
322
void *priv, device_t *bus, device_t *adapter);
sys/dev/drm2/drm_dp_iic_helper.c
221
void *priv, device_t *bus, device_t *adapter)
sys/dev/drm2/drm_dp_iic_helper.c
254
*adapter = data->port;
sys/dev/drm2/drm_edid.c
264
drm_do_probe_ddc_edid(device_t adapter, unsigned char *buf,
sys/dev/drm2/drm_edid.c
302
ret = iicbus_transfer(adapter, &msgs[3 - xfers], xfers);
sys/dev/drm2/drm_edid.c
325
drm_do_get_edid(struct drm_connector *connector, device_t adapter)
sys/dev/drm2/drm_edid.c
336
if (drm_do_probe_ddc_edid(adapter, block, 0, EDID_LENGTH))
sys/dev/drm2/drm_edid.c
362
if (drm_do_probe_ddc_edid(adapter,
sys/dev/drm2/drm_edid.c
412
drm_probe_ddc(device_t adapter)
sys/dev/drm2/drm_edid.c
416
return (drm_do_probe_ddc_edid(adapter, &out, 0, 1) == 0);
sys/dev/drm2/drm_edid.c
431
device_t adapter)
sys/dev/drm2/drm_edid.c
435
if (drm_probe_ddc(adapter))
sys/dev/drm2/drm_edid.c
436
edid = (struct edid *)drm_do_get_edid(connector, adapter);
sys/dev/ena/ena.c
1002
ena_free_rx_resources(adapter, i);
sys/dev/ena/ena.c
1013
ena_free_all_rx_resources(struct ena_adapter *adapter)
sys/dev/ena/ena.c
1017
for (i = 0; i < adapter->num_io_queues; i++)
sys/dev/ena/ena.c
1018
ena_free_rx_resources(adapter, i);
sys/dev/ena/ena.c
1022
ena_alloc_rx_mbuf(struct ena_adapter *adapter, struct ena_ring *rx_ring,
sys/dev/ena/ena.c
1025
device_t pdev = adapter->pdev;
sys/dev/ena/ena.c
1056
adapter->rx_buf_tag, rx_info->mbuf, rx_info->mbuf->m_len);
sys/dev/ena/ena.c
1057
error = bus_dmamap_load_mbuf_sg(adapter->rx_buf_tag, rx_info->map,
sys/dev/ena/ena.c
1066
bus_dmamap_sync(adapter->rx_buf_tag, rx_info->map, BUS_DMASYNC_PREREAD);
sys/dev/ena/ena.c
1085
ena_free_rx_mbuf(struct ena_adapter *adapter, struct ena_ring *rx_ring,
sys/dev/ena/ena.c
1089
ena_log(adapter->pdev, WARN,
sys/dev/ena/ena.c
1094
bus_dmamap_sync(adapter->rx_buf_tag, rx_info->map,
sys/dev/ena/ena.c
1096
bus_dmamap_unload(adapter->rx_buf_tag, rx_info->map);
sys/dev/ena/ena.c
1110
struct ena_adapter *adapter = rx_ring->adapter;
sys/dev/ena/ena.c
1111
device_t pdev = adapter->pdev;
sys/dev/ena/ena.c
1116
ena_log_io(adapter->pdev, DBG, "refill qid: %d\n", rx_ring->qid);
sys/dev/ena/ena.c
1129
if (ena_rx_ring_in_netmap(adapter, rx_ring->qid))
sys/dev/ena/ena.c
1130
rc = ena_netmap_alloc_rx_slot(adapter, rx_ring,
sys/dev/ena/ena.c
1134
rc = ena_alloc_rx_mbuf(adapter, rx_ring, rx_info);
sys/dev/ena/ena.c
1169
ena_reinit_netmap(struct ena_adapter *adapter)
sys/dev/ena/ena.c
1173
netmap_detach(adapter->ifp);
sys/dev/ena/ena.c
1174
rc = ena_netmap_attach(adapter);
sys/dev/ena/ena.c
1176
ena_log(adapter->pdev, ERR, "netmap attach failed: %d\n", rc);
sys/dev/ena/ena.c
1183
ena_update_buf_ring_size(struct ena_adapter *adapter,
sys/dev/ena/ena.c
1190
old_buf_ring_size = adapter->buf_ring_size;
sys/dev/ena/ena.c
1191
adapter->buf_ring_size = new_buf_ring_size;
sys/dev/ena/ena.c
1193
dev_was_up = ENA_FLAG_ISSET(ENA_FLAG_DEV_UP, adapter);
sys/dev/ena/ena.c
1194
ena_down(adapter);
sys/dev/ena/ena.c
1197
ena_free_all_io_rings_resources(adapter);
sys/dev/ena/ena.c
1198
ena_init_io_rings_advanced(adapter);
sys/dev/ena/ena.c
1200
rc = ena_reinit_netmap(adapter);
sys/dev/ena/ena.c
1212
rc = ena_up(adapter);
sys/dev/ena/ena.c
1214
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
1219
adapter->buf_ring_size = old_buf_ring_size;
sys/dev/ena/ena.c
1220
ena_free_all_io_rings_resources(adapter);
sys/dev/ena/ena.c
1221
ena_init_io_rings_advanced(adapter);
sys/dev/ena/ena.c
1223
rc = ena_reinit_netmap(adapter);
sys/dev/ena/ena.c
1229
adapter);
sys/dev/ena/ena.c
1230
ena_trigger_reset(adapter, ENA_REGS_RESET_OS_TRIGGER);
sys/dev/ena/ena.c
1238
ena_update_queue_size(struct ena_adapter *adapter, uint32_t new_tx_size,
sys/dev/ena/ena.c
1245
old_tx_size = adapter->requested_tx_ring_size;
sys/dev/ena/ena.c
1246
old_rx_size = adapter->requested_rx_ring_size;
sys/dev/ena/ena.c
1247
adapter->requested_tx_ring_size = new_tx_size;
sys/dev/ena/ena.c
1248
adapter->requested_rx_ring_size = new_rx_size;
sys/dev/ena/ena.c
1250
dev_was_up = ENA_FLAG_ISSET(ENA_FLAG_DEV_UP, adapter);
sys/dev/ena/ena.c
1251
ena_down(adapter);
sys/dev/ena/ena.c
1254
ena_init_io_rings_basic(adapter);
sys/dev/ena/ena.c
1256
rc = ena_reinit_netmap(adapter);
sys/dev/ena/ena.c
1262
rc = ena_up(adapter);
sys/dev/ena/ena.c
1264
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
1269
adapter->requested_tx_ring_size = old_tx_size;
sys/dev/ena/ena.c
1270
adapter->requested_rx_ring_size = old_rx_size;
sys/dev/ena/ena.c
1271
ena_init_io_rings_basic(adapter);
sys/dev/ena/ena.c
1273
rc = ena_reinit_netmap(adapter);
sys/dev/ena/ena.c
1279
rc = ena_up(adapter);
sys/dev/ena/ena.c
1281
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
1289
ENA_FLAG_DEV_UP_BEFORE_RESET, adapter);
sys/dev/ena/ena.c
1290
ena_trigger_reset(adapter,
sys/dev/ena/ena.c
1300
ena_update_io_rings(struct ena_adapter *adapter, uint32_t num)
sys/dev/ena/ena.c
1302
ena_free_all_io_rings_resources(adapter);
sys/dev/ena/ena.c
1304
ena_com_rss_destroy(adapter->ena_dev);
sys/dev/ena/ena.c
1306
adapter->num_io_queues = num;
sys/dev/ena/ena.c
1307
ena_init_io_rings(adapter);
sys/dev/ena/ena.c
1311
ena_update_base_cpu(struct ena_adapter *adapter, int new_num)
sys/dev/ena/ena.c
1317
dev_was_up = ENA_FLAG_ISSET(ENA_FLAG_DEV_UP, adapter);
sys/dev/ena/ena.c
1318
old_num = adapter->irq_cpu_base;
sys/dev/ena/ena.c
1320
ena_down(adapter);
sys/dev/ena/ena.c
1322
adapter->irq_cpu_base = new_num;
sys/dev/ena/ena.c
1325
rc = ena_up(adapter);
sys/dev/ena/ena.c
1327
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
1332
adapter->irq_cpu_base = old_num;
sys/dev/ena/ena.c
1334
rc = ena_up(adapter);
sys/dev/ena/ena.c
1336
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
1340
ENA_FLAG_DEV_UP_BEFORE_RESET, adapter);
sys/dev/ena/ena.c
1341
ena_trigger_reset(adapter,
sys/dev/ena/ena.c
1350
ena_update_cpu_stride(struct ena_adapter *adapter, uint32_t new_num)
sys/dev/ena/ena.c
1356
dev_was_up = ENA_FLAG_ISSET(ENA_FLAG_DEV_UP, adapter);
sys/dev/ena/ena.c
1357
old_num = adapter->irq_cpu_stride;
sys/dev/ena/ena.c
1359
ena_down(adapter);
sys/dev/ena/ena.c
1361
adapter->irq_cpu_stride = new_num;
sys/dev/ena/ena.c
1364
rc = ena_up(adapter);
sys/dev/ena/ena.c
1366
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
1371
adapter->irq_cpu_stride = old_num;
sys/dev/ena/ena.c
1373
rc = ena_up(adapter);
sys/dev/ena/ena.c
1375
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
1379
ENA_FLAG_DEV_UP_BEFORE_RESET, adapter);
sys/dev/ena/ena.c
1380
ena_trigger_reset(adapter,
sys/dev/ena/ena.c
1390
ena_update_io_queue_nb(struct ena_adapter *adapter, uint32_t new_num)
sys/dev/ena/ena.c
1396
dev_was_up = ENA_FLAG_ISSET(ENA_FLAG_DEV_UP, adapter);
sys/dev/ena/ena.c
1397
old_num = adapter->num_io_queues;
sys/dev/ena/ena.c
1398
ena_down(adapter);
sys/dev/ena/ena.c
1400
ena_update_io_rings(adapter, new_num);
sys/dev/ena/ena.c
1402
rc = ena_reinit_netmap(adapter);
sys/dev/ena/ena.c
1408
rc = ena_up(adapter);
sys/dev/ena/ena.c
1410
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
1415
ena_update_io_rings(adapter, old_num);
sys/dev/ena/ena.c
1417
rc = ena_reinit_netmap(adapter);
sys/dev/ena/ena.c
1422
rc = ena_up(adapter);
sys/dev/ena/ena.c
1424
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
1428
ENA_FLAG_DEV_UP_BEFORE_RESET, adapter);
sys/dev/ena/ena.c
1429
ena_trigger_reset(adapter,
sys/dev/ena/ena.c
1439
ena_free_rx_bufs(struct ena_adapter *adapter, unsigned int qid)
sys/dev/ena/ena.c
1441
struct ena_ring *rx_ring = &adapter->rx_ring[qid];
sys/dev/ena/ena.c
1448
ena_free_rx_mbuf(adapter, rx_ring, rx_info);
sys/dev/ena/ena.c
1450
if (((if_getflags(adapter->ifp) & IFF_DYING) == 0) &&
sys/dev/ena/ena.c
1451
(if_getcapenable(adapter->ifp) & IFCAP_NETMAP)) {
sys/dev/ena/ena.c
1453
ena_netmap_free_rx_slot(adapter, rx_ring,
sys/dev/ena/ena.c
1466
ena_refill_all_rx_bufs(struct ena_adapter *adapter)
sys/dev/ena/ena.c
1471
for (i = 0; i < adapter->num_io_queues; i++) {
sys/dev/ena/ena.c
1472
rx_ring = &adapter->rx_ring[i];
sys/dev/ena/ena.c
1476
ena_log_io(adapter->pdev, WARN,
sys/dev/ena/ena.c
1487
ena_free_all_rx_bufs(struct ena_adapter *adapter)
sys/dev/ena/ena.c
1491
for (i = 0; i < adapter->num_io_queues; i++)
sys/dev/ena/ena.c
1492
ena_free_rx_bufs(adapter, i);
sys/dev/ena/ena.c
1501
ena_free_tx_bufs(struct ena_adapter *adapter, unsigned int qid)
sys/dev/ena/ena.c
1504
struct ena_ring *tx_ring = &adapter->tx_ring[qid];
sys/dev/ena/ena.c
1514
ena_log(adapter->pdev, WARN,
sys/dev/ena/ena.c
1519
ena_log(adapter->pdev, DBG,
sys/dev/ena/ena.c
1524
bus_dmamap_sync(adapter->tx_buf_tag, tx_info->dmamap,
sys/dev/ena/ena.c
1526
bus_dmamap_unload(adapter->tx_buf_tag, tx_info->dmamap);
sys/dev/ena/ena.c
1535
ena_free_all_tx_bufs(struct ena_adapter *adapter)
sys/dev/ena/ena.c
1537
for (int i = 0; i < adapter->num_io_queues; i++)
sys/dev/ena/ena.c
1538
ena_free_tx_bufs(adapter, i);
sys/dev/ena/ena.c
1542
ena_destroy_all_tx_queues(struct ena_adapter *adapter)
sys/dev/ena/ena.c
1547
for (i = 0; i < adapter->num_io_queues; i++) {
sys/dev/ena/ena.c
1549
ena_com_destroy_io_queue(adapter->ena_dev, ena_qid);
sys/dev/ena/ena.c
1554
ena_destroy_all_rx_queues(struct ena_adapter *adapter)
sys/dev/ena/ena.c
1559
for (i = 0; i < adapter->num_io_queues; i++) {
sys/dev/ena/ena.c
1561
ena_com_destroy_io_queue(adapter->ena_dev, ena_qid);
sys/dev/ena/ena.c
1566
ena_destroy_all_io_queues(struct ena_adapter *adapter)
sys/dev/ena/ena.c
1571
for (i = 0; i < adapter->num_io_queues; i++) {
sys/dev/ena/ena.c
1572
queue = &adapter->que[i];
sys/dev/ena/ena.c
1578
ena_destroy_all_tx_queues(adapter);
sys/dev/ena/ena.c
1579
ena_destroy_all_rx_queues(adapter);
sys/dev/ena/ena.c
1583
ena_create_io_queues(struct ena_adapter *adapter)
sys/dev/ena/ena.c
1585
struct ena_com_dev *ena_dev = adapter->ena_dev;
sys/dev/ena/ena.c
1595
for (i = 0; i < adapter->num_io_queues; i++) {
sys/dev/ena/ena.c
1600
ctx.queue_size = adapter->requested_tx_ring_size;
sys/dev/ena/ena.c
1603
ctx.numa_node = adapter->que[i].domain;
sys/dev/ena/ena.c
1607
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
1611
ring = &adapter->tx_ring[i];
sys/dev/ena/ena.c
1615
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
1630
for (i = 0; i < adapter->num_io_queues; i++) {
sys/dev/ena/ena.c
1635
ctx.queue_size = adapter->requested_rx_ring_size;
sys/dev/ena/ena.c
1638
ctx.numa_node = adapter->que[i].domain;
sys/dev/ena/ena.c
1642
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
1647
ring = &adapter->rx_ring[i];
sys/dev/ena/ena.c
1651
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
1665
for (i = 0; i < adapter->num_io_queues; i++) {
sys/dev/ena/ena.c
1666
queue = &adapter->que[i];
sys/dev/ena/ena.c
1677
device_get_nameunit(adapter->pdev), i);
sys/dev/ena/ena.c
1685
i = adapter->num_io_queues;
sys/dev/ena/ena.c
1706
struct ena_adapter *adapter = (struct ena_adapter *)arg;
sys/dev/ena/ena.c
1708
ena_com_admin_q_comp_intr_handler(adapter->ena_dev);
sys/dev/ena/ena.c
1709
if (likely(ENA_FLAG_ISSET(ENA_FLAG_DEVICE_RUNNING, adapter)))
sys/dev/ena/ena.c
1710
ena_com_aenq_intr_handler(adapter->ena_dev, arg);
sys/dev/ena/ena.c
1721
struct ena_adapter *adapter = queue->adapter;
sys/dev/ena/ena.c
1722
if_t ifp = adapter->ifp;
sys/dev/ena/ena.c
1733
ena_enable_msix(struct ena_adapter *adapter)
sys/dev/ena/ena.c
1735
device_t dev = adapter->pdev;
sys/dev/ena/ena.c
1739
if (ENA_FLAG_ISSET(ENA_FLAG_MSIX_ENABLED, adapter)) {
sys/dev/ena/ena.c
1745
msix_vecs = ENA_MAX_MSIX_VEC(adapter->max_num_io_queues);
sys/dev/ena/ena.c
1747
adapter->msix_entries = malloc(msix_vecs * sizeof(struct msix_entry),
sys/dev/ena/ena.c
175
static int ena_reinit_netmap(struct ena_adapter *adapter);
sys/dev/ena/ena.c
1753
adapter->msix_entries[i].entry = i;
sys/dev/ena/ena.c
1755
adapter->msix_entries[i].vector = i + 1;
sys/dev/ena/ena.c
1783
adapter->msix_vecs = msix_vecs;
sys/dev/ena/ena.c
1784
ENA_FLAG_SET_ATOMIC(ENA_FLAG_MSIX_ENABLED, adapter);
sys/dev/ena/ena.c
1789
free(adapter->msix_entries, M_DEVBUF);
sys/dev/ena/ena.c
1790
adapter->msix_entries = NULL;
sys/dev/ena/ena.c
1796
ena_setup_mgmnt_intr(struct ena_adapter *adapter)
sys/dev/ena/ena.c
1798
snprintf(adapter->irq_tbl[ENA_MGMNT_IRQ_IDX].name, ENA_IRQNAME_SIZE,
sys/dev/ena/ena.c
1799
"ena-mgmnt@pci:%s", device_get_nameunit(adapter->pdev));
sys/dev/ena/ena.c
1804
adapter->irq_tbl[ENA_MGMNT_IRQ_IDX].handler = NULL;
sys/dev/ena/ena.c
1805
adapter->irq_tbl[ENA_MGMNT_IRQ_IDX].data = adapter;
sys/dev/ena/ena.c
1806
adapter->irq_tbl[ENA_MGMNT_IRQ_IDX].vector =
sys/dev/ena/ena.c
1807
adapter->msix_entries[ENA_MGMNT_IRQ_IDX].vector;
sys/dev/ena/ena.c
1811
ena_setup_io_intr(struct ena_adapter *adapter)
sys/dev/ena/ena.c
1821
if (adapter->msix_entries == NULL)
sys/dev/ena/ena.c
1825
if (adapter->first_bind < 0) {
sys/dev/ena/ena.c
1826
adapter->first_bind = last_bind;
sys/dev/ena/ena.c
1827
last_bind = (last_bind + adapter->num_io_queues) % num_buckets;
sys/dev/ena/ena.c
1829
cur_bind = adapter->first_bind;
sys/dev/ena/ena.c
1832
for (int i = 0; i < adapter->num_io_queues; i++) {
sys/dev/ena/ena.c
1835
snprintf(adapter->irq_tbl[irq_idx].name, ENA_IRQNAME_SIZE,
sys/dev/ena/ena.c
1836
"%s-TxRx-%d", device_get_nameunit(adapter->pdev), i);
sys/dev/ena/ena.c
1837
adapter->irq_tbl[irq_idx].handler = ena_handle_msix;
sys/dev/ena/ena.c
1838
adapter->irq_tbl[irq_idx].data = &adapter->que[i];
sys/dev/ena/ena.c
1839
adapter->irq_tbl[irq_idx].vector =
sys/dev/ena/ena.c
1840
adapter->msix_entries[irq_idx].vector;
sys/dev/ena/ena.c
1841
ena_log(adapter->pdev, DBG, "ena_setup_io_intr vector: %d\n",
sys/dev/ena/ena.c
1842
adapter->msix_entries[irq_idx].vector);
sys/dev/ena/ena.c
1844
if (adapter->irq_cpu_base > ENA_BASE_CPU_UNSPECIFIED) {
sys/dev/ena/ena.c
1845
adapter->que[i].cpu = adapter->irq_tbl[irq_idx].cpu =
sys/dev/ena/ena.c
1846
(unsigned)(adapter->irq_cpu_base +
sys/dev/ena/ena.c
1847
i * adapter->irq_cpu_stride) % (unsigned)mp_ncpus;
sys/dev/ena/ena.c
1848
CPU_SETOF(adapter->que[i].cpu, &adapter->que[i].cpu_mask);
sys/dev/ena/ena.c
1852
adapter->que[i].cpu = adapter->irq_tbl[irq_idx].cpu =
sys/dev/ena/ena.c
1855
CPU_SETOF(adapter->que[i].cpu, &adapter->que[i].cpu_mask);
sys/dev/ena/ena.c
1858
if (CPU_ISSET(adapter->que[i].cpu, &cpuset_domain[idx]))
sys/dev/ena/ena.c
1861
adapter->que[i].domain = idx;
sys/dev/ena/ena.c
1863
adapter->que[i].domain = -1;
sys/dev/ena/ena.c
1871
ena_request_mgmnt_irq(struct ena_adapter *adapter)
sys/dev/ena/ena.c
1873
device_t pdev = adapter->pdev;
sys/dev/ena/ena.c
1880
irq = &adapter->irq_tbl[ENA_MGMNT_IRQ_IDX];
sys/dev/ena/ena.c
1881
irq->res = bus_alloc_resource_any(adapter->pdev, SYS_RES_IRQ,
sys/dev/ena/ena.c
1890
rc = bus_setup_intr(adapter->pdev, irq->res,
sys/dev/ena/ena.c
1905
rcc = bus_release_resource(adapter->pdev, SYS_RES_IRQ, irq->vector,
sys/dev/ena/ena.c
1917
ena_request_io_irq(struct ena_adapter *adapter)
sys/dev/ena/ena.c
1919
device_t pdev = adapter->pdev;
sys/dev/ena/ena.c
1924
if (unlikely(!ENA_FLAG_ISSET(ENA_FLAG_MSIX_ENABLED, adapter))) {
sys/dev/ena/ena.c
1932
for (i = ENA_IO_IRQ_FIRST_IDX; i < adapter->msix_vecs; i++) {
sys/dev/ena/ena.c
1933
irq = &adapter->irq_tbl[i];
sys/dev/ena/ena.c
1938
irq->res = bus_alloc_resource_any(adapter->pdev, SYS_RES_IRQ,
sys/dev/ena/ena.c
1947
rc = bus_setup_intr(adapter->pdev, irq->res,
sys/dev/ena/ena.c
1958
if (adapter->rss_enabled || adapter->irq_cpu_base > ENA_BASE_CPU_UNSPECIFIED) {
sys/dev/ena/ena.c
1959
rc = bus_bind_intr(adapter->pdev, irq->res, irq->cpu);
sys/dev/ena/ena.c
1976
irq = &adapter->irq_tbl[i];
sys/dev/ena/ena.c
1982
rcc = bus_teardown_intr(adapter->pdev, irq->res,
sys/dev/ena/ena.c
1996
rcc = bus_release_resource(adapter->pdev, SYS_RES_IRQ,
sys/dev/ena/ena.c
2011
ena_free_mgmnt_irq(struct ena_adapter *adapter)
sys/dev/ena/ena.c
2013
device_t pdev = adapter->pdev;
sys/dev/ena/ena.c
2017
irq = &adapter->irq_tbl[ENA_MGMNT_IRQ_IDX];
sys/dev/ena/ena.c
2020
rc = bus_teardown_intr(adapter->pdev, irq->res, irq->cookie);
sys/dev/ena/ena.c
2029
rc = bus_release_resource(adapter->pdev, SYS_RES_IRQ,
sys/dev/ena/ena.c
2040
ena_free_io_irq(struct ena_adapter *adapter)
sys/dev/ena/ena.c
2042
device_t pdev = adapter->pdev;
sys/dev/ena/ena.c
2046
for (int i = ENA_IO_IRQ_FIRST_IDX; i < adapter->msix_vecs; i++) {
sys/dev/ena/ena.c
2047
irq = &adapter->irq_tbl[i];
sys/dev/ena/ena.c
2050
rc = bus_teardown_intr(adapter->pdev, irq->res,
sys/dev/ena/ena.c
2063
rc = bus_release_resource(adapter->pdev, SYS_RES_IRQ,
sys/dev/ena/ena.c
2076
ena_free_irqs(struct ena_adapter *adapter)
sys/dev/ena/ena.c
2078
ena_free_io_irq(adapter);
sys/dev/ena/ena.c
2079
ena_free_mgmnt_irq(adapter);
sys/dev/ena/ena.c
2080
ena_disable_msix(adapter);
sys/dev/ena/ena.c
2084
ena_disable_msix(struct ena_adapter *adapter)
sys/dev/ena/ena.c
2086
if (ENA_FLAG_ISSET(ENA_FLAG_MSIX_ENABLED, adapter)) {
sys/dev/ena/ena.c
2087
ENA_FLAG_CLEAR_ATOMIC(ENA_FLAG_MSIX_ENABLED, adapter);
sys/dev/ena/ena.c
2088
pci_release_msi(adapter->pdev);
sys/dev/ena/ena.c
209
struct ena_adapter *adapter = device_get_softc(dmadev);
sys/dev/ena/ena.c
2091
adapter->msix_vecs = 0;
sys/dev/ena/ena.c
2092
free(adapter->msix_entries, M_DEVBUF);
sys/dev/ena/ena.c
2093
adapter->msix_entries = NULL;
sys/dev/ena/ena.c
2097
ena_unmask_all_io_irqs(struct ena_adapter *adapter)
sys/dev/ena/ena.c
210
device_t pdev = adapter->pdev;
sys/dev/ena/ena.c
2106
for (i = 0; i < adapter->num_io_queues; i++) {
sys/dev/ena/ena.c
2108
io_cq = &adapter->ena_dev->io_cq_queues[ena_qid];
sys/dev/ena/ena.c
2110
tx_ring = &adapter->tx_ring[i];
sys/dev/ena/ena.c
2117
ena_up_complete(struct ena_adapter *adapter)
sys/dev/ena/ena.c
2121
if (likely(ENA_FLAG_ISSET(ENA_FLAG_RSS_ACTIVE, adapter))) {
sys/dev/ena/ena.c
2122
rc = ena_rss_configure(adapter);
sys/dev/ena/ena.c
2124
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
2130
rc = ena_change_mtu(adapter->ifp, if_getmtu(adapter->ifp));
sys/dev/ena/ena.c
2134
ena_refill_all_rx_bufs(adapter);
sys/dev/ena/ena.c
2135
ena_reset_counters((counter_u64_t *)&adapter->hw_stats,
sys/dev/ena/ena.c
2136
sizeof(adapter->hw_stats));
sys/dev/ena/ena.c
2142
set_io_rings_size(struct ena_adapter *adapter, int new_tx_size, int new_rx_size)
sys/dev/ena/ena.c
2146
for (i = 0; i < adapter->num_io_queues; i++) {
sys/dev/ena/ena.c
2147
adapter->tx_ring[i].ring_size = new_tx_size;
sys/dev/ena/ena.c
2148
adapter->rx_ring[i].ring_size = new_rx_size;
sys/dev/ena/ena.c
2153
create_queues_with_size_backoff(struct ena_adapter *adapter)
sys/dev/ena/ena.c
2155
device_t pdev = adapter->pdev;
sys/dev/ena/ena.c
2164
set_io_rings_size(adapter, adapter->requested_tx_ring_size,
sys/dev/ena/ena.c
2165
adapter->requested_rx_ring_size);
sys/dev/ena/ena.c
2169
rc = ena_setup_all_tx_resources(adapter);
sys/dev/ena/ena.c
217
dma_space_addr = ENA_DMA_BIT_MASK(adapter->dma_width);
sys/dev/ena/ena.c
2176
rc = ena_setup_all_rx_resources(adapter);
sys/dev/ena/ena.c
2183
rc = ena_create_io_queues(adapter);
sys/dev/ena/ena.c
2192
ena_free_all_rx_resources(adapter);
sys/dev/ena/ena.c
2194
ena_free_all_tx_resources(adapter);
sys/dev/ena/ena.c
2206
cur_tx_ring_size = adapter->tx_ring[0].ring_size;
sys/dev/ena/ena.c
2207
cur_rx_ring_size = adapter->rx_ring[0].ring_size;
sys/dev/ena/ena.c
2238
set_io_rings_size(adapter, new_tx_ring_size, new_rx_ring_size);
sys/dev/ena/ena.c
2243
ena_up(struct ena_adapter *adapter)
sys/dev/ena/ena.c
2249
if (unlikely(device_is_attached(adapter->pdev) == 0)) {
sys/dev/ena/ena.c
2250
ena_log(adapter->pdev, ERR, "device is not attached!\n");
sys/dev/ena/ena.c
2254
if (ENA_FLAG_ISSET(ENA_FLAG_DEV_UP, adapter))
sys/dev/ena/ena.c
2257
ena_log(adapter->pdev, INFO, "device is going UP\n");
sys/dev/ena/ena.c
2260
rc = ena_setup_io_intr(adapter);
sys/dev/ena/ena.c
2262
ena_log(adapter->pdev, ERR, "error setting up IO interrupt\n");
sys/dev/ena/ena.c
2265
rc = ena_request_io_irq(adapter);
sys/dev/ena/ena.c
2267
ena_log(adapter->pdev, ERR, "err_req_irq\n");
sys/dev/ena/ena.c
2271
ena_log(adapter->pdev, INFO,
sys/dev/ena/ena.c
2273
adapter->num_io_queues,
sys/dev/ena/ena.c
2274
adapter->requested_rx_ring_size,
sys/dev/ena/ena.c
2275
adapter->requested_tx_ring_size,
sys/dev/ena/ena.c
2276
(adapter->ena_dev->tx_mem_queue_type ==
sys/dev/ena/ena.c
2279
rc = create_queues_with_size_backoff(adapter);
sys/dev/ena/ena.c
2281
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
2286
if (ENA_FLAG_ISSET(ENA_FLAG_LINK_UP, adapter))
sys/dev/ena/ena.c
2287
if_link_state_change(adapter->ifp, LINK_STATE_UP);
sys/dev/ena/ena.c
2289
rc = ena_up_complete(adapter);
sys/dev/ena/ena.c
2293
counter_u64_add(adapter->dev_stats.interface_up, 1);
sys/dev/ena/ena.c
2295
ena_update_hwassist(adapter);
sys/dev/ena/ena.c
2297
if_setdrvflagbits(adapter->ifp, IFF_DRV_RUNNING, IFF_DRV_OACTIVE);
sys/dev/ena/ena.c
2299
ENA_FLAG_SET_ATOMIC(ENA_FLAG_DEV_UP, adapter);
sys/dev/ena/ena.c
2301
ena_unmask_all_io_irqs(adapter);
sys/dev/ena/ena.c
2306
ena_destroy_all_io_queues(adapter);
sys/dev/ena/ena.c
2307
ena_free_all_rx_resources(adapter);
sys/dev/ena/ena.c
2308
ena_free_all_tx_resources(adapter);
sys/dev/ena/ena.c
2310
ena_free_io_irq(adapter);
sys/dev/ena/ena.c
2318
struct ena_adapter *adapter;
sys/dev/ena/ena.c
2321
adapter = if_getsoftc(ifp);
sys/dev/ena/ena.c
2322
stats = &adapter->hw_stats;
sys/dev/ena/ena.c
2352
struct ena_adapter *adapter = if_getsoftc(ifp);
sys/dev/ena/ena.c
2353
ena_log(adapter->pdev, DBG, "Media status update\n");
sys/dev/ena/ena.c
2360
if (!ENA_FLAG_ISSET(ENA_FLAG_LINK_UP, adapter)) {
sys/dev/ena/ena.c
2362
ena_log(adapter->pdev, INFO, "Link is down\n");
sys/dev/ena/ena.c
2375
struct ena_adapter *adapter = (struct ena_adapter *)arg;
sys/dev/ena/ena.c
2377
if (!ENA_FLAG_ISSET(ENA_FLAG_DEV_UP, adapter)) {
sys/dev/ena/ena.c
2379
ena_up(adapter);
sys/dev/ena/ena.c
2387
struct ena_adapter *adapter;
sys/dev/ena/ena.c
2391
adapter = if_getsoftc(ifp);
sys/dev/ena/ena.c
2403
ena_down(adapter);
sys/dev/ena/ena.c
2407
rc = ena_up(adapter);
sys/dev/ena/ena.c
2416
ena_log(adapter->pdev, INFO,
sys/dev/ena/ena.c
2421
rc = ena_up(adapter);
sys/dev/ena/ena.c
2427
ena_down(adapter);
sys/dev/ena/ena.c
2439
rc = ifmedia_ioctl(ifp, ifr, &adapter->media, command);
sys/dev/ena/ena.c
2454
ena_down(adapter);
sys/dev/ena/ena.c
2455
rc = ena_up(adapter);
sys/dev/ena/ena.c
2512
ena_update_hwassist(struct ena_adapter *adapter)
sys/dev/ena/ena.c
2514
if_t ifp = adapter->ifp;
sys/dev/ena/ena.c
2515
uint32_t feat = adapter->tx_offload_cap;
sys/dev/ena/ena.c
2544
ena_setup_ifnet(device_t pdev, struct ena_adapter *adapter,
sys/dev/ena/ena.c
2550
ifp = adapter->ifp = if_gethandle(IFT_ETHER);
sys/dev/ena/ena.c
2553
if_setsoftc(ifp, adapter);
sys/dev/ena/ena.c
2562
if_setsendqlen(ifp, adapter->requested_tx_ring_size);
sys/dev/ena/ena.c
2577
if_sethwtsomaxsegcount(ifp, adapter->max_tx_sgl_size - 1);
sys/dev/ena/ena.c
2587
ifmedia_init(&adapter->media, IFM_IMASK, ena_media_change,
sys/dev/ena/ena.c
2589
ifmedia_add(&adapter->media, IFM_ETHER | IFM_AUTO, 0, NULL);
sys/dev/ena/ena.c
2590
ifmedia_set(&adapter->media, IFM_ETHER | IFM_AUTO);
sys/dev/ena/ena.c
2592
ether_ifattach(ifp, adapter->mac_addr);
sys/dev/ena/ena.c
2596
ena_down(struct ena_adapter *adapter)
sys/dev/ena/ena.c
2602
if (!ENA_FLAG_ISSET(ENA_FLAG_DEV_UP, adapter))
sys/dev/ena/ena.c
2605
ena_log(adapter->pdev, INFO, "device is going DOWN\n");
sys/dev/ena/ena.c
2607
ENA_FLAG_CLEAR_ATOMIC(ENA_FLAG_DEV_UP, adapter);
sys/dev/ena/ena.c
2608
if_setdrvflagbits(adapter->ifp, IFF_DRV_OACTIVE, IFF_DRV_RUNNING);
sys/dev/ena/ena.c
2610
ena_free_io_irq(adapter);
sys/dev/ena/ena.c
2612
if (ENA_FLAG_ISSET(ENA_FLAG_TRIGGER_RESET, adapter)) {
sys/dev/ena/ena.c
2613
rc = ena_com_dev_reset(adapter->ena_dev, adapter->reset_reason);
sys/dev/ena/ena.c
2615
ena_log(adapter->pdev, ERR, "Device reset failed\n");
sys/dev/ena/ena.c
2618
ena_destroy_all_io_queues(adapter);
sys/dev/ena/ena.c
2620
ena_free_all_tx_bufs(adapter);
sys/dev/ena/ena.c
2621
ena_free_all_rx_bufs(adapter);
sys/dev/ena/ena.c
2622
ena_free_all_tx_resources(adapter);
sys/dev/ena/ena.c
2623
ena_free_all_rx_resources(adapter);
sys/dev/ena/ena.c
2625
counter_u64_add(adapter->dev_stats.interface_down, 1);
sys/dev/ena/ena.c
2729
struct ena_adapter *adapter = device_get_softc(pdev);
sys/dev/ena/ena.c
2734
adapter->memory = bus_alloc_resource_any(pdev, SYS_RES_MEMORY, &rid,
sys/dev/ena/ena.c
2736
if (unlikely(adapter->memory == NULL)) {
sys/dev/ena/ena.c
2743
rc = ena_enable_wc(adapter->pdev, adapter->memory);
sys/dev/ena/ena.c
2753
ena_dev->mem_bar = rman_get_virtual(adapter->memory);
sys/dev/ena/ena.c
2760
struct ena_admin_feature_llq_desc *llq, struct ena_adapter *adapter)
sys/dev/ena/ena.c
2782
ena_log(adapter->pdev, WARN,
sys/dev/ena/ena.c
279
ena_free_pci_resources(struct ena_adapter *adapter)
sys/dev/ena/ena.c
2793
adapter->llq_policy = ENA_ADMIN_LIST_ENTRY_SIZE_256B;
sys/dev/ena/ena.c
2797
adapter->llq_policy = ENA_ADMIN_LIST_ENTRY_SIZE_128B;
sys/dev/ena/ena.c
2802
ena_calc_io_queue_size(struct ena_calc_queue_size_ctx *ctx, struct ena_adapter *adapter)
sys/dev/ena/ena.c
281
device_t pdev = adapter->pdev;
sys/dev/ena/ena.c
283
if (adapter->memory != NULL) {
sys/dev/ena/ena.c
285
PCIR_BAR(ENA_MEM_BAR), adapter->memory);
sys/dev/ena/ena.c
2852
if (adapter->llq_policy == ENA_ADMIN_LIST_ENTRY_SIZE_256B) {
sys/dev/ena/ena.c
288
if (adapter->registers != NULL) {
sys/dev/ena/ena.c
290
PCIR_BAR(ENA_REG_BAR), adapter->registers);
sys/dev/ena/ena.c
293
if (adapter->msix != NULL) {
sys/dev/ena/ena.c
294
bus_release_resource(pdev, SYS_RES_MEMORY, adapter->msix_rid,
sys/dev/ena/ena.c
2947
ena_device_init(struct ena_adapter *adapter, device_t pdev,
sys/dev/ena/ena.c
295
adapter->msix);
sys/dev/ena/ena.c
2951
struct ena_com_dev *ena_dev = adapter->ena_dev;
sys/dev/ena/ena.c
2988
adapter->dma_width = dma_width;
sys/dev/ena/ena.c
3032
ena_set_llq_configurations(&llq_config, &get_feat_ctx->llq, adapter);
sys/dev/ena/ena.c
3053
ena_enable_msix_and_set_admin_interrupts(struct ena_adapter *adapter)
sys/dev/ena/ena.c
3055
struct ena_com_dev *ena_dev = adapter->ena_dev;
sys/dev/ena/ena.c
3058
rc = ena_enable_msix(adapter);
sys/dev/ena/ena.c
3060
ena_log(adapter->pdev, ERR, "Error with MSI-X enablement\n");
sys/dev/ena/ena.c
3064
ena_setup_mgmnt_intr(adapter);
sys/dev/ena/ena.c
3066
rc = ena_request_mgmnt_irq(adapter);
sys/dev/ena/ena.c
3068
ena_log(adapter->pdev, ERR, "Cannot setup mgmnt queue intr\n");
sys/dev/ena/ena.c
3079
ena_disable_msix(adapter);
sys/dev/ena/ena.c
3088
struct ena_adapter *adapter = (struct ena_adapter *)adapter_data;
sys/dev/ena/ena.c
3098
counter_u64_zero(adapter->hw_stats.rx_drops);
sys/dev/ena/ena.c
3099
counter_u64_add(adapter->hw_stats.rx_drops, rx_drops);
sys/dev/ena/ena.c
3100
counter_u64_zero(adapter->hw_stats.tx_drops);
sys/dev/ena/ena.c
3101
counter_u64_add(adapter->hw_stats.tx_drops, tx_drops);
sys/dev/ena/ena.c
3104
atomic_store_rel_64(&adapter->keep_alive_timestamp, stime);
sys/dev/ena/ena.c
3109
check_for_missing_keep_alive(struct ena_adapter *adapter)
sys/dev/ena/ena.c
3114
if (adapter->wd_active == 0)
sys/dev/ena/ena.c
3117
if (adapter->keep_alive_timeout == ENA_HW_HINTS_NO_TIMEOUT)
sys/dev/ena/ena.c
3120
timestamp = atomic_load_acq_64(&adapter->keep_alive_timestamp);
sys/dev/ena/ena.c
3122
if (unlikely(time > adapter->keep_alive_timeout)) {
sys/dev/ena/ena.c
3123
ena_log(adapter->pdev, ERR, "Keep alive watchdog timeout.\n");
sys/dev/ena/ena.c
3124
if (ena_com_aenq_has_keep_alive(adapter->ena_dev))
sys/dev/ena/ena.c
3127
ena_trigger_reset(adapter, reset_reason);
sys/dev/ena/ena.c
3133
check_for_admin_com_state(struct ena_adapter *adapter)
sys/dev/ena/ena.c
3136
if (unlikely(ena_com_get_admin_running_state(adapter->ena_dev) == false)) {
sys/dev/ena/ena.c
3137
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
3139
counter_u64_add(adapter->dev_stats.admin_q_pause, 1);
sys/dev/ena/ena.c
3140
if (ena_com_get_missing_admin_interrupt(adapter->ena_dev))
sys/dev/ena/ena.c
3143
ena_trigger_reset(adapter, reset_reason);
sys/dev/ena/ena.c
3148
check_for_rx_interrupt_queue(struct ena_adapter *adapter,
sys/dev/ena/ena.c
3161
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
3164
ena_trigger_reset(adapter, ENA_REGS_RESET_MISS_INTERRUPT);
sys/dev/ena/ena.c
3172
check_cdesc_in_tx_cq(struct ena_adapter *adapter,
sys/dev/ena/ena.c
3175
device_t pdev = adapter->pdev;
sys/dev/ena/ena.c
3197
check_missing_comp_in_tx_queue(struct ena_adapter *adapter,
sys/dev/ena/ena.c
3201
device_t pdev = adapter->pdev;
sys/dev/ena/ena.c
3224
time_offset > 2 * adapter->missing_tx_timeout)) {
sys/dev/ena/ena.c
3233
ena_trigger_reset(adapter,
sys/dev/ena/ena.c
3239
if (unlikely(time_offset > adapter->missing_tx_timeout)) {
sys/dev/ena/ena.c
3245
adapter->missing_tx_timeout);
sys/dev/ena/ena.c
3260
if (unlikely(missed_tx > adapter->missing_tx_threshold)) {
sys/dev/ena/ena.c
3264
missed_tx, adapter->missing_tx_threshold);
sys/dev/ena/ena.c
3266
ENA_FLAG_SET_ATOMIC(ENA_FLAG_TRIGGER_RESET, adapter);
sys/dev/ena/ena.c
3275
reset_reason = check_cdesc_in_tx_cq(adapter, tx_ring);
sys/dev/ena/ena.c
3277
adapter->reset_reason = reset_reason;
sys/dev/ena/ena.c
329
struct ena_adapter *adapter = if_getsoftc(ifp);
sys/dev/ena/ena.c
3293
check_for_missing_completions(struct ena_adapter *adapter)
sys/dev/ena/ena.c
330
device_t pdev = adapter->pdev;
sys/dev/ena/ena.c
3302
if (!ENA_FLAG_ISSET(ENA_FLAG_DEV_UP, adapter))
sys/dev/ena/ena.c
3305
if (ENA_FLAG_ISSET(ENA_FLAG_TRIGGER_RESET, adapter))
sys/dev/ena/ena.c
3308
if (adapter->missing_tx_timeout == ENA_HW_HINTS_NO_TIMEOUT)
sys/dev/ena/ena.c
3311
budget = adapter->missing_tx_max_queues;
sys/dev/ena/ena.c
3313
for (i = adapter->next_monitored_tx_qid; i < adapter->num_io_queues; i++) {
sys/dev/ena/ena.c
3314
tx_ring = &adapter->tx_ring[i];
sys/dev/ena/ena.c
3315
rx_ring = &adapter->rx_ring[i];
sys/dev/ena/ena.c
3317
rc = check_missing_comp_in_tx_queue(adapter, tx_ring);
sys/dev/ena/ena.c
3321
rc = check_for_rx_interrupt_queue(adapter, rx_ring);
sys/dev/ena/ena.c
333
if ((new_mtu > adapter->max_mtu) || (new_mtu < ENA_MIN_MTU)) {
sys/dev/ena/ena.c
3332
adapter->next_monitored_tx_qid = i % adapter->num_io_queues;
sys/dev/ena/ena.c
3348
check_for_empty_rx_ring(struct ena_adapter *adapter)
sys/dev/ena/ena.c
335
new_mtu, adapter->max_mtu, ENA_MIN_MTU);
sys/dev/ena/ena.c
3353
if (!ENA_FLAG_ISSET(ENA_FLAG_DEV_UP, adapter))
sys/dev/ena/ena.c
3356
if (ENA_FLAG_ISSET(ENA_FLAG_TRIGGER_RESET, adapter))
sys/dev/ena/ena.c
3359
for (i = 0; i < adapter->num_io_queues; i++) {
sys/dev/ena/ena.c
3360
rx_ring = &adapter->rx_ring[i];
sys/dev/ena/ena.c
3371
ena_log(adapter->pdev, WARN,
sys/dev/ena/ena.c
3386
ena_update_hints(struct ena_adapter *adapter,
sys/dev/ena/ena.c
3389
struct ena_com_dev *ena_dev = adapter->ena_dev;
sys/dev/ena/ena.c
339
rc = ena_com_set_dev_mtu(adapter->ena_dev, new_mtu);
sys/dev/ena/ena.c
3400
adapter->missing_tx_threshold =
sys/dev/ena/ena.c
3406
adapter->missing_tx_timeout = ENA_HW_HINTS_NO_TIMEOUT;
sys/dev/ena/ena.c
3408
adapter->missing_tx_timeout = SBT_1MS *
sys/dev/ena/ena.c
3414
adapter->keep_alive_timeout = ENA_HW_HINTS_NO_TIMEOUT;
sys/dev/ena/ena.c
3416
adapter->keep_alive_timeout = SBT_1MS *
sys/dev/ena/ena.c
3433
ena_copy_eni_metrics(struct ena_adapter *adapter)
sys/dev/ena/ena.c
3438
rc = ena_com_get_eni_stats(adapter->ena_dev, &adapter->eni_metrics);
sys/dev/ena/ena.c
3443
ena_log(adapter->pdev, WARN,
sys/dev/ena/ena.c
3447
ena_log(adapter->pdev, DBG,
sys/dev/ena/ena.c
3451
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
3460
ena_copy_srd_metrics(struct ena_adapter *adapter)
sys/dev/ena/ena.c
3462
return ena_com_get_ena_srd_info(adapter->ena_dev, &adapter->ena_srd_info);
sys/dev/ena/ena.c
3466
ena_copy_customer_metrics(struct ena_adapter *adapter)
sys/dev/ena/ena.c
3472
dev = adapter->ena_dev;
sys/dev/ena/ena.c
3478
rc = ena_com_get_customer_metrics(adapter->ena_dev,
sys/dev/ena/ena.c
3479
(char *)(adapter->customer_metrics_array), len);
sys/dev/ena/ena.c
3487
struct ena_adapter *adapter = (struct ena_adapter *)data;
sys/dev/ena/ena.c
3489
adapter->ena_dev->host_attr.host_info;
sys/dev/ena/ena.c
3491
check_for_missing_keep_alive(adapter);
sys/dev/ena/ena.c
3493
check_for_admin_com_state(adapter);
sys/dev/ena/ena.c
3495
check_for_missing_completions(adapter);
sys/dev/ena/ena.c
3497
check_for_empty_rx_ring(adapter);
sys/dev/ena/ena.c
3508
if ((adapter->metrics_sample_interval != 0) &&
sys/dev/ena/ena.c
3509
(++adapter->metrics_sample_interval_cnt >=
sys/dev/ena/ena.c
3510
adapter->metrics_sample_interval)) {
sys/dev/ena/ena.c
3511
taskqueue_enqueue(adapter->metrics_tq, &adapter->metrics_task);
sys/dev/ena/ena.c
3512
adapter->metrics_sample_interval_cnt = 0;
sys/dev/ena/ena.c
3517
ena_update_host_info(host_info, adapter->ifp);
sys/dev/ena/ena.c
3519
if (unlikely(ENA_FLAG_ISSET(ENA_FLAG_TRIGGER_RESET, adapter))) {
sys/dev/ena/ena.c
3525
if (ena_com_validate_version(adapter->ena_dev) ==
sys/dev/ena/ena.c
3527
ena_log(adapter->pdev, WARN,
sys/dev/ena/ena.c
3529
ENA_TIMER_RESET(adapter);
sys/dev/ena/ena.c
3532
ena_log(adapter->pdev, WARN, "Trigger reset is on\n");
sys/dev/ena/ena.c
3533
taskqueue_enqueue(adapter->reset_tq, &adapter->reset_task);
sys/dev/ena/ena.c
3540
ENA_TIMER_RESET(adapter);
sys/dev/ena/ena.c
3544
ena_destroy_device(struct ena_adapter *adapter, bool graceful)
sys/dev/ena/ena.c
3546
if_t ifp = adapter->ifp;
sys/dev/ena/ena.c
3547
struct ena_com_dev *ena_dev = adapter->ena_dev;
sys/dev/ena/ena.c
3550
if (!ENA_FLAG_ISSET(ENA_FLAG_DEVICE_RUNNING, adapter))
sys/dev/ena/ena.c
3556
ENA_TIMER_DRAIN(adapter);
sys/dev/ena/ena.c
3558
dev_up = ENA_FLAG_ISSET(ENA_FLAG_DEV_UP, adapter);
sys/dev/ena/ena.c
3560
ENA_FLAG_SET_ATOMIC(ENA_FLAG_DEV_UP_BEFORE_RESET, adapter);
sys/dev/ena/ena.c
3565
if (ENA_FLAG_ISSET(ENA_FLAG_DEV_UP, adapter))
sys/dev/ena/ena.c
3566
ena_down(adapter);
sys/dev/ena/ena.c
3572
if (!(ENA_FLAG_ISSET(ENA_FLAG_TRIGGER_RESET, adapter) && dev_up))
sys/dev/ena/ena.c
3573
ena_com_dev_reset(adapter->ena_dev, adapter->reset_reason);
sys/dev/ena/ena.c
3575
ena_free_mgmnt_irq(adapter);
sys/dev/ena/ena.c
3577
ena_disable_msix(adapter);
sys/dev/ena/ena.c
3586
ena_free_all_io_rings_resources(adapter);
sys/dev/ena/ena.c
3596
adapter->reset_reason = ENA_REGS_RESET_NORMAL;
sys/dev/ena/ena.c
3598
ENA_FLAG_CLEAR_ATOMIC(ENA_FLAG_TRIGGER_RESET, adapter);
sys/dev/ena/ena.c
3599
ENA_FLAG_CLEAR_ATOMIC(ENA_FLAG_DEVICE_RUNNING, adapter);
sys/dev/ena/ena.c
3603
ena_device_validate_params(struct ena_adapter *adapter,
sys/dev/ena/ena.c
3606
if (memcmp(get_feat_ctx->dev_attr.mac_addr, adapter->mac_addr,
sys/dev/ena/ena.c
3608
ena_log(adapter->pdev, ERR, "Error, mac addresses differ\n");
sys/dev/ena/ena.c
3612
if (get_feat_ctx->dev_attr.max_mtu < if_getmtu(adapter->ifp)) {
sys/dev/ena/ena.c
3613
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
3622
ena_restore_device(struct ena_adapter *adapter)
sys/dev/ena/ena.c
3625
struct ena_com_dev *ena_dev = adapter->ena_dev;
sys/dev/ena/ena.c
3626
if_t ifp = adapter->ifp;
sys/dev/ena/ena.c
3627
device_t dev = adapter->pdev;
sys/dev/ena/ena.c
3631
ENA_FLAG_SET_ATOMIC(ENA_FLAG_ONGOING_RESET, adapter);
sys/dev/ena/ena.c
3633
rc = ena_device_init(adapter, dev, &get_feat_ctx, &wd_active);
sys/dev/ena/ena.c
3642
if (adapter->wd_active != 0)
sys/dev/ena/ena.c
3643
adapter->wd_active = wd_active;
sys/dev/ena/ena.c
3645
rc = ena_device_validate_params(adapter, &get_feat_ctx);
sys/dev/ena/ena.c
3651
ENA_FLAG_CLEAR_ATOMIC(ENA_FLAG_ONGOING_RESET, adapter);
sys/dev/ena/ena.c
3653
if (ENA_FLAG_ISSET(ENA_FLAG_LINK_UP, adapter))
sys/dev/ena/ena.c
3656
rc = ena_enable_msix_and_set_admin_interrupts(adapter);
sys/dev/ena/ena.c
3667
if ((adapter->msix_vecs - ENA_ADMIN_MSIX_VEC) < adapter->num_io_queues)
sys/dev/ena/ena.c
3668
adapter->num_io_queues = adapter->msix_vecs - ENA_ADMIN_MSIX_VEC;
sys/dev/ena/ena.c
3671
ena_init_io_rings(adapter);
sys/dev/ena/ena.c
3674
if (ENA_FLAG_ISSET(ENA_FLAG_DEV_UP_BEFORE_RESET, adapter)) {
sys/dev/ena/ena.c
3675
rc = ena_up(adapter);
sys/dev/ena/ena.c
3683
ENA_FLAG_SET_ATOMIC(ENA_FLAG_DEVICE_RUNNING, adapter);
sys/dev/ena/ena.c
3691
adapter->keep_alive_timestamp = getsbinuptime();
sys/dev/ena/ena.c
3692
ENA_TIMER_RESET(adapter);
sys/dev/ena/ena.c
3694
ENA_FLAG_CLEAR_ATOMIC(ENA_FLAG_DEV_UP_BEFORE_RESET, adapter);
sys/dev/ena/ena.c
3699
ena_free_mgmnt_irq(adapter);
sys/dev/ena/ena.c
3700
ena_disable_msix(adapter);
sys/dev/ena/ena.c
3708
ENA_FLAG_CLEAR_ATOMIC(ENA_FLAG_DEVICE_RUNNING, adapter);
sys/dev/ena/ena.c
3709
ENA_FLAG_CLEAR_ATOMIC(ENA_FLAG_ONGOING_RESET, adapter);
sys/dev/ena/ena.c
3718
struct ena_adapter *adapter = (struct ena_adapter *)arg;
sys/dev/ena/ena.c
3722
if (ena_com_get_cap(adapter->ena_dev, ENA_ADMIN_CUSTOMER_METRICS))
sys/dev/ena/ena.c
3723
(void)ena_copy_customer_metrics(adapter);
sys/dev/ena/ena.c
3724
else if (ena_com_get_cap(adapter->ena_dev, ENA_ADMIN_ENI_STATS))
sys/dev/ena/ena.c
3725
(void)ena_copy_eni_metrics(adapter);
sys/dev/ena/ena.c
3727
if (ena_com_get_cap(adapter->ena_dev, ENA_ADMIN_ENA_SRD_INFO))
sys/dev/ena/ena.c
3728
(void)ena_copy_srd_metrics(adapter);
sys/dev/ena/ena.c
3736
struct ena_adapter *adapter = (struct ena_adapter *)arg;
sys/dev/ena/ena.c
3739
if (likely(ENA_FLAG_ISSET(ENA_FLAG_TRIGGER_RESET, adapter))) {
sys/dev/ena/ena.c
3740
ena_increment_reset_counter(adapter);
sys/dev/ena/ena.c
3741
ena_destroy_device(adapter, false);
sys/dev/ena/ena.c
3742
ena_restore_device(adapter);
sys/dev/ena/ena.c
3744
ena_log(adapter->pdev, INFO,
sys/dev/ena/ena.c
3752
ena_free_stats(struct ena_adapter *adapter)
sys/dev/ena/ena.c
3754
ena_free_counters((counter_u64_t *)&adapter->hw_stats,
sys/dev/ena/ena.c
3756
ena_free_counters((counter_u64_t *)&adapter->dev_stats,
sys/dev/ena/ena.c
3776
struct ena_adapter *adapter;
sys/dev/ena/ena.c
378
ena_init_io_rings_common(struct ena_adapter *adapter, struct ena_ring *ring,
sys/dev/ena/ena.c
3782
adapter = device_get_softc(pdev);
sys/dev/ena/ena.c
3783
adapter->pdev = pdev;
sys/dev/ena/ena.c
3784
adapter->first_bind = -1;
sys/dev/ena/ena.c
3790
ENA_TIMER_INIT(adapter);
sys/dev/ena/ena.c
3791
adapter->keep_alive_timeout = ENA_DEFAULT_KEEP_ALIVE_TO;
sys/dev/ena/ena.c
3792
adapter->missing_tx_timeout = ENA_DEFAULT_TX_CMP_TO;
sys/dev/ena/ena.c
3793
adapter->missing_tx_max_queues = ENA_DEFAULT_TX_MONITORED_QUEUES;
sys/dev/ena/ena.c
3794
adapter->missing_tx_threshold = ENA_DEFAULT_TX_CMP_THRESHOLD;
sys/dev/ena/ena.c
3796
adapter->irq_cpu_base = ENA_BASE_CPU_UNSPECIFIED;
sys/dev/ena/ena.c
3797
adapter->irq_cpu_stride = 0;
sys/dev/ena/ena.c
3800
adapter->rss_enabled = 1;
sys/dev/ena/ena.c
3810
adapter->ena_dev = ena_dev;
sys/dev/ena/ena.c
3814
adapter->memory = NULL;
sys/dev/ena/ena.c
3815
adapter->registers = bus_alloc_resource_any(pdev, SYS_RES_MEMORY, &rid,
sys/dev/ena/ena.c
3817
if (unlikely(adapter->registers == NULL)) {
sys/dev/ena/ena.c
382
ring->adapter = adapter;
sys/dev/ena/ena.c
3827
adapter->msix = bus_alloc_resource_any(pdev, SYS_RES_MEMORY,
sys/dev/ena/ena.c
3829
if (unlikely(adapter->msix == NULL)) {
sys/dev/ena/ena.c
383
ring->ena_dev = adapter->ena_dev;
sys/dev/ena/ena.c
3835
adapter->msix_rid = msix_rid;
sys/dev/ena/ena.c
3843
adapter->registers);
sys/dev/ena/ena.c
3845
adapter->registers);
sys/dev/ena/ena.c
3862
ENA_FLAG_ZERO(adapter);
sys/dev/ena/ena.c
3865
rc = ena_device_init(adapter, pdev, &get_feat_ctx, &adapter->wd_active);
sys/dev/ena/ena.c
3873
adapter->disable_meta_caching = !!(
sys/dev/ena/ena.c
3877
adapter->keep_alive_timestamp = getsbinuptime();
sys/dev/ena/ena.c
3879
adapter->tx_offload_cap = get_feat_ctx.offload.tx;
sys/dev/ena/ena.c
3881
memcpy(adapter->mac_addr, get_feat_ctx.dev_attr.mac_addr,
sys/dev/ena/ena.c
389
ena_init_io_rings_basic(struct ena_adapter *adapter)
sys/dev/ena/ena.c
3891
rc = ena_calc_io_queue_size(&calc_queue_ctx, adapter);
sys/dev/ena/ena.c
3897
adapter->requested_tx_ring_size = calc_queue_ctx.tx_queue_size;
sys/dev/ena/ena.c
3898
adapter->requested_rx_ring_size = calc_queue_ctx.rx_queue_size;
sys/dev/ena/ena.c
3899
adapter->max_tx_ring_size = calc_queue_ctx.max_tx_queue_size;
sys/dev/ena/ena.c
3900
adapter->max_rx_ring_size = calc_queue_ctx.max_rx_queue_size;
sys/dev/ena/ena.c
3901
adapter->max_tx_sgl_size = calc_queue_ctx.max_tx_sgl_size;
sys/dev/ena/ena.c
3902
adapter->max_rx_sgl_size = calc_queue_ctx.max_rx_sgl_size;
sys/dev/ena/ena.c
3904
adapter->max_num_io_queues = max_num_io_queues;
sys/dev/ena/ena.c
3906
adapter->buf_ring_size = ENA_DEFAULT_BUF_RING_SIZE;
sys/dev/ena/ena.c
3908
adapter->max_mtu = get_feat_ctx.dev_attr.max_mtu;
sys/dev/ena/ena.c
3910
adapter->reset_reason = ENA_REGS_RESET_NORMAL;
sys/dev/ena/ena.c
3913
rc = ena_setup_tx_dma_tag(adapter);
sys/dev/ena/ena.c
3919
rc = ena_setup_rx_dma_tag(adapter);
sys/dev/ena/ena.c
3934
rc = ena_enable_msix_and_set_admin_interrupts(adapter);
sys/dev/ena/ena.c
3941
adapter->num_io_queues = adapter->msix_vecs - ENA_ADMIN_MSIX_VEC;
sys/dev/ena/ena.c
3944
ena_init_io_rings(adapter);
sys/dev/ena/ena.c
3952
rc = ena_sysctl_allocate_customer_metrics_buffer(adapter);
sys/dev/ena/ena.c
3959
ena_alloc_counters((counter_u64_t *)&adapter->dev_stats,
sys/dev/ena/ena.c
396
ena_dev = adapter->ena_dev;
sys/dev/ena/ena.c
3961
ena_alloc_counters((counter_u64_t *)&adapter->hw_stats,
sys/dev/ena/ena.c
3963
ena_sysctl_add_nodes(adapter);
sys/dev/ena/ena.c
3966
ena_setup_ifnet(pdev, adapter, &get_feat_ctx);
sys/dev/ena/ena.c
3969
TASK_INIT(&adapter->reset_task, 0, ena_reset_task, adapter);
sys/dev/ena/ena.c
3970
adapter->reset_tq = taskqueue_create("ena_reset_enqueue",
sys/dev/ena/ena.c
3971
M_WAITOK | M_ZERO, taskqueue_thread_enqueue, &adapter->reset_tq);
sys/dev/ena/ena.c
3972
taskqueue_start_threads(&adapter->reset_tq, 1, PI_NET, "%s rstq",
sys/dev/ena/ena.c
3973
device_get_nameunit(adapter->pdev));
sys/dev/ena/ena.c
3976
TASK_INIT(&adapter->metrics_task, 0, ena_metrics_task, adapter);
sys/dev/ena/ena.c
3977
adapter->metrics_tq = taskqueue_create("ena_metrics_enqueue",
sys/dev/ena/ena.c
3978
M_WAITOK | M_ZERO, taskqueue_thread_enqueue, &adapter->metrics_tq);
sys/dev/ena/ena.c
3979
taskqueue_start_threads(&adapter->metrics_tq, 1, PI_NET, "%s metricsq",
sys/dev/ena/ena.c
398
for (i = 0; i < adapter->num_io_queues; i++) {
sys/dev/ena/ena.c
3980
device_get_nameunit(adapter->pdev));
sys/dev/ena/ena.c
3983
rc = ena_netmap_attach(adapter);
sys/dev/ena/ena.c
399
txr = &adapter->tx_ring[i];
sys/dev/ena/ena.c
3991
if_setdrvflagbits(adapter->ifp, IFF_DRV_OACTIVE, IFF_DRV_RUNNING);
sys/dev/ena/ena.c
3992
ENA_FLAG_SET_ATOMIC(ENA_FLAG_DEVICE_RUNNING, adapter);
sys/dev/ena/ena.c
3995
ENA_TIMER_RESET(adapter);
sys/dev/ena/ena.c
400
rxr = &adapter->rx_ring[i];
sys/dev/ena/ena.c
4001
ether_ifdetach(adapter->ifp);
sys/dev/ena/ena.c
4002
ifmedia_removeall(&adapter->media);
sys/dev/ena/ena.c
4003
free(adapter->customer_metrics_array, M_DEVBUF);
sys/dev/ena/ena.c
4008
ena_free_stats(adapter);
sys/dev/ena/ena.c
4009
ena_com_dev_reset(adapter->ena_dev, ENA_REGS_RESET_INIT_ERR);
sys/dev/ena/ena.c
4010
ena_free_mgmnt_irq(adapter);
sys/dev/ena/ena.c
4011
ena_disable_msix(adapter);
sys/dev/ena/ena.c
4013
ena_free_all_io_rings_resources(adapter);
sys/dev/ena/ena.c
4014
ena_free_rx_dma_tag(adapter);
sys/dev/ena/ena.c
4016
ena_free_tx_dma_tag(adapter);
sys/dev/ena/ena.c
4024
ena_free_pci_resources(adapter);
sys/dev/ena/ena.c
403
ena_init_io_rings_common(adapter, txr, i);
sys/dev/ena/ena.c
404
ena_init_io_rings_common(adapter, rxr, i);
sys/dev/ena/ena.c
4041
struct ena_adapter *adapter = device_get_softc(pdev);
sys/dev/ena/ena.c
4042
struct ena_com_dev *ena_dev = adapter->ena_dev;
sys/dev/ena/ena.c
4046
if (if_vlantrunkinuse(adapter->ifp)) {
sys/dev/ena/ena.c
4047
ena_log(adapter->pdev, ERR, "VLAN is in use, detach first\n");
sys/dev/ena/ena.c
4055
ether_ifdetach(adapter->ifp);
sys/dev/ena/ena.c
4057
ifmedia_removeall(&adapter->media);
sys/dev/ena/ena.c
4061
ENA_TIMER_DRAIN(adapter);
sys/dev/ena/ena.c
4065
while (taskqueue_cancel(adapter->metrics_tq, &adapter->metrics_task, NULL))
sys/dev/ena/ena.c
4066
taskqueue_drain(adapter->metrics_tq, &adapter->metrics_task);
sys/dev/ena/ena.c
4067
taskqueue_free(adapter->metrics_tq);
sys/dev/ena/ena.c
4070
while (taskqueue_cancel(adapter->reset_tq, &adapter->reset_task, NULL))
sys/dev/ena/ena.c
4071
taskqueue_drain(adapter->reset_tq, &adapter->reset_task);
sys/dev/ena/ena.c
4072
taskqueue_free(adapter->reset_tq);
sys/dev/ena/ena.c
4075
ena_down(adapter);
sys/dev/ena/ena.c
4076
ena_destroy_device(adapter, true);
sys/dev/ena/ena.c
4080
ena_sysctl_update_queue_node_nb(adapter, adapter->num_io_queues,
sys/dev/ena/ena.c
4081
adapter->max_num_io_queues);
sys/dev/ena/ena.c
4084
netmap_detach(adapter->ifp);
sys/dev/ena/ena.c
4087
ena_free_stats(adapter);
sys/dev/ena/ena.c
4089
rc = ena_free_rx_dma_tag(adapter);
sys/dev/ena/ena.c
4091
ena_log(adapter->pdev, WARN,
sys/dev/ena/ena.c
4094
rc = ena_free_tx_dma_tag(adapter);
sys/dev/ena/ena.c
4096
ena_log(adapter->pdev, WARN,
sys/dev/ena/ena.c
4099
ena_free_irqs(adapter);
sys/dev/ena/ena.c
410
que = &adapter->que[i];
sys/dev/ena/ena.c
4101
ena_free_pci_resources(adapter);
sys/dev/ena/ena.c
4103
if (adapter->rss_indir != NULL)
sys/dev/ena/ena.c
4104
free(adapter->rss_indir, M_DEVBUF);
sys/dev/ena/ena.c
4106
if (likely(ENA_FLAG_ISSET(ENA_FLAG_RSS_ACTIVE, adapter)))
sys/dev/ena/ena.c
411
que->adapter = adapter;
sys/dev/ena/ena.c
4111
free(adapter->customer_metrics_array, M_DEVBUF);
sys/dev/ena/ena.c
4115
if_free(adapter->ifp);
sys/dev/ena/ena.c
4135
struct ena_adapter *adapter = (struct ena_adapter *)adapter_data;
sys/dev/ena/ena.c
4141
ifp = adapter->ifp;
sys/dev/ena/ena.c
4146
ena_log(adapter->pdev, INFO, "link is UP\n");
sys/dev/ena/ena.c
4147
ENA_FLAG_SET_ATOMIC(ENA_FLAG_LINK_UP, adapter);
sys/dev/ena/ena.c
4148
if (!ENA_FLAG_ISSET(ENA_FLAG_ONGOING_RESET, adapter))
sys/dev/ena/ena.c
4151
ena_log(adapter->pdev, INFO, "link is DOWN\n");
sys/dev/ena/ena.c
4153
ENA_FLAG_CLEAR_ATOMIC(ENA_FLAG_LINK_UP, adapter);
sys/dev/ena/ena.c
4160
struct ena_adapter *adapter = (struct ena_adapter *)adapter_data;
sys/dev/ena/ena.c
4164
adapter->ena_dev, "Invalid group(%x) expected %x\n",
sys/dev/ena/ena.c
4171
ena_update_hints(adapter, hints);
sys/dev/ena/ena.c
4174
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
4201
struct ena_adapter *adapter = (struct ena_adapter *)adapter_data;
sys/dev/ena/ena.c
4203
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
4210
struct ena_adapter *adapter = (struct ena_adapter *)adapter_data;
sys/dev/ena/ena.c
4218
ena_log(adapter->pdev, INFO,
sys/dev/ena/ena.c
4225
ena_log(adapter->pdev, INFO,
sys/dev/ena/ena.c
4236
struct ena_adapter *adapter = (struct ena_adapter *)adapter_data;
sys/dev/ena/ena.c
4237
ena_log(adapter->pdev, WARN,
sys/dev/ena/ena.c
4239
ena_trigger_reset(adapter, ENA_REGS_RESET_DEVICE_REQUEST);
sys/dev/ena/ena.c
425
ena_init_io_rings_advanced(struct ena_adapter *adapter)
sys/dev/ena/ena.c
430
for (i = 0; i < adapter->num_io_queues; i++) {
sys/dev/ena/ena.c
431
txr = &adapter->tx_ring[i];
sys/dev/ena/ena.c
432
rxr = &adapter->rx_ring[i];
sys/dev/ena/ena.c
435
txr->buf_ring_size = adapter->buf_ring_size;
sys/dev/ena/ena.c
450
device_get_nameunit(adapter->pdev), i);
sys/dev/ena/ena.c
452
device_get_nameunit(adapter->pdev), i);
sys/dev/ena/ena.c
459
ena_init_io_rings(struct ena_adapter *adapter)
sys/dev/ena/ena.c
467
ena_init_io_rings_basic(adapter);
sys/dev/ena/ena.c
468
ena_init_io_rings_advanced(adapter);
sys/dev/ena/ena.c
472
ena_free_io_ring_resources(struct ena_adapter *adapter, unsigned int qid)
sys/dev/ena/ena.c
474
struct ena_ring *txr = &adapter->tx_ring[qid];
sys/dev/ena/ena.c
475
struct ena_ring *rxr = &adapter->rx_ring[qid];
sys/dev/ena/ena.c
490
ena_free_all_io_rings_resources(struct ena_adapter *adapter)
sys/dev/ena/ena.c
494
for (i = 0; i < adapter->num_io_queues; i++)
sys/dev/ena/ena.c
495
ena_free_io_ring_resources(adapter, i);
sys/dev/ena/ena.c
499
ena_setup_tx_dma_tag(struct ena_adapter *adapter)
sys/dev/ena/ena.c
504
ret = bus_dma_tag_create(bus_get_dma_tag(adapter->pdev),
sys/dev/ena/ena.c
506
ENA_DMA_BIT_MASK(adapter->dma_width), /* lowaddr of excl window */
sys/dev/ena/ena.c
510
adapter->max_tx_sgl_size - 1, /* nsegments */
sys/dev/ena/ena.c
515
&adapter->tx_buf_tag);
sys/dev/ena/ena.c
521
ena_free_tx_dma_tag(struct ena_adapter *adapter)
sys/dev/ena/ena.c
525
ret = bus_dma_tag_destroy(adapter->tx_buf_tag);
sys/dev/ena/ena.c
528
adapter->tx_buf_tag = NULL;
sys/dev/ena/ena.c
534
ena_setup_rx_dma_tag(struct ena_adapter *adapter)
sys/dev/ena/ena.c
539
ret = bus_dma_tag_create(bus_get_dma_tag(adapter->pdev), /* parent */
sys/dev/ena/ena.c
541
ENA_DMA_BIT_MASK(adapter->dma_width), /* lowaddr of excl window */
sys/dev/ena/ena.c
545
adapter->max_rx_sgl_size, /* nsegments */
sys/dev/ena/ena.c
550
&adapter->rx_buf_tag);
sys/dev/ena/ena.c
556
ena_free_rx_dma_tag(struct ena_adapter *adapter)
sys/dev/ena/ena.c
560
ret = bus_dma_tag_destroy(adapter->rx_buf_tag);
sys/dev/ena/ena.c
563
adapter->rx_buf_tag = NULL;
sys/dev/ena/ena.c
571
struct ena_adapter *adapter = tx_ring->adapter;
sys/dev/ena/ena.c
577
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
581
ena_log_nm(adapter->pdev, WARN,
sys/dev/ena/ena.c
587
ena_trigger_reset(adapter, reset_reason);
sys/dev/ena/ena.c
597
struct ena_adapter *adapter = tx_ring->adapter;
sys/dev/ena/ena.c
599
bus_dma_tag_t tx_tag = adapter->tx_buf_tag;
sys/dev/ena/ena.c
609
if (if_getcapenable(adapter->ifp) & IFCAP_NETMAP) {
sys/dev/ena/ena.c
635
ena_setup_tx_resources(struct ena_adapter *adapter, int qid)
sys/dev/ena/ena.c
637
device_t pdev = adapter->pdev;
sys/dev/ena/ena.c
639
struct ena_que *que = &adapter->que[qid];
sys/dev/ena/ena.c
647
ena_netmap_reset_tx_ring(adapter, qid);
sys/dev/ena/ena.c
681
drbr_flush(adapter->ifp, tx_ring->br);
sys/dev/ena/ena.c
686
err = bus_dmamap_create(adapter->tx_buf_tag, 0,
sys/dev/ena/ena.c
695
if (if_getcapenable(adapter->ifp) & IFCAP_NETMAP) {
sys/dev/ena/ena.c
698
err = bus_dmamap_create(adapter->tx_buf_tag, 0,
sys/dev/ena/ena.c
727
device_get_nameunit(adapter->pdev), que->cpu);
sys/dev/ena/ena.c
730
device_get_nameunit(adapter->pdev), que->id);
sys/dev/ena/ena.c
757
ena_free_tx_resources(struct ena_adapter *adapter, int qid)
sys/dev/ena/ena.c
759
struct ena_ring *tx_ring = &adapter->tx_ring[qid];
sys/dev/ena/ena.c
772
drbr_flush(adapter->ifp, tx_ring->br);
sys/dev/ena/ena.c
776
bus_dmamap_sync(adapter->tx_buf_tag,
sys/dev/ena/ena.c
778
bus_dmamap_unload(adapter->tx_buf_tag,
sys/dev/ena/ena.c
780
bus_dmamap_destroy(adapter->tx_buf_tag,
sys/dev/ena/ena.c
784
if (if_getcapenable(adapter->ifp) & IFCAP_NETMAP) {
sys/dev/ena/ena.c
788
bus_dmamap_sync(adapter->tx_buf_tag,
sys/dev/ena/ena.c
791
ena_netmap_unload(adapter,
sys/dev/ena/ena.c
794
bus_dmamap_destroy(adapter->tx_buf_tag,
sys/dev/ena/ena.c
824
ena_setup_all_tx_resources(struct ena_adapter *adapter)
sys/dev/ena/ena.c
828
for (i = 0; i < adapter->num_io_queues; i++) {
sys/dev/ena/ena.c
829
rc = ena_setup_tx_resources(adapter, i);
sys/dev/ena/ena.c
831
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.c
842
ena_free_tx_resources(adapter, i);
sys/dev/ena/ena.c
853
ena_free_all_tx_resources(struct ena_adapter *adapter)
sys/dev/ena/ena.c
857
for (i = 0; i < adapter->num_io_queues; i++)
sys/dev/ena/ena.c
858
ena_free_tx_resources(adapter, i);
sys/dev/ena/ena.c
869
ena_setup_rx_resources(struct ena_adapter *adapter, unsigned int qid)
sys/dev/ena/ena.c
871
device_t pdev = adapter->pdev;
sys/dev/ena/ena.c
872
struct ena_que *que = &adapter->que[qid];
sys/dev/ena/ena.c
879
ena_netmap_reset_rx_ring(adapter, qid);
sys/dev/ena/ena.c
906
err = bus_dmamap_create(adapter->rx_buf_tag, 0,
sys/dev/ena/ena.c
916
if ((if_getcapenable(adapter->ifp) & IFCAP_LRO) != 0) {
sys/dev/ena/ena.c
924
rx_ring->lro.ifp = adapter->ifp;
sys/dev/ena/ena.c
932
bus_dmamap_destroy(adapter->rx_buf_tag,
sys/dev/ena/ena.c
951
ena_free_rx_resources(struct ena_adapter *adapter, unsigned int qid)
sys/dev/ena/ena.c
953
struct ena_ring *rx_ring = &adapter->rx_ring[qid];
sys/dev/ena/ena.c
957
bus_dmamap_sync(adapter->rx_buf_tag,
sys/dev/ena/ena.c
961
bus_dmamap_unload(adapter->rx_buf_tag,
sys/dev/ena/ena.c
963
bus_dmamap_destroy(adapter->rx_buf_tag,
sys/dev/ena/ena.c
985
ena_setup_all_rx_resources(struct ena_adapter *adapter)
sys/dev/ena/ena.c
989
for (i = 0; i < adapter->num_io_queues; i++) {
sys/dev/ena/ena.c
990
rc = ena_setup_rx_resources(adapter, i);
sys/dev/ena/ena.c
992
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena.h
188
#define ENA_FLAG_ZERO(adapter) \
sys/dev/ena/ena.h
189
BIT_ZERO(ENA_FLAGS_NUMBER, &(adapter)->flags)
sys/dev/ena/ena.h
190
#define ENA_FLAG_ISSET(bit, adapter) \
sys/dev/ena/ena.h
191
BIT_ISSET(ENA_FLAGS_NUMBER, (bit), &(adapter)->flags)
sys/dev/ena/ena.h
192
#define ENA_FLAG_SET_ATOMIC(bit, adapter) \
sys/dev/ena/ena.h
193
BIT_SET_ATOMIC(ENA_FLAGS_NUMBER, (bit), &(adapter)->flags)
sys/dev/ena/ena.h
194
#define ENA_FLAG_CLEAR_ATOMIC(bit, adapter) \
sys/dev/ena/ena.h
195
BIT_CLR_ATOMIC(ENA_FLAGS_NUMBER, (bit), &(adapter)->flags)
sys/dev/ena/ena.h
221
struct ena_adapter *adapter;
sys/dev/ena/ena.h
322
struct ena_adapter *adapter;
sys/dev/ena/ena.h
576
int ena_up(struct ena_adapter *adapter);
sys/dev/ena/ena.h
577
void ena_down(struct ena_adapter *adapter);
sys/dev/ena/ena.h
578
int ena_restore_device(struct ena_adapter *adapter);
sys/dev/ena/ena.h
579
void ena_destroy_device(struct ena_adapter *adapter, bool graceful);
sys/dev/ena/ena.h
581
int ena_update_buf_ring_size(struct ena_adapter *adapter,
sys/dev/ena/ena.h
583
int ena_update_queue_size(struct ena_adapter *adapter, uint32_t new_tx_size,
sys/dev/ena/ena.h
585
int ena_update_io_queue_nb(struct ena_adapter *adapter, uint32_t new_num);
sys/dev/ena/ena.h
586
int ena_update_base_cpu(struct ena_adapter *adapter, int new_num);
sys/dev/ena/ena.h
587
int ena_update_cpu_stride(struct ena_adapter *adapter, uint32_t new_num);
sys/dev/ena/ena.h
601
ena_increment_reset_counter(struct ena_adapter *adapter)
sys/dev/ena/ena.h
603
enum ena_regs_reset_reason_types reset_reason = adapter->reset_reason;
sys/dev/ena/ena.h
608
uint64_t *stat_ptr = (uint64_t *)&adapter->dev_stats +
sys/dev/ena/ena.h
614
counter_u64_add(adapter->dev_stats.total_resets, 1);
sys/dev/ena/ena.h
618
ena_trigger_reset(struct ena_adapter *adapter,
sys/dev/ena/ena.h
621
if (likely(!ENA_FLAG_ISSET(ENA_FLAG_TRIGGER_RESET, adapter))) {
sys/dev/ena/ena.h
622
adapter->reset_reason = reset_reason;
sys/dev/ena/ena.h
623
ENA_FLAG_SET_ATOMIC(ENA_FLAG_TRIGGER_RESET, adapter);
sys/dev/ena/ena_datapath.c
1000
ENA_WARN(tx_info->mbuf != NULL, adapter->ena_dev,
sys/dev/ena/ena_datapath.c
1016
ena_tx_csum(&ena_tx_ctx, *mbuf, adapter->disable_meta_caching);
sys/dev/ena/ena_datapath.c
1034
ena_trigger_reset(adapter,
sys/dev/ena/ena_datapath.c
104
(ENA_FLAG_ISSET(ENA_FLAG_TRIGGER_RESET, adapter))))
sys/dev/ena/ena_datapath.c
1046
counter_u64_add_protected(adapter->hw_stats.tx_packets, 1);
sys/dev/ena/ena_datapath.c
1047
counter_u64_add_protected(adapter->hw_stats.tx_bytes,
sys/dev/ena/ena_datapath.c
1063
adapter->max_tx_sgl_size + 2))) {
sys/dev/ena/ena_datapath.c
1085
bus_dmamap_sync(adapter->tx_buf_tag, tx_info->dmamap,
sys/dev/ena/ena_datapath.c
1092
bus_dmamap_unload(adapter->tx_buf_tag, tx_info->dmamap);
sys/dev/ena/ena_datapath.c
1101
struct ena_adapter *adapter = tx_ring->adapter;
sys/dev/ena/ena_datapath.c
1106
if (unlikely((if_getdrvflags(adapter->ifp) & IFF_DRV_RUNNING) == 0))
sys/dev/ena/ena_datapath.c
1109
if (unlikely(!ENA_FLAG_ISSET(ENA_FLAG_LINK_UP, adapter)))
sys/dev/ena/ena_datapath.c
1112
while ((mbuf = drbr_peek(adapter->ifp, tx_ring->br)) != NULL) {
sys/dev/ena/ena_datapath.c
1113
ena_log_io(adapter->pdev, DBG,
sys/dev/ena/ena_datapath.c
1118
drbr_putback(adapter->ifp, tx_ring->br, mbuf);
sys/dev/ena/ena_datapath.c
1124
drbr_putback(adapter->ifp, tx_ring->br, mbuf);
sys/dev/ena/ena_datapath.c
1126
drbr_putback(adapter->ifp, tx_ring->br, mbuf);
sys/dev/ena/ena_datapath.c
1129
drbr_advance(adapter->ifp, tx_ring->br);
sys/dev/ena/ena_datapath.c
1135
drbr_advance(adapter->ifp, tx_ring->br);
sys/dev/ena/ena_datapath.c
1137
if (unlikely((if_getdrvflags(adapter->ifp) & IFF_DRV_RUNNING) == 0))
sys/dev/ena/ena_datapath.c
1142
BPF_MTAP(adapter->ifp, mbuf);
sys/dev/ena/ena_datapath.c
123
if_t ifp = tx_ring->adapter->ifp;
sys/dev/ena/ena_datapath.c
136
struct ena_adapter *adapter = if_getsoftc(ifp);
sys/dev/ena/ena_datapath.c
144
if (unlikely((if_getdrvflags(adapter->ifp) & IFF_DRV_RUNNING) == 0))
sys/dev/ena/ena_datapath.c
157
i = bucket_id % adapter->num_io_queues;
sys/dev/ena/ena_datapath.c
160
i = m->m_pkthdr.flowid % adapter->num_io_queues;
sys/dev/ena/ena_datapath.c
162
i = curcpu % adapter->num_io_queues;
sys/dev/ena/ena_datapath.c
164
tx_ring = &adapter->tx_ring[i];
sys/dev/ena/ena_datapath.c
187
struct ena_adapter *adapter = if_getsoftc(ifp);
sys/dev/ena/ena_datapath.c
188
struct ena_ring *tx_ring = adapter->tx_ring;
sys/dev/ena/ena_datapath.c
191
for (i = 0; i < adapter->num_io_queues; ++i, ++tx_ring)
sys/dev/ena/ena_datapath.c
209
struct ena_adapter *adapter = tx_ring->adapter;
sys/dev/ena/ena_datapath.c
218
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena_datapath.c
221
ena_trigger_reset(adapter, ENA_REGS_RESET_INV_TX_REQ_ID);
sys/dev/ena/ena_datapath.c
242
struct ena_adapter *adapter;
sys/dev/ena/ena_datapath.c
254
adapter = tx_ring->que->adapter;
sys/dev/ena/ena_datapath.c
256
io_cq = &adapter->ena_dev->io_cq_queues[ena_qid];
sys/dev/ena/ena_datapath.c
260
if (netmap_tx_irq(adapter->ifp, tx_ring->qid) != NM_IRQ_PASS)
sys/dev/ena/ena_datapath.c
279
bus_dmamap_sync(adapter->tx_buf_tag, tx_info->dmamap,
sys/dev/ena/ena_datapath.c
281
bus_dmamap_unload(adapter->tx_buf_tag, tx_info->dmamap);
sys/dev/ena/ena_datapath.c
283
ena_log_io(adapter->pdev, DBG, "tx: q %d mbuf %p completed\n",
sys/dev/ena/ena_datapath.c
299
&adapter->ena_dev->io_sq_queues[ena_qid],
sys/dev/ena/ena_datapath.c
307
ena_log_io(adapter->pdev, DBG, "tx: q %d done. total pkts: %d\n",
sys/dev/ena/ena_datapath.c
313
ena_com_comp_ack(&adapter->ena_dev->io_sq_queues[ena_qid],
sys/dev/ena/ena_datapath.c
347
struct ena_adapter *adapter = rx_ring->adapter;
sys/dev/ena/ena_datapath.c
349
if (likely(ENA_FLAG_ISSET(ENA_FLAG_RSS_ACTIVE, adapter))) {
sys/dev/ena/ena_datapath.c
357
if (adapter->ena_dev->rss.hash_func != ENA_ADMIN_TOEPLITZ &&
sys/dev/ena/ena_datapath.c
420
struct ena_adapter *adapter;
sys/dev/ena/ena_datapath.c
426
adapter = rx_ring->adapter;
sys/dev/ena/ena_datapath.c
427
pdev = adapter->pdev;
sys/dev/ena/ena_datapath.c
435
ena_trigger_reset(adapter, ENA_REGS_RESET_INV_RX_REQ_ID);
sys/dev/ena/ena_datapath.c
442
bus_dmamap_sync(adapter->rx_buf_tag, rx_info->map,
sys/dev/ena/ena_datapath.c
451
mbuf->m_pkthdr.rcvif = rx_ring->que->adapter->ifp;
sys/dev/ena/ena_datapath.c
460
bus_dmamap_unload(rx_ring->adapter->rx_buf_tag, rx_info->map);
sys/dev/ena/ena_datapath.c
490
ena_trigger_reset(adapter, ENA_REGS_RESET_INV_RX_REQ_ID);
sys/dev/ena/ena_datapath.c
494
bus_dmamap_sync(adapter->rx_buf_tag, rx_info->map,
sys/dev/ena/ena_datapath.c
506
bus_dmamap_unload(rx_ring->adapter->rx_buf_tag, rx_info->map);
sys/dev/ena/ena_datapath.c
526
device_t pdev = rx_ring->adapter->pdev;
sys/dev/ena/ena_datapath.c
561
struct ena_adapter *adapter;
sys/dev/ena/ena_datapath.c
581
adapter = rx_ring->que->adapter;
sys/dev/ena/ena_datapath.c
582
pdev = adapter->pdev;
sys/dev/ena/ena_datapath.c
583
ifp = adapter->ifp;
sys/dev/ena/ena_datapath.c
586
io_cq = &adapter->ena_dev->io_cq_queues[ena_qid];
sys/dev/ena/ena_datapath.c
587
io_sq = &adapter->ena_dev->io_sq_queues[ena_qid];
sys/dev/ena/ena_datapath.c
591
if (netmap_rx_irq(adapter->ifp, rx_ring->qid, &done) != NM_IRQ_PASS)
sys/dev/ena/ena_datapath.c
599
ena_rx_ctx.max_bufs = adapter->max_rx_sgl_size;
sys/dev/ena/ena_datapath.c
618
ena_trigger_reset(adapter, reset_reason);
sys/dev/ena/ena_datapath.c
654
counter_u64_add_protected(adapter->hw_stats.rx_bytes,
sys/dev/ena/ena_datapath.c
683
counter_u64_add_protected(adapter->hw_stats.rx_packets, 1);
sys/dev/ena/ena_datapath.c
69
struct ena_adapter *adapter = que->adapter;
sys/dev/ena/ena_datapath.c
70
if_t ifp = adapter->ifp;
sys/dev/ena/ena_datapath.c
818
struct ena_adapter *adapter;
sys/dev/ena/ena_datapath.c
82
io_cq = &adapter->ena_dev->io_cq_queues[ena_qid];
sys/dev/ena/ena_datapath.c
822
adapter = tx_ring->adapter;
sys/dev/ena/ena_datapath.c
826
if (num_frags < adapter->max_tx_sgl_size)
sys/dev/ena/ena_datapath.c
829
if ((num_frags == adapter->max_tx_sgl_size) &&
sys/dev/ena/ena_datapath.c
836
adapter->max_tx_sgl_size - 1);
sys/dev/ena/ena_datapath.c
852
struct ena_adapter *adapter = tx_ring->adapter;
sys/dev/ena/ena_datapath.c
868
rc = bus_dmamap_load_mbuf_sg(adapter->tx_buf_tag,
sys/dev/ena/ena_datapath.c
871
ena_log_io(adapter->pdev, WARN,
sys/dev/ena/ena_datapath.c
905
ena_log_io(adapter->pdev, DBG,
sys/dev/ena/ena_datapath.c
91
(ENA_FLAG_ISSET(ENA_FLAG_TRIGGER_RESET, adapter))))
sys/dev/ena/ena_datapath.c
94
ena_log_io(adapter->pdev, DBG, "MSI-X TX/RX routine\n");
sys/dev/ena/ena_datapath.c
966
struct ena_adapter *adapter;
sys/dev/ena/ena_datapath.c
981
adapter = tx_ring->que->adapter;
sys/dev/ena/ena_datapath.c
982
pdev = adapter->pdev;
sys/dev/ena/ena_datapath.c
983
ena_dev = adapter->ena_dev;
sys/dev/ena/ena_netmap.c
1008
bus_dmamap_sync(ctx->adapter->rx_buf_tag, rx_info->map,
sys/dev/ena/ena_netmap.c
1010
netmap_unload_map(ctx->na, ctx->adapter->rx_buf_tag, rx_info->map);
sys/dev/ena/ena_netmap.c
1012
ENA_WARN(ctx->slots[ctx->nm_i].buf_idx != 0, ctx->adapter->ena_dev,
sys/dev/ena/ena_netmap.c
1025
ena_log_nm(ctx->adapter->pdev, DBG,
sys/dev/ena/ena_netmap.c
104
ena_netmap_alloc_rx_slot(struct ena_adapter *adapter, struct ena_ring *rx_ring,
sys/dev/ena/ena_netmap.c
1059
ctx->adapter = if_getsoftc(ctx->na->ifp);
sys/dev/ena/ena_netmap.c
1061
ctx->io_cq = &ctx->adapter->ena_dev->io_cq_queues[ena_qid];
sys/dev/ena/ena_netmap.c
1062
ctx->io_sq = &ctx->adapter->ena_dev->io_sq_queues[ena_qid];
sys/dev/ena/ena_netmap.c
1067
ena_netmap_unload(struct ena_adapter *adapter, bus_dmamap_t map)
sys/dev/ena/ena_netmap.c
1069
struct netmap_adapter *na = NA(adapter->ifp);
sys/dev/ena/ena_netmap.c
107
struct netmap_adapter *na = NA(adapter->ifp);
sys/dev/ena/ena_netmap.c
1071
netmap_unload_map(na, adapter->tx_buf_tag, map);
sys/dev/ena/ena_netmap.c
124
ena_log_nm(adapter->pdev, DBG,
sys/dev/ena/ena_netmap.c
130
ena_log_nm(adapter->pdev, ERR,
sys/dev/ena/ena_netmap.c
137
ena_log_nm(adapter->pdev, ERR, "Rx ring %d is NULL\n", qid);
sys/dev/ena/ena_netmap.c
144
ena_log_nm(adapter->pdev, ERR, "Bad buff in slot\n");
sys/dev/ena/ena_netmap.c
148
rc = netmap_load_map(na, adapter->rx_buf_tag, rx_info->map, addr);
sys/dev/ena/ena_netmap.c
150
ena_log_nm(adapter->pdev, WARN, "DMA mapping error\n");
sys/dev/ena/ena_netmap.c
153
bus_dmamap_sync(adapter->rx_buf_tag, rx_info->map, BUS_DMASYNC_PREREAD);
sys/dev/ena/ena_netmap.c
169
ena_netmap_free_rx_slot(struct ena_adapter *adapter, struct ena_ring *rx_ring,
sys/dev/ena/ena_netmap.c
177
na = NA(adapter->ifp);
sys/dev/ena/ena_netmap.c
179
ena_log_nm(adapter->pdev, ERR, "netmap adapter is NULL\n");
sys/dev/ena/ena_netmap.c
184
ena_log_nm(adapter->pdev, ERR, "netmap rings are NULL\n");
sys/dev/ena/ena_netmap.c
191
ena_log_nm(adapter->pdev, ERR,
sys/dev/ena/ena_netmap.c
202
bus_dmamap_sync(adapter->rx_buf_tag, rx_info->map,
sys/dev/ena/ena_netmap.c
204
netmap_unload_map(na, adapter->rx_buf_tag, rx_info->map);
sys/dev/ena/ena_netmap.c
210
ENA_WARN(slot->buf_idx != 0, adapter->ena_dev, "Overwrite slot buf\n");
sys/dev/ena/ena_netmap.c
219
ena_ring_in_netmap(struct ena_adapter *adapter, int qid, enum txrx x)
sys/dev/ena/ena_netmap.c
224
if (if_getcapenable(adapter->ifp) & IFCAP_NETMAP) {
sys/dev/ena/ena_netmap.c
225
na = NA(adapter->ifp);
sys/dev/ena/ena_netmap.c
236
ena_tx_ring_in_netmap(struct ena_adapter *adapter, int qid)
sys/dev/ena/ena_netmap.c
238
return ena_ring_in_netmap(adapter, qid, NR_TX);
sys/dev/ena/ena_netmap.c
242
ena_rx_ring_in_netmap(struct ena_adapter *adapter, int qid)
sys/dev/ena/ena_netmap.c
244
return ena_ring_in_netmap(adapter, qid, NR_RX);
sys/dev/ena/ena_netmap.c
248
ena_netmap_reset_ring(struct ena_adapter *adapter, int qid, enum txrx x)
sys/dev/ena/ena_netmap.c
250
if (!ena_ring_in_netmap(adapter, qid, x))
sys/dev/ena/ena_netmap.c
253
netmap_reset(NA(adapter->ifp), x, qid, 0);
sys/dev/ena/ena_netmap.c
254
ena_log_nm(adapter->pdev, INFO, "%s ring %d is in netmap mode\n",
sys/dev/ena/ena_netmap.c
259
ena_netmap_reset_rx_ring(struct ena_adapter *adapter, int qid)
sys/dev/ena/ena_netmap.c
261
ena_netmap_reset_ring(adapter, qid, NR_RX);
sys/dev/ena/ena_netmap.c
265
ena_netmap_reset_tx_ring(struct ena_adapter *adapter, int qid)
sys/dev/ena/ena_netmap.c
267
ena_netmap_reset_ring(adapter, qid, NR_TX);
sys/dev/ena/ena_netmap.c
274
struct ena_adapter *adapter = if_getsoftc(ifp);
sys/dev/ena/ena_netmap.c
275
device_t pdev = adapter->pdev;
sys/dev/ena/ena_netmap.c
281
ENA_FLAG_CLEAR_ATOMIC(ENA_FLAG_TRIGGER_RESET, adapter);
sys/dev/ena/ena_netmap.c
282
ena_down(adapter);
sys/dev/ena/ena_netmap.c
308
rc = ena_up(adapter);
sys/dev/ena/ena_netmap.c
311
adapter->reset_reason = ENA_REGS_RESET_DRIVER_INVALID_STATE;
sys/dev/ena/ena_netmap.c
313
ena_destroy_device(adapter, false);
sys/dev/ena/ena_netmap.c
314
ENA_FLAG_SET_ATOMIC(ENA_FLAG_DEV_UP_BEFORE_RESET, adapter);
sys/dev/ena/ena_netmap.c
315
rc = ena_restore_device(adapter);
sys/dev/ena/ena_netmap.c
329
ctx.ring = &ctx.adapter->tx_ring[kring->ring_id];
sys/dev/ena/ena_netmap.c
332
if (unlikely(!ENA_FLAG_ISSET(ENA_FLAG_DEV_UP, ctx.adapter)))
sys/dev/ena/ena_netmap.c
335
if (unlikely(!ENA_FLAG_ISSET(ENA_FLAG_LINK_UP, ctx.adapter)))
sys/dev/ena/ena_netmap.c
390
struct ena_adapter *adapter;
sys/dev/ena/ena_netmap.c
400
adapter = ctx->adapter;
sys/dev/ena/ena_netmap.c
401
if (ena_netmap_count_slots(ctx) > adapter->max_tx_sgl_size) {
sys/dev/ena/ena_netmap.c
402
ena_log_nm(adapter->pdev, WARN, "Too many slots per packet\n");
sys/dev/ena/ena_netmap.c
416
ena_log_nm(adapter->pdev, ERR, "Failed to map Tx slot\n");
sys/dev/ena/ena_netmap.c
42
struct ena_adapter *adapter;
sys/dev/ena/ena_netmap.c
426
ena_tx_ctx.meta_valid = adapter->disable_meta_caching;
sys/dev/ena/ena_netmap.c
437
ena_log_nm(adapter->pdev, DBG,
sys/dev/ena/ena_netmap.c
440
ena_log_nm(adapter->pdev, ERR,
sys/dev/ena/ena_netmap.c
442
ena_trigger_reset(adapter,
sys/dev/ena/ena_netmap.c
454
counter_u64_add_protected(adapter->hw_stats.tx_packets, 1);
sys/dev/ena/ena_netmap.c
455
counter_u64_add_protected(adapter->hw_stats.tx_bytes, packet_len);
sys/dev/ena/ena_netmap.c
463
bus_dmamap_sync(adapter->tx_buf_tag,
sys/dev/ena/ena_netmap.c
555
struct ena_adapter *adapter;
sys/dev/ena/ena_netmap.c
569
adapter = ctx->adapter;
sys/dev/ena/ena_netmap.c
601
ena_log_nm(adapter->pdev, ERR,
sys/dev/ena/ena_netmap.c
614
ena_log_nm(adapter->pdev, ERR,
sys/dev/ena/ena_netmap.c
625
ena_log_nm(adapter->pdev, DBG,
sys/dev/ena/ena_netmap.c
635
adapter->tx_buf_tag, *nm_maps, &vaddr, &paddr);
sys/dev/ena/ena_netmap.c
637
ena_log_nm(adapter->pdev, ERR,
sys/dev/ena/ena_netmap.c
684
adapter->tx_buf_tag, *nm_maps, &vaddr,
sys/dev/ena/ena_netmap.c
687
ena_log_nm(adapter->pdev, ERR,
sys/dev/ena/ena_netmap.c
730
adapter->tx_buf_tag, *nm_maps, &vaddr, &paddr);
sys/dev/ena/ena_netmap.c
732
ena_log_nm(adapter->pdev, ERR, "DMA mapping error\n");
sys/dev/ena/ena_netmap.c
780
netmap_unload_map(ctx->na, ctx->adapter->tx_buf_tag,
sys/dev/ena/ena_netmap.c
82
ena_netmap_attach(struct ena_adapter *adapter)
sys/dev/ena/ena_netmap.c
846
netmap_unload_map(ctx->na, ctx->adapter->tx_buf_tag,
sys/dev/ena/ena_netmap.c
855
ctx->adapter->ena_dev, "Tx idx is not 0.\n");
sys/dev/ena/ena_netmap.c
86
ena_log_nm(adapter->pdev, INFO, "netmap attach\n");
sys/dev/ena/ena_netmap.c
875
ctx.ring = &ctx.adapter->rx_ring[kring->ring_id];
sys/dev/ena/ena_netmap.c
885
if (unlikely(!ENA_FLAG_ISSET(ENA_FLAG_LINK_UP, ctx.adapter)))
sys/dev/ena/ena_netmap.c
90
na.ifp = adapter->ifp;
sys/dev/ena/ena_netmap.c
91
na.num_tx_desc = adapter->requested_tx_ring_size;
sys/dev/ena/ena_netmap.c
910
ena_log_nm(ctx->adapter->pdev, ERR,
sys/dev/ena/ena_netmap.c
92
na.num_rx_desc = adapter->requested_rx_ring_size;
sys/dev/ena/ena_netmap.c
93
na.num_tx_rings = adapter->num_io_queues;
sys/dev/ena/ena_netmap.c
932
ena_rx_ctx.max_bufs = ctx->adapter->max_rx_sgl_size;
sys/dev/ena/ena_netmap.c
938
ena_log_nm(ctx->adapter->pdev, ERR,
sys/dev/ena/ena_netmap.c
94
na.num_rx_rings = adapter->num_io_queues;
sys/dev/ena/ena_netmap.c
949
ena_trigger_reset(ctx->adapter, reset_reason);
sys/dev/ena/ena_netmap.c
95
na.rx_buf_maxsize = adapter->buf_ring_size;
sys/dev/ena/ena_netmap.c
955
ena_log_nm(ctx->adapter->pdev, DBG,
sys/dev/ena/ena_netmap.c
980
counter_u64_add_protected(ctx->adapter->hw_stats.rx_bytes, len);
sys/dev/ena/ena_netmap.c
982
counter_u64_add_protected(ctx->adapter->hw_stats.rx_packets, 1);
sys/dev/ena/ena_netmap.h
49
int ena_netmap_attach(struct ena_adapter *adapter);
sys/dev/ena/ena_netmap.h
50
int ena_netmap_alloc_rx_slot(struct ena_adapter *adapter,
sys/dev/ena/ena_netmap.h
52
void ena_netmap_free_rx_slot(struct ena_adapter *adapter,
sys/dev/ena/ena_netmap.h
54
bool ena_rx_ring_in_netmap(struct ena_adapter *adapter, int qid);
sys/dev/ena/ena_netmap.h
55
bool ena_tx_ring_in_netmap(struct ena_adapter *adapter, int qid);
sys/dev/ena/ena_netmap.h
56
void ena_netmap_reset_rx_ring(struct ena_adapter *adapter, int qid);
sys/dev/ena/ena_netmap.h
57
void ena_netmap_reset_tx_ring(struct ena_adapter *adapter, int qid);
sys/dev/ena/ena_netmap.h
58
void ena_netmap_unload(struct ena_adapter *adapter, bus_dmamap_t map);
sys/dev/ena/ena_rss.c
101
ena_rss_init_default(struct ena_adapter *adapter)
sys/dev/ena/ena_rss.c
103
struct ena_com_dev *ena_dev = adapter->ena_dev;
sys/dev/ena/ena_rss.c
104
device_t dev = adapter->pdev;
sys/dev/ena/ena_rss.c
115
qid = rss_get_indirection_to_bucket(i) % adapter->num_io_queues;
sys/dev/ena/ena_rss.c
117
qid = i % adapter->num_io_queues;
sys/dev/ena/ena_rss.c
148
rc = ena_rss_indir_init(adapter);
sys/dev/ena/ena_rss.c
159
ena_rss_configure(struct ena_adapter *adapter)
sys/dev/ena/ena_rss.c
161
struct ena_com_dev *ena_dev = adapter->ena_dev;
sys/dev/ena/ena_rss.c
166
rc = ena_rss_init_default(adapter);
sys/dev/ena/ena_rss.c
168
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena_rss.c
171
ENA_FLAG_CLEAR_ATOMIC(ENA_FLAG_RSS_ACTIVE, adapter);
sys/dev/ena/ena_rss.c
197
struct ena_adapter *adapter;
sys/dev/ena/ena_rss.c
210
adapter = devclass_get_softc(dc, max);
sys/dev/ena/ena_rss.c
211
if (adapter != NULL) {
sys/dev/ena/ena_rss.c
212
rc = ena_rss_init_default(adapter);
sys/dev/ena/ena_rss.c
213
ENA_FLAG_SET_ATOMIC(ENA_FLAG_RSS_ACTIVE, adapter);
sys/dev/ena/ena_rss.c
215
ena_log(adapter->pdev, WARN,
sys/dev/ena/ena_rss.c
219
adapter);
sys/dev/ena/ena_rss.c
228
ena_rss_indir_get(struct ena_adapter *adapter, uint32_t *table)
sys/dev/ena/ena_rss.c
232
rc = ena_com_indirect_table_get(adapter->ena_dev, table);
sys/dev/ena/ena_rss.c
235
device_printf(adapter->pdev,
sys/dev/ena/ena_rss.c
238
device_printf(adapter->pdev,
sys/dev/ena/ena_rss.c
250
ena_rss_indir_set(struct ena_adapter *adapter, uint32_t *table)
sys/dev/ena/ena_rss.c
255
rc = ena_com_indirect_table_fill_entry(adapter->ena_dev, i,
sys/dev/ena/ena_rss.c
258
device_printf(adapter->pdev,
sys/dev/ena/ena_rss.c
264
rc = ena_com_indirect_table_set(adapter->ena_dev);
sys/dev/ena/ena_rss.c
266
device_printf(adapter->pdev,
sys/dev/ena/ena_rss.c
269
device_printf(adapter->pdev, "Cannot set indirection table\n");
sys/dev/ena/ena_rss.c
275
ena_rss_indir_init(struct ena_adapter *adapter)
sys/dev/ena/ena_rss.c
277
struct ena_indir *indir = adapter->rss_indir;
sys/dev/ena/ena_rss.c
281
adapter->rss_indir = indir = malloc(sizeof(struct ena_indir),
sys/dev/ena/ena_rss.c
284
rc = ena_rss_indir_get(adapter, indir->table);
sys/dev/ena/ena_rss.c
286
free(adapter->rss_indir, M_DEVBUF);
sys/dev/ena/ena_rss.c
287
adapter->rss_indir = NULL;
sys/dev/ena/ena_rss.h
53
int ena_rss_indir_get(struct ena_adapter *adapter, uint32_t *table);
sys/dev/ena/ena_rss.h
54
int ena_rss_indir_set(struct ena_adapter *adapter, uint32_t *table);
sys/dev/ena/ena_rss.h
55
int ena_rss_indir_init(struct ena_adapter *adapter);
sys/dev/ena/ena_sysctl.c
1006
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena_sysctl.c
1013
ena_log(adapter->pdev, INFO,
sys/dev/ena/ena_sysctl.c
1017
if (irq_cpu_stride == adapter->irq_cpu_stride) {
sys/dev/ena/ena_sysctl.c
1018
ena_log(adapter->pdev, INFO,
sys/dev/ena/ena_sysctl.c
1021
adapter->irq_cpu_stride);
sys/dev/ena/ena_sysctl.c
1025
ena_log(adapter->pdev, INFO,
sys/dev/ena/ena_sysctl.c
1027
irq_cpu_stride, adapter->irq_cpu_stride);
sys/dev/ena/ena_sysctl.c
1029
error = ena_update_cpu_stride(adapter, irq_cpu_stride);
sys/dev/ena/ena_sysctl.c
1046
struct ena_adapter *adapter = arg1;
sys/dev/ena/ena_sysctl.c
1047
struct ena_com_dev *ena_dev = adapter->ena_dev;
sys/dev/ena/ena_sysctl.c
1056
if (unlikely(!ENA_FLAG_ISSET(ENA_FLAG_DEVICE_RUNNING, adapter))) {
sys/dev/ena/ena_sysctl.c
1061
if (unlikely(!ENA_FLAG_ISSET(ENA_FLAG_RSS_ACTIVE, adapter))) {
sys/dev/ena/ena_sysctl.c
1070
error = ena_com_get_hash_function(adapter->ena_dev, &ena_func);
sys/dev/ena/ena_sysctl.c
1072
device_printf(adapter->pdev, "Cannot get hash function\n");
sys/dev/ena/ena_sysctl.c
1078
device_printf(adapter->pdev, "Unsupported hash algorithm\n");
sys/dev/ena/ena_sysctl.c
1084
device_printf(adapter->pdev, "Cannot get hash key\n");
sys/dev/ena/ena_sysctl.c
1097
device_printf(adapter->pdev, "Invalid key size\n");
sys/dev/ena/ena_sysctl.c
1108
device_printf(adapter->pdev,
sys/dev/ena/ena_sysctl.c
1116
device_printf(adapter->pdev, "Cannot fill hash key\n");
sys/dev/ena/ena_sysctl.c
1143
struct ena_adapter *adapter = arg1;
sys/dev/ena/ena_sysctl.c
1149
if (unlikely(!ENA_FLAG_ISSET(ENA_FLAG_DEVICE_RUNNING, adapter))) {
sys/dev/ena/ena_sysctl.c
1154
if (unlikely(!ENA_FLAG_ISSET(ENA_FLAG_RSS_ACTIVE, adapter))) {
sys/dev/ena/ena_sysctl.c
1159
indir = adapter->rss_indir;
sys/dev/ena/ena_sysctl.c
1171
num_queues = adapter->num_io_queues;
sys/dev/ena/ena_sysctl.c
1181
device_printf(adapter->pdev, "Invalid index: %s\n",
sys/dev/ena/ena_sysctl.c
1188
device_printf(adapter->pdev, "Index %d out of range\n",
sys/dev/ena/ena_sysctl.c
1197
device_printf(adapter->pdev, "Missing ':' separator\n");
sys/dev/ena/ena_sysctl.c
1205
device_printf(adapter->pdev, "Invalid value: %s\n",
sys/dev/ena/ena_sysctl.c
1212
device_printf(adapter->pdev, "Value %d out of range\n",
sys/dev/ena/ena_sysctl.c
1222
ena_rss_indir_get(adapter, indir->table);
sys/dev/ena/ena_sysctl.c
1228
error = ena_rss_indir_set(adapter, indir->table);
sys/dev/ena/ena_sysctl.c
165
int ena_sysctl_allocate_customer_metrics_buffer(struct ena_adapter *adapter)
sys/dev/ena/ena_sysctl.c
169
adapter->customer_metrics_array = malloc((sizeof(u64) * ENA_CUSTOMER_METRICS_ARRAY_SIZE),
sys/dev/ena/ena_sysctl.c
171
if (unlikely(adapter->customer_metrics_array == NULL))
sys/dev/ena/ena_sysctl.c
177
ena_sysctl_add_nodes(struct ena_adapter *adapter)
sys/dev/ena/ena_sysctl.c
179
struct ena_com_dev *dev = adapter->ena_dev;
sys/dev/ena/ena_sysctl.c
182
ena_sysctl_add_customer_metrics(adapter);
sys/dev/ena/ena_sysctl.c
184
ena_sysctl_add_eni_metrics(adapter);
sys/dev/ena/ena_sysctl.c
186
if (ena_com_get_cap(adapter->ena_dev, ENA_ADMIN_ENA_SRD_INFO))
sys/dev/ena/ena_sysctl.c
187
ena_sysctl_add_srd_info(adapter);
sys/dev/ena/ena_sysctl.c
189
ena_sysctl_add_wd(adapter);
sys/dev/ena/ena_sysctl.c
190
ena_sysctl_add_stats(adapter);
sys/dev/ena/ena_sysctl.c
191
ena_sysctl_add_tuneables(adapter);
sys/dev/ena/ena_sysctl.c
192
ena_sysctl_add_irq_affinity(adapter);
sys/dev/ena/ena_sysctl.c
194
ena_sysctl_add_rss(adapter);
sys/dev/ena/ena_sysctl.c
199
ena_sysctl_add_wd(struct ena_adapter *adapter)
sys/dev/ena/ena_sysctl.c
207
dev = adapter->pdev;
sys/dev/ena/ena_sysctl.c
215
&adapter->wd_active, 0, "Watchdog is active");
sys/dev/ena/ena_sysctl.c
218
CTLFLAG_RWTUN, &adapter->keep_alive_timeout,
sys/dev/ena/ena_sysctl.c
222
CTLFLAG_RWTUN, &adapter->missing_tx_timeout,
sys/dev/ena/ena_sysctl.c
226
CTLFLAG_RWTUN, &adapter->missing_tx_max_queues, 0,
sys/dev/ena/ena_sysctl.c
230
CTLFLAG_RWTUN, &adapter->missing_tx_threshold, 0,
sys/dev/ena/ena_sysctl.c
235
ena_sysctl_add_stats(struct ena_adapter *adapter)
sys/dev/ena/ena_sysctl.c
261
dev = adapter->pdev;
sys/dev/ena/ena_sysctl.c
267
tx_ring = adapter->tx_ring;
sys/dev/ena/ena_sysctl.c
268
rx_ring = adapter->rx_ring;
sys/dev/ena/ena_sysctl.c
270
hw_stats = &adapter->hw_stats;
sys/dev/ena/ena_sysctl.c
271
dev_stats = &adapter->dev_stats;
sys/dev/ena/ena_sysctl.c
272
admin_stats = &adapter->ena_dev->admin_queue.stats;
sys/dev/ena/ena_sysctl.c
309
for (i = 0; i < adapter->num_io_queues; ++i, ++tx_ring, ++rx_ring) {
sys/dev/ena/ena_sysctl.c
316
adapter->que[i].oid = queue_node;
sys/dev/ena/ena_sysctl.c
321
&adapter->que[i].cpu, 0, "CPU affinity");
sys/dev/ena/ena_sysctl.c
323
&adapter->que[i].domain, 0, "NUMA domain");
sys/dev/ena/ena_sysctl.c
441
ena_sysctl_add_srd_info(struct ena_adapter *adapter)
sys/dev/ena/ena_sysctl.c
457
dev = adapter->pdev;
sys/dev/ena/ena_sysctl.c
468
CTLFLAG_RD, &adapter->ena_srd_info.flags, 0,
sys/dev/ena/ena_sysctl.c
471
srd_stats_ptr = &adapter->ena_srd_info.ena_srd_stats;
sys/dev/ena/ena_sysctl.c
482
ena_sysctl_add_customer_metrics(struct ena_adapter *adapter)
sys/dev/ena/ena_sysctl.c
496
dev = adapter->pdev;
sys/dev/ena/ena_sysctl.c
497
ena_dev = adapter->ena_dev;
sys/dev/ena/ena_sysctl.c
509
CTLFLAG_RD, &adapter->customer_metrics_array[i], 0,
sys/dev/ena/ena_sysctl.c
516
ena_sysctl_add_eni_metrics(struct ena_adapter *adapter)
sys/dev/ena/ena_sysctl.c
528
dev = adapter->pdev;
sys/dev/ena/ena_sysctl.c
538
eni_metrics = &adapter->eni_metrics;
sys/dev/ena/ena_sysctl.c
558
ena_sysctl_add_tuneables(struct ena_adapter *adapter)
sys/dev/ena/ena_sysctl.c
566
dev = adapter->pdev;
sys/dev/ena/ena_sysctl.c
574
CTLTYPE_U32 | CTLFLAG_RW | CTLFLAG_MPSAFE, adapter, 0,
sys/dev/ena/ena_sysctl.c
580
CTLTYPE_U32 | CTLFLAG_RW | CTLFLAG_MPSAFE, adapter, 0,
sys/dev/ena/ena_sysctl.c
586
CTLTYPE_U32 | CTLFLAG_RW | CTLFLAG_MPSAFE, adapter, 0,
sys/dev/ena/ena_sysctl.c
595
CTLTYPE_U16 | CTLFLAG_RW | CTLFLAG_MPSAFE, adapter, 0,
sys/dev/ena/ena_sysctl.c
603
ena_sysctl_add_rss(struct ena_adapter *adapter)
sys/dev/ena/ena_sysctl.c
611
dev = adapter->pdev;
sys/dev/ena/ena_sysctl.c
624
CTLTYPE_STRING | CTLFLAG_RW | CTLFLAG_MPSAFE, adapter, 0,
sys/dev/ena/ena_sysctl.c
629
CTLTYPE_STRING | CTLFLAG_RW | CTLFLAG_MPSAFE, adapter, 0,
sys/dev/ena/ena_sysctl.c
640
ena_sysctl_add_irq_affinity(struct ena_adapter *adapter)
sys/dev/ena/ena_sysctl.c
648
dev = adapter->pdev;
sys/dev/ena/ena_sysctl.c
660
CTLTYPE_S32 | CTLFLAG_RW | CTLFLAG_MPSAFE, adapter, 0,
sys/dev/ena/ena_sysctl.c
665
CTLTYPE_S32 | CTLFLAG_RW | CTLFLAG_MPSAFE, adapter, 0,
sys/dev/ena/ena_sysctl.c
684
ena_sysctl_update_queue_node_nb(struct ena_adapter *adapter, int old, int new)
sys/dev/ena/ena_sysctl.c
690
max = MIN(MAX(old, new), adapter->max_num_io_queues);
sys/dev/ena/ena_sysctl.c
693
oid = adapter->que[i].oid;
sys/dev/ena/ena_sysctl.c
707
struct ena_adapter *adapter = arg1;
sys/dev/ena/ena_sysctl.c
712
if (unlikely(!ENA_FLAG_ISSET(ENA_FLAG_DEVICE_RUNNING, adapter))) {
sys/dev/ena/ena_sysctl.c
720
val = adapter->buf_ring_size;
sys/dev/ena/ena_sysctl.c
727
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena_sysctl.c
734
if (val != adapter->buf_ring_size) {
sys/dev/ena/ena_sysctl.c
735
ena_log(adapter->pdev, INFO,
sys/dev/ena/ena_sysctl.c
737
val, adapter->buf_ring_size);
sys/dev/ena/ena_sysctl.c
739
error = ena_update_buf_ring_size(adapter, val);
sys/dev/ena/ena_sysctl.c
741
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena_sysctl.c
743
adapter->buf_ring_size);
sys/dev/ena/ena_sysctl.c
755
struct ena_adapter *adapter = arg1;
sys/dev/ena/ena_sysctl.c
760
if (unlikely(!ENA_FLAG_ISSET(ENA_FLAG_DEVICE_RUNNING, adapter))) {
sys/dev/ena/ena_sysctl.c
768
val = adapter->requested_rx_ring_size;
sys/dev/ena/ena_sysctl.c
774
if (val < ENA_MIN_RING_SIZE || val > adapter->max_rx_ring_size) {
sys/dev/ena/ena_sysctl.c
775
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena_sysctl.c
777
val, ENA_MIN_RING_SIZE, adapter->max_rx_ring_size);
sys/dev/ena/ena_sysctl.c
784
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena_sysctl.c
791
if (val != adapter->requested_rx_ring_size) {
sys/dev/ena/ena_sysctl.c
792
ena_log(adapter->pdev, INFO,
sys/dev/ena/ena_sysctl.c
794
adapter->requested_rx_ring_size);
sys/dev/ena/ena_sysctl.c
796
error = ena_update_queue_size(adapter,
sys/dev/ena/ena_sysctl.c
797
adapter->requested_tx_ring_size, val);
sys/dev/ena/ena_sysctl.c
799
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena_sysctl.c
801
adapter->requested_rx_ring_size);
sys/dev/ena/ena_sysctl.c
816
struct ena_adapter *adapter = arg1;
sys/dev/ena/ena_sysctl.c
821
if (unlikely(!ENA_FLAG_ISSET(ENA_FLAG_DEVICE_RUNNING, adapter))) {
sys/dev/ena/ena_sysctl.c
828
tmp = adapter->num_io_queues;
sys/dev/ena/ena_sysctl.c
835
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena_sysctl.c
848
if (tmp > (adapter->msix_vecs - ENA_ADMIN_MSIX_VEC)) {
sys/dev/ena/ena_sysctl.c
849
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena_sysctl.c
851
adapter->msix_vecs - ENA_ADMIN_MSIX_VEC);
sys/dev/ena/ena_sysctl.c
855
if (tmp == adapter->num_io_queues) {
sys/dev/ena/ena_sysctl.c
856
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena_sysctl.c
859
adapter->num_io_queues);
sys/dev/ena/ena_sysctl.c
861
ena_log(adapter->pdev, INFO,
sys/dev/ena/ena_sysctl.c
864
tmp, adapter->num_io_queues);
sys/dev/ena/ena_sysctl.c
866
old_num_queues = adapter->num_io_queues;
sys/dev/ena/ena_sysctl.c
867
error = ena_update_io_queue_nb(adapter, tmp);
sys/dev/ena/ena_sysctl.c
871
ena_sysctl_update_queue_node_nb(adapter, old_num_queues, tmp);
sys/dev/ena/ena_sysctl.c
883
struct ena_adapter *adapter = arg1;
sys/dev/ena/ena_sysctl.c
888
if (unlikely(!ENA_FLAG_ISSET(ENA_FLAG_DEVICE_RUNNING, adapter))) {
sys/dev/ena/ena_sysctl.c
895
interval = adapter->metrics_sample_interval;
sys/dev/ena/ena_sysctl.c
902
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena_sysctl.c
910
ena_log(adapter->pdev, INFO,
sys/dev/ena/ena_sysctl.c
912
bzero(&adapter->eni_metrics, sizeof(adapter->eni_metrics));
sys/dev/ena/ena_sysctl.c
914
ena_log(adapter->pdev, INFO,
sys/dev/ena/ena_sysctl.c
920
adapter->metrics_sample_interval = interval;
sys/dev/ena/ena_sysctl.c
931
struct ena_adapter *adapter = arg1;
sys/dev/ena/ena_sysctl.c
936
if (unlikely(!ENA_FLAG_ISSET(ENA_FLAG_DEVICE_RUNNING, adapter))) {
sys/dev/ena/ena_sysctl.c
943
irq_base_cpu = adapter->irq_cpu_base;
sys/dev/ena/ena_sysctl.c
950
ena_log(adapter->pdev, ERR,
sys/dev/ena/ena_sysctl.c
957
ena_log(adapter->pdev, INFO,
sys/dev/ena/ena_sysctl.c
964
if (irq_base_cpu == adapter->irq_cpu_base) {
sys/dev/ena/ena_sysctl.c
965
ena_log(adapter->pdev, INFO,
sys/dev/ena/ena_sysctl.c
968
adapter->irq_cpu_base);
sys/dev/ena/ena_sysctl.c
972
ena_log(adapter->pdev, INFO,
sys/dev/ena/ena_sysctl.c
974
irq_base_cpu, adapter->irq_cpu_base);
sys/dev/ena/ena_sysctl.c
976
error = ena_update_base_cpu(adapter, irq_base_cpu);
sys/dev/ena/ena_sysctl.c
987
struct ena_adapter *adapter = arg1;
sys/dev/ena/ena_sysctl.c
992
if (unlikely(!ENA_FLAG_ISSET(ENA_FLAG_DEVICE_RUNNING, adapter))) {
sys/dev/ena/ena_sysctl.c
999
irq_cpu_stride = adapter->irq_cpu_stride;
sys/dev/ena/ena_sysctl.h
40
void ena_sysctl_add_nodes(struct ena_adapter *adapter);
sys/dev/ena/ena_sysctl.h
41
void ena_sysctl_update_queue_node_nb(struct ena_adapter *adapter, int old,
sys/dev/ena/ena_sysctl.h
43
int ena_sysctl_allocate_customer_metrics_buffer(struct ena_adapter *adapter);
sys/dev/fb/fb.c
136
if (adapter[index] == NULL)
sys/dev/fb/fb.c
149
adapter[index] = adp;
sys/dev/fb/fb.c
163
if (adapter[adp->va_index] != adp)
sys/dev/fb/fb.c
166
adapter[adp->va_index] = NULL;
sys/dev/fb/fb.c
201
if (adapter[i] == NULL)
sys/dev/fb/fb.c
203
if (strcmp("*", driver) && strcmp(adapter[i]->va_name, driver))
sys/dev/fb/fb.c
205
if ((unit != -1) && (adapter[i]->va_unit != unit))
sys/dev/fb/fb.c
222
if (adapter[index]->va_token) {
sys/dev/fb/fb.c
226
adapter[index]->va_token = id;
sys/dev/fb/fb.c
257
return adapter[index];
sys/dev/fb/fb.c
63
static video_adapter_t **adapter = &adp_ini;
sys/dev/fb/fb.c
85
bcopy(adapter, new_adp, sizeof(*adapter)*adapters);
sys/dev/fb/fb.c
88
free(adapter, M_DEVBUF);
sys/dev/fb/fb.c
91
adapter = new_adp;
sys/dev/hpt27xx/him.h
260
void * adapter;
sys/dev/hpt27xx/himfuncs.h
100
_HIM_INTERFACE(int, get_enclosure_count, (void *adapter))
sys/dev/hpt27xx/himfuncs.h
101
_HIM_INTERFACE(int, get_enclosure_info, (void *adapter, int id, void *pinfo))
sys/dev/hpt27xx/himfuncs.h
102
_HIM_INTERFACE(int, get_enclosure_info_v2, (void *adapter, int id, void *pinfo))
sys/dev/hpt27xx/himfuncs.h
103
_HIM_INTERFACE(int, get_enclosure_info_v3, (void *adapter, int id, void *pinfo))
sys/dev/hpt27xx/himfuncs.h
104
_HIM_INTERFACE(int, get_enclosure_info_v4, (void *adapter, int enc_id, int ele_id, void *pinfo, void *pstatus))
sys/dev/hpt27xx/himfuncs.h
106
_HIM_INTERFACE(HPT_BOOL, flash_access, (void *adapter, HPT_U32 offset, void *value, int size, HPT_BOOL reading))
sys/dev/hpt27xx/himfuncs.h
48
_HIM_INTERFACE(HPT_BOOL, create_adapter, (const PCI_ID *id, PCI_ADDRESS pciAddress, void *adapter, void *osext))
sys/dev/hpt27xx/himfuncs.h
50
_HIM_INTERFACE(void, get_adapter_config, (void *adapter, HIM_ADAPTER_CONFIG *config))
sys/dev/hpt27xx/himfuncs.h
52
_HIM_INTERFACE(HPT_BOOL, get_meminfo, (void *adapter))
sys/dev/hpt27xx/himfuncs.h
56
_HIM_INTERFACE(void, route_irq, (void *adapter, HPT_BOOL enable))
sys/dev/hpt27xx/himfuncs.h
59
_HIM_INTERFACE(HPT_BOOL, initialize, (void *adapter))
sys/dev/hpt27xx/himfuncs.h
62
_HIM_INTERFACE(HPT_UINT, get_device_size, (void *adapter))
sys/dev/hpt27xx/himfuncs.h
65
_HIM_INTERFACE(HPT_BOOL, probe_device, (void *adapter, int index, void *devhandle, PROBE_CALLBACK done, void *arg))
sys/dev/hpt27xx/himfuncs.h
66
_HIM_INTERFACE(void *, get_device, (void *adapter, int index))
sys/dev/hpt27xx/himfuncs.h
80
_HIM_INTERFACE(HPT_BOOL, intr_handler, (void *adapter))
sys/dev/hpt27xx/himfuncs.h
81
_HIM_INTERFACE(HPT_BOOL, intr_control, (void * adapter, HPT_BOOL enable))
sys/dev/hpt27xx/himfuncs.h
84
_HIM_INTERFACE(int, get_channel_config, (void * adapter, int index, PHIM_CHANNEL_CONFIG pInfo))
sys/dev/hpt27xx/himfuncs.h
89
_HIM_INTERFACE(void, shutdown, (void *adapter))
sys/dev/hpt27xx/himfuncs.h
90
_HIM_INTERFACE(void, suspend, (void *adapter))
sys/dev/hpt27xx/himfuncs.h
91
_HIM_INTERFACE(void, resume, (void *adapter))
sys/dev/hpt27xx/himfuncs.h
92
_HIM_INTERFACE(void, release_adapter, (void *adapter))
sys/dev/hpt27xx/himfuncs.h
95
_HIM_INTERFACE(HPT_BOOL, verify_adapter, (void *adapter))
sys/dev/hpt27xx/himfuncs.h
98
_HIM_INTERFACE(void, ioctl, (void * adapter, struct _IOCTL_ARG *arg))
sys/dev/hpt27xx/ldm.h
274
PLDM_ADAPTER adapter;
sys/dev/hpt27xx/ldm.h
417
HPT_BOOL ldm_register_adapter(PLDM_ADAPTER adapter);
sys/dev/hpt27xx/ldm.h
444
#define ldm_initialize_vbus(vbus, adapter) ldm_initialize_vbus_async(vbus, adapter, 0)
sys/dev/hptnr/him.h
260
void * adapter;
sys/dev/hptnr/himfuncs.h
100
_HIM_INTERFACE(int, get_enclosure_count, (void *adapter))
sys/dev/hptnr/himfuncs.h
101
_HIM_INTERFACE(int, get_enclosure_info, (void *adapter, int id, void *pinfo))
sys/dev/hptnr/himfuncs.h
102
_HIM_INTERFACE(int, get_enclosure_info_v2, (void *adapter, int id, void *pinfo))
sys/dev/hptnr/himfuncs.h
103
_HIM_INTERFACE(int, get_enclosure_info_v3, (void *adapter, int id, void *pinfo))
sys/dev/hptnr/himfuncs.h
104
_HIM_INTERFACE(int, get_enclosure_info_v4, (void *adapter, int enc_id, int ele_id, void *pinfo, void *pstatus))
sys/dev/hptnr/himfuncs.h
106
_HIM_INTERFACE(HPT_BOOL, flash_access, (void *adapter, HPT_U32 offset, void *value, int size, HPT_BOOL reading))
sys/dev/hptnr/himfuncs.h
48
_HIM_INTERFACE(HPT_BOOL, create_adapter, (const PCI_ID *id, PCI_ADDRESS pciAddress, void *adapter, void *osext))
sys/dev/hptnr/himfuncs.h
50
_HIM_INTERFACE(void, get_adapter_config, (void *adapter, HIM_ADAPTER_CONFIG *config))
sys/dev/hptnr/himfuncs.h
52
_HIM_INTERFACE(HPT_BOOL, get_meminfo, (void *adapter))
sys/dev/hptnr/himfuncs.h
56
_HIM_INTERFACE(void, route_irq, (void *adapter, HPT_BOOL enable))
sys/dev/hptnr/himfuncs.h
59
_HIM_INTERFACE(HPT_BOOL, initialize, (void *adapter))
sys/dev/hptnr/himfuncs.h
62
_HIM_INTERFACE(HPT_UINT, get_device_size, (void *adapter))
sys/dev/hptnr/himfuncs.h
65
_HIM_INTERFACE(HPT_BOOL, probe_device, (void *adapter, int index, void *devhandle, PROBE_CALLBACK done, void *arg))
sys/dev/hptnr/himfuncs.h
66
_HIM_INTERFACE(void *, get_device, (void *adapter, int index))
sys/dev/hptnr/himfuncs.h
80
_HIM_INTERFACE(HPT_BOOL, intr_handler, (void *adapter))
sys/dev/hptnr/himfuncs.h
81
_HIM_INTERFACE(HPT_BOOL, intr_control, (void * adapter, HPT_BOOL enable))
sys/dev/hptnr/himfuncs.h
84
_HIM_INTERFACE(int, get_channel_config, (void * adapter, int index, PHIM_CHANNEL_CONFIG pInfo))
sys/dev/hptnr/himfuncs.h
89
_HIM_INTERFACE(void, shutdown, (void *adapter))
sys/dev/hptnr/himfuncs.h
90
_HIM_INTERFACE(void, suspend, (void *adapter))
sys/dev/hptnr/himfuncs.h
91
_HIM_INTERFACE(void, resume, (void *adapter))
sys/dev/hptnr/himfuncs.h
92
_HIM_INTERFACE(void, release_adapter, (void *adapter))
sys/dev/hptnr/himfuncs.h
95
_HIM_INTERFACE(HPT_BOOL, verify_adapter, (void *adapter))
sys/dev/hptnr/himfuncs.h
98
_HIM_INTERFACE(void, ioctl, (void * adapter, struct _IOCTL_ARG *arg))
sys/dev/hptnr/ldm.h
273
PLDM_ADAPTER adapter;
sys/dev/hptnr/ldm.h
416
HPT_BOOL ldm_register_adapter(PLDM_ADAPTER adapter);
sys/dev/hptnr/ldm.h
443
#define ldm_initialize_vbus(vbus, adapter) ldm_initialize_vbus_async(vbus, adapter, 0)
sys/dev/hptrr/him.h
228
void * adapter;
sys/dev/hptrr/himfuncs.h
103
_HIM_INTERFACE(HPT_BOOL, flash_access, (void *adapter, HPT_U32 offset, void *value, int size, HPT_BOOL reading))
sys/dev/hptrr/himfuncs.h
49
_HIM_INTERFACE(HPT_BOOL, create_adapter, (const PCI_ID *id, PCI_ADDRESS pciAddress, void *adapter, void *osext))
sys/dev/hptrr/himfuncs.h
51
_HIM_INTERFACE(void, get_adapter_config, (void *adapter, HIM_ADAPTER_CONFIG *config))
sys/dev/hptrr/himfuncs.h
53
_HIM_INTERFACE(HPT_BOOL, get_meminfo, (void *adapter))
sys/dev/hptrr/himfuncs.h
57
_HIM_INTERFACE(void, route_irq, (void *adapter, HPT_BOOL enable))
sys/dev/hptrr/himfuncs.h
60
_HIM_INTERFACE(HPT_BOOL, initialize, (void *adapter))
sys/dev/hptrr/himfuncs.h
63
_HIM_INTERFACE(HPT_UINT, get_device_size, (void *adapter))
sys/dev/hptrr/himfuncs.h
66
_HIM_INTERFACE(HPT_BOOL, probe_device, (void *adapter, int index, void *devhandle, PROBE_CALLBACK done, void *arg))
sys/dev/hptrr/himfuncs.h
67
_HIM_INTERFACE(void *, get_device, (void *adapter, int index))
sys/dev/hptrr/himfuncs.h
81
_HIM_INTERFACE(HPT_BOOL, intr_handler, (void *adapter))
sys/dev/hptrr/himfuncs.h
82
_HIM_INTERFACE(HPT_BOOL, intr_control, (void * adapter, HPT_BOOL enable))
sys/dev/hptrr/himfuncs.h
85
_HIM_INTERFACE(int, get_channel_config, (void * adapter, int index, PHIM_CHANNEL_CONFIG pInfo))
sys/dev/hptrr/himfuncs.h
90
_HIM_INTERFACE(void, shutdown, (void *adapter))
sys/dev/hptrr/himfuncs.h
91
_HIM_INTERFACE(void, suspend, (void *adapter))
sys/dev/hptrr/himfuncs.h
92
_HIM_INTERFACE(void, resume, (void *adapter))
sys/dev/hptrr/himfuncs.h
93
_HIM_INTERFACE(void, release_adapter, (void *adapter))
sys/dev/hptrr/himfuncs.h
96
_HIM_INTERFACE(HPT_BOOL, verify_adapter, (void *adapter))
sys/dev/hptrr/himfuncs.h
99
_HIM_INTERFACE(void, ioctl, (void * adapter, struct _IOCTL_ARG *arg))
sys/dev/hptrr/ldm.h
268
PLDM_ADAPTER adapter;
sys/dev/hptrr/ldm.h
410
HPT_BOOL ldm_register_adapter(PLDM_ADAPTER adapter);
sys/dev/hptrr/ldm.h
437
#define ldm_initialize_vbus(vbus, adapter) ldm_initialize_vbus_async(vbus, adapter, 0)
sys/dev/ips/ips_disk.c
130
device_t adapter;
sys/dev/ips/ips_disk.c
138
adapter = device_get_parent(dev);
sys/dev/ips/ips_disk.c
140
dsc->sc = device_get_softc(adapter);
sys/dev/mfi/mfi.c
3167
int adapter;
sys/dev/mfi/mfi.c
3169
adapter = ioc->mfi_adapter_no;
sys/dev/mfi/mfi.c
3170
if (device_get_unit(sc->mfi_dev) == 0 && adapter != 0) {
sys/dev/mfi/mfi.c
3172
sc = devclass_get_softc(devclass, adapter);
sys/dev/mfi/mfi.c
3395
int adapter;
sys/dev/mfi/mfi.c
3404
adapter = l_ioc.lioc_adapter_no;
sys/dev/mfi/mfi.c
3405
sc = devclass_get_softc(devclass, adapter);
sys/dev/mfi/mfi.c
3416
int adapter;
sys/dev/mfi/mfi.c
3425
adapter = l_aen.laen_adapter_no;
sys/dev/mfi/mfi.c
3426
sc = devclass_get_softc(devclass, adapter);
sys/dev/mlx4/mlx4_core/fw.h
247
int mlx4_QUERY_ADAPTER(struct mlx4_dev *dev, struct mlx4_adapter *adapter);
sys/dev/mlx4/mlx4_core/mlx4_fw.c
1789
int mlx4_QUERY_ADAPTER(struct mlx4_dev *dev, struct mlx4_adapter *adapter)
sys/dev/mlx4/mlx4_core/mlx4_fw.c
1809
MLX4_GET(adapter->inta_pin, outbox, QUERY_ADAPTER_INTA_PIN_OFFSET);
sys/dev/mlx4/mlx4_core/mlx4_fw.c
1812
adapter->board_id);
sys/dev/mlx4/mlx4_core/mlx4_main.c
2217
struct mlx4_adapter adapter;
sys/dev/mlx4/mlx4_core/mlx4_main.c
2372
err = mlx4_QUERY_ADAPTER(dev, &adapter);
sys/dev/mlx4/mlx4_core/mlx4_main.c
2386
priv->eq_table.inta_pin = adapter.inta_pin;
sys/dev/mlx4/mlx4_core/mlx4_main.c
2387
memcpy(dev->board_id, adapter.board_id, sizeof dev->board_id);
sys/dev/mthca/mthca_cmd.c
1270
struct mthca_adapter *adapter)
sys/dev/mthca/mthca_cmd.c
1295
MTHCA_GET(adapter->vendor_id, outbox,
sys/dev/mthca/mthca_cmd.c
1297
MTHCA_GET(adapter->device_id, outbox,
sys/dev/mthca/mthca_cmd.c
1299
MTHCA_GET(adapter->revision_id, outbox,
sys/dev/mthca/mthca_cmd.c
1302
MTHCA_GET(adapter->inta_pin, outbox, QUERY_ADAPTER_INTA_PIN_OFFSET);
sys/dev/mthca/mthca_cmd.c
1305
adapter->board_id);
sys/dev/mthca/mthca_cmd.h
267
struct mthca_adapter *adapter);
sys/dev/mthca/mthca_main.c
667
struct mthca_adapter adapter;
sys/dev/mthca/mthca_main.c
677
err = mthca_QUERY_ADAPTER(mdev, &adapter);
sys/dev/mthca/mthca_main.c
683
mdev->eq_table.inta_pin = adapter.inta_pin;
sys/dev/mthca/mthca_main.c
685
mdev->rev_id = adapter.revision_id;
sys/dev/mthca/mthca_main.c
686
memcpy(mdev->board_id, adapter.board_id, sizeof mdev->board_id);
sys/dev/netmap/if_re_netmap.h
50
struct rl_softc *adapter = if_getsoftc(ifp);
sys/dev/netmap/if_re_netmap.h
52
RL_LOCK(adapter);
sys/dev/netmap/if_re_netmap.h
53
re_stop(adapter); /* also clears IFF_DRV_RUNNING */
sys/dev/netmap/if_re_netmap.h
59
re_init_locked(adapter); /* also enables intr */
sys/dev/netmap/if_re_netmap.h
60
RL_UNLOCK(adapter);
sys/dev/netmap/netmap_kern.h
1817
dma_unmap_single(&adapter->pdev->dev, buffer_info->dma,
sys/dev/netmap/netmap_kern.h
1819
buffer_info->dma = dma_map_single(&adapter->pdev->dev,
sys/dev/netmap/netmap_kern.h
1822
if (dma_mapping_error(&adapter->pdev->dev, buffer_info->dma)) {
sys/dev/sume/adapter.h
167
struct sume_adapter *adapter;
sys/dev/sume/adapter.h
43
#define SUME_LOCK(adapter) mtx_lock(&adapter->lock);
sys/dev/sume/adapter.h
44
#define SUME_UNLOCK(adapter) mtx_unlock(&adapter->lock);
sys/dev/sume/if_sume.c
1010
struct sume_adapter *adapter = nf_priv->adapter;
sys/dev/sume/if_sume.c
1011
struct riffa_chnl_dir *send = adapter->send[SUME_RIFFA_CHANNEL_DATA];
sys/dev/sume/if_sume.c
1016
KASSERT(mtx_owned(&adapter->lock), ("SUME lock not owned"));
sys/dev/sume/if_sume.c
1028
if (adapter->sume_debug)
sys/dev/sume/if_sume.c
1029
device_printf(adapter->dev, "sending %d bytes to %s%d\n", plen,
sys/dev/sume/if_sume.c
1040
adapter->sg_buf_size) {
sys/dev/sume/if_sume.c
1041
device_printf(adapter->dev, "packet too big for bounce buffer "
sys/dev/sume/if_sume.c
1067
write_reg(adapter, RIFFA_CHNL_REG(SUME_RIFFA_CHANNEL_DATA,
sys/dev/sume/if_sume.c
1069
write_reg(adapter, RIFFA_CHNL_REG(SUME_RIFFA_CHANNEL_DATA,
sys/dev/sume/if_sume.c
1073
sume_fill_bb_desc(adapter, send, SUME_RIFFA_LEN(send->len));
sys/dev/sume/if_sume.c
1079
write_reg(adapter, RIFFA_CHNL_REG(SUME_RIFFA_CHANNEL_DATA,
sys/dev/sume/if_sume.c
1082
write_reg(adapter, RIFFA_CHNL_REG(SUME_RIFFA_CHANNEL_DATA,
sys/dev/sume/if_sume.c
1085
write_reg(adapter, RIFFA_CHNL_REG(SUME_RIFFA_CHANNEL_DATA,
sys/dev/sume/if_sume.c
1097
adapter->last_ifc = nf_priv->port;
sys/dev/sume/if_sume.c
1100
adapter->wd_counter = 0;
sys/dev/sume/if_sume.c
1109
struct sume_adapter *adapter = nf_priv->adapter;
sys/dev/sume/if_sume.c
1111
if (!adapter->running || !(if_getflags(ifp) & IFF_UP))
sys/dev/sume/if_sume.c
1114
SUME_LOCK(adapter);
sys/dev/sume/if_sume.c
1115
if (adapter->send[SUME_RIFFA_CHANNEL_DATA]->state ==
sys/dev/sume/if_sume.c
1118
SUME_UNLOCK(adapter);
sys/dev/sume/if_sume.c
1126
check_tx_queues(struct sume_adapter *adapter)
sys/dev/sume/if_sume.c
1130
KASSERT(mtx_owned(&adapter->lock), ("SUME lock not owned"));
sys/dev/sume/if_sume.c
1132
last_ifc = adapter->last_ifc;
sys/dev/sume/if_sume.c
1136
if_t ifp = adapter->ifp[i % SUME_NPORTS];
sys/dev/sume/if_sume.c
1147
sume_ifp_alloc(struct sume_adapter *adapter, uint32_t port)
sys/dev/sume/if_sume.c
1154
adapter->ifp[port] = ifp;
sys/dev/sume/if_sume.c
1157
nf_priv->adapter = adapter;
sys/dev/sume/if_sume.c
1193
sume_probe_riffa_buffer(const struct sume_adapter *adapter,
sys/dev/sume/if_sume.c
1199
device_t dev = adapter->dev;
sys/dev/sume/if_sume.c
1216
adapter->sg_buf_size,
sys/dev/sume/if_sume.c
1218
adapter->sg_buf_size,
sys/dev/sume/if_sume.c
1239
bzero(rp[ch]->buf_addr, adapter->sg_buf_size);
sys/dev/sume/if_sume.c
1242
rp[ch]->buf_addr, adapter->sg_buf_size, callback_dma,
sys/dev/sume/if_sume.c
1260
sume_probe_riffa_buffers(struct sume_adapter *adapter)
sys/dev/sume/if_sume.c
1264
error = sume_probe_riffa_buffer(adapter, &adapter->recv, "recv");
sys/dev/sume/if_sume.c
1268
error = sume_probe_riffa_buffer(adapter, &adapter->send, "send");
sys/dev/sume/if_sume.c
1274
sume_sysctl_init(struct sume_adapter *adapter)
sys/dev/sume/if_sume.c
1276
device_t dev = adapter->dev;
sys/dev/sume/if_sume.c
1291
&adapter->sume_debug, 0, "debug int leaf");
sys/dev/sume/if_sume.c
1295
CTLFLAG_RD, &adapter->packets_err, 0, "rx errors");
sys/dev/sume/if_sume.c
1297
CTLFLAG_RD, &adapter->bytes_err, 0, "rx error bytes");
sys/dev/sume/if_sume.c
1300
if_t ifp = adapter->ifp[i];
sys/dev/sume/if_sume.c
1360
struct sume_adapter *adapter = arg;
sys/dev/sume/if_sume.c
1362
if (!adapter->running)
sys/dev/sume/if_sume.c
1365
taskqueue_enqueue(adapter->tq, &adapter->stat_task);
sys/dev/sume/if_sume.c
1367
SUME_LOCK(adapter);
sys/dev/sume/if_sume.c
1368
if (adapter->send[SUME_RIFFA_CHANNEL_DATA]->state !=
sys/dev/sume/if_sume.c
1369
SUME_RIFFA_CHAN_STATE_IDLE && ++adapter->wd_counter >= 3) {
sys/dev/sume/if_sume.c
1371
device_printf(adapter->dev, "TX stuck, resetting adapter.\n");
sys/dev/sume/if_sume.c
1372
read_reg(adapter, RIFFA_INFO_REG_OFF);
sys/dev/sume/if_sume.c
1374
adapter->send[SUME_RIFFA_CHANNEL_DATA]->state =
sys/dev/sume/if_sume.c
1376
adapter->wd_counter = 0;
sys/dev/sume/if_sume.c
1378
check_tx_queues(adapter);
sys/dev/sume/if_sume.c
1380
SUME_UNLOCK(adapter);
sys/dev/sume/if_sume.c
1382
callout_reset(&adapter->timer, 1 * hz, sume_local_timer, adapter);
sys/dev/sume/if_sume.c
1388
struct sume_adapter *adapter = context;
sys/dev/sume/if_sume.c
1392
if_t ifp = adapter->ifp[i];
sys/dev/sume/if_sume.c
1420
struct sume_adapter *adapter = device_get_softc(dev);
sys/dev/sume/if_sume.c
1421
adapter->dev = dev;
sys/dev/sume/if_sume.c
1424
mtx_init(&adapter->lock, "Global lock", NULL, MTX_DEF);
sys/dev/sume/if_sume.c
1426
adapter->running = 0;
sys/dev/sume/if_sume.c
1429
error = sume_probe_riffa_pci(adapter);
sys/dev/sume/if_sume.c
1433
error = sume_probe_riffa_buffers(adapter);
sys/dev/sume/if_sume.c
1439
sume_ifp_alloc(adapter, i);
sys/dev/sume/if_sume.c
1442
sume_sysctl_init(adapter);
sys/dev/sume/if_sume.c
1445
read_reg(adapter, RIFFA_INFO_REG_OFF);
sys/dev/sume/if_sume.c
1448
adapter->running = 1;
sys/dev/sume/if_sume.c
1450
callout_init(&adapter->timer, 1);
sys/dev/sume/if_sume.c
1451
TASK_INIT(&adapter->stat_task, 0, sume_get_stats, adapter);
sys/dev/sume/if_sume.c
1453
adapter->tq = taskqueue_create("sume_stats", M_NOWAIT,
sys/dev/sume/if_sume.c
1454
taskqueue_thread_enqueue, &adapter->tq);
sys/dev/sume/if_sume.c
1455
taskqueue_start_threads(&adapter->tq, 1, PI_NET, "%s stattaskq",
sys/dev/sume/if_sume.c
1456
device_get_nameunit(adapter->dev));
sys/dev/sume/if_sume.c
1458
callout_reset(&adapter->timer, 1 * hz, sume_local_timer, adapter);
sys/dev/sume/if_sume.c
1469
sume_remove_riffa_buffer(const struct sume_adapter *adapter,
sys/dev/sume/if_sume.c
1489
sume_remove_riffa_buffers(struct sume_adapter *adapter)
sys/dev/sume/if_sume.c
1491
if (adapter->send != NULL) {
sys/dev/sume/if_sume.c
1492
sume_remove_riffa_buffer(adapter, adapter->send);
sys/dev/sume/if_sume.c
1493
free(adapter->send, M_SUME);
sys/dev/sume/if_sume.c
1494
adapter->send = NULL;
sys/dev/sume/if_sume.c
1496
if (adapter->recv != NULL) {
sys/dev/sume/if_sume.c
1497
sume_remove_riffa_buffer(adapter, adapter->recv);
sys/dev/sume/if_sume.c
1498
free(adapter->recv, M_SUME);
sys/dev/sume/if_sume.c
1499
adapter->recv = NULL;
sys/dev/sume/if_sume.c
1506
struct sume_adapter *adapter = device_get_softc(dev);
sys/dev/sume/if_sume.c
1510
KASSERT(mtx_initialized(&adapter->lock), ("SUME mutex not "
sys/dev/sume/if_sume.c
1512
adapter->running = 0;
sys/dev/sume/if_sume.c
1515
callout_drain(&adapter->timer);
sys/dev/sume/if_sume.c
1517
if (adapter->tq) {
sys/dev/sume/if_sume.c
1518
taskqueue_drain(adapter->tq, &adapter->stat_task);
sys/dev/sume/if_sume.c
1519
taskqueue_free(adapter->tq);
sys/dev/sume/if_sume.c
1523
if_t ifp = adapter->ifp[i];
sys/dev/sume/if_sume.c
1542
sume_remove_riffa_buffers(adapter);
sys/dev/sume/if_sume.c
1544
if (adapter->irq.tag)
sys/dev/sume/if_sume.c
1545
bus_teardown_intr(dev, adapter->irq.res, adapter->irq.tag);
sys/dev/sume/if_sume.c
1546
if (adapter->irq.res)
sys/dev/sume/if_sume.c
1547
bus_release_resource(dev, SYS_RES_IRQ, adapter->irq.rid,
sys/dev/sume/if_sume.c
1548
adapter->irq.res);
sys/dev/sume/if_sume.c
1552
if (adapter->bar0_addr)
sys/dev/sume/if_sume.c
1553
bus_release_resource(dev, SYS_RES_MEMORY, adapter->rid,
sys/dev/sume/if_sume.c
1554
adapter->bar0_addr);
sys/dev/sume/if_sume.c
1556
mtx_destroy(&adapter->lock);
sys/dev/sume/if_sume.c
166
read_reg(struct sume_adapter *adapter, int offset)
sys/dev/sume/if_sume.c
169
return (bus_space_read_4(adapter->bt, adapter->bh, offset << 2));
sys/dev/sume/if_sume.c
173
write_reg(struct sume_adapter *adapter, int offset, uint32_t val)
sys/dev/sume/if_sume.c
176
bus_space_write_4(adapter->bt, adapter->bh, offset << 2, val);
sys/dev/sume/if_sume.c
210
sume_rx_build_mbuf(struct sume_adapter *adapter, uint32_t len)
sys/dev/sume/if_sume.c
217
device_t dev = adapter->dev;
sys/dev/sume/if_sume.c
219
adapter->recv[SUME_RIFFA_CHANNEL_DATA]->buf_addr +
sys/dev/sume/if_sume.c
226
adapter->packets_err++;
sys/dev/sume/if_sume.c
227
adapter->bytes_err += len;
sys/dev/sume/if_sume.c
248
adapter->packets_err++;
sys/dev/sume/if_sume.c
249
adapter->bytes_err += plen;
sys/dev/sume/if_sume.c
252
ifp = adapter->ifp[np];
sys/dev/sume/if_sume.c
264
if (adapter->sume_debug)
sys/dev/sume/if_sume.c
269
adapter->packets_err++;
sys/dev/sume/if_sume.c
270
adapter->bytes_err += plen;
sys/dev/sume/if_sume.c
319
struct sume_adapter *adapter = arg;
sys/dev/sume/if_sume.c
322
device_t dev = adapter->dev;
sys/dev/sume/if_sume.c
327
SUME_LOCK(adapter);
sys/dev/sume/if_sume.c
329
vect0 = read_reg(adapter, RIFFA_IRQ_REG0_OFF);
sys/dev/sume/if_sume.c
331
SUME_UNLOCK(adapter);
sys/dev/sume/if_sume.c
341
send = adapter->send[ch];
sys/dev/sume/if_sume.c
342
recv = adapter->recv[ch];
sys/dev/sume/if_sume.c
347
if (adapter->sume_debug)
sys/dev/sume/if_sume.c
376
len = read_reg(adapter, RIFFA_CHNL_REG(ch,
sys/dev/sume/if_sume.c
381
check_tx_queues(adapter);
sys/dev/sume/if_sume.c
410
if (adapter->sume_debug)
sys/dev/sume/if_sume.c
429
recv->offlast = read_reg(adapter,
sys/dev/sume/if_sume.c
432
recv->len = read_reg(adapter, RIFFA_CHNL_REG(ch,
sys/dev/sume/if_sume.c
445
adapter->sg_buf_size)
sys/dev/sume/if_sume.c
450
sume_fill_bb_desc(adapter, recv,
sys/dev/sume/if_sume.c
456
write_reg(adapter, RIFFA_CHNL_REG(ch,
sys/dev/sume/if_sume.c
459
write_reg(adapter, RIFFA_CHNL_REG(ch,
sys/dev/sume/if_sume.c
462
write_reg(adapter, RIFFA_CHNL_REG(ch,
sys/dev/sume/if_sume.c
493
len = read_reg(adapter, RIFFA_CHNL_REG(ch,
sys/dev/sume/if_sume.c
498
m = sume_rx_build_mbuf(adapter,
sys/dev/sume/if_sume.c
530
read_reg(adapter, RIFFA_CHNL_REG(ch,
sys/dev/sume/if_sume.c
536
SUME_UNLOCK(adapter);
sys/dev/sume/if_sume.c
551
struct sume_adapter *adapter = arg;
sys/dev/sume/if_sume.c
553
if (adapter->running == 0)
sys/dev/sume/if_sume.c
560
sume_probe_riffa_pci(struct sume_adapter *adapter)
sys/dev/sume/if_sume.c
562
device_t dev = adapter->dev;
sys/dev/sume/if_sume.c
568
adapter->rid = PCIR_BAR(0);
sys/dev/sume/if_sume.c
569
adapter->bar0_addr = bus_alloc_resource_any(dev, SYS_RES_MEMORY,
sys/dev/sume/if_sume.c
570
&adapter->rid, RF_ACTIVE);
sys/dev/sume/if_sume.c
571
if (adapter->bar0_addr == NULL) {
sys/dev/sume/if_sume.c
576
adapter->bt = rman_get_bustag(adapter->bar0_addr);
sys/dev/sume/if_sume.c
577
adapter->bh = rman_get_bushandle(adapter->bar0_addr);
sys/dev/sume/if_sume.c
578
adapter->bar0_len = rman_get_size(adapter->bar0_addr);
sys/dev/sume/if_sume.c
579
if (adapter->bar0_len != 1024) {
sys/dev/sume/if_sume.c
581
adapter->bar0_len);
sys/dev/sume/if_sume.c
593
adapter->irq.rid = 1; /* Should be 1, thus says pci_alloc_msi() */
sys/dev/sume/if_sume.c
594
adapter->irq.res = bus_alloc_resource_any(dev, SYS_RES_IRQ,
sys/dev/sume/if_sume.c
595
&adapter->irq.rid, RF_SHAREABLE | RF_ACTIVE);
sys/dev/sume/if_sume.c
596
if (adapter->irq.res == NULL) {
sys/dev/sume/if_sume.c
602
error = bus_setup_intr(dev, adapter->irq.res, INTR_MPSAFE |
sys/dev/sume/if_sume.c
603
INTR_TYPE_NET, sume_intr_filter, sume_intr_handler, adapter,
sys/dev/sume/if_sume.c
604
&adapter->irq.tag);
sys/dev/sume/if_sume.c
607
" %s: %d\n", adapter->irq.rid, "SUME_INTR", error);
sys/dev/sume/if_sume.c
628
reg = read_reg(adapter, RIFFA_INFO_REG_OFF);
sys/dev/sume/if_sume.c
629
adapter->num_sg = RIFFA_SG_ELEMS * ((reg >> 19) & 0xf);
sys/dev/sume/if_sume.c
630
adapter->sg_buf_size = RIFFA_SG_BUF_SIZE * ((reg >> 19) & 0xf);
sys/dev/sume/if_sume.c
685
sume_fill_bb_desc(struct sume_adapter *adapter, struct riffa_chnl_dir *p,
sys/dev/sume/if_sume.c
697
sume_modreg_write_locked(struct sume_adapter *adapter)
sys/dev/sume/if_sume.c
699
struct riffa_chnl_dir *send = adapter->send[SUME_RIFFA_CHANNEL_REG];
sys/dev/sume/if_sume.c
702
write_reg(adapter, RIFFA_CHNL_REG(SUME_RIFFA_CHANNEL_REG,
sys/dev/sume/if_sume.c
704
write_reg(adapter, RIFFA_CHNL_REG(SUME_RIFFA_CHANNEL_REG,
sys/dev/sume/if_sume.c
708
sume_fill_bb_desc(adapter, send, SUME_RIFFA_LEN(send->len));
sys/dev/sume/if_sume.c
716
write_reg(adapter, RIFFA_CHNL_REG(SUME_RIFFA_CHANNEL_REG,
sys/dev/sume/if_sume.c
719
write_reg(adapter, RIFFA_CHNL_REG(SUME_RIFFA_CHANNEL_REG,
sys/dev/sume/if_sume.c
722
write_reg(adapter, RIFFA_CHNL_REG(SUME_RIFFA_CHANNEL_REG,
sys/dev/sume/if_sume.c
740
struct sume_adapter *adapter = nf_priv->adapter;
sys/dev/sume/if_sume.c
741
struct riffa_chnl_dir *send = adapter->send[SUME_RIFFA_CHANNEL_REG];
sys/dev/sume/if_sume.c
752
SUME_LOCK(adapter);
sys/dev/sume/if_sume.c
755
SUME_UNLOCK(adapter);
sys/dev/sume/if_sume.c
768
error = sume_modreg_write_locked(adapter);
sys/dev/sume/if_sume.c
770
SUME_UNLOCK(adapter);
sys/dev/sume/if_sume.c
776
error = msleep(&send->event, &adapter->lock, 0,
sys/dev/sume/if_sume.c
797
SUME_UNLOCK(adapter);
sys/dev/sume/if_sume.c
806
struct sume_adapter *adapter = nf_priv->adapter;
sys/dev/sume/if_sume.c
807
struct riffa_chnl_dir *recv = adapter->recv[SUME_RIFFA_CHANNEL_REG];
sys/dev/sume/if_sume.c
808
struct riffa_chnl_dir *send = adapter->send[SUME_RIFFA_CHANNEL_REG];
sys/dev/sume/if_sume.c
818
SUME_LOCK(adapter);
sys/dev/sume/if_sume.c
827
error = msleep(&recv->event, &adapter->lock, 0,
sys/dev/sume/if_sume.c
831
SUME_UNLOCK(adapter);
sys/dev/sume/if_sume.c
832
device_printf(adapter->dev, "wait error: %d\n", error);
sys/dev/sume/if_sume.c
848
device_printf(adapter->dev, "rtag error: 0x%08x 0x%08x\n",
sys/dev/sume/if_sume.c
857
SUME_UNLOCK(adapter);
sys/dev/sume/if_sume.c
949
struct sume_adapter *adapter = nf_priv->adapter;
sys/dev/sume/if_sume.c
964
if (adapter->sume_debug)
sys/dev/sume/if_sume.c
965
device_printf(adapter->dev, "port %d link state "
sys/dev/sume/if_sume.c
970
if (adapter->sume_debug)
sys/dev/sume/if_sume.c
971
device_printf(adapter->dev, "port %d link state "
sys/dev/syscons/syscons.c
3245
if (sc->adapter >= 0) {
sys/dev/syscons/syscons.c
3246
vid_release(sc->adp, (void *)&sc->adapter);
sys/dev/syscons/syscons.c
3263
sc->adapter = vid_allocate("*", unit, (void *)&sc->adapter);
sys/dev/syscons/syscons.c
3264
sc->adp = vid_get_adapter(sc->adapter);
sys/dev/syscons/syscons.c
3457
if (sc->adapter >= 0)
sys/dev/syscons/syscons.c
3458
vid_release(sc->adp, &sc->adapter);
sys/dev/syscons/syscons.c
3483
sc->adapter = -1;
sys/dev/syscons/syscons.c
634
if (sc->adapter >= 0)
sys/dev/syscons/syscons.c
635
printf(" fb%d", sc->adapter);
sys/dev/syscons/syscons.h
212
int adapter;
sys/dev/thunderbolt/router.c
368
tb_config_read(struct router_softc *sc, u_int space, u_int adapter,
sys/dev/thunderbolt/router.c
374
if ((error = _tb_config_read(sc, space, adapter, offset, dwlen, buf,
sys/dev/thunderbolt/router.c
400
tb_config_read_polled(struct router_softc *sc, u_int space, u_int adapter,
sys/dev/thunderbolt/router.c
406
if ((error = _tb_config_read(sc, space, adapter, offset, dwlen, buf,
sys/dev/thunderbolt/router.c
446
tb_config_read_async(struct router_softc *sc, u_int space, u_int adapter,
sys/dev/thunderbolt/router.c
452
if ((error = _tb_config_read(sc, space, adapter, offset, dwlen, buf,
sys/dev/thunderbolt/router.c
462
_tb_config_read(struct router_softc *sc, u_int space, u_int adapter,
sys/dev/thunderbolt/router.c
477
msg->addr_attrs = TB_CONFIG_ADDR(0, space, adapter, dwlen, offset);
sys/dev/thunderbolt/router.c
490
tb_config_write(struct router_softc *sc, u_int space, u_int adapter,
sys/dev/thunderbolt/router_var.h
109
#define TB_CONFIG_ADDR(seq, space, adapter, dwlen, offset) \
sys/dev/thunderbolt/router_var.h
111
(adapter << TB_CFG_ADAPTER_SHIFT) | (dwlen << TB_CFG_SIZE_SHIFT) | \
sys/isa/syscons_isa.c
117
sc->adapter = -1;
sys/powerpc/powerpc/sc_machdep.c
69
sc->adapter = -1;
usr.sbin/mfiutil/mfi_show.c
138
MFI_COMMAND(show, adapter, show_adapter);
usr.sbin/mpsutil/mps_show.c
230
MPS_COMMAND(show, adapter, show_adapter, "", "display controller information")
usr.sbin/mptutil/mpt_show.c
192
MPT_COMMAND(show, adapter, show_adapter);