Lines Matching refs:ncci

395 	word ncci;
420 ncci = GET_WORD(&msg->header.ncci);
426 && ((ncci == 0)
428 || ((ncci < MAX_NCCI + 1) && (a->ncci_plci[ncci] == plci->Id))))
472 ncci_ptr = &(a->ncci[ncci]);
481 && (((CAPI_MSG *)(&((byte *)(plci->msg_in_queue))[k]))->header.ncci == ncci))
781 word ncci, i, j, k;
789 ncci = ch;
794 ncci = force_ncci;
798 ncci = ch;
801 ncci = 1;
802 while ((ncci < MAX_NCCI + 1) && a->ncci_ch[ncci])
803 ncci++;
804 if (ncci == MAX_NCCI + 1)
832 ncci = ch;
835 a->ncci_plci[ncci] = plci->Id;
836 a->ncci_state[ncci] = IDLE;
838 plci->ncci_ring_list = ncci;
840 a->ncci_next[ncci] = a->ncci_next[plci->ncci_ring_list];
841 a->ncci_next[plci->ncci_ring_list] = (byte) ncci;
843 a->ncci_ch[ncci] = ch;
844 a->ch_ncci[ch] = (byte) ncci;
846 ncci_mapping_bug, ch, force_ncci, ch, ncci));
848 return (ncci);
852 static void ncci_free_receive_buffers(PLCI *plci, word ncci)
860 Id = (((dword) ncci) << 16) | (((word)(plci->Id)) << 8) | a->Id;
861 if (ncci)
863 if (a->ncci_plci[ncci] == plci->Id)
874 ncci_code = ncci | (((word) a->Id) << 8);
888 for (ncci = 1; ncci < MAX_NCCI + 1; ncci++)
890 if (a->ncci_plci[ncci] == plci->Id)
901 ncci_code = ncci | (((word) a->Id) << 8);
917 static void cleanup_ncci_data(PLCI *plci, word ncci)
921 if (ncci && (plci->adapter->ncci_plci[ncci] == plci->Id))
923 ncci_ptr = &(plci->adapter->ncci[ncci]);
944 static void ncci_remove(PLCI *plci, word ncci, byte preserve_ncci)
951 Id = (((dword) ncci) << 16) | (((word)(plci->Id)) << 8) | a->Id;
953 ncci_free_receive_buffers(plci, ncci);
954 if (ncci)
956 if (a->ncci_plci[ncci] != plci->Id)
964 cleanup_ncci_data(plci, ncci);
966 ncci_mapping_bug, Id, preserve_ncci, a->ncci_ch[ncci], ncci));
967 a->ch_ncci[a->ncci_ch[ncci]] = 0;
970 a->ncci_ch[ncci] = 0;
971 a->ncci_plci[ncci] = 0;
972 a->ncci_state[ncci] = IDLE;
974 while ((i != 0) && (a->ncci_next[i] != plci->ncci_ring_list) && (a->ncci_next[i] != ncci))
976 if ((i != 0) && (a->ncci_next[i] == ncci))
978 if (i == ncci)
980 else if (plci->ncci_ring_list == ncci)
982 a->ncci_next[i] = a->ncci_next[ncci];
984 a->ncci_next[ncci] = 0;
990 for (ncci = 1; ncci < MAX_NCCI + 1; ncci++)
992 if (a->ncci_plci[ncci] == plci->Id)
994 cleanup_ncci_data(plci, ncci);
996 ncci_mapping_bug, Id, preserve_ncci, a->ncci_ch[ncci], ncci));
997 a->ch_ncci[a->ncci_ch[ncci]] = 0;
1000 a->ncci_ch[ncci] = 0;
1001 a->ncci_plci[ncci] = 0;
1002 a->ncci_state[ncci] = IDLE;
1003 a->ncci_next[ncci] = 0;
2853 word ncci;
2867 ncci = (word)(Id >> 16);
2868 if (plci && ncci) {
2869 if (a->ncci_state[ncci] == INC_CON_PENDING) {
2872 a->ncci_state[ncci] = OUTG_REJ_PENDING;
2873 channel_request_xon(plci, a->ncci_ch[ncci]);
2875 cleanup_ncci_data(plci, ncci);
2876 nl_req_ncci(plci, N_DISC, (byte)ncci);
2879 a->ncci_state[ncci] = INC_ACT_PENDING;
2924 nl_req_ncci(plci, req, (byte)ncci);
2952 nl_req_ncci(plci, req, (byte)ncci);
2969 word ncci;
2971 ncci = (word)(Id >> 16);
2972 dbug(1, dprintf("connect_b3_a_res(ncci=0x%x)", ncci));
2974 if (plci && ncci && (plci->State != IDLE) && (plci->State != INC_DIS_PENDING)
2977 if (a->ncci_state[ncci] == INC_ACT_PENDING) {
2978 a->ncci_state[ncci] = CONNECTED;
2980 channel_request_xon(plci, a->ncci_ch[ncci]);
2991 word ncci;
2997 ncci = (word)(Id >> 16);
2998 if (plci && ncci)
3001 if ((a->ncci_state[ncci] == CONNECTED)
3002 || (a->ncci_state[ncci] == OUTG_CON_PENDING)
3003 || (a->ncci_state[ncci] == INC_CON_PENDING)
3004 || (a->ncci_state[ncci] == INC_ACT_PENDING))
3006 a->ncci_state[ncci] = OUTG_DIS_PENDING;
3007 channel_request_xon(plci, a->ncci_ch[ncci]);
3010 if (a->ncci[ncci].data_pending
3015 plci->send_disc = (byte)ncci;
3021 cleanup_ncci_data(plci, ncci);
3031 nl_req_ncci(plci, N_DISC, (byte)ncci);
3047 word ncci;
3050 ncci = (word)(Id >> 16);
3051 dbug(1, dprintf("disconnect_b3_res(ncci=0x%x", ncci));
3052 if (plci && ncci) {
3061 for (i = 0; i < MAX_CHANNELS_PER_PLCI && plci->inc_dis_ncci_table[i] != (byte)ncci; i++);
3067 ncci_free_receive_buffers(plci, ncci);
3086 && (a->ncci_state[ncci] == INC_DIS_PENDING))
3088 ncci_free_receive_buffers(plci, ncci);
3090 nl_req_ncci(plci, N_EDATA, (byte)ncci);
3092 plci->adapter->ncci_state[ncci] = IDLE;
3107 word ncci;
3113 ncci = (word)(Id >> 16);
3114 dbug(1, dprintf("ncci=0x%x, plci=0x%x", ncci, plci));
3116 if (plci && ncci)
3119 if ((a->ncci_state[ncci] == CONNECTED)
3120 || (a->ncci_state[ncci] == INC_ACT_PENDING))
3123 ncci_ptr = &(a->ncci[ncci]);
3183 word ncci;
3188 ncci = (word)(Id >> 16);
3189 if (plci && ncci) {
3192 NCCIcode = ncci | (((word) a->Id) << 8);
3199 if (channel_can_xon(plci, a->ncci_ch[ncci])) {
3200 channel_request_xon(plci, a->ncci_ch[ncci]);
3205 nl_req_ncci(plci, N_DATA_ACK, (byte)ncci);
3217 word ncci;
3222 ncci = (word)(Id >> 16);
3223 if (plci && ncci)
3230 if (a->ncci_state[ncci] == CONNECTED)
3232 nl_req_ncci(plci, N_RESET, (byte)ncci);
3238 if (a->ncci_state[ncci] == CONNECTED)
3258 word ncci;
3262 ncci = (word)(Id >> 16);
3263 if (plci && ncci) {
3268 if (a->ncci_state[ncci] == INC_RES_PENDING)
3270 a->ncci_state[ncci] = CONNECTED;
3271 nl_req_ncci(plci, N_RESET_ACK, (byte)ncci);
3283 word ncci;
3289 ncci = (word)(Id >> 16);
3290 if (plci && ncci) {
3291 if (a->ncci_state[ncci] == INC_ACT_PENDING) {
3292 a->ncci_state[ncci] = CONNECTED;
3294 else if (a->ncci_state[ncci] == INC_CON_PENDING) {
3295 a->ncci_state[ncci] = CONNECTED;
3307 nl_req_ncci(plci, req, (byte)ncci);
3440 word ncci;
3605 for (ncci = 1; ncci < MAX_NCCI + 1; ncci++)
3607 if ((a->ncci_plci[ncci] == plci->Id) && (a->ncci_state[ncci] == CONNECTED))
3609 a->ncci_state[ncci] = OUTG_DIS_PENDING;
3610 cleanup_ncci_data(plci, ncci);
3611 nl_req_ncci(plci, N_DISC, (byte)ncci);
4105 word ncci;
4131 ncci = a->ch_ncci[ch];
4134 Id = (((dword)(ncci ? ncci : ch)) << 16) | ((word)plci->Id << 8) | a->Id;
4240 ncci = get_ncci(plci, ch, 0);
4241 Id = (Id & 0xffff) | (((dword) ncci) << 16);
4245 a->ncci_state[ncci] = INC_ACT_PENDING;
4251 a->ncci_state[ncci] = OUTG_CON_PENDING;
4473 if (a->ncci_state[ncci] == CONNECTED)
4475 a->ncci_state[ncci] = OUTG_DIS_PENDING;
4476 cleanup_ncci_data(plci, ncci);
4477 nl_req_ncci(plci, N_DISC, (byte)ncci);
4624 ncci = get_ncci(plci, ch, 0);
4625 Id = (Id & 0xffff) | (((dword) ncci) << 16);
4627 a->ncci_state[ncci] = OUTG_CON_PENDING;
4770 word ncci;
4776 ncci = a->ch_ncci[ch];
4777 if (ncci && (a->ncci_plci[ncci] == plci->Id))
4779 ncci_ptr = &(a->ncci[ncci]);
4784 if (!(data->Flags & 4) && a->ncci_state[ncci])
4786 Id = (((dword)ncci) << 16) | ((word)plci->Id << 8) | a->Id;
4805 word ncci;
4808 ncci = a->ch_ncci[ch];
4809 ncci_ptr = &(a->ncci[ncci]);
4812 if (a->ncci_state[ncci] && (a->ncci_plci[ncci] == plci->Id))
4814 Id = (((dword)ncci) << 16) | ((word)plci->Id << 8) | a->Id;
4879 word ncci;
4917 for (ncci = 1; ncci < MAX_NCCI + 1; ncci++)
4919 if (a->ncci_plci[ncci] == plci->Id)
4921 cleanup_ncci_data(plci, ncci);
4924 sendf(plci->appl, _DISCONNECT_B3_I, (((dword) ncci) << 16) | Id, 0, "ws", 0, "");
6491 word ncci;
6571 ncci = a->ch_ncci[ch];
6572 Id = (((dword)(ncci ? ncci : ch)) << 16) | (((word) plci->Id) << 8) | a->Id;
6669 if (((a->ncci_state[ncci] == INC_ACT_PENDING) || (a->ncci_state[ncci] == OUTG_CON_PENDING))
6673 a->ncci_state[ncci] = INC_ACT_PENDING;
6893 dbug(1, dprintf("EDATA ncci=0x%x state=%d code=%02x", ncci, a->ncci_state[ncci],
6900 && (a->ncci_state[ncci] == OUTG_CON_PENDING)
6917 if ((a->ncci_state[ncci] == OUTG_CON_PENDING)
6922 a->ncci_state[ncci] = INC_ACT_PENDING;
6932 if ((a->ncci_state[ncci] == INC_ACT_PENDING)
6945 if (a->ncci_state[ncci] == CONNECTED)
6948 a->ncci_state[ncci] = INC_DIS_PENDING;
6960 if ((a->ncci_state[ncci] == INC_ACT_PENDING)
6982 dbug(1, dprintf("EDATA ncci=0x%x state=%d", ncci, a->ncci_state[ncci]));
6988 ncci = get_ncci(plci, ch, 0);
6989 Id = (Id & 0xffff) | (((dword) ncci) << 16);
6992 ch, a->ncci_state[ncci], a->ncci_plci[ncci], plci->Id, plci->State));
6995 if (a->ncci_state[ncci] == IDLE)
7000 a->ncci_state[ncci] = INC_CON_PENDING;
7021 if (a->ncci_state[ncci] != OUTG_CON_PENDING)
7023 a->ncci_state[ncci] = INC_ACT_PENDING;
7028 if ((a->ncci_state[ncci] == OUTG_CON_PENDING)
7032 a->ncci_state[ncci] = INC_ACT_PENDING;
7042 a->ncci_state[ncci] = INC_ACT_PENDING;
7062 ncci_state = a->ncci_state[ncci];
7063 ncci_remove(plci, ncci, false);
7070 plci->inc_dis_ncci_table[i] = (byte) ncci;
7145 a->ncci_state[ncci] = INC_RES_PENDING;
7149 a->ncci_state[ncci] = CONNECTED;
7164 if (((a->ncci_state[ncci] != CONNECTED) && (plci->B2_prot == 1)) /* transparent */
7165 || (a->ncci_state[ncci] == IDLE)
7166 || (a->ncci_state[ncci] == INC_DIS_PENDING))
7171 if ((a->ncci_state[ncci] != CONNECTED)
7172 && (a->ncci_state[ncci] != OUTG_DIS_PENDING)
7173 && (a->ncci_state[ncci] != OUTG_REJ_PENDING))
7181 NCCIcode = ncci | (((word)a->Id) << 8);
8729 static void nl_req_ncci(PLCI *plci, byte req, byte ncci)
8733 dbug(1, dprintf("nl_req %02x %02x %02x", plci->Id, req, ncci));
8737 ncci_remove(plci, 0, (byte)(ncci != 0));
8738 ncci = 0;
8747 plci->RBuffer[plci->req_in++] = plci->adapter->ncci_ch[ncci]; /* channel */
8812 word ncci;
8817 ncci = plci->ncci_ring_list;
8820 ncci = a->ncci_next[ncci];
8821 ncci_ptr = &(a->ncci[ncci]);
8822 if (!(a->ncci_ch[ncci]
8823 && (a->ch_flow_control[a->ncci_ch[ncci]] & N_OK_FC_PENDING)))
8827 if ((a->ncci_state[ncci] == CONNECTED)
8828 || (a->ncci_state[ncci] == INC_ACT_PENDING)
8829 || (plci->send_disc == ncci))
8860 plci->NL.ReqCh = a->ncci_ch[ncci];
8867 cleanup_ncci_data(plci, ncci);
8870 else if (plci->send_disc == ncci)
8874 plci->NL.ReqCh = a->ncci_ch[ncci];
8881 } while (!plci->nl_req && (ncci != plci->ncci_ring_list));
8882 plci->ncci_ring_list = ncci;
11304 ((CAPI_MSG *) msg)->header.ncci = 0;
13660 ncci_ptr = &(plci->adapter->ncci[plci->adjust_b_ncci]);