Skip to contentSkip to conversation

imx: update multimedia packages to 4.9.88_2.0.0_ga

PATCH New Gary Bisson 2 participants 7 messages Jul 30, 2018 – Aug 12, 2018 Arm i.MX and Layerscape

lore
Share & tools
lore
#0 lore raw

v3 cover imx: update multimedia packages to 4.9.88_2.0.0_ga

Hi,

This series updates the i.MX multimedia packages to be in line with the NXP 4.9.88-2.0.0_ga release [1].

The main benefit of this release is that it works for both 32-bit i.MX6/7 processors as well as 64-bit i.MX8MQ.

That means that new packages had to be added to support the i.MX8MQ VPU IP (from Hantro).

As discussed in the ML thread [1], since we haven't reached an agreement on which approach is best (virtual package vs. manual mechanism), this version of the series is here to show that it would look like without the virtual package.

I have to admit that reduces the series by 2 patches and makes it easier to understand. As I've said before, I'm ok either way, just need to pick the one that looks the best for you.

Changelog v3:
- Remove virtual package (Thomas)
- Update help text to mention i.MX27 (Baruch)
- Add BR2_PACKAGE_FREESCALE_IMX_HAS_VPU_HANTRO option (Arnout)
- Add missing dependency on linux kernel for imx-vpu-hantro (Arnout)
- Remove dependency on BR2_arm/aarch64 since we have HAS_VPU(_HANTRO) (Arnout)
Changelog v2:
- Add BR2_PACKAGE_IMX_VPU to Config.in.legacy (Baruch)
- Name i.MX processors targeted by each package in Config.in help text (Baruch)

Regards,
Gary

[1] http://lists.busybox.net/pipermail/buildroot/2018-July/226823.html

Gary Bisson (5):
imx-vpu-hantro: new package
imx-vpu: bump version to 5.4.38
imx-vpuwrap: bump version to 4.3.5
imx-codec: bump version to 4.3.5
imx-parser: bump version to 4.3.5

 package/freescale-imx/Config.in               |  5 +++
 .../freescale-imx/imx-codec/imx-codec.hash    |  3 +-
 package/freescale-imx/imx-codec/imx-codec.mk  |  2 +-
 .../freescale-imx/imx-parser/imx-parser.hash  |  3 +-
 .../freescale-imx/imx-parser/imx-parser.mk    |  2 +-
 ...on.h-header-inclusion-to-be-standard.patch | 44 +++++++++++++++++++
 .../freescale-imx/imx-vpu-hantro/Config.in    | 20 +++++++++
 .../imx-vpu-hantro/imx-vpu-hantro.hash        |  2 +
 .../imx-vpu-hantro/imx-vpu-hantro.mk          | 42 ++++++++++++++++++
 package/freescale-imx/imx-vpu/Config.in       | 13 +++---
 package/freescale-imx/imx-vpu/imx-vpu.hash    |  3 +-
 package/freescale-imx/imx-vpu/imx-vpu.mk      |  2 +-
 package/freescale-imx/imx-vpuwrap/Config.in   | 11 +++--
 .../imx-vpuwrap/imx-vpuwrap.hash              |  3 +-
 .../freescale-imx/imx-vpuwrap/imx-vpuwrap.mk  | 11 ++++-
 15 files changed, 143 insertions(+), 23 deletions(-)
 create mode 100644 package/freescale-imx/imx-vpu-hantro/0001-Fix-ion.h-header-inclusion-to-be-standard.patch
 create mode 100644 package/freescale-imx/imx-vpu-hantro/Config.in
 create mode 100644 package/freescale-imx/imx-vpu-hantro/imx-vpu-hantro.hash
 create mode 100644 package/freescale-imx/imx-vpu-hantro/imx-vpu-hantro.mk
Signature · 1 line
2.18.0
#1 lore raw

PATCH v3 1/5 imx-vpu-hantro: new package

This package provides the user-space libraries needed to use the Hantro VPU present in processors such as the i.MX8MQ.

---
 package/freescale-imx/Config.in               |  5 +++
 ...on.h-header-inclusion-to-be-standard.patch | 44 +++++++++++++++++++
 .../freescale-imx/imx-vpu-hantro/Config.in    | 20 +++++++++
 .../imx-vpu-hantro/imx-vpu-hantro.hash        |  2 +
 .../imx-vpu-hantro/imx-vpu-hantro.mk          | 42 ++++++++++++++++++
 5 files changed, 113 insertions(+)
 create mode 100644 package/freescale-imx/imx-vpu-hantro/0001-Fix-ion.h-header-inclusion-to-be-standard.patch
 create mode 100644 package/freescale-imx/imx-vpu-hantro/Config.in
 create mode 100644 package/freescale-imx/imx-vpu-hantro/imx-vpu-hantro.hash
 create mode 100644 package/freescale-imx/imx-vpu-hantro/imx-vpu-hantro.mk
package/freescale-imx/Config.in +5 -0
index 30e71b825f..95c0aab08c 100644
@@ -65,6 +65,10 @@ config BR2_PACKAGE_FREESCALE_IMX_HAS_VPU
 		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX53 || \
 		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q
 
+config BR2_PACKAGE_FREESCALE_IMX_HAS_VPU_HANTRO
+	bool
+	default y if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8M
+
 config BR2_PACKAGE_FREESCALE_IMX_HAS_VIV_GPU
 	bool
 	default y if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q || \
@@ -80,6 +84,7 @@ source "package/freescale-imx/imx-m4fwloader/Config.in"
 source "package/freescale-imx/imx-parser/Config.in"
 source "package/freescale-imx/imx-uuc/Config.in"
 source "package/freescale-imx/imx-vpu/Config.in"
+source "package/freescale-imx/imx-vpu-hantro/Config.in"
 source "package/freescale-imx/imx-vpuwrap/Config.in"
 source "package/freescale-imx/firmware-imx/Config.in"
 if (BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX51 || BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX53)
package/freescale-imx/imx-vpu-hantro/0001-Fix-ion.h-header-inclusion-to-be-standard.patch new file +44 -0

44 lines not on this page · raw message

package/freescale-imx/imx-vpu-hantro/Config.in new file +20 -0
new file mode 100644
index 0000000000..25ce50ffd7
@@ -0,0 +1,20 @@
+comment "imx-vpu-hantro needs an i.MX-specific Linux kernel to be built"
+	depends on !BR2_LINUX_KERNEL
+
+comment "imx-vpu-hantro needs an i.MX platform with Hantro VPU"
+	depends on BR2_LINUX_KERNEL
+	depends on !BR2_PACKAGE_FREESCALE_IMX_HAS_VPU_HANTRO
+
+config BR2_PACKAGE_IMX_VPU_HANTRO
+	bool "imx-vpu-hantro"
+	depends on BR2_LINUX_KERNEL
+	depends on BR2_PACKAGE_FREESCALE_IMX_HAS_VPU_HANTRO
+	help
+	  Library of userspace helpers specific for the NXP i.MX SoC
+	  integrating a Hantro Video Processing Unit (VPU) such as the
+	  i.MX8MQ/i.MX8MM.
+	  It requires a kernel that includes the i.MX specific headers
+	  to be built.
+
+	  This library is provided by NXP as-is and doesn't have an
+	  upstream.
package/freescale-imx/imx-vpu-hantro/imx-vpu-hantro.hash new file +2 -0
new file mode 100644
index 0000000000..3b1a545b3f
@@ -0,0 +1,2 @@
+sha256  cbc648e41f005aad209f74c9e5dd346138dca12efeb7b27e471de7474c4da302  imx-vpu-hantro-1.6.0.bin
+sha256  0f34f6175247762e2e1c38319aadf657a53f00ce124e569dfc61b30451549e7a  COPYING
package/freescale-imx/imx-vpu-hantro/imx-vpu-hantro.mk new file +42 -0

42 lines not on this page · raw message

Signature · 1 line
2.18.0
#2 lore raw

PATCH v3 2/5 imx-vpu: bump version to 5.4.38

In reply to Gary Bisson

No changelog provided by NXP.
Added COPYING hash value to track license changes. Reworked the help text to specify which CPU has Chips&Media VPU. Also removed the dependency on BR2_arm as BR2_PACKAGE_FREESCALE_IMX_HAS_VPU is sufficient.

---
 package/freescale-imx/imx-vpu/Config.in    | 13 +++++--------
 package/freescale-imx/imx-vpu/imx-vpu.hash |  3 ++-
 package/freescale-imx/imx-vpu/imx-vpu.mk   |  2 +-
 3 files changed, 8 insertions(+), 10 deletions(-)
package/freescale-imx/imx-vpu/Config.in +5 -8
index 779717f5ed..dd3507eb96 100644
@@ -1,17 +1,14 @@
 comment "imx-vpu needs an i.MX platform with VPU support"
-	depends on BR2_arm
 	depends on !BR2_PACKAGE_FREESCALE_IMX_HAS_VPU
 
 config BR2_PACKAGE_IMX_VPU
 	bool "imx-vpu"
-	depends on BR2_arm # Only relevant for i.MX
 	depends on BR2_PACKAGE_FREESCALE_IMX_HAS_VPU
 	select BR2_PACKAGE_FIRMWARE_IMX
 	help
-	  Library of userspace helpers specific for the Freescale i.MX
-	  platform. It wraps the kernel interfaces for the i.MX platform
-	  Video Processing Unit (VPU) driver. It requires a kernel that
-	  includes the i.MX specific headers to be built.
+	  Library of userspace helpers specific for the NXP i.MX SoC
+	  integrating a Chips&Media CODA Video Processing Unit (VPU)
+	  such as the i.MX27/i.MX5x/i.MX6x.
 
-	  This library is provided by Freescale as-is and doesn't have
-	  an upstream.
+	  This library is provided by NXP as-is and doesn't have an
+	  upstream.
package/freescale-imx/imx-vpu/imx-vpu.hash +2 -1
index 0ac0f3d0c2..822286dceb 100644
@@ -1,2 +1,3 @@
 # Locally computed
-sha256	ee265e88d17c7369bd9cb917e7cce035b8c7ee2ba4491645fdab9f382f54beb0  imx-vpu-5.4.37.bin
+sha256  34bed0ddf6c797f444bddfa5d5495adc751ff268b6431d8beb48129c89c9e47f  imx-vpu-5.4.38.bin
+sha256  78696664f7afe7f2b081c99af60082d6403fab935b1b10056ed41aec123ff7fa  COPYING
package/freescale-imx/imx-vpu/imx-vpu.mk +1 -1
index 2bcfe53eba..e30237508e 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-IMX_VPU_VERSION = 5.4.37
+IMX_VPU_VERSION = 5.4.38
 IMX_VPU_SITE = $(FREESCALE_IMX_SITE)
 IMX_VPU_SOURCE = imx-vpu-$(IMX_VPU_VERSION).bin
 
Signature · 1 line
2.18.0
#3 lore raw

PATCH v3 3/5 imx-vpuwrap: bump version to 4.3.5

In reply to Gary Bisson

No changelog provided for 4.3.5 but it can now builds against the following VPU backends:
- Chips&Media
- Hantro
- Amphion (not supported in BR yet)

Changes in 4.3.2:
- Add vpu_wrapper_test
- Add gst_dump tools
- Add gl sink
- Enable RMVB/VC1/DIVX3
- Add webp support

Changes in 4.3.4:
- set hasColorDesc and fullRange in VPU_DecGetInitialInfo.
- Fix H264 failure due to too many MBI buffers.

---
 package/freescale-imx/imx-vpuwrap/Config.in        | 11 +++++------
 package/freescale-imx/imx-vpuwrap/imx-vpuwrap.hash |  3 ++-
 package/freescale-imx/imx-vpuwrap/imx-vpuwrap.mk   | 11 +++++++++--
 3 files changed, 16 insertions(+), 9 deletions(-)
package/freescale-imx/imx-vpuwrap/Config.in +5 -6
index bdfa147867..8a9bf0e32d 100644
@@ -1,17 +1,16 @@
 comment "imx-vpuwrap needs an imx-specific Linux kernel to be built"
-	depends on BR2_arm
 	depends on !BR2_LINUX_KERNEL
 
 comment "imx-vpuwrap needs an i.MX platform with VPU support"
-	depends on BR2_arm
-	depends on BR2_LINUX_KERNEL && !BR2_PACKAGE_FREESCALE_IMX_HAS_VPU
+	depends on BR2_LINUX_KERNEL
+	depends on !BR2_PACKAGE_FREESCALE_IMX_HAS_VPU && !BR2_PACKAGE_FREESCALE_IMX_HAS_VPU_HANTRO
 
 config BR2_PACKAGE_IMX_VPUWRAP
 	bool "imx-vpuwrap"
 	depends on BR2_LINUX_KERNEL
-	depends on BR2_arm # Only relevant for i.MX
-	depends on BR2_PACKAGE_FREESCALE_IMX_HAS_VPU
-	select BR2_PACKAGE_IMX_VPU
+	depends on BR2_PACKAGE_FREESCALE_IMX_HAS_VPU || BR2_PACKAGE_FREESCALE_IMX_HAS_VPU_HANTRO
+	select BR2_PACKAGE_IMX_VPU if BR2_PACKAGE_FREESCALE_IMX_HAS_VPU
+	select BR2_PACKAGE_IMX_VPU_HANTRO if BR2_PACKAGE_FREESCALE_IMX_HAS_VPU_HANTRO
 	help
 	  Wrapper library for the vpu library, giving it a different
 	  API.
package/freescale-imx/imx-vpuwrap/imx-vpuwrap.hash +2 -1
index 2999984d2c..28c73c002c 100644
@@ -1,2 +1,3 @@
 # locally computed
-sha256	282e7f8766ce385d8752bd29f04ddeff709ece0846be97547cf982183bbe241e  imx-vpuwrap-1.0.68.bin
+sha256  5c08b4b7c771404c998779f0e27a75564b57958d463e2df152c910d76cca9e44  imx-vpuwrap-4.3.5.bin
+sha256  78696664f7afe7f2b081c99af60082d6403fab935b1b10056ed41aec123ff7fa  COPYING
package/freescale-imx/imx-vpuwrap/imx-vpuwrap.mk +9 -2
index edba87279f..fdad3a5f2b 100644
@@ -4,12 +4,19 @@
 #
 ################################################################################
 
-IMX_VPUWRAP_VERSION = 1.0.68
+IMX_VPUWRAP_VERSION = 4.3.5
 IMX_VPUWRAP_SITE = $(FREESCALE_IMX_SITE)
 IMX_VPUWRAP_SOURCE = imx-vpuwrap-$(IMX_VPUWRAP_VERSION).bin
-IMX_VPUWRAP_DEPENDENCIES = imx-vpu
 IMX_VPUWRAP_INSTALL_STAGING = YES
 
+ifeq ($(BR2_PACKAGE_IMX_VPU),y)
+IMX_VPUWRAP_DEPENDENCIES = imx-vpu
+endif
+
+ifeq ($(BR2_PACKAGE_IMX_VPU_HANTRO),y)
+IMX_VPUWRAP_DEPENDENCIES = imx-vpu-hantro
+endif
+
 IMX_VPUWRAP_LICENSE = NXP Semiconductor Software License Agreement
 IMX_VPUWRAP_LICENSE_FILES = EULA COPYING
 IMX_VPUWRAP_REDISTRIBUTE = NO
Signature · 1 line
2.18.0
#4 lore raw

PATCH v3 4/5 imx-codec: bump version to 4.3.5

In reply to Gary Bisson

No changelog provided by NXP for v4.3.5.

Added COPYING hash to track license change.

Changelog for v4.3.4
1. Add INSANE_SKIP for file-rdeps to fix QA Issue
2. Update mp3_enc version to 02.03.01
3. Fix crash in lib_mp3_enc_arm12_elinux.so This crash error is caused by division by zero in noOfElements_mp3e() function When encoding 0 size file by using unit test
so before performing a division operation, need to check whether divisor is zero or not to fix it.

Changelog for v4.3.2
1. Upgrade EULA to v20
2. Add i.MX8 support
3. Bugfix/Optimization
- Remove video codec in imx-codec package.
- Fix logically dead code issue for aac_dec.
- Fix wrong sizeof argument for flac_dec.
- Cancel unused code in nb_amr/wb_amr/flac_dec/bsac_dec.

---
 package/freescale-imx/imx-codec/imx-codec.hash | 3 ++-
 package/freescale-imx/imx-codec/imx-codec.mk   | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)
package/freescale-imx/imx-codec/imx-codec.hash +2 -1
index 53d8f71c39..9d99ee0101 100644
@@ -1,2 +1,3 @@
 # locally computed
-sha256	20d3f9b4187fcd9e7007c94558a00bab1191513eee74b6f0d8c7b43f874e06ed  imx-codec-4.2.1.bin
+sha256  6bb54f91c3ca18567e14d95d3858022dc9be00dc86e9edfdb544d1240a3b2b04  imx-codec-4.3.5.bin
+sha256  78696664f7afe7f2b081c99af60082d6403fab935b1b10056ed41aec123ff7fa  COPYING
package/freescale-imx/imx-codec/imx-codec.mk +1 -1
index 784c1fa4a9..1ec701d2f1 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-IMX_CODEC_VERSION = 4.2.1
+IMX_CODEC_VERSION = 4.3.5
 IMX_CODEC_SITE = $(FREESCALE_IMX_SITE)
 IMX_CODEC_SOURCE = imx-codec-$(IMX_CODEC_VERSION).bin
 IMX_CODEC_INSTALL_STAGING = YES
Signature · 1 line
2.18.0
#5 lore raw

PATCH v3 5/5 imx-parser: bump version to 4.3.5

In reply to Gary Bisson

Added COPYING hash to track license changes.

No changelog provided by NXP for v4.3.5.

Changelog for v4.3.4:
- Fix crash issue when parse index list.
- Add mett atom in mp4 parser.
- MP4 PARSER 06.13.00 add interface PARSER_API_GET_TEXT_TRACK_MIME to get mime type from mett atom.
- Add protection for contentDescriptionObject in case the size is not correct and larger than qwSize.

Changelog for v4.3.2:
- Fix creating parser error
When the variable value is negetive, if(bytesToRead) will return true, modify this condition to if(bytesToRead > 0).
- FLAC PARSER 03.00.07
Check read actual length in case of parser reach eos.
- MP4 PARSER 06.12.11
Fix crash issue when parse id3 metadata.
- MPG2 PARSER 04.05.16
Fix parser return wrong frame size after fastforward.
- ASFPARSER_01.00.55
Update for HEVC tag and audio AC3 support.

---
 package/freescale-imx/imx-parser/imx-parser.hash | 3 ++-
 package/freescale-imx/imx-parser/imx-parser.mk   | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)
package/freescale-imx/imx-parser/imx-parser.hash +2 -1
index 3266f48110..708e9b8386 100644
@@ -1,2 +1,3 @@
 # locally computed
-sha256	36d3ae7285f3a83a87abf680b8a52b3c07df869d2443de844fb5f0ff528ca862  imx-parser-4.2.1.bin
+sha256  9cd8c49a0bb1050afcfbcc7a677a348443fda4ecacb621cc6e38897619e27c67  imx-parser-4.3.5.bin
+sha256  78696664f7afe7f2b081c99af60082d6403fab935b1b10056ed41aec123ff7fa  COPYING
package/freescale-imx/imx-parser/imx-parser.mk +1 -1
index 11536e5024..fc4376f04b 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-IMX_PARSER_VERSION = 4.2.1
+IMX_PARSER_VERSION = 4.3.5
 IMX_PARSER_SITE = $(FREESCALE_IMX_SITE)
 IMX_PARSER_SOURCE = imx-parser-$(IMX_PARSER_VERSION).bin
 IMX_PARSER_INSTALL_STAGING = YES
Signature · 1 line
2.18.0
#6 lore raw

v3 cover imx: update multimedia packages to 4.9.88_2.0.0_ga

In reply to Gary Bisson

Hello,

Quoted 6 lines · Gary Bisson

Gary Bisson (5):
imx-vpu-hantro: new package
imx-vpu: bump version to 5.4.38
imx-vpuwrap: bump version to 4.3.5
imx-codec: bump version to 4.3.5
imx-parser: bump version to 4.3.5

Thanks, series applied to next. I've just added the hash of the EULA file in the different packages.

Thanks a lot for keeping our i.MX support up-to-date!

Best regards,

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
https://bootlin.com