| 1202 | } |
| 1203 | |
| 1204 | static int |
| 1205 | sfc_kvarg_rxd_wait_timeout_ns(struct sfc_adapter *sa) |
| 1206 | { |
| 1207 | int rc; |
| 1208 | long value; |
| 1209 | |
| 1210 | value = SFC_RXD_WAIT_TIMEOUT_NS_DEF; |
| 1211 | |
| 1212 | rc = sfc_kvargs_process(sa, SFC_KVARG_RXD_WAIT_TIMEOUT_NS, |
| 1213 | sfc_kvarg_long_handler, &value); |
| 1214 | if (rc != 0) |
| 1215 | return rc; |
| 1216 | |
| 1217 | if (value < 0 || |
| 1218 | (unsigned long)value > EFX_RXQ_ES_SUPER_BUFFER_HOL_BLOCK_MAX) { |
| 1219 | sfc_err(sa, "wrong '" SFC_KVARG_RXD_WAIT_TIMEOUT_NS "' " |
| 1220 | "was set (%ld);", value); |
| 1221 | sfc_err(sa, "it must not be less than 0 or greater than %u", |
| 1222 | EFX_RXQ_ES_SUPER_BUFFER_HOL_BLOCK_MAX); |
| 1223 | return EINVAL; |
| 1224 | } |
| 1225 | |
| 1226 | sa->rxd_wait_timeout_ns = value; |
| 1227 | return 0; |
| 1228 | } |
| 1229 | |
| 1230 | static int |
| 1231 | sfc_nic_probe(struct sfc_adapter *sa) |
no test coverage detected