4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License, v.1, (the "License").
6 * You may not use this file except in compliance with the License.
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 * or http://opensource.org/licenses/CDDL-1.0.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
23 * Copyright 2014-2017 Cavium, Inc.
24 * The contents of this file are subject to the terms of the Common Development
25 * and Distribution License, v.1, (the "License").
27 * You may not use this file except in compliance with the License.
29 * You can obtain a copy of the License at available
30 * at http://opensource.org/licenses/CDDL-1.0
32 * See the License for the specific language governing permissions and
33 * limitations under the License.
36 #ifndef __ECORE_INIT_OPS__
37 #define __ECORE_INIT_OPS__
42 * @brief ecore_init_iro_array - init iro_arr.
47 void ecore_init_iro_array(struct ecore_dev
*p_dev
);
50 * @brief ecore_init_run - Run the init-sequence.
58 * @return _ecore_status_t
60 enum _ecore_status_t
ecore_init_run(struct ecore_hwfn
*p_hwfn
,
61 struct ecore_ptt
*p_ptt
,
67 * @brief ecore_init_hwfn_allocate - Allocate RT array, Store 'values' ptrs.
72 * @return _ecore_status_t
74 enum _ecore_status_t
ecore_init_alloc(struct ecore_hwfn
*p_hwfn
);
77 * @brief ecore_init_hwfn_deallocate
82 void ecore_init_free(struct ecore_hwfn
*p_hwfn
);
86 * @brief ecore_init_clear_rt_data - Clears the runtime init array.
91 void ecore_init_clear_rt_data(struct ecore_hwfn
*p_hwfn
);
94 * @brief ecore_init_store_rt_reg - Store a configuration value in the RT array.
101 void ecore_init_store_rt_reg(struct ecore_hwfn
*p_hwfn
,
105 #define STORE_RT_REG(hwfn, offset, val) \
106 ecore_init_store_rt_reg(hwfn, offset, val)
108 #define OVERWRITE_RT_REG(hwfn, offset, val) \
109 ecore_init_store_rt_reg(hwfn, offset, val)
121 void ecore_init_store_rt_agg(struct ecore_hwfn
*p_hwfn
,
126 #define STORE_RT_REG_AGG(hwfn, offset, val) \
127 ecore_init_store_rt_agg(hwfn, offset, (u32*)&val, sizeof(val))
132 * Initialize GTT global windows and set admin window
133 * related params of GTT/PTT to default values.
137 void ecore_gtt_init(struct ecore_hwfn
*p_hwfn
);
138 #endif /* __ECORE_INIT_OPS__ */