On Sun, 24 Oct 2021 19:58:52 +0300 Andriy Tryshnivskyy <andriy.tryshnivskyy@xxxxxxxxxxxxxxx> wrote: > On 24.10.21 19:10, Jonathan Cameron wrote: > > > CAUTION: This email originated from outside of the organization. > > Do not click links or open attachments unless you recognize the sender and know the content is safe. Ah. One thing I forgot. Value formatting is the only bit of IIO where we have self tests. Would you mind writing some test cases in drivers/iio/tests/iio-test-format.c ? I'll pick this up in the meantime but definitely want to make sure we don't forget the tests! Jonathan > > > > > > On Sun, 24 Oct 2021 12:16:26 +0300 > > Andriy Tryshnivskyy <andriy.tryshnivskyy@xxxxxxxxxxxxxxx> wrote: > > > >> Introduce IIO_VAL_INT_64 to read 64-bit value for > >> channel attribute. Val is used as lower 32 bits. > >> > >> Signed-off-by: Andriy Tryshnivskyy <andriy.tryshnivskyy@xxxxxxxxxxxxxxx> > >> --- > >> drivers/iio/industrialio-core.c | 3 +++ > >> include/linux/iio/types.h | 1 + > >> 2 files changed, 4 insertions(+) > >> > >> diff --git a/drivers/iio/industrialio-core.c b/drivers/iio/industrialio-core.c > >> index 6d2175eb7af2..49e42d04ea16 100644 > >> --- a/drivers/iio/industrialio-core.c > >> +++ b/drivers/iio/industrialio-core.c > >> @@ -702,6 +702,9 @@ static ssize_t __iio_format_value(char *buf, size_t offset, unsigned int type, > >> } > >> case IIO_VAL_CHAR: > >> return sysfs_emit_at(buf, offset, "%c", (char)vals[0]); > >> + case IIO_VAL_INT_64: > >> + tmp2 = (s64)((((u64)vals[1]) << 32) | (u32)vals[0]); > >> + return sysfs_emit_at(buf, offset, "%lld", tmp2); > >> default: > >> return 0; > >> } > >> diff --git a/include/linux/iio/types.h b/include/linux/iio/types.h > >> index 84b3f8175cc6..bb6578a5ee28 100644 > >> --- a/include/linux/iio/types.h > >> +++ b/include/linux/iio/types.h > >> @@ -24,6 +24,7 @@ enum iio_event_info { > >> #define IIO_VAL_INT_PLUS_NANO 3 > >> #define IIO_VAL_INT_PLUS_MICRO_DB 4 > >> #define IIO_VAL_INT_MULTIPLE 5 > >> +#define IIO_VAL_INT_64 6 /* 64-bit data, val is lower 32 bits) */ > > I'm guessing the closing bracket is left over of some editing? > > > > Otherwise fine and I can tidy that up whilst applying. > > Yes, it's a typo. Please remove it while applying. Thanks! > > > Note that this is almost certainly too late for this cycle (we are > > about a week away from merge window subject to whatever Linus says > > for rc7 and new stuff needs some time to soak in next), but I'll > > plan to get it queued up early in the next one. > > > Noted. Thanks a lot! > > >> #define IIO_VAL_FRACTIONAL 10 > >> #define IIO_VAL_FRACTIONAL_LOG2 11 > >> #define IIO_VAL_CHAR 12 > > Best regards, > Andriy. > >