• Alex Elder's avatar
    net: ipa: define some IPA endpoint register fields · 4468a344
    Alex Elder authored
    Define the fields for the ENDP_INIT_CTRL, ENDP_INIT_CFG, ENDP_INIT_NAT,
    ENDP_INIT_HDR, and ENDP_INIT_HDR_EXT IPA registers for all supported
    IPA versions.
    
    Create enumerated types to identify fields for these IPA registers.
    Use IPA_REG_STRIDE_FIELDS() to specify the field mask values defined
    for these registers, for each supported version of IPA.
    
    Move ipa_header_size_encoded() and ipa_metadata_offset_encoded() out
    of "ipa_reg.h" and into "ipa_endpoint.c".  Change them so they take
    an additional ipa_reg structure argument, and use ipa_reg_encode()
    to encode the parts of the header size and offset prior to writing
    to the register.  Change their names to be verbs rather than nouns.
    
    Use ipa_reg_encode(), ipa_reg_bit, and ipa_reg_field_max() to
    manipulate values to be written to these registers, remove the
    definition of the no-longer-used *_FMASK symbols.
    Signed-off-by: default avatarAlex Elder <elder@linaro.org>
    Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
    4468a344
ipa_reg-v4.9.c 13.7 KB