diff options
37 files changed, 588 insertions, 2900 deletions
diff --git a/conf/layer.conf b/conf/layer.conf index a3c8af2cc..e57c3b590 100644 --- a/conf/layer.conf +++ b/conf/layer.conf | |||
| @@ -8,7 +8,7 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \ | |||
| 8 | BBFILE_COLLECTIONS += "freescale-layer" | 8 | BBFILE_COLLECTIONS += "freescale-layer" |
| 9 | BBFILE_PATTERN_freescale-layer := "^${LAYERDIR}/" | 9 | BBFILE_PATTERN_freescale-layer := "^${LAYERDIR}/" |
| 10 | BBFILE_PRIORITY_freescale-layer = "5" | 10 | BBFILE_PRIORITY_freescale-layer = "5" |
| 11 | LAYERSERIES_COMPAT_freescale-layer = "kirkstone" | 11 | LAYERSERIES_COMPAT_freescale-layer = "kirkstone langdale" |
| 12 | 12 | ||
| 13 | # Add the Freescale-specific licenses into the metadata | 13 | # Add the Freescale-specific licenses into the metadata |
| 14 | LICENSE_PATH += "${LAYERDIR}/custom-licenses" | 14 | LICENSE_PATH += "${LAYERDIR}/custom-licenses" |
diff --git a/conf/machine/imx6qdlsabreauto.conf b/conf/machine/imx6qdlsabreauto.conf index 16a061e51..b7b445898 100644 --- a/conf/machine/imx6qdlsabreauto.conf +++ b/conf/machine/imx6qdlsabreauto.conf | |||
| @@ -34,7 +34,7 @@ KERNEL_DEVICETREE:use-mainline-bsp = " \ | |||
| 34 | 34 | ||
| 35 | ### u-boot-fslc settings ### | 35 | ### u-boot-fslc settings ### |
| 36 | SPL_BINARY:pn-u-boot-fslc = "SPL" | 36 | SPL_BINARY:pn-u-boot-fslc = "SPL" |
| 37 | UBOOT_CONFIG:pn-u-boot-fslc ??= "sd-fslc" | 37 | UBOOT_CONFIG:pn-u-boot-fslc ??= "sd" |
| 38 | UBOOT_SUFFIX:pn-u-boot-fslc = "img" | 38 | UBOOT_SUFFIX:pn-u-boot-fslc = "img" |
| 39 | 39 | ||
| 40 | ### u-boot-imx settings ### | 40 | ### u-boot-imx settings ### |
diff --git a/conf/machine/imx6qdlsabresd.conf b/conf/machine/imx6qdlsabresd.conf index 62ad478ef..7c40a8608 100644 --- a/conf/machine/imx6qdlsabresd.conf +++ b/conf/machine/imx6qdlsabresd.conf | |||
| @@ -43,7 +43,7 @@ KERNEL_DEVICETREE:use-mainline-bsp = " \ | |||
| 43 | 43 | ||
| 44 | ### u-boot-fslc settings ### | 44 | ### u-boot-fslc settings ### |
| 45 | SPL_BINARY:pn-u-boot-fslc = "SPL" | 45 | SPL_BINARY:pn-u-boot-fslc = "SPL" |
| 46 | UBOOT_CONFIG:pn-u-boot-fslc ??= "sd-fslc" | 46 | UBOOT_CONFIG:pn-u-boot-fslc ??= "sd" |
| 47 | UBOOT_SUFFIX:pn-u-boot-fslc = "img" | 47 | UBOOT_SUFFIX:pn-u-boot-fslc = "img" |
| 48 | 48 | ||
| 49 | ### u-boot-imx settings ### | 49 | ### u-boot-imx settings ### |
diff --git a/conf/machine/include/imx-base.inc b/conf/machine/include/imx-base.inc index f1257c242..a0d6be138 100644 --- a/conf/machine/include/imx-base.inc +++ b/conf/machine/include/imx-base.inc | |||
| @@ -187,15 +187,15 @@ MACHINEOVERRIDES_EXTENDER:mx7ulp:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxf | |||
| 187 | 187 | ||
| 188 | MACHINEOVERRIDES_EXTENDER:vf:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:vf-generic-bsp:vf-nxp-bsp" | 188 | MACHINEOVERRIDES_EXTENDER:vf:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:vf-generic-bsp:vf-nxp-bsp" |
| 189 | 189 | ||
| 190 | MACHINEOVERRIDES_EXTENDER:mx8qm:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d:mx8-generic-bsp:mx8-nxp-bsp:mx8qm-generic-bsp:mx8qm-nxp-bsp" | 190 | MACHINEOVERRIDES_EXTENDER:mx8qm:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d:imxvulkan:mx8-generic-bsp:mx8-nxp-bsp:mx8qm-generic-bsp:mx8qm-nxp-bsp" |
| 191 | 191 | ||
| 192 | MACHINEOVERRIDES_EXTENDER:mx8mm:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mm-generic-bsp:mx8mm-nxp-bsp" | 192 | MACHINEOVERRIDES_EXTENDER:mx8mm:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mm-generic-bsp:mx8mm-nxp-bsp" |
| 193 | MACHINEOVERRIDES_EXTENDER:mx8mn:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxgpu:imxgpu3d:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mn-generic-bsp:mx8mn-nxp-bsp" | 193 | MACHINEOVERRIDES_EXTENDER:mx8mn:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxgpu:imxgpu3d:imxvulkan:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mn-generic-bsp:mx8mn-nxp-bsp" |
| 194 | MACHINEOVERRIDES_EXTENDER:mx8mp:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mp-generic-bsp:mx8mp-nxp-bsp" | 194 | MACHINEOVERRIDES_EXTENDER:mx8mp:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d:imxvulkan:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mp-generic-bsp:mx8mp-nxp-bsp" |
| 195 | MACHINEOVERRIDES_EXTENDER:mx8mq:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxvpu:imxgpu:imxgpu3d:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mq-generic-bsp:mx8mq-nxp-bsp" | 195 | MACHINEOVERRIDES_EXTENDER:mx8mq:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxvpu:imxgpu:imxgpu3d:imxvulkan:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mq-generic-bsp:mx8mq-nxp-bsp" |
| 196 | 196 | ||
| 197 | MACHINEOVERRIDES_EXTENDER:mx8qxp:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d:mx8-generic-bsp:mx8-nxp-bsp:mx8x-generic-bsp:mx8x-nxp-bsp:mx8qxp-generic-bsp:mx8qxp-nxp-bsp" | 197 | MACHINEOVERRIDES_EXTENDER:mx8qxp:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d:imxvulkan:mx8-generic-bsp:mx8-nxp-bsp:mx8x-generic-bsp:mx8x-nxp-bsp:mx8qxp-generic-bsp:mx8qxp-nxp-bsp" |
| 198 | MACHINEOVERRIDES_EXTENDER:mx8dx:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d:mx8-generic-bsp:mx8-nxp-bsp:mx8x-generic-bsp:mx8x-nxp-bsp:mx8dx-generic-bsp:mx8dx-nxp-bsp" | 198 | MACHINEOVERRIDES_EXTENDER:mx8dx:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d:imxvulkan:mx8-generic-bsp:mx8-nxp-bsp:mx8x-generic-bsp:mx8x-nxp-bsp:mx8dx-generic-bsp:mx8dx-nxp-bsp" |
| 199 | MACHINEOVERRIDES_EXTENDER:mx8dxl:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxfbdev:mx8dxl-generic-bsp:mx8-generic-bsp:mx8-nxp-bsp:mx8x-generic-bsp:mx8x-nxp-bsp:mx8dxl-nxp-bsp" | 199 | MACHINEOVERRIDES_EXTENDER:mx8dxl:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxfbdev:mx8dxl-generic-bsp:mx8-generic-bsp:mx8-nxp-bsp:mx8x-generic-bsp:mx8x-nxp-bsp:mx8dxl-nxp-bsp" |
| 200 | 200 | ||
| 201 | ####### | 201 | ####### |
diff --git a/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc b/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc index 03e09e579..794a0bad0 100644 --- a/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc +++ b/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc | |||
| @@ -12,6 +12,8 @@ SRC_URI:append:imxgpu2d += " \ | |||
| 12 | file://0001-Add-support-for-i.MX-codecs-to-phonon.patch \ | 12 | file://0001-Add-support-for-i.MX-codecs-to-phonon.patch \ |
| 13 | file://0002-i.MX-video-renderer-Allow-v4l-device-from-environmen.patch \ | 13 | file://0002-i.MX-video-renderer-Allow-v4l-device-from-environmen.patch \ |
| 14 | file://0003-i.MX6-force-egl-visual-ID-33.patch \ | 14 | file://0003-i.MX6-force-egl-visual-ID-33.patch \ |
| 15 | file://0001-config.tests-add-DEFINES-to-compile-egl-test-with-im.patch \ | ||
| 16 | file://0002-config.tests-add-DEFINES-to-compile-egl4gles1-test-w.patch.patch \ | ||
| 15 | " | 17 | " |
| 16 | 18 | ||
| 17 | DEPENDS:append:imxgpu2d = " virtual/kernel virtual/libgles2" | 19 | DEPENDS:append:imxgpu2d = " virtual/kernel virtual/libgles2" |
diff --git a/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4/0001-config.tests-add-DEFINES-to-compile-egl-test-with-im.patch b/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4/0001-config.tests-add-DEFINES-to-compile-egl-test-with-im.patch new file mode 100644 index 000000000..7eee7cf2a --- /dev/null +++ b/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4/0001-config.tests-add-DEFINES-to-compile-egl-test-with-im.patch | |||
| @@ -0,0 +1,25 @@ | |||
| 1 | From 234580de9d63fd79a8b444358cdaeac111a17061 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Mauro Salvini <m.salvini@koansoftware.com> | ||
| 3 | Date: Thu, 29 Sep 2022 16:06:04 +0200 | ||
| 4 | Subject: [PATCH 1/2] config.tests: add DEFINES to compile egl test with | ||
| 5 | imxgpu2d (Vivante) | ||
| 6 | |||
| 7 | Signed-off-by: Mauro Salvini <m.salvini@koansoftware.com> | ||
| 8 | --- | ||
| 9 | config.tests/unix/egl/egl.pro | 1 + | ||
| 10 | 1 file changed, 1 insertion(+) | ||
| 11 | |||
| 12 | diff --git a/config.tests/unix/egl/egl.pro b/config.tests/unix/egl/egl.pro | ||
| 13 | index f04d0535..bc35b908 100644 | ||
| 14 | --- a/config.tests/unix/egl/egl.pro | ||
| 15 | +++ b/config.tests/unix/egl/egl.pro | ||
| 16 | @@ -6,5 +6,6 @@ for(p, QMAKE_LIBDIR_EGL) { | ||
| 17 | |||
| 18 | !isEmpty(QMAKE_INCDIR_EGL): INCLUDEPATH += $$QMAKE_INCDIR_EGL | ||
| 19 | !isEmpty(QMAKE_LIBS_EGL): LIBS += $$QMAKE_LIBS_EGL | ||
| 20 | +DEFINES += LINUX=1 EGL_API_FB=1 | ||
| 21 | |||
| 22 | CONFIG -= qt | ||
| 23 | -- | ||
| 24 | 2.17.1 | ||
| 25 | |||
diff --git a/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4/0002-config.tests-add-DEFINES-to-compile-egl4gles1-test-w.patch b/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4/0002-config.tests-add-DEFINES-to-compile-egl4gles1-test-w.patch new file mode 100644 index 000000000..993df85e9 --- /dev/null +++ b/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4/0002-config.tests-add-DEFINES-to-compile-egl4gles1-test-w.patch | |||
| @@ -0,0 +1,25 @@ | |||
| 1 | From adb19c68d3c92eb1a88e49e447ce827f14943486 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Mauro Salvini <m.salvini@koansoftware.com> | ||
| 3 | Date: Thu, 29 Sep 2022 16:12:11 +0200 | ||
| 4 | Subject: [PATCH 2/2] config.tests: add DEFINES to compile egl4gles1 test with | ||
| 5 | imxgpu2d (Vivante) | ||
| 6 | |||
| 7 | Signed-off-by: Mauro Salvini <m.salvini@koansoftware.com> | ||
| 8 | --- | ||
| 9 | config.tests/unix/egl4gles1/egl4gles1.pro | 1 + | ||
| 10 | 1 file changed, 1 insertion(+) | ||
| 11 | |||
| 12 | diff --git a/config.tests/unix/egl4gles1/egl4gles1.pro b/config.tests/unix/egl4gles1/egl4gles1.pro | ||
| 13 | index 667ea8e3..14cb4a76 100644 | ||
| 14 | --- a/config.tests/unix/egl4gles1/egl4gles1.pro | ||
| 15 | +++ b/config.tests/unix/egl4gles1/egl4gles1.pro | ||
| 16 | @@ -6,5 +6,6 @@ for(p, QMAKE_LIBDIR_EGL) { | ||
| 17 | |||
| 18 | !isEmpty(QMAKE_INCDIR_EGL): INCLUDEPATH += $$QMAKE_INCDIR_EGL | ||
| 19 | !isEmpty(QMAKE_LIBS_EGL): LIBS += $$QMAKE_LIBS_EGL | ||
| 20 | +DEFINES += LINUX=1 EGL_API_FB=1 | ||
| 21 | |||
| 22 | CONFIG -= qt | ||
| 23 | -- | ||
| 24 | 2.17.1 | ||
| 25 | |||
diff --git a/recipes-graphics/cairo/cairo_%.bbappend b/recipes-graphics/cairo/cairo_%.bbappend index 245adb591..c61e9a589 100644 --- a/recipes-graphics/cairo/cairo_%.bbappend +++ b/recipes-graphics/cairo/cairo_%.bbappend | |||
| @@ -3,6 +3,6 @@ PACKAGECONFIG:remove:imxgpu3d = "opengl" | |||
| 3 | 3 | ||
| 4 | # links with imx-gpu libs which are pre-built for glibc | 4 | # links with imx-gpu libs which are pre-built for glibc |
| 5 | # gcompat will address it during runtime | 5 | # gcompat will address it during runtime |
| 6 | LDFLAGS:append:imxgpu3d:libc-musl = " -Wl,--allow-shlib-undefined" | ||
| 7 | LDFLAGS:append:imxgpu:libc-musl = " -Wl,--allow-shlib-undefined" | 6 | LDFLAGS:append:imxgpu:libc-musl = " -Wl,--allow-shlib-undefined" |
| 8 | 7 | ||
| 8 | RDEPENDS:${PN}:append:imxgpu:libc-musl = " gcompat" | ||
diff --git a/recipes-graphics/gtk+/gtk+3_%.bbappend b/recipes-graphics/gtk+/gtk+3_%.bbappend index 2f108a274..6bc01807e 100644 --- a/recipes-graphics/gtk+/gtk+3_%.bbappend +++ b/recipes-graphics/gtk+/gtk+3_%.bbappend | |||
| @@ -1,5 +1 @@ | |||
| 1 | DEPENDS:append:imxgpu2d = " virtual/egl" | DEPENDS:append:imxgpu2d = " virtual/egl" | |
| 2 | |||
| 3 | PACKAGECONFIG:remove:imxgpu2d = " \ | ||
| 4 | ${@bb.utils.contains("DISTRO_FEATURES", "wayland", "x11", "", d)} \ | ||
| 5 | " | ||
diff --git a/recipes-graphics/harfbuzz/harfbuzz_%.bbappend b/recipes-graphics/harfbuzz/harfbuzz_%.bbappend new file mode 100644 index 000000000..bf8c38fc3 --- /dev/null +++ b/recipes-graphics/harfbuzz/harfbuzz_%.bbappend | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | # links with imx-gpu libs which are pre-built for glibc | ||
| 2 | # gcompat will address it during runtime | ||
| 3 | LDFLAGS:append:imxgpu:libc-musl = " -Wl,--allow-shlib-undefined" | ||
| 4 | |||
| 5 | RDEPENDS:${PN}:append:imxgpu:libc-musl = " gcompat" | ||
diff --git a/recipes-graphics/imx-g2d/imx-dpu-g2d_2.1.0.bb b/recipes-graphics/imx-g2d/imx-dpu-g2d_2.1.0.bb index ad8de74c1..e2f5912b5 100644 --- a/recipes-graphics/imx-g2d/imx-dpu-g2d_2.1.0.bb +++ b/recipes-graphics/imx-g2d/imx-dpu-g2d_2.1.0.bb | |||
| @@ -23,5 +23,8 @@ do_install () { | |||
| 23 | } | 23 | } |
| 24 | 24 | ||
| 25 | INSANE_SKIP:${PN} += "ldflags" | 25 | INSANE_SKIP:${PN} += "ldflags" |
| 26 | INSANE_SKIP:append:libc-musl = " file-rdeps" | ||
| 26 | 27 | ||
| 27 | COMPATIBLE_MACHINE = "(imxdpu)" | 28 | COMPATIBLE_MACHINE = "(imxdpu)" |
| 29 | |||
| 30 | RDEPENDS:${PN}:append:libc-musl = " gcompat" | ||
diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc index 4abab088a..4cbb7ba60 100644 --- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc +++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc | |||
| @@ -25,6 +25,8 @@ DEPENDS:append:mx8-nxp-bsp = " patchelf-native" | |||
| 25 | # We depend on mesa to fill in what is missing. | 25 | # We depend on mesa to fill in what is missing. |
| 26 | DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'mesa', '', d)}" | 26 | DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'mesa', '', d)}" |
| 27 | 27 | ||
| 28 | DEPENDS:append:libc-musl = " gcompat" | ||
| 29 | |||
| 28 | PROVIDES += " \ | 30 | PROVIDES += " \ |
| 29 | imx-gpu-viv \ | 31 | imx-gpu-viv \ |
| 30 | libgal-imx \ | 32 | libgal-imx \ |
| @@ -48,9 +50,14 @@ EXTRA_PROVIDES:append:imxgpu3d = " \ | |||
| 48 | EXTRA_PROVIDES:append:mx8-nxp-bsp = " \ | 50 | EXTRA_PROVIDES:append:mx8-nxp-bsp = " \ |
| 49 | virtual/libgbm \ | 51 | virtual/libgbm \ |
| 50 | " | 52 | " |
| 53 | |||
| 51 | PROVIDES_OPENGLES3 = "" | 54 | PROVIDES_OPENGLES3 = "" |
| 52 | PROVIDES_OPENGLES3:mx8-nxp-bsp = "virtual/libgles3" | 55 | PROVIDES_OPENGLES3:mx8-nxp-bsp = "virtual/libgles3" |
| 53 | PROVIDES_OPENGLES3:mx8mm-nxp-bsp = "" | 56 | PROVIDES_OPENGLES3:mx8mm-nxp-bsp = "" |
| 57 | |||
| 58 | # Note: OpenVX is fully supported on i.MX 8 QuadMax and 8 QuadPlus. | ||
| 59 | # However, only limited support is provided on other i.MX 8 machines | ||
| 60 | # as needed for i.MX machine learning packages. | ||
| 54 | PROVIDES_OPENVX = "" | 61 | PROVIDES_OPENVX = "" |
| 55 | PROVIDES_OPENVX:mx8-nxp-bsp = "virtual/libopenvx" | 62 | PROVIDES_OPENVX:mx8-nxp-bsp = "virtual/libopenvx" |
| 56 | PROVIDES_OPENVX:mx8mm-nxp-bsp = "" | 63 | PROVIDES_OPENVX:mx8mm-nxp-bsp = "" |
| @@ -59,9 +66,7 @@ RPROVIDES:${PN}:imxgpu3d += "imx-gpu-viv" | |||
| 59 | 66 | ||
| 60 | PE = "1" | 67 | PE = "1" |
| 61 | 68 | ||
| 62 | inherit fsl-eula-unpack features_check | 69 | inherit fsl-eula-unpack |
| 63 | |||
| 64 | REQUIRED_DISTRO_FEATURES:mx8-nxp-bsp = "wayland" | ||
| 65 | 70 | ||
| 66 | SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true" | 71 | SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true" |
| 67 | 72 | ||
| @@ -71,27 +76,39 @@ PACKAGECONFIG ?= "" | |||
| 71 | PACKAGECONFIG[valgrind] = "" | 76 | PACKAGECONFIG[valgrind] = "" |
| 72 | 77 | ||
| 73 | # Note : If you add a package here, to prevent a naming conflict see the python_anonymous() futher below | 78 | # Note : If you add a package here, to prevent a naming conflict see the python_anonymous() futher below |
| 74 | IMX_PACKAGES_GBM = "" | 79 | PACKAGES =+ " \ |
| 75 | IMX_PACKAGES_GBM:mx8-nxp-bsp = "libgbm-imx libgbm-imx-dev" | ||
| 76 | PACKAGES =+ "libclc-imx libclc-imx-dev \ | ||
| 77 | libgl-imx libgl-imx-dev \ | 80 | libgl-imx libgl-imx-dev \ |
| 78 | libgles1-imx libgles1-imx-dev \ | 81 | libgles1-imx libgles1-imx-dev \ |
| 79 | libgles2-imx libgles2-imx-dev \ | 82 | libgles2-imx libgles2-imx-dev \ |
| 80 | libgles3-imx-dev \ | 83 | libgles3-imx-dev \ |
| 81 | libglslc-imx libglslc-imx-dev \ | 84 | libglslc-imx libglslc-imx-dev \ |
| 82 | libopencl-imx libopencl-imx-dev \ | 85 | ${PACKAGES_OPENCL} \ |
| 83 | libopenvg-imx libopenvg-imx-dev \ | 86 | libopenvg-imx libopenvg-imx-dev \ |
| 84 | libvdk-imx libvdk-imx-dev \ | 87 | libvdk-imx libvdk-imx-dev \ |
| 85 | libegl-imx libegl-imx-dev \ | 88 | libegl-imx libegl-imx-dev \ |
| 86 | libgal-imx libgal-imx-dev \ | 89 | libgal-imx libgal-imx-dev \ |
| 87 | libvsc-imx \ | 90 | libvsc-imx \ |
| 88 | ${IMX_PACKAGES_GBM} \ | 91 | ${PACKAGES_GBM} \ |
| 89 | imx-gpu-viv-tools \ | 92 | imx-gpu-viv-tools \ |
| 90 | imx-gpu-viv-demos \ | 93 | imx-gpu-viv-demos \ |
| 91 | libvulkan-imx libvulkan-imx-dev \ | 94 | ${PACKAGES_VULKAN} \ |
| 92 | libopenvx-imx libopenvx-imx-dev \ | 95 | ${PACKAGES_OPENVX} \ |
| 93 | libnn-imx \ | 96 | libnn-imx \ |
| 94 | " | 97 | " |
| 98 | |||
| 99 | PACKAGES_GBM = "" | ||
| 100 | PACKAGES_GBM:mx8-nxp-bsp = "libgbm-imx libgbm-imx-dev" | ||
| 101 | |||
| 102 | PACKAGES_OPENCL = "libopencl-imx libopencl-imx-dev libclc-imx libclc-imx-dev" | ||
| 103 | PACKAGES_OPENCL:mx7-nxp-bsp = "" | ||
| 104 | |||
| 105 | PACKAGES_OPENVX = \ | ||
| 106 | "${@bb.utils.contains("PROVIDES_OPENVX", "virtual/libopenvx", \ | ||
| 107 | "libopenvx-imx libopenvx-imx-dev", "", d)}" | ||
| 108 | |||
| 109 | PACKAGES_VULKAN = "" | ||
| 110 | PACKAGES_VULKAN:imxvulkan = "libvulkan-imx libvulkan-imx-dev" | ||
| 111 | |||
| 95 | python __anonymous () { | 112 | python __anonymous () { |
| 96 | has_vivante_kernel_driver_support = (d.getVar('MACHINE_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT') or '0') | 113 | has_vivante_kernel_driver_support = (d.getVar('MACHINE_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT') or '0') |
| 97 | if has_vivante_kernel_driver_support != '1': | 114 | if has_vivante_kernel_driver_support != '1': |
| @@ -175,6 +192,7 @@ do_install () { | |||
| 175 | # Use vulkan header from vulkan-headers recipe to support vkmark | 192 | # Use vulkan header from vulkan-headers recipe to support vkmark |
| 176 | rm -rf ${D}${includedir}/vulkan/ | 193 | rm -rf ${D}${includedir}/vulkan/ |
| 177 | 194 | ||
| 195 | # Install SOC-specific drivers | ||
| 178 | if [ -d ${S}/gpu-core/usr/lib/${IMX_SOC} ]; then | 196 | if [ -d ${S}/gpu-core/usr/lib/${IMX_SOC} ]; then |
| 179 | cp -r ${S}/gpu-core/usr/lib/${IMX_SOC}/* ${D}${libdir} | 197 | cp -r ${S}/gpu-core/usr/lib/${IMX_SOC}/* ${D}${libdir} |
| 180 | fi | 198 | fi |
| @@ -184,28 +202,59 @@ do_install () { | |||
| 184 | install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/gbm.pc ${D}${libdir}/pkgconfig/gbm.pc | 202 | install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/gbm.pc ${D}${libdir}/pkgconfig/gbm.pc |
| 185 | fi | 203 | fi |
| 186 | 204 | ||
| 205 | install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv1_cm.pc ${D}${libdir}/pkgconfig/glesv1_cm.pc | ||
| 206 | install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv2.pc ${D}${libdir}/pkgconfig/glesv2.pc | ||
| 207 | install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/vg.pc ${D}${libdir}/pkgconfig/vg.pc | ||
| 208 | |||
| 209 | # Install backend-specific drivers | ||
| 187 | if [ "${BACKEND}" = "wayland" ]; then | 210 | if [ "${BACKEND}" = "wayland" ]; then |
| 211 | # Wayland backend | ||
| 188 | install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/egl_wayland.pc ${D}${libdir}/pkgconfig/egl.pc | 212 | install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/egl_wayland.pc ${D}${libdir}/pkgconfig/egl.pc |
| 189 | install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv1_cm.pc ${D}${libdir}/pkgconfig/glesv1_cm.pc | 213 | cp -r ${S}/gpu-core/usr/lib/wayland/* ${D}${libdir} |
| 190 | install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv2.pc ${D}${libdir}/pkgconfig/glesv2.pc | 214 | elif [ "${IS_MX8}" != "1" ]; then |
| 191 | install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/vg.pc ${D}${libdir}/pkgconfig/vg.pc | 215 | # Framebuffer backend for i.MX 6 and 7 |
| 192 | else | ||
| 193 | install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv1_cm.pc ${D}${libdir}/pkgconfig/glesv1_cm.pc | ||
| 194 | install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv2.pc ${D}${libdir}/pkgconfig/glesv2.pc | ||
| 195 | install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/vg.pc ${D}${libdir}/pkgconfig/vg.pc | ||
| 196 | install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/egl_linuxfb.pc ${D}${libdir}/pkgconfig/egl.pc | 216 | install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/egl_linuxfb.pc ${D}${libdir}/pkgconfig/egl.pc |
| 217 | cp -r ${S}/gpu-core/usr/lib/fb/* ${D}${libdir} | ||
| 218 | else | ||
| 219 | # Framebuffer backend for i.MX 8 and beyond | ||
| 220 | install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/egl.pc ${D}${libdir}/pkgconfig/egl.pc | ||
| 221 | cp -r ${S}/gpu-core/usr/lib/wayland/* ${D}${libdir} | ||
| 222 | set -f | ||
| 223 | for f in ${FILES:libvdk-imx} ${FILES:libvdk-imx-dev}; do | ||
| 224 | set +f | ||
| 225 | rm -rf ${D}/$f | ||
| 226 | done | ||
| 227 | rm -rf \ | ||
| 228 | ${D}/opt/viv_samples/es20 \ | ||
| 229 | ${D}/opt/viv_samples/tiger \ | ||
| 230 | ${D}/opt/viv_samples/vdk | ||
| 197 | fi | 231 | fi |
| 198 | |||
| 199 | # Install Vendor ICDs for OpenCL's installable client driver loader (ICDs Loader) | ||
| 200 | install -d ${D}${sysconfdir}/OpenCL/vendors/ | ||
| 201 | install -m 0644 ${S}/gpu-core/etc/Vivante.icd ${D}${sysconfdir}/OpenCL/vendors/Vivante.icd | ||
| 202 | |||
| 203 | # Handle backend specific drivers | ||
| 204 | cp -r ${S}/gpu-core/usr/lib/${BACKEND}/* ${D}${libdir} | ||
| 205 | if [ "${BACKEND}" = "wayland" ] && [ "${IS_MX8}" != "1" ]; then | 232 | if [ "${BACKEND}" = "wayland" ] && [ "${IS_MX8}" != "1" ]; then |
| 206 | # Special case for libVDK on Wayland backend, deliver fb library as well. | 233 | # Special case for libVDK on Wayland backend, deliver fb library as well. |
| 207 | cp ${S}/gpu-core/usr/lib/fb/libVDK.so.1.2.0 ${D}${libdir}/libVDK-fb.so.1.2.0 | 234 | cp ${S}/gpu-core/usr/lib/fb/libVDK.so.1.2.0 ${D}${libdir}/libVDK-fb.so.1.2.0 |
| 208 | fi | 235 | fi |
| 236 | |||
| 237 | if [ -z "${PACKAGES_OPENCL}" ]; then | ||
| 238 | set -f | ||
| 239 | for f in ${FILES:libopencl-imx} ${FILES:libopencl-imx-dev} ${FILES:libclc-imx} ${FILES:libclc-imx-dev}; do | ||
| 240 | set +f | ||
| 241 | rm -rf ${D}$f | ||
| 242 | done | ||
| 243 | rm -rf ${D}/opt/viv_samples/cl11 | ||
| 244 | else | ||
| 245 | # Install Vendor ICDs for OpenCL's installable client driver loader (ICDs Loader) | ||
| 246 | install -d ${D}${sysconfdir}/OpenCL/vendors/ | ||
| 247 | install -m 0644 ${S}/gpu-core/etc/Vivante.icd ${D}${sysconfdir}/OpenCL/vendors/Vivante.icd | ||
| 248 | fi | ||
| 249 | |||
| 250 | if [ -z "${PACKAGES_OPENVX}" ]; then | ||
| 251 | set -f | ||
| 252 | for f in ${FILES:libopenvx-imx} ${FILES:libopenvx-imx-dev}; do | ||
| 253 | set +f | ||
| 254 | rm -rf ${D}$f | ||
| 255 | done | ||
| 256 | fi | ||
| 257 | |||
| 209 | if [ "${IS_MX8}" = "1" ]; then | 258 | if [ "${IS_MX8}" = "1" ]; then |
| 210 | # Rename the vulkan implementation library which is wrapped by the vulkan-loader | 259 | # Rename the vulkan implementation library which is wrapped by the vulkan-loader |
| 211 | # library of the same name | 260 | # library of the same name |
| @@ -216,6 +265,13 @@ do_install () { | |||
| 216 | rm ${D}${libdir}/libvulkan.so.$MAJOR ${D}${libdir}/libvulkan.so | 265 | rm ${D}${libdir}/libvulkan.so.$MAJOR ${D}${libdir}/libvulkan.so |
| 217 | ln -s libvulkan_VSI.so.$FULL ${D}${libdir}/libvulkan_VSI.so.$MAJOR | 266 | ln -s libvulkan_VSI.so.$FULL ${D}${libdir}/libvulkan_VSI.so.$MAJOR |
| 218 | ln -s libvulkan_VSI.so.$FULL ${D}${libdir}/libvulkan_VSI.so | 267 | ln -s libvulkan_VSI.so.$FULL ${D}${libdir}/libvulkan_VSI.so |
| 268 | if [ -z "${PACKAGES_VULKAN}" ]; then | ||
| 269 | set -f | ||
| 270 | for f in ${FILES:libvulkan-imx} ${FILES:libvulkan-imx-dev}; do | ||
| 271 | set +f | ||
| 272 | rm -rf ${D}$f | ||
| 273 | done | ||
| 274 | fi | ||
| 219 | fi | 275 | fi |
| 220 | 276 | ||
| 221 | # FIXME: MX6SL does not have 3D support; hack it for now | 277 | # FIXME: MX6SL does not have 3D support; hack it for now |
| @@ -244,6 +300,24 @@ do_install () { | |||
| 244 | chown -R root:root "${D}" | 300 | chown -R root:root "${D}" |
| 245 | } | 301 | } |
| 246 | 302 | ||
| 303 | do_install:append:libc-musl() { | ||
| 304 | # libs | ||
| 305 | for f in `find ${D}${libdir} -name '*.so*' -type f` | ||
| 306 | do | ||
| 307 | patchelf --add-needed libgcompat.so.0 $f | ||
| 308 | done | ||
| 309 | # binaries | ||
| 310 | for f in `find ${D}/opt ${D}${bindir} -name '*' -type f -executable` | ||
| 311 | do | ||
| 312 | # prune scripts | ||
| 313 | if `patchelf --print-interpreter $f 2>&1 > /dev/null` | ||
| 314 | then | ||
| 315 | patchelf --set-interpreter ${root_prefix}`patchelf --print-interpreter $f` $f | ||
| 316 | patchelf --add-needed libgcompat.so.0 $f | ||
| 317 | fi | ||
| 318 | done | ||
| 319 | } | ||
| 320 | |||
| 247 | ALLOW_EMPTY:${PN} = "1" | 321 | ALLOW_EMPTY:${PN} = "1" |
| 248 | 322 | ||
| 249 | FILES:libclc-imx = "${libdir}/libCLC${SOLIBS} ${includedir}/CL/cl_viv_vx_ext.h" | 323 | FILES:libclc-imx = "${libdir}/libCLC${SOLIBS} ${includedir}/CL/cl_viv_vx_ext.h" |
| @@ -263,9 +337,9 @@ INSANE_SKIP:libgal-imx += "build-deps" | |||
| 263 | 337 | ||
| 264 | FILES:libvsc-imx = "${libdir}/libVSC${SOLIBS}" | 338 | FILES:libvsc-imx = "${libdir}/libVSC${SOLIBS}" |
| 265 | 339 | ||
| 266 | FILES:libgbm-imx:mx8-nxp-bsp = "${libdir}/libgbm*${REALSOLIBS} ${libdir}/libgbm${SOLIBSDEV} ${libdir}/libgbm_viv${SOLIBSDEV}" | 340 | FILES:libgbm-imx = "${libdir}/libgbm*${REALSOLIBS} ${libdir}/libgbm${SOLIBSDEV} ${libdir}/libgbm_viv${SOLIBSDEV}" |
| 267 | FILES:libgbm-imx-dev:mx8-nxp-bsp = "${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h" | 341 | FILES:libgbm-imx-dev = "${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h" |
| 268 | RDEPENDS:libgbm-imx:append:mx8-nxp-bsp = " libdrm" | 342 | RDEPENDS:libgbm-imx:append = " libdrm" |
| 269 | INSANE_SKIP:libgbm-imx += "dev-so" | 343 | INSANE_SKIP:libgbm-imx += "dev-so" |
| 270 | 344 | ||
| 271 | FILES:libvulkan-imx = "${libdir}/libvulkan_VSI${REALSOLIBS} ${libdir}/libSPIRV_viv${SOLIBS}" | 345 | FILES:libvulkan-imx = "${libdir}/libvulkan_VSI${REALSOLIBS} ${libdir}/libSPIRV_viv${SOLIBS}" |
diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p4.2-aarch64.bb b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p4.2-aarch64.bb index bd584dbea..4136631b0 100644 --- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p4.2-aarch64.bb +++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p4.2-aarch64.bb | |||
| @@ -1,9 +1,10 @@ | |||
| 1 | require imx-gpu-viv-6.inc | 1 | require imx-gpu-viv-6.inc |
| 2 | 2 | ||
| 3 | DEPENDS:append:libc-musl = " gcompat" | ||
| 4 | INSANE_SKIP:append:libc-musl = " file-rdeps" | ||
| 5 | |||
| 6 | SRC_URI[md5sum] = "22de8a5f59a56a7ef499f590d1659b6f" | 3 | SRC_URI[md5sum] = "22de8a5f59a56a7ef499f590d1659b6f" |
| 7 | SRC_URI[sha256sum] = "52921c0b59529f1598084e991eda1863100754f28a7744ba958158dff8074b3b" | 4 | SRC_URI[sha256sum] = "52921c0b59529f1598084e991eda1863100754f28a7744ba958158dff8074b3b" |
| 8 | 5 | ||
| 6 | INSANE_SKIP:append:libc-musl = " file-rdeps" | ||
| 7 | |||
| 9 | COMPATIBLE_MACHINE = "(mx8-nxp-bsp)" | 8 | COMPATIBLE_MACHINE = "(mx8-nxp-bsp)" |
| 9 | |||
| 10 | RDEPENDS:${PN}:append:libc-musl = " gcompat" | ||
diff --git a/recipes-graphics/pango/pango_%.bbappend b/recipes-graphics/pango/pango_%.bbappend new file mode 100644 index 000000000..bf8c38fc3 --- /dev/null +++ b/recipes-graphics/pango/pango_%.bbappend | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | # links with imx-gpu libs which are pre-built for glibc | ||
| 2 | # gcompat will address it during runtime | ||
| 3 | LDFLAGS:append:imxgpu:libc-musl = " -Wl,--allow-shlib-undefined" | ||
| 4 | |||
| 5 | RDEPENDS:${PN}:append:imxgpu:libc-musl = " gcompat" | ||
diff --git a/recipes-graphics/vulkan/vulkan-loader_%.bbappend b/recipes-graphics/vulkan/vulkan-loader_%.bbappend index 90776168a..722896ff7 100644 --- a/recipes-graphics/vulkan/vulkan-loader_%.bbappend +++ b/recipes-graphics/vulkan/vulkan-loader_%.bbappend | |||
| @@ -1,3 +1,3 @@ | |||
| 1 | # The i.MX implementation is dynamically loaded, so it requires an | 1 | # The i.MX implementation is dynamically loaded, so it requires an |
| 2 | # explicit runtime dependency. | 2 | # explicit runtime dependency. |
| 3 | RRECOMMENDS:${PN}:append:imxgpu = " libvulkan-imx" | 3 | RRECOMMENDS:${PN}:append:imxvulkan = " libvulkan-imx" |
diff --git a/recipes-graphics/wayland/weston/0001-g2d-renderer.c-Include-sys-stat.h.patch b/recipes-graphics/wayland/weston/0001-g2d-renderer.c-Include-sys-stat.h.patch new file mode 100644 index 000000000..b9cb31fbc --- /dev/null +++ b/recipes-graphics/wayland/weston/0001-g2d-renderer.c-Include-sys-stat.h.patch | |||
| @@ -0,0 +1,34 @@ | |||
| 1 | From 4afe9b2f9ef24ce0c9bf1cd41f94ca45afa4f445 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Mon, 12 Sep 2022 20:58:14 -0700 | ||
| 4 | Subject: [PATCH] g2d-renderer.c: Include sys/stat.h | ||
| 5 | |||
| 6 | This is needed for getting stat() prototype, its flagged with clang-15 | ||
| 7 | as error. | ||
| 8 | |||
| 9 | | ../git/libweston/renderer-g2d/g2d-renderer.c:2057:6: error: call to undeclared function 'stat'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] | ||
| 10 | | if (stat(gr->drm_device, &dev_stat) != 0) { | ||
| 11 | | ^ | ||
| 12 | | 1 error generated. | ||
| 13 | |||
| 14 | Upstream-Status: Pending | ||
| 15 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 16 | --- | ||
| 17 | libweston/renderer-g2d/g2d-renderer.c | 1 + | ||
| 18 | 1 file changed, 1 insertion(+) | ||
| 19 | |||
| 20 | diff --git a/libweston/renderer-g2d/g2d-renderer.c b/libweston/renderer-g2d/g2d-renderer.c | ||
| 21 | index f59fc4ee..36a458fc 100644 | ||
| 22 | --- a/libweston/renderer-g2d/g2d-renderer.c | ||
| 23 | +++ b/libweston/renderer-g2d/g2d-renderer.c | ||
| 24 | @@ -41,6 +41,7 @@ | ||
| 25 | #include <drm_fourcc.h> | ||
| 26 | #include <poll.h> | ||
| 27 | #include <errno.h> | ||
| 28 | +#include <sys/stat.h> /* stat() */ | ||
| 29 | |||
| 30 | #include <libweston/libweston.h> | ||
| 31 | #include "g2d-renderer.h" | ||
| 32 | -- | ||
| 33 | 2.37.3 | ||
| 34 | |||
diff --git a/recipes-graphics/wayland/weston_10.0.0.imx.bb b/recipes-graphics/wayland/weston_10.0.0.imx.bb index 8fce4472a..cc60b4d7d 100644 --- a/recipes-graphics/wayland/weston_10.0.0.imx.bb +++ b/recipes-graphics/wayland/weston_10.0.0.imx.bb | |||
| @@ -34,6 +34,7 @@ require ${THISDIR}/required-distro-features.inc | |||
| 34 | 34 | ||
| 35 | DEPENDS = "libxkbcommon gdk-pixbuf pixman cairo glib-2.0" | 35 | DEPENDS = "libxkbcommon gdk-pixbuf pixman cairo glib-2.0" |
| 36 | DEPENDS += "wayland wayland-protocols libinput virtual/egl pango wayland-native" | 36 | DEPENDS += "wayland wayland-protocols libinput virtual/egl pango wayland-native" |
| 37 | DEPENDS:append:imxfbdev = " libdrm" | ||
| 37 | 38 | ||
| 38 | LDFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'lto', '-Wl,-z,undefs', '', d)}" | 39 | LDFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'lto', '-Wl,-z,undefs', '', d)}" |
| 39 | 40 | ||
| @@ -160,7 +161,9 @@ DEFAULT_PREFERENCE = "-1" | |||
| 160 | 161 | ||
| 161 | SRC_URI:remove = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz" | 162 | SRC_URI:remove = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz" |
| 162 | SRC_URI:prepend = "git://source.codeaurora.org/external/imx/weston-imx.git;protocol=https;branch=${SRCBRANCH} " | 163 | SRC_URI:prepend = "git://source.codeaurora.org/external/imx/weston-imx.git;protocol=https;branch=${SRCBRANCH} " |
| 163 | SRC_URI += "file://0001-Revert-protocol-no-found-wayland-scanner-with-Yocto-.patch" | 164 | SRC_URI += "file://0001-Revert-protocol-no-found-wayland-scanner-with-Yocto-.patch \ |
| 165 | file://0001-g2d-renderer.c-Include-sys-stat.h.patch \ | ||
| 166 | " | ||
| 164 | SRCBRANCH = "weston-imx-10.0" | 167 | SRCBRANCH = "weston-imx-10.0" |
| 165 | SRCREV = "c8c6e3106b03441db1037afa995f95fcb2f9f17d" | 168 | SRCREV = "c8c6e3106b03441db1037afa995f95fcb2f9f17d" |
| 166 | 169 | ||
| @@ -175,9 +178,7 @@ PACKAGECONFIG_OPENGL:imxgpu2d = "" | |||
| 175 | PACKAGECONFIG_OPENGL:imxgpu3d = "opengl" | 178 | PACKAGECONFIG_OPENGL:imxgpu3d = "opengl" |
| 176 | 179 | ||
| 177 | PACKAGECONFIG:remove = "wayland x11" | 180 | PACKAGECONFIG:remove = "wayland x11" |
| 178 | PACKAGECONFIG:append = " \ | 181 | PACKAGECONFIG:append = " ${@bb.utils.filter('DISTRO_FEATURES', '${PACKAGECONFIG_OPENGL}', d)}" |
| 179 | rdp \ | ||
| 180 | ${@bb.utils.filter('DISTRO_FEATURES', '${PACKAGECONFIG_OPENGL}', d)}" | ||
| 181 | 182 | ||
| 182 | PACKAGECONFIG:remove:imxfbdev = "kms" | 183 | PACKAGECONFIG:remove:imxfbdev = "kms" |
| 183 | PACKAGECONFIG:append:imxfbdev = " fbdev clients" | 184 | PACKAGECONFIG:append:imxfbdev = " fbdev clients" |
| @@ -200,6 +201,10 @@ EXTRA_OEMESON:append:imxfbdev = " -Dbackend-default=fbdev" | |||
| 200 | 201 | ||
| 201 | EXTRA_OEMESON += "-Ddeprecated-wl-shell=true" | 202 | EXTRA_OEMESON += "-Ddeprecated-wl-shell=true" |
| 202 | 203 | ||
| 204 | # links with imx-gpu libs which are pre-built for glibc | ||
| 205 | # gcompat will address it during runtime | ||
| 206 | LDFLAGS:append:imxgpu:libc-musl = " -Wl,--allow-shlib-undefined" | ||
| 207 | |||
| 203 | PACKAGE_ARCH = "${MACHINE_SOCARCH}" | 208 | PACKAGE_ARCH = "${MACHINE_SOCARCH}" |
| 204 | COMPATIBLE_MACHINE = "(imxfbdev|imxgpu)" | 209 | COMPATIBLE_MACHINE = "(imxfbdev|imxgpu)" |
| 205 | 210 | ||
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0001-MGS-5186-Per-Specification-EGL_NATIVE_PIXMAP_KHR-req.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0001-MGS-5186-Per-Specification-EGL_NATIVE_PIXMAP_KHR-req.patch deleted file mode 100644 index 6f232589b..000000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg/0001-MGS-5186-Per-Specification-EGL_NATIVE_PIXMAP_KHR-req.patch +++ /dev/null | |||
| @@ -1,30 +0,0 @@ | |||
| 1 | From ed3c55fa6260ad125a32f9ac67f9e44a9bce7cf1 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Prabhu Sundararaj <prabhu.sundararaj@nxp.com> | ||
| 3 | Date: Mon, 11 May 2020 19:12:51 -0500 | ||
| 4 | Subject: [PATCH] MGS-5186 Per Specification EGL_NATIVE_PIXMAP_KHR requires | ||
| 5 | EGL_NO_CONTEXT | ||
| 6 | |||
| 7 | https://www.khronos.org/registry/EGL/extensions/KHR/EGL_KHR_image_pixmap.txt | ||
| 8 | |||
| 9 | Per Specification EGL_NATIVE_PIXMAP_KHR requires EGL_NO_CONTEXT. | ||
| 10 | So passing context will result in error. | ||
| 11 | |||
| 12 | Upstream-Status: Pending | ||
| 13 | Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@nxp.com> | ||
| 14 | --- | ||
| 15 | hw/xwayland/xwayland-glamor-gbm.c | 2 +- | ||
| 16 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 17 | |||
| 18 | Index: xorg-server-1.20.8/hw/xwayland/xwayland-glamor-gbm.c | ||
| 19 | =================================================================== | ||
| 20 | --- xorg-server-1.20.8.orig/hw/xwayland/xwayland-glamor-gbm.c | ||
| 21 | +++ xorg-server-1.20.8/hw/xwayland/xwayland-glamor-gbm.c | ||
| 22 | @@ -167,7 +167,7 @@ xwl_glamor_gbm_create_pixmap_for_bo(Scre | ||
| 23 | xwl_pixmap->bo = bo; | ||
| 24 | xwl_pixmap->buffer = NULL; | ||
| 25 | xwl_pixmap->image = eglCreateImageKHR(xwl_screen->egl_display, | ||
| 26 | - xwl_screen->egl_context, | ||
| 27 | + EGL_NO_CONTEXT, | ||
| 28 | EGL_NATIVE_PIXMAP_KHR, | ||
| 29 | xwl_pixmap->bo, NULL); | ||
| 30 | if (xwl_pixmap->image == EGL_NO_IMAGE_KHR) | ||
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0001-glamor-glamor_egl.c-EGL_NATIVE_PIXMAP_KHR-do-not-req.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0001-glamor-glamor_egl.c-EGL_NATIVE_PIXMAP_KHR-do-not-req.patch deleted file mode 100644 index c8f1ae735..000000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg/0001-glamor-glamor_egl.c-EGL_NATIVE_PIXMAP_KHR-do-not-req.patch +++ /dev/null | |||
| @@ -1,34 +0,0 @@ | |||
| 1 | From cc05c01925755310f027c61daa29648a10155f96 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Rohan Garg <rohan@garg.io> | ||
| 3 | Date: Thu, 13 Dec 2018 19:15:01 +0100 | ||
| 4 | Subject: [PATCH] glamor/glamor_egl.c: EGL_NATIVE_PIXMAP_KHR do not require | ||
| 5 | contexts | ||
| 6 | |||
| 7 | From https://www.khronos.org/registry/EGL/extensions/KHR/EGL_KHR_image_pixmap.txt | ||
| 8 | |||
| 9 | * If <target> is EGL_NATIVE_PIXMAP_KHR, and <ctx> is not EGL_NO_CONTEXT, | ||
| 10 | the error EGL_BAD_PARAMETER is generated. | ||
| 11 | |||
| 12 | Fixes: a5321ea4 ("Allow to create textured pixmaps from gbm_bo without using gem names") | ||
| 13 | --- | ||
| 14 | glamor/glamor_egl.c | 2 +- | ||
| 15 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 16 | |||
| 17 | Upstream-Status: Backport [cc05c01925755310f027c61daa29648a10155f96] | ||
| 18 | |||
| 19 | diff --git a/glamor/glamor_egl.c b/glamor/glamor_egl.c | ||
| 20 | index 0f4edb5a3..69844d4e2 100644 | ||
| 21 | --- a/glamor/glamor_egl.c | ||
| 22 | +++ b/glamor/glamor_egl.c | ||
| 23 | @@ -233,7 +233,7 @@ glamor_egl_create_textured_pixmap_from_gbm_bo(PixmapPtr pixmap, | ||
| 24 | glamor_make_current(glamor_priv); | ||
| 25 | |||
| 26 | image = eglCreateImageKHR(glamor_egl->display, | ||
| 27 | - glamor_egl->context, | ||
| 28 | + EGL_NO_CONTEXT, | ||
| 29 | EGL_NATIVE_PIXMAP_KHR, bo, NULL); | ||
| 30 | if (image == EGL_NO_IMAGE_KHR) { | ||
| 31 | glamor_set_pixmap_type(pixmap, GLAMOR_DRM_ONLY); | ||
| 32 | -- | ||
| 33 | 2.17.1 | ||
| 34 | |||
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0001-hw-xwayland-Makefile.am-fix-build-without-glx.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0001-hw-xwayland-Makefile.am-fix-build-without-glx.patch deleted file mode 100644 index 48f271aec..000000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg/0001-hw-xwayland-Makefile.am-fix-build-without-glx.patch +++ /dev/null | |||
| @@ -1,44 +0,0 @@ | |||
| 1 | From 836f93de99b35050d78d61d3654f7c5655184144 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Fabrice Fontaine <fontaine.fabrice@gmail.com> | ||
| 3 | Date: Fri, 19 Apr 2019 10:19:50 +0200 | ||
| 4 | Subject: [PATCH] hw/xwayland/Makefile.am: fix build without glx | ||
| 5 | |||
| 6 | Commit d8ec33fe0542141aed1d9016d2ecaf52da944b4b added libglxvnd.la to | ||
| 7 | Xwayland_LDFLAGS but GLX can be disabled through --disable-glx. | ||
| 8 | In this case, build fails on: | ||
| 9 | |||
| 10 | make[3]: *** No rule to make target '../../glx/libglxvnd.la', needed by 'Xwayland'. Stop. | ||
| 11 | make[3]: *** Waiting for unfinished jobs.... | ||
| 12 | |||
| 13 | Fixes: | ||
| 14 | - http://autobuild.buildroot.org/results/397f8098c57fc6c88aa12dc8d35ebb1b933d52ef | ||
| 15 | |||
| 16 | Upstream-Status: Backport [836f93de99b35050d78d61d3654f7c5655184144] | ||
| 17 | Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> | ||
| 18 | --- | ||
| 19 | hw/xwayland/Makefile.am | 6 +++++- | ||
| 20 | 1 file changed, 5 insertions(+), 1 deletion(-) | ||
| 21 | |||
| 22 | diff --git a/hw/xwayland/Makefile.am b/hw/xwayland/Makefile.am | ||
| 23 | index bc1cb8506..502879e2a 100644 | ||
| 24 | --- a/hw/xwayland/Makefile.am | ||
| 25 | +++ b/hw/xwayland/Makefile.am | ||
| 26 | @@ -21,10 +21,14 @@ Xwayland_SOURCES = \ | ||
| 27 | $(top_srcdir)/Xi/stubs.c \ | ||
| 28 | $(top_srcdir)/mi/miinitext.c | ||
| 29 | |||
| 30 | +if GLX | ||
| 31 | +GLXVND_LIB = $(top_builddir)/glx/libglxvnd.la | ||
| 32 | +endif | ||
| 33 | + | ||
| 34 | Xwayland_LDADD = \ | ||
| 35 | $(glamor_lib) \ | ||
| 36 | $(XWAYLAND_LIBS) \ | ||
| 37 | - $(top_builddir)/glx/libglxvnd.la \ | ||
| 38 | + $(GLXVND_LIB) \ | ||
| 39 | $(XWAYLAND_SYS_LIBS) \ | ||
| 40 | $(top_builddir)/Xext/libXvidmode.la \ | ||
| 41 | $(XSERVER_SYS_LIBS) | ||
| 42 | -- | ||
| 43 | 2.17.1 | ||
| 44 | |||
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0001-prefer-to-use-GLES2-for-glamor-EGL-config.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0001-prefer-to-use-GLES2-for-glamor-EGL-config.patch deleted file mode 100644 index 6e140eaad..000000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg/0001-prefer-to-use-GLES2-for-glamor-EGL-config.patch +++ /dev/null | |||
| @@ -1,49 +0,0 @@ | |||
| 1 | From a99ff39b3b6095a16977fbb13b2b453a7359850f Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Xianzhong <xianzhong.li@nxp.com> | ||
| 3 | Date: Mon, 11 Jan 2021 11:53:29 +0800 | ||
| 4 | Subject: [PATCH] prefer to use GLES2 for glamor EGL config | ||
| 5 | |||
| 6 | created the initial patch for xorg/xserver 1.20.8 | ||
| 7 | |||
| 8 | Upstream-Status: Pending | ||
| 9 | Signed-off-by: Xianzhong <xianzhong.li@nxp.com> | ||
| 10 | --- | ||
| 11 | hw/xwayland/xwayland-glamor-gbm.c | 13 ++++--------- | ||
| 12 | 1 file changed, 4 insertions(+), 9 deletions(-) | ||
| 13 | |||
| 14 | diff --git a/hw/xwayland/xwayland-glamor-gbm.c b/hw/xwayland/xwayland-glamor-gbm.c | ||
| 15 | index dce782fc3..1fdf45490 100644 | ||
| 16 | --- a/hw/xwayland/xwayland-glamor-gbm.c | ||
| 17 | +++ b/hw/xwayland/xwayland-glamor-gbm.c | ||
| 18 | @@ -912,13 +912,8 @@ xwl_glamor_gbm_init_egl(struct xwl_screen *xwl_screen) | ||
| 19 | struct xwl_gbm_private *xwl_gbm = xwl_gbm_get(xwl_screen); | ||
| 20 | EGLint major, minor; | ||
| 21 | Bool egl_initialized = FALSE; | ||
| 22 | - static const EGLint config_attribs_core[] = { | ||
| 23 | - EGL_CONTEXT_OPENGL_PROFILE_MASK_KHR, | ||
| 24 | - EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT_KHR, | ||
| 25 | - EGL_CONTEXT_MAJOR_VERSION_KHR, | ||
| 26 | - GLAMOR_GL_CORE_VER_MAJOR, | ||
| 27 | - EGL_CONTEXT_MINOR_VERSION_KHR, | ||
| 28 | - GLAMOR_GL_CORE_VER_MINOR, | ||
| 29 | + static const EGLint config_attribs_gles2[] = { | ||
| 30 | + EGL_CONTEXT_CLIENT_VERSION, 2, | ||
| 31 | EGL_NONE | ||
| 32 | }; | ||
| 33 | const GLubyte *renderer; | ||
| 34 | @@ -947,10 +942,10 @@ xwl_glamor_gbm_init_egl(struct xwl_screen *xwl_screen) | ||
| 35 | goto error; | ||
| 36 | } | ||
| 37 | |||
| 38 | - eglBindAPI(EGL_OPENGL_API); | ||
| 39 | + eglBindAPI(EGL_OPENGL_ES_API); | ||
| 40 | |||
| 41 | xwl_screen->egl_context = eglCreateContext( | ||
| 42 | - xwl_screen->egl_display, NULL, EGL_NO_CONTEXT, config_attribs_core); | ||
| 43 | + xwl_screen->egl_display, NULL, EGL_NO_CONTEXT, config_attribs_gles2); | ||
| 44 | if (xwl_screen->egl_context == EGL_NO_CONTEXT) { | ||
| 45 | xwl_screen->egl_context = eglCreateContext( | ||
| 46 | xwl_screen->egl_display, NULL, EGL_NO_CONTEXT, NULL); | ||
| 47 | -- | ||
| 48 | 2.17.1 | ||
| 49 | |||
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0001-xfree86-define-FOURCC_NV12-and-XVIMAGE_NV12.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0001-xfree86-define-FOURCC_NV12-and-XVIMAGE_NV12.patch deleted file mode 100644 index e09585585..000000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg/0001-xfree86-define-FOURCC_NV12-and-XVIMAGE_NV12.patch +++ /dev/null | |||
| @@ -1,47 +0,0 @@ | |||
| 1 | From 3a6fe85a5f123f53319b5be8a69666174cad09cf Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Julien Isorce <julien.isorce@gmail.com> | ||
| 3 | Date: Thu, 6 Sep 2018 15:38:13 -0700 | ||
| 4 | Subject: [PATCH 1/8] xfree86: define FOURCC_NV12 and XVIMAGE_NV12 | ||
| 5 | |||
| 6 | Useful for glamor. | ||
| 7 | |||
| 8 | Upstream-Status: Backport | ||
| 9 | Signed-off-by: Julien Isorce <jisorce@oblong.com> | ||
| 10 | Tested-by: Olivier Fourdan <ofourdan@redhat.com> | ||
| 11 | Reviewed-by: Alex Deucher <alexander.deucher@amd.com> | ||
| 12 | --- | ||
| 13 | hw/xfree86/common/fourcc.h | 20 ++++++++++++++++++++ | ||
| 14 | 1 file changed, 20 insertions(+) | ||
| 15 | |||
| 16 | diff --git a/hw/xfree86/common/fourcc.h b/hw/xfree86/common/fourcc.h | ||
| 17 | index e6126b7fe..a19e6869e 100644 | ||
| 18 | --- a/hw/xfree86/common/fourcc.h | ||
| 19 | +++ b/hw/xfree86/common/fourcc.h | ||
| 20 | @@ -156,4 +156,24 @@ | ||
| 21 | XvTopToBottom \ | ||
| 22 | } | ||
| 23 | |||
| 24 | +#define FOURCC_NV12 0x3231564e | ||
| 25 | +#define XVIMAGE_NV12 \ | ||
| 26 | + { \ | ||
| 27 | + FOURCC_NV12, \ | ||
| 28 | + XvYUV, \ | ||
| 29 | + LSBFirst, \ | ||
| 30 | + {'N','V','1','2', \ | ||
| 31 | + 0x00,0x00,0x00,0x10,0x80,0x00,0x00,0xAA,0x00,0x38,0x9B,0x71}, \ | ||
| 32 | + 12, \ | ||
| 33 | + XvPlanar, \ | ||
| 34 | + 2, \ | ||
| 35 | + 0, 0, 0, 0, \ | ||
| 36 | + 8, 8, 8, \ | ||
| 37 | + 1, 2, 2, \ | ||
| 38 | + 1, 2, 2, \ | ||
| 39 | + {'Y','U','V', \ | ||
| 40 | + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, \ | ||
| 41 | + XvTopToBottom \ | ||
| 42 | + } | ||
| 43 | + | ||
| 44 | #endif /* _XF86_FOURCC_H_ */ | ||
| 45 | -- | ||
| 46 | 2.17.1 | ||
| 47 | |||
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0002-glamor-add-support-for-GL_RG.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0002-glamor-add-support-for-GL_RG.patch deleted file mode 100644 index 78988373b..000000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg/0002-glamor-add-support-for-GL_RG.patch +++ /dev/null | |||
| @@ -1,116 +0,0 @@ | |||
| 1 | From 7f46b31e3d80ca769f68a4ffb201d0fc4801ea93 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Julien Isorce <julien.isorce@gmail.com> | ||
| 3 | Date: Thu, 6 Sep 2018 15:38:14 -0700 | ||
| 4 | Subject: [PATCH 2/8] glamor: add support for GL_RG | ||
| 5 | |||
| 6 | Allow to upload the CbCr plane of an NV12 image into a GL texture. | ||
| 7 | |||
| 8 | Upstream-Status: Backport | ||
| 9 | Signed-off-by: Julien Isorce <jisorce@oblong.com> | ||
| 10 | Tested-by: Olivier Fourdan <ofourdan@redhat.com> | ||
| 11 | Reviewed-by: Alex Deucher <alexander.deucher@amd.com> | ||
| 12 | --- | ||
| 13 | glamor/glamor.c | 2 ++ | ||
| 14 | glamor/glamor.h | 1 + | ||
| 15 | glamor/glamor_priv.h | 4 +++- | ||
| 16 | glamor/glamor_transfer.c | 10 ++++++++-- | ||
| 17 | glamor/glamor_utils.h | 4 ++++ | ||
| 18 | 5 files changed, 18 insertions(+), 3 deletions(-) | ||
| 19 | |||
| 20 | diff --git a/glamor/glamor.c b/glamor/glamor.c | ||
| 21 | index abefef614..3e9cf284c 100644 | ||
| 22 | --- a/glamor/glamor.c | ||
| 23 | +++ b/glamor/glamor.c | ||
| 24 | @@ -222,6 +222,8 @@ glamor_create_pixmap(ScreenPtr screen, int w, int h, int depth, | ||
| 25 | |||
| 26 | pixmap_priv = glamor_get_pixmap_private(pixmap); | ||
| 27 | |||
| 28 | + pixmap_priv->is_cbcr = (usage == GLAMOR_CREATE_FORMAT_CBCR); | ||
| 29 | + | ||
| 30 | format = gl_iformat_for_pixmap(pixmap); | ||
| 31 | |||
| 32 | pitch = (((w * pixmap->drawable.bitsPerPixel + 7) / 8) + 3) & ~3; | ||
| 33 | diff --git a/glamor/glamor.h b/glamor/glamor.h | ||
| 34 | index be04bf858..e5992aa56 100644 | ||
| 35 | --- a/glamor/glamor.h | ||
| 36 | +++ b/glamor/glamor.h | ||
| 37 | @@ -129,6 +129,7 @@ extern _X_EXPORT Bool glamor_destroy_pixmap(PixmapPtr pixmap); | ||
| 38 | #define GLAMOR_CREATE_FBO_NO_FBO 0x103 | ||
| 39 | #define GLAMOR_CREATE_NO_LARGE 0x105 | ||
| 40 | #define GLAMOR_CREATE_PIXMAP_NO_TEXTURE 0x106 | ||
| 41 | +#define GLAMOR_CREATE_FORMAT_CBCR 0x107 | ||
| 42 | |||
| 43 | /* @glamor_egl_exchange_buffers: Exchange the underlying buffers(KHR image,fbo). | ||
| 44 | * | ||
| 45 | diff --git a/glamor/glamor_priv.h b/glamor/glamor_priv.h | ||
| 46 | index 4353a99f1..a14aaf624 100644 | ||
| 47 | --- a/glamor/glamor_priv.h | ||
| 48 | +++ b/glamor/glamor_priv.h | ||
| 49 | @@ -380,6 +380,8 @@ typedef struct glamor_pixmap_private { | ||
| 50 | * names. | ||
| 51 | */ | ||
| 52 | glamor_pixmap_fbo **fbo_array; | ||
| 53 | + | ||
| 54 | + Bool is_cbcr; | ||
| 55 | } glamor_pixmap_private; | ||
| 56 | |||
| 57 | extern DevPrivateKeyRec glamor_pixmap_private_key; | ||
| 58 | @@ -902,7 +904,7 @@ int glamor_xv_put_image(glamor_port_private *port_priv, | ||
| 59 | Bool sync, | ||
| 60 | RegionPtr clipBoxes); | ||
| 61 | void glamor_xv_core_init(ScreenPtr screen); | ||
| 62 | -void glamor_xv_render(glamor_port_private *port_priv); | ||
| 63 | +void glamor_xv_render(glamor_port_private *port_priv, int id); | ||
| 64 | |||
| 65 | #include "glamor_utils.h" | ||
| 66 | |||
| 67 | diff --git a/glamor/glamor_transfer.c b/glamor/glamor_transfer.c | ||
| 68 | index ebb5101d1..421ed3a5f 100644 | ||
| 69 | --- a/glamor/glamor_transfer.c | ||
| 70 | +++ b/glamor/glamor_transfer.c | ||
| 71 | @@ -27,6 +27,7 @@ | ||
| 72 | void | ||
| 73 | glamor_format_for_pixmap(PixmapPtr pixmap, GLenum *format, GLenum *type) | ||
| 74 | { | ||
| 75 | + glamor_pixmap_private *priv = glamor_get_pixmap_private(pixmap); | ||
| 76 | switch (pixmap->drawable.depth) { | ||
| 77 | case 24: | ||
| 78 | case 32: | ||
| 79 | @@ -38,8 +39,13 @@ glamor_format_for_pixmap(PixmapPtr pixmap, GLenum *format, GLenum *type) | ||
| 80 | *type = GL_UNSIGNED_INT_2_10_10_10_REV; | ||
| 81 | break; | ||
| 82 | case 16: | ||
| 83 | - *format = GL_RGB; | ||
| 84 | - *type = GL_UNSIGNED_SHORT_5_6_5; | ||
| 85 | + if (priv->is_cbcr) { | ||
| 86 | + *format = priv->fbo->format; | ||
| 87 | + *type = GL_UNSIGNED_BYTE; | ||
| 88 | + } else { | ||
| 89 | + *format = GL_RGB; | ||
| 90 | + *type = GL_UNSIGNED_SHORT_5_6_5; | ||
| 91 | + } | ||
| 92 | break; | ||
| 93 | case 15: | ||
| 94 | *format = GL_BGRA; | ||
| 95 | diff --git a/glamor/glamor_utils.h b/glamor/glamor_utils.h | ||
| 96 | index 0d5674d63..1890c1fe5 100644 | ||
| 97 | --- a/glamor/glamor_utils.h | ||
| 98 | +++ b/glamor/glamor_utils.h | ||
| 99 | @@ -613,10 +613,14 @@ gl_iformat_for_pixmap(PixmapPtr pixmap) | ||
| 100 | { | ||
| 101 | glamor_screen_private *glamor_priv = | ||
| 102 | glamor_get_screen_private((pixmap)->drawable.pScreen); | ||
| 103 | + glamor_pixmap_private *pixmap_priv = glamor_get_pixmap_private(pixmap); | ||
| 104 | |||
| 105 | if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP && | ||
| 106 | ((pixmap)->drawable.depth == 1 || (pixmap)->drawable.depth == 8)) { | ||
| 107 | return glamor_priv->one_channel_format; | ||
| 108 | + } else if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP && | ||
| 109 | + (pixmap)->drawable.depth == 16 && pixmap_priv->is_cbcr) { | ||
| 110 | + return GL_RG; | ||
| 111 | } else if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP && | ||
| 112 | (pixmap)->drawable.depth == 30) { | ||
| 113 | return GL_RGB10_A2; | ||
| 114 | -- | ||
| 115 | 2.17.1 | ||
| 116 | |||
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0003-Remove-check-for-useSIGIO-option.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0003-Remove-check-for-useSIGIO-option.patch deleted file mode 100644 index beed6cb4a..000000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg/0003-Remove-check-for-useSIGIO-option.patch +++ /dev/null | |||
| @@ -1,47 +0,0 @@ | |||
| 1 | From cf407b16cd65ad6e26a9c8e5984e163409a5c0f7 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Prabhu Sundararaj <prabhu.sundararaj@nxp.com> | ||
| 3 | Date: Mon, 30 Jan 2017 16:32:06 -0600 | ||
| 4 | Subject: [PATCH] Remove check for useSIGIO option | ||
| 5 | |||
| 6 | Commit 6a5a4e60373c1386b311b2a8bb666c32d68a9d99 removes the configure of useSIGIO | ||
| 7 | option. | ||
| 8 | |||
| 9 | As the xfree86 SIGIO support is reworked to use internal versions of OsBlockSIGIO | ||
| 10 | and OsReleaseSIGIO. | ||
| 11 | |||
| 12 | No longer the check for useSIGIO is needed | ||
| 13 | |||
| 14 | Upstream-Status: Pending | ||
| 15 | |||
| 16 | Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@nxp.com> | ||
| 17 | --- | ||
| 18 | hw/xfree86/os-support/shared/sigio.c | 6 ------ | ||
| 19 | 1 file changed, 6 deletions(-) | ||
| 20 | |||
| 21 | diff --git a/hw/xfree86/os-support/shared/sigio.c b/hw/xfree86/os-support/shared/sigio.c | ||
| 22 | index 884a71c..be76498 100644 | ||
| 23 | --- a/hw/xfree86/os-support/shared/sigio.c | ||
| 24 | +++ b/hw/xfree86/os-support/shared/sigio.c | ||
| 25 | @@ -185,9 +185,6 @@ xf86InstallSIGIOHandler(int fd, void (*f) (int, void *), void *closure) | ||
| 26 | int i; | ||
| 27 | int installed = FALSE; | ||
| 28 | |||
| 29 | - if (!xf86Info.useSIGIO) | ||
| 30 | - return 0; | ||
| 31 | - | ||
| 32 | for (i = 0; i < MAX_FUNCS; i++) { | ||
| 33 | if (!xf86SigIOFuncs[i].f) { | ||
| 34 | if (xf86IsPipe(fd)) | ||
| 35 | @@ -256,9 +253,6 @@ xf86RemoveSIGIOHandler(int fd) | ||
| 36 | int max; | ||
| 37 | int ret; | ||
| 38 | |||
| 39 | - if (!xf86Info.useSIGIO) | ||
| 40 | - return 0; | ||
| 41 | - | ||
| 42 | max = 0; | ||
| 43 | ret = 0; | ||
| 44 | for (i = 0; i < MAX_FUNCS; i++) { | ||
| 45 | -- | ||
| 46 | 2.7.4 | ||
| 47 | |||
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0003-glamor-add-support-for-NV12-in-Xv.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0003-glamor-add-support-for-NV12-in-Xv.patch deleted file mode 100644 index 855d1938a..000000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg/0003-glamor-add-support-for-NV12-in-Xv.patch +++ /dev/null | |||
| @@ -1,322 +0,0 @@ | |||
| 1 | From 17a3528162304f1586329aabd606d3498bfe48a5 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Julien Isorce <julien.isorce@gmail.com> | ||
| 3 | Date: Tue, 11 Sep 2018 10:28:33 -0700 | ||
| 4 | Subject: [PATCH 3/8] glamor: add support for NV12 in Xv | ||
| 5 | |||
| 6 | Useful when video decoders only output NV12. Currently | ||
| 7 | glamor Xv only supports I420 and YV12. | ||
| 8 | |||
| 9 | Note that Intel's sna supports I420, YV12, YUY2, UYVY, NV12. | ||
| 10 | |||
| 11 | Test: xvinfo | grep NV12 | ||
| 12 | Test: gst-launch-1.0 videotestsrc ! video/x-raw, format=NV12 ! xvimagesink | ||
| 13 | |||
| 14 | v2: Combine the two texture2Ds on u_sampler. | ||
| 15 | |||
| 16 | Upstream-Status: Backport | ||
| 17 | Signed-off-by: Julien Isorce <jisorce@oblong.com> | ||
| 18 | Tested-by: Olivier Fourdan <ofourdan@redhat.com> | ||
| 19 | Reviewed-by: Alex Deucher <alexander.deucher@amd.com> | ||
| 20 | --- | ||
| 21 | glamor/glamor_xv.c | 180 ++++++++++++++++++++++++++++++++++++++------- | ||
| 22 | 1 file changed, 155 insertions(+), 25 deletions(-) | ||
| 23 | |||
| 24 | diff --git a/glamor/glamor_xv.c b/glamor/glamor_xv.c | ||
| 25 | index 62fc4fff5..6fef6ed0d 100644 | ||
| 26 | --- a/glamor/glamor_xv.c | ||
| 27 | +++ b/glamor/glamor_xv.c | ||
| 28 | @@ -59,8 +59,40 @@ typedef struct tagREF_TRANSFORM { | ||
| 29 | #define RTFContrast(a) (1.0 + ((a)*1.0)/1000.0) | ||
| 30 | #define RTFHue(a) (((a)*3.1416)/1000.0) | ||
| 31 | |||
| 32 | -static const glamor_facet glamor_facet_xv_planar = { | ||
| 33 | - .name = "xv_planar", | ||
| 34 | +static const glamor_facet glamor_facet_xv_planar_2 = { | ||
| 35 | + .name = "xv_planar_2", | ||
| 36 | + | ||
| 37 | + .version = 120, | ||
| 38 | + | ||
| 39 | + .source_name = "v_texcoord0", | ||
| 40 | + .vs_vars = ("attribute vec2 position;\n" | ||
| 41 | + "attribute vec2 v_texcoord0;\n" | ||
| 42 | + "varying vec2 tcs;\n"), | ||
| 43 | + .vs_exec = (GLAMOR_POS(gl_Position, position) | ||
| 44 | + " tcs = v_texcoord0;\n"), | ||
| 45 | + | ||
| 46 | + .fs_vars = ("uniform sampler2D y_sampler;\n" | ||
| 47 | + "uniform sampler2D u_sampler;\n" | ||
| 48 | + "uniform vec4 offsetyco;\n" | ||
| 49 | + "uniform vec4 ucogamma;\n" | ||
| 50 | + "uniform vec4 vco;\n" | ||
| 51 | + "varying vec2 tcs;\n"), | ||
| 52 | + .fs_exec = ( | ||
| 53 | + " float sample;\n" | ||
| 54 | + " vec2 sample_uv;\n" | ||
| 55 | + " vec4 temp1;\n" | ||
| 56 | + " sample = texture2D(y_sampler, tcs).w;\n" | ||
| 57 | + " temp1.xyz = offsetyco.www * vec3(sample) + offsetyco.xyz;\n" | ||
| 58 | + " sample_uv = texture2D(u_sampler, tcs).xy;\n" | ||
| 59 | + " temp1.xyz = ucogamma.xyz * vec3(sample_uv.x) + temp1.xyz;\n" | ||
| 60 | + " temp1.xyz = clamp(vco.xyz * vec3(sample_uv.y) + temp1.xyz, 0.0, 1.0);\n" | ||
| 61 | + " temp1.w = 1.0;\n" | ||
| 62 | + " gl_FragColor = temp1;\n" | ||
| 63 | + ), | ||
| 64 | +}; | ||
| 65 | + | ||
| 66 | +static const glamor_facet glamor_facet_xv_planar_3 = { | ||
| 67 | + .name = "xv_planar_3", | ||
| 68 | |||
| 69 | .version = 120, | ||
| 70 | |||
| 71 | @@ -110,26 +142,50 @@ Atom glamorBrightness, glamorContrast, glamorSaturation, glamorHue, | ||
| 72 | XvImageRec glamor_xv_images[] = { | ||
| 73 | XVIMAGE_YV12, | ||
| 74 | XVIMAGE_I420, | ||
| 75 | + XVIMAGE_NV12 | ||
| 76 | }; | ||
| 77 | int glamor_xv_num_images = ARRAY_SIZE(glamor_xv_images); | ||
| 78 | |||
| 79 | static void | ||
| 80 | -glamor_init_xv_shader(ScreenPtr screen) | ||
| 81 | +glamor_init_xv_shader(ScreenPtr screen, int id) | ||
| 82 | { | ||
| 83 | glamor_screen_private *glamor_priv = glamor_get_screen_private(screen); | ||
| 84 | GLint sampler_loc; | ||
| 85 | + const glamor_facet *glamor_facet_xv_planar = NULL; | ||
| 86 | + | ||
| 87 | + switch (id) { | ||
| 88 | + case FOURCC_YV12: | ||
| 89 | + case FOURCC_I420: | ||
| 90 | + glamor_facet_xv_planar = &glamor_facet_xv_planar_3; | ||
| 91 | + break; | ||
| 92 | + case FOURCC_NV12: | ||
| 93 | + glamor_facet_xv_planar = &glamor_facet_xv_planar_2; | ||
| 94 | + break; | ||
| 95 | + default: | ||
| 96 | + break; | ||
| 97 | + } | ||
| 98 | |||
| 99 | glamor_build_program(screen, | ||
| 100 | &glamor_priv->xv_prog, | ||
| 101 | - &glamor_facet_xv_planar, NULL, NULL, NULL); | ||
| 102 | + glamor_facet_xv_planar, NULL, NULL, NULL); | ||
| 103 | |||
| 104 | glUseProgram(glamor_priv->xv_prog.prog); | ||
| 105 | sampler_loc = glGetUniformLocation(glamor_priv->xv_prog.prog, "y_sampler"); | ||
| 106 | glUniform1i(sampler_loc, 0); | ||
| 107 | sampler_loc = glGetUniformLocation(glamor_priv->xv_prog.prog, "u_sampler"); | ||
| 108 | glUniform1i(sampler_loc, 1); | ||
| 109 | - sampler_loc = glGetUniformLocation(glamor_priv->xv_prog.prog, "v_sampler"); | ||
| 110 | - glUniform1i(sampler_loc, 2); | ||
| 111 | + | ||
| 112 | + switch (id) { | ||
| 113 | + case FOURCC_YV12: | ||
| 114 | + case FOURCC_I420: | ||
| 115 | + sampler_loc = glGetUniformLocation(glamor_priv->xv_prog.prog, "v_sampler"); | ||
| 116 | + glUniform1i(sampler_loc, 2); | ||
| 117 | + break; | ||
| 118 | + case FOURCC_NV12: | ||
| 119 | + break; | ||
| 120 | + default: | ||
| 121 | + break; | ||
| 122 | + } | ||
| 123 | |||
| 124 | } | ||
| 125 | |||
| 126 | @@ -227,6 +283,21 @@ glamor_xv_query_image_attributes(int id, | ||
| 127 | offsets[2] = size; | ||
| 128 | size += tmp; | ||
| 129 | break; | ||
| 130 | + case FOURCC_NV12: | ||
| 131 | + *w = ALIGN(*w, 2); | ||
| 132 | + *h = ALIGN(*h, 2); | ||
| 133 | + size = ALIGN(*w, 4); | ||
| 134 | + if (pitches) | ||
| 135 | + pitches[0] = size; | ||
| 136 | + size *= *h; | ||
| 137 | + if (offsets) | ||
| 138 | + offsets[1] = offsets[2] = size; | ||
| 139 | + tmp = ALIGN(*w, 4); | ||
| 140 | + if (pitches) | ||
| 141 | + pitches[1] = pitches[2] = tmp; | ||
| 142 | + tmp *= (*h >> 1); | ||
| 143 | + size += tmp; | ||
| 144 | + break; | ||
| 145 | } | ||
| 146 | return size; | ||
| 147 | } | ||
| 148 | @@ -240,7 +311,7 @@ static REF_TRANSFORM trans[2] = { | ||
| 149 | }; | ||
| 150 | |||
| 151 | void | ||
| 152 | -glamor_xv_render(glamor_port_private *port_priv) | ||
| 153 | +glamor_xv_render(glamor_port_private *port_priv, int id) | ||
| 154 | { | ||
| 155 | ScreenPtr screen = port_priv->pPixmap->drawable.pScreen; | ||
| 156 | glamor_screen_private *glamor_priv = glamor_get_screen_private(screen); | ||
| 157 | @@ -264,7 +335,7 @@ glamor_xv_render(glamor_port_private *port_priv) | ||
| 158 | int dst_box_index; | ||
| 159 | |||
| 160 | if (!glamor_priv->xv_prog.prog) | ||
| 161 | - glamor_init_xv_shader(screen); | ||
| 162 | + glamor_init_xv_shader(screen, id); | ||
| 163 | |||
| 164 | cont = RTFContrast(port_priv->contrast); | ||
| 165 | bright = RTFBrightness(port_priv->brightness); | ||
| 166 | @@ -293,6 +364,8 @@ glamor_xv_render(glamor_port_private *port_priv) | ||
| 167 | glamor_get_pixmap_private(port_priv->src_pix[i]); | ||
| 168 | pixmap_priv_get_scale(src_pixmap_priv[i], &src_xscale[i], | ||
| 169 | &src_yscale[i]); | ||
| 170 | + } else { | ||
| 171 | + src_pixmap_priv[i] = NULL; | ||
| 172 | } | ||
| 173 | } | ||
| 174 | glamor_make_current(glamor_priv); | ||
| 175 | @@ -319,12 +392,21 @@ glamor_xv_render(glamor_port_private *port_priv) | ||
| 176 | glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); | ||
| 177 | glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); | ||
| 178 | |||
| 179 | - glActiveTexture(GL_TEXTURE2); | ||
| 180 | - glBindTexture(GL_TEXTURE_2D, src_pixmap_priv[2]->fbo->tex); | ||
| 181 | - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); | ||
| 182 | - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); | ||
| 183 | - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); | ||
| 184 | - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); | ||
| 185 | + switch (id) { | ||
| 186 | + case FOURCC_YV12: | ||
| 187 | + case FOURCC_I420: | ||
| 188 | + glActiveTexture(GL_TEXTURE2); | ||
| 189 | + glBindTexture(GL_TEXTURE_2D, src_pixmap_priv[2]->fbo->tex); | ||
| 190 | + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); | ||
| 191 | + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); | ||
| 192 | + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); | ||
| 193 | + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); | ||
| 194 | + break; | ||
| 195 | + case FOURCC_NV12: | ||
| 196 | + break; | ||
| 197 | + default: | ||
| 198 | + break; | ||
| 199 | + } | ||
| 200 | |||
| 201 | glEnableVertexAttribArray(GLAMOR_VERTEX_POS); | ||
| 202 | glEnableVertexAttribArray(GLAMOR_VERTEX_SOURCE); | ||
| 203 | @@ -336,7 +418,7 @@ glamor_xv_render(glamor_port_private *port_priv) | ||
| 204 | /* Set up a single primitive covering the area being drawn. We'll | ||
| 205 | * clip it to port_priv->clip using GL scissors instead of just | ||
| 206 | * emitting a GL_QUAD per box, because this way we hopefully avoid | ||
| 207 | - * diagonal tearing between the two trangles used to rasterize a | ||
| 208 | + * diagonal tearing between the two triangles used to rasterize a | ||
| 209 | * GL_QUAD. | ||
| 210 | */ | ||
| 211 | i = 0; | ||
| 212 | @@ -417,6 +499,7 @@ glamor_xv_put_image(glamor_port_private *port_priv, | ||
| 213 | RegionPtr clipBoxes) | ||
| 214 | { | ||
| 215 | ScreenPtr pScreen = pDrawable->pScreen; | ||
| 216 | + glamor_screen_private *glamor_priv = glamor_get_screen_private(pScreen); | ||
| 217 | int srcPitch, srcPitch2; | ||
| 218 | int top, nlines; | ||
| 219 | int s2offset, s3offset, tmp; | ||
| 220 | @@ -425,9 +508,16 @@ glamor_xv_put_image(glamor_port_private *port_priv, | ||
| 221 | s2offset = s3offset = srcPitch2 = 0; | ||
| 222 | |||
| 223 | if (!port_priv->src_pix[0] || | ||
| 224 | - (width != port_priv->src_pix_w || height != port_priv->src_pix_h)) { | ||
| 225 | + (width != port_priv->src_pix_w || height != port_priv->src_pix_h) || | ||
| 226 | + (port_priv->src_pix[2] && id == FOURCC_NV12) || | ||
| 227 | + (!port_priv->src_pix[2] && id != FOURCC_NV12)) { | ||
| 228 | int i; | ||
| 229 | |||
| 230 | + if (glamor_priv->xv_prog.prog) { | ||
| 231 | + glDeleteProgram(glamor_priv->xv_prog.prog); | ||
| 232 | + glamor_priv->xv_prog.prog = 0; | ||
| 233 | + } | ||
| 234 | + | ||
| 235 | for (i = 0; i < 3; i++) | ||
| 236 | if (port_priv->src_pix[i]) | ||
| 237 | glamor_destroy_pixmap(port_priv->src_pix[i]); | ||
| 238 | @@ -435,17 +525,34 @@ glamor_xv_put_image(glamor_port_private *port_priv, | ||
| 239 | port_priv->src_pix[0] = | ||
| 240 | glamor_create_pixmap(pScreen, width, height, 8, | ||
| 241 | GLAMOR_CREATE_FBO_NO_FBO); | ||
| 242 | - port_priv->src_pix[1] = | ||
| 243 | - glamor_create_pixmap(pScreen, width >> 1, height >> 1, 8, | ||
| 244 | - GLAMOR_CREATE_FBO_NO_FBO); | ||
| 245 | - port_priv->src_pix[2] = | ||
| 246 | - glamor_create_pixmap(pScreen, width >> 1, height >> 1, 8, | ||
| 247 | - GLAMOR_CREATE_FBO_NO_FBO); | ||
| 248 | + | ||
| 249 | + switch (id) { | ||
| 250 | + case FOURCC_YV12: | ||
| 251 | + case FOURCC_I420: | ||
| 252 | + port_priv->src_pix[1] = | ||
| 253 | + glamor_create_pixmap(pScreen, width >> 1, height >> 1, 8, | ||
| 254 | + GLAMOR_CREATE_FBO_NO_FBO); | ||
| 255 | + port_priv->src_pix[2] = | ||
| 256 | + glamor_create_pixmap(pScreen, width >> 1, height >> 1, 8, | ||
| 257 | + GLAMOR_CREATE_FBO_NO_FBO); | ||
| 258 | + if (!port_priv->src_pix[2]) | ||
| 259 | + return BadAlloc; | ||
| 260 | + break; | ||
| 261 | + case FOURCC_NV12: | ||
| 262 | + port_priv->src_pix[1] = | ||
| 263 | + glamor_create_pixmap(pScreen, width >> 1, height >> 1, 16, | ||
| 264 | + GLAMOR_CREATE_FBO_NO_FBO | | ||
| 265 | + GLAMOR_CREATE_FORMAT_CBCR); | ||
| 266 | + port_priv->src_pix[2] = NULL; | ||
| 267 | + break; | ||
| 268 | + default: | ||
| 269 | + return BadMatch; | ||
| 270 | + } | ||
| 271 | + | ||
| 272 | port_priv->src_pix_w = width; | ||
| 273 | port_priv->src_pix_h = height; | ||
| 274 | |||
| 275 | - if (!port_priv->src_pix[0] || !port_priv->src_pix[1] || | ||
| 276 | - !port_priv->src_pix[2]) | ||
| 277 | + if (!port_priv->src_pix[0] || !port_priv->src_pix[1]) | ||
| 278 | return BadAlloc; | ||
| 279 | } | ||
| 280 | |||
| 281 | @@ -489,6 +596,29 @@ glamor_xv_put_image(glamor_port_private *port_priv, | ||
| 282 | 0, 0, 0, 0, | ||
| 283 | buf + s3offset, srcPitch2); | ||
| 284 | break; | ||
| 285 | + case FOURCC_NV12: | ||
| 286 | + srcPitch = ALIGN(width, 4); | ||
| 287 | + s2offset = srcPitch * height; | ||
| 288 | + s2offset += ((top >> 1) * srcPitch); | ||
| 289 | + | ||
| 290 | + full_box.x1 = 0; | ||
| 291 | + full_box.y1 = 0; | ||
| 292 | + full_box.x2 = width; | ||
| 293 | + full_box.y2 = nlines; | ||
| 294 | + | ||
| 295 | + half_box.x1 = 0; | ||
| 296 | + half_box.y1 = 0; | ||
| 297 | + half_box.x2 = width; | ||
| 298 | + half_box.y2 = (nlines + 1) >> 1; | ||
| 299 | + | ||
| 300 | + glamor_upload_boxes(port_priv->src_pix[0], &full_box, 1, | ||
| 301 | + 0, 0, 0, 0, | ||
| 302 | + buf + (top * srcPitch), srcPitch); | ||
| 303 | + | ||
| 304 | + glamor_upload_boxes(port_priv->src_pix[1], &half_box, 1, | ||
| 305 | + 0, 0, 0, 0, | ||
| 306 | + buf + s2offset, srcPitch); | ||
| 307 | + break; | ||
| 308 | default: | ||
| 309 | return BadMatch; | ||
| 310 | } | ||
| 311 | @@ -511,7 +641,7 @@ glamor_xv_put_image(glamor_port_private *port_priv, | ||
| 312 | port_priv->w = width; | ||
| 313 | port_priv->h = height; | ||
| 314 | port_priv->pDraw = pDrawable; | ||
| 315 | - glamor_xv_render(port_priv); | ||
| 316 | + glamor_xv_render(port_priv, id); | ||
| 317 | return Success; | ||
| 318 | } | ||
| 319 | |||
| 320 | -- | ||
| 321 | 2.17.1 | ||
| 322 | |||
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0004-glamor-Remove-unused-format_for_pixmap-helper.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0004-glamor-Remove-unused-format_for_pixmap-helper.patch deleted file mode 100644 index c116576fd..000000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg/0004-glamor-Remove-unused-format_for_pixmap-helper.patch +++ /dev/null | |||
| @@ -1,31 +0,0 @@ | |||
| 1 | From 69892ca6a623057ed4e3be0c22cb7fd812425024 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <michel.daenzer@amd.com> | ||
| 3 | Date: Wed, 19 Dec 2018 10:11:22 +0100 | ||
| 4 | Subject: [PATCH 4/8] glamor: Remove unused format_for_pixmap helper | ||
| 5 | |||
| 6 | Upstream-Status: Backport | ||
| 7 | Reviewed-by: Eric Anholt <eric@anholt.net> | ||
| 8 | --- | ||
| 9 | glamor/glamor_utils.h | 6 ------ | ||
| 10 | 1 file changed, 6 deletions(-) | ||
| 11 | |||
| 12 | diff --git a/glamor/glamor_utils.h b/glamor/glamor_utils.h | ||
| 13 | index 1890c1fe5..8a147ca7e 100644 | ||
| 14 | --- a/glamor/glamor_utils.h | ||
| 15 | +++ b/glamor/glamor_utils.h | ||
| 16 | @@ -629,12 +629,6 @@ gl_iformat_for_pixmap(PixmapPtr pixmap) | ||
| 17 | } | ||
| 18 | } | ||
| 19 | |||
| 20 | -static inline CARD32 | ||
| 21 | -format_for_pixmap(PixmapPtr pixmap) | ||
| 22 | -{ | ||
| 23 | - return format_for_depth((pixmap)->drawable.depth); | ||
| 24 | -} | ||
| 25 | - | ||
| 26 | #define REVERT_NONE 0 | ||
| 27 | #define REVERT_NORMAL 1 | ||
| 28 | #define REVERT_UPLOADING_A1 3 | ||
| 29 | -- | ||
| 30 | 2.17.1 | ||
| 31 | |||
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0005-glamor-Stop-trying-to-store-the-pixmap-s-format-in-g.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0005-glamor-Stop-trying-to-store-the-pixmap-s-format-in-g.patch deleted file mode 100644 index 9a0aa7abe..000000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg/0005-glamor-Stop-trying-to-store-the-pixmap-s-format-in-g.patch +++ /dev/null | |||
| @@ -1,132 +0,0 @@ | |||
| 1 | From 2498f6712c3b551c4d8104628aff78246b5cd6c8 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Eric Anholt <eric@anholt.net> | ||
| 3 | Date: Tue, 26 Mar 2019 15:58:59 -0700 | ||
| 4 | Subject: [PATCH 5/8] glamor: Stop trying to store the pixmap's "format" in | ||
| 5 | glamor_pixmap_fbo. | ||
| 6 | |||
| 7 | "format" is a bit of a confused term (internalformat vs GL format), | ||
| 8 | and all we really needed was "is this GL_RED?" | ||
| 9 | |||
| 10 | Upstream-Status: Backport | ||
| 11 | Signed-off-by: Eric Anholt <eric@anholt.net> | ||
| 12 | --- | ||
| 13 | glamor/glamor.c | 3 +-- | ||
| 14 | glamor/glamor_fbo.c | 7 ++++--- | ||
| 15 | glamor/glamor_priv.h | 13 ++----------- | ||
| 16 | glamor/glamor_render.c | 2 +- | ||
| 17 | glamor/glamor_transfer.c | 2 +- | ||
| 18 | 5 files changed, 9 insertions(+), 18 deletions(-) | ||
| 19 | |||
| 20 | diff --git a/glamor/glamor.c b/glamor/glamor.c | ||
| 21 | index 3e9cf284c..c36b6ea74 100644 | ||
| 22 | --- a/glamor/glamor.c | ||
| 23 | +++ b/glamor/glamor.c | ||
| 24 | @@ -184,8 +184,7 @@ glamor_bind_texture(glamor_screen_private *glamor_priv, GLenum texture, | ||
| 25 | /* Is the operand a GL_RED fbo? | ||
| 26 | */ | ||
| 27 | |||
| 28 | - if (glamor_fbo_red_is_alpha(glamor_priv, fbo)) { | ||
| 29 | - | ||
| 30 | + if (fbo->is_red) { | ||
| 31 | /* If destination is also GL_RED, then preserve the bits in | ||
| 32 | * the R channel */ | ||
| 33 | |||
| 34 | diff --git a/glamor/glamor_fbo.c b/glamor/glamor_fbo.c | ||
| 35 | index f939a6c2f..58eb97bf4 100644 | ||
| 36 | --- a/glamor/glamor_fbo.c | ||
| 37 | +++ b/glamor/glamor_fbo.c | ||
| 38 | @@ -95,7 +95,7 @@ glamor_pixmap_ensure_fb(glamor_screen_private *glamor_priv, | ||
| 39 | |||
| 40 | glamor_pixmap_fbo * | ||
| 41 | glamor_create_fbo_from_tex(glamor_screen_private *glamor_priv, | ||
| 42 | - int w, int h, GLenum format, GLint tex, int flag) | ||
| 43 | + int w, int h, Bool is_red, GLint tex, int flag) | ||
| 44 | { | ||
| 45 | glamor_pixmap_fbo *fbo; | ||
| 46 | |||
| 47 | @@ -106,7 +106,7 @@ glamor_create_fbo_from_tex(glamor_screen_private *glamor_priv, | ||
| 48 | fbo->tex = tex; | ||
| 49 | fbo->width = w; | ||
| 50 | fbo->height = h; | ||
| 51 | - fbo->format = format; | ||
| 52 | + fbo->is_red = is_red; | ||
| 53 | |||
| 54 | if (flag != GLAMOR_CREATE_FBO_NO_FBO) { | ||
| 55 | if (glamor_pixmap_ensure_fb(glamor_priv, fbo) != 0) { | ||
| 56 | @@ -163,7 +163,8 @@ glamor_create_fbo(glamor_screen_private *glamor_priv, | ||
| 57 | if (!tex) /* Texture creation failed due to GL_OUT_OF_MEMORY */ | ||
| 58 | return NULL; | ||
| 59 | |||
| 60 | - return glamor_create_fbo_from_tex(glamor_priv, w, h, format, tex, flag); | ||
| 61 | + return glamor_create_fbo_from_tex(glamor_priv, w, h, format == GL_RED, | ||
| 62 | + tex, flag); | ||
| 63 | } | ||
| 64 | |||
| 65 | /** | ||
| 66 | diff --git a/glamor/glamor_priv.h b/glamor/glamor_priv.h | ||
| 67 | index a14aaf624..e70d349da 100644 | ||
| 68 | --- a/glamor/glamor_priv.h | ||
| 69 | +++ b/glamor/glamor_priv.h | ||
| 70 | @@ -317,8 +317,7 @@ typedef struct glamor_pixmap_fbo { | ||
| 71 | GLuint fb; /**< GL FBO name */ | ||
| 72 | int width; /**< width in pixels */ | ||
| 73 | int height; /**< height in pixels */ | ||
| 74 | - GLenum format; /**< GL format used to create the texture. */ | ||
| 75 | - GLenum type; /**< GL type used to create the texture. */ | ||
| 76 | + Bool is_red; | ||
| 77 | } glamor_pixmap_fbo; | ||
| 78 | |||
| 79 | typedef struct glamor_pixmap_clipped_regions { | ||
| 80 | @@ -533,7 +532,7 @@ glamor_pixmap_fbo *glamor_pixmap_detach_fbo(glamor_pixmap_private * | ||
| 81 | void glamor_pixmap_attach_fbo(PixmapPtr pixmap, glamor_pixmap_fbo *fbo); | ||
| 82 | glamor_pixmap_fbo *glamor_create_fbo_from_tex(glamor_screen_private * | ||
| 83 | glamor_priv, int w, int h, | ||
| 84 | - GLenum format, GLint tex, | ||
| 85 | + Bool is_red, GLint tex, | ||
| 86 | int flag); | ||
| 87 | glamor_pixmap_fbo *glamor_create_fbo(glamor_screen_private *glamor_priv, int w, | ||
| 88 | int h, GLenum format, int flag); | ||
| 89 | @@ -549,14 +548,6 @@ static inline Bool glamor_picture_is_alpha(PicturePtr picture) | ||
| 90 | return picture->format == PICT_a1 || picture->format == PICT_a8; | ||
| 91 | } | ||
| 92 | |||
| 93 | -/* Return whether 'fbo' is storing alpha bits in the red channel */ | ||
| 94 | -static inline Bool | ||
| 95 | -glamor_fbo_red_is_alpha(glamor_screen_private *glamor_priv, glamor_pixmap_fbo *fbo) | ||
| 96 | -{ | ||
| 97 | - /* True when the format is GL_RED (that can only happen when our one channel format is GL_RED */ | ||
| 98 | - return fbo->format == GL_RED; | ||
| 99 | -} | ||
| 100 | - | ||
| 101 | /* Return whether 'picture' is storing alpha bits in the red channel */ | ||
| 102 | static inline Bool | ||
| 103 | glamor_picture_red_is_alpha(PicturePtr picture) | ||
| 104 | diff --git a/glamor/glamor_render.c b/glamor/glamor_render.c | ||
| 105 | index d5737018f..6db6bfbc3 100644 | ||
| 106 | --- a/glamor/glamor_render.c | ||
| 107 | +++ b/glamor/glamor_render.c | ||
| 108 | @@ -529,7 +529,7 @@ glamor_set_composite_texture(glamor_screen_private *glamor_priv, int unit, | ||
| 109 | * sometimes get zero bits in the R channel, which is harmless. | ||
| 110 | */ | ||
| 111 | glamor_bind_texture(glamor_priv, GL_TEXTURE0 + unit, fbo, | ||
| 112 | - glamor_fbo_red_is_alpha(glamor_priv, dest_priv->fbo)); | ||
| 113 | + dest_priv->fbo->is_red); | ||
| 114 | repeat_type = picture->repeatType; | ||
| 115 | switch (picture->repeatType) { | ||
| 116 | case RepeatNone: | ||
| 117 | diff --git a/glamor/glamor_transfer.c b/glamor/glamor_transfer.c | ||
| 118 | index 421ed3a5f..215752d7b 100644 | ||
| 119 | --- a/glamor/glamor_transfer.c | ||
| 120 | +++ b/glamor/glamor_transfer.c | ||
| 121 | @@ -40,7 +40,7 @@ glamor_format_for_pixmap(PixmapPtr pixmap, GLenum *format, GLenum *type) | ||
| 122 | break; | ||
| 123 | case 16: | ||
| 124 | if (priv->is_cbcr) { | ||
| 125 | - *format = priv->fbo->format; | ||
| 126 | + *format = GL_RG; | ||
| 127 | *type = GL_UNSIGNED_BYTE; | ||
| 128 | } else { | ||
| 129 | *format = GL_RGB; | ||
| 130 | -- | ||
| 131 | 2.17.1 | ||
| 132 | |||
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0006-glamor-Plumb-the-pixmap-through-fbo-creation-instead.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0006-glamor-Plumb-the-pixmap-through-fbo-creation-instead.patch deleted file mode 100644 index 66d2877c0..000000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg/0006-glamor-Plumb-the-pixmap-through-fbo-creation-instead.patch +++ /dev/null | |||
| @@ -1,265 +0,0 @@ | |||
| 1 | From 3c14a16e1b4277aa00a2b23d5758d99dc20ca819 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Eric Anholt <eric@anholt.net> | ||
| 3 | Date: Tue, 26 Mar 2019 16:57:24 -0700 | ||
| 4 | Subject: [PATCH 6/8] glamor: Plumb the pixmap through fbo creation instead of | ||
| 5 | a "format" | ||
| 6 | |||
| 7 | For GLES, we're going to need a lot more logic for picking the | ||
| 8 | iformat/format/type of texture setup, so we'll want the pixmap's depth | ||
| 9 | and is_cbcr flag. | ||
| 10 | |||
| 11 | Upstream-Status: Backport | ||
| 12 | Signed-off-by: Eric Anholt <eric@anholt.net> | ||
| 13 | --- | ||
| 14 | glamor/glamor.c | 20 +++++++------------- | ||
| 15 | glamor/glamor_fbo.c | 33 +++++++++++++++++++-------------- | ||
| 16 | glamor/glamor_picture.c | 2 +- | ||
| 17 | glamor/glamor_priv.h | 12 ++++++------ | ||
| 18 | 4 files changed, 33 insertions(+), 34 deletions(-) | ||
| 19 | |||
| 20 | diff --git a/glamor/glamor.c b/glamor/glamor.c | ||
| 21 | index c36b6ea74..f618c2128 100644 | ||
| 22 | --- a/glamor/glamor.c | ||
| 23 | +++ b/glamor/glamor.c | ||
| 24 | @@ -106,7 +106,6 @@ glamor_set_pixmap_texture(PixmapPtr pixmap, unsigned int tex) | ||
| 25 | glamor_pixmap_private *pixmap_priv; | ||
| 26 | glamor_screen_private *glamor_priv; | ||
| 27 | glamor_pixmap_fbo *fbo; | ||
| 28 | - GLenum format; | ||
| 29 | |||
| 30 | glamor_priv = glamor_get_screen_private(screen); | ||
| 31 | pixmap_priv = glamor_get_pixmap_private(pixmap); | ||
| 32 | @@ -116,9 +115,9 @@ glamor_set_pixmap_texture(PixmapPtr pixmap, unsigned int tex) | ||
| 33 | glamor_destroy_fbo(glamor_priv, fbo); | ||
| 34 | } | ||
| 35 | |||
| 36 | - format = gl_iformat_for_pixmap(pixmap); | ||
| 37 | - fbo = glamor_create_fbo_from_tex(glamor_priv, pixmap->drawable.width, | ||
| 38 | - pixmap->drawable.height, format, tex, 0); | ||
| 39 | + fbo = glamor_create_fbo_from_tex(glamor_priv, pixmap, | ||
| 40 | + pixmap->drawable.width, | ||
| 41 | + pixmap->drawable.height, tex, 0); | ||
| 42 | |||
| 43 | if (fbo == NULL) { | ||
| 44 | ErrorF("XXX fail to create fbo.\n"); | ||
| 45 | @@ -204,7 +203,6 @@ glamor_create_pixmap(ScreenPtr screen, int w, int h, int depth, | ||
| 46 | glamor_screen_private *glamor_priv = glamor_get_screen_private(screen); | ||
| 47 | glamor_pixmap_fbo *fbo = NULL; | ||
| 48 | int pitch; | ||
| 49 | - GLenum format; | ||
| 50 | |||
| 51 | if (w > 32767 || h > 32767) | ||
| 52 | return NullPixmap; | ||
| 53 | @@ -223,8 +221,6 @@ glamor_create_pixmap(ScreenPtr screen, int w, int h, int depth, | ||
| 54 | |||
| 55 | pixmap_priv->is_cbcr = (usage == GLAMOR_CREATE_FORMAT_CBCR); | ||
| 56 | |||
| 57 | - format = gl_iformat_for_pixmap(pixmap); | ||
| 58 | - | ||
| 59 | pitch = (((w * pixmap->drawable.bitsPerPixel + 7) / 8) + 3) & ~3; | ||
| 60 | screen->ModifyPixmapHeader(pixmap, w, h, 0, 0, pitch, NULL); | ||
| 61 | |||
| 62 | @@ -238,12 +234,12 @@ glamor_create_pixmap(ScreenPtr screen, int w, int h, int depth, | ||
| 63 | glamor_check_fbo_size(glamor_priv, w, h)) | ||
| 64 | { | ||
| 65 | glamor_init_pixmap_private_small(pixmap, pixmap_priv); | ||
| 66 | - fbo = glamor_create_fbo(glamor_priv, w, h, format, usage); | ||
| 67 | + fbo = glamor_create_fbo(glamor_priv, pixmap, w, h, usage); | ||
| 68 | } else { | ||
| 69 | int tile_size = glamor_priv->max_fbo_size; | ||
| 70 | DEBUGF("Create LARGE pixmap %p width %d height %d, tile size %d\n", | ||
| 71 | pixmap, w, h, tile_size); | ||
| 72 | - fbo = glamor_create_fbo_array(glamor_priv, w, h, format, usage, | ||
| 73 | + fbo = glamor_create_fbo_array(glamor_priv, pixmap, usage, | ||
| 74 | tile_size, tile_size, pixmap_priv); | ||
| 75 | } | ||
| 76 | |||
| 77 | @@ -860,8 +856,7 @@ _glamor_fds_from_pixmap(ScreenPtr screen, PixmapPtr pixmap, int *fds, | ||
| 78 | switch (pixmap_priv->type) { | ||
| 79 | case GLAMOR_TEXTURE_DRM: | ||
| 80 | case GLAMOR_TEXTURE_ONLY: | ||
| 81 | - if (!glamor_pixmap_ensure_fbo(pixmap, pixmap->drawable.depth == 30 ? | ||
| 82 | - GL_RGB10_A2 : GL_RGBA, 0)) | ||
| 83 | + if (!glamor_pixmap_ensure_fbo(pixmap, 0)) | ||
| 84 | return 0; | ||
| 85 | |||
| 86 | if (modifier) { | ||
| 87 | @@ -937,8 +932,7 @@ glamor_name_from_pixmap(PixmapPtr pixmap, CARD16 *stride, CARD32 *size) | ||
| 88 | switch (pixmap_priv->type) { | ||
| 89 | case GLAMOR_TEXTURE_DRM: | ||
| 90 | case GLAMOR_TEXTURE_ONLY: | ||
| 91 | - if (!glamor_pixmap_ensure_fbo(pixmap, pixmap->drawable.depth == 30 ? | ||
| 92 | - GL_RGB10_A2 : GL_RGBA, 0)) | ||
| 93 | + if (!glamor_pixmap_ensure_fbo(pixmap, 0)) | ||
| 94 | return -1; | ||
| 95 | return glamor_egl_fd_name_from_pixmap(pixmap->drawable.pScreen, | ||
| 96 | pixmap, stride, size); | ||
| 97 | diff --git a/glamor/glamor_fbo.c b/glamor/glamor_fbo.c | ||
| 98 | index 58eb97bf4..75f7e2baa 100644 | ||
| 99 | --- a/glamor/glamor_fbo.c | ||
| 100 | +++ b/glamor/glamor_fbo.c | ||
| 101 | @@ -95,8 +95,9 @@ glamor_pixmap_ensure_fb(glamor_screen_private *glamor_priv, | ||
| 102 | |||
| 103 | glamor_pixmap_fbo * | ||
| 104 | glamor_create_fbo_from_tex(glamor_screen_private *glamor_priv, | ||
| 105 | - int w, int h, Bool is_red, GLint tex, int flag) | ||
| 106 | + PixmapPtr pixmap, int w, int h, GLint tex, int flag) | ||
| 107 | { | ||
| 108 | + GLenum format = gl_iformat_for_pixmap(pixmap); | ||
| 109 | glamor_pixmap_fbo *fbo; | ||
| 110 | |||
| 111 | fbo = calloc(1, sizeof(*fbo)); | ||
| 112 | @@ -106,7 +107,7 @@ glamor_create_fbo_from_tex(glamor_screen_private *glamor_priv, | ||
| 113 | fbo->tex = tex; | ||
| 114 | fbo->width = w; | ||
| 115 | fbo->height = h; | ||
| 116 | - fbo->is_red = is_red; | ||
| 117 | + fbo->is_red = format == GL_RED; | ||
| 118 | |||
| 119 | if (flag != GLAMOR_CREATE_FBO_NO_FBO) { | ||
| 120 | if (glamor_pixmap_ensure_fb(glamor_priv, fbo) != 0) { | ||
| 121 | @@ -120,13 +121,15 @@ glamor_create_fbo_from_tex(glamor_screen_private *glamor_priv, | ||
| 122 | |||
| 123 | static int | ||
| 124 | _glamor_create_tex(glamor_screen_private *glamor_priv, | ||
| 125 | - int w, int h, GLenum format) | ||
| 126 | + PixmapPtr pixmap, int w, int h) | ||
| 127 | { | ||
| 128 | + GLenum iformat = gl_iformat_for_pixmap(pixmap); | ||
| 129 | + GLenum format = iformat; | ||
| 130 | unsigned int tex; | ||
| 131 | - GLenum iformat = format; | ||
| 132 | |||
| 133 | if (format == GL_RGB10_A2) | ||
| 134 | format = GL_RGBA; | ||
| 135 | + | ||
| 136 | glamor_make_current(glamor_priv); | ||
| 137 | glGenTextures(1, &tex); | ||
| 138 | glBindTexture(GL_TEXTURE_2D, tex); | ||
| 139 | @@ -156,14 +159,14 @@ _glamor_create_tex(glamor_screen_private *glamor_priv, | ||
| 140 | |||
| 141 | glamor_pixmap_fbo * | ||
| 142 | glamor_create_fbo(glamor_screen_private *glamor_priv, | ||
| 143 | - int w, int h, GLenum format, int flag) | ||
| 144 | + PixmapPtr pixmap, int w, int h, int flag) | ||
| 145 | { | ||
| 146 | - GLint tex = _glamor_create_tex(glamor_priv, w, h, format); | ||
| 147 | + GLint tex = _glamor_create_tex(glamor_priv, pixmap, w, h); | ||
| 148 | |||
| 149 | if (!tex) /* Texture creation failed due to GL_OUT_OF_MEMORY */ | ||
| 150 | return NULL; | ||
| 151 | |||
| 152 | - return glamor_create_fbo_from_tex(glamor_priv, w, h, format == GL_RED, | ||
| 153 | + return glamor_create_fbo_from_tex(glamor_priv, pixmap, w, h, | ||
| 154 | tex, flag); | ||
| 155 | } | ||
| 156 | |||
| 157 | @@ -173,10 +176,12 @@ glamor_create_fbo(glamor_screen_private *glamor_priv, | ||
| 158 | */ | ||
| 159 | glamor_pixmap_fbo * | ||
| 160 | glamor_create_fbo_array(glamor_screen_private *glamor_priv, | ||
| 161 | - int w, int h, GLenum format, int flag, | ||
| 162 | + PixmapPtr pixmap, int flag, | ||
| 163 | int block_w, int block_h, | ||
| 164 | glamor_pixmap_private *priv) | ||
| 165 | { | ||
| 166 | + int w = pixmap->drawable.width; | ||
| 167 | + int h = pixmap->drawable.height; | ||
| 168 | int block_wcnt; | ||
| 169 | int block_hcnt; | ||
| 170 | glamor_pixmap_fbo **fbo_array; | ||
| 171 | @@ -216,8 +221,8 @@ glamor_create_fbo_array(glamor_screen_private *glamor_priv, | ||
| 172 | box_array[i * block_wcnt + j].x2 - box_array[i * block_wcnt + | ||
| 173 | j].x1; | ||
| 174 | fbo_array[i * block_wcnt + j] = glamor_create_fbo(glamor_priv, | ||
| 175 | + pixmap, | ||
| 176 | fbo_w, fbo_h, | ||
| 177 | - format, | ||
| 178 | GLAMOR_CREATE_PIXMAP_FIXUP); | ||
| 179 | if (fbo_array[i * block_wcnt + j] == NULL) | ||
| 180 | goto cleanup; | ||
| 181 | @@ -315,7 +320,7 @@ glamor_pixmap_destroy_fbo(PixmapPtr pixmap) | ||
| 182 | } | ||
| 183 | |||
| 184 | Bool | ||
| 185 | -glamor_pixmap_ensure_fbo(PixmapPtr pixmap, GLenum format, int flag) | ||
| 186 | +glamor_pixmap_ensure_fbo(PixmapPtr pixmap, int flag) | ||
| 187 | { | ||
| 188 | glamor_screen_private *glamor_priv; | ||
| 189 | glamor_pixmap_private *pixmap_priv; | ||
| 190 | @@ -325,8 +330,8 @@ glamor_pixmap_ensure_fbo(PixmapPtr pixmap, GLenum format, int flag) | ||
| 191 | pixmap_priv = glamor_get_pixmap_private(pixmap); | ||
| 192 | if (pixmap_priv->fbo == NULL) { | ||
| 193 | |||
| 194 | - fbo = glamor_create_fbo(glamor_priv, pixmap->drawable.width, | ||
| 195 | - pixmap->drawable.height, format, flag); | ||
| 196 | + fbo = glamor_create_fbo(glamor_priv, pixmap, pixmap->drawable.width, | ||
| 197 | + pixmap->drawable.height, flag); | ||
| 198 | if (fbo == NULL) | ||
| 199 | return FALSE; | ||
| 200 | |||
| 201 | @@ -336,8 +341,8 @@ glamor_pixmap_ensure_fbo(PixmapPtr pixmap, GLenum format, int flag) | ||
| 202 | /* We do have a fbo, but it may lack of fb or tex. */ | ||
| 203 | if (!pixmap_priv->fbo->tex) | ||
| 204 | pixmap_priv->fbo->tex = | ||
| 205 | - _glamor_create_tex(glamor_priv, pixmap->drawable.width, | ||
| 206 | - pixmap->drawable.height, format); | ||
| 207 | + _glamor_create_tex(glamor_priv, pixmap, pixmap->drawable.width, | ||
| 208 | + pixmap->drawable.height); | ||
| 209 | |||
| 210 | if (flag != GLAMOR_CREATE_FBO_NO_FBO && pixmap_priv->fbo->fb == 0) | ||
| 211 | if (glamor_pixmap_ensure_fb(glamor_priv, pixmap_priv->fbo) != 0) | ||
| 212 | diff --git a/glamor/glamor_picture.c b/glamor/glamor_picture.c | ||
| 213 | index 685d8d618..e6d387d42 100644 | ||
| 214 | --- a/glamor/glamor_picture.c | ||
| 215 | +++ b/glamor/glamor_picture.c | ||
| 216 | @@ -340,7 +340,7 @@ glamor_upload_picture_to_texture(PicturePtr picture) | ||
| 217 | else | ||
| 218 | iformat = format; | ||
| 219 | |||
| 220 | - if (!glamor_pixmap_ensure_fbo(pixmap, iformat, GLAMOR_CREATE_FBO_NO_FBO)) { | ||
| 221 | + if (!glamor_pixmap_ensure_fbo(pixmap, GLAMOR_CREATE_FBO_NO_FBO)) { | ||
| 222 | ret = FALSE; | ||
| 223 | goto fail; | ||
| 224 | } | ||
| 225 | diff --git a/glamor/glamor_priv.h b/glamor/glamor_priv.h | ||
| 226 | index e70d349da..a87caec9b 100644 | ||
| 227 | --- a/glamor/glamor_priv.h | ||
| 228 | +++ b/glamor/glamor_priv.h | ||
| 229 | @@ -531,11 +531,11 @@ glamor_pixmap_fbo *glamor_pixmap_detach_fbo(glamor_pixmap_private * | ||
| 230 | pixmap_priv); | ||
| 231 | void glamor_pixmap_attach_fbo(PixmapPtr pixmap, glamor_pixmap_fbo *fbo); | ||
| 232 | glamor_pixmap_fbo *glamor_create_fbo_from_tex(glamor_screen_private * | ||
| 233 | - glamor_priv, int w, int h, | ||
| 234 | - Bool is_red, GLint tex, | ||
| 235 | + glamor_priv, PixmapPtr pixmap, | ||
| 236 | + int w, int h, GLint tex, | ||
| 237 | int flag); | ||
| 238 | -glamor_pixmap_fbo *glamor_create_fbo(glamor_screen_private *glamor_priv, int w, | ||
| 239 | - int h, GLenum format, int flag); | ||
| 240 | +glamor_pixmap_fbo *glamor_create_fbo(glamor_screen_private *glamor_priv, | ||
| 241 | + PixmapPtr pixmap, int w, int h, int flag); | ||
| 242 | void glamor_destroy_fbo(glamor_screen_private *glamor_priv, | ||
| 243 | glamor_pixmap_fbo *fbo); | ||
| 244 | void glamor_pixmap_destroy_fbo(PixmapPtr pixmap); | ||
| 245 | @@ -563,7 +563,7 @@ void glamor_bind_texture(glamor_screen_private *glamor_priv, | ||
| 246 | Bool destination_red); | ||
| 247 | |||
| 248 | glamor_pixmap_fbo *glamor_create_fbo_array(glamor_screen_private *glamor_priv, | ||
| 249 | - int w, int h, GLenum format, | ||
| 250 | + PixmapPtr pixmap, | ||
| 251 | int flag, int block_w, int block_h, | ||
| 252 | glamor_pixmap_private *); | ||
| 253 | |||
| 254 | @@ -673,7 +673,7 @@ glamor_put_vbo_space(ScreenPtr screen); | ||
| 255 | * the fbo has valid texture and attach to a valid fb. | ||
| 256 | * If the fbo already has a valid glfbo then do nothing. | ||
| 257 | */ | ||
| 258 | -Bool glamor_pixmap_ensure_fbo(PixmapPtr pixmap, GLenum format, int flag); | ||
| 259 | +Bool glamor_pixmap_ensure_fbo(PixmapPtr pixmap, int flag); | ||
| 260 | |||
| 261 | glamor_pixmap_clipped_regions * | ||
| 262 | glamor_compute_clipped_regions(PixmapPtr pixmap, | ||
| 263 | -- | ||
| 264 | 2.17.1 | ||
| 265 | |||
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0007-glamor-Switch-the-gl_flavor-to-a-boolean-is_gles.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0007-glamor-Switch-the-gl_flavor-to-a-boolean-is_gles.patch deleted file mode 100644 index f2947f324..000000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg/0007-glamor-Switch-the-gl_flavor-to-a-boolean-is_gles.patch +++ /dev/null | |||
| @@ -1,287 +0,0 @@ | |||
| 1 | From 3a03576d672d24f19fdb930b08afde9a3a3f55da Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Eric Anholt <eric@anholt.net> | ||
| 3 | Date: Tue, 26 Mar 2019 15:02:38 -0700 | ||
| 4 | Subject: [PATCH 7/8] glamor: Switch the gl_flavor to a boolean is_gles. | ||
| 5 | |||
| 6 | There are only 2 flavors we are distinguishing -- GL versions are | ||
| 7 | handled separately. | ||
| 8 | |||
| 9 | Upstream-Status: Backport | ||
| 10 | Signed-off-by: Eric Anholt <eric@anholt.net> | ||
| 11 | --- | ||
| 12 | glamor/glamor.c | 20 +++++++++----------- | ||
| 13 | glamor/glamor_picture.c | 22 +++++++++++----------- | ||
| 14 | glamor/glamor_pixmap.c | 2 +- | ||
| 15 | glamor/glamor_priv.h | 7 +------ | ||
| 16 | glamor/glamor_program.c | 2 +- | ||
| 17 | glamor/glamor_render.c | 2 +- | ||
| 18 | glamor/glamor_utils.h | 6 +++--- | ||
| 19 | 7 files changed, 27 insertions(+), 34 deletions(-) | ||
| 20 | |||
| 21 | diff --git a/glamor/glamor.c b/glamor/glamor.c | ||
| 22 | index f618c2128..019edbbb1 100644 | ||
| 23 | --- a/glamor/glamor.c | ||
| 24 | +++ b/glamor/glamor.c | ||
| 25 | @@ -505,10 +505,8 @@ glamor_init(ScreenPtr screen, unsigned int flags) | ||
| 26 | |||
| 27 | glamor_make_current(glamor_priv); | ||
| 28 | |||
| 29 | - if (epoxy_is_desktop_gl()) | ||
| 30 | - glamor_priv->gl_flavor = GLAMOR_GL_DESKTOP; | ||
| 31 | - else | ||
| 32 | - glamor_priv->gl_flavor = GLAMOR_GL_ES2; | ||
| 33 | + if (!epoxy_is_desktop_gl()) | ||
| 34 | + glamor_priv->is_gles = TRUE; | ||
| 35 | |||
| 36 | gl_version = epoxy_gl_version(); | ||
| 37 | |||
| 38 | @@ -540,7 +538,7 @@ glamor_init(ScreenPtr screen, unsigned int flags) | ||
| 39 | } | ||
| 40 | glamor_priv->glsl_version = glsl_major * 100 + glsl_minor; | ||
| 41 | |||
| 42 | - if (glamor_priv->gl_flavor == GLAMOR_GL_ES2) { | ||
| 43 | + if (glamor_priv->is_gles) { | ||
| 44 | /* Force us back to the base version of our programs on an ES | ||
| 45 | * context, anyway. Basically glamor only uses desktop 1.20 | ||
| 46 | * or 1.30 currently. 1.30's new features are also present in | ||
| 47 | @@ -564,7 +562,7 @@ glamor_init(ScreenPtr screen, unsigned int flags) | ||
| 48 | * have support for it, with most of the ones lacking it being on | ||
| 49 | * Windows with Intel 4-series (G45) graphics or older. | ||
| 50 | */ | ||
| 51 | - if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) { | ||
| 52 | + if (!glamor_priv->is_gles) { | ||
| 53 | if (gl_version < 21) { | ||
| 54 | ErrorF("Require OpenGL version 2.1 or later.\n"); | ||
| 55 | goto fail; | ||
| 56 | @@ -610,7 +608,7 @@ glamor_init(ScreenPtr screen, unsigned int flags) | ||
| 57 | } | ||
| 58 | |||
| 59 | glamor_priv->has_rw_pbo = FALSE; | ||
| 60 | - if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) | ||
| 61 | + if (!glamor_priv->is_gles) | ||
| 62 | glamor_priv->has_rw_pbo = TRUE; | ||
| 63 | |||
| 64 | glamor_priv->has_khr_debug = epoxy_has_gl_extension("GL_KHR_debug"); | ||
| 65 | @@ -628,11 +626,11 @@ glamor_init(ScreenPtr screen, unsigned int flags) | ||
| 66 | glamor_priv->has_nv_texture_barrier = | ||
| 67 | epoxy_has_gl_extension("GL_NV_texture_barrier"); | ||
| 68 | glamor_priv->has_unpack_subimage = | ||
| 69 | - glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP || | ||
| 70 | + !glamor_priv->is_gles || | ||
| 71 | epoxy_gl_version() >= 30 || | ||
| 72 | epoxy_has_gl_extension("GL_EXT_unpack_subimage"); | ||
| 73 | glamor_priv->has_pack_subimage = | ||
| 74 | - glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP || | ||
| 75 | + !glamor_priv->is_gles || | ||
| 76 | epoxy_gl_version() >= 30 || | ||
| 77 | epoxy_has_gl_extension("GL_NV_pack_subimage"); | ||
| 78 | glamor_priv->has_dual_blend = | ||
| 79 | @@ -643,7 +641,7 @@ glamor_init(ScreenPtr screen, unsigned int flags) | ||
| 80 | |||
| 81 | glamor_setup_debug_output(screen); | ||
| 82 | |||
| 83 | - glamor_priv->use_quads = (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) && | ||
| 84 | + glamor_priv->use_quads = !glamor_priv->is_gles && | ||
| 85 | !glamor_priv->is_core_profile; | ||
| 86 | |||
| 87 | /* Driver-specific hack: Avoid using GL_QUADS on VC4, where | ||
| 88 | @@ -665,7 +663,7 @@ glamor_init(ScreenPtr screen, unsigned int flags) | ||
| 89 | |||
| 90 | glamor_priv->has_texture_swizzle = | ||
| 91 | (epoxy_has_gl_extension("GL_ARB_texture_swizzle") || | ||
| 92 | - (glamor_priv->gl_flavor != GLAMOR_GL_DESKTOP && gl_version >= 30)); | ||
| 93 | + (glamor_priv->is_gles && gl_version >= 30)); | ||
| 94 | |||
| 95 | glamor_priv->one_channel_format = GL_ALPHA; | ||
| 96 | if (epoxy_has_gl_extension("GL_ARB_texture_rg") && | ||
| 97 | diff --git a/glamor/glamor_picture.c b/glamor/glamor_picture.c | ||
| 98 | index e6d387d42..ed2decc83 100644 | ||
| 99 | --- a/glamor/glamor_picture.c | ||
| 100 | +++ b/glamor/glamor_picture.c | ||
| 101 | @@ -90,7 +90,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen, | ||
| 102 | |||
| 103 | case PICT_b8g8r8x8: | ||
| 104 | case PICT_b8g8r8a8: | ||
| 105 | - if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) { | ||
| 106 | + if (!glamor_priv->is_gles) { | ||
| 107 | *tex_format = GL_BGRA; | ||
| 108 | *tex_type = GL_UNSIGNED_INT_8_8_8_8; | ||
| 109 | } else { | ||
| 110 | @@ -109,7 +109,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen, | ||
| 111 | |||
| 112 | case PICT_x8r8g8b8: | ||
| 113 | case PICT_a8r8g8b8: | ||
| 114 | - if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) { | ||
| 115 | + if (!glamor_priv->is_gles) { | ||
| 116 | *tex_format = GL_BGRA; | ||
| 117 | *tex_type = GL_UNSIGNED_INT_8_8_8_8_REV; | ||
| 118 | } else { | ||
| 119 | @@ -128,7 +128,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen, | ||
| 120 | case PICT_x8b8g8r8: | ||
| 121 | case PICT_a8b8g8r8: | ||
| 122 | *tex_format = GL_RGBA; | ||
| 123 | - if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) { | ||
| 124 | + if (!glamor_priv->is_gles) { | ||
| 125 | *tex_type = GL_UNSIGNED_INT_8_8_8_8_REV; | ||
| 126 | } else { | ||
| 127 | *tex_format = GL_RGBA; | ||
| 128 | @@ -141,7 +141,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen, | ||
| 129 | |||
| 130 | case PICT_x2r10g10b10: | ||
| 131 | case PICT_a2r10g10b10: | ||
| 132 | - if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) { | ||
| 133 | + if (!glamor_priv->is_gles) { | ||
| 134 | *tex_format = GL_BGRA; | ||
| 135 | *tex_type = GL_UNSIGNED_INT_2_10_10_10_REV; | ||
| 136 | } else { | ||
| 137 | @@ -151,7 +151,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen, | ||
| 138 | |||
| 139 | case PICT_x2b10g10r10: | ||
| 140 | case PICT_a2b10g10r10: | ||
| 141 | - if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) { | ||
| 142 | + if (!glamor_priv->is_gles) { | ||
| 143 | *tex_format = GL_RGBA; | ||
| 144 | *tex_type = GL_UNSIGNED_INT_2_10_10_10_REV; | ||
| 145 | } else { | ||
| 146 | @@ -165,7 +165,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen, | ||
| 147 | break; | ||
| 148 | case PICT_b5g6r5: | ||
| 149 | *tex_format = GL_RGB; | ||
| 150 | - if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) { | ||
| 151 | + if (!glamor_priv->is_gles) { | ||
| 152 | *tex_type = GL_UNSIGNED_SHORT_5_6_5_REV; | ||
| 153 | } else { | ||
| 154 | *tex_type = GL_UNSIGNED_SHORT_5_6_5; | ||
| 155 | @@ -177,7 +177,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen, | ||
| 156 | case PICT_x1b5g5r5: | ||
| 157 | case PICT_a1b5g5r5: | ||
| 158 | *tex_format = GL_RGBA; | ||
| 159 | - if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) { | ||
| 160 | + if (!glamor_priv->is_gles) { | ||
| 161 | *tex_type = GL_UNSIGNED_SHORT_1_5_5_5_REV; | ||
| 162 | } else { | ||
| 163 | return FALSE; | ||
| 164 | @@ -186,7 +186,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen, | ||
| 165 | |||
| 166 | case PICT_x1r5g5b5: | ||
| 167 | case PICT_a1r5g5b5: | ||
| 168 | - if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) { | ||
| 169 | + if (!glamor_priv->is_gles) { | ||
| 170 | *tex_format = GL_BGRA; | ||
| 171 | *tex_type = GL_UNSIGNED_SHORT_1_5_5_5_REV; | ||
| 172 | } else { | ||
| 173 | @@ -201,7 +201,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen, | ||
| 174 | |||
| 175 | case PICT_x4r4g4b4: | ||
| 176 | case PICT_a4r4g4b4: | ||
| 177 | - if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) { | ||
| 178 | + if (!glamor_priv->is_gles) { | ||
| 179 | *tex_format = GL_BGRA; | ||
| 180 | *tex_type = GL_UNSIGNED_SHORT_4_4_4_4_REV; | ||
| 181 | } else { | ||
| 182 | @@ -213,7 +213,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen, | ||
| 183 | |||
| 184 | case PICT_x4b4g4r4: | ||
| 185 | case PICT_a4b4g4r4: | ||
| 186 | - if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) { | ||
| 187 | + if (!glamor_priv->is_gles) { | ||
| 188 | *tex_format = GL_RGBA; | ||
| 189 | *tex_type = GL_UNSIGNED_SHORT_4_4_4_4_REV; | ||
| 190 | } else { | ||
| 191 | @@ -335,7 +335,7 @@ glamor_upload_picture_to_texture(PicturePtr picture) | ||
| 192 | stride = pixman_image_get_stride(converted_image); | ||
| 193 | } | ||
| 194 | |||
| 195 | - if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) | ||
| 196 | + if (!glamor_priv->is_gles) | ||
| 197 | iformat = gl_iformat_for_pixmap(pixmap); | ||
| 198 | else | ||
| 199 | iformat = format; | ||
| 200 | diff --git a/glamor/glamor_pixmap.c b/glamor/glamor_pixmap.c | ||
| 201 | index 166bde509..9aa169cdc 100644 | ||
| 202 | --- a/glamor/glamor_pixmap.c | ||
| 203 | +++ b/glamor/glamor_pixmap.c | ||
| 204 | @@ -124,7 +124,7 @@ glamor_set_alu(ScreenPtr screen, unsigned char alu) | ||
| 205 | { | ||
| 206 | glamor_screen_private *glamor_priv = glamor_get_screen_private(screen); | ||
| 207 | |||
| 208 | - if (glamor_priv->gl_flavor == GLAMOR_GL_ES2) { | ||
| 209 | + if (glamor_priv->is_gles) { | ||
| 210 | if (alu != GXcopy) | ||
| 211 | return FALSE; | ||
| 212 | else | ||
| 213 | diff --git a/glamor/glamor_priv.h b/glamor/glamor_priv.h | ||
| 214 | index a87caec9b..8e8433ff3 100644 | ||
| 215 | --- a/glamor/glamor_priv.h | ||
| 216 | +++ b/glamor/glamor_priv.h | ||
| 217 | @@ -155,11 +155,6 @@ enum gradient_shader { | ||
| 218 | struct glamor_screen_private; | ||
| 219 | struct glamor_pixmap_private; | ||
| 220 | |||
| 221 | -enum glamor_gl_flavor { | ||
| 222 | - GLAMOR_GL_DESKTOP, // OPENGL API | ||
| 223 | - GLAMOR_GL_ES2 // OPENGL ES2.0 API | ||
| 224 | -}; | ||
| 225 | - | ||
| 226 | #define GLAMOR_COMPOSITE_VBO_VERT_CNT (64*1024) | ||
| 227 | |||
| 228 | struct glamor_saved_procs { | ||
| 229 | @@ -185,7 +180,7 @@ struct glamor_saved_procs { | ||
| 230 | }; | ||
| 231 | |||
| 232 | typedef struct glamor_screen_private { | ||
| 233 | - enum glamor_gl_flavor gl_flavor; | ||
| 234 | + Bool is_gles; | ||
| 235 | int glsl_version; | ||
| 236 | Bool has_pack_invert; | ||
| 237 | Bool has_fbo_blit; | ||
| 238 | diff --git a/glamor/glamor_program.c b/glamor/glamor_program.c | ||
| 239 | index 830deb38b..b0a9d07a4 100644 | ||
| 240 | --- a/glamor/glamor_program.c | ||
| 241 | +++ b/glamor/glamor_program.c | ||
| 242 | @@ -459,7 +459,7 @@ glamor_set_blend(CARD8 op, glamor_program_alpha alpha, PicturePtr dst) | ||
| 243 | break; | ||
| 244 | } | ||
| 245 | |||
| 246 | - if (glamor_priv->gl_flavor != GLAMOR_GL_ES2) | ||
| 247 | + if (!glamor_priv->is_gles) | ||
| 248 | glDisable(GL_COLOR_LOGIC_OP); | ||
| 249 | |||
| 250 | if (op == PictOpSrc) | ||
| 251 | diff --git a/glamor/glamor_render.c b/glamor/glamor_render.c | ||
| 252 | index 6db6bfbc3..d3859e4d1 100644 | ||
| 253 | --- a/glamor/glamor_render.c | ||
| 254 | +++ b/glamor/glamor_render.c | ||
| 255 | @@ -1091,7 +1091,7 @@ glamor_composite_set_shader_blend(glamor_screen_private *glamor_priv, | ||
| 256 | } | ||
| 257 | } | ||
| 258 | |||
| 259 | - if (glamor_priv->gl_flavor != GLAMOR_GL_ES2) | ||
| 260 | + if (!glamor_priv->is_gles) | ||
| 261 | glDisable(GL_COLOR_LOGIC_OP); | ||
| 262 | |||
| 263 | if (op_info->source_blend == GL_ONE && op_info->dest_blend == GL_ZERO) { | ||
| 264 | diff --git a/glamor/glamor_utils.h b/glamor/glamor_utils.h | ||
| 265 | index 8a147ca7e..cbb808294 100644 | ||
| 266 | --- a/glamor/glamor_utils.h | ||
| 267 | +++ b/glamor/glamor_utils.h | ||
| 268 | @@ -615,13 +615,13 @@ gl_iformat_for_pixmap(PixmapPtr pixmap) | ||
| 269 | glamor_get_screen_private((pixmap)->drawable.pScreen); | ||
| 270 | glamor_pixmap_private *pixmap_priv = glamor_get_pixmap_private(pixmap); | ||
| 271 | |||
| 272 | - if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP && | ||
| 273 | + if (!glamor_priv->is_gles && | ||
| 274 | ((pixmap)->drawable.depth == 1 || (pixmap)->drawable.depth == 8)) { | ||
| 275 | return glamor_priv->one_channel_format; | ||
| 276 | - } else if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP && | ||
| 277 | + } else if (!glamor_priv->is_gles && | ||
| 278 | (pixmap)->drawable.depth == 16 && pixmap_priv->is_cbcr) { | ||
| 279 | return GL_RG; | ||
| 280 | - } else if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP && | ||
| 281 | + } else if (!glamor_priv->is_gles && | ||
| 282 | (pixmap)->drawable.depth == 30) { | ||
| 283 | return GL_RGB10_A2; | ||
| 284 | } else { | ||
| 285 | -- | ||
| 286 | 2.17.1 | ||
| 287 | |||
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0008-glamor-Introduce-a-central-place-for-our-pixmap-form.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0008-glamor-Introduce-a-central-place-for-our-pixmap-form.patch deleted file mode 100644 index dd82340a6..000000000 --- a/recipes-graphics/xorg-xserver/xserver-xorg/0008-glamor-Introduce-a-central-place-for-our-pixmap-form.patch +++ /dev/null | |||
| @@ -1,669 +0,0 @@ | |||
| 1 | From b75296bee6ab3578f3a13cfb6de5d77ec02b9047 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Eric Anholt <eric@anholt.net> | ||
| 3 | Date: Tue, 26 Mar 2019 15:10:49 -0700 | ||
| 4 | Subject: [PATCH 8/8] glamor: Introduce a central place for our pixmap | ||
| 5 | format/type handling. | ||
| 6 | |||
| 7 | We had various helper functions trying to come up with the | ||
| 8 | internalformat/format/type/render formats for pixmaps, and it's much | ||
| 9 | nicer to just detect what those should be once at startup. This gives | ||
| 10 | us a chance to do the right thing for GLES. | ||
| 11 | |||
| 12 | It also, notably, fixes our format/type for depth 15 and 16 setup for | ||
| 13 | desktop GL, so that we actually allocate 16bpp (GL_RGB/565) on most | ||
| 14 | drivers instead of 32bpp (GL_RGB/UBYTE). | ||
| 15 | |||
| 16 | GLES still has regressions over desktop (2 regressions in llvmpipe | ||
| 17 | XTS, many in rendercheck), but I think this is a good baseline. | ||
| 18 | |||
| 19 | Upstream-Status: Backport | ||
| 20 | Signed-off-by: Eric Anholt <eric@anholt.net> | ||
| 21 | --- | ||
| 22 | glamor/glamor.c | 167 ++++++++++++++++++++++++++++++++++++-- | ||
| 23 | glamor/glamor_fbo.c | 16 ++-- | ||
| 24 | glamor/glamor_picture.c | 7 +- | ||
| 25 | glamor/glamor_priv.h | 22 ++++- | ||
| 26 | glamor/glamor_render.c | 7 +- | ||
| 27 | glamor/glamor_spans.c | 14 ++-- | ||
| 28 | glamor/glamor_transfer.c | 56 ++----------- | ||
| 29 | glamor/glamor_transfer.h | 3 - | ||
| 30 | glamor/glamor_transform.c | 5 +- | ||
| 31 | glamor/glamor_utils.h | 57 ------------- | ||
| 32 | 10 files changed, 209 insertions(+), 145 deletions(-) | ||
| 33 | |||
| 34 | diff --git a/glamor/glamor.c b/glamor/glamor.c | ||
| 35 | index 019edbbb1..3450113e0 100644 | ||
| 36 | --- a/glamor/glamor.c | ||
| 37 | +++ b/glamor/glamor.c | ||
| 38 | @@ -212,7 +212,7 @@ glamor_create_pixmap(ScreenPtr screen, int w, int h, int depth, | ||
| 39 | w <= glamor_priv->glyph_max_dim && | ||
| 40 | h <= glamor_priv->glyph_max_dim) | ||
| 41 | || (w == 0 && h == 0) | ||
| 42 | - || !glamor_check_pixmap_fbo_depth(depth))) | ||
| 43 | + || !glamor_priv->formats[depth].format)) | ||
| 44 | return fbCreatePixmap(screen, w, h, depth, usage); | ||
| 45 | else | ||
| 46 | pixmap = fbCreatePixmap(screen, 0, 0, depth, usage); | ||
| 47 | @@ -440,6 +440,165 @@ glamor_setup_debug_output(ScreenPtr screen) | ||
| 48 | glEnable(GL_DEBUG_OUTPUT); | ||
| 49 | } | ||
| 50 | |||
| 51 | +const struct glamor_format * | ||
| 52 | +glamor_format_for_pixmap(PixmapPtr pixmap) | ||
| 53 | +{ | ||
| 54 | + ScreenPtr pScreen = pixmap->drawable.pScreen; | ||
| 55 | + glamor_screen_private *glamor_priv = glamor_get_screen_private(pScreen); | ||
| 56 | + glamor_pixmap_private *pixmap_priv = glamor_get_pixmap_private(pixmap); | ||
| 57 | + | ||
| 58 | + if (pixmap_priv->is_cbcr) | ||
| 59 | + return &glamor_priv->cbcr_format; | ||
| 60 | + else | ||
| 61 | + return &glamor_priv->formats[pixmap->drawable.depth]; | ||
| 62 | +} | ||
| 63 | + | ||
| 64 | +static void | ||
| 65 | +glamor_add_format(ScreenPtr screen, int depth, CARD32 render_format, | ||
| 66 | + GLenum internalformat, GLenum format, GLenum type) | ||
| 67 | +{ | ||
| 68 | + glamor_screen_private *glamor_priv = glamor_get_screen_private(screen); | ||
| 69 | + struct glamor_format *f = &glamor_priv->formats[depth]; | ||
| 70 | + | ||
| 71 | + /* If we're trying to run on GLES, make sure that we get the read | ||
| 72 | + * formats that we're expecting, since glamor_transfer relies on | ||
| 73 | + * them matching to get data back out. To avoid this limitation, we | ||
| 74 | + * would need to have a more general glReadPixels() path in | ||
| 75 | + * glamor_transfer that re-encoded the bits to the pixel format that | ||
| 76 | + * we intended after. | ||
| 77 | + * | ||
| 78 | + * Note that we can't just create a pixmap because we're in | ||
| 79 | + * screeninit. | ||
| 80 | + */ | ||
| 81 | + if (glamor_priv->is_gles) { | ||
| 82 | + unsigned fbo, tex; | ||
| 83 | + int read_format, read_type; | ||
| 84 | + GLenum status; | ||
| 85 | + | ||
| 86 | + glGenTextures(1, &tex); | ||
| 87 | + glBindTexture(GL_TEXTURE_2D, tex); | ||
| 88 | + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); | ||
| 89 | + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); | ||
| 90 | + glTexImage2D(GL_TEXTURE_2D, 0, internalformat, 1, 1, 0, | ||
| 91 | + format, type, NULL); | ||
| 92 | + | ||
| 93 | + glGenFramebuffers(1, &fbo); | ||
| 94 | + glBindFramebuffer(GL_FRAMEBUFFER, fbo); | ||
| 95 | + glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, | ||
| 96 | + GL_TEXTURE_2D, tex, 0); | ||
| 97 | + status = glCheckFramebufferStatus(GL_FRAMEBUFFER); | ||
| 98 | + if (status != GL_FRAMEBUFFER_COMPLETE) { | ||
| 99 | + ErrorF("glamor: Test fbo for depth %d incomplete. " | ||
| 100 | + "Falling back to software.\n", depth); | ||
| 101 | + glDeleteTextures(1, &tex); | ||
| 102 | + glDeleteFramebuffers(1, &fbo); | ||
| 103 | + return; | ||
| 104 | + } | ||
| 105 | + | ||
| 106 | + glGetIntegerv(GL_IMPLEMENTATION_COLOR_READ_FORMAT, &read_format); | ||
| 107 | + glGetIntegerv(GL_IMPLEMENTATION_COLOR_READ_TYPE, &read_type); | ||
| 108 | + | ||
| 109 | + glDeleteTextures(1, &tex); | ||
| 110 | + glDeleteFramebuffers(1, &fbo); | ||
| 111 | + | ||
| 112 | + if (format != read_format || type != read_type) { | ||
| 113 | + ErrorF("glamor: Implementation returned 0x%x/0x%x read format/type " | ||
| 114 | + "for depth %d, expected 0x%x/0x%x. " | ||
| 115 | + "Falling back to software.\n", | ||
| 116 | + read_format, read_type, depth, format, type); | ||
| 117 | + return; | ||
| 118 | + } | ||
| 119 | + } | ||
| 120 | + | ||
| 121 | + f->depth = depth; | ||
| 122 | + f->render_format = render_format; | ||
| 123 | + f->internalformat = internalformat; | ||
| 124 | + f->format = format; | ||
| 125 | + f->type = type; | ||
| 126 | +} | ||
| 127 | + | ||
| 128 | +/* Set up the GL format/types that glamor will use for the various depths | ||
| 129 | + * | ||
| 130 | + * X11's pixel data doesn't have channels, but to store our data in GL | ||
| 131 | + * we have to pick some sort of format to move X11 pixel data in and | ||
| 132 | + * out with in glamor_transfer.c. For X11 core operations, other than | ||
| 133 | + * GL logic ops (non-GXcopy GC ops) what the driver chooses internally | ||
| 134 | + * doesn't matter as long as it doesn't drop any bits (we expect them | ||
| 135 | + * to generally expand, if anything). For Render, we can expect | ||
| 136 | + * clients to tend to render with PictFormats matching our channel | ||
| 137 | + * layouts here since ultimately X11 pixels tend to end up on the | ||
| 138 | + * screen. The render implementation will fall back to fb if the | ||
| 139 | + * channels don't match. | ||
| 140 | + * | ||
| 141 | + * Note that these formats don't affect what glamor_egl.c or | ||
| 142 | + * Xwayland's EGL layer choose for surfaces exposed through DRI or | ||
| 143 | + * scanout. For now, those layers need to match what we're choosing | ||
| 144 | + * here, or channels will end up swizzled around. Similarly, the | ||
| 145 | + * driver's visual masks also need to match what we're doing here. | ||
| 146 | + */ | ||
| 147 | +static void | ||
| 148 | +glamor_setup_formats(ScreenPtr screen) | ||
| 149 | +{ | ||
| 150 | + glamor_screen_private *glamor_priv = glamor_get_screen_private(screen); | ||
| 151 | + | ||
| 152 | + /* Prefer r8 textures since they're required by GLES3 and core, | ||
| 153 | + * only falling back to a8 if we can't do them. | ||
| 154 | + */ | ||
| 155 | + if (glamor_priv->is_gles || epoxy_has_gl_extension("GL_ARB_texture_rg")) { | ||
| 156 | + glamor_add_format(screen, 8, PICT_a8, | ||
| 157 | + GL_R8, GL_RED, GL_UNSIGNED_BYTE); | ||
| 158 | + } else { | ||
| 159 | + glamor_add_format(screen, 8, PICT_a8, | ||
| 160 | + GL_ALPHA, GL_ALPHA, GL_UNSIGNED_BYTE); | ||
| 161 | + } | ||
| 162 | + | ||
| 163 | + if (glamor_priv->is_gles) { | ||
| 164 | + /* For 15bpp, GLES supports format/type RGBA/5551, rather than | ||
| 165 | + * bgra/1555_rev. GL_EXT_bgra lets the impl say the color | ||
| 166 | + * read format/type is bgra/1555 even if we had to create it | ||
| 167 | + * with rgba/5551, with Mesa does. That means we can't use | ||
| 168 | + * the same format/type for TexSubImage and readpixels. | ||
| 169 | + * | ||
| 170 | + * Instead, just store 16 bits using the trusted 565 path, and | ||
| 171 | + * disable render accel for now. | ||
| 172 | + */ | ||
| 173 | + glamor_add_format(screen, 15, PICT_x1r5g5b5, | ||
| 174 | + GL_RGB5_A1, GL_RGBA, GL_UNSIGNED_SHORT_5_5_5_1); | ||
| 175 | + } else { | ||
| 176 | + glamor_add_format(screen, 15, PICT_x1r5g5b5, | ||
| 177 | + GL_RGBA, GL_BGRA, GL_UNSIGNED_SHORT_1_5_5_5_REV); | ||
| 178 | + } | ||
| 179 | + | ||
| 180 | + glamor_add_format(screen, 16, PICT_r5g6b5, | ||
| 181 | + GL_RGB, GL_RGB, GL_UNSIGNED_SHORT_5_6_5); | ||
| 182 | + | ||
| 183 | + if (glamor_priv->is_gles) { | ||
| 184 | + assert(X_BYTE_ORDER == X_LITTLE_ENDIAN); | ||
| 185 | + glamor_add_format(screen, 24, PICT_x8b8g8r8, | ||
| 186 | + GL_RGBA8, GL_RGBA, GL_UNSIGNED_BYTE); | ||
| 187 | + glamor_add_format(screen, 32, PICT_a8b8g8r8, | ||
| 188 | + GL_RGBA8, GL_RGBA, GL_UNSIGNED_BYTE); | ||
| 189 | + } else { | ||
| 190 | + glamor_add_format(screen, 24, PICT_x8r8g8b8, | ||
| 191 | + GL_RGBA, GL_BGRA, GL_UNSIGNED_INT_8_8_8_8_REV); | ||
| 192 | + glamor_add_format(screen, 32, PICT_a8r8g8b8, | ||
| 193 | + GL_RGBA, GL_BGRA, GL_UNSIGNED_INT_8_8_8_8_REV); | ||
| 194 | + } | ||
| 195 | + | ||
| 196 | + if (glamor_priv->is_gles) { | ||
| 197 | + glamor_add_format(screen, 30, PICT_x2b10g10r10, | ||
| 198 | + GL_RGB10_A2, GL_RGBA, GL_UNSIGNED_INT_2_10_10_10_REV); | ||
| 199 | + } else { | ||
| 200 | + glamor_add_format(screen, 30, PICT_x2r10g10b10, | ||
| 201 | + GL_RGB10_A2, GL_BGRA, GL_UNSIGNED_INT_2_10_10_10_REV); | ||
| 202 | + } | ||
| 203 | + | ||
| 204 | + glamor_priv->cbcr_format.depth = 16; | ||
| 205 | + glamor_priv->cbcr_format.internalformat = GL_RG8; | ||
| 206 | + glamor_priv->cbcr_format.format = GL_RG; | ||
| 207 | + glamor_priv->cbcr_format.type = GL_UNSIGNED_BYTE; | ||
| 208 | +} | ||
| 209 | + | ||
| 210 | /** Set up glamor for an already-configured GL context. */ | ||
| 211 | Bool | ||
| 212 | glamor_init(ScreenPtr screen, unsigned int flags) | ||
| 213 | @@ -665,11 +824,7 @@ glamor_init(ScreenPtr screen, unsigned int flags) | ||
| 214 | (epoxy_has_gl_extension("GL_ARB_texture_swizzle") || | ||
| 215 | (glamor_priv->is_gles && gl_version >= 30)); | ||
| 216 | |||
| 217 | - glamor_priv->one_channel_format = GL_ALPHA; | ||
| 218 | - if (epoxy_has_gl_extension("GL_ARB_texture_rg") && | ||
| 219 | - glamor_priv->has_texture_swizzle) { | ||
| 220 | - glamor_priv->one_channel_format = GL_RED; | ||
| 221 | - } | ||
| 222 | + glamor_setup_formats(screen); | ||
| 223 | |||
| 224 | glamor_set_debug_level(&glamor_debug_level); | ||
| 225 | |||
| 226 | diff --git a/glamor/glamor_fbo.c b/glamor/glamor_fbo.c | ||
| 227 | index 75f7e2baa..dfb3f754d 100644 | ||
| 228 | --- a/glamor/glamor_fbo.c | ||
| 229 | +++ b/glamor/glamor_fbo.c | ||
| 230 | @@ -97,7 +97,7 @@ glamor_pixmap_fbo * | ||
| 231 | glamor_create_fbo_from_tex(glamor_screen_private *glamor_priv, | ||
| 232 | PixmapPtr pixmap, int w, int h, GLint tex, int flag) | ||
| 233 | { | ||
| 234 | - GLenum format = gl_iformat_for_pixmap(pixmap); | ||
| 235 | + const struct glamor_format *f = glamor_format_for_pixmap(pixmap); | ||
| 236 | glamor_pixmap_fbo *fbo; | ||
| 237 | |||
| 238 | fbo = calloc(1, sizeof(*fbo)); | ||
| 239 | @@ -107,7 +107,7 @@ glamor_create_fbo_from_tex(glamor_screen_private *glamor_priv, | ||
| 240 | fbo->tex = tex; | ||
| 241 | fbo->width = w; | ||
| 242 | fbo->height = h; | ||
| 243 | - fbo->is_red = format == GL_RED; | ||
| 244 | + fbo->is_red = f->format == GL_RED; | ||
| 245 | |||
| 246 | if (flag != GLAMOR_CREATE_FBO_NO_FBO) { | ||
| 247 | if (glamor_pixmap_ensure_fb(glamor_priv, fbo) != 0) { | ||
| 248 | @@ -123,23 +123,19 @@ static int | ||
| 249 | _glamor_create_tex(glamor_screen_private *glamor_priv, | ||
| 250 | PixmapPtr pixmap, int w, int h) | ||
| 251 | { | ||
| 252 | - GLenum iformat = gl_iformat_for_pixmap(pixmap); | ||
| 253 | - GLenum format = iformat; | ||
| 254 | + const struct glamor_format *f = glamor_format_for_pixmap(pixmap); | ||
| 255 | unsigned int tex; | ||
| 256 | |||
| 257 | - if (format == GL_RGB10_A2) | ||
| 258 | - format = GL_RGBA; | ||
| 259 | - | ||
| 260 | glamor_make_current(glamor_priv); | ||
| 261 | glGenTextures(1, &tex); | ||
| 262 | glBindTexture(GL_TEXTURE_2D, tex); | ||
| 263 | glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); | ||
| 264 | glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); | ||
| 265 | - if (format == glamor_priv->one_channel_format && format == GL_RED) | ||
| 266 | + if (f->format == GL_RED) | ||
| 267 | glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_SWIZZLE_A, GL_RED); | ||
| 268 | glamor_priv->suppress_gl_out_of_memory_logging = true; | ||
| 269 | - glTexImage2D(GL_TEXTURE_2D, 0, iformat, w, h, 0, | ||
| 270 | - format, GL_UNSIGNED_BYTE, NULL); | ||
| 271 | + glTexImage2D(GL_TEXTURE_2D, 0, f->internalformat, w, h, 0, | ||
| 272 | + f->format, f->type, NULL); | ||
| 273 | glamor_priv->suppress_gl_out_of_memory_logging = false; | ||
| 274 | |||
| 275 | if (glGetError() == GL_OUT_OF_MEMORY) { | ||
| 276 | diff --git a/glamor/glamor_picture.c b/glamor/glamor_picture.c | ||
| 277 | index ed2decc83..33b3bebd9 100644 | ||
| 278 | --- a/glamor/glamor_picture.c | ||
| 279 | +++ b/glamor/glamor_picture.c | ||
| 280 | @@ -83,7 +83,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen, | ||
| 281 | |||
| 282 | switch (format) { | ||
| 283 | case PICT_a1: | ||
| 284 | - *tex_format = glamor_priv->one_channel_format; | ||
| 285 | + *tex_format = glamor_priv->formats[1].format; | ||
| 286 | *tex_type = GL_UNSIGNED_BYTE; | ||
| 287 | *temp_format = PICT_a8; | ||
| 288 | break; | ||
| 289 | @@ -195,7 +195,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen, | ||
| 290 | break; | ||
| 291 | |||
| 292 | case PICT_a8: | ||
| 293 | - *tex_format = glamor_priv->one_channel_format; | ||
| 294 | + *tex_format = glamor_priv->formats[8].format; | ||
| 295 | *tex_type = GL_UNSIGNED_BYTE; | ||
| 296 | break; | ||
| 297 | |||
| 298 | @@ -286,6 +286,7 @@ glamor_upload_picture_to_texture(PicturePtr picture) | ||
| 299 | Bool ret = TRUE; | ||
| 300 | Bool needs_swizzle; | ||
| 301 | pixman_image_t *converted_image = NULL; | ||
| 302 | + const struct glamor_format *f = glamor_format_for_pixmap(pixmap); | ||
| 303 | |||
| 304 | assert(glamor_pixmap_is_memory(pixmap)); | ||
| 305 | assert(!pixmap_priv->fbo); | ||
| 306 | @@ -336,7 +337,7 @@ glamor_upload_picture_to_texture(PicturePtr picture) | ||
| 307 | } | ||
| 308 | |||
| 309 | if (!glamor_priv->is_gles) | ||
| 310 | - iformat = gl_iformat_for_pixmap(pixmap); | ||
| 311 | + iformat = f->internalformat; | ||
| 312 | else | ||
| 313 | iformat = format; | ||
| 314 | |||
| 315 | diff --git a/glamor/glamor_priv.h b/glamor/glamor_priv.h | ||
| 316 | index 8e8433ff3..b8e2b932e 100644 | ||
| 317 | --- a/glamor/glamor_priv.h | ||
| 318 | +++ b/glamor/glamor_priv.h | ||
| 319 | @@ -157,6 +157,21 @@ struct glamor_pixmap_private; | ||
| 320 | |||
| 321 | #define GLAMOR_COMPOSITE_VBO_VERT_CNT (64*1024) | ||
| 322 | |||
| 323 | +struct glamor_format { | ||
| 324 | + /** X Server's "depth" value */ | ||
| 325 | + int depth; | ||
| 326 | + /** GL internalformat for creating textures of this type */ | ||
| 327 | + GLenum internalformat; | ||
| 328 | + /** GL format transferring pixels in/out of textures of this type. */ | ||
| 329 | + GLenum format; | ||
| 330 | + /** GL type transferring pixels in/out of textures of this type. */ | ||
| 331 | + GLenum type; | ||
| 332 | + /* Render PICT_* matching GL's channel layout for pixels | ||
| 333 | + * transferred using format/type. | ||
| 334 | + */ | ||
| 335 | + CARD32 render_format; | ||
| 336 | +}; | ||
| 337 | + | ||
| 338 | struct glamor_saved_procs { | ||
| 339 | CloseScreenProcPtr close_screen; | ||
| 340 | CreateGCProcPtr create_gc; | ||
| 341 | @@ -199,7 +214,8 @@ typedef struct glamor_screen_private { | ||
| 342 | Bool can_copyplane; | ||
| 343 | int max_fbo_size; | ||
| 344 | |||
| 345 | - GLuint one_channel_format; | ||
| 346 | + struct glamor_format formats[33]; | ||
| 347 | + struct glamor_format cbcr_format; | ||
| 348 | |||
| 349 | /* glamor point shader */ | ||
| 350 | glamor_program point_prog; | ||
| 351 | @@ -537,6 +553,8 @@ void glamor_pixmap_destroy_fbo(PixmapPtr pixmap); | ||
| 352 | Bool glamor_pixmap_fbo_fixup(ScreenPtr screen, PixmapPtr pixmap); | ||
| 353 | void glamor_pixmap_clear_fbo(glamor_screen_private *glamor_priv, glamor_pixmap_fbo *fbo); | ||
| 354 | |||
| 355 | +const struct glamor_format *glamor_format_for_pixmap(PixmapPtr pixmap); | ||
| 356 | + | ||
| 357 | /* Return whether 'picture' is alpha-only */ | ||
| 358 | static inline Bool glamor_picture_is_alpha(PicturePtr picture) | ||
| 359 | { | ||
| 360 | @@ -549,7 +567,7 @@ glamor_picture_red_is_alpha(PicturePtr picture) | ||
| 361 | { | ||
| 362 | /* True when the picture is alpha only and the screen is using GL_RED for alpha pictures */ | ||
| 363 | return glamor_picture_is_alpha(picture) && | ||
| 364 | - glamor_get_screen_private(picture->pDrawable->pScreen)->one_channel_format == GL_RED; | ||
| 365 | + glamor_get_screen_private(picture->pDrawable->pScreen)->formats[8].format == GL_RED; | ||
| 366 | } | ||
| 367 | |||
| 368 | void glamor_bind_texture(glamor_screen_private *glamor_priv, | ||
| 369 | diff --git a/glamor/glamor_render.c b/glamor/glamor_render.c | ||
| 370 | index d3859e4d1..a8dc3924b 100644 | ||
| 371 | --- a/glamor/glamor_render.c | ||
| 372 | +++ b/glamor/glamor_render.c | ||
| 373 | @@ -772,12 +772,15 @@ static Bool | ||
| 374 | glamor_render_format_is_supported(PicturePtr picture) | ||
| 375 | { | ||
| 376 | PictFormatShort storage_format; | ||
| 377 | + glamor_screen_private *glamor_priv; | ||
| 378 | |||
| 379 | /* Source-only pictures should always work */ | ||
| 380 | if (!picture->pDrawable) | ||
| 381 | return TRUE; | ||
| 382 | |||
| 383 | - storage_format = format_for_depth(picture->pDrawable->depth); | ||
| 384 | + glamor_priv = glamor_get_screen_private(picture->pDrawable->pScreen); | ||
| 385 | + storage_format = | ||
| 386 | + glamor_priv->formats[picture->pDrawable->depth].render_format; | ||
| 387 | |||
| 388 | switch (picture->format) { | ||
| 389 | case PICT_x2r10g10b10: | ||
| 390 | @@ -898,7 +901,7 @@ glamor_composite_choose_shader(CARD8 op, | ||
| 391 | } | ||
| 392 | |||
| 393 | if (dest_pixmap->drawable.bitsPerPixel <= 8 && | ||
| 394 | - glamor_priv->one_channel_format == GL_RED) { | ||
| 395 | + glamor_priv->formats[8].format == GL_RED) { | ||
| 396 | key.dest_swizzle = SHADER_DEST_SWIZZLE_ALPHA_TO_RED; | ||
| 397 | } else { | ||
| 398 | key.dest_swizzle = SHADER_DEST_SWIZZLE_DEFAULT; | ||
| 399 | diff --git a/glamor/glamor_spans.c b/glamor/glamor_spans.c | ||
| 400 | index b3c028d67..b5f297d2f 100644 | ||
| 401 | --- a/glamor/glamor_spans.c | ||
| 402 | +++ b/glamor/glamor_spans.c | ||
| 403 | @@ -187,9 +187,8 @@ glamor_get_spans_gl(DrawablePtr drawable, int wmax, | ||
| 404 | int box_index; | ||
| 405 | int n; | ||
| 406 | char *d; | ||
| 407 | - GLenum type; | ||
| 408 | - GLenum format; | ||
| 409 | int off_x, off_y; | ||
| 410 | + const struct glamor_format *f = glamor_format_for_pixmap(pixmap); | ||
| 411 | |||
| 412 | pixmap_priv = glamor_get_pixmap_private(pixmap); | ||
| 413 | if (!GLAMOR_PIXMAP_PRIV_HAS_FBO(pixmap_priv)) | ||
| 414 | @@ -197,8 +196,6 @@ glamor_get_spans_gl(DrawablePtr drawable, int wmax, | ||
| 415 | |||
| 416 | glamor_get_drawable_deltas(drawable, pixmap, &off_x, &off_y); | ||
| 417 | |||
| 418 | - glamor_format_for_pixmap(pixmap, &format, &type); | ||
| 419 | - | ||
| 420 | glamor_make_current(glamor_priv); | ||
| 421 | |||
| 422 | glamor_pixmap_loop(pixmap_priv, box_index) { | ||
| 423 | @@ -234,7 +231,8 @@ glamor_get_spans_gl(DrawablePtr drawable, int wmax, | ||
| 424 | if (y >= box->y2) | ||
| 425 | continue; | ||
| 426 | |||
| 427 | - glReadPixels(x1 - box->x1, y - box->y1, x2 - x1, 1, format, type, l); | ||
| 428 | + glReadPixels(x1 - box->x1, y - box->y1, x2 - x1, 1, | ||
| 429 | + f->format, f->type, l); | ||
| 430 | } | ||
| 431 | } | ||
| 432 | |||
| 433 | @@ -269,11 +267,10 @@ glamor_set_spans_gl(DrawablePtr drawable, GCPtr gc, char *src, | ||
| 434 | glamor_screen_private *glamor_priv = glamor_get_screen_private(screen); | ||
| 435 | PixmapPtr pixmap = glamor_get_drawable_pixmap(drawable); | ||
| 436 | glamor_pixmap_private *pixmap_priv; | ||
| 437 | + const struct glamor_format *f = glamor_format_for_pixmap(pixmap); | ||
| 438 | int box_index; | ||
| 439 | int n; | ||
| 440 | char *s; | ||
| 441 | - GLenum type; | ||
| 442 | - GLenum format; | ||
| 443 | int off_x, off_y; | ||
| 444 | |||
| 445 | pixmap_priv = glamor_get_pixmap_private(pixmap); | ||
| 446 | @@ -287,7 +284,6 @@ glamor_set_spans_gl(DrawablePtr drawable, GCPtr gc, char *src, | ||
| 447 | goto bail; | ||
| 448 | |||
| 449 | glamor_get_drawable_deltas(drawable, pixmap, &off_x, &off_y); | ||
| 450 | - glamor_format_for_pixmap(pixmap, &format, &type); | ||
| 451 | |||
| 452 | glamor_make_current(glamor_priv); | ||
| 453 | |||
| 454 | @@ -348,7 +344,7 @@ glamor_set_spans_gl(DrawablePtr drawable, GCPtr gc, char *src, | ||
| 455 | |||
| 456 | glTexSubImage2D(GL_TEXTURE_2D, 0, | ||
| 457 | x1 - box->x1, y1 - box->y1, x2 - x1, 1, | ||
| 458 | - format, type, | ||
| 459 | + f->format, f->type, | ||
| 460 | l); | ||
| 461 | } | ||
| 462 | s += PixmapBytePad(w, drawable->depth); | ||
| 463 | diff --git a/glamor/glamor_transfer.c b/glamor/glamor_transfer.c | ||
| 464 | index 215752d7b..e706e0fb4 100644 | ||
| 465 | --- a/glamor/glamor_transfer.c | ||
| 466 | +++ b/glamor/glamor_transfer.c | ||
| 467 | @@ -23,44 +23,6 @@ | ||
| 468 | #include "glamor_priv.h" | ||
| 469 | #include "glamor_transfer.h" | ||
| 470 | |||
| 471 | -/* XXX a kludge for now */ | ||
| 472 | -void | ||
| 473 | -glamor_format_for_pixmap(PixmapPtr pixmap, GLenum *format, GLenum *type) | ||
| 474 | -{ | ||
| 475 | - glamor_pixmap_private *priv = glamor_get_pixmap_private(pixmap); | ||
| 476 | - switch (pixmap->drawable.depth) { | ||
| 477 | - case 24: | ||
| 478 | - case 32: | ||
| 479 | - *format = GL_BGRA; | ||
| 480 | - *type = GL_UNSIGNED_INT_8_8_8_8_REV; | ||
| 481 | - break; | ||
| 482 | - case 30: | ||
| 483 | - *format = GL_BGRA; | ||
| 484 | - *type = GL_UNSIGNED_INT_2_10_10_10_REV; | ||
| 485 | - break; | ||
| 486 | - case 16: | ||
| 487 | - if (priv->is_cbcr) { | ||
| 488 | - *format = GL_RG; | ||
| 489 | - *type = GL_UNSIGNED_BYTE; | ||
| 490 | - } else { | ||
| 491 | - *format = GL_RGB; | ||
| 492 | - *type = GL_UNSIGNED_SHORT_5_6_5; | ||
| 493 | - } | ||
| 494 | - break; | ||
| 495 | - case 15: | ||
| 496 | - *format = GL_BGRA; | ||
| 497 | - *type = GL_UNSIGNED_SHORT_1_5_5_5_REV; | ||
| 498 | - break; | ||
| 499 | - case 8: | ||
| 500 | - *format = glamor_get_screen_private(pixmap->drawable.pScreen)->one_channel_format; | ||
| 501 | - *type = GL_UNSIGNED_BYTE; | ||
| 502 | - break; | ||
| 503 | - default: | ||
| 504 | - FatalError("Invalid pixmap depth %d\n", pixmap->drawable.depth); | ||
| 505 | - break; | ||
| 506 | - } | ||
| 507 | -} | ||
| 508 | - | ||
| 509 | /* | ||
| 510 | * Write a region of bits into a pixmap | ||
| 511 | */ | ||
| 512 | @@ -75,10 +37,7 @@ glamor_upload_boxes(PixmapPtr pixmap, BoxPtr in_boxes, int in_nbox, | ||
| 513 | glamor_pixmap_private *priv = glamor_get_pixmap_private(pixmap); | ||
| 514 | int box_index; | ||
| 515 | int bytes_per_pixel = pixmap->drawable.bitsPerPixel >> 3; | ||
| 516 | - GLenum type; | ||
| 517 | - GLenum format; | ||
| 518 | - | ||
| 519 | - glamor_format_for_pixmap(pixmap, &format, &type); | ||
| 520 | + const struct glamor_format *f = glamor_format_for_pixmap(pixmap); | ||
| 521 | |||
| 522 | glamor_make_current(glamor_priv); | ||
| 523 | |||
| 524 | @@ -116,14 +75,14 @@ glamor_upload_boxes(PixmapPtr pixmap, BoxPtr in_boxes, int in_nbox, | ||
| 525 | glTexSubImage2D(GL_TEXTURE_2D, 0, | ||
| 526 | x1 - box->x1, y1 - box->y1, | ||
| 527 | x2 - x1, y2 - y1, | ||
| 528 | - format, type, | ||
| 529 | + f->format, f->type, | ||
| 530 | bits + ofs); | ||
| 531 | } else { | ||
| 532 | for (; y1 < y2; y1++, ofs += byte_stride) | ||
| 533 | glTexSubImage2D(GL_TEXTURE_2D, 0, | ||
| 534 | x1 - box->x1, y1 - box->y1, | ||
| 535 | x2 - x1, 1, | ||
| 536 | - format, type, | ||
| 537 | + f->format, f->type, | ||
| 538 | bits + ofs); | ||
| 539 | } | ||
| 540 | } | ||
| 541 | @@ -178,10 +137,7 @@ glamor_download_boxes(PixmapPtr pixmap, BoxPtr in_boxes, int in_nbox, | ||
| 542 | glamor_pixmap_private *priv = glamor_get_pixmap_private(pixmap); | ||
| 543 | int box_index; | ||
| 544 | int bytes_per_pixel = pixmap->drawable.bitsPerPixel >> 3; | ||
| 545 | - GLenum type; | ||
| 546 | - GLenum format; | ||
| 547 | - | ||
| 548 | - glamor_format_for_pixmap(pixmap, &format, &type); | ||
| 549 | + const struct glamor_format *f = glamor_format_for_pixmap(pixmap); | ||
| 550 | |||
| 551 | glamor_make_current(glamor_priv); | ||
| 552 | |||
| 553 | @@ -216,10 +172,10 @@ glamor_download_boxes(PixmapPtr pixmap, BoxPtr in_boxes, int in_nbox, | ||
| 554 | |||
| 555 | if (glamor_priv->has_pack_subimage || | ||
| 556 | x2 - x1 == byte_stride / bytes_per_pixel) { | ||
| 557 | - glReadPixels(x1 - box->x1, y1 - box->y1, x2 - x1, y2 - y1, format, type, bits + ofs); | ||
| 558 | + glReadPixels(x1 - box->x1, y1 - box->y1, x2 - x1, y2 - y1, f->format, f->type, bits + ofs); | ||
| 559 | } else { | ||
| 560 | for (; y1 < y2; y1++, ofs += byte_stride) | ||
| 561 | - glReadPixels(x1 - box->x1, y1 - box->y1, x2 - x1, 1, format, type, bits + ofs); | ||
| 562 | + glReadPixels(x1 - box->x1, y1 - box->y1, x2 - x1, 1, f->format, f->type, bits + ofs); | ||
| 563 | } | ||
| 564 | } | ||
| 565 | } | ||
| 566 | diff --git a/glamor/glamor_transfer.h b/glamor/glamor_transfer.h | ||
| 567 | index de8186a70..a6137b3ff 100644 | ||
| 568 | --- a/glamor/glamor_transfer.h | ||
| 569 | +++ b/glamor/glamor_transfer.h | ||
| 570 | @@ -23,9 +23,6 @@ | ||
| 571 | #ifndef _GLAMOR_TRANSFER_H_ | ||
| 572 | #define _GLAMOR_TRANSFER_H_ | ||
| 573 | |||
| 574 | -void | ||
| 575 | -glamor_format_for_pixmap(PixmapPtr pixmap, GLenum *format, GLenum *type); | ||
| 576 | - | ||
| 577 | void | ||
| 578 | glamor_upload_boxes(PixmapPtr pixmap, BoxPtr in_boxes, int in_nbox, | ||
| 579 | int dx_src, int dy_src, | ||
| 580 | diff --git a/glamor/glamor_transform.c b/glamor/glamor_transform.c | ||
| 581 | index 2d5a634a8..348d00be1 100644 | ||
| 582 | --- a/glamor/glamor_transform.c | ||
| 583 | +++ b/glamor/glamor_transform.c | ||
| 584 | @@ -121,10 +121,9 @@ glamor_set_color_depth(ScreenPtr pScreen, | ||
| 585 | |||
| 586 | glamor_get_rgba_from_pixel(pixel, | ||
| 587 | &color[0], &color[1], &color[2], &color[3], | ||
| 588 | - format_for_depth(depth)); | ||
| 589 | + glamor_priv->formats[depth].render_format); | ||
| 590 | |||
| 591 | - if ((depth == 1 || depth == 8) && | ||
| 592 | - glamor_priv->one_channel_format == GL_RED) | ||
| 593 | + if ((depth <= 8) && glamor_priv->formats[8].format == GL_RED) | ||
| 594 | color[0] = color[3]; | ||
| 595 | |||
| 596 | glUniform4fv(uniform, 1, color); | ||
| 597 | diff --git a/glamor/glamor_utils.h b/glamor/glamor_utils.h | ||
| 598 | index cbb808294..651faf2fe 100644 | ||
| 599 | --- a/glamor/glamor_utils.h | ||
| 600 | +++ b/glamor/glamor_utils.h | ||
| 601 | @@ -570,65 +570,8 @@ | ||
| 602 | && (_w_) <= _glamor_->max_fbo_size \ | ||
| 603 | && (_h_) <= _glamor_->max_fbo_size) | ||
| 604 | |||
| 605 | -/* For 1bpp pixmap, we don't store it as texture. */ | ||
| 606 | -#define glamor_check_pixmap_fbo_depth(_depth_) ( \ | ||
| 607 | - _depth_ == 8 \ | ||
| 608 | - || _depth_ == 15 \ | ||
| 609 | - || _depth_ == 16 \ | ||
| 610 | - || _depth_ == 24 \ | ||
| 611 | - || _depth_ == 30 \ | ||
| 612 | - || _depth_ == 32) | ||
| 613 | - | ||
| 614 | #define GLAMOR_PIXMAP_PRIV_HAS_FBO(pixmap_priv) (pixmap_priv->gl_fbo == GLAMOR_FBO_NORMAL) | ||
| 615 | |||
| 616 | -/** | ||
| 617 | - * Borrow from uxa. | ||
| 618 | - */ | ||
| 619 | -static inline CARD32 | ||
| 620 | -format_for_depth(int depth) | ||
| 621 | -{ | ||
| 622 | - switch (depth) { | ||
| 623 | - case 1: | ||
| 624 | - return PICT_a1; | ||
| 625 | - case 4: | ||
| 626 | - return PICT_a4; | ||
| 627 | - case 8: | ||
| 628 | - return PICT_a8; | ||
| 629 | - case 15: | ||
| 630 | - return PICT_x1r5g5b5; | ||
| 631 | - case 16: | ||
| 632 | - return PICT_r5g6b5; | ||
| 633 | - default: | ||
| 634 | - case 24: | ||
| 635 | - return PICT_x8r8g8b8; | ||
| 636 | - case 30: | ||
| 637 | - return PICT_x2r10g10b10; | ||
| 638 | - case 32: | ||
| 639 | - return PICT_a8r8g8b8; | ||
| 640 | - } | ||
| 641 | -} | ||
| 642 | - | ||
| 643 | -static inline GLenum | ||
| 644 | -gl_iformat_for_pixmap(PixmapPtr pixmap) | ||
| 645 | -{ | ||
| 646 | - glamor_screen_private *glamor_priv = | ||
| 647 | - glamor_get_screen_private((pixmap)->drawable.pScreen); | ||
| 648 | - glamor_pixmap_private *pixmap_priv = glamor_get_pixmap_private(pixmap); | ||
| 649 | - | ||
| 650 | - if (!glamor_priv->is_gles && | ||
| 651 | - ((pixmap)->drawable.depth == 1 || (pixmap)->drawable.depth == 8)) { | ||
| 652 | - return glamor_priv->one_channel_format; | ||
| 653 | - } else if (!glamor_priv->is_gles && | ||
| 654 | - (pixmap)->drawable.depth == 16 && pixmap_priv->is_cbcr) { | ||
| 655 | - return GL_RG; | ||
| 656 | - } else if (!glamor_priv->is_gles && | ||
| 657 | - (pixmap)->drawable.depth == 30) { | ||
| 658 | - return GL_RGB10_A2; | ||
| 659 | - } else { | ||
| 660 | - return GL_RGBA; | ||
| 661 | - } | ||
| 662 | -} | ||
| 663 | - | ||
| 664 | #define REVERT_NONE 0 | ||
| 665 | #define REVERT_NORMAL 1 | ||
| 666 | #define REVERT_UPLOADING_A1 3 | ||
| 667 | -- | ||
| 668 | 2.17.1 | ||
| 669 | |||
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend b/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend index c956245b8..161df0498 100644 --- a/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend +++ b/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend | |||
| @@ -1,21 +1,6 @@ | |||
| 1 | FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:" | 1 | FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:" |
| 2 | 2 | ||
| 3 | SRC_URI:append:use-mainline-bsp = " file://0001-Allow-to-enable-atomic-in-modesetting-DDX.patch" | 3 | SRC_URI:append:use-mainline-bsp = " file://0001-Allow-to-enable-atomic-in-modesetting-DDX.patch" |
| 4 | SRC_URI:append:imxgpu = " \ | ||
| 5 | file://0003-Remove-check-for-useSIGIO-option.patch \ | ||
| 6 | file://0001-MGS-5186-Per-Specification-EGL_NATIVE_PIXMAP_KHR-req.patch \ | ||
| 7 | file://0001-glamor-glamor_egl.c-EGL_NATIVE_PIXMAP_KHR-do-not-req.patch \ | ||
| 8 | file://0001-prefer-to-use-GLES2-for-glamor-EGL-config.patch \ | ||
| 9 | file://0001-hw-xwayland-Makefile.am-fix-build-without-glx.patch \ | ||
| 10 | file://0001-xfree86-define-FOURCC_NV12-and-XVIMAGE_NV12.patch \ | ||
| 11 | file://0002-glamor-add-support-for-GL_RG.patch \ | ||
| 12 | file://0003-glamor-add-support-for-NV12-in-Xv.patch \ | ||
| 13 | file://0004-glamor-Remove-unused-format_for_pixmap-helper.patch \ | ||
| 14 | file://0005-glamor-Stop-trying-to-store-the-pixmap-s-format-in-g.patch \ | ||
| 15 | file://0006-glamor-Plumb-the-pixmap-through-fbo-creation-instead.patch \ | ||
| 16 | file://0007-glamor-Switch-the-gl_flavor-to-a-boolean-is_gles.patch \ | ||
| 17 | file://0008-glamor-Introduce-a-central-place-for-our-pixmap-form.patch \ | ||
| 18 | " | ||
| 19 | 4 | ||
| 20 | IMX_OPENGL_PKGCONFIGS_REMOVE = "" | 5 | IMX_OPENGL_PKGCONFIGS_REMOVE = "" |
| 21 | IMX_OPENGL_PKGCONFIGS_REMOVE:imxgpu = "glamor" | 6 | IMX_OPENGL_PKGCONFIGS_REMOVE:imxgpu = "glamor" |
diff --git a/recipes-graphics/xwayland/xwayland_%.bbappend b/recipes-graphics/xwayland/xwayland_%.bbappend index 690631215..f2141f4f9 100644 --- a/recipes-graphics/xwayland/xwayland_%.bbappend +++ b/recipes-graphics/xwayland/xwayland_%.bbappend | |||
| @@ -10,3 +10,10 @@ OPENGL_PKGCONFIGS_REMOVE_IMXGPU = "" | |||
| 10 | OPENGL_PKGCONFIGS_REMOVE_IMXGPU:mx6-nxp-bsp = "glamor glx" | 10 | OPENGL_PKGCONFIGS_REMOVE_IMXGPU:mx6-nxp-bsp = "glamor glx" |
| 11 | OPENGL_PKGCONFIGS_REMOVE_IMXGPU:mx7-nxp-bsp = "glamor glx" | 11 | OPENGL_PKGCONFIGS_REMOVE_IMXGPU:mx7-nxp-bsp = "glamor glx" |
| 12 | OPENGL_PKGCONFIGS_REMOVE_IMXGPU:mx8-nxp-bsp = "glx" | 12 | OPENGL_PKGCONFIGS_REMOVE_IMXGPU:mx8-nxp-bsp = "glx" |
| 13 | |||
| 14 | |||
| 15 | # links with imx-gpu libs which are pre-built for glibc | ||
| 16 | # gcompat will address it during runtime | ||
| 17 | LDFLAGS:append:imxgpu:libc-musl = " -Wl,--allow-shlib-undefined" | ||
| 18 | |||
| 19 | RDEPENDS:${PN}:append:imxgpu:libc-musl = " gcompat" | ||
diff --git a/recipes-kernel/linux/linux-fslc-imx/imx-nxp-bsp/defconfig b/recipes-kernel/linux/linux-fslc-imx/imx-nxp-bsp/defconfig index 74dc82cb4..85e72abcb 100644 --- a/recipes-kernel/linux/linux-fslc-imx/imx-nxp-bsp/defconfig +++ b/recipes-kernel/linux/linux-fslc-imx/imx-nxp-bsp/defconfig | |||
| @@ -1,101 +1,63 @@ | |||
| 1 | CONFIG_SYSVIPC=y | 1 | CONFIG_SYSVIPC=y |
| 2 | CONFIG_POSIX_MQUEUE=y | 2 | CONFIG_POSIX_MQUEUE=y |
| 3 | CONFIG_AUDIT=y | 3 | CONFIG_NO_HZ=y |
| 4 | CONFIG_NO_HZ_IDLE=y | ||
| 5 | CONFIG_HIGH_RES_TIMERS=y | 4 | CONFIG_HIGH_RES_TIMERS=y |
| 6 | CONFIG_BPF_JIT=y | ||
| 7 | CONFIG_PREEMPT=y | 5 | CONFIG_PREEMPT=y |
| 8 | CONFIG_IRQ_TIME_ACCOUNTING=y | ||
| 9 | CONFIG_BSD_PROCESS_ACCT=y | ||
| 10 | CONFIG_BSD_PROCESS_ACCT_V3=y | ||
| 11 | CONFIG_IKCONFIG=y | 6 | CONFIG_IKCONFIG=y |
| 12 | CONFIG_IKCONFIG_PROC=y | 7 | CONFIG_IKCONFIG_PROC=y |
| 13 | CONFIG_NUMA_BALANCING=y | 8 | CONFIG_LOG_BUF_SHIFT=18 |
| 9 | CONFIG_CGROUPS=y | ||
| 14 | CONFIG_MEMCG=y | 10 | CONFIG_MEMCG=y |
| 15 | CONFIG_BLK_CGROUP=y | ||
| 16 | CONFIG_CGROUP_PIDS=y | 11 | CONFIG_CGROUP_PIDS=y |
| 17 | CONFIG_CGROUP_FREEZER=y | 12 | CONFIG_CGROUP_FREEZER=y |
| 18 | CONFIG_CGROUP_HUGETLB=y | ||
| 19 | CONFIG_CPUSETS=y | ||
| 20 | CONFIG_CGROUP_DEVICE=y | 13 | CONFIG_CGROUP_DEVICE=y |
| 21 | CONFIG_CGROUP_CPUACCT=y | 14 | CONFIG_NAMESPACES=y |
| 22 | CONFIG_CGROUP_PERF=y | ||
| 23 | CONFIG_USER_NS=y | 15 | CONFIG_USER_NS=y |
| 24 | CONFIG_SCHED_AUTOGROUP=y | ||
| 25 | CONFIG_RELAY=y | 16 | CONFIG_RELAY=y |
| 26 | CONFIG_BLK_DEV_INITRD=y | 17 | CONFIG_BLK_DEV_INITRD=y |
| 18 | CONFIG_EXPERT=y | ||
| 27 | CONFIG_KALLSYMS_ALL=y | 19 | CONFIG_KALLSYMS_ALL=y |
| 20 | CONFIG_PERF_EVENTS=y | ||
| 21 | # CONFIG_SLUB_DEBUG is not set | ||
| 28 | # CONFIG_COMPAT_BRK is not set | 22 | # CONFIG_COMPAT_BRK is not set |
| 29 | CONFIG_PROFILING=y | ||
| 30 | CONFIG_ARCH_LAYERSCAPE=y | ||
| 31 | CONFIG_ARCH_KEEMBAY=y | ||
| 32 | CONFIG_ARCH_MXC=y | 23 | CONFIG_ARCH_MXC=y |
| 33 | CONFIG_ARCH_S32=y | 24 | CONFIG_SOC_IMX6Q=y |
| 34 | CONFIG_SOC_S32V234=y | 25 | CONFIG_SOC_IMX6SL=y |
| 35 | CONFIG_ARM64_VA_BITS_48=y | 26 | CONFIG_SOC_IMX6SLL=y |
| 36 | CONFIG_SCHED_MC=y | 27 | CONFIG_SOC_IMX6SX=y |
| 37 | CONFIG_SCHED_SMT=y | 28 | CONFIG_SOC_IMX6UL=y |
| 38 | CONFIG_NUMA=y | 29 | CONFIG_SOC_IMX7D=y |
| 39 | CONFIG_KEXEC=y | 30 | CONFIG_SOC_IMX7ULP=y |
| 40 | CONFIG_KEXEC_FILE=y | 31 | CONFIG_SMP=y |
| 41 | CONFIG_CRASH_DUMP=y | 32 | CONFIG_VMSPLIT_2G=y |
| 42 | CONFIG_XEN=y | 33 | CONFIG_ARM_PSCI=y |
| 34 | CONFIG_HIGHMEM=y | ||
| 43 | CONFIG_FORCE_MAX_ZONEORDER=14 | 35 | CONFIG_FORCE_MAX_ZONEORDER=14 |
| 44 | CONFIG_COMPAT=y | 36 | CONFIG_CMDLINE="noinitrd console=ttymxc0,115200" |
| 45 | CONFIG_RANDOMIZE_BASE=y | 37 | CONFIG_KEXEC=y |
| 46 | CONFIG_PM_DEBUG=y | ||
| 47 | CONFIG_PM_TEST_SUSPEND=y | ||
| 48 | CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y | ||
| 49 | CONFIG_ENERGY_MODEL=y | ||
| 50 | CONFIG_ARM_CPUIDLE=y | ||
| 51 | CONFIG_ARM_PSCI_CPUIDLE=y | ||
| 52 | CONFIG_CPU_FREQ=y | 38 | CONFIG_CPU_FREQ=y |
| 53 | CONFIG_CPU_FREQ_STAT=y | 39 | CONFIG_CPU_FREQ_STAT=y |
| 54 | CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y | 40 | CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y |
| 55 | CONFIG_CPU_FREQ_GOV_POWERSAVE=y | 41 | CONFIG_CPU_FREQ_GOV_POWERSAVE=y |
| 56 | CONFIG_CPU_FREQ_GOV_USERSPACE=y | 42 | CONFIG_CPU_FREQ_GOV_USERSPACE=y |
| 57 | CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y | 43 | CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y |
| 58 | CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y | ||
| 59 | CONFIG_CPUFREQ_DT=y | 44 | CONFIG_CPUFREQ_DT=y |
| 60 | CONFIG_ACPI_CPPC_CPUFREQ=m | 45 | CONFIG_ARM_IMX6Q_CPUFREQ=y |
| 61 | CONFIG_ARM_SCPI_CPUFREQ=y | ||
| 62 | CONFIG_ARM_IMX_CPUFREQ_DT=y | 46 | CONFIG_ARM_IMX_CPUFREQ_DT=y |
| 63 | CONFIG_ARM_SCMI_CPUFREQ=y | 47 | CONFIG_CPU_IDLE=y |
| 64 | CONFIG_QORIQ_CPUFREQ=y | 48 | CONFIG_ARM_CPUIDLE=y |
| 65 | CONFIG_ARM_SCMI_PROTOCOL=y | 49 | CONFIG_ARM_PSCI_CPUIDLE=y |
| 66 | CONFIG_ARM_SCPI_PROTOCOL=y | 50 | CONFIG_VFP=y |
| 67 | CONFIG_QCOM_SCM=m | 51 | CONFIG_NEON=y |
| 68 | CONFIG_EFI_CAPSULE_LOADER=y | 52 | CONFIG_PM_DEBUG=y |
| 69 | CONFIG_IMX_DSP=y | 53 | CONFIG_PM_TEST_SUSPEND=y |
| 70 | CONFIG_IMX_SCU=y | 54 | CONFIG_KPROBES=y |
| 71 | CONFIG_IMX_SCU_PD=y | ||
| 72 | CONFIG_ACPI=y | ||
| 73 | CONFIG_ACPI_APEI=y | ||
| 74 | CONFIG_ACPI_APEI_GHES=y | ||
| 75 | CONFIG_ACPI_APEI_MEMORY_FAILURE=y | ||
| 76 | CONFIG_ACPI_APEI_EINJ=y | ||
| 77 | CONFIG_VIRTUALIZATION=y | ||
| 78 | CONFIG_KVM=y | ||
| 79 | CONFIG_ARM64_CRYPTO=y | ||
| 80 | CONFIG_CRYPTO_SHA1_ARM64_CE=y | ||
| 81 | CONFIG_CRYPTO_SHA2_ARM64_CE=y | ||
| 82 | CONFIG_CRYPTO_SHA512_ARM64_CE=m | ||
| 83 | CONFIG_CRYPTO_SHA3_ARM64=m | ||
| 84 | CONFIG_CRYPTO_SM3_ARM64_CE=m | ||
| 85 | CONFIG_CRYPTO_GHASH_ARM64_CE=y | ||
| 86 | CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m | ||
| 87 | CONFIG_CRYPTO_AES_ARM64_CE_CCM=y | ||
| 88 | CONFIG_CRYPTO_AES_ARM64_CE_BLK=y | ||
| 89 | CONFIG_CRYPTO_CHACHA20_NEON=m | ||
| 90 | CONFIG_CRYPTO_AES_ARM64_BS=m | ||
| 91 | CONFIG_JUMP_LABEL=y | ||
| 92 | CONFIG_MODULES=y | 55 | CONFIG_MODULES=y |
| 93 | CONFIG_MODULE_UNLOAD=y | 56 | CONFIG_MODULE_UNLOAD=y |
| 94 | CONFIG_MODVERSIONS=y | 57 | CONFIG_MODVERSIONS=y |
| 95 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | 58 | CONFIG_MODULE_SRCVERSION_ALL=y |
| 96 | CONFIG_KSM=y | 59 | CONFIG_BINFMT_MISC=m |
| 97 | CONFIG_MEMORY_FAILURE=y | 60 | CONFIG_CMA=y |
| 98 | CONFIG_TRANSPARENT_HUGEPAGE=y | ||
| 99 | CONFIG_NET=y | 61 | CONFIG_NET=y |
| 100 | CONFIG_PACKET=y | 62 | CONFIG_PACKET=y |
| 101 | CONFIG_UNIX=y | 63 | CONFIG_UNIX=y |
| @@ -103,55 +65,11 @@ CONFIG_INET=y | |||
| 103 | CONFIG_IP_MULTICAST=y | 65 | CONFIG_IP_MULTICAST=y |
| 104 | CONFIG_IP_PNP=y | 66 | CONFIG_IP_PNP=y |
| 105 | CONFIG_IP_PNP_DHCP=y | 67 | CONFIG_IP_PNP_DHCP=y |
| 106 | CONFIG_IP_PNP_BOOTP=y | ||
| 107 | CONFIG_IPV6_SIT=m | ||
| 108 | CONFIG_NETFILTER=y | 68 | CONFIG_NETFILTER=y |
| 109 | CONFIG_NF_CONNTRACK=m | ||
| 110 | CONFIG_NF_CONNTRACK_EVENTS=y | ||
| 111 | CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m | ||
| 112 | CONFIG_NETFILTER_XT_TARGET_LOG=m | ||
| 113 | CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m | ||
| 114 | CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m | ||
| 115 | CONFIG_IP_NF_IPTABLES=m | ||
| 116 | CONFIG_IP_NF_FILTER=m | ||
| 117 | CONFIG_IP_NF_TARGET_REJECT=m | ||
| 118 | CONFIG_IP_NF_NAT=m | ||
| 119 | CONFIG_IP_NF_TARGET_MASQUERADE=m | ||
| 120 | CONFIG_IP_NF_MANGLE=m | ||
| 121 | CONFIG_IP6_NF_IPTABLES=m | ||
| 122 | CONFIG_IP6_NF_FILTER=m | ||
| 123 | CONFIG_IP6_NF_TARGET_REJECT=m | ||
| 124 | CONFIG_IP6_NF_MANGLE=m | ||
| 125 | CONFIG_IP6_NF_NAT=m | ||
| 126 | CONFIG_IP6_NF_TARGET_MASQUERADE=m | ||
| 127 | CONFIG_BRIDGE=y | ||
| 128 | CONFIG_BRIDGE_VLAN_FILTERING=y | ||
| 129 | CONFIG_NET_DSA=m | ||
| 130 | CONFIG_VLAN_8021Q=m | 69 | CONFIG_VLAN_8021Q=m |
| 131 | CONFIG_VLAN_8021Q_GVRP=y | ||
| 132 | CONFIG_VLAN_8021Q_MVRP=y | ||
| 133 | CONFIG_LLC2=y | 70 | CONFIG_LLC2=y |
| 134 | CONFIG_NET_SCHED=y | 71 | CONFIG_CAN=y |
| 135 | CONFIG_NET_SCH_MULTIQ=m | 72 | CONFIG_CAN_FLEXCAN=y |
| 136 | CONFIG_NET_SCH_CBS=m | ||
| 137 | CONFIG_NET_SCH_ETF=m | ||
| 138 | CONFIG_NET_SCH_TAPRIO=m | ||
| 139 | CONFIG_NET_SCH_MQPRIO=m | ||
| 140 | CONFIG_NET_SCH_INGRESS=m | ||
| 141 | CONFIG_NET_CLS_BASIC=m | ||
| 142 | CONFIG_NET_CLS_TCINDEX=m | ||
| 143 | CONFIG_NET_CLS_FLOWER=m | ||
| 144 | CONFIG_NET_CLS_ACT=y | ||
| 145 | CONFIG_NET_ACT_GACT=m | ||
| 146 | CONFIG_NET_ACT_MIRRED=m | ||
| 147 | CONFIG_NET_ACT_GATE=m | ||
| 148 | CONFIG_TSN=y | ||
| 149 | CONFIG_QRTR=m | ||
| 150 | CONFIG_QRTR_SMD=m | ||
| 151 | CONFIG_QRTR_TUN=m | ||
| 152 | CONFIG_NET_PKTGEN=m | ||
| 153 | CONFIG_CAN=m | ||
| 154 | CONFIG_CAN_FLEXCAN=m | ||
| 155 | CONFIG_BT=y | 73 | CONFIG_BT=y |
| 156 | CONFIG_BT_RFCOMM=y | 74 | CONFIG_BT_RFCOMM=y |
| 157 | CONFIG_BT_RFCOMM_TTY=y | 75 | CONFIG_BT_RFCOMM_TTY=y |
| @@ -159,64 +77,38 @@ CONFIG_BT_BNEP=y | |||
| 159 | CONFIG_BT_BNEP_MC_FILTER=y | 77 | CONFIG_BT_BNEP_MC_FILTER=y |
| 160 | CONFIG_BT_BNEP_PROTO_FILTER=y | 78 | CONFIG_BT_BNEP_PROTO_FILTER=y |
| 161 | CONFIG_BT_HIDP=y | 79 | CONFIG_BT_HIDP=y |
| 162 | CONFIG_BT_LEDS=y | 80 | CONFIG_BT_HCIBTUSB=y |
| 163 | # CONFIG_BT_DEBUGFS is not set | ||
| 164 | CONFIG_BT_HCIBTUSB=m | ||
| 165 | CONFIG_BT_HCIUART=y | 81 | CONFIG_BT_HCIUART=y |
| 166 | CONFIG_BT_HCIUART_BCSP=y | 82 | CONFIG_BT_HCIUART_BCSP=y |
| 167 | CONFIG_BT_HCIUART_ATH3K=y | ||
| 168 | CONFIG_BT_HCIUART_LL=y | 83 | CONFIG_BT_HCIUART_LL=y |
| 169 | CONFIG_BT_HCIUART_3WIRE=y | 84 | CONFIG_BT_HCIUART_3WIRE=y |
| 170 | CONFIG_BT_HCIUART_BCM=y | 85 | CONFIG_BT_HCIUART_MRVL=y |
| 171 | CONFIG_BT_HCIUART_QCA=y | ||
| 172 | CONFIG_BT_HCIVHCI=y | 86 | CONFIG_BT_HCIVHCI=y |
| 87 | CONFIG_BT_MRVL=y | ||
| 88 | CONFIG_BT_MRVL_SDIO=y | ||
| 173 | CONFIG_CFG80211=y | 89 | CONFIG_CFG80211=y |
| 174 | CONFIG_NL80211_TESTMODE=y | 90 | CONFIG_NL80211_TESTMODE=y |
| 175 | CONFIG_CFG80211_WEXT=y | 91 | CONFIG_CFG80211_WEXT=y |
| 176 | CONFIG_MAC80211=y | 92 | CONFIG_MAC80211=y |
| 177 | CONFIG_MAC80211_LEDS=y | ||
| 178 | CONFIG_NET_9P=y | ||
| 179 | CONFIG_NET_9P_VIRTIO=y | ||
| 180 | CONFIG_NFC=m | ||
| 181 | CONFIG_NFC_NCI=m | ||
| 182 | CONFIG_NFC_S3FWRN5_I2C=m | ||
| 183 | CONFIG_PCI=y | 93 | CONFIG_PCI=y |
| 184 | CONFIG_PCIEPORTBUS=y | 94 | CONFIG_PCI_MSI=y |
| 185 | CONFIG_PCI_IOV=y | ||
| 186 | CONFIG_PCI_PASID=y | ||
| 187 | CONFIG_HOTPLUG_PCI=y | ||
| 188 | CONFIG_HOTPLUG_PCI_ACPI=y | ||
| 189 | CONFIG_PCI_HOST_GENERIC=y | ||
| 190 | CONFIG_PCI_XGENE=y | ||
| 191 | CONFIG_PCIE_ALTERA=y | ||
| 192 | CONFIG_PCIE_ALTERA_MSI=y | ||
| 193 | CONFIG_PCI_HOST_THUNDER_PEM=y | ||
| 194 | CONFIG_PCI_HOST_THUNDER_ECAM=y | ||
| 195 | CONFIG_PCI_IMX6_HOST=y | 95 | CONFIG_PCI_IMX6_HOST=y |
| 196 | CONFIG_PCI_IMX6_EP=y | 96 | CONFIG_PCI_IMX6_EP=y |
| 197 | CONFIG_PCI_LAYERSCAPE=y | ||
| 198 | CONFIG_PCI_HISI=y | ||
| 199 | CONFIG_PCIE_KIRIN=y | ||
| 200 | CONFIG_PCI_MESON=m | ||
| 201 | CONFIG_PCIE_LAYERSCAPE_GEN4=y | ||
| 202 | CONFIG_PCI_ENDPOINT=y | 97 | CONFIG_PCI_ENDPOINT=y |
| 203 | CONFIG_PCI_ENDPOINT_CONFIGFS=y | 98 | CONFIG_PCI_ENDPOINT_CONFIGFS=y |
| 204 | CONFIG_PCI_EPF_TEST=y | 99 | CONFIG_PCI_EPF_TEST=y |
| 205 | CONFIG_DEVTMPFS=y | 100 | CONFIG_DEVTMPFS=y |
| 206 | CONFIG_DEVTMPFS_MOUNT=y | 101 | CONFIG_DEVTMPFS_MOUNT=y |
| 102 | # CONFIG_STANDALONE is not set | ||
| 207 | CONFIG_FW_LOADER_USER_HELPER=y | 103 | CONFIG_FW_LOADER_USER_HELPER=y |
| 208 | CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y | 104 | CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y |
| 209 | CONFIG_BRCMSTB_GISB_ARB=y | 105 | CONFIG_IMX_WEIM=y |
| 210 | CONFIG_SIMPLE_PM_BUS=y | 106 | CONFIG_CONNECTOR=y |
| 211 | CONFIG_VEXPRESS_CONFIG=y | ||
| 212 | CONFIG_FSL_MC_UAPI_SUPPORT=y | ||
| 213 | CONFIG_GNSS=m | ||
| 214 | CONFIG_GNSS_MTK_SERIAL=m | ||
| 215 | CONFIG_MTD=y | 107 | CONFIG_MTD=y |
| 216 | CONFIG_MTD_CMDLINE_PARTS=y | 108 | CONFIG_MTD_CMDLINE_PARTS=y |
| 217 | CONFIG_MTD_BLOCK=y | 109 | CONFIG_MTD_BLOCK=y |
| 218 | CONFIG_MTD_CFI=y | 110 | CONFIG_MTD_CFI=y |
| 219 | CONFIG_MTD_CFI_ADV_OPTIONS=y | 111 | CONFIG_MTD_JEDECPROBE=y |
| 220 | CONFIG_MTD_CFI_INTELEXT=y | 112 | CONFIG_MTD_CFI_INTELEXT=y |
| 221 | CONFIG_MTD_CFI_AMDSTD=y | 113 | CONFIG_MTD_CFI_AMDSTD=y |
| 222 | CONFIG_MTD_CFI_STAA=y | 114 | CONFIG_MTD_CFI_STAA=y |
| @@ -225,504 +117,273 @@ CONFIG_MTD_PHYSMAP_OF=y | |||
| 225 | CONFIG_MTD_DATAFLASH=y | 117 | CONFIG_MTD_DATAFLASH=y |
| 226 | CONFIG_MTD_SST25L=y | 118 | CONFIG_MTD_SST25L=y |
| 227 | CONFIG_MTD_RAW_NAND=y | 119 | CONFIG_MTD_RAW_NAND=y |
| 228 | CONFIG_MTD_NAND_DENALI_DT=y | ||
| 229 | CONFIG_MTD_NAND_GPMI_NAND=y | 120 | CONFIG_MTD_NAND_GPMI_NAND=y |
| 230 | CONFIG_MTD_NAND_FSL_IFC=y | 121 | CONFIG_MTD_NAND_MXC=y |
| 231 | CONFIG_MTD_SPI_NOR=y | 122 | CONFIG_MTD_SPI_NOR=y |
| 232 | # CONFIG_MTD_SPI_NOR_USE_4K_SECTORS is not set | 123 | # CONFIG_MTD_SPI_NOR_USE_4K_SECTORS is not set |
| 233 | CONFIG_MTD_UBI=y | 124 | CONFIG_MTD_UBI=y |
| 125 | CONFIG_MTD_UBI_FASTMAP=y | ||
| 126 | CONFIG_MTD_UBI_BLOCK=y | ||
| 127 | CONFIG_OF_OVERLAY=y | ||
| 234 | CONFIG_BLK_DEV_LOOP=y | 128 | CONFIG_BLK_DEV_LOOP=y |
| 235 | CONFIG_BLK_DEV_NBD=m | 129 | CONFIG_BLK_DEV_RAM=y |
| 236 | CONFIG_XEN_BLKDEV_BACKEND=m | 130 | CONFIG_BLK_DEV_RAM_SIZE=65536 |
| 237 | CONFIG_VIRTIO_BLK=y | ||
| 238 | CONFIG_BLK_DEV_NVME=y | ||
| 239 | CONFIG_SRAM=y | ||
| 240 | CONFIG_PCI_ENDPOINT_TEST=y | 131 | CONFIG_PCI_ENDPOINT_TEST=y |
| 241 | CONFIG_EEPROM_AT24=m | 132 | CONFIG_EEPROM_AT24=y |
| 242 | CONFIG_EEPROM_AT25=m | 133 | CONFIG_EEPROM_AT25=y |
| 243 | CONFIG_UACCE=m | ||
| 244 | # CONFIG_SCSI_PROC_FS is not set | 134 | # CONFIG_SCSI_PROC_FS is not set |
| 245 | CONFIG_BLK_DEV_SD=y | 135 | CONFIG_BLK_DEV_SD=y |
| 246 | CONFIG_SCSI_SAS_ATA=y | 136 | # CONFIG_BLK_DEV_BSG is not set |
| 247 | CONFIG_SCSI_HISI_SAS=y | 137 | CONFIG_SCSI_CONSTANTS=y |
| 248 | CONFIG_SCSI_HISI_SAS_PCI=y | 138 | CONFIG_SCSI_LOGGING=y |
| 249 | CONFIG_MEGARAID_SAS=y | 139 | CONFIG_SCSI_SCAN_ASYNC=y |
| 250 | CONFIG_SCSI_MPT3SAS=m | ||
| 251 | CONFIG_SCSI_UFSHCD=y | ||
| 252 | CONFIG_SCSI_UFSHCD_PLATFORM=y | ||
| 253 | CONFIG_ATA=y | 140 | CONFIG_ATA=y |
| 254 | CONFIG_SATA_AHCI=y | ||
| 255 | CONFIG_SATA_AHCI_PLATFORM=y | 141 | CONFIG_SATA_AHCI_PLATFORM=y |
| 256 | CONFIG_AHCI_IMX=y | 142 | CONFIG_AHCI_IMX=y |
| 257 | CONFIG_AHCI_CEVA=y | 143 | CONFIG_PATA_IMX=y |
| 258 | CONFIG_AHCI_XGENE=y | ||
| 259 | CONFIG_AHCI_QORIQ=y | ||
| 260 | CONFIG_SATA_SIL24=y | ||
| 261 | CONFIG_PATA_PLATFORM=y | ||
| 262 | CONFIG_PATA_OF_PLATFORM=y | ||
| 263 | CONFIG_MD=y | 144 | CONFIG_MD=y |
| 264 | CONFIG_BLK_DEV_MD=m | 145 | CONFIG_BLK_DEV_MD=m |
| 265 | CONFIG_BLK_DEV_DM=m | 146 | CONFIG_BLK_DEV_DM=m |
| 266 | CONFIG_DM_CRYPT=m | 147 | CONFIG_DM_CRYPT=m |
| 267 | CONFIG_DM_MIRROR=m | ||
| 268 | CONFIG_DM_ZERO=m | ||
| 269 | CONFIG_NETDEVICES=y | 148 | CONFIG_NETDEVICES=y |
| 270 | CONFIG_MACVLAN=m | ||
| 271 | CONFIG_MACVTAP=m | ||
| 272 | CONFIG_TUN=y | 149 | CONFIG_TUN=y |
| 273 | CONFIG_VETH=m | 150 | # CONFIG_NET_VENDOR_BROADCOM is not set |
| 274 | CONFIG_VIRTIO_NET=y | 151 | CONFIG_CS89x0_PLATFORM=y |
| 275 | CONFIG_NET_DSA_MSCC_FELIX=m | 152 | # CONFIG_NET_VENDOR_FARADAY is not set |
| 276 | CONFIG_AMD_XGBE=y | 153 | # CONFIG_NET_VENDOR_INTEL is not set |
| 277 | CONFIG_ATL1C=m | 154 | # CONFIG_NET_VENDOR_MARVELL is not set |
| 278 | CONFIG_BCMGENET=m | 155 | # CONFIG_NET_VENDOR_MICREL is not set |
| 279 | CONFIG_BNX2X=m | 156 | # CONFIG_NET_VENDOR_MICROCHIP is not set |
| 280 | CONFIG_MACB=y | 157 | # CONFIG_NET_VENDOR_NATSEMI is not set |
| 281 | CONFIG_THUNDER_NIC_PF=y | 158 | # CONFIG_NET_VENDOR_SEEQ is not set |
| 282 | CONFIG_FEC=y | ||
| 283 | CONFIG_FEC_UIO=y | ||
| 284 | CONFIG_FSL_FMAN=y | ||
| 285 | CONFIG_FSL_DPAA_ETH=y | ||
| 286 | CONFIG_FSL_DPAA2_ETH=y | ||
| 287 | CONFIG_FSL_DPAA2_MAC=y | ||
| 288 | CONFIG_FSL_DPAA2_SWITCH=y | ||
| 289 | CONFIG_FSL_ENETC=y | ||
| 290 | CONFIG_FSL_ENETC_VF=y | ||
| 291 | CONFIG_FSL_ENETC_QOS=y | ||
| 292 | CONFIG_ENETC_TSN=y | ||
| 293 | CONFIG_HIX5HD2_GMAC=y | ||
| 294 | CONFIG_HNS_DSAF=y | ||
| 295 | CONFIG_HNS_ENET=y | ||
| 296 | CONFIG_HNS3=y | ||
| 297 | CONFIG_HNS3_HCLGE=y | ||
| 298 | CONFIG_HNS3_ENET=y | ||
| 299 | CONFIG_E1000=y | ||
| 300 | CONFIG_E1000E=y | ||
| 301 | CONFIG_IGB=y | ||
| 302 | CONFIG_IGBVF=y | ||
| 303 | CONFIG_MVMDIO=y | ||
| 304 | CONFIG_SKY2=y | ||
| 305 | CONFIG_MLX4_EN=m | ||
| 306 | CONFIG_MLX5_CORE=m | ||
| 307 | CONFIG_MLX5_CORE_EN=y | ||
| 308 | CONFIG_MSCC_OCELOT_SWITCH=y | ||
| 309 | CONFIG_QCOM_EMAC=m | ||
| 310 | CONFIG_RMNET=m | ||
| 311 | CONFIG_SMC91X=y | 159 | CONFIG_SMC91X=y |
| 160 | CONFIG_SMC911X=y | ||
| 312 | CONFIG_SMSC911X=y | 161 | CONFIG_SMSC911X=y |
| 313 | CONFIG_STMMAC_ETH=y | 162 | # CONFIG_NET_VENDOR_STMICRO is not set |
| 314 | CONFIG_DWMAC_GENERIC=m | ||
| 315 | CONFIG_AQUANTIA_PHY=y | ||
| 316 | CONFIG_BROADCOM_PHY=m | ||
| 317 | CONFIG_BCM54140_PHY=m | ||
| 318 | CONFIG_INPHI_PHY=y | ||
| 319 | CONFIG_MARVELL_PHY=m | ||
| 320 | CONFIG_MARVELL_10G_PHY=m | ||
| 321 | CONFIG_MICREL_PHY=y | 163 | CONFIG_MICREL_PHY=y |
| 322 | CONFIG_MICROSEMI_PHY=y | ||
| 323 | CONFIG_NXP_TJA11XX_PHY=y | ||
| 324 | CONFIG_AT803X_PHY=y | 164 | CONFIG_AT803X_PHY=y |
| 325 | CONFIG_REALTEK_PHY=y | ||
| 326 | CONFIG_ROCKCHIP_PHY=y | ||
| 327 | CONFIG_VITESSE_PHY=y | ||
| 328 | CONFIG_MDIO_BITBANG=y | ||
| 329 | CONFIG_MDIO_BUS_MUX_MULTIPLEXER=y | ||
| 330 | CONFIG_MDIO_BUS_MUX_MMIOREG=y | ||
| 331 | CONFIG_USB_PEGASUS=m | 165 | CONFIG_USB_PEGASUS=m |
| 332 | CONFIG_USB_RTL8150=m | 166 | CONFIG_USB_RTL8150=m |
| 333 | CONFIG_USB_RTL8152=y | 167 | CONFIG_USB_RTL8152=y |
| 334 | CONFIG_USB_LAN78XX=m | 168 | CONFIG_USB_LAN78XX=y |
| 335 | CONFIG_USB_USBNET=y | 169 | CONFIG_USB_USBNET=y |
| 336 | CONFIG_USB_NET_AX8817X=m | 170 | CONFIG_USB_NET_CDC_EEM=m |
| 337 | CONFIG_USB_NET_AX88179_178A=m | 171 | CONFIG_USB_NET_SMSC95XX=y |
| 338 | CONFIG_USB_NET_CDCETHER=m | 172 | CONFIG_USB_NET_MCS7830=y |
| 339 | CONFIG_USB_NET_CDC_NCM=m | 173 | CONFIG_ATH10K=m |
| 340 | CONFIG_USB_NET_DM9601=m | 174 | CONFIG_ATH10K_SDIO=m |
| 341 | CONFIG_USB_NET_SR9800=m | ||
| 342 | CONFIG_USB_NET_SMSC75XX=m | ||
| 343 | CONFIG_USB_NET_SMSC95XX=m | ||
| 344 | CONFIG_USB_NET_NET1080=m | ||
| 345 | CONFIG_USB_NET_PLUSB=m | ||
| 346 | CONFIG_USB_NET_MCS7830=m | ||
| 347 | CONFIG_USB_NET_CDC_SUBSET=m | ||
| 348 | CONFIG_USB_NET_ZAURUS=m | ||
| 349 | CONFIG_HOSTAP=y | 175 | CONFIG_HOSTAP=y |
| 176 | CONFIG_WL12XX=m | ||
| 350 | CONFIG_WL18XX=m | 177 | CONFIG_WL18XX=m |
| 351 | CONFIG_WLCORE_SDIO=m | 178 | CONFIG_WLCORE_SDIO=m |
| 352 | CONFIG_XEN_NETDEV_BACKEND=m | 179 | # CONFIG_WILINK_PLATFORM_DATA is not set |
| 353 | CONFIG_IVSHMEM_NET=y | ||
| 354 | CONFIG_INPUT_EVDEV=y | 180 | CONFIG_INPUT_EVDEV=y |
| 355 | CONFIG_KEYBOARD_ADC=m | 181 | CONFIG_INPUT_EVBUG=m |
| 356 | CONFIG_KEYBOARD_GPIO=y | 182 | CONFIG_KEYBOARD_GPIO=y |
| 357 | CONFIG_KEYBOARD_RPMSG=y | 183 | CONFIG_KEYBOARD_RPMSG=y |
| 358 | CONFIG_KEYBOARD_SNVS_PWRKEY=y | 184 | CONFIG_KEYBOARD_IMX=y |
| 359 | CONFIG_KEYBOARD_IMX_SC_PWRKEY=y | 185 | CONFIG_MOUSE_PS2=m |
| 360 | CONFIG_KEYBOARD_CROS_EC=y | 186 | CONFIG_MOUSE_PS2_ELANTECH=y |
| 361 | CONFIG_INPUT_TOUCHSCREEN=y | 187 | CONFIG_INPUT_TOUCHSCREEN=y |
| 362 | CONFIG_TOUCHSCREEN_ATMEL_MXT=m | 188 | CONFIG_TOUCHSCREEN_ADS7846=y |
| 363 | CONFIG_TOUCHSCREEN_GOODIX=m | 189 | CONFIG_TOUCHSCREEN_AD7879=y |
| 364 | CONFIG_TOUCHSCREEN_EDT_FT5X06=m | 190 | CONFIG_TOUCHSCREEN_AD7879_I2C=y |
| 365 | CONFIG_TOUCHSCREEN_SYNAPTICS_DSX_I2C=m | 191 | CONFIG_TOUCHSCREEN_ATMEL_MXT=y |
| 192 | CONFIG_TOUCHSCREEN_DA9052=y | ||
| 193 | CONFIG_TOUCHSCREEN_EGALAX=y | ||
| 194 | CONFIG_TOUCHSCREEN_ELAN_TS=y | ||
| 195 | CONFIG_TOUCHSCREEN_GOODIX=y | ||
| 196 | CONFIG_TOUCHSCREEN_ILI210X=y | ||
| 197 | CONFIG_TOUCHSCREEN_MAX11801=y | ||
| 198 | CONFIG_TOUCHSCREEN_IMX6UL_TSC=y | ||
| 199 | CONFIG_TOUCHSCREEN_EDT_FT5X06=y | ||
| 200 | CONFIG_TOUCHSCREEN_MC13783=y | ||
| 201 | CONFIG_TOUCHSCREEN_TSC2004=y | ||
| 202 | CONFIG_TOUCHSCREEN_TSC2007=y | ||
| 203 | CONFIG_TOUCHSCREEN_STMPE=y | ||
| 204 | CONFIG_TOUCHSCREEN_SX8654=y | ||
| 205 | CONFIG_TOUCHSCREEN_COLIBRI_VF50=y | ||
| 206 | CONFIG_TOUCHSCREEN_FTS=y | ||
| 366 | CONFIG_INPUT_MISC=y | 207 | CONFIG_INPUT_MISC=y |
| 367 | CONFIG_INPUT_PWM_VIBRA=m | 208 | CONFIG_INPUT_MMA8450=y |
| 368 | # CONFIG_SERIO_SERPORT is not set | 209 | CONFIG_SERIO_SERPORT=m |
| 369 | CONFIG_SERIO_AMBAKMI=y | 210 | # CONFIG_LEGACY_PTYS is not set |
| 370 | CONFIG_LEGACY_PTY_COUNT=16 | ||
| 371 | CONFIG_SERIAL_8250=y | ||
| 372 | CONFIG_SERIAL_8250_CONSOLE=y | ||
| 373 | CONFIG_SERIAL_8250_EXTENDED=y | ||
| 374 | CONFIG_SERIAL_8250_SHARE_IRQ=y | ||
| 375 | CONFIG_SERIAL_8250_DW=y | ||
| 376 | CONFIG_SERIAL_OF_PLATFORM=y | ||
| 377 | CONFIG_SERIAL_AMBA_PL011=y | ||
| 378 | CONFIG_SERIAL_AMBA_PL011_CONSOLE=y | ||
| 379 | CONFIG_SERIAL_IMX=y | 211 | CONFIG_SERIAL_IMX=y |
| 380 | CONFIG_SERIAL_IMX_CONSOLE=y | 212 | CONFIG_SERIAL_IMX_CONSOLE=y |
| 381 | CONFIG_SERIAL_XILINX_PS_UART=y | ||
| 382 | CONFIG_SERIAL_XILINX_PS_UART_CONSOLE=y | ||
| 383 | CONFIG_SERIAL_FSL_LPUART=y | 213 | CONFIG_SERIAL_FSL_LPUART=y |
| 384 | CONFIG_SERIAL_FSL_LPUART_CONSOLE=y | 214 | CONFIG_SERIAL_FSL_LPUART_CONSOLE=y |
| 385 | CONFIG_SERIAL_FSL_LINFLEXUART=y | ||
| 386 | CONFIG_SERIAL_FSL_LINFLEXUART_CONSOLE=y | ||
| 387 | CONFIG_SERIAL_DEV_BUS=y | 215 | CONFIG_SERIAL_DEV_BUS=y |
| 388 | CONFIG_VIRTIO_CONSOLE=y | 216 | # CONFIG_I2C_COMPAT is not set |
| 389 | CONFIG_IPMI_HANDLER=m | ||
| 390 | CONFIG_IPMI_DEVICE_INTERFACE=m | ||
| 391 | CONFIG_IPMI_SI=m | ||
| 392 | CONFIG_TCG_TPM=y | ||
| 393 | CONFIG_TCG_TIS_I2C_INFINEON=y | ||
| 394 | CONFIG_I2C_CHARDEV=y | 217 | CONFIG_I2C_CHARDEV=y |
| 395 | CONFIG_I2C_MUX=y | 218 | CONFIG_I2C_MUX=y |
| 396 | CONFIG_I2C_MUX_PCA954x=y | 219 | CONFIG_I2C_MUX_GPIO=y |
| 397 | CONFIG_I2C_DESIGNWARE_PLATFORM=y | 220 | # CONFIG_I2C_HELPER_AUTO is not set |
| 398 | CONFIG_I2C_GPIO=m | 221 | CONFIG_I2C_ALGOPCF=m |
| 222 | CONFIG_I2C_ALGOPCA=m | ||
| 223 | CONFIG_I2C_GPIO=y | ||
| 399 | CONFIG_I2C_IMX=y | 224 | CONFIG_I2C_IMX=y |
| 400 | CONFIG_I2C_IMX_LPI2C=y | 225 | CONFIG_I2C_IMX_LPI2C=y |
| 401 | CONFIG_I2C_RK3X=y | ||
| 402 | CONFIG_I2C_RPBUS=y | ||
| 403 | CONFIG_I2C_CROS_EC_TUNNEL=y | ||
| 404 | CONFIG_XEN_I2C_BACKEND=y | ||
| 405 | CONFIG_I3C=y | ||
| 406 | CONFIG_SVC_I3C_MASTER=y | ||
| 407 | CONFIG_SPI=y | 226 | CONFIG_SPI=y |
| 408 | CONFIG_SPI_CADENCE_QUADSPI=y | ||
| 409 | CONFIG_SPI_DESIGNWARE=m | ||
| 410 | CONFIG_SPI_DW_DMA=y | ||
| 411 | CONFIG_SPI_DW_MMIO=m | ||
| 412 | CONFIG_SPI_FSL_LPSPI=y | 227 | CONFIG_SPI_FSL_LPSPI=y |
| 413 | CONFIG_SPI_FSL_QUADSPI=y | 228 | CONFIG_SPI_FSL_QUADSPI=y |
| 414 | CONFIG_SPI_NXP_FLEXSPI=y | 229 | CONFIG_SPI_GPIO=y |
| 415 | CONFIG_SPI_IMX=y | 230 | CONFIG_SPI_IMX=y |
| 416 | CONFIG_SPI_FSL_DSPI=y | ||
| 417 | CONFIG_SPI_PL022=y | ||
| 418 | CONFIG_SPI_ROCKCHIP=y | ||
| 419 | CONFIG_SPI_SPIDEV=y | 231 | CONFIG_SPI_SPIDEV=y |
| 420 | CONFIG_SPI_SLAVE=y | 232 | CONFIG_SPI_SLAVE=y |
| 421 | CONFIG_SPI_SLAVE_TIME=y | 233 | CONFIG_SPI_SLAVE_TIME=y |
| 422 | CONFIG_SPI_SLAVE_SYSTEM_CONTROL=y | 234 | CONFIG_SPI_SLAVE_SYSTEM_CONTROL=y |
| 423 | CONFIG_SPMI=y | 235 | CONFIG_GPIO_SYSFS=y |
| 424 | CONFIG_PINCTRL_SINGLE=y | 236 | CONFIG_GPIO_MXC=y |
| 425 | CONFIG_PINCTRL_MAX77620=y | 237 | CONFIG_GPIO_SIOX=m |
| 426 | CONFIG_PINCTRL_IMX8MM=y | ||
| 427 | CONFIG_PINCTRL_IMX8MN=y | ||
| 428 | CONFIG_PINCTRL_IMX8MP=y | ||
| 429 | CONFIG_PINCTRL_IMX8MQ=y | ||
| 430 | CONFIG_PINCTRL_IMX8QM=y | ||
| 431 | CONFIG_PINCTRL_IMX8QXP=y | ||
| 432 | CONFIG_PINCTRL_IMX8DXL=y | ||
| 433 | CONFIG_PINCTRL_IMX8ULP=y | ||
| 434 | CONFIG_PINCTRL_S32V234=y | ||
| 435 | CONFIG_GPIO_ALTERA=m | ||
| 436 | CONFIG_GPIO_DWAPB=y | ||
| 437 | CONFIG_GPIO_MB86S7X=y | ||
| 438 | CONFIG_GPIO_MPC8XXX=y | ||
| 439 | CONFIG_GPIO_PL061=y | ||
| 440 | CONFIG_GPIO_IMX_RPMSG=y | 238 | CONFIG_GPIO_IMX_RPMSG=y |
| 441 | CONFIG_GPIO_WCD934X=m | ||
| 442 | CONFIG_GPIO_XGENE=y | ||
| 443 | CONFIG_GPIO_MAX732X=y | 239 | CONFIG_GPIO_MAX732X=y |
| 444 | CONFIG_GPIO_PCA953X=y | 240 | CONFIG_GPIO_PCA953X=y |
| 445 | CONFIG_GPIO_PCA953X_IRQ=y | 241 | CONFIG_GPIO_PCF857X=y |
| 446 | CONFIG_GPIO_BD9571MWV=m | 242 | CONFIG_GPIO_STMPE=y |
| 447 | CONFIG_GPIO_MAX77620=y | 243 | CONFIG_GPIO_74X164=y |
| 448 | CONFIG_GPIO_SL28CPLD=m | 244 | CONFIG_POWER_RESET=y |
| 449 | CONFIG_POWER_RESET_BRCMSTB=y | ||
| 450 | CONFIG_POWER_RESET_XGENE=y | ||
| 451 | CONFIG_POWER_RESET_SYSCON=y | 245 | CONFIG_POWER_RESET_SYSCON=y |
| 452 | CONFIG_SYSCON_REBOOT_MODE=y | 246 | CONFIG_POWER_RESET_SYSCON_POWEROFF=y |
| 453 | CONFIG_BATTERY_SBS=m | 247 | CONFIG_POWER_SUPPLY=y |
| 454 | CONFIG_BATTERY_BQ27XXX=y | 248 | CONFIG_SABRESD_MAX8903=y |
| 455 | CONFIG_BATTERY_MAX17042=m | 249 | CONFIG_RN5T618_POWER=m |
| 456 | CONFIG_CHARGER_BQ25890=m | 250 | CONFIG_SENSORS_MC13783_ADC=y |
| 457 | CONFIG_CHARGER_BQ25980=m | 251 | CONFIG_SENSORS_GPIO_FAN=y |
| 458 | CONFIG_SENSORS_ARM_SCMI=y | 252 | CONFIG_SENSORS_IIO_HWMON=y |
| 459 | CONFIG_SENSORS_ARM_SCPI=y | 253 | CONFIG_SENSORS_MAX17135=y |
| 460 | CONFIG_SENSORS_FP9931=y | 254 | CONFIG_THERMAL=y |
| 461 | CONFIG_SENSORS_LM90=m | 255 | CONFIG_THERMAL_STATISTICS=y |
| 462 | CONFIG_SENSORS_PWM_FAN=m | ||
| 463 | CONFIG_SENSORS_SL28CPLD=m | ||
| 464 | CONFIG_SENSORS_INA2XX=m | ||
| 465 | CONFIG_SENSORS_INA3221=m | ||
| 466 | CONFIG_THERMAL_WRITABLE_TRIPS=y | 256 | CONFIG_THERMAL_WRITABLE_TRIPS=y |
| 467 | CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y | ||
| 468 | CONFIG_CPU_THERMAL=y | 257 | CONFIG_CPU_THERMAL=y |
| 469 | CONFIG_THERMAL_EMULATION=y | 258 | CONFIG_IMX_THERMAL=y |
| 470 | CONFIG_IMX_SC_THERMAL=y | ||
| 471 | CONFIG_IMX8MM_THERMAL=y | ||
| 472 | CONFIG_DEVICE_THERMAL=y | 259 | CONFIG_DEVICE_THERMAL=y |
| 473 | CONFIG_QORIQ_THERMAL=y | ||
| 474 | CONFIG_WATCHDOG=y | 260 | CONFIG_WATCHDOG=y |
| 475 | CONFIG_SL28CPLD_WATCHDOG=m | 261 | CONFIG_DA9063_WATCHDOG=m |
| 476 | CONFIG_ARM_SP805_WATCHDOG=y | 262 | CONFIG_DA9062_WATCHDOG=y |
| 477 | CONFIG_ARM_SBSA_WATCHDOG=y | 263 | CONFIG_RN5T618_WATCHDOG=y |
| 478 | CONFIG_DW_WATCHDOG=y | ||
| 479 | CONFIG_IMX2_WDT=y | 264 | CONFIG_IMX2_WDT=y |
| 480 | CONFIG_IMX_SC_WDT=y | ||
| 481 | CONFIG_IMX7ULP_WDT=y | 265 | CONFIG_IMX7ULP_WDT=y |
| 482 | CONFIG_ARM_SMC_WATCHDOG=y | 266 | CONFIG_MFD_DA9052_I2C=y |
| 483 | CONFIG_XEN_WDT=y | 267 | CONFIG_MFD_DA9062=y |
| 484 | CONFIG_MFD_BD9571MWV=y | 268 | CONFIG_MFD_DA9063=y |
| 485 | CONFIG_MFD_AXP20X_I2C=y | 269 | CONFIG_MFD_MC13XXX_SPI=y |
| 486 | CONFIG_MFD_IMX_MIX=y | 270 | CONFIG_MFD_MC13XXX_I2C=y |
| 487 | CONFIG_MFD_HI6421_PMIC=y | 271 | CONFIG_MFD_MAX17135=y |
| 488 | CONFIG_MFD_FP9931=y | 272 | CONFIG_MFD_RN5T618=y |
| 489 | CONFIG_MFD_MAX77620=y | 273 | CONFIG_MFD_SI476X_CORE=y |
| 490 | CONFIG_MFD_MT6397=y | 274 | CONFIG_MFD_STMPE=y |
| 491 | CONFIG_MFD_RK808=y | 275 | CONFIG_REGULATOR=y |
| 492 | CONFIG_MFD_SEC_CORE=y | ||
| 493 | CONFIG_MFD_SL28CPLD=y | ||
| 494 | CONFIG_MFD_ROHM_BD718XX=y | ||
| 495 | CONFIG_MFD_WCD934X=m | ||
| 496 | CONFIG_REGULATOR_FIXED_VOLTAGE=y | 276 | CONFIG_REGULATOR_FIXED_VOLTAGE=y |
| 497 | CONFIG_REGULATOR_AXP20X=y | 277 | CONFIG_REGULATOR_ANATOP=y |
| 498 | CONFIG_REGULATOR_BD718XX=y | 278 | CONFIG_REGULATOR_DA9052=y |
| 499 | CONFIG_REGULATOR_BD9571MWV=y | 279 | CONFIG_REGULATOR_DA9062=y |
| 500 | CONFIG_REGULATOR_FAN53555=y | 280 | CONFIG_REGULATOR_DA9063=y |
| 501 | CONFIG_REGULATOR_GPIO=y | 281 | CONFIG_REGULATOR_GPIO=y |
| 502 | CONFIG_REGULATOR_HI6421V530=y | 282 | CONFIG_REGULATOR_LTC3676=y |
| 503 | CONFIG_REGULATOR_MAX77620=y | 283 | CONFIG_REGULATOR_MAX17135=y |
| 504 | CONFIG_REGULATOR_MAX8973=y | 284 | CONFIG_REGULATOR_MC13783=y |
| 505 | CONFIG_REGULATOR_FP9931=y | 285 | CONFIG_REGULATOR_MC13892=y |
| 506 | CONFIG_REGULATOR_MP8859=y | 286 | CONFIG_REGULATOR_PF1550_RPMSG=y |
| 507 | CONFIG_REGULATOR_MT6358=y | ||
| 508 | CONFIG_REGULATOR_MT6397=y | ||
| 509 | CONFIG_REGULATOR_PCA9450=y | ||
| 510 | CONFIG_REGULATOR_PF8X00=y | ||
| 511 | CONFIG_REGULATOR_PFUZE100=y | 287 | CONFIG_REGULATOR_PFUZE100=y |
| 512 | CONFIG_REGULATOR_PWM=y | 288 | CONFIG_REGULATOR_RN5T618=y |
| 513 | CONFIG_REGULATOR_QCOM_SPMI=y | 289 | CONFIG_RC_CORE=y |
| 514 | CONFIG_REGULATOR_RK808=y | ||
| 515 | CONFIG_REGULATOR_S2MPS11=y | ||
| 516 | CONFIG_REGULATOR_TPS65132=m | ||
| 517 | CONFIG_REGULATOR_VCTRL=m | ||
| 518 | CONFIG_RC_CORE=m | ||
| 519 | CONFIG_RC_DECODERS=y | ||
| 520 | CONFIG_IR_NEC_DECODER=m | ||
| 521 | CONFIG_IR_RC5_DECODER=m | ||
| 522 | CONFIG_IR_RC6_DECODER=m | ||
| 523 | CONFIG_IR_JVC_DECODER=m | ||
| 524 | CONFIG_IR_SONY_DECODER=m | ||
| 525 | CONFIG_IR_SANYO_DECODER=m | ||
| 526 | CONFIG_IR_SHARP_DECODER=m | ||
| 527 | CONFIG_IR_MCE_KBD_DECODER=m | ||
| 528 | CONFIG_IR_XMP_DECODER=m | ||
| 529 | CONFIG_IR_IMON_DECODER=m | ||
| 530 | CONFIG_IR_RCMM_DECODER=m | ||
| 531 | CONFIG_RC_DEVICES=y | 290 | CONFIG_RC_DEVICES=y |
| 532 | CONFIG_IR_GPIO_CIR=m | 291 | CONFIG_IR_GPIO_CIR=y |
| 533 | CONFIG_MEDIA_SUPPORT=y | 292 | CONFIG_MEDIA_SUPPORT=y |
| 534 | CONFIG_MEDIA_CAMERA_SUPPORT=y | ||
| 535 | CONFIG_MEDIA_ANALOG_TV_SUPPORT=y | ||
| 536 | CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y | ||
| 537 | CONFIG_MEDIA_SDR_SUPPORT=y | ||
| 538 | CONFIG_MEDIA_PLATFORM_SUPPORT=y | ||
| 539 | # CONFIG_DVB_NET is not set | ||
| 540 | CONFIG_MEDIA_USB_SUPPORT=y | 293 | CONFIG_MEDIA_USB_SUPPORT=y |
| 541 | CONFIG_USB_VIDEO_CLASS=m | 294 | CONFIG_USB_VIDEO_CLASS=m |
| 295 | CONFIG_RADIO_SI476X=y | ||
| 542 | CONFIG_V4L_PLATFORM_DRIVERS=y | 296 | CONFIG_V4L_PLATFORM_DRIVERS=y |
| 543 | CONFIG_VIDEO_MXC_CAPTURE=y | 297 | CONFIG_VIDEO_MUX=y |
| 544 | CONFIG_VIDEO_MX8_CAPTURE=y | 298 | CONFIG_VIDEO_MXC_CAPTURE=m |
| 545 | CONFIG_VIDEO_MXC_CSI_CAMERA=y | 299 | CONFIG_VIDEO_MXC_OUTPUT=y |
| 546 | CONFIG_MXC_MIPI_CSI=y | 300 | CONFIG_VIDEO_MXC_CSI_CAMERA=m |
| 547 | CONFIG_MXC_CAMERA_OV5640_MIPI_V2=y | 301 | CONFIG_MXC_VADC=m |
| 302 | CONFIG_MXC_MIPI_CSI=m | ||
| 303 | CONFIG_MXC_CAMERA_OV5640=m | ||
| 304 | CONFIG_MXC_CAMERA_OV5640_V2=m | ||
| 305 | CONFIG_MXC_CAMERA_OV5640_MIPI=m | ||
| 306 | CONFIG_MXC_CAMERA_OV5640_MIPI_V2=m | ||
| 307 | CONFIG_MXC_TVIN_ADV7180=m | ||
| 308 | CONFIG_MXC_IPU_DEVICE_QUEUE_SDC=m | ||
| 309 | CONFIG_VIDEO_MXC_IPU_OUTPUT=y | ||
| 310 | CONFIG_VIDEO_MXC_PXP_V4L2=y | ||
| 548 | CONFIG_V4L_MEM2MEM_DRIVERS=y | 311 | CONFIG_V4L_MEM2MEM_DRIVERS=y |
| 549 | CONFIG_VIDEO_IMX8_JPEG=m | 312 | CONFIG_VIDEO_CODA=m |
| 550 | CONFIG_SDR_PLATFORM_DRIVERS=y | 313 | CONFIG_VIDEO_IMX_PXP=y |
| 551 | CONFIG_VIDEO_IMX219=m | 314 | CONFIG_VIDEO_ADV7180=m |
| 552 | CONFIG_VIDEO_OV5640=y | 315 | CONFIG_VIDEO_OV2680=m |
| 553 | CONFIG_VIDEO_OV5645=m | 316 | CONFIG_VIDEO_OV5645=m |
| 554 | CONFIG_IMX_DPU_CORE=y | ||
| 555 | CONFIG_IMX_LCDIF_CORE=y | ||
| 556 | CONFIG_IMX_LCDIFV3_CORE=y | ||
| 557 | CONFIG_DRM=y | 317 | CONFIG_DRM=y |
| 558 | CONFIG_DRM_I2C_NXP_TDA998X=m | 318 | CONFIG_DRM_PANEL_LVDS=y |
| 559 | CONFIG_DRM_MALI_DISPLAY=m | ||
| 560 | CONFIG_DRM_NOUVEAU=m | ||
| 561 | CONFIG_DRM_RCAR_DW_HDMI=m | ||
| 562 | CONFIG_DRM_RCAR_LVDS=m | ||
| 563 | CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m | ||
| 564 | CONFIG_DRM_PANEL_LVDS=m | ||
| 565 | CONFIG_DRM_PANEL_SIMPLE=y | 319 | CONFIG_DRM_PANEL_SIMPLE=y |
| 566 | CONFIG_DRM_PANEL_MANTIX_MLAF057WE51=m | ||
| 567 | CONFIG_DRM_PANEL_RAYDIUM_RM67191=y | ||
| 568 | CONFIG_DRM_PANEL_RAYDIUM_RM68200=y | ||
| 569 | CONFIG_DRM_PANEL_ROCKTECK_HIMAX8394F=y | ||
| 570 | CONFIG_DRM_PANEL_SEIKO_43WVF1G=y | 320 | CONFIG_DRM_PANEL_SEIKO_43WVF1G=y |
| 571 | CONFIG_DRM_PANEL_SITRONIX_ST7703=m | 321 | CONFIG_DRM_TI_TFP410=y |
| 572 | CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA=m | ||
| 573 | CONFIG_DRM_PANEL_WKS_101WX001=y | ||
| 574 | CONFIG_DRM_DISPLAY_CONNECTOR=m | ||
| 575 | CONFIG_DRM_LONTIUM_LT8912B=m | ||
| 576 | CONFIG_DRM_LONTIUM_LT9611=m | ||
| 577 | CONFIG_DRM_LONTIUM_LT9611UXC=m | ||
| 578 | CONFIG_DRM_FSL_IMX_LVDS_BRIDGE=y | ||
| 579 | CONFIG_DRM_NWL_MIPI_DSI=y | ||
| 580 | CONFIG_DRM_NXP_SEIKO_43WVFIG=y | ||
| 581 | CONFIG_DRM_PARADE_PS8640=m | ||
| 582 | CONFIG_DRM_SII902X=m | ||
| 583 | CONFIG_DRM_SIMPLE_BRIDGE=m | ||
| 584 | CONFIG_DRM_THINE_THC63LVD1024=m | ||
| 585 | CONFIG_DRM_TI_SN65DSI86=m | ||
| 586 | CONFIG_DRM_I2C_ADV7511=y | ||
| 587 | CONFIG_DRM_I2C_ADV7511_AUDIO=y | ||
| 588 | CONFIG_DRM_CDNS_HDCP=y | ||
| 589 | CONFIG_DRM_CDNS_HDMI_CEC=y | ||
| 590 | CONFIG_DRM_DW_HDMI_AHB_AUDIO=m | ||
| 591 | CONFIG_DRM_DW_HDMI_I2S_AUDIO=m | ||
| 592 | CONFIG_DRM_DW_HDMI_GP_AUDIO=y | ||
| 593 | CONFIG_DRM_DW_HDMI_CEC=m | ||
| 594 | CONFIG_DRM_ITE_IT6263=y | ||
| 595 | CONFIG_DRM_ITE_IT6161=y | ||
| 596 | CONFIG_DRM_IMX=y | ||
| 597 | CONFIG_DRM_IMX_LCDIF_MUX_DISPLAY=y | ||
| 598 | CONFIG_DRM_IMX_PARALLEL_DISPLAY=y | ||
| 599 | CONFIG_DRM_IMX_TVE=y | ||
| 600 | CONFIG_DRM_IMX_LDB=y | ||
| 601 | CONFIG_DRM_IMX8QM_LDB=y | ||
| 602 | CONFIG_DRM_IMX8QXP_LDB=y | ||
| 603 | CONFIG_DRM_IMX8MP_LDB=y | ||
| 604 | CONFIG_DRM_IMX_HDMI=y | ||
| 605 | CONFIG_DRM_IMX_SEC_DSIM=y | ||
| 606 | CONFIG_DRM_IMX_DCNANO=y | ||
| 607 | CONFIG_DRM_IMX_DCSS=y | ||
| 608 | CONFIG_DRM_IMX_CDNS_MHDP=y | ||
| 609 | CONFIG_DRM_ETNAVIV=m | ||
| 610 | CONFIG_DRM_HISI_HIBMC=m | ||
| 611 | CONFIG_DRM_HISI_KIRIN=m | ||
| 612 | CONFIG_DRM_MXSFB=y | ||
| 613 | CONFIG_DRM_PL111=m | ||
| 614 | CONFIG_DRM_LIMA=m | ||
| 615 | CONFIG_DRM_PANFROST=m | ||
| 616 | CONFIG_FB=y | 322 | CONFIG_FB=y |
| 617 | CONFIG_FB_ARMCLCD=y | 323 | CONFIG_FB_MXS=y |
| 618 | CONFIG_FB_EFI=y | 324 | CONFIG_FB_MXC_SYNC_PANEL=y |
| 325 | CONFIG_FB_MXC_OVERLAY=y | ||
| 326 | CONFIG_FB_MXC_MIPI_DSI_NORTHWEST=y | ||
| 327 | CONFIG_FB_MXC_ADV7535=y | ||
| 328 | CONFIG_FB_MXC_TRULY_PANEL_TFT3P5581E=y | ||
| 329 | CONFIG_FB_MXC_TRULY_WVGA_SYNC_PANEL=y | ||
| 330 | CONFIG_FB_MXC_RK_PANEL_RK055AHD042=y | ||
| 331 | CONFIG_FB_MXC_RK_PANEL_RK055IQH042=y | ||
| 332 | CONFIG_FB_MXC_MIPI_DSI_SAMSUNG=y | ||
| 333 | CONFIG_FB_MXC_MIPI_DSI=y | ||
| 334 | CONFIG_FB_MXC_LDB=y | ||
| 335 | CONFIG_FB_MXC_EINK_PANEL=y | ||
| 619 | CONFIG_FB_MXC_EINK_V2_PANEL=y | 336 | CONFIG_FB_MXC_EINK_V2_PANEL=y |
| 337 | CONFIG_FB_MXC_HDMI=y | ||
| 338 | CONFIG_FB_MXS_SII902X=y | ||
| 339 | CONFIG_FB_MXC_DCIC=y | ||
| 340 | CONFIG_LCD_CLASS_DEVICE=y | ||
| 341 | CONFIG_LCD_L4F00242T03=y | ||
| 342 | CONFIG_LCD_PLATFORM=y | ||
| 620 | CONFIG_BACKLIGHT_PWM=y | 343 | CONFIG_BACKLIGHT_PWM=y |
| 621 | CONFIG_BACKLIGHT_LP855X=m | 344 | CONFIG_BACKLIGHT_GPIO=y |
| 345 | CONFIG_FRAMEBUFFER_CONSOLE=y | ||
| 622 | CONFIG_LOGO=y | 346 | CONFIG_LOGO=y |
| 623 | # CONFIG_LOGO_LINUX_MONO is not set | ||
| 624 | # CONFIG_LOGO_LINUX_VGA16 is not set | ||
| 625 | CONFIG_SOUND=y | 347 | CONFIG_SOUND=y |
| 626 | CONFIG_SND=y | 348 | CONFIG_SND=y |
| 627 | CONFIG_SND_ALOOP=m | ||
| 628 | CONFIG_SND_USB_AUDIO=m | 349 | CONFIG_SND_USB_AUDIO=m |
| 629 | CONFIG_SND_SOC=y | 350 | CONFIG_SND_SOC=y |
| 630 | CONFIG_SND_SOC_FSL_ASRC=m | 351 | CONFIG_SND_SOC_FSL_ASRC=y |
| 631 | CONFIG_SND_SOC_FSL_MQS=m | 352 | CONFIG_SND_SOC_FSL_MQS=y |
| 632 | CONFIG_SND_SOC_FSL_MICFIL=m | 353 | CONFIG_SND_SOC_FSL_RPMSG=y |
| 633 | CONFIG_SND_SOC_FSL_EASRC=m | 354 | CONFIG_SND_IMX_SOC=y |
| 634 | CONFIG_SND_SOC_FSL_XCVR=m | 355 | CONFIG_SND_SOC_EUKREA_TLV320=y |
| 635 | CONFIG_SND_SOC_FSL_ESAI_CLIENT=y | 356 | CONFIG_SND_SOC_IMX_ES8328=y |
| 636 | CONFIG_SND_SOC_FSL_RPMSG=m | 357 | CONFIG_SND_SOC_IMX_SGTL5000=y |
| 637 | CONFIG_SND_IMX_SOC=m | 358 | CONFIG_SND_SOC_IMX_SPDIF=y |
| 638 | CONFIG_SND_SOC_IMX_SGTL5000=m | 359 | CONFIG_SND_SOC_FSL_ASOC_CARD=y |
| 639 | CONFIG_SND_SOC_IMX_SPDIF=m | 360 | CONFIG_SND_SOC_IMX_HDMI=y |
| 640 | CONFIG_SND_SOC_FSL_ASOC_CARD=m | 361 | CONFIG_SND_SOC_IMX6QDL_HDMI=y |
| 641 | CONFIG_SND_SOC_IMX_AUDMIX=m | 362 | CONFIG_SND_SOC_AC97_CODEC=y |
| 642 | CONFIG_SND_SOC_IMX_HDMI=m | ||
| 643 | CONFIG_SND_SOC_IMX_CARD=m | ||
| 644 | CONFIG_SND_SOC_IMX_PDM_MIC=m | ||
| 645 | CONFIG_SND_SOC_IMX_PCM512X=m | ||
| 646 | CONFIG_SND_SOC_SOF_TOPLEVEL=y | ||
| 647 | CONFIG_SND_SOC_SOF_OF=m | ||
| 648 | CONFIG_SND_SOC_SOF_COMPRESS=y | ||
| 649 | CONFIG_SND_SOC_SOF_IMX_TOPLEVEL=y | ||
| 650 | CONFIG_SND_SOC_SOF_IMX8=m | ||
| 651 | CONFIG_SND_SOC_SOF_IMX8M=m | ||
| 652 | CONFIG_SND_SOC_SOF_IMX8ULP=m | ||
| 653 | CONFIG_SND_SOC_AK4613=m | ||
| 654 | CONFIG_SND_SOC_BT_SCO=y | ||
| 655 | CONFIG_SND_SOC_CROS_EC_CODEC=m | ||
| 656 | CONFIG_SND_SOC_CS42XX8_I2C=y | 363 | CONFIG_SND_SOC_CS42XX8_I2C=y |
| 657 | CONFIG_SND_SOC_DMIC=m | 364 | CONFIG_SND_SOC_WM8960=y |
| 658 | CONFIG_SND_SOC_ES7134=m | 365 | CONFIG_SND_SOC_WM8962=y |
| 659 | CONFIG_SND_SOC_ES7241=m | 366 | CONFIG_SND_SOC_RPMSG_WM8960=y |
| 660 | CONFIG_SND_SOC_GTM601=m | ||
| 661 | CONFIG_SND_SOC_MAX98357A=m | ||
| 662 | CONFIG_SND_SOC_MAX98927=m | ||
| 663 | CONFIG_SND_SOC_MSM8916_WCD_ANALOG=m | ||
| 664 | CONFIG_SND_SOC_MSM8916_WCD_DIGITAL=m | ||
| 665 | CONFIG_SND_SOC_PCM3168A_I2C=m | ||
| 666 | CONFIG_SND_SOC_RT5659=m | ||
| 667 | CONFIG_SND_SOC_SIMPLE_AMPLIFIER=m | ||
| 668 | CONFIG_SND_SOC_SIMPLE_MUX=m | ||
| 669 | CONFIG_SND_SOC_SPDIF=m | ||
| 670 | CONFIG_SND_SOC_TAS571X=m | ||
| 671 | CONFIG_SND_SOC_WCD934X=m | ||
| 672 | CONFIG_SND_SOC_WM8524=y | ||
| 673 | CONFIG_SND_SOC_WM8904=m | ||
| 674 | CONFIG_SND_SOC_WM8960=m | ||
| 675 | CONFIG_SND_SOC_WM8962=m | ||
| 676 | CONFIG_SND_SOC_WSA881X=m | ||
| 677 | CONFIG_SND_SOC_RPMSG_WM8960=m | ||
| 678 | CONFIG_SND_SOC_RPMSG_AK4497=m | ||
| 679 | CONFIG_SND_SOC_LPASS_WSA_MACRO=m | ||
| 680 | CONFIG_SND_SOC_LPASS_VA_MACRO=m | ||
| 681 | CONFIG_SND_SIMPLE_CARD=y | 367 | CONFIG_SND_SIMPLE_CARD=y |
| 682 | CONFIG_SND_AUDIO_GRAPH_CARD=y | 368 | CONFIG_HID_MULTITOUCH=y |
| 683 | CONFIG_HID_MULTITOUCH=m | ||
| 684 | CONFIG_I2C_HID_ACPI=m | ||
| 685 | CONFIG_I2C_HID_OF=m | ||
| 686 | CONFIG_USB_CONN_GPIO=y | ||
| 687 | CONFIG_USB=y | 369 | CONFIG_USB=y |
| 688 | CONFIG_USB_OTG=y | 370 | CONFIG_USB_ANNOUNCE_NEW_DEVICES=y |
| 689 | CONFIG_USB_XHCI_HCD=y | ||
| 690 | CONFIG_USB_XHCI_PCI_RENESAS=m | ||
| 691 | CONFIG_USB_EHCI_HCD=y | 371 | CONFIG_USB_EHCI_HCD=y |
| 692 | CONFIG_USB_EHCI_HCD_PLATFORM=y | ||
| 693 | CONFIG_USB_OHCI_HCD=y | ||
| 694 | CONFIG_USB_OHCI_HCD_PLATFORM=y | ||
| 695 | CONFIG_USB_HCD_TEST_MODE=y | 372 | CONFIG_USB_HCD_TEST_MODE=y |
| 696 | CONFIG_USB_ACM=m | 373 | CONFIG_USB_ACM=m |
| 697 | CONFIG_USB_STORAGE=y | 374 | CONFIG_USB_STORAGE=y |
| 698 | CONFIG_USB_UAS=y | ||
| 699 | CONFIG_USB_CDNS_SUPPORT=y | ||
| 700 | CONFIG_USB_CDNS3=y | ||
| 701 | CONFIG_USB_CDNS3_GADGET=y | ||
| 702 | CONFIG_USB_CDNS3_HOST=y | ||
| 703 | CONFIG_USB_MUSB_HDRC=y | ||
| 704 | CONFIG_USB_DWC3=y | ||
| 705 | CONFIG_USB_DWC2=y | ||
| 706 | CONFIG_USB_CHIPIDEA=y | 375 | CONFIG_USB_CHIPIDEA=y |
| 707 | CONFIG_USB_CHIPIDEA_UDC=y | 376 | CONFIG_USB_CHIPIDEA_UDC=y |
| 708 | CONFIG_USB_CHIPIDEA_HOST=y | 377 | CONFIG_USB_CHIPIDEA_HOST=y |
| 709 | CONFIG_USB_ISP1760=y | 378 | CONFIG_USB_SERIAL=m |
| 710 | CONFIG_USB_SERIAL=y | ||
| 711 | CONFIG_USB_SERIAL_CONSOLE=y | ||
| 712 | CONFIG_USB_SERIAL_GENERIC=y | 379 | CONFIG_USB_SERIAL_GENERIC=y |
| 713 | CONFIG_USB_SERIAL_SIMPLE=y | 380 | CONFIG_USB_SERIAL_FTDI_SIO=m |
| 714 | CONFIG_USB_SERIAL_CP210X=m | ||
| 715 | CONFIG_USB_SERIAL_FTDI_SIO=y | ||
| 716 | CONFIG_USB_SERIAL_OPTION=m | 381 | CONFIG_USB_SERIAL_OPTION=m |
| 717 | CONFIG_USB_TEST=m | 382 | CONFIG_USB_TEST=m |
| 718 | CONFIG_USB_EHSET_TEST_FIXTURE=y | 383 | CONFIG_USB_EHSET_TEST_FIXTURE=m |
| 719 | CONFIG_USB_HSIC_USB3503=y | ||
| 720 | CONFIG_NOP_USB_XCEIV=y | 384 | CONFIG_NOP_USB_XCEIV=y |
| 721 | CONFIG_USB_MXS_PHY=y | 385 | CONFIG_USB_MXS_PHY=y |
| 722 | CONFIG_USB_ULPI=y | ||
| 723 | CONFIG_USB_GADGET=y | 386 | CONFIG_USB_GADGET=y |
| 724 | CONFIG_USB_SNP_UDC_PLAT=y | ||
| 725 | CONFIG_USB_BDC_UDC=y | ||
| 726 | CONFIG_USB_CONFIGFS=y | 387 | CONFIG_USB_CONFIGFS=y |
| 727 | CONFIG_USB_CONFIGFS_SERIAL=y | 388 | CONFIG_USB_CONFIGFS_SERIAL=y |
| 728 | CONFIG_USB_CONFIGFS_ACM=y | 389 | CONFIG_USB_CONFIGFS_ACM=y |
| @@ -736,253 +397,131 @@ CONFIG_USB_CONFIGFS_MASS_STORAGE=y | |||
| 736 | CONFIG_USB_CONFIGFS_F_LB_SS=y | 397 | CONFIG_USB_CONFIGFS_F_LB_SS=y |
| 737 | CONFIG_USB_CONFIGFS_F_FS=y | 398 | CONFIG_USB_CONFIGFS_F_FS=y |
| 738 | CONFIG_USB_CONFIGFS_F_UAC1=y | 399 | CONFIG_USB_CONFIGFS_F_UAC1=y |
| 739 | CONFIG_USB_CONFIGFS_F_UAC1_LEGACY=y | ||
| 740 | CONFIG_USB_CONFIGFS_F_UAC2=y | 400 | CONFIG_USB_CONFIGFS_F_UAC2=y |
| 741 | CONFIG_USB_CONFIGFS_F_MIDI=y | 401 | CONFIG_USB_CONFIGFS_F_MIDI=y |
| 742 | CONFIG_USB_CONFIGFS_F_HID=y | 402 | CONFIG_USB_CONFIGFS_F_HID=y |
| 743 | CONFIG_USB_CONFIGFS_F_UVC=y | 403 | CONFIG_USB_CONFIGFS_F_UVC=y |
| 404 | CONFIG_USB_CONFIGFS_F_PRINTER=y | ||
| 744 | CONFIG_USB_ZERO=m | 405 | CONFIG_USB_ZERO=m |
| 745 | CONFIG_USB_AUDIO=m | 406 | CONFIG_USB_AUDIO=m |
| 746 | CONFIG_USB_ETH=m | 407 | CONFIG_USB_ETH=m |
| 408 | CONFIG_USB_G_NCM=m | ||
| 409 | CONFIG_USB_GADGETFS=m | ||
| 410 | CONFIG_USB_FUNCTIONFS=m | ||
| 747 | CONFIG_USB_MASS_STORAGE=m | 411 | CONFIG_USB_MASS_STORAGE=m |
| 748 | CONFIG_USB_G_SERIAL=m | 412 | CONFIG_USB_G_SERIAL=m |
| 749 | CONFIG_TYPEC=y | ||
| 750 | CONFIG_TYPEC_TCPM=y | ||
| 751 | CONFIG_TYPEC_TCPCI=y | ||
| 752 | CONFIG_TYPEC_FUSB302=m | ||
| 753 | CONFIG_TYPEC_TPS6598X=m | ||
| 754 | CONFIG_TYPEC_HD3SS3220=m | ||
| 755 | CONFIG_TYPEC_SWITCH_GPIO=y | ||
| 756 | CONFIG_MMC=y | 413 | CONFIG_MMC=y |
| 757 | CONFIG_MMC_BLOCK_MINORS=32 | ||
| 758 | CONFIG_MMC_ARMMMCI=y | ||
| 759 | CONFIG_MMC_SDHCI=y | 414 | CONFIG_MMC_SDHCI=y |
| 760 | CONFIG_MMC_SDHCI_ACPI=y | ||
| 761 | CONFIG_MMC_SDHCI_PLTFM=y | 415 | CONFIG_MMC_SDHCI_PLTFM=y |
| 762 | CONFIG_MMC_SDHCI_OF_ARASAN=y | ||
| 763 | CONFIG_MMC_SDHCI_OF_ESDHC=y | ||
| 764 | CONFIG_MMC_SDHCI_CADENCE=y | ||
| 765 | CONFIG_MMC_SDHCI_ESDHC_IMX=y | 416 | CONFIG_MMC_SDHCI_ESDHC_IMX=y |
| 766 | CONFIG_MMC_SDHCI_F_SDH30=y | ||
| 767 | CONFIG_MMC_SPI=y | ||
| 768 | CONFIG_MMC_DW=y | ||
| 769 | CONFIG_MMC_DW_EXYNOS=y | ||
| 770 | CONFIG_MMC_DW_HI3798CV200=y | ||
| 771 | CONFIG_MMC_DW_K3=y | ||
| 772 | CONFIG_MMC_MTK=y | ||
| 773 | CONFIG_MMC_SDHCI_XENON=y | ||
| 774 | CONFIG_MMC_SDHCI_AM654=y | ||
| 775 | CONFIG_NEW_LEDS=y | 417 | CONFIG_NEW_LEDS=y |
| 776 | CONFIG_LEDS_CLASS=y | 418 | CONFIG_LEDS_CLASS=y |
| 777 | CONFIG_LEDS_LM3692X=m | ||
| 778 | CONFIG_LEDS_PCA9532=m | ||
| 779 | CONFIG_LEDS_GPIO=y | 419 | CONFIG_LEDS_GPIO=y |
| 780 | CONFIG_LEDS_PWM=y | 420 | CONFIG_LEDS_PWM=y |
| 781 | CONFIG_LEDS_SYSCON=y | 421 | CONFIG_LEDS_TRIGGERS=y |
| 782 | CONFIG_LEDS_TRIGGER_TIMER=y | 422 | CONFIG_LEDS_TRIGGER_TIMER=y |
| 783 | CONFIG_LEDS_TRIGGER_DISK=y | 423 | CONFIG_LEDS_TRIGGER_ONESHOT=y |
| 784 | CONFIG_LEDS_TRIGGER_HEARTBEAT=y | 424 | CONFIG_LEDS_TRIGGER_HEARTBEAT=y |
| 785 | CONFIG_LEDS_TRIGGER_CPU=y | 425 | CONFIG_LEDS_TRIGGER_BACKLIGHT=y |
| 426 | CONFIG_LEDS_TRIGGER_GPIO=y | ||
| 786 | CONFIG_LEDS_TRIGGER_DEFAULT_ON=y | 427 | CONFIG_LEDS_TRIGGER_DEFAULT_ON=y |
| 787 | CONFIG_LEDS_TRIGGER_PANIC=y | ||
| 788 | CONFIG_EDAC=y | ||
| 789 | CONFIG_EDAC_GHES=y | ||
| 790 | CONFIG_EDAC_LAYERSCAPE=m | ||
| 791 | CONFIG_EDAC_SYNOPSYS=y | ||
| 792 | CONFIG_RTC_CLASS=y | 428 | CONFIG_RTC_CLASS=y |
| 793 | CONFIG_RTC_DRV_DS1307=m | 429 | CONFIG_RTC_INTF_DEV_UIE_EMUL=y |
| 794 | CONFIG_RTC_DRV_HYM8563=m | 430 | CONFIG_RTC_DRV_DS1307=y |
| 795 | CONFIG_RTC_DRV_MAX77686=y | 431 | CONFIG_RTC_DRV_ISL1208=y |
| 796 | CONFIG_RTC_DRV_RK808=m | 432 | CONFIG_RTC_DRV_PCF8523=y |
| 797 | CONFIG_RTC_DRV_PCF85363=m | 433 | CONFIG_RTC_DRV_PCF8563=y |
| 798 | CONFIG_RTC_DRV_M41T80=m | 434 | CONFIG_RTC_DRV_M41T80=y |
| 799 | CONFIG_RTC_DRV_RX8581=m | 435 | CONFIG_RTC_DRV_RC5T619=y |
| 800 | CONFIG_RTC_DRV_RV3028=m | 436 | CONFIG_RTC_DRV_DA9063=y |
| 801 | CONFIG_RTC_DRV_RV8803=m | 437 | CONFIG_RTC_DRV_MC13XXX=y |
| 802 | CONFIG_RTC_DRV_S5M=y | 438 | CONFIG_RTC_DRV_MXC=y |
| 803 | CONFIG_RTC_DRV_DS3232=y | 439 | CONFIG_RTC_DRV_MXC_V2=y |
| 804 | CONFIG_RTC_DRV_PCF2127=m | ||
| 805 | CONFIG_RTC_DRV_EFI=y | ||
| 806 | CONFIG_RTC_DRV_CROS_EC=y | ||
| 807 | CONFIG_RTC_DRV_FSL_FTM_ALARM=m | ||
| 808 | CONFIG_RTC_DRV_PL031=y | ||
| 809 | CONFIG_RTC_DRV_SNVS=y | 440 | CONFIG_RTC_DRV_SNVS=y |
| 810 | CONFIG_RTC_DRV_IMX_SC=y | ||
| 811 | CONFIG_RTC_DRV_IMX_RPMSG=y | 441 | CONFIG_RTC_DRV_IMX_RPMSG=y |
| 812 | CONFIG_DMADEVICES=y | 442 | CONFIG_DMADEVICES=y |
| 813 | CONFIG_BCM_SBA_RAID=m | ||
| 814 | CONFIG_FSL_EDMA=y | 443 | CONFIG_FSL_EDMA=y |
| 815 | CONFIG_FSL_QDMA=m | ||
| 816 | CONFIG_FSL_EDMA_V3=y | ||
| 817 | CONFIG_IMX_SDMA=y | 444 | CONFIG_IMX_SDMA=y |
| 818 | CONFIG_MV_XOR_V2=y | ||
| 819 | CONFIG_MXS_DMA=y | 445 | CONFIG_MXS_DMA=y |
| 446 | CONFIG_MXC_PXP_V2=y | ||
| 820 | CONFIG_MXC_PXP_V3=y | 447 | CONFIG_MXC_PXP_V3=y |
| 821 | CONFIG_PL330_DMA=y | 448 | CONFIG_DMATEST=m |
| 822 | CONFIG_QCOM_HIDMA_MGMT=y | ||
| 823 | CONFIG_QCOM_HIDMA=y | ||
| 824 | CONFIG_FSL_DPAA2_QDMA=m | ||
| 825 | CONFIG_DMATEST=y | ||
| 826 | CONFIG_DMABUF_HEAPS=y | ||
| 827 | CONFIG_DMABUF_HEAPS_SYSTEM=y | ||
| 828 | CONFIG_DMABUF_HEAPS_CMA=y | ||
| 829 | CONFIG_DMABUF_HEAPS_DSP=y | ||
| 830 | CONFIG_UIO_PCI_GENERIC=y | ||
| 831 | CONFIG_UIO_IVSHMEM=y | ||
| 832 | CONFIG_VFIO=y | ||
| 833 | CONFIG_VFIO_PCI=y | ||
| 834 | CONFIG_VFIO_FSL_MC=y | ||
| 835 | CONFIG_VIRTIO_PCI=y | ||
| 836 | CONFIG_VIRTIO_BALLOON=y | ||
| 837 | CONFIG_VIRTIO_MMIO=y | ||
| 838 | CONFIG_VIRTIO_IVSHMEM=y | ||
| 839 | CONFIG_XEN_GNTDEV=y | ||
| 840 | CONFIG_XEN_GRANT_DEV_ALLOC=y | ||
| 841 | CONFIG_STAGING=y | 449 | CONFIG_STAGING=y |
| 842 | CONFIG_STAGING_MEDIA=y | 450 | CONFIG_STAGING_MEDIA=y |
| 843 | CONFIG_VIDEO_HANTRO=m | ||
| 844 | CONFIG_VIDEO_IMX_CAPTURE=y | ||
| 845 | CONFIG_IMX8_MEDIA_DEVICE=m | ||
| 846 | CONFIG_MHDP_HDMIRX=y | ||
| 847 | CONFIG_MHDP_HDMIRX_CEC=y | ||
| 848 | CONFIG_FSL_DPAA2=y | ||
| 849 | CONFIG_FSL_PPFE=y | ||
| 850 | CONFIG_FSL_PPFE_UTIL_DISABLED=y | ||
| 851 | CONFIG_CHROME_PLATFORMS=y | ||
| 852 | CONFIG_CROS_EC=y | ||
| 853 | CONFIG_CROS_EC_I2C=y | ||
| 854 | CONFIG_CROS_EC_SPI=y | ||
| 855 | CONFIG_CROS_EC_CHARDEV=m | ||
| 856 | CONFIG_CLK_VEXPRESS_OSC=y | ||
| 857 | CONFIG_COMMON_CLK_RK808=y | ||
| 858 | CONFIG_COMMON_CLK_SCMI=y | ||
| 859 | CONFIG_COMMON_CLK_SCPI=y | ||
| 860 | CONFIG_COMMON_CLK_CS2000_CP=y | ||
| 861 | CONFIG_COMMON_CLK_FSL_SAI=y | ||
| 862 | CONFIG_COMMON_CLK_S2MPS11=y | ||
| 863 | CONFIG_COMMON_CLK_XGENE=y | ||
| 864 | CONFIG_COMMON_CLK_PWM=y | 451 | CONFIG_COMMON_CLK_PWM=y |
| 865 | CONFIG_COMMON_CLK_VC5=y | ||
| 866 | CONFIG_CLK_IMX8MM=y | ||
| 867 | CONFIG_CLK_IMX8MN=y | ||
| 868 | CONFIG_CLK_IMX8MP=y | ||
| 869 | CONFIG_CLK_IMX8MQ=y | ||
| 870 | CONFIG_CLK_IMX8QXP=y | ||
| 871 | CONFIG_CLK_IMX8ULP=y | ||
| 872 | CONFIG_HWSPINLOCK=y | ||
| 873 | CONFIG_ARM_MHU=y | ||
| 874 | CONFIG_IMX_MBOX=y | ||
| 875 | CONFIG_PLATFORM_MHU=y | ||
| 876 | CONFIG_IOMMU_IO_PGTABLE_ARMV7S=y | ||
| 877 | CONFIG_ARM_SMMU=y | ||
| 878 | CONFIG_ARM_SMMU_V3=y | ||
| 879 | CONFIG_REMOTEPROC=y | 452 | CONFIG_REMOTEPROC=y |
| 880 | CONFIG_IMX_REMOTEPROC=y | 453 | CONFIG_IMX_REMOTEPROC=y |
| 881 | CONFIG_IMX_DSP_REMOTEPROC=m | ||
| 882 | CONFIG_RPMSG_CHAR=m | ||
| 883 | CONFIG_RPMSG_QCOM_GLINK_RPM=y | ||
| 884 | CONFIG_SOUNDWIRE=m | ||
| 885 | CONFIG_SOUNDWIRE_QCOM=m | ||
| 886 | CONFIG_SOC_BRCMSTB=y | ||
| 887 | CONFIG_FSL_DPAA=y | ||
| 888 | CONFIG_FSL_MC_DPIO=y | ||
| 889 | CONFIG_FSL_RCPM=y | ||
| 890 | CONFIG_FSL_QIXIS=y | ||
| 891 | CONFIG_SOC_TI=y | ||
| 892 | CONFIG_ARM_IMX_BUS_DEVFREQ=m | ||
| 893 | CONFIG_ARM_IMX8M_DDRC_DEVFREQ=m | ||
| 894 | CONFIG_EXTCON_PTN5150=m | ||
| 895 | CONFIG_EXTCON_USB_GPIO=y | 454 | CONFIG_EXTCON_USB_GPIO=y |
| 896 | CONFIG_EXTCON_USBC_CROS_EC=y | ||
| 897 | CONFIG_IIO=y | 455 | CONFIG_IIO=y |
| 898 | CONFIG_FXLS8962AF_I2C=m | 456 | CONFIG_MMA8452=y |
| 899 | CONFIG_IMX8QXP_ADC=y | 457 | CONFIG_IMX7D_ADC=y |
| 900 | CONFIG_MAX9611=m | 458 | CONFIG_RN5T618_ADC=y |
| 901 | CONFIG_QCOM_SPMI_VADC=m | 459 | CONFIG_VF610_ADC=y |
| 902 | CONFIG_QCOM_SPMI_ADC5=m | ||
| 903 | CONFIG_IIO_CROS_EC_SENSORS_CORE=m | ||
| 904 | CONFIG_IIO_CROS_EC_SENSORS=m | ||
| 905 | CONFIG_FXAS21002C=y | 460 | CONFIG_FXAS21002C=y |
| 906 | CONFIG_FXOS8700_I2C=y | 461 | CONFIG_FXOS8700_I2C=y |
| 907 | CONFIG_RPMSG_IIO_PEDOMETER=m | 462 | CONFIG_RPMSG_IIO_PEDOMETER=m |
| 908 | CONFIG_IIO_ST_LSM6DSX=y | ||
| 909 | CONFIG_IIO_CROS_EC_LIGHT_PROX=m | ||
| 910 | CONFIG_SENSORS_ISL29018=y | 463 | CONFIG_SENSORS_ISL29018=y |
| 911 | CONFIG_VCNL4000=m | 464 | CONFIG_MAG3110=y |
| 912 | CONFIG_IIO_ST_MAGN_3AXIS=m | ||
| 913 | CONFIG_IIO_CROS_EC_BARO=m | ||
| 914 | CONFIG_MPL3115=y | 465 | CONFIG_MPL3115=y |
| 915 | CONFIG_PWM=y | 466 | CONFIG_PWM=y |
| 916 | CONFIG_PWM_CROS_EC=m | 467 | CONFIG_PWM_FSL_FTM=y |
| 917 | CONFIG_PWM_FSL_FTM=m | ||
| 918 | CONFIG_PWM_IMX27=y | 468 | CONFIG_PWM_IMX27=y |
| 919 | CONFIG_PWM_RPCHIP=y | 469 | CONFIG_PWM_IMX_TPM=y |
| 920 | CONFIG_PWM_SL28CPLD=m | ||
| 921 | CONFIG_SL28CPLD_INTC=y | ||
| 922 | CONFIG_RESET_IMX7=y | ||
| 923 | CONFIG_RESET_IMX8ULP_SIM=y | ||
| 924 | CONFIG_PHY_XGENE=y | ||
| 925 | CONFIG_PHY_MIXEL_LVDS=y | 470 | CONFIG_PHY_MIXEL_LVDS=y |
| 926 | CONFIG_PHY_MIXEL_LVDS_COMBO=y | 471 | CONFIG_PHY_MIXEL_LVDS_COMBO=y |
| 927 | CONFIG_PHY_CADENCE_SALVO=y | ||
| 928 | CONFIG_PHY_FSL_IMX8MP_LVDS=y | ||
| 929 | CONFIG_PHY_MIXEL_MIPI_DPHY=y | ||
| 930 | CONFIG_PHY_SAMSUNG_HDMI_PHY=y | ||
| 931 | CONFIG_PHY_QCOM_USB_HS=y | ||
| 932 | CONFIG_PHY_SAMSUNG_USB2=y | ||
| 933 | CONFIG_ARM_SMMU_V3_PMU=m | ||
| 934 | CONFIG_FSL_IMX8_DDR_PMU=y | ||
| 935 | CONFIG_HISI_PMU=y | ||
| 936 | CONFIG_NVMEM_IMX_OCOTP=y | 472 | CONFIG_NVMEM_IMX_OCOTP=y |
| 937 | CONFIG_NVMEM_IMX_OCOTP_SCU=y | 473 | CONFIG_NVMEM_SNVS_LPGPR=y |
| 938 | CONFIG_NVMEM_RMEM=m | ||
| 939 | CONFIG_FPGA=y | ||
| 940 | CONFIG_FPGA_BRIDGE=m | ||
| 941 | CONFIG_ALTERA_FREEZE_BRIDGE=m | ||
| 942 | CONFIG_FPGA_REGION=m | ||
| 943 | CONFIG_OF_FPGA_REGION=m | ||
| 944 | CONFIG_TEE=y | 474 | CONFIG_TEE=y |
| 945 | CONFIG_OPTEE=y | 475 | CONFIG_OPTEE=y |
| 946 | CONFIG_MUX_MMIO=y | 476 | CONFIG_MUX_MMIO=y |
| 947 | CONFIG_SLIM_QCOM_CTRL=m | 477 | CONFIG_SIOX=m |
| 948 | CONFIG_INTERCONNECT=y | 478 | CONFIG_SIOX_BUS_GPIO=m |
| 949 | CONFIG_INTERCONNECT_IMX=m | ||
| 950 | CONFIG_INTERCONNECT_IMX8MQ=m | ||
| 951 | CONFIG_MXC_SIM=y | 479 | CONFIG_MXC_SIM=y |
| 952 | CONFIG_MXC_EMVSIM=y | 480 | CONFIG_MXC_IPU=y |
| 481 | CONFIG_MXC_SIMv2=y | ||
| 482 | CONFIG_MXC_MLB150=y | ||
| 483 | CONFIG_MXC_IPU_V3_PRE=y | ||
| 484 | CONFIG_MXC_HDMI_CEC=y | ||
| 485 | CONFIG_MXC_MIPI_CSI2=y | ||
| 953 | CONFIG_EXT2_FS=y | 486 | CONFIG_EXT2_FS=y |
| 487 | CONFIG_EXT2_FS_XATTR=y | ||
| 488 | CONFIG_EXT2_FS_POSIX_ACL=y | ||
| 489 | CONFIG_EXT2_FS_SECURITY=y | ||
| 954 | CONFIG_EXT3_FS=y | 490 | CONFIG_EXT3_FS=y |
| 955 | CONFIG_EXT4_FS_POSIX_ACL=y | 491 | CONFIG_EXT3_FS_POSIX_ACL=y |
| 956 | CONFIG_BTRFS_FS=m | 492 | CONFIG_EXT3_FS_SECURITY=y |
| 957 | CONFIG_BTRFS_FS_POSIX_ACL=y | ||
| 958 | CONFIG_FANOTIFY=y | ||
| 959 | CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y | ||
| 960 | CONFIG_QUOTA=y | 493 | CONFIG_QUOTA=y |
| 494 | CONFIG_QUOTA_NETLINK_INTERFACE=y | ||
| 495 | # CONFIG_PRINT_QUOTA_WARNING is not set | ||
| 961 | CONFIG_AUTOFS4_FS=y | 496 | CONFIG_AUTOFS4_FS=y |
| 962 | CONFIG_FUSE_FS=m | 497 | CONFIG_FUSE_FS=y |
| 963 | CONFIG_CUSE=m | 498 | CONFIG_OVERLAY_FS=y |
| 964 | CONFIG_OVERLAY_FS=m | 499 | CONFIG_ISO9660_FS=m |
| 500 | CONFIG_JOLIET=y | ||
| 501 | CONFIG_ZISOFS=y | ||
| 502 | CONFIG_UDF_FS=m | ||
| 503 | CONFIG_MSDOS_FS=m | ||
| 965 | CONFIG_VFAT_FS=y | 504 | CONFIG_VFAT_FS=y |
| 505 | CONFIG_TMPFS=y | ||
| 966 | CONFIG_TMPFS_POSIX_ACL=y | 506 | CONFIG_TMPFS_POSIX_ACL=y |
| 967 | CONFIG_HUGETLBFS=y | ||
| 968 | CONFIG_EFIVAR_FS=y | ||
| 969 | CONFIG_JFFS2_FS=y | 507 | CONFIG_JFFS2_FS=y |
| 970 | CONFIG_UBIFS_FS=y | 508 | CONFIG_UBIFS_FS=y |
| 971 | CONFIG_SQUASHFS=y | ||
| 972 | CONFIG_SQUASHFS_XZ=y | ||
| 973 | CONFIG_NFS_FS=y | 509 | CONFIG_NFS_FS=y |
| 510 | CONFIG_NFS_V3_ACL=y | ||
| 974 | CONFIG_NFS_V4=y | 511 | CONFIG_NFS_V4=y |
| 975 | CONFIG_NFS_V4_1=y | 512 | CONFIG_NFS_V4_1=y |
| 976 | CONFIG_NFS_V4_2=y | 513 | CONFIG_NFS_V4_2=y |
| 977 | CONFIG_ROOT_NFS=y | 514 | CONFIG_ROOT_NFS=y |
| 978 | CONFIG_9P_FS=y | 515 | CONFIG_NLS_DEFAULT="cp437" |
| 979 | CONFIG_NLS_CODEPAGE_437=y | 516 | CONFIG_NLS_CODEPAGE_437=y |
| 517 | CONFIG_NLS_ASCII=y | ||
| 980 | CONFIG_NLS_ISO8859_1=y | 518 | CONFIG_NLS_ISO8859_1=y |
| 981 | CONFIG_SECURITY=y | 519 | CONFIG_NLS_ISO8859_15=m |
| 520 | CONFIG_NLS_UTF8=y | ||
| 521 | CONFIG_SECURITYFS=y | ||
| 982 | CONFIG_CRYPTO_USER=y | 522 | CONFIG_CRYPTO_USER=y |
| 983 | CONFIG_CRYPTO_TEST=m | 523 | CONFIG_CRYPTO_TEST=m |
| 984 | CONFIG_CRYPTO_CHACHA20POLY1305=m | 524 | CONFIG_CRYPTO_ECHAINIV=m |
| 985 | CONFIG_CRYPTO_ECHAINIV=y | ||
| 986 | CONFIG_CRYPTO_TLS=m | 525 | CONFIG_CRYPTO_TLS=m |
| 987 | CONFIG_CRYPTO_CFB=m | 526 | CONFIG_CRYPTO_CFB=m |
| 988 | CONFIG_CRYPTO_CTS=m | 527 | CONFIG_CRYPTO_CTS=m |
| @@ -991,9 +530,14 @@ CONFIG_CRYPTO_OFB=m | |||
| 991 | CONFIG_CRYPTO_PCBC=m | 530 | CONFIG_CRYPTO_PCBC=m |
| 992 | CONFIG_CRYPTO_XCBC=m | 531 | CONFIG_CRYPTO_XCBC=m |
| 993 | CONFIG_CRYPTO_VMAC=m | 532 | CONFIG_CRYPTO_VMAC=m |
| 533 | CONFIG_CRYPTO_XXHASH=m | ||
| 534 | CONFIG_CRYPTO_BLAKE2B=m | ||
| 994 | CONFIG_CRYPTO_BLAKE2S=m | 535 | CONFIG_CRYPTO_BLAKE2S=m |
| 995 | CONFIG_CRYPTO_MD4=m | 536 | CONFIG_CRYPTO_MD4=m |
| 537 | CONFIG_CRYPTO_MD5=m | ||
| 996 | CONFIG_CRYPTO_RMD160=m | 538 | CONFIG_CRYPTO_RMD160=m |
| 539 | CONFIG_CRYPTO_SHA3=m | ||
| 540 | CONFIG_CRYPTO_SM3=m | ||
| 997 | CONFIG_CRYPTO_STREEBOG=m | 541 | CONFIG_CRYPTO_STREEBOG=m |
| 998 | CONFIG_CRYPTO_WP512=m | 542 | CONFIG_CRYPTO_WP512=m |
| 999 | CONFIG_CRYPTO_ANUBIS=m | 543 | CONFIG_CRYPTO_ANUBIS=m |
| @@ -1002,49 +546,42 @@ CONFIG_CRYPTO_BLOWFISH=m | |||
| 1002 | CONFIG_CRYPTO_CAMELLIA=m | 546 | CONFIG_CRYPTO_CAMELLIA=m |
| 1003 | CONFIG_CRYPTO_CAST5=m | 547 | CONFIG_CRYPTO_CAST5=m |
| 1004 | CONFIG_CRYPTO_CAST6=m | 548 | CONFIG_CRYPTO_CAST6=m |
| 549 | CONFIG_CRYPTO_DES=m | ||
| 1005 | CONFIG_CRYPTO_FCRYPT=m | 550 | CONFIG_CRYPTO_FCRYPT=m |
| 1006 | CONFIG_CRYPTO_KHAZAD=m | 551 | CONFIG_CRYPTO_KHAZAD=m |
| 1007 | CONFIG_CRYPTO_SEED=m | 552 | CONFIG_CRYPTO_SEED=m |
| 1008 | CONFIG_CRYPTO_SERPENT=m | 553 | CONFIG_CRYPTO_SERPENT=m |
| 554 | CONFIG_CRYPTO_SM4=m | ||
| 1009 | CONFIG_CRYPTO_TEA=m | 555 | CONFIG_CRYPTO_TEA=m |
| 1010 | CONFIG_CRYPTO_TWOFISH=m | 556 | CONFIG_CRYPTO_TWOFISH=m |
| 1011 | CONFIG_CRYPTO_ANSI_CPRNG=y | 557 | CONFIG_CRYPTO_ANSI_CPRNG=m |
| 1012 | CONFIG_CRYPTO_USER_API_HASH=m | ||
| 1013 | CONFIG_CRYPTO_USER_API_SKCIPHER=m | ||
| 1014 | CONFIG_CRYPTO_USER_API_RNG=m | 558 | CONFIG_CRYPTO_USER_API_RNG=m |
| 1015 | CONFIG_CRYPTO_USER_API_AEAD=m | ||
| 1016 | CONFIG_CRYPTO_DEV_FSL_CAAM_SECVIO=m | 559 | CONFIG_CRYPTO_DEV_FSL_CAAM_SECVIO=m |
| 1017 | CONFIG_CRYPTO_DEV_FSL_CAAM=m | 560 | CONFIG_CRYPTO_DEV_FSL_CAAM=m |
| 1018 | CONFIG_CRYPTO_DEV_FSL_CAAM_SM_TEST=m | 561 | CONFIG_CRYPTO_DEV_FSL_CAAM_SM_TEST=m |
| 1019 | CONFIG_CRYPTO_DEV_FSL_DPAA2_CAAM=m | 562 | CONFIG_CRYPTO_DEV_SAHARA=y |
| 1020 | CONFIG_CRYPTO_DEV_CCREE=m | 563 | CONFIG_CRYPTO_DEV_MXS_DCP=y |
| 1021 | CONFIG_CRYPTO_DEV_HISI_SEC2=m | ||
| 1022 | CONFIG_CRYPTO_DEV_HISI_ZIP=m | ||
| 1023 | CONFIG_CRYPTO_DEV_HISI_HPRE=m | ||
| 1024 | CONFIG_CRYPTO_DEV_HISI_TRNG=m | ||
| 1025 | CONFIG_CRYPTO_DEV_AMLOGIC_GXL=m | ||
| 1026 | CONFIG_INDIRECT_PIO=y | ||
| 1027 | CONFIG_CRC_CCITT=m | 564 | CONFIG_CRC_CCITT=m |
| 1028 | CONFIG_CRC8=y | 565 | CONFIG_CRC_T10DIF=y |
| 1029 | CONFIG_CMA_SIZE_MBYTES=32 | 566 | CONFIG_CRC7=m |
| 567 | CONFIG_LIBCRC32C=m | ||
| 568 | CONFIG_DMA_CMA=y | ||
| 569 | CONFIG_FONTS=y | ||
| 570 | CONFIG_FONT_8x8=y | ||
| 571 | CONFIG_FONT_8x16=y | ||
| 1030 | CONFIG_PRINTK_TIME=y | 572 | CONFIG_PRINTK_TIME=y |
| 1031 | CONFIG_DEBUG_INFO=y | 573 | # CONFIG_DEBUG_BUGVERBOSE is not set |
| 1032 | CONFIG_DEBUG_INFO_REDUCED=y | ||
| 1033 | CONFIG_MAGIC_SYSRQ=y | 574 | CONFIG_MAGIC_SYSRQ=y |
| 1034 | CONFIG_DEBUG_FS=y | 575 | CONFIG_DEBUG_FS=y |
| 1035 | CONFIG_DEBUG_KERNEL=y | ||
| 1036 | # CONFIG_SCHED_DEBUG is not set | 576 | # CONFIG_SCHED_DEBUG is not set |
| 1037 | # CONFIG_DEBUG_PREEMPT is not set | 577 | # CONFIG_DEBUG_PREEMPT is not set |
| 1038 | # CONFIG_FTRACE is not set | 578 | # CONFIG_FTRACE is not set |
| 1039 | CONFIG_CORESIGHT=y | 579 | |
| 1040 | CONFIG_CORESIGHT_LINK_AND_SINK_TMC=y | 580 | # enable AF_ALG |
| 1041 | CONFIG_CORESIGHT_SOURCE_ETM4X=y | 581 | CONFIG_CRYPTO_USER_API_HASH=m |
| 1042 | CONFIG_MEMTEST=y | 582 | CONFIG_CRYPTO_USER_API_SKCIPHER=m |
| 583 | CONFIG_CRYPTO_USER_API_AEAD=m | ||
| 584 | |||
| 585 | # enable KTLS | ||
| 1043 | CONFIG_TLS=y | 586 | CONFIG_TLS=y |
| 1044 | CONFIG_TLS_DEVICE=y | 587 | CONFIG_TLS_DEVICE=y |
| 1045 | |||
| 1046 | # enable Trusted Keys based on CAAM | ||
| 1047 | CONFIG_TRUSTED_KEYS=m | ||
| 1048 | CONFIG_TRUSTED_KEYS_TPM=n | ||
| 1049 | CONFIG_TRUSTED_KEYS_TEE=n | ||
| 1050 | CONFIG_TRUSTED_KEYS_CAAM=y | ||
diff --git a/recipes-kernel/linux/linux-fslc-imx_5.15.bb b/recipes-kernel/linux/linux-fslc-imx_5.15.bb index 19626ccf0..2db57df42 100644 --- a/recipes-kernel/linux/linux-fslc-imx_5.15.bb +++ b/recipes-kernel/linux/linux-fslc-imx_5.15.bb | |||
| @@ -38,7 +38,7 @@ Latest stable Kernel patchlevel is applied and maintained by Community." | |||
| 38 | # ------------------------------------------------------------------------------ | 38 | # ------------------------------------------------------------------------------ |
| 39 | # 3. Critical patches (SHA(s)) | 39 | # 3. Critical patches (SHA(s)) |
| 40 | # ------------------------------------------------------------------------------ | 40 | # ------------------------------------------------------------------------------ |
| 41 | # fec_uio: fix implicit declaration | 41 | # beacf1c5267a fec_uio: fix implicit declaration |
| 42 | # e8093f50522f cert host tools: Stop complaining about deprecated OpenSSL functions | 42 | # e8093f50522f cert host tools: Stop complaining about deprecated OpenSSL functions |
| 43 | # 49c2d3b7964d gpio: fix enabling GPIO_VF610 | 43 | # 49c2d3b7964d gpio: fix enabling GPIO_VF610 |
| 44 | # c04a396fcbf7 ARM: mach-imx: conditionally disable some functions from busfreq-imx | 44 | # c04a396fcbf7 ARM: mach-imx: conditionally disable some functions from busfreq-imx |
| @@ -58,14 +58,14 @@ LICENSE = "GPL-2.0-only" | |||
| 58 | LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" | 58 | LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" |
| 59 | 59 | ||
| 60 | KBRANCH = "5.15-2.0.x-imx" | 60 | KBRANCH = "5.15-2.0.x-imx" |
| 61 | SRCREV = "d818413e4d7901cb8a00a631a389326e2c93ae41" | 61 | SRCREV = "845d53f13aac7d712b931a21df53bc8ccb22b31b" |
| 62 | 62 | ||
| 63 | # PV is defined in the base in linux-imx.inc file and uses the LINUX_VERSION definition | 63 | # PV is defined in the base in linux-imx.inc file and uses the LINUX_VERSION definition |
| 64 | # required by kernel-yocto.bbclass. | 64 | # required by kernel-yocto.bbclass. |
| 65 | # | 65 | # |
| 66 | # LINUX_VERSION define should match to the kernel version referenced by SRC_URI and | 66 | # LINUX_VERSION define should match to the kernel version referenced by SRC_URI and |
| 67 | # should be updated once patchlevel is merged. | 67 | # should be updated once patchlevel is merged. |
| 68 | LINUX_VERSION = "5.15.60" | 68 | LINUX_VERSION = "5.15.67" |
| 69 | 69 | ||
| 70 | # Local version indicates the branch name in the NXP kernel tree where patches are collected from. | 70 | # Local version indicates the branch name in the NXP kernel tree where patches are collected from. |
| 71 | LOCALVERSION = "-5.15.60-2.0.0" | 71 | LOCALVERSION = "-5.15.60-2.0.0" |
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gstallocatorphymem.c-Typecast-result-of-gst_phymem_g.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gstallocatorphymem.c-Typecast-result-of-gst_phymem_g.patch new file mode 100644 index 000000000..190571478 --- /dev/null +++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gstallocatorphymem.c-Typecast-result-of-gst_phymem_g.patch | |||
| @@ -0,0 +1,48 @@ | |||
| 1 | From 071fd005ad6572767d7441c97549b1c904719944 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Khem Raj <raj.khem@gmail.com> | ||
| 3 | Date: Mon, 12 Sep 2022 20:29:25 -0700 | ||
| 4 | Subject: [PATCH] gstallocatorphymem.c: Typecast result of gst_phymem_get_phy | ||
| 5 | to guintptr | ||
| 6 | |||
| 7 | This fixes a warning/error found with clang-15 | ||
| 8 | |||
| 9 | Upstream-Status: Pending | ||
| 10 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 11 | --- | ||
| 12 | gst-libs/gst/allocators/gstallocatorphymem.c | 2 +- | ||
| 13 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
| 14 | |||
| 15 | --- a/gst-libs/gst/allocators/gstallocatorphymem.c | ||
| 16 | +++ b/gst-libs/gst/allocators/gstallocatorphymem.c | ||
| 17 | @@ -225,7 +225,7 @@ static guintptr | ||
| 18 | gst_allocator_phymem_get_phys_addr (GstPhysMemoryAllocator * allocator, | ||
| 19 | GstMemory * mem) | ||
| 20 | { | ||
| 21 | - return gst_phymem_get_phy (mem); | ||
| 22 | + return (guintptr)gst_phymem_get_phy (mem); | ||
| 23 | } | ||
| 24 | |||
| 25 | static void | ||
| 26 | --- a/gst-libs/gst/gl/gstglphymemory.c | ||
| 27 | +++ b/gst-libs/gst/gl/gstglphymemory.c | ||
| 28 | @@ -337,7 +337,7 @@ gst_gl_physical_memory_setup_buffer (Gst | ||
| 29 | GST_VIDEO_INFO_HEIGHT (info), | ||
| 30 | viv_fmt, | ||
| 31 | memblk->vaddr, | ||
| 32 | - memblk->paddr, | ||
| 33 | + (guint)memblk->paddr, | ||
| 34 | FALSE | ||
| 35 | }; | ||
| 36 | |||
| 37 | --- a/gst/subparse/gstssaparse.c | ||
| 38 | +++ b/gst/subparse/gstssaparse.c | ||
| 39 | @@ -24,7 +24,9 @@ | ||
| 40 | #include "config.h" | ||
| 41 | #endif | ||
| 42 | |||
| 43 | +#include <ctype.h> /* isspace() */ | ||
| 44 | #include <stdlib.h> /* atoi() */ | ||
| 45 | +#include <stdio.h> /* sscanf() */ | ||
| 46 | #include <string.h> | ||
| 47 | |||
| 48 | #include "gstssaparse.h" | ||
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.0.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.0.imx.bb index 3fce3a589..3cbd21799 100644 --- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.0.imx.bb +++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.0.imx.bb | |||
| @@ -17,6 +17,7 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-ba | |||
| 17 | file://0001-ENGR00312515-get-caps-from-src-pad-when-query-caps.patch \ | 17 | file://0001-ENGR00312515-get-caps-from-src-pad-when-query-caps.patch \ |
| 18 | file://0003-viv-fb-Make-sure-config.h-is-included.patch \ | 18 | file://0003-viv-fb-Make-sure-config.h-is-included.patch \ |
| 19 | file://0002-ssaparse-enhance-SSA-text-lines-parsing.patch \ | 19 | file://0002-ssaparse-enhance-SSA-text-lines-parsing.patch \ |
| 20 | file://0001-gstallocatorphymem.c-Typecast-result-of-gst_phymem_g.patch \ | ||
| 20 | " | 21 | " |
| 21 | SRC_URI[sha256sum] = "96d8a6413ba9394fbec1217aeef63741a729d476a505a797c1d5337d8fa7c204" | 22 | SRC_URI[sha256sum] = "96d8a6413ba9394fbec1217aeef63741a729d476a505a797c1d5337d8fa7c204" |
| 22 | 23 | ||
| @@ -136,6 +137,10 @@ PACKAGECONFIG[viv-fb] = ",,virtual/libgles2" | |||
| 136 | 137 | ||
| 137 | EXTRA_OEMESON += "-Dc_args="${CFLAGS} -I${STAGING_INCDIR_IMX}"" | 138 | EXTRA_OEMESON += "-Dc_args="${CFLAGS} -I${STAGING_INCDIR_IMX}"" |
| 138 | 139 | ||
| 140 | # links with imx-gpu libs which are pre-built for glibc | ||
| 141 | # gcompat will address it during runtime | ||
| 142 | LDFLAGS:append:imxgpu:libc-musl = " -Wl,--allow-shlib-undefined" | ||
| 143 | |||
| 139 | COMPATIBLE_MACHINE = "(imx-nxp-bsp)" | 144 | COMPATIBLE_MACHINE = "(imx-nxp-bsp)" |
| 140 | 145 | ||
| 141 | ########### End of i.MX overrides ######### | 146 | ########### End of i.MX overrides ######### |
diff --git a/recipes-multimedia/imx-sw-pdm/imx-sw-pdm_1.0.2.bb b/recipes-multimedia/imx-sw-pdm/imx-sw-pdm_1.0.2.bb index 3d5572076..957d6ddf9 100644 --- a/recipes-multimedia/imx-sw-pdm/imx-sw-pdm_1.0.2.bb +++ b/recipes-multimedia/imx-sw-pdm/imx-sw-pdm_1.0.2.bb | |||
| @@ -16,3 +16,7 @@ INSANE_SKIP:${PN} = "already-stripped" | |||
| 16 | FILES:${PN} += "${datadir}/imx-mm" | 16 | FILES:${PN} += "${datadir}/imx-mm" |
| 17 | 17 | ||
| 18 | COMPATIBLE_MACHINE = "(mx8-nxp-bsp)" | 18 | COMPATIBLE_MACHINE = "(mx8-nxp-bsp)" |
| 19 | |||
| 20 | INSANE_SKIP:append:libc-musl = " file-rdeps" | ||
| 21 | |||
| 22 | RDEPENDS:${PN}:append:libc-musl = " gcompat" | ||
