• Alex Elder's avatar
    net: ipa: define more IPA endpoint register fields · 216b409d
    Alex Elder authored
    Define the fields for the ENDP_INIT_MODE, ENDP_INIT_AGGR,
    ENDP_INIT_HOL_BLOCK_EN, and ENDP_INIT_HOL_BLOCK_TIMER 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.
    
    Change aggr_time_limit_encode() and hol_block_timer_encode() so they
    take an ipa_reg pointer, and use those register's fields to compute
    their encoded results.  Have aggr_time_limit_encode() take an IPA
    pointer rather than version, to match hol_block_timer_encode().
    
    Use ipa_reg_encode(), ipa_reg_bit(), and ipa_reg_field_max() to
    manipulate values to be written to these registers, remove the
    definitions of the various inline functions and *_FMASK symbols that
    are now no longer used.
    Signed-off-by: default avatarAlex Elder <elder@linaro.org>
    Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
    216b409d
ipa_reg-v4.9.c 14.8 KB