2018-08-16 13:28:40 +00:00
|
|
|
/* SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) */
|
|
|
|
/*
|
2020-05-11 16:06:37 +00:00
|
|
|
* Copyright(c) 2018 - 2020 Intel Corporation.
|
2018-08-16 13:28:40 +00:00
|
|
|
*/
|
2021-08-23 04:26:22 +00:00
|
|
|
|
2018-08-16 13:28:40 +00:00
|
|
|
#ifndef _HFI1_MSIX_H
|
|
|
|
#define _HFI1_MSIX_H
|
|
|
|
|
|
|
|
#include "hfi.h"
|
|
|
|
|
|
|
|
/* MSIx interface */
|
2018-08-16 06:04:04 +00:00
|
|
|
int msix_initialize(struct hfi1_devdata *dd);
|
|
|
|
int msix_request_irqs(struct hfi1_devdata *dd);
|
|
|
|
void msix_clean_up_interrupts(struct hfi1_devdata *dd);
|
2020-01-06 13:42:16 +00:00
|
|
|
int msix_request_general_irq(struct hfi1_devdata *dd);
|
2018-08-16 06:04:04 +00:00
|
|
|
int msix_request_rcd_irq(struct hfi1_ctxtdata *rcd);
|
|
|
|
int msix_request_sdma_irq(struct sdma_engine *sde);
|
|
|
|
void msix_free_irq(struct hfi1_devdata *dd, u8 msix_intr);
|
2018-08-16 13:28:40 +00:00
|
|
|
|
2020-05-11 16:06:37 +00:00
|
|
|
/* Netdev interface */
|
2020-05-11 16:06:49 +00:00
|
|
|
void msix_netdev_synchronize_irq(struct hfi1_devdata *dd);
|
2020-05-11 16:06:37 +00:00
|
|
|
int msix_netdev_request_rcd_irq(struct hfi1_ctxtdata *rcd);
|
2018-08-16 13:28:40 +00:00
|
|
|
|
|
|
|
#endif
|