The memory on an NCP may be much more limited than the memory on the host processor. In such situations, it is sometimes useful for the NCP to offload buffers to the host processor temporarily so that it can perform other operations.
Host buffer offload is an optional NCP capability that, when present, allows the NCP to store data buffers on the host processor that can be recalled at a later time.
The presence of this feature can be detected by the host by checking for the presence of the CAP_HBO
capability in PROP_CAPS
.
LscD
OffloadId
: 32-bit unique block identifierExpiration
: In seconds-from-nowPriority
: Critical, High, Medium, LowData
: Data to offloadLb
OffloadId
: 32-bit unique block identifierKeepAfterReclaim
: If not set to true, the block will be dropped by the host after it is sent to the NCP.L
OffloadId
: 32-bit unique block identifierLi
OffloadId
: 32-bit unique block identifierStatus
: Status code for the result of the operation.LiD
OffloadId
: 32-bit unique block identifierStatus
: Status code for the result of the operation.Data
: Data that was previously offloaded (if any)Li
OffloadId
: 32-bit unique block identifierStatus
: Status code for the result of the operation.L
Octets: | 4 |
---|---|
Fields: | PROP_HBO_MEM_MAX |
Describes the number of bytes that may be offloaded from the NCP to the host. Default value is zero, so this property must be set by the host to a non-zero value before the NCP will begin offloading blocks.
This value is encoded as an unsigned 32-bit integer.
This property is only available if the CAP_HBO
capability is present in PROP_CAPS
.
S
Octets: | 2 |
---|---|
Fields: | PROP_HBO_BLOCK_MAX |
Describes the number of blocks that may be offloaded from the NCP to the host. Default value is 32. Setting this value to zero will cause host block offload to be effectively disabled.
This value is encoded as an unsigned 16-bit integer.
This property is only available if the CAP_HBO
capability is present in PROP_CAPS
.