• Tomer Tayar's avatar
    habanalabs/gaudi2: configure virtual MSI-X doorbell interface · 1cf596c6
    Tomer Tayar authored
    Due to a watchdog timer in the LBW path, writes to the MSI-X doorbell
    can return sporadic error responses.
    To work-around this issue, a virtual MSI-X doorbell on the HBW path is
    configured, using the MSI-X AXI slave interface in the PCIe controller.
    Upon an access to a configured HBW host address, the controller will
    generate MSI-X interrupt instead of treating the access as regular host
    memory access.
    
    This patch allocates the dedicate host memory page, and communicate the
    address to F/W, so it will configure the relevant address match
    registers in the controller, and will use this address to generate MSI-X
    interrupts for F/W events.
    
    Following patches will handle other initiators in the device, to move
    them to use the virtual MSI-X doorbell.
    Signed-off-by: default avatarTomer Tayar <ttayar@habana.ai>
    Reviewed-by: default avatarOded Gabbay <ogabbay@kernel.org>
    Signed-off-by: default avatarOded Gabbay <ogabbay@kernel.org>
    1cf596c6
gaudi2_masks.h 5.21 KB