Loading drivers/input/misc/vl53L1/stmvl53l1_module-i2c.c +4 −4 Original line number Diff line number Diff line Loading @@ -377,7 +377,7 @@ static int stmvl53l1_parse_tree(struct device *dev, struct i2c_data *i2c_data) i2c_data->intr_gpio = intr_gpio_nb; } else if (dev->of_node) { /* power : either vdd or pwren_gpio. try reulator first */ i2c_data->vdd = regulator_get_optional(dev, "vdd"); i2c_data->vdd = devm_regulator_get(dev, "vl53_vdd"); if (IS_ERR(i2c_data->vdd) || i2c_data->vdd == NULL) { i2c_data->vdd = NULL; /* try gpio */ Loading @@ -389,9 +389,9 @@ static int stmvl53l1_parse_tree(struct device *dev, struct i2c_data *i2c_data) "no regulator, nor power gpio => power ctrl disabled"); } } //rc = regulator_enable(i2c_data->vdd); //if (rc) // pr_err("i2c_data->vdd failed to enable\n"); rc = regulator_enable(i2c_data->vdd); if (rc) pr_err("i2c_data->vdd failed to enable\n"); i2c_data->xsdn_gpio = of_get_named_gpio(dev->of_node, "xsdn-gpio",0); if (i2c_data->xsdn_gpio < 0) Loading drivers/input/misc/vl53L1/stmvl53l1_module.c +6 −19 Original line number Diff line number Diff line Loading @@ -394,21 +394,12 @@ static int reset_release(struct stmvl53l1_data *data) { int rc; vl53l1_dbgmsg("turn on vdd\n"); rc = stmvl53l1_module_func_tbl.power_up(data->client_object); if (rc) { vl53l1_errmsg("%d,error rc %d\n", __LINE__, rc); return rc; } if (!data->reset_state) return 0; rc = stmvl53l1_module_func_tbl.reset_release(data->client_object); if (rc) { if (rc) vl53l1_errmsg("reset release fail rc=%d\n", rc); stmvl53l1_module_func_tbl.power_down(data->client_object); } else data->reset_state = 0; Loading @@ -419,9 +410,6 @@ static int reset_hold(struct stmvl53l1_data *data) { int rc; vl53l1_dbgmsg("turn off vdd data reset_state=%d\n", data->reset_state); rc = stmvl53l1_module_func_tbl.power_down(data->client_object); if (data->reset_state) return 0; Loading Loading @@ -3991,12 +3979,11 @@ int stmvl53l1_setup(struct stmvl53l1_data *data) data->last_error = VL53L1_ERROR_NONE; data->is_device_remove = false; /* vdd will be controlled in reset_release() */ //rc = stmvl53l1_module_func_tbl.power_up(data->client_object); //if (rc) { // vl53l1_errmsg("%d,error rc %d\n", __LINE__, rc); // goto exit_ipp_cleanup; //} rc = stmvl53l1_module_func_tbl.power_up(data->client_object); if (rc) { vl53l1_errmsg("%d,error rc %d\n", __LINE__, rc); goto exit_ipp_cleanup; } rc = reset_release(data); if (rc) goto exit_ipp_cleanup; Loading Loading
drivers/input/misc/vl53L1/stmvl53l1_module-i2c.c +4 −4 Original line number Diff line number Diff line Loading @@ -377,7 +377,7 @@ static int stmvl53l1_parse_tree(struct device *dev, struct i2c_data *i2c_data) i2c_data->intr_gpio = intr_gpio_nb; } else if (dev->of_node) { /* power : either vdd or pwren_gpio. try reulator first */ i2c_data->vdd = regulator_get_optional(dev, "vdd"); i2c_data->vdd = devm_regulator_get(dev, "vl53_vdd"); if (IS_ERR(i2c_data->vdd) || i2c_data->vdd == NULL) { i2c_data->vdd = NULL; /* try gpio */ Loading @@ -389,9 +389,9 @@ static int stmvl53l1_parse_tree(struct device *dev, struct i2c_data *i2c_data) "no regulator, nor power gpio => power ctrl disabled"); } } //rc = regulator_enable(i2c_data->vdd); //if (rc) // pr_err("i2c_data->vdd failed to enable\n"); rc = regulator_enable(i2c_data->vdd); if (rc) pr_err("i2c_data->vdd failed to enable\n"); i2c_data->xsdn_gpio = of_get_named_gpio(dev->of_node, "xsdn-gpio",0); if (i2c_data->xsdn_gpio < 0) Loading
drivers/input/misc/vl53L1/stmvl53l1_module.c +6 −19 Original line number Diff line number Diff line Loading @@ -394,21 +394,12 @@ static int reset_release(struct stmvl53l1_data *data) { int rc; vl53l1_dbgmsg("turn on vdd\n"); rc = stmvl53l1_module_func_tbl.power_up(data->client_object); if (rc) { vl53l1_errmsg("%d,error rc %d\n", __LINE__, rc); return rc; } if (!data->reset_state) return 0; rc = stmvl53l1_module_func_tbl.reset_release(data->client_object); if (rc) { if (rc) vl53l1_errmsg("reset release fail rc=%d\n", rc); stmvl53l1_module_func_tbl.power_down(data->client_object); } else data->reset_state = 0; Loading @@ -419,9 +410,6 @@ static int reset_hold(struct stmvl53l1_data *data) { int rc; vl53l1_dbgmsg("turn off vdd data reset_state=%d\n", data->reset_state); rc = stmvl53l1_module_func_tbl.power_down(data->client_object); if (data->reset_state) return 0; Loading Loading @@ -3991,12 +3979,11 @@ int stmvl53l1_setup(struct stmvl53l1_data *data) data->last_error = VL53L1_ERROR_NONE; data->is_device_remove = false; /* vdd will be controlled in reset_release() */ //rc = stmvl53l1_module_func_tbl.power_up(data->client_object); //if (rc) { // vl53l1_errmsg("%d,error rc %d\n", __LINE__, rc); // goto exit_ipp_cleanup; //} rc = stmvl53l1_module_func_tbl.power_up(data->client_object); if (rc) { vl53l1_errmsg("%d,error rc %d\n", __LINE__, rc); goto exit_ipp_cleanup; } rc = reset_release(data); if (rc) goto exit_ipp_cleanup; Loading