int ps3av_cmd_init()

in ps3av_cmd.c [143:192]


int ps3av_cmd_init(void)
{
	int res;
	struct ps3av_pkt_av_init av_init;
	struct ps3av_pkt_video_init video_init;
	struct ps3av_pkt_audio_init audio_init;

	/* video init */
	memset(&video_init, 0, sizeof(video_init));

	res = ps3av_do_pkt(PS3AV_CID_VIDEO_INIT, sizeof(video_init.send_hdr),
			   sizeof(video_init), &video_init.send_hdr);
	if (res < 0)
		return res;

	res = get_status(&video_init);
	if (res) {
		printk(KERN_ERR "PS3AV_CID_VIDEO_INIT: failed %x\n", res);
		return res;
	}

	/* audio init */
	memset(&audio_init, 0, sizeof(audio_init));

	res = ps3av_do_pkt(PS3AV_CID_AUDIO_INIT, sizeof(audio_init.send_hdr),
			   sizeof(audio_init), &audio_init.send_hdr);
	if (res < 0)
		return res;

	res = get_status(&audio_init);
	if (res) {
		printk(KERN_ERR "PS3AV_CID_AUDIO_INIT: failed %x\n", res);
		return res;
	}

	/* av init */
	memset(&av_init, 0, sizeof(av_init));
	av_init.event_bit = 0;

	res = ps3av_do_pkt(PS3AV_CID_AV_INIT, sizeof(av_init), sizeof(av_init),
			   &av_init.send_hdr);
	if (res < 0)
		return res;

	res = get_status(&av_init);
	if (res)
		printk(KERN_ERR "PS3AV_CID_AV_INIT: failed %x\n", res);

	return res;
}