1*d14abf15SRobert Mustacchi /*
2*d14abf15SRobert Mustacchi  * CDDL HEADER START
3*d14abf15SRobert Mustacchi  *
4*d14abf15SRobert Mustacchi  * The contents of this file are subject to the terms of the
5*d14abf15SRobert Mustacchi  * Common Development and Distribution License (the "License").
6*d14abf15SRobert Mustacchi  * You may not use this file except in compliance with the License.
7*d14abf15SRobert Mustacchi  *
8*d14abf15SRobert Mustacchi  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9*d14abf15SRobert Mustacchi  * or http://www.opensolaris.org/os/licensing.
10*d14abf15SRobert Mustacchi  * See the License for the specific language governing permissions
11*d14abf15SRobert Mustacchi  * and limitations under the License.
12*d14abf15SRobert Mustacchi  *
13*d14abf15SRobert Mustacchi  * When distributing Covered Code, include this CDDL HEADER in each
14*d14abf15SRobert Mustacchi  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15*d14abf15SRobert Mustacchi  * If applicable, add the following below this CDDL HEADER, with the
16*d14abf15SRobert Mustacchi  * fields enclosed by brackets "[]" replaced with your own identifying
17*d14abf15SRobert Mustacchi  * information: Portions Copyright [yyyy] [name of copyright owner]
18*d14abf15SRobert Mustacchi  *
19*d14abf15SRobert Mustacchi  * CDDL HEADER END
20*d14abf15SRobert Mustacchi  */
21*d14abf15SRobert Mustacchi 
22*d14abf15SRobert Mustacchi /*
23*d14abf15SRobert Mustacchi  * Copyright 2014 QLogic Corporation
24*d14abf15SRobert Mustacchi  * The contents of this file are subject to the terms of the
25*d14abf15SRobert Mustacchi  * QLogic End User License (the "License").
26*d14abf15SRobert Mustacchi  * You may not use this file except in compliance with the License.
27*d14abf15SRobert Mustacchi  *
28*d14abf15SRobert Mustacchi  * You can obtain a copy of the License at
29*d14abf15SRobert Mustacchi  * http://www.qlogic.com/Resources/Documents/DriverDownloadHelp/
30*d14abf15SRobert Mustacchi  * QLogic_End_User_Software_License.txt
31*d14abf15SRobert Mustacchi  * See the License for the specific language governing permissions
32*d14abf15SRobert Mustacchi  * and limitations under the License.
33*d14abf15SRobert Mustacchi  */
34*d14abf15SRobert Mustacchi 
35*d14abf15SRobert Mustacchi #include "bnxe.h"
36*d14abf15SRobert Mustacchi 
37*d14abf15SRobert Mustacchi 
38*d14abf15SRobert Mustacchi lm_status_t
mm_sc_comp_l5_request(IN struct _lm_device_t * pdev,IN struct iscsi_kcqe * kcqes,IN u32_t num_kcqes)39*d14abf15SRobert Mustacchi mm_sc_comp_l5_request(
40*d14abf15SRobert Mustacchi         IN struct _lm_device_t *pdev,
41*d14abf15SRobert Mustacchi         IN struct iscsi_kcqe *kcqes,
42*d14abf15SRobert Mustacchi         IN u32_t num_kcqes
43*d14abf15SRobert Mustacchi         )
44*d14abf15SRobert Mustacchi {
45*d14abf15SRobert Mustacchi     BnxeDbgBreak((um_device_t *)pdev);
46*d14abf15SRobert Mustacchi     return 0;
47*d14abf15SRobert Mustacchi }
48*d14abf15SRobert Mustacchi 
49*d14abf15SRobert Mustacchi 
50*d14abf15SRobert Mustacchi lm_status_t
mm_fc_comp_request(IN struct _lm_device_t * pdev,IN struct fcoe_kcqe * kcqes,IN u32_t num_kcqes)51*d14abf15SRobert Mustacchi mm_fc_comp_request(
52*d14abf15SRobert Mustacchi     IN struct _lm_device_t          *pdev,
53*d14abf15SRobert Mustacchi     IN struct fcoe_kcqe             *kcqes,
54*d14abf15SRobert Mustacchi     IN u32_t                        num_kcqes)
55*d14abf15SRobert Mustacchi {
56*d14abf15SRobert Mustacchi     return (!BnxeFcoeCompRequestCqe((um_device_t *)pdev, kcqes, num_kcqes)) ?
57*d14abf15SRobert Mustacchi                LM_STATUS_FAILURE : LM_STATUS_SUCCESS;
58*d14abf15SRobert Mustacchi }
59*d14abf15SRobert Mustacchi 
60*d14abf15SRobert Mustacchi 
mm_sc_complete_init_request(lm_device_t * pdev,struct iscsi_kcqe * kcqe)61*d14abf15SRobert Mustacchi lm_status_t mm_sc_complete_init_request(lm_device_t *pdev, struct iscsi_kcqe *kcqe)
62*d14abf15SRobert Mustacchi {
63*d14abf15SRobert Mustacchi     BnxeDbgBreak((um_device_t *)pdev);
64*d14abf15SRobert Mustacchi     return 0;
65*d14abf15SRobert Mustacchi }
66*d14abf15SRobert Mustacchi 
67*d14abf15SRobert Mustacchi 
68*d14abf15SRobert Mustacchi u8_t
mm_sc_is_omgr_enabled(struct _lm_device_t * _pdev)69*d14abf15SRobert Mustacchi mm_sc_is_omgr_enabled(struct _lm_device_t *_pdev)
70*d14abf15SRobert Mustacchi {
71*d14abf15SRobert Mustacchi     BnxeDbgBreak((um_device_t *)_pdev);
72*d14abf15SRobert Mustacchi     return 0;
73*d14abf15SRobert Mustacchi }
74*d14abf15SRobert Mustacchi 
75*d14abf15SRobert Mustacchi 
76*d14abf15SRobert Mustacchi lm_status_t
mm_sc_omgr_flush_rx(IN struct _lm_device_t * _pdev,IN struct iscsi_kcqe * kcqe_recv,IN u32_t cid)77*d14abf15SRobert Mustacchi mm_sc_omgr_flush_rx(
78*d14abf15SRobert Mustacchi     IN struct _lm_device_t      *_pdev,
79*d14abf15SRobert Mustacchi     IN struct iscsi_kcqe        *kcqe_recv,
80*d14abf15SRobert Mustacchi     IN u32_t                     cid)
81*d14abf15SRobert Mustacchi {
82*d14abf15SRobert Mustacchi     BnxeDbgBreak((um_device_t *)_pdev);
83*d14abf15SRobert Mustacchi     return 0;
84*d14abf15SRobert Mustacchi }
85*d14abf15SRobert Mustacchi 
86*d14abf15SRobert Mustacchi 
mm_sc_complete_update_request(lm_device_t * pdev,struct iscsi_kcqe * kcqe)87*d14abf15SRobert Mustacchi lm_status_t mm_sc_complete_update_request(lm_device_t *pdev, struct iscsi_kcqe *kcqe)
88*d14abf15SRobert Mustacchi {
89*d14abf15SRobert Mustacchi     BnxeDbgBreak((um_device_t *)pdev);
90*d14abf15SRobert Mustacchi     return 0;
91*d14abf15SRobert Mustacchi }
92*d14abf15SRobert Mustacchi 
93*d14abf15SRobert Mustacchi 
94*d14abf15SRobert Mustacchi lm_status_t
mm_fc_complete_init_request(IN lm_device_t * pdev,IN struct fcoe_kcqe * kcqe)95*d14abf15SRobert Mustacchi mm_fc_complete_init_request(
96*d14abf15SRobert Mustacchi     IN    lm_device_t               *pdev,
97*d14abf15SRobert Mustacchi     IN    struct fcoe_kcqe          *kcqe)
98*d14abf15SRobert Mustacchi {
99*d14abf15SRobert Mustacchi     return (!BnxeFcoeInitCqe((um_device_t *)pdev, kcqe)) ?
100*d14abf15SRobert Mustacchi                LM_STATUS_FAILURE : LM_STATUS_SUCCESS;
101*d14abf15SRobert Mustacchi }
102*d14abf15SRobert Mustacchi 
103*d14abf15SRobert Mustacchi 
104*d14abf15SRobert Mustacchi lm_status_t
mm_fc_complete_destroy_request(IN lm_device_t * pdev,IN struct fcoe_kcqe * kcqe)105*d14abf15SRobert Mustacchi mm_fc_complete_destroy_request(
106*d14abf15SRobert Mustacchi     IN    lm_device_t               *pdev,
107*d14abf15SRobert Mustacchi     IN    struct fcoe_kcqe          *kcqe)
108*d14abf15SRobert Mustacchi {
109*d14abf15SRobert Mustacchi     return (!BnxeFcoeDestroyCqe((um_device_t *)pdev, kcqe)) ?
110*d14abf15SRobert Mustacchi                LM_STATUS_FAILURE : LM_STATUS_SUCCESS;
111*d14abf15SRobert Mustacchi }
112*d14abf15SRobert Mustacchi 
113*d14abf15SRobert Mustacchi 
114*d14abf15SRobert Mustacchi lm_status_t
mm_fc_complete_ofld_request(IN lm_device_t * pdev,IN lm_fcoe_state_t * fcoe,IN struct fcoe_kcqe * kcqe)115*d14abf15SRobert Mustacchi mm_fc_complete_ofld_request(
116*d14abf15SRobert Mustacchi     IN    lm_device_t               *pdev,
117*d14abf15SRobert Mustacchi     IN    lm_fcoe_state_t           *fcoe,
118*d14abf15SRobert Mustacchi     IN    struct fcoe_kcqe          *kcqe)
119*d14abf15SRobert Mustacchi {
120*d14abf15SRobert Mustacchi     return (!BnxeFcoeOffloadConnCqe((um_device_t *)pdev,
121*d14abf15SRobert Mustacchi                                     (BnxeFcoeState *)fcoe,
122*d14abf15SRobert Mustacchi                                     kcqe)) ?
123*d14abf15SRobert Mustacchi                LM_STATUS_FAILURE : LM_STATUS_SUCCESS;
124*d14abf15SRobert Mustacchi }
125*d14abf15SRobert Mustacchi 
126*d14abf15SRobert Mustacchi 
127*d14abf15SRobert Mustacchi lm_status_t
mm_fc_complete_enable_request(IN lm_device_t * pdev,IN lm_fcoe_state_t * fcoe,IN struct fcoe_kcqe * kcqe)128*d14abf15SRobert Mustacchi mm_fc_complete_enable_request(
129*d14abf15SRobert Mustacchi     IN    lm_device_t               *pdev,
130*d14abf15SRobert Mustacchi     IN    lm_fcoe_state_t           *fcoe,
131*d14abf15SRobert Mustacchi     IN    struct fcoe_kcqe          *kcqe)
132*d14abf15SRobert Mustacchi {
133*d14abf15SRobert Mustacchi     return (!BnxeFcoeEnableConnCqe((um_device_t *)pdev,
134*d14abf15SRobert Mustacchi                                    (BnxeFcoeState *)fcoe,
135*d14abf15SRobert Mustacchi                                    kcqe)) ?
136*d14abf15SRobert Mustacchi                LM_STATUS_FAILURE : LM_STATUS_SUCCESS;
137*d14abf15SRobert Mustacchi }
138*d14abf15SRobert Mustacchi 
139*d14abf15SRobert Mustacchi 
140*d14abf15SRobert Mustacchi lm_status_t
mm_fc_complete_stat_request(IN lm_device_t * pdev,IN struct fcoe_kcqe * kcqe)141*d14abf15SRobert Mustacchi mm_fc_complete_stat_request(
142*d14abf15SRobert Mustacchi     IN    lm_device_t               *pdev,
143*d14abf15SRobert Mustacchi     IN    struct fcoe_kcqe          *kcqe)
144*d14abf15SRobert Mustacchi {
145*d14abf15SRobert Mustacchi     return (!BnxeFcoeStatCqe((um_device_t *)pdev, kcqe)) ?
146*d14abf15SRobert Mustacchi                LM_STATUS_FAILURE : LM_STATUS_SUCCESS;
147*d14abf15SRobert Mustacchi }
148*d14abf15SRobert Mustacchi 
149*d14abf15SRobert Mustacchi 
150*d14abf15SRobert Mustacchi lm_status_t
mm_fc_complete_disable_request(IN lm_device_t * pdev,IN lm_fcoe_state_t * fcoe,IN struct fcoe_kcqe * kcqe)151*d14abf15SRobert Mustacchi mm_fc_complete_disable_request(
152*d14abf15SRobert Mustacchi     IN    lm_device_t               *pdev,
153*d14abf15SRobert Mustacchi     IN    lm_fcoe_state_t           *fcoe,
154*d14abf15SRobert Mustacchi     IN    struct fcoe_kcqe          *kcqe)
155*d14abf15SRobert Mustacchi {
156*d14abf15SRobert Mustacchi     return (!BnxeFcoeDisableConnCqe((um_device_t *)pdev,
157*d14abf15SRobert Mustacchi                                     (BnxeFcoeState *)fcoe,
158*d14abf15SRobert Mustacchi                                     kcqe)) ?
159*d14abf15SRobert Mustacchi                LM_STATUS_FAILURE : LM_STATUS_SUCCESS;
160*d14abf15SRobert Mustacchi }
161*d14abf15SRobert Mustacchi 
162*d14abf15SRobert Mustacchi 
163*d14abf15SRobert Mustacchi lm_status_t
mm_fc_complete_terminate_request(IN lm_device_t * pdev,IN lm_fcoe_state_t * fcoe,IN struct fcoe_kcqe * kcqe)164*d14abf15SRobert Mustacchi mm_fc_complete_terminate_request(
165*d14abf15SRobert Mustacchi     IN    lm_device_t               *pdev,
166*d14abf15SRobert Mustacchi     IN    lm_fcoe_state_t           *fcoe,
167*d14abf15SRobert Mustacchi     IN    struct fcoe_kcqe          *kcqe)
168*d14abf15SRobert Mustacchi {
169*d14abf15SRobert Mustacchi     return (!BnxeFcoeDestroyConnCqe((um_device_t *)pdev,
170*d14abf15SRobert Mustacchi                                     (BnxeFcoeState *)fcoe,
171*d14abf15SRobert Mustacchi                                     kcqe)) ?
172*d14abf15SRobert Mustacchi                LM_STATUS_FAILURE : LM_STATUS_SUCCESS;
173*d14abf15SRobert Mustacchi }
174*d14abf15SRobert Mustacchi 
175*d14abf15SRobert Mustacchi 
mm_sc_complete_offload_request(IN lm_device_t * pdev,IN lm_iscsi_state_t * iscsi,IN lm_status_t comp_status)176*d14abf15SRobert Mustacchi lm_status_t mm_sc_complete_offload_request(
177*d14abf15SRobert Mustacchi     IN    lm_device_t                *pdev,
178*d14abf15SRobert Mustacchi     IN    lm_iscsi_state_t           *iscsi,
179*d14abf15SRobert Mustacchi     IN    lm_status_t                 comp_status
180*d14abf15SRobert Mustacchi     )
181*d14abf15SRobert Mustacchi {
182*d14abf15SRobert Mustacchi     BnxeDbgBreak((um_device_t *)pdev);
183*d14abf15SRobert Mustacchi     return 0;
184*d14abf15SRobert Mustacchi }
185*d14abf15SRobert Mustacchi 
186