• Jacob Keller's avatar
    ice: use same function to snapshot both NVM and Shadow RAM · ed23debe
    Jacob Keller authored
    The ice driver supports a region for both the flat NVM contents as well as
    the Shadow RAM which is a layer built on top of the flash during device
    initialization.
    
    These regions use an almost identical read function, except that the NVM
    needs to set the direct flag when reading, while Shadow RAM needs to read
    without the direct flag set. They each call ice_read_flat_nvm with the only
    difference being whether to set the direct flash flag.
    
    The NVM region read function also was fixed to read the NVM in blocks to
    avoid a situation where the firmware reclaims the lock due to taking too
    long.
    
    Note that the region snapshot function takes the ops pointer so the
    function can easily determine which region to read. Make use of this and
    re-use the NVM snapshot function for both the NVM and Shadow RAM regions.
    This makes Shadow RAM benefit from the same block approach as the NVM
    region. It also reduces code in the ice driver.
    Signed-off-by: default avatarJacob Keller <jacob.e.keller@intel.com>
    Acked-by: default avatarJakub Kicinski <kuba@kernel.org>
    Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
    ed23debe
ice_devlink.c 51 KB