Lines Matching refs:sd
48 struct v4l2_subdev sd; member
60 static inline struct adv7393_state *to_state(struct v4l2_subdev *sd) in to_state() argument
62 return container_of(sd, struct adv7393_state, sd); in to_state()
67 return &container_of(ctrl->handler, struct adv7393_state, hdl)->sd; in to_sd()
70 static inline int adv7393_write(struct v4l2_subdev *sd, u8 reg, u8 value) in adv7393_write() argument
72 struct i2c_client *client = v4l2_get_subdevdata(sd); in adv7393_write()
135 static int adv7393_setstd(struct v4l2_subdev *sd, v4l2_std_id std) in adv7393_setstd() argument
137 struct adv7393_state *state = to_state(sd); in adv7393_setstd()
153 v4l2_dbg(1, debug, sd, in adv7393_setstd()
164 err = adv7393_write(sd, ADV7393_SD_MODE_REG1, val); in adv7393_setstd()
173 err = adv7393_write(sd, ADV7393_MODE_SELECT_REG, val); in adv7393_setstd()
182 err = adv7393_write(sd, reg, val); in adv7393_setstd()
196 err = adv7393_write(sd, ADV7393_SD_MODE_REG2, val); in adv7393_setstd()
204 v4l2_err(sd, "Error setting std, write failed\n"); in adv7393_setstd()
209 static int adv7393_setoutput(struct v4l2_subdev *sd, u32 output_type) in adv7393_setoutput() argument
211 struct adv7393_state *state = to_state(sd); in adv7393_setoutput()
216 v4l2_dbg(1, debug, sd, in adv7393_setoutput()
232 err = adv7393_write(sd, ADV7393_POWER_MODE_REG, val); in adv7393_setoutput()
240 err = adv7393_write(sd, ADV7393_MODE_REG0, val); in adv7393_setoutput()
252 err = adv7393_write(sd, ADV7393_SD_MODE_REG2, val); in adv7393_setoutput()
260 err = adv7393_write(sd, ADV7393_HD_MODE_REG6, val); in adv7393_setoutput()
268 v4l2_err(sd, "Error setting output, write failed\n"); in adv7393_setoutput()
273 static int adv7393_log_status(struct v4l2_subdev *sd) in adv7393_log_status() argument
275 struct adv7393_state *state = to_state(sd); in adv7393_log_status()
277 v4l2_info(sd, "Standard: %llx\n", (unsigned long long)state->std); in adv7393_log_status()
278 v4l2_info(sd, "Output: %s\n", (state->output == 0) ? "Composite" : in adv7393_log_status()
285 struct v4l2_subdev *sd = to_sd(ctrl); in adv7393_s_ctrl() local
289 return adv7393_write(sd, ADV7393_SD_BRIGHTNESS_WSS, in adv7393_s_ctrl()
293 return adv7393_write(sd, ADV7393_SD_HUE_ADJUST, in adv7393_s_ctrl()
297 return adv7393_write(sd, ADV7393_DAC123_OUTPUT_LEVEL, in adv7393_s_ctrl()
311 static int adv7393_s_std_output(struct v4l2_subdev *sd, v4l2_std_id std) in adv7393_s_std_output() argument
313 struct adv7393_state *state = to_state(sd); in adv7393_s_std_output()
319 err = adv7393_setstd(sd, std); in adv7393_s_std_output()
326 static int adv7393_s_routing(struct v4l2_subdev *sd, in adv7393_s_routing() argument
329 struct adv7393_state *state = to_state(sd); in adv7393_s_routing()
335 err = adv7393_setoutput(sd, output); in adv7393_s_routing()
352 static int adv7393_initialize(struct v4l2_subdev *sd) in adv7393_initialize() argument
354 struct adv7393_state *state = to_state(sd); in adv7393_initialize()
360 err = adv7393_write(sd, adv7393_init_reg_val[i], in adv7393_initialize()
363 v4l2_err(sd, "Error initializing\n"); in adv7393_initialize()
369 err = adv7393_setoutput(sd, state->output); in adv7393_initialize()
371 v4l2_err(sd, "Error setting output during init\n"); in adv7393_initialize()
375 err = adv7393_setstd(sd, state->std); in adv7393_initialize()
377 v4l2_err(sd, "Error setting std during init\n"); in adv7393_initialize()
410 v4l2_i2c_subdev_init(&state->sd, client, &adv7393_ops); in adv7393_probe()
425 state->sd.ctrl_handler = &state->hdl; in adv7393_probe()
434 err = adv7393_initialize(&state->sd); in adv7393_probe()
442 struct v4l2_subdev *sd = i2c_get_clientdata(client); in adv7393_remove() local
443 struct adv7393_state *state = to_state(sd); in adv7393_remove()
445 v4l2_device_unregister_subdev(sd); in adv7393_remove()