state = (struct dib3000_state*) kmalloc(sizeof(struct dib3000_state), GFP_KERNEL); 
state = kmalloc(sizeof(struct dib3000_state), GFP_KERNEL); 
struct dvb_frontend* dib3000mb_attach(const struct dib3000_config* config,				      struct i2c_adapter* i2c, struct dib_fe_xfer_ops *xfer_ops){	struct dib3000_state* state = NULL;	/* allocate memory for the internal state */	state = (struct dib3000_state*) kmalloc(sizeof(struct dib3000_state), GFP_KERNEL);	if (state == NULL)		goto error;	memset(state,0,sizeof(struct dib3000_state));	/* setup the state */	state->i2c = i2c;	memcpy(&state->config,config,sizeof(struct dib3000_config));	memcpy(&state->ops, &dib3000mb_ops, sizeof(struct dvb_frontend_ops));	/* check for the correct demod */	if (rd(DIB3000_REG_MANUFACTOR_ID) != DIB3000_I2C_ID_DIBCOM)		goto error;	if (rd(DIB3000_REG_DEVICE_ID) != DIB3000MB_DEVICE_ID)		goto error;	/* create dvb_frontend */	state->frontend.ops = &state->ops;	state->frontend.demodulator_priv = state;	/* set the xfer operations */	xfer_ops->pid_parse = dib3000mb_pid_parse;	xfer_ops->fifo_ctrl = dib3000mb_fifo_control;	xfer_ops->pid_ctrl = dib3000mb_pid_control;	xfer_ops->tuner_pass_ctrl = dib3000mb_tuner_pass_ctrl;	return &state->frontend;error:	kfree(state);	return NULL;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/b8742700f13163ffa00cddce2a3c940b9ab2ab5a/dib3000mb.c/clean/drivers/media/dvb/frontends/dib3000mb.c