Lines Matching refs:ret
236 s32 ret = 0;
251 ret = i2c_smbus_read_word_data(client, REG_ADDR_SPEC_INFO);
252 if (ret >= 0)
265 if (ret < 0) {
266 dev_dbg(&client->dev, "failed to read spec info: %d\n", ret);
272 return ret;
275 version = (ret & SPEC_INFO_VERSION_MASK) >> SPEC_INFO_VERSION_SHIFT;
303 s32 ret = 0;
306 ret = i2c_smbus_read_word_data(client, address);
307 if (ret >= 0)
312 if (ret < 0) {
316 return ret;
319 return ret;
325 s32 ret = 0, block_length = 0;
344 ret = i2c_smbus_read_byte_data(client, address);
345 if (ret >= 0)
350 if (ret < 0) {
354 return ret;
358 block_length = ret;
368 ret = i2c_smbus_read_i2c_block_data(
371 if (ret >= 0)
376 if (ret < 0) {
380 return ret;
387 return ret;
394 int ret = 0;
399 ret = sbs_read_string_data_fallback(client, address, values);
402 return ret;
406 ret = i2c_smbus_read_block_data(client, address, values);
407 if (ret >= 0)
412 if (ret < 0) {
413 dev_dbg(&client->dev, "failed to read block 0x%x: %d\n", address, ret);
414 return ret;
418 values[ret] = '\0';
419 return ret;
427 s32 ret = 0;
430 ret = i2c_smbus_write_word_data(client, address, value);
431 if (ret >= 0)
436 if (ret < 0) {
440 return ret;
448 int ret;
450 ret = sbs_read_word_data(client, sbs_data[REG_CURRENT_NOW].addr);
451 if (ret < 0)
452 return ret;
454 ret = (s16)ret;
457 if (*intval != POWER_SUPPLY_STATUS_FULL && ret == 0)
462 if (ret > 0)
464 else if (ret < 0)
473 int ret;
475 ret = sbs_read_word_data(client, sbs_data[REG_BATTERY_MODE].addr);
476 if (ret < 0)
479 return !!(ret & BIT(7));
486 s32 ret;
492 ret = sbs_write_word_data(client, sbs_data[REG_MANUFACTURER_DATA].addr,
494 if (ret < 0) {
497 return ret;
500 ret = sbs_read_word_data(client, sbs_data[REG_MANUFACTURER_DATA].addr);
501 if (ret < 0) {
504 return ret;
507 if (ret < sbs_data[REG_MANUFACTURER_DATA].min_value ||
508 ret > sbs_data[REG_MANUFACTURER_DATA].max_value) {
516 ret &= 0x0F00;
517 ret >>= 8;
519 if (ret == 0x0F)
525 if (ret == 0x09)
527 else if (ret == 0x0B)
529 else if (ret == 0x0C)
545 int ret;
551 ret = sbs_read_word_data(client, sbs_data[REG_STATUS].addr);
553 if (ret < 0) { /* battery not present*/
558 return ret;
580 s32 ret;
582 ret = sbs_read_word_data(client, sbs_data[reg_offset].addr);
583 if (ret < 0)
584 return ret;
588 ret = (s16)ret;
590 if (ret >= sbs_data[reg_offset].min_value &&
591 ret <= sbs_data[reg_offset].max_value) {
592 val->intval = ret;
594 if (!(ret & BATTERY_INITIALIZED))
597 else if (ret & BATTERY_FULL_CHARGED)
600 else if (ret & BATTERY_FULL_DISCHARGED)
611 if (ret & BATTERY_FULL_CHARGED)
613 else if (ret & BATTERY_DISCHARGING)
634 val->intval = min(ret, 100);
645 s32 ret;
647 ret = sbs_read_string_data(client, sbs_data[reg_offset].addr, val);
649 if (ret < 0)
650 return ret;
709 int ret, original_val;
719 ret = original_val & ~BATTERY_MODE_CAPACITY_MASK;
721 ret = original_val | BATTERY_MODE_CAPACITY_MASK;
723 ret = sbs_write_word_data(client, BATTERY_MODE_OFFSET, ret);
724 if (ret < 0)
725 return ret;
736 s32 ret;
746 ret = sbs_read_word_data(client, sbs_data[reg_offset].addr);
747 if (ret < 0)
748 return ret;
750 val->intval = ret;
752 ret = sbs_set_capacity_mode(client, mode);
753 if (ret < 0)
754 return ret;
763 int ret;
765 ret = sbs_read_word_data(client, sbs_data[REG_SERIAL_NUMBER].addr);
766 if (ret < 0)
767 return ret;
769 sprintf(sbs_serial, "%04x", ret);
793 int ret;
795 ret = sbs_get_property_index(client, psp);
796 if (ret < 0)
797 return ret;
799 ret = sbs_get_battery_string_property(client, ret, psp,
801 if (ret < 0)
802 return ret;
825 int ret;
828 ret = sbs_read_word_data(client, REG_ADDR_MANUFACTURE_DATE);
829 if (ret < 0)
830 return ret;
832 day = ret & GENMASK(4, 0);
833 month = (ret & GENMASK(8, 5)) >> 5;
834 year = ((ret & GENMASK(15, 9)) >> 9) + 1980;
857 int ret = 0;
862 ret = gpiod_get_value_cansleep(chip->gpio_detect);
863 if (ret < 0)
864 return ret;
866 val->intval = ret;
867 sbs_update_presence(chip, ret);
870 if (ret == 0)
877 ret = sbs_get_battery_presence_and_health(client, psp, val);
885 ret = sbs_get_chemistry(client, val);
886 if (ret < 0)
897 ret = sbs_get_property_index(client, psp);
898 if (ret < 0)
906 ret = sbs_get_battery_capacity(client, ret, psp, val);
911 ret = sbs_get_battery_serial_number(client, val);
929 ret = sbs_get_property_index(client, psp);
930 if (ret < 0)
933 ret = sbs_get_battery_property(client, ret, psp, val);
937 ret = sbs_get_property_index(client, psp);
938 if (ret < 0)
941 ret = sbs_get_battery_string_property(client, ret, psp,
947 ret = sbs_get_property_index(client, psp);
948 if (ret < 0)
951 ret = sbs_get_battery_string_property(client, ret, psp,
959 ret = sbs_get_battery_manufacture_date(client, psp, val);
968 if (!chip->gpio_detect && chip->is_present != (ret >= 0)) {
981 if (!ret) {
989 ret = -ENODATA;
991 return ret;
997 int ret;
999 ret = gpiod_get_value_cansleep(chip->gpio_detect);
1000 if (ret < 0)
1002 sbs_update_presence(chip, ret);
1032 s32 ret;
1036 ret = sbs_read_word_data(chip->client, sbs_data[REG_STATUS].addr);
1038 if (ret < 0) {
1043 if (ret & BATTERY_FULL_CHARGED)
1044 ret = POWER_SUPPLY_STATUS_FULL;
1045 else if (ret & BATTERY_DISCHARGING)
1046 ret = POWER_SUPPLY_STATUS_DISCHARGING;
1048 ret = POWER_SUPPLY_STATUS_CHARGING;
1050 sbs_status_correct(chip->client, &ret);
1052 if (chip->last_state != ret) {
1203 int ret;
1210 ret = sbs_write_word_data(client,
1213 if (chip->is_present && ret < 0)
1214 return ret;