OSDN Git Service

net: ipa: add new most-significant bits to registers
authorAlex Elder <elder@linaro.org>
Wed, 25 Nov 2020 20:45:19 +0000 (14:45 -0600)
committerJakub Kicinski <kuba@kernel.org>
Sat, 28 Nov 2020 20:13:54 +0000 (12:13 -0800)
commit1af15c2a781d938e94dcdb9a872ce4157730569d
tree7be6cb28c8f70a224820a485bd8683993667e2b0
parent5b6cd69e89c4ace7497609c52ca4d9aab5ae8a46
net: ipa: add new most-significant bits to registers

IPA v4.5 adds a few fields to the endpoint header and extended
header configuration registers that represent new high-order bits
for certain offsets and sizes.  Add code to incorporate these upper
bits into the registers for IPA v4.5.

This includes creating ipa_header_size_encoded(), which handles
encoding the metadata offset field for use in the ENDP_INIT_HDR
register in a way appropriate for the hardware version.  This and
ipa_metadata_offset_encoded() ensure the mask argument passed to
u32_encode_bits() is constant.

Signed-off-by: Alex Elder <elder@linaro.org>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ipa/ipa_endpoint.c
drivers/net/ipa/ipa_reg.h