Lines Matching defs:itv
143 static int try_mailbox(struct ivtv *itv, struct ivtv_mailbox_data *mbdata, int mb)
158 static int get_mailbox(struct ivtv *itv, struct ivtv_mailbox_data *mbdata, int flags)
173 if (try_mailbox(itv, mbdata, mb))
199 static void clear_all_mailboxes(struct ivtv *itv, struct ivtv_mailbox_data *mbdata)
211 static int ivtv_api_call(struct ivtv *itv, int cmd, int args, u32 data[])
213 struct ivtv_mailbox_data *mbdata = (cmd >= 128) ? &itv->enc_mbox : &itv->dec_mbox;
239 if (itv->api_cache[cmd].last_jiffies &&
240 jiffies - itv->api_cache[cmd].last_jiffies < HZ * 1800 &&
241 !memcmp(data, itv->api_cache[cmd].data, sizeof(itv->api_cache[cmd].data))) {
242 itv->api_cache[cmd].last_jiffies = jiffies;
251 if (try_mailbox(itv, mbdata, mb)) {
260 clear_all_mailboxes(itv, mbdata);
267 mb = get_mailbox(itv, mbdata, flags);
270 clear_all_mailboxes(itv, mbdata);
276 memcpy(itv->api_cache[cmd].data, data, sizeof(itv->api_cache[cmd].data));
277 itv->api_cache[cmd].last_jiffies = jiffies;
311 int ivtv_api(struct ivtv *itv, int cmd, int args, u32 data[])
313 int res = ivtv_api_call(itv, cmd, args, data);
318 return (res == -EBUSY) ? ivtv_api_call(itv, cmd, args, data) : res;
326 int ivtv_vapi_result(struct ivtv *itv, u32 data[CX2341X_MBOX_MAX_DATA], int cmd, int args, ...)
336 return ivtv_api(itv, cmd, args, data);
339 int ivtv_vapi(struct ivtv *itv, int cmd, int args, ...)
350 return ivtv_api(itv, cmd, args, data);