Lines Matching defs:itv
131 static int try_mailbox(struct ivtv *itv, struct ivtv_mailbox_data *mbdata, int mb)
146 static int get_mailbox(struct ivtv *itv, struct ivtv_mailbox_data *mbdata, int flags)
161 if (try_mailbox(itv, mbdata, mb))
188 static void clear_all_mailboxes(struct ivtv *itv, struct ivtv_mailbox_data *mbdata)
200 static int ivtv_api_call(struct ivtv *itv, int cmd, int args, u32 data[])
202 struct ivtv_mailbox_data *mbdata = (cmd >= 128) ? &itv->enc_mbox : &itv->dec_mbox;
233 if (itv->api_cache[cmd].last_jiffies &&
235 itv->api_cache[cmd].last_jiffies +
237 !memcmp(data, itv->api_cache[cmd].data, sizeof(itv->api_cache[cmd].data))) {
238 itv->api_cache[cmd].last_jiffies = jiffies;
247 if (try_mailbox(itv, mbdata, mb)) {
256 clear_all_mailboxes(itv, mbdata);
263 mb = get_mailbox(itv, mbdata, flags);
266 clear_all_mailboxes(itv, mbdata);
272 memcpy(itv->api_cache[cmd].data, data, sizeof(itv->api_cache[cmd].data));
273 itv->api_cache[cmd].last_jiffies = jiffies;
315 int ivtv_api(struct ivtv *itv, int cmd, int args, u32 data[])
317 int res = ivtv_api_call(itv, cmd, args, data);
322 return (res == -EBUSY) ? ivtv_api_call(itv, cmd, args, data) : res;
330 int ivtv_vapi_result(struct ivtv *itv, u32 data[CX2341X_MBOX_MAX_DATA], int cmd, int args, ...)
340 return ivtv_api(itv, cmd, args, data);
343 int ivtv_vapi(struct ivtv *itv, int cmd, int args, ...)
354 return ivtv_api(itv, cmd, args, data);
368 void ivtv_mailbox_cache_invalidate(struct ivtv *itv)
372 itv->api_cache[i].last_jiffies = 0;