diff options
author | Vasyl Vavrychuk <vasyl.vavrychuk@opensynergy.com> | 2022-05-10 17:33:56 +0200 |
---|---|---|
committer | Jan-Simon Moeller <jsmoeller@linuxfoundation.org> | 2022-05-26 20:48:36 +0000 |
commit | c3d3ccd5a7af4add3697dbaeedad5164bd83335f (patch) | |
tree | df180174b3e371e303e0824074b282355239cfed /meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-scmi/0001-iio-core-Introduce-IIO_VAL_INT_64.patch | |
parent | 8dd3685ce1edaef2fda5023f6086c190a62d7edc (diff) |
virtio: Enable virtio-scmi and IIO SCMI drivers.
VIRTIO-SCMI device implements the Arm System Control and Management
Interface (SCMI) [1]. This VIRTIO device is part of "Virtual I/O Device
(VIRTIO) Version 1.2" specification [2].
The SCMI can be used for sensors, power state management, clock
management and performance management among other things.
Enable IIO-SCMI driver that works on top of VIRTIO-SCMI and supports
SCMI sensors.
[1]: https://developer.arm.com/Architectures/System%20Control%20and%20Management%20Interface
[2]: https://docs.oasis-open.org/virtio/virtio/v1.2/csd01/virtio-v1.2-csd01.html
Bug-AGL: SPEC-3865, SPEC-4365
Change-Id: Iaf2092d869d938d0b45029038d8eea36110d7e3e
Signed-off-by: Vasyl Vavrychuk <vasyl.vavrychuk@opensynergy.com>
Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27473
Tested-by: Jenkins Job builder account
ci-image-build: Jenkins Job builder account
ci-image-boot-test: Jenkins Job builder account
Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
Diffstat (limited to 'meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-scmi/0001-iio-core-Introduce-IIO_VAL_INT_64.patch')
-rw-r--r-- | meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-scmi/0001-iio-core-Introduce-IIO_VAL_INT_64.patch | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-scmi/0001-iio-core-Introduce-IIO_VAL_INT_64.patch b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-scmi/0001-iio-core-Introduce-IIO_VAL_INT_64.patch new file mode 100644 index 000000000..2a18a04d3 --- /dev/null +++ b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-scmi/0001-iio-core-Introduce-IIO_VAL_INT_64.patch @@ -0,0 +1,45 @@ +From 3698bab1b1856a8146c8f8a83c888bd9cefcdde0 Mon Sep 17 00:00:00 2001 +From: Andriy Tryshnivskyy <andriy.tryshnivskyy@opensynergy.com> +Date: Sun, 24 Oct 2021 12:16:26 +0300 +Subject: [PATCH] iio: core: Introduce IIO_VAL_INT_64. + +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@opensynergy.com> +Link: https://lore.kernel.org/r/20211024091627.28031-2-andriy.tryshnivskyy@opensynergy.com +Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> +--- + 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 3e1e86d987cc..3f21e6b49a4a 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..a7aa91f3a8dc 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 */ + #define IIO_VAL_FRACTIONAL 10 + #define IIO_VAL_FRACTIONAL_LOG2 11 + #define IIO_VAL_CHAR 12 +-- +2.17.1 + |