forked from Minki/linux
sfc: Introduce and use MCDI_CTL_SDU_LEN_MAX_V1 macro for Siena-specific code
The MCDI version 2 protocol supports larger payloads, but will not be implemented on Siena. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
This commit is contained in:
parent
a649dfcb48
commit
d0c2ee99e5
@ -100,7 +100,9 @@
|
||||
#define MCDI_HEADER_XFLAGS_EVREQ 0x01
|
||||
|
||||
/* Maximum number of payload bytes */
|
||||
#define MCDI_CTL_SDU_LEN_MAX 0xfc
|
||||
#define MCDI_CTL_SDU_LEN_MAX_V1 0xfc
|
||||
|
||||
#define MCDI_CTL_SDU_LEN_MAX MCDI_CTL_SDU_LEN_MAX_V1
|
||||
|
||||
/* The MC can generate events for two reasons:
|
||||
* - To complete a shared memory request if XFLAGS_EVREQ was set
|
||||
|
@ -248,11 +248,11 @@ static int efx_sriov_memcpy(struct efx_nic *efx, struct efx_memcpy_req *req,
|
||||
mb(); /* Finish writing source/reading dest before DMA starts */
|
||||
|
||||
used = MC_CMD_MEMCPY_IN_LEN(count);
|
||||
if (WARN_ON(used > MCDI_CTL_SDU_LEN_MAX))
|
||||
if (WARN_ON(used > MCDI_CTL_SDU_LEN_MAX_V1))
|
||||
return -ENOBUFS;
|
||||
|
||||
/* Allocate room for the largest request */
|
||||
inbuf = kzalloc(MCDI_CTL_SDU_LEN_MAX, GFP_KERNEL);
|
||||
inbuf = kzalloc(MCDI_CTL_SDU_LEN_MAX_V1, GFP_KERNEL);
|
||||
if (inbuf == NULL)
|
||||
return -ENOMEM;
|
||||
|
||||
@ -270,7 +270,8 @@ static int efx_sriov_memcpy(struct efx_nic *efx, struct efx_memcpy_req *req,
|
||||
from_lo = (u32)req->from_addr;
|
||||
from_hi = (u32)(req->from_addr >> 32);
|
||||
} else {
|
||||
if (WARN_ON(used + req->length > MCDI_CTL_SDU_LEN_MAX)) {
|
||||
if (WARN_ON(used + req->length >
|
||||
MCDI_CTL_SDU_LEN_MAX_V1)) {
|
||||
rc = -ENOBUFS;
|
||||
goto out;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user