Messages in this thread | | | Date | Sun, 2 Oct 2022 17:31:21 +0300 | Subject | Re: [RFC PATCH 4/5] iio: accel: Support Kionix/ROHM KX022A accelerometer | From | Matti Vaittinen <> |
| |
On 10/2/22 14:18, Jonathan Cameron wrote: > On Wed, 28 Sep 2022 14:14:14 +0300 > Matti Vaittinen <mazziesaccount@gmail.com> wrote: > >> Hi Jonathan, >> >> On 9/22/22 20:03, Jonathan Cameron wrote: >>> On Wed, 21 Sep 2022 14:45:35 +0300 >>> Matti Vaittinen <mazziesaccount@gmail.com> wrote: >>>> + >>>> +/* >>>> + * The sensor HW can support ODR up to 1600 Hz - which is beyond what most of >>>> + * Linux CPUs can handle w/o dropping samples. Also, the low power mode is not >>>> + * available for higher sample rates. Thus the driver only supports 200 Hz and >>>> + * slower ODRs. Slowest being 0.78 Hz >>>> + */ >>>> +static IIO_CONST_ATTR_SAMP_FREQ_AVAIL("0.78 1.563 3.125 6.25 12.5 25 50 100 200"); >>>> +static IIO_CONST_ATTR(scale_available, >>>> + "598.550415 1197.10083 2394.20166 4788.40332"); >>>> + >>>> +static struct attribute *kx022a_attributes[] = { >>>> + &iio_const_attr_sampling_frequency_available.dev_attr.attr, >>>> + &iio_const_attr_scale_available.dev_attr.attr, >>> >>> Use the read_avail() callback instead of doing these as attributes. >>> That makes the values available to consumer drivers... >> >> Am I correct that populating the read_avail() does not add sysfs entries >> for available scale/frequency? Eg, if I wish to expose the supported >> values via sysfs I still need these attributes? Implementing the >> read_avail() as well is not a problem though. > > Need to also set the relevant bit in > info_mask_shared_by_xxx_avail in the channels for the sysfs files to be created
Thanks for the help! I missed this. I'll try that :)
Yours -- Matti
-- Matti Vaittinen Linux kernel developer at ROHM Semiconductors Oulu Finland
~~ When things go utterly wrong vim users can always type :help! ~~
| |