struct sp8870_state* state = (struct sp8870_state*) fe->demodulator_priv; 
struct sp8870_state* state = fe->demodulator_priv; 
static int sp8870_set_frontend_parameters (struct dvb_frontend* fe,					   struct dvb_frontend_parameters *p){	struct sp8870_state* state = (struct sp8870_state*) fe->demodulator_priv;	int  err;	u16 reg0xc05;	if ((err = configure_reg0xc05(p, &reg0xc05)))		return err;	// system controller stop	sp8870_microcontroller_stop(state);	// set tuner parameters	sp8870_writereg(state, 0x206, 0x001);	state->config->pll_set(fe, p);	sp8870_writereg(state, 0x206, 0x000);	// sample rate correction bit [23..17]	sp8870_writereg(state, 0x0319, 0x000A);	// sample rate correction bit [16..0]	sp8870_writereg(state, 0x031A, 0x0AAB);	// integer carrier offset	sp8870_writereg(state, 0x0309, 0x0400);	// fractional carrier offset	sp8870_writereg(state, 0x030A, 0x0000);	// filter for 6/7/8 Mhz channel	if (p->u.ofdm.bandwidth == BANDWIDTH_6_MHZ)		sp8870_writereg(state, 0x0311, 0x0002);	else if (p->u.ofdm.bandwidth == BANDWIDTH_7_MHZ)		sp8870_writereg(state, 0x0311, 0x0001);	else		sp8870_writereg(state, 0x0311, 0x0000);	// scan order: 2k first = 0x0000, 8k first = 0x0001	if (p->u.ofdm.transmission_mode == TRANSMISSION_MODE_2K)		sp8870_writereg(state, 0x0338, 0x0000);	else		sp8870_writereg(state, 0x0338, 0x0001);	sp8870_writereg(state, 0xc05, reg0xc05);	// read status reg in order to clear pending irqs	sp8870_readreg(state, 0x200);	// system controller start	sp8870_microcontroller_start(state);	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/b8742700f13163ffa00cddce2a3c940b9ab2ab5a/sp8870.c/buggy/drivers/media/dvb/frontends/sp8870.c