Lines Matching +full:bus +full:- +full:range +full:- +full:microvolt

4  * SPDX-License-Identifier:     GPL-2.0+
14 int t, down_threshold = -1, up_threshold; in adc_key_ofdata_to_platdata()
21 return -ENXIO; in adc_key_ofdata_to_platdata()
23 uc_key->type = ADC_KEY; in adc_key_ofdata_to_platdata()
24 uc_key->name = dev_read_string(dev, "label"); in adc_key_ofdata_to_platdata()
26 "io-channels", chn, ARRAY_SIZE(chn)); in adc_key_ofdata_to_platdata()
28 printf("%s: read 'io-channels' failed, ret=%d\n", in adc_key_ofdata_to_platdata()
29 uc_key->name, ret); in adc_key_ofdata_to_platdata()
30 return -EINVAL; in adc_key_ofdata_to_platdata()
34 "keyup-threshold-microvolt", -ENODATA); in adc_key_ofdata_to_platdata()
36 return -ENODATA; in adc_key_ofdata_to_platdata()
38 uc_key->code = dev_read_u32_default(dev, "linux,code", -ENODATA); in adc_key_ofdata_to_platdata()
39 if (uc_key->code < 0) in adc_key_ofdata_to_platdata()
40 return -ENODATA; in adc_key_ofdata_to_platdata()
42 voltage = dev_read_u32_default(dev, "press-threshold-microvolt", -ENODATA); in adc_key_ofdata_to_platdata()
44 return -ENODATA; in adc_key_ofdata_to_platdata()
46 dev_for_each_subnode(node, dev->parent) { in adc_key_ofdata_to_platdata()
47 ret = ofnode_read_s32(node, "press-threshold-microvolt", &t); in adc_key_ofdata_to_platdata()
60 down_threshold = voltage - volt_margin; in adc_key_ofdata_to_platdata()
64 uc_key->in_volt = 1; in adc_key_ofdata_to_platdata()
65 uc_key->channel = chn[1]; in adc_key_ofdata_to_platdata()
66 uc_key->center = voltage; in adc_key_ofdata_to_platdata()
68 * Define the voltage range such that the button is only pressed in adc_key_ofdata_to_platdata()
69 * when the voltage is closest to its own press-threshold-microvolt in adc_key_ofdata_to_platdata()
72 uc_key->min = 0; in adc_key_ofdata_to_platdata()
74 uc_key->min = down_threshold + (voltage - down_threshold) / 2; in adc_key_ofdata_to_platdata()
76 uc_key->max = voltage + (up_threshold - voltage) / 2; in adc_key_ofdata_to_platdata()
87 /* Key Bus */
94 { .compatible = "adc-keys" },