Lines Matching refs:sd

40 	struct v4l2_subdev sd;  member
44 static inline struct cs5345_state *to_state(struct v4l2_subdev *sd) in to_state() argument
46 return container_of(sd, struct cs5345_state, sd); in to_state()
51 return &container_of(ctrl->handler, struct cs5345_state, hdl)->sd; in to_sd()
56 static inline int cs5345_write(struct v4l2_subdev *sd, u8 reg, u8 value) in cs5345_write() argument
58 struct i2c_client *client = v4l2_get_subdevdata(sd); in cs5345_write()
63 static inline int cs5345_read(struct v4l2_subdev *sd, u8 reg) in cs5345_read() argument
65 struct i2c_client *client = v4l2_get_subdevdata(sd); in cs5345_read()
70 static int cs5345_s_routing(struct v4l2_subdev *sd, in cs5345_s_routing() argument
74 v4l2_err(sd, "Invalid input %d.\n", input); in cs5345_s_routing()
77 cs5345_write(sd, 0x09, input & 0xf); in cs5345_s_routing()
78 cs5345_write(sd, 0x05, input & 0xf0); in cs5345_s_routing()
84 struct v4l2_subdev *sd = to_sd(ctrl); in cs5345_s_ctrl() local
88 cs5345_write(sd, 0x04, ctrl->val ? 0x80 : 0); in cs5345_s_ctrl()
91 cs5345_write(sd, 0x07, ((u8)ctrl->val) & 0x3f); in cs5345_s_ctrl()
92 cs5345_write(sd, 0x08, ((u8)ctrl->val) & 0x3f); in cs5345_s_ctrl()
99 static int cs5345_g_register(struct v4l2_subdev *sd, struct v4l2_dbg_register *reg) in cs5345_g_register() argument
102 reg->val = cs5345_read(sd, reg->reg & 0x1f); in cs5345_g_register()
106 static int cs5345_s_register(struct v4l2_subdev *sd, const struct v4l2_dbg_register *reg) in cs5345_s_register() argument
108 cs5345_write(sd, reg->reg & 0x1f, reg->val & 0xff); in cs5345_s_register()
113 static int cs5345_log_status(struct v4l2_subdev *sd) in cs5345_log_status() argument
115 u8 v = cs5345_read(sd, 0x09) & 7; in cs5345_log_status()
116 u8 m = cs5345_read(sd, 0x04); in cs5345_log_status()
117 int vol = cs5345_read(sd, 0x08) & 0x3f; in cs5345_log_status()
119 v4l2_info(sd, "Input: %d%s\n", v, in cs5345_log_status()
123 v4l2_info(sd, "Volume: %d dB\n", vol); in cs5345_log_status()
156 struct v4l2_subdev *sd; in cs5345_probe() local
168 sd = &state->sd; in cs5345_probe()
169 v4l2_i2c_subdev_init(sd, client, &cs5345_ops); in cs5345_probe()
176 sd->ctrl_handler = &state->hdl; in cs5345_probe()
186 cs5345_write(sd, 0x02, 0x00); in cs5345_probe()
187 cs5345_write(sd, 0x04, 0x01); in cs5345_probe()
188 cs5345_write(sd, 0x09, 0x01); in cs5345_probe()
196 struct v4l2_subdev *sd = i2c_get_clientdata(client); in cs5345_remove() local
197 struct cs5345_state *state = to_state(sd); in cs5345_remove()
199 v4l2_device_unregister_subdev(sd); in cs5345_remove()