Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

staging: iio: replace strict_strto*() with kstrto*()

The usage of strict_strto*() is not preferred, because
strict_strto*() is obsolete. Thus, kstrto*() should be
used.

Previously, there were only strict_strtol(), strict_strtoul(),
strict_strtoull(), and strict_strtoll(). Thus, when converting
to the variables, only long, unsigned long, unsigned long long,
and long long can be used.

However, kstrto*() provides various functions handling all types
of variables. Therefore, the types of variables can be changed
properly.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>

authored by

Jingoo Han and committed by
Jonathan Cameron
e5e26dd5 07914c84

+109 -114
+4 -4
drivers/staging/iio/accel/sca3000_core.c
··· 624 624 struct sca3000_state *st = iio_priv(indio_dev); 625 625 int ret, base_freq = 0; 626 626 int ctrlval; 627 - long val; 627 + int val; 628 628 629 - ret = strict_strtol(buf, 10, &val); 629 + ret = kstrtoint(buf, 10, &val); 630 630 if (ret) 631 631 return ret; 632 632 ··· 931 931 { 932 932 struct iio_dev *indio_dev = dev_to_iio_dev(dev); 933 933 struct sca3000_state *st = iio_priv(indio_dev); 934 - long val; 934 + u8 val; 935 935 int ret; 936 936 u8 protect_mask = SCA3000_FREE_FALL_DETECT; 937 937 938 938 mutex_lock(&st->lock); 939 - ret = strict_strtol(buf, 10, &val); 939 + ret = kstrtou8(buf, 10, &val); 940 940 if (ret) 941 941 goto error_ret; 942 942
+2 -2
drivers/staging/iio/accel/sca3000_ring.c
··· 177 177 struct iio_dev *indio_dev = dev_to_iio_dev(dev); 178 178 struct sca3000_state *st = iio_priv(indio_dev); 179 179 struct iio_dev_attr *this_attr = to_iio_dev_attr(attr); 180 - long val; 180 + u8 val; 181 181 int ret; 182 182 183 183 mutex_lock(&st->lock); 184 - ret = strict_strtol(buf, 10, &val); 184 + ret = kstrtou8(buf, 10, &val); 185 185 if (ret) 186 186 goto error_ret; 187 187 ret = sca3000_read_data_short(st, SCA3000_REG_ADDR_INT_MASK, 1);
+19 -19
drivers/staging/iio/addac/adt7316.c
··· 412 412 struct iio_dev *dev_info = dev_to_iio_dev(dev); 413 413 struct adt7316_chip_info *chip = iio_priv(dev_info); 414 414 u8 config2; 415 - unsigned long data = 0; 415 + u8 data; 416 416 int ret; 417 417 418 418 if (!(chip->config2 & ADT7316_AD_SINGLE_CH_MODE)) 419 419 return -EPERM; 420 420 421 - ret = strict_strtoul(buf, 10, &data); 421 + ret = kstrtou8(buf, 10, &data); 422 422 if (ret) 423 423 return -EINVAL; 424 424 ··· 823 823 struct iio_dev *dev_info = dev_to_iio_dev(dev); 824 824 struct adt7316_chip_info *chip = iio_priv(dev_info); 825 825 u8 dac_config; 826 - unsigned long data = 0; 826 + u8 data; 827 827 int ret; 828 828 829 - ret = strict_strtoul(buf, 16, &data); 829 + ret = kstrtou8(buf, 16, &data); 830 830 if (ret || data > ADT7316_DA_2VREF_CH_MASK) 831 831 return -EINVAL; 832 832 ··· 878 878 struct iio_dev *dev_info = dev_to_iio_dev(dev); 879 879 struct adt7316_chip_info *chip = iio_priv(dev_info); 880 880 u8 dac_config; 881 - unsigned long data; 881 + u8 data; 882 882 int ret; 883 883 884 884 if (!(chip->config3 & ADT7316_DA_EN_VIA_DAC_LDCA)) 885 885 return -EPERM; 886 886 887 - ret = strict_strtoul(buf, 10, &data); 887 + ret = kstrtou8(buf, 10, &data); 888 888 if (ret || data > ADT7316_DA_EN_MODE_MASK) 889 889 return -EINVAL; 890 890 ··· 933 933 struct iio_dev *dev_info = dev_to_iio_dev(dev); 934 934 struct adt7316_chip_info *chip = iio_priv(dev_info); 935 935 u8 ldac_config; 936 - unsigned long data; 936 + u8 data; 937 937 int ret; 938 938 939 939 if (chip->config3 & ADT7316_DA_EN_VIA_DAC_LDCA) { ··· 941 941 ADT7316_DA_EN_MODE_LDAC) 942 942 return -EPERM; 943 943 944 - ret = strict_strtoul(buf, 16, &data); 944 + ret = kstrtou8(buf, 16, &data); 945 945 if (ret || data > ADT7316_LDAC_EN_DA_MASK) 946 946 return -EINVAL; 947 947 ··· 1079 1079 struct iio_dev *dev_info = dev_to_iio_dev(dev); 1080 1080 struct adt7316_chip_info *chip = iio_priv(dev_info); 1081 1081 u8 ldac_config; 1082 - unsigned long data; 1082 + u8 data; 1083 1083 int ret; 1084 1084 1085 1085 if ((chip->id & ID_FAMILY_MASK) == ID_ADT75XX) { 1086 - ret = strict_strtoul(buf, 16, &data); 1086 + ret = kstrtou8(buf, 16, &data); 1087 1087 if (ret || data > 3) 1088 1088 return -EINVAL; 1089 1089 ··· 1093 1093 else if (data & 0x2) 1094 1094 ldac_config |= ADT7516_DAC_CD_IN_VREF; 1095 1095 } else { 1096 - ret = strict_strtoul(buf, 16, &data); 1096 + ret = kstrtou8(buf, 16, &data); 1097 1097 if (ret) 1098 1098 return -EINVAL; 1099 1099 ··· 1281 1281 static ssize_t adt7316_store_temp_offset(struct adt7316_chip_info *chip, 1282 1282 int offset_addr, const char *buf, size_t len) 1283 1283 { 1284 - long data; 1284 + int data; 1285 1285 u8 val; 1286 1286 int ret; 1287 1287 1288 - ret = strict_strtol(buf, 10, &data); 1288 + ret = kstrtoint(buf, 10, &data); 1289 1289 if (ret || data > 127 || data < -128) 1290 1290 return -EINVAL; 1291 1291 ··· 1442 1442 int channel, const char *buf, size_t len) 1443 1443 { 1444 1444 u8 msb, lsb, offset; 1445 - unsigned long data; 1445 + u16 data; 1446 1446 int ret; 1447 1447 1448 1448 if (channel >= ADT7316_DA_MSB_DATA_REGS || ··· 1454 1454 1455 1455 offset = chip->dac_bits - 8; 1456 1456 1457 - ret = strict_strtoul(buf, 10, &data); 1457 + ret = kstrtou16(buf, 10, &data); 1458 1458 if (ret || data >= (1 << chip->dac_bits)) 1459 1459 return -EINVAL; 1460 1460 ··· 1830 1830 { 1831 1831 struct iio_dev *dev_info = dev_to_iio_dev(dev); 1832 1832 struct adt7316_chip_info *chip = iio_priv(dev_info); 1833 - unsigned long data; 1833 + u16 data; 1834 1834 int ret; 1835 1835 u8 mask; 1836 1836 1837 - ret = strict_strtoul(buf, 16, &data); 1837 + ret = kstrtou16(buf, 16, &data); 1838 1838 if (ret || data >= ADT7316_VDD_INT_MASK + 1) 1839 1839 return -EINVAL; 1840 1840 ··· 1901 1901 struct iio_dev_attr *this_attr = to_iio_dev_attr(attr); 1902 1902 struct iio_dev *dev_info = dev_to_iio_dev(dev); 1903 1903 struct adt7316_chip_info *chip = iio_priv(dev_info); 1904 - long data; 1904 + int data; 1905 1905 u8 val; 1906 1906 int ret; 1907 1907 ··· 1909 1909 this_attr->address > ADT7316_EX_TEMP_LOW) 1910 1910 return -EPERM; 1911 1911 1912 - ret = strict_strtol(buf, 10, &data); 1912 + ret = kstrtoint(buf, 10, &data); 1913 1913 if (ret) 1914 1914 return -EINVAL; 1915 1915
+2 -2
drivers/staging/iio/frequency/ad9832.c
··· 81 81 struct ad9832_state *st = iio_priv(indio_dev); 82 82 struct iio_dev_attr *this_attr = to_iio_dev_attr(attr); 83 83 int ret; 84 - long val; 84 + unsigned long val; 85 85 86 - ret = strict_strtoul(buf, 10, &val); 86 + ret = kstrtoul(buf, 10, &val); 87 87 if (ret) 88 88 goto error_ret; 89 89
+2 -2
drivers/staging/iio/frequency/ad9834.c
··· 70 70 struct ad9834_state *st = iio_priv(indio_dev); 71 71 struct iio_dev_attr *this_attr = to_iio_dev_attr(attr); 72 72 int ret; 73 - long val; 73 + unsigned long val; 74 74 75 - ret = strict_strtoul(buf, 10, &val); 75 + ret = kstrtoul(buf, 10, &val); 76 76 if (ret) 77 77 goto error_ret; 78 78
+6 -6
drivers/staging/iio/impedance-analyzer/ad5933.c
··· 323 323 struct iio_dev *indio_dev = dev_to_iio_dev(dev); 324 324 struct ad5933_state *st = iio_priv(indio_dev); 325 325 struct iio_dev_attr *this_attr = to_iio_dev_attr(attr); 326 - long val; 326 + unsigned long val; 327 327 int ret; 328 328 329 - ret = strict_strtoul(buf, 10, &val); 329 + ret = kstrtoul(buf, 10, &val); 330 330 if (ret) 331 331 return ret; 332 332 ··· 400 400 struct iio_dev *indio_dev = dev_to_iio_dev(dev); 401 401 struct ad5933_state *st = iio_priv(indio_dev); 402 402 struct iio_dev_attr *this_attr = to_iio_dev_attr(attr); 403 - long val; 403 + u16 val; 404 404 int i, ret = 0; 405 405 unsigned short dat; 406 406 407 407 if (this_attr->address != AD5933_IN_PGA_GAIN) { 408 - ret = strict_strtol(buf, 10, &val); 408 + ret = kstrtou16(buf, 10, &val); 409 409 if (ret) 410 410 return ret; 411 411 } ··· 434 434 ret = ad5933_cmd(st, 0); 435 435 break; 436 436 case AD5933_OUT_SETTLING_CYCLES: 437 - val = clamp(val, 0L, 0x7FFL); 437 + val = clamp(val, (u16)0, (u16)0x7FF); 438 438 st->settling_cycles = val; 439 439 440 440 /* 2x, 4x handling, see datasheet */ ··· 448 448 AD5933_REG_SETTLING_CYCLES, 2, (u8 *)&dat); 449 449 break; 450 450 case AD5933_FREQ_POINTS: 451 - val = clamp(val, 0L, 511L); 451 + val = clamp(val, (u16)0, (u16)511); 452 452 st->freq_points = val; 453 453 454 454 dat = cpu_to_be16(val);
+9 -9
drivers/staging/iio/light/isl29018.c
··· 240 240 unsigned long lval; 241 241 unsigned int new_range; 242 242 243 - if (strict_strtoul(buf, 10, &lval)) 243 + if (kstrtoul(buf, 10, &lval)) 244 244 return -EINVAL; 245 245 246 246 if (!(lval == 1000UL || lval == 4000UL || ··· 279 279 struct iio_dev *indio_dev = dev_to_iio_dev(dev); 280 280 struct isl29018_chip *chip = iio_priv(indio_dev); 281 281 int status; 282 - unsigned long lval; 282 + unsigned int val; 283 283 unsigned int new_adc_bit; 284 284 285 - if (strict_strtoul(buf, 10, &lval)) 285 + if (kstrtouint(buf, 10, &val)) 286 286 return -EINVAL; 287 - if (!(lval == 4 || lval == 8 || lval == 12 || lval == 16)) { 287 + if (!(val == 4 || val == 8 || val == 12 || val == 16)) { 288 288 dev_err(dev, "The resolution is not supported\n"); 289 289 return -EINVAL; 290 290 } 291 291 292 292 mutex_lock(&chip->lock); 293 - status = isl29018_set_resolution(chip, lval, &new_adc_bit); 293 + status = isl29018_set_resolution(chip, val, &new_adc_bit); 294 294 if (status < 0) { 295 295 mutex_unlock(&chip->lock); 296 296 dev_err(dev, "Error in setting resolution\n"); ··· 319 319 { 320 320 struct iio_dev *indio_dev = dev_to_iio_dev(dev); 321 321 struct isl29018_chip *chip = iio_priv(indio_dev); 322 - unsigned long lval; 322 + int val; 323 323 324 - if (strict_strtoul(buf, 10, &lval)) 324 + if (kstrtoint(buf, 10, &val)) 325 325 return -EINVAL; 326 - if (!(lval == 0UL || lval == 1UL)) { 326 + if (!(val == 0 || val == 1)) { 327 327 dev_err(dev, "The mode is not supported\n"); 328 328 return -EINVAL; 329 329 } ··· 331 331 /* get the "proximity scheme" i.e. if the chip does on chip 332 332 infrared suppression (1 means perform on chip suppression) */ 333 333 mutex_lock(&chip->lock); 334 - chip->prox_scheme = (int)lval; 334 + chip->prox_scheme = val; 335 335 mutex_unlock(&chip->lock); 336 336 337 337 return count;
+12 -12
drivers/staging/iio/light/tsl2583.c
··· 493 493 struct device_attribute *attr, const char *buf, size_t len) 494 494 { 495 495 struct iio_dev *indio_dev = dev_to_iio_dev(dev); 496 - unsigned long value; 496 + int value; 497 497 498 - if (strict_strtoul(buf, 0, &value)) 498 + if (kstrtoint(buf, 0, &value)) 499 499 return -EINVAL; 500 500 501 501 if (value == 0) ··· 536 536 { 537 537 struct iio_dev *indio_dev = dev_to_iio_dev(dev); 538 538 struct tsl2583_chip *chip = iio_priv(indio_dev); 539 - unsigned long value; 539 + int value; 540 540 541 - if (strict_strtoul(buf, 0, &value)) 541 + if (kstrtoint(buf, 0, &value)) 542 542 return -EINVAL; 543 543 544 544 switch (value) { ··· 582 582 { 583 583 struct iio_dev *indio_dev = dev_to_iio_dev(dev); 584 584 struct tsl2583_chip *chip = iio_priv(indio_dev); 585 - unsigned long value; 585 + int value; 586 586 587 - if (strict_strtoul(buf, 0, &value)) 587 + if (kstrtoint(buf, 0, &value)) 588 588 return -EINVAL; 589 589 590 590 if ((value < 50) || (value > 650)) ··· 619 619 { 620 620 struct iio_dev *indio_dev = dev_to_iio_dev(dev); 621 621 struct tsl2583_chip *chip = iio_priv(indio_dev); 622 - unsigned long value; 622 + int value; 623 623 624 - if (strict_strtoul(buf, 0, &value)) 624 + if (kstrtoint(buf, 0, &value)) 625 625 return -EINVAL; 626 626 627 627 if (value) ··· 644 644 { 645 645 struct iio_dev *indio_dev = dev_to_iio_dev(dev); 646 646 struct tsl2583_chip *chip = iio_priv(indio_dev); 647 - unsigned long value; 647 + int value; 648 648 649 - if (strict_strtoul(buf, 0, &value)) 649 + if (kstrtoint(buf, 0, &value)) 650 650 return -EINVAL; 651 651 652 652 if (value) ··· 671 671 struct device_attribute *attr, const char *buf, size_t len) 672 672 { 673 673 struct iio_dev *indio_dev = dev_to_iio_dev(dev); 674 - unsigned long value; 674 + int value; 675 675 676 - if (strict_strtoul(buf, 0, &value)) 676 + if (kstrtoint(buf, 0, &value)) 677 677 return -EINVAL; 678 678 679 679 if (value == 1)
+6 -6
drivers/staging/iio/meter/ade7753.c
··· 186 186 { 187 187 struct iio_dev_attr *this_attr = to_iio_dev_attr(attr); 188 188 int ret; 189 - long val; 189 + u8 val; 190 190 191 - ret = strict_strtol(buf, 10, &val); 191 + ret = kstrtou8(buf, 10, &val); 192 192 if (ret) 193 193 goto error_ret; 194 194 ret = ade7753_spi_write_reg_8(dev, this_attr->address, val); ··· 204 204 { 205 205 struct iio_dev_attr *this_attr = to_iio_dev_attr(attr); 206 206 int ret; 207 - long val; 207 + u16 val; 208 208 209 - ret = strict_strtol(buf, 10, &val); 209 + ret = kstrtou16(buf, 10, &val); 210 210 if (ret) 211 211 goto error_ret; 212 212 ret = ade7753_spi_write_reg_16(dev, this_attr->address, val); ··· 399 399 { 400 400 struct iio_dev *indio_dev = dev_to_iio_dev(dev); 401 401 struct ade7753_state *st = iio_priv(indio_dev); 402 - unsigned long val; 402 + u16 val; 403 403 int ret; 404 404 u16 reg, t; 405 405 406 - ret = strict_strtol(buf, 10, &val); 406 + ret = kstrtou16(buf, 10, &val); 407 407 if (ret) 408 408 return ret; 409 409 if (val == 0)
+6 -6
drivers/staging/iio/meter/ade7754.c
··· 186 186 { 187 187 struct iio_dev_attr *this_attr = to_iio_dev_attr(attr); 188 188 int ret; 189 - long val; 189 + u8 val; 190 190 191 - ret = strict_strtol(buf, 10, &val); 191 + ret = kstrtou8(buf, 10, &val); 192 192 if (ret) 193 193 goto error_ret; 194 194 ret = ade7754_spi_write_reg_8(dev, this_attr->address, val); ··· 204 204 { 205 205 struct iio_dev_attr *this_attr = to_iio_dev_attr(attr); 206 206 int ret; 207 - long val; 207 + u16 val; 208 208 209 - ret = strict_strtol(buf, 10, &val); 209 + ret = kstrtou16(buf, 10, &val); 210 210 if (ret) 211 211 goto error_ret; 212 212 ret = ade7754_spi_write_reg_16(dev, this_attr->address, val); ··· 419 419 { 420 420 struct iio_dev *indio_dev = dev_to_iio_dev(dev); 421 421 struct ade7754_state *st = iio_priv(indio_dev); 422 - unsigned long val; 422 + u16 val; 423 423 int ret; 424 424 u8 reg, t; 425 425 426 - ret = strict_strtol(buf, 10, &val); 426 + ret = kstrtou16(buf, 10, &val); 427 427 if (ret) 428 428 return ret; 429 429 if (val == 0)
+6 -6
drivers/staging/iio/meter/ade7758_core.c
··· 269 269 { 270 270 struct iio_dev_attr *this_attr = to_iio_dev_attr(attr); 271 271 int ret; 272 - long val; 272 + u8 val; 273 273 274 - ret = strict_strtol(buf, 10, &val); 274 + ret = kstrtou8(buf, 10, &val); 275 275 if (ret) 276 276 goto error_ret; 277 277 ret = ade7758_spi_write_reg_8(dev, this_attr->address, val); ··· 287 287 { 288 288 struct iio_dev_attr *this_attr = to_iio_dev_attr(attr); 289 289 int ret; 290 - long val; 290 + u16 val; 291 291 292 - ret = strict_strtol(buf, 10, &val); 292 + ret = kstrtou16(buf, 10, &val); 293 293 if (ret) 294 294 goto error_ret; 295 295 ret = ade7758_spi_write_reg_16(dev, this_attr->address, val); ··· 502 502 size_t len) 503 503 { 504 504 struct iio_dev *indio_dev = dev_to_iio_dev(dev); 505 - unsigned long val; 505 + u16 val; 506 506 int ret; 507 507 u8 reg, t; 508 508 509 - ret = strict_strtol(buf, 10, &val); 509 + ret = kstrtou16(buf, 10, &val); 510 510 if (ret) 511 511 return ret; 512 512
+6 -6
drivers/staging/iio/meter/ade7759.c
··· 185 185 { 186 186 struct iio_dev_attr *this_attr = to_iio_dev_attr(attr); 187 187 int ret; 188 - long val; 188 + u8 val; 189 189 190 - ret = strict_strtol(buf, 10, &val); 190 + ret = kstrtou8(buf, 10, &val); 191 191 if (ret) 192 192 goto error_ret; 193 193 ret = ade7759_spi_write_reg_8(dev, this_attr->address, val); ··· 203 203 { 204 204 struct iio_dev_attr *this_attr = to_iio_dev_attr(attr); 205 205 int ret; 206 - long val; 206 + u16 val; 207 207 208 - ret = strict_strtol(buf, 10, &val); 208 + ret = kstrtou16(buf, 10, &val); 209 209 if (ret) 210 210 goto error_ret; 211 211 ret = ade7759_spi_write_reg_16(dev, this_attr->address, val); ··· 360 360 { 361 361 struct iio_dev *indio_dev = dev_to_iio_dev(dev); 362 362 struct ade7759_state *st = iio_priv(indio_dev); 363 - unsigned long val; 363 + u16 val; 364 364 int ret; 365 365 u16 reg, t; 366 366 367 - ret = strict_strtol(buf, 10, &val); 367 + ret = kstrtou16(buf, 10, &val); 368 368 if (ret) 369 369 return ret; 370 370 if (val == 0)
+8 -8
drivers/staging/iio/meter/ade7854.c
··· 100 100 struct ade7854_state *st = iio_priv(indio_dev); 101 101 102 102 int ret; 103 - long val; 103 + u8 val; 104 104 105 - ret = strict_strtol(buf, 10, &val); 105 + ret = kstrtou8(buf, 10, &val); 106 106 if (ret) 107 107 goto error_ret; 108 108 ret = st->write_reg_8(dev, this_attr->address, val); ··· 121 121 struct ade7854_state *st = iio_priv(indio_dev); 122 122 123 123 int ret; 124 - long val; 124 + u16 val; 125 125 126 - ret = strict_strtol(buf, 10, &val); 126 + ret = kstrtou16(buf, 10, &val); 127 127 if (ret) 128 128 goto error_ret; 129 129 ret = st->write_reg_16(dev, this_attr->address, val); ··· 142 142 struct ade7854_state *st = iio_priv(indio_dev); 143 143 144 144 int ret; 145 - long val; 145 + u32 val; 146 146 147 - ret = strict_strtol(buf, 10, &val); 147 + ret = kstrtou32(buf, 10, &val); 148 148 if (ret) 149 149 goto error_ret; 150 150 ret = st->write_reg_24(dev, this_attr->address, val); ··· 163 163 struct ade7854_state *st = iio_priv(indio_dev); 164 164 165 165 int ret; 166 - long val; 166 + u32 val; 167 167 168 - ret = strict_strtol(buf, 10, &val); 168 + ret = kstrtou32(buf, 10, &val); 169 169 if (ret) 170 170 goto error_ret; 171 171 ret = st->write_reg_32(dev, this_attr->address, val);
+10 -10
drivers/staging/iio/resolver/ad2s1210.c
··· 206 206 size_t len) 207 207 { 208 208 struct ad2s1210_state *st = iio_priv(dev_to_iio_dev(dev)); 209 - unsigned long fclkin; 209 + unsigned int fclkin; 210 210 int ret; 211 211 212 - ret = strict_strtoul(buf, 10, &fclkin); 212 + ret = kstrtouint(buf, 10, &fclkin); 213 213 if (ret) 214 214 return ret; 215 215 if (fclkin < AD2S1210_MIN_CLKIN || fclkin > AD2S1210_MAX_CLKIN) { ··· 243 243 const char *buf, size_t len) 244 244 { 245 245 struct ad2s1210_state *st = iio_priv(dev_to_iio_dev(dev)); 246 - unsigned long fexcit; 246 + unsigned int fexcit; 247 247 int ret; 248 248 249 - ret = strict_strtoul(buf, 10, &fexcit); 249 + ret = kstrtouint(buf, 10, &fexcit); 250 250 if (ret < 0) 251 251 return ret; 252 252 if (fexcit < AD2S1210_MIN_EXCIT || fexcit > AD2S1210_MAX_EXCIT) { ··· 282 282 const char *buf, size_t len) 283 283 { 284 284 struct ad2s1210_state *st = iio_priv(dev_to_iio_dev(dev)); 285 - unsigned long udata; 285 + unsigned char udata; 286 286 unsigned char data; 287 287 int ret; 288 288 289 - ret = strict_strtoul(buf, 16, &udata); 289 + ret = kstrtou8(buf, 16, &udata); 290 290 if (ret) 291 291 return -EINVAL; 292 292 ··· 337 337 { 338 338 struct ad2s1210_state *st = iio_priv(dev_to_iio_dev(dev)); 339 339 unsigned char data; 340 - unsigned long udata; 340 + unsigned char udata; 341 341 int ret; 342 342 343 - ret = strict_strtoul(buf, 10, &udata); 343 + ret = kstrtou8(buf, 10, &udata); 344 344 if (ret || udata < 10 || udata > 16) { 345 345 pr_err("ad2s1210: resolution out of range\n"); 346 346 return -EINVAL; ··· 438 438 struct device_attribute *attr, const char *buf, size_t len) 439 439 { 440 440 struct ad2s1210_state *st = iio_priv(dev_to_iio_dev(dev)); 441 - unsigned long data; 441 + unsigned char data; 442 442 int ret; 443 443 struct iio_dev_attr *iattr = to_iio_dev_attr(attr); 444 444 445 - ret = strict_strtoul(buf, 10, &data); 445 + ret = kstrtou8(buf, 10, &data); 446 446 if (ret) 447 447 return -EINVAL; 448 448 mutex_lock(&st->lock);
+9 -14
drivers/staging/iio/trigger/iio-trig-bfin-timer.c
··· 83 83 { 84 84 struct iio_trigger *trig = to_iio_trigger(dev); 85 85 struct bfin_tmr_state *st = iio_trigger_get_drvdata(trig); 86 - unsigned long val; 86 + unsigned int val; 87 87 bool enabled; 88 88 int ret; 89 89 90 - ret = strict_strtoul(buf, 10, &val); 90 + ret = kstrtouint(buf, 10, &val); 91 91 if (ret) 92 - goto error_ret; 92 + return ret; 93 93 94 94 if (val > 100000) { 95 - ret = -EINVAL; 96 - goto error_ret; 97 - } 95 + return -EINVAL; 98 96 99 97 enabled = get_enabled_gptimers() & st->t->bit; 100 98 101 99 if (enabled) 102 100 disable_gptimers(st->t->bit); 103 101 104 - if (!val) 105 - goto error_ret; 102 + if (val == 0) 103 + return count; 106 104 107 105 val = get_sclk() / val; 108 - if (val <= 4 || val <= st->duty) { 109 - ret = -EINVAL; 110 - goto error_ret; 111 - } 106 + if (val <= 4 || val <= st->duty) 107 + return -EINVAL; 112 108 113 109 set_gptimer_period(st->t->id, val); 114 110 set_gptimer_pwidth(st->t->id, val - st->duty); ··· 112 116 if (enabled) 113 117 enable_gptimers(st->t->bit); 114 118 115 - error_ret: 116 - return ret ? ret : count; 119 + return count; 117 120 } 118 121 119 122 static ssize_t iio_bfin_tmr_frequency_show(struct device *dev,
+2 -2
drivers/staging/iio/trigger/iio-trig-periodic-rtc.c
··· 53 53 { 54 54 struct iio_trigger *trig = to_iio_trigger(dev); 55 55 struct iio_prtc_trigger_info *trig_info = iio_trigger_get_drvdata(trig); 56 - unsigned long val; 56 + int val; 57 57 int ret; 58 58 59 - ret = strict_strtoul(buf, 10, &val); 59 + ret = kstrtoint(buf, 10, &val); 60 60 if (ret) 61 61 goto error_ret; 62 62