case DECODER_INDYCAM_SET_CONTROLS: { struct indycam_control *ctrl = arg; indycam_set_controls(client, ctrl); 
case DECODER_INDYCAM_SET_CONTROL: { return indycam_set_control(client, arg); 
static int indycam_command(struct i2c_client *client, unsigned int cmd,			   void *arg){	// struct indycam *camera = i2c_get_clientdata(client);	/* The old video_decoder interface just isn't enough,	 * so we'll use some custom commands. */	switch (cmd) {	case DECODER_GET_CAPABILITIES: {		struct video_decoder_capability *cap = arg;		cap->flags  = VIDEO_DECODER_NTSC;		cap->inputs = 1;		cap->outputs = 1;		break;	}	case DECODER_GET_STATUS: {		int *iarg = arg;		*iarg = DECODER_STATUS_GOOD | DECODER_STATUS_NTSC |			DECODER_STATUS_COLOR;		break;	}	case DECODER_SET_NORM: {		int *iarg = arg;		switch (*iarg) {		case VIDEO_MODE_NTSC:			break;		default:			return -EINVAL;		}		break;	}	case DECODER_SET_INPUT:	{		int *iarg = arg;		if (*iarg != 0)			return -EINVAL;		break;	}	case DECODER_SET_OUTPUT: {		int *iarg = arg;		if (*iarg != 0)			return -EINVAL;		break;	}	case DECODER_ENABLE_OUTPUT: {		/* Always enabled */		break;	}	case DECODER_SET_PICTURE: {		// struct video_picture *pic = arg;		/* TODO: convert values for indycam_set_controls() */		break;	}	case DECODER_INDYCAM_GET_CONTROLS: {		struct indycam_control *ctrl = arg;		indycam_get_controls(client, ctrl);	}	case DECODER_INDYCAM_SET_CONTROLS: {		struct indycam_control *ctrl = arg;		indycam_set_controls(client, ctrl);	}	default:		return -EINVAL;	}	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/a637a114f36b94a1ad8b9867f43bac0414958420/indycam.c/clean/drivers/media/video/indycam.c