diff options
Diffstat (limited to 'meta-agl-bsp')
16 files changed, 39 insertions, 342 deletions
diff --git a/meta-agl-bsp/ROCKO.FIXMEs b/meta-agl-bsp/ROCKO.FIXMEs new file mode 100644 index 000000000..c21e2ec3d --- /dev/null +++ b/meta-agl-bsp/ROCKO.FIXMEs @@ -0,0 +1,18 @@ +FIXME: + +- ti: + - gst and ducati: + modified: conf/include/agl_dra7xx-evm.inc + modified: meta-ti/recipes-arago/gstreamer/gstreamer1.0-plugins-bad_%.bbappend + +- i.mx: + Thus remove old bsp adaptations. + deleted: meta-boundary/recipes-kernel/linux/linux-boundary_4.1.15.bbappend + +- meta-oe: + - change is upstream + deleted: meta-openembedded-layer/recipes-devtools/lua/lua_%.bbappend + +- meta-intel: + - move libva patch to parent folder (generalize) + diff --git a/meta-agl-bsp/conf/include/agl_dra7xx-evm.inc b/meta-agl-bsp/conf/include/agl_dra7xx-evm.inc index f5e85100d..02ddb6c9d 100644 --- a/meta-agl-bsp/conf/include/agl_dra7xx-evm.inc +++ b/meta-agl-bsp/conf/include/agl_dra7xx-evm.inc @@ -24,7 +24,9 @@ PREFERRED_VERSION_libgbm = "10.0.0" ## Multimedia section ## #------------------------------------------------- -GSTREAMER_PLUGINS = " \ +# FIXME +GSTREAMER_PLUGINS = "" +DISABLED_ROCKO_GSTREAMER_PLUGINS = " \ gstreamer1.0-plugins-bad-meta \ gstreamer1.0-plugins-ducati \ gstreamer1.0-plugins-vpe \ diff --git a/meta-agl-bsp/conf/include/agl_porter-nogfx.inc b/meta-agl-bsp/conf/include/agl_porter-nogfx.inc deleted file mode 100644 index cb7b4a560..000000000 --- a/meta-agl-bsp/conf/include/agl_porter-nogfx.inc +++ /dev/null @@ -1,24 +0,0 @@ -MACHINE = "porter" - -# For Bluetooth hardware support -BT_KERNEL_MODULES = " \ - kernel-module-btusb \ - kernel-module-bnep \ - kernel-module-rfcomm \ - kernel-module-rfkill \ - " - -# Distribution-specific runtime components -IMAGE_INSTALL_append = " \ - ${@bb.utils.contains("DISTRO_FEATURES", "bluetooth", "${BT_KERNEL_MODULES}", "", d)} \ - " - -# Setting for u-boot Wayland -UBOOT_MACHINE = "porter_vin_config" - -PREFERRED_PROVIDER_virtual/libgles2 = "mesa" -PREFERRED_PROVIDER_virtual/egl = "mesa" - -# Build updatable image. Only takes effect when sota.bbclass is inherited -DISTRO_FEATURES_append = " sota" - diff --git a/meta-agl-bsp/conf/include/agl_porter.inc b/meta-agl-bsp/conf/include/agl_porter.inc deleted file mode 100644 index 06dcb8e51..000000000 --- a/meta-agl-bsp/conf/include/agl_porter.inc +++ /dev/null @@ -1,183 +0,0 @@ - -# For running GStreamer on wayland (experimental). -# -# Uncoment below if want to use multimedia acceleration on wayland -# -IMAGE_INSTALL_append_porter = " \ - gstreamer1.0-plugins-bad-waylandsink \ - " - -# Additional plugins to test multimedia acceleration (experimental) -# -# Uncoment below if want to use multimedia acceleration -# -IMAGE_INSTALL_append_porter = " \ - gstreamer1.0-plugins-base-videorate \ - gstreamer1.0-plugins-base-videotestsrc \ - gstreamer1.0-plugins-base-audiotestsrc \ - gstreamer1.0-plugins-base-alsa \ - gstreamer1.0-plugins-good-autodetect \ - gstreamer1.0-plugins-good-isomp4 \ - gstreamer1.0-plugins-good-videocrop \ - gstreamer1.0-plugins-bad-asfmux \ - gstreamer1.0-plugins-bad-fbdevsink \ - gstreamer1.0-plugins-bad-faad \ - gstreamer1.0-plugins-bad-videoparsersbad \ -" -# gstreamer1.0-plugins-good-video4linux2 (temp disabled) - -# for graphics acceleration -# -# Uncoment below if want to use multimedia acceleration -# -IMAGE_INSTALL_append_porter = " \ - libegl libegl-dev libgbm-dev \ - gles-kernel-module gles-user-module \ - libdrm-tests \ - libdrm-kms \ - " - -# for multimedia acceleration -# -# Uncoment below if want to use multimedia acceleration -# -IMAGE_INSTALL_append_porter = " \ - packagegroup-rcar-gen2-multimedia \ - packagegroup-lcb-oss-codecs \ - alsa-utils alsa-utils-config alsa-tools \ -" - -IMAGE_INSTALL_append_porter = " \ - gles-kernel-module \ - libegl \ - libgbm-dev \ - " - -# For Bluetooth hardware support -BT_KERNEL_MODULES = " \ - kernel-module-btusb \ - kernel-module-bnep \ - kernel-module-rfcomm \ - kernel-module-rfkill \ - " - -# Distribution-specific runtime components -IMAGE_INSTALL_append = " \ - ${@bb.utils.contains("DISTRO_FEATURES", "bluetooth", "${BT_KERNEL_MODULES}", "", d)} \ - " - -# TODO: When booting weston, someone try to load 'libgbm_kms.so' then -# fail to boot. It should be 'libgbm_kms.so.1'. -# Tentatively, it is to install 'libgbm-dev' pkg. -#IMAGE_INSTALL_append = "libgbm-dev" -# this is not recommended and should be done in the recipe requiring this module (gles-user-module) - -LICENSE_FLAGS_WHITELIST = "commercial" - -# Define the name of multimedia, dtv, graphic test, multimedia-test for bbmask -BB_MULTIMEDIA_KERNEL_MODULE = "fdpm-kernel-module|mmngr-kernel-module|mmngrbuf-kernel-module|s3ctl-kernel-module|uvcs-kernel-module|vspm-kernel-module" -BB_MULTIMEDIA_USER_MODULE = "fdpm-user-module|mmngr-user-module|mmngrbuf-user-module|omx-user-module|s3ctl-user-module|vspm-user-module|libmemcpy" -BB_MULTIMEDIA_TEST_MODULE = "fdpm-tp-user-module|mmngr-tp-user-module|mmngrbuf-tp-user-module|s3ctl-tp-user-module|vspm-tp-user-module" - -BB_GST_PLUGINS = "meta-renesas/meta-rcar-gen2/recipes-multimedia/gstreamer" -MULTIMEDIA_BB = "${BB_MULTIMEDIA_KERNEL_MODULE}|${BB_MULTIMEDIA_USER_MODULE}|\ - ${BB_MULTIMEDIA_TEST_MODULE}|${BB_GST_PLUGINS}" - -# Enable Multimedia standard pkg -MACHINE_FEATURES_append = " multimedia" - -# UnMask the multimedia kernel modules -#BBMASK .= "|${BB_MULTIMEDIA_KERNEL_MODULE}" - -# UnMask the multimedia user modules -#BBMASK .= "|${BB_MULTIMEDIA_USER_MODULE}" - -# Include static library in SDK -SDKIMAGE_FEATURES_append = " staticdev-pkgs" - -# Mask the DTV pkgs -#MACHINE_FEATURES_append = " dtv" -BBMASK = "dtv-module|ssp-module|scu-module" - -# Enable graphic pkgs -#BBMASK .= "|gles-kernel-module|gles-user-module" - -# Mask the multimedia-test -BBMASK .= "|${BB_MULTIMEDIA_TEST_MODULE}" - -# Mask the graphic test -BBMASK .= "|gles-test-module" - -#DISTRO_FEATURES_append = " mm-test" -#DISTRO_FEATURES_append = " gles-test" - -# Enable Gfx Pkgs -MACHINE_FEATURES_append = " sgx" -MULTI_PROVIDER_WHITELIST += "virtual/libgl virtual/egl virtual/libgles1 virtual/libgles2" - -# for Wayland/Weston - -PREFERRED_PROVIDER_virtual/libgles1 = "" -PREFERRED_PROVIDER_virtual/libgles2 = "gles-user-module" -PREFERRED_PROVIDER_virtual/egl = "libegl" -PREFERRED_PROVIDER_virtual/libgl = "" -PREFERRED_PROVIDER_virtual/mesa = "mesa" -PREFERRED_PROVIDER_libgbm = "libgbm" -PREFERRED_RPROVIDER_libgbm-dev = "libgbm" - -# Setting for u-boot Wayland -UBOOT_MACHINE = "porter_vin_config" - -# Addtional Configurations of Optional OMX modules - -# OMX Media Component H263 Decoder Library -#DISTRO_FEATURES_append = " h263dec_lib" -# OMX Media Component VC-1 Decoder Library -#DISTRO_FEATURES_append = " vc1dec_lib" -# OMX Media Component MPEG-4 Decoder Library -#DISTRO_FEATURES_append = " mpeg4dec_lib" -# VCP3 Driver Adapted for Linux MPEG-2 Decoder Library -#DISTRO_FEATURES_append = " mpeg2dec_lib" -# DivX Decoder Library for Linux -#DISTRO_FEATURES_append = " divxdec_lib" -# Encoder Library for Linux -DISTRO_FEATURES_append = " h264avcenc_lib" - -# Configurations of Optional Audio Decoders -# ARM 5.1ch aacPlus V2 Decoder for Linux -#DISTRO_FEATURES_append = " aacp2dec_lib" -# ARM MP3 Decoder for Linux -#DISTRO_FEATURES_append = " mp3dec_lib" -# ARM WMA Decoder for Linux -#DISTRO_FEATURES_append = " wmadec_lib" -# ARM 5.1ch Dolby Digital Decoder for Linux -#DISTRO_FEATURES_append = " ddddec_lib" -# ARM ALAC Decoder for Linux -#DISTRO_FEATURES_append = " alacdec_lib" -# ARM FLAC Decoder for Linux -#DISTRO_FEATURES_append = " flacdec_lib" -# ARM AAC-LC Decoder Library Sample for Linux -#DISTRO_FEATURES_append = " aaclcsdec_lib" -# ARM AAC Encoder for Linux -#DISTRO_FEATURES_append = " aacenc_lib" - -# Configurations of Optional Audio Middlewares -# ARM 5.1ch aacPlus V2 Decode Middleware for Linux -#DISTRO_FEATURES_append = " armaccp2dec_mdw" -# ARM MP3 Decode Middleware for Linux -#DISTRO_FEATURES_append = " mp3dec_mdw" -# ARM WMA Decode Middleware for Linux -#DISTRO_FEATURES_append = " wmadec_mdw" -# ARM 5.1ch Dolby Digital Decode Middleware for Linux -#DISTRO_FEATURES_append = " ddddec_mdw" -# ARM ALAC Decode Middleware for Linux -#DISTRO_FEATURES_append = " alacdec_mdw" -# ARM FLAC Decode Middleware for Linux -#DISTRO_FEATURES_append = " flacdec_mdw" -# ARM AAC Decode Middleware Sample for Linux -#DISTRO_FEATURES_append = " aacsdec_mdw" -# ARM AAC Encode Middleware for Linux -#DISTRO_FEATURES_append = " aacenc_mdw" - -# Build updatable image. Only takes effect when sota.bbclass is inherited -DISTRO_FEATURES_append = " sota" diff --git a/meta-agl-bsp/conf/include/agl_qemux86.inc b/meta-agl-bsp/conf/include/agl_qemux86.inc deleted file mode 100644 index ae284b3f7..000000000 --- a/meta-agl-bsp/conf/include/agl_qemux86.inc +++ /dev/null @@ -1,25 +0,0 @@ - -# Configurations to run on VirtualBox/VMWare -# -# To get wide screen than default, there are a selection of resolutions -# available: -# -#APPEND += "uvesafb.mode_option=1024x768-32" -APPEND += "uvesafb.mode_option=1280x1024-32" -#APPEND += "uvesafb.mode_option=1600x1200-32" -# -# To avoid corrupt boot screen by systemd message, you can use serial -# console separated from VGA console or disable all boot messages by -# kernel command line. -# -# Configuration for serial console -APPEND += "console=ttyS0,115200n8" -# -# All boot message will be off -APPEND += "quiet" - -# U-Boot support for SOTA -PREFERRED_PROVIDER_virtual/bootloader_sota = "u-boot-ota" -UBOOT_MACHINE_sota = "qemu-x86_defconfig" -OSTREE_BOOTLOADER ?= "u-boot" -OSTREE_KERNEL_ARGS ?= "ramdisk_size=16384 rw rootfstype=ext4 rootwait rootdelay=2 ostree_root=/dev/hda" diff --git a/meta-agl-bsp/meta-boundary/recipes-bsp/u-boot/u-boot-script-boundary/0001-6x_bootscript-Make-bootscript-compatible-with-WIC-an.patch b/meta-agl-bsp/meta-boundary/recipes-bsp/u-boot/u-boot-script-boundary/0001-6x_bootscript-Make-bootscript-compatible-with-WIC-an.patch deleted file mode 100644 index 9eba21a88..000000000 --- a/meta-agl-bsp/meta-boundary/recipes-bsp/u-boot/u-boot-script-boundary/0001-6x_bootscript-Make-bootscript-compatible-with-WIC-an.patch +++ /dev/null @@ -1,73 +0,0 @@ -From f1c5c08ea5606b358b30b459c74aa932796ded3c Mon Sep 17 00:00:00 2001 -From: Mihail Grigorov <michael.grigorov@konsulko.com> -Date: Wed, 10 Jan 2018 10:30:14 +0200 -Subject: [PATCH] 6x_bootscript: Make bootscript compatible with WIC and SDCARD - images - -a) Get partition 2 UUID, -in case of error, points the boot directory to /boot -otherwise / - -b) Modify DTB/hdmi to use 1920x1080 - -Signed-off-by: Mihail Grigorov <michael.grigorov@konsulko.com> ---- - .../nitrogen6x/6x_bootscript-yocto-3.14.txt | 21 +++++++++++++++++---- - 1 file changed, 17 insertions(+), 4 deletions(-) - -diff --git a/board/boundary/nitrogen6x/6x_bootscript-yocto-3.14.txt b/board/boundary/nitrogen6x/6x_bootscript-yocto-3.14.txt -index f6bf2f5289..250310e37f 100644 ---- a/board/boundary/nitrogen6x/6x_bootscript-yocto-3.14.txt -+++ b/board/boundary/nitrogen6x/6x_bootscript-yocto-3.14.txt -@@ -48,6 +48,17 @@ if itest.s "x" == "x${dtbname}" ; then - fi - fi - -+setenv cmd_hdmi 'fdt set fb_hdmi status okay;fdt set fb_hdmi mode_str 1920x1080M@60;' -+ -+setenv p2uuid 'x' -+part uuid ${dtype} ${disk}:2 p2uuid -+ -+if itest.s ${p2uuid} == 'x'; then -+ bpart=1; -+else -+ bpart=2; -+fi -+ - if itest.s x${bootpart} == x ; then - bootpart=1 - fi -@@ -58,7 +69,11 @@ fi - setenv bootargs ${bootargs} console=${console},115200 vmalloc=400M consoleblank=0 rootwait fixrtc cpu=${cpu} board=${board} - - if itest.s x == x${bootdir} ; then -- bootdir=/ -+ bootdir=/; -+fi -+ -+if itest.s ${bpart} == '1'; then -+ bootdir=/boot/; - fi - - if load ${dtype} ${disk}:${bootpart} ${a_fdt} ${bootdir}${dtbname} ; then -@@ -116,8 +131,6 @@ if itest.s "x" == "x${cmd_xxx_present}" ; then - echo "!!!!!!!!!!!!!!!!" - fi - --bpart=2 -- - if test "sata" = "${dtype}" ; then - setenv bootargs "${bootargs} root=/dev/sda${bpart}" ; - elif test "usb" = "${dtype}" ; then -@@ -167,7 +180,7 @@ if itest.s "x" != "x${show_env}" ; then - printenv - fi - --if load ${dtype} ${disk}:${bootpart} ${a_zImage} /zImage ; then -+if load ${dtype} ${disk}:${bootpart} ${a_zImage} ${bootdir}/zImage ; then - bootz ${a_zImage} - ${a_fdt} - fi - echo "Error loading kernel image" --- -2.11.0 - diff --git a/meta-agl-bsp/meta-boundary/recipes-bsp/u-boot/u-boot-script-boundary_git.bbappend b/meta-agl-bsp/meta-boundary/recipes-bsp/u-boot/u-boot-script-boundary_git.bbappend deleted file mode 100644 index ca9cb4f94..000000000 --- a/meta-agl-bsp/meta-boundary/recipes-bsp/u-boot/u-boot-script-boundary_git.bbappend +++ /dev/null @@ -1,6 +0,0 @@ -FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:" - -SRC_URI += " \ - file://0001-6x_bootscript-Make-bootscript-compatible-with-WIC-an.patch \ -" - diff --git a/meta-agl-bsp/meta-boundary/recipes-kernel/linux/linux-boundary_4.1.15.bbappend b/meta-agl-bsp/meta-boundary/recipes-kernel/linux/linux-boundary_4.1.15.bbappend deleted file mode 100644 index 88ac94b15..000000000 --- a/meta-agl-bsp/meta-boundary/recipes-kernel/linux/linux-boundary_4.1.15.bbappend +++ /dev/null @@ -1 +0,0 @@ -require recipes-kernel/linux/linux-agl.inc diff --git a/meta-agl-bsp/meta-intel/recipes-kernel/linux/files/net-devices.cfg b/meta-agl-bsp/meta-intel/recipes-kernel/linux/files/net-devices.cfg new file mode 100644 index 000000000..9d5329a8f --- /dev/null +++ b/meta-agl-bsp/meta-intel/recipes-kernel/linux/files/net-devices.cfg @@ -0,0 +1 @@ +CONFIG_IGB=y diff --git a/meta-agl-bsp/meta-intel/recipes-kernel/linux/linux-intel_4.9%.bbappend b/meta-agl-bsp/meta-intel/recipes-kernel/linux/linux-intel_4.9%.bbappend index 361abad32..7f249f207 100644 --- a/meta-agl-bsp/meta-intel/recipes-kernel/linux/linux-intel_4.9%.bbappend +++ b/meta-agl-bsp/meta-intel/recipes-kernel/linux/linux-intel_4.9%.bbappend @@ -10,6 +10,10 @@ KERNEL_CONFIG_FRAGMENTS_append = " ${WORKDIR}/usb-devices.cfg" SRC_URI_append = " file://extra-graphic-devices.cfg" KERNEL_CONFIG_FRAGMENTS_append = " ${WORKDIR}/extra-graphic-devices.cfg" +# adding internal network in kernel for network boot +SRC_URI_append = " file://net-devices.cfg" +KERNEL_CONFIG_FRAGMENTS_append = " ${WORKDIR}/net-devices.cfg" + # Ensure we have a startup.nsh file SRC_URI_append = " file://startup.nsh" diff --git a/meta-agl-bsp/meta-openembedded-layer/recipes-devtools/lua/lua_%.bbappend b/meta-agl-bsp/meta-openembedded-layer/recipes-devtools/lua/lua_%.bbappend deleted file mode 100644 index 2a590838b..000000000 --- a/meta-agl-bsp/meta-openembedded-layer/recipes-devtools/lua/lua_%.bbappend +++ /dev/null @@ -1 +0,0 @@ -BBCLASSEXTEND += "nativesdk" diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-kernel/linux/linux-renesas_%.bbappend b/meta-agl-bsp/meta-rcar-gen3/recipes-kernel/linux/linux-renesas_%.bbappend index 9bf8f8aa0..d1969205f 100644 --- a/meta-agl-bsp/meta-rcar-gen3/recipes-kernel/linux/linux-renesas_%.bbappend +++ b/meta-agl-bsp/meta-rcar-gen3/recipes-kernel/linux/linux-renesas_%.bbappend @@ -1,7 +1,6 @@ FILESEXTRAPATHS_prepend := "${THISDIR}/files:" require recipes-kernel/linux/linux-agl.inc -require recipes-kernel/linux/linux-agl-4.9.inc SRC_URI_append = " file://namespace_fix.cfg \ file://disable_ipv6.cfg \ diff --git a/meta-agl-bsp/meta-ti/recipes-arago/gstreamer/gstreamer1.0-plugins-bad_%.bbappend b/meta-agl-bsp/meta-ti/recipes-arago/gstreamer/gstreamer1.0-plugins-bad_%.bbappend index f1fd52d35..8d3e6c7a7 100644 --- a/meta-agl-bsp/meta-ti/recipes-arago/gstreamer/gstreamer1.0-plugins-bad_%.bbappend +++ b/meta-agl-bsp/meta-ti/recipes-arago/gstreamer/gstreamer1.0-plugins-bad_%.bbappend @@ -20,35 +20,10 @@ DEPENDS_append_ti33x = " \ " ############## F I X M E ##################### -# FIXME pyro -SRC_URI_append = " \ +# FIXME rocko +DISABLED_ROCKO_SRC_URI_append = " \ file://0001-gstdrmallocator-Add-DRM-allocator-support.patch \ " -DISABLED_SRC_URI_append_ti43x = " \ - file://0002-parsers-Pick-previos-bug-fixes-on-different-parsers.patch \ - file://0003-gstkmssink-Add-support-for-KMS-based-sink.patch \ - file://0004-gstwaylandsink-Add-DRM-support-on-waylandsink.patch \ - file://0002-kmssink-remove-DCE-dependencies.patch \ - file://0003-kmssink-add-YUYV-support.patch \ - file://0001-gstwaylandsink-add-input-format-I420-support.patch \ -" - -# FIXME pyro -DISABLED_SRC_URI_append_ti33x = " \ - file://0001-gstwaylandsink-Add-mouse-drag-and-drop-support.patch \ -" - -# FIXME pyro -DISABLED_SRC_URI_append_omap-a15 = " \ - file://0001-gstdrmallocator-Add-DRM-allocator-support.patch \ - file://0002-parsers-Pick-previos-bug-fixes-on-different-parsers.patch \ - file://0003-gstkmssink-Add-support-for-KMS-based-sink.patch \ - file://0004-gstwaylandsink-Add-DRM-support-on-waylandsink.patch \ - file://0002-kmssink-remove-DCE-dependencies.patch \ - file://0003-kmssink-add-YUYV-support.patch \ - file://0001-gstwaylandsink-add-input-format-I420-support.patch \ - file://0005-gstwaylandsink-Implement-callbacks-for-version-5-of-.patch \ -" ################ F I X M E #################### PACKAGE_ARCH = "${MACHINE_ARCH}" diff --git a/meta-agl-bsp/meta-ti/recipes-graphics/wayland/wayland-ivi-extension_2.%.bbappend b/meta-agl-bsp/meta-ti/recipes-graphics/wayland/wayland-ivi-extension_2.%.bbappend new file mode 100644 index 000000000..e9a57d324 --- /dev/null +++ b/meta-agl-bsp/meta-ti/recipes-graphics/wayland/wayland-ivi-extension_2.%.bbappend @@ -0,0 +1,5 @@ +FILESEXTRAPATHS_append := ":${THISDIR}/${PN}" + +SRC_URI_append = "\ + file://force-type-conversion.patch \ + " diff --git a/meta-agl-bsp/meta-intel/recipes-graphics/wayland/libva_%.bbappend b/meta-agl-bsp/recipes-graphics/wayland/libva_%.bbappend index eda8de38a..eda8de38a 100644 --- a/meta-agl-bsp/meta-intel/recipes-graphics/wayland/libva_%.bbappend +++ b/meta-agl-bsp/recipes-graphics/wayland/libva_%.bbappend diff --git a/meta-agl-bsp/recipes-kernel/linux/kernel-devsrc.bbappend b/meta-agl-bsp/recipes-kernel/linux/kernel-devsrc.bbappend new file mode 100644 index 000000000..52fe69d24 --- /dev/null +++ b/meta-agl-bsp/recipes-kernel/linux/kernel-devsrc.bbappend @@ -0,0 +1,6 @@ +# fix for kernel using hardcoded awk while our filesystem only provides gawk +do_install_append() { + # enforce all scripts to use /usr/bin/awk . This fixes the rpm dependency failure on install of kernel-devsrc + cd ${D} || true + ( for i in `grep -srI "\!/bin/awk" | cut -d":" -f1 ` ; do sed -i -e "s#\!/bin/awk#\!/usr/bin/env awk#g" $i ; done ) || true +}
\ No newline at end of file |