imx: graphics packages update to 6.2.4.p1.2
cover imx: graphics packages update to 6.2.4.p1.2
Hi all,
This series bumps the version of the i.MX graphics packages.
This version is the first one that applies to both 32-bit and 64-bit i.MX processors so aarch64 support was added.
As explained in the second commit, i.MX8 platforms only have Wayland as possible graphical back-end (no more fb or x11) so a new variable was created to hide those options. Not sure if it is the most elegant option but it does the job for now.
And yes, g2d is only available for 32-bit platforms right now.
Let me know if you have any question/remark.
Regards,
Gary
Gary Bisson (4):
imx-gpu-viv: bump to version 6.2.4.p1.2
imx-gpu-viv: enable package for 64-bit i.MX processors
imx-gpu-g2d: bump to version 6.2.4.p1.2
kernel-module-imx-gpu-viv: bump to version 6.2.4.p1.2
package/freescale-imx/Config.in | 7 ++++++- package/freescale-imx/imx-gpu-g2d/imx-gpu-g2d.hash | 2 +- package/freescale-imx/imx-gpu-g2d/imx-gpu-g2d.mk | 2 +- package/freescale-imx/imx-gpu-viv/Config.in | 10 +++++++++- package/freescale-imx/imx-gpu-viv/imx-gpu-viv.hash | 3 ++- package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk | 6 +++++- .../kernel-module-imx-gpu-viv.hash | 2 +- .../kernel-module-imx-gpu-viv.mk | 2 +- 8 files changed, 26 insertions(+), 8 deletions(-)
Signature · 1 line
2.17.1
PATCH 1/4 imx-gpu-viv: bump to version 6.2.4.p1.2
No changelog was provided by NXP but we can assume it's the latest and therefore the greatest.
What is known, is that that same version worked both ARM and ARM64. The support for the latter will be added in a follow-up patch.
This package has been tested with X11, Framebuffer and Wayland back-ends:
# cd /usr/share/examples/viv_samples/vdk/ # ./tutorial7 # gmem_info ... display memory use per PID ...
--- package/freescale-imx/imx-gpu-viv/imx-gpu-viv.hash | 2 +- package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
package/freescale-imx/imx-gpu-viv/imx-gpu-viv.hash +1 -1
@@ -1 +1 @@ -sha256 4f93a4412c93ca5959aa2437bfed2ecbaf983b5b272be5977f76a967de5db150 imx-gpu-viv-6.2.2.p0-aarch32.bin +sha256 dddadd164bede4793409ccfb636324dd73862c33458db66a5860f126bada25dc imx-gpu-viv-6.2.4.p1.2-aarch32.bin
package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk +1 -1
@@ -4,7 +4,7 @@ # ################################################################################ -IMX_GPU_VIV_VERSION = 6.2.2.p0-aarch32 +IMX_GPU_VIV_VERSION = 6.2.4.p1.2-aarch32 IMX_GPU_VIV_SITE = $(FREESCALE_IMX_SITE) IMX_GPU_VIV_SOURCE = imx-gpu-viv-$(IMX_GPU_VIV_VERSION).bin
Signature · 1 line
2.17.1
PATCH 2/4 imx-gpu-viv: enable package for 64-bit i.MX processors
In reply to Gary BissonBasically enabling the package for aarch64. One difference with 32-bit i.MX platforms resides in the fact that Wayland is the only back-end supported. Therefore X11 and Framebuffer options are masked.
This was tested on i.MX8MQ Nitrogen8M platform (with weston-imx):
# cd /usr/share/examples/viv_samples/vdk/ # ./tutorial7
--- package/freescale-imx/Config.in | 7 ++++++- package/freescale-imx/imx-gpu-viv/Config.in | 10 +++++++++- package/freescale-imx/imx-gpu-viv/imx-gpu-viv.hash | 1 + package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk | 4 ++++ 4 files changed, 20 insertions(+), 2 deletions(-)
package/freescale-imx/Config.in +6 -1
@@ -69,7 +69,12 @@ config BR2_PACKAGE_FREESCALE_IMX_HAS_VIV_GPU bool default y if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q || \ BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6S || \ - BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX7 + BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX7 || \ + BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8M + +config BR2_PACKAGE_FREESCALE_IMX_HAS_VIV_GPU_WAYLAND_ONLY + bool + default y if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8M source "package/freescale-imx/imx-alsa-plugins/Config.in" source "package/freescale-imx/imx-codec/Config.in"
package/freescale-imx/imx-gpu-viv/Config.in +9 -1
@@ -2,10 +2,14 @@ comment "imx-gpu-viv needs a glibc toolchain with armhf enabled" depends on BR2_arm depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_ARM_EABIHF +comment "imx-gpu-viv needs a glibc toolchain" + depends on BR2_aarch64 + depends on !BR2_TOOLCHAIN_USES_GLIBC + config BR2_PACKAGE_IMX_GPU_VIV bool "imx-gpu-viv" # Pre-built binaries only available for ARM EABIhf - depends on BR2_ARM_EABIHF + depends on (BR2_arm && BR2_ARM_EABIHF) || BR2_aarch64 # Library binaries are linked against libc.so.6 depends on BR2_TOOLCHAIN_USES_GLIBC select BR2_PACKAGE_HAS_LIBEGL
@@ -31,6 +35,8 @@ choice direct framebuffer access, one for X11 rendering. Choose here which version to install. +if !BR2_PACKAGE_FREESCALE_IMX_HAS_VIV_GPU_WAYLAND_ONLY + config BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_X11 bool "X11" depends on BR2_PACKAGE_XORG7
@@ -44,6 +50,8 @@ comment "X11 backend needs Xorg package" config BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_FB bool "Framebuffer" +endif + config BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_WL bool "Wayland" # libdrm needed by gbm_viv.so
package/freescale-imx/imx-gpu-viv/imx-gpu-viv.hash +1 -0
@@ -1 +1,2 @@ sha256 dddadd164bede4793409ccfb636324dd73862c33458db66a5860f126bada25dc imx-gpu-viv-6.2.4.p1.2-aarch32.bin +sha256 27ed3f58681cef18f87ea20946cc89b2cef4848006064303d20583e6ed7aeec7 imx-gpu-viv-6.2.4.p1.2-aarch64.bin
package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk +4 -0
@@ -4,7 +4,11 @@ # ################################################################################ +ifeq ($(BR2_aarch64),y) +IMX_GPU_VIV_VERSION = 6.2.4.p1.2-aarch64 +else IMX_GPU_VIV_VERSION = 6.2.4.p1.2-aarch32 +endif IMX_GPU_VIV_SITE = $(FREESCALE_IMX_SITE) IMX_GPU_VIV_SOURCE = imx-gpu-viv-$(IMX_GPU_VIV_VERSION).bin
Signature · 1 line
2.17.1
PATCH 2/4 imx-gpu-viv: enable package for 64-bit i.MX processors
Hello,
package/freescale-imx/Config.in config BR2_PACKAGE_FREESCALE_IMX_HAS_VIV_GPU · line 75
Quoted 13 lines · Gary Bisson
package/freescale-imx/Config.in +4
-1@@ -69,7 +69,12 @@ config BR2_PACKAGE_FREESCALE_IMX_HAS_VIV_GPU bool default y if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q || \ BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6S || \ - BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX7 + BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX7 || \ + BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8M + +config BR2_PACKAGE_FREESCALE_IMX_HAS_VIV_GPU_WAYLAND_ONLY
I don't really like the semantic of <something>_ONLY options, and it generally felt a bit unneeded. So I've used BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8M directly in the imx-gpu-viv package. I've applied after changing this. Please double check that I didn't introduce any problem:
https://git.buildroot.org/buildroot/commit/?id=84afda9ca6dad5fd828ba94fa60df52c81cc7814
Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons) Embedded Linux and Kernel engineering https://bootlin.com
PATCH 2/4 imx-gpu-viv: enable package for 64-bit i.MX processors
Hi Thomas, All,
Quoted 24 lines · Thomas Petazzoni
Hello,
package/freescale-imx/Config.in config BR2_PACKAGE_FREESCALE_IMX_HAS_VIV_GPU · line 75
Quoted 13 lines · Gary Bisson
package/freescale-imx/Config.in +4
-1@@ -69,7 +69,12 @@ config BR2_PACKAGE_FREESCALE_IMX_HAS_VIV_GPU bool default y if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q || \ BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6S || \ - BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX7 + BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX7 || \ + BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8M + +config BR2_PACKAGE_FREESCALE_IMX_HAS_VIV_GPU_WAYLAND_ONLYI don't really like the semantic of <something>_ONLY options, and it generally felt a bit unneeded. So I've used
BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8Mdirectly in the imx-gpu-viv package. I've applied after changing this. Please double check that I didn't introduce any problem:
Quoted 1 line
https://git.buildroot.org/buildroot/commit/?id=84afda9ca6dad5fd828ba94fa60df52c81cc7814
Thanks, I understand that this naming wasn't great and your option seems to work just fine (after a quick menuconfig testing).
The reason I wanted to have a config for that is because iMX8M is the first CPU to be supported but basically all the next iMX8x processors will be the same (iMX8QXP, iMX8QM). But we'll see how to them later, no worries.
Thanks,
Gary
PATCH 3/4 imx-gpu-g2d: bump to version 6.2.4.p1.2
In reply to Gary BissonSame as imx-gpu-viv, no changelog was provided by NXP.
Tested with the following commands:
# /usr/share/examples/g2d_samples/g2d_multiblit_test # /usr/share/examples/g2d_samples/g2d_overlay_test # /usr/share/examples/g2d_samples/g2d_test # gst-launch-1.0 videotestsrc ! imxg2dvideosink
--- package/freescale-imx/imx-gpu-g2d/imx-gpu-g2d.hash | 2 +- package/freescale-imx/imx-gpu-g2d/imx-gpu-g2d.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
package/freescale-imx/imx-gpu-g2d/imx-gpu-g2d.hash +1 -1
@@ -1 +1 @@ -sha256 070a95aa9942bd67e8ba4012962df74143bffb9998301ac097dab5e1437000d8 imx-gpu-g2d-6.2.2.p0.bin +sha256 5f2d2171d5cd57f37ab07184fc908a0f6ecb2a97f023f04c2f9f3b3d7fec8481 imx-gpu-g2d-6.2.4.p1.2.bin
package/freescale-imx/imx-gpu-g2d/imx-gpu-g2d.mk +1 -1
@@ -4,7 +4,7 @@ # ################################################################################ -IMX_GPU_G2D_VERSION = 6.2.2.p0 +IMX_GPU_G2D_VERSION = 6.2.4.p1.2 IMX_GPU_G2D_SITE = $(FREESCALE_IMX_SITE) IMX_GPU_G2D_SOURCE = imx-gpu-g2d-$(IMX_GPU_G2D_VERSION).bin IMX_GPU_G2D_DEPENDENCIES = imx-gpu-viv
Signature · 1 line
2.17.1
PATCH 4/4 kernel-module-imx-gpu-viv: bump to version 6.2.4.p1.2
In reply to Gary BissonThis package has been tested with the following commands:
# modprobe galcore # cd /usr/share/examples/viv_samples/vdk/ # ./tutorial7
--- .../kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.hash | 2 +- .../kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
package/freescale-imx/kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.hash +1 -1
@@ -1,2 +1,2 @@ # locally computed -sha256 35db597ae0dd8e9e80511e5e9d882a01e4c178b83ffc192c8dd6a1a35859aa13 kernel-module-imx-gpu-viv-3b9e057f29853fd29364aa666328a92b807007d7.tar.gz +sha256 ad910b7d36dc433bbbe85808d278312e9199635aaa5d00097b70ffab11bde9e6 kernel-module-imx-gpu-viv-86354002bea77acd9ce1812712e9d8485b377ec8.tar.gz
package/freescale-imx/kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.mk +1 -1
@@ -4,7 +4,7 @@ # ################################################################################ -KERNEL_MODULE_IMX_GPU_VIV_VERSION = 3b9e057f29853fd29364aa666328a92b807007d7 +KERNEL_MODULE_IMX_GPU_VIV_VERSION = 86354002bea77acd9ce1812712e9d8485b377ec8 KERNEL_MODULE_IMX_GPU_VIV_SITE = \ $(call github,Freescale,kernel-module-imx-gpu-viv,$(KERNEL_MODULE_IMX_GPU_VIV_VERSION)) KERNEL_MODULE_IMX_GPU_VIV_LICENSE = GPL-2.0
Signature · 1 line
2.17.1
cover imx: graphics packages update to 6.2.4.p1.2
In reply to Gary BissonHello,
Quoted 5 lines · Gary Bisson
Gary Bisson (4):
imx-gpu-viv: bump to version 6.2.4.p1.2
imx-gpu-viv: enable package for 64-bit i.MX processors
imx-gpu-g2d: bump to version 6.2.4.p1.2
kernel-module-imx-gpu-viv: bump to version 6.2.4.p1.2
I've applied the series, with some changes on the second patch. I'll try to that patch for the details.
Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons) Embedded Linux and Kernel engineering https://bootlin.com