Lines Matching refs:fdtv
59 static int fdtv_ca_get_slot_info(struct firedtv *fdtv, void *arg) in fdtv_ca_get_slot_info() argument
65 err = avc_tuner_status(fdtv, &stat); in fdtv_ca_get_slot_info()
77 static int fdtv_ca_app_info(struct firedtv *fdtv, void *arg) in fdtv_ca_app_info() argument
81 return avc_ca_app_info(fdtv, reply->msg, &reply->length); in fdtv_ca_app_info()
84 static int fdtv_ca_info(struct firedtv *fdtv, void *arg) in fdtv_ca_info() argument
88 return avc_ca_info(fdtv, reply->msg, &reply->length); in fdtv_ca_info()
91 static int fdtv_ca_get_mmi(struct firedtv *fdtv, void *arg) in fdtv_ca_get_mmi() argument
95 return avc_ca_get_mmi(fdtv, reply->msg, &reply->length); in fdtv_ca_get_mmi()
98 static int fdtv_ca_get_msg(struct firedtv *fdtv, void *arg) in fdtv_ca_get_msg() argument
103 switch (fdtv->ca_last_command) { in fdtv_ca_get_msg()
105 err = fdtv_ca_app_info(fdtv, arg); in fdtv_ca_get_msg()
108 err = fdtv_ca_info(fdtv, arg); in fdtv_ca_get_msg()
111 err = avc_tuner_status(fdtv, &stat); in fdtv_ca_get_msg()
115 err = fdtv_ca_get_mmi(fdtv, arg); in fdtv_ca_get_msg()
117 dev_info(fdtv->device, "unhandled CA message 0x%08x\n", in fdtv_ca_get_msg()
118 fdtv->ca_last_command); in fdtv_ca_get_msg()
122 fdtv->ca_last_command = 0; in fdtv_ca_get_msg()
126 static int fdtv_ca_pmt(struct firedtv *fdtv, void *arg) in fdtv_ca_pmt() argument
142 return avc_ca_pmt(fdtv, &msg->msg[data_pos], data_length); in fdtv_ca_pmt()
145 static int fdtv_ca_send_msg(struct firedtv *fdtv, void *arg) in fdtv_ca_send_msg() argument
151 fdtv->ca_last_command = in fdtv_ca_send_msg()
153 switch (fdtv->ca_last_command) { in fdtv_ca_send_msg()
155 err = fdtv_ca_pmt(fdtv, arg); in fdtv_ca_send_msg()
166 err = avc_ca_enter_menu(fdtv); in fdtv_ca_send_msg()
169 dev_err(fdtv->device, "unhandled CA message 0x%08x\n", in fdtv_ca_send_msg()
170 fdtv->ca_last_command); in fdtv_ca_send_msg()
179 struct firedtv *fdtv = dvbdev->priv; in fdtv_ca_ioctl() local
185 err = avc_ca_reset(fdtv); in fdtv_ca_ioctl()
191 err = fdtv_ca_get_slot_info(fdtv, arg); in fdtv_ca_ioctl()
194 err = fdtv_ca_get_msg(fdtv, arg); in fdtv_ca_ioctl()
197 err = fdtv_ca_send_msg(fdtv, arg); in fdtv_ca_ioctl()
200 dev_info(fdtv->device, "unhandled CA ioctl %u\n", cmd); in fdtv_ca_ioctl()
205 avc_tuner_status(fdtv, &stat); in fdtv_ca_ioctl()
232 int fdtv_ca_register(struct firedtv *fdtv) in fdtv_ca_register() argument
237 if (avc_tuner_status(fdtv, &stat)) in fdtv_ca_register()
243 err = dvb_register_device(&fdtv->adapter, &fdtv->cadev, in fdtv_ca_register()
244 &fdtv_ca, fdtv, DVB_DEVICE_CA); in fdtv_ca_register()
247 dev_err(fdtv->device, "CaApplicationInfo is not set\n"); in fdtv_ca_register()
249 avc_ca_get_time_date(fdtv, &fdtv->ca_time_interval); in fdtv_ca_register()
254 void fdtv_ca_release(struct firedtv *fdtv) in fdtv_ca_release() argument
256 dvb_unregister_device(fdtv->cadev); in fdtv_ca_release()