Lines Matching defs:ps3av
18 #include <asm/ps3av.h>
31 static struct ps3av {
50 } *ps3av;
158 dev_dbg(&ps3av->dev->core,
214 if (!ps3av)
218 res = ps3av_vuart_write(ps3av->dev, send_buf, write_len);
220 dev_dbg(&ps3av->dev->core,
230 res = ps3av_vuart_read(ps3av->dev, recv_buf, PS3AV_HDR_SIZE,
233 dev_dbg(&ps3av->dev->core,
240 res = ps3av_vuart_read(ps3av->dev, &recv_buf->cid,
243 dev_dbg(&ps3av->dev->core,
254 dev_dbg(&ps3av->dev->core, "%s: reply err (result=%x)\n",
269 dev_dbg(&ps3av->dev->core, "reply_packet invalid version:%x\n",
293 BUG_ON(!ps3av);
295 mutex_lock(&ps3av->mutex);
307 res = ps3av_send_cmd_pkt(buf, &ps3av->recv_buf.reply_hdr, send_len,
317 res = ps3av_process_reply_packet(buf, &ps3av->recv_buf.reply_hdr,
325 mutex_unlock(&ps3av->mutex);
329 mutex_unlock(&ps3av->mutex);
338 num_of_av_port = ps3av->av_hw_conf.num_of_hdmi +
339 ps3av->av_hw_conf.num_of_avmulti;
342 res = ps3av_cmd_av_video_mute(1, &ps3av->av_port[i], mute);
354 num_of_hdmi_port = ps3av->av_hw_conf.num_of_hdmi;
355 num_of_av_port = ps3av->av_hw_conf.num_of_hdmi +
356 ps3av->av_hw_conf.num_of_avmulti;
360 res = ps3av_cmd_av_tv_mute(ps3av->av_port[i],
369 res = ps3av_cmd_av_video_disable_sig(ps3av->av_port[i]);
373 res = ps3av_cmd_av_tv_mute(ps3av->av_port[i],
388 num_of_av_port = ps3av->av_hw_conf.num_of_hdmi +
389 ps3av->av_hw_conf.num_of_avmulti;
390 num_of_opt_port = ps3av->av_hw_conf.num_of_spdif;
393 res = ps3av_cmd_av_audio_mute(1, &ps3av->av_port[i], mute);
398 res = ps3av_cmd_audio_mute(1, &ps3av->opt_port[i], mute);
413 num_of_audio = ps3av->av_hw_conf.num_of_hdmi +
414 ps3av->av_hw_conf.num_of_avmulti +
415 ps3av->av_hw_conf.num_of_spdif;
420 avb_param.num_of_av_audio_pkt = ps3av->av_hw_conf.num_of_hdmi;
422 vid = video_mode_table[ps3av->ps3av_mode].vid;
428 res = ps3av_cmd_audio_active(0, ps3av->audio_port);
430 dev_dbg(&ps3av->dev->core,
435 ps3av_cmd_set_audio_mode(&audio_mode, ps3av->av_port[i], ch,
437 if (i < ps3av->av_hw_conf.num_of_hdmi) {
440 ps3av->av_port[i],
446 dev_dbg(&ps3av->dev->core,
454 dev_dbg(&ps3av->dev->core, "ps3av_cmd_avb_param failed\n");
460 res = ps3av_cmd_audio_active(1, ps3av->audio_port);
462 dev_dbg(&ps3av->dev->core,
475 schedule_work(&ps3av->work);
492 avb_param.num_of_av_video_pkt = ps3av->av_hw_conf.num_of_hdmi +
493 ps3av->av_hw_conf.num_of_avmulti;
499 ps3av->head[i], video_mode->vid,
508 if (ps3av->av_port[i] == PS3AV_CMD_AVPORT_HDMI_0 ||
509 ps3av->av_port[i] == PS3AV_CMD_AVPORT_HDMI_1)
513 ps3av->av_port[i],
525 dev_dbg(&ps3av->dev->core, "ps3av_cmd_avb_param failed\n");
550 dev_dbg(&ps3av->dev->core, "Not supported\n");
552 dev_dbg(&ps3av->dev->core,
557 dev_dbg(&ps3av->dev->core,
570 ps3av_set_videomode_cont(ps3av->ps3av_mode, ps3av->ps3av_mode_old);
571 complete(&ps3av->done);
648 if (ps3av->region & PS3AV_REGION_60)
781 if (ps3av->region & PS3AV_REGION_60)
785 if (ps3av->region & PS3AV_REGION_RGB)
793 static int ps3av_get_hw_conf(struct ps3av *ps3av)
799 res = ps3av_cmd_av_get_hw_conf(&ps3av->av_hw_conf);
803 hw_conf = &ps3av->av_hw_conf;
809 ps3av->head[i] = PS3AV_CMD_VIDEO_HEAD_A + i;
811 ps3av->opt_port[i] = PS3AV_CMD_AVPORT_SPDIF_0 + i;
813 ps3av->av_port[i] = PS3AV_CMD_AVPORT_HDMI_0 + i;
815 ps3av->av_port[i + j] = PS3AV_CMD_AVPORT_AVMULTI_0 + j;
817 ps3av->av_port[i + j + k] = PS3AV_CMD_AVPORT_SPDIF_0 + k;
820 ps3av->audio_port = PS3AV_CMD_AUDIO_PORT_HDMI_0
836 dev_dbg(&ps3av->dev->core, "%s: error id :%d\n", __func__, id);
843 id = ps3av_auto_videomode(&ps3av->av_hw_conf);
852 wait_for_completion(&ps3av->done);
853 ps3av->ps3av_mode_old = ps3av->ps3av_mode;
854 ps3av->ps3av_mode = id;
856 ps3av->ps3av_mode = ps3av->ps3av_mode_old;
864 return ps3av_auto_videomode(&ps3av->av_hw_conf);
870 return ps3av ? ps3av->ps3av_mode : 0;
904 for (i = 0; i < ps3av->av_hw_conf.num_of_avmulti; i++) {
906 &ps3av->av_port[i + ps3av->av_hw_conf.num_of_hdmi],
930 if (ps3av) {
931 dev_err(&dev->core, "Only one ps3av device is supported\n");
935 ps3av = kzalloc(sizeof(*ps3av), GFP_KERNEL);
936 if (!ps3av)
939 mutex_init(&ps3av->mutex);
940 ps3av->ps3av_mode = PS3AV_MODE_AUTO;
941 ps3av->dev = dev;
943 INIT_WORK(&ps3av->work, ps3avd);
944 init_completion(&ps3av->done);
945 complete(&ps3av->done);
949 ps3av->region = PS3AV_REGION_60;
953 ps3av->region = PS3AV_REGION_50;
956 ps3av->region = PS3AV_REGION_50 | PS3AV_REGION_RGB;
959 ps3av->region = PS3AV_REGION_60;
969 ps3av_get_hw_conf(ps3av);
975 id = ps3av_auto_videomode(&ps3av->av_hw_conf);
984 mutex_lock(&ps3av->mutex);
985 ps3av->ps3av_mode = id;
986 mutex_unlock(&ps3av->mutex);
993 kfree(ps3av);
994 ps3av = NULL;
1001 if (ps3av) {
1003 flush_work(&ps3av->work);
1004 kfree(ps3av);
1005 ps3av = NULL;