Symbol: igb
usr/src/uts/common/io/igb/e1000_osdep.h
182
struct igb *igb;
usr/src/uts/common/io/igb/igb_buf.c
125
igb_alloc_dma(igb_t *igb)
usr/src/uts/common/io/igb/igb_buf.c
132
for (i = 0; i < igb->num_rx_rings; i++) {
usr/src/uts/common/io/igb/igb_buf.c
136
rx_ring = &igb->rx_rings[i];
usr/src/uts/common/io/igb/igb_buf.c
146
for (i = 0; i < igb->num_tx_rings; i++) {
usr/src/uts/common/io/igb/igb_buf.c
150
tx_ring = &igb->tx_rings[i];
usr/src/uts/common/io/igb/igb_buf.c
162
igb_free_dma(igb);
usr/src/uts/common/io/igb/igb_buf.c
172
igb_free_dma(igb_t *igb)
usr/src/uts/common/io/igb/igb_buf.c
182
for (i = 0; i < igb->num_rx_rings; i++) {
usr/src/uts/common/io/igb/igb_buf.c
183
rx_ring = &igb->rx_rings[i];
usr/src/uts/common/io/igb/igb_buf.c
193
for (i = 0; i < igb->num_tx_rings; i++) {
usr/src/uts/common/io/igb/igb_buf.c
194
tx_ring = &igb->tx_rings[i];
usr/src/uts/common/io/igb/igb_buf.c
212
igb_t *igb = tx_ring->igb;
usr/src/uts/common/io/igb/igb_buf.c
214
devinfo = igb->dip;
usr/src/uts/common/io/igb/igb_buf.c
221
if (igb->tx_head_wb_enable) {
usr/src/uts/common/io/igb/igb_buf.c
234
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_buf.c
252
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_buf.c
279
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_buf.c
333
igb_t *igb = rx_ring->igb;
usr/src/uts/common/io/igb/igb_buf.c
342
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_buf.c
349
MUTEX_DRIVER, DDI_INTR_PRI(igb->intr_pri));
usr/src/uts/common/io/igb/igb_buf.c
351
rx_data->ring_size = igb->rx_ring_size;
usr/src/uts/common/io/igb/igb_buf.c
352
rx_data->free_list_size = igb->rx_ring_size;
usr/src/uts/common/io/igb/igb_buf.c
365
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_buf.c
377
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_buf.c
392
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_buf.c
450
igb_t *igb = rx_data->rx_ring->igb;
usr/src/uts/common/io/igb/igb_buf.c
452
devinfo = igb->dip;
usr/src/uts/common/io/igb/igb_buf.c
464
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_buf.c
481
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_buf.c
507
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_buf.c
562
igb_alloc_dma_buffer(igb_t *igb,
usr/src/uts/common/io/igb/igb_buf.c
566
dev_info_t *devinfo = igb->dip;
usr/src/uts/common/io/igb/igb_buf.c
577
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_buf.c
594
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_buf.c
615
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_buf.c
668
igb_t *igb = tx_ring->igb;
usr/src/uts/common/io/igb/igb_buf.c
669
dev_info_t *devinfo = igb->dip;
usr/src/uts/common/io/igb/igb_buf.c
678
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_buf.c
694
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_buf.c
715
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_buf.c
740
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_buf.c
751
ret = igb_alloc_dma_buffer(igb,
usr/src/uts/common/io/igb/igb_buf.c
752
tx_buf, igb->tx_buf_size);
usr/src/uts/common/io/igb/igb_buf.c
758
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_buf.c
834
igb_t *igb = rx_data->rx_ring->igb;
usr/src/uts/common/io/igb/igb_buf.c
857
ret = igb_alloc_dma_buffer(igb,
usr/src/uts/common/io/igb/igb_buf.c
858
rx_buf, igb->rx_buf_size);
usr/src/uts/common/io/igb/igb_buf.c
861
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_buf.c
895
igb_t *igb;
usr/src/uts/common/io/igb/igb_buf.c
901
igb = rx_data->rx_ring->igb;
usr/src/uts/common/io/igb/igb_buf.c
903
mutex_enter(&igb->rx_pending_lock);
usr/src/uts/common/io/igb/igb_buf.c
920
atomic_inc_32(&igb->rcb_pending);
usr/src/uts/common/io/igb/igb_buf.c
924
mutex_exit(&igb->rx_pending_lock);
usr/src/uts/common/io/igb/igb_debug.c
100
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
103
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
109
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
112
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
115
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
118
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
121
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
124
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
127
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
133
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
135
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
138
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
141
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
144
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
151
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
157
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
159
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
162
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
165
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
168
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
175
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
181
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
183
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
186
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
189
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
192
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
199
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
204
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
209
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
215
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
217
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
223
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
225
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
231
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
237
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
239
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
242
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
245
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
248
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
251
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
254
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
257
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
262
if (ddi_dev_regsize(igb->dip, IGB_ADAPTER_MSIXTAB, &mem_size) !=
usr/src/uts/common/io/igb/igb_debug.c
264
igb_log(igb, IGB_LOG_INFO, "ddi_dev_regsize() failed");
usr/src/uts/common/io/igb/igb_debug.c
268
if ((ddi_regs_map_setup(igb->dip, IGB_ADAPTER_MSIXTAB, (caddr_t *)&base,
usr/src/uts/common/io/igb/igb_debug.c
270
igb_log(igb, IGB_LOG_INFO, "ddi_regs_map_setup() failed");
usr/src/uts/common/io/igb/igb_debug.c
274
igb_log(igb, IGB_LOG_INFO, "MSI-X Memory Space: "
usr/src/uts/common/io/igb/igb_debug.c
278
igb_log(igb, IGB_LOG_INFO, "MSI-X Table Entry(%d):", i);
usr/src/uts/common/io/igb/igb_debug.c
279
igb_log(igb, IGB_LOG_INFO, "lo_addr:\t%x",
usr/src/uts/common/io/igb/igb_debug.c
282
igb_log(igb, IGB_LOG_INFO, "up_addr:\t%x",
usr/src/uts/common/io/igb/igb_debug.c
285
igb_log(igb, IGB_LOG_INFO, "msg_data:\t%x",
usr/src/uts/common/io/igb/igb_debug.c
288
igb_log(igb, IGB_LOG_INFO, "vct_ctrl:\t%x",
usr/src/uts/common/io/igb/igb_debug.c
293
igb_log(igb, IGB_LOG_INFO, "MSI-X Pending Bits:\t%x",
usr/src/uts/common/io/igb/igb_debug.c
40
igb_t *igb = (igb_t *)arg;
usr/src/uts/common/io/igb/igb_debug.c
57
handle = igb->osdep.cfg_handle;
usr/src/uts/common/io/igb/igb_debug.c
59
igb_log(igb, IGB_LOG_INFO, "Begin dump PCI config space");
usr/src/uts/common/io/igb/igb_debug.c
61
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
64
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
67
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
70
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
73
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
76
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
79
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
82
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
85
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
88
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
91
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
94
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_debug.c
97
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_gld.c
1000
if (igb->hw.mac.ops.led_on != NULL &&
usr/src/uts/common/io/igb/igb_gld.c
1001
igb->hw.mac.ops.led_on != e1000_null_ops_generic) {
usr/src/uts/common/io/igb/igb_gld.c
1018
igb_t *igb = (igb_t *)arg;
usr/src/uts/common/io/igb/igb_gld.c
1019
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_gld.c
1026
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
1027
if (igb->igb_state & IGB_SUSPENDED) {
usr/src/uts/common/io/igb/igb_gld.c
1028
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
103
igb->stat_ecol += E1000_READ_REG(hw, E1000_ECOL);
usr/src/uts/common/io/igb/igb_gld.c
1032
if (igb->loopback_mode != IGB_LB_NONE && igb_param_locked(pr_num)) {
usr/src/uts/common/io/igb/igb_gld.c
1037
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
104
*val = igb->stat_ecol;
usr/src/uts/common/io/igb/igb_gld.c
1048
igb->param_en_1000fdx_cap = *(uint8_t *)pr_val;
usr/src/uts/common/io/igb/igb_gld.c
1049
igb->param_adv_1000fdx_cap = *(uint8_t *)pr_val;
usr/src/uts/common/io/igb/igb_gld.c
1056
igb->param_en_100fdx_cap = *(uint8_t *)pr_val;
usr/src/uts/common/io/igb/igb_gld.c
1057
igb->param_adv_100fdx_cap = *(uint8_t *)pr_val;
usr/src/uts/common/io/igb/igb_gld.c
1064
igb->param_en_100hdx_cap = *(uint8_t *)pr_val;
usr/src/uts/common/io/igb/igb_gld.c
1065
igb->param_adv_100hdx_cap = *(uint8_t *)pr_val;
usr/src/uts/common/io/igb/igb_gld.c
1072
igb->param_en_10fdx_cap = *(uint8_t *)pr_val;
usr/src/uts/common/io/igb/igb_gld.c
1073
igb->param_adv_10fdx_cap = *(uint8_t *)pr_val;
usr/src/uts/common/io/igb/igb_gld.c
108
igb->stat_colc += E1000_READ_REG(hw, E1000_COLC);
usr/src/uts/common/io/igb/igb_gld.c
1080
igb->param_en_10hdx_cap = *(uint8_t *)pr_val;
usr/src/uts/common/io/igb/igb_gld.c
1081
igb->param_adv_10hdx_cap = *(uint8_t *)pr_val;
usr/src/uts/common/io/igb/igb_gld.c
1088
igb->param_adv_autoneg_cap = *(uint8_t *)pr_val;
usr/src/uts/common/io/igb/igb_gld.c
109
*val = igb->stat_colc;
usr/src/uts/common/io/igb/igb_gld.c
1112
if (igb_setup_link(igb, B_TRUE) != IGB_SUCCESS)
usr/src/uts/common/io/igb/igb_gld.c
1133
if (igb->igb_state & IGB_STARTED) {
usr/src/uts/common/io/igb/igb_gld.c
1138
cur_mtu = igb->default_mtu;
usr/src/uts/common/io/igb/igb_gld.c
1150
err = mac_maxsdu_update(igb->mac_hdl, new_mtu);
usr/src/uts/common/io/igb/igb_gld.c
1152
igb->default_mtu = new_mtu;
usr/src/uts/common/io/igb/igb_gld.c
1153
igb->max_frame_size = igb->default_mtu +
usr/src/uts/common/io/igb/igb_gld.c
1159
rx_size = igb->max_frame_size + IPHDR_ALIGN_ROOM;
usr/src/uts/common/io/igb/igb_gld.c
1160
igb->rx_buf_size = ((rx_size >> 10) + ((rx_size &
usr/src/uts/common/io/igb/igb_gld.c
1166
tx_size = igb->max_frame_size;
usr/src/uts/common/io/igb/igb_gld.c
1167
igb->tx_buf_size = ((tx_size >> 10) + ((tx_size &
usr/src/uts/common/io/igb/igb_gld.c
1172
err = igb_set_priv_prop(igb, pr_name, pr_valsize, pr_val);
usr/src/uts/common/io/igb/igb_gld.c
1179
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
1181
if (igb_check_acc_handle(igb->osdep.reg_handle) != DDI_FM_OK) {
usr/src/uts/common/io/igb/igb_gld.c
1182
ddi_fm_service_impact(igb->dip, DDI_SERVICE_DEGRADED);
usr/src/uts/common/io/igb/igb_gld.c
1193
igb_t *igb = (igb_t *)arg;
usr/src/uts/common/io/igb/igb_gld.c
1194
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_gld.c
120
igb->stat_tor += (uint64_t)high_val << 32 | (uint64_t)low_val;
usr/src/uts/common/io/igb/igb_gld.c
1202
bcopy(&igb->link_duplex, pr_val, sizeof (link_duplex_t));
usr/src/uts/common/io/igb/igb_gld.c
1206
tmp = igb->link_speed * 1000000ull;
usr/src/uts/common/io/igb/igb_gld.c
121
*val = igb->stat_tor;
usr/src/uts/common/io/igb/igb_gld.c
1211
*(uint8_t *)pr_val = igb->param_adv_autoneg_cap;
usr/src/uts/common/io/igb/igb_gld.c
1232
*(uint8_t *)pr_val = igb->param_adv_1000fdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
1235
*(uint8_t *)pr_val = igb->param_en_1000fdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
1238
*(uint8_t *)pr_val = igb->param_adv_1000hdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
1241
*(uint8_t *)pr_val = igb->param_en_1000hdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
1244
*(uint8_t *)pr_val = igb->param_adv_100t4_cap;
usr/src/uts/common/io/igb/igb_gld.c
1247
*(uint8_t *)pr_val = igb->param_en_100t4_cap;
usr/src/uts/common/io/igb/igb_gld.c
125
igb->stat_tpr += E1000_READ_REG(hw, E1000_TPR);
usr/src/uts/common/io/igb/igb_gld.c
1250
*(uint8_t *)pr_val = igb->param_adv_100fdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
1253
*(uint8_t *)pr_val = igb->param_en_100fdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
1256
*(uint8_t *)pr_val = igb->param_adv_100hdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
1259
*(uint8_t *)pr_val = igb->param_en_100hdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
126
*val = igb->stat_tpr;
usr/src/uts/common/io/igb/igb_gld.c
1262
*(uint8_t *)pr_val = igb->param_adv_10fdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
1265
*(uint8_t *)pr_val = igb->param_en_10fdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
1268
*(uint8_t *)pr_val = igb->param_adv_10hdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
1271
*(uint8_t *)pr_val = igb->param_en_10hdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
1275
igb->link_speed);
usr/src/uts/common/io/igb/igb_gld.c
1278
err = igb_get_priv_prop(igb, pr_name, pr_valsize, pr_val);
usr/src/uts/common/io/igb/igb_gld.c
1291
igb_t *igb = (igb_t *)arg;
usr/src/uts/common/io/igb/igb_gld.c
1292
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_gld.c
137
igb->stat_tot += (uint64_t)high_val << 32 | (uint64_t)low_val;
usr/src/uts/common/io/igb/igb_gld.c
138
*val = igb->stat_tot;
usr/src/uts/common/io/igb/igb_gld.c
1383
igb_priv_prop_info(igb, pr_name, prh);
usr/src/uts/common/io/igb/igb_gld.c
1413
igb_set_priv_prop(igb_t *igb, const char *pr_name,
usr/src/uts/common/io/igb/igb_gld.c
1418
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_gld.c
142
igb->stat_tpt += E1000_READ_REG(hw, E1000_TPT);
usr/src/uts/common/io/igb/igb_gld.c
143
*val = igb->stat_tpt;
usr/src/uts/common/io/igb/igb_gld.c
1468
igb->tx_copy_thresh = (uint32_t)result;
usr/src/uts/common/io/igb/igb_gld.c
148
igb->stat_algnerrc += E1000_READ_REG(hw, E1000_ALGNERRC);
usr/src/uts/common/io/igb/igb_gld.c
1482
igb->tx_recycle_thresh = (uint32_t)result;
usr/src/uts/common/io/igb/igb_gld.c
149
*val = igb->stat_algnerrc;
usr/src/uts/common/io/igb/igb_gld.c
1496
igb->tx_overload_thresh = (uint32_t)result;
usr/src/uts/common/io/igb/igb_gld.c
1508
result > igb->tx_ring_size)
usr/src/uts/common/io/igb/igb_gld.c
1511
igb->tx_resched_thresh = (uint32_t)result;
usr/src/uts/common/io/igb/igb_gld.c
1525
igb->rx_copy_thresh = (uint32_t)result;
usr/src/uts/common/io/igb/igb_gld.c
153
igb->stat_crcerrs += E1000_READ_REG(hw, E1000_CRCERRS);
usr/src/uts/common/io/igb/igb_gld.c
1539
igb->rx_limit_per_intr = (uint32_t)result;
usr/src/uts/common/io/igb/igb_gld.c
154
*val = igb->stat_crcerrs;
usr/src/uts/common/io/igb/igb_gld.c
1550
if (result < igb->capab->min_intr_throttle ||
usr/src/uts/common/io/igb/igb_gld.c
1551
result > igb->capab->max_intr_throttle)
usr/src/uts/common/io/igb/igb_gld.c
1554
igb->intr_throttling[0] = (uint32_t)result;
usr/src/uts/common/io/igb/igb_gld.c
1557
igb->intr_throttling[i] =
usr/src/uts/common/io/igb/igb_gld.c
1558
igb->intr_throttling[0];
usr/src/uts/common/io/igb/igb_gld.c
1561
for (i = 0; i < igb->intr_cnt; i++)
usr/src/uts/common/io/igb/igb_gld.c
1563
igb->intr_throttling[i]);
usr/src/uts/common/io/igb/igb_gld.c
1571
igb_get_priv_prop(igb_t *igb, const char *pr_name, uint_t pr_valsize,
usr/src/uts/common/io/igb/igb_gld.c
1577
value = igb->param_adv_pause_cap;
usr/src/uts/common/io/igb/igb_gld.c
1579
value = igb->param_adv_asym_pause_cap;
usr/src/uts/common/io/igb/igb_gld.c
158
igb->stat_scc += E1000_READ_REG(hw, E1000_SCC);
usr/src/uts/common/io/igb/igb_gld.c
1585
switch (igb->hw.mac.type) {
usr/src/uts/common/io/igb/igb_gld.c
1588
value = !(igb->hw.dev_spec._82575.eee_disable);
usr/src/uts/common/io/igb/igb_gld.c
159
*val = igb->stat_scc;
usr/src/uts/common/io/igb/igb_gld.c
1594
value = igb->tx_copy_thresh;
usr/src/uts/common/io/igb/igb_gld.c
1596
value = igb->tx_recycle_thresh;
usr/src/uts/common/io/igb/igb_gld.c
1598
value = igb->tx_overload_thresh;
usr/src/uts/common/io/igb/igb_gld.c
1600
value = igb->tx_resched_thresh;
usr/src/uts/common/io/igb/igb_gld.c
1602
value = igb->rx_copy_thresh;
usr/src/uts/common/io/igb/igb_gld.c
1604
value = igb->rx_limit_per_intr;
usr/src/uts/common/io/igb/igb_gld.c
1606
value = igb->intr_throttling[0];
usr/src/uts/common/io/igb/igb_gld.c
1616
igb_priv_prop_info(igb_t *igb, const char *pr_name, mac_prop_info_handle_t prh)
usr/src/uts/common/io/igb/igb_gld.c
163
igb->stat_mcc += E1000_READ_REG(hw, E1000_MCC);
usr/src/uts/common/io/igb/igb_gld.c
1638
value = igb->capab->def_intr_throttle;
usr/src/uts/common/io/igb/igb_gld.c
164
*val = igb->stat_mcc;
usr/src/uts/common/io/igb/igb_gld.c
168
igb->stat_sec += E1000_READ_REG(hw, E1000_SEC);
usr/src/uts/common/io/igb/igb_gld.c
169
*val = igb->stat_sec;
usr/src/uts/common/io/igb/igb_gld.c
173
igb->stat_dc += E1000_READ_REG(hw, E1000_DC);
usr/src/uts/common/io/igb/igb_gld.c
174
*val = igb->stat_dc;
usr/src/uts/common/io/igb/igb_gld.c
178
igb->stat_latecol += E1000_READ_REG(hw, E1000_LATECOL);
usr/src/uts/common/io/igb/igb_gld.c
179
*val = igb->stat_latecol;
usr/src/uts/common/io/igb/igb_gld.c
183
igb->stat_ecol += E1000_READ_REG(hw, E1000_ECOL);
usr/src/uts/common/io/igb/igb_gld.c
184
*val = igb->stat_ecol;
usr/src/uts/common/io/igb/igb_gld.c
188
igb->stat_ecol += E1000_READ_REG(hw, E1000_ECOL);
usr/src/uts/common/io/igb/igb_gld.c
189
*val = igb->stat_ecol;
usr/src/uts/common/io/igb/igb_gld.c
193
igb->stat_cexterr += E1000_READ_REG(hw, E1000_CEXTERR);
usr/src/uts/common/io/igb/igb_gld.c
194
*val = igb->stat_cexterr;
usr/src/uts/common/io/igb/igb_gld.c
198
igb->stat_roc += E1000_READ_REG(hw, E1000_ROC);
usr/src/uts/common/io/igb/igb_gld.c
199
*val = igb->stat_roc;
usr/src/uts/common/io/igb/igb_gld.c
203
igb->stat_rxerrc += E1000_READ_REG(hw, E1000_RXERRC);
usr/src/uts/common/io/igb/igb_gld.c
204
*val = igb->stat_rxerrc;
usr/src/uts/common/io/igb/igb_gld.c
217
*val = (uint64_t)e1000_link_to_media(hw, igb->link_speed);
usr/src/uts/common/io/igb/igb_gld.c
221
*val = igb->param_1000fdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
225
*val = igb->param_1000hdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
229
*val = igb->param_100fdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
233
*val = igb->param_100hdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
237
*val = igb->param_10fdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
241
*val = igb->param_10hdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
245
*val = igb->param_asym_pause_cap;
usr/src/uts/common/io/igb/igb_gld.c
249
*val = igb->param_pause_cap;
usr/src/uts/common/io/igb/igb_gld.c
253
*val = igb->param_autoneg_cap;
usr/src/uts/common/io/igb/igb_gld.c
257
*val = igb->param_adv_1000fdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
261
*val = igb->param_adv_1000hdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
265
*val = igb->param_adv_100fdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
269
*val = igb->param_adv_100hdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
273
*val = igb->param_adv_10fdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
277
*val = igb->param_adv_10hdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
281
*val = igb->param_adv_asym_pause_cap;
usr/src/uts/common/io/igb/igb_gld.c
285
*val = igb->param_adv_pause_cap;
usr/src/uts/common/io/igb/igb_gld.c
293
*val = igb->param_lp_1000fdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
297
*val = igb->param_lp_1000hdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
301
*val = igb->param_lp_100fdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
305
*val = igb->param_lp_100hdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
309
*val = igb->param_lp_10fdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
313
*val = igb->param_lp_10hdx_cap;
usr/src/uts/common/io/igb/igb_gld.c
317
*val = igb->param_lp_asym_pause_cap;
usr/src/uts/common/io/igb/igb_gld.c
321
*val = igb->param_lp_pause_cap;
usr/src/uts/common/io/igb/igb_gld.c
325
*val = igb->param_lp_autoneg_cap;
usr/src/uts/common/io/igb/igb_gld.c
329
*val = igb->param_asym_pause_cap;
usr/src/uts/common/io/igb/igb_gld.c
333
*val = igb->param_pause_cap;
usr/src/uts/common/io/igb/igb_gld.c
341
*val = (igb->link_duplex == FULL_DUPLEX) ?
usr/src/uts/common/io/igb/igb_gld.c
346
igb->stat_ruc += E1000_READ_REG(hw, E1000_RUC);
usr/src/uts/common/io/igb/igb_gld.c
347
*val = igb->stat_ruc;
usr/src/uts/common/io/igb/igb_gld.c
351
*val = igb->param_rem_fault;
usr/src/uts/common/io/igb/igb_gld.c
355
*val = igb->param_adv_rem_fault;
usr/src/uts/common/io/igb/igb_gld.c
359
*val = igb->param_lp_rem_fault;
usr/src/uts/common/io/igb/igb_gld.c
363
igb->stat_rjc += E1000_READ_REG(hw, E1000_RJC);
usr/src/uts/common/io/igb/igb_gld.c
364
*val = igb->stat_rjc;
usr/src/uts/common/io/igb/igb_gld.c
368
*val = igb->param_100t4_cap;
usr/src/uts/common/io/igb/igb_gld.c
372
*val = igb->param_adv_100t4_cap;
usr/src/uts/common/io/igb/igb_gld.c
376
*val = igb->param_lp_100t4_cap;
usr/src/uts/common/io/igb/igb_gld.c
380
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
384
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
386
if (igb_check_acc_handle(igb->osdep.reg_handle) != DDI_FM_OK) {
usr/src/uts/common/io/igb/igb_gld.c
387
ddi_fm_service_impact(igb->dip, DDI_SERVICE_DEGRADED);
usr/src/uts/common/io/igb/igb_gld.c
40
igb_t *igb = (igb_t *)arg;
usr/src/uts/common/io/igb/igb_gld.c
401
igb_t *igb = (igb_t *)arg;
usr/src/uts/common/io/igb/igb_gld.c
403
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
405
if (igb->igb_state & IGB_SUSPENDED) {
usr/src/uts/common/io/igb/igb_gld.c
406
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
41
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_gld.c
410
if (igb_start(igb, B_TRUE) != IGB_SUCCESS) {
usr/src/uts/common/io/igb/igb_gld.c
411
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
415
atomic_or_32(&igb->igb_state, IGB_STARTED);
usr/src/uts/common/io/igb/igb_gld.c
417
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
422
igb_enable_watchdog_timer(igb);
usr/src/uts/common/io/igb/igb_gld.c
434
igb_t *igb = (igb_t *)arg;
usr/src/uts/common/io/igb/igb_gld.c
436
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
438
if (igb->igb_state & IGB_SUSPENDED) {
usr/src/uts/common/io/igb/igb_gld.c
439
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
443
atomic_and_32(&igb->igb_state, ~IGB_STARTED);
usr/src/uts/common/io/igb/igb_gld.c
445
igb_stop(igb, B_TRUE);
usr/src/uts/common/io/igb/igb_gld.c
447
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
45
igb_ks = (igb_stat_t *)igb->igb_ks->ks_data;
usr/src/uts/common/io/igb/igb_gld.c
452
igb_disable_watchdog_timer(igb);
usr/src/uts/common/io/igb/igb_gld.c
461
igb_t *igb = (igb_t *)arg;
usr/src/uts/common/io/igb/igb_gld.c
464
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
466
if (igb->igb_state & IGB_SUSPENDED) {
usr/src/uts/common/io/igb/igb_gld.c
467
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
47
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
471
reg_val = E1000_READ_REG(&igb->hw, E1000_RCTL);
usr/src/uts/common/io/igb/igb_gld.c
478
E1000_WRITE_REG(&igb->hw, E1000_RCTL, reg_val);
usr/src/uts/common/io/igb/igb_gld.c
480
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
482
if (igb_check_acc_handle(igb->osdep.reg_handle) != DDI_FM_OK) {
usr/src/uts/common/io/igb/igb_gld.c
483
ddi_fm_service_impact(igb->dip, DDI_SERVICE_DEGRADED);
usr/src/uts/common/io/igb/igb_gld.c
49
if (igb->igb_state & IGB_SUSPENDED) {
usr/src/uts/common/io/igb/igb_gld.c
497
igb_t *igb = (igb_t *)arg;
usr/src/uts/common/io/igb/igb_gld.c
50
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
500
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
502
if (igb->igb_state & IGB_SUSPENDED) {
usr/src/uts/common/io/igb/igb_gld.c
503
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
507
result = (add) ? igb_multicst_add(igb, mcst_addr)
usr/src/uts/common/io/igb/igb_gld.c
508
: igb_multicst_remove(igb, mcst_addr);
usr/src/uts/common/io/igb/igb_gld.c
510
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
522
igb_t *igb = (igb_t *)arg;
usr/src/uts/common/io/igb/igb_gld.c
529
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
530
if (igb->igb_state & IGB_SUSPENDED) {
usr/src/uts/common/io/igb/igb_gld.c
531
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
535
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
542
status = igb_loopback_ioctl(igb, iocp, mp);
usr/src/uts/common/io/igb/igb_gld.c
56
*val = igb->link_speed * 1000000ull;
usr/src/uts/common/io/igb/igb_gld.c
594
igb_t *igb = rx_group->igb;
usr/src/uts/common/io/igb/igb_gld.c
595
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_gld.c
598
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
60
igb->stat_mprc += E1000_READ_REG(hw, E1000_MPRC);
usr/src/uts/common/io/igb/igb_gld.c
600
if (igb->igb_state & IGB_SUSPENDED) {
usr/src/uts/common/io/igb/igb_gld.c
601
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
605
if (igb->unicst_avail == 0) {
usr/src/uts/common/io/igb/igb_gld.c
607
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
61
*val = igb->stat_mprc;
usr/src/uts/common/io/igb/igb_gld.c
618
if (igb->unicst_addr[rx_group->index].mac.set == 1) {
usr/src/uts/common/io/igb/igb_gld.c
623
for (i = igb->num_rx_groups; i < igb->unicst_total; i++) {
usr/src/uts/common/io/igb/igb_gld.c
624
if (igb->unicst_addr[i].mac.set == 0) {
usr/src/uts/common/io/igb/igb_gld.c
634
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
639
e1000_rar_set_vmdq(hw, mac_addr, slot, igb->vmdq_mode, rx_group->index);
usr/src/uts/common/io/igb/igb_gld.c
641
bcopy(mac_addr, igb->unicst_addr[slot].mac.addr, ETHERADDRL);
usr/src/uts/common/io/igb/igb_gld.c
642
igb->unicst_addr[slot].mac.group_index = rx_group->index;
usr/src/uts/common/io/igb/igb_gld.c
643
igb->unicst_addr[slot].mac.set = 1;
usr/src/uts/common/io/igb/igb_gld.c
644
igb->unicst_avail--;
usr/src/uts/common/io/igb/igb_gld.c
646
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
65
igb->stat_bprc += E1000_READ_REG(hw, E1000_BPRC);
usr/src/uts/common/io/igb/igb_gld.c
658
igb_t *igb = rx_group->igb;
usr/src/uts/common/io/igb/igb_gld.c
659
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_gld.c
66
*val = igb->stat_bprc;
usr/src/uts/common/io/igb/igb_gld.c
662
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
664
if (igb->igb_state & IGB_SUSPENDED) {
usr/src/uts/common/io/igb/igb_gld.c
665
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
669
slot = igb_unicst_find(igb, mac_addr);
usr/src/uts/common/io/igb/igb_gld.c
671
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
675
if (igb->unicst_addr[slot].mac.set == 0) {
usr/src/uts/common/io/igb/igb_gld.c
676
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
682
igb->unicst_addr[slot].mac.set = 0;
usr/src/uts/common/io/igb/igb_gld.c
683
igb->unicst_avail++;
usr/src/uts/common/io/igb/igb_gld.c
685
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_gld.c
697
igb_t *igb = rx_ring->igb;
usr/src/uts/common/io/igb/igb_gld.c
698
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_gld.c
70
igb->stat_mptc += E1000_READ_REG(hw, E1000_MPTC);
usr/src/uts/common/io/igb/igb_gld.c
701
if (igb->intr_type == DDI_INTR_TYPE_MSIX) {
usr/src/uts/common/io/igb/igb_gld.c
703
igb->eims_mask |= (E1000_EICR_RX_QUEUE0 << index);
usr/src/uts/common/io/igb/igb_gld.c
704
E1000_WRITE_REG(hw, E1000_EIMS, igb->eims_mask);
usr/src/uts/common/io/igb/igb_gld.c
705
E1000_WRITE_REG(hw, E1000_EIAC, igb->eims_mask);
usr/src/uts/common/io/igb/igb_gld.c
709
igb->ims_mask |= E1000_IMS_RXT0;
usr/src/uts/common/io/igb/igb_gld.c
71
*val = igb->stat_mptc;
usr/src/uts/common/io/igb/igb_gld.c
710
E1000_WRITE_REG(hw, E1000_IMS, igb->ims_mask);
usr/src/uts/common/io/igb/igb_gld.c
725
igb_t *igb = rx_ring->igb;
usr/src/uts/common/io/igb/igb_gld.c
726
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_gld.c
729
if (igb->intr_type == DDI_INTR_TYPE_MSIX) {
usr/src/uts/common/io/igb/igb_gld.c
731
igb->eims_mask &= ~(E1000_EICR_RX_QUEUE0 << index);
usr/src/uts/common/io/igb/igb_gld.c
734
E1000_WRITE_REG(hw, E1000_EIAC, igb->eims_mask);
usr/src/uts/common/io/igb/igb_gld.c
738
igb->ims_mask &= ~E1000_IMS_RXT0;
usr/src/uts/common/io/igb/igb_gld.c
75
igb->stat_bptc += E1000_READ_REG(hw, E1000_BPTC);
usr/src/uts/common/io/igb/igb_gld.c
751
igb_get_rx_ring_index(igb_t *igb, int gindex, int rindex)
usr/src/uts/common/io/igb/igb_gld.c
756
for (i = 0; i < igb->num_rx_rings; i++) {
usr/src/uts/common/io/igb/igb_gld.c
757
rx_ring = &igb->rx_rings[i];
usr/src/uts/common/io/igb/igb_gld.c
76
*val = igb->stat_bptc;
usr/src/uts/common/io/igb/igb_gld.c
786
igb_t *igb = (igb_t *)arg;
usr/src/uts/common/io/igb/igb_gld.c
798
global_index = igb_get_rx_ring_index(igb, rg_index, index);
usr/src/uts/common/io/igb/igb_gld.c
80
igb->stat_rnbc += E1000_READ_REG(hw, E1000_RNBC);
usr/src/uts/common/io/igb/igb_gld.c
802
rx_ring = &igb->rx_rings[global_index];
usr/src/uts/common/io/igb/igb_gld.c
81
*val = igb->stat_rnbc;
usr/src/uts/common/io/igb/igb_gld.c
814
if (igb->intr_type & (DDI_INTR_TYPE_MSIX | DDI_INTR_TYPE_MSI)) {
usr/src/uts/common/io/igb/igb_gld.c
816
igb->htable[rx_ring->intr_vector];
usr/src/uts/common/io/igb/igb_gld.c
821
ASSERT(index < igb->num_tx_rings);
usr/src/uts/common/io/igb/igb_gld.c
823
igb_tx_ring_t *tx_ring = &igb->tx_rings[index];
usr/src/uts/common/io/igb/igb_gld.c
831
if (igb->intr_type & (DDI_INTR_TYPE_MSIX | DDI_INTR_TYPE_MSI)) {
usr/src/uts/common/io/igb/igb_gld.c
833
igb->htable[tx_ring->intr_vector];
usr/src/uts/common/io/igb/igb_gld.c
846
igb_t *igb = (igb_t *)arg;
usr/src/uts/common/io/igb/igb_gld.c
85
igb->stat_rxerrc += E1000_READ_REG(hw, E1000_RXERRC);
usr/src/uts/common/io/igb/igb_gld.c
852
ASSERT((index >= 0) && (index < igb->num_rx_groups));
usr/src/uts/common/io/igb/igb_gld.c
854
rx_group = &igb->rx_groups[index];
usr/src/uts/common/io/igb/igb_gld.c
86
igb->stat_algnerrc += E1000_READ_REG(hw, E1000_ALGNERRC);
usr/src/uts/common/io/igb/igb_gld.c
862
infop->mgi_count = (igb->num_rx_rings / igb->num_rx_groups);
usr/src/uts/common/io/igb/igb_gld.c
876
igb_t *igb = arg;
usr/src/uts/common/io/igb/igb_gld.c
887
if (mode != MAC_LED_DEFAULT && !igb->igb_led_setup) {
usr/src/uts/common/io/igb/igb_gld.c
888
if (e1000_setup_led(&igb->hw) != E1000_SUCCESS)
usr/src/uts/common/io/igb/igb_gld.c
89
igb->stat_crcerrs += E1000_READ_REG(hw, E1000_CRCERRS);
usr/src/uts/common/io/igb/igb_gld.c
891
igb->igb_led_setup = B_TRUE;
usr/src/uts/common/io/igb/igb_gld.c
896
if (igb->igb_led_setup) {
usr/src/uts/common/io/igb/igb_gld.c
897
if (e1000_cleanup_led(&igb->hw) != E1000_SUCCESS)
usr/src/uts/common/io/igb/igb_gld.c
899
igb->igb_led_setup = B_FALSE;
usr/src/uts/common/io/igb/igb_gld.c
90
igb->stat_cexterr += E1000_READ_REG(hw, E1000_CEXTERR);
usr/src/uts/common/io/igb/igb_gld.c
903
if (e1000_blink_led(&igb->hw) != E1000_SUCCESS)
usr/src/uts/common/io/igb/igb_gld.c
907
if (e1000_led_off(&igb->hw) != E1000_SUCCESS)
usr/src/uts/common/io/igb/igb_gld.c
91
*val = igb->stat_rxerrc +
usr/src/uts/common/io/igb/igb_gld.c
911
if (e1000_led_on(&igb->hw) != E1000_SUCCESS)
usr/src/uts/common/io/igb/igb_gld.c
92
igb->stat_algnerrc +
usr/src/uts/common/io/igb/igb_gld.c
928
igb_t *igb = (igb_t *)arg;
usr/src/uts/common/io/igb/igb_gld.c
94
igb->stat_crcerrs +
usr/src/uts/common/io/igb/igb_gld.c
940
if (!igb->tx_hcksum_enable)
usr/src/uts/common/io/igb/igb_gld.c
949
if (igb->lso_enable) {
usr/src/uts/common/io/igb/igb_gld.c
95
igb->stat_cexterr;
usr/src/uts/common/io/igb/igb_gld.c
965
cap_rings->mr_rnum = igb->num_rx_rings;
usr/src/uts/common/io/igb/igb_gld.c
966
cap_rings->mr_gnum = igb->num_rx_groups;
usr/src/uts/common/io/igb/igb_gld.c
975
cap_rings->mr_rnum = igb->num_tx_rings;
usr/src/uts/common/io/igb/igb_gld.c
992
if (igb->hw.mac.ops.blink_led != NULL &&
usr/src/uts/common/io/igb/igb_gld.c
993
igb->hw.mac.ops.blink_led != e1000_null_ops_generic) {
usr/src/uts/common/io/igb/igb_gld.c
996
if (igb->hw.mac.ops.led_off != NULL &&
usr/src/uts/common/io/igb/igb_gld.c
997
igb->hw.mac.ops.led_off != e1000_null_ops_generic) {
usr/src/uts/common/io/igb/igb_main.c
1023
igb_init_properties(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
1029
igb_get_conf(igb);
usr/src/uts/common/io/igb/igb_main.c
1040
igb_init_driver_settings(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
1042
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
1066
igb->page_size = ddi_ptob(igb->dip, (ulong_t)1);
usr/src/uts/common/io/igb/igb_main.c
1074
rx_size = igb->max_frame_size + IPHDR_ALIGN_ROOM;
usr/src/uts/common/io/igb/igb_main.c
1075
igb->rx_buf_size = ((rx_size >> 10) +
usr/src/uts/common/io/igb/igb_main.c
1081
tx_size = igb->max_frame_size;
usr/src/uts/common/io/igb/igb_main.c
1082
igb->tx_buf_size = ((tx_size >> 10) +
usr/src/uts/common/io/igb/igb_main.c
1088
for (i = 0; i < igb->num_rx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
1089
rx_ring = &igb->rx_rings[i];
usr/src/uts/common/io/igb/igb_main.c
1091
rx_ring->igb = igb;
usr/src/uts/common/io/igb/igb_main.c
1094
for (i = 0; i < igb->num_tx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
1095
tx_ring = &igb->tx_rings[i];
usr/src/uts/common/io/igb/igb_main.c
1097
tx_ring->igb = igb;
usr/src/uts/common/io/igb/igb_main.c
1098
if (igb->tx_head_wb_enable)
usr/src/uts/common/io/igb/igb_main.c
1103
tx_ring->ring_size = igb->tx_ring_size;
usr/src/uts/common/io/igb/igb_main.c
1104
tx_ring->free_list_size = igb->tx_ring_size +
usr/src/uts/common/io/igb/igb_main.c
1105
(igb->tx_ring_size >> 1);
usr/src/uts/common/io/igb/igb_main.c
1112
igb->intr_throttling[i] = igb->intr_throttling[0];
usr/src/uts/common/io/igb/igb_main.c
1117
igb->link_state = LINK_STATE_UNKNOWN;
usr/src/uts/common/io/igb/igb_main.c
1126
igb_init_locks(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
1132
for (i = 0; i < igb->num_rx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
1133
rx_ring = &igb->rx_rings[i];
usr/src/uts/common/io/igb/igb_main.c
1135
MUTEX_DRIVER, DDI_INTR_PRI(igb->intr_pri));
usr/src/uts/common/io/igb/igb_main.c
1138
for (i = 0; i < igb->num_tx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
1139
tx_ring = &igb->tx_rings[i];
usr/src/uts/common/io/igb/igb_main.c
1141
MUTEX_DRIVER, DDI_INTR_PRI(igb->intr_pri));
usr/src/uts/common/io/igb/igb_main.c
1143
MUTEX_DRIVER, DDI_INTR_PRI(igb->intr_pri));
usr/src/uts/common/io/igb/igb_main.c
1145
MUTEX_DRIVER, DDI_INTR_PRI(igb->intr_pri));
usr/src/uts/common/io/igb/igb_main.c
1147
MUTEX_DRIVER, DDI_INTR_PRI(igb->intr_pri));
usr/src/uts/common/io/igb/igb_main.c
1150
mutex_init(&igb->gen_lock, NULL,
usr/src/uts/common/io/igb/igb_main.c
1151
MUTEX_DRIVER, DDI_INTR_PRI(igb->intr_pri));
usr/src/uts/common/io/igb/igb_main.c
1153
mutex_init(&igb->watchdog_lock, NULL,
usr/src/uts/common/io/igb/igb_main.c
1154
MUTEX_DRIVER, DDI_INTR_PRI(igb->intr_pri));
usr/src/uts/common/io/igb/igb_main.c
1156
mutex_init(&igb->link_lock, NULL,
usr/src/uts/common/io/igb/igb_main.c
1157
MUTEX_DRIVER, DDI_INTR_PRI(igb->intr_pri));
usr/src/uts/common/io/igb/igb_main.c
1164
igb_destroy_locks(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
1170
for (i = 0; i < igb->num_rx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
1171
rx_ring = &igb->rx_rings[i];
usr/src/uts/common/io/igb/igb_main.c
1175
for (i = 0; i < igb->num_tx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
1176
tx_ring = &igb->tx_rings[i];
usr/src/uts/common/io/igb/igb_main.c
1183
mutex_destroy(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
1184
mutex_destroy(&igb->watchdog_lock);
usr/src/uts/common/io/igb/igb_main.c
1185
mutex_destroy(&igb->link_lock);
usr/src/uts/common/io/igb/igb_main.c
1191
igb_t *igb;
usr/src/uts/common/io/igb/igb_main.c
1193
igb = (igb_t *)ddi_get_driver_private(devinfo);
usr/src/uts/common/io/igb/igb_main.c
1194
if (igb == NULL)
usr/src/uts/common/io/igb/igb_main.c
1197
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
1202
if (igb->attach_progress & ATTACH_PROGRESS_ENABLE_INTR) {
usr/src/uts/common/io/igb/igb_main.c
1203
if (igb_enable_intrs(igb) != IGB_SUCCESS) {
usr/src/uts/common/io/igb/igb_main.c
1204
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_main.c
1206
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
1211
if (igb->igb_state & IGB_STARTED) {
usr/src/uts/common/io/igb/igb_main.c
1212
if (igb_start(igb, B_FALSE) != IGB_SUCCESS) {
usr/src/uts/common/io/igb/igb_main.c
1213
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
1220
igb_enable_watchdog_timer(igb);
usr/src/uts/common/io/igb/igb_main.c
1223
atomic_and_32(&igb->igb_state, ~IGB_SUSPENDED);
usr/src/uts/common/io/igb/igb_main.c
1225
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
1233
igb_t *igb;
usr/src/uts/common/io/igb/igb_main.c
1235
igb = (igb_t *)ddi_get_driver_private(devinfo);
usr/src/uts/common/io/igb/igb_main.c
1236
if (igb == NULL)
usr/src/uts/common/io/igb/igb_main.c
1239
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
1241
atomic_or_32(&igb->igb_state, IGB_SUSPENDED);
usr/src/uts/common/io/igb/igb_main.c
1246
if (igb->attach_progress & ATTACH_PROGRESS_ENABLE_INTR) {
usr/src/uts/common/io/igb/igb_main.c
1247
(void) igb_disable_intrs(igb);
usr/src/uts/common/io/igb/igb_main.c
1250
if (!(igb->igb_state & IGB_STARTED)) {
usr/src/uts/common/io/igb/igb_main.c
1251
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
1255
igb_stop(igb, B_FALSE);
usr/src/uts/common/io/igb/igb_main.c
1257
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
1262
igb_disable_watchdog_timer(igb);
usr/src/uts/common/io/igb/igb_main.c
1268
igb_init(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
1270
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
1275
if (igb_init_adapter(igb) != IGB_SUCCESS) {
usr/src/uts/common/io/igb/igb_main.c
1276
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
1277
igb_fm_ereport(igb, DDI_FM_DEVICE_INVAL_STATE);
usr/src/uts/common/io/igb/igb_main.c
1278
ddi_fm_service_impact(igb->dip, DDI_SERVICE_LOST);
usr/src/uts/common/io/igb/igb_main.c
1282
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
1301
igb_init_mac_address(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
1303
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
1305
ASSERT(mutex_owned(&igb->gen_lock));
usr/src/uts/common/io/igb/igb_main.c
1312
igb_log(igb, IGB_LOG_ERROR, "Adapter reset failed.");
usr/src/uts/common/io/igb/igb_main.c
1319
if (((igb->hw.mac.type != e1000_i210) &&
usr/src/uts/common/io/igb/igb_main.c
1320
(igb->hw.mac.type != e1000_i211)) &&
usr/src/uts/common/io/igb/igb_main.c
1328
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_main.c
1339
if (!igb_find_mac_address(igb)) {
usr/src/uts/common/io/igb/igb_main.c
1340
igb_log(igb, IGB_LOG_ERROR, "Failed to get the mac address");
usr/src/uts/common/io/igb/igb_main.c
1346
igb_log(igb, IGB_LOG_ERROR, "Invalid mac address");
usr/src/uts/common/io/igb/igb_main.c
1360
igb_init_adapter(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
1362
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
1372
ASSERT(mutex_owned(&igb->gen_lock));
usr/src/uts/common/io/igb/igb_main.c
1379
if (igb_init_mac_address(igb) != IGB_SUCCESS) {
usr/src/uts/common/io/igb/igb_main.c
1380
igb_log(igb, IGB_LOG_ERROR, "Failed to initialize MAC address");
usr/src/uts/common/io/igb/igb_main.c
1411
default_mtu = igb_get_prop(igb, PROP_DEFAULT_MTU,
usr/src/uts/common/io/igb/igb_main.c
1418
min_tx = (igb->max_frame_size +
usr/src/uts/common/io/igb/igb_main.c
1422
min_rx = igb->max_frame_size;
usr/src/uts/common/io/igb/igb_main.c
1450
((pba << 10) - 2 * igb->max_frame_size));
usr/src/uts/common/io/igb/igb_main.c
1470
igb_log(igb, IGB_LOG_ERROR, "Second reset failed");
usr/src/uts/common/io/igb/igb_main.c
1491
(void) igb_setup_link(igb, B_FALSE);
usr/src/uts/common/io/igb/igb_main.c
1497
igb_log(igb, IGB_LOG_ERROR, "Failed to initialize hardware");
usr/src/uts/common/io/igb/igb_main.c
1504
igb_start_link_timer(igb);
usr/src/uts/common/io/igb/igb_main.c
1530
if (igb->intr_type == DDI_INTR_TYPE_MSIX)
usr/src/uts/common/io/igb/igb_main.c
1531
igb->capab->setup_msix(igb);
usr/src/uts/common/io/igb/igb_main.c
1536
igb_init_unicst(igb);
usr/src/uts/common/io/igb/igb_main.c
1541
igb_setup_multicst(igb);
usr/src/uts/common/io/igb/igb_main.c
1546
for (i = 0; i < igb->intr_cnt; i++)
usr/src/uts/common/io/igb/igb_main.c
1547
E1000_WRITE_REG(hw, E1000_EITR(i), igb->intr_throttling[i]);
usr/src/uts/common/io/igb/igb_main.c
1553
(void) e1000_read_nvm(&igb->hw, NVM_OEM_OFFSET_0, 1, &nvmword);
usr/src/uts/common/io/igb/igb_main.c
1555
(void) e1000_read_nvm(&igb->hw, NVM_OEM_OFFSET_1, 1, &nvmword);
usr/src/uts/common/io/igb/igb_main.c
1557
(void) ddi_prop_update_int_array(DDI_DEV_T_NONE, igb->dip,
usr/src/uts/common/io/igb/igb_main.c
1561
(void) e1000_read_pba_string(&igb->hw, pbanum, sizeof (pbanum));
usr/src/uts/common/io/igb/igb_main.c
1563
(void) ddi_prop_update_string(DDI_DEV_T_NONE, igb->dip,
usr/src/uts/common/io/igb/igb_main.c
1568
(void) e1000_read_nvm(&igb->hw, NVM_VERSION, 1, &nvmword);
usr/src/uts/common/io/igb/igb_main.c
1572
(void) ddi_prop_update_string(DDI_DEV_T_NONE, igb->dip,
usr/src/uts/common/io/igb/igb_main.c
1579
igb_get_phy_state(igb);
usr/src/uts/common/io/igb/igb_main.c
1581
igb_param_sync(igb);
usr/src/uts/common/io/igb/igb_main.c
1599
igb_stop_adapter(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
1601
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
1603
ASSERT(mutex_owned(&igb->gen_lock));
usr/src/uts/common/io/igb/igb_main.c
1606
igb_stop_link_timer(igb);
usr/src/uts/common/io/igb/igb_main.c
1615
igb_fm_ereport(igb, DDI_FM_DEVICE_INVAL_STATE);
usr/src/uts/common/io/igb/igb_main.c
1616
ddi_fm_service_impact(igb->dip, DDI_SERVICE_LOST);
usr/src/uts/common/io/igb/igb_main.c
1631
igb_reset(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
1635
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
1637
ASSERT(igb->igb_state & IGB_STARTED);
usr/src/uts/common/io/igb/igb_main.c
1638
atomic_and_32(&igb->igb_state, ~IGB_STARTED);
usr/src/uts/common/io/igb/igb_main.c
1644
igb_disable_adapter_interrupts(igb);
usr/src/uts/common/io/igb/igb_main.c
1649
(void) igb_tx_drain(igb);
usr/src/uts/common/io/igb/igb_main.c
1651
for (i = 0; i < igb->num_rx_rings; i++)
usr/src/uts/common/io/igb/igb_main.c
1652
mutex_enter(&igb->rx_rings[i].rx_lock);
usr/src/uts/common/io/igb/igb_main.c
1653
for (i = 0; i < igb->num_tx_rings; i++)
usr/src/uts/common/io/igb/igb_main.c
1654
mutex_enter(&igb->tx_rings[i].tx_lock);
usr/src/uts/common/io/igb/igb_main.c
1659
igb_stop_adapter(igb);
usr/src/uts/common/io/igb/igb_main.c
1664
igb_tx_clean(igb);
usr/src/uts/common/io/igb/igb_main.c
1669
if (igb_init_adapter(igb) != IGB_SUCCESS) {
usr/src/uts/common/io/igb/igb_main.c
1670
igb_fm_ereport(igb, DDI_FM_DEVICE_INVAL_STATE);
usr/src/uts/common/io/igb/igb_main.c
1677
igb->tx_ring_init = B_FALSE;
usr/src/uts/common/io/igb/igb_main.c
1678
igb_setup_rings(igb);
usr/src/uts/common/io/igb/igb_main.c
1680
atomic_and_32(&igb->igb_state, ~(IGB_ERROR | IGB_STALL));
usr/src/uts/common/io/igb/igb_main.c
1686
igb->capab->enable_intr(igb);
usr/src/uts/common/io/igb/igb_main.c
1688
if (igb_check_acc_handle(igb->osdep.cfg_handle) != DDI_FM_OK)
usr/src/uts/common/io/igb/igb_main.c
1691
if (igb_check_acc_handle(igb->osdep.reg_handle) != DDI_FM_OK)
usr/src/uts/common/io/igb/igb_main.c
1694
for (i = igb->num_tx_rings - 1; i >= 0; i--)
usr/src/uts/common/io/igb/igb_main.c
1695
mutex_exit(&igb->tx_rings[i].tx_lock);
usr/src/uts/common/io/igb/igb_main.c
1696
for (i = igb->num_rx_rings - 1; i >= 0; i--)
usr/src/uts/common/io/igb/igb_main.c
1697
mutex_exit(&igb->rx_rings[i].rx_lock);
usr/src/uts/common/io/igb/igb_main.c
1699
atomic_or_32(&igb->igb_state, IGB_STARTED);
usr/src/uts/common/io/igb/igb_main.c
1701
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
1706
for (i = igb->num_tx_rings - 1; i >= 0; i--)
usr/src/uts/common/io/igb/igb_main.c
1707
mutex_exit(&igb->tx_rings[i].tx_lock);
usr/src/uts/common/io/igb/igb_main.c
1708
for (i = igb->num_rx_rings - 1; i >= 0; i--)
usr/src/uts/common/io/igb/igb_main.c
1709
mutex_exit(&igb->rx_rings[i].rx_lock);
usr/src/uts/common/io/igb/igb_main.c
1711
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
1713
ddi_fm_service_impact(igb->dip, DDI_SERVICE_LOST);
usr/src/uts/common/io/igb/igb_main.c
1722
igb_tx_clean(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
1732
for (i = 0; i < igb->num_tx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
1733
tx_ring = &igb->tx_rings[i];
usr/src/uts/common/io/igb/igb_main.c
1768
if (igb->tx_head_wb_enable)
usr/src/uts/common/io/igb/igb_main.c
1771
E1000_WRITE_REG(&igb->hw, E1000_TDH(tx_ring->index), 0);
usr/src/uts/common/io/igb/igb_main.c
1772
E1000_WRITE_REG(&igb->hw, E1000_TDT(tx_ring->index), 0);
usr/src/uts/common/io/igb/igb_main.c
1789
igb_tx_drain(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
1808
for (j = 0; j < igb->num_tx_rings; j++) {
usr/src/uts/common/io/igb/igb_main.c
1809
tx_ring = &igb->tx_rings[j];
usr/src/uts/common/io/igb/igb_main.c
1827
igb_rx_drain(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
1843
done = (igb->rcb_pending == 0);
usr/src/uts/common/io/igb/igb_main.c
1858
igb_start(igb_t *igb, boolean_t alloc_buffer)
usr/src/uts/common/io/igb/igb_main.c
1862
ASSERT(mutex_owned(&igb->gen_lock));
usr/src/uts/common/io/igb/igb_main.c
1865
if (igb_alloc_rx_data(igb) != IGB_SUCCESS) {
usr/src/uts/common/io/igb/igb_main.c
1866
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_main.c
1872
if (igb_alloc_dma(igb) != IGB_SUCCESS) {
usr/src/uts/common/io/igb/igb_main.c
1873
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_main.c
1878
igb->tx_ring_init = B_TRUE;
usr/src/uts/common/io/igb/igb_main.c
1880
igb->tx_ring_init = B_FALSE;
usr/src/uts/common/io/igb/igb_main.c
1883
for (i = 0; i < igb->num_rx_rings; i++)
usr/src/uts/common/io/igb/igb_main.c
1884
mutex_enter(&igb->rx_rings[i].rx_lock);
usr/src/uts/common/io/igb/igb_main.c
1885
for (i = 0; i < igb->num_tx_rings; i++)
usr/src/uts/common/io/igb/igb_main.c
1886
mutex_enter(&igb->tx_rings[i].tx_lock);
usr/src/uts/common/io/igb/igb_main.c
1891
if ((igb->attach_progress & ATTACH_PROGRESS_INIT_ADAPTER) == 0) {
usr/src/uts/common/io/igb/igb_main.c
1892
if (igb_init_adapter(igb) != IGB_SUCCESS) {
usr/src/uts/common/io/igb/igb_main.c
1893
igb_fm_ereport(igb, DDI_FM_DEVICE_INVAL_STATE);
usr/src/uts/common/io/igb/igb_main.c
1896
igb->attach_progress |= ATTACH_PROGRESS_INIT_ADAPTER;
usr/src/uts/common/io/igb/igb_main.c
1902
igb_setup_rings(igb);
usr/src/uts/common/io/igb/igb_main.c
1908
igb->capab->enable_intr(igb);
usr/src/uts/common/io/igb/igb_main.c
1910
if (igb_check_acc_handle(igb->osdep.cfg_handle) != DDI_FM_OK)
usr/src/uts/common/io/igb/igb_main.c
1913
if (igb_check_acc_handle(igb->osdep.reg_handle) != DDI_FM_OK)
usr/src/uts/common/io/igb/igb_main.c
1916
if (igb->hw.mac.type == e1000_i350)
usr/src/uts/common/io/igb/igb_main.c
1917
(void) e1000_set_eee_i350(&igb->hw, false, false);
usr/src/uts/common/io/igb/igb_main.c
1918
else if (igb->hw.mac.type == e1000_i354)
usr/src/uts/common/io/igb/igb_main.c
1919
(void) e1000_set_eee_i354(&igb->hw, false, false);
usr/src/uts/common/io/igb/igb_main.c
1921
for (i = igb->num_tx_rings - 1; i >= 0; i--)
usr/src/uts/common/io/igb/igb_main.c
1922
mutex_exit(&igb->tx_rings[i].tx_lock);
usr/src/uts/common/io/igb/igb_main.c
1923
for (i = igb->num_rx_rings - 1; i >= 0; i--)
usr/src/uts/common/io/igb/igb_main.c
1924
mutex_exit(&igb->rx_rings[i].rx_lock);
usr/src/uts/common/io/igb/igb_main.c
1929
for (i = igb->num_tx_rings - 1; i >= 0; i--)
usr/src/uts/common/io/igb/igb_main.c
1930
mutex_exit(&igb->tx_rings[i].tx_lock);
usr/src/uts/common/io/igb/igb_main.c
1931
for (i = igb->num_rx_rings - 1; i >= 0; i--)
usr/src/uts/common/io/igb/igb_main.c
1932
mutex_exit(&igb->rx_rings[i].rx_lock);
usr/src/uts/common/io/igb/igb_main.c
1934
ddi_fm_service_impact(igb->dip, DDI_SERVICE_LOST);
usr/src/uts/common/io/igb/igb_main.c
1943
igb_stop(igb_t *igb, boolean_t free_buffer)
usr/src/uts/common/io/igb/igb_main.c
1947
ASSERT(mutex_owned(&igb->gen_lock));
usr/src/uts/common/io/igb/igb_main.c
1949
igb->attach_progress &= ~ATTACH_PROGRESS_INIT_ADAPTER;
usr/src/uts/common/io/igb/igb_main.c
1954
igb_disable_adapter_interrupts(igb);
usr/src/uts/common/io/igb/igb_main.c
1959
(void) igb_tx_drain(igb);
usr/src/uts/common/io/igb/igb_main.c
1961
for (i = 0; i < igb->num_rx_rings; i++)
usr/src/uts/common/io/igb/igb_main.c
1962
mutex_enter(&igb->rx_rings[i].rx_lock);
usr/src/uts/common/io/igb/igb_main.c
1963
for (i = 0; i < igb->num_tx_rings; i++)
usr/src/uts/common/io/igb/igb_main.c
1964
mutex_enter(&igb->tx_rings[i].tx_lock);
usr/src/uts/common/io/igb/igb_main.c
1969
igb_stop_adapter(igb);
usr/src/uts/common/io/igb/igb_main.c
1974
igb_tx_clean(igb);
usr/src/uts/common/io/igb/igb_main.c
1976
for (i = igb->num_tx_rings - 1; i >= 0; i--)
usr/src/uts/common/io/igb/igb_main.c
1977
mutex_exit(&igb->tx_rings[i].tx_lock);
usr/src/uts/common/io/igb/igb_main.c
1978
for (i = igb->num_rx_rings - 1; i >= 0; i--)
usr/src/uts/common/io/igb/igb_main.c
1979
mutex_exit(&igb->rx_rings[i].rx_lock);
usr/src/uts/common/io/igb/igb_main.c
1981
if (igb_check_acc_handle(igb->osdep.reg_handle) != DDI_FM_OK)
usr/src/uts/common/io/igb/igb_main.c
1982
ddi_fm_service_impact(igb->dip, DDI_SERVICE_LOST);
usr/src/uts/common/io/igb/igb_main.c
1984
if (igb->link_state == LINK_STATE_UP) {
usr/src/uts/common/io/igb/igb_main.c
1985
igb->link_state = LINK_STATE_UNKNOWN;
usr/src/uts/common/io/igb/igb_main.c
1986
mac_link_update(igb->mac_hdl, igb->link_state);
usr/src/uts/common/io/igb/igb_main.c
1993
igb_free_dma(igb);
usr/src/uts/common/io/igb/igb_main.c
1994
igb_free_rx_data(igb);
usr/src/uts/common/io/igb/igb_main.c
2002
igb_alloc_rings(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
2007
igb->rx_rings = kmem_zalloc(
usr/src/uts/common/io/igb/igb_main.c
2008
sizeof (igb_rx_ring_t) * igb->num_rx_rings,
usr/src/uts/common/io/igb/igb_main.c
2011
if (igb->rx_rings == NULL) {
usr/src/uts/common/io/igb/igb_main.c
2018
igb->tx_rings = kmem_zalloc(
usr/src/uts/common/io/igb/igb_main.c
2019
sizeof (igb_tx_ring_t) * igb->num_tx_rings,
usr/src/uts/common/io/igb/igb_main.c
2022
if (igb->tx_rings == NULL) {
usr/src/uts/common/io/igb/igb_main.c
2023
kmem_free(igb->rx_rings,
usr/src/uts/common/io/igb/igb_main.c
2024
sizeof (igb_rx_ring_t) * igb->num_rx_rings);
usr/src/uts/common/io/igb/igb_main.c
2025
igb->rx_rings = NULL;
usr/src/uts/common/io/igb/igb_main.c
2032
igb->rx_groups = kmem_zalloc(
usr/src/uts/common/io/igb/igb_main.c
2033
sizeof (igb_rx_group_t) * igb->num_rx_groups,
usr/src/uts/common/io/igb/igb_main.c
2036
if (igb->rx_groups == NULL) {
usr/src/uts/common/io/igb/igb_main.c
2037
kmem_free(igb->rx_rings,
usr/src/uts/common/io/igb/igb_main.c
2038
sizeof (igb_rx_ring_t) * igb->num_rx_rings);
usr/src/uts/common/io/igb/igb_main.c
2039
kmem_free(igb->tx_rings,
usr/src/uts/common/io/igb/igb_main.c
2040
sizeof (igb_tx_ring_t) * igb->num_tx_rings);
usr/src/uts/common/io/igb/igb_main.c
2041
igb->rx_rings = NULL;
usr/src/uts/common/io/igb/igb_main.c
2042
igb->tx_rings = NULL;
usr/src/uts/common/io/igb/igb_main.c
2053
igb_free_rings(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
2055
if (igb->rx_rings != NULL) {
usr/src/uts/common/io/igb/igb_main.c
2056
kmem_free(igb->rx_rings,
usr/src/uts/common/io/igb/igb_main.c
2057
sizeof (igb_rx_ring_t) * igb->num_rx_rings);
usr/src/uts/common/io/igb/igb_main.c
2058
igb->rx_rings = NULL;
usr/src/uts/common/io/igb/igb_main.c
2061
if (igb->tx_rings != NULL) {
usr/src/uts/common/io/igb/igb_main.c
2062
kmem_free(igb->tx_rings,
usr/src/uts/common/io/igb/igb_main.c
2063
sizeof (igb_tx_ring_t) * igb->num_tx_rings);
usr/src/uts/common/io/igb/igb_main.c
2064
igb->tx_rings = NULL;
usr/src/uts/common/io/igb/igb_main.c
2067
if (igb->rx_groups != NULL) {
usr/src/uts/common/io/igb/igb_main.c
2068
kmem_free(igb->rx_groups,
usr/src/uts/common/io/igb/igb_main.c
2069
sizeof (igb_rx_group_t) * igb->num_rx_groups);
usr/src/uts/common/io/igb/igb_main.c
2070
igb->rx_groups = NULL;
usr/src/uts/common/io/igb/igb_main.c
2075
igb_alloc_rx_data(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
2080
for (i = 0; i < igb->num_rx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
2081
rx_ring = &igb->rx_rings[i];
usr/src/uts/common/io/igb/igb_main.c
2088
igb_free_rx_data(igb);
usr/src/uts/common/io/igb/igb_main.c
2093
igb_free_rx_data(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
2099
for (i = 0; i < igb->num_rx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
2100
rx_ring = &igb->rx_rings[i];
usr/src/uts/common/io/igb/igb_main.c
2102
mutex_enter(&igb->rx_pending_lock);
usr/src/uts/common/io/igb/igb_main.c
2114
mutex_exit(&igb->rx_pending_lock);
usr/src/uts/common/io/igb/igb_main.c
2122
igb_setup_rings(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
2131
igb_setup_rx(igb);
usr/src/uts/common/io/igb/igb_main.c
2133
igb_setup_tx(igb);
usr/src/uts/common/io/igb/igb_main.c
2139
igb_t *igb = rx_ring->igb;
usr/src/uts/common/io/igb/igb_main.c
2141
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
2151
ASSERT(mutex_owned(&igb->gen_lock));
usr/src/uts/common/io/igb/igb_main.c
2156
for (i = 0; i < igb->rx_ring_size; i++) {
usr/src/uts/common/io/igb/igb_main.c
2182
((igb->rx_buf_size >> E1000_SRRCTL_BSIZEPKT_SHIFT) |
usr/src/uts/common/io/igb/igb_main.c
2189
rxdctl &= igb->capab->rxdctl_mask;
usr/src/uts/common/io/igb/igb_main.c
2200
igb_setup_rx(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
2205
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
2235
for (i = 0; i < igb->num_rx_groups; i++) {
usr/src/uts/common/io/igb/igb_main.c
2236
rx_group = &igb->rx_groups[i];
usr/src/uts/common/io/igb/igb_main.c
2238
rx_group->igb = igb;
usr/src/uts/common/io/igb/igb_main.c
2245
ring_per_group = igb->num_rx_rings / igb->num_rx_groups;
usr/src/uts/common/io/igb/igb_main.c
2246
for (i = 0; i < igb->num_rx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
2247
rx_ring = &igb->rx_rings[i];
usr/src/uts/common/io/igb/igb_main.c
2259
E1000_WRITE_REG(hw, E1000_RLPML, igb->max_frame_size);
usr/src/uts/common/io/igb/igb_main.c
2264
if (igb->rx_hcksum_enable) {
usr/src/uts/common/io/igb/igb_main.c
2275
switch (igb->vmdq_mode) {
usr/src/uts/common/io/igb/igb_main.c
2281
if (igb->num_rx_rings > 1)
usr/src/uts/common/io/igb/igb_main.c
2282
igb_setup_rss(igb);
usr/src/uts/common/io/igb/igb_main.c
2289
igb_setup_mac_classify(igb);
usr/src/uts/common/io/igb/igb_main.c
2296
igb_setup_mac_rss_classify(igb);
usr/src/uts/common/io/igb/igb_main.c
2310
for (i = 0; i < igb->num_rx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
2311
rx_ring = &igb->rx_rings[i];
usr/src/uts/common/io/igb/igb_main.c
2330
igb_t *igb = tx_ring->igb;
usr/src/uts/common/io/igb/igb_main.c
2331
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
2338
ASSERT(mutex_owned(&igb->gen_lock));
usr/src/uts/common/io/igb/igb_main.c
2364
if (igb->tx_head_wb_enable) {
usr/src/uts/common/io/igb/igb_main.c
2401
if (igb->tx_ring_init == B_TRUE) {
usr/src/uts/common/io/igb/igb_main.c
2421
igb_setup_tx(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
2424
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
2428
for (i = 0; i < igb->num_tx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
2429
tx_ring = &igb->tx_rings[i];
usr/src/uts/common/io/igb/igb_main.c
2451
igb_setup_rss(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
2453
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
2469
reta.bytes[i & 3] = (i % igb->num_rx_rings) << shift;
usr/src/uts/common/io/igb/igb_main.c
2518
igb_setup_mac_rss_classify(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
2520
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
2530
ring_per_group = igb->num_rx_rings / igb->num_rx_groups;
usr/src/uts/common/io/igb/igb_main.c
2594
igb_setup_mac_classify(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
2596
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
2629
igb_init_unicst(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
2631
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
2655
if (!igb->unicst_init) {
usr/src/uts/common/io/igb/igb_main.c
2658
igb->unicst_total = MAX_NUM_UNICAST_ADDRESSES;
usr/src/uts/common/io/igb/igb_main.c
2659
igb->unicst_avail = igb->unicst_total;
usr/src/uts/common/io/igb/igb_main.c
2661
for (slot = 0; slot < igb->unicst_total; slot++)
usr/src/uts/common/io/igb/igb_main.c
2662
igb->unicst_addr[slot].mac.set = 0;
usr/src/uts/common/io/igb/igb_main.c
2664
igb->unicst_init = B_TRUE;
usr/src/uts/common/io/igb/igb_main.c
2667
for (slot = 0; slot < igb->unicst_total; slot++) {
usr/src/uts/common/io/igb/igb_main.c
2669
igb->unicst_addr[slot].mac.addr,
usr/src/uts/common/io/igb/igb_main.c
2670
slot, igb->vmdq_mode,
usr/src/uts/common/io/igb/igb_main.c
2671
igb->unicst_addr[slot].mac.group_index);
usr/src/uts/common/io/igb/igb_main.c
2680
igb_unicst_find(igb_t *igb, const uint8_t *mac_addr)
usr/src/uts/common/io/igb/igb_main.c
2684
ASSERT(mutex_owned(&igb->gen_lock));
usr/src/uts/common/io/igb/igb_main.c
2686
for (slot = 0; slot < igb->unicst_total; slot++) {
usr/src/uts/common/io/igb/igb_main.c
2687
if (bcmp(igb->unicst_addr[slot].mac.addr,
usr/src/uts/common/io/igb/igb_main.c
2699
igb_unicst_set(igb_t *igb, const uint8_t *mac_addr,
usr/src/uts/common/io/igb/igb_main.c
2702
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
2704
ASSERT(mutex_owned(&igb->gen_lock));
usr/src/uts/common/io/igb/igb_main.c
2709
bcopy(mac_addr, igb->unicst_addr[slot].mac.addr, ETHERADDRL);
usr/src/uts/common/io/igb/igb_main.c
2716
if (igb_check_acc_handle(igb->osdep.reg_handle) != DDI_FM_OK) {
usr/src/uts/common/io/igb/igb_main.c
2717
ddi_fm_service_impact(igb->dip, DDI_SERVICE_DEGRADED);
usr/src/uts/common/io/igb/igb_main.c
2728
igb_multicst_add(igb_t *igb, const uint8_t *multiaddr)
usr/src/uts/common/io/igb/igb_main.c
2734
ASSERT(mutex_owned(&igb->gen_lock));
usr/src/uts/common/io/igb/igb_main.c
2737
igb_log(igb, IGB_LOG_ERROR, "Illegal multicast address");
usr/src/uts/common/io/igb/igb_main.c
2741
if (igb->mcast_count >= igb->mcast_max_num) {
usr/src/uts/common/io/igb/igb_main.c
2742
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_main.c
2744
igb->mcast_max_num);
usr/src/uts/common/io/igb/igb_main.c
2748
if (igb->mcast_count == igb->mcast_alloc_count) {
usr/src/uts/common/io/igb/igb_main.c
2749
old_len = igb->mcast_alloc_count *
usr/src/uts/common/io/igb/igb_main.c
2751
new_len = (igb->mcast_alloc_count + MCAST_ALLOC_COUNT) *
usr/src/uts/common/io/igb/igb_main.c
2756
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_main.c
2761
if (igb->mcast_table != NULL) {
usr/src/uts/common/io/igb/igb_main.c
2762
bcopy(igb->mcast_table, new_table, old_len);
usr/src/uts/common/io/igb/igb_main.c
2763
kmem_free(igb->mcast_table, old_len);
usr/src/uts/common/io/igb/igb_main.c
2765
igb->mcast_alloc_count += MCAST_ALLOC_COUNT;
usr/src/uts/common/io/igb/igb_main.c
2766
igb->mcast_table = new_table;
usr/src/uts/common/io/igb/igb_main.c
2770
&igb->mcast_table[igb->mcast_count], ETHERADDRL);
usr/src/uts/common/io/igb/igb_main.c
2771
igb->mcast_count++;
usr/src/uts/common/io/igb/igb_main.c
2776
igb_setup_multicst(igb);
usr/src/uts/common/io/igb/igb_main.c
2778
if (igb_check_acc_handle(igb->osdep.reg_handle) != DDI_FM_OK) {
usr/src/uts/common/io/igb/igb_main.c
2779
ddi_fm_service_impact(igb->dip, DDI_SERVICE_DEGRADED);
usr/src/uts/common/io/igb/igb_main.c
2790
igb_multicst_remove(igb_t *igb, const uint8_t *multiaddr)
usr/src/uts/common/io/igb/igb_main.c
2797
ASSERT(mutex_owned(&igb->gen_lock));
usr/src/uts/common/io/igb/igb_main.c
2799
for (i = 0; i < igb->mcast_count; i++) {
usr/src/uts/common/io/igb/igb_main.c
2800
if (bcmp(multiaddr, &igb->mcast_table[i],
usr/src/uts/common/io/igb/igb_main.c
2802
for (i++; i < igb->mcast_count; i++) {
usr/src/uts/common/io/igb/igb_main.c
2803
igb->mcast_table[i - 1] =
usr/src/uts/common/io/igb/igb_main.c
2804
igb->mcast_table[i];
usr/src/uts/common/io/igb/igb_main.c
2806
igb->mcast_count--;
usr/src/uts/common/io/igb/igb_main.c
2811
if ((igb->mcast_alloc_count - igb->mcast_count) >
usr/src/uts/common/io/igb/igb_main.c
2813
old_len = igb->mcast_alloc_count *
usr/src/uts/common/io/igb/igb_main.c
2815
new_len = (igb->mcast_alloc_count - MCAST_ALLOC_COUNT) *
usr/src/uts/common/io/igb/igb_main.c
2820
bcopy(igb->mcast_table, new_table, new_len);
usr/src/uts/common/io/igb/igb_main.c
2821
kmem_free(igb->mcast_table, old_len);
usr/src/uts/common/io/igb/igb_main.c
2822
igb->mcast_alloc_count -= MCAST_ALLOC_COUNT;
usr/src/uts/common/io/igb/igb_main.c
2823
igb->mcast_table = new_table;
usr/src/uts/common/io/igb/igb_main.c
2830
igb_setup_multicst(igb);
usr/src/uts/common/io/igb/igb_main.c
2832
if (igb_check_acc_handle(igb->osdep.reg_handle) != DDI_FM_OK) {
usr/src/uts/common/io/igb/igb_main.c
2833
ddi_fm_service_impact(igb->dip, DDI_SERVICE_DEGRADED);
usr/src/uts/common/io/igb/igb_main.c
2841
igb_release_multicast(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
2843
if (igb->mcast_table != NULL) {
usr/src/uts/common/io/igb/igb_main.c
2844
kmem_free(igb->mcast_table,
usr/src/uts/common/io/igb/igb_main.c
2845
igb->mcast_alloc_count * sizeof (struct ether_addr));
usr/src/uts/common/io/igb/igb_main.c
2846
igb->mcast_table = NULL;
usr/src/uts/common/io/igb/igb_main.c
2857
igb_setup_multicst(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
2861
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
2863
ASSERT(mutex_owned(&igb->gen_lock));
usr/src/uts/common/io/igb/igb_main.c
2864
ASSERT(igb->mcast_count <= igb->mcast_max_num);
usr/src/uts/common/io/igb/igb_main.c
2866
mc_addr_list = (uint8_t *)igb->mcast_table;
usr/src/uts/common/io/igb/igb_main.c
2867
mc_addr_count = igb->mcast_count;
usr/src/uts/common/io/igb/igb_main.c
2888
igb_get_conf(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
2890
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
2927
igb->param_adv_autoneg_cap = igb_get_prop(igb,
usr/src/uts/common/io/igb/igb_main.c
2929
igb->param_adv_1000fdx_cap = igb_get_prop(igb,
usr/src/uts/common/io/igb/igb_main.c
2931
igb->param_adv_100fdx_cap = igb_get_prop(igb,
usr/src/uts/common/io/igb/igb_main.c
2933
igb->param_adv_100hdx_cap = igb_get_prop(igb,
usr/src/uts/common/io/igb/igb_main.c
2935
igb->param_adv_10fdx_cap = igb_get_prop(igb,
usr/src/uts/common/io/igb/igb_main.c
2937
igb->param_adv_10hdx_cap = igb_get_prop(igb,
usr/src/uts/common/io/igb/igb_main.c
2943
default_mtu = igb_get_prop(igb, PROP_DEFAULT_MTU,
usr/src/uts/common/io/igb/igb_main.c
2946
igb->max_frame_size = default_mtu +
usr/src/uts/common/io/igb/igb_main.c
2952
flow_control = igb_get_prop(igb, PROP_FLOW_CONTROL,
usr/src/uts/common/io/igb/igb_main.c
2962
igb->tx_ring_size = igb_get_prop(igb, PROP_TX_RING_SIZE,
usr/src/uts/common/io/igb/igb_main.c
2964
igb->rx_ring_size = igb_get_prop(igb, PROP_RX_RING_SIZE,
usr/src/uts/common/io/igb/igb_main.c
2967
igb->mr_enable = igb_get_prop(igb, PROP_MR_ENABLE, 0, 1, 0);
usr/src/uts/common/io/igb/igb_main.c
2968
igb->num_rx_groups = igb_get_prop(igb, PROP_RX_GROUP_NUM,
usr/src/uts/common/io/igb/igb_main.c
2975
igb->num_rx_groups = 1;
usr/src/uts/common/io/igb/igb_main.c
2977
if (igb->mr_enable) {
usr/src/uts/common/io/igb/igb_main.c
2978
igb->num_tx_rings = igb->capab->def_tx_que_num;
usr/src/uts/common/io/igb/igb_main.c
2979
igb->num_rx_rings = igb->capab->def_rx_que_num;
usr/src/uts/common/io/igb/igb_main.c
2981
igb->num_tx_rings = 1;
usr/src/uts/common/io/igb/igb_main.c
2982
igb->num_rx_rings = 1;
usr/src/uts/common/io/igb/igb_main.c
2984
if (igb->num_rx_groups > 1) {
usr/src/uts/common/io/igb/igb_main.c
2985
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_main.c
2988
igb->num_rx_groups = 1;
usr/src/uts/common/io/igb/igb_main.c
2995
for (i = igb->num_rx_groups; i > 0; i--) {
usr/src/uts/common/io/igb/igb_main.c
2996
if ((igb->num_rx_rings % i) == 0)
usr/src/uts/common/io/igb/igb_main.c
2999
if (i != igb->num_rx_groups) {
usr/src/uts/common/io/igb/igb_main.c
3000
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_main.c
3003
igb->num_rx_groups = i;
usr/src/uts/common/io/igb/igb_main.c
3009
ring_per_group = igb->num_rx_rings / igb->num_rx_groups;
usr/src/uts/common/io/igb/igb_main.c
3011
if (igb->num_rx_groups == 1) {
usr/src/uts/common/io/igb/igb_main.c
3015
igb->vmdq_mode = E1000_VMDQ_OFF;
usr/src/uts/common/io/igb/igb_main.c
3020
igb->vmdq_mode = E1000_VMDQ_MAC;
usr/src/uts/common/io/igb/igb_main.c
3025
igb->vmdq_mode = E1000_VMDQ_MAC_RSS;
usr/src/uts/common/io/igb/igb_main.c
3036
igb->intr_force = igb_get_prop(igb, PROP_INTR_FORCE,
usr/src/uts/common/io/igb/igb_main.c
3039
igb->tx_hcksum_enable = igb_get_prop(igb, PROP_TX_HCKSUM_ENABLE,
usr/src/uts/common/io/igb/igb_main.c
3041
igb->rx_hcksum_enable = igb_get_prop(igb, PROP_RX_HCKSUM_ENABLE,
usr/src/uts/common/io/igb/igb_main.c
3043
igb->lso_enable = igb_get_prop(igb, PROP_LSO_ENABLE,
usr/src/uts/common/io/igb/igb_main.c
3045
igb->tx_head_wb_enable = igb_get_prop(igb, PROP_TX_HEAD_WB_ENABLE,
usr/src/uts/common/io/igb/igb_main.c
3052
if (igb->tx_hcksum_enable == B_FALSE)
usr/src/uts/common/io/igb/igb_main.c
3053
igb->lso_enable = B_FALSE;
usr/src/uts/common/io/igb/igb_main.c
3055
igb->tx_copy_thresh = igb_get_prop(igb, PROP_TX_COPY_THRESHOLD,
usr/src/uts/common/io/igb/igb_main.c
3058
igb->tx_recycle_thresh = igb_get_prop(igb, PROP_TX_RECYCLE_THRESHOLD,
usr/src/uts/common/io/igb/igb_main.c
3061
igb->tx_overload_thresh = igb_get_prop(igb, PROP_TX_OVERLOAD_THRESHOLD,
usr/src/uts/common/io/igb/igb_main.c
3064
igb->tx_resched_thresh = igb_get_prop(igb, PROP_TX_RESCHED_THRESHOLD,
usr/src/uts/common/io/igb/igb_main.c
3066
MIN(igb->tx_ring_size, MAX_TX_RESCHED_THRESHOLD),
usr/src/uts/common/io/igb/igb_main.c
3067
igb->tx_ring_size > DEFAULT_TX_RESCHED_THRESHOLD ?
usr/src/uts/common/io/igb/igb_main.c
3070
igb->rx_copy_thresh = igb_get_prop(igb, PROP_RX_COPY_THRESHOLD,
usr/src/uts/common/io/igb/igb_main.c
3073
igb->rx_limit_per_intr = igb_get_prop(igb, PROP_RX_LIMIT_PER_INTR,
usr/src/uts/common/io/igb/igb_main.c
3077
igb->intr_throttling[0] = igb_get_prop(igb, PROP_INTR_THROTTLING,
usr/src/uts/common/io/igb/igb_main.c
3078
igb->capab->min_intr_throttle,
usr/src/uts/common/io/igb/igb_main.c
3079
igb->capab->max_intr_throttle,
usr/src/uts/common/io/igb/igb_main.c
3080
igb->capab->def_intr_throttle);
usr/src/uts/common/io/igb/igb_main.c
3085
igb->mcast_max_num =
usr/src/uts/common/io/igb/igb_main.c
3086
igb_get_prop(igb, PROP_MCAST_MAX_NUM,
usr/src/uts/common/io/igb/igb_main.c
3100
igb_get_prop(igb_t *igb,
usr/src/uts/common/io/igb/igb_main.c
3111
value = ddi_prop_get_int(DDI_DEV_T_ANY, igb->dip,
usr/src/uts/common/io/igb/igb_main.c
3127
igb_setup_link(igb_t *igb, boolean_t setup_hw)
usr/src/uts/common/io/igb/igb_main.c
3133
mac = &igb->hw.mac;
usr/src/uts/common/io/igb/igb_main.c
3134
phy = &igb->hw.phy;
usr/src/uts/common/io/igb/igb_main.c
3137
if (igb->param_adv_autoneg_cap == 1) {
usr/src/uts/common/io/igb/igb_main.c
3144
if (igb->param_adv_1000fdx_cap == 1)
usr/src/uts/common/io/igb/igb_main.c
3147
if (igb->param_adv_100fdx_cap == 1)
usr/src/uts/common/io/igb/igb_main.c
3150
if (igb->param_adv_100hdx_cap == 1)
usr/src/uts/common/io/igb/igb_main.c
3153
if (igb->param_adv_10fdx_cap == 1)
usr/src/uts/common/io/igb/igb_main.c
3156
if (igb->param_adv_10hdx_cap == 1)
usr/src/uts/common/io/igb/igb_main.c
3167
if (igb->param_adv_100fdx_cap == 1)
usr/src/uts/common/io/igb/igb_main.c
3169
else if (igb->param_adv_100hdx_cap == 1)
usr/src/uts/common/io/igb/igb_main.c
3171
else if (igb->param_adv_10fdx_cap == 1)
usr/src/uts/common/io/igb/igb_main.c
3173
else if (igb->param_adv_10hdx_cap == 1)
usr/src/uts/common/io/igb/igb_main.c
3180
igb_log(igb, IGB_LOG_INFO, "Invalid link settings. Setup "
usr/src/uts/common/io/igb/igb_main.c
3189
if (e1000_setup_link(&igb->hw) != E1000_SUCCESS)
usr/src/uts/common/io/igb/igb_main.c
3201
igb_is_link_up(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
3203
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
3206
ASSERT(mutex_owned(&igb->gen_lock));
usr/src/uts/common/io/igb/igb_main.c
3240
igb_link_check(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
3242
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
3246
ASSERT(mutex_owned(&igb->gen_lock));
usr/src/uts/common/io/igb/igb_main.c
3248
if (igb_is_link_up(igb)) {
usr/src/uts/common/io/igb/igb_main.c
3252
if (igb->link_state != LINK_STATE_UP) {
usr/src/uts/common/io/igb/igb_main.c
3254
igb->link_speed = speed;
usr/src/uts/common/io/igb/igb_main.c
3255
igb->link_duplex = duplex;
usr/src/uts/common/io/igb/igb_main.c
3256
igb->link_state = LINK_STATE_UP;
usr/src/uts/common/io/igb/igb_main.c
3258
if (!igb->link_complete)
usr/src/uts/common/io/igb/igb_main.c
3259
igb_stop_link_timer(igb);
usr/src/uts/common/io/igb/igb_main.c
3261
} else if (igb->link_complete) {
usr/src/uts/common/io/igb/igb_main.c
3262
if (igb->link_state != LINK_STATE_DOWN) {
usr/src/uts/common/io/igb/igb_main.c
3263
igb->link_speed = 0;
usr/src/uts/common/io/igb/igb_main.c
3264
igb->link_duplex = 0;
usr/src/uts/common/io/igb/igb_main.c
3265
igb->link_state = LINK_STATE_DOWN;
usr/src/uts/common/io/igb/igb_main.c
3270
if (igb_check_acc_handle(igb->osdep.reg_handle) != DDI_FM_OK) {
usr/src/uts/common/io/igb/igb_main.c
3271
ddi_fm_service_impact(igb->dip, DDI_SERVICE_DEGRADED);
usr/src/uts/common/io/igb/igb_main.c
3287
igb_t *igb = (igb_t *)arg;
usr/src/uts/common/io/igb/igb_main.c
3290
if (igb->igb_state & IGB_ERROR) {
usr/src/uts/common/io/igb/igb_main.c
3291
igb->reset_count++;
usr/src/uts/common/io/igb/igb_main.c
3292
if (igb_reset(igb) == IGB_SUCCESS)
usr/src/uts/common/io/igb/igb_main.c
3293
ddi_fm_service_impact(igb->dip, DDI_SERVICE_RESTORED);
usr/src/uts/common/io/igb/igb_main.c
3295
igb_restart_watchdog_timer(igb);
usr/src/uts/common/io/igb/igb_main.c
3299
if (igb_stall_check(igb) || (igb->igb_state & IGB_STALL)) {
usr/src/uts/common/io/igb/igb_main.c
3300
igb_fm_ereport(igb, DDI_FM_DEVICE_STALL);
usr/src/uts/common/io/igb/igb_main.c
3301
ddi_fm_service_impact(igb->dip, DDI_SERVICE_LOST);
usr/src/uts/common/io/igb/igb_main.c
3302
igb->reset_count++;
usr/src/uts/common/io/igb/igb_main.c
3303
if (igb_reset(igb) == IGB_SUCCESS)
usr/src/uts/common/io/igb/igb_main.c
3304
ddi_fm_service_impact(igb->dip, DDI_SERVICE_RESTORED);
usr/src/uts/common/io/igb/igb_main.c
3306
igb_restart_watchdog_timer(igb);
usr/src/uts/common/io/igb/igb_main.c
3310
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
3311
if (!(igb->igb_state & IGB_SUSPENDED) && (igb->igb_state & IGB_STARTED))
usr/src/uts/common/io/igb/igb_main.c
3312
link_changed = igb_link_check(igb);
usr/src/uts/common/io/igb/igb_main.c
3313
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
3316
mac_link_update(igb->mac_hdl, igb->link_state);
usr/src/uts/common/io/igb/igb_main.c
3318
igb_restart_watchdog_timer(igb);
usr/src/uts/common/io/igb/igb_main.c
3334
igb_t *igb = (igb_t *)arg;
usr/src/uts/common/io/igb/igb_main.c
3336
mutex_enter(&igb->link_lock);
usr/src/uts/common/io/igb/igb_main.c
3337
igb->link_complete = B_TRUE;
usr/src/uts/common/io/igb/igb_main.c
3338
igb->link_tid = 0;
usr/src/uts/common/io/igb/igb_main.c
3339
mutex_exit(&igb->link_lock);
usr/src/uts/common/io/igb/igb_main.c
3353
igb_stall_check(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
3356
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
3360
if (igb->link_state != LINK_STATE_UP)
usr/src/uts/common/io/igb/igb_main.c
3367
for (i = 0; i < igb->num_tx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
3368
tx_ring = &igb->tx_rings[i];
usr/src/uts/common/io/igb/igb_main.c
3412
igb_find_mac_address(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
3414
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
3431
err = ddi_prop_lookup_byte_array(DDI_DEV_T_ANY, igb->dip,
usr/src/uts/common/io/igb/igb_main.c
3446
if (ddi_prop_lookup_byte_array(DDI_DEV_T_ANY, igb->dip, 0,
usr/src/uts/common/io/igb/igb_main.c
3463
err = ddi_prop_lookup_byte_array(DDI_DEV_T_ANY, igb->dip,
usr/src/uts/common/io/igb/igb_main.c
3490
igb_arm_watchdog_timer(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
3495
igb->watchdog_tid =
usr/src/uts/common/io/igb/igb_main.c
3497
(void *)igb, 1 * drv_usectohz(1000000));
usr/src/uts/common/io/igb/igb_main.c
3505
igb_enable_watchdog_timer(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
3507
mutex_enter(&igb->watchdog_lock);
usr/src/uts/common/io/igb/igb_main.c
3509
if (!igb->watchdog_enable) {
usr/src/uts/common/io/igb/igb_main.c
3510
igb->watchdog_enable = B_TRUE;
usr/src/uts/common/io/igb/igb_main.c
3511
igb->watchdog_start = B_TRUE;
usr/src/uts/common/io/igb/igb_main.c
3512
igb_arm_watchdog_timer(igb);
usr/src/uts/common/io/igb/igb_main.c
3515
mutex_exit(&igb->watchdog_lock);
usr/src/uts/common/io/igb/igb_main.c
3523
igb_disable_watchdog_timer(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
3527
mutex_enter(&igb->watchdog_lock);
usr/src/uts/common/io/igb/igb_main.c
3529
igb->watchdog_enable = B_FALSE;
usr/src/uts/common/io/igb/igb_main.c
3530
igb->watchdog_start = B_FALSE;
usr/src/uts/common/io/igb/igb_main.c
3531
tid = igb->watchdog_tid;
usr/src/uts/common/io/igb/igb_main.c
3532
igb->watchdog_tid = 0;
usr/src/uts/common/io/igb/igb_main.c
3534
mutex_exit(&igb->watchdog_lock);
usr/src/uts/common/io/igb/igb_main.c
3545
igb_start_watchdog_timer(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
3547
mutex_enter(&igb->watchdog_lock);
usr/src/uts/common/io/igb/igb_main.c
3549
if (igb->watchdog_enable) {
usr/src/uts/common/io/igb/igb_main.c
3550
if (!igb->watchdog_start) {
usr/src/uts/common/io/igb/igb_main.c
3551
igb->watchdog_start = B_TRUE;
usr/src/uts/common/io/igb/igb_main.c
3552
igb_arm_watchdog_timer(igb);
usr/src/uts/common/io/igb/igb_main.c
3556
mutex_exit(&igb->watchdog_lock);
usr/src/uts/common/io/igb/igb_main.c
3563
igb_restart_watchdog_timer(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
3565
mutex_enter(&igb->watchdog_lock);
usr/src/uts/common/io/igb/igb_main.c
3567
if (igb->watchdog_start)
usr/src/uts/common/io/igb/igb_main.c
3568
igb_arm_watchdog_timer(igb);
usr/src/uts/common/io/igb/igb_main.c
3570
mutex_exit(&igb->watchdog_lock);
usr/src/uts/common/io/igb/igb_main.c
3577
igb_stop_watchdog_timer(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
3581
mutex_enter(&igb->watchdog_lock);
usr/src/uts/common/io/igb/igb_main.c
3583
igb->watchdog_start = B_FALSE;
usr/src/uts/common/io/igb/igb_main.c
3584
tid = igb->watchdog_tid;
usr/src/uts/common/io/igb/igb_main.c
3585
igb->watchdog_tid = 0;
usr/src/uts/common/io/igb/igb_main.c
3587
mutex_exit(&igb->watchdog_lock);
usr/src/uts/common/io/igb/igb_main.c
3597
igb_start_link_timer(struct igb *igb)
usr/src/uts/common/io/igb/igb_main.c
3599
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
3608
mutex_enter(&igb->link_lock);
usr/src/uts/common/io/igb/igb_main.c
3610
igb->link_complete = B_TRUE;
usr/src/uts/common/io/igb/igb_main.c
3612
igb->link_complete = B_FALSE;
usr/src/uts/common/io/igb/igb_main.c
3613
igb->link_tid = timeout(igb_link_timer, (void *)igb,
usr/src/uts/common/io/igb/igb_main.c
3616
mutex_exit(&igb->link_lock);
usr/src/uts/common/io/igb/igb_main.c
3623
igb_stop_link_timer(struct igb *igb)
usr/src/uts/common/io/igb/igb_main.c
3627
mutex_enter(&igb->link_lock);
usr/src/uts/common/io/igb/igb_main.c
3628
igb->link_complete = B_TRUE;
usr/src/uts/common/io/igb/igb_main.c
3629
tid = igb->link_tid;
usr/src/uts/common/io/igb/igb_main.c
3630
igb->link_tid = 0;
usr/src/uts/common/io/igb/igb_main.c
3631
mutex_exit(&igb->link_lock);
usr/src/uts/common/io/igb/igb_main.c
3641
igb_disable_adapter_interrupts(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
3643
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
3655
if (igb->intr_type == DDI_INTR_TYPE_MSIX) {
usr/src/uts/common/io/igb/igb_main.c
3668
igb_enable_adapter_interrupts_82580(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
3670
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
3674
igb->ims_mask |= E1000_IMS_DRSTA;
usr/src/uts/common/io/igb/igb_main.c
3676
if (igb->intr_type == DDI_INTR_TYPE_MSIX) {
usr/src/uts/common/io/igb/igb_main.c
3679
E1000_WRITE_REG(hw, E1000_EIMS, igb->eims_mask);
usr/src/uts/common/io/igb/igb_main.c
3680
E1000_WRITE_REG(hw, E1000_EIAC, igb->eims_mask);
usr/src/uts/common/io/igb/igb_main.c
3681
igb->ims_mask = (E1000_IMS_LSC | E1000_IMS_DRSTA);
usr/src/uts/common/io/igb/igb_main.c
3682
E1000_WRITE_REG(hw, E1000_IMS, igb->ims_mask);
usr/src/uts/common/io/igb/igb_main.c
3685
igb->ims_mask = IMS_ENABLE_MASK | E1000_IMS_TXQE;
usr/src/uts/common/io/igb/igb_main.c
3686
igb->ims_mask |= E1000_IMS_DRSTA;
usr/src/uts/common/io/igb/igb_main.c
3687
E1000_WRITE_REG(hw, E1000_IMS, igb->ims_mask);
usr/src/uts/common/io/igb/igb_main.c
3700
igb_enable_adapter_interrupts_82576(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
3702
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
3707
if (igb->intr_type == DDI_INTR_TYPE_MSIX) {
usr/src/uts/common/io/igb/igb_main.c
3710
E1000_WRITE_REG(hw, E1000_EIMS, igb->eims_mask);
usr/src/uts/common/io/igb/igb_main.c
3711
E1000_WRITE_REG(hw, E1000_EIAC, igb->eims_mask);
usr/src/uts/common/io/igb/igb_main.c
3712
igb->ims_mask = E1000_IMS_LSC;
usr/src/uts/common/io/igb/igb_main.c
3717
igb->ims_mask = IMS_ENABLE_MASK | E1000_IMS_TXQE;
usr/src/uts/common/io/igb/igb_main.c
3732
igb_enable_adapter_interrupts_82575(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
3734
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
3740
if (igb->intr_type == DDI_INTR_TYPE_MSIX) {
usr/src/uts/common/io/igb/igb_main.c
3742
E1000_WRITE_REG(hw, E1000_EIMS, igb->eims_mask);
usr/src/uts/common/io/igb/igb_main.c
3743
E1000_WRITE_REG(hw, E1000_EIAC, igb->eims_mask);
usr/src/uts/common/io/igb/igb_main.c
3744
igb->ims_mask = E1000_IMS_LSC;
usr/src/uts/common/io/igb/igb_main.c
3757
igb->ims_mask = IMS_ENABLE_MASK;
usr/src/uts/common/io/igb/igb_main.c
3777
igb_loopback_ioctl(igb_t *igb, struct iocblk *iocp, mblk_t *mp)
usr/src/uts/common/io/igb/igb_main.c
3786
hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
3840
*lbmp = igb->loopback_mode;
usr/src/uts/common/io/igb/igb_main.c
3849
if (!igb_set_loopback_mode(igb, *lbmp))
usr/src/uts/common/io/igb/igb_main.c
3857
if (igb_check_acc_handle(igb->osdep.reg_handle) != DDI_FM_OK) {
usr/src/uts/common/io/igb/igb_main.c
3858
ddi_fm_service_impact(igb->dip, DDI_SERVICE_DEGRADED);
usr/src/uts/common/io/igb/igb_main.c
3869
igb_set_loopback_mode(igb_t *igb, uint32_t mode)
usr/src/uts/common/io/igb/igb_main.c
3874
if (mode == igb->loopback_mode)
usr/src/uts/common/io/igb/igb_main.c
3877
hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
3879
igb->loopback_mode = mode;
usr/src/uts/common/io/igb/igb_main.c
3884
(void) igb_reset(igb);
usr/src/uts/common/io/igb/igb_main.c
3889
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
3893
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
3897
igb_set_external_loopback(igb);
usr/src/uts/common/io/igb/igb_main.c
3901
igb_set_internal_phy_loopback(igb);
usr/src/uts/common/io/igb/igb_main.c
3905
igb_set_internal_serdes_loopback(igb);
usr/src/uts/common/io/igb/igb_main.c
3909
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
3917
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
3918
(void) igb_link_check(igb);
usr/src/uts/common/io/igb/igb_main.c
3919
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
3921
if (igb->link_state == LINK_STATE_UP)
usr/src/uts/common/io/igb/igb_main.c
3927
if (igb->link_state != LINK_STATE_UP) {
usr/src/uts/common/io/igb/igb_main.c
3932
igb->loopback_mode = IGB_LB_NONE;
usr/src/uts/common/io/igb/igb_main.c
3936
(void) igb_reset(igb);
usr/src/uts/common/io/igb/igb_main.c
3939
igb_log(igb, IGB_LOG_INFO, "Set external loopback "
usr/src/uts/common/io/igb/igb_main.c
3953
igb_set_external_loopback(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
3958
hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
3975
igb_set_internal_phy_loopback(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
3982
hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
4009
igb_set_internal_serdes_loopback(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
4017
hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
4064
mac_rx_ring(rx_ring->igb->mac_hdl, rx_ring->ring_handle, mp,
usr/src/uts/common/io/igb/igb_main.c
4074
igb_t *igb = tx_ring->igb;
usr/src/uts/common/io/igb/igb_main.c
4081
(tx_ring->tbd_free >= igb->tx_resched_thresh)) {
usr/src/uts/common/io/igb/igb_main.c
4083
mac_tx_ring_update(tx_ring->igb->mac_hdl, tx_ring->ring_handle);
usr/src/uts/common/io/igb/igb_main.c
4092
igb_intr_link_work(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
4096
igb_stop_watchdog_timer(igb);
usr/src/uts/common/io/igb/igb_main.c
4098
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
4104
igb->hw.mac.get_link_status = true;
usr/src/uts/common/io/igb/igb_main.c
4107
link_changed = igb_link_check(igb);
usr/src/uts/common/io/igb/igb_main.c
4110
igb_get_phy_state(igb);
usr/src/uts/common/io/igb/igb_main.c
4112
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
4115
mac_link_update(igb->mac_hdl, igb->link_state);
usr/src/uts/common/io/igb/igb_main.c
4117
igb_start_watchdog_timer(igb);
usr/src/uts/common/io/igb/igb_main.c
4126
igb_t *igb = (igb_t *)arg1;
usr/src/uts/common/io/igb/igb_main.c
4136
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
4138
if (igb->igb_state & IGB_SUSPENDED) {
usr/src/uts/common/io/igb/igb_main.c
4139
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
4146
icr = E1000_READ_REG(&igb->hw, E1000_ICR);
usr/src/uts/common/io/igb/igb_main.c
4148
if (igb_check_acc_handle(igb->osdep.reg_handle) != DDI_FM_OK) {
usr/src/uts/common/io/igb/igb_main.c
4149
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
4150
ddi_fm_service_impact(igb->dip, DDI_SERVICE_DEGRADED);
usr/src/uts/common/io/igb/igb_main.c
4151
atomic_or_32(&igb->igb_state, IGB_ERROR);
usr/src/uts/common/io/igb/igb_main.c
4161
ASSERT(igb->num_rx_rings == 1);
usr/src/uts/common/io/igb/igb_main.c
4162
ASSERT(igb->num_tx_rings == 1);
usr/src/uts/common/io/igb/igb_main.c
4165
(void) E1000_READ_REG(&igb->hw, E1000_EICR);
usr/src/uts/common/io/igb/igb_main.c
4168
mp = igb_rx(&igb->rx_rings[0], IGB_NO_POLL);
usr/src/uts/common/io/igb/igb_main.c
4172
tx_ring = &igb->tx_rings[0];
usr/src/uts/common/io/igb/igb_main.c
4179
(tx_ring->tbd_free >= igb->tx_resched_thresh));
usr/src/uts/common/io/igb/igb_main.c
4187
igb->hw.mac.get_link_status = true;
usr/src/uts/common/io/igb/igb_main.c
4190
link_changed = igb_link_check(igb);
usr/src/uts/common/io/igb/igb_main.c
4193
igb_get_phy_state(igb);
usr/src/uts/common/io/igb/igb_main.c
4198
atomic_or_32(&igb->igb_state, IGB_STALL);
usr/src/uts/common/io/igb/igb_main.c
4210
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
4216
mac_rx(igb->mac_hdl, NULL, mp);
usr/src/uts/common/io/igb/igb_main.c
4220
mac_tx_ring_update(igb->mac_hdl, tx_ring->ring_handle);
usr/src/uts/common/io/igb/igb_main.c
4225
mac_link_update(igb->mac_hdl, igb->link_state);
usr/src/uts/common/io/igb/igb_main.c
4236
igb_t *igb = (igb_t *)arg1;
usr/src/uts/common/io/igb/igb_main.c
4241
icr = E1000_READ_REG(&igb->hw, E1000_ICR);
usr/src/uts/common/io/igb/igb_main.c
4243
if (igb_check_acc_handle(igb->osdep.reg_handle) != DDI_FM_OK) {
usr/src/uts/common/io/igb/igb_main.c
4244
ddi_fm_service_impact(igb->dip, DDI_SERVICE_DEGRADED);
usr/src/uts/common/io/igb/igb_main.c
4245
atomic_or_32(&igb->igb_state, IGB_ERROR);
usr/src/uts/common/io/igb/igb_main.c
4250
(void) E1000_READ_REG(&igb->hw, E1000_EICR);
usr/src/uts/common/io/igb/igb_main.c
4256
ASSERT(igb->num_rx_rings == 1);
usr/src/uts/common/io/igb/igb_main.c
4257
ASSERT(igb->num_tx_rings == 1);
usr/src/uts/common/io/igb/igb_main.c
4260
igb_intr_rx_work(&igb->rx_rings[0]);
usr/src/uts/common/io/igb/igb_main.c
4264
igb_intr_tx_work(&igb->tx_rings[0]);
usr/src/uts/common/io/igb/igb_main.c
4268
igb_intr_link_work(igb);
usr/src/uts/common/io/igb/igb_main.c
4273
atomic_or_32(&igb->igb_state, IGB_STALL);
usr/src/uts/common/io/igb/igb_main.c
4324
igb_t *igb = (igb_t *)arg1;
usr/src/uts/common/io/igb/igb_main.c
4329
icr = E1000_READ_REG(&igb->hw, E1000_ICR);
usr/src/uts/common/io/igb/igb_main.c
4331
if (igb_check_acc_handle(igb->osdep.reg_handle) != DDI_FM_OK) {
usr/src/uts/common/io/igb/igb_main.c
4332
ddi_fm_service_impact(igb->dip, DDI_SERVICE_DEGRADED);
usr/src/uts/common/io/igb/igb_main.c
4333
atomic_or_32(&igb->igb_state, IGB_ERROR);
usr/src/uts/common/io/igb/igb_main.c
4342
igb_intr_tx_work(&igb->tx_rings[0]);
usr/src/uts/common/io/igb/igb_main.c
4348
igb_intr_link_work(igb);
usr/src/uts/common/io/igb/igb_main.c
4360
IGB_STAT(igb->dout_sync);
usr/src/uts/common/io/igb/igb_main.c
4365
atomic_or_32(&igb->igb_state, IGB_STALL);
usr/src/uts/common/io/igb/igb_main.c
4381
igb_alloc_intrs(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
4387
devinfo = igb->dip;
usr/src/uts/common/io/igb/igb_main.c
4393
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_main.c
4397
igb_log(igb, IGB_LOG_INFO, "Supported interrupt types: %x",
usr/src/uts/common/io/igb/igb_main.c
4400
igb->intr_type = 0;
usr/src/uts/common/io/igb/igb_main.c
4404
(igb->intr_force <= IGB_INTR_MSIX)) {
usr/src/uts/common/io/igb/igb_main.c
4405
rc = igb_alloc_intr_handles(igb, DDI_INTR_TYPE_MSIX);
usr/src/uts/common/io/igb/igb_main.c
441
igb_t *igb;
usr/src/uts/common/io/igb/igb_main.c
4410
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
4415
igb->num_rx_rings = 1;
usr/src/uts/common/io/igb/igb_main.c
4416
igb->num_tx_rings = 1;
usr/src/uts/common/io/igb/igb_main.c
4417
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
4422
(igb->intr_force <= IGB_INTR_MSI)) {
usr/src/uts/common/io/igb/igb_main.c
4423
rc = igb_alloc_intr_handles(igb, DDI_INTR_TYPE_MSI);
usr/src/uts/common/io/igb/igb_main.c
4428
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
4434
rc = igb_alloc_intr_handles(igb, DDI_INTR_TYPE_FIXED);
usr/src/uts/common/io/igb/igb_main.c
4439
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
4456
igb_alloc_intr_handles(igb_t *igb, int intr_type)
usr/src/uts/common/io/igb/igb_main.c
4463
devinfo = igb->dip;
usr/src/uts/common/io/igb/igb_main.c
4469
igb_log(igb, IGB_LOG_INFO, "interrupt type: legacy");
usr/src/uts/common/io/igb/igb_main.c
4475
igb_log(igb, IGB_LOG_INFO, "interrupt type: MSI");
usr/src/uts/common/io/igb/igb_main.c
4484
request = igb->num_rx_rings + igb->num_tx_rings;
usr/src/uts/common/io/igb/igb_main.c
4487
igb_log(igb, IGB_LOG_INFO, "interrupt type: MSI-X");
usr/src/uts/common/io/igb/igb_main.c
4491
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
4496
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
4505
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
4510
igb_log(igb, IGB_LOG_INFO, "interrupts supported: %d", count);
usr/src/uts/common/io/igb/igb_main.c
4517
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
4522
igb_log(igb, IGB_LOG_INFO, "interrupts available: %d", avail);
usr/src/uts/common/io/igb/igb_main.c
4525
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
4532
igb->intr_cnt = 0;
usr/src/uts/common/io/igb/igb_main.c
4537
igb->intr_size = request * sizeof (ddi_intr_handle_t);
usr/src/uts/common/io/igb/igb_main.c
4538
igb->htable = kmem_alloc(igb->intr_size, KM_SLEEP);
usr/src/uts/common/io/igb/igb_main.c
4540
rc = ddi_intr_alloc(devinfo, igb->htable, intr_type, 0,
usr/src/uts/common/io/igb/igb_main.c
4543
igb_log(igb, IGB_LOG_INFO, "Allocate interrupts failed. "
usr/src/uts/common/io/igb/igb_main.c
4548
igb_log(igb, IGB_LOG_INFO, "interrupts actually allocated: %d", actual);
usr/src/uts/common/io/igb/igb_main.c
4550
igb->intr_cnt = actual;
usr/src/uts/common/io/igb/igb_main.c
4553
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
4564
if (diff < igb->num_tx_rings) {
usr/src/uts/common/io/igb/igb_main.c
4565
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
4567
igb->num_tx_rings - diff);
usr/src/uts/common/io/igb/igb_main.c
4568
igb->num_tx_rings -= diff;
usr/src/uts/common/io/igb/igb_main.c
4570
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
4572
igb->num_tx_rings = 1;
usr/src/uts/common/io/igb/igb_main.c
4574
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
4577
igb->num_rx_rings = actual - 1;
usr/src/uts/common/io/igb/igb_main.c
4584
rc = ddi_intr_get_pri(igb->htable[0], &igb->intr_pri);
usr/src/uts/common/io/igb/igb_main.c
4586
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
4591
rc = ddi_intr_get_cap(igb->htable[0], &igb->intr_cap);
usr/src/uts/common/io/igb/igb_main.c
4593
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
4598
igb->intr_type = intr_type;
usr/src/uts/common/io/igb/igb_main.c
4603
igb_rem_intrs(igb);
usr/src/uts/common/io/igb/igb_main.c
4615
igb_add_intr_handlers(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
4625
switch (igb->intr_type) {
usr/src/uts/common/io/igb/igb_main.c
4628
tx_ring = &igb->tx_rings[0];
usr/src/uts/common/io/igb/igb_main.c
4629
rc = ddi_intr_add_handler(igb->htable[vector],
usr/src/uts/common/io/igb/igb_main.c
4631
(void *)igb, NULL);
usr/src/uts/common/io/igb/igb_main.c
4634
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
464
igb = kmem_zalloc(sizeof (igb_t), KM_SLEEP);
usr/src/uts/common/io/igb/igb_main.c
4642
for (i = 0; i < igb->num_rx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
4643
rx_ring = &igb->rx_rings[i];
usr/src/uts/common/io/igb/igb_main.c
4645
rc = ddi_intr_add_handler(igb->htable[vector],
usr/src/uts/common/io/igb/igb_main.c
4650
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
4655
igb->htable[vector]);
usr/src/uts/common/io/igb/igb_main.c
466
igb->dip = devinfo;
usr/src/uts/common/io/igb/igb_main.c
4666
for (i = 1; i < igb->num_tx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
4667
tx_ring = &igb->tx_rings[i];
usr/src/uts/common/io/igb/igb_main.c
4669
rc = ddi_intr_add_handler(igb->htable[vector],
usr/src/uts/common/io/igb/igb_main.c
467
igb->instance = instance;
usr/src/uts/common/io/igb/igb_main.c
4674
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
4679
igb->htable[vector]);
usr/src/uts/common/io/igb/igb_main.c
469
hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
4693
rc = ddi_intr_add_handler(igb->htable[vector],
usr/src/uts/common/io/igb/igb_main.c
4695
(void *)igb, NULL);
usr/src/uts/common/io/igb/igb_main.c
4698
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
470
osdep = &igb->osdep;
usr/src/uts/common/io/igb/igb_main.c
4703
rx_ring = &igb->rx_rings[0];
usr/src/uts/common/io/igb/igb_main.c
4711
rc = ddi_intr_add_handler(igb->htable[vector],
usr/src/uts/common/io/igb/igb_main.c
4713
(void *)igb, NULL);
usr/src/uts/common/io/igb/igb_main.c
4716
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
472
osdep->igb = igb;
usr/src/uts/common/io/igb/igb_main.c
4721
rx_ring = &igb->rx_rings[0];
usr/src/uts/common/io/igb/igb_main.c
4731
ASSERT(vector == igb->intr_cnt);
usr/src/uts/common/io/igb/igb_main.c
4742
igb_setup_msix_82575(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
4746
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
475
ddi_set_driver_private(devinfo, igb);
usr/src/uts/common/io/igb/igb_main.c
4754
igb->eims_mask = E1000_EICR_TX_QUEUE0 | E1000_EICR_OTHER;
usr/src/uts/common/io/igb/igb_main.c
4755
E1000_WRITE_REG(hw, E1000_MSIXBM(vector), igb->eims_mask);
usr/src/uts/common/io/igb/igb_main.c
4758
for (i = 0; i < igb->num_rx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
4769
igb->eims_mask |= eims;
usr/src/uts/common/io/igb/igb_main.c
4774
for (i = 1; i < igb->num_tx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
4785
igb->eims_mask |= eims;
usr/src/uts/common/io/igb/igb_main.c
479
igb->fm_capabilities = igb_get_prop(igb, "fm-capable",
usr/src/uts/common/io/igb/igb_main.c
4790
ASSERT(vector == igb->intr_cnt);
usr/src/uts/common/io/igb/igb_main.c
4809
igb_setup_msix_82576(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
4811
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
483
igb_fm_init(igb);
usr/src/uts/common/io/igb/igb_main.c
4836
igb->eims_mask = (1 << vector);
usr/src/uts/common/io/igb/igb_main.c
4839
for (i = 0; i < igb->num_rx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
484
igb->attach_progress |= ATTACH_PROGRESS_FMINIT;
usr/src/uts/common/io/igb/igb_main.c
4858
igb->eims_mask |= (1 << vector);
usr/src/uts/common/io/igb/igb_main.c
4863
for (i = 1; i < igb->num_tx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
4883
igb->eims_mask |= (1 << vector);
usr/src/uts/common/io/igb/igb_main.c
4888
ASSERT(vector == igb->intr_cnt);
usr/src/uts/common/io/igb/igb_main.c
490
igb_log(igb, IGB_LOG_ERROR, "Failed to map PCI configurations");
usr/src/uts/common/io/igb/igb_main.c
4900
igb_setup_msix_82580(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
4902
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
4926
igb->eims_mask = (1 << vector);
usr/src/uts/common/io/igb/igb_main.c
493
igb->attach_progress |= ATTACH_PROGRESS_PCI_CONFIG;
usr/src/uts/common/io/igb/igb_main.c
4930
for (i = 0; i < igb->num_rx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
4949
igb->eims_mask |= (1 << vector);
usr/src/uts/common/io/igb/igb_main.c
4954
for (i = 1; i < igb->num_tx_rings; i++) {
usr/src/uts/common/io/igb/igb_main.c
4974
igb->eims_mask |= (1 << vector);
usr/src/uts/common/io/igb/igb_main.c
4978
ASSERT(vector == igb->intr_cnt);
usr/src/uts/common/io/igb/igb_main.c
498
if (igb_identify_hardware(igb) != IGB_SUCCESS) {
usr/src/uts/common/io/igb/igb_main.c
4985
igb_rem_intr_handlers(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
499
igb_log(igb, IGB_LOG_ERROR, "Failed to identify hardware");
usr/src/uts/common/io/igb/igb_main.c
4990
for (i = 0; i < igb->intr_cnt; i++) {
usr/src/uts/common/io/igb/igb_main.c
4991
rc = ddi_intr_remove_handler(igb->htable[i]);
usr/src/uts/common/io/igb/igb_main.c
4993
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
5003
igb_rem_intrs(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
5008
for (i = 0; i < igb->intr_cnt; i++) {
usr/src/uts/common/io/igb/igb_main.c
5009
rc = ddi_intr_free(igb->htable[i]);
usr/src/uts/common/io/igb/igb_main.c
5011
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_main.c
5016
kmem_free(igb->htable, igb->intr_size);
usr/src/uts/common/io/igb/igb_main.c
5017
igb->htable = NULL;
usr/src/uts/common/io/igb/igb_main.c
5024
igb_enable_intrs(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
5030
if (igb->intr_cap & DDI_INTR_FLAG_BLOCK) {
usr/src/uts/common/io/igb/igb_main.c
5032
rc = ddi_intr_block_enable(igb->htable, igb->intr_cnt);
usr/src/uts/common/io/igb/igb_main.c
5034
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_main.c
5040
for (i = 0; i < igb->intr_cnt; i++) {
usr/src/uts/common/io/igb/igb_main.c
5041
rc = ddi_intr_enable(igb->htable[i]);
usr/src/uts/common/io/igb/igb_main.c
5043
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_main.c
5057
igb_disable_intrs(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
506
if (igb_regs_map(igb) != IGB_SUCCESS) {
usr/src/uts/common/io/igb/igb_main.c
5063
if (igb->intr_cap & DDI_INTR_FLAG_BLOCK) {
usr/src/uts/common/io/igb/igb_main.c
5064
rc = ddi_intr_block_disable(igb->htable, igb->intr_cnt);
usr/src/uts/common/io/igb/igb_main.c
5066
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_main.c
507
igb_log(igb, IGB_LOG_ERROR, "Failed to map device registers");
usr/src/uts/common/io/igb/igb_main.c
5071
for (i = 0; i < igb->intr_cnt; i++) {
usr/src/uts/common/io/igb/igb_main.c
5072
rc = ddi_intr_disable(igb->htable[i]);
usr/src/uts/common/io/igb/igb_main.c
5074
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_main.c
5088
igb_get_phy_state(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
5090
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
510
igb->attach_progress |= ATTACH_PROGRESS_REGS_MAP;
usr/src/uts/common/io/igb/igb_main.c
5100
ASSERT(mutex_owned(&igb->gen_lock));
usr/src/uts/common/io/igb/igb_main.c
5113
igb->param_autoneg_cap =
usr/src/uts/common/io/igb/igb_main.c
5115
igb->param_pause_cap =
usr/src/uts/common/io/igb/igb_main.c
5117
igb->param_asym_pause_cap =
usr/src/uts/common/io/igb/igb_main.c
5119
igb->param_1000fdx_cap =
usr/src/uts/common/io/igb/igb_main.c
5122
igb->param_1000hdx_cap =
usr/src/uts/common/io/igb/igb_main.c
5125
igb->param_100t4_cap =
usr/src/uts/common/io/igb/igb_main.c
5127
igb->param_100fdx_cap = ((phy_status & MII_SR_100X_FD_CAPS) ||
usr/src/uts/common/io/igb/igb_main.c
5129
igb->param_100hdx_cap = ((phy_status & MII_SR_100X_HD_CAPS) ||
usr/src/uts/common/io/igb/igb_main.c
5131
igb->param_10fdx_cap =
usr/src/uts/common/io/igb/igb_main.c
5133
igb->param_10hdx_cap =
usr/src/uts/common/io/igb/igb_main.c
5135
igb->param_rem_fault =
usr/src/uts/common/io/igb/igb_main.c
5138
igb->param_adv_autoneg_cap = hw->mac.autoneg;
usr/src/uts/common/io/igb/igb_main.c
5139
igb->param_adv_pause_cap =
usr/src/uts/common/io/igb/igb_main.c
5141
igb->param_adv_asym_pause_cap =
usr/src/uts/common/io/igb/igb_main.c
5143
igb->param_adv_1000hdx_cap =
usr/src/uts/common/io/igb/igb_main.c
5145
igb->param_adv_100t4_cap =
usr/src/uts/common/io/igb/igb_main.c
5147
igb->param_adv_rem_fault =
usr/src/uts/common/io/igb/igb_main.c
5149
if (igb->param_adv_autoneg_cap == 1) {
usr/src/uts/common/io/igb/igb_main.c
515
igb_init_properties(igb);
usr/src/uts/common/io/igb/igb_main.c
5150
igb->param_adv_1000fdx_cap =
usr/src/uts/common/io/igb/igb_main.c
5152
igb->param_adv_100fdx_cap =
usr/src/uts/common/io/igb/igb_main.c
5154
igb->param_adv_100hdx_cap =
usr/src/uts/common/io/igb/igb_main.c
5156
igb->param_adv_10fdx_cap =
usr/src/uts/common/io/igb/igb_main.c
5158
igb->param_adv_10hdx_cap =
usr/src/uts/common/io/igb/igb_main.c
516
igb->attach_progress |= ATTACH_PROGRESS_PROPS;
usr/src/uts/common/io/igb/igb_main.c
5162
igb->param_lp_autoneg_cap =
usr/src/uts/common/io/igb/igb_main.c
5164
igb->param_lp_pause_cap =
usr/src/uts/common/io/igb/igb_main.c
5166
igb->param_lp_asym_pause_cap =
usr/src/uts/common/io/igb/igb_main.c
5168
igb->param_lp_1000fdx_cap =
usr/src/uts/common/io/igb/igb_main.c
5170
igb->param_lp_1000hdx_cap =
usr/src/uts/common/io/igb/igb_main.c
5172
igb->param_lp_100t4_cap =
usr/src/uts/common/io/igb/igb_main.c
5174
igb->param_lp_100fdx_cap =
usr/src/uts/common/io/igb/igb_main.c
5176
igb->param_lp_100hdx_cap =
usr/src/uts/common/io/igb/igb_main.c
5178
igb->param_lp_10fdx_cap =
usr/src/uts/common/io/igb/igb_main.c
5180
igb->param_lp_10hdx_cap =
usr/src/uts/common/io/igb/igb_main.c
5182
igb->param_lp_rem_fault =
usr/src/uts/common/io/igb/igb_main.c
5188
igb->param_autoneg_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5189
igb->param_pause_cap = 1;
usr/src/uts/common/io/igb/igb_main.c
5190
igb->param_asym_pause_cap = 1;
usr/src/uts/common/io/igb/igb_main.c
5191
igb->param_1000fdx_cap = 1;
usr/src/uts/common/io/igb/igb_main.c
5192
igb->param_1000hdx_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5193
igb->param_100t4_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5194
igb->param_100fdx_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5195
igb->param_100hdx_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5196
igb->param_10fdx_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5197
igb->param_10hdx_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5199
igb->param_adv_autoneg_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5200
igb->param_adv_pause_cap = 1;
usr/src/uts/common/io/igb/igb_main.c
5201
igb->param_adv_asym_pause_cap = 1;
usr/src/uts/common/io/igb/igb_main.c
5202
igb->param_adv_1000fdx_cap = 1;
usr/src/uts/common/io/igb/igb_main.c
5203
igb->param_adv_1000hdx_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5204
igb->param_adv_100t4_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5205
igb->param_adv_100fdx_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5206
igb->param_adv_100hdx_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5207
igb->param_adv_10fdx_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5208
igb->param_adv_10hdx_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
521
if (igb_alloc_intrs(igb) != IGB_SUCCESS) {
usr/src/uts/common/io/igb/igb_main.c
5210
igb->param_lp_autoneg_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5211
igb->param_lp_pause_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5212
igb->param_lp_asym_pause_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5213
igb->param_lp_1000fdx_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5214
igb->param_lp_1000hdx_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5215
igb->param_lp_100t4_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5216
igb->param_lp_100fdx_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5217
igb->param_lp_100hdx_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5218
igb->param_lp_10fdx_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
5219
igb->param_lp_10hdx_cap = 0;
usr/src/uts/common/io/igb/igb_main.c
522
igb_log(igb, IGB_LOG_ERROR, "Failed to allocate interrupts");
usr/src/uts/common/io/igb/igb_main.c
5220
igb->param_lp_rem_fault = 0;
usr/src/uts/common/io/igb/igb_main.c
5233
igb_param_sync(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
5235
igb->param_en_1000fdx_cap = igb->param_adv_1000fdx_cap;
usr/src/uts/common/io/igb/igb_main.c
5236
igb->param_en_1000hdx_cap = igb->param_adv_1000hdx_cap;
usr/src/uts/common/io/igb/igb_main.c
5237
igb->param_en_100t4_cap = igb->param_adv_100t4_cap;
usr/src/uts/common/io/igb/igb_main.c
5238
igb->param_en_100fdx_cap = igb->param_adv_100fdx_cap;
usr/src/uts/common/io/igb/igb_main.c
5239
igb->param_en_100hdx_cap = igb->param_adv_100hdx_cap;
usr/src/uts/common/io/igb/igb_main.c
5240
igb->param_en_10fdx_cap = igb->param_adv_10fdx_cap;
usr/src/uts/common/io/igb/igb_main.c
5241
igb->param_en_10hdx_cap = igb->param_adv_10hdx_cap;
usr/src/uts/common/io/igb/igb_main.c
525
igb->attach_progress |= ATTACH_PROGRESS_ALLOC_INTR;
usr/src/uts/common/io/igb/igb_main.c
533
if (igb_alloc_rings(igb) != IGB_SUCCESS) {
usr/src/uts/common/io/igb/igb_main.c
5331
igb_fm_init(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
5337
if (igb->fm_capabilities & DDI_FM_ACCCHK_CAPABLE) {
usr/src/uts/common/io/igb/igb_main.c
534
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_main.c
5343
if (igb->fm_capabilities & DDI_FM_DMACHK_CAPABLE) {
usr/src/uts/common/io/igb/igb_main.c
5351
if (igb->fm_capabilities) {
usr/src/uts/common/io/igb/igb_main.c
5354
ddi_fm_init(igb->dip, &igb->fm_capabilities, &iblk);
usr/src/uts/common/io/igb/igb_main.c
5359
if (DDI_FM_EREPORT_CAP(igb->fm_capabilities) ||
usr/src/uts/common/io/igb/igb_main.c
5360
DDI_FM_ERRCB_CAP(igb->fm_capabilities))
usr/src/uts/common/io/igb/igb_main.c
5361
pci_ereport_setup(igb->dip);
usr/src/uts/common/io/igb/igb_main.c
5366
if (DDI_FM_ERRCB_CAP(igb->fm_capabilities))
usr/src/uts/common/io/igb/igb_main.c
5367
ddi_fm_handler_register(igb->dip,
usr/src/uts/common/io/igb/igb_main.c
5368
igb_fm_error_cb, (void*) igb);
usr/src/uts/common/io/igb/igb_main.c
5373
igb_fm_fini(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
5376
if (igb->fm_capabilities) {
usr/src/uts/common/io/igb/igb_main.c
538
igb->attach_progress |= ATTACH_PROGRESS_ALLOC_RINGS;
usr/src/uts/common/io/igb/igb_main.c
5381
if (DDI_FM_EREPORT_CAP(igb->fm_capabilities) ||
usr/src/uts/common/io/igb/igb_main.c
5382
DDI_FM_ERRCB_CAP(igb->fm_capabilities))
usr/src/uts/common/io/igb/igb_main.c
5383
pci_ereport_teardown(igb->dip);
usr/src/uts/common/io/igb/igb_main.c
5388
if (DDI_FM_ERRCB_CAP(igb->fm_capabilities))
usr/src/uts/common/io/igb/igb_main.c
5389
ddi_fm_handler_unregister(igb->dip);
usr/src/uts/common/io/igb/igb_main.c
5392
ddi_fm_fini(igb->dip);
usr/src/uts/common/io/igb/igb_main.c
5397
igb_fm_ereport(igb_t *igb, char *detail)
usr/src/uts/common/io/igb/igb_main.c
5404
if (DDI_FM_EREPORT_CAP(igb->fm_capabilities)) {
usr/src/uts/common/io/igb/igb_main.c
5405
ddi_fm_ereport_post(igb->dip, buf, ena, DDI_NOSLEEP,
usr/src/uts/common/io/igb/igb_main.c
5414
igb_t *igb = arg;
usr/src/uts/common/io/igb/igb_main.c
5423
switch (igb->hw.nvm.type) {
usr/src/uts/common/io/igb/igb_main.c
543
if (igb_add_intr_handlers(igb) != IGB_SUCCESS) {
usr/src/uts/common/io/igb/igb_main.c
544
igb_log(igb, IGB_LOG_ERROR, "Failed to add interrupt handlers");
usr/src/uts/common/io/igb/igb_main.c
5460
igb_t *igb = arg;
usr/src/uts/common/io/igb/igb_main.c
5467
if (ddi_prop_lookup_string(DDI_DEV_T_ANY, igb->dip, DDI_PROP_DONTPASS,
usr/src/uts/common/io/igb/igb_main.c
547
igb->attach_progress |= ATTACH_PROGRESS_ADD_INTR;
usr/src/uts/common/io/igb/igb_main.c
5477
ddi_ufm_slot_set_imgsize(slotp, igb->hw.nvm.word_size * 2);
usr/src/uts/common/io/igb/igb_main.c
5484
igb_t *igb = arg;
usr/src/uts/common/io/igb/igb_main.c
5487
if (igb->hw.nvm.type != e1000_nvm_none &&
usr/src/uts/common/io/igb/igb_main.c
5488
igb->hw.nvm.type != e1000_nvm_unknown) {
usr/src/uts/common/io/igb/igb_main.c
5491
if (igb->hw.nvm.ops.read != NULL) {
usr/src/uts/common/io/igb/igb_main.c
5503
igb_t *igb = arg;
usr/src/uts/common/io/igb/igb_main.c
5505
uint32_t imgsize = igb->hw.nvm.word_size * 2;
usr/src/uts/common/io/igb/igb_main.c
5516
if (igb->hw.nvm.ops.read == NULL) {
usr/src/uts/common/io/igb/igb_main.c
552
if (igb_init_driver_settings(igb) != IGB_SUCCESS) {
usr/src/uts/common/io/igb/igb_main.c
553
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_main.c
5532
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
5533
ret = e1000_read_nvm(&igb->hw, wordoff, nwords, buf16);
usr/src/uts/common/io/igb/igb_main.c
5534
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
558
if (igb_check_acc_handle(igb->osdep.cfg_handle) != DDI_FM_OK) {
usr/src/uts/common/io/igb/igb_main.c
559
ddi_fm_service_impact(igb->dip, DDI_SERVICE_LOST);
usr/src/uts/common/io/igb/igb_main.c
569
igb_init_locks(igb);
usr/src/uts/common/io/igb/igb_main.c
570
igb->attach_progress |= ATTACH_PROGRESS_LOCKS;
usr/src/uts/common/io/igb/igb_main.c
575
if (igb_init(igb) != IGB_SUCCESS) {
usr/src/uts/common/io/igb/igb_main.c
576
igb_log(igb, IGB_LOG_ERROR, "Failed to initialize adapter");
usr/src/uts/common/io/igb/igb_main.c
579
igb->attach_progress |= ATTACH_PROGRESS_INIT_ADAPTER;
usr/src/uts/common/io/igb/igb_main.c
585
igb_init_sensors(igb);
usr/src/uts/common/io/igb/igb_main.c
590
if (igb_init_stats(igb) != IGB_SUCCESS) {
usr/src/uts/common/io/igb/igb_main.c
591
igb_log(igb, IGB_LOG_ERROR, "Failed to initialize statistics");
usr/src/uts/common/io/igb/igb_main.c
594
igb->attach_progress |= ATTACH_PROGRESS_STATS;
usr/src/uts/common/io/igb/igb_main.c
599
if (igb_register_mac(igb) != IGB_SUCCESS) {
usr/src/uts/common/io/igb/igb_main.c
600
igb_log(igb, IGB_LOG_ERROR, "Failed to register MAC");
usr/src/uts/common/io/igb/igb_main.c
603
igb->attach_progress |= ATTACH_PROGRESS_MAC;
usr/src/uts/common/io/igb/igb_main.c
609
if (igb_enable_intrs(igb) != IGB_SUCCESS) {
usr/src/uts/common/io/igb/igb_main.c
610
igb_log(igb, IGB_LOG_ERROR, "Failed to enable DDI interrupts");
usr/src/uts/common/io/igb/igb_main.c
613
igb->attach_progress |= ATTACH_PROGRESS_ENABLE_INTR;
usr/src/uts/common/io/igb/igb_main.c
619
if (igb->hw.bus.func == 0) {
usr/src/uts/common/io/igb/igb_main.c
621
&igb->igb_ufmh, igb) != 0) {
usr/src/uts/common/io/igb/igb_main.c
622
igb_log(igb, IGB_LOG_ERROR, "Failed to enable DDI UFM "
usr/src/uts/common/io/igb/igb_main.c
626
igb->attach_progress |= ATTACH_PROGRESS_UFM;
usr/src/uts/common/io/igb/igb_main.c
627
ddi_ufm_update(igb->igb_ufmh);
usr/src/uts/common/io/igb/igb_main.c
630
igb_log(igb, IGB_LOG_INFO, "%s", igb_version);
usr/src/uts/common/io/igb/igb_main.c
631
atomic_or_32(&igb->igb_state, IGB_INITIALIZED);
usr/src/uts/common/io/igb/igb_main.c
637
if (igb->hw.mac.type == e1000_i350)
usr/src/uts/common/io/igb/igb_main.c
638
(void) e1000_set_eee_i350(&igb->hw, false, false);
usr/src/uts/common/io/igb/igb_main.c
639
else if (igb->hw.mac.type == e1000_i354)
usr/src/uts/common/io/igb/igb_main.c
640
(void) e1000_set_eee_i354(&igb->hw, false, false);
usr/src/uts/common/io/igb/igb_main.c
645
igb_unconfigure(devinfo, igb);
usr/src/uts/common/io/igb/igb_main.c
667
igb_t *igb;
usr/src/uts/common/io/igb/igb_main.c
687
igb = (igb_t *)ddi_get_driver_private(devinfo);
usr/src/uts/common/io/igb/igb_main.c
688
if (igb == NULL)
usr/src/uts/common/io/igb/igb_main.c
694
if (mac_unregister(igb->mac_hdl) != 0) {
usr/src/uts/common/io/igb/igb_main.c
695
igb_log(igb, IGB_LOG_ERROR, "Failed to unregister MAC");
usr/src/uts/common/io/igb/igb_main.c
698
igb->attach_progress &= ~ATTACH_PROGRESS_MAC;
usr/src/uts/common/io/igb/igb_main.c
706
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
707
if (igb->igb_state & IGB_STARTED) {
usr/src/uts/common/io/igb/igb_main.c
708
atomic_and_32(&igb->igb_state, ~IGB_STARTED);
usr/src/uts/common/io/igb/igb_main.c
709
igb_stop(igb, B_TRUE);
usr/src/uts/common/io/igb/igb_main.c
710
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
712
igb_disable_watchdog_timer(igb);
usr/src/uts/common/io/igb/igb_main.c
714
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
720
if (!igb_rx_drain(igb))
usr/src/uts/common/io/igb/igb_main.c
726
igb_unconfigure(devinfo, igb);
usr/src/uts/common/io/igb/igb_main.c
744
igb_t *igb;
usr/src/uts/common/io/igb/igb_main.c
747
igb = (igb_t *)ddi_get_driver_private(devinfo);
usr/src/uts/common/io/igb/igb_main.c
749
if (igb == NULL)
usr/src/uts/common/io/igb/igb_main.c
752
hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
757
igb_disable_adapter_interrupts(igb);
usr/src/uts/common/io/igb/igb_main.c
780
igb_unconfigure(dev_info_t *devinfo, igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
782
if (igb->attach_progress & ATTACH_PROGRESS_UFM) {
usr/src/uts/common/io/igb/igb_main.c
783
ddi_ufm_fini(igb->igb_ufmh);
usr/src/uts/common/io/igb/igb_main.c
789
if (igb->attach_progress & ATTACH_PROGRESS_ENABLE_INTR) {
usr/src/uts/common/io/igb/igb_main.c
790
(void) igb_disable_intrs(igb);
usr/src/uts/common/io/igb/igb_main.c
796
if (igb->attach_progress & ATTACH_PROGRESS_MAC) {
usr/src/uts/common/io/igb/igb_main.c
797
(void) mac_unregister(igb->mac_hdl);
usr/src/uts/common/io/igb/igb_main.c
803
if (igb->attach_progress & ATTACH_PROGRESS_STATS) {
usr/src/uts/common/io/igb/igb_main.c
804
kstat_delete((kstat_t *)igb->igb_ks);
usr/src/uts/common/io/igb/igb_main.c
810
if (igb->attach_progress & ATTACH_PROGRESS_ADD_INTR) {
usr/src/uts/common/io/igb/igb_main.c
811
igb_rem_intr_handlers(igb);
usr/src/uts/common/io/igb/igb_main.c
817
if (igb->attach_progress & ATTACH_PROGRESS_ALLOC_INTR) {
usr/src/uts/common/io/igb/igb_main.c
818
igb_rem_intrs(igb);
usr/src/uts/common/io/igb/igb_main.c
824
if (igb->attach_progress & ATTACH_PROGRESS_PROPS) {
usr/src/uts/common/io/igb/igb_main.c
831
if (igb->attach_progress & ATTACH_PROGRESS_INIT_ADAPTER) {
usr/src/uts/common/io/igb/igb_main.c
832
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
833
igb_stop_adapter(igb);
usr/src/uts/common/io/igb/igb_main.c
834
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_main.c
835
if (igb_check_acc_handle(igb->osdep.reg_handle) != DDI_FM_OK)
usr/src/uts/common/io/igb/igb_main.c
836
ddi_fm_service_impact(igb->dip, DDI_SERVICE_UNAFFECTED);
usr/src/uts/common/io/igb/igb_main.c
842
igb_fini_sensors(igb);
usr/src/uts/common/io/igb/igb_main.c
847
igb_release_multicast(igb);
usr/src/uts/common/io/igb/igb_main.c
852
if (igb->attach_progress & ATTACH_PROGRESS_REGS_MAP) {
usr/src/uts/common/io/igb/igb_main.c
853
if (igb->osdep.reg_handle != NULL)
usr/src/uts/common/io/igb/igb_main.c
854
ddi_regs_map_free(&igb->osdep.reg_handle);
usr/src/uts/common/io/igb/igb_main.c
860
if (igb->attach_progress & ATTACH_PROGRESS_PCI_CONFIG) {
usr/src/uts/common/io/igb/igb_main.c
861
if (igb->osdep.cfg_handle != NULL)
usr/src/uts/common/io/igb/igb_main.c
862
pci_config_teardown(&igb->osdep.cfg_handle);
usr/src/uts/common/io/igb/igb_main.c
868
if (igb->attach_progress & ATTACH_PROGRESS_LOCKS) {
usr/src/uts/common/io/igb/igb_main.c
869
igb_destroy_locks(igb);
usr/src/uts/common/io/igb/igb_main.c
875
if (igb->attach_progress & ATTACH_PROGRESS_ALLOC_RINGS) {
usr/src/uts/common/io/igb/igb_main.c
876
igb_free_rings(igb);
usr/src/uts/common/io/igb/igb_main.c
882
if (igb->attach_progress & ATTACH_PROGRESS_FMINIT) {
usr/src/uts/common/io/igb/igb_main.c
883
igb_fm_fini(igb);
usr/src/uts/common/io/igb/igb_main.c
889
kmem_free(igb, sizeof (igb_t));
usr/src/uts/common/io/igb/igb_main.c
899
igb_register_mac(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
901
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
909
mac->m_driver = igb;
usr/src/uts/common/io/igb/igb_main.c
910
mac->m_dip = igb->dip;
usr/src/uts/common/io/igb/igb_main.c
914
mac->m_max_sdu = igb->max_frame_size -
usr/src/uts/common/io/igb/igb_main.c
920
status = mac_register(mac, &igb->mac_hdl);
usr/src/uts/common/io/igb/igb_main.c
931
igb_identify_hardware(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
933
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
934
struct igb_osdep *osdep = &igb->osdep;
usr/src/uts/common/io/igb/igb_main.c
962
igb->capab = &igb_82575_cap;
usr/src/uts/common/io/igb/igb_main.c
965
igb->capab = &igb_82576_cap;
usr/src/uts/common/io/igb/igb_main.c
968
igb->capab = &igb_82580_cap;
usr/src/uts/common/io/igb/igb_main.c
971
igb->capab = &igb_i350_cap;
usr/src/uts/common/io/igb/igb_main.c
975
igb->capab = &igb_i210_cap;
usr/src/uts/common/io/igb/igb_main.c
978
igb->capab = &igb_i354_cap;
usr/src/uts/common/io/igb/igb_main.c
991
igb_regs_map(igb_t *igb)
usr/src/uts/common/io/igb/igb_main.c
993
dev_info_t *devinfo = igb->dip;
usr/src/uts/common/io/igb/igb_main.c
994
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_main.c
995
struct igb_osdep *osdep = &igb->osdep;
usr/src/uts/common/io/igb/igb_rx.c
110
mutex_enter(&igb->rx_pending_lock);
usr/src/uts/common/io/igb/igb_rx.c
112
atomic_dec_32(&igb->rcb_pending);
usr/src/uts/common/io/igb/igb_rx.c
122
mutex_exit(&igb->rx_pending_lock);
usr/src/uts/common/io/igb/igb_rx.c
137
igb_t *igb = rx_data->rx_ring->igb;
usr/src/uts/common/io/igb/igb_rx.c
145
ddi_fm_service_impact(igb->dip, DDI_SERVICE_DEGRADED);
usr/src/uts/common/io/igb/igb_rx.c
146
atomic_or_32(&igb->igb_state, IGB_ERROR);
usr/src/uts/common/io/igb/igb_rx.c
155
igb_log(igb, IGB_LOG_INFO,
usr/src/uts/common/io/igb/igb_rx.c
183
igb_t *igb = rx_data->rx_ring->igb;
usr/src/uts/common/io/igb/igb_rx.c
220
ddi_fm_service_impact(igb->dip, DDI_SERVICE_DEGRADED);
usr/src/uts/common/io/igb/igb_rx.c
221
atomic_or_32(&igb->igb_state, IGB_ERROR);
usr/src/uts/common/io/igb/igb_rx.c
292
if ((bytes == 0) || (rx_ring->igb->igb_state & IGB_SUSPENDED) ||
usr/src/uts/common/io/igb/igb_rx.c
293
!(rx_ring->igb->igb_state & IGB_STARTED))
usr/src/uts/common/io/igb/igb_rx.c
325
igb_t *igb = rx_ring->igb;
usr/src/uts/common/io/igb/igb_rx.c
331
if (igb->igb_state & IGB_ERROR)
usr/src/uts/common/io/igb/igb_rx.c
342
ddi_fm_service_impact(igb->dip, DDI_SERVICE_DEGRADED);
usr/src/uts/common/io/igb/igb_rx.c
343
atomic_or_32(&igb->igb_state, IGB_ERROR);
usr/src/uts/common/io/igb/igb_rx.c
393
if (pkt_len > igb->rx_copy_thresh)
usr/src/uts/common/io/igb/igb_rx.c
403
if (igb->rx_hcksum_enable)
usr/src/uts/common/io/igb/igb_rx.c
429
if (++pkt_num > igb->rx_limit_per_intr) {
usr/src/uts/common/io/igb/igb_rx.c
447
E1000_WRITE_REG(&igb->hw, E1000_RDT(rx_ring->index), rx_tail);
usr/src/uts/common/io/igb/igb_rx.c
449
if (igb_check_acc_handle(igb->osdep.reg_handle) != DDI_FM_OK) {
usr/src/uts/common/io/igb/igb_rx.c
45
igb_t *igb;
usr/src/uts/common/io/igb/igb_rx.c
450
ddi_fm_service_impact(igb->dip, DDI_SERVICE_DEGRADED);
usr/src/uts/common/io/igb/igb_rx.c
451
atomic_or_32(&igb->igb_state, IGB_ERROR);
usr/src/uts/common/io/igb/igb_rx.c
55
igb = rx_ring->igb;
usr/src/uts/common/io/igb/igb_sensor.c
104
igb_sensors_create_minors(igb_t *igb)
usr/src/uts/common/io/igb/igb_sensor.c
107
igb_sensors_t *sp = &igb->igb_sensors;
usr/src/uts/common/io/igb/igb_sensor.c
109
if ((ret = ksensor_create_scalar_pcidev(igb->dip,
usr/src/uts/common/io/igb/igb_sensor.c
110
SENSOR_KIND_TEMPERATURE, &igb_sensor_reg_ops, igb, "builtin",
usr/src/uts/common/io/igb/igb_sensor.c
112
igb_log(igb, IGB_LOG_ERROR, "failed to create main sensor: %d",
usr/src/uts/common/io/igb/igb_sensor.c
121
igb_sensors_init_ets(igb_t *igb, uint_t ets_off, uint_t index)
usr/src/uts/common/io/igb/igb_sensor.c
125
igb_sensors_t *sensors = &igb->igb_sensors;
usr/src/uts/common/io/igb/igb_sensor.c
129
if ((ret = e1000_read_nvm(&igb->hw, ets_off, 1, &val)) !=
usr/src/uts/common/io/igb/igb_sensor.c
131
igb_log(igb, IGB_LOG_ERROR, "failed to read ETS word "
usr/src/uts/common/io/igb/igb_sensor.c
154
igb_init_sensors(igb_t *igb)
usr/src/uts/common/io/igb/igb_sensor.c
156
struct e1000_hw *hw = &igb->hw;
usr/src/uts/common/io/igb/igb_sensor.c
163
hw = &igb->hw;
usr/src/uts/common/io/igb/igb_sensor.c
180
igb_log(igb, IGB_LOG_ERROR, "failed to read ETS word "
usr/src/uts/common/io/igb/igb_sensor.c
195
igb_log(igb, IGB_LOG_ERROR, "firmware NVM ETS "
usr/src/uts/common/io/igb/igb_sensor.c
202
if (!igb_sensors_init_ets(igb, ets_off, i)) {
usr/src/uts/common/io/igb/igb_sensor.c
208
if (!igb_sensors_create_minors(igb)) {
usr/src/uts/common/io/igb/igb_sensor.c
209
(void) ksensor_remove(igb->dip, KSENSOR_ALL_IDS);
usr/src/uts/common/io/igb/igb_sensor.c
213
igb->igb_sensors.isn_valid = B_TRUE;
usr/src/uts/common/io/igb/igb_sensor.c
217
igb_fini_sensors(igb_t *igb)
usr/src/uts/common/io/igb/igb_sensor.c
219
if (igb->igb_sensors.isn_valid) {
usr/src/uts/common/io/igb/igb_sensor.c
220
(void) ksensor_remove(igb->dip, KSENSOR_ALL_IDS);
usr/src/uts/common/io/igb/igb_sensor.c
221
igb->igb_sensors.isn_valid = B_FALSE;
usr/src/uts/common/io/igb/igb_sensor.c
77
igb_t *igb = arg;
usr/src/uts/common/io/igb/igb_sensor.c
80
if (igb->hw.mac.ops.acquire_swfw_sync(&igb->hw, E1000_SWFW_PWRTS_SM) !=
usr/src/uts/common/io/igb/igb_sensor.c
84
reg = E1000_READ_REG(&igb->hw, E1000_THMJT);
usr/src/uts/common/io/igb/igb_sensor.c
85
igb->hw.mac.ops.release_swfw_sync(&igb->hw, E1000_SWFW_PWRTS_SM);
usr/src/uts/common/io/igb/igb_stat.c
137
mutex_exit(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_stat.c
139
if (igb_check_acc_handle(igb->osdep.reg_handle) != DDI_FM_OK) {
usr/src/uts/common/io/igb/igb_stat.c
140
ddi_fm_service_impact(igb->dip, DDI_SERVICE_DEGRADED);
usr/src/uts/common/io/igb/igb_stat.c
151
igb_init_stats(igb_t *igb)
usr/src/uts/common/io/igb/igb_stat.c
159
ks = kstat_create(MODULE_NAME, ddi_get_instance(igb->dip),
usr/src/uts/common/io/igb/igb_stat.c
164
igb_log(igb, IGB_LOG_ERROR,
usr/src/uts/common/io/igb/igb_stat.c
169
igb->igb_ks = ks;
usr/src/uts/common/io/igb/igb_stat.c
263
ks->ks_private = (void *)igb;
usr/src/uts/common/io/igb/igb_stat.c
39
igb_t *igb;
usr/src/uts/common/io/igb/igb_stat.c
50
igb = (igb_t *)ks->ks_private;
usr/src/uts/common/io/igb/igb_stat.c
52
hw = &igb->hw;
usr/src/uts/common/io/igb/igb_stat.c
54
mutex_enter(&igb->gen_lock);
usr/src/uts/common/io/igb/igb_stat.c
59
igb_ks->reset_count.value.ui64 = igb->reset_count;
usr/src/uts/common/io/igb/igb_stat.c
60
igb_ks->dout_sync.value.ui64 = igb->dout_sync;
usr/src/uts/common/io/igb/igb_stat.c
66
for (i = 0; i < igb->num_rx_rings; i++) {
usr/src/uts/common/io/igb/igb_stat.c
68
igb->rx_rings[i].stat_frame_error;
usr/src/uts/common/io/igb/igb_stat.c
70
igb->rx_rings[i].stat_cksum_error;
usr/src/uts/common/io/igb/igb_stat.c
72
igb->rx_rings[i].stat_exceed_pkt;
usr/src/uts/common/io/igb/igb_stat.c
80
for (i = 0; i < igb->num_tx_rings; i++) {
usr/src/uts/common/io/igb/igb_stat.c
82
igb->tx_rings[i].stat_overload;
usr/src/uts/common/io/igb/igb_stat.c
84
igb->tx_rings[i].stat_fail_no_tbd;
usr/src/uts/common/io/igb/igb_stat.c
86
igb->tx_rings[i].stat_fail_no_tcb;
usr/src/uts/common/io/igb/igb_stat.c
88
igb->tx_rings[i].stat_fail_dma_bind;
usr/src/uts/common/io/igb/igb_stat.c
90
igb->tx_rings[i].stat_reschedule;
usr/src/uts/common/io/igb/igb_sw.h
318
typedef void (*igb_nic_func_t)(struct igb *);
usr/src/uts/common/io/igb/igb_sw.h
484
struct igb *igb;
usr/src/uts/common/io/igb/igb_sw.h
550
struct igb *igb; /* Pointer to igb struct */
usr/src/uts/common/io/igb/igb_sw.h
562
struct igb *igb; /* Pointer to igb struct */
usr/src/uts/common/io/igb/igb_tx.c
1057
if (igb_check_acc_handle(igb->osdep.reg_handle) != DDI_FM_OK) {
usr/src/uts/common/io/igb/igb_tx.c
1058
ddi_fm_service_impact(igb->dip, DDI_SERVICE_DEGRADED);
usr/src/uts/common/io/igb/igb_tx.c
1059
atomic_or_32(&igb->igb_state, IGB_ERROR);
usr/src/uts/common/io/igb/igb_tx.c
1102
igb_t *igb = tx_ring->igb;
usr/src/uts/common/io/igb/igb_tx.c
1128
ddi_fm_service_impact(igb->dip, DDI_SERVICE_DEGRADED);
usr/src/uts/common/io/igb/igb_tx.c
1129
atomic_or_32(&igb->igb_state, IGB_ERROR);
usr/src/uts/common/io/igb/igb_tx.c
117
copy_thresh = igb->tx_copy_thresh;
usr/src/uts/common/io/igb/igb_tx.c
125
if (igb->tx_hcksum_enable) {
usr/src/uts/common/io/igb/igb_tx.c
1257
igb_t *igb = tx_ring->igb;
usr/src/uts/common/io/igb/igb_tx.c
1293
ddi_fm_service_impact(igb->dip, DDI_SERVICE_DEGRADED);
usr/src/uts/common/io/igb/igb_tx.c
1294
atomic_or_32(&igb->igb_state, IGB_ERROR);
usr/src/uts/common/io/igb/igb_tx.c
140
(mbsize > (igb->max_frame_size - ETHERFCSL)))) {
usr/src/uts/common/io/igb/igb_tx.c
142
igb_log(igb, IGB_LOG_INFO, "igb_tx: packet oversize");
usr/src/uts/common/io/igb/igb_tx.c
147
if (mbsize > (igb->max_frame_size - ETHERFCSL)) {
usr/src/uts/common/io/igb/igb_tx.c
149
igb_log(igb, IGB_LOG_INFO, "igb_tx: packet oversize");
usr/src/uts/common/io/igb/igb_tx.c
158
if (tx_ring->tbd_free < igb->tx_recycle_thresh)
usr/src/uts/common/io/igb/igb_tx.c
166
if (tx_ring->tbd_free < igb->tx_overload_thresh) {
usr/src/uts/common/io/igb/igb_tx.c
207
(P2NPHASE((uintptr_t)hdr_current_mp->b_rptr, igb->page_size)
usr/src/uts/common/io/igb/igb_tx.c
50
igb_t *igb;
usr/src/uts/common/io/igb/igb_tx.c
54
igb = tx_ring->igb;
usr/src/uts/common/io/igb/igb_tx.c
56
if ((igb->igb_state & IGB_SUSPENDED) ||
usr/src/uts/common/io/igb/igb_tx.c
57
(igb->igb_state & IGB_ERROR) ||
usr/src/uts/common/io/igb/igb_tx.c
58
!(igb->igb_state & IGB_STARTED) ||
usr/src/uts/common/io/igb/igb_tx.c
59
igb->link_state != LINK_STATE_UP) {
usr/src/uts/common/io/igb/igb_tx.c
881
struct e1000_hw *hw = &tx_ring->igb->hw;
usr/src/uts/common/io/igb/igb_tx.c
888
igb_t *igb = tx_ring->igb;
usr/src/uts/common/io/igb/igb_tx.c
99
igb_t *igb = tx_ring->igb;