case VIDIOCSFREQ: 
case VIDIOC_S_FREQUENCY: 
static int wm8775_command(struct i2c_client *client, unsigned int cmd,			  void *arg){	struct wm8775_state *state = i2c_get_clientdata(client);	int *input = arg;	switch (cmd) {	case AUDC_SET_INPUT:		wm8775_write(client, R21, 0x0c0);		wm8775_write(client, R14, 0x1d4);		wm8775_write(client, R15, 0x1d4);		if (*input == AUDIO_RADIO) {			wm8775_write(client, R21, 0x108);			state->input = 8;			state->muted = 0;			break;		}		if (*input == AUDIO_MUTE) {			state->muted = 1;			break;		}		if (*input == AUDIO_UNMUTE) {			wm8775_write(client, R21, 0x100 + state->input);			state->muted = 0;			break;		}		/* All other inputs... */		wm8775_write(client, R21, 0x102);		state->input = 2;		state->muted = 0;		break;	case VIDIOCSFREQ:		/* If I remove this, then it can happen that I have no		   sound the first time I tune from static to a valid channel.		   It's difficult to reproduce and is almost certainly related		   to the zero cross detect circuit. */		wm8775_write(client, R21, 0x0c0);		wm8775_write(client, R14, 0x1d4);		wm8775_write(client, R15, 0x1d4);		wm8775_write(client, R21, 0x100 + state->input);		break;	default:		return -EINVAL;	}	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/bf7e26ee5fce3eb1074ba3e1c8f265cb37c8451c/wm8775.c/buggy/drivers/media/video/wm8775.c