• Alex Elder's avatar
    net: ipa: kill gsi->virt_raw · 59b12b1d
    Alex Elder authored
    Starting at IPA v4.5, almost all GSI registers had their offsets
    changed by a fixed amount (shifted downward by 0xd000).  Rather than
    defining offsets for all those registers dependent on version, an
    adjustment was applied for most register accesses.  This was
    implemented in commit cdeee49f ("net: ipa: adjust GSI register
    addresses").  It was later modified to be a bit more obvious about
    the adjusment, in commit 571b1e7e ("net: ipa: use a separate
    pointer for adjusted GSI memory").
    
    We now are able to define every GSI register with its own offset, so
    there's no need to implement this special adjustment.
    
    So get rid of the "virt_raw" pointer, and just maintain "virt" as
    the (non-adjusted) base address of I/O mapped GSI register memory.
    
    Redefine the offsets of all GSI registers (other than the INTER_EE
    ones, which were not subject to the adjustment) for IPA v4.5+,
    subtracting 0xd000 from their defined offsets instead.
    
    Move the ERROR_LOG and ERROR_LOG_CLR definitions further down in the
    register definition files so all registers are defined in order of
    their offset.
    Signed-off-by: default avatarAlex Elder <elder@linaro.org>
    Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
    59b12b1d
gsi_reg-v4.0.c 9.59 KB