• Home
  • Raw
  • Download

Lines Matching refs:bcs

78 modejade(struct BCState *bcs, int mode, int bc)  in modejade()  argument
80 struct IsdnCardState *cs = bcs->cs; in modejade()
81 int jade = bcs->hw.hscx.hscx; in modejade()
86 bcs->mode = mode; in modejade()
87 bcs->channel = bc; in modejade()
133 struct BCState *bcs = st->l1.bcs; in jade_l2l1() local
139 spin_lock_irqsave(&bcs->cs->lock, flags); in jade_l2l1()
140 if (bcs->tx_skb) { in jade_l2l1()
141 skb_queue_tail(&bcs->squeue, skb); in jade_l2l1()
143 bcs->tx_skb = skb; in jade_l2l1()
144 test_and_set_bit(BC_FLG_BUSY, &bcs->Flag); in jade_l2l1()
145 bcs->hw.hscx.count = 0; in jade_l2l1()
146 bcs->cs->BC_Send_Data(bcs); in jade_l2l1()
148 spin_unlock_irqrestore(&bcs->cs->lock, flags); in jade_l2l1()
151 spin_lock_irqsave(&bcs->cs->lock, flags); in jade_l2l1()
152 if (bcs->tx_skb) { in jade_l2l1()
155 test_and_set_bit(BC_FLG_BUSY, &bcs->Flag); in jade_l2l1()
156 bcs->tx_skb = skb; in jade_l2l1()
157 bcs->hw.hscx.count = 0; in jade_l2l1()
158 bcs->cs->BC_Send_Data(bcs); in jade_l2l1()
160 spin_unlock_irqrestore(&bcs->cs->lock, flags); in jade_l2l1()
163 if (!bcs->tx_skb) { in jade_l2l1()
170 spin_lock_irqsave(&bcs->cs->lock, flags); in jade_l2l1()
171 test_and_set_bit(BC_FLG_ACTIV, &bcs->Flag); in jade_l2l1()
172 modejade(bcs, st->l1.mode, st->l1.bc); in jade_l2l1()
173 spin_unlock_irqrestore(&bcs->cs->lock, flags); in jade_l2l1()
180 spin_lock_irqsave(&bcs->cs->lock, flags); in jade_l2l1()
181 test_and_clear_bit(BC_FLG_ACTIV, &bcs->Flag); in jade_l2l1()
182 test_and_clear_bit(BC_FLG_BUSY, &bcs->Flag); in jade_l2l1()
183 modejade(bcs, 0, st->l1.bc); in jade_l2l1()
184 spin_unlock_irqrestore(&bcs->cs->lock, flags); in jade_l2l1()
191 close_jadestate(struct BCState *bcs) in close_jadestate() argument
193 modejade(bcs, 0, bcs->channel); in close_jadestate()
194 if (test_and_clear_bit(BC_FLG_INIT, &bcs->Flag)) { in close_jadestate()
195 kfree(bcs->hw.hscx.rcvbuf); in close_jadestate()
196 bcs->hw.hscx.rcvbuf = NULL; in close_jadestate()
197 kfree(bcs->blog); in close_jadestate()
198 bcs->blog = NULL; in close_jadestate()
199 skb_queue_purge(&bcs->rqueue); in close_jadestate()
200 skb_queue_purge(&bcs->squeue); in close_jadestate()
201 if (bcs->tx_skb) { in close_jadestate()
202 dev_kfree_skb_any(bcs->tx_skb); in close_jadestate()
203 bcs->tx_skb = NULL; in close_jadestate()
204 test_and_clear_bit(BC_FLG_BUSY, &bcs->Flag); in close_jadestate()
210 open_jadestate(struct IsdnCardState *cs, struct BCState *bcs) in open_jadestate() argument
212 if (!test_and_set_bit(BC_FLG_INIT, &bcs->Flag)) { in open_jadestate()
213 if (!(bcs->hw.hscx.rcvbuf = kmalloc(HSCX_BUFMAX, GFP_ATOMIC))) { in open_jadestate()
216 test_and_clear_bit(BC_FLG_INIT, &bcs->Flag); in open_jadestate()
219 if (!(bcs->blog = kmalloc(MAX_BLOG_SPACE, GFP_ATOMIC))) { in open_jadestate()
222 test_and_clear_bit(BC_FLG_INIT, &bcs->Flag); in open_jadestate()
223 kfree(bcs->hw.hscx.rcvbuf); in open_jadestate()
224 bcs->hw.hscx.rcvbuf = NULL; in open_jadestate()
227 skb_queue_head_init(&bcs->rqueue); in open_jadestate()
228 skb_queue_head_init(&bcs->squeue); in open_jadestate()
230 bcs->tx_skb = NULL; in open_jadestate()
231 test_and_clear_bit(BC_FLG_BUSY, &bcs->Flag); in open_jadestate()
232 bcs->event = 0; in open_jadestate()
233 bcs->hw.hscx.rcvidx = 0; in open_jadestate()
234 bcs->tx_cnt = 0; in open_jadestate()
240 setstack_jade(struct PStack *st, struct BCState *bcs) in setstack_jade() argument
242 bcs->channel = st->l1.bc; in setstack_jade()
243 if (open_jadestate(st->l1.hardware, bcs)) in setstack_jade()
245 st->l1.bcs = bcs; in setstack_jade()
248 bcs->st = st; in setstack_jade()
277 cs->bcs[0].BC_SetStack = setstack_jade; in initjade()
278 cs->bcs[1].BC_SetStack = setstack_jade; in initjade()
279 cs->bcs[0].BC_Close = close_jadestate; in initjade()
280 cs->bcs[1].BC_Close = close_jadestate; in initjade()
281 cs->bcs[0].hw.hscx.hscx = 0; in initjade()
282 cs->bcs[1].hw.hscx.hscx = 1; in initjade()
303 modejade(cs->bcs, 0, 0); in initjade()
304 modejade(cs->bcs + 1, 0, 0); in initjade()