Lines Matching defs:sd
23 static inline int cs3308_write(struct v4l2_subdev *sd, u8 reg, u8 value)
25 struct i2c_client *client = v4l2_get_subdevdata(sd);
30 static inline int cs3308_read(struct v4l2_subdev *sd, u8 reg)
32 struct i2c_client *client = v4l2_get_subdevdata(sd);
38 static int cs3308_g_register(struct v4l2_subdev *sd, struct v4l2_dbg_register *reg)
40 reg->val = cs3308_read(sd, reg->reg & 0xffff);
45 static int cs3308_s_register(struct v4l2_subdev *sd, const struct v4l2_dbg_register *reg)
47 cs3308_write(sd, reg->reg & 0xffff, reg->val & 0xff);
69 struct v4l2_subdev *sd;
82 sd = kzalloc(sizeof(struct v4l2_subdev), GFP_KERNEL);
83 if (sd == NULL)
86 v4l2_i2c_subdev_init(sd, client, &cs3308_ops);
89 cs3308_write(sd, 0x0d, 0x00); /* Power up all channels */
90 cs3308_write(sd, 0x0e, 0x00); /* Master Power */
91 cs3308_write(sd, 0x0b, 0x00); /* Device Configuration */
94 cs3308_write(sd, i, 0xd2);
95 cs3308_write(sd, 0x0a, 0x00); /* Unmute all channels */
103 struct v4l2_subdev *sd = i2c_get_clientdata(client);
105 v4l2_device_unregister_subdev(sd);
106 kfree(sd);