long msm_eeprom_subdev_ioctl(struct v4l2_subdev *sd, unsigned int cmd, void *arg) { struct msm_eeprom_ctrl_t *e_ctrl = get_ectrl(sd); void __user *argp = (void __user *)arg; switch (cmd) { case VIDIOC_MSM_EEPROM_CFG: return msm_eeprom_config(e_ctrl, argp); default: return -ENOIOCTLCMD; } }
static long msm_eeprom_subdev_ioctl(struct v4l2_subdev *sd, unsigned int cmd, void *arg) { struct msm_eeprom_ctrl_t *e_ctrl = v4l2_get_subdevdata(sd); void __user *argp = (void __user *)arg; CDBG("%s E\n", __func__); CDBG("%s:%d a_ctrl %p argp %p\n", __func__, __LINE__, e_ctrl, argp); switch (cmd) { case VIDIOC_MSM_SENSOR_GET_SUBDEV_ID: return msm_eeprom_get_subdev_id(e_ctrl, argp); case VIDIOC_MSM_EEPROM_CFG: return msm_eeprom_config(e_ctrl, argp); default: return -ENOIOCTLCMD; } CDBG("%s X\n", __func__); }