1/* 2 * Copyright (c) 2012, The Linux Foundation. All rights reserved. 3 * Permission to use, copy, modify, and/or distribute this software for 4 * any purpose with or without fee is hereby granted, provided that the 5 * above copyright notice and this permission notice appear in all copies. 6 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 7 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 8 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 9 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 10 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 11 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT 12 * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 13 */ 14 15 16#ifndef _ISISC_MISC_H_ 17#define _ISISC_MISC_H_ 18 19#ifdef __cplusplus 20extern "C" { 21#endif /* __cplusplus */ 22 23#include "fal/fal_misc.h" 24 25 sw_error_t isisc_misc_init(a_uint32_t dev_id); 26 27#ifdef IN_MISC 28#define ISISC_MISC_INIT(rv, dev_id) \ 29 { \ 30 rv = isisc_misc_init(dev_id); \ 31 SW_RTN_ON_ERROR(rv); \ 32 } 33#else 34#define ISISC_MISC_INIT(rv, dev_id) 35#endif 36 37#ifdef HSL_STANDALONG 38 39 40 HSL_LOCAL sw_error_t 41 isisc_frame_max_size_set(a_uint32_t dev_id, a_uint32_t size); 42 43 44 HSL_LOCAL sw_error_t 45 isisc_frame_max_size_get(a_uint32_t dev_id, a_uint32_t * size); 46 47 48 HSL_LOCAL sw_error_t 49 isisc_port_unk_uc_filter_set(a_uint32_t dev_id, fal_port_t port_id, 50 a_bool_t enable); 51 52 53 HSL_LOCAL sw_error_t 54 isisc_port_unk_uc_filter_get(a_uint32_t dev_id, fal_port_t port_id, 55 a_bool_t * enable); 56 57 58 HSL_LOCAL sw_error_t 59 isisc_port_unk_mc_filter_set(a_uint32_t dev_id, fal_port_t port_id, 60 a_bool_t enable); 61 62 63 HSL_LOCAL sw_error_t 64 isisc_port_unk_mc_filter_get(a_uint32_t dev_id, fal_port_t port_id, 65 a_bool_t * enable); 66 67 68 HSL_LOCAL sw_error_t 69 isisc_port_bc_filter_set(a_uint32_t dev_id, fal_port_t port_id, 70 a_bool_t enable); 71 72 73 HSL_LOCAL sw_error_t 74 isisc_port_bc_filter_get(a_uint32_t dev_id, fal_port_t port_id, 75 a_bool_t * enable); 76 77 78 HSL_LOCAL sw_error_t 79 isisc_cpu_port_status_set(a_uint32_t dev_id, a_bool_t enable); 80 81 82 HSL_LOCAL sw_error_t 83 isisc_cpu_port_status_get(a_uint32_t dev_id, a_bool_t * enable); 84 85 86 HSL_LOCAL sw_error_t 87 isisc_pppoe_cmd_set(a_uint32_t dev_id, fal_fwd_cmd_t cmd); 88 89 90 HSL_LOCAL sw_error_t 91 isisc_pppoe_cmd_get(a_uint32_t dev_id, fal_fwd_cmd_t * cmd); 92 93 94 HSL_LOCAL sw_error_t 95 isisc_pppoe_status_set(a_uint32_t dev_id, a_bool_t enable); 96 97 98 HSL_LOCAL sw_error_t 99 isisc_pppoe_status_get(a_uint32_t dev_id, a_bool_t * enable); 100 101 102 HSL_LOCAL sw_error_t 103 isisc_port_dhcp_set(a_uint32_t dev_id, fal_port_t port_id, a_bool_t enable); 104 105 106 HSL_LOCAL sw_error_t 107 isisc_port_dhcp_get(a_uint32_t dev_id, fal_port_t port_id, a_bool_t * enable); 108 109 110 HSL_LOCAL sw_error_t 111 isisc_arp_cmd_set(a_uint32_t dev_id, fal_fwd_cmd_t cmd); 112 113 114 HSL_LOCAL sw_error_t 115 isisc_arp_cmd_get(a_uint32_t dev_id, fal_fwd_cmd_t * cmd); 116 117 118 HSL_LOCAL sw_error_t 119 isisc_eapol_cmd_set(a_uint32_t dev_id, fal_fwd_cmd_t cmd); 120 121 122 HSL_LOCAL sw_error_t 123 isisc_eapol_cmd_get(a_uint32_t dev_id, fal_fwd_cmd_t * cmd); 124 125 126 HSL_LOCAL sw_error_t 127 isisc_pppoe_session_table_add(a_uint32_t dev_id, fal_pppoe_session_t * session_tbl); 128 129 130 HSL_LOCAL sw_error_t 131 isisc_pppoe_session_table_del(a_uint32_t dev_id, fal_pppoe_session_t * session_tbl); 132 133 134 HSL_LOCAL sw_error_t 135 isisc_pppoe_session_table_get(a_uint32_t dev_id, fal_pppoe_session_t * session_tbl); 136 137 138 HSL_LOCAL sw_error_t 139 isisc_pppoe_session_id_set(a_uint32_t dev_id, a_uint32_t index, 140 a_uint32_t id); 141 142 143 HSL_LOCAL sw_error_t 144 isisc_pppoe_session_id_get(a_uint32_t dev_id, a_uint32_t index, 145 a_uint32_t * id); 146 147 148 HSL_LOCAL sw_error_t 149 isisc_eapol_status_set(a_uint32_t dev_id, a_uint32_t port_id, a_bool_t enable); 150 151 HSL_LOCAL sw_error_t 152 isisc_eapol_status_get(a_uint32_t dev_id, a_uint32_t port_id, a_bool_t * enable); 153 154 HSL_LOCAL sw_error_t 155 isisc_ripv1_status_set(a_uint32_t dev_id, a_bool_t enable); 156 157 HSL_LOCAL sw_error_t 158 isisc_ripv1_status_get(a_uint32_t dev_id, a_bool_t * enable); 159 160 161 HSL_LOCAL sw_error_t 162 isisc_port_arp_req_status_set(a_uint32_t dev_id, fal_port_t port_id, a_bool_t enable); 163 164 165 HSL_LOCAL sw_error_t 166 isisc_port_arp_req_status_get(a_uint32_t dev_id, fal_port_t port_id, a_bool_t *enable); 167 168 169 HSL_LOCAL sw_error_t 170 isisc_port_arp_ack_status_set(a_uint32_t dev_id, fal_port_t port_id, a_bool_t enable); 171 172 173 HSL_LOCAL sw_error_t 174 isisc_port_arp_ack_status_get(a_uint32_t dev_id, fal_port_t port_id, a_bool_t *enable); 175 176 177 HSL_LOCAL sw_error_t 178 isisc_intr_mask_set(a_uint32_t dev_id, a_uint32_t intr_mask); 179 180 181 HSL_LOCAL sw_error_t 182 isisc_intr_mask_get(a_uint32_t dev_id, a_uint32_t * intr_mask); 183 184 185 HSL_LOCAL sw_error_t 186 isisc_intr_status_get(a_uint32_t dev_id, a_uint32_t * intr_status); 187 188 189 HSL_LOCAL sw_error_t 190 isisc_intr_status_clear(a_uint32_t dev_id, a_uint32_t intr_status); 191 192 193 HSL_LOCAL sw_error_t 194 isisc_intr_port_link_mask_set(a_uint32_t dev_id, a_uint32_t port_id, a_uint32_t intr_mask_flag); 195 196 197 HSL_LOCAL sw_error_t 198 isisc_intr_port_link_mask_get(a_uint32_t dev_id, a_uint32_t port_id, a_uint32_t * intr_mask_flag); 199 200 201 HSL_LOCAL sw_error_t 202 isisc_intr_port_link_status_get(a_uint32_t dev_id, a_uint32_t port_id, a_uint32_t * intr_mask_flag); 203 204 HSL_LOCAL sw_error_t 205 isisc_intr_mask_mac_linkchg_set(a_uint32_t dev_id, a_uint32_t port_id, a_bool_t enable); 206 207 208 HSL_LOCAL sw_error_t 209 isisc_intr_mask_mac_linkchg_get(a_uint32_t dev_id, a_uint32_t port_id, a_bool_t * enable); 210 211 HSL_LOCAL sw_error_t 212 isisc_intr_status_mac_linkchg_get(a_uint32_t dev_id, fal_pbmp_t *port_bitmap); 213 214 HSL_LOCAL sw_error_t 215 isisc_cpu_vid_en_set(a_uint32_t dev_id, a_bool_t enable); 216 217 218 HSL_LOCAL sw_error_t 219 isisc_cpu_vid_en_get(a_uint32_t dev_id, a_bool_t * enable); 220 221 HSL_LOCAL sw_error_t 222 isisc_rtd_pppoe_en_set(a_uint32_t dev_id, a_bool_t enable); 223 224 225 HSL_LOCAL sw_error_t 226 isisc_rtd_pppoe_en_get(a_uint32_t dev_id, a_bool_t * enable); 227 228 HSL_LOCAL sw_error_t 229 isisc_intr_status_mac_linkchg_clear(a_uint32_t dev_id); 230 231#endif 232 233#ifdef __cplusplus 234} 235#endif /* __cplusplus */ 236 237#endif 238 239