Commit 81fa8cb9 authored by Michał Mirosław's avatar Michał Mirosław Committed by Jonathan Cameron
Browse files

iio: accel: kxcjk1013: make sysfs/sampling_frequency_avail dynamic



In preparation for KXTF9 support, make sampling_frequency_avail
attribute dynamic.

Signed-off-by: default avatarMichał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
parent d8408e98
Loading
Loading
Loading
Loading
+12 −3
Original line number Diff line number Diff line
@@ -155,6 +155,9 @@ static const struct kx_odr_map samp_freq_table[] = {
	{ 1600, 0, 0x07, 0x06 },
};

static const char *const kxcjk1013_samp_freq_avail =
	"0.781000 1.563000 3.125000 6.250000 12.500000 25 50 100 200 400 800 1600";

/* Refer to section 4 of the specification */
static const struct {
	int odr_bits;
@@ -879,13 +882,19 @@ static int kxcjk1013_buffer_postdisable(struct iio_dev *indio_dev)
	return kxcjk1013_set_power_state(data, false);
}

static IIO_CONST_ATTR_SAMP_FREQ_AVAIL(
	"0.781000 1.563000 3.125000 6.250000 12.500000 25 50 100 200 400 800 1600");
static ssize_t kxcjk1013_get_samp_freq_avail(struct device *dev,
					     struct device_attribute *attr,
					     char *buf)
{
	return sprintf(buf, "%s\n", kxcjk1013_samp_freq_avail);
}

static IIO_DEV_ATTR_SAMP_FREQ_AVAIL(kxcjk1013_get_samp_freq_avail);

static IIO_CONST_ATTR(in_accel_scale_available, "0.009582 0.019163 0.038326");

static struct attribute *kxcjk1013_attributes[] = {
	&iio_const_attr_sampling_frequency_available.dev_attr.attr,
	&iio_dev_attr_sampling_frequency_available.dev_attr.attr,
	&iio_const_attr_in_accel_scale_available.dev_attr.attr,
	NULL,
};