• Home
  • Raw
  • Download

Lines Matching refs:cp

250 	struct pvr2_channel *cp;  in pvr2_context_reset_input_limits()  local
254 for (cp = mp->mc_first; cp; cp = cp->mc_next) { in pvr2_context_reset_input_limits()
255 if (!cp->input_mask) continue; in pvr2_context_reset_input_limits()
256 tmsk &= cp->input_mask; in pvr2_context_reset_input_limits()
288 void pvr2_channel_init(struct pvr2_channel *cp,struct pvr2_context *mp) in pvr2_channel_init() argument
291 cp->hdw = mp->hdw; in pvr2_channel_init()
292 cp->mc_head = mp; in pvr2_channel_init()
293 cp->mc_next = NULL; in pvr2_channel_init()
294 cp->mc_prev = mp->mc_last; in pvr2_channel_init()
296 mp->mc_last->mc_next = cp; in pvr2_channel_init()
298 mp->mc_first = cp; in pvr2_channel_init()
300 mp->mc_last = cp; in pvr2_channel_init()
305 static void pvr2_channel_disclaim_stream(struct pvr2_channel *cp) in pvr2_channel_disclaim_stream() argument
307 if (!cp->stream) return; in pvr2_channel_disclaim_stream()
308 pvr2_stream_kill(cp->stream->stream); in pvr2_channel_disclaim_stream()
309 cp->stream->user = NULL; in pvr2_channel_disclaim_stream()
310 cp->stream = NULL; in pvr2_channel_disclaim_stream()
314 void pvr2_channel_done(struct pvr2_channel *cp) in pvr2_channel_done() argument
316 struct pvr2_context *mp = cp->mc_head; in pvr2_channel_done()
318 cp->input_mask = 0; in pvr2_channel_done()
319 pvr2_channel_disclaim_stream(cp); in pvr2_channel_done()
321 if (cp->mc_next) { in pvr2_channel_done()
322 cp->mc_next->mc_prev = cp->mc_prev; in pvr2_channel_done()
324 mp->mc_last = cp->mc_prev; in pvr2_channel_done()
326 if (cp->mc_prev) { in pvr2_channel_done()
327 cp->mc_prev->mc_next = cp->mc_next; in pvr2_channel_done()
329 mp->mc_first = cp->mc_next; in pvr2_channel_done()
331 cp->hdw = NULL; in pvr2_channel_done()
336 int pvr2_channel_limit_inputs(struct pvr2_channel *cp,unsigned int cmsk) in pvr2_channel_limit_inputs() argument
341 struct pvr2_hdw *hdw = cp->hdw; in pvr2_channel_limit_inputs()
345 if (cmsk == cp->input_mask) { in pvr2_channel_limit_inputs()
350 pvr2_context_enter(cp->mc_head); in pvr2_channel_limit_inputs()
353 cp->input_mask = 0; in pvr2_channel_limit_inputs()
354 pvr2_context_reset_input_limits(cp->mc_head); in pvr2_channel_limit_inputs()
358 for (p2 = cp->mc_head->mc_first; p2; p2 = p2->mc_next) { in pvr2_channel_limit_inputs()
359 if (p2 == cp) continue; in pvr2_channel_limit_inputs()
373 cp->input_mask = cmsk; in pvr2_channel_limit_inputs()
376 pvr2_context_exit(cp->mc_head); in pvr2_channel_limit_inputs()
381 unsigned int pvr2_channel_get_limited_inputs(struct pvr2_channel *cp) in pvr2_channel_get_limited_inputs() argument
383 return cp->input_mask; in pvr2_channel_get_limited_inputs()
387 int pvr2_channel_claim_stream(struct pvr2_channel *cp, in pvr2_channel_claim_stream() argument
391 pvr2_context_enter(cp->mc_head); do { in pvr2_channel_claim_stream()
392 if (sp == cp->stream) break; in pvr2_channel_claim_stream()
397 pvr2_channel_disclaim_stream(cp); in pvr2_channel_claim_stream()
399 sp->user = cp; in pvr2_channel_claim_stream()
400 cp->stream = sp; in pvr2_channel_claim_stream()
402 pvr2_context_exit(cp->mc_head); in pvr2_channel_claim_stream()
415 struct pvr2_ioread *cp; in pvr2_channel_create_mpeg_stream() local
416 cp = pvr2_ioread_create(); in pvr2_channel_create_mpeg_stream()
417 if (!cp) return NULL; in pvr2_channel_create_mpeg_stream()
418 pvr2_ioread_setup(cp,sp->stream); in pvr2_channel_create_mpeg_stream()
419 pvr2_ioread_set_sync_key(cp,stream_sync_key,sizeof(stream_sync_key)); in pvr2_channel_create_mpeg_stream()
420 return cp; in pvr2_channel_create_mpeg_stream()