Lines Matching refs:vnicc

962 	QETH_CARD_HEX(card, 2, &card->options.vnicc.sup_chars,
963 sizeof(card->options.vnicc.sup_chars));
1799 struct qeth_ipacmd_vnicc *rep = &cmd->data.vnicc;
1800 u32 sub_cmd = cmd->data.vnicc.hdr.sub_command;
1806 card->options.vnicc.sup_chars = rep->vnicc_cmds.supported;
1807 card->options.vnicc.cur_chars = rep->vnicc_cmds.enabled;
1830 hdr = &__ipa_cmd(iob)->data.vnicc.hdr;
1861 __ipa_cmd(iob)->data.vnicc.data.query_cmds.vnic_char = vnic_char;
1877 __ipa_cmd(iob)->data.vnicc.data.set_char.vnic_char = vnic_char;
1883 static int qeth_l2_vnicc_getset_timeout(struct qeth_card *card, u32 vnicc,
1895 getset_timeout = &__ipa_cmd(iob)->data.vnicc.data.getset_timeout;
1896 getset_timeout->vnic_char = vnicc;
1905 static bool qeth_l2_vnicc_recover_timeout(struct qeth_card *card, u32 vnicc,
1908 if (card->options.vnicc.sup_chars & vnicc &&
1909 card->options.vnicc.getset_timeout_sup & vnicc &&
1910 !qeth_l2_vnicc_getset_timeout(card, vnicc, IPA_VNICC_SET_TIMEOUT,
1918 int qeth_l2_vnicc_set_state(struct qeth_card *card, u32 vnicc, bool state)
1926 if (!(card->options.vnicc.sup_chars & vnicc) ||
1927 !(card->options.vnicc.set_char_sup & vnicc))
1936 card->options.vnicc.wanted_chars |= vnicc;
1939 card->options.vnicc.wanted_chars &= ~vnicc;
1943 if (card->options.vnicc.cur_chars == card->options.vnicc.wanted_chars)
1949 card->options.vnicc.cur_chars |= vnicc;
1951 card->options.vnicc.cur_chars &= ~vnicc;
1955 rc = qeth_l2_vnicc_set_char(card, vnicc, cmd);
1957 card->options.vnicc.wanted_chars =
1958 card->options.vnicc.cur_chars;
1961 if (state && vnicc == QETH_VNICC_RX_BCAST)
1962 card->options.vnicc.rx_bcast_enabled = true;
1963 if (!state && vnicc == QETH_VNICC_LEARNING)
1964 qeth_l2_vnicc_recover_timeout(card, vnicc,
1965 &card->options.vnicc.learning_timeout);
1972 int qeth_l2_vnicc_get_state(struct qeth_card *card, u32 vnicc, bool *state)
1979 if (!(card->options.vnicc.sup_chars & vnicc))
1989 *state = (card->options.vnicc.cur_chars & vnicc) ? true : false;
2003 if (!(card->options.vnicc.sup_chars & QETH_VNICC_LEARNING) ||
2004 !(card->options.vnicc.getset_timeout_sup & QETH_VNICC_LEARNING))
2011 if (card->options.vnicc.learning_timeout == timeout)
2016 card->options.vnicc.learning_timeout = timeout;
2024 card->options.vnicc.learning_timeout = timeout;
2039 if (!(card->options.vnicc.sup_chars & QETH_VNICC_LEARNING) ||
2040 !(card->options.vnicc.getset_timeout_sup & QETH_VNICC_LEARNING))
2047 *timeout = card->options.vnicc.learning_timeout;
2059 if (!card->options.vnicc.sup_chars)
2064 if (card->options.vnicc.cur_chars == QETH_VNICC_DEFAULT) {
2065 if (!card->options.vnicc.rx_bcast_enabled ||
2088 static bool qeth_l2_vnicc_recover_char(struct qeth_card *card, u32 vnicc,
2093 if (card->options.vnicc.sup_chars & vnicc &&
2094 card->options.vnicc.set_char_sup & vnicc &&
2095 !qeth_l2_vnicc_set_char(card, vnicc, cmd))
2097 card->options.vnicc.wanted_chars &= ~vnicc;
2098 card->options.vnicc.wanted_chars |= QETH_VNICC_DEFAULT & vnicc;
2105 u32 *timeout = &card->options.vnicc.learning_timeout;
2109 u32 sup_cmds, vnicc;
2113 card->options.vnicc.rx_bcast_enabled = 0;
2116 if (card->options.vnicc.wanted_chars != QETH_VNICC_DEFAULT ||
2120 card->options.vnicc.sup_chars = 0;
2121 card->options.vnicc.cur_chars = 0;
2122 card->options.vnicc.wanted_chars = QETH_VNICC_DEFAULT;
2126 chars_tmp = card->options.vnicc.sup_chars;
2127 chars_len = sizeof(card->options.vnicc.sup_chars) * BITS_PER_BYTE;
2129 vnicc = BIT(i);
2130 if (qeth_l2_vnicc_query_cmds(card, vnicc, &sup_cmds)) {
2136 card->options.vnicc.getset_timeout_sup |= vnicc;
2138 card->options.vnicc.getset_timeout_sup &= ~vnicc;
2141 card->options.vnicc.set_char_sup |= vnicc;
2143 card->options.vnicc.set_char_sup &= ~vnicc;
2149 chars_tmp = card->options.vnicc.wanted_chars ^
2150 card->options.vnicc.cur_chars;
2151 chars_len = sizeof(card->options.vnicc.wanted_chars) * BITS_PER_BYTE;
2153 vnicc = BIT(i);
2154 enable = card->options.vnicc.wanted_chars & vnicc;
2155 error |= qeth_l2_vnicc_recover_char(card, vnicc, enable);
2165 card->options.vnicc.sup_chars = QETH_VNICC_ALL;
2166 card->options.vnicc.cur_chars = QETH_VNICC_DEFAULT;
2167 card->options.vnicc.learning_timeout = QETH_VNICC_DEFAULT_TIMEOUT;
2169 card->options.vnicc.set_char_sup = QETH_VNICC_ALL;
2170 card->options.vnicc.getset_timeout_sup = QETH_VNICC_LEARNING;
2172 card->options.vnicc.wanted_chars = QETH_VNICC_DEFAULT;