Lines Matching refs:vnicc
1148 QETH_CARD_HEX(card, 2, &card->options.vnicc.sup_chars, in qeth_l2_trace_features()
1149 sizeof(card->options.vnicc.sup_chars)); in qeth_l2_trace_features()
1910 struct qeth_ipacmd_vnicc *rep = &cmd->data.vnicc; in qeth_l2_vnicc_request_cb()
1911 u32 sub_cmd = cmd->data.vnicc.hdr.sub_command; in qeth_l2_vnicc_request_cb()
1917 card->options.vnicc.sup_chars = rep->vnicc_cmds.supported; in qeth_l2_vnicc_request_cb()
1918 card->options.vnicc.cur_chars = rep->vnicc_cmds.enabled; in qeth_l2_vnicc_request_cb()
1941 hdr = &__ipa_cmd(iob)->data.vnicc.hdr; in qeth_l2_vnicc_build_cmd()
1972 __ipa_cmd(iob)->data.vnicc.data.query_cmds.vnic_char = vnic_char; in qeth_l2_vnicc_query_cmds()
1988 __ipa_cmd(iob)->data.vnicc.data.set_char.vnic_char = vnic_char; in qeth_l2_vnicc_set_char()
1994 static int qeth_l2_vnicc_getset_timeout(struct qeth_card *card, u32 vnicc, in qeth_l2_vnicc_getset_timeout() argument
2006 getset_timeout = &__ipa_cmd(iob)->data.vnicc.data.getset_timeout; in qeth_l2_vnicc_getset_timeout()
2007 getset_timeout->vnic_char = vnicc; in qeth_l2_vnicc_getset_timeout()
2016 static bool qeth_l2_vnicc_recover_timeout(struct qeth_card *card, u32 vnicc, in qeth_l2_vnicc_recover_timeout() argument
2019 if (card->options.vnicc.sup_chars & vnicc && in qeth_l2_vnicc_recover_timeout()
2020 card->options.vnicc.getset_timeout_sup & vnicc && in qeth_l2_vnicc_recover_timeout()
2021 !qeth_l2_vnicc_getset_timeout(card, vnicc, IPA_VNICC_SET_TIMEOUT, in qeth_l2_vnicc_recover_timeout()
2029 int qeth_l2_vnicc_set_state(struct qeth_card *card, u32 vnicc, bool state) in qeth_l2_vnicc_set_state() argument
2037 if (!(card->options.vnicc.sup_chars & vnicc) || in qeth_l2_vnicc_set_state()
2038 !(card->options.vnicc.set_char_sup & vnicc)) in qeth_l2_vnicc_set_state()
2047 card->options.vnicc.wanted_chars |= vnicc; in qeth_l2_vnicc_set_state()
2050 card->options.vnicc.wanted_chars &= ~vnicc; in qeth_l2_vnicc_set_state()
2054 if (card->options.vnicc.cur_chars == card->options.vnicc.wanted_chars) in qeth_l2_vnicc_set_state()
2060 card->options.vnicc.cur_chars |= vnicc; in qeth_l2_vnicc_set_state()
2062 card->options.vnicc.cur_chars &= ~vnicc; in qeth_l2_vnicc_set_state()
2066 rc = qeth_l2_vnicc_set_char(card, vnicc, cmd); in qeth_l2_vnicc_set_state()
2068 card->options.vnicc.wanted_chars = in qeth_l2_vnicc_set_state()
2069 card->options.vnicc.cur_chars; in qeth_l2_vnicc_set_state()
2072 if (state && vnicc == QETH_VNICC_RX_BCAST) in qeth_l2_vnicc_set_state()
2073 card->options.vnicc.rx_bcast_enabled = true; in qeth_l2_vnicc_set_state()
2074 if (!state && vnicc == QETH_VNICC_LEARNING) in qeth_l2_vnicc_set_state()
2075 qeth_l2_vnicc_recover_timeout(card, vnicc, in qeth_l2_vnicc_set_state()
2076 &card->options.vnicc.learning_timeout); in qeth_l2_vnicc_set_state()
2083 int qeth_l2_vnicc_get_state(struct qeth_card *card, u32 vnicc, bool *state) in qeth_l2_vnicc_get_state() argument
2090 if (!(card->options.vnicc.sup_chars & vnicc)) in qeth_l2_vnicc_get_state()
2100 *state = (card->options.vnicc.cur_chars & vnicc) ? true : false; in qeth_l2_vnicc_get_state()
2114 if (!(card->options.vnicc.sup_chars & QETH_VNICC_LEARNING) || in qeth_l2_vnicc_set_timeout()
2115 !(card->options.vnicc.getset_timeout_sup & QETH_VNICC_LEARNING)) in qeth_l2_vnicc_set_timeout()
2122 if (card->options.vnicc.learning_timeout == timeout) in qeth_l2_vnicc_set_timeout()
2127 card->options.vnicc.learning_timeout = timeout; in qeth_l2_vnicc_set_timeout()
2135 card->options.vnicc.learning_timeout = timeout; in qeth_l2_vnicc_set_timeout()
2150 if (!(card->options.vnicc.sup_chars & QETH_VNICC_LEARNING) || in qeth_l2_vnicc_get_timeout()
2151 !(card->options.vnicc.getset_timeout_sup & QETH_VNICC_LEARNING)) in qeth_l2_vnicc_get_timeout()
2158 *timeout = card->options.vnicc.learning_timeout; in qeth_l2_vnicc_get_timeout()
2170 if (!card->options.vnicc.sup_chars) in _qeth_l2_vnicc_is_in_use()
2175 if (card->options.vnicc.cur_chars == QETH_VNICC_DEFAULT) { in _qeth_l2_vnicc_is_in_use()
2176 if (!card->options.vnicc.rx_bcast_enabled || in _qeth_l2_vnicc_is_in_use()
2199 static bool qeth_l2_vnicc_recover_char(struct qeth_card *card, u32 vnicc, in qeth_l2_vnicc_recover_char() argument
2204 if (card->options.vnicc.sup_chars & vnicc && in qeth_l2_vnicc_recover_char()
2205 card->options.vnicc.set_char_sup & vnicc && in qeth_l2_vnicc_recover_char()
2206 !qeth_l2_vnicc_set_char(card, vnicc, cmd)) in qeth_l2_vnicc_recover_char()
2208 card->options.vnicc.wanted_chars &= ~vnicc; in qeth_l2_vnicc_recover_char()
2209 card->options.vnicc.wanted_chars |= QETH_VNICC_DEFAULT & vnicc; in qeth_l2_vnicc_recover_char()
2216 u32 *timeout = &card->options.vnicc.learning_timeout; in qeth_l2_vnicc_init()
2220 u32 sup_cmds, vnicc; in qeth_l2_vnicc_init() local
2224 card->options.vnicc.rx_bcast_enabled = 0; in qeth_l2_vnicc_init()
2227 if (card->options.vnicc.wanted_chars != QETH_VNICC_DEFAULT || in qeth_l2_vnicc_init()
2231 card->options.vnicc.sup_chars = 0; in qeth_l2_vnicc_init()
2232 card->options.vnicc.cur_chars = 0; in qeth_l2_vnicc_init()
2233 card->options.vnicc.wanted_chars = QETH_VNICC_DEFAULT; in qeth_l2_vnicc_init()
2237 chars_tmp = card->options.vnicc.sup_chars; in qeth_l2_vnicc_init()
2238 chars_len = sizeof(card->options.vnicc.sup_chars) * BITS_PER_BYTE; in qeth_l2_vnicc_init()
2240 vnicc = BIT(i); in qeth_l2_vnicc_init()
2241 if (qeth_l2_vnicc_query_cmds(card, vnicc, &sup_cmds)) { in qeth_l2_vnicc_init()
2247 card->options.vnicc.getset_timeout_sup |= vnicc; in qeth_l2_vnicc_init()
2249 card->options.vnicc.getset_timeout_sup &= ~vnicc; in qeth_l2_vnicc_init()
2252 card->options.vnicc.set_char_sup |= vnicc; in qeth_l2_vnicc_init()
2254 card->options.vnicc.set_char_sup &= ~vnicc; in qeth_l2_vnicc_init()
2260 chars_tmp = card->options.vnicc.wanted_chars ^ in qeth_l2_vnicc_init()
2261 card->options.vnicc.cur_chars; in qeth_l2_vnicc_init()
2262 chars_len = sizeof(card->options.vnicc.wanted_chars) * BITS_PER_BYTE; in qeth_l2_vnicc_init()
2264 vnicc = BIT(i); in qeth_l2_vnicc_init()
2265 enable = card->options.vnicc.wanted_chars & vnicc; in qeth_l2_vnicc_init()
2266 error |= qeth_l2_vnicc_recover_char(card, vnicc, enable); in qeth_l2_vnicc_init()
2276 card->options.vnicc.sup_chars = QETH_VNICC_ALL; in qeth_l2_vnicc_set_defaults()
2277 card->options.vnicc.cur_chars = QETH_VNICC_DEFAULT; in qeth_l2_vnicc_set_defaults()
2278 card->options.vnicc.learning_timeout = QETH_VNICC_DEFAULT_TIMEOUT; in qeth_l2_vnicc_set_defaults()
2280 card->options.vnicc.set_char_sup = QETH_VNICC_ALL; in qeth_l2_vnicc_set_defaults()
2281 card->options.vnicc.getset_timeout_sup = QETH_VNICC_LEARNING; in qeth_l2_vnicc_set_defaults()
2283 card->options.vnicc.wanted_chars = QETH_VNICC_DEFAULT; in qeth_l2_vnicc_set_defaults()