buf[1] = 0; 
buf[1] = 0; 
static int saa6752hs_init(struct i2c_client* client){	unsigned char buf[9], buf2[4];	struct saa6752hs_state *h;	u32 crc;	unsigned char localPAT[256];	unsigned char localPMT[256];	h = i2c_get_clientdata(client);	/* Set video format - must be done first as it resets other settings */	buf[0] = 0x41;	buf[1] = h->video_format;	i2c_master_send(client, buf, 2);	/* Set number of lines in input signal */	buf[0] = 0x40;	buf[1] = 0x00;	if (h->standard & V4L2_STD_525_60)		buf[1] = 0x01;	i2c_master_send(client, buf, 2);        /* set bitrate */        saa6752hs_set_bitrate(client, &h->params);	/* Set GOP structure {3, 13} */	buf[0] = 0x72;	buf[1] = 0x03;	buf[2] = 0x0D;	i2c_master_send(client,buf,3);    	/* Set minimum Q-scale {4} */	buf[0] = 0x82;	buf[1] = 0x04;	i2c_master_send(client,buf,2);    	/* Set maximum Q-scale {12} */	buf[0] = 0x83;	buf[1] = 0x0C;	i2c_master_send(client,buf,2);    	/* Set Output Protocol */	buf[0] = 0xD0;	buf[1] = 0x81;	i2c_master_send(client,buf,2);    	/* Set video output stream format {TS} */	buf[0] = 0xB0;	buf[1] = 0x05;	i2c_master_send(client,buf,2);	/* compute PAT */	memcpy(localPAT, PAT, sizeof(PAT));	localPAT[17] = 0xe0 | ((h->params.ts_pid_pmt >> 8) & 0x0f);	localPAT[18] = h->params.ts_pid_pmt & 0xff;	crc = crc32_be(~0, &localPAT[7], sizeof(PAT) - 7 - 4);	localPAT[sizeof(PAT) - 4] = (crc >> 24) & 0xFF;	localPAT[sizeof(PAT) - 3] = (crc >> 16) & 0xFF;	localPAT[sizeof(PAT) - 2] = (crc >> 8) & 0xFF;	localPAT[sizeof(PAT) - 1] = crc & 0xFF;	/* compute PMT */      	memcpy(localPMT, PMT, sizeof(PMT));   	localPMT[3] = 0x40 | ((h->params.ts_pid_pmt >> 8) & 0x0f);   	localPMT[4] = h->params.ts_pid_pmt & 0xff;	localPMT[15] = 0xE0 | ((h->params.ts_pid_pcr >> 8) & 0x0F);	localPMT[16] = h->params.ts_pid_pcr & 0xFF;	localPMT[20] = 0xE0 | ((h->params.ts_pid_video >> 8) & 0x0F);	localPMT[21] = h->params.ts_pid_video & 0xFF;	localPMT[25] = 0xE0 | ((h->params.ts_pid_audio >> 8) & 0x0F);	localPMT[26] = h->params.ts_pid_audio & 0xFF;	crc = crc32_be(~0, &localPMT[7], sizeof(PMT) - 7 - 4);	localPMT[sizeof(PMT) - 4] = (crc >> 24) & 0xFF;	localPMT[sizeof(PMT) - 3] = (crc >> 16) & 0xFF;	localPMT[sizeof(PMT) - 2] = (crc >> 8) & 0xFF;	localPMT[sizeof(PMT) - 1] = crc & 0xFF;    	/* Set Audio PID */	buf[0] = 0xC1;	buf[1] = (h->params.ts_pid_audio >> 8) & 0xFF;	buf[2] = h->params.ts_pid_audio & 0xFF;	i2c_master_send(client,buf,3);	/* Set Video PID */	buf[0] = 0xC0;	buf[1] = (h->params.ts_pid_video >> 8) & 0xFF;	buf[2] = h->params.ts_pid_video & 0xFF;	i2c_master_send(client,buf,3); 	/* Set PCR PID */	buf[0] = 0xC4;	buf[1] = (h->params.ts_pid_pcr >> 8) & 0xFF;	buf[2] = h->params.ts_pid_pcr & 0xFF;	i2c_master_send(client,buf,3);	/* Send SI tables */	i2c_master_send(client,localPAT,sizeof(PAT));	i2c_master_send(client,localPMT,sizeof(PMT));	/* mute then unmute audio. This removes buzzing artefacts */	buf[0] = 0xa4;	buf[1] = 1;	i2c_master_send(client, buf, 2);  	buf[1] = 0;	i2c_master_send(client, buf, 2);	/* start it going */	saa6752hs_chip_command(client, SAA6752HS_COMMAND_START);	/* readout current state */	buf[0] = 0xE1;	buf[1] = 0xA7;	buf[2] = 0xFE;	buf[3] = 0x82;	buf[4] = 0xB0;	i2c_master_send(client, buf, 5);	i2c_master_recv(client, buf2, 4);	/* change aspect ratio */	buf[0] = 0xE0;	buf[1] = 0xA7;	buf[2] = 0xFE;	buf[3] = 0x82;	buf[4] = 0xB0;	buf[5] = buf2[0];	switch(h->params.vi_aspect_ratio) {	case V4L2_MPEG_ASPECT_16_9:		buf[6] = buf2[1] | 0x40;		break;	case V4L2_MPEG_ASPECT_4_3:	default:		buf[6] = buf2[1] & 0xBF;		break;		break;	}	buf[7] = buf2[2];	buf[8] = buf2[3];	i2c_master_send(client, buf, 9);	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/4ac97914c6c35f6bf132071c718e034d0846b9f5/saa6752hs.c/buggy/drivers/media/video/saa7134/saa6752hs.c