SUMMARY: This partially cleans up the interaction between the sensor drivers and ov511.c, to make implementation of standard kernel I2C easier. PER-FILE CHANGES: - Makefile: - Add support for ovsensor.c - ov511.c: - Move logic for deciding whether streaming needs to be stopped during a sensor command into sensor_needs_stop() - Replace most sensor_get_* and sensor_set_* functions with generic sensor_[set|get]_control() functions. - [All OmniVision sensor files] - Move ovsensor_write_regvals() to ovsensor.c - Split *_command() functions into separate set_control and get_control functions - Add new command function, which is roughly equivalent to ioctl(). This will eventually be the only entry point to the sensor drivers. - ovsensor.c: - File added - ovsensor.h: - Replace OVSENSOR_CMD_[S|G]* with OVSENSOR_CID* - Add ovsensor_control struct, which is functionally equivalent to struct v4l2_control