Lines Matching refs:nic_data
230 struct siena_nic_data *nic_data = efx->nic_data; in efx_siena_sriov_usrev() local
235 FRF_CZ_DFLT_EVQ, nic_data->vfdi_channel->channel); in efx_siena_sriov_usrev()
386 struct siena_nic_data *nic_data = efx->nic_data; in __efx_siena_sriov_update_vf_addr() local
390 queue_work(vfdi_workqueue, &nic_data->peer_work); in __efx_siena_sriov_update_vf_addr()
401 struct siena_nic_data *nic_data = efx->nic_data; in __efx_siena_sriov_push_vf_status() local
402 struct vfdi_status *status = nic_data->vfdi_status.addr; in __efx_siena_sriov_push_vf_status()
428 copy[1].from_addr = nic_data->vfdi_status.dma_addr + data_offset; in __efx_siena_sriov_push_vf_status()
436 list_for_each_entry(epp, &nic_data->local_page_list, link) { in __efx_siena_sriov_push_vf_status()
512 struct siena_nic_data *nic_data = efx->nic_data; in map_vi_index() local
522 *vf_out = nic_data->vf + vf_i; in map_vi_index()
762 struct siena_nic_data *nic_data = efx->nic_data; in efx_vfdi_insert_filter() local
786 queue_work(vfdi_workqueue, &nic_data->peer_work); in efx_vfdi_insert_filter()
794 struct siena_nic_data *nic_data = efx->nic_data; in efx_vfdi_remove_all_filters() local
798 queue_work(vfdi_workqueue, &nic_data->peer_work); in efx_vfdi_remove_all_filters()
806 struct siena_nic_data *nic_data = efx->nic_data; in efx_vfdi_set_status_page() local
822 mutex_lock(&nic_data->local_lock); in efx_vfdi_set_status_page()
843 mutex_unlock(&nic_data->local_lock); in efx_vfdi_set_status_page()
1029 struct siena_nic_data *nic_data = channel->efx->nic_data; in efx_siena_sriov_probe_channel() local
1030 nic_data->vfdi_channel = channel; in efx_siena_sriov_probe_channel()
1077 struct siena_nic_data *nic_data = container_of(data, in efx_siena_sriov_peer_work() local
1080 struct efx_nic *efx = nic_data->efx; in efx_siena_sriov_peer_work()
1081 struct vfdi_status *vfdi_status = nic_data->vfdi_status.addr; in efx_siena_sriov_peer_work()
1091 mutex_lock(&nic_data->local_lock); in efx_siena_sriov_peer_work()
1095 list_splice_tail_init(&nic_data->local_page_list, &pages); in efx_siena_sriov_peer_work()
1104 vf = nic_data->vf + pos; in efx_siena_sriov_peer_work()
1117 list_for_each_entry(local_addr, &nic_data->local_addr_list, link) { in efx_siena_sriov_peer_work()
1140 list_add_tail(&epp->link, &nic_data->local_page_list); in efx_siena_sriov_peer_work()
1146 mutex_unlock(&nic_data->local_lock); in efx_siena_sriov_peer_work()
1160 vf = nic_data->vf + pos; in efx_siena_sriov_peer_work()
1171 struct siena_nic_data *nic_data = efx->nic_data; in efx_siena_sriov_free_local() local
1175 while (!list_empty(&nic_data->local_addr_list)) { in efx_siena_sriov_free_local()
1176 local_addr = list_first_entry(&nic_data->local_addr_list, in efx_siena_sriov_free_local()
1182 while (!list_empty(&nic_data->local_page_list)) { in efx_siena_sriov_free_local()
1183 epp = list_first_entry(&nic_data->local_page_list, in efx_siena_sriov_free_local()
1196 struct siena_nic_data *nic_data = efx->nic_data; in efx_siena_sriov_vf_alloc() local
1198 nic_data->vf = kcalloc(efx->vf_count, sizeof(*nic_data->vf), in efx_siena_sriov_vf_alloc()
1200 if (!nic_data->vf) in efx_siena_sriov_vf_alloc()
1204 vf = nic_data->vf + index; in efx_siena_sriov_vf_alloc()
1223 struct siena_nic_data *nic_data = efx->nic_data; in efx_siena_sriov_vfs_fini() local
1228 vf = nic_data->vf + pos; in efx_siena_sriov_vfs_fini()
1242 struct siena_nic_data *nic_data = efx->nic_data; in efx_siena_sriov_vfs_init() local
1255 buftbl_base = nic_data->vf_buftbl_base; in efx_siena_sriov_vfs_init()
1258 vf = nic_data->vf + index; in efx_siena_sriov_vfs_init()
1288 struct siena_nic_data *nic_data = efx->nic_data; in efx_siena_sriov_init() local
1304 rc = efx_nic_alloc_buffer(efx, &nic_data->vfdi_status, in efx_siena_sriov_init()
1308 vfdi_status = nic_data->vfdi_status.addr; in efx_siena_sriov_init()
1322 mutex_init(&nic_data->local_lock); in efx_siena_sriov_init()
1323 INIT_WORK(&nic_data->peer_work, efx_siena_sriov_peer_work); in efx_siena_sriov_init()
1324 INIT_LIST_HEAD(&nic_data->local_addr_list); in efx_siena_sriov_init()
1325 INIT_LIST_HEAD(&nic_data->local_page_list); in efx_siena_sriov_init()
1356 cancel_work_sync(&nic_data->peer_work); in efx_siena_sriov_init()
1358 kfree(nic_data->vf); in efx_siena_sriov_init()
1360 efx_nic_free_buffer(efx, &nic_data->vfdi_status); in efx_siena_sriov_init()
1371 struct siena_nic_data *nic_data = efx->nic_data; in efx_siena_sriov_fini() local
1377 BUG_ON(nic_data->vfdi_channel->enabled); in efx_siena_sriov_fini()
1385 vf = nic_data->vf + pos; in efx_siena_sriov_fini()
1389 cancel_work_sync(&nic_data->peer_work); in efx_siena_sriov_fini()
1396 kfree(nic_data->vf); in efx_siena_sriov_fini()
1397 efx_nic_free_buffer(efx, &nic_data->vfdi_status); in efx_siena_sriov_fini()
1460 struct siena_nic_data *nic_data = efx->nic_data; in efx_siena_sriov_flr() local
1465 vf = nic_data->vf + vf_i; in efx_siena_sriov_flr()
1478 struct siena_nic_data *nic_data = efx->nic_data; in efx_siena_sriov_mac_address_changed() local
1479 struct vfdi_status *vfdi_status = nic_data->vfdi_status.addr; in efx_siena_sriov_mac_address_changed()
1485 queue_work(vfdi_workqueue, &nic_data->peer_work); in efx_siena_sriov_mac_address_changed()
1552 struct siena_nic_data *nic_data = efx->nic_data; in efx_siena_sriov_reset() local
1569 vf = nic_data->vf + vf_i; in efx_siena_sriov_reset()
1595 struct siena_nic_data *nic_data = efx->nic_data; in efx_siena_sriov_set_vf_mac() local
1600 vf = nic_data->vf + vf_i; in efx_siena_sriov_set_vf_mac()
1613 struct siena_nic_data *nic_data = efx->nic_data; in efx_siena_sriov_set_vf_vlan() local
1619 vf = nic_data->vf + vf_i; in efx_siena_sriov_set_vf_vlan()
1633 struct siena_nic_data *nic_data = efx->nic_data; in efx_siena_sriov_set_vf_spoofchk() local
1639 vf = nic_data->vf + vf_i; in efx_siena_sriov_set_vf_spoofchk()
1657 struct siena_nic_data *nic_data = efx->nic_data; in efx_siena_sriov_get_vf_config() local
1663 vf = nic_data->vf + vf_i; in efx_siena_sriov_get_vf_config()