mcdi 514 drivers/net/ethernet/sfc/ef10.c ((efx->mcdi->fn_flags) & mcdi 526 drivers/net/ethernet/sfc/ef10.c ((efx->mcdi->fn_flags) & mcdi 1799 drivers/net/ethernet/sfc/ef10.c if (!(efx->mcdi->fn_flags & mcdi 2531 drivers/net/ethernet/sfc/efx.c struct efx_mcdi_iface *mcdi = efx_mcdi(efx); mcdi 2533 drivers/net/ethernet/sfc/efx.c return scnprintf(buf, PAGE_SIZE, "%d\n", mcdi->logging_enabled); mcdi 2539 drivers/net/ethernet/sfc/efx.c struct efx_mcdi_iface *mcdi = efx_mcdi(efx); mcdi 2542 drivers/net/ethernet/sfc/efx.c mcdi->logging_enabled = enable; mcdi 63 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi; mcdi 67 drivers/net/ethernet/sfc/mcdi.c efx->mcdi = kzalloc(sizeof(*efx->mcdi), GFP_KERNEL); mcdi 68 drivers/net/ethernet/sfc/mcdi.c if (!efx->mcdi) mcdi 71 drivers/net/ethernet/sfc/mcdi.c mcdi = efx_mcdi(efx); mcdi 72 drivers/net/ethernet/sfc/mcdi.c mcdi->efx = efx; mcdi 75 drivers/net/ethernet/sfc/mcdi.c mcdi->logging_buffer = (char *)__get_free_page(GFP_KERNEL); mcdi 76 drivers/net/ethernet/sfc/mcdi.c if (!mcdi->logging_buffer) mcdi 78 drivers/net/ethernet/sfc/mcdi.c mcdi->logging_enabled = mcdi_logging_default; mcdi 80 drivers/net/ethernet/sfc/mcdi.c init_waitqueue_head(&mcdi->wq); mcdi 81 drivers/net/ethernet/sfc/mcdi.c init_waitqueue_head(&mcdi->proxy_rx_wq); mcdi 82 drivers/net/ethernet/sfc/mcdi.c spin_lock_init(&mcdi->iface_lock); mcdi 83 drivers/net/ethernet/sfc/mcdi.c mcdi->state = MCDI_STATE_QUIESCENT; mcdi 84 drivers/net/ethernet/sfc/mcdi.c mcdi->mode = MCDI_MODE_POLL; mcdi 85 drivers/net/ethernet/sfc/mcdi.c spin_lock_init(&mcdi->async_lock); mcdi 86 drivers/net/ethernet/sfc/mcdi.c INIT_LIST_HEAD(&mcdi->async_list); mcdi 87 drivers/net/ethernet/sfc/mcdi.c timer_setup(&mcdi->async_timer, efx_mcdi_timeout_async, 0); mcdi 90 drivers/net/ethernet/sfc/mcdi.c mcdi->new_epoch = true; mcdi 111 drivers/net/ethernet/sfc/mcdi.c if (efx->mcdi->fn_flags & mcdi 118 drivers/net/ethernet/sfc/mcdi.c free_page((unsigned long)mcdi->logging_buffer); mcdi 121 drivers/net/ethernet/sfc/mcdi.c kfree(efx->mcdi); mcdi 122 drivers/net/ethernet/sfc/mcdi.c efx->mcdi = NULL; mcdi 129 drivers/net/ethernet/sfc/mcdi.c if (!efx->mcdi) mcdi 132 drivers/net/ethernet/sfc/mcdi.c BUG_ON(efx->mcdi->iface.state != MCDI_STATE_QUIESCENT); mcdi 140 drivers/net/ethernet/sfc/mcdi.c if (!efx->mcdi) mcdi 144 drivers/net/ethernet/sfc/mcdi.c free_page((unsigned long)efx->mcdi->iface.logging_buffer); mcdi 147 drivers/net/ethernet/sfc/mcdi.c kfree(efx->mcdi); mcdi 153 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi = efx_mcdi(efx); mcdi 155 drivers/net/ethernet/sfc/mcdi.c char *buf = mcdi->logging_buffer; /* page-sized */ mcdi 161 drivers/net/ethernet/sfc/mcdi.c BUG_ON(mcdi->state == MCDI_STATE_QUIESCENT); mcdi 164 drivers/net/ethernet/sfc/mcdi.c spin_lock_bh(&mcdi->iface_lock); mcdi 165 drivers/net/ethernet/sfc/mcdi.c ++mcdi->seqno; mcdi 166 drivers/net/ethernet/sfc/mcdi.c spin_unlock_bh(&mcdi->iface_lock); mcdi 168 drivers/net/ethernet/sfc/mcdi.c seqno = mcdi->seqno & SEQ_MASK; mcdi 170 drivers/net/ethernet/sfc/mcdi.c if (mcdi->mode == MCDI_MODE_EVENTS) mcdi 182 drivers/net/ethernet/sfc/mcdi.c MCDI_HEADER_NOT_EPOCH, !mcdi->new_epoch); mcdi 194 drivers/net/ethernet/sfc/mcdi.c MCDI_HEADER_NOT_EPOCH, !mcdi->new_epoch); mcdi 202 drivers/net/ethernet/sfc/mcdi.c if (mcdi->logging_enabled && !WARN_ON_ONCE(!buf)) { mcdi 228 drivers/net/ethernet/sfc/mcdi.c mcdi->new_epoch = false; mcdi 265 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi = efx_mcdi(efx); mcdi 268 drivers/net/ethernet/sfc/mcdi.c char *buf = mcdi->logging_buffer; /* page-sized */ mcdi 278 drivers/net/ethernet/sfc/mcdi.c mcdi->resp_hdr_len = 4; mcdi 279 drivers/net/ethernet/sfc/mcdi.c mcdi->resp_data_len = EFX_DWORD_FIELD(hdr, MCDI_HEADER_DATALEN); mcdi 282 drivers/net/ethernet/sfc/mcdi.c mcdi->resp_hdr_len = 8; mcdi 283 drivers/net/ethernet/sfc/mcdi.c mcdi->resp_data_len = mcdi 288 drivers/net/ethernet/sfc/mcdi.c if (mcdi->logging_enabled && !WARN_ON_ONCE(!buf)) { mcdi 293 drivers/net/ethernet/sfc/mcdi.c WARN_ON_ONCE(mcdi->resp_hdr_len % 4); mcdi 294 drivers/net/ethernet/sfc/mcdi.c hdr_len = mcdi->resp_hdr_len / 4; mcdi 298 drivers/net/ethernet/sfc/mcdi.c data_len = DIV_ROUND_UP(mcdi->resp_data_len, 4); mcdi 311 drivers/net/ethernet/sfc/mcdi.c mcdi->resp_hdr_len + (i * 4), 4); mcdi 320 drivers/net/ethernet/sfc/mcdi.c mcdi->resprc_raw = 0; mcdi 321 drivers/net/ethernet/sfc/mcdi.c if (error && mcdi->resp_data_len == 0) { mcdi 323 drivers/net/ethernet/sfc/mcdi.c mcdi->resprc = -EIO; mcdi 324 drivers/net/ethernet/sfc/mcdi.c } else if ((respseq ^ mcdi->seqno) & SEQ_MASK) { mcdi 327 drivers/net/ethernet/sfc/mcdi.c respseq, mcdi->seqno); mcdi 328 drivers/net/ethernet/sfc/mcdi.c mcdi->resprc = -EIO; mcdi 330 drivers/net/ethernet/sfc/mcdi.c efx->type->mcdi_read_response(efx, &hdr, mcdi->resp_hdr_len, 4); mcdi 331 drivers/net/ethernet/sfc/mcdi.c mcdi->resprc_raw = EFX_DWORD_FIELD(hdr, EFX_DWORD_0); mcdi 332 drivers/net/ethernet/sfc/mcdi.c mcdi->resprc = efx_mcdi_errno(mcdi->resprc_raw); mcdi 334 drivers/net/ethernet/sfc/mcdi.c mcdi->resprc = 0; mcdi 340 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi = efx_mcdi(efx); mcdi 346 drivers/net/ethernet/sfc/mcdi.c spin_lock_bh(&mcdi->iface_lock); mcdi 348 drivers/net/ethernet/sfc/mcdi.c spin_unlock_bh(&mcdi->iface_lock); mcdi 355 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi = efx_mcdi(efx); mcdi 363 drivers/net/ethernet/sfc/mcdi.c spin_lock_bh(&mcdi->iface_lock); mcdi 364 drivers/net/ethernet/sfc/mcdi.c mcdi->resprc = rc; mcdi 365 drivers/net/ethernet/sfc/mcdi.c mcdi->resp_hdr_len = 0; mcdi 366 drivers/net/ethernet/sfc/mcdi.c mcdi->resp_data_len = 0; mcdi 367 drivers/net/ethernet/sfc/mcdi.c spin_unlock_bh(&mcdi->iface_lock); mcdi 404 drivers/net/ethernet/sfc/mcdi.c if (!efx->mcdi) mcdi 410 drivers/net/ethernet/sfc/mcdi.c static bool efx_mcdi_acquire_async(struct efx_mcdi_iface *mcdi) mcdi 412 drivers/net/ethernet/sfc/mcdi.c return cmpxchg(&mcdi->state, mcdi 417 drivers/net/ethernet/sfc/mcdi.c static void efx_mcdi_acquire_sync(struct efx_mcdi_iface *mcdi) mcdi 422 drivers/net/ethernet/sfc/mcdi.c wait_event(mcdi->wq, mcdi 423 drivers/net/ethernet/sfc/mcdi.c cmpxchg(&mcdi->state, mcdi 430 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi = efx_mcdi(efx); mcdi 432 drivers/net/ethernet/sfc/mcdi.c if (wait_event_timeout(mcdi->wq, mcdi->state == MCDI_STATE_COMPLETED, mcdi 444 drivers/net/ethernet/sfc/mcdi.c if (mcdi->mode == MCDI_MODE_POLL) mcdi 453 drivers/net/ethernet/sfc/mcdi.c static bool efx_mcdi_complete_sync(struct efx_mcdi_iface *mcdi) mcdi 455 drivers/net/ethernet/sfc/mcdi.c if (cmpxchg(&mcdi->state, mcdi 458 drivers/net/ethernet/sfc/mcdi.c wake_up(&mcdi->wq); mcdi 465 drivers/net/ethernet/sfc/mcdi.c static void efx_mcdi_release(struct efx_mcdi_iface *mcdi) mcdi 467 drivers/net/ethernet/sfc/mcdi.c if (mcdi->mode == MCDI_MODE_EVENTS) { mcdi 469 drivers/net/ethernet/sfc/mcdi.c struct efx_nic *efx = mcdi->efx; mcdi 472 drivers/net/ethernet/sfc/mcdi.c spin_lock_bh(&mcdi->async_lock); mcdi 474 drivers/net/ethernet/sfc/mcdi.c &mcdi->async_list, struct efx_mcdi_async_param, list); mcdi 476 drivers/net/ethernet/sfc/mcdi.c mcdi->state = MCDI_STATE_RUNNING_ASYNC; mcdi 480 drivers/net/ethernet/sfc/mcdi.c mod_timer(&mcdi->async_timer, mcdi 483 drivers/net/ethernet/sfc/mcdi.c spin_unlock_bh(&mcdi->async_lock); mcdi 489 drivers/net/ethernet/sfc/mcdi.c mcdi->state = MCDI_STATE_QUIESCENT; mcdi 490 drivers/net/ethernet/sfc/mcdi.c wake_up(&mcdi->wq); mcdi 498 drivers/net/ethernet/sfc/mcdi.c static bool efx_mcdi_complete_async(struct efx_mcdi_iface *mcdi, bool timeout) mcdi 500 drivers/net/ethernet/sfc/mcdi.c struct efx_nic *efx = mcdi->efx; mcdi 507 drivers/net/ethernet/sfc/mcdi.c if (cmpxchg(&mcdi->state, mcdi 512 drivers/net/ethernet/sfc/mcdi.c spin_lock(&mcdi->iface_lock); mcdi 517 drivers/net/ethernet/sfc/mcdi.c ++mcdi->seqno; mcdi 518 drivers/net/ethernet/sfc/mcdi.c ++mcdi->credits; mcdi 523 drivers/net/ethernet/sfc/mcdi.c rc = mcdi->resprc; mcdi 524 drivers/net/ethernet/sfc/mcdi.c hdr_len = mcdi->resp_hdr_len; mcdi 525 drivers/net/ethernet/sfc/mcdi.c data_len = mcdi->resp_data_len; mcdi 527 drivers/net/ethernet/sfc/mcdi.c spin_unlock(&mcdi->iface_lock); mcdi 534 drivers/net/ethernet/sfc/mcdi.c del_timer_sync(&mcdi->async_timer); mcdi 536 drivers/net/ethernet/sfc/mcdi.c spin_lock(&mcdi->async_lock); mcdi 537 drivers/net/ethernet/sfc/mcdi.c async = list_first_entry(&mcdi->async_list, mcdi 540 drivers/net/ethernet/sfc/mcdi.c spin_unlock(&mcdi->async_lock); mcdi 558 drivers/net/ethernet/sfc/mcdi.c efx_mcdi_release(mcdi); mcdi 566 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi = efx_mcdi(efx); mcdi 569 drivers/net/ethernet/sfc/mcdi.c spin_lock(&mcdi->iface_lock); mcdi 571 drivers/net/ethernet/sfc/mcdi.c if ((seqno ^ mcdi->seqno) & SEQ_MASK) { mcdi 572 drivers/net/ethernet/sfc/mcdi.c if (mcdi->credits) mcdi 574 drivers/net/ethernet/sfc/mcdi.c --mcdi->credits; mcdi 578 drivers/net/ethernet/sfc/mcdi.c "seq 0x%x\n", seqno, mcdi->seqno); mcdi 584 drivers/net/ethernet/sfc/mcdi.c mcdi->resprc = efx_mcdi_errno(mcdi_err); mcdi 585 drivers/net/ethernet/sfc/mcdi.c mcdi->resp_hdr_len = 4; mcdi 586 drivers/net/ethernet/sfc/mcdi.c mcdi->resp_data_len = datalen; mcdi 592 drivers/net/ethernet/sfc/mcdi.c spin_unlock(&mcdi->iface_lock); mcdi 595 drivers/net/ethernet/sfc/mcdi.c if (!efx_mcdi_complete_async(mcdi, false)) mcdi 596 drivers/net/ethernet/sfc/mcdi.c (void) efx_mcdi_complete_sync(mcdi); mcdi 609 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi = from_timer(mcdi, t, async_timer); mcdi 611 drivers/net/ethernet/sfc/mcdi.c efx_mcdi_complete_async(mcdi, true); mcdi 655 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi = efx_mcdi(efx); mcdi 659 drivers/net/ethernet/sfc/mcdi.c if (mcdi->mode == MCDI_MODE_POLL) mcdi 667 drivers/net/ethernet/sfc/mcdi.c cmd, (int)inlen, mcdi->mode); mcdi 669 drivers/net/ethernet/sfc/mcdi.c if (mcdi->mode == MCDI_MODE_EVENTS && efx_mcdi_poll_once(efx)) { mcdi 681 drivers/net/ethernet/sfc/mcdi.c spin_lock_bh(&mcdi->iface_lock); mcdi 682 drivers/net/ethernet/sfc/mcdi.c ++mcdi->seqno; mcdi 683 drivers/net/ethernet/sfc/mcdi.c ++mcdi->credits; mcdi 684 drivers/net/ethernet/sfc/mcdi.c spin_unlock_bh(&mcdi->iface_lock); mcdi 700 drivers/net/ethernet/sfc/mcdi.c spin_lock_bh(&mcdi->iface_lock); mcdi 701 drivers/net/ethernet/sfc/mcdi.c rc = mcdi->resprc; mcdi 703 drivers/net/ethernet/sfc/mcdi.c *raw_rc = mcdi->resprc_raw; mcdi 704 drivers/net/ethernet/sfc/mcdi.c hdr_len = mcdi->resp_hdr_len; mcdi 705 drivers/net/ethernet/sfc/mcdi.c data_len = mcdi->resp_data_len; mcdi 707 drivers/net/ethernet/sfc/mcdi.c spin_unlock_bh(&mcdi->iface_lock); mcdi 730 drivers/net/ethernet/sfc/mcdi.c mcdi->proxy_rx_status = 0; mcdi 731 drivers/net/ethernet/sfc/mcdi.c mcdi->proxy_rx_handle = 0; mcdi 732 drivers/net/ethernet/sfc/mcdi.c mcdi->state = MCDI_STATE_PROXY_WAIT; mcdi 741 drivers/net/ethernet/sfc/mcdi.c mcdi->new_epoch = true; mcdi 746 drivers/net/ethernet/sfc/mcdi.c efx_mcdi_release(mcdi); mcdi 750 drivers/net/ethernet/sfc/mcdi.c static void efx_mcdi_proxy_abort(struct efx_mcdi_iface *mcdi) mcdi 752 drivers/net/ethernet/sfc/mcdi.c if (mcdi->state == MCDI_STATE_PROXY_WAIT) { mcdi 754 drivers/net/ethernet/sfc/mcdi.c mcdi->proxy_rx_status = -EINTR; mcdi 755 drivers/net/ethernet/sfc/mcdi.c wake_up(&mcdi->proxy_rx_wq); mcdi 762 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi = efx_mcdi(efx); mcdi 764 drivers/net/ethernet/sfc/mcdi.c WARN_ON(mcdi->state != MCDI_STATE_PROXY_WAIT); mcdi 766 drivers/net/ethernet/sfc/mcdi.c mcdi->proxy_rx_status = efx_mcdi_errno(status); mcdi 771 drivers/net/ethernet/sfc/mcdi.c mcdi->proxy_rx_handle = handle; mcdi 772 drivers/net/ethernet/sfc/mcdi.c wake_up(&mcdi->proxy_rx_wq); mcdi 777 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi = efx_mcdi(efx); mcdi 781 drivers/net/ethernet/sfc/mcdi.c rc = wait_event_timeout(mcdi->proxy_rx_wq, mcdi 782 drivers/net/ethernet/sfc/mcdi.c mcdi->proxy_rx_handle != 0 || mcdi 783 drivers/net/ethernet/sfc/mcdi.c mcdi->proxy_rx_status == -EINTR, mcdi 790 drivers/net/ethernet/sfc/mcdi.c } else if (mcdi->proxy_rx_handle != handle) { mcdi 793 drivers/net/ethernet/sfc/mcdi.c mcdi->proxy_rx_handle, handle); mcdi 797 drivers/net/ethernet/sfc/mcdi.c return mcdi->proxy_rx_status; mcdi 826 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi = efx_mcdi(efx); mcdi 838 drivers/net/ethernet/sfc/mcdi.c mcdi->state = MCDI_STATE_RUNNING_SYNC; mcdi 851 drivers/net/ethernet/sfc/mcdi.c efx_mcdi_release(mcdi); mcdi 954 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi = efx_mcdi(efx); mcdi 964 drivers/net/ethernet/sfc/mcdi.c if (mcdi->mode == MCDI_MODE_FAIL) mcdi 967 drivers/net/ethernet/sfc/mcdi.c efx_mcdi_acquire_sync(mcdi); mcdi 978 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi = efx_mcdi(efx); mcdi 1002 drivers/net/ethernet/sfc/mcdi.c spin_lock_bh(&mcdi->async_lock); mcdi 1004 drivers/net/ethernet/sfc/mcdi.c if (mcdi->mode == MCDI_MODE_EVENTS) { mcdi 1005 drivers/net/ethernet/sfc/mcdi.c list_add_tail(&async->list, &mcdi->async_list); mcdi 1010 drivers/net/ethernet/sfc/mcdi.c if (mcdi->async_list.next == &async->list && mcdi 1011 drivers/net/ethernet/sfc/mcdi.c efx_mcdi_acquire_async(mcdi)) { mcdi 1013 drivers/net/ethernet/sfc/mcdi.c mod_timer(&mcdi->async_timer, mcdi 1021 drivers/net/ethernet/sfc/mcdi.c spin_unlock_bh(&mcdi->async_lock); mcdi 1101 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi; mcdi 1103 drivers/net/ethernet/sfc/mcdi.c if (!efx->mcdi) mcdi 1106 drivers/net/ethernet/sfc/mcdi.c mcdi = efx_mcdi(efx); mcdi 1111 drivers/net/ethernet/sfc/mcdi.c if (mcdi->mode == MCDI_MODE_POLL || mcdi->mode == MCDI_MODE_FAIL) mcdi 1122 drivers/net/ethernet/sfc/mcdi.c mcdi->mode = MCDI_MODE_POLL; mcdi 1124 drivers/net/ethernet/sfc/mcdi.c efx_mcdi_complete_sync(mcdi); mcdi 1133 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi; mcdi 1135 drivers/net/ethernet/sfc/mcdi.c if (!efx->mcdi) mcdi 1138 drivers/net/ethernet/sfc/mcdi.c mcdi = efx_mcdi(efx); mcdi 1141 drivers/net/ethernet/sfc/mcdi.c BUG_ON(mcdi->mode == MCDI_MODE_EVENTS); mcdi 1143 drivers/net/ethernet/sfc/mcdi.c del_timer_sync(&mcdi->async_timer); mcdi 1149 drivers/net/ethernet/sfc/mcdi.c if (mcdi->state == MCDI_STATE_RUNNING_ASYNC) { mcdi 1151 drivers/net/ethernet/sfc/mcdi.c mcdi->state = MCDI_STATE_QUIESCENT; mcdi 1159 drivers/net/ethernet/sfc/mcdi.c list_for_each_entry_safe(async, next, &mcdi->async_list, list) { mcdi 1169 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi; mcdi 1171 drivers/net/ethernet/sfc/mcdi.c if (!efx->mcdi) mcdi 1174 drivers/net/ethernet/sfc/mcdi.c mcdi = efx_mcdi(efx); mcdi 1179 drivers/net/ethernet/sfc/mcdi.c if (mcdi->mode == MCDI_MODE_EVENTS || mcdi->mode == MCDI_MODE_FAIL) mcdi 1189 drivers/net/ethernet/sfc/mcdi.c efx_mcdi_acquire_sync(mcdi); mcdi 1190 drivers/net/ethernet/sfc/mcdi.c mcdi->mode = MCDI_MODE_EVENTS; mcdi 1191 drivers/net/ethernet/sfc/mcdi.c efx_mcdi_release(mcdi); mcdi 1196 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi = efx_mcdi(efx); mcdi 1222 drivers/net/ethernet/sfc/mcdi.c spin_lock(&mcdi->iface_lock); mcdi 1223 drivers/net/ethernet/sfc/mcdi.c efx_mcdi_proxy_abort(mcdi); mcdi 1225 drivers/net/ethernet/sfc/mcdi.c if (efx_mcdi_complete_sync(mcdi)) { mcdi 1226 drivers/net/ethernet/sfc/mcdi.c if (mcdi->mode == MCDI_MODE_EVENTS) { mcdi 1227 drivers/net/ethernet/sfc/mcdi.c mcdi->resprc = rc; mcdi 1228 drivers/net/ethernet/sfc/mcdi.c mcdi->resp_hdr_len = 0; mcdi 1229 drivers/net/ethernet/sfc/mcdi.c mcdi->resp_data_len = 0; mcdi 1230 drivers/net/ethernet/sfc/mcdi.c ++mcdi->credits; mcdi 1252 drivers/net/ethernet/sfc/mcdi.c mcdi->new_epoch = true; mcdi 1258 drivers/net/ethernet/sfc/mcdi.c spin_unlock(&mcdi->iface_lock); mcdi 1268 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi = efx_mcdi(efx); mcdi 1270 drivers/net/ethernet/sfc/mcdi.c spin_lock(&mcdi->iface_lock); mcdi 1272 drivers/net/ethernet/sfc/mcdi.c efx_mcdi_proxy_abort(mcdi); mcdi 1274 drivers/net/ethernet/sfc/mcdi.c if (efx_mcdi_complete_sync(mcdi)) { mcdi 1275 drivers/net/ethernet/sfc/mcdi.c if (mcdi->mode == MCDI_MODE_EVENTS) { mcdi 1276 drivers/net/ethernet/sfc/mcdi.c mcdi->resprc = -EIO; mcdi 1277 drivers/net/ethernet/sfc/mcdi.c mcdi->resp_hdr_len = 0; mcdi 1278 drivers/net/ethernet/sfc/mcdi.c mcdi->resp_data_len = 0; mcdi 1279 drivers/net/ethernet/sfc/mcdi.c ++mcdi->credits; mcdi 1282 drivers/net/ethernet/sfc/mcdi.c mcdi->new_epoch = true; mcdi 1284 drivers/net/ethernet/sfc/mcdi.c spin_unlock(&mcdi->iface_lock); mcdi 1292 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi = efx_mcdi(efx); mcdi 1294 drivers/net/ethernet/sfc/mcdi.c if (xchg(&mcdi->mode, MCDI_MODE_FAIL) == MCDI_MODE_FAIL) mcdi 1489 drivers/net/ethernet/sfc/mcdi.c efx->mcdi->fn_flags = mcdi 1494 drivers/net/ethernet/sfc/mcdi.c efx->mcdi->fn_flags = mcdi 1866 drivers/net/ethernet/sfc/mcdi.c if (efx->mcdi) { mcdi 1867 drivers/net/ethernet/sfc/mcdi.c struct efx_mcdi_iface *mcdi = efx_mcdi(efx); mcdi 1868 drivers/net/ethernet/sfc/mcdi.c mcdi->mode = MCDI_MODE_POLL; mcdi 129 drivers/net/ethernet/sfc/mcdi.h EFX_WARN_ON_PARANOID(!efx->mcdi); mcdi 130 drivers/net/ethernet/sfc/mcdi.h return &efx->mcdi->iface; mcdi 136 drivers/net/ethernet/sfc/mcdi.h EFX_WARN_ON_PARANOID(!efx->mcdi); mcdi 137 drivers/net/ethernet/sfc/mcdi.h return &efx->mcdi->hwmon; mcdi 1016 drivers/net/ethernet/sfc/net_driver.h struct efx_mcdi_data *mcdi; mcdi 1497 drivers/net/ethernet/sfc/ptp.c if (efx->mcdi->fn_flags &