Lines Matching refs:fdtv
55 static int fdtv_ca_get_slot_info(struct firedtv *fdtv, void *arg) in fdtv_ca_get_slot_info() argument
61 err = avc_tuner_status(fdtv, &stat); in fdtv_ca_get_slot_info()
73 static int fdtv_ca_app_info(struct firedtv *fdtv, void *arg) in fdtv_ca_app_info() argument
77 return avc_ca_app_info(fdtv, reply->msg, &reply->length); in fdtv_ca_app_info()
80 static int fdtv_ca_info(struct firedtv *fdtv, void *arg) in fdtv_ca_info() argument
84 return avc_ca_info(fdtv, reply->msg, &reply->length); in fdtv_ca_info()
87 static int fdtv_ca_get_mmi(struct firedtv *fdtv, void *arg) in fdtv_ca_get_mmi() argument
91 return avc_ca_get_mmi(fdtv, reply->msg, &reply->length); in fdtv_ca_get_mmi()
94 static int fdtv_ca_get_msg(struct firedtv *fdtv, void *arg) in fdtv_ca_get_msg() argument
99 switch (fdtv->ca_last_command) { in fdtv_ca_get_msg()
101 err = fdtv_ca_app_info(fdtv, arg); in fdtv_ca_get_msg()
104 err = fdtv_ca_info(fdtv, arg); in fdtv_ca_get_msg()
107 err = avc_tuner_status(fdtv, &stat); in fdtv_ca_get_msg()
111 err = fdtv_ca_get_mmi(fdtv, arg); in fdtv_ca_get_msg()
113 dev_info(fdtv->device, "unhandled CA message 0x%08x\n", in fdtv_ca_get_msg()
114 fdtv->ca_last_command); in fdtv_ca_get_msg()
118 fdtv->ca_last_command = 0; in fdtv_ca_get_msg()
122 static int fdtv_ca_pmt(struct firedtv *fdtv, void *arg) in fdtv_ca_pmt() argument
140 return avc_ca_pmt(fdtv, &msg->msg[data_pos], data_length); in fdtv_ca_pmt()
143 static int fdtv_ca_send_msg(struct firedtv *fdtv, void *arg) in fdtv_ca_send_msg() argument
149 fdtv->ca_last_command = in fdtv_ca_send_msg()
151 switch (fdtv->ca_last_command) { in fdtv_ca_send_msg()
153 err = fdtv_ca_pmt(fdtv, arg); in fdtv_ca_send_msg()
164 err = avc_ca_enter_menu(fdtv); in fdtv_ca_send_msg()
167 dev_err(fdtv->device, "unhandled CA message 0x%08x\n", in fdtv_ca_send_msg()
168 fdtv->ca_last_command); in fdtv_ca_send_msg()
177 struct firedtv *fdtv = dvbdev->priv; in fdtv_ca_ioctl() local
183 err = avc_ca_reset(fdtv); in fdtv_ca_ioctl()
189 err = fdtv_ca_get_slot_info(fdtv, arg); in fdtv_ca_ioctl()
192 err = fdtv_ca_get_msg(fdtv, arg); in fdtv_ca_ioctl()
195 err = fdtv_ca_send_msg(fdtv, arg); in fdtv_ca_ioctl()
198 dev_info(fdtv->device, "unhandled CA ioctl %u\n", cmd); in fdtv_ca_ioctl()
203 avc_tuner_status(fdtv, &stat); in fdtv_ca_ioctl()
230 int fdtv_ca_register(struct firedtv *fdtv) in fdtv_ca_register() argument
235 if (avc_tuner_status(fdtv, &stat)) in fdtv_ca_register()
241 err = dvb_register_device(&fdtv->adapter, &fdtv->cadev, in fdtv_ca_register()
242 &fdtv_ca, fdtv, DVB_DEVICE_CA, 0); in fdtv_ca_register()
245 dev_err(fdtv->device, "CaApplicationInfo is not set\n"); in fdtv_ca_register()
247 avc_ca_get_time_date(fdtv, &fdtv->ca_time_interval); in fdtv_ca_register()
252 void fdtv_ca_release(struct firedtv *fdtv) in fdtv_ca_release() argument
254 dvb_unregister_device(fdtv->cadev); in fdtv_ca_release()