Loading Documentation/media/kapi/v4l2-subdev.rst +6 −0 Original line number Diff line number Diff line Loading @@ -449,3 +449,9 @@ V4L2 sub-device asynchronous kAPI ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. kernel-doc:: include/media/v4l2-async.h V4L2 common kAPI ^^^^^^^^^^^^^^^^ .. kernel-doc:: include/media/v4l2-common.h include/media/v4l2-common.h +42 −7 Original line number Diff line number Diff line Loading @@ -80,8 +80,6 @@ /* ------------------------------------------------------------------------- */ /* Control helper function */ int v4l2_ctrl_query_fill(struct v4l2_queryctrl *qctrl, s32 min, s32 max, s32 step, s32 def); /* ------------------------------------------------------------------------- */ Loading @@ -96,23 +94,60 @@ struct v4l2_device; struct v4l2_subdev; struct v4l2_subdev_ops; /* Load an i2c module and return an initialized v4l2_subdev struct. The client_type argument is the name of the chip that's on the adapter. */ /** * v4l2_i2c_new_subdev - Load an i2c module and return an initialized * &struct v4l2_subdev. * * @v4l2_dev: pointer to &struct v4l2_device * @adapter: pointer to struct i2c_adapter * @client_type: name of the chip that's on the adapter. * @addr: I2C address. If zero, it will use @probe_addrs * @probe_addrs: array with a list of address. The last entry at such * array should be %I2C_CLIENT_END. * * returns a &struct v4l2_subdev pointer. */ struct v4l2_subdev *v4l2_i2c_new_subdev(struct v4l2_device *v4l2_dev, struct i2c_adapter *adapter, const char *client_type, u8 addr, const unsigned short *probe_addrs); struct i2c_board_info; /** * v4l2_i2c_new_subdev_board - Load an i2c module and return an initialized * &struct v4l2_subdev. * * @v4l2_dev: pointer to &struct v4l2_device * @adapter: pointer to struct i2c_adapter * @info: pointer to struct i2c_board_info used to replace the irq, * platform_data and addr arguments. * @probe_addrs: array with a list of address. The last entry at such * array should be %I2C_CLIENT_END. * * returns a &struct v4l2_subdev pointer. */ struct v4l2_subdev *v4l2_i2c_new_subdev_board(struct v4l2_device *v4l2_dev, struct i2c_adapter *adapter, struct i2c_board_info *info, const unsigned short *probe_addrs); /* Initialize a v4l2_subdev with data from an i2c_client struct */ /** * v4l2_i2c_subdev_init - Initializes a &struct v4l2_subdev with data from * an i2c_client struct. * * @sd: pointer to &struct v4l2_subdev * @client: pointer to struct i2c_client * @ops: pointer to &struct v4l2_subdev_ops */ void v4l2_i2c_subdev_init(struct v4l2_subdev *sd, struct i2c_client *client, const struct v4l2_subdev_ops *ops); /* Return i2c client address of v4l2_subdev. */ /** * v4l2_i2c_subdev_addr - returns i2c client address of &struct v4l2_subdev. * * @sd: pointer to &struct v4l2_subdev * * Returns the address of an I2C sub-device */ unsigned short v4l2_i2c_subdev_addr(struct v4l2_subdev *sd); enum v4l2_i2c_tuner_type { Loading Loading
Documentation/media/kapi/v4l2-subdev.rst +6 −0 Original line number Diff line number Diff line Loading @@ -449,3 +449,9 @@ V4L2 sub-device asynchronous kAPI ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. kernel-doc:: include/media/v4l2-async.h V4L2 common kAPI ^^^^^^^^^^^^^^^^ .. kernel-doc:: include/media/v4l2-common.h
include/media/v4l2-common.h +42 −7 Original line number Diff line number Diff line Loading @@ -80,8 +80,6 @@ /* ------------------------------------------------------------------------- */ /* Control helper function */ int v4l2_ctrl_query_fill(struct v4l2_queryctrl *qctrl, s32 min, s32 max, s32 step, s32 def); /* ------------------------------------------------------------------------- */ Loading @@ -96,23 +94,60 @@ struct v4l2_device; struct v4l2_subdev; struct v4l2_subdev_ops; /* Load an i2c module and return an initialized v4l2_subdev struct. The client_type argument is the name of the chip that's on the adapter. */ /** * v4l2_i2c_new_subdev - Load an i2c module and return an initialized * &struct v4l2_subdev. * * @v4l2_dev: pointer to &struct v4l2_device * @adapter: pointer to struct i2c_adapter * @client_type: name of the chip that's on the adapter. * @addr: I2C address. If zero, it will use @probe_addrs * @probe_addrs: array with a list of address. The last entry at such * array should be %I2C_CLIENT_END. * * returns a &struct v4l2_subdev pointer. */ struct v4l2_subdev *v4l2_i2c_new_subdev(struct v4l2_device *v4l2_dev, struct i2c_adapter *adapter, const char *client_type, u8 addr, const unsigned short *probe_addrs); struct i2c_board_info; /** * v4l2_i2c_new_subdev_board - Load an i2c module and return an initialized * &struct v4l2_subdev. * * @v4l2_dev: pointer to &struct v4l2_device * @adapter: pointer to struct i2c_adapter * @info: pointer to struct i2c_board_info used to replace the irq, * platform_data and addr arguments. * @probe_addrs: array with a list of address. The last entry at such * array should be %I2C_CLIENT_END. * * returns a &struct v4l2_subdev pointer. */ struct v4l2_subdev *v4l2_i2c_new_subdev_board(struct v4l2_device *v4l2_dev, struct i2c_adapter *adapter, struct i2c_board_info *info, const unsigned short *probe_addrs); /* Initialize a v4l2_subdev with data from an i2c_client struct */ /** * v4l2_i2c_subdev_init - Initializes a &struct v4l2_subdev with data from * an i2c_client struct. * * @sd: pointer to &struct v4l2_subdev * @client: pointer to struct i2c_client * @ops: pointer to &struct v4l2_subdev_ops */ void v4l2_i2c_subdev_init(struct v4l2_subdev *sd, struct i2c_client *client, const struct v4l2_subdev_ops *ops); /* Return i2c client address of v4l2_subdev. */ /** * v4l2_i2c_subdev_addr - returns i2c client address of &struct v4l2_subdev. * * @sd: pointer to &struct v4l2_subdev * * Returns the address of an I2C sub-device */ unsigned short v4l2_i2c_subdev_addr(struct v4l2_subdev *sd); enum v4l2_i2c_tuner_type { Loading