struct mt312_state *state = (struct mt312_state*) fe->demodulator_priv; 
struct mt312_state *state = fe->demodulator_priv; 
static int mt312_read_status(struct dvb_frontend* fe, fe_status_t *s){	struct mt312_state *state = (struct mt312_state*) fe->demodulator_priv;	int ret;	u8 status[3];	*s = 0;	if ((ret = mt312_read(state, QPSK_STAT_H, status, sizeof(status))) < 0)		return ret;	dprintk(KERN_DEBUG "QPSK_STAT_H: 0x%02x, QPSK_STAT_L: 0x%02x, FEC_STATUS: 0x%02x\n", status[0], status[1], status[2]);	if (status[0] & 0xc0)		*s |= FE_HAS_SIGNAL;	/* signal noise ratio */	if (status[0] & 0x04)		*s |= FE_HAS_CARRIER;	/* qpsk carrier lock */	if (status[2] & 0x02)		*s |= FE_HAS_VITERBI;	/* viterbi lock */	if (status[2] & 0x04)		*s |= FE_HAS_SYNC;	/* byte align lock */	if (status[0] & 0x01)		*s |= FE_HAS_LOCK;	/* qpsk lock */	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/b8742700f13163ffa00cddce2a3c940b9ab2ab5a/mt312.c/clean/drivers/media/dvb/frontends/mt312.c