diff options
Diffstat (limited to 'meta-agl-bsp/virtualization-layer/recipes-kernel/linux')
14 files changed, 11 insertions, 245 deletions
diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-aarch64-standard.scc b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-aarch64-standard.scc index d675de474..2d1570e9f 100644 --- a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-aarch64-standard.scc +++ b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-aarch64-standard.scc @@ -7,7 +7,7 @@ include ktypes/standard/standard.scc nopatch include arch/arm/aarch64.scc include cfg/8250.scc include cfg/virtio.scc -include virtio.scc +include bsp/virtio/agl-virtio.scc # enable the ability to run 32 bit apps include arch/arm/32bit-compat.scc diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/arch/arm/aarch64.cfg b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/arch/arm/aarch64.cfg deleted file mode 100644 index 25381e133..000000000 --- a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/arch/arm/aarch64.cfg +++ /dev/null @@ -1,29 +0,0 @@ -# SPDX-License-Identifier: MIT -# -# ARM64 -# -CONFIG_ARM64=y -CONFIG_64BIT=y - -# -# Bus support -# -CONFIG_ARM_AMBA=y - -# -# Non-8250 serial port support -# -CONFIG_SERIAL_AMBA_PL011=y -CONFIG_SERIAL_AMBA_PL011_CONSOLE=y - -# -# RTC -# -CONFIG_RTC_HCTOSYS=y -CONFIG_RTC_HCTOSYS_DEVICE="rtc0" - -# -# on-CPU RTC drivers -# -CONFIG_RTC_CLASS=y -CONFIG_RTC_DRV_PL031=y diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/arch/arm/aarch64.scc b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/arch/arm/aarch64.scc deleted file mode 100644 index 1de6faf9b..000000000 --- a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/arch/arm/aarch64.scc +++ /dev/null @@ -1,2 +0,0 @@ -# SPDX-License-Identifier: MIT -kconf hardware aarch64.cfg 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 deleted file mode 100644 index 2a18a04d3..000000000 --- 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 +++ /dev/null @@ -1,45 +0,0 @@ -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 - diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-scmi/0002-iio-scmi-Add-reading-raw-attribute.patch b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-scmi/0002-iio-scmi-Add-reading-raw-attribute.patch deleted file mode 100644 index a11e5e2ff..000000000 --- a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-scmi/0002-iio-scmi-Add-reading-raw-attribute.patch +++ /dev/null @@ -1,101 +0,0 @@ -From a58a59fa0d626990f32e84bd35e1326cf0532c4a Mon Sep 17 00:00:00 2001 -From: Andriy Tryshnivskyy <andriy.tryshnivskyy@opensynergy.com> -Date: Sun, 24 Oct 2021 12:16:27 +0300 -Subject: [PATCH] iio/scmi: Add reading "raw" attribute. - -Add IIO_CHAN_INFO_RAW to the mask and implement corresponding -reading "raw" attribute in scmi_iio_read_raw. - -Signed-off-by: Andriy Tryshnivskyy <andriy.tryshnivskyy@opensynergy.com> -Acked-by: Jyoti Bhayana <jbhayana@google.com> -Link: https://lore.kernel.org/r/20211024091627.28031-3-andriy.tryshnivskyy@opensynergy.com -Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> ---- - drivers/iio/common/scmi_sensors/scmi_iio.c | 57 +++++++++++++++++++++- - 1 file changed, 56 insertions(+), 1 deletion(-) - -diff --git a/drivers/iio/common/scmi_sensors/scmi_iio.c b/drivers/iio/common/scmi_sensors/scmi_iio.c -index 7cf2bf282cef..d538bf3ab1ef 100644 ---- a/drivers/iio/common/scmi_sensors/scmi_iio.c -+++ b/drivers/iio/common/scmi_sensors/scmi_iio.c -@@ -279,6 +279,52 @@ static int scmi_iio_get_odr_val(struct iio_dev *iio_dev, int *val, int *val2) - return 0; - } - -+static int scmi_iio_read_channel_data(struct iio_dev *iio_dev, -+ struct iio_chan_spec const *ch, int *val, int *val2) -+{ -+ struct scmi_iio_priv *sensor = iio_priv(iio_dev); -+ u32 sensor_config; -+ struct scmi_sensor_reading readings[SCMI_IIO_NUM_OF_AXIS]; -+ int err; -+ -+ sensor_config = FIELD_PREP(SCMI_SENS_CFG_SENSOR_ENABLED_MASK, -+ SCMI_SENS_CFG_SENSOR_ENABLE); -+ err = sensor->sensor_ops->config_set( -+ sensor->ph, sensor->sensor_info->id, sensor_config); -+ if (err) { -+ dev_err(&iio_dev->dev, -+ "Error in enabling sensor %s err %d", -+ sensor->sensor_info->name, err); -+ return err; -+ } -+ -+ err = sensor->sensor_ops->reading_get_timestamped( -+ sensor->ph, sensor->sensor_info->id, -+ sensor->sensor_info->num_axis, readings); -+ if (err) { -+ dev_err(&iio_dev->dev, -+ "Error in reading raw attribute for sensor %s err %d", -+ sensor->sensor_info->name, err); -+ return err; -+ } -+ -+ sensor_config = FIELD_PREP(SCMI_SENS_CFG_SENSOR_ENABLED_MASK, -+ SCMI_SENS_CFG_SENSOR_DISABLE); -+ err = sensor->sensor_ops->config_set( -+ sensor->ph, sensor->sensor_info->id, sensor_config); -+ if (err) { -+ dev_err(&iio_dev->dev, -+ "Error in disabling sensor %s err %d", -+ sensor->sensor_info->name, err); -+ return err; -+ } -+ -+ *val = lower_32_bits(readings[ch->scan_index].value); -+ *val2 = upper_32_bits(readings[ch->scan_index].value); -+ -+ return IIO_VAL_INT_64; -+} -+ - static int scmi_iio_read_raw(struct iio_dev *iio_dev, - struct iio_chan_spec const *ch, int *val, - int *val2, long mask) -@@ -300,6 +346,14 @@ static int scmi_iio_read_raw(struct iio_dev *iio_dev, - case IIO_CHAN_INFO_SAMP_FREQ: - ret = scmi_iio_get_odr_val(iio_dev, val, val2); - return ret ? ret : IIO_VAL_INT_PLUS_MICRO; -+ case IIO_CHAN_INFO_RAW: -+ ret = iio_device_claim_direct_mode(iio_dev); -+ if (ret) -+ return ret; -+ -+ ret = scmi_iio_read_channel_data(iio_dev, ch, val, val2); -+ iio_device_release_direct_mode(iio_dev); -+ return ret; - default: - return -EINVAL; - } -@@ -381,7 +435,8 @@ static void scmi_iio_set_data_channel(struct iio_chan_spec *iio_chan, - iio_chan->type = type; - iio_chan->modified = 1; - iio_chan->channel2 = mod; -- iio_chan->info_mask_separate = BIT(IIO_CHAN_INFO_SCALE); -+ iio_chan->info_mask_separate = -+ BIT(IIO_CHAN_INFO_SCALE) | BIT(IIO_CHAN_INFO_RAW); - iio_chan->info_mask_shared_by_type = BIT(IIO_CHAN_INFO_SAMP_FREQ); - iio_chan->info_mask_shared_by_type_available = - BIT(IIO_CHAN_INFO_SAMP_FREQ); --- -2.17.1 - diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-scmi/iio-scmi.cfg b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-scmi/iio-scmi.cfg deleted file mode 100644 index 858d20657..000000000 --- a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-scmi/iio-scmi.cfg +++ /dev/null @@ -1 +0,0 @@ -CONFIG_IIO_SCMI=y diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-scmi/virtio-scmi.cfg b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-scmi/virtio-scmi.cfg deleted file mode 100644 index b698e64ad..000000000 --- a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-scmi/virtio-scmi.cfg +++ /dev/null @@ -1,25 +0,0 @@ -# Enable ARM_SCMI_PROTOCOL ("ARM System Control and Management Interface (SCMI) -# Message Protocol") config located in menu -# -# -> Device Drivers -# -> Firmware Drivers -# -> ARM System Control and Management Interface Protocol -# -# After that, in the same menu enabled: -# -# * ARM_SCMI_TRANSPORT_VIRTIO ("SCMI transport based on VirtIO") -# -# and disabled not used features: -# -# * ARM_SCMI_TRANSPORT_SMC ("SCMI transport based on SMC") -# * ARM_SCMI_POWER_DOMAIN ("SCMI power domain driver") - -CONFIG_ARM_SCMI_PROTOCOL=y -CONFIG_ARM_SCMI_HAVE_TRANSPORT=y -CONFIG_ARM_SCMI_HAVE_MSG=y -# CONFIG_ARM_SCMI_TRANSPORT_SMC is not set -CONFIG_ARM_SCMI_TRANSPORT_VIRTIO=y -# CONFIG_ARM_SCMI_POWER_DOMAIN is not set -# CONFIG_SENSORS_ARM_SCMI is not set -# CONFIG_COMMON_CLK_SCMI is not set -# CONFIG_IIO_SCMI is not set diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-scmi/virtio-scmi.scc b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-scmi/virtio-scmi.scc deleted file mode 100644 index dea7dec73..000000000 --- a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-scmi/virtio-scmi.scc +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: MIT -kconf hardware virtio-scmi.cfg -kconf hardware iio-scmi.cfg -patch 0001-iio-core-Introduce-IIO_VAL_INT_64.patch -patch 0002-iio-scmi-Add-reading-raw-attribute.patch diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-snd/virtio-snd.cfg b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-snd/virtio-snd.cfg deleted file mode 100644 index 35c5134a0..000000000 --- a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-snd/virtio-snd.cfg +++ /dev/null @@ -1,5 +0,0 @@ -CONFIG_SND_TIMER=y -CONFIG_SND_PCM=y -CONFIG_SND_JACK=y -CONFIG_SND_JACK_INPUT_DEV=y -CONFIG_SND_VIRTIO=y
\ No newline at end of file diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-snd/virtio-snd.scc b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-snd/virtio-snd.scc deleted file mode 100644 index a1fc8bb7d..000000000 --- a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio-snd/virtio-snd.scc +++ /dev/null @@ -1,2 +0,0 @@ -# SPDX-License-Identifier: MIT -kconf hardware virtio-snd.cfg diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio.cfg b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio.cfg deleted file mode 100644 index b8b36e7ad..000000000 --- a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio.cfg +++ /dev/null @@ -1,16 +0,0 @@ -# SPDX-License-Identifier: MIT - -# TODO: upstream to yocto-kernel-cache/cfg/8250.cfg -CONFIG_SERIAL_OF_PLATFORM=y - -# Remove since PCI is not enabled -# CONFIG_SERIAL_8250_PCI is not set - -# TODO: upstream to yocto-kernel-cache/cfg/virtio.cfg -CONFIG_VSOCKETS=y -CONFIG_VSOCKETS_DIAG=y -CONFIG_VIRTIO_VSOCKETS=y -CONFIG_VIRTIO_VSOCKETS_COMMON=y - -# Needed for CONFIG_DRM_VIRTIO_GPU -CONFIG_DRM=y diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio.scc b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio.scc deleted file mode 100644 index a29955dd8..000000000 --- a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto/virtio-kmeta/bsp/virtio/virtio.scc +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: MIT -kconf hardware virtio.cfg - -include virtio-snd/virtio-snd.scc -include virtio-scmi/virtio-scmi.scc diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_%.bbappend b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_%.bbappend deleted file mode 100644 index 8b5e92a20..000000000 --- a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_%.bbappend +++ /dev/null @@ -1,8 +0,0 @@ -FILESEXTRAPATHS:prepend := "${THISDIR}/linux-yocto:" - -SRC_URI:append:virtio-all = " \ - file://virtio-kmeta;type=kmeta;destsuffix=virtio-kmeta \ - file://virtio-kmeta/bsp/virtio/virtio-aarch64-${LINUX_KERNEL_TYPE}.scc \ -" - -COMPATIBLE_MACHINE:virtio-aarch64 = "virtio-aarch64" diff --git a/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_5.15.bbappend b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_5.15.bbappend new file mode 100644 index 000000000..3a278fa2a --- /dev/null +++ b/meta-agl-bsp/virtualization-layer/recipes-kernel/linux/linux-yocto_5.15.bbappend @@ -0,0 +1,10 @@ +FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:" + +SRC_URI:append:virtio-all = " \ + git://gerrit.automotivelinux.org/gerrit/src/agl-yocto-kernel-meta.git;protocol=https;type=kmeta;name=agl-meta;destsuffix=agl-kernel-meta;branch=kernel-5.15 \ + file://virtio-aarch64-${LINUX_KERNEL_TYPE}.scc \ +" + +SRCREV_agl-meta = "4deb7357eab5962b0553a5ad1f11be5ac35f9da9" + +COMPATIBLE_MACHINE:virtio-aarch64 = "virtio-aarch64" |