1 /* SPDX-License-Identifier: BSD-3-Clause
2 *
3 * Copyright(c) 2019-2021 Xilinx, Inc.
4 * Copyright(c) 2018-2019 Solarflare Communications Inc.
5 */
6
7 #include "efx.h"
8 #include "efx_impl.h"
9
10
11 #if EFSYS_OPT_RIVERHEAD
12
13 __checkReturn efx_rc_t
rhead_intr_init(__in efx_nic_t * enp,__in efx_intr_type_t type,__in efsys_mem_t * esmp)14 rhead_intr_init(
15 __in efx_nic_t *enp,
16 __in efx_intr_type_t type,
17 __in efsys_mem_t *esmp)
18 {
19 _NOTE(ARGUNUSED(enp, type, esmp))
20
21 return (0);
22 }
23
24
25 void
rhead_intr_enable(__in efx_nic_t * enp)26 rhead_intr_enable(
27 __in efx_nic_t *enp)
28 {
29 _NOTE(ARGUNUSED(enp))
30 }
31
32
33 void
rhead_intr_disable(__in efx_nic_t * enp)34 rhead_intr_disable(
35 __in efx_nic_t *enp)
36 {
37 _NOTE(ARGUNUSED(enp))
38 }
39
40
41 void
rhead_intr_disable_unlocked(__in efx_nic_t * enp)42 rhead_intr_disable_unlocked(
43 __in efx_nic_t *enp)
44 {
45 _NOTE(ARGUNUSED(enp))
46 }
47
48 __checkReturn efx_rc_t
rhead_intr_trigger(__in efx_nic_t * enp,__in unsigned int level)49 rhead_intr_trigger(
50 __in efx_nic_t *enp,
51 __in unsigned int level)
52 {
53 _NOTE(ARGUNUSED(enp, level))
54
55 return (ENOTSUP);
56 }
57
58 void
rhead_intr_status_line(__in efx_nic_t * enp,__out boolean_t * fatalp,__out uint32_t * qmaskp)59 rhead_intr_status_line(
60 __in efx_nic_t *enp,
61 __out boolean_t *fatalp,
62 __out uint32_t *qmaskp)
63 {
64 _NOTE(ARGUNUSED(enp, qmaskp))
65
66 /*
67 * Riverhead does not support line interrupts,
68 * so this function should never be called.
69 */
70
71 /* Fatal errors are reported via events */
72 *fatalp = B_FALSE;
73 }
74
75 void
rhead_intr_status_message(__in efx_nic_t * enp,__in unsigned int message,__out boolean_t * fatalp)76 rhead_intr_status_message(
77 __in efx_nic_t *enp,
78 __in unsigned int message,
79 __out boolean_t *fatalp)
80 {
81 EFSYS_ASSERT(enp->en_family == EFX_FAMILY_RIVERHEAD);
82
83 _NOTE(ARGUNUSED(enp, message))
84
85 /* Fatal errors are reported via events */
86 *fatalp = B_FALSE;
87 }
88
89 void
rhead_intr_fatal(__in efx_nic_t * enp)90 rhead_intr_fatal(
91 __in efx_nic_t *enp)
92 {
93 /* Fatal errors are reported via events */
94 _NOTE(ARGUNUSED(enp))
95 }
96
97 void
rhead_intr_fini(__in efx_nic_t * enp)98 rhead_intr_fini(
99 __in efx_nic_t *enp)
100 {
101 _NOTE(ARGUNUSED(enp))
102 }
103
104 #endif /* EFSYS_OPT_RIVERHEAD */
105