sys/dev/drm/amd/amdgpu/amdgpu_connectors.c
310
&amdgpu_connector->ddc_bus->adapter);
sys/dev/drm/amd/amdgpu/amdgpu_connectors.c
313
&amdgpu_connector->ddc_bus->adapter);
sys/dev/drm/amd/amdgpu/amdgpu_display.c
468
ret = i2c_transfer(&amdgpu_connector->ddc_bus->adapter, msgs, 2);
sys/dev/drm/amd/amdgpu/amdgpu_dpm.c
915
i2c_new_device(&adev->pm.i2c_bus->adapter, &info);
sys/dev/drm/amd/amdgpu/amdgpu_i2c.c
177
i2c->adapter.owner = THIS_MODULE;
sys/dev/drm/amd/amdgpu/amdgpu_i2c.c
178
i2c->adapter.class = I2C_CLASS_DDC;
sys/dev/drm/amd/amdgpu/amdgpu_i2c.c
180
i2c->adapter.dev.parent = &dev->pdev->dev;
sys/dev/drm/amd/amdgpu/amdgpu_i2c.c
182
i2c_set_adapdata(&i2c->adapter, i2c);
sys/dev/drm/amd/amdgpu/amdgpu_i2c.c
187
snprintf(i2c->adapter.name, sizeof(i2c->adapter.name),
sys/dev/drm/amd/amdgpu/amdgpu_i2c.c
189
i2c->adapter.algo = &amdgpu_atombios_i2c_algo;
sys/dev/drm/amd/amdgpu/amdgpu_i2c.c
190
ret = i2c_add_adapter(&i2c->adapter);
sys/dev/drm/amd/amdgpu/amdgpu_i2c.c
195
snprintf(i2c->adapter.name, sizeof(i2c->adapter.name),
sys/dev/drm/amd/amdgpu/amdgpu_i2c.c
197
i2c->adapter.algo_data = &i2c->bit;
sys/dev/drm/amd/amdgpu/amdgpu_i2c.c
207
ret = i2c_bit_add_bus(&i2c->adapter);
sys/dev/drm/amd/amdgpu/amdgpu_i2c.c
226
i2c_del_adapter(&i2c->adapter);
sys/dev/drm/amd/amdgpu/amdgpu_i2c.c
309
if (i2c_transfer(&i2c_bus->adapter, msgs, 2) == 2) {
sys/dev/drm/amd/amdgpu/amdgpu_i2c.c
334
if (i2c_transfer(&i2c_bus->adapter, &msg, 1) != 1)
sys/dev/drm/amd/amdgpu/amdgpu_mode.h
226
struct i2c_adapter adapter;
sys/dev/drm/drm_dp_dual_mode_helper.c
102
ssize_t drm_dp_dual_mode_write(struct i2c_adapter *adapter,
sys/dev/drm/drm_dp_dual_mode_helper.c
123
ret = i2c_transfer(adapter, &msg, 1);
sys/dev/drm/drm_dp_dual_mode_helper.c
179
enum drm_dp_dual_mode_type drm_dp_dual_mode_detect(struct i2c_adapter *adapter)
sys/dev/drm/drm_dp_dual_mode_helper.c
199
ret = drm_dp_dual_mode_read(adapter, DP_DUAL_MODE_HDMI_ID,
sys/dev/drm/drm_dp_dual_mode_helper.c
218
ret = drm_dp_dual_mode_read(adapter, DP_DUAL_MODE_ADAPTOR_ID,
sys/dev/drm/drm_dp_dual_mode_helper.c
265
struct i2c_adapter *adapter)
sys/dev/drm/drm_dp_dual_mode_helper.c
281
ret = drm_dp_dual_mode_read(adapter, DP_DUAL_MODE_MAX_TMDS_CLOCK,
sys/dev/drm/drm_dp_dual_mode_helper.c
309
struct i2c_adapter *adapter,
sys/dev/drm/drm_dp_dual_mode_helper.c
320
ret = drm_dp_dual_mode_read(adapter, DP_DUAL_MODE_TMDS_OEN,
sys/dev/drm/drm_dp_dual_mode_helper.c
349
struct i2c_adapter *adapter, bool enable)
sys/dev/drm/drm_dp_dual_mode_helper.c
365
ret = drm_dp_dual_mode_write(adapter, DP_DUAL_MODE_TMDS_OEN,
sys/dev/drm/drm_dp_dual_mode_helper.c
374
ret = drm_dp_dual_mode_read(adapter, DP_DUAL_MODE_TMDS_OEN,
sys/dev/drm/drm_dp_dual_mode_helper.c
433
int drm_lspcon_get_mode(struct i2c_adapter *adapter,
sys/dev/drm/drm_dp_dual_mode_helper.c
450
ret = drm_dp_dual_mode_read(adapter,
sys/dev/drm/drm_dp_dual_mode_helper.c
479
int drm_lspcon_set_mode(struct i2c_adapter *adapter,
sys/dev/drm/drm_dp_dual_mode_helper.c
491
ret = drm_dp_dual_mode_write(adapter, DP_DUAL_MODE_LSPCON_MODE_CHANGE,
sys/dev/drm/drm_dp_dual_mode_helper.c
504
ret = drm_lspcon_get_mode(adapter, ¤t_mode);
sys/dev/drm/drm_dp_dual_mode_helper.c
60
ssize_t drm_dp_dual_mode_read(struct i2c_adapter *adapter,
sys/dev/drm/drm_dp_dual_mode_helper.c
79
ret = i2c_transfer(adapter, msgs, ARRAY_SIZE(msgs));
sys/dev/drm/drm_dp_helper.c
668
static u32 drm_dp_i2c_functionality(struct i2c_adapter *adapter)
sys/dev/drm/drm_dp_helper.c
932
static int drm_dp_i2c_xfer(struct i2c_adapter *adapter, struct i2c_msg *msgs,
sys/dev/drm/drm_dp_helper.c
935
struct drm_dp_aux *aux = adapter->algo_data;
sys/dev/drm/drm_dp_mst_topology.c
3272
static int drm_dp_mst_i2c_xfer(struct i2c_adapter *adapter, struct i2c_msg *msgs,
sys/dev/drm/drm_dp_mst_topology.c
3275
struct drm_dp_aux *aux = adapter->algo_data;
sys/dev/drm/drm_dp_mst_topology.c
3343
static u32 drm_dp_mst_i2c_functionality(struct i2c_adapter *adapter)
sys/dev/drm/drm_edid.c
1515
struct i2c_adapter *adapter = data;
sys/dev/drm/drm_edid.c
1552
ret = i2c_transfer(adapter, &msgs[3 - xfers], xfers);
sys/dev/drm/drm_edid.c
1556
adapter->name);
sys/dev/drm/drm_edid.c
1717
drm_probe_ddc(struct i2c_adapter *adapter)
sys/dev/drm/drm_edid.c
1721
return (drm_do_probe_ddc_edid(adapter, &out, 0, 1) == 0);
sys/dev/drm/drm_edid.c
1736
struct i2c_adapter *adapter)
sys/dev/drm/drm_edid.c
1743
if (connector->force == DRM_FORCE_UNSPECIFIED && !drm_probe_ddc(adapter))
sys/dev/drm/drm_edid.c
1746
edid = drm_do_get_edid(connector, drm_do_probe_ddc_edid, adapter);
sys/dev/drm/drm_edid.c
1765
struct i2c_adapter *adapter)
sys/dev/drm/drm_edid.c
1771
edid = drm_get_edid(connector, adapter);
sys/dev/drm/drm_scdc_helper.c
114
err = i2c_transfer(adapter, &msg, 1);
sys/dev/drm/drm_scdc_helper.c
137
bool drm_scdc_get_scrambling_status(struct i2c_adapter *adapter)
sys/dev/drm/drm_scdc_helper.c
142
ret = drm_scdc_readb(adapter, SCDC_SCRAMBLER_STATUS, &status);
sys/dev/drm/drm_scdc_helper.c
164
bool drm_scdc_set_scrambling(struct i2c_adapter *adapter, bool enable)
sys/dev/drm/drm_scdc_helper.c
169
ret = drm_scdc_readb(adapter, SCDC_TMDS_CONFIG, &config);
sys/dev/drm/drm_scdc_helper.c
180
ret = drm_scdc_writeb(adapter, SCDC_TMDS_CONFIG, config);
sys/dev/drm/drm_scdc_helper.c
219
bool drm_scdc_set_high_tmds_clock_ratio(struct i2c_adapter *adapter, bool set)
sys/dev/drm/drm_scdc_helper.c
224
ret = drm_scdc_readb(adapter, SCDC_TMDS_CONFIG, &config);
sys/dev/drm/drm_scdc_helper.c
235
ret = drm_scdc_writeb(adapter, SCDC_TMDS_CONFIG, config);
sys/dev/drm/drm_scdc_helper.c
53
ssize_t drm_scdc_read(struct i2c_adapter *adapter, u8 offset, void *buffer,
sys/dev/drm/drm_scdc_helper.c
71
ret = i2c_transfer(adapter, msgs, ARRAY_SIZE(msgs));
sys/dev/drm/drm_scdc_helper.c
93
ssize_t drm_scdc_write(struct i2c_adapter *adapter, u8 offset,
sys/dev/drm/i915/dvo_ch7017.c
201
struct i2c_adapter *adapter)
sys/dev/drm/i915/dvo_ch7017.c
211
dvo->i2c_bus = adapter;
sys/dev/drm/i915/dvo_ch7017.c
230
val, adapter->name, dvo->slave_addr);
sys/dev/drm/i915/dvo_ch7017.c
235
str, adapter->name, dvo->slave_addr);
sys/dev/drm/i915/dvo_ch7xxx.c
138
struct i2c_adapter *adapter = dvo->i2c_bus;
sys/dev/drm/i915/dvo_ch7xxx.c
160
if (i2c_transfer(adapter, msgs, 2) == 2) {
sys/dev/drm/i915/dvo_ch7xxx.c
167
addr, adapter->name, dvo->slave_addr);
sys/dev/drm/i915/dvo_ch7xxx.c
176
struct i2c_adapter *adapter = dvo->i2c_bus;
sys/dev/drm/i915/dvo_ch7xxx.c
188
if (i2c_transfer(adapter, &msg, 1) == 1)
sys/dev/drm/i915/dvo_ch7xxx.c
193
addr, adapter->name, dvo->slave_addr);
sys/dev/drm/i915/dvo_ch7xxx.c
200
struct i2c_adapter *adapter)
sys/dev/drm/i915/dvo_ch7xxx.c
211
dvo->i2c_bus = adapter;
sys/dev/drm/i915/dvo_ch7xxx.c
221
vendor, adapter->name, dvo->slave_addr);
sys/dev/drm/i915/dvo_ch7xxx.c
232
device, adapter->name, dvo->slave_addr);
sys/dev/drm/i915/dvo_ivch.c
194
struct i2c_adapter *adapter = dvo->i2c_bus;
sys/dev/drm/i915/dvo_ivch.c
220
if (i2c_transfer(adapter, msgs, 3) == 3) {
sys/dev/drm/i915/dvo_ivch.c
228
addr, adapter->name, dvo->slave_addr);
sys/dev/drm/i915/dvo_ivch.c
237
struct i2c_adapter *adapter = dvo->i2c_bus;
sys/dev/drm/i915/dvo_ivch.c
250
if (i2c_transfer(adapter, &msg, 1) == 1)
sys/dev/drm/i915/dvo_ivch.c
255
addr, adapter->name, dvo->slave_addr);
sys/dev/drm/i915/dvo_ivch.c
263
struct i2c_adapter *adapter)
sys/dev/drm/i915/dvo_ivch.c
273
dvo->i2c_bus = adapter;
sys/dev/drm/i915/dvo_ns2501.c
395
struct i2c_adapter *adapter = dvo->i2c_bus;
sys/dev/drm/i915/dvo_ns2501.c
417
if (i2c_transfer(adapter, msgs, 2) == 2) {
sys/dev/drm/i915/dvo_ns2501.c
425
adapter->name, dvo->slave_addr);
sys/dev/drm/i915/dvo_ns2501.c
440
struct i2c_adapter *adapter = dvo->i2c_bus;
sys/dev/drm/i915/dvo_ns2501.c
453
if (i2c_transfer(adapter, &msg, 1) == 1) {
sys/dev/drm/i915/dvo_ns2501.c
459
addr, adapter->name, dvo->slave_addr);
sys/dev/drm/i915/dvo_ns2501.c
472
struct i2c_adapter *adapter)
sys/dev/drm/i915/dvo_ns2501.c
482
dvo->i2c_bus = adapter;
sys/dev/drm/i915/dvo_ns2501.c
491
ch, adapter->name, dvo->slave_addr);
sys/dev/drm/i915/dvo_ns2501.c
500
ch, adapter->name, dvo->slave_addr);
sys/dev/drm/i915/dvo_sil164.c
100
addr, adapter->name, dvo->slave_addr);
sys/dev/drm/i915/dvo_sil164.c
108
struct i2c_adapter *adapter = dvo->i2c_bus;
sys/dev/drm/i915/dvo_sil164.c
120
if (i2c_transfer(adapter, &msg, 1) == 1)
sys/dev/drm/i915/dvo_sil164.c
125
addr, adapter->name, dvo->slave_addr);
sys/dev/drm/i915/dvo_sil164.c
133
struct i2c_adapter *adapter)
sys/dev/drm/i915/dvo_sil164.c
143
dvo->i2c_bus = adapter;
sys/dev/drm/i915/dvo_sil164.c
152
ch, adapter->name, dvo->slave_addr);
sys/dev/drm/i915/dvo_sil164.c
161
ch, adapter->name, dvo->slave_addr);
sys/dev/drm/i915/dvo_sil164.c
71
struct i2c_adapter *adapter = dvo->i2c_bus;
sys/dev/drm/i915/dvo_sil164.c
93
if (i2c_transfer(adapter, msgs, 2) == 2) {
sys/dev/drm/i915/dvo_tfp410.c
118
if (i2c_transfer(adapter, msgs, 2) == 2) {
sys/dev/drm/i915/dvo_tfp410.c
125
addr, adapter->name, dvo->slave_addr);
sys/dev/drm/i915/dvo_tfp410.c
133
struct i2c_adapter *adapter = dvo->i2c_bus;
sys/dev/drm/i915/dvo_tfp410.c
145
if (i2c_transfer(adapter, &msg, 1) == 1)
sys/dev/drm/i915/dvo_tfp410.c
150
addr, adapter->name, dvo->slave_addr);
sys/dev/drm/i915/dvo_tfp410.c
169
struct i2c_adapter *adapter)
sys/dev/drm/i915/dvo_tfp410.c
179
dvo->i2c_bus = adapter;
sys/dev/drm/i915/dvo_tfp410.c
186
id, adapter->name, dvo->slave_addr);
sys/dev/drm/i915/dvo_tfp410.c
193
id, adapter->name, dvo->slave_addr);
sys/dev/drm/i915/dvo_tfp410.c
96
struct i2c_adapter *adapter = dvo->i2c_bus;
sys/dev/drm/i915/i915_drv.h
3446
extern int intel_gmbus_output_aksv(struct i2c_adapter *adapter);
sys/dev/drm/i915/i915_drv.h
3450
extern void intel_gmbus_set_speed(struct i2c_adapter *adapter, int speed);
sys/dev/drm/i915/i915_drv.h
3451
extern void intel_gmbus_force_bit(struct i2c_adapter *adapter, bool force_bit);
sys/dev/drm/i915/i915_drv.h
3452
static inline bool intel_gmbus_is_forced_bit(struct i2c_adapter *adapter)
sys/dev/drm/i915/i915_drv.h
3454
return container_of(adapter, struct intel_gmbus, adapter)->force_bit;
sys/dev/drm/i915/i915_drv.h
668
struct i2c_adapter adapter;
sys/dev/drm/i915/intel_crt.c
577
struct i2c_adapter *adapter)
sys/dev/drm/i915/intel_crt.c
582
edid = intel_crt_get_edid(connector, adapter);
sys/dev/drm/i915/intel_ddi.c
3591
struct i2c_adapter *adapter =
sys/dev/drm/i915/intel_ddi.c
3632
ret = drm_scdc_readb(adapter, SCDC_TMDS_CONFIG, &config);
sys/dev/drm/i915/intel_drv.h
1888
int intel_ddc_get_modes(struct drm_connector *c, struct i2c_adapter *adapter);
sys/dev/drm/i915/intel_hdmi.c
1828
struct i2c_adapter *adapter =
sys/dev/drm/i915/intel_hdmi.c
1830
enum drm_dp_dual_mode_type type = drm_dp_dual_mode_detect(adapter);
sys/dev/drm/i915/intel_hdmi.c
1862
drm_dp_dual_mode_max_tmds_clock(type, adapter);
sys/dev/drm/i915/intel_hdmi.c
2152
struct i2c_adapter *adapter =
sys/dev/drm/i915/intel_hdmi.c
2163
return drm_scdc_set_high_tmds_clock_ratio(adapter,
sys/dev/drm/i915/intel_hdmi.c
2165
drm_scdc_set_scrambling(adapter, scrambling);
sys/dev/drm/i915/intel_hdmi.c
877
struct i2c_adapter *adapter =
sys/dev/drm/i915/intel_hdmi.c
887
adapter, enable);
sys/dev/drm/i915/intel_hdmi.c
896
struct i2c_adapter *adapter = intel_gmbus_get_adapter(dev_priv,
sys/dev/drm/i915/intel_hdmi.c
914
ret = i2c_transfer(adapter, msgs, ARRAY_SIZE(msgs));
sys/dev/drm/i915/intel_hdmi.c
926
struct i2c_adapter *adapter = intel_gmbus_get_adapter(dev_priv,
sys/dev/drm/i915/intel_hdmi.c
944
ret = i2c_transfer(adapter, &msg, 1);
sys/dev/drm/i915/intel_hdmi.c
961
struct i2c_adapter *adapter = intel_gmbus_get_adapter(dev_priv,
sys/dev/drm/i915/intel_hdmi.c
972
ret = intel_gmbus_output_aksv(adapter);
sys/dev/drm/i915/intel_i2c.c
134
return container_of(i2c, struct intel_gmbus, adapter);
sys/dev/drm/i915/intel_i2c.c
253
intel_gpio_pre_xfer(struct i2c_adapter *adapter)
sys/dev/drm/i915/intel_i2c.c
255
struct intel_gmbus *bus = container_of(adapter,
sys/dev/drm/i915/intel_i2c.c
257
adapter);
sys/dev/drm/i915/intel_i2c.c
272
intel_gpio_post_xfer(struct i2c_adapter *adapter)
sys/dev/drm/i915/intel_i2c.c
274
struct intel_gmbus *bus = container_of(adapter,
sys/dev/drm/i915/intel_i2c.c
276
adapter);
sys/dev/drm/i915/intel_i2c.c
295
bus->adapter.algo_data = algo;
sys/dev/drm/i915/intel_i2c.c
568
do_gmbus_xfer(struct i2c_adapter *adapter, struct i2c_msg *msgs, int num,
sys/dev/drm/i915/intel_i2c.c
571
struct intel_gmbus *bus = container_of(adapter,
sys/dev/drm/i915/intel_i2c.c
573
adapter);
sys/dev/drm/i915/intel_i2c.c
622
adapter->name);
sys/dev/drm/i915/intel_i2c.c
646
adapter->name);
sys/dev/drm/i915/intel_i2c.c
659
adapter->name, msgs[i].addr,
sys/dev/drm/i915/intel_i2c.c
670
adapter->name);
sys/dev/drm/i915/intel_i2c.c
678
bus->adapter.name, bus->reg0 & 0xff);
sys/dev/drm/i915/intel_i2c.c
699
gmbus_xfer(struct i2c_adapter *adapter, struct i2c_msg *msgs, int num)
sys/dev/drm/i915/intel_i2c.c
701
struct intel_gmbus *bus = container_of(adapter, struct intel_gmbus,
sys/dev/drm/i915/intel_i2c.c
702
adapter);
sys/dev/drm/i915/intel_i2c.c
709
ret = i2c_bit_algo.master_xfer(adapter, msgs, num);
sys/dev/drm/i915/intel_i2c.c
713
ret = do_gmbus_xfer(adapter, msgs, num, 0);
sys/dev/drm/i915/intel_i2c.c
723
int intel_gmbus_output_aksv(struct i2c_adapter *adapter)
sys/dev/drm/i915/intel_i2c.c
725
struct intel_gmbus *bus = container_of(adapter, struct intel_gmbus,
sys/dev/drm/i915/intel_i2c.c
726
adapter);
sys/dev/drm/i915/intel_i2c.c
754
ret = do_gmbus_xfer(adapter, msgs, ARRAY_SIZE(msgs), GMBUS_AKSV_SELECT);
sys/dev/drm/i915/intel_i2c.c
762
static u32 gmbus_func(struct i2c_adapter *adapter)
sys/dev/drm/i915/intel_i2c.c
764
return i2c_bit_algo.functionality(adapter) &
sys/dev/drm/i915/intel_i2c.c
776
static void gmbus_lock_bus(struct i2c_adapter *adapter,
sys/dev/drm/i915/intel_i2c.c
779
struct intel_gmbus *bus = to_intel_gmbus(adapter);
sys/dev/drm/i915/intel_i2c.c
785
static int gmbus_trylock_bus(struct i2c_adapter *adapter,
sys/dev/drm/i915/intel_i2c.c
788
struct intel_gmbus *bus = to_intel_gmbus(adapter);
sys/dev/drm/i915/intel_i2c.c
794
static void gmbus_unlock_bus(struct i2c_adapter *adapter,
sys/dev/drm/i915/intel_i2c.c
797
struct intel_gmbus *bus = to_intel_gmbus(adapter);
sys/dev/drm/i915/intel_i2c.c
842
bus->adapter.owner = THIS_MODULE;
sys/dev/drm/i915/intel_i2c.c
843
bus->adapter.class = I2C_CLASS_DDC;
sys/dev/drm/i915/intel_i2c.c
845
ksnprintf(bus->adapter.name,
sys/dev/drm/i915/intel_i2c.c
846
sizeof(bus->adapter.name),
sys/dev/drm/i915/intel_i2c.c
850
bus->adapter.dev.parent = &pdev->dev;
sys/dev/drm/i915/intel_i2c.c
853
bus->adapter.algo = &gmbus_algorithm;
sys/dev/drm/i915/intel_i2c.c
854
bus->adapter.lock_ops = &gmbus_lock_ops;
sys/dev/drm/i915/intel_i2c.c
860
bus->adapter.retries = 1;
sys/dev/drm/i915/intel_i2c.c
871
ret = i2c_add_adapter(&bus->adapter);
sys/dev/drm/i915/intel_i2c.c
886
i2c_del_adapter(&bus->adapter);
sys/dev/drm/i915/intel_i2c.c
897
return &dev_priv->gmbus[pin].adapter;
sys/dev/drm/i915/intel_i2c.c
900
void intel_gmbus_set_speed(struct i2c_adapter *adapter, int speed)
sys/dev/drm/i915/intel_i2c.c
902
struct intel_gmbus *bus = to_intel_gmbus(adapter);
sys/dev/drm/i915/intel_i2c.c
907
void intel_gmbus_force_bit(struct i2c_adapter *adapter, bool force_bit)
sys/dev/drm/i915/intel_i2c.c
909
struct intel_gmbus *bus = to_intel_gmbus(adapter);
sys/dev/drm/i915/intel_i2c.c
916
force_bit ? "en" : "dis", adapter->name,
sys/dev/drm/i915/intel_i2c.c
932
i2c_del_adapter(&bus->adapter);
sys/dev/drm/i915/intel_lspcon.c
106
err = drm_lspcon_set_mode(adapter, mode);
sys/dev/drm/i915/intel_lspcon.c
137
struct i2c_adapter *adapter = &lspcon_to_intel_dp(lspcon)->aux.ddc;
sys/dev/drm/i915/intel_lspcon.c
148
adaptor_type = drm_dp_dual_mode_detect(adapter);
sys/dev/drm/i915/intel_lspcon.c
56
struct i2c_adapter *adapter = &lspcon_to_intel_dp(lspcon)->aux.ddc;
sys/dev/drm/i915/intel_lspcon.c
58
if (drm_lspcon_get_mode(adapter, ¤t_mode)) {
sys/dev/drm/i915/intel_lspcon.c
93
struct i2c_adapter *adapter = &lspcon_to_intel_dp(lspcon)->aux.ddc;
sys/dev/drm/i915/intel_lspcon.c
95
err = drm_lspcon_get_mode(adapter, ¤t_mode);
sys/dev/drm/i915/intel_modes.c
57
struct i2c_adapter *adapter)
sys/dev/drm/i915/intel_modes.c
62
edid = drm_get_edid(connector, adapter);
sys/dev/drm/i915/intel_sdvo.c
2974
static int intel_sdvo_ddc_proxy_xfer(struct i2c_adapter *adapter,
sys/dev/drm/i915/intel_sdvo.c
2978
struct intel_sdvo *sdvo = adapter->algo_data;
sys/dev/drm/i915/intel_sdvo.c
2986
static u32 intel_sdvo_ddc_proxy_func(struct i2c_adapter *adapter)
sys/dev/drm/i915/intel_sdvo.c
2988
struct intel_sdvo *sdvo = adapter->algo_data;
sys/dev/drm/i915/intel_sdvo.c
2997
static void proxy_lock_bus(struct i2c_adapter *adapter,
sys/dev/drm/i915/intel_sdvo.c
3000
struct intel_sdvo *sdvo = adapter->algo_data;
sys/dev/drm/i915/intel_sdvo.c
3004
static int proxy_trylock_bus(struct i2c_adapter *adapter,
sys/dev/drm/i915/intel_sdvo.c
3007
struct intel_sdvo *sdvo = adapter->algo_data;
sys/dev/drm/i915/intel_sdvo.c
3011
static void proxy_unlock_bus(struct i2c_adapter *adapter,
sys/dev/drm/i915/intel_sdvo.c
3014
struct intel_sdvo *sdvo = adapter->algo_data;
sys/dev/drm/include/drm/drm_dp_dual_mode_helper.h
106
enum drm_dp_dual_mode_type drm_dp_dual_mode_detect(struct i2c_adapter *adapter);
sys/dev/drm/include/drm/drm_dp_dual_mode_helper.h
108
struct i2c_adapter *adapter);
sys/dev/drm/include/drm/drm_dp_dual_mode_helper.h
110
struct i2c_adapter *adapter, bool *enabled);
sys/dev/drm/include/drm/drm_dp_dual_mode_helper.h
112
struct i2c_adapter *adapter, bool enable);
sys/dev/drm/include/drm/drm_dp_dual_mode_helper.h
115
int drm_lspcon_get_mode(struct i2c_adapter *adapter,
sys/dev/drm/include/drm/drm_dp_dual_mode_helper.h
117
int drm_lspcon_set_mode(struct i2c_adapter *adapter,
sys/dev/drm/include/drm/drm_dp_dual_mode_helper.h
67
ssize_t drm_dp_dual_mode_read(struct i2c_adapter *adapter,
sys/dev/drm/include/drm/drm_dp_dual_mode_helper.h
69
ssize_t drm_dp_dual_mode_write(struct i2c_adapter *adapter,
sys/dev/drm/include/drm/drm_edid.h
458
bool drm_probe_ddc(struct i2c_adapter *adapter);
sys/dev/drm/include/drm/drm_edid.h
464
struct i2c_adapter *adapter);
sys/dev/drm/include/drm/drm_edid.h
466
struct i2c_adapter *adapter);
sys/dev/drm/include/drm/drm_scdc_helper.h
108
static inline int drm_scdc_readb(struct i2c_adapter *adapter, u8 offset,
sys/dev/drm/include/drm/drm_scdc_helper.h
111
return drm_scdc_read(adapter, offset, value, sizeof(*value));
sys/dev/drm/include/drm/drm_scdc_helper.h
126
static inline int drm_scdc_writeb(struct i2c_adapter *adapter, u8 offset,
sys/dev/drm/include/drm/drm_scdc_helper.h
129
return drm_scdc_write(adapter, offset, &value, sizeof(value));
sys/dev/drm/include/drm/drm_scdc_helper.h
132
bool drm_scdc_get_scrambling_status(struct i2c_adapter *adapter);
sys/dev/drm/include/drm/drm_scdc_helper.h
134
bool drm_scdc_set_scrambling(struct i2c_adapter *adapter, bool enable);
sys/dev/drm/include/drm/drm_scdc_helper.h
135
bool drm_scdc_set_high_tmds_clock_ratio(struct i2c_adapter *adapter, bool set);
sys/dev/drm/include/drm/drm_scdc_helper.h
91
ssize_t drm_scdc_read(struct i2c_adapter *adapter, u8 offset, void *buffer,
sys/dev/drm/include/drm/drm_scdc_helper.h
93
ssize_t drm_scdc_write(struct i2c_adapter *adapter, u8 offset,
sys/dev/drm/include/linux/i2c.h
63
struct i2c_adapter *adapter;
sys/dev/drm/linux_i2c.c
100
ret = __i2c_transfer(adapter, msgs, num);
sys/dev/drm/linux_i2c.c
101
adapter->lock_ops->unlock_bus(adapter, I2C_LOCK_SEGMENT);
sys/dev/drm/linux_i2c.c
128
i2c_bit_add_bus(struct i2c_adapter *adapter)
sys/dev/drm/linux_i2c.c
130
adapter->algo = &i2c_bit_algo;
sys/dev/drm/linux_i2c.c
131
adapter->retries = 2;
sys/dev/drm/linux_i2c.c
145
client->adapter = adap;
sys/dev/drm/linux_i2c.c
157
i2c_default_lock_bus(struct i2c_adapter *adapter, unsigned int flags)
sys/dev/drm/linux_i2c.c
163
i2c_default_trylock_bus(struct i2c_adapter *adapter, unsigned int flags)
sys/dev/drm/linux_i2c.c
169
i2c_default_unlock_bus(struct i2c_adapter *adapter, unsigned int flags)
sys/dev/drm/linux_i2c.c
46
i2c_add_adapter(struct i2c_adapter *adapter)
sys/dev/drm/linux_i2c.c
51
if (!adapter->lock_ops)
sys/dev/drm/linux_i2c.c
52
adapter->lock_ops = &i2c_default_lock_ops;
sys/dev/drm/linux_i2c.c
58
i2c_del_adapter(struct i2c_adapter *adapter)
sys/dev/drm/linux_i2c.c
64
__i2c_transfer(struct i2c_adapter *adapter, struct i2c_msg *msgs, int num)
sys/dev/drm/linux_i2c.c
71
ret = adapter->algo->master_xfer(adapter, msgs, num);
sys/dev/drm/linux_i2c.c
72
if (ticks > start_ticks + adapter->timeout)
sys/dev/drm/linux_i2c.c
77
} while (tries < adapter->retries);
sys/dev/drm/linux_i2c.c
92
i2c_transfer(struct i2c_adapter *adapter, struct i2c_msg *msgs, int num)
sys/dev/drm/linux_i2c.c
96
if (adapter->algo->master_xfer == NULL)
sys/dev/drm/linux_i2c.c
99
adapter->lock_ops->lock_bus(adapter, I2C_LOCK_SEGMENT);
sys/dev/drm/radeon/radeon_atombios.c
2112
i2c_new_device(&rdev->pm.i2c_bus->adapter, &info);
sys/dev/drm/radeon/radeon_atombios.c
2360
i2c_new_device(&rdev->pm.i2c_bus->adapter, &info);
sys/dev/drm/radeon/radeon_combios.c
2696
i2c_new_device(&rdev->pm.i2c_bus->adapter, &info);
sys/dev/drm/radeon/radeon_combios.c
2713
i2c_new_device(&rdev->pm.i2c_bus->adapter, &info);
sys/dev/drm/radeon/radeon_connectors.c
325
&radeon_connector->ddc_bus->adapter);
sys/dev/drm/radeon/radeon_connectors.c
330
&radeon_connector->ddc_bus->adapter);
sys/dev/drm/radeon/radeon_connectors.c
333
&radeon_connector->ddc_bus->adapter);
sys/dev/drm/radeon/radeon_i2c.c
1077
if (i2c_transfer(&i2c_bus->adapter, msgs, 2) == 2) {
sys/dev/drm/radeon/radeon_i2c.c
1102
if (i2c_transfer(&i2c_bus->adapter, &msg, 1) != 1)
sys/dev/drm/radeon/radeon_i2c.c
69
ret = i2c_transfer(&radeon_connector->ddc_bus->adapter, msgs, 2);
sys/dev/drm/radeon/radeon_i2c.c
926
i2c->adapter.owner = THIS_MODULE;
sys/dev/drm/radeon/radeon_i2c.c
927
i2c->adapter.class = I2C_CLASS_DDC;
sys/dev/drm/radeon/radeon_i2c.c
929
i2c->adapter.dev.parent = &dev->pdev->dev;
sys/dev/drm/radeon/radeon_i2c.c
931
i2c_set_adapdata(&i2c->adapter, i2c);
sys/dev/drm/radeon/radeon_i2c.c
939
snprintf(i2c->adapter.name, sizeof(i2c->adapter.name),
sys/dev/drm/radeon/radeon_i2c.c
941
i2c->adapter.algo = &radeon_i2c_algo;
sys/dev/drm/radeon/radeon_i2c.c
942
ret = i2c_add_adapter(&i2c->adapter);
sys/dev/drm/radeon/radeon_i2c.c
949
snprintf(i2c->adapter.name, sizeof(i2c->adapter.name),
sys/dev/drm/radeon/radeon_i2c.c
951
i2c->adapter.algo = &radeon_atom_i2c_algo;
sys/dev/drm/radeon/radeon_i2c.c
952
ret = i2c_add_adapter(&i2c->adapter);
sys/dev/drm/radeon/radeon_i2c.c
957
snprintf(i2c->adapter.name, sizeof(i2c->adapter.name),
sys/dev/drm/radeon/radeon_i2c.c
959
i2c->adapter.algo_data = &i2c->bit;
sys/dev/drm/radeon/radeon_i2c.c
969
ret = i2c_bit_add_bus(&i2c->adapter);
sys/dev/drm/radeon/radeon_i2c.c
972
i2c_add_adapter(&i2c->adapter);
sys/dev/drm/radeon/radeon_i2c.c
992
i2c_del_adapter(&i2c->adapter);
sys/dev/drm/radeon/radeon_mode.h
200
struct i2c_adapter adapter;
sys/dev/misc/syscons/scvgarndr.c
1233
(*vidsw[scp->sc->adapter]->set_border)(scp->sc->adp, color);
sys/dev/misc/syscons/scvgarndr.c
167
(*vidsw[scp->sc->adapter]->set_border)(scp->sc->adp, color);
sys/dev/misc/syscons/scvgarndr.c
204
(*vidsw[scp->sc->adapter]->set_hw_cursor_shape)(scp->sc->adp,
sys/dev/misc/syscons/scvgarndr.c
249
(*vidsw[sc->adapter]->load_font)(sc->adp, 0, h, font,
sys/dev/misc/syscons/scvgarndr.c
380
(*vidsw[scp->sc->adapter]->load_font)(scp->sc->adp, 0, 32, font_buf,
sys/dev/misc/syscons/scvgarndr.c
561
(*vidsw[scp->sc->adapter]->set_border)(scp->sc->adp, color);
sys/dev/misc/syscons/scvidctl.c
196
if ((*vidsw[scp->sc->adapter]->get_info)(scp->sc->adp, mode, &info)) {
sys/dev/misc/syscons/scvidctl.c
276
if ((*vidsw[scp->sc->adapter]->get_info)(scp->sc->adp, scp->mode, &info)) {
sys/dev/misc/syscons/scvidctl.c
65
if ((*vidsw[scp->sc->adapter]->get_info)(scp->sc->adp, mode, &info)) {
sys/dev/misc/syscons/syscons.c
3263
} else if (sc->adapter >= 0) {
sys/dev/misc/syscons/syscons.c
3264
vid_release(sc->adp, (void *)&sc->adapter);
sys/dev/misc/syscons/syscons.c
3279
sc->adapter = vid_allocate("*", unit, (void *)&sc->adapter);
sys/dev/misc/syscons/syscons.c
3280
sc->adp = vid_get_adapter(sc->adapter);
sys/dev/misc/syscons/syscons.c
3317
(*vidsw[sc->adapter]->read_hw_cursor)(sc->adp, &col, &row);
sys/dev/misc/syscons/syscons.c
3318
(*vidsw[sc->adapter]->set_hw_cursor)(sc->adp, -1, -1);
sys/dev/misc/syscons/syscons.c
3472
(*vidsw[sc->adapter]->set_hw_cursor)(sc->adp, 0, 0);
sys/dev/misc/syscons/syscons.c
3478
if (sc->adapter >= 0)
sys/dev/misc/syscons/syscons.c
3479
vid_release(sc->adp, &sc->adapter);
sys/dev/misc/syscons/syscons.c
3512
sc->adapter = -1;
sys/dev/misc/syscons/syscons.c
3631
(*vidsw[sc->adapter]->get_info)(sc->adp, scp->mode, &info);
sys/dev/misc/syscons/syscons.c
4100
ap->a_result = (*vidsw[scp->sc->adapter]->mmap)(scp->sc->adp,
sys/dev/misc/syscons/syscons.c
4175
if (scp->sc->fbi == NULL && (*vidsw[scp->sc->adapter]->get_info)(scp->sc->adp, scp->mode, &info)) {
sys/dev/misc/syscons/syscons.c
4188
(*vidsw[scp->sc->adapter]->set_mode)(scp->sc->adp, scp->mode);
sys/dev/misc/syscons/syscons.c
4274
(*vidsw[sc->adapter]->load_font)(sc->adp, page, size, buf, base, count);
sys/dev/misc/syscons/syscons.c
4286
(*vidsw[sc->adapter]->save_font)(sc->adp, page, size, buf, base, count);
sys/dev/misc/syscons/syscons.c
4293
(*vidsw[scp->sc->adapter]->show_font)(scp->sc->adp, page);
sys/dev/misc/syscons/syscons.c
621
if (sc->adapter >= 0)
sys/dev/misc/syscons/syscons.c
622
kprintf(" fb%d", sc->adapter);
sys/dev/misc/syscons/syscons.h
198
int adapter;
sys/dev/misc/syscons/syscons_nexus.c
124
sc->adapter = -1;
sys/dev/netif/em/if_em.c
1002
if ((adapter->flags & (EM_FLAG_HAS_MGMT | EM_FLAG_HAS_AMT)) ==
sys/dev/netif/em/if_em.c
1003
EM_FLAG_HAS_MGMT && adapter->hw.mac.type >= e1000_82571)
sys/dev/netif/em/if_em.c
1004
em_get_hw_control(adapter);
sys/dev/netif/em/if_em.c
1006
ifq_set_cpuid(&ifp->if_snd, rman_get_cpuid(adapter->intr_res));
sys/dev/netif/em/if_em.c
1017
if ((adapter->flags & EM_FLAG_SHARED_INTR) &&
sys/dev/netif/em/if_em.c
1018
(adapter->hw.mac.type == e1000_82571 ||
sys/dev/netif/em/if_em.c
1019
adapter->hw.mac.type == e1000_82572 ||
sys/dev/netif/em/if_em.c
1020
adapter->hw.mac.type == e1000_82573 ||
sys/dev/netif/em/if_em.c
1021
adapter->hw.mac.type == e1000_82574 ||
sys/dev/netif/em/if_em.c
1022
adapter->hw.mac.type == e1000_82583))
sys/dev/netif/em/if_em.c
1025
error = bus_setup_intr(dev, adapter->intr_res, INTR_MPSAFE,
sys/dev/netif/em/if_em.c
1026
intr_func, adapter, &adapter->intr_tag,
sys/dev/netif/em/if_em.c
1042
struct adapter *adapter = device_get_softc(dev);
sys/dev/netif/em/if_em.c
1045
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
1049
em_stop(adapter);
sys/dev/netif/em/if_em.c
1051
e1000_phy_hw_reset(&adapter->hw);
sys/dev/netif/em/if_em.c
1053
em_rel_mgmt(adapter);
sys/dev/netif/em/if_em.c
1054
em_rel_hw_control(adapter);
sys/dev/netif/em/if_em.c
1056
if (adapter->wol) {
sys/dev/netif/em/if_em.c
1057
E1000_WRITE_REG(&adapter->hw, E1000_WUC,
sys/dev/netif/em/if_em.c
1059
E1000_WRITE_REG(&adapter->hw, E1000_WUFC, adapter->wol);
sys/dev/netif/em/if_em.c
1063
bus_teardown_intr(dev, adapter->intr_res, adapter->intr_tag);
sys/dev/netif/em/if_em.c
1068
} else if (adapter->memory != NULL) {
sys/dev/netif/em/if_em.c
1069
em_rel_hw_control(adapter);
sys/dev/netif/em/if_em.c
1072
ifmedia_removeall(&adapter->media);
sys/dev/netif/em/if_em.c
1075
em_free_pci_res(adapter);
sys/dev/netif/em/if_em.c
1077
em_destroy_tx_ring(adapter, adapter->num_tx_desc);
sys/dev/netif/em/if_em.c
1078
em_destroy_rx_ring(adapter, adapter->num_rx_desc);
sys/dev/netif/em/if_em.c
1081
if (adapter->tx_desc_base)
sys/dev/netif/em/if_em.c
1082
em_dma_free(adapter, &adapter->txdma);
sys/dev/netif/em/if_em.c
1085
if (adapter->rx_desc_base)
sys/dev/netif/em/if_em.c
1086
em_dma_free(adapter, &adapter->rxdma);
sys/dev/netif/em/if_em.c
1089
if (adapter->parent_dtag != NULL)
sys/dev/netif/em/if_em.c
1090
bus_dma_tag_destroy(adapter->parent_dtag);
sys/dev/netif/em/if_em.c
1092
if (adapter->mta != NULL)
sys/dev/netif/em/if_em.c
1093
kfree(adapter->mta, M_DEVBUF);
sys/dev/netif/em/if_em.c
1107
struct adapter *adapter = device_get_softc(dev);
sys/dev/netif/em/if_em.c
1108
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
1112
em_stop(adapter);
sys/dev/netif/em/if_em.c
1114
em_rel_mgmt(adapter);
sys/dev/netif/em/if_em.c
1115
em_rel_hw_control(adapter);
sys/dev/netif/em/if_em.c
1117
if (adapter->wol) {
sys/dev/netif/em/if_em.c
1118
E1000_WRITE_REG(&adapter->hw, E1000_WUC, E1000_WUC_PME_EN);
sys/dev/netif/em/if_em.c
1119
E1000_WRITE_REG(&adapter->hw, E1000_WUFC, adapter->wol);
sys/dev/netif/em/if_em.c
1131
struct adapter *adapter = device_get_softc(dev);
sys/dev/netif/em/if_em.c
1132
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
1136
if (adapter->hw.mac.type == e1000_pch2lan)
sys/dev/netif/em/if_em.c
1137
e1000_resume_workarounds_pchlan(&adapter->hw);
sys/dev/netif/em/if_em.c
1139
em_init(adapter);
sys/dev/netif/em/if_em.c
1140
em_get_mgmt(adapter);
sys/dev/netif/em/if_em.c
1151
struct adapter *adapter = ifp->if_softc;
sys/dev/netif/em/if_em.c
1161
if (!adapter->link_active) {
sys/dev/netif/em/if_em.c
1168
if (EM_IS_OACTIVE(adapter)) {
sys/dev/netif/em/if_em.c
1169
em_tx_collect(adapter, FALSE);
sys/dev/netif/em/if_em.c
1170
if (EM_IS_OACTIVE(adapter)) {
sys/dev/netif/em/if_em.c
1172
adapter->no_tx_desc_avail1++;
sys/dev/netif/em/if_em.c
1182
if (em_encap(adapter, &m_head, &nsegs, &idx)) {
sys/dev/netif/em/if_em.c
1184
em_tx_collect(adapter, FALSE);
sys/dev/netif/em/if_em.c
1196
if (nsegs >= adapter->tx_wreg_nsegs && idx >= 0) {
sys/dev/netif/em/if_em.c
1197
E1000_WRITE_REG(&adapter->hw, E1000_TDT(0), idx);
sys/dev/netif/em/if_em.c
1209
E1000_WRITE_REG(&adapter->hw, E1000_TDT(0), idx);
sys/dev/netif/em/if_em.c
1210
adapter->tx_running = EM_TX_RUNNING;
sys/dev/netif/em/if_em.c
1216
struct adapter *adapter = ifp->if_softc;
sys/dev/netif/em/if_em.c
1226
switch (adapter->hw.mac.type) {
sys/dev/netif/em/if_em.c
1232
e1000_read_nvm(&adapter->hw,
sys/dev/netif/em/if_em.c
1276
adapter->hw.mac.max_frame_size =
sys/dev/netif/em/if_em.c
1280
em_init(adapter);
sys/dev/netif/em/if_em.c
1286
if ((ifp->if_flags ^ adapter->if_flags) &
sys/dev/netif/em/if_em.c
1288
em_disable_promisc(adapter);
sys/dev/netif/em/if_em.c
1289
em_set_promisc(adapter);
sys/dev/netif/em/if_em.c
1292
em_init(adapter);
sys/dev/netif/em/if_em.c
1295
em_stop(adapter);
sys/dev/netif/em/if_em.c
1297
adapter->if_flags = ifp->if_flags;
sys/dev/netif/em/if_em.c
1303
em_disable_intr(adapter);
sys/dev/netif/em/if_em.c
1304
em_set_multi(adapter);
sys/dev/netif/em/if_em.c
1305
if (adapter->hw.mac.type == e1000_82542 &&
sys/dev/netif/em/if_em.c
1306
adapter->hw.revision_id == E1000_REVISION_2)
sys/dev/netif/em/if_em.c
1307
em_init_rx_unit(adapter);
sys/dev/netif/em/if_em.c
1311
em_enable_intr(adapter);
sys/dev/netif/em/if_em.c
1317
if (e1000_check_reset_block(&adapter->hw)) {
sys/dev/netif/em/if_em.c
1318
device_printf(adapter->dev, "Media change is"
sys/dev/netif/em/if_em.c
1325
error = ifmedia_ioctl(ifp, ifr, &adapter->media, command);
sys/dev/netif/em/if_em.c
1354
em_init(adapter);
sys/dev/netif/em/if_em.c
1367
struct adapter *adapter = ifp->if_softc;
sys/dev/netif/em/if_em.c
1379
if (E1000_READ_REG(&adapter->hw, E1000_TDT(0)) ==
sys/dev/netif/em/if_em.c
1380
E1000_READ_REG(&adapter->hw, E1000_TDH(0))) {
sys/dev/netif/em/if_em.c
1395
if (E1000_READ_REG(&adapter->hw, E1000_STATUS) &
sys/dev/netif/em/if_em.c
1401
if (e1000_check_for_link(&adapter->hw) == 0)
sys/dev/netif/em/if_em.c
1405
adapter->watchdog_events++;
sys/dev/netif/em/if_em.c
1407
em_init(adapter);
sys/dev/netif/em/if_em.c
1416
struct adapter *adapter = xsc;
sys/dev/netif/em/if_em.c
1417
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
1418
device_t dev = adapter->dev;
sys/dev/netif/em/if_em.c
1422
em_stop(adapter);
sys/dev/netif/em/if_em.c
1425
bcopy(IF_LLADDR(ifp), adapter->hw.mac.addr, ETHER_ADDR_LEN);
sys/dev/netif/em/if_em.c
1428
e1000_rar_set(&adapter->hw, adapter->hw.mac.addr, 0);
sys/dev/netif/em/if_em.c
1436
if (adapter->hw.mac.type == e1000_82571) {
sys/dev/netif/em/if_em.c
1437
e1000_set_laa_state_82571(&adapter->hw, TRUE);
sys/dev/netif/em/if_em.c
1438
e1000_rar_set(&adapter->hw, adapter->hw.mac.addr,
sys/dev/netif/em/if_em.c
1443
if (em_reset(adapter)) {
sys/dev/netif/em/if_em.c
1448
em_update_link_status(adapter);
sys/dev/netif/em/if_em.c
1451
E1000_WRITE_REG(&adapter->hw, E1000_VET, ETHERTYPE_VLAN);
sys/dev/netif/em/if_em.c
1456
ctrl = E1000_READ_REG(&adapter->hw, E1000_CTRL);
sys/dev/netif/em/if_em.c
1458
E1000_WRITE_REG(&adapter->hw, E1000_CTRL, ctrl);
sys/dev/netif/em/if_em.c
1462
em_get_mgmt(adapter);
sys/dev/netif/em/if_em.c
1465
em_init_tx_ring(adapter);
sys/dev/netif/em/if_em.c
1466
em_init_tx_unit(adapter);
sys/dev/netif/em/if_em.c
1469
em_set_multi(adapter);
sys/dev/netif/em/if_em.c
1472
if (em_init_rx_ring(adapter)) {
sys/dev/netif/em/if_em.c
1474
em_stop(adapter);
sys/dev/netif/em/if_em.c
1477
em_init_rx_unit(adapter);
sys/dev/netif/em/if_em.c
1480
em_set_promisc(adapter);
sys/dev/netif/em/if_em.c
1483
e1000_clear_hw_cntrs_base_generic(&adapter->hw);
sys/dev/netif/em/if_em.c
1486
if (adapter->hw.mac.type == e1000_82574) {
sys/dev/netif/em/if_em.c
1489
tmp = E1000_READ_REG(&adapter->hw, E1000_CTRL_EXT);
sys/dev/netif/em/if_em.c
1491
E1000_WRITE_REG(&adapter->hw, E1000_CTRL_EXT, tmp);
sys/dev/netif/em/if_em.c
1500
E1000_WRITE_REG(&adapter->hw, E1000_IVAR, 0x800A0908);
sys/dev/netif/em/if_em.c
1509
em_disable_intr(adapter);
sys/dev/netif/em/if_em.c
1512
em_enable_intr(adapter);
sys/dev/netif/em/if_em.c
1515
if ((adapter->flags & (EM_FLAG_HAS_MGMT | EM_FLAG_HAS_AMT)) ==
sys/dev/netif/em/if_em.c
1517
adapter->hw.mac.type >= e1000_82571)
sys/dev/netif/em/if_em.c
1518
em_get_hw_control(adapter);
sys/dev/netif/em/if_em.c
1527
callout_reset_bycpu(&adapter->tx_gc_timer, 1,
sys/dev/netif/em/if_em.c
1528
em_txgc_timer, adapter,
sys/dev/netif/em/if_em.c
1529
rman_get_cpuid(adapter->intr_res));
sys/dev/netif/em/if_em.c
1531
callout_reset(&adapter->timer, hz, em_timer, adapter);
sys/dev/netif/em/if_em.c
1539
struct adapter *adapter = ifp->if_softc;
sys/dev/netif/em/if_em.c
1543
if (adapter->npoll.ifpc_stcount-- == 0) {
sys/dev/netif/em/if_em.c
1546
adapter->npoll.ifpc_stcount = adapter->npoll.ifpc_stfrac;
sys/dev/netif/em/if_em.c
1548
reg_icr = E1000_READ_REG(&adapter->hw, E1000_ICR);
sys/dev/netif/em/if_em.c
1550
callout_stop(&adapter->timer);
sys/dev/netif/em/if_em.c
1551
adapter->hw.mac.get_link_status = 1;
sys/dev/netif/em/if_em.c
1552
em_update_link_status(adapter);
sys/dev/netif/em/if_em.c
1553
callout_reset(&adapter->timer, hz, em_timer, adapter);
sys/dev/netif/em/if_em.c
1557
em_rxeof(adapter, count);
sys/dev/netif/em/if_em.c
1559
em_tx_intr(adapter);
sys/dev/netif/em/if_em.c
1560
em_try_txgc(adapter, 1);
sys/dev/netif/em/if_em.c
1566
struct adapter *adapter = ifp->if_softc;
sys/dev/netif/em/if_em.c
1571
int cpuid = adapter->npoll.ifpc_cpuid;
sys/dev/netif/em/if_em.c
1579
ifq_set_cpuid(&ifp->if_snd, rman_get_cpuid(adapter->intr_res));
sys/dev/netif/em/if_em.c
1582
em_init(adapter);
sys/dev/netif/em/if_em.c
1594
em_intr_body(struct adapter *adapter, boolean_t chk_asserted)
sys/dev/netif/em/if_em.c
1596
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
1602
reg_icr = E1000_READ_REG(&adapter->hw, E1000_ICR);
sys/dev/netif/em/if_em.c
1605
((adapter->hw.mac.type >= e1000_82571 &&
sys/dev/netif/em/if_em.c
1626
em_rxeof(adapter, -1);
sys/dev/netif/em/if_em.c
1628
em_tx_intr(adapter);
sys/dev/netif/em/if_em.c
1633
callout_stop(&adapter->timer);
sys/dev/netif/em/if_em.c
1634
adapter->hw.mac.get_link_status = 1;
sys/dev/netif/em/if_em.c
1635
em_update_link_status(adapter);
sys/dev/netif/em/if_em.c
1638
em_tx_purge(adapter);
sys/dev/netif/em/if_em.c
1640
callout_reset(&adapter->timer, hz, em_timer, adapter);
sys/dev/netif/em/if_em.c
1644
adapter->rx_overruns++;
sys/dev/netif/em/if_em.c
1652
struct adapter *adapter = xsc;
sys/dev/netif/em/if_em.c
1654
E1000_WRITE_REG(&adapter->hw, E1000_IMC, 0xffffffff);
sys/dev/netif/em/if_em.c
1660
em_intr_body(adapter, FALSE);
sys/dev/netif/em/if_em.c
1661
E1000_WRITE_REG(&adapter->hw, E1000_IMS, IMS_ENABLE_MASK);
sys/dev/netif/em/if_em.c
1667
struct adapter *adapter = ifp->if_softc;
sys/dev/netif/em/if_em.c
1671
em_update_link_status(adapter);
sys/dev/netif/em/if_em.c
1676
if (!adapter->link_active) {
sys/dev/netif/em/if_em.c
1677
if (adapter->hw.mac.autoneg)
sys/dev/netif/em/if_em.c
1680
ifmr->ifm_active = adapter->media.ifm_media;
sys/dev/netif/em/if_em.c
1685
if (adapter->ifm_flowctrl & IFM_ETH_FORCEPAUSE)
sys/dev/netif/em/if_em.c
1686
ifmr->ifm_active |= adapter->ifm_flowctrl;
sys/dev/netif/em/if_em.c
1688
if (adapter->hw.phy.media_type == e1000_media_type_fiber ||
sys/dev/netif/em/if_em.c
1689
adapter->hw.phy.media_type == e1000_media_type_internal_serdes) {
sys/dev/netif/em/if_em.c
1692
if (adapter->hw.mac.type == e1000_82545)
sys/dev/netif/em/if_em.c
1696
switch (adapter->link_speed) {
sys/dev/netif/em/if_em.c
1708
if (adapter->link_duplex == FULL_DUPLEX)
sys/dev/netif/em/if_em.c
1715
e1000_fc2ifmedia(adapter->hw.fc.current_mode);
sys/dev/netif/em/if_em.c
1722
struct adapter *adapter = ifp->if_softc;
sys/dev/netif/em/if_em.c
1723
struct ifmedia *ifm = &adapter->media;
sys/dev/netif/em/if_em.c
1730
if (adapter->hw.mac.type == e1000_pchlan &&
sys/dev/netif/em/if_em.c
1739
adapter->hw.mac.autoneg = DO_AUTO_NEG;
sys/dev/netif/em/if_em.c
1740
adapter->hw.phy.autoneg_advertised = AUTONEG_ADV_DEFAULT;
sys/dev/netif/em/if_em.c
1746
adapter->hw.mac.autoneg = DO_AUTO_NEG;
sys/dev/netif/em/if_em.c
1747
adapter->hw.phy.autoneg_advertised = ADVERTISE_1000_FULL;
sys/dev/netif/em/if_em.c
1752
adapter->hw.mac.forced_speed_duplex = ADVERTISE_100_FULL;
sys/dev/netif/em/if_em.c
1762
adapter->hw.mac.forced_speed_duplex = ADVERTISE_100_HALF;
sys/dev/netif/em/if_em.c
1764
adapter->hw.mac.autoneg = FALSE;
sys/dev/netif/em/if_em.c
1765
adapter->hw.phy.autoneg_advertised = 0;
sys/dev/netif/em/if_em.c
1770
adapter->hw.mac.forced_speed_duplex = ADVERTISE_10_FULL;
sys/dev/netif/em/if_em.c
1780
adapter->hw.mac.forced_speed_duplex = ADVERTISE_10_HALF;
sys/dev/netif/em/if_em.c
1782
adapter->hw.mac.autoneg = FALSE;
sys/dev/netif/em/if_em.c
1783
adapter->hw.phy.autoneg_advertised = 0;
sys/dev/netif/em/if_em.c
1793
adapter->ifm_flowctrl = ifm->ifm_media & IFM_ETH_FCMASK;
sys/dev/netif/em/if_em.c
1796
em_init(adapter);
sys/dev/netif/em/if_em.c
1802
em_encap(struct adapter *adapter, struct mbuf **m_headp,
sys/dev/netif/em/if_em.c
1814
error = em_tso_pullup(adapter, m_headp);
sys/dev/netif/em/if_em.c
1828
first = adapter->next_avail_tx_desc;
sys/dev/netif/em/if_em.c
1829
tx_buffer = &adapter->tx_buffer_area[first];
sys/dev/netif/em/if_em.c
1833
maxsegs = adapter->num_tx_desc_avail - EM_TX_RESERVED;
sys/dev/netif/em/if_em.c
1834
KASSERT(maxsegs >= adapter->spare_tx_desc,
sys/dev/netif/em/if_em.c
1836
if (adapter->pcix_82544) {
sys/dev/netif/em/if_em.c
1843
error = bus_dmamap_load_mbuf_defrag(adapter->txtag, map, m_headp,
sys/dev/netif/em/if_em.c
1847
adapter->mbuf_alloc_failed++;
sys/dev/netif/em/if_em.c
1849
adapter->no_tx_dma_setup++;
sys/dev/netif/em/if_em.c
1855
bus_dmamap_sync(adapter->txtag, map, BUS_DMASYNC_PREWRITE);
sys/dev/netif/em/if_em.c
1858
adapter->tx_nsegs += nsegs;
sys/dev/netif/em/if_em.c
1863
i = em_tso_setup(adapter, m_head, &txd_upper, &txd_lower);
sys/dev/netif/em/if_em.c
1864
adapter->tx_nsegs += i;
sys/dev/netif/em/if_em.c
1868
i = em_txcsum(adapter, m_head, &txd_upper, &txd_lower);
sys/dev/netif/em/if_em.c
1869
adapter->tx_nsegs += i;
sys/dev/netif/em/if_em.c
1881
i = adapter->next_avail_tx_desc;
sys/dev/netif/em/if_em.c
1886
if(adapter->pcix_82544) {
sys/dev/netif/em/if_em.c
1897
KKASSERT(txd_used < adapter->num_tx_desc_avail);
sys/dev/netif/em/if_em.c
1899
tx_buffer = &adapter->tx_buffer_area[i];
sys/dev/netif/em/if_em.c
1900
ctxd = &adapter->tx_desc_base[i];
sys/dev/netif/em/if_em.c
1910
if (++i == adapter->num_tx_desc)
sys/dev/netif/em/if_em.c
1916
tx_buffer = &adapter->tx_buffer_area[i];
sys/dev/netif/em/if_em.c
1917
ctxd = &adapter->tx_desc_base[i];
sys/dev/netif/em/if_em.c
1925
if (++i == adapter->num_tx_desc)
sys/dev/netif/em/if_em.c
1930
adapter->next_avail_tx_desc = i;
sys/dev/netif/em/if_em.c
1931
if (adapter->pcix_82544) {
sys/dev/netif/em/if_em.c
1932
KKASSERT(adapter->num_tx_desc_avail > txd_used);
sys/dev/netif/em/if_em.c
1933
adapter->num_tx_desc_avail -= txd_used;
sys/dev/netif/em/if_em.c
1935
KKASSERT(adapter->num_tx_desc_avail > nsegs);
sys/dev/netif/em/if_em.c
1936
adapter->num_tx_desc_avail -= nsegs;
sys/dev/netif/em/if_em.c
1938
adapter->tx_nmbuf++;
sys/dev/netif/em/if_em.c
1944
if (adapter->tx_nsegs >= adapter->tx_int_nsegs) {
sys/dev/netif/em/if_em.c
1945
adapter->tx_nsegs = 0;
sys/dev/netif/em/if_em.c
1957
adapter->tx_dd[adapter->tx_dd_tail] = last;
sys/dev/netif/em/if_em.c
1958
EM_INC_TXDD_IDX(adapter->tx_dd_tail);
sys/dev/netif/em/if_em.c
1959
KKASSERT(adapter->tx_dd_tail != adapter->tx_dd_head);
sys/dev/netif/em/if_em.c
1967
if (adapter->hw.mac.type == e1000_82547) {
sys/dev/netif/em/if_em.c
1972
if (adapter->link_duplex == HALF_DUPLEX) {
sys/dev/netif/em/if_em.c
1973
em_82547_move_tail_serialized(adapter);
sys/dev/netif/em/if_em.c
1975
E1000_WRITE_REG(&adapter->hw, E1000_TDT(0), i);
sys/dev/netif/em/if_em.c
1976
em_82547_update_fifo_head(adapter,
sys/dev/netif/em/if_em.c
1995
em_82547_move_tail_serialized(struct adapter *adapter)
sys/dev/netif/em/if_em.c
2001
ASSERT_SERIALIZED(adapter->arpcom.ac_if.if_serializer);
sys/dev/netif/em/if_em.c
2003
hw_tdt = E1000_READ_REG(&adapter->hw, E1000_TDT(0));
sys/dev/netif/em/if_em.c
2004
sw_tdt = adapter->next_avail_tx_desc;
sys/dev/netif/em/if_em.c
2007
tx_desc = &adapter->tx_desc_base[hw_tdt];
sys/dev/netif/em/if_em.c
2010
if (++hw_tdt == adapter->num_tx_desc)
sys/dev/netif/em/if_em.c
2014
if (em_82547_fifo_workaround(adapter, length)) {
sys/dev/netif/em/if_em.c
2015
adapter->tx_fifo_wrk_cnt++;
sys/dev/netif/em/if_em.c
2016
callout_reset(&adapter->tx_fifo_timer, 1,
sys/dev/netif/em/if_em.c
2017
em_82547_move_tail, adapter);
sys/dev/netif/em/if_em.c
2020
E1000_WRITE_REG(&adapter->hw, E1000_TDT(0), hw_tdt);
sys/dev/netif/em/if_em.c
2021
em_82547_update_fifo_head(adapter, length);
sys/dev/netif/em/if_em.c
2030
struct adapter *adapter = xsc;
sys/dev/netif/em/if_em.c
2031
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
2034
em_82547_move_tail_serialized(adapter);
sys/dev/netif/em/if_em.c
2039
em_82547_fifo_workaround(struct adapter *adapter, int len)
sys/dev/netif/em/if_em.c
2045
if (adapter->link_duplex == HALF_DUPLEX) {
sys/dev/netif/em/if_em.c
2046
fifo_space = adapter->tx_fifo_size - adapter->tx_fifo_head;
sys/dev/netif/em/if_em.c
2049
if (em_82547_tx_fifo_reset(adapter))
sys/dev/netif/em/if_em.c
2059
em_82547_update_fifo_head(struct adapter *adapter, int len)
sys/dev/netif/em/if_em.c
2064
adapter->tx_fifo_head += fifo_pkt_len;
sys/dev/netif/em/if_em.c
2065
if (adapter->tx_fifo_head >= adapter->tx_fifo_size)
sys/dev/netif/em/if_em.c
2066
adapter->tx_fifo_head -= adapter->tx_fifo_size;
sys/dev/netif/em/if_em.c
2070
em_82547_tx_fifo_reset(struct adapter *adapter)
sys/dev/netif/em/if_em.c
2074
if ((E1000_READ_REG(&adapter->hw, E1000_TDT(0)) ==
sys/dev/netif/em/if_em.c
2075
E1000_READ_REG(&adapter->hw, E1000_TDH(0))) &&
sys/dev/netif/em/if_em.c
2076
(E1000_READ_REG(&adapter->hw, E1000_TDFT) ==
sys/dev/netif/em/if_em.c
2077
E1000_READ_REG(&adapter->hw, E1000_TDFH)) &&
sys/dev/netif/em/if_em.c
2078
(E1000_READ_REG(&adapter->hw, E1000_TDFTS) ==
sys/dev/netif/em/if_em.c
2079
E1000_READ_REG(&adapter->hw, E1000_TDFHS)) &&
sys/dev/netif/em/if_em.c
2080
(E1000_READ_REG(&adapter->hw, E1000_TDFPC) == 0)) {
sys/dev/netif/em/if_em.c
2082
tctl = E1000_READ_REG(&adapter->hw, E1000_TCTL);
sys/dev/netif/em/if_em.c
2083
E1000_WRITE_REG(&adapter->hw, E1000_TCTL,
sys/dev/netif/em/if_em.c
2087
E1000_WRITE_REG(&adapter->hw, E1000_TDFT,
sys/dev/netif/em/if_em.c
2088
adapter->tx_head_addr);
sys/dev/netif/em/if_em.c
2089
E1000_WRITE_REG(&adapter->hw, E1000_TDFH,
sys/dev/netif/em/if_em.c
2090
adapter->tx_head_addr);
sys/dev/netif/em/if_em.c
2091
E1000_WRITE_REG(&adapter->hw, E1000_TDFTS,
sys/dev/netif/em/if_em.c
2092
adapter->tx_head_addr);
sys/dev/netif/em/if_em.c
2093
E1000_WRITE_REG(&adapter->hw, E1000_TDFHS,
sys/dev/netif/em/if_em.c
2094
adapter->tx_head_addr);
sys/dev/netif/em/if_em.c
2097
E1000_WRITE_REG(&adapter->hw, E1000_TCTL, tctl);
sys/dev/netif/em/if_em.c
2098
E1000_WRITE_FLUSH(&adapter->hw);
sys/dev/netif/em/if_em.c
2100
adapter->tx_fifo_head = 0;
sys/dev/netif/em/if_em.c
2101
adapter->tx_fifo_reset_cnt++;
sys/dev/netif/em/if_em.c
2110
em_set_promisc(struct adapter *adapter)
sys/dev/netif/em/if_em.c
2112
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
2115
reg_rctl = E1000_READ_REG(&adapter->hw, E1000_RCTL);
sys/dev/netif/em/if_em.c
2122
E1000_WRITE_REG(&adapter->hw, E1000_RCTL, reg_rctl);
sys/dev/netif/em/if_em.c
2126
E1000_WRITE_REG(&adapter->hw, E1000_RCTL, reg_rctl);
sys/dev/netif/em/if_em.c
2131
em_disable_promisc(struct adapter *adapter)
sys/dev/netif/em/if_em.c
2133
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
2137
reg_rctl = E1000_READ_REG(&adapter->hw, E1000_RCTL);
sys/dev/netif/em/if_em.c
2157
E1000_WRITE_REG(&adapter->hw, E1000_RCTL, reg_rctl);
sys/dev/netif/em/if_em.c
2161
em_set_multi(struct adapter *adapter)
sys/dev/netif/em/if_em.c
2163
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
2169
mta = adapter->mta;
sys/dev/netif/em/if_em.c
2172
if (adapter->hw.mac.type == e1000_82542 &&
sys/dev/netif/em/if_em.c
2173
adapter->hw.revision_id == E1000_REVISION_2) {
sys/dev/netif/em/if_em.c
2174
reg_rctl = E1000_READ_REG(&adapter->hw, E1000_RCTL);
sys/dev/netif/em/if_em.c
2175
if (adapter->hw.bus.pci_cmd_word & CMD_MEM_WRT_INVALIDATE)
sys/dev/netif/em/if_em.c
2176
e1000_pci_clear_mwi(&adapter->hw);
sys/dev/netif/em/if_em.c
2178
E1000_WRITE_REG(&adapter->hw, E1000_RCTL, reg_rctl);
sys/dev/netif/em/if_em.c
2195
reg_rctl = E1000_READ_REG(&adapter->hw, E1000_RCTL);
sys/dev/netif/em/if_em.c
2197
E1000_WRITE_REG(&adapter->hw, E1000_RCTL, reg_rctl);
sys/dev/netif/em/if_em.c
2199
e1000_update_mc_addr_list(&adapter->hw, mta, mcnt);
sys/dev/netif/em/if_em.c
2202
if (adapter->hw.mac.type == e1000_82542 &&
sys/dev/netif/em/if_em.c
2203
adapter->hw.revision_id == E1000_REVISION_2) {
sys/dev/netif/em/if_em.c
2204
reg_rctl = E1000_READ_REG(&adapter->hw, E1000_RCTL);
sys/dev/netif/em/if_em.c
2206
E1000_WRITE_REG(&adapter->hw, E1000_RCTL, reg_rctl);
sys/dev/netif/em/if_em.c
2208
if (adapter->hw.bus.pci_cmd_word & CMD_MEM_WRT_INVALIDATE)
sys/dev/netif/em/if_em.c
2209
e1000_pci_set_mwi(&adapter->hw);
sys/dev/netif/em/if_em.c
2219
struct adapter *adapter = xsc;
sys/dev/netif/em/if_em.c
2220
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
2224
em_update_link_status(adapter);
sys/dev/netif/em/if_em.c
2225
em_update_stats(adapter);
sys/dev/netif/em/if_em.c
2228
if (e1000_get_laa_state_82571(&adapter->hw) == TRUE)
sys/dev/netif/em/if_em.c
2229
e1000_rar_set(&adapter->hw, adapter->hw.mac.addr, 0);
sys/dev/netif/em/if_em.c
2232
em_print_hw_stats(adapter);
sys/dev/netif/em/if_em.c
2234
em_smartspeed(adapter);
sys/dev/netif/em/if_em.c
2236
callout_reset(&adapter->timer, hz, em_timer, adapter);
sys/dev/netif/em/if_em.c
2242
em_update_link_status(struct adapter *adapter)
sys/dev/netif/em/if_em.c
2244
struct e1000_hw *hw = &adapter->hw;
sys/dev/netif/em/if_em.c
2245
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
2246
device_t dev = adapter->dev;
sys/dev/netif/em/if_em.c
2273
link_check = adapter->hw.mac.serdes_has_link;
sys/dev/netif/em/if_em.c
2282
if (link_check && adapter->link_active == 0) {
sys/dev/netif/em/if_em.c
2283
e1000_get_speed_and_duplex(hw, &adapter->link_speed,
sys/dev/netif/em/if_em.c
2284
&adapter->link_duplex);
sys/dev/netif/em/if_em.c
2290
if (adapter->link_speed != SPEED_1000 &&
sys/dev/netif/em/if_em.c
2306
adapter->link_speed,
sys/dev/netif/em/if_em.c
2307
(adapter->link_duplex == FULL_DUPLEX) ?
sys/dev/netif/em/if_em.c
2311
if (adapter->ifm_flowctrl & IFM_ETH_FORCEPAUSE)
sys/dev/netif/em/if_em.c
2312
e1000_force_flowctrl(hw, adapter->ifm_flowctrl);
sys/dev/netif/em/if_em.c
2313
adapter->link_active = 1;
sys/dev/netif/em/if_em.c
2314
adapter->smartspeed = 0;
sys/dev/netif/em/if_em.c
2315
ifp->if_baudrate = adapter->link_speed * 1000000;
sys/dev/netif/em/if_em.c
2318
} else if (!link_check && adapter->link_active == 1) {
sys/dev/netif/em/if_em.c
2319
ifp->if_baudrate = adapter->link_speed = 0;
sys/dev/netif/em/if_em.c
2320
adapter->link_duplex = 0;
sys/dev/netif/em/if_em.c
2323
adapter->link_active = 0;
sys/dev/netif/em/if_em.c
2334
em_stop(struct adapter *adapter)
sys/dev/netif/em/if_em.c
2336
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
2341
em_disable_intr(adapter);
sys/dev/netif/em/if_em.c
2343
callout_stop(&adapter->timer);
sys/dev/netif/em/if_em.c
2344
callout_stop(&adapter->tx_fifo_timer);
sys/dev/netif/em/if_em.c
2349
adapter->tx_running = 0;
sys/dev/netif/em/if_em.c
2350
callout_stop(&adapter->tx_gc_timer);
sys/dev/netif/em/if_em.c
2353
if (adapter->hw.mac.type >= e1000_pch_spt)
sys/dev/netif/em/if_em.c
2354
em_flush_txrx_ring(adapter);
sys/dev/netif/em/if_em.c
2356
e1000_reset_hw(&adapter->hw);
sys/dev/netif/em/if_em.c
2357
if (adapter->hw.mac.type >= e1000_82544)
sys/dev/netif/em/if_em.c
2358
E1000_WRITE_REG(&adapter->hw, E1000_WUC, 0);
sys/dev/netif/em/if_em.c
2360
for (i = 0; i < adapter->num_tx_desc; i++) {
sys/dev/netif/em/if_em.c
2361
struct em_buffer *tx_buffer = &adapter->tx_buffer_area[i];
sys/dev/netif/em/if_em.c
2364
em_free_txbuffer(adapter, tx_buffer);
sys/dev/netif/em/if_em.c
2367
for (i = 0; i < adapter->num_rx_desc; i++) {
sys/dev/netif/em/if_em.c
2368
struct em_buffer *rx_buffer = &adapter->rx_buffer_area[i];
sys/dev/netif/em/if_em.c
2371
bus_dmamap_unload(adapter->rxtag, rx_buffer->map);
sys/dev/netif/em/if_em.c
2377
if (adapter->fmp != NULL)
sys/dev/netif/em/if_em.c
2378
m_freem(adapter->fmp);
sys/dev/netif/em/if_em.c
2379
adapter->fmp = NULL;
sys/dev/netif/em/if_em.c
2380
adapter->lmp = NULL;
sys/dev/netif/em/if_em.c
2382
adapter->csum_flags = 0;
sys/dev/netif/em/if_em.c
2383
adapter->csum_lhlen = 0;
sys/dev/netif/em/if_em.c
2384
adapter->csum_iphlen = 0;
sys/dev/netif/em/if_em.c
2385
adapter->csum_thlen = 0;
sys/dev/netif/em/if_em.c
2386
adapter->csum_mss = 0;
sys/dev/netif/em/if_em.c
2387
adapter->csum_pktlen = 0;
sys/dev/netif/em/if_em.c
2389
adapter->tx_dd_head = 0;
sys/dev/netif/em/if_em.c
2390
adapter->tx_dd_tail = 0;
sys/dev/netif/em/if_em.c
2391
adapter->tx_nsegs = 0;
sys/dev/netif/em/if_em.c
2395
em_get_hw_info(struct adapter *adapter)
sys/dev/netif/em/if_em.c
2397
device_t dev = adapter->dev;
sys/dev/netif/em/if_em.c
2400
adapter->hw.vendor_id = pci_get_vendor(dev);
sys/dev/netif/em/if_em.c
2401
adapter->hw.device_id = pci_get_device(dev);
sys/dev/netif/em/if_em.c
2402
adapter->hw.revision_id = pci_get_revid(dev);
sys/dev/netif/em/if_em.c
2403
adapter->hw.subsystem_vendor_id = pci_get_subvendor(dev);
sys/dev/netif/em/if_em.c
2404
adapter->hw.subsystem_device_id = pci_get_subdevice(dev);
sys/dev/netif/em/if_em.c
2407
if (e1000_set_mac_type(&adapter->hw))
sys/dev/netif/em/if_em.c
2413
em_alloc_pci_res(struct adapter *adapter)
sys/dev/netif/em/if_em.c
2415
device_t dev = adapter->dev;
sys/dev/netif/em/if_em.c
2422
adapter->memory_rid = EM_BAR_MEM;
sys/dev/netif/em/if_em.c
2423
adapter->memory = bus_alloc_resource_any(dev, SYS_RES_MEMORY,
sys/dev/netif/em/if_em.c
2424
&adapter->memory_rid, RF_ACTIVE);
sys/dev/netif/em/if_em.c
2425
if (adapter->memory == NULL) {
sys/dev/netif/em/if_em.c
2429
adapter->osdep.mem_bus_space_tag =
sys/dev/netif/em/if_em.c
2430
rman_get_bustag(adapter->memory);
sys/dev/netif/em/if_em.c
2431
adapter->osdep.mem_bus_space_handle =
sys/dev/netif/em/if_em.c
2432
rman_get_bushandle(adapter->memory);
sys/dev/netif/em/if_em.c
2435
adapter->hw.hw_addr = (uint8_t *)&adapter->osdep.mem_bus_space_handle;
sys/dev/netif/em/if_em.c
2438
if (adapter->hw.mac.type > e1000_82543 &&
sys/dev/netif/em/if_em.c
2439
adapter->hw.mac.type < e1000_82571) {
sys/dev/netif/em/if_em.c
2444
adapter->io_rid = rid;
sys/dev/netif/em/if_em.c
2456
adapter->ioport = bus_alloc_resource_any(dev, SYS_RES_IOPORT,
sys/dev/netif/em/if_em.c
2457
&adapter->io_rid, RF_ACTIVE);
sys/dev/netif/em/if_em.c
2458
if (adapter->ioport == NULL) {
sys/dev/netif/em/if_em.c
2463
adapter->hw.io_base = 0;
sys/dev/netif/em/if_em.c
2464
adapter->osdep.io_bus_space_tag =
sys/dev/netif/em/if_em.c
2465
rman_get_bustag(adapter->ioport);
sys/dev/netif/em/if_em.c
2466
adapter->osdep.io_bus_space_handle =
sys/dev/netif/em/if_em.c
2467
rman_get_bushandle(adapter->ioport);
sys/dev/netif/em/if_em.c
2483
((adapter->flags & EM_FLAG_GEN2) == 0 ||
sys/dev/netif/em/if_em.c
2484
adapter->hw.mac.type == e1000_82571 ||
sys/dev/netif/em/if_em.c
2485
adapter->hw.mac.type == e1000_82572))
sys/dev/netif/em/if_em.c
2488
adapter->intr_type = pci_alloc_1intr(dev, msi_enable,
sys/dev/netif/em/if_em.c
2489
&adapter->intr_rid, &intr_flags);
sys/dev/netif/em/if_em.c
2491
if (adapter->intr_type == PCI_INTR_TYPE_LEGACY) {
sys/dev/netif/em/if_em.c
2496
adapter->flags |= EM_FLAG_SHARED_INTR;
sys/dev/netif/em/if_em.c
2506
adapter->intr_res = bus_alloc_resource_any(dev, SYS_RES_IRQ,
sys/dev/netif/em/if_em.c
2507
&adapter->intr_rid, intr_flags);
sys/dev/netif/em/if_em.c
2508
if (adapter->intr_res == NULL) {
sys/dev/netif/em/if_em.c
2510
adapter->intr_type == PCI_INTR_TYPE_MSI ?
sys/dev/netif/em/if_em.c
2515
adapter->flags &= ~EM_FLAG_SHARED_INTR;
sys/dev/netif/em/if_em.c
2521
adapter->hw.bus.pci_cmd_word = pci_read_config(dev, PCIR_COMMAND, 2);
sys/dev/netif/em/if_em.c
2522
adapter->hw.back = &adapter->osdep;
sys/dev/netif/em/if_em.c
2527
em_free_pci_res(struct adapter *adapter)
sys/dev/netif/em/if_em.c
2529
device_t dev = adapter->dev;
sys/dev/netif/em/if_em.c
2531
if (adapter->intr_res != NULL) {
sys/dev/netif/em/if_em.c
2533
adapter->intr_rid, adapter->intr_res);
sys/dev/netif/em/if_em.c
2536
if (adapter->intr_type == PCI_INTR_TYPE_MSI)
sys/dev/netif/em/if_em.c
2539
if (adapter->memory != NULL) {
sys/dev/netif/em/if_em.c
2541
adapter->memory_rid, adapter->memory);
sys/dev/netif/em/if_em.c
2544
if (adapter->flash != NULL) {
sys/dev/netif/em/if_em.c
2546
adapter->flash_rid, adapter->flash);
sys/dev/netif/em/if_em.c
2549
if (adapter->ioport != NULL) {
sys/dev/netif/em/if_em.c
2551
adapter->io_rid, adapter->ioport);
sys/dev/netif/em/if_em.c
2556
em_reset(struct adapter *adapter)
sys/dev/netif/em/if_em.c
2558
device_t dev = adapter->dev;
sys/dev/netif/em/if_em.c
2563
adapter->tx_fifo_head = 0;
sys/dev/netif/em/if_em.c
2567
(adapter->hw.mac.type == e1000_82571 ||
sys/dev/netif/em/if_em.c
2568
adapter->hw.mac.type == e1000_82572)) {
sys/dev/netif/em/if_em.c
2572
e1000_read_phy_reg(&adapter->hw,
sys/dev/netif/em/if_em.c
2575
e1000_write_phy_reg(&adapter->hw,
sys/dev/netif/em/if_em.c
2590
switch (adapter->hw.mac.type) {
sys/dev/netif/em/if_em.c
2593
if (adapter->hw.mac.max_frame_size > 8192)
sys/dev/netif/em/if_em.c
2597
adapter->tx_fifo_head = 0;
sys/dev/netif/em/if_em.c
2598
adapter->tx_head_addr = pba << EM_TX_HEAD_ADDR_SHIFT;
sys/dev/netif/em/if_em.c
2599
adapter->tx_fifo_size =
sys/dev/netif/em/if_em.c
2639
if (adapter->hw.mac.max_frame_size > 8192)
sys/dev/netif/em/if_em.c
2644
E1000_WRITE_REG(&adapter->hw, E1000_PBA, pba);
sys/dev/netif/em/if_em.c
2661
(E1000_READ_REG(&adapter->hw, E1000_PBA) & 0xffff) << 10;
sys/dev/netif/em/if_em.c
2663
adapter->hw.fc.high_water = rx_buffer_size -
sys/dev/netif/em/if_em.c
2664
roundup2(adapter->hw.mac.max_frame_size, 1024);
sys/dev/netif/em/if_em.c
2665
adapter->hw.fc.low_water = adapter->hw.fc.high_water - 1500;
sys/dev/netif/em/if_em.c
2667
if (adapter->hw.mac.type == e1000_80003es2lan)
sys/dev/netif/em/if_em.c
2668
adapter->hw.fc.pause_time = 0xFFFF;
sys/dev/netif/em/if_em.c
2670
adapter->hw.fc.pause_time = EM_FC_PAUSE_TIME;
sys/dev/netif/em/if_em.c
2672
adapter->hw.fc.send_xon = TRUE;
sys/dev/netif/em/if_em.c
2674
adapter->hw.fc.requested_mode = e1000_ifmedia2fc(adapter->ifm_flowctrl);
sys/dev/netif/em/if_em.c
2679
switch (adapter->hw.mac.type) {
sys/dev/netif/em/if_em.c
2681
KASSERT(adapter->hw.fc.requested_mode == e1000_fc_rx_pause ||
sys/dev/netif/em/if_em.c
2682
adapter->hw.fc.requested_mode == e1000_fc_none,
sys/dev/netif/em/if_em.c
2684
adapter->hw.fc.requested_mode));
sys/dev/netif/em/if_em.c
2685
adapter->hw.fc.pause_time = 0xFFFF; /* override */
sys/dev/netif/em/if_em.c
2686
if (adapter->arpcom.ac_if.if_mtu > ETHERMTU) {
sys/dev/netif/em/if_em.c
2687
adapter->hw.fc.high_water = 0x3500;
sys/dev/netif/em/if_em.c
2688
adapter->hw.fc.low_water = 0x1500;
sys/dev/netif/em/if_em.c
2690
adapter->hw.fc.high_water = 0x5000;
sys/dev/netif/em/if_em.c
2691
adapter->hw.fc.low_water = 0x3000;
sys/dev/netif/em/if_em.c
2693
adapter->hw.fc.refresh_time = 0x1000;
sys/dev/netif/em/if_em.c
2700
adapter->hw.fc.high_water = 0x5C20;
sys/dev/netif/em/if_em.c
2701
adapter->hw.fc.low_water = 0x5048;
sys/dev/netif/em/if_em.c
2702
adapter->hw.fc.pause_time = 0x0650;
sys/dev/netif/em/if_em.c
2703
adapter->hw.fc.refresh_time = 0x0400;
sys/dev/netif/em/if_em.c
2705
if (adapter->arpcom.ac_if.if_mtu > ETHERMTU)
sys/dev/netif/em/if_em.c
2706
E1000_WRITE_REG(&adapter->hw, E1000_PBA, 12);
sys/dev/netif/em/if_em.c
2708
E1000_WRITE_REG(&adapter->hw, E1000_PBA, 26);
sys/dev/netif/em/if_em.c
2713
if (adapter->arpcom.ac_if.if_mtu > ETHERMTU) {
sys/dev/netif/em/if_em.c
2714
adapter->hw.fc.high_water = 0x2800;
sys/dev/netif/em/if_em.c
2715
adapter->hw.fc.low_water =
sys/dev/netif/em/if_em.c
2716
adapter->hw.fc.high_water - 8;
sys/dev/netif/em/if_em.c
2721
if (adapter->hw.mac.type == e1000_80003es2lan)
sys/dev/netif/em/if_em.c
2722
adapter->hw.fc.pause_time = 0xFFFF;
sys/dev/netif/em/if_em.c
2727
if (adapter->hw.mac.type >= e1000_pch_spt)
sys/dev/netif/em/if_em.c
2728
em_flush_txrx_ring(adapter);
sys/dev/netif/em/if_em.c
2731
e1000_reset_hw(&adapter->hw);
sys/dev/netif/em/if_em.c
2732
if (adapter->hw.mac.type >= e1000_82544)
sys/dev/netif/em/if_em.c
2733
E1000_WRITE_REG(&adapter->hw, E1000_WUC, 0);
sys/dev/netif/em/if_em.c
2734
em_disable_aspm(adapter);
sys/dev/netif/em/if_em.c
2736
if (e1000_init_hw(&adapter->hw) < 0) {
sys/dev/netif/em/if_em.c
2741
E1000_WRITE_REG(&adapter->hw, E1000_VET, ETHERTYPE_VLAN);
sys/dev/netif/em/if_em.c
2742
e1000_get_phy_info(&adapter->hw);
sys/dev/netif/em/if_em.c
2743
e1000_check_for_link(&adapter->hw);
sys/dev/netif/em/if_em.c
2749
em_setup_ifp(struct adapter *adapter)
sys/dev/netif/em/if_em.c
2751
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
2753
if_initname(ifp, device_get_name(adapter->dev),
sys/dev/netif/em/if_em.c
2754
device_get_unit(adapter->dev));
sys/dev/netif/em/if_em.c
2755
ifp->if_softc = adapter;
sys/dev/netif/em/if_em.c
2764
ifp->if_nmbclusters = adapter->num_rx_desc;
sys/dev/netif/em/if_em.c
2765
ifq_set_maxlen(&ifp->if_snd, adapter->num_tx_desc - 1);
sys/dev/netif/em/if_em.c
2768
ether_ifattach(ifp, adapter->hw.mac.addr, NULL);
sys/dev/netif/em/if_em.c
2771
if (adapter->hw.mac.type >= e1000_82543)
sys/dev/netif/em/if_em.c
2773
if (adapter->flags & EM_FLAG_TSO)
sys/dev/netif/em/if_em.c
2791
if (adapter->hw.phy.media_type == e1000_media_type_fiber ||
sys/dev/netif/em/if_em.c
2792
adapter->hw.phy.media_type == e1000_media_type_internal_serdes) {
sys/dev/netif/em/if_em.c
2795
if (adapter->hw.mac.type == e1000_82545)
sys/dev/netif/em/if_em.c
2797
ifmedia_add(&adapter->media, IFM_ETHER | fiber_type | IFM_FDX,
sys/dev/netif/em/if_em.c
2800
ifmedia_add(&adapter->media, IFM_ETHER | IFM_10_T, 0, NULL);
sys/dev/netif/em/if_em.c
2801
ifmedia_add(&adapter->media, IFM_ETHER | IFM_10_T | IFM_FDX,
sys/dev/netif/em/if_em.c
2803
ifmedia_add(&adapter->media, IFM_ETHER | IFM_100_TX,
sys/dev/netif/em/if_em.c
2805
ifmedia_add(&adapter->media, IFM_ETHER | IFM_100_TX | IFM_FDX,
sys/dev/netif/em/if_em.c
2807
if (adapter->hw.phy.type != e1000_phy_ife) {
sys/dev/netif/em/if_em.c
2808
ifmedia_add(&adapter->media,
sys/dev/netif/em/if_em.c
2812
ifmedia_add(&adapter->media, IFM_ETHER | IFM_AUTO, 0, NULL);
sys/dev/netif/em/if_em.c
2813
ifmedia_set(&adapter->media, IFM_ETHER | IFM_AUTO |
sys/dev/netif/em/if_em.c
2814
adapter->ifm_flowctrl);
sys/dev/netif/em/if_em.c
2822
em_smartspeed(struct adapter *adapter)
sys/dev/netif/em/if_em.c
2826
if (adapter->link_active || adapter->hw.phy.type != e1000_phy_igp ||
sys/dev/netif/em/if_em.c
2827
adapter->hw.mac.autoneg == 0 ||
sys/dev/netif/em/if_em.c
2828
(adapter->hw.phy.autoneg_advertised & ADVERTISE_1000_FULL) == 0)
sys/dev/netif/em/if_em.c
2831
if (adapter->smartspeed == 0) {
sys/dev/netif/em/if_em.c
2836
e1000_read_phy_reg(&adapter->hw, PHY_1000T_STATUS, &phy_tmp);
sys/dev/netif/em/if_em.c
2839
e1000_read_phy_reg(&adapter->hw, PHY_1000T_STATUS, &phy_tmp);
sys/dev/netif/em/if_em.c
2841
e1000_read_phy_reg(&adapter->hw,
sys/dev/netif/em/if_em.c
2845
e1000_write_phy_reg(&adapter->hw,
sys/dev/netif/em/if_em.c
2847
adapter->smartspeed++;
sys/dev/netif/em/if_em.c
2848
if (adapter->hw.mac.autoneg &&
sys/dev/netif/em/if_em.c
2849
!e1000_phy_setup_autoneg(&adapter->hw) &&
sys/dev/netif/em/if_em.c
2850
!e1000_read_phy_reg(&adapter->hw,
sys/dev/netif/em/if_em.c
2854
e1000_write_phy_reg(&adapter->hw,
sys/dev/netif/em/if_em.c
2860
} else if (adapter->smartspeed == EM_SMARTSPEED_DOWNSHIFT) {
sys/dev/netif/em/if_em.c
2862
e1000_read_phy_reg(&adapter->hw, PHY_1000T_CTRL, &phy_tmp);
sys/dev/netif/em/if_em.c
2864
e1000_write_phy_reg(&adapter->hw, PHY_1000T_CTRL, phy_tmp);
sys/dev/netif/em/if_em.c
2865
if (adapter->hw.mac.autoneg &&
sys/dev/netif/em/if_em.c
2866
!e1000_phy_setup_autoneg(&adapter->hw) &&
sys/dev/netif/em/if_em.c
2867
!e1000_read_phy_reg(&adapter->hw, PHY_CONTROL, &phy_tmp)) {
sys/dev/netif/em/if_em.c
2869
e1000_write_phy_reg(&adapter->hw, PHY_CONTROL, phy_tmp);
sys/dev/netif/em/if_em.c
2874
if (adapter->smartspeed++ == EM_SMARTSPEED_MAX)
sys/dev/netif/em/if_em.c
2875
adapter->smartspeed = 0;
sys/dev/netif/em/if_em.c
2879
em_dma_malloc(struct adapter *adapter, bus_size_t size,
sys/dev/netif/em/if_em.c
2882
dma->dma_vaddr = bus_dmamem_coherent_any(adapter->parent_dtag,
sys/dev/netif/em/if_em.c
2893
em_dma_free(struct adapter *adapter, struct em_dma_alloc *dma)
sys/dev/netif/em/if_em.c
2903
em_create_tx_ring(struct adapter *adapter)
sys/dev/netif/em/if_em.c
2905
device_t dev = adapter->dev;
sys/dev/netif/em/if_em.c
2909
adapter->tx_buffer_area =
sys/dev/netif/em/if_em.c
2910
kmalloc(sizeof(struct em_buffer) * adapter->num_tx_desc,
sys/dev/netif/em/if_em.c
2916
error = bus_dma_tag_create(adapter->parent_dtag, /* parent */
sys/dev/netif/em/if_em.c
2925
&adapter->txtag);
sys/dev/netif/em/if_em.c
2928
kfree(adapter->tx_buffer_area, M_DEVBUF);
sys/dev/netif/em/if_em.c
2929
adapter->tx_buffer_area = NULL;
sys/dev/netif/em/if_em.c
2936
for (i = 0; i < adapter->num_tx_desc; i++) {
sys/dev/netif/em/if_em.c
2937
tx_buffer = &adapter->tx_buffer_area[i];
sys/dev/netif/em/if_em.c
2939
error = bus_dmamap_create(adapter->txtag,
sys/dev/netif/em/if_em.c
2944
em_destroy_tx_ring(adapter, i);
sys/dev/netif/em/if_em.c
295
static void em_stop(struct adapter *);
sys/dev/netif/em/if_em.c
2952
em_init_tx_ring(struct adapter *adapter)
sys/dev/netif/em/if_em.c
2955
bzero(adapter->tx_desc_base,
sys/dev/netif/em/if_em.c
2956
(sizeof(struct e1000_tx_desc)) * adapter->num_tx_desc);
sys/dev/netif/em/if_em.c
2959
adapter->next_avail_tx_desc = 0;
sys/dev/netif/em/if_em.c
2960
adapter->next_tx_to_clean = 0;
sys/dev/netif/em/if_em.c
2961
adapter->num_tx_desc_avail = adapter->num_tx_desc;
sys/dev/netif/em/if_em.c
2962
adapter->tx_nmbuf = 0;
sys/dev/netif/em/if_em.c
2963
adapter->tx_running = 0;
sys/dev/netif/em/if_em.c
2967
em_init_tx_unit(struct adapter *adapter)
sys/dev/netif/em/if_em.c
2973
bus_addr = adapter->txdma.dma_paddr;
sys/dev/netif/em/if_em.c
2974
E1000_WRITE_REG(&adapter->hw, E1000_TDLEN(0),
sys/dev/netif/em/if_em.c
2975
adapter->num_tx_desc * sizeof(struct e1000_tx_desc));
sys/dev/netif/em/if_em.c
2976
E1000_WRITE_REG(&adapter->hw, E1000_TDBAH(0),
sys/dev/netif/em/if_em.c
2978
E1000_WRITE_REG(&adapter->hw, E1000_TDBAL(0),
sys/dev/netif/em/if_em.c
2981
E1000_WRITE_REG(&adapter->hw, E1000_TDT(0), 0);
sys/dev/netif/em/if_em.c
2982
E1000_WRITE_REG(&adapter->hw, E1000_TDH(0), 0);
sys/dev/netif/em/if_em.c
2983
if (adapter->flags & EM_FLAG_GEN2) {
sys/dev/netif/em/if_em.c
2993
E1000_WRITE_REG(&adapter->hw, E1000_TXDCTL(0), txdctl);
sys/dev/netif/em/if_em.c
2997
switch (adapter->hw.mac.type) {
sys/dev/netif/em/if_em.c
3011
if (adapter->hw.phy.media_type == e1000_media_type_fiber ||
sys/dev/netif/em/if_em.c
3012
adapter->hw.phy.media_type ==
sys/dev/netif/em/if_em.c
3022
E1000_WRITE_REG(&adapter->hw, E1000_TIPG, tipg);
sys/dev/netif/em/if_em.c
3025
E1000_WRITE_REG(&adapter->hw, E1000_TIDV, 1);
sys/dev/netif/em/if_em.c
3026
if(adapter->hw.mac.type >= e1000_82540)
sys/dev/netif/em/if_em.c
3027
E1000_WRITE_REG(&adapter->hw, E1000_TADV, 0);
sys/dev/netif/em/if_em.c
3029
if (adapter->hw.mac.type == e1000_82571 ||
sys/dev/netif/em/if_em.c
3030
adapter->hw.mac.type == e1000_82572) {
sys/dev/netif/em/if_em.c
3031
tarc = E1000_READ_REG(&adapter->hw, E1000_TARC(0));
sys/dev/netif/em/if_em.c
3033
E1000_WRITE_REG(&adapter->hw, E1000_TARC(0), tarc);
sys/dev/netif/em/if_em.c
3034
} else if (adapter->hw.mac.type == e1000_80003es2lan) {
sys/dev/netif/em/if_em.c
3036
tarc = E1000_READ_REG(&adapter->hw, E1000_TARC(0));
sys/dev/netif/em/if_em.c
3038
E1000_WRITE_REG(&adapter->hw, E1000_TARC(0), tarc);
sys/dev/netif/em/if_em.c
3039
tarc = E1000_READ_REG(&adapter->hw, E1000_TARC(1));
sys/dev/netif/em/if_em.c
3041
E1000_WRITE_REG(&adapter->hw, E1000_TARC(1), tarc);
sys/dev/netif/em/if_em.c
3042
} else if (adapter->hw.mac.type == e1000_82574) {
sys/dev/netif/em/if_em.c
3043
tarc = E1000_READ_REG(&adapter->hw, E1000_TARC(0));
sys/dev/netif/em/if_em.c
3045
E1000_WRITE_REG(&adapter->hw, E1000_TARC(0), tarc);
sys/dev/netif/em/if_em.c
3049
tctl = E1000_READ_REG(&adapter->hw, E1000_TCTL);
sys/dev/netif/em/if_em.c
3054
if (adapter->hw.mac.type >= e1000_82571)
sys/dev/netif/em/if_em.c
3058
E1000_WRITE_REG(&adapter->hw, E1000_TCTL, tctl);
sys/dev/netif/em/if_em.c
3060
if (adapter->hw.mac.type == e1000_82571 ||
sys/dev/netif/em/if_em.c
3061
adapter->hw.mac.type == e1000_82572 ||
sys/dev/netif/em/if_em.c
3062
adapter->hw.mac.type == e1000_80003es2lan) {
sys/dev/netif/em/if_em.c
3064
tarc = E1000_READ_REG(&adapter->hw, E1000_TARC(1));
sys/dev/netif/em/if_em.c
3066
E1000_WRITE_REG(&adapter->hw, E1000_TARC(1), tarc);
sys/dev/netif/em/if_em.c
3067
} else if (adapter->hw.mac.type >= e1000_pch_spt) {
sys/dev/netif/em/if_em.c
3070
reg = E1000_READ_REG(&adapter->hw, E1000_IOSFPC);
sys/dev/netif/em/if_em.c
3072
E1000_WRITE_REG(&adapter->hw, E1000_IOSFPC, reg);
sys/dev/netif/em/if_em.c
3073
reg = E1000_READ_REG(&adapter->hw, E1000_TARC(0));
sys/dev/netif/em/if_em.c
3075
E1000_WRITE_REG(&adapter->hw, E1000_TARC(0), reg);
sys/dev/netif/em/if_em.c
3080
em_destroy_tx_ring(struct adapter *adapter, int ndesc)
sys/dev/netif/em/if_em.c
3085
if (adapter->tx_buffer_area == NULL)
sys/dev/netif/em/if_em.c
3089
tx_buffer = &adapter->tx_buffer_area[i];
sys/dev/netif/em/if_em.c
309
static void em_intr_body(struct adapter *, boolean_t);
sys/dev/netif/em/if_em.c
3092
bus_dmamap_destroy(adapter->txtag, tx_buffer->map);
sys/dev/netif/em/if_em.c
3094
bus_dma_tag_destroy(adapter->txtag);
sys/dev/netif/em/if_em.c
3096
kfree(adapter->tx_buffer_area, M_DEVBUF);
sys/dev/netif/em/if_em.c
3097
adapter->tx_buffer_area = NULL;
sys/dev/netif/em/if_em.c
310
static void em_rxeof(struct adapter *, int);
sys/dev/netif/em/if_em.c
311
static void em_txeof(struct adapter *);
sys/dev/netif/em/if_em.c
3114
em_txcsum(struct adapter *adapter, struct mbuf *mp,
sys/dev/netif/em/if_em.c
312
static void em_tx_collect(struct adapter *, boolean_t);
sys/dev/netif/em/if_em.c
3125
if (adapter->csum_lhlen == ehdrlen &&
sys/dev/netif/em/if_em.c
3126
adapter->csum_iphlen == ip_hlen &&
sys/dev/netif/em/if_em.c
3127
adapter->csum_flags == csum_flags) {
sys/dev/netif/em/if_em.c
313
static void em_tx_purge(struct adapter *);
sys/dev/netif/em/if_em.c
3132
*txd_upper = adapter->csum_txd_upper;
sys/dev/netif/em/if_em.c
3133
*txd_lower = adapter->csum_txd_lower;
sys/dev/netif/em/if_em.c
3141
curr_txd = adapter->next_avail_tx_desc;
sys/dev/netif/em/if_em.c
3142
TXD = (struct e1000_context_desc *)&adapter->tx_desc_base[curr_txd];
sys/dev/netif/em/if_em.c
315
static void em_enable_intr(struct adapter *);
sys/dev/netif/em/if_em.c
316
static void em_disable_intr(struct adapter *);
sys/dev/netif/em/if_em.c
318
static int em_dma_malloc(struct adapter *, bus_size_t,
sys/dev/netif/em/if_em.c
3192
adapter->csum_lhlen = ehdrlen;
sys/dev/netif/em/if_em.c
3193
adapter->csum_iphlen = ip_hlen;
sys/dev/netif/em/if_em.c
3194
adapter->csum_flags = csum_flags;
sys/dev/netif/em/if_em.c
3195
adapter->csum_txd_upper = *txd_upper;
sys/dev/netif/em/if_em.c
3196
adapter->csum_txd_lower = *txd_lower;
sys/dev/netif/em/if_em.c
320
static void em_dma_free(struct adapter *, struct em_dma_alloc *);
sys/dev/netif/em/if_em.c
3202
if (++curr_txd == adapter->num_tx_desc)
sys/dev/netif/em/if_em.c
3205
KKASSERT(adapter->num_tx_desc_avail > 0);
sys/dev/netif/em/if_em.c
3206
adapter->num_tx_desc_avail--;
sys/dev/netif/em/if_em.c
3208
adapter->next_avail_tx_desc = curr_txd;
sys/dev/netif/em/if_em.c
321
static void em_init_tx_ring(struct adapter *);
sys/dev/netif/em/if_em.c
3213
em_txeof(struct adapter *adapter)
sys/dev/netif/em/if_em.c
3215
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
3219
if (adapter->tx_dd_head == adapter->tx_dd_tail)
sys/dev/netif/em/if_em.c
322
static int em_init_rx_ring(struct adapter *);
sys/dev/netif/em/if_em.c
3222
if (adapter->num_tx_desc_avail == adapter->num_tx_desc)
sys/dev/netif/em/if_em.c
3225
num_avail = adapter->num_tx_desc_avail;
sys/dev/netif/em/if_em.c
3226
first = adapter->next_tx_to_clean;
sys/dev/netif/em/if_em.c
3228
while (adapter->tx_dd_head != adapter->tx_dd_tail) {
sys/dev/netif/em/if_em.c
323
static int em_create_tx_ring(struct adapter *);
sys/dev/netif/em/if_em.c
3230
int dd_idx = adapter->tx_dd[adapter->tx_dd_head];
sys/dev/netif/em/if_em.c
3232
tx_desc = &adapter->tx_desc_base[dd_idx];
sys/dev/netif/em/if_em.c
3234
EM_INC_TXDD_IDX(adapter->tx_dd_head);
sys/dev/netif/em/if_em.c
3236
if (++dd_idx == adapter->num_tx_desc)
sys/dev/netif/em/if_em.c
324
static int em_create_rx_ring(struct adapter *);
sys/dev/netif/em/if_em.c
3242
KKASSERT(num_avail < adapter->num_tx_desc);
sys/dev/netif/em/if_em.c
3245
tx_buffer = &adapter->tx_buffer_area[first];
sys/dev/netif/em/if_em.c
3247
em_free_txbuffer(adapter, tx_buffer);
sys/dev/netif/em/if_em.c
3249
if (++first == adapter->num_tx_desc)
sys/dev/netif/em/if_em.c
325
static void em_destroy_tx_ring(struct adapter *, int);
sys/dev/netif/em/if_em.c
3256
adapter->next_tx_to_clean = first;
sys/dev/netif/em/if_em.c
3257
adapter->num_tx_desc_avail = num_avail;
sys/dev/netif/em/if_em.c
3259
if (adapter->tx_dd_head == adapter->tx_dd_tail) {
sys/dev/netif/em/if_em.c
326
static void em_destroy_rx_ring(struct adapter *, int);
sys/dev/netif/em/if_em.c
3260
adapter->tx_dd_head = 0;
sys/dev/netif/em/if_em.c
3261
adapter->tx_dd_tail = 0;
sys/dev/netif/em/if_em.c
3264
if (!EM_IS_OACTIVE(adapter)) {
sys/dev/netif/em/if_em.c
3268
if (adapter->num_tx_desc_avail == adapter->num_tx_desc)
sys/dev/netif/em/if_em.c
327
static int em_newbuf(struct adapter *, int, int);
sys/dev/netif/em/if_em.c
3271
adapter->tx_running = EM_TX_RUNNING;
sys/dev/netif/em/if_em.c
3275
em_tx_collect(struct adapter *adapter, boolean_t gc)
sys/dev/netif/em/if_em.c
3277
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
328
static int em_encap(struct adapter *, struct mbuf **, int *, int *);
sys/dev/netif/em/if_em.c
3281
if (adapter->num_tx_desc_avail == adapter->num_tx_desc)
sys/dev/netif/em/if_em.c
3284
tdh = E1000_READ_REG(&adapter->hw, E1000_TDH(0));
sys/dev/netif/em/if_em.c
3285
if (tdh == adapter->next_tx_to_clean) {
sys/dev/netif/em/if_em.c
3286
if (gc && adapter->tx_nmbuf > 0)
sys/dev/netif/em/if_em.c
3287
adapter->tx_running = EM_TX_RUNNING;
sys/dev/netif/em/if_em.c
329
static void em_rxcsum(struct adapter *, struct e1000_rx_desc *,
sys/dev/netif/em/if_em.c
3291
adapter->tx_gc++;
sys/dev/netif/em/if_em.c
3293
if (adapter->tx_dd_head != adapter->tx_dd_tail)
sys/dev/netif/em/if_em.c
3294
dd_idx = adapter->tx_dd[adapter->tx_dd_head];
sys/dev/netif/em/if_em.c
3296
num_avail = adapter->num_tx_desc_avail;
sys/dev/netif/em/if_em.c
3297
first = adapter->next_tx_to_clean;
sys/dev/netif/em/if_em.c
3302
KKASSERT(num_avail < adapter->num_tx_desc);
sys/dev/netif/em/if_em.c
3305
tx_buffer = &adapter->tx_buffer_area[first];
sys/dev/netif/em/if_em.c
3307
em_free_txbuffer(adapter, tx_buffer);
sys/dev/netif/em/if_em.c
331
static int em_txcsum(struct adapter *, struct mbuf *,
sys/dev/netif/em/if_em.c
3310
EM_INC_TXDD_IDX(adapter->tx_dd_head);
sys/dev/netif/em/if_em.c
3311
if (adapter->tx_dd_head == adapter->tx_dd_tail) {
sys/dev/netif/em/if_em.c
3312
adapter->tx_dd_head = 0;
sys/dev/netif/em/if_em.c
3313
adapter->tx_dd_tail = 0;
sys/dev/netif/em/if_em.c
3316
dd_idx = adapter->tx_dd[adapter->tx_dd_head];
sys/dev/netif/em/if_em.c
3320
if (++first == adapter->num_tx_desc)
sys/dev/netif/em/if_em.c
3323
adapter->next_tx_to_clean = first;
sys/dev/netif/em/if_em.c
3324
adapter->num_tx_desc_avail = num_avail;
sys/dev/netif/em/if_em.c
3326
if (!EM_IS_OACTIVE(adapter)) {
sys/dev/netif/em/if_em.c
333
static int em_tso_pullup(struct adapter *, struct mbuf **);
sys/dev/netif/em/if_em.c
3330
if (adapter->num_tx_desc_avail == adapter->num_tx_desc)
sys/dev/netif/em/if_em.c
3333
if (!gc || adapter->tx_nmbuf > 0)
sys/dev/netif/em/if_em.c
3334
adapter->tx_running = EM_TX_RUNNING;
sys/dev/netif/em/if_em.c
334
static int em_tso_setup(struct adapter *, struct mbuf *,
sys/dev/netif/em/if_em.c
3344
em_tx_purge(struct adapter *adapter)
sys/dev/netif/em/if_em.c
3346
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
3348
if (!adapter->link_active && ifp->if_timer) {
sys/dev/netif/em/if_em.c
3349
em_tx_collect(adapter, FALSE);
sys/dev/netif/em/if_em.c
3353
em_init(adapter);
sys/dev/netif/em/if_em.c
3359
em_newbuf(struct adapter *adapter, int i, int init)
sys/dev/netif/em/if_em.c
3369
adapter->mbuf_cluster_failed++;
sys/dev/netif/em/if_em.c
337
static int em_get_hw_info(struct adapter *);
sys/dev/netif/em/if_em.c
3371
if_printf(&adapter->arpcom.ac_if,
sys/dev/netif/em/if_em.c
3378
if (adapter->hw.mac.max_frame_size <= MCLBYTES - ETHER_ALIGN)
sys/dev/netif/em/if_em.c
3381
error = bus_dmamap_load_mbuf_segment(adapter->rxtag,
sys/dev/netif/em/if_em.c
3382
adapter->rx_sparemap, m,
sys/dev/netif/em/if_em.c
3387
if_printf(&adapter->arpcom.ac_if,
sys/dev/netif/em/if_em.c
339
static int em_alloc_pci_res(struct adapter *);
sys/dev/netif/em/if_em.c
3393
rx_buffer = &adapter->rx_buffer_area[i];
sys/dev/netif/em/if_em.c
3395
bus_dmamap_unload(adapter->rxtag, rx_buffer->map);
sys/dev/netif/em/if_em.c
3398
rx_buffer->map = adapter->rx_sparemap;
sys/dev/netif/em/if_em.c
3399
adapter->rx_sparemap = map;
sys/dev/netif/em/if_em.c
340
static void em_free_pci_res(struct adapter *);
sys/dev/netif/em/if_em.c
3403
adapter->rx_desc_base[i].buffer_addr = htole64(seg.ds_addr);
sys/dev/netif/em/if_em.c
3408
em_create_rx_ring(struct adapter *adapter)
sys/dev/netif/em/if_em.c
341
static int em_reset(struct adapter *);
sys/dev/netif/em/if_em.c
3410
device_t dev = adapter->dev;
sys/dev/netif/em/if_em.c
3414
adapter->rx_buffer_area =
sys/dev/netif/em/if_em.c
3415
kmalloc(sizeof(struct em_buffer) * adapter->num_rx_desc,
sys/dev/netif/em/if_em.c
342
static void em_setup_ifp(struct adapter *);
sys/dev/netif/em/if_em.c
3421
error = bus_dma_tag_create(adapter->parent_dtag, /* parent */
sys/dev/netif/em/if_em.c
3429
&adapter->rxtag);
sys/dev/netif/em/if_em.c
343
static void em_init_tx_unit(struct adapter *);
sys/dev/netif/em/if_em.c
3432
kfree(adapter->rx_buffer_area, M_DEVBUF);
sys/dev/netif/em/if_em.c
3433
adapter->rx_buffer_area = NULL;
sys/dev/netif/em/if_em.c
344
static void em_init_rx_unit(struct adapter *);
sys/dev/netif/em/if_em.c
3440
error = bus_dmamap_create(adapter->rxtag, BUS_DMA_WAITOK,
sys/dev/netif/em/if_em.c
3441
&adapter->rx_sparemap);
sys/dev/netif/em/if_em.c
3444
bus_dma_tag_destroy(adapter->rxtag);
sys/dev/netif/em/if_em.c
3445
kfree(adapter->rx_buffer_area, M_DEVBUF);
sys/dev/netif/em/if_em.c
3446
adapter->rx_buffer_area = NULL;
sys/dev/netif/em/if_em.c
345
static void em_update_stats(struct adapter *);
sys/dev/netif/em/if_em.c
3453
for (i = 0; i < adapter->num_rx_desc; i++) {
sys/dev/netif/em/if_em.c
3454
rx_buffer = &adapter->rx_buffer_area[i];
sys/dev/netif/em/if_em.c
3456
error = bus_dmamap_create(adapter->rxtag, BUS_DMA_WAITOK,
sys/dev/netif/em/if_em.c
346
static void em_set_promisc(struct adapter *);
sys/dev/netif/em/if_em.c
3460
em_destroy_rx_ring(adapter, i);
sys/dev/netif/em/if_em.c
3468
em_init_rx_ring(struct adapter *adapter)
sys/dev/netif/em/if_em.c
347
static void em_disable_promisc(struct adapter *);
sys/dev/netif/em/if_em.c
3473
bzero(adapter->rx_desc_base,
sys/dev/netif/em/if_em.c
3474
(sizeof(struct e1000_rx_desc)) * adapter->num_rx_desc);
sys/dev/netif/em/if_em.c
3477
for (i = 0; i < adapter->num_rx_desc; i++) {
sys/dev/netif/em/if_em.c
3478
error = em_newbuf(adapter, i, 1);
sys/dev/netif/em/if_em.c
348
static void em_set_multi(struct adapter *);
sys/dev/netif/em/if_em.c
3484
adapter->next_rx_desc_to_check = 0;
sys/dev/netif/em/if_em.c
349
static void em_update_link_status(struct adapter *);
sys/dev/netif/em/if_em.c
3490
em_init_rx_unit(struct adapter *adapter)
sys/dev/netif/em/if_em.c
3492
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
350
static void em_smartspeed(struct adapter *);
sys/dev/netif/em/if_em.c
3500
rctl = E1000_READ_REG(&adapter->hw, E1000_RCTL);
sys/dev/netif/em/if_em.c
3502
if (adapter->hw.mac.type != e1000_82574 &&
sys/dev/netif/em/if_em.c
3503
adapter->hw.mac.type != e1000_82583)
sys/dev/netif/em/if_em.c
3504
E1000_WRITE_REG(&adapter->hw, E1000_RCTL, rctl & ~E1000_RCTL_EN);
sys/dev/netif/em/if_em.c
3506
if (adapter->hw.mac.type >= e1000_82540) {
sys/dev/netif/em/if_em.c
351
static void em_set_itr(struct adapter *, uint32_t);
sys/dev/netif/em/if_em.c
3513
if (adapter->int_throttle_ceil)
sys/dev/netif/em/if_em.c
3514
itr = 1000000000 / 256 / adapter->int_throttle_ceil;
sys/dev/netif/em/if_em.c
3517
em_set_itr(adapter, itr);
sys/dev/netif/em/if_em.c
352
static void em_disable_aspm(struct adapter *);
sys/dev/netif/em/if_em.c
3521
if (adapter->hw.mac.type == e1000_82574) {
sys/dev/netif/em/if_em.c
3524
rfctl = E1000_READ_REG(&adapter->hw, E1000_RFCTL);
sys/dev/netif/em/if_em.c
3526
E1000_WRITE_REG(&adapter->hw, E1000_RFCTL, rfctl);
sys/dev/netif/em/if_em.c
353
static void em_flush_tx_ring(struct adapter *);
sys/dev/netif/em/if_em.c
3530
rxcsum = E1000_READ_REG(&adapter->hw, E1000_RXCSUM);
sys/dev/netif/em/if_em.c
3535
E1000_WRITE_REG(&adapter->hw, E1000_RXCSUM, rxcsum);
sys/dev/netif/em/if_em.c
354
static void em_flush_rx_ring(struct adapter *);
sys/dev/netif/em/if_em.c
3544
if (em_82573_workaround && adapter->hw.mac.type == e1000_82573) {
sys/dev/netif/em/if_em.c
3545
E1000_WRITE_REG(&adapter->hw, E1000_RADV, EM_RADV_82573);
sys/dev/netif/em/if_em.c
3546
E1000_WRITE_REG(&adapter->hw, E1000_RDTR, EM_RDTR_82573);
sys/dev/netif/em/if_em.c
355
static void em_flush_txrx_ring(struct adapter *);
sys/dev/netif/em/if_em.c
3552
bus_addr = adapter->rxdma.dma_paddr;
sys/dev/netif/em/if_em.c
3553
E1000_WRITE_REG(&adapter->hw, E1000_RDLEN(0),
sys/dev/netif/em/if_em.c
3554
adapter->num_rx_desc * sizeof(struct e1000_rx_desc));
sys/dev/netif/em/if_em.c
3555
E1000_WRITE_REG(&adapter->hw, E1000_RDBAH(0),
sys/dev/netif/em/if_em.c
3557
E1000_WRITE_REG(&adapter->hw, E1000_RDBAL(0),
sys/dev/netif/em/if_em.c
3563
E1000_WRITE_REG(&adapter->hw, E1000_RDH(0), 0);
sys/dev/netif/em/if_em.c
3564
E1000_WRITE_REG(&adapter->hw, E1000_RDT(0), adapter->num_rx_desc - 1);
sys/dev/netif/em/if_em.c
3570
if (adapter->hw.mac.type == e1000_ich9lan ||
sys/dev/netif/em/if_em.c
3571
adapter->hw.mac.type == e1000_pch2lan ||
sys/dev/netif/em/if_em.c
3572
adapter->hw.mac.type == e1000_ich10lan) {
sys/dev/netif/em/if_em.c
3573
rxdctl = E1000_READ_REG(&adapter->hw, E1000_RXDCTL(0));
sys/dev/netif/em/if_em.c
3574
E1000_WRITE_REG(&adapter->hw, E1000_RXDCTL(0),
sys/dev/netif/em/if_em.c
3576
} else if (adapter->hw.mac.type == e1000_82574) {
sys/dev/netif/em/if_em.c
3577
rxdctl = E1000_READ_REG(&adapter->hw, E1000_RXDCTL(0));
sys/dev/netif/em/if_em.c
358
static int em_82547_fifo_workaround(struct adapter *, int);
sys/dev/netif/em/if_em.c
3582
E1000_WRITE_REG(&adapter->hw, E1000_RXDCTL(0), rxdctl);
sys/dev/netif/em/if_em.c
3586
if (adapter->hw.mac.type >= e1000_pch2lan) {
sys/dev/netif/em/if_em.c
3588
e1000_lv_jumbo_workaround_ich8lan(&adapter->hw, TRUE);
sys/dev/netif/em/if_em.c
359
static void em_82547_update_fifo_head(struct adapter *, int);
sys/dev/netif/em/if_em.c
3590
e1000_lv_jumbo_workaround_ich8lan(&adapter->hw, FALSE);
sys/dev/netif/em/if_em.c
3597
(adapter->hw.mac.mc_filter_type << E1000_RCTL_MO_SHIFT);
sys/dev/netif/em/if_em.c
360
static int em_82547_tx_fifo_reset(struct adapter *);
sys/dev/netif/em/if_em.c
3602
if (e1000_tbi_sbp_enabled_82543(&adapter->hw))
sys/dev/netif/em/if_em.c
3607
switch (adapter->rx_buffer_len) {
sys/dev/netif/em/if_em.c
362
static void em_82547_move_tail_serialized(struct adapter *);
sys/dev/netif/em/if_em.c
3635
E1000_WRITE_REG(&adapter->hw, E1000_RCTL, rctl);
sys/dev/netif/em/if_em.c
3639
em_destroy_rx_ring(struct adapter *adapter, int ndesc)
sys/dev/netif/em/if_em.c
3644
if (adapter->rx_buffer_area == NULL)
sys/dev/netif/em/if_em.c
3648
rx_buffer = &adapter->rx_buffer_area[i];
sys/dev/netif/em/if_em.c
365
static void em_print_debug_info(struct adapter *);
sys/dev/netif/em/if_em.c
3651
bus_dmamap_destroy(adapter->rxtag, rx_buffer->map);
sys/dev/netif/em/if_em.c
3653
bus_dmamap_destroy(adapter->rxtag, adapter->rx_sparemap);
sys/dev/netif/em/if_em.c
3654
bus_dma_tag_destroy(adapter->rxtag);
sys/dev/netif/em/if_em.c
3656
kfree(adapter->rx_buffer_area, M_DEVBUF);
sys/dev/netif/em/if_em.c
3657
adapter->rx_buffer_area = NULL;
sys/dev/netif/em/if_em.c
366
static void em_print_nvm_info(struct adapter *);
sys/dev/netif/em/if_em.c
3661
em_rxeof(struct adapter *adapter, int count)
sys/dev/netif/em/if_em.c
3663
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
367
static void em_print_hw_stats(struct adapter *);
sys/dev/netif/em/if_em.c
3670
i = adapter->next_rx_desc_to_check;
sys/dev/netif/em/if_em.c
3671
current_desc = &adapter->rx_desc_base[i];
sys/dev/netif/em/if_em.c
3681
mp = adapter->rx_buffer_area[i].m_head;
sys/dev/netif/em/if_em.c
3687
bus_dmamap_sync(adapter->rxtag, adapter->rx_buffer_area[i].map,
sys/dev/netif/em/if_em.c
3712
if (adapter->fmp != NULL)
sys/dev/netif/em/if_em.c
3713
pkt_len += adapter->fmp->m_pkthdr.len;
sys/dev/netif/em/if_em.c
3716
if (TBI_ACCEPT(&adapter->hw, status,
sys/dev/netif/em/if_em.c
3718
adapter->min_frame_size,
sys/dev/netif/em/if_em.c
3719
adapter->hw.mac.max_frame_size)) {
sys/dev/netif/em/if_em.c
3720
e1000_tbi_adjust_stats_82543(&adapter->hw,
sys/dev/netif/em/if_em.c
3721
&adapter->stats, pkt_len,
sys/dev/netif/em/if_em.c
3722
adapter->hw.mac.addr,
sys/dev/netif/em/if_em.c
3723
adapter->hw.mac.max_frame_size);
sys/dev/netif/em/if_em.c
373
static void em_add_sysctl(struct adapter *adapter);
sys/dev/netif/em/if_em.c
3732
if (em_newbuf(adapter, i, 0) != 0) {
sys/dev/netif/em/if_em.c
3740
if (adapter->fmp == NULL) {
sys/dev/netif/em/if_em.c
3742
adapter->fmp = mp; /* Store the first mbuf */
sys/dev/netif/em/if_em.c
3743
adapter->lmp = mp;
sys/dev/netif/em/if_em.c
3755
adapter->lmp->m_len -= prev_len_adj;
sys/dev/netif/em/if_em.c
3756
adapter->fmp->m_pkthdr.len -=
sys/dev/netif/em/if_em.c
3759
adapter->lmp->m_next = mp;
sys/dev/netif/em/if_em.c
376
static void em_get_mgmt(struct adapter *);
sys/dev/netif/em/if_em.c
3760
adapter->lmp = adapter->lmp->m_next;
sys/dev/netif/em/if_em.c
3761
adapter->fmp->m_pkthdr.len += len;
sys/dev/netif/em/if_em.c
3765
adapter->fmp->m_pkthdr.rcvif = ifp;
sys/dev/netif/em/if_em.c
3769
em_rxcsum(adapter, current_desc,
sys/dev/netif/em/if_em.c
377
static void em_rel_mgmt(struct adapter *);
sys/dev/netif/em/if_em.c
3770
adapter->fmp);
sys/dev/netif/em/if_em.c
3774
adapter->fmp->m_pkthdr.ether_vlantag =
sys/dev/netif/em/if_em.c
3777
adapter->fmp->m_flags |= M_VLANTAG;
sys/dev/netif/em/if_em.c
3779
m = adapter->fmp;
sys/dev/netif/em/if_em.c
378
static void em_get_hw_control(struct adapter *);
sys/dev/netif/em/if_em.c
3780
adapter->fmp = NULL;
sys/dev/netif/em/if_em.c
3781
adapter->lmp = NULL;
sys/dev/netif/em/if_em.c
3788
mp = adapter->rx_buffer_area[i].m_head;
sys/dev/netif/em/if_em.c
379
static void em_rel_hw_control(struct adapter *);
sys/dev/netif/em/if_em.c
3792
if (adapter->hw.mac.max_frame_size <=
sys/dev/netif/em/if_em.c
3796
if (adapter->fmp != NULL) {
sys/dev/netif/em/if_em.c
3797
m_freem(adapter->fmp);
sys/dev/netif/em/if_em.c
3798
adapter->fmp = NULL;
sys/dev/netif/em/if_em.c
3799
adapter->lmp = NULL;
sys/dev/netif/em/if_em.c
3811
if (++i == adapter->num_rx_desc)
sys/dev/netif/em/if_em.c
3813
current_desc = &adapter->rx_desc_base[i];
sys/dev/netif/em/if_em.c
3815
adapter->next_rx_desc_to_check = i;
sys/dev/netif/em/if_em.c
3819
i = adapter->num_rx_desc - 1;
sys/dev/netif/em/if_em.c
3820
E1000_WRITE_REG(&adapter->hw, E1000_RDT(0), i);
sys/dev/netif/em/if_em.c
3824
em_rxcsum(struct adapter *adapter, struct e1000_rx_desc *rx_desc,
sys/dev/netif/em/if_em.c
3828
if (adapter->hw.mac.type < e1000_82543 ||
sys/dev/netif/em/if_em.c
3849
em_enable_intr(struct adapter *adapter)
sys/dev/netif/em/if_em.c
3853
lwkt_serialize_handler_enable(adapter->arpcom.ac_if.if_serializer);
sys/dev/netif/em/if_em.c
3857
if (adapter->hw.mac.type == e1000_82574) {
sys/dev/netif/em/if_em.c
3858
E1000_WRITE_REG(&adapter->hw, EM_EIAC, EM_MSIX_MASK);
sys/dev/netif/em/if_em.c
3862
E1000_WRITE_REG(&adapter->hw, E1000_IMS, ims_mask);
sys/dev/netif/em/if_em.c
3866
em_disable_intr(struct adapter *adapter)
sys/dev/netif/em/if_em.c
3878
if (adapter->hw.mac.type == e1000_82542 &&
sys/dev/netif/em/if_em.c
3879
adapter->hw.revision_id == E1000_REVISION_2)
sys/dev/netif/em/if_em.c
3881
else if (adapter->hw.mac.type == e1000_82574)
sys/dev/netif/em/if_em.c
3882
E1000_WRITE_REG(&adapter->hw, EM_EIAC, 0);
sys/dev/netif/em/if_em.c
3884
E1000_WRITE_REG(&adapter->hw, E1000_IMC, clear);
sys/dev/netif/em/if_em.c
3886
adapter->npoll.ifpc_stcount = 0;
sys/dev/netif/em/if_em.c
3888
lwkt_serialize_handler_disable(adapter->arpcom.ac_if.if_serializer);
sys/dev/netif/em/if_em.c
3897
em_get_mgmt(struct adapter *adapter)
sys/dev/netif/em/if_em.c
3901
if (adapter->flags & EM_FLAG_HAS_MGMT) {
sys/dev/netif/em/if_em.c
3902
int manc2h = E1000_READ_REG(&adapter->hw, E1000_MANC2H);
sys/dev/netif/em/if_em.c
3903
int manc = E1000_READ_REG(&adapter->hw, E1000_MANC);
sys/dev/netif/em/if_em.c
3909
if (adapter->hw.mac.type >= e1000_82571) {
sys/dev/netif/em/if_em.c
3915
E1000_WRITE_REG(&adapter->hw, E1000_MANC2H, manc2h);
sys/dev/netif/em/if_em.c
3918
E1000_WRITE_REG(&adapter->hw, E1000_MANC, manc);
sys/dev/netif/em/if_em.c
3927
em_rel_mgmt(struct adapter *adapter)
sys/dev/netif/em/if_em.c
3929
if (adapter->flags & EM_FLAG_HAS_MGMT) {
sys/dev/netif/em/if_em.c
3930
int manc = E1000_READ_REG(&adapter->hw, E1000_MANC);
sys/dev/netif/em/if_em.c
3935
if (adapter->hw.mac.type >= e1000_82571)
sys/dev/netif/em/if_em.c
3938
E1000_WRITE_REG(&adapter->hw, E1000_MANC, manc);
sys/dev/netif/em/if_em.c
3949
em_get_hw_control(struct adapter *adapter)
sys/dev/netif/em/if_em.c
3952
if (adapter->hw.mac.type == e1000_82573) {
sys/dev/netif/em/if_em.c
3955
swsm = E1000_READ_REG(&adapter->hw, E1000_SWSM);
sys/dev/netif/em/if_em.c
3956
E1000_WRITE_REG(&adapter->hw, E1000_SWSM,
sys/dev/netif/em/if_em.c
396
sizeof(struct adapter),
sys/dev/netif/em/if_em.c
3961
ctrl_ext = E1000_READ_REG(&adapter->hw, E1000_CTRL_EXT);
sys/dev/netif/em/if_em.c
3962
E1000_WRITE_REG(&adapter->hw, E1000_CTRL_EXT,
sys/dev/netif/em/if_em.c
3965
adapter->flags |= EM_FLAG_HW_CTRL;
sys/dev/netif/em/if_em.c
3975
em_rel_hw_control(struct adapter *adapter)
sys/dev/netif/em/if_em.c
3977
if ((adapter->flags & EM_FLAG_HW_CTRL) == 0)
sys/dev/netif/em/if_em.c
3979
adapter->flags &= ~EM_FLAG_HW_CTRL;
sys/dev/netif/em/if_em.c
3982
if (adapter->hw.mac.type == e1000_82573) {
sys/dev/netif/em/if_em.c
3985
swsm = E1000_READ_REG(&adapter->hw, E1000_SWSM);
sys/dev/netif/em/if_em.c
3986
E1000_WRITE_REG(&adapter->hw, E1000_SWSM,
sys/dev/netif/em/if_em.c
3991
ctrl_ext = E1000_READ_REG(&adapter->hw, E1000_CTRL_EXT);
sys/dev/netif/em/if_em.c
3992
E1000_WRITE_REG(&adapter->hw, E1000_CTRL_EXT,
sys/dev/netif/em/if_em.c
4091
em_update_stats(struct adapter *adapter)
sys/dev/netif/em/if_em.c
4093
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
4095
if (adapter->hw.phy.media_type == e1000_media_type_copper ||
sys/dev/netif/em/if_em.c
4096
(E1000_READ_REG(&adapter->hw, E1000_STATUS) & E1000_STATUS_LU)) {
sys/dev/netif/em/if_em.c
4097
adapter->stats.symerrs +=
sys/dev/netif/em/if_em.c
4098
E1000_READ_REG(&adapter->hw, E1000_SYMERRS);
sys/dev/netif/em/if_em.c
4099
adapter->stats.sec += E1000_READ_REG(&adapter->hw, E1000_SEC);
sys/dev/netif/em/if_em.c
4101
adapter->stats.crcerrs += E1000_READ_REG(&adapter->hw, E1000_CRCERRS);
sys/dev/netif/em/if_em.c
4102
adapter->stats.mpc += E1000_READ_REG(&adapter->hw, E1000_MPC);
sys/dev/netif/em/if_em.c
4103
adapter->stats.scc += E1000_READ_REG(&adapter->hw, E1000_SCC);
sys/dev/netif/em/if_em.c
4104
adapter->stats.ecol += E1000_READ_REG(&adapter->hw, E1000_ECOL);
sys/dev/netif/em/if_em.c
4106
adapter->stats.mcc += E1000_READ_REG(&adapter->hw, E1000_MCC);
sys/dev/netif/em/if_em.c
4107
adapter->stats.latecol += E1000_READ_REG(&adapter->hw, E1000_LATECOL);
sys/dev/netif/em/if_em.c
4108
adapter->stats.colc += E1000_READ_REG(&adapter->hw, E1000_COLC);
sys/dev/netif/em/if_em.c
4109
adapter->stats.dc += E1000_READ_REG(&adapter->hw, E1000_DC);
sys/dev/netif/em/if_em.c
4110
adapter->stats.rlec += E1000_READ_REG(&adapter->hw, E1000_RLEC);
sys/dev/netif/em/if_em.c
4111
adapter->stats.xonrxc += E1000_READ_REG(&adapter->hw, E1000_XONRXC);
sys/dev/netif/em/if_em.c
4112
adapter->stats.xontxc += E1000_READ_REG(&adapter->hw, E1000_XONTXC);
sys/dev/netif/em/if_em.c
4113
adapter->stats.xoffrxc += E1000_READ_REG(&adapter->hw, E1000_XOFFRXC);
sys/dev/netif/em/if_em.c
4114
adapter->stats.xofftxc += E1000_READ_REG(&adapter->hw, E1000_XOFFTXC);
sys/dev/netif/em/if_em.c
4115
adapter->stats.fcruc += E1000_READ_REG(&adapter->hw, E1000_FCRUC);
sys/dev/netif/em/if_em.c
4116
adapter->stats.prc64 += E1000_READ_REG(&adapter->hw, E1000_PRC64);
sys/dev/netif/em/if_em.c
4117
adapter->stats.prc127 += E1000_READ_REG(&adapter->hw, E1000_PRC127);
sys/dev/netif/em/if_em.c
4118
adapter->stats.prc255 += E1000_READ_REG(&adapter->hw, E1000_PRC255);
sys/dev/netif/em/if_em.c
4119
adapter->stats.prc511 += E1000_READ_REG(&adapter->hw, E1000_PRC511);
sys/dev/netif/em/if_em.c
4120
adapter->stats.prc1023 += E1000_READ_REG(&adapter->hw, E1000_PRC1023);
sys/dev/netif/em/if_em.c
4121
adapter->stats.prc1522 += E1000_READ_REG(&adapter->hw, E1000_PRC1522);
sys/dev/netif/em/if_em.c
4122
adapter->stats.gprc += E1000_READ_REG(&adapter->hw, E1000_GPRC);
sys/dev/netif/em/if_em.c
4123
adapter->stats.bprc += E1000_READ_REG(&adapter->hw, E1000_BPRC);
sys/dev/netif/em/if_em.c
4124
adapter->stats.mprc += E1000_READ_REG(&adapter->hw, E1000_MPRC);
sys/dev/netif/em/if_em.c
4125
adapter->stats.gptc += E1000_READ_REG(&adapter->hw, E1000_GPTC);
sys/dev/netif/em/if_em.c
4130
adapter->stats.gorc += E1000_READ_REG(&adapter->hw, E1000_GORCH);
sys/dev/netif/em/if_em.c
4131
adapter->stats.gotc += E1000_READ_REG(&adapter->hw, E1000_GOTCH);
sys/dev/netif/em/if_em.c
4133
adapter->stats.rnbc += E1000_READ_REG(&adapter->hw, E1000_RNBC);
sys/dev/netif/em/if_em.c
4134
adapter->stats.ruc += E1000_READ_REG(&adapter->hw, E1000_RUC);
sys/dev/netif/em/if_em.c
4135
adapter->stats.rfc += E1000_READ_REG(&adapter->hw, E1000_RFC);
sys/dev/netif/em/if_em.c
4136
adapter->stats.roc += E1000_READ_REG(&adapter->hw, E1000_ROC);
sys/dev/netif/em/if_em.c
4137
adapter->stats.rjc += E1000_READ_REG(&adapter->hw, E1000_RJC);
sys/dev/netif/em/if_em.c
4139
adapter->stats.tor += E1000_READ_REG(&adapter->hw, E1000_TORH);
sys/dev/netif/em/if_em.c
4140
adapter->stats.tot += E1000_READ_REG(&adapter->hw, E1000_TOTH);
sys/dev/netif/em/if_em.c
4142
adapter->stats.tpr += E1000_READ_REG(&adapter->hw, E1000_TPR);
sys/dev/netif/em/if_em.c
4143
adapter->stats.tpt += E1000_READ_REG(&adapter->hw, E1000_TPT);
sys/dev/netif/em/if_em.c
4144
adapter->stats.ptc64 += E1000_READ_REG(&adapter->hw, E1000_PTC64);
sys/dev/netif/em/if_em.c
4145
adapter->stats.ptc127 += E1000_READ_REG(&adapter->hw, E1000_PTC127);
sys/dev/netif/em/if_em.c
4146
adapter->stats.ptc255 += E1000_READ_REG(&adapter->hw, E1000_PTC255);
sys/dev/netif/em/if_em.c
4147
adapter->stats.ptc511 += E1000_READ_REG(&adapter->hw, E1000_PTC511);
sys/dev/netif/em/if_em.c
4148
adapter->stats.ptc1023 += E1000_READ_REG(&adapter->hw, E1000_PTC1023);
sys/dev/netif/em/if_em.c
4149
adapter->stats.ptc1522 += E1000_READ_REG(&adapter->hw, E1000_PTC1522);
sys/dev/netif/em/if_em.c
4150
adapter->stats.mptc += E1000_READ_REG(&adapter->hw, E1000_MPTC);
sys/dev/netif/em/if_em.c
4151
adapter->stats.bptc += E1000_READ_REG(&adapter->hw, E1000_BPTC);
sys/dev/netif/em/if_em.c
4153
if (adapter->hw.mac.type >= e1000_82543) {
sys/dev/netif/em/if_em.c
4154
adapter->stats.algnerrc +=
sys/dev/netif/em/if_em.c
4155
E1000_READ_REG(&adapter->hw, E1000_ALGNERRC);
sys/dev/netif/em/if_em.c
4156
adapter->stats.rxerrc +=
sys/dev/netif/em/if_em.c
4157
E1000_READ_REG(&adapter->hw, E1000_RXERRC);
sys/dev/netif/em/if_em.c
4158
adapter->stats.tncrs +=
sys/dev/netif/em/if_em.c
4159
E1000_READ_REG(&adapter->hw, E1000_TNCRS);
sys/dev/netif/em/if_em.c
4160
adapter->stats.cexterr +=
sys/dev/netif/em/if_em.c
4161
E1000_READ_REG(&adapter->hw, E1000_CEXTERR);
sys/dev/netif/em/if_em.c
4162
adapter->stats.tsctc +=
sys/dev/netif/em/if_em.c
4163
E1000_READ_REG(&adapter->hw, E1000_TSCTC);
sys/dev/netif/em/if_em.c
4164
adapter->stats.tsctfc +=
sys/dev/netif/em/if_em.c
4165
E1000_READ_REG(&adapter->hw, E1000_TSCTFC);
sys/dev/netif/em/if_em.c
4168
IFNET_STAT_SET(ifp, collisions, adapter->stats.colc);
sys/dev/netif/em/if_em.c
4172
adapter->dropped_pkts + adapter->stats.rxerrc +
sys/dev/netif/em/if_em.c
4173
adapter->stats.crcerrs + adapter->stats.algnerrc +
sys/dev/netif/em/if_em.c
4174
adapter->stats.ruc + adapter->stats.roc +
sys/dev/netif/em/if_em.c
4175
adapter->stats.mpc + adapter->stats.cexterr);
sys/dev/netif/em/if_em.c
4179
adapter->stats.ecol + adapter->stats.latecol +
sys/dev/netif/em/if_em.c
4180
adapter->watchdog_events);
sys/dev/netif/em/if_em.c
4184
em_print_debug_info(struct adapter *adapter)
sys/dev/netif/em/if_em.c
4186
device_t dev = adapter->dev;
sys/dev/netif/em/if_em.c
4187
uint8_t *hw_addr = adapter->hw.hw_addr;
sys/dev/netif/em/if_em.c
4191
E1000_READ_REG(&adapter->hw, E1000_CTRL),
sys/dev/netif/em/if_em.c
4192
E1000_READ_REG(&adapter->hw, E1000_RCTL));
sys/dev/netif/em/if_em.c
4194
((E1000_READ_REG(&adapter->hw, E1000_PBA) & 0xffff0000) >> 16),\
sys/dev/netif/em/if_em.c
4195
(E1000_READ_REG(&adapter->hw, E1000_PBA) & 0xffff) );
sys/dev/netif/em/if_em.c
4197
adapter->hw.fc.high_water,
sys/dev/netif/em/if_em.c
4198
adapter->hw.fc.low_water);
sys/dev/netif/em/if_em.c
4200
E1000_READ_REG(&adapter->hw, E1000_TIDV),
sys/dev/netif/em/if_em.c
4201
E1000_READ_REG(&adapter->hw, E1000_TADV));
sys/dev/netif/em/if_em.c
4203
E1000_READ_REG(&adapter->hw, E1000_RDTR),
sys/dev/netif/em/if_em.c
4204
E1000_READ_REG(&adapter->hw, E1000_RADV));
sys/dev/netif/em/if_em.c
4206
(long long)adapter->tx_fifo_wrk_cnt,
sys/dev/netif/em/if_em.c
4207
(long long)adapter->tx_fifo_reset_cnt);
sys/dev/netif/em/if_em.c
4209
E1000_READ_REG(&adapter->hw, E1000_TDH(0)),
sys/dev/netif/em/if_em.c
4210
E1000_READ_REG(&adapter->hw, E1000_TDT(0)));
sys/dev/netif/em/if_em.c
4212
E1000_READ_REG(&adapter->hw, E1000_RDH(0)),
sys/dev/netif/em/if_em.c
4213
E1000_READ_REG(&adapter->hw, E1000_RDT(0)));
sys/dev/netif/em/if_em.c
4215
adapter->num_tx_desc_avail);
sys/dev/netif/em/if_em.c
4217
adapter->no_tx_desc_avail1);
sys/dev/netif/em/if_em.c
4219
adapter->no_tx_desc_avail2);
sys/dev/netif/em/if_em.c
4221
adapter->mbuf_alloc_failed);
sys/dev/netif/em/if_em.c
4223
adapter->mbuf_cluster_failed);
sys/dev/netif/em/if_em.c
4225
adapter->dropped_pkts);
sys/dev/netif/em/if_em.c
4227
adapter->no_tx_dma_setup);
sys/dev/netif/em/if_em.c
4231
em_print_hw_stats(struct adapter *adapter)
sys/dev/netif/em/if_em.c
4233
device_t dev = adapter->dev;
sys/dev/netif/em/if_em.c
4236
(long long)adapter->stats.ecol);
sys/dev/netif/em/if_em.c
4239
(long long)adapter->stats.symerrs);
sys/dev/netif/em/if_em.c
4242
(long long)adapter->stats.sec);
sys/dev/netif/em/if_em.c
4244
(long long)adapter->stats.dc);
sys/dev/netif/em/if_em.c
4246
(long long)adapter->stats.mpc);
sys/dev/netif/em/if_em.c
4248
(long long)adapter->stats.rnbc);
sys/dev/netif/em/if_em.c
4251
((long long)adapter->stats.roc + (long long)adapter->stats.ruc));
sys/dev/netif/em/if_em.c
4253
(long long)adapter->stats.rxerrc);
sys/dev/netif/em/if_em.c
4255
(long long)adapter->stats.crcerrs);
sys/dev/netif/em/if_em.c
4257
(long long)adapter->stats.algnerrc);
sys/dev/netif/em/if_em.c
4259
(long long)adapter->stats.cexterr);
sys/dev/netif/em/if_em.c
4260
device_printf(dev, "RX overruns = %ld\n", adapter->rx_overruns);
sys/dev/netif/em/if_em.c
4262
adapter->watchdog_events);
sys/dev/netif/em/if_em.c
4264
(long long)adapter->stats.xonrxc);
sys/dev/netif/em/if_em.c
4266
(long long)adapter->stats.xontxc);
sys/dev/netif/em/if_em.c
4268
(long long)adapter->stats.xoffrxc);
sys/dev/netif/em/if_em.c
4270
(long long)adapter->stats.xofftxc);
sys/dev/netif/em/if_em.c
4272
(long long)adapter->stats.gprc);
sys/dev/netif/em/if_em.c
4274
(long long)adapter->stats.gptc);
sys/dev/netif/em/if_em.c
4278
em_print_nvm_info(struct adapter *adapter)
sys/dev/netif/em/if_em.c
4291
e1000_read_nvm(&adapter->hw, i, 1, &eeprom_data);
sys/dev/netif/em/if_em.c
4300
struct adapter *adapter;
sys/dev/netif/em/if_em.c
4309
adapter = (struct adapter *)arg1;
sys/dev/netif/em/if_em.c
4310
ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
4315
em_print_debug_info(adapter);
sys/dev/netif/em/if_em.c
4323
em_print_nvm_info(adapter);
sys/dev/netif/em/if_em.c
4341
struct adapter *adapter = (struct adapter *)arg1;
sys/dev/netif/em/if_em.c
4342
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
4345
em_print_hw_stats(adapter);
sys/dev/netif/em/if_em.c
4352
em_add_sysctl(struct adapter *adapter)
sys/dev/netif/em/if_em.c
4357
ctx = device_get_sysctl_ctx(adapter->dev);
sys/dev/netif/em/if_em.c
4358
tree = device_get_sysctl_tree(adapter->dev);
sys/dev/netif/em/if_em.c
4360
OID_AUTO, "debug", CTLTYPE_INT|CTLFLAG_RW, adapter, 0,
sys/dev/netif/em/if_em.c
4364
OID_AUTO, "stats", CTLTYPE_INT|CTLFLAG_RW, adapter, 0,
sys/dev/netif/em/if_em.c
4369
&adapter->num_rx_desc, 0, NULL);
sys/dev/netif/em/if_em.c
4372
&adapter->num_tx_desc, 0, NULL);
sys/dev/netif/em/if_em.c
4374
if (adapter->hw.mac.type >= e1000_82540) {
sys/dev/netif/em/if_em.c
4377
CTLTYPE_INT|CTLFLAG_RW, adapter, 0,
sys/dev/netif/em/if_em.c
4383
CTLTYPE_INT|CTLFLAG_RW, adapter, 0,
sys/dev/netif/em/if_em.c
4388
&adapter->tx_wreg_nsegs, 0,
sys/dev/netif/em/if_em.c
4391
CTLFLAG_RD, &adapter->tx_nmbuf, 0, "# of pending TX mbufs");
sys/dev/netif/em/if_em.c
4393
CTLFLAG_RW, &adapter->tx_gc, "# of TX GC");
sys/dev/netif/em/if_em.c
4399
struct adapter *adapter = (void *)arg1;
sys/dev/netif/em/if_em.c
4400
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
4403
throttle = adapter->int_throttle_ceil;
sys/dev/netif/em/if_em.c
4425
adapter->int_throttle_ceil = 1000000000 / 256 / throttle;
sys/dev/netif/em/if_em.c
4427
adapter->int_throttle_ceil = 0;
sys/dev/netif/em/if_em.c
4430
em_set_itr(adapter, throttle);
sys/dev/netif/em/if_em.c
4436
adapter->int_throttle_ceil);
sys/dev/netif/em/if_em.c
4444
struct adapter *adapter = (void *)arg1;
sys/dev/netif/em/if_em.c
4445
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
4448
segs = adapter->tx_int_nsegs;
sys/dev/netif/em/if_em.c
4464
if (segs < adapter->oact_tx_desc ||
sys/dev/netif/em/if_em.c
4465
segs >= adapter->num_tx_desc - adapter->oact_tx_desc ||
sys/dev/netif/em/if_em.c
4466
segs < adapter->num_tx_desc / EM_TXDD_SAFE) {
sys/dev/netif/em/if_em.c
4470
adapter->tx_int_nsegs = segs;
sys/dev/netif/em/if_em.c
4479
em_set_itr(struct adapter *adapter, uint32_t itr)
sys/dev/netif/em/if_em.c
448
em_tx_intr(struct adapter *adapter)
sys/dev/netif/em/if_em.c
4481
E1000_WRITE_REG(&adapter->hw, E1000_ITR, itr);
sys/dev/netif/em/if_em.c
4482
if (adapter->hw.mac.type == e1000_82574) {
sys/dev/netif/em/if_em.c
4490
E1000_WRITE_REG(&adapter->hw,
sys/dev/netif/em/if_em.c
4497
em_disable_aspm(struct adapter *adapter)
sys/dev/netif/em/if_em.c
450
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
4501
device_t dev = adapter->dev;
sys/dev/netif/em/if_em.c
4503
switch (adapter->hw.mac.type) {
sys/dev/netif/em/if_em.c
452
em_txeof(adapter);
sys/dev/netif/em/if_em.c
4543
if_printf(&adapter->arpcom.ac_if,
sys/dev/netif/em/if_em.c
4554
em_tso_pullup(struct adapter *adapter, struct mbuf **mp)
sys/dev/netif/em/if_em.c
4571
if (adapter->flags & EM_FLAG_TSO_PULLEX)
sys/dev/netif/em/if_em.c
458
em_free_txbuffer(struct adapter *adapter, struct em_buffer *tx_buffer)
sys/dev/netif/em/if_em.c
4589
em_tso_setup(struct adapter *adapter, struct mbuf *mp,
sys/dev/netif/em/if_em.c
4602
if (adapter->csum_flags == CSUM_TSO &&
sys/dev/netif/em/if_em.c
4603
adapter->csum_iphlen == iphlen &&
sys/dev/netif/em/if_em.c
4604
adapter->csum_lhlen == hoff &&
sys/dev/netif/em/if_em.c
4605
adapter->csum_thlen == thoff &&
sys/dev/netif/em/if_em.c
4606
adapter->csum_mss == mss &&
sys/dev/netif/em/if_em.c
4607
adapter->csum_pktlen == pktlen) {
sys/dev/netif/em/if_em.c
4608
*txd_upper = adapter->csum_txd_upper;
sys/dev/netif/em/if_em.c
4609
*txd_lower = adapter->csum_txd_lower;
sys/dev/netif/em/if_em.c
4618
curr_txd = adapter->next_avail_tx_desc;
sys/dev/netif/em/if_em.c
4619
TXD = (struct e1000_context_desc *)&adapter->tx_desc_base[curr_txd];
sys/dev/netif/em/if_em.c
462
KKASSERT(adapter->tx_nmbuf > 0);
sys/dev/netif/em/if_em.c
463
adapter->tx_nmbuf--;
sys/dev/netif/em/if_em.c
465
bus_dmamap_unload(adapter->txtag, tx_buffer->map);
sys/dev/netif/em/if_em.c
4661
adapter->csum_flags = CSUM_TSO;
sys/dev/netif/em/if_em.c
4662
adapter->csum_lhlen = hoff;
sys/dev/netif/em/if_em.c
4663
adapter->csum_iphlen = iphlen;
sys/dev/netif/em/if_em.c
4664
adapter->csum_thlen = thoff;
sys/dev/netif/em/if_em.c
4665
adapter->csum_mss = mss;
sys/dev/netif/em/if_em.c
4666
adapter->csum_pktlen = pktlen;
sys/dev/netif/em/if_em.c
4667
adapter->csum_txd_upper = *txd_upper;
sys/dev/netif/em/if_em.c
4668
adapter->csum_txd_lower = *txd_lower;
sys/dev/netif/em/if_em.c
4670
if (++curr_txd == adapter->num_tx_desc)
sys/dev/netif/em/if_em.c
4673
KKASSERT(adapter->num_tx_desc_avail > 0);
sys/dev/netif/em/if_em.c
4674
adapter->num_tx_desc_avail--;
sys/dev/netif/em/if_em.c
4676
adapter->next_avail_tx_desc = curr_txd;
sys/dev/netif/em/if_em.c
4689
em_flush_tx_ring(struct adapter *adapter)
sys/dev/netif/em/if_em.c
4691
struct e1000_hw *hw = &adapter->hw;
sys/dev/netif/em/if_em.c
4698
txd = &adapter->tx_desc_base[adapter->next_avail_tx_desc++];
sys/dev/netif/em/if_em.c
4699
if (adapter->next_avail_tx_desc == adapter->num_tx_desc)
sys/dev/netif/em/if_em.c
4700
adapter->next_avail_tx_desc = 0;
sys/dev/netif/em/if_em.c
4703
txd->buffer_addr = adapter->txdma.dma_paddr;
sys/dev/netif/em/if_em.c
4707
E1000_WRITE_REG(hw, E1000_TDT(0), adapter->next_avail_tx_desc);
sys/dev/netif/em/if_em.c
471
em_try_txgc(struct adapter *adapter, int dec)
sys/dev/netif/em/if_em.c
4717
em_flush_rx_ring(struct adapter *adapter)
sys/dev/netif/em/if_em.c
4719
struct e1000_hw *hw = &adapter->hw;
sys/dev/netif/em/if_em.c
474
if (adapter->tx_running > 0) {
sys/dev/netif/em/if_em.c
475
adapter->tx_running -= dec;
sys/dev/netif/em/if_em.c
4755
em_flush_txrx_ring(struct adapter *adapter)
sys/dev/netif/em/if_em.c
4757
struct e1000_hw *hw = &adapter->hw;
sys/dev/netif/em/if_em.c
4758
device_t dev = adapter->dev;
sys/dev/netif/em/if_em.c
476
if (adapter->tx_running <= 0 && adapter->tx_nmbuf &&
sys/dev/netif/em/if_em.c
477
adapter->num_tx_desc_avail < adapter->num_tx_desc &&
sys/dev/netif/em/if_em.c
4776
em_flush_tx_ring(adapter);
sys/dev/netif/em/if_em.c
478
adapter->num_tx_desc_avail + adapter->tx_int_nsegs >
sys/dev/netif/em/if_em.c
4783
em_flush_rx_ring(adapter);
sys/dev/netif/em/if_em.c
479
adapter->num_tx_desc)
sys/dev/netif/em/if_em.c
480
em_tx_collect(adapter, TRUE);
sys/dev/netif/em/if_em.c
487
struct adapter *adapter = xadapter;
sys/dev/netif/em/if_em.c
488
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
502
em_try_txgc(adapter, EM_TX_RUNNING_DEC);
sys/dev/netif/em/if_em.c
506
callout_reset(&adapter->tx_gc_timer, 1, em_txgc_timer, adapter);
sys/dev/netif/em/if_em.c
531
struct adapter *adapter = device_get_softc(dev);
sys/dev/netif/em/if_em.c
532
struct ifnet *ifp = &adapter->arpcom.ac_if;
sys/dev/netif/em/if_em.c
540
adapter->dev = adapter->osdep.dev = dev;
sys/dev/netif/em/if_em.c
546
adapter->flags |= EM_FLAG_GEN2;
sys/dev/netif/em/if_em.c
548
callout_init_mp(&adapter->timer);
sys/dev/netif/em/if_em.c
549
callout_init_mp(&adapter->tx_fifo_timer);
sys/dev/netif/em/if_em.c
550
callout_init_mp(&adapter->tx_gc_timer);
sys/dev/netif/em/if_em.c
552
ifmedia_init(&adapter->media, IFM_IMASK | IFM_ETH_FCMASK,
sys/dev/netif/em/if_em.c
556
error = em_get_hw_info(adapter);
sys/dev/netif/em/if_em.c
563
error = em_alloc_pci_res(adapter);
sys/dev/netif/em/if_em.c
575
if (adapter->hw.mac.type == e1000_ich8lan ||
sys/dev/netif/em/if_em.c
576
adapter->hw.mac.type == e1000_ich9lan ||
sys/dev/netif/em/if_em.c
577
adapter->hw.mac.type == e1000_ich10lan ||
sys/dev/netif/em/if_em.c
578
adapter->hw.mac.type == e1000_pchlan ||
sys/dev/netif/em/if_em.c
579
adapter->hw.mac.type == e1000_pch2lan ||
sys/dev/netif/em/if_em.c
580
adapter->hw.mac.type == e1000_pch_lpt) {
sys/dev/netif/em/if_em.c
581
adapter->flash_rid = EM_BAR_FLASH;
sys/dev/netif/em/if_em.c
583
adapter->flash = bus_alloc_resource_any(dev, SYS_RES_MEMORY,
sys/dev/netif/em/if_em.c
584
&adapter->flash_rid, RF_ACTIVE);
sys/dev/netif/em/if_em.c
585
if (adapter->flash == NULL) {
sys/dev/netif/em/if_em.c
590
adapter->osdep.flash_bus_space_tag =
sys/dev/netif/em/if_em.c
591
rman_get_bustag(adapter->flash);
sys/dev/netif/em/if_em.c
592
adapter->osdep.flash_bus_space_handle =
sys/dev/netif/em/if_em.c
593
rman_get_bushandle(adapter->flash);
sys/dev/netif/em/if_em.c
599
adapter->hw.flash_address = (uint8_t *)adapter->flash;
sys/dev/netif/em/if_em.c
600
} else if (adapter->hw.mac.type >= e1000_pch_spt) {
sys/dev/netif/em/if_em.c
607
adapter->osdep.flash_bus_space_tag =
sys/dev/netif/em/if_em.c
608
adapter->osdep.mem_bus_space_tag;
sys/dev/netif/em/if_em.c
609
adapter->osdep.flash_bus_space_handle =
sys/dev/netif/em/if_em.c
610
adapter->osdep.mem_bus_space_handle + E1000_FLASH_BASE_ADDR;
sys/dev/netif/em/if_em.c
613
switch (adapter->hw.mac.type) {
sys/dev/netif/em/if_em.c
631
adapter->flags |= EM_FLAG_TSO_PULLEX;
sys/dev/netif/em/if_em.c
635
if (adapter->flags & EM_FLAG_GEN2)
sys/dev/netif/em/if_em.c
636
adapter->flags |= EM_FLAG_TSO;
sys/dev/netif/em/if_em.c
641
if (e1000_setup_init_funcs(&adapter->hw, TRUE)) {
sys/dev/netif/em/if_em.c
647
e1000_get_bus_info(&adapter->hw);
sys/dev/netif/em/if_em.c
655
(adapter->hw.mac.type >= e1000_82544 && em_txd > EM_MAX_TXD) ||
sys/dev/netif/em/if_em.c
656
(adapter->hw.mac.type < e1000_82544 && em_txd > EM_MAX_TXD_82543) ||
sys/dev/netif/em/if_em.c
658
if (adapter->hw.mac.type < e1000_82544)
sys/dev/netif/em/if_em.c
659
adapter->num_tx_desc = EM_MAX_TXD_82543;
sys/dev/netif/em/if_em.c
661
adapter->num_tx_desc = EM_DEFAULT_TXD;
sys/dev/netif/em/if_em.c
663
adapter->num_tx_desc, em_txd);
sys/dev/netif/em/if_em.c
665
adapter->num_tx_desc = em_txd;
sys/dev/netif/em/if_em.c
668
(adapter->hw.mac.type >= e1000_82544 && em_rxd > EM_MAX_RXD) ||
sys/dev/netif/em/if_em.c
669
(adapter->hw.mac.type < e1000_82544 && em_rxd > EM_MAX_RXD_82543) ||
sys/dev/netif/em/if_em.c
671
if (adapter->hw.mac.type < e1000_82544)
sys/dev/netif/em/if_em.c
672
adapter->num_rx_desc = EM_MAX_RXD_82543;
sys/dev/netif/em/if_em.c
674
adapter->num_rx_desc = EM_DEFAULT_RXD;
sys/dev/netif/em/if_em.c
676
adapter->num_rx_desc, em_rxd);
sys/dev/netif/em/if_em.c
678
adapter->num_rx_desc = em_rxd;
sys/dev/netif/em/if_em.c
681
adapter->hw.mac.autoneg = DO_AUTO_NEG;
sys/dev/netif/em/if_em.c
682
adapter->hw.phy.autoneg_wait_to_complete = FALSE;
sys/dev/netif/em/if_em.c
683
adapter->hw.phy.autoneg_advertised = AUTONEG_ADV_DEFAULT;
sys/dev/netif/em/if_em.c
684
adapter->rx_buffer_len = MCLBYTES;
sys/dev/netif/em/if_em.c
690
adapter->int_throttle_ceil = 0;
sys/dev/netif/em/if_em.c
704
adapter->int_throttle_ceil = 1000000000 / 256 / throttle;
sys/dev/netif/em/if_em.c
707
e1000_init_script_state_82541(&adapter->hw, TRUE);
sys/dev/netif/em/if_em.c
708
e1000_set_tbi_compatibility_82543(&adapter->hw, TRUE);
sys/dev/netif/em/if_em.c
711
if (adapter->hw.phy.media_type == e1000_media_type_copper) {
sys/dev/netif/em/if_em.c
712
adapter->hw.phy.mdix = AUTO_ALL_MODES;
sys/dev/netif/em/if_em.c
713
adapter->hw.phy.disable_polarity_correction = FALSE;
sys/dev/netif/em/if_em.c
714
adapter->hw.phy.ms_type = EM_MASTER_SLAVE;
sys/dev/netif/em/if_em.c
718
adapter->hw.mac.max_frame_size =
sys/dev/netif/em/if_em.c
720
adapter->min_frame_size = ETH_ZLEN + ETHER_CRC_LEN;
sys/dev/netif/em/if_em.c
723
adapter->hw.mac.report_tx_early = 1;
sys/dev/netif/em/if_em.c
731
0, &adapter->parent_dtag);
sys/dev/netif/em/if_em.c
740
tsize = roundup2(adapter->num_tx_desc * sizeof(struct e1000_tx_desc),
sys/dev/netif/em/if_em.c
742
error = em_dma_malloc(adapter, tsize, &adapter->txdma);
sys/dev/netif/em/if_em.c
747
adapter->tx_desc_base = adapter->txdma.dma_vaddr;
sys/dev/netif/em/if_em.c
752
rsize = roundup2(adapter->num_rx_desc * sizeof(struct e1000_rx_desc),
sys/dev/netif/em/if_em.c
754
error = em_dma_malloc(adapter, rsize, &adapter->rxdma);
sys/dev/netif/em/if_em.c
759
adapter->rx_desc_base = adapter->rxdma.dma_vaddr;
sys/dev/netif/em/if_em.c
762
adapter->mta = kmalloc(ETH_ADDR_LEN * MAX_NUM_MULTICAST_ADDRESSES,
sys/dev/netif/em/if_em.c
766
if (e1000_check_reset_block(&adapter->hw)) {
sys/dev/netif/em/if_em.c
772
adapter->hw.dev_spec.ich8lan.eee_disable = 1;
sys/dev/netif/em/if_em.c
778
e1000_reset_hw(&adapter->hw);
sys/dev/netif/em/if_em.c
781
if (e1000_validate_nvm_checksum(&adapter->hw) < 0) {
sys/dev/netif/em/if_em.c
787
if (e1000_validate_nvm_checksum(&adapter->hw) < 0) {
sys/dev/netif/em/if_em.c
796
if (e1000_read_mac_addr(&adapter->hw) < 0) {
sys/dev/netif/em/if_em.c
802
if (!em_is_valid_eaddr(adapter->hw.mac.addr)) {
sys/dev/netif/em/if_em.c
809
e1000_disable_ulp_lpt_lp(&adapter->hw, TRUE);
sys/dev/netif/em/if_em.c
812
error = em_create_tx_ring(adapter);
sys/dev/netif/em/if_em.c
819
error = em_create_rx_ring(adapter);
sys/dev/netif/em/if_em.c
826
E1000_WRITE_REG(&adapter->hw, E1000_IMC, 0xffffffff);
sys/dev/netif/em/if_em.c
829
if (e1000_enable_mng_pass_thru(&adapter->hw))
sys/dev/netif/em/if_em.c
830
adapter->flags |= EM_FLAG_HAS_MGMT;
sys/dev/netif/em/if_em.c
837
switch (adapter->hw.mac.type) {
sys/dev/netif/em/if_em.c
844
adapter->flags |= EM_FLAG_HAS_AMT;
sys/dev/netif/em/if_em.c
852
if (adapter->hw.bus.func == 1) {
sys/dev/netif/em/if_em.c
853
e1000_read_nvm(&adapter->hw,
sys/dev/netif/em/if_em.c
856
e1000_read_nvm(&adapter->hw,
sys/dev/netif/em/if_em.c
870
adapter->flags |= EM_FLAG_HAS_AMT;
sys/dev/netif/em/if_em.c
871
eeprom_data = E1000_READ_REG(&adapter->hw, E1000_WUC);
sys/dev/netif/em/if_em.c
875
e1000_read_nvm(&adapter->hw,
sys/dev/netif/em/if_em.c
880
adapter->wol = E1000_WUFC_MAG | E1000_WUFC_MC;
sys/dev/netif/em/if_em.c
890
adapter->wol = 0;
sys/dev/netif/em/if_em.c
900
if (E1000_READ_REG(&adapter->hw, E1000_STATUS) &
sys/dev/netif/em/if_em.c
902
adapter->wol = 0;
sys/dev/netif/em/if_em.c
911
adapter->wol = 0;
sys/dev/netif/em/if_em.c
919
adapter->wol = 0;
sys/dev/netif/em/if_em.c
924
adapter->ifm_flowctrl = ifmedia_str2ethfc(flowctrl);
sys/dev/netif/em/if_em.c
925
if (adapter->hw.mac.type == e1000_pchlan) {
sys/dev/netif/em/if_em.c
927
adapter->ifm_flowctrl &= ~IFM_ETH_TXPAUSE;
sys/dev/netif/em/if_em.c
931
em_setup_ifp(adapter);
sys/dev/netif/em/if_em.c
934
em_add_sysctl(adapter);
sys/dev/netif/em/if_em.c
938
ifpoll_compat_setup(&adapter->npoll,
sys/dev/netif/em/if_em.c
944
error = em_reset(adapter);
sys/dev/netif/em/if_em.c
950
error = em_reset(adapter);
sys/dev/netif/em/if_em.c
959
em_update_stats(adapter);
sys/dev/netif/em/if_em.c
961
adapter->hw.mac.get_link_status = 1;
sys/dev/netif/em/if_em.c
962
em_update_link_status(adapter);
sys/dev/netif/em/if_em.c
965
if (adapter->hw.bus.type == e1000_bus_type_pcix &&
sys/dev/netif/em/if_em.c
966
adapter->hw.mac.type == e1000_82544)
sys/dev/netif/em/if_em.c
967
adapter->pcix_82544 = TRUE;
sys/dev/netif/em/if_em.c
969
adapter->pcix_82544 = FALSE;
sys/dev/netif/em/if_em.c
971
if (adapter->pcix_82544) {
sys/dev/netif/em/if_em.c
977
adapter->spare_tx_desc = 2 * EM_TX_SPARE;
sys/dev/netif/em/if_em.c
979
adapter->spare_tx_desc = EM_TX_SPARE;
sys/dev/netif/em/if_em.c
981
if (adapter->flags & EM_FLAG_TSO)
sys/dev/netif/em/if_em.c
982
adapter->spare_tx_desc = EM_TX_SPARE_TSO;
sys/dev/netif/em/if_em.c
983
adapter->tx_wreg_nsegs = EM_DEFAULT_TXWREG;
sys/dev/netif/em/if_em.c
991
adapter->oact_tx_desc = adapter->num_tx_desc / 8;
sys/dev/netif/em/if_em.c
992
if (adapter->oact_tx_desc > EM_TX_OACTIVE_MAX)
sys/dev/netif/em/if_em.c
993
adapter->oact_tx_desc = EM_TX_OACTIVE_MAX;
sys/dev/netif/em/if_em.c
994
if (adapter->oact_tx_desc < adapter->spare_tx_desc + EM_TX_RESERVED)
sys/dev/netif/em/if_em.c
995
adapter->oact_tx_desc = adapter->spare_tx_desc + EM_TX_RESERVED;
sys/dev/netif/em/if_em.c
997
adapter->tx_int_nsegs = adapter->num_tx_desc / 16;
sys/dev/netif/em/if_em.c
998
if (adapter->tx_int_nsegs < adapter->oact_tx_desc)
sys/dev/netif/em/if_em.c
999
adapter->tx_int_nsegs = adapter->oact_tx_desc;
sys/dev/netif/em/if_em.h
460
#define EM_IS_OACTIVE(adapter) \
sys/dev/netif/em/if_em.h
461
((adapter)->num_tx_desc_avail <= (adapter)->oact_tx_desc)
sys/dev/netif/igb/if_igb.c
1011
if (adapter->max_frame_size <= 2048)
sys/dev/netif/igb/if_igb.c
1012
adapter->rx_mbuf_sz = MCLBYTES;
sys/dev/netif/igb/if_igb.c
1013
else if (adapter->max_frame_size <= 4096)
sys/dev/netif/igb/if_igb.c
1014
adapter->rx_mbuf_sz = MJUMPAGESIZE;
sys/dev/netif/igb/if_igb.c
1016
adapter->rx_mbuf_sz = MJUM9BYTES;
sys/dev/netif/igb/if_igb.c
2523
if (adapter->rx_mbuf_sz == MJUMPAGESIZE) {
sys/dev/netif/igb/if_igb.c
2526
} else if (adapter->rx_mbuf_sz > MJUMPAGESIZE) {
sys/dev/netif/igb/if_igb.c
2531
psize = adapter->max_frame_size;
sys/dev/netif/igb/if_igb.c
2533
if (adapter->ifp->if_vlantrunk != NULL)
sys/dev/netif/igb/if_igb.c
2535
E1000_WRITE_REG(&adapter->hw, E1000_RLPML, psize);
sys/dev/netif/igb/if_igb.c
2875
if ((adapter->num_vlans == 0) ||
sys/dev/netif/igb/if_igb.c
2883
if (adapter->shadow_vfta[i] != 0) {
sys/dev/netif/igb/if_igb.c
2884
if (adapter->vf_ifp)
sys/dev/netif/igb/if_igb.c
2886
adapter->shadow_vfta[i], TRUE);
sys/dev/netif/igb/if_igb.c
2889
i, adapter->shadow_vfta[i]);
sys/dev/netif/igb/if_igb.c
494
OID_AUTO, "nvm", CTLTYPE_INT|CTLFLAG_RW, adapter, 0,
sys/dev/netif/igb/if_igb.c
621
igb_set_sysctl_value(adapter, "dma_coalesce",
sys/dev/netif/igb/if_igb.c
623
&adapter->dma_coalesce, igb_dma_coalesce);
sys/dev/netif/igb/if_igb.c
624
igb_set_sysctl_value(adapter, "eee_disabled",
sys/dev/netif/igb/if_igb.c
626
&adapter->hw.dev_spec._82575.eee_disable,
sys/dev/netif/igb/if_igb.c
713
adapter->vlan_attach = EVENTHANDLER_REGISTER(vlan_config,
sys/dev/netif/igb/if_igb.c
714
igb_register_vlan, adapter, EVENTHANDLER_PRI_FIRST);
sys/dev/netif/igb/if_igb.c
715
adapter->vlan_detach = EVENTHANDLER_REGISTER(vlan_unconfig,
sys/dev/netif/igb/if_igb.c
716
igb_unregister_vlan, adapter, EVENTHANDLER_PRI_FIRST);
sys/dev/netif/igb/if_igb.c
720
igb_add_hw_stats(adapter);
sys/dev/netif/sln/if_slnreg.h
255
#define SLN_WRITE_4(adapter, reg, val) bus_space_write_4(adapter->sln_bustag, adapter->sln_bushandle, reg, val)
sys/dev/netif/sln/if_slnreg.h
256
#define SLN_WRITE_2(adapter, reg, val) bus_space_write_2(adapter->sln_bustag, adapter->sln_bushandle, reg, val)
sys/dev/netif/sln/if_slnreg.h
257
#define SLN_WRITE_1(adapter, reg, val) bus_space_write_1(adapter->sln_bustag, adapter->sln_bushandle, reg, val)
sys/dev/netif/sln/if_slnreg.h
259
#define SLN_READ_4(adapter, reg) bus_space_read_4(adapter->sln_bustag, adapter->sln_bushandle, reg)
sys/dev/netif/sln/if_slnreg.h
260
#define SLN_READ_2(adapter, reg) bus_space_read_2(adapter->sln_bustag, adapter->sln_bushandle, reg)
sys/dev/netif/sln/if_slnreg.h
261
#define SLN_READ_1(adapter, reg) bus_space_read_1(adapter->sln_bustag, adapter->sln_bushandle, reg)
sys/dev/raid/amr/amr.c
770
int adapter, error;
sys/dev/raid/amr/amr.c
780
adapter = 0;
sys/dev/raid/amr/amr.c
782
adapter = (ali.ui.fcs.adapno) ^ 'm' << 8;
sys/dev/raid/amr/amr.c
784
sc = devclass_get_softc(devclass, adapter);
sys/dev/raid/hpt27xx/him.h
254
void * adapter;
sys/dev/raid/hpt27xx/himfuncs.h
100
_HIM_INTERFACE(int, get_enclosure_count, (void *adapter))
sys/dev/raid/hpt27xx/himfuncs.h
101
_HIM_INTERFACE(int, get_enclosure_info, (void *adapter, int id, void *pinfo))
sys/dev/raid/hpt27xx/himfuncs.h
102
_HIM_INTERFACE(int, get_enclosure_info_v2, (void *adapter, int id, void *pinfo))
sys/dev/raid/hpt27xx/himfuncs.h
103
_HIM_INTERFACE(int, get_enclosure_info_v3, (void *adapter, int id, void *pinfo))
sys/dev/raid/hpt27xx/himfuncs.h
105
_HIM_INTERFACE(HPT_BOOL, flash_access, (void *adapter, HPT_U32 offset, void *value, int size, HPT_BOOL reading))
sys/dev/raid/hpt27xx/himfuncs.h
48
_HIM_INTERFACE(HPT_BOOL, create_adapter, (const PCI_ID *id, PCI_ADDRESS pciAddress, void *adapter, void *osext))
sys/dev/raid/hpt27xx/himfuncs.h
50
_HIM_INTERFACE(void, get_adapter_config, (void *adapter, HIM_ADAPTER_CONFIG *config))
sys/dev/raid/hpt27xx/himfuncs.h
52
_HIM_INTERFACE(HPT_BOOL, get_meminfo, (void *adapter))
sys/dev/raid/hpt27xx/himfuncs.h
56
_HIM_INTERFACE(void, route_irq, (void *adapter, HPT_BOOL enable))
sys/dev/raid/hpt27xx/himfuncs.h
59
_HIM_INTERFACE(HPT_BOOL, initialize, (void *adapter))
sys/dev/raid/hpt27xx/himfuncs.h
62
_HIM_INTERFACE(HPT_UINT, get_device_size, (void *adapter))
sys/dev/raid/hpt27xx/himfuncs.h
65
_HIM_INTERFACE(HPT_BOOL, probe_device, (void *adapter, int index, void *devhandle, PROBE_CALLBACK done, void *arg))
sys/dev/raid/hpt27xx/himfuncs.h
66
_HIM_INTERFACE(void *, get_device, (void *adapter, int index))
sys/dev/raid/hpt27xx/himfuncs.h
80
_HIM_INTERFACE(HPT_BOOL, intr_handler, (void *adapter))
sys/dev/raid/hpt27xx/himfuncs.h
81
_HIM_INTERFACE(HPT_BOOL, intr_control, (void * adapter, HPT_BOOL enable))
sys/dev/raid/hpt27xx/himfuncs.h
84
_HIM_INTERFACE(int, get_channel_config, (void * adapter, int index, PHIM_CHANNEL_CONFIG pInfo))
sys/dev/raid/hpt27xx/himfuncs.h
89
_HIM_INTERFACE(void, shutdown, (void *adapter))
sys/dev/raid/hpt27xx/himfuncs.h
90
_HIM_INTERFACE(void, suspend, (void *adapter))
sys/dev/raid/hpt27xx/himfuncs.h
91
_HIM_INTERFACE(void, resume, (void *adapter))
sys/dev/raid/hpt27xx/himfuncs.h
92
_HIM_INTERFACE(void, release_adapter, (void *adapter))
sys/dev/raid/hpt27xx/himfuncs.h
95
_HIM_INTERFACE(HPT_BOOL, verify_adapter, (void *adapter))
sys/dev/raid/hpt27xx/himfuncs.h
98
_HIM_INTERFACE(void, ioctl, (void * adapter, struct _IOCTL_ARG *arg))
sys/dev/raid/hpt27xx/ldm.h
272
PLDM_ADAPTER adapter;
sys/dev/raid/hpt27xx/ldm.h
415
HPT_BOOL ldm_register_adapter(PLDM_ADAPTER adapter);
sys/dev/raid/hpt27xx/ldm.h
442
#define ldm_initialize_vbus(vbus, adapter) ldm_initialize_vbus_async(vbus, adapter, 0)
sys/dev/raid/hptrr/him.h
228
void * adapter;
sys/dev/raid/hptrr/himfuncs.h
103
_HIM_INTERFACE(HPT_BOOL, flash_access, (void *adapter, HPT_U32 offset, void *value, int size, HPT_BOOL reading))
sys/dev/raid/hptrr/himfuncs.h
49
_HIM_INTERFACE(HPT_BOOL, create_adapter, (const PCI_ID *id, PCI_ADDRESS pciAddress, void *adapter, void *osext))
sys/dev/raid/hptrr/himfuncs.h
51
_HIM_INTERFACE(void, get_adapter_config, (void *adapter, HIM_ADAPTER_CONFIG *config))
sys/dev/raid/hptrr/himfuncs.h
53
_HIM_INTERFACE(HPT_BOOL, get_meminfo, (void *adapter))
sys/dev/raid/hptrr/himfuncs.h
57
_HIM_INTERFACE(void, route_irq, (void *adapter, HPT_BOOL enable))
sys/dev/raid/hptrr/himfuncs.h
60
_HIM_INTERFACE(HPT_BOOL, initialize, (void *adapter))
sys/dev/raid/hptrr/himfuncs.h
63
_HIM_INTERFACE(HPT_UINT, get_device_size, (void *adapter))
sys/dev/raid/hptrr/himfuncs.h
66
_HIM_INTERFACE(HPT_BOOL, probe_device, (void *adapter, int index, void *devhandle, PROBE_CALLBACK done, void *arg))
sys/dev/raid/hptrr/himfuncs.h
67
_HIM_INTERFACE(void *, get_device, (void *adapter, int index))
sys/dev/raid/hptrr/himfuncs.h
81
_HIM_INTERFACE(HPT_BOOL, intr_handler, (void *adapter))
sys/dev/raid/hptrr/himfuncs.h
82
_HIM_INTERFACE(HPT_BOOL, intr_control, (void * adapter, HPT_BOOL enable))
sys/dev/raid/hptrr/himfuncs.h
85
_HIM_INTERFACE(int, get_channel_config, (void * adapter, int index, PHIM_CHANNEL_CONFIG pInfo))
sys/dev/raid/hptrr/himfuncs.h
90
_HIM_INTERFACE(void, shutdown, (void *adapter))
sys/dev/raid/hptrr/himfuncs.h
91
_HIM_INTERFACE(void, suspend, (void *adapter))
sys/dev/raid/hptrr/himfuncs.h
92
_HIM_INTERFACE(void, resume, (void *adapter))
sys/dev/raid/hptrr/himfuncs.h
93
_HIM_INTERFACE(void, release_adapter, (void *adapter))
sys/dev/raid/hptrr/himfuncs.h
96
_HIM_INTERFACE(HPT_BOOL, verify_adapter, (void *adapter))
sys/dev/raid/hptrr/himfuncs.h
99
_HIM_INTERFACE(void, ioctl, (void * adapter, struct _IOCTL_ARG *arg))
sys/dev/raid/hptrr/ldm.h
268
PLDM_ADAPTER adapter;
sys/dev/raid/hptrr/ldm.h
410
HPT_BOOL ldm_register_adapter(PLDM_ADAPTER adapter);
sys/dev/raid/hptrr/ldm.h
437
#define ldm_initialize_vbus(vbus, adapter) ldm_initialize_vbus_async(vbus, adapter, 0)
sys/dev/raid/ips/ips_disk.c
156
device_t adapter;
sys/dev/raid/ips/ips_disk.c
165
adapter = device_get_parent(dev);
sys/dev/raid/ips/ips_disk.c
167
dsc->sc = device_get_softc(adapter);
sys/dev/raid/mfi/mfi.c
2951
int adapter;
sys/dev/raid/mfi/mfi.c
2953
adapter = ioc->mfi_adapter_no;
sys/dev/raid/mfi/mfi.c
2954
if (device_get_unit(sc->mfi_dev) == 0 && adapter != 0) {
sys/dev/raid/mfi/mfi.c
2956
sc = devclass_get_softc(devclass, adapter);
sys/dev/raid/mfi/mfi.c
3135
int adapter;
sys/dev/raid/mfi/mfi.c
3144
adapter = l_ioc.lioc_adapter_no;
sys/dev/raid/mfi/mfi.c
3145
sc = devclass_get_softc(devclass, adapter);
sys/dev/raid/mfi/mfi.c
3156
int adapter;
sys/dev/raid/mfi/mfi.c
3165
adapter = l_aen.laen_adapter_no;
sys/dev/raid/mfi/mfi.c
3166
sc = devclass_get_softc(devclass, adapter);
sys/dev/raid/mrsas/mrsas_ioctl.c
161
int i, adapter, ioctl_data_size, ioctl_sense_size, ret=0;
sys/dev/raid/mrsas/mrsas_ioctl.c
179
adapter = user_ioc->host_no;
sys/dev/raid/mrsas/mrsas_ioctl.c
180
if (adapter != device_get_unit(sc->mrsas_dev)) {
sys/dev/video/fb/fb.c
104
kfree(adapter, M_DEVBUF);
sys/dev/video/fb/fb.c
110
adapter = new_adp;
sys/dev/video/fb/fb.c
158
if (adapter[index] == NULL)
sys/dev/video/fb/fb.c
172
adapter[index] = adp;
sys/dev/video/fb/fb.c
191
if (adapter[adp->va_index] != adp) {
sys/dev/video/fb/fb.c
196
adapter[adp->va_index] = NULL;
sys/dev/video/fb/fb.c
236
if (adapter[i] == NULL)
sys/dev/video/fb/fb.c
238
if (strcmp("*", driver) && strcmp(adapter[i]->va_name, driver))
sys/dev/video/fb/fb.c
240
if ((unit != -1) && (adapter[i]->va_unit != unit))
sys/dev/video/fb/fb.c
256
if (adapter[index]->va_token) {
sys/dev/video/fb/fb.c
260
adapter[index]->va_token = id;
sys/dev/video/fb/fb.c
290
return adapter[index];
sys/dev/video/fb/fb.c
348
if (adapter[unit] == NULL)
sys/dev/video/fb/fb.c
402
if (adapter[adp->va_index] != adp)
sys/dev/video/fb/fb.c
423
if (adapter[adp->va_index] != adp)
sys/dev/video/fb/fb.c
65
static video_adapter_t **adapter = &adp_ini;
sys/dev/video/fb/fb.c
98
bcopy(adapter, new_adp, sizeof(*adapter)*adapters);
sys/dev/virtual/amazon/ena/ena.c
1018
rc = ena_alloc_rx_mbuf(adapter, rx_ring, rx_info);
sys/dev/virtual/amazon/ena/ena.c
1038
IFNET_STAT_INC(rx_ring->adapter->ifp, ierrors, 1);
sys/dev/virtual/amazon/ena/ena.c
1056
ena_free_rx_bufs(struct ena_adapter *adapter, unsigned int qid)
sys/dev/virtual/amazon/ena/ena.c
1058
struct ena_ring *rx_ring = &adapter->rx_ring[qid];
sys/dev/virtual/amazon/ena/ena.c
1065
ena_free_rx_mbuf(adapter, rx_ring, rx_info);
sys/dev/virtual/amazon/ena/ena.c
1075
ena_refill_all_rx_bufs(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
1080
for (i = 0; i < adapter->num_queues; i++) {
sys/dev/virtual/amazon/ena/ena.c
1081
rx_ring = &adapter->rx_ring[i];
sys/dev/virtual/amazon/ena/ena.c
1092
ena_free_all_rx_bufs(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
1096
for (i = 0; i < adapter->num_queues; i++)
sys/dev/virtual/amazon/ena/ena.c
1097
ena_free_rx_bufs(adapter, i);
sys/dev/virtual/amazon/ena/ena.c
1106
ena_free_tx_bufs(struct ena_adapter *adapter, unsigned int qid)
sys/dev/virtual/amazon/ena/ena.c
1109
struct ena_ring *tx_ring = &adapter->tx_ring[qid];
sys/dev/virtual/amazon/ena/ena.c
1119
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
1129
bus_dmamap_unload(adapter->tx_buf_tag, tx_info->map);
sys/dev/virtual/amazon/ena/ena.c
1137
ena_free_all_tx_bufs(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
1140
for (int i = 0; i < adapter->num_queues; i++)
sys/dev/virtual/amazon/ena/ena.c
1141
ena_free_tx_bufs(adapter, i);
sys/dev/virtual/amazon/ena/ena.c
1145
ena_destroy_all_tx_queues(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
1150
for (i = 0; i < adapter->num_queues; i++) {
sys/dev/virtual/amazon/ena/ena.c
1152
ena_com_destroy_io_queue(adapter->ena_dev, ena_qid);
sys/dev/virtual/amazon/ena/ena.c
1157
ena_destroy_all_rx_queues(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
1162
for (i = 0; i < adapter->num_queues; i++) {
sys/dev/virtual/amazon/ena/ena.c
1164
ena_com_destroy_io_queue(adapter->ena_dev, ena_qid);
sys/dev/virtual/amazon/ena/ena.c
1169
ena_destroy_all_io_queues(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
1171
ena_destroy_all_tx_queues(adapter);
sys/dev/virtual/amazon/ena/ena.c
1172
ena_destroy_all_rx_queues(adapter);
sys/dev/virtual/amazon/ena/ena.c
1178
struct ena_adapter *adapter = tx_ring->adapter;
sys/dev/virtual/amazon/ena/ena.c
1188
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
1191
device_printf(adapter->pdev, "Invalid req_id: %hu\n", req_id);
sys/dev/virtual/amazon/ena/ena.c
1193
IFNET_STAT_INC(tx_ring->adapter->ifp, oerrors, 1);
sys/dev/virtual/amazon/ena/ena.c
1202
ena_create_io_queues(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
1204
struct ena_com_dev *ena_dev = adapter->ena_dev;
sys/dev/virtual/amazon/ena/ena.c
1212
for (i = 0; i < adapter->num_queues; i++) {
sys/dev/virtual/amazon/ena/ena.c
1217
ctx.queue_size = adapter->tx_ring_size;
sys/dev/virtual/amazon/ena/ena.c
1222
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
1226
ring = &adapter->tx_ring[i];
sys/dev/virtual/amazon/ena/ena.c
1231
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
1240
for (i = 0; i < adapter->num_queues; i++) {
sys/dev/virtual/amazon/ena/ena.c
1245
ctx.queue_size = adapter->rx_ring_size;
sys/dev/virtual/amazon/ena/ena.c
1250
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
1255
ring = &adapter->rx_ring[i];
sys/dev/virtual/amazon/ena/ena.c
1260
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
1273
i = adapter->num_queues;
sys/dev/virtual/amazon/ena/ena.c
1295
struct ena_adapter *adapter;
sys/dev/virtual/amazon/ena/ena.c
1306
adapter = tx_ring->que->adapter;
sys/dev/virtual/amazon/ena/ena.c
1308
io_cq = &adapter->ena_dev->io_cq_queues[ena_qid];
sys/dev/virtual/amazon/ena/ena.c
1332
bus_dmamap_unload(adapter->tx_buf_tag, tx_info->map);
sys/dev/virtual/amazon/ena/ena.c
1351
&adapter->ena_dev->io_sq_queues[ena_qid],
sys/dev/virtual/amazon/ena/ena.c
1366
ena_com_comp_ack(&adapter->ena_dev->io_sq_queues[ena_qid],
sys/dev/virtual/amazon/ena/ena.c
1378
struct ena_adapter *adapter = rx_ring->adapter;
sys/dev/virtual/amazon/ena/ena.c
1380
if (likely(adapter->rss_support)) {
sys/dev/virtual/amazon/ena/ena.c
1444
struct ena_adapter *adapter;
sys/dev/virtual/amazon/ena/ena.c
1449
adapter = rx_ring->adapter;
sys/dev/virtual/amazon/ena/ena.c
1453
device_printf(adapter->pdev, "NULL mbuf in rx_info");
sys/dev/virtual/amazon/ena/ena.c
1468
mbuf->m_pkthdr.rcvif = rx_ring->que->adapter->ifp;
sys/dev/virtual/amazon/ena/ena.c
1477
bus_dmamap_unload(rx_ring->adapter->rx_buf_tag, rx_info->map);
sys/dev/virtual/amazon/ena/ena.c
1494
device_printf(adapter->pdev, "NULL mbuf in rx_info");
sys/dev/virtual/amazon/ena/ena.c
1510
IFNET_STAT_INC(rx_ring->adapter->ifp, ierrors, 1);
sys/dev/virtual/amazon/ena/ena.c
1522
bus_dmamap_unload(rx_ring->adapter->rx_buf_tag, rx_info->map);
sys/dev/virtual/amazon/ena/ena.c
1548
IFNET_STAT_INC(rx_ring->adapter->ifp, ierrors, 1);
sys/dev/virtual/amazon/ena/ena.c
1562
IFNET_STAT_INC(rx_ring->adapter->ifp, ierrors, 1);
sys/dev/virtual/amazon/ena/ena.c
1599
struct ena_adapter *adapter;
sys/dev/virtual/amazon/ena/ena.c
1614
adapter = rx_ring->que->adapter;
sys/dev/virtual/amazon/ena/ena.c
1615
ifp = adapter->ifp;
sys/dev/virtual/amazon/ena/ena.c
1618
io_cq = &adapter->ena_dev->io_cq_queues[ena_qid];
sys/dev/virtual/amazon/ena/ena.c
1619
io_sq = &adapter->ena_dev->io_sq_queues[ena_qid];
sys/dev/virtual/amazon/ena/ena.c
1626
ena_rx_ctx.max_bufs = adapter->max_rx_sgl_size;
sys/dev/virtual/amazon/ena/ena.c
1670
counter_u64_add_protected(adapter->hw_stats.rx_bytes,
sys/dev/virtual/amazon/ena/ena.c
1706
counter_u64_add_protected(adapter->hw_stats.rx_packets, 1);
sys/dev/virtual/amazon/ena/ena.c
1728
IFNET_STAT_INC(rx_ring->adapter->ifp, ierrors, 1);
sys/dev/virtual/amazon/ena/ena.c
1748
struct ena_adapter *adapter = (struct ena_adapter *)arg;
sys/dev/virtual/amazon/ena/ena.c
1750
ena_com_admin_q_comp_intr_handler(adapter->ena_dev);
sys/dev/virtual/amazon/ena/ena.c
1751
if (likely(adapter->running))
sys/dev/virtual/amazon/ena/ena.c
1752
ena_com_aenq_intr_handler(adapter->ena_dev, arg);
sys/dev/virtual/amazon/ena/ena.c
1763
struct ena_adapter *adapter = que->adapter;
sys/dev/virtual/amazon/ena/ena.c
1764
if_t ifp = adapter->ifp;
sys/dev/virtual/amazon/ena/ena.c
1781
io_cq = &adapter->ena_dev->io_cq_queues[ena_qid];
sys/dev/virtual/amazon/ena/ena.c
1817
ena_enable_msix(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
1819
device_t dev = adapter->pdev;
sys/dev/virtual/amazon/ena/ena.c
1824
msix_vecs = ENA_MAX_MSIX_VEC(adapter->num_queues);
sys/dev/virtual/amazon/ena/ena.c
1826
adapter->msix_entries = kmalloc(msix_vecs * sizeof(struct msix_entry),
sys/dev/virtual/amazon/ena/ena.c
1832
adapter->msix_entries[i].entry = i;
sys/dev/virtual/amazon/ena/ena.c
1834
adapter->msix_entries[i].vector = i + 1;
sys/dev/virtual/amazon/ena/ena.c
1843
adapter->msix_vecs = msix_vecs;
sys/dev/virtual/amazon/ena/ena.c
1844
adapter->msix_enabled = true;
sys/dev/virtual/amazon/ena/ena.c
1849
kfree(adapter->msix_entries, M_DEVBUF);
sys/dev/virtual/amazon/ena/ena.c
1850
adapter->msix_entries = NULL;
sys/dev/virtual/amazon/ena/ena.c
1856
ena_setup_mgmnt_intr(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
1859
ksnprintf(adapter->irq_tbl[ENA_MGMNT_IRQ_IDX].name,
sys/dev/virtual/amazon/ena/ena.c
1861
device_get_nameunit(adapter->pdev));
sys/dev/virtual/amazon/ena/ena.c
1866
adapter->irq_tbl[ENA_MGMNT_IRQ_IDX].handler = NULL;
sys/dev/virtual/amazon/ena/ena.c
1867
adapter->irq_tbl[ENA_MGMNT_IRQ_IDX].data = adapter;
sys/dev/virtual/amazon/ena/ena.c
1868
adapter->irq_tbl[ENA_MGMNT_IRQ_IDX].vector =
sys/dev/virtual/amazon/ena/ena.c
1869
adapter->msix_entries[ENA_MGMNT_IRQ_IDX].vector;
sys/dev/virtual/amazon/ena/ena.c
1873
ena_setup_io_intr(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
1878
for (int i = 0; i < adapter->num_queues; i++) {
sys/dev/virtual/amazon/ena/ena.c
1881
ksnprintf(adapter->irq_tbl[irq_idx].name, ENA_IRQNAME_SIZE,
sys/dev/virtual/amazon/ena/ena.c
1882
"%s-TxRx-%d", device_get_nameunit(adapter->pdev), i);
sys/dev/virtual/amazon/ena/ena.c
1883
adapter->irq_tbl[irq_idx].handler = ena_handle_msix;
sys/dev/virtual/amazon/ena/ena.c
1884
adapter->irq_tbl[irq_idx].data = &adapter->que[i];
sys/dev/virtual/amazon/ena/ena.c
1885
adapter->irq_tbl[irq_idx].vector =
sys/dev/virtual/amazon/ena/ena.c
1886
adapter->msix_entries[irq_idx].vector;
sys/dev/virtual/amazon/ena/ena.c
1888
adapter->msix_entries[irq_idx].vector);
sys/dev/virtual/amazon/ena/ena.c
1890
adapter->que[i].cpu = adapter->irq_tbl[irq_idx].cpu =
sys/dev/virtual/amazon/ena/ena.c
1904
adapter->que[i].cpu = adapter->irq_tbl[irq_idx].cpu =
sys/dev/virtual/amazon/ena/ena.c
1912
ena_request_mgmnt_irq(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
1920
irq = &adapter->irq_tbl[ENA_MGMNT_IRQ_IDX];
sys/dev/virtual/amazon/ena/ena.c
1922
error = pci_alloc_msix_vector(adapter->pdev, 0, &irq->vector, 0);
sys/dev/virtual/amazon/ena/ena.c
1924
device_printf(adapter->pdev, "Could not initialize MGMNT MSI-X Vector on cpu0\n");
sys/dev/virtual/amazon/ena/ena.c
1928
irq->res = bus_alloc_resource_any(adapter->pdev, SYS_RES_IRQ,
sys/dev/virtual/amazon/ena/ena.c
1932
device_printf(adapter->pdev, "could not allocate "
sys/dev/virtual/amazon/ena/ena.c
1934
pci_release_msix_vector(adapter->pdev, irq->vector);
sys/dev/virtual/amazon/ena/ena.c
1938
rc = bus_activate_resource(adapter->pdev, SYS_RES_IRQ,
sys/dev/virtual/amazon/ena/ena.c
1941
device_printf(adapter->pdev, "could not activate "
sys/dev/virtual/amazon/ena/ena.c
1946
rc = bus_setup_intr(adapter->pdev, irq->res,
sys/dev/virtual/amazon/ena/ena.c
1950
device_printf(adapter->pdev, "failed to register "
sys/dev/virtual/amazon/ena/ena.c
1962
rcc = bus_release_resource(adapter->pdev, SYS_RES_IRQ,
sys/dev/virtual/amazon/ena/ena.c
1964
pci_release_msix_vector(adapter->pdev, irq->vector);
sys/dev/virtual/amazon/ena/ena.c
1966
device_printf(adapter->pdev, "dev has no parent while "
sys/dev/virtual/amazon/ena/ena.c
1974
ena_request_io_irq(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
1980
if (unlikely(adapter->msix_enabled == 0)) {
sys/dev/virtual/amazon/ena/ena.c
1981
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
1988
for (i = ENA_IO_IRQ_FIRST_IDX; i < adapter->msix_vecs; i++) {
sys/dev/virtual/amazon/ena/ena.c
1989
irq = &adapter->irq_tbl[i];
sys/dev/virtual/amazon/ena/ena.c
1994
error = pci_alloc_msix_vector(adapter->pdev, i, &irq->vector, irq->cpu);
sys/dev/virtual/amazon/ena/ena.c
1996
device_printf(adapter->pdev, "Unable to allocated MSI-X %d on cpu%d\n", i, irq->cpu);
sys/dev/virtual/amazon/ena/ena.c
2000
irq->res = bus_alloc_resource_any(adapter->pdev, SYS_RES_IRQ,
sys/dev/virtual/amazon/ena/ena.c
2003
device_printf(adapter->pdev, "could not allocate "
sys/dev/virtual/amazon/ena/ena.c
2013
rc = bus_setup_intr(adapter->pdev, irq->res,
sys/dev/virtual/amazon/ena/ena.c
2017
device_printf(adapter->pdev, "failed to register "
sys/dev/virtual/amazon/ena/ena.c
2038
irq = &adapter->irq_tbl[i];
sys/dev/virtual/amazon/ena/ena.c
2044
rcc = bus_teardown_intr(adapter->pdev, irq->res, irq->cookie);
sys/dev/virtual/amazon/ena/ena.c
2046
device_printf(adapter->pdev, "could not release"
sys/dev/virtual/amazon/ena/ena.c
2055
rcc = bus_release_resource(adapter->pdev, SYS_RES_IRQ,
sys/dev/virtual/amazon/ena/ena.c
2057
pci_release_msix_vector(adapter->pdev, irq->vector);
sys/dev/virtual/amazon/ena/ena.c
2060
device_printf(adapter->pdev, "dev has no parent while "
sys/dev/virtual/amazon/ena/ena.c
2070
ena_free_mgmnt_irq(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
2075
irq = &adapter->irq_tbl[ENA_MGMNT_IRQ_IDX];
sys/dev/virtual/amazon/ena/ena.c
2079
rc = bus_teardown_intr(adapter->pdev, irq->res, irq->cookie);
sys/dev/virtual/amazon/ena/ena.c
2081
device_printf(adapter->pdev, "failed to tear "
sys/dev/virtual/amazon/ena/ena.c
2089
rc = bus_release_resource(adapter->pdev, SYS_RES_IRQ,
sys/dev/virtual/amazon/ena/ena.c
2091
pci_release_msix_vector(adapter->pdev, irq->vector);
sys/dev/virtual/amazon/ena/ena.c
2094
device_printf(adapter->pdev, "dev has no parent while "
sys/dev/virtual/amazon/ena/ena.c
2100
ena_free_io_irq(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
2105
for (int i = ENA_IO_IRQ_FIRST_IDX; i < adapter->msix_vecs; i++) {
sys/dev/virtual/amazon/ena/ena.c
2106
irq = &adapter->irq_tbl[i];
sys/dev/virtual/amazon/ena/ena.c
2110
rc = bus_teardown_intr(adapter->pdev, irq->res,
sys/dev/virtual/amazon/ena/ena.c
2113
device_printf(adapter->pdev, "failed to tear "
sys/dev/virtual/amazon/ena/ena.c
2122
rc = bus_release_resource(adapter->pdev, SYS_RES_IRQ,
sys/dev/virtual/amazon/ena/ena.c
2124
pci_release_msix_vector(adapter->pdev, irq->vector);
sys/dev/virtual/amazon/ena/ena.c
2127
device_printf(adapter->pdev, "dev has no parent"
sys/dev/virtual/amazon/ena/ena.c
2136
ena_free_irqs(struct ena_adapter* adapter)
sys/dev/virtual/amazon/ena/ena.c
2139
ena_free_io_irq(adapter);
sys/dev/virtual/amazon/ena/ena.c
2140
ena_free_mgmnt_irq(adapter);
sys/dev/virtual/amazon/ena/ena.c
2141
ena_disable_msix(adapter);
sys/dev/virtual/amazon/ena/ena.c
2145
ena_disable_msix(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
2148
pci_release_msi(adapter->pdev);
sys/dev/virtual/amazon/ena/ena.c
2150
adapter->msix_vecs = 0;
sys/dev/virtual/amazon/ena/ena.c
2151
kfree(adapter->msix_entries, M_DEVBUF);
sys/dev/virtual/amazon/ena/ena.c
2152
adapter->msix_entries = NULL;
sys/dev/virtual/amazon/ena/ena.c
2156
ena_unmask_all_io_irqs(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
2164
for (i = 0; i < adapter->num_queues; i++) {
sys/dev/virtual/amazon/ena/ena.c
2166
io_cq = &adapter->ena_dev->io_cq_queues[ena_qid];
sys/dev/virtual/amazon/ena/ena.c
217
struct ena_adapter* adapter = device_get_softc(dmadev);
sys/dev/virtual/amazon/ena/ena.c
2174
ena_rss_configure(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
2176
struct ena_com_dev *ena_dev = adapter->ena_dev;
sys/dev/virtual/amazon/ena/ena.c
2198
ena_up_complete(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
2202
if (likely(adapter->rss_support)) {
sys/dev/virtual/amazon/ena/ena.c
2203
rc = ena_rss_configure(adapter);
sys/dev/virtual/amazon/ena/ena.c
2208
rc = ena_change_mtu(adapter->ifp, adapter->ifp->if_mtu);
sys/dev/virtual/amazon/ena/ena.c
2212
ena_refill_all_rx_bufs(adapter);
sys/dev/virtual/amazon/ena/ena.c
2214
ena_reset_counters((counter_u64_t *)&adapter->hw_stats,
sys/dev/virtual/amazon/ena/ena.c
2215
sizeof(adapter->hw_stats));
sys/dev/virtual/amazon/ena/ena.c
2222
ena_up(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
2226
if (unlikely(device_is_attached(adapter->pdev) == 0)) {
sys/dev/virtual/amazon/ena/ena.c
2227
device_printf(adapter->pdev, "device is not attached!\n");
sys/dev/virtual/amazon/ena/ena.c
2231
if (unlikely(!adapter->running)) {
sys/dev/virtual/amazon/ena/ena.c
2232
device_printf(adapter->pdev, "device is not running!\n");
sys/dev/virtual/amazon/ena/ena.c
2236
if (!adapter->up) {
sys/dev/virtual/amazon/ena/ena.c
2237
device_printf(adapter->pdev, "device is going UP\n");
sys/dev/virtual/amazon/ena/ena.c
224
dma_space_addr = ENA_DMA_BIT_MASK(adapter->dma_width);
sys/dev/virtual/amazon/ena/ena.c
2240
ena_setup_io_intr(adapter);
sys/dev/virtual/amazon/ena/ena.c
2241
rc = ena_request_io_irq(adapter);
sys/dev/virtual/amazon/ena/ena.c
2248
rc = ena_setup_all_tx_resources(adapter);
sys/dev/virtual/amazon/ena/ena.c
2255
rc = ena_setup_all_rx_resources(adapter);
sys/dev/virtual/amazon/ena/ena.c
2262
rc = ena_create_io_queues(adapter);
sys/dev/virtual/amazon/ena/ena.c
2269
if (unlikely(adapter->link_status)) {
sys/dev/virtual/amazon/ena/ena.c
2270
adapter->ifp->if_link_state = LINK_STATE_UP;
sys/dev/virtual/amazon/ena/ena.c
2271
if_link_state_change(adapter->ifp);
sys/dev/virtual/amazon/ena/ena.c
2274
rc = ena_up_complete(adapter);
sys/dev/virtual/amazon/ena/ena.c
2279
counter_u64_add(adapter->dev_stats.interface_up, 1);
sys/dev/virtual/amazon/ena/ena.c
2282
ena_update_hwassist(adapter);
sys/dev/virtual/amazon/ena/ena.c
2284
adapter->ifp->if_flags |= IFF_RUNNING;
sys/dev/virtual/amazon/ena/ena.c
2285
ifq_clr_oactive(&adapter->ifp->if_snd);
sys/dev/virtual/amazon/ena/ena.c
2287
callout_reset(&adapter->timer_service, hz,
sys/dev/virtual/amazon/ena/ena.c
2288
ena_timer_service, (void *)adapter);
sys/dev/virtual/amazon/ena/ena.c
2290
adapter->up = true;
sys/dev/virtual/amazon/ena/ena.c
2292
ena_unmask_all_io_irqs(adapter);
sys/dev/virtual/amazon/ena/ena.c
2298
ena_destroy_all_io_queues(adapter);
sys/dev/virtual/amazon/ena/ena.c
2300
ena_free_all_rx_resources(adapter);
sys/dev/virtual/amazon/ena/ena.c
2302
ena_free_all_tx_resources(adapter);
sys/dev/virtual/amazon/ena/ena.c
2304
ena_free_io_irq(adapter);
sys/dev/virtual/amazon/ena/ena.c
2313
struct ena_adapter *adapter;
sys/dev/virtual/amazon/ena/ena.c
2316
adapter = ifp->if_softc;
sys/dev/virtual/amazon/ena/ena.c
2317
stats = &adapter->hw_stats;
sys/dev/virtual/amazon/ena/ena.c
2346
struct ena_adapter *adapter = ifp->if_softc;
sys/dev/virtual/amazon/ena/ena.c
2349
lockmgr(&adapter->global_lock, LK_EXCLUSIVE);
sys/dev/virtual/amazon/ena/ena.c
2354
if (!adapter->link_status) {
sys/dev/virtual/amazon/ena/ena.c
2355
lockmgr(&adapter->global_lock, LK_RELEASE);
sys/dev/virtual/amazon/ena/ena.c
2363
lockmgr(&adapter->global_lock, LK_RELEASE);
sys/dev/virtual/amazon/ena/ena.c
2369
struct ena_adapter *adapter = (struct ena_adapter *)arg;
sys/dev/virtual/amazon/ena/ena.c
2371
if (!adapter->up) {
sys/dev/virtual/amazon/ena/ena.c
2372
lockmgr(&adapter->ioctl_lock, LK_EXCLUSIVE);
sys/dev/virtual/amazon/ena/ena.c
2373
ena_up(adapter);
sys/dev/virtual/amazon/ena/ena.c
2374
lockmgr(&adapter->ioctl_lock, LK_RELEASE);
sys/dev/virtual/amazon/ena/ena.c
2381
struct ena_adapter *adapter;
sys/dev/virtual/amazon/ena/ena.c
2385
adapter = ifp->if_softc;
sys/dev/virtual/amazon/ena/ena.c
2394
lockmgr(&adapter->ioctl_lock, LK_EXCLUSIVE);
sys/dev/virtual/amazon/ena/ena.c
2395
ena_down(adapter);
sys/dev/virtual/amazon/ena/ena.c
2399
rc = ena_up(adapter);
sys/dev/virtual/amazon/ena/ena.c
2400
lockmgr(&adapter->ioctl_lock, LK_RELEASE);
sys/dev/virtual/amazon/ena/ena.c
2408
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
2412
lockmgr(&adapter->ioctl_lock, LK_EXCLUSIVE);
sys/dev/virtual/amazon/ena/ena.c
2413
rc = ena_up(adapter);
sys/dev/virtual/amazon/ena/ena.c
2414
lockmgr(&adapter->ioctl_lock, LK_RELEASE);
sys/dev/virtual/amazon/ena/ena.c
2418
lockmgr(&adapter->ioctl_lock, LK_EXCLUSIVE);
sys/dev/virtual/amazon/ena/ena.c
2419
ena_down(adapter);
sys/dev/virtual/amazon/ena/ena.c
2420
lockmgr(&adapter->ioctl_lock, LK_RELEASE);
sys/dev/virtual/amazon/ena/ena.c
2431
rc = ifmedia_ioctl(ifp, ifr, &adapter->media, command);
sys/dev/virtual/amazon/ena/ena.c
2445
lockmgr(&adapter->ioctl_lock, LK_EXCLUSIVE);
sys/dev/virtual/amazon/ena/ena.c
2446
ena_down(adapter);
sys/dev/virtual/amazon/ena/ena.c
2447
rc = ena_up(adapter);
sys/dev/virtual/amazon/ena/ena.c
2448
lockmgr(&adapter->ioctl_lock, LK_RELEASE);
sys/dev/virtual/amazon/ena/ena.c
2512
ena_update_hwassist(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
2514
if_t ifp = adapter->ifp;
sys/dev/virtual/amazon/ena/ena.c
2515
uint32_t feat = adapter->tx_offload_cap;
sys/dev/virtual/amazon/ena/ena.c
2543
ena_setup_ifnet(device_t pdev, struct ena_adapter *adapter,
sys/dev/virtual/amazon/ena/ena.c
2549
ifp = adapter->ifp = if_alloc(IFT_ETHER);
sys/dev/virtual/amazon/ena/ena.c
2555
ifp->if_softc = adapter;
sys/dev/virtual/amazon/ena/ena.c
2566
ifq_set_maxlen(&ifp->if_snd, adapter->tx_ring_size);
sys/dev/virtual/amazon/ena/ena.c
2583
ifp->if_tsolen = adapter->max_tx_sgl_size - 1;
sys/dev/virtual/amazon/ena/ena.c
2593
ifmedia_init(&adapter->media, IFM_IMASK,
sys/dev/virtual/amazon/ena/ena.c
2595
ifmedia_add(&adapter->media, IFM_ETHER | IFM_AUTO, 0, NULL);
sys/dev/virtual/amazon/ena/ena.c
2596
ifmedia_set(&adapter->media, IFM_ETHER | IFM_AUTO);
sys/dev/virtual/amazon/ena/ena.c
2598
ether_ifattach(ifp, adapter->mac_addr, NULL);
sys/dev/virtual/amazon/ena/ena.c
2604
ena_down(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
2608
if (adapter->up) {
sys/dev/virtual/amazon/ena/ena.c
2609
device_printf(adapter->pdev, "device is going DOWN\n");
sys/dev/virtual/amazon/ena/ena.c
2611
callout_drain(&adapter->timer_service);
sys/dev/virtual/amazon/ena/ena.c
2613
adapter->up = false;
sys/dev/virtual/amazon/ena/ena.c
2614
ifq_set_oactive(&adapter->ifp->if_snd);
sys/dev/virtual/amazon/ena/ena.c
2615
adapter->ifp->if_flags &= ~IFF_RUNNING;
sys/dev/virtual/amazon/ena/ena.c
2617
ena_free_io_irq(adapter);
sys/dev/virtual/amazon/ena/ena.c
2619
if (adapter->trigger_reset) {
sys/dev/virtual/amazon/ena/ena.c
2620
rc = ena_com_dev_reset(adapter->ena_dev,
sys/dev/virtual/amazon/ena/ena.c
2621
adapter->reset_reason);
sys/dev/virtual/amazon/ena/ena.c
2623
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
2627
ena_destroy_all_io_queues(adapter);
sys/dev/virtual/amazon/ena/ena.c
2629
ena_free_all_tx_bufs(adapter);
sys/dev/virtual/amazon/ena/ena.c
2630
ena_free_all_rx_bufs(adapter);
sys/dev/virtual/amazon/ena/ena.c
2631
ena_free_all_tx_resources(adapter);
sys/dev/virtual/amazon/ena/ena.c
2632
ena_free_all_rx_resources(adapter);
sys/dev/virtual/amazon/ena/ena.c
2635
counter_u64_add(adapter->dev_stats.interface_down, 1);
sys/dev/virtual/amazon/ena/ena.c
271
ena_allocate_pci_resources(struct ena_adapter* adapter)
sys/dev/virtual/amazon/ena/ena.c
273
device_t pdev = adapter->pdev;
sys/dev/virtual/amazon/ena/ena.c
2734
struct ena_adapter *adapter;
sys/dev/virtual/amazon/ena/ena.c
2738
adapter = tx_ring->adapter;
sys/dev/virtual/amazon/ena/ena.c
2742
if (num_frags < adapter->max_tx_sgl_size)
sys/dev/virtual/amazon/ena/ena.c
2750
IFNET_STAT_INC(tx_ring->adapter->ifp, oerrors, 1);
sys/dev/virtual/amazon/ena/ena.c
2766
struct ena_adapter *adapter;
sys/dev/virtual/amazon/ena/ena.c
277
adapter->memory = NULL;
sys/dev/virtual/amazon/ena/ena.c
278
adapter->registers = bus_alloc_resource_any(pdev, SYS_RES_MEMORY,
sys/dev/virtual/amazon/ena/ena.c
2783
adapter = tx_ring->que->adapter;
sys/dev/virtual/amazon/ena/ena.c
2784
ena_dev = adapter->ena_dev;
sys/dev/virtual/amazon/ena/ena.c
280
if (unlikely(adapter->registers == NULL)) {
sys/dev/virtual/amazon/ena/ena.c
2811
rc = bus_dmamap_load_mbuf_segment(adapter->tx_buf_tag, tx_info->map,
sys/dev/virtual/amazon/ena/ena.c
2812
*mbuf, segs, adapter->max_tx_sgl_size, &nsegs, BUS_DMA_NOWAIT);
sys/dev/virtual/amazon/ena/ena.c
2817
IFNET_STAT_INC(tx_ring->adapter->ifp, oerrors, 1);
sys/dev/virtual/amazon/ena/ena.c
2847
device_printf(adapter->pdev, "failed to prepare tx bufs\n");
sys/dev/virtual/amazon/ena/ena.c
2848
IFNET_STAT_INC(tx_ring->adapter->ifp, oerrors, 1);
sys/dev/virtual/amazon/ena/ena.c
2855
IFNET_STAT_INC(tx_ring->adapter->ifp, opackets, 1);
sys/dev/virtual/amazon/ena/ena.c
2862
counter_u64_add_protected(adapter->hw_stats.tx_packets, 1);
sys/dev/virtual/amazon/ena/ena.c
2863
counter_u64_add_protected(adapter->hw_stats.tx_bytes,
sys/dev/virtual/amazon/ena/ena.c
2875
bus_dmamap_sync(adapter->tx_buf_tag, tx_info->map,
sys/dev/virtual/amazon/ena/ena.c
2882
bus_dmamap_unload(adapter->tx_buf_tag, tx_info->map);
sys/dev/virtual/amazon/ena/ena.c
2894
struct ena_adapter *adapter = ifp->if_softc;
sys/dev/virtual/amazon/ena/ena.c
290
ena_free_pci_resources(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
2901
if (unlikely((adapter->ifp->if_flags & IFF_RUNNING) == 0) ||
sys/dev/virtual/amazon/ena/ena.c
2909
if (unlikely(!adapter->link_status))
sys/dev/virtual/amazon/ena/ena.c
292
device_t pdev = adapter->pdev;
sys/dev/virtual/amazon/ena/ena.c
2926
i = m_head->m_pkthdr.hash % adapter->num_queues;
sys/dev/virtual/amazon/ena/ena.c
2928
tx_ring = &adapter->tx_ring[i];
sys/dev/virtual/amazon/ena/ena.c
2931
io_sq = &adapter->ena_dev->io_sq_queues[ena_qid];
sys/dev/virtual/amazon/ena/ena.c
294
if (adapter->memory != NULL) {
sys/dev/virtual/amazon/ena/ena.c
2954
if (unlikely((adapter->ifp->if_flags & IFF_RUNNING) == 0))
sys/dev/virtual/amazon/ena/ena.c
296
PCIR_BAR(ENA_MEM_BAR), adapter->memory);
sys/dev/virtual/amazon/ena/ena.c
2961
BPF_MTAP(adapter->ifp, m_head);
sys/dev/virtual/amazon/ena/ena.c
299
if (adapter->registers != NULL) {
sys/dev/virtual/amazon/ena/ena.c
2993
ena_calc_io_queue_num(struct ena_adapter *adapter,
sys/dev/virtual/amazon/ena/ena.c
3006
pci_msix_count(adapter->pdev) - 1);
sys/dev/virtual/amazon/ena/ena.c
301
PCIR_BAR(ENA_REG_BAR), adapter->registers);
sys/dev/virtual/amazon/ena/ena.c
3015
ena_calc_queue_size(struct ena_adapter *adapter, uint16_t *max_tx_sgl_size,
sys/dev/virtual/amazon/ena/ena.c
3041
device_printf(adapter->pdev, "Invalid queue size\n");
sys/dev/virtual/amazon/ena/ena.c
3054
ena_rss_init_default(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
3056
struct ena_com_dev *ena_dev = adapter->ena_dev;
sys/dev/virtual/amazon/ena/ena.c
3057
device_t dev = adapter->pdev;
sys/dev/virtual/amazon/ena/ena.c
3069
qid = qid % adapter->num_queues;
sys/dev/virtual/amazon/ena/ena.c
3071
qid = i % adapter->num_queues;
sys/dev/virtual/amazon/ena/ena.c
3104
struct ena_adapter *adapter;
sys/dev/virtual/amazon/ena/ena.c
3117
adapter = devclass_get_softc(dc, max);
sys/dev/virtual/amazon/ena/ena.c
3118
if (adapter != NULL) {
sys/dev/virtual/amazon/ena/ena.c
3119
rc = ena_rss_init_default(adapter);
sys/dev/virtual/amazon/ena/ena.c
3120
adapter->rss_support = true;
sys/dev/virtual/amazon/ena/ena.c
3122
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
3125
adapter->rss_support = false;
sys/dev/virtual/amazon/ena/ena.c
3177
ena_device_init(struct ena_adapter *adapter, device_t pdev,
sys/dev/virtual/amazon/ena/ena.c
3180
struct ena_com_dev* ena_dev = adapter->ena_dev;
sys/dev/virtual/amazon/ena/ena.c
3217
adapter->dma_width = dma_width;
sys/dev/virtual/amazon/ena/ena.c
3266
static int ena_enable_msix_and_set_admin_interrupts(struct ena_adapter *adapter,
sys/dev/virtual/amazon/ena/ena.c
3269
struct ena_com_dev *ena_dev = adapter->ena_dev;
sys/dev/virtual/amazon/ena/ena.c
3272
rc = ena_enable_msix(adapter);
sys/dev/virtual/amazon/ena/ena.c
3274
device_printf(adapter->pdev, "Error with MSI-X enablement\n");
sys/dev/virtual/amazon/ena/ena.c
3278
ena_setup_mgmnt_intr(adapter);
sys/dev/virtual/amazon/ena/ena.c
3280
rc = ena_request_mgmnt_irq(adapter);
sys/dev/virtual/amazon/ena/ena.c
3282
device_printf(adapter->pdev, "Cannot setup mgmnt queue intr\n");
sys/dev/virtual/amazon/ena/ena.c
3286
pci_enable_msix(adapter->pdev);
sys/dev/virtual/amazon/ena/ena.c
3295
ena_disable_msix(adapter);
sys/dev/virtual/amazon/ena/ena.c
3304
struct ena_adapter *adapter = (struct ena_adapter *)adapter_data;
sys/dev/virtual/amazon/ena/ena.c
3312
IFNET_STAT_INC(adapter->ifp, iqdrops, 1);
sys/dev/virtual/amazon/ena/ena.c
3314
counter_u64_zero(adapter->hw_stats.rx_drops);
sys/dev/virtual/amazon/ena/ena.c
3315
counter_u64_add(adapter->hw_stats.rx_drops, rx_drops);
sys/dev/virtual/amazon/ena/ena.c
3319
atomic_store_rel_64(&adapter->keep_alive_timestamp.tv_sec, time.tv_sec);
sys/dev/virtual/amazon/ena/ena.c
3323
static void check_for_missing_keep_alive(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
3327
if (adapter->wd_active == 0)
sys/dev/virtual/amazon/ena/ena.c
3330
if (likely(adapter->keep_alive_timeout == 0))
sys/dev/virtual/amazon/ena/ena.c
3333
timestamp.tv_sec = atomic_load_acq_64(&adapter->keep_alive_timestamp.tv_sec);
sys/dev/virtual/amazon/ena/ena.c
3336
if (unlikely(time.tv_sec > adapter->keep_alive_timeout)) {
sys/dev/virtual/amazon/ena/ena.c
3337
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
3340
counter_u64_add(adapter->dev_stats.wd_expired, 1);
sys/dev/virtual/amazon/ena/ena.c
3342
adapter->reset_reason = ENA_REGS_RESET_KEEP_ALIVE_TO;
sys/dev/virtual/amazon/ena/ena.c
3343
adapter->trigger_reset = true;
sys/dev/virtual/amazon/ena/ena.c
3348
static void check_for_admin_com_state(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
3350
if (unlikely(ena_com_get_admin_running_state(adapter->ena_dev) ==
sys/dev/virtual/amazon/ena/ena.c
3352
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
3355
counter_u64_add(adapter->dev_stats.admin_q_pause, 1);
sys/dev/virtual/amazon/ena/ena.c
3357
adapter->reset_reason = ENA_REGS_RESET_ADMIN_TO;
sys/dev/virtual/amazon/ena/ena.c
3358
adapter->trigger_reset = true;
sys/dev/virtual/amazon/ena/ena.c
3363
check_missing_comp_in_queue(struct ena_adapter *adapter,
sys/dev/virtual/amazon/ena/ena.c
338
struct ena_adapter *adapter = ifp->if_softc;
sys/dev/virtual/amazon/ena/ena.c
3384
if (unlikely(time.tv_sec > adapter->missing_tx_timeout)) {
sys/dev/virtual/amazon/ena/ena.c
3398
adapter->missing_tx_threshold)) {
sys/dev/virtual/amazon/ena/ena.c
3399
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
3403
missed_tx, adapter->missing_tx_threshold);
sys/dev/virtual/amazon/ena/ena.c
3404
adapter->reset_reason =
sys/dev/virtual/amazon/ena/ena.c
3406
adapter->trigger_reset = true;
sys/dev/virtual/amazon/ena/ena.c
341
if ((new_mtu > adapter->max_mtu) || (new_mtu < ENA_MIN_MTU)) {
sys/dev/virtual/amazon/ena/ena.c
342
device_printf(adapter->pdev, "Invalid MTU setting. "
sys/dev/virtual/amazon/ena/ena.c
3422
check_for_missing_tx_completions(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
3430
if (!adapter->up)
sys/dev/virtual/amazon/ena/ena.c
3433
if (adapter->trigger_reset)
sys/dev/virtual/amazon/ena/ena.c
3436
if (adapter->missing_tx_timeout == 0)
sys/dev/virtual/amazon/ena/ena.c
3439
budget = adapter->missing_tx_max_queues;
sys/dev/virtual/amazon/ena/ena.c
344
new_mtu, adapter->max_mtu, ENA_MIN_MTU);
sys/dev/virtual/amazon/ena/ena.c
3441
for (i = adapter->next_monitored_tx_qid; i < adapter->num_queues; i++) {
sys/dev/virtual/amazon/ena/ena.c
3442
tx_ring = &adapter->tx_ring[i];
sys/dev/virtual/amazon/ena/ena.c
3444
rc = check_missing_comp_in_queue(adapter, tx_ring);
sys/dev/virtual/amazon/ena/ena.c
3455
adapter->next_monitored_tx_qid = i % adapter->num_queues;
sys/dev/virtual/amazon/ena/ena.c
3471
check_for_empty_rx_ring(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
3476
if (!adapter->up)
sys/dev/virtual/amazon/ena/ena.c
3479
if (adapter->trigger_reset)
sys/dev/virtual/amazon/ena/ena.c
348
rc = ena_com_set_dev_mtu(adapter->ena_dev, new_mtu);
sys/dev/virtual/amazon/ena/ena.c
3482
for (i = 0; i < adapter->num_queues; i++) {
sys/dev/virtual/amazon/ena/ena.c
3483
rx_ring = &adapter->rx_ring[i];
sys/dev/virtual/amazon/ena/ena.c
3495
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
3511
struct ena_adapter *adapter = (struct ena_adapter *)data;
sys/dev/virtual/amazon/ena/ena.c
3513
adapter->ena_dev->host_attr.host_info;
sys/dev/virtual/amazon/ena/ena.c
3515
check_for_missing_keep_alive(adapter);
sys/dev/virtual/amazon/ena/ena.c
3517
check_for_admin_com_state(adapter);
sys/dev/virtual/amazon/ena/ena.c
3519
check_for_missing_tx_completions(adapter);
sys/dev/virtual/amazon/ena/ena.c
3521
check_for_empty_rx_ring(adapter);
sys/dev/virtual/amazon/ena/ena.c
3524
ena_update_host_info(host_info, adapter->ifp);
sys/dev/virtual/amazon/ena/ena.c
3526
if (unlikely(adapter->trigger_reset)) {
sys/dev/virtual/amazon/ena/ena.c
3527
device_printf(adapter->pdev, "Trigger reset is on\n");
sys/dev/virtual/amazon/ena/ena.c
3528
taskqueue_enqueue(adapter->reset_tq, &adapter->reset_task);
sys/dev/virtual/amazon/ena/ena.c
353
device_printf(adapter->pdev, "Failed to set MTU to %d\n",
sys/dev/virtual/amazon/ena/ena.c
3536
callout_reset(&adapter->timer_service, hz, ena_timer_service,
sys/dev/virtual/amazon/ena/ena.c
3537
(void *)adapter);
sys/dev/virtual/amazon/ena/ena.c
3544
struct ena_adapter *adapter = (struct ena_adapter *)arg;
sys/dev/virtual/amazon/ena/ena.c
3545
struct ena_com_dev *ena_dev = adapter->ena_dev;
sys/dev/virtual/amazon/ena/ena.c
3549
if (unlikely(!adapter->trigger_reset)) {
sys/dev/virtual/amazon/ena/ena.c
3550
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
3555
lockmgr(&adapter->ioctl_lock, LK_EXCLUSIVE);
sys/dev/virtual/amazon/ena/ena.c
3557
callout_drain(&adapter->timer_service);
sys/dev/virtual/amazon/ena/ena.c
3559
dev_up = adapter->up;
sys/dev/virtual/amazon/ena/ena.c
3562
ena_down(adapter);
sys/dev/virtual/amazon/ena/ena.c
3563
ena_free_mgmnt_irq(adapter);
sys/dev/virtual/amazon/ena/ena.c
3564
ena_disable_msix(adapter);
sys/dev/virtual/amazon/ena/ena.c
3570
adapter->reset_reason = ENA_REGS_RESET_NORMAL;
sys/dev/virtual/amazon/ena/ena.c
3571
adapter->trigger_reset = false;
sys/dev/virtual/amazon/ena/ena.c
3574
rc = ena_device_init(adapter, adapter->pdev, &get_feat_ctx,
sys/dev/virtual/amazon/ena/ena.c
3575
&adapter->wd_active);
sys/dev/virtual/amazon/ena/ena.c
3577
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
3582
rc = ena_enable_msix_and_set_admin_interrupts(adapter,
sys/dev/virtual/amazon/ena/ena.c
3583
adapter->num_queues);
sys/dev/virtual/amazon/ena/ena.c
3585
device_printf(adapter->pdev, "Enable MSI-X failed\n");
sys/dev/virtual/amazon/ena/ena.c
3591
rc = ena_up(adapter);
sys/dev/virtual/amazon/ena/ena.c
3593
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
3599
callout_reset(&adapter->timer_service, hz,
sys/dev/virtual/amazon/ena/ena.c
3600
ena_timer_service, (void *)adapter);
sys/dev/virtual/amazon/ena/ena.c
3602
lockmgr(&adapter->ioctl_lock, LK_RELEASE);
sys/dev/virtual/amazon/ena/ena.c
3607
ena_free_mgmnt_irq(adapter);
sys/dev/virtual/amazon/ena/ena.c
3608
ena_disable_msix(adapter);
sys/dev/virtual/amazon/ena/ena.c
3612
device_printf(adapter->pdev, "ENA reset failed!\n");
sys/dev/virtual/amazon/ena/ena.c
3613
adapter->running = false;
sys/dev/virtual/amazon/ena/ena.c
3614
lockmgr(&adapter->ioctl_lock, LK_RELEASE);
sys/dev/virtual/amazon/ena/ena.c
3632
struct ena_adapter *adapter;
sys/dev/virtual/amazon/ena/ena.c
3639
adapter = device_get_softc(pdev);
sys/dev/virtual/amazon/ena/ena.c
3640
adapter->pdev = pdev;
sys/dev/virtual/amazon/ena/ena.c
3642
lockinit(&adapter->global_lock, "ENA global mtx", 0, LK_CANRECURSE);
sys/dev/virtual/amazon/ena/ena.c
3643
lockinit(&adapter->ioctl_lock, "ENA ioctl sx", 0, LK_CANRECURSE);
sys/dev/virtual/amazon/ena/ena.c
3646
callout_init_lk(&adapter->timer_service, &adapter->global_lock);
sys/dev/virtual/amazon/ena/ena.c
3647
adapter->keep_alive_timeout = DEFAULT_KEEP_ALIVE_TO;
sys/dev/virtual/amazon/ena/ena.c
3648
adapter->missing_tx_timeout = DEFAULT_TX_CMP_TO;
sys/dev/virtual/amazon/ena/ena.c
3649
adapter->missing_tx_max_queues = DEFAULT_TX_MONITORED_QUEUES;
sys/dev/virtual/amazon/ena/ena.c
3650
adapter->missing_tx_threshold = DEFAULT_TX_CMP_THRESHOLD;
sys/dev/virtual/amazon/ena/ena.c
3655
rc = ena_allocate_pci_resources(adapter);
sys/dev/virtual/amazon/ena/ena.c
3658
ena_free_pci_resources(adapter);
sys/dev/virtual/amazon/ena/ena.c
3666
adapter->ena_dev = ena_dev;
sys/dev/virtual/amazon/ena/ena.c
3673
rman_get_bustag(adapter->registers);
sys/dev/virtual/amazon/ena/ena.c
3675
rman_get_bushandle(adapter->registers);
sys/dev/virtual/amazon/ena/ena.c
3686
rc = ena_device_init(adapter, pdev, &get_feat_ctx, &adapter->wd_active);
sys/dev/virtual/amazon/ena/ena.c
3693
getmicrouptime(&adapter->keep_alive_timestamp);
sys/dev/virtual/amazon/ena/ena.c
3695
adapter->tx_offload_cap = get_feat_ctx.offload.tx;
sys/dev/virtual/amazon/ena/ena.c
3698
adapter->up = false;
sys/dev/virtual/amazon/ena/ena.c
3700
memcpy(adapter->mac_addr, get_feat_ctx.dev_attr.mac_addr,
sys/dev/virtual/amazon/ena/ena.c
3704
io_queue_num = ena_calc_io_queue_num(adapter, &get_feat_ctx);
sys/dev/virtual/amazon/ena/ena.c
3708
adapter->num_queues = io_queue_num;
sys/dev/virtual/amazon/ena/ena.c
3710
adapter->max_mtu = get_feat_ctx.dev_attr.max_mtu;
sys/dev/virtual/amazon/ena/ena.c
3713
queue_size = ena_calc_queue_size(adapter,&tx_sgl_size,
sys/dev/virtual/amazon/ena/ena.c
3720
adapter->reset_reason = ENA_REGS_RESET_NORMAL;
sys/dev/virtual/amazon/ena/ena.c
3722
adapter->tx_ring_size = queue_size;
sys/dev/virtual/amazon/ena/ena.c
3723
adapter->rx_ring_size = queue_size;
sys/dev/virtual/amazon/ena/ena.c
3725
adapter->max_tx_sgl_size = tx_sgl_size;
sys/dev/virtual/amazon/ena/ena.c
3726
adapter->max_rx_sgl_size = rx_sgl_size;
sys/dev/virtual/amazon/ena/ena.c
3729
rc = ena_setup_tx_dma_tag(adapter);
sys/dev/virtual/amazon/ena/ena.c
3735
rc = ena_setup_rx_dma_tag(adapter);
sys/dev/virtual/amazon/ena/ena.c
3743
ena_init_io_rings(adapter);
sys/dev/virtual/amazon/ena/ena.c
3746
rc = ena_setup_ifnet(pdev, adapter, &get_feat_ctx);
sys/dev/virtual/amazon/ena/ena.c
3752
rc = ena_enable_msix_and_set_admin_interrupts(adapter, io_queue_num);
sys/dev/virtual/amazon/ena/ena.c
3760
TASK_INIT(&adapter->reset_task, 0, ena_reset_task, adapter);
sys/dev/virtual/amazon/ena/ena.c
3761
adapter->reset_tq = taskqueue_create("ena_reset_enqueue",
sys/dev/virtual/amazon/ena/ena.c
3762
M_WAITOK | M_ZERO, taskqueue_thread_enqueue, &adapter->reset_tq);
sys/dev/virtual/amazon/ena/ena.c
3763
taskqueue_start_threads(&adapter->reset_tq, 1, TDPRI_KERN_DAEMON, -1,
sys/dev/virtual/amazon/ena/ena.c
3764
"%s rstq", device_get_nameunit(adapter->pdev));
sys/dev/virtual/amazon/ena/ena.c
3768
ena_alloc_counters((counter_u64_t *)&adapter->dev_stats,
sys/dev/virtual/amazon/ena/ena.c
3770
ena_alloc_counters((counter_u64_t *)&adapter->hw_stats,
sys/dev/virtual/amazon/ena/ena.c
3773
ena_sysctl_add_nodes(adapter);
sys/dev/virtual/amazon/ena/ena.c
3776
ifq_set_oactive(&adapter->ifp->if_snd);
sys/dev/virtual/amazon/ena/ena.c
3777
adapter->ifp->if_flags &= ~IFF_RUNNING;
sys/dev/virtual/amazon/ena/ena.c
3779
adapter->running = true;
sys/dev/virtual/amazon/ena/ena.c
3783
if_detach(adapter->ifp);
sys/dev/virtual/amazon/ena/ena.c
3784
if_free(adapter->ifp);
sys/dev/virtual/amazon/ena/ena.c
3786
ena_free_all_io_rings_resources(adapter);
sys/dev/virtual/amazon/ena/ena.c
3787
ena_free_rx_dma_tag(adapter);
sys/dev/virtual/amazon/ena/ena.c
3789
ena_free_tx_dma_tag(adapter);
sys/dev/virtual/amazon/ena/ena.c
3797
ena_free_pci_resources(adapter);
sys/dev/virtual/amazon/ena/ena.c
3812
struct ena_adapter *adapter = device_get_softc(pdev);
sys/dev/virtual/amazon/ena/ena.c
3813
struct ena_com_dev *ena_dev = adapter->ena_dev;
sys/dev/virtual/amazon/ena/ena.c
3817
if (adapter->ifp->if_vlantrunks != NULL) {
sys/dev/virtual/amazon/ena/ena.c
3818
device_printf(adapter->pdev ,"VLAN is in use, detach first\n");
sys/dev/virtual/amazon/ena/ena.c
3823
callout_drain(&adapter->timer_service);
sys/dev/virtual/amazon/ena/ena.c
3824
while (taskqueue_cancel(adapter->reset_tq, &adapter->reset_task, NULL))
sys/dev/virtual/amazon/ena/ena.c
3825
taskqueue_drain(adapter->reset_tq, &adapter->reset_task);
sys/dev/virtual/amazon/ena/ena.c
3826
taskqueue_free(adapter->reset_tq);
sys/dev/virtual/amazon/ena/ena.c
3828
lockmgr(&adapter->ioctl_lock, LK_EXCLUSIVE);
sys/dev/virtual/amazon/ena/ena.c
3829
ena_down(adapter);
sys/dev/virtual/amazon/ena/ena.c
3830
lockmgr(&adapter->ioctl_lock, LK_RELEASE);
sys/dev/virtual/amazon/ena/ena.c
3832
if (adapter->ifp != NULL) {
sys/dev/virtual/amazon/ena/ena.c
3833
ether_ifdetach(adapter->ifp);
sys/dev/virtual/amazon/ena/ena.c
3834
if_free(adapter->ifp);
sys/dev/virtual/amazon/ena/ena.c
3837
ena_free_all_io_rings_resources(adapter);
sys/dev/virtual/amazon/ena/ena.c
3840
ena_free_counters((counter_u64_t *)&adapter->hw_stats,
sys/dev/virtual/amazon/ena/ena.c
3842
ena_free_counters((counter_u64_t *)&adapter->dev_stats,
sys/dev/virtual/amazon/ena/ena.c
3846
if (likely(adapter->rss_support))
sys/dev/virtual/amazon/ena/ena.c
3849
rc = ena_free_rx_dma_tag(adapter);
sys/dev/virtual/amazon/ena/ena.c
3851
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
3854
rc = ena_free_tx_dma_tag(adapter);
sys/dev/virtual/amazon/ena/ena.c
3856
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
3860
if (adapter->running)
sys/dev/virtual/amazon/ena/ena.c
3861
ena_com_dev_reset(ena_dev, adapter->reset_reason);
sys/dev/virtual/amazon/ena/ena.c
3865
ena_free_irqs(adapter);
sys/dev/virtual/amazon/ena/ena.c
3875
ena_free_pci_resources(adapter);
sys/dev/virtual/amazon/ena/ena.c
3877
lockuninit(&adapter->global_lock);
sys/dev/virtual/amazon/ena/ena.c
3878
lockuninit(&adapter->ioctl_lock);
sys/dev/virtual/amazon/ena/ena.c
390
ena_init_io_rings_common(struct ena_adapter *adapter, struct ena_ring *ring,
sys/dev/virtual/amazon/ena/ena.c
3900
struct ena_adapter *adapter = (struct ena_adapter *)adapter_data;
sys/dev/virtual/amazon/ena/ena.c
3906
ifp = adapter->ifp;
sys/dev/virtual/amazon/ena/ena.c
3911
device_printf(adapter->pdev, "link is UP\n");
sys/dev/virtual/amazon/ena/ena.c
3915
device_printf(adapter->pdev, "link is DOWN\n");
sys/dev/virtual/amazon/ena/ena.c
3919
device_printf(adapter->pdev, "invalid value recvd\n");
sys/dev/virtual/amazon/ena/ena.c
3923
adapter->link_status = status;
sys/dev/virtual/amazon/ena/ena.c
395
ring->adapter = adapter;
sys/dev/virtual/amazon/ena/ena.c
396
ring->ena_dev = adapter->ena_dev;
sys/dev/virtual/amazon/ena/ena.c
400
ena_init_io_rings(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
407
ena_dev = adapter->ena_dev;
sys/dev/virtual/amazon/ena/ena.c
409
for (i = 0; i < adapter->num_queues; i++) {
sys/dev/virtual/amazon/ena/ena.c
410
txr = &adapter->tx_ring[i];
sys/dev/virtual/amazon/ena/ena.c
411
rxr = &adapter->rx_ring[i];
sys/dev/virtual/amazon/ena/ena.c
414
ena_init_io_rings_common(adapter, txr, i);
sys/dev/virtual/amazon/ena/ena.c
415
ena_init_io_rings_common(adapter, rxr, i);
sys/dev/virtual/amazon/ena/ena.c
418
txr->ring_size = adapter->tx_ring_size;
sys/dev/virtual/amazon/ena/ena.c
431
rxr->ring_size = adapter->rx_ring_size;
sys/dev/virtual/amazon/ena/ena.c
443
device_get_nameunit(adapter->pdev), i);
sys/dev/virtual/amazon/ena/ena.c
445
device_get_nameunit(adapter->pdev), i);
sys/dev/virtual/amazon/ena/ena.c
450
que = &adapter->que[i];
sys/dev/virtual/amazon/ena/ena.c
451
que->adapter = adapter;
sys/dev/virtual/amazon/ena/ena.c
464
ena_free_io_ring_resources(struct ena_adapter *adapter, unsigned int qid)
sys/dev/virtual/amazon/ena/ena.c
466
struct ena_ring *txr = &adapter->tx_ring[qid];
sys/dev/virtual/amazon/ena/ena.c
467
struct ena_ring *rxr = &adapter->rx_ring[qid];
sys/dev/virtual/amazon/ena/ena.c
481
ena_free_all_io_rings_resources(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
485
for (i = 0; i < adapter->num_queues; i++)
sys/dev/virtual/amazon/ena/ena.c
486
ena_free_io_ring_resources(adapter, i);
sys/dev/virtual/amazon/ena/ena.c
491
ena_setup_tx_dma_tag(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
496
ret = bus_dma_tag_create(bus_get_dma_tag(adapter->pdev),
sys/dev/virtual/amazon/ena/ena.c
498
ENA_DMA_BIT_MASK(adapter->dma_width), /* lowaddr of excl window */
sys/dev/virtual/amazon/ena/ena.c
504
&adapter->tx_buf_tag);
sys/dev/virtual/amazon/ena/ena.c
510
ena_free_tx_dma_tag(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
514
ret = bus_dma_tag_destroy(adapter->tx_buf_tag);
sys/dev/virtual/amazon/ena/ena.c
517
adapter->tx_buf_tag = NULL;
sys/dev/virtual/amazon/ena/ena.c
523
ena_setup_rx_dma_tag(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
528
ret = bus_dma_tag_create(bus_get_dma_tag(adapter->pdev), /* parent */
sys/dev/virtual/amazon/ena/ena.c
530
ENA_DMA_BIT_MASK(adapter->dma_width), /* lowaddr of excl window */
sys/dev/virtual/amazon/ena/ena.c
533
adapter->max_rx_sgl_size, /* nsegments */
sys/dev/virtual/amazon/ena/ena.c
536
&adapter->rx_buf_tag);
sys/dev/virtual/amazon/ena/ena.c
542
ena_free_rx_dma_tag(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
546
ret = bus_dma_tag_destroy(adapter->rx_buf_tag);
sys/dev/virtual/amazon/ena/ena.c
549
adapter->rx_buf_tag = NULL;
sys/dev/virtual/amazon/ena/ena.c
562
ena_setup_tx_resources(struct ena_adapter *adapter, int qid)
sys/dev/virtual/amazon/ena/ena.c
564
struct ena_que *que = &adapter->que[qid];
sys/dev/virtual/amazon/ena/ena.c
597
err = bus_dmamap_create(adapter->tx_buf_tag, 0,
sys/dev/virtual/amazon/ena/ena.c
610
bus_dmamap_destroy(adapter->tx_buf_tag,
sys/dev/virtual/amazon/ena/ena.c
630
ena_free_tx_resources(struct ena_adapter *adapter, int qid)
sys/dev/virtual/amazon/ena/ena.c
632
struct ena_ring *tx_ring = &adapter->tx_ring[qid];
sys/dev/virtual/amazon/ena/ena.c
640
bus_dmamap_unload(adapter->tx_buf_tag,
sys/dev/virtual/amazon/ena/ena.c
642
bus_dmamap_destroy(adapter->tx_buf_tag,
sys/dev/virtual/amazon/ena/ena.c
662
ena_setup_all_tx_resources(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
666
for (i = 0; i < adapter->num_queues; i++) {
sys/dev/virtual/amazon/ena/ena.c
667
rc = ena_setup_tx_resources(adapter, i);
sys/dev/virtual/amazon/ena/ena.c
669
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
680
ena_free_tx_resources(adapter, i);
sys/dev/virtual/amazon/ena/ena.c
691
ena_free_all_tx_resources(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
695
for (i = 0; i < adapter->num_queues; i++)
sys/dev/virtual/amazon/ena/ena.c
696
ena_free_tx_resources(adapter, i);
sys/dev/virtual/amazon/ena/ena.c
705
device_printf(rx_ring->adapter->pdev, "Invalid rx req_id: %hu\n",
sys/dev/virtual/amazon/ena/ena.c
707
IFNET_STAT_INC(rx_ring->adapter->ifp, ierrors, 1);
sys/dev/virtual/amazon/ena/ena.c
713
rx_ring->adapter->reset_reason = ENA_REGS_RESET_INV_RX_REQ_ID;
sys/dev/virtual/amazon/ena/ena.c
714
rx_ring->adapter->trigger_reset = true;
sys/dev/virtual/amazon/ena/ena.c
727
ena_setup_rx_resources(struct ena_adapter *adapter, unsigned int qid)
sys/dev/virtual/amazon/ena/ena.c
729
struct ena_que *que = &adapter->que[qid];
sys/dev/virtual/amazon/ena/ena.c
763
err = bus_dmamap_create(adapter->rx_buf_tag, 0,
sys/dev/virtual/amazon/ena/ena.c
774
if ((adapter->ifp->if_capenable & IFCAP_LRO) != 0) {
sys/dev/virtual/amazon/ena/ena.c
777
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
782
rx_ring->lro.ifp = adapter->ifp;
sys/dev/virtual/amazon/ena/ena.c
797
device_get_nameunit(adapter->pdev), que->cpu);
sys/dev/virtual/amazon/ena/ena.c
800
"%s rx_ring cmpl", device_get_nameunit(adapter->pdev));
sys/dev/virtual/amazon/ena/ena.c
807
bus_dmamap_destroy(adapter->rx_buf_tag,
sys/dev/virtual/amazon/ena/ena.c
826
ena_free_rx_resources(struct ena_adapter *adapter, unsigned int qid)
sys/dev/virtual/amazon/ena/ena.c
828
struct ena_ring *rx_ring = &adapter->rx_ring[qid];
sys/dev/virtual/amazon/ena/ena.c
839
bus_dmamap_unload(adapter->rx_buf_tag,
sys/dev/virtual/amazon/ena/ena.c
841
bus_dmamap_destroy(adapter->rx_buf_tag,
sys/dev/virtual/amazon/ena/ena.c
865
ena_setup_all_rx_resources(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
869
for (i = 0; i < adapter->num_queues; i++) {
sys/dev/virtual/amazon/ena/ena.c
870
rc = ena_setup_rx_resources(adapter, i);
sys/dev/virtual/amazon/ena/ena.c
872
device_printf(adapter->pdev,
sys/dev/virtual/amazon/ena/ena.c
882
ena_free_rx_resources(adapter, i);
sys/dev/virtual/amazon/ena/ena.c
893
ena_free_all_rx_resources(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena.c
897
for (i = 0; i < adapter->num_queues; i++)
sys/dev/virtual/amazon/ena/ena.c
898
ena_free_rx_resources(adapter, i);
sys/dev/virtual/amazon/ena/ena.c
902
ena_alloc_rx_mbuf(struct ena_adapter *adapter,
sys/dev/virtual/amazon/ena/ena.c
923
IFNET_STAT_INC(rx_ring->adapter->ifp, ierrors, 1);
sys/dev/virtual/amazon/ena/ena.c
939
adapter->rx_buf_tag,rx_info->mbuf, rx_info->mbuf->m_len);
sys/dev/virtual/amazon/ena/ena.c
940
error = bus_dmamap_load_mbuf_segment(adapter->rx_buf_tag, rx_info->map,
sys/dev/virtual/amazon/ena/ena.c
945
IFNET_STAT_INC(rx_ring->adapter->ifp, ierrors, 1);
sys/dev/virtual/amazon/ena/ena.c
953
bus_dmamap_sync(adapter->rx_buf_tag, rx_info->map, BUS_DMASYNC_PREREAD);
sys/dev/virtual/amazon/ena/ena.c
972
ena_free_rx_mbuf(struct ena_adapter *adapter, struct ena_ring *rx_ring,
sys/dev/virtual/amazon/ena/ena.c
981
bus_dmamap_unload(adapter->rx_buf_tag, rx_info->map);
sys/dev/virtual/amazon/ena/ena.c
995
struct ena_adapter *adapter = rx_ring->adapter;
sys/dev/virtual/amazon/ena/ena.h
178
struct ena_adapter *adapter;
sys/dev/virtual/amazon/ena/ena.h
241
struct ena_adapter *adapter;
sys/dev/virtual/amazon/ena/ena_sysctl.c
114
dev = adapter->pdev;
sys/dev/virtual/amazon/ena/ena_sysctl.c
120
tx_ring = adapter->tx_ring;
sys/dev/virtual/amazon/ena/ena_sysctl.c
121
rx_ring = adapter->rx_ring;
sys/dev/virtual/amazon/ena/ena_sysctl.c
123
hw_stats = &adapter->hw_stats;
sys/dev/virtual/amazon/ena/ena_sysctl.c
124
dev_stats = &adapter->dev_stats;
sys/dev/virtual/amazon/ena/ena_sysctl.c
125
admin_stats = &adapter->ena_dev->admin_queue.stats;
sys/dev/virtual/amazon/ena/ena_sysctl.c
140
for (i = 0; i < adapter->num_queues; ++i, ++tx_ring, ++rx_ring) {
sys/dev/virtual/amazon/ena/ena_sysctl.c
41
ena_sysctl_add_nodes(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena_sysctl.c
43
ena_sysctl_add_wd(adapter);
sys/dev/virtual/amazon/ena/ena_sysctl.c
45
ena_sysctl_add_stats(adapter);
sys/dev/virtual/amazon/ena/ena_sysctl.c
50
ena_sysctl_add_wd(struct ena_adapter *adapter)
sys/dev/virtual/amazon/ena/ena_sysctl.c
58
dev = adapter->pdev;
sys/dev/virtual/amazon/ena/ena_sysctl.c
66
CTLFLAG_RW, &adapter->wd_active, 0,
sys/dev/virtual/amazon/ena/ena_sysctl.c
70
CTLFLAG_RW, &adapter->keep_alive_timeout, 0,
sys/dev/virtual/amazon/ena/ena_sysctl.c
74
CTLFLAG_RW, &adapter->missing_tx_timeout, 0,
sys/dev/virtual/amazon/ena/ena_sysctl.c
78
CTLFLAG_RW, &adapter->missing_tx_max_queues,
sys/dev/virtual/amazon/ena/ena_sysctl.c
82
CTLFLAG_RW, &adapter->missing_tx_threshold,
sys/dev/virtual/amazon/ena/ena_sysctl.c
88
ena_sysctl_add_stats(struct ena_adapter *adapter)
usr.sbin/mfiutil/mfi_show.c
137
MFI_COMMAND(show, adapter, show_adapter);
usr.sbin/mpsutil/mps_show.c
199
MPS_COMMAND(show, adapter, show_adapter, "", "display controller information")
usr.sbin/mptutil/mpt_show.c
189
MPT_COMMAND(show, adapter, show_adapter);