• Vadim Pasternak's avatar
    platform/x86: mlx-platform: Add IO access verification callbacks · 0b78b1c2
    Vadim Pasternak authored
    Add definitions for hotplug device masks and events offsets, in order to
    specify explicitly all hardware registers allowed for IO operations for
    all the drivers sharing register map with mlx-platform.
    
    Extend register map configuration with the sets of writable, readable and
    volatile registers to allow verification prior to the access. It prevents
    unexpected access to hardware registers by the drivers, sharing register
    map with mlx-platform.
    
    Extend register map configuration with cache type field in order to have
    ability to cache hardware register value, where possible. Use simple flat
    array type for register lookups, which is most suitable in case when the
    number of the registers is not too large.
    
    Add at the end of probing routine calls to regcache_mark_dirty and
    regcache_sync in order to sync register cache with hardware values. The
    first routine indicate that hardware registers value required sync, the
    second performs sync.
    Signed-off-by: default avatarVadim Pasternak <vadimp@mellanox.com>
    Signed-off-by: default avatarDarren Hart (VMware) <dvhart@infradead.org>
    0b78b1c2
mlx-platform.c 16.8 KB