Lines Matching defs:req

898 	efx_mcdi_req_t req;
912 req.emr_cmd = MC_CMD_GET_VERSION;
913 req.emr_in_buf = payload;
914 req.emr_in_length = MC_CMD_GET_VERSION_IN_LEN;
915 req.emr_out_buf = payload;
916 req.emr_out_length = MC_CMD_GET_VERSION_OUT_LEN;
918 efx_mcdi_execute(enp, &req);
920 if (req.emr_rc != 0) {
921 rc = req.emr_rc;
926 if (req.emr_out_length_used == MC_CMD_GET_VERSION_V0_OUT_LEN) {
928 build = MCDI_OUT_DWORD(req, GET_VERSION_OUT_FIRMWARE);
933 if (req.emr_out_length_used < MC_CMD_GET_VERSION_OUT_LEN) {
938 ver_words = MCDI_OUT2(req, efx_word_t, GET_VERSION_OUT_VERSION);
943 build = MCDI_OUT_DWORD(req, GET_VERSION_OUT_FIRMWARE);
953 req.emr_cmd = MC_CMD_GET_BOOT_STATUS;
954 req.emr_in_buf = payload;
955 req.emr_in_length = MC_CMD_GET_BOOT_STATUS_IN_LEN;
956 req.emr_out_buf = payload;
957 req.emr_out_length = MC_CMD_GET_BOOT_STATUS_OUT_LEN;
959 efx_mcdi_execute_quiet(enp, &req);
961 if (req.emr_rc == EACCES) {
969 if (req.emr_rc != 0) {
970 rc = req.emr_rc;
974 if (req.emr_out_length_used < MC_CMD_GET_BOOT_STATUS_OUT_LEN) {
979 if (MCDI_OUT_DWORD_FIELD(req, GET_BOOT_STATUS_OUT_FLAGS,
1013 efx_mcdi_req_t req;
1026 req.emr_cmd = MC_CMD_REBOOT;
1027 req.emr_in_buf = payload;
1028 req.emr_in_length = MC_CMD_REBOOT_IN_LEN;
1029 req.emr_out_buf = payload;
1030 req.emr_out_length = MC_CMD_REBOOT_OUT_LEN;
1032 MCDI_IN_SET_DWORD(req, REBOOT_IN_FLAGS,
1035 efx_mcdi_execute_quiet(enp, &req);
1037 if (req.emr_rc == EACCES) {
1043 if (req.emr_rc != 0 && req.emr_rc != EIO) {
1044 rc = req.emr_rc;
1075 efx_mcdi_req_t req;
1099 req.emr_cmd = MC_CMD_GET_ASSERTS;
1100 req.emr_in_buf = payload;
1101 req.emr_in_length = MC_CMD_GET_ASSERTS_IN_LEN;
1102 req.emr_out_buf = payload;
1103 req.emr_out_length = MC_CMD_GET_ASSERTS_OUT_LEN;
1105 MCDI_IN_SET_DWORD(req, GET_ASSERTS_IN_CLEAR, 1);
1106 efx_mcdi_execute_quiet(enp, &req);
1108 } while ((req.emr_rc == EINTR || req.emr_rc == EIO) && retry-- > 0);
1110 if (req.emr_rc != 0) {
1111 if (req.emr_rc == EACCES) {
1115 rc = req.emr_rc;
1119 if (req.emr_out_length_used < MC_CMD_GET_ASSERTS_OUT_LEN) {
1125 flags = MCDI_OUT_DWORD(req, GET_ASSERTS_OUT_GLOBAL_FLAGS);
1140 MCDI_OUT_DWORD(req, GET_ASSERTS_OUT_SAVED_PC_OFFS),
1142 MCDI_OUT_DWORD(req, GET_ASSERTS_OUT_THREAD_OFFS));
1150 EFX_DWORD_FIELD(*MCDI_OUT(req, efx_dword_t, ofst),
1178 efx_mcdi_req_t req;
1185 req.emr_cmd = MC_CMD_DRV_ATTACH;
1186 req.emr_in_buf = payload;
1187 req.emr_in_length = MC_CMD_DRV_ATTACH_IN_LEN;
1188 req.emr_out_buf = payload;
1189 req.emr_out_length = MC_CMD_DRV_ATTACH_EXT_OUT_LEN;
1196 MCDI_IN_SET_DWORD(req, DRV_ATTACH_IN_NEW_STATE, attach ? 1 : 0);
1197 MCDI_IN_SET_DWORD(req, DRV_ATTACH_IN_UPDATE, 1);
1198 MCDI_IN_SET_DWORD(req, DRV_ATTACH_IN_FIRMWARE_ID, MC_CMD_FW_DONT_CARE);
1200 efx_mcdi_execute(enp, &req);
1202 if (req.emr_rc != 0) {
1203 rc = req.emr_rc;
1207 if (req.emr_out_length_used < MC_CMD_DRV_ATTACH_OUT_LEN) {
1230 if (req.emr_out_length_used < MC_CMD_DRV_ATTACH_EXT_OUT_LEN) {
1234 flags = MCDI_OUT_DWORD(req, DRV_ATTACH_EXT_OUT_FUNC_FLAGS);
1258 efx_mcdi_req_t req;
1264 req.emr_cmd = MC_CMD_GET_BOARD_CFG;
1265 req.emr_in_buf = payload;
1266 req.emr_in_length = MC_CMD_GET_BOARD_CFG_IN_LEN;
1267 req.emr_out_buf = payload;
1268 req.emr_out_length = MC_CMD_GET_BOARD_CFG_OUT_LENMIN;
1270 efx_mcdi_execute(enp, &req);
1272 if (req.emr_rc != 0) {
1273 rc = req.emr_rc;
1277 if (req.emr_out_length_used < MC_CMD_GET_BOARD_CFG_OUT_LENMIN) {
1286 addrp = MCDI_OUT2(req, uint8_t,
1289 addrp = MCDI_OUT2(req, uint8_t,
1301 *capabilitiesp = *MCDI_OUT2(req, efx_dword_t,
1304 *capabilitiesp = *MCDI_OUT2(req, efx_dword_t,
1313 *board_typep = MCDI_OUT_DWORD(req,
1338 efx_mcdi_req_t req;
1344 req.emr_cmd = MC_CMD_GET_RESOURCE_LIMITS;
1345 req.emr_in_buf = payload;
1346 req.emr_in_length = MC_CMD_GET_RESOURCE_LIMITS_IN_LEN;
1347 req.emr_out_buf = payload;
1348 req.emr_out_length = MC_CMD_GET_RESOURCE_LIMITS_OUT_LEN;
1350 efx_mcdi_execute(enp, &req);
1352 if (req.emr_rc != 0) {
1353 rc = req.emr_rc;
1357 if (req.emr_out_length_used < MC_CMD_GET_RESOURCE_LIMITS_OUT_LEN) {
1363 *nevqp = MCDI_OUT_DWORD(req, GET_RESOURCE_LIMITS_OUT_EVQ);
1365 *nrxqp = MCDI_OUT_DWORD(req, GET_RESOURCE_LIMITS_OUT_RXQ);
1367 *ntxqp = MCDI_OUT_DWORD(req, GET_RESOURCE_LIMITS_OUT_TXQ);
1385 efx_mcdi_req_t req;
1391 req.emr_cmd = MC_CMD_GET_PHY_CFG;
1392 req.emr_in_buf = payload;
1393 req.emr_in_length = MC_CMD_GET_PHY_CFG_IN_LEN;
1394 req.emr_out_buf = payload;
1395 req.emr_out_length = MC_CMD_GET_PHY_CFG_OUT_LEN;
1397 efx_mcdi_execute(enp, &req);
1399 if (req.emr_rc != 0) {
1400 rc = req.emr_rc;
1404 if (req.emr_out_length_used < MC_CMD_GET_PHY_CFG_OUT_LEN) {
1409 encp->enc_phy_type = MCDI_OUT_DWORD(req, GET_PHY_CFG_OUT_TYPE);
1412 MCDI_OUT2(req, char, GET_PHY_CFG_OUT_NAME),
1419 MCDI_OUT2(req, char, GET_PHY_CFG_OUT_REVISION),
1437 MCDI_OUT_DWORD(req, GET_PHY_CFG_OUT_MEDIA_TYPE);
1442 MCDI_OUT_DWORD(req, GET_PHY_CFG_OUT_SUPPORTED_CAP);
1444 encp->enc_phy_flags_mask = MCDI_OUT_DWORD(req, GET_PHY_CFG_OUT_FLAGS);
1447 encp->enc_port = (uint8_t)MCDI_OUT_DWORD(req, GET_PHY_CFG_OUT_PRT);
1451 (uint8_t)MCDI_OUT_DWORD(req, GET_PHY_CFG_OUT_CHANNEL);
1455 MCDI_OUT_DWORD(req, GET_PHY_CFG_OUT_STATS_MASK);
1460 if (MCDI_OUT_DWORD_FIELD(req, GET_PHY_CFG_OUT_FLAGS,
1463 if (MCDI_OUT_DWORD_FIELD(req, GET_PHY_CFG_OUT_FLAGS,
1466 if (MCDI_OUT_DWORD_FIELD(req, GET_PHY_CFG_OUT_FLAGS,
1593 efx_mcdi_req_t req;
1599 req.emr_cmd = MC_CMD_ENABLE_OFFLINE_BIST;
1600 req.emr_in_buf = NULL;
1601 req.emr_in_length = 0;
1602 req.emr_out_buf = NULL;
1603 req.emr_out_length = 0;
1605 efx_mcdi_execute(enp, &req);
1607 if (req.emr_rc != 0) {
1608 rc = req.emr_rc;
1626 efx_mcdi_req_t req;
1632 req.emr_cmd = MC_CMD_START_BIST;
1633 req.emr_in_buf = payload;
1634 req.emr_in_length = MC_CMD_START_BIST_IN_LEN;
1635 req.emr_out_buf = payload;
1636 req.emr_out_length = MC_CMD_START_BIST_OUT_LEN;
1640 MCDI_IN_SET_DWORD(req, START_BIST_IN_TYPE, MC_CMD_PHY_BIST);
1643 MCDI_IN_SET_DWORD(req, START_BIST_IN_TYPE,
1647 MCDI_IN_SET_DWORD(req, START_BIST_IN_TYPE,
1651 MCDI_IN_SET_DWORD(req, START_BIST_IN_TYPE,
1655 MCDI_IN_SET_DWORD(req, START_BIST_IN_TYPE,
1659 MCDI_IN_SET_DWORD(req, START_BIST_IN_TYPE,
1666 efx_mcdi_execute(enp, &req);
1668 if (req.emr_rc != 0) {
1669 rc = req.emr_rc;
1689 efx_mcdi_req_t req;
1695 req.emr_cmd = MC_CMD_LOG_CTRL;
1696 req.emr_in_buf = payload;
1697 req.emr_in_length = MC_CMD_LOG_CTRL_IN_LEN;
1698 req.emr_out_buf = payload;
1699 req.emr_out_length = MC_CMD_LOG_CTRL_OUT_LEN;
1701 MCDI_IN_SET_DWORD(req, LOG_CTRL_IN_LOG_DEST,
1703 MCDI_IN_SET_DWORD(req, LOG_CTRL_IN_LOG_DEST_EVQ, 0);
1705 efx_mcdi_execute(enp, &req);
1707 if (req.emr_rc != 0) {
1708 rc = req.emr_rc;
1738 efx_mcdi_req_t req;
1749 req.emr_cmd = MC_CMD_MAC_STATS;
1750 req.emr_in_buf = payload;
1751 req.emr_in_length = MC_CMD_MAC_STATS_IN_LEN;
1752 req.emr_out_buf = payload;
1753 req.emr_out_length = MC_CMD_MAC_STATS_OUT_DMA_LEN;
1755 MCDI_IN_POPULATE_DWORD_6(req, MAC_STATS_IN_CMD,
1769 MCDI_IN_SET_DWORD(req, MAC_STATS_IN_DMA_ADDR_LO,
1771 MCDI_IN_SET_DWORD(req, MAC_STATS_IN_DMA_ADDR_HI,
1773 MCDI_IN_SET_DWORD(req, MAC_STATS_IN_DMA_LEN, bytes);
1783 MCDI_IN_SET_DWORD(req, MAC_STATS_IN_PORT_ID,
1786 efx_mcdi_execute(enp, &req);
1788 if (req.emr_rc != 0) {
1790 if ((req.emr_rc != ENOENT) ||
1792 rc = req.emr_rc;
1894 efx_mcdi_req_t req;
1900 req.emr_cmd = MC_CMD_GET_FUNCTION_INFO;
1901 req.emr_in_buf = payload;
1902 req.emr_in_length = MC_CMD_GET_FUNCTION_INFO_IN_LEN;
1903 req.emr_out_buf = payload;
1904 req.emr_out_length = MC_CMD_GET_FUNCTION_INFO_OUT_LEN;
1906 efx_mcdi_execute(enp, &req);
1908 if (req.emr_rc != 0) {
1909 rc = req.emr_rc;
1913 if (req.emr_out_length_used < MC_CMD_GET_FUNCTION_INFO_OUT_LEN) {
1918 *pfp = MCDI_OUT_DWORD(req, GET_FUNCTION_INFO_OUT_PF);
1920 *vfp = MCDI_OUT_DWORD(req, GET_FUNCTION_INFO_OUT_VF);
1939 efx_mcdi_req_t req;
1945 req.emr_cmd = MC_CMD_PRIVILEGE_MASK;
1946 req.emr_in_buf = payload;
1947 req.emr_in_length = MC_CMD_PRIVILEGE_MASK_IN_LEN;
1948 req.emr_out_buf = payload;
1949 req.emr_out_length = MC_CMD_PRIVILEGE_MASK_OUT_LEN;
1951 MCDI_IN_POPULATE_DWORD_2(req, PRIVILEGE_MASK_IN_FUNCTION,
1955 efx_mcdi_execute(enp, &req);
1957 if (req.emr_rc != 0) {
1958 rc = req.emr_rc;
1962 if (req.emr_out_length_used < MC_CMD_PRIVILEGE_MASK_OUT_LEN) {
1967 *maskp = MCDI_OUT_DWORD(req, PRIVILEGE_MASK_OUT_OLD_MASK);
1988 efx_mcdi_req_t req;
1994 req.emr_cmd = MC_CMD_WORKAROUND;
1995 req.emr_in_buf = payload;
1996 req.emr_in_length = MC_CMD_WORKAROUND_IN_LEN;
1997 req.emr_out_buf = payload;
1998 req.emr_out_length = MC_CMD_WORKAROUND_OUT_LEN;
2000 MCDI_IN_SET_DWORD(req, WORKAROUND_IN_TYPE, type);
2001 MCDI_IN_SET_DWORD(req, WORKAROUND_IN_ENABLED, enabled ? 1 : 0);
2003 efx_mcdi_execute_quiet(enp, &req);
2005 if (req.emr_rc != 0) {
2006 rc = req.emr_rc;
2011 if (req.emr_out_length_used >= MC_CMD_WORKAROUND_EXT_OUT_LEN)
2012 *flagsp = MCDI_OUT_DWORD(req, WORKAROUND_EXT_OUT_FLAGS);
2032 efx_mcdi_req_t req;
2037 req.emr_cmd = MC_CMD_GET_WORKAROUNDS;
2038 req.emr_in_buf = NULL;
2039 req.emr_in_length = 0;
2040 req.emr_out_buf = payload;
2041 req.emr_out_length = MC_CMD_GET_WORKAROUNDS_OUT_LEN;
2043 efx_mcdi_execute(enp, &req);
2045 if (req.emr_rc != 0) {
2046 rc = req.emr_rc;
2052 MCDI_OUT_DWORD(req, GET_WORKAROUNDS_OUT_IMPLEMENTED);
2056 *enabledp = MCDI_OUT_DWORD(req, GET_WORKAROUNDS_OUT_ENABLED);
2081 efx_mcdi_req_t req;
2090 req.emr_cmd = MC_CMD_GET_PHY_MEDIA_INFO;
2091 req.emr_in_buf = payload;
2092 req.emr_in_length = MC_CMD_GET_PHY_MEDIA_INFO_IN_LEN;
2093 req.emr_out_buf = payload;
2094 req.emr_out_length =
2097 MCDI_IN_SET_DWORD(req, GET_PHY_MEDIA_INFO_IN_PAGE, mcdi_page);
2099 efx_mcdi_execute(enp, &req);
2101 if (req.emr_rc != 0) {
2102 rc = req.emr_rc;
2106 if (req.emr_out_length_used !=
2112 if (MCDI_OUT_DWORD(req, GET_PHY_MEDIA_INFO_OUT_DATALEN) !=
2119 MCDI_OUT2(req, uint8_t, GET_PHY_MEDIA_INFO_OUT_DATA) + offset,