static void cm3323_light_disable(struct cm3323_data *cm3323) { /* disable setting */ cm3323_i2c_write_byte(cm3323, REG_CS_CONF1, als_reg_setting[1][1]); hrtimer_cancel(&cm3323->light_timer); cancel_work_sync(&cm3323->work_light); }
static int cm3323_setup_reg(struct cm3323_p *data) { int ret = 0; /* ALS initialization */ ret = cm3323_i2c_write_byte(data, als_reg_setting[0][0], als_reg_setting[0][1]); if (ret < 0) { pr_err("[SENSOR]: %s - cm3323_als_reg is failed. %d\n", __func__, ret); return ret; } /* turn off */ cm3323_i2c_write_byte(data, REG_CS_CONF1, 0x01); return ret; }
static int cm3323_setup_reg(struct cm3323_data *cm3323) { int err = 0; /* ALS initialization */ err = cm3323_i2c_write_byte(cm3323, als_reg_setting[0][0], als_reg_setting[0][1]); if (err < 0) { pr_err("%s: cm3323_als_reg is failed. %d\n", __func__, err); return err; } /* turn off */ cm3323_i2c_write_byte(cm3323, REG_CS_CONF1, 0x01); pr_info("%s is success.", __func__); return err; }
static void cm3323_light_enable(struct cm3323_data *cm3323) { /* enable setting */ int64_t start_add_time = 0; start_add_time = ktime_to_ns(cm3323->light_poll_delay)\ + LIGHT_ADD_STARTTIME; cm3323_i2c_write_byte(cm3323, REG_CS_CONF1, als_reg_setting[0][1]); hrtimer_start(&cm3323->light_timer, cm3323->light_poll_delay, HRTIMER_MODE_REL); }
static void cm3323_light_enable(struct cm3323_p *data) { cm3323_i2c_write_byte(data, REG_CS_CONF1, als_reg_setting[0][1]); hrtimer_start(&data->light_timer, data->poll_delay, HRTIMER_MODE_REL); }