All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 00/10] Update most Freescale packages
@ 2016-01-30 11:45 Gary Bisson
  2016-01-30 11:45 ` [Buildroot] [PATCH 01/10] firmware-imx: bump to version 5.2 Gary Bisson
                   ` (9 more replies)
  0 siblings, 10 replies; 30+ messages in thread
From: Gary Bisson @ 2016-01-30 11:45 UTC (permalink / raw)
  To: buildroot

Hi all,

Here is yet another series to update most of Freescale packages. I've skipped
the graphics update for now since not all the manufacturers have a kernel
ready for it. Plus it can be easily updated separately.

Actually, NXP/Vivante now releases a kernel module which allows to have a
matching driver for the latest binaries. However this implies some defconfig
modification as follows:
https://github.com/Freescale/meta-fsl-arm/blob/master/classes/fsl-vivante-kernel-driver-handler.bbclass#L52

Not sure how to do that in Buildroot, maybe adding a linux post configure hook.

Anyway, all the other components (GStreamer plugins, codecs & firmwares) are
updated. The big change of this series is the update of the gst1-imx plugin.
Since the i.MX7 SoC is coming and does not include VPU nor GPU, the plugin
dependencies have been modified to it can be built without graphics nor video
codecs selected. Also, the plugin now relies on libimxvpuapi which is a
community-driven alternative of libfslvpuwrap.

The testing has been done on a SabreLite with the following defconfig:
BR2_arm=y
BR2_cortex_a9=y
BR2_ARM_ENABLE_NEON=y
BR2_ARM_FPU_NEON=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY=y
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1"
BR2_ROOTFS_POST_BUILD_SCRIPT="board/boundarydevices/nitrogen6x/post-build.sh"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux-imx6/tarball/d7a412b/linux-imx6-d7a412b.tar.gz"
BR2_LINUX_KERNEL_DEFCONFIG="boundary"
BR2_LINUX_KERNEL_ZIMAGE=y
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6q-sabrelite"
BR2_LINUX_KERNEL_INSTALL_TARGET=y
BR2_PACKAGE_ALSA_UTILS=y
BR2_PACKAGE_ALSA_UTILS_ALSACONF=y
BR2_PACKAGE_ALSA_UTILS_AMIDI=y
BR2_PACKAGE_ALSA_UTILS_AMIXER=y
BR2_PACKAGE_ALSA_UTILS_APLAY=y
BR2_PACKAGE_ALSA_UTILS_APLAYMIDI=y
BR2_PACKAGE_ALSA_UTILS_SPEAKER_TEST=y
BR2_PACKAGE_GSTREAMER=y
BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_AUDIOTESTSRC=y
BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_VIDEOTESTSRC=y
BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_ALSA=y
BR2_PACKAGE_GST_PLUGINS_GOOD=y
BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_AUTODETECT=y
BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_DEBUGUTILS=y
BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_FLV=y
BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_ID3DEMUX=y
BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_MATROSKA=y
BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_VIDEOBOX=y
BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_V4L2=y
BR2_PACKAGE_GST_FSL_PLUGINS=y
BR2_PACKAGE_GSTREAMER1=y
BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_APP=y
BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_AUDIORATE=y
BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_AUDIOTESTSRC=y
BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_ENCODING=y
BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VIDEOCONVERT=y
BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_GIO=y
BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_SUBPARSE=y
BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_TCP=y
BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VIDEOTESTSRC=y
BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_ALSA=y
BR2_PACKAGE_GST1_PLUGINS_GOOD=y
BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_AUDIOPARSERS=y
BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_AUTODETECT=y
BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_DEBUGUTILS=y
BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_FLV=y
BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_ID3DEMUX=y
BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_MATROSKA=y
BR2_PACKAGE_GST1_IMX=y
BR2_PACKAGE_GST1_IMX_V4L2_PLUGIN=y
BR2_PACKAGE_GST1_IMX_VPU_PLUGIN=y
BR2_PACKAGE_GST1_IMX_EGL_PLUGIN=y
BR2_PACKAGE_GST1_IMX_G2D_PLUGIN=y
BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q=y
BR2_PACKAGE_IMX_GPU_VIV=y
BR2_PACKAGE_IMX_GPU_VIV_APITRACE=y
BR2_PACKAGE_IMX_GPU_VIV_EXAMPLES=y
BR2_PACKAGE_IMX_GPU_VIV_GMEM_INFO=y
BR2_PACKAGE_FONTCONFIG=y
BR2_PACKAGE_HOST_MKE2IMG=y
BR2_PACKAGE_HOST_UBOOT_TOOLS=y

Regards,
Gary

Gary Bisson (10):
  firmware-imx: bump to version 5.2
  imx-kobs: bump to version 5.1
  imx-lib: bump to version 5.1
  freescale-imx: remove FREESCALE_IMX_VERSION
  libfslcodec: bump to version 4.0.7
  libfslparser: bump to version 4.0.7
  libfslvpuwrap: bump to version 1.0.61
  libimxvpuapi: add new package
  gst1-plugins-bad: add install to staging directory
  gst1-imx: bump to version 0.12.0

 package/Config.in                                  |  1 +
 .../freescale-imx/firmware-imx/firmware-imx.hash   |  2 +-
 package/freescale-imx/firmware-imx/firmware-imx.mk |  9 ++--
 package/freescale-imx/freescale-imx.mk             |  1 -
 package/freescale-imx/imx-kobs/imx-kobs.hash       |  2 +-
 package/freescale-imx/imx-kobs/imx-kobs.mk         |  2 +-
 package/freescale-imx/imx-lib/imx-lib.hash         |  2 +-
 package/freescale-imx/imx-lib/imx-lib.mk           |  4 +-
 package/gstreamer1/gst1-imx/Config.in              | 58 ++++++++++++++++++----
 package/gstreamer1/gst1-imx/gst1-imx.mk            | 15 +++++-
 .../gst1-plugins-bad/gst1-plugins-bad.mk           |  1 +
 package/libfslcodec/libfslcodec.hash               |  2 +-
 package/libfslcodec/libfslcodec.mk                 |  2 +-
 package/libfslparser/libfslparser.hash             |  2 +-
 package/libfslparser/libfslparser.mk               |  2 +-
 package/libfslvpuwrap/libfslvpuwrap.hash           |  2 +-
 package/libfslvpuwrap/libfslvpuwrap.mk             |  2 +-
 package/libimxvpuapi/Config.in                     | 10 ++++
 package/libimxvpuapi/libimxvpuapi.mk               | 35 +++++++++++++
 19 files changed, 127 insertions(+), 27 deletions(-)
 create mode 100644 package/libimxvpuapi/Config.in
 create mode 100644 package/libimxvpuapi/libimxvpuapi.mk

-- 
2.6.4

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 01/10] firmware-imx: bump to version 5.2
  2016-01-30 11:45 [Buildroot] [PATCH 00/10] Update most Freescale packages Gary Bisson
@ 2016-01-30 11:45 ` Gary Bisson
  2016-02-01 20:39   ` Thomas Petazzoni
  2016-01-30 11:45 ` [Buildroot] [PATCH 02/10] imx-kobs: bump to version 5.1 Gary Bisson
                   ` (8 subsequent siblings)
  9 siblings, 1 reply; 30+ messages in thread
From: Gary Bisson @ 2016-01-30 11:45 UTC (permalink / raw)
  To: buildroot

Use a different versioning schema based on package versioning
instead of BSP version. This way, if a new BSP version does
not bump this package, we can keep this package unchanged as well.

VPU firmware upgraded to v3.1.1_r46067
- Low Latency fixes for H.264 encoder
- Wrong frame number fix for H.264 decoder
- Decode failure fix for H.264 decoder with multi-SPS/PPS headers

The package adds the EPDC waveforms and the needed changes to properly
install those were done in the firmware-imx.inc file.

This patch is based on the Yocto equivalent:
https://github.com/Freescale/meta-fsl-arm/commit/d869826
https://github.com/Freescale/meta-fsl-arm/commit/075a5b1

This package has been implicitely tested through gstreamer as the
plugins rely on them for vpu decoding for instance:
 # gst-launch-1.0 filesrc location=/root/tears_of_steel_1080p.webm ! \
   matroskademux ! imxvpudec ! imxipuvideosink

Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
---
 package/freescale-imx/firmware-imx/firmware-imx.hash | 2 +-
 package/freescale-imx/firmware-imx/firmware-imx.mk   | 9 ++++++---
 2 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/package/freescale-imx/firmware-imx/firmware-imx.hash b/package/freescale-imx/firmware-imx/firmware-imx.hash
index 0b89c4b..06d5a54 100644
--- a/package/freescale-imx/firmware-imx/firmware-imx.hash
+++ b/package/freescale-imx/firmware-imx/firmware-imx.hash
@@ -1,2 +1,2 @@
 # locally computed
-sha256 1f09acd4d605efc78a0672068a658cb16274811d2f444cf3ae7aaa075266746f  firmware-imx-3.14.28-1.0.0.bin
+sha256 8cc2df128c0e2d2f5224d73389fbe6e4d6fa9ede76f8c0a9adaf7ec0986d0f1f  firmware-imx-5.2.bin
diff --git a/package/freescale-imx/firmware-imx/firmware-imx.mk b/package/freescale-imx/firmware-imx/firmware-imx.mk
index 9cab5c2..51c428f 100644
--- a/package/freescale-imx/firmware-imx/firmware-imx.mk
+++ b/package/freescale-imx/firmware-imx/firmware-imx.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-FIRMWARE_IMX_VERSION = $(FREESCALE_IMX_VERSION)
+FIRMWARE_IMX_VERSION = 5.2
 FIRMWARE_IMX_SITE = $(FREESCALE_IMX_SITE)
 FIRMWARE_IMX_SOURCE = firmware-imx-$(FIRMWARE_IMX_VERSION).bin
 
@@ -13,17 +13,20 @@ FIRMWARE_IMX_LICENSE = Freescale Semiconductor Software License Agreement, \
 FIRMWARE_IMX_LICENSE_FILES = EULA COPYING
 FIRMWARE_IMX_REDISTRIBUTE = NO
 
-FIRMWARE_IMX_BLOBS = ath6k sdma vpu
+FIRMWARE_IMX_BLOBS = sdma vpu
 
 define FIRMWARE_IMX_EXTRACT_CMDS
 	$(call FREESCALE_IMX_EXTRACT_HELPER,$(DL_DIR)/$(FIRMWARE_IMX_SOURCE))
 endef
 
 define FIRMWARE_IMX_INSTALL_TARGET_CMDS
-	mkdir -p $(TARGET_DIR)/lib/firmware
+	mkdir -p $(TARGET_DIR)/lib/firmware/imx
 	for blobdir in $(FIRMWARE_IMX_BLOBS); do \
 		cp -r $(@D)/firmware/$${blobdir} $(TARGET_DIR)/lib/firmware; \
 	done
+	cp -r $(@D)/firmware/epdc $(TARGET_DIR)/lib/firmware/imx; \
+	mv $(TARGET_DIR)/lib/firmware/imx/epdc/epdc_ED060XH2C1.fw.nonrestricted \
+	   $(TARGET_DIR)/lib/firmware/imx/epdc/epdc_ED060XH2C1.fw;
 endef
 
 $(eval $(generic-package))
-- 
2.6.4

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 02/10] imx-kobs: bump to version 5.1
  2016-01-30 11:45 [Buildroot] [PATCH 00/10] Update most Freescale packages Gary Bisson
  2016-01-30 11:45 ` [Buildroot] [PATCH 01/10] firmware-imx: bump to version 5.2 Gary Bisson
@ 2016-01-30 11:45 ` Gary Bisson
  2016-02-01 20:39   ` Thomas Petazzoni
  2016-01-30 11:45 ` [Buildroot] [PATCH 03/10] imx-lib: " Gary Bisson
                   ` (7 subsequent siblings)
  9 siblings, 1 reply; 30+ messages in thread
From: Gary Bisson @ 2016-01-30 11:45 UTC (permalink / raw)
  To: buildroot

Use a different versioning schema based on package versioning
instead of BSP version. This way, if a new BSP version does
not bump this package, we can keep this package unchanged as well.

Changelog since 3.14.28-1.0.0_ga:
- Add fixes for maximum ecc strength for each platform.
- Add mx7 boot config support.
- Add i.MX 6UltraLite support.
- Join the ecc with real FCB data when not byte-aligned.
- Generalize the encode_bch_ecc function for different configurations.

This patch is based on the Yocto equivalent:
https://github.com/Freescale/meta-fsl-arm/commit/8d47a2e
https://github.com/Freescale/meta-fsl-arm/commit/70edf16

Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
---
 package/freescale-imx/imx-kobs/imx-kobs.hash | 2 +-
 package/freescale-imx/imx-kobs/imx-kobs.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/freescale-imx/imx-kobs/imx-kobs.hash b/package/freescale-imx/imx-kobs/imx-kobs.hash
index 13373ea..477f231 100644
--- a/package/freescale-imx/imx-kobs/imx-kobs.hash
+++ b/package/freescale-imx/imx-kobs/imx-kobs.hash
@@ -1,2 +1,2 @@
 # locally computed
-sha256 cfac042f5c96731205c397a4a6b3ed966f804569ae4d0e2685d22fdf6bdc9eb7  imx-kobs-3.14.28-1.0.0.tar.gz
+sha256 28c7356187ae26a2b37fb37a4b7bfdb63b3628b72d737d897ae6d5b969fbb51a  imx-kobs-5.1.tar.gz
diff --git a/package/freescale-imx/imx-kobs/imx-kobs.mk b/package/freescale-imx/imx-kobs/imx-kobs.mk
index 02c5cad..bf01567 100644
--- a/package/freescale-imx/imx-kobs/imx-kobs.mk
+++ b/package/freescale-imx/imx-kobs/imx-kobs.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-IMX_KOBS_VERSION = $(FREESCALE_IMX_VERSION)
+IMX_KOBS_VERSION = 5.1
 IMX_KOBS_SITE = $(FREESCALE_IMX_SITE)
 IMX_KOBS_LICENSE = GPLv2+
 IMX_KOBS_LICENSE_FILES = COPYING
-- 
2.6.4

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 03/10] imx-lib: bump to version 5.1
  2016-01-30 11:45 [Buildroot] [PATCH 00/10] Update most Freescale packages Gary Bisson
  2016-01-30 11:45 ` [Buildroot] [PATCH 01/10] firmware-imx: bump to version 5.2 Gary Bisson
  2016-01-30 11:45 ` [Buildroot] [PATCH 02/10] imx-kobs: bump to version 5.1 Gary Bisson
@ 2016-01-30 11:45 ` Gary Bisson
  2016-02-01 20:39   ` Thomas Petazzoni
  2016-01-30 11:45 ` [Buildroot] [PATCH 04/10] freescale-imx: remove FREESCALE_IMX_VERSION Gary Bisson
                   ` (6 subsequent siblings)
  9 siblings, 1 reply; 30+ messages in thread
From: Gary Bisson @ 2016-01-30 11:45 UTC (permalink / raw)
  To: buildroot

Change version to be independent of BSP version.  This limits
confusion on future BSP updates that do not include imx-lib updates.

Changelog since 3.14.28-1.0.0_ga:
- Add i.MX 7D support.
- Change LICENSE file.
- Enable pxp libraries for i.MX 6UltraLite.
- Fix rng and shara2 to exclude the 6UL platform to avoid build breaks

This patch is based on the Yocto equivalent:
https://github.com/Freescale/meta-fsl-arm/commit/b299454
https://github.com/Freescale/meta-fsl-arm/commit/5f28af0

Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
---
 package/freescale-imx/imx-lib/imx-lib.hash | 2 +-
 package/freescale-imx/imx-lib/imx-lib.mk   | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/package/freescale-imx/imx-lib/imx-lib.hash b/package/freescale-imx/imx-lib/imx-lib.hash
index 85f0a40..8e4bd73 100644
--- a/package/freescale-imx/imx-lib/imx-lib.hash
+++ b/package/freescale-imx/imx-lib/imx-lib.hash
@@ -1,2 +1,2 @@
 # locally computed
-sha256 46022817d25f154b60247fdcbb87216e23e553bd88ec9664b1b5d5911e7aa2a2  imx-lib-3.14.28-1.0.0.tar.gz
+sha256 2b4547ffb1de328cf8997a09a423c6f015d808493efd11a98a5d42c6497e3445  imx-lib-5.1.tar.gz
diff --git a/package/freescale-imx/imx-lib/imx-lib.mk b/package/freescale-imx/imx-lib/imx-lib.mk
index e160cca..b49357b 100644
--- a/package/freescale-imx/imx-lib/imx-lib.mk
+++ b/package/freescale-imx/imx-lib/imx-lib.mk
@@ -4,10 +4,10 @@
 #
 ################################################################################
 
-IMX_LIB_VERSION = $(FREESCALE_IMX_VERSION)
+IMX_LIB_VERSION = 5.1
 IMX_LIB_SITE = $(FREESCALE_IMX_SITE)
 IMX_LIB_LICENSE = LGPLv2.1+
-IMX_LIB_LICENSE_FILES = pxp/pxp_lib.h
+IMX_LIB_LICENSE_FILES = COPYING-LGPL-2.1
 
 IMX_LIB_INSTALL_STAGING = YES
 
-- 
2.6.4

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 04/10] freescale-imx: remove FREESCALE_IMX_VERSION
  2016-01-30 11:45 [Buildroot] [PATCH 00/10] Update most Freescale packages Gary Bisson
                   ` (2 preceding siblings ...)
  2016-01-30 11:45 ` [Buildroot] [PATCH 03/10] imx-lib: " Gary Bisson
@ 2016-01-30 11:45 ` Gary Bisson
  2016-02-01 20:39   ` Thomas Petazzoni
  2016-01-30 11:45 ` [Buildroot] [PATCH 05/10] libfslcodec: bump to version 4.0.7 Gary Bisson
                   ` (5 subsequent siblings)
  9 siblings, 1 reply; 30+ messages in thread
From: Gary Bisson @ 2016-01-30 11:45 UTC (permalink / raw)
  To: buildroot

As all the packages now have a version which doesn't depend on the BSP
version.

Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
---
 package/freescale-imx/freescale-imx.mk | 1 -
 1 file changed, 1 deletion(-)

diff --git a/package/freescale-imx/freescale-imx.mk b/package/freescale-imx/freescale-imx.mk
index d4f8967..e8ca77f 100644
--- a/package/freescale-imx/freescale-imx.mk
+++ b/package/freescale-imx/freescale-imx.mk
@@ -4,7 +4,6 @@
 #
 ################################################################################
 
-FREESCALE_IMX_VERSION = 3.14.28-1.0.0
 FREESCALE_IMX_SITE = http://www.freescale.com/lgfiles/NMG/MAD/YOCTO
 
 # Helper for self-extracting binaries distributed by Freescale.
-- 
2.6.4

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 05/10] libfslcodec: bump to version 4.0.7
  2016-01-30 11:45 [Buildroot] [PATCH 00/10] Update most Freescale packages Gary Bisson
                   ` (3 preceding siblings ...)
  2016-01-30 11:45 ` [Buildroot] [PATCH 04/10] freescale-imx: remove FREESCALE_IMX_VERSION Gary Bisson
@ 2016-01-30 11:45 ` Gary Bisson
  2016-02-01 20:39   ` Thomas Petazzoni
  2016-01-30 11:45 ` [Buildroot] [PATCH 06/10] libfslparser: " Gary Bisson
                   ` (4 subsequent siblings)
  9 siblings, 1 reply; 30+ messages in thread
From: Gary Bisson @ 2016-01-30 11:45 UTC (permalink / raw)
  To: buildroot

Changelog since 4.0.3:
- Add mx7 SoC support.
- Add test binary to release package.
- Fix segmentation fault issue with only standard build.
- Build std only for arm11 and arm12.
- Fix some mp3_dec noise issue of c code for arm11 and arm9.

This patch is based on the Yocto equivalent:
https://github.com/Freescale/meta-fsl-arm/commit/47b2677
https://github.com/Freescale/meta-fsl-arm/commit/c88fd22
https://github.com/Freescale/meta-fsl-arm/commit/3220a4c

This package has been implicitely tested through gstreamer as the 0.10
plugin relies on it:
 # gst-launch-0.10 playbin uri=file:///root/tears_of_steel_1080p.webm

Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
---
 package/libfslcodec/libfslcodec.hash | 2 +-
 package/libfslcodec/libfslcodec.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/libfslcodec/libfslcodec.hash b/package/libfslcodec/libfslcodec.hash
index 6a41be1..d977a66 100644
--- a/package/libfslcodec/libfslcodec.hash
+++ b/package/libfslcodec/libfslcodec.hash
@@ -1,2 +1,2 @@
 # locally computed
-sha256	0d0ff933eed0a021763115b9c8ae812c6376a19bbd95e555d89ea7404f6c8f2f  libfslcodec-4.0.3.bin
+sha256	de1251286ebbc1541452f2f70fbd73e42c58f95630d65d1f9aaabf10a6caa38f  libfslcodec-4.0.7.bin
diff --git a/package/libfslcodec/libfslcodec.mk b/package/libfslcodec/libfslcodec.mk
index 473d662..e151c66 100644
--- a/package/libfslcodec/libfslcodec.mk
+++ b/package/libfslcodec/libfslcodec.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-LIBFSLCODEC_VERSION = 4.0.3
+LIBFSLCODEC_VERSION = 4.0.7
 LIBFSLCODEC_SITE = $(FREESCALE_IMX_SITE)
 LIBFSLCODEC_SOURCE = libfslcodec-$(LIBFSLCODEC_VERSION).bin
 LIBFSLCODEC_INSTALL_STAGING = YES
-- 
2.6.4

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 06/10] libfslparser: bump to version 4.0.7
  2016-01-30 11:45 [Buildroot] [PATCH 00/10] Update most Freescale packages Gary Bisson
                   ` (4 preceding siblings ...)
  2016-01-30 11:45 ` [Buildroot] [PATCH 05/10] libfslcodec: bump to version 4.0.7 Gary Bisson
@ 2016-01-30 11:45 ` Gary Bisson
  2016-02-01 20:39   ` Thomas Petazzoni
  2016-01-30 11:45 ` [Buildroot] [PATCH 07/10] libfslvpuwrap: bump to version 1.0.61 Gary Bisson
                   ` (3 subsequent siblings)
  9 siblings, 1 reply; 30+ messages in thread
From: Gary Bisson @ 2016-01-30 11:45 UTC (permalink / raw)
  To: buildroot

Changelog:
- Add h264 parser version.
- Support wide and 'ms 0x0 0x11' adpcm tag.
- Support hev1 tag for hevc video codec.
- TS segment fault.
- Improve mkv parser's loading time when create parser with large size
file.

This patch is based on the Yocto equivalent:
https://github.com/Freescale/meta-fsl-arm/commit/6406ad4
https://github.com/Freescale/meta-fsl-arm/commit/09a532c
https://github.com/Freescale/meta-fsl-arm/commit/371df94

This package has been implicitely tested through gstreamer as the 0.10
plugin relies on it:
 # gst-launch-0.10 playbin uri=file:///root/tears_of_steel_1080p.webm

Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
---
 package/libfslparser/libfslparser.hash | 2 +-
 package/libfslparser/libfslparser.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/libfslparser/libfslparser.hash b/package/libfslparser/libfslparser.hash
index 19ee12e..976a2d2 100644
--- a/package/libfslparser/libfslparser.hash
+++ b/package/libfslparser/libfslparser.hash
@@ -1,2 +1,2 @@
 # locally computed
-sha256	9db10ca6a61c8fdbe91b55b65d084dcbb5f9cfb58b088996c7dd2d6dc8385730  libfslparser-4.0.3.bin
+sha256	e7c248e64db03c3ddd84f50ae408e560f8f5819e58c487a5dec5141bc384ae83  libfslparser-4.0.7.bin
diff --git a/package/libfslparser/libfslparser.mk b/package/libfslparser/libfslparser.mk
index 2b53d62..c5efc85 100644
--- a/package/libfslparser/libfslparser.mk
+++ b/package/libfslparser/libfslparser.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-LIBFSLPARSER_VERSION = 4.0.3
+LIBFSLPARSER_VERSION = 4.0.7
 LIBFSLPARSER_SITE = $(FREESCALE_IMX_SITE)
 LIBFSLPARSER_SOURCE = libfslparser-$(LIBFSLPARSER_VERSION).bin
 LIBFSLPARSER_INSTALL_STAGING = YES
-- 
2.6.4

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 07/10] libfslvpuwrap: bump to version 1.0.61
  2016-01-30 11:45 [Buildroot] [PATCH 00/10] Update most Freescale packages Gary Bisson
                   ` (5 preceding siblings ...)
  2016-01-30 11:45 ` [Buildroot] [PATCH 06/10] libfslparser: " Gary Bisson
@ 2016-01-30 11:45 ` Gary Bisson
  2016-02-01 20:39   ` Thomas Petazzoni
  2016-01-30 11:45 ` [Buildroot] [PATCH 08/10] libimxvpuapi: add new package Gary Bisson
                   ` (2 subsequent siblings)
  9 siblings, 1 reply; 30+ messages in thread
From: Gary Bisson @ 2016-01-30 11:45 UTC (permalink / raw)
  To: buildroot

Changelog:
- Enable resolution change for H.263 and VP8

This patch is based on the Yocto equivalent:
https://github.com/Freescale/meta-fsl-arm/commit/f11936b

This package has been implicitely tested through gstreamer as the
plugins rely on it for vpu decoding:
 # gst-launch-0.10 playbin uri=file:///root/tears_of_steel_1080p.webm
 # gst-launch-1.0 playbin uri=file:///root/tears_of_steel_1080p.webm
 # gst-launch-1.0 filesrc location=/root/tears_of_steel_1080p.webm ! \
   matroskademux ! imxvpudec ! imxipuvideosink

Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
---
 package/libfslvpuwrap/libfslvpuwrap.hash | 2 +-
 package/libfslvpuwrap/libfslvpuwrap.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/libfslvpuwrap/libfslvpuwrap.hash b/package/libfslvpuwrap/libfslvpuwrap.hash
index e7ca1a8..8e6ba61 100644
--- a/package/libfslvpuwrap/libfslvpuwrap.hash
+++ b/package/libfslvpuwrap/libfslvpuwrap.hash
@@ -1,2 +1,2 @@
 # locally computed
-sha256	a278eb18ec24230166ac39e2eadf7b934798f0432654c2e24c4cb69c3ac1cf0f  libfslvpuwrap-1.0.58.bin
+sha256	e4bfe218d17ec66acf8cd97d08fef8ef71ab6762d4c8cf0d0193eca5f599b4c9  libfslvpuwrap-1.0.61.bin
diff --git a/package/libfslvpuwrap/libfslvpuwrap.mk b/package/libfslvpuwrap/libfslvpuwrap.mk
index 7669c63..b3d6f0c 100644
--- a/package/libfslvpuwrap/libfslvpuwrap.mk
+++ b/package/libfslvpuwrap/libfslvpuwrap.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-LIBFSLVPUWRAP_VERSION = 1.0.58
+LIBFSLVPUWRAP_VERSION = 1.0.61
 LIBFSLVPUWRAP_SITE = $(FREESCALE_IMX_SITE)
 LIBFSLVPUWRAP_SOURCE = libfslvpuwrap-$(LIBFSLVPUWRAP_VERSION).bin
 LIBFSLVPUWRAP_DEPENDENCIES = imx-vpu
-- 
2.6.4

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 08/10] libimxvpuapi: add new package
  2016-01-30 11:45 [Buildroot] [PATCH 00/10] Update most Freescale packages Gary Bisson
                   ` (6 preceding siblings ...)
  2016-01-30 11:45 ` [Buildroot] [PATCH 07/10] libfslvpuwrap: bump to version 1.0.61 Gary Bisson
@ 2016-01-30 11:45 ` Gary Bisson
  2016-02-01 20:42   ` Thomas Petazzoni
  2016-01-30 11:45 ` [Buildroot] [PATCH 09/10] gst1-plugins-bad: add install to staging directory Gary Bisson
  2016-01-30 11:45 ` [Buildroot] [PATCH 10/10] gst1-imx: bump to version 0.12.0 Gary Bisson
  9 siblings, 1 reply; 30+ messages in thread
From: Gary Bisson @ 2016-01-30 11:45 UTC (permalink / raw)
  To: buildroot

This is a library for using the i.MX6 VPU. It is an alternative to
libfslvpuwrap, hosted on Github, and has an API that features several
improvements over libfslvpuwrap, which include:

* User-defined context information associated with input frames, which
is passed on to corresponding output frames (to be able to identify
which input frame produced which output frame)
* Groundwork for future DMA-BUF/BMM/ION/CMA allocator integration, using
file descriptors instead of physical addresses
* Indicators for when it is safe to try to decode frames, which is
critical in multi-threaded playback cases
* Simplified, higher-level JPEG en/decoding API, based on the VPU MJPEG
codec; useful for picture viewing without the extra boilerplate for
VPU-based en/decoding

Changelog 0.10.0 -> 0.10.1:
- add debian packaging files
- update waf to version 1.8.16
- add workaround in wscript to prevent stale pkg-config .pc files
- fix memory leak by adding missing IOFreeVirtMem() call in vpulib
backend

This patch is based on the Yocto equivalent:
https://github.com/Freescale/meta-fsl-arm/commit/e519d6c
https://github.com/Freescale/meta-fsl-arm/commit/1dd6a5b

This package has been implicitely tested through gstreamer as the
plugins rely on it for vpu decoding:
 # gst-launch-1.0 playbin uri=file:///root/tears_of_steel_1080p.webm

Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
---
 package/Config.in                    |  1 +
 package/libimxvpuapi/Config.in       | 10 ++++++++++
 package/libimxvpuapi/libimxvpuapi.mk | 35 +++++++++++++++++++++++++++++++++++
 3 files changed, 46 insertions(+)
 create mode 100644 package/libimxvpuapi/Config.in
 create mode 100644 package/libimxvpuapi/libimxvpuapi.mk

diff --git a/package/Config.in b/package/Config.in
index 09c2b40..d3e5e30 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1033,6 +1033,7 @@ menu "Multimedia"
 	source "package/libfslparser/Config.in"
 	source "package/libfslvpuwrap/Config.in"
 	source "package/libhdhomerun/Config.in"
+	source "package/libimxvpuapi/Config.in"
 	source "package/libmatroska/Config.in"
 	source "package/libmms/Config.in"
 	source "package/libmpeg2/Config.in"
diff --git a/package/libimxvpuapi/Config.in b/package/libimxvpuapi/Config.in
new file mode 100644
index 0000000..222aa76
--- /dev/null
+++ b/package/libimxvpuapi/Config.in
@@ -0,0 +1,10 @@
+config BR2_PACKAGE_LIBIMXVPUAPI
+	bool "libimxvpuapi"
+	depends on BR2_arm # Only relevant for i.MX
+	select BR2_PACKAGE_FREESCALE_IMX
+	select BR2_PACKAGE_IMX_VPU
+	help
+	  This library provides an API for using the iMX6 VPU video engine. It
+	  is an alternative to Freescale's VPU wrapper. Both the wrapper and
+	  this library are layered on top of imx-vpu, the low-level iMX6 VPU
+	  interface.
diff --git a/package/libimxvpuapi/libimxvpuapi.mk b/package/libimxvpuapi/libimxvpuapi.mk
new file mode 100644
index 0000000..ff9282d
--- /dev/null
+++ b/package/libimxvpuapi/libimxvpuapi.mk
@@ -0,0 +1,35 @@
+################################################################################
+#
+# libimxvpuapi
+#
+################################################################################
+
+LIBIMXVPUAPI_VERSION = 0.10.1
+LIBIMXVPUAPI_SITE = $(call github,Freescale,libimxvpuapi,$(LIBIMXVPUAPI_VERSION))
+LIBIMXVPUAPI_LICENSE = LGPLv2.1
+LIBIMXVPUAPI_LICENSE_FILES = LICENSE
+LIBIMXVPUAPI_DEPENDENCIES = host-pkgconf host-python imx-vpu
+LIBIMXVPUAPI_INSTALL_STAGING = YES
+
+define LIBIMXVPUAPI_CONFIGURE_CMDS
+	cd $(@D); \
+	$(TARGET_CONFIGURE_OPTS) $(HOST_DIR)/usr/bin/python2 ./waf configure \
+		--prefix=/usr
+endef
+
+define LIBIMXVPUAPI_BUILD_CMDS
+	cd $(@D); \
+	$(HOST_DIR)/usr/bin/python2 ./waf build -j $(PARALLEL_JOBS)
+endef
+
+define LIBIMXVPUAPI_INSTALL_STAGING_CMDS
+	cd $(@D); \
+	$(HOST_DIR)/usr/bin/python2 ./waf --destdir=$(STAGING_DIR) install
+endef
+
+define LIBIMXVPUAPI_INSTALL_TARGET_CMDS
+	cd $(@D); \
+	$(HOST_DIR)/usr/bin/python2 ./waf --destdir=$(TARGET_DIR) install
+endef
+
+$(eval $(generic-package))
-- 
2.6.4

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 09/10] gst1-plugins-bad: add install to staging directory
  2016-01-30 11:45 [Buildroot] [PATCH 00/10] Update most Freescale packages Gary Bisson
                   ` (7 preceding siblings ...)
  2016-01-30 11:45 ` [Buildroot] [PATCH 08/10] libimxvpuapi: add new package Gary Bisson
@ 2016-01-30 11:45 ` Gary Bisson
  2016-02-01 20:42   ` Thomas Petazzoni
  2016-01-30 11:45 ` [Buildroot] [PATCH 10/10] gst1-imx: bump to version 0.12.0 Gary Bisson
  9 siblings, 1 reply; 30+ messages in thread
From: Gary Bisson @ 2016-01-30 11:45 UTC (permalink / raw)
  To: buildroot

gst1-imx package links against libgstphotography for its imxv4l2src
plugin.

Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
---
 package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk | 1 +
 1 file changed, 1 insertion(+)

diff --git a/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk b/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk
index f9f8558..3a097e8 100644
--- a/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk
+++ b/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk
@@ -7,6 +7,7 @@
 GST1_PLUGINS_BAD_VERSION = 1.6.3
 GST1_PLUGINS_BAD_SOURCE = gst-plugins-bad-$(GST1_PLUGINS_BAD_VERSION).tar.xz
 GST1_PLUGINS_BAD_SITE = http://gstreamer.freedesktop.org/src/gst-plugins-bad
+GST1_PLUGINS_BAD_INSTALL_STAGING = YES
 GST1_PLUGINS_BAD_LICENSE_FILES = COPYING COPYING.LIB
 # Unknown and GPL licensed plugins will append to GST1_PLUGINS_BAD_LICENSE if
 # enabled.
-- 
2.6.4

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 10/10] gst1-imx: bump to version 0.12.0
  2016-01-30 11:45 [Buildroot] [PATCH 00/10] Update most Freescale packages Gary Bisson
                   ` (8 preceding siblings ...)
  2016-01-30 11:45 ` [Buildroot] [PATCH 09/10] gst1-plugins-bad: add install to staging directory Gary Bisson
@ 2016-01-30 11:45 ` Gary Bisson
  2016-02-01 20:44   ` Thomas Petazzoni
  2016-02-02  8:51   ` Arnout Vandecappelle
  9 siblings, 2 replies; 30+ messages in thread
From: Gary Bisson @ 2016-01-30 11:45 UTC (permalink / raw)
  To: buildroot

Changelog:
* vpu:
  - Completely rewritten plugin code; elements now based on libimxvpuapi
    instead of libfslvpuwrap
  - imxvpuenc_h264 inserts SPS/PPS data in front of I/IDR frames
  - imxvpuenc_mjpeg's quality factor actually has an effect, and is
    equivalent to the libjpeg's quality factor (it is used in exactly
    the same way to scale the quantization matrix' coefficients)
  - the encoder's output buffers no longer have to use DMA memory; they
    use regular system memory instead
  - new support in imxvpudec (referred to as "chroma interleaving") for
    NV12, NV16, NV24 as output formats as an alternative to the I420,
    Y42B, Y444 formats
  - removed all of the system frame number tracking code, since it is
    unnecessary; Instead, the libimxvpuapi's context fields are used to
    associate input/output frames with GstVideoCodecFrame system frame
    numbers
  - fix memory leaks related to missing buffer pool unref'ing

* imxv4l2videosrc:
  - support for crop metadata
  - element uses the width, height, etc. of the format that the device
    actually uses during operation (instead of default values)
  - autofocus control support via GstPhotography
  - fix incorrect GLib warnings
  - fix segmentation fault when shutting down the element

* eglvivsink:
  - remove extra g_free() calls, which lead to runtime errors
  - remove GLESv2 VIVANTE link dependencies
  - add Android platform
  - manually retrieve VIV direct texture functions
    with this and the link dependency elimination, this means that for
    platforms except the framebuffer one, no Vivante specific headers
    and libraries are needed anymore
  - fix blocking issue in the Wayland platform mainloop

* improved and expanded documentation

* pxp: NV16 *is* supported after all (it was actually a bug in GStreamer
pre-1.5.91)
NOTE: this does not break compatibility with GStreamer versions older
than 1.5.91

* compositor: Update backported aggregator code to GStreamer 1.6

* blitter:
  - error handling improvements
  - add missing buffer pool unref'ing, which lead to memory leaks
  - add missing compositor dependency to blitter base

* uniaudio:
  - only build the uniaudio plugin if at least one codec was found
    during configuration
  - disable plugin if the gstaudio library is not available
  - add AAC profile field to the sink caps with GStreamer >= 1.4.4 to
    ensure the uniaudio decoder is only used for AAC-LC data

* ipu: increase fill frame width from 8 to 64 pixels to make IPU fill
operations work with pre-3.14 Freescale kernels

* g2d: use padding pixels when setting surface parameters, fixing G2D
failures with frame sizes that aren't aligned

* wscript:
  - improve Android support
  - fix installation paths for the common, blitter, compositor libraries

This is based on the Yocto equivalent:
https://github.com/Freescale/meta-fsl-arm/commit/cf7a088

However this package now offers a more flexible approach because it can
be built without the GPU or VPU elements for devices based on SoCs that
lack those features like the new i.MX7.

Tested with the following commands on i.MX6Q (IPU):
 # gst-launch-1.0 playbin uri=file:///root/tears_of_steel_1080p.webm
 # gst-launch-1.0 filesrc location=/root/tears_of_steel_1080p.webm ! \
   matroskademux ! imxvpudec ! imxipuvideosink
 # gst-launch-1.0 filesrc location=/root/tears_of_steel_1080p.webm ! \
   matroskademux ! imxvpudec ! imxeglvivsink

Tested with the following commands on i.MX6SX (PXP):
 # gst-launch-1.0 imxv4l2videosrc device=/dev/video1 ! imxpxpvideosink

Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
---
 package/gstreamer1/gst1-imx/Config.in   | 58 ++++++++++++++++++++++++++++-----
 package/gstreamer1/gst1-imx/gst1-imx.mk | 15 +++++++--
 2 files changed, 62 insertions(+), 11 deletions(-)

diff --git a/package/gstreamer1/gst1-imx/Config.in b/package/gstreamer1/gst1-imx/Config.in
index f7284f4..5f0da84 100644
--- a/package/gstreamer1/gst1-imx/Config.in
+++ b/package/gstreamer1/gst1-imx/Config.in
@@ -1,19 +1,13 @@
 comment "gst1-imx needs an imx-specific Linux kernel to be built"
 	depends on BR2_arm && !BR2_LINUX_KERNEL
 
-# Required by imx-gpu-viv
-comment "gst1-imx needs an (e)glibc toolchain"
-	depends on BR2_arm
-	depends on !BR2_TOOLCHAIN_USES_GLIBC
-
-config BR2_PACKAGE_GST1_IMX
+menuconfig BR2_PACKAGE_GST1_IMX
 	bool "gst1-imx"
 	depends on BR2_LINUX_KERNEL
 	depends on BR2_arm # Only relevant for i.MX
-	depends on BR2_TOOLCHAIN_USES_GLIBC # imx-gpu-viv
-	depends on BR2_PACKAGE_IMX_GPU_VIV
-	depends on BR2_PACKAGE_LIBFSLVPUWRAP
 	select BR2_PACKAGE_GST1_PLUGINS_BASE
+	select BR2_PACKAGE_GST1_IMX_IPU_PLUGIN
+	select BR2_PACKAGE_GST1_IMX_PXP_PLUGIN
 	help
 	  This is a set of GStreamer 1.0 plugins for plugins for Freescale's
 	  i.MX6 platforms, with emphasis on video en/decoding using the VPU
@@ -25,3 +19,49 @@ config BR2_PACKAGE_GST1_IMX
 	  The software as a whole is currently in beta stage.
 
 	  https://github.com/Freescale/gstreamer-imx
+
+if BR2_PACKAGE_GST1_IMX
+
+config BR2_PACKAGE_GST1_IMX_IPU_PLUGIN
+	bool "IPU plugin"
+	help
+	  IPU plugin library
+
+config BR2_PACKAGE_GST1_IMX_PXP_PLUGIN
+	bool "PXP plugin"
+	help
+	  PXP plugin library
+
+config BR2_PACKAGE_GST1_IMX_V4L2_PLUGIN
+	bool "V4L2 plugin"
+	select BR2_PACKAGE_GST1_PLUGINS_BAD
+	help
+	  V4L2 plugin library
+
+config BR2_PACKAGE_GST1_IMX_VPU_PLUGIN
+	bool "VPU plugin"
+	select BR2_PACKAGE_LIBIMXVPUAPI
+	help
+	  VPU plugin library
+
+# Required by imx-gpu-viv
+comment "GPU sinks need an (e)glibc toolchain"
+	depends on !BR2_TOOLCHAIN_USES_GLIBC
+
+config BR2_PACKAGE_GST1_IMX_EGL_PLUGIN
+	bool "EGL plugin"
+	depends on BR2_TOOLCHAIN_USES_GLIBC # imx-gpu-viv
+	depends on BR2_PACKAGE_IMX_GPU_VIV
+	help
+	  EGL plugin library
+
+config BR2_PACKAGE_GST1_IMX_G2D_PLUGIN
+	bool "G2D plugin"
+	depends on BR2_TOOLCHAIN_USES_GLIBC # imx-gpu-viv
+	depends on BR2_PACKAGE_IMX_GPU_VIV
+	depends on BR2_PACKAGE_GST1_IMX_EGL_PLUGIN
+	select BR2_PACKAGE_IMX_GPU_VIV_G2D
+	help
+	  G2D plugin library
+
+endif
diff --git a/package/gstreamer1/gst1-imx/gst1-imx.mk b/package/gstreamer1/gst1-imx/gst1-imx.mk
index 8ede8ad..f3eac0a 100644
--- a/package/gstreamer1/gst1-imx/gst1-imx.mk
+++ b/package/gstreamer1/gst1-imx/gst1-imx.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-GST1_IMX_VERSION = 0.11.1
+GST1_IMX_VERSION = 0.12.0
 GST1_IMX_SITE = $(call github,Freescale,gstreamer-imx,$(GST1_IMX_VERSION))
 
 GST1_IMX_LICENSE = LGPLv2+
@@ -13,13 +13,23 @@ GST1_IMX_LICENSE_FILES = LICENSE
 GST1_IMX_INSTALL_STAGING = YES
 
 GST1_IMX_DEPENDENCIES += host-pkgconf host-python \
-	imx-gpu-viv gstreamer1 gst1-plugins-base libfslvpuwrap
+	gstreamer1 gst1-plugins-base
 
 # needs access to imx-specific kernel headers
 GST1_IMX_DEPENDENCIES += linux
 GST1_IMX_CONF_OPTS += --prefix="/usr" \
 	--kernel-headers="$(LINUX_DIR)/include"
 
+ifeq ($(BR2_PACKAGE_GST1_IMX_V4L2_PLUGIN),y)
+GST1_IMX_DEPENDENCIES += gst1-plugins-bad
+endif
+
+ifeq ($(BR2_PACKAGE_GST1_IMX_VPU_PLUGIN),y)
+GST1_IMX_DEPENDENCIES += libimxvpuapi
+endif
+
+ifeq ($(BR2_PACKAGE_GST1_IMX_EGL_PLUGIN),y)
+GST1_IMX_DEPENDENCIES += imx-gpu-viv
 ifeq ($(BR2_PACKAGE_XLIB_LIBX11),y)
 GST1_IMX_DEPENDENCIES += xlib_libX11
 GST1_IMX_CONF_OPTS += --egl-platform=x11
@@ -31,6 +41,7 @@ else
 GST1_IMX_CONF_OPTS += --egl-platform=fb
 endif
 endif
+endif
 
 define GST1_IMX_CONFIGURE_CMDS
 	cd $(@D); \
-- 
2.6.4

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 01/10] firmware-imx: bump to version 5.2
  2016-01-30 11:45 ` [Buildroot] [PATCH 01/10] firmware-imx: bump to version 5.2 Gary Bisson
@ 2016-02-01 20:39   ` Thomas Petazzoni
  2016-02-01 20:56     ` Gary Bisson
  0 siblings, 1 reply; 30+ messages in thread
From: Thomas Petazzoni @ 2016-02-01 20:39 UTC (permalink / raw)
  To: buildroot

Dear Gary Bisson,

On Sat, 30 Jan 2016 12:45:48 +0100, Gary Bisson wrote:

> The package adds the EPDC waveforms and the needed changes to properly
> install those were done in the firmware-imx.inc file.

I guess you wanted to say firmware-imx.mk. Maybe you've done too much
Yocto :-)


>  define FIRMWARE_IMX_INSTALL_TARGET_CMDS
> -	mkdir -p $(TARGET_DIR)/lib/firmware
> +	mkdir -p $(TARGET_DIR)/lib/firmware/imx
>  	for blobdir in $(FIRMWARE_IMX_BLOBS); do \
>  		cp -r $(@D)/firmware/$${blobdir} $(TARGET_DIR)/lib/firmware; \
>  	done
> +	cp -r $(@D)/firmware/epdc $(TARGET_DIR)/lib/firmware/imx; \

The ; \ is not needed.

> +	mv $(TARGET_DIR)/lib/firmware/imx/epdc/epdc_ED060XH2C1.fw.nonrestricted \
> +	   $(TARGET_DIR)/lib/firmware/imx/epdc/epdc_ED060XH2C1.fw;

The final is not needed.

Also, this rename is a bit weird, maybe a comment would have been good.

I've fixed the typos and applied.

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 02/10] imx-kobs: bump to version 5.1
  2016-01-30 11:45 ` [Buildroot] [PATCH 02/10] imx-kobs: bump to version 5.1 Gary Bisson
@ 2016-02-01 20:39   ` Thomas Petazzoni
  0 siblings, 0 replies; 30+ messages in thread
From: Thomas Petazzoni @ 2016-02-01 20:39 UTC (permalink / raw)
  To: buildroot

Dear Gary Bisson,

On Sat, 30 Jan 2016 12:45:49 +0100, Gary Bisson wrote:
> Use a different versioning schema based on package versioning
> instead of BSP version. This way, if a new BSP version does
> not bump this package, we can keep this package unchanged as well.
> 
> Changelog since 3.14.28-1.0.0_ga:
> - Add fixes for maximum ecc strength for each platform.
> - Add mx7 boot config support.
> - Add i.MX 6UltraLite support.
> - Join the ecc with real FCB data when not byte-aligned.
> - Generalize the encode_bch_ecc function for different configurations.
> 
> This patch is based on the Yocto equivalent:
> https://github.com/Freescale/meta-fsl-arm/commit/8d47a2e
> https://github.com/Freescale/meta-fsl-arm/commit/70edf16
> 
> Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
> ---
>  package/freescale-imx/imx-kobs/imx-kobs.hash | 2 +-
>  package/freescale-imx/imx-kobs/imx-kobs.mk   | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)

Applied, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 03/10] imx-lib: bump to version 5.1
  2016-01-30 11:45 ` [Buildroot] [PATCH 03/10] imx-lib: " Gary Bisson
@ 2016-02-01 20:39   ` Thomas Petazzoni
  0 siblings, 0 replies; 30+ messages in thread
From: Thomas Petazzoni @ 2016-02-01 20:39 UTC (permalink / raw)
  To: buildroot

Dear Gary Bisson,

On Sat, 30 Jan 2016 12:45:50 +0100, Gary Bisson wrote:
> Change version to be independent of BSP version.  This limits
> confusion on future BSP updates that do not include imx-lib updates.
> 
> Changelog since 3.14.28-1.0.0_ga:
> - Add i.MX 7D support.
> - Change LICENSE file.
> - Enable pxp libraries for i.MX 6UltraLite.
> - Fix rng and shara2 to exclude the 6UL platform to avoid build breaks
> 
> This patch is based on the Yocto equivalent:
> https://github.com/Freescale/meta-fsl-arm/commit/b299454
> https://github.com/Freescale/meta-fsl-arm/commit/5f28af0
> 
> Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
> ---
>  package/freescale-imx/imx-lib/imx-lib.hash | 2 +-
>  package/freescale-imx/imx-lib/imx-lib.mk   | 4 ++--
>  2 files changed, 3 insertions(+), 3 deletions(-)

Applied, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 04/10] freescale-imx: remove FREESCALE_IMX_VERSION
  2016-01-30 11:45 ` [Buildroot] [PATCH 04/10] freescale-imx: remove FREESCALE_IMX_VERSION Gary Bisson
@ 2016-02-01 20:39   ` Thomas Petazzoni
  0 siblings, 0 replies; 30+ messages in thread
From: Thomas Petazzoni @ 2016-02-01 20:39 UTC (permalink / raw)
  To: buildroot

Dear Gary Bisson,

On Sat, 30 Jan 2016 12:45:51 +0100, Gary Bisson wrote:
> As all the packages now have a version which doesn't depend on the BSP
> version.
> 
> Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
> ---
>  package/freescale-imx/freescale-imx.mk | 1 -
>  1 file changed, 1 deletion(-)

Applied, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 05/10] libfslcodec: bump to version 4.0.7
  2016-01-30 11:45 ` [Buildroot] [PATCH 05/10] libfslcodec: bump to version 4.0.7 Gary Bisson
@ 2016-02-01 20:39   ` Thomas Petazzoni
  0 siblings, 0 replies; 30+ messages in thread
From: Thomas Petazzoni @ 2016-02-01 20:39 UTC (permalink / raw)
  To: buildroot

Dear Gary Bisson,

On Sat, 30 Jan 2016 12:45:52 +0100, Gary Bisson wrote:
> Changelog since 4.0.3:
> - Add mx7 SoC support.
> - Add test binary to release package.
> - Fix segmentation fault issue with only standard build.
> - Build std only for arm11 and arm12.
> - Fix some mp3_dec noise issue of c code for arm11 and arm9.
> 
> This patch is based on the Yocto equivalent:
> https://github.com/Freescale/meta-fsl-arm/commit/47b2677
> https://github.com/Freescale/meta-fsl-arm/commit/c88fd22
> https://github.com/Freescale/meta-fsl-arm/commit/3220a4c
> 
> This package has been implicitely tested through gstreamer as the 0.10
> plugin relies on it:
>  # gst-launch-0.10 playbin uri=file:///root/tears_of_steel_1080p.webm
> 
> Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
> ---
>  package/libfslcodec/libfslcodec.hash | 2 +-
>  package/libfslcodec/libfslcodec.mk   | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)

Applied, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 06/10] libfslparser: bump to version 4.0.7
  2016-01-30 11:45 ` [Buildroot] [PATCH 06/10] libfslparser: " Gary Bisson
@ 2016-02-01 20:39   ` Thomas Petazzoni
  0 siblings, 0 replies; 30+ messages in thread
From: Thomas Petazzoni @ 2016-02-01 20:39 UTC (permalink / raw)
  To: buildroot

Dear Gary Bisson,

On Sat, 30 Jan 2016 12:45:53 +0100, Gary Bisson wrote:
> Changelog:
> - Add h264 parser version.
> - Support wide and 'ms 0x0 0x11' adpcm tag.
> - Support hev1 tag for hevc video codec.
> - TS segment fault.
> - Improve mkv parser's loading time when create parser with large size
> file.
> 
> This patch is based on the Yocto equivalent:
> https://github.com/Freescale/meta-fsl-arm/commit/6406ad4
> https://github.com/Freescale/meta-fsl-arm/commit/09a532c
> https://github.com/Freescale/meta-fsl-arm/commit/371df94
> 
> This package has been implicitely tested through gstreamer as the 0.10
> plugin relies on it:
>  # gst-launch-0.10 playbin uri=file:///root/tears_of_steel_1080p.webm
> 
> Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
> ---
>  package/libfslparser/libfslparser.hash | 2 +-
>  package/libfslparser/libfslparser.mk   | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)

Applied, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 07/10] libfslvpuwrap: bump to version 1.0.61
  2016-01-30 11:45 ` [Buildroot] [PATCH 07/10] libfslvpuwrap: bump to version 1.0.61 Gary Bisson
@ 2016-02-01 20:39   ` Thomas Petazzoni
  0 siblings, 0 replies; 30+ messages in thread
From: Thomas Petazzoni @ 2016-02-01 20:39 UTC (permalink / raw)
  To: buildroot

Dear Gary Bisson,

On Sat, 30 Jan 2016 12:45:54 +0100, Gary Bisson wrote:
> Changelog:
> - Enable resolution change for H.263 and VP8
> 
> This patch is based on the Yocto equivalent:
> https://github.com/Freescale/meta-fsl-arm/commit/f11936b
> 
> This package has been implicitely tested through gstreamer as the
> plugins rely on it for vpu decoding:
>  # gst-launch-0.10 playbin uri=file:///root/tears_of_steel_1080p.webm
>  # gst-launch-1.0 playbin uri=file:///root/tears_of_steel_1080p.webm
>  # gst-launch-1.0 filesrc location=/root/tears_of_steel_1080p.webm ! \
>    matroskademux ! imxvpudec ! imxipuvideosink
> 
> Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
> ---
>  package/libfslvpuwrap/libfslvpuwrap.hash | 2 +-
>  package/libfslvpuwrap/libfslvpuwrap.mk   | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)

Applied, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 08/10] libimxvpuapi: add new package
  2016-01-30 11:45 ` [Buildroot] [PATCH 08/10] libimxvpuapi: add new package Gary Bisson
@ 2016-02-01 20:42   ` Thomas Petazzoni
  2016-02-01 21:07     ` Gary Bisson
  0 siblings, 1 reply; 30+ messages in thread
From: Thomas Petazzoni @ 2016-02-01 20:42 UTC (permalink / raw)
  To: buildroot

Dear Gary Bisson,

On Sat, 30 Jan 2016 12:45:55 +0100, Gary Bisson wrote:

> diff --git a/package/Config.in b/package/Config.in
> index 09c2b40..d3e5e30 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -1033,6 +1033,7 @@ menu "Multimedia"
>  	source "package/libfslparser/Config.in"
>  	source "package/libfslvpuwrap/Config.in"
>  	source "package/libhdhomerun/Config.in"
> +	source "package/libimxvpuapi/Config.in"

Why isn't it part of the package/freescale/ directory ? Because it
isn't sourced from the same site ?

>  	source "package/libmatroska/Config.in"
>  	source "package/libmms/Config.in"
>  	source "package/libmpeg2/Config.in"
> diff --git a/package/libimxvpuapi/Config.in b/package/libimxvpuapi/Config.in
> new file mode 100644
> index 0000000..222aa76
> --- /dev/null
> +++ b/package/libimxvpuapi/Config.in
> @@ -0,0 +1,10 @@
> +config BR2_PACKAGE_LIBIMXVPUAPI
> +	bool "libimxvpuapi"
> +	depends on BR2_arm # Only relevant for i.MX
> +	select BR2_PACKAGE_FREESCALE_IMX
> +	select BR2_PACKAGE_IMX_VPU

I am wondering if the first one shouldn't be a "depends on", but I'm
not sure. What do other think ?

> +	help
> +	  This library provides an API for using the iMX6 VPU video engine. It
> +	  is an alternative to Freescale's VPU wrapper. Both the wrapper and
> +	  this library are layered on top of imx-vpu, the low-level iMX6 VPU
> +	  interface.

A URL to the upstream web page would be good. A github page is fine as
a fallback if there's no real upstream web site.

> diff --git a/package/libimxvpuapi/libimxvpuapi.mk b/package/libimxvpuapi/libimxvpuapi.mk
> new file mode 100644
> index 0000000..ff9282d
> --- /dev/null
> +++ b/package/libimxvpuapi/libimxvpuapi.mk
> @@ -0,0 +1,35 @@
> +################################################################################
> +#
> +# libimxvpuapi
> +#
> +################################################################################
> +
> +LIBIMXVPUAPI_VERSION = 0.10.1
> +LIBIMXVPUAPI_SITE = $(call github,Freescale,libimxvpuapi,$(LIBIMXVPUAPI_VERSION))
> +LIBIMXVPUAPI_LICENSE = LGPLv2.1

License seems to be LGPLv2.1+.

Also, you forgot to include a hash file. Could you fix those issues and
send an updated version?

Thanks a lot!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 09/10] gst1-plugins-bad: add install to staging directory
  2016-01-30 11:45 ` [Buildroot] [PATCH 09/10] gst1-plugins-bad: add install to staging directory Gary Bisson
@ 2016-02-01 20:42   ` Thomas Petazzoni
  0 siblings, 0 replies; 30+ messages in thread
From: Thomas Petazzoni @ 2016-02-01 20:42 UTC (permalink / raw)
  To: buildroot

Dear Gary Bisson,

On Sat, 30 Jan 2016 12:45:56 +0100, Gary Bisson wrote:
> gst1-imx package links against libgstphotography for its imxv4l2src
> plugin.
> 
> Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
> ---
>  package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk | 1 +
>  1 file changed, 1 insertion(+)

Applied, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 10/10] gst1-imx: bump to version 0.12.0
  2016-01-30 11:45 ` [Buildroot] [PATCH 10/10] gst1-imx: bump to version 0.12.0 Gary Bisson
@ 2016-02-01 20:44   ` Thomas Petazzoni
  2016-02-01 21:20     ` Gary Bisson
  2016-02-02  8:51   ` Arnout Vandecappelle
  1 sibling, 1 reply; 30+ messages in thread
From: Thomas Petazzoni @ 2016-02-01 20:44 UTC (permalink / raw)
  To: buildroot

Dear Gary Bisson,

On Sat, 30 Jan 2016 12:45:57 +0100, Gary Bisson wrote:

> -config BR2_PACKAGE_GST1_IMX
> +menuconfig BR2_PACKAGE_GST1_IMX
>  	bool "gst1-imx"
>  	depends on BR2_LINUX_KERNEL
>  	depends on BR2_arm # Only relevant for i.MX
> -	depends on BR2_TOOLCHAIN_USES_GLIBC # imx-gpu-viv
> -	depends on BR2_PACKAGE_IMX_GPU_VIV

So it no longer depends on the GPU stuff ?

> -	depends on BR2_PACKAGE_LIBFSLVPUWRAP
>  	select BR2_PACKAGE_GST1_PLUGINS_BASE
> +	select BR2_PACKAGE_GST1_IMX_IPU_PLUGIN
> +	select BR2_PACKAGE_GST1_IMX_PXP_PLUGIN

This is weird. If you "select" these options here, it means that there
is no way to disable those options. So why are they options in the
first place ?

>  	help
>  	  This is a set of GStreamer 1.0 plugins for plugins for Freescale's
>  	  i.MX6 platforms, with emphasis on video en/decoding using the VPU
> @@ -25,3 +19,49 @@ config BR2_PACKAGE_GST1_IMX
>  	  The software as a whole is currently in beta stage.
>  
>  	  https://github.com/Freescale/gstreamer-imx
> +
> +if BR2_PACKAGE_GST1_IMX
> +
> +config BR2_PACKAGE_GST1_IMX_IPU_PLUGIN
> +	bool "IPU plugin"
> +	help
> +	  IPU plugin library

This one.

> +
> +config BR2_PACKAGE_GST1_IMX_PXP_PLUGIN
> +	bool "PXP plugin"
> +	help
> +	  PXP plugin library

And this one.

> +# Required by imx-gpu-viv
> +comment "GPU sinks need an (e)glibc toolchain"
> +	depends on !BR2_TOOLCHAIN_USES_GLIBC

Ah ok, here is the GPU dependency.

> diff --git a/package/gstreamer1/gst1-imx/gst1-imx.mk b/package/gstreamer1/gst1-imx/gst1-imx.mk
> index 8ede8ad..f3eac0a 100644
> --- a/package/gstreamer1/gst1-imx/gst1-imx.mk
> +++ b/package/gstreamer1/gst1-imx/gst1-imx.mk
> @@ -4,7 +4,7 @@
>  #
>  ################################################################################
>  
> -GST1_IMX_VERSION = 0.11.1
> +GST1_IMX_VERSION = 0.12.0
>  GST1_IMX_SITE = $(call github,Freescale,gstreamer-imx,$(GST1_IMX_VERSION))
>  
>  GST1_IMX_LICENSE = LGPLv2+
> @@ -13,13 +13,23 @@ GST1_IMX_LICENSE_FILES = LICENSE
>  GST1_IMX_INSTALL_STAGING = YES
>  
>  GST1_IMX_DEPENDENCIES += host-pkgconf host-python \
> -	imx-gpu-viv gstreamer1 gst1-plugins-base libfslvpuwrap
> +	gstreamer1 gst1-plugins-base
>  
>  # needs access to imx-specific kernel headers
>  GST1_IMX_DEPENDENCIES += linux
>  GST1_IMX_CONF_OPTS += --prefix="/usr" \
>  	--kernel-headers="$(LINUX_DIR)/include"
>  
> +ifeq ($(BR2_PACKAGE_GST1_IMX_V4L2_PLUGIN),y)
> +GST1_IMX_DEPENDENCIES += gst1-plugins-bad
> +endif
> +
> +ifeq ($(BR2_PACKAGE_GST1_IMX_VPU_PLUGIN),y)
> +GST1_IMX_DEPENDENCIES += libimxvpuapi
> +endif
> +
> +ifeq ($(BR2_PACKAGE_GST1_IMX_EGL_PLUGIN),y)
> +GST1_IMX_DEPENDENCIES += imx-gpu-viv
>  ifeq ($(BR2_PACKAGE_XLIB_LIBX11),y)
>  GST1_IMX_DEPENDENCIES += xlib_libX11
>  GST1_IMX_CONF_OPTS += --egl-platform=x11
> @@ -31,6 +41,7 @@ else
>  GST1_IMX_CONF_OPTS += --egl-platform=fb
>  endif
>  endif
> +endif
>  
>  define GST1_IMX_CONFIGURE_CMDS
>  	cd $(@D); \

Also, please add a hash file. The rest looks good. Can you fix and
resend ?

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 01/10] firmware-imx: bump to version 5.2
  2016-02-01 20:39   ` Thomas Petazzoni
@ 2016-02-01 20:56     ` Gary Bisson
  0 siblings, 0 replies; 30+ messages in thread
From: Gary Bisson @ 2016-02-01 20:56 UTC (permalink / raw)
  To: buildroot

Thomas, All,

On Mon, Feb 1, 2016 at 9:39 PM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Dear Gary Bisson,
>
> On Sat, 30 Jan 2016 12:45:48 +0100, Gary Bisson wrote:
>
>> The package adds the EPDC waveforms and the needed changes to properly
>> install those were done in the firmware-imx.inc file.
>
> I guess you wanted to say firmware-imx.mk. Maybe you've done too much
> Yocto :-)

Haha, no trust me I try not to. It's just a bad copy/paste from the
Yocto commit log.

>>  define FIRMWARE_IMX_INSTALL_TARGET_CMDS
>> -     mkdir -p $(TARGET_DIR)/lib/firmware
>> +     mkdir -p $(TARGET_DIR)/lib/firmware/imx
>>       for blobdir in $(FIRMWARE_IMX_BLOBS); do \
>>               cp -r $(@D)/firmware/$${blobdir} $(TARGET_DIR)/lib/firmware; \
>>       done
>> +     cp -r $(@D)/firmware/epdc $(TARGET_DIR)/lib/firmware/imx; \
>
> The ; \ is not needed.
>
>> +     mv $(TARGET_DIR)/lib/firmware/imx/epdc/epdc_ED060XH2C1.fw.nonrestricted \
>> +        $(TARGET_DIR)/lib/firmware/imx/epdc/epdc_ED060XH2C1.fw;
>
> The final is not needed.
>
> Also, this rename is a bit weird, maybe a comment would have been good.

I agree, my guess is that the driver is looking for the .fw file but
the package includes this strange .nonrestricted extension. So I just
copied what was done in the Yocto package.

Regards,
Gary

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 08/10] libimxvpuapi: add new package
  2016-02-01 20:42   ` Thomas Petazzoni
@ 2016-02-01 21:07     ` Gary Bisson
  2016-02-01 21:17       ` Thomas Petazzoni
  0 siblings, 1 reply; 30+ messages in thread
From: Gary Bisson @ 2016-02-01 21:07 UTC (permalink / raw)
  To: buildroot

Thomas, All,

On Mon, Feb 1, 2016 at 9:42 PM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Dear Gary Bisson,
>
> On Sat, 30 Jan 2016 12:45:55 +0100, Gary Bisson wrote:
>
>> diff --git a/package/Config.in b/package/Config.in
>> index 09c2b40..d3e5e30 100644
>> --- a/package/Config.in
>> +++ b/package/Config.in
>> @@ -1033,6 +1033,7 @@ menu "Multimedia"
>>       source "package/libfslparser/Config.in"
>>       source "package/libfslvpuwrap/Config.in"
>>       source "package/libhdhomerun/Config.in"
>> +     source "package/libimxvpuapi/Config.in"
>
> Why isn't it part of the package/freescale/ directory ? Because it
> isn't sourced from the same site ?

No actually my thought process was that this package is the equivalent
of libfslvpuwrap which, for some reason, isn't part of the
freescale-imx folder. Not sure why, I'm sure there's an historical
reason behind it.

>>       source "package/libmatroska/Config.in"
>>       source "package/libmms/Config.in"
>>       source "package/libmpeg2/Config.in"
>> diff --git a/package/libimxvpuapi/Config.in b/package/libimxvpuapi/Config.in
>> new file mode 100644
>> index 0000000..222aa76
>> --- /dev/null
>> +++ b/package/libimxvpuapi/Config.in
>> @@ -0,0 +1,10 @@
>> +config BR2_PACKAGE_LIBIMXVPUAPI
>> +     bool "libimxvpuapi"
>> +     depends on BR2_arm # Only relevant for i.MX
>> +     select BR2_PACKAGE_FREESCALE_IMX
>> +     select BR2_PACKAGE_IMX_VPU
>
> I am wondering if the first one shouldn't be a "depends on", but I'm
> not sure. What do other think ?
>
>> +     help
>> +       This library provides an API for using the iMX6 VPU video engine. It
>> +       is an alternative to Freescale's VPU wrapper. Both the wrapper and
>> +       this library are layered on top of imx-vpu, the low-level iMX6 VPU
>> +       interface.
>
> A URL to the upstream web page would be good. A github page is fine as
> a fallback if there's no real upstream web site.

Ok, I will add the Github page then:
https://github.com/Freescale/libimxvpuapi

>> diff --git a/package/libimxvpuapi/libimxvpuapi.mk b/package/libimxvpuapi/libimxvpuapi.mk
>> new file mode 100644
>> index 0000000..ff9282d
>> --- /dev/null
>> +++ b/package/libimxvpuapi/libimxvpuapi.mk
>> @@ -0,0 +1,35 @@
>> +################################################################################
>> +#
>> +# libimxvpuapi
>> +#
>> +################################################################################
>> +
>> +LIBIMXVPUAPI_VERSION = 0.10.1
>> +LIBIMXVPUAPI_SITE = $(call github,Freescale,libimxvpuapi,$(LIBIMXVPUAPI_VERSION))
>> +LIBIMXVPUAPI_LICENSE = LGPLv2.1
>
> License seems to be LGPLv2.1+.

The LICENSE file says LGPLv2.1 but indeed the source code headers
state the LGPLv2.1+. Who wins then?
https://github.com/Freescale/libimxvpuapi/blob/master/imxvpuapi/imxvpuapi_jpeg.c#L7
https://github.com/Freescale/libimxvpuapi/blob/master/LICENSE

> Also, you forgot to include a hash file. Could you fix those issues and
> send an updated version?

I might have missed an update, are we providing hash even for Github
projects now?

Regards,
Gary

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 08/10] libimxvpuapi: add new package
  2016-02-01 21:07     ` Gary Bisson
@ 2016-02-01 21:17       ` Thomas Petazzoni
  0 siblings, 0 replies; 30+ messages in thread
From: Thomas Petazzoni @ 2016-02-01 21:17 UTC (permalink / raw)
  To: buildroot

Hello,

On Mon, 1 Feb 2016 22:07:35 +0100, Gary Bisson wrote:

> >> diff --git a/package/Config.in b/package/Config.in
> >> index 09c2b40..d3e5e30 100644
> >> --- a/package/Config.in
> >> +++ b/package/Config.in
> >> @@ -1033,6 +1033,7 @@ menu "Multimedia"
> >>       source "package/libfslparser/Config.in"
> >>       source "package/libfslvpuwrap/Config.in"
> >>       source "package/libhdhomerun/Config.in"
> >> +     source "package/libimxvpuapi/Config.in"
> >
> > Why isn't it part of the package/freescale/ directory ? Because it
> > isn't sourced from the same site ?
> 
> No actually my thought process was that this package is the equivalent
> of libfslvpuwrap which, for some reason, isn't part of the
> freescale-imx folder. Not sure why, I'm sure there's an historical
> reason behind it.

The main reason to have a sub-folder is to be able to share variables,
such as _VERSION and _SITE. So if they are not shared with your
package, there's indeed little reason to have it under
package/freescale-imx/.

Now, the question is where it should appear in the menuconfig. I don't
have a strong opinion here, but if libfslvpuwrap is in Multimedia, then
I think your choice is OK. And indeed, libfslvpuwrap also selects
BR2_PACKAGE_FREESCALE_IMX and BR2_PACKAGE_IMX_VPU, so let's do the same
for your package.


> >> +LIBIMXVPUAPI_VERSION = 0.10.1
> >> +LIBIMXVPUAPI_SITE = $(call github,Freescale,libimxvpuapi,$(LIBIMXVPUAPI_VERSION))
> >> +LIBIMXVPUAPI_LICENSE = LGPLv2.1
> >
> > License seems to be LGPLv2.1+.
> 
> The LICENSE file says LGPLv2.1 but indeed the source code headers
> state the LGPLv2.1+. Who wins then?
> https://github.com/Freescale/libimxvpuapi/blob/master/imxvpuapi/imxvpuapi_jpeg.c#L7
> https://github.com/Freescale/libimxvpuapi/blob/master/LICENSE

It's not a question of who wins. All software under GPLvX+ or LGPLvX+
will have the license text of GPLvX or LGPLvX in its COPYING/LICENSE
file. It doesn't change the fact that the source is distributed under
GPLvX+ / LGPLvX+, which means that the recipient can chose either GPLvX
or any later version of the GPL (ditto LGPLvX).

> > Also, you forgot to include a hash file. Could you fix those issues and
> > send an updated version?
> 
> I might have missed an update, are we providing hash even for Github
> projects now?

As explained on IRC, Github changed the way they generate tarballs, and
they now seem to generate stable tarballs (i.e tarballs that have the
exact same contents for a given tag/commit of a given project).

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 10/10] gst1-imx: bump to version 0.12.0
  2016-02-01 20:44   ` Thomas Petazzoni
@ 2016-02-01 21:20     ` Gary Bisson
  2016-02-01 22:27       ` Thomas Petazzoni
  0 siblings, 1 reply; 30+ messages in thread
From: Gary Bisson @ 2016-02-01 21:20 UTC (permalink / raw)
  To: buildroot

Thomas, All,

On Mon, Feb 1, 2016 at 9:44 PM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Dear Gary Bisson,
>
> On Sat, 30 Jan 2016 12:45:57 +0100, Gary Bisson wrote:
>
>> -config BR2_PACKAGE_GST1_IMX
>> +menuconfig BR2_PACKAGE_GST1_IMX
>>       bool "gst1-imx"
>>       depends on BR2_LINUX_KERNEL
>>       depends on BR2_arm # Only relevant for i.MX
>> -     depends on BR2_TOOLCHAIN_USES_GLIBC # imx-gpu-viv
>> -     depends on BR2_PACKAGE_IMX_GPU_VIV
>
> So it no longer depends on the GPU stuff ?

No, you can build this package without the GPU backend which implies
the GPU sinks won't be built. The end goal is for i.MX7 which doesn't
have any GPU, right now I have to include the GPU binaries just to
build the pxp/v4l plugins.

>> -     depends on BR2_PACKAGE_LIBFSLVPUWRAP
>>       select BR2_PACKAGE_GST1_PLUGINS_BASE
>> +     select BR2_PACKAGE_GST1_IMX_IPU_PLUGIN
>> +     select BR2_PACKAGE_GST1_IMX_PXP_PLUGIN
>
> This is weird. If you "select" these options here, it means that there
> is no way to disable those options. So why are they options in the
> first place ?

I just wanted to make it explicit that the package will at least build
those two plugins. Then leaving it up to the user to select whichever
plugin he wants. There actually is no option to disable plugins from
the packages, it's all a question of dependency. As soon as the i.MX
linux kernel is built, PXP and IPU will be. As soon as the GPU
libraries are includes, GPU sink plugins will be built.

>>       help
>>         This is a set of GStreamer 1.0 plugins for plugins for Freescale's
>>         i.MX6 platforms, with emphasis on video en/decoding using the VPU
>> @@ -25,3 +19,49 @@ config BR2_PACKAGE_GST1_IMX
>>         The software as a whole is currently in beta stage.
>>
>>         https://github.com/Freescale/gstreamer-imx
>> +
>> +if BR2_PACKAGE_GST1_IMX
>> +
>> +config BR2_PACKAGE_GST1_IMX_IPU_PLUGIN
>> +     bool "IPU plugin"
>> +     help
>> +       IPU plugin library
>
> This one.
>
>> +
>> +config BR2_PACKAGE_GST1_IMX_PXP_PLUGIN
>> +     bool "PXP plugin"
>> +     help
>> +       PXP plugin library
>
> And this one.

The above just makes it clear (to the user) that those plugins will be built.

>> +# Required by imx-gpu-viv
>> +comment "GPU sinks need an (e)glibc toolchain"
>> +     depends on !BR2_TOOLCHAIN_USES_GLIBC
>
> Ah ok, here is the GPU dependency.
>
>> diff --git a/package/gstreamer1/gst1-imx/gst1-imx.mk b/package/gstreamer1/gst1-imx/gst1-imx.mk
>> index 8ede8ad..f3eac0a 100644
>> --- a/package/gstreamer1/gst1-imx/gst1-imx.mk
>> +++ b/package/gstreamer1/gst1-imx/gst1-imx.mk
>> @@ -4,7 +4,7 @@
>>  #
>>  ################################################################################
>>
>> -GST1_IMX_VERSION = 0.11.1
>> +GST1_IMX_VERSION = 0.12.0
>>  GST1_IMX_SITE = $(call github,Freescale,gstreamer-imx,$(GST1_IMX_VERSION))
>>
>>  GST1_IMX_LICENSE = LGPLv2+
>> @@ -13,13 +13,23 @@ GST1_IMX_LICENSE_FILES = LICENSE
>>  GST1_IMX_INSTALL_STAGING = YES
>>
>>  GST1_IMX_DEPENDENCIES += host-pkgconf host-python \
>> -     imx-gpu-viv gstreamer1 gst1-plugins-base libfslvpuwrap
>> +     gstreamer1 gst1-plugins-base
>>
>>  # needs access to imx-specific kernel headers
>>  GST1_IMX_DEPENDENCIES += linux
>>  GST1_IMX_CONF_OPTS += --prefix="/usr" \
>>       --kernel-headers="$(LINUX_DIR)/include"
>>
>> +ifeq ($(BR2_PACKAGE_GST1_IMX_V4L2_PLUGIN),y)
>> +GST1_IMX_DEPENDENCIES += gst1-plugins-bad
>> +endif
>> +
>> +ifeq ($(BR2_PACKAGE_GST1_IMX_VPU_PLUGIN),y)
>> +GST1_IMX_DEPENDENCIES += libimxvpuapi
>> +endif
>> +
>> +ifeq ($(BR2_PACKAGE_GST1_IMX_EGL_PLUGIN),y)
>> +GST1_IMX_DEPENDENCIES += imx-gpu-viv
>>  ifeq ($(BR2_PACKAGE_XLIB_LIBX11),y)
>>  GST1_IMX_DEPENDENCIES += xlib_libX11
>>  GST1_IMX_CONF_OPTS += --egl-platform=x11
>> @@ -31,6 +41,7 @@ else
>>  GST1_IMX_CONF_OPTS += --egl-platform=fb
>>  endif
>>  endif
>> +endif
>>
>>  define GST1_IMX_CONFIGURE_CMDS
>>       cd $(@D); \
>
> Also, please add a hash file. The rest looks good. Can you fix and
> resend ?

Ok, let me know if you want the IPU/PXP options to be removed.

Regards,
Gary

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 10/10] gst1-imx: bump to version 0.12.0
  2016-02-01 21:20     ` Gary Bisson
@ 2016-02-01 22:27       ` Thomas Petazzoni
  2016-02-01 22:49         ` Gary Bisson
  0 siblings, 1 reply; 30+ messages in thread
From: Thomas Petazzoni @ 2016-02-01 22:27 UTC (permalink / raw)
  To: buildroot

Hello,

On Mon, 1 Feb 2016 22:20:36 +0100, Gary Bisson wrote:

> > So it no longer depends on the GPU stuff ?
> 
> No, you can build this package without the GPU backend which implies
> the GPU sinks won't be built. The end goal is for i.MX7 which doesn't
> have any GPU, right now I have to include the GPU binaries just to
> build the pxp/v4l plugins.

ACK, makes sense.

> >> -     depends on BR2_PACKAGE_LIBFSLVPUWRAP
> >>       select BR2_PACKAGE_GST1_PLUGINS_BASE
> >> +     select BR2_PACKAGE_GST1_IMX_IPU_PLUGIN
> >> +     select BR2_PACKAGE_GST1_IMX_PXP_PLUGIN
> >
> > This is weird. If you "select" these options here, it means that there
> > is no way to disable those options. So why are they options in the
> > first place ?
> 
> I just wanted to make it explicit that the package will at least build
> those two plugins. Then leaving it up to the user to select whichever
> plugin he wants. There actually is no option to disable plugins from
> the packages, it's all a question of dependency. As soon as the i.MX
> linux kernel is built, PXP and IPU will be. As soon as the GPU
> libraries are includes, GPU sink plugins will be built.

Hum, then it is not good, because it means that even if you disable the
GPU sink plugin options, but still have the GPU libraries enabled, the
GPU sink plugins will be installed on your target. This is very
confusing.

I think you should remove the sub-options, and then simply expand the
Config.in help text of the main option to say:

 - The IPU and PXP plugins are always built.
 - The GPU sink plugin is built when ... is enabled.
 - The ... plugin is built when ... is enabled.

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 10/10] gst1-imx: bump to version 0.12.0
  2016-02-01 22:27       ` Thomas Petazzoni
@ 2016-02-01 22:49         ` Gary Bisson
  2016-02-02  8:56           ` Arnout Vandecappelle
  0 siblings, 1 reply; 30+ messages in thread
From: Gary Bisson @ 2016-02-01 22:49 UTC (permalink / raw)
  To: buildroot

Thomas, All,

On Mon, Feb 1, 2016 at 11:27 PM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Hello,
>
> On Mon, 1 Feb 2016 22:20:36 +0100, Gary Bisson wrote:
>
>> > So it no longer depends on the GPU stuff ?
>>
>> No, you can build this package without the GPU backend which implies
>> the GPU sinks won't be built. The end goal is for i.MX7 which doesn't
>> have any GPU, right now I have to include the GPU binaries just to
>> build the pxp/v4l plugins.
>
> ACK, makes sense.
>
>> >> -     depends on BR2_PACKAGE_LIBFSLVPUWRAP
>> >>       select BR2_PACKAGE_GST1_PLUGINS_BASE
>> >> +     select BR2_PACKAGE_GST1_IMX_IPU_PLUGIN
>> >> +     select BR2_PACKAGE_GST1_IMX_PXP_PLUGIN
>> >
>> > This is weird. If you "select" these options here, it means that there
>> > is no way to disable those options. So why are they options in the
>> > first place ?
>>
>> I just wanted to make it explicit that the package will at least build
>> those two plugins. Then leaving it up to the user to select whichever
>> plugin he wants. There actually is no option to disable plugins from
>> the packages, it's all a question of dependency. As soon as the i.MX
>> linux kernel is built, PXP and IPU will be. As soon as the GPU
>> libraries are includes, GPU sink plugins will be built.
>
> Hum, then it is not good, because it means that even if you disable the
> GPU sink plugin options, but still have the GPU libraries enabled, the
> GPU sink plugins will be installed on your target. This is very
> confusing.

Yes, I understand, is it really a big deal? There's going to be more
plugins than expected in the rootfs, it's free!

> I think you should remove the sub-options, and then simply expand the
> Config.in help text of the main option to say:
>
>  - The IPU and PXP plugins are always built.
>  - The GPU sink plugin is built when ... is enabled.
>  - The ... plugin is built when ... is enabled.

This would be ever more confusing in my opinion. It means that when
you select gstreamer-imx you have no idea of what is going to be
built. Then when you realize you need the graphics libraries you have
to browse to select it yourself.

Wouldn't it be possible to force the option value when the IMX_GPU_VIV
package is selected? I guess that would bring a circular dependency
but at least someone wouldn't be able to remove the option without
removing the graphics binaries.

Regards,
Gary

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 10/10] gst1-imx: bump to version 0.12.0
  2016-01-30 11:45 ` [Buildroot] [PATCH 10/10] gst1-imx: bump to version 0.12.0 Gary Bisson
  2016-02-01 20:44   ` Thomas Petazzoni
@ 2016-02-02  8:51   ` Arnout Vandecappelle
  1 sibling, 0 replies; 30+ messages in thread
From: Arnout Vandecappelle @ 2016-02-02  8:51 UTC (permalink / raw)
  To: buildroot

On 30-01-16 12:45, Gary Bisson wrote:
[snip]
> diff --git a/package/gstreamer1/gst1-imx/gst1-imx.mk b/package/gstreamer1/gst1-imx/gst1-imx.mk
> index 8ede8ad..f3eac0a 100644
> --- a/package/gstreamer1/gst1-imx/gst1-imx.mk
> +++ b/package/gstreamer1/gst1-imx/gst1-imx.mk
> @@ -4,7 +4,7 @@
>  #
>  ################################################################################
>  
> -GST1_IMX_VERSION = 0.11.1
> +GST1_IMX_VERSION = 0.12.0
>  GST1_IMX_SITE = $(call github,Freescale,gstreamer-imx,$(GST1_IMX_VERSION))
>  
>  GST1_IMX_LICENSE = LGPLv2+
> @@ -13,13 +13,23 @@ GST1_IMX_LICENSE_FILES = LICENSE
>  GST1_IMX_INSTALL_STAGING = YES
>  
>  GST1_IMX_DEPENDENCIES += host-pkgconf host-python \
> -	imx-gpu-viv gstreamer1 gst1-plugins-base libfslvpuwrap
> +	gstreamer1 gst1-plugins-base

 Minor nit in addition to Thomas's comments: please split this into one
dependency per line.

 Regards,
 Arnout

-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 10/10] gst1-imx: bump to version 0.12.0
  2016-02-01 22:49         ` Gary Bisson
@ 2016-02-02  8:56           ` Arnout Vandecappelle
  2016-02-02  9:07             ` Gary Bisson
  0 siblings, 1 reply; 30+ messages in thread
From: Arnout Vandecappelle @ 2016-02-02  8:56 UTC (permalink / raw)
  To: buildroot

On 01-02-16 23:49, Gary Bisson wrote:
> Thomas, All,
> 
> On Mon, Feb 1, 2016 at 11:27 PM, Thomas Petazzoni
> <thomas.petazzoni@free-electrons.com> wrote:
>> Hello,
>>
>> On Mon, 1 Feb 2016 22:20:36 +0100, Gary Bisson wrote:
>>
>>>> So it no longer depends on the GPU stuff ?
>>>
>>> No, you can build this package without the GPU backend which implies
>>> the GPU sinks won't be built. The end goal is for i.MX7 which doesn't
>>> have any GPU, right now I have to include the GPU binaries just to
>>> build the pxp/v4l plugins.
>>
>> ACK, makes sense.
>>
>>>>> -     depends on BR2_PACKAGE_LIBFSLVPUWRAP
>>>>>       select BR2_PACKAGE_GST1_PLUGINS_BASE
>>>>> +     select BR2_PACKAGE_GST1_IMX_IPU_PLUGIN
>>>>> +     select BR2_PACKAGE_GST1_IMX_PXP_PLUGIN
>>>>
>>>> This is weird. If you "select" these options here, it means that there
>>>> is no way to disable those options. So why are they options in the
>>>> first place ?
>>>
>>> I just wanted to make it explicit that the package will at least build
>>> those two plugins. Then leaving it up to the user to select whichever
>>> plugin he wants. There actually is no option to disable plugins from
>>> the packages, it's all a question of dependency. As soon as the i.MX
>>> linux kernel is built, PXP and IPU will be. As soon as the GPU
>>> libraries are includes, GPU sink plugins will be built.
>>
>> Hum, then it is not good, because it means that even if you disable the
>> GPU sink plugin options, but still have the GPU libraries enabled, the
>> GPU sink plugins will be installed on your target. This is very
>> confusing.
> 
> Yes, I understand, is it really a big deal? There's going to be more
> plugins than expected in the rootfs, it's free!

 We don't consider rootfs size to be for free.

> 
>> I think you should remove the sub-options, and then simply expand the
>> Config.in help text of the main option to say:
>>
>>  - The IPU and PXP plugins are always built.
>>  - The GPU sink plugin is built when ... is enabled.
>>  - The ... plugin is built when ... is enabled.
> 
> This would be ever more confusing in my opinion. It means that when
> you select gstreamer-imx you have no idea of what is going to be
> built. Then when you realize you need the graphics libraries you have
> to browse to select it yourself.

 That's why it should be mentioned in the help text.

> 
> Wouldn't it be possible to force the option value when the IMX_GPU_VIV
> package is selected? I guess that would bring a circular dependency
> but at least someone wouldn't be able to remove the option without
> removing the graphics binaries.

 Yes, that is possible. But we only do that in situations where it is not
obvious which other package you should select. The idea is to avoid a
proliferation of Config.in options.

 But in this case, you _anyway_ still have to manually select the imx-gpu-viv
package... So I don't think there is much point in adding the sub-options.
Except if you can convert all the depends into selects (except for the glibc one
of course).

 Regards,
 Arnout
> 
> Regards,
> Gary
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
> 


-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Buildroot] [PATCH 10/10] gst1-imx: bump to version 0.12.0
  2016-02-02  8:56           ` Arnout Vandecappelle
@ 2016-02-02  9:07             ` Gary Bisson
  0 siblings, 0 replies; 30+ messages in thread
From: Gary Bisson @ 2016-02-02  9:07 UTC (permalink / raw)
  To: buildroot

Arnout, All,

On Tue, Feb 2, 2016 at 9:56 AM, Arnout Vandecappelle <arnout@mind.be> wrote:
> On 01-02-16 23:49, Gary Bisson wrote:
>> Thomas, All,
>>
>> On Mon, Feb 1, 2016 at 11:27 PM, Thomas Petazzoni
>> <thomas.petazzoni@free-electrons.com> wrote:
>>> Hello,
>>>
>>> On Mon, 1 Feb 2016 22:20:36 +0100, Gary Bisson wrote:
>>>
>>>>> So it no longer depends on the GPU stuff ?
>>>>
>>>> No, you can build this package without the GPU backend which implies
>>>> the GPU sinks won't be built. The end goal is for i.MX7 which doesn't
>>>> have any GPU, right now I have to include the GPU binaries just to
>>>> build the pxp/v4l plugins.
>>>
>>> ACK, makes sense.
>>>
>>>>>> -     depends on BR2_PACKAGE_LIBFSLVPUWRAP
>>>>>>       select BR2_PACKAGE_GST1_PLUGINS_BASE
>>>>>> +     select BR2_PACKAGE_GST1_IMX_IPU_PLUGIN
>>>>>> +     select BR2_PACKAGE_GST1_IMX_PXP_PLUGIN
>>>>>
>>>>> This is weird. If you "select" these options here, it means that there
>>>>> is no way to disable those options. So why are they options in the
>>>>> first place ?
>>>>
>>>> I just wanted to make it explicit that the package will at least build
>>>> those two plugins. Then leaving it up to the user to select whichever
>>>> plugin he wants. There actually is no option to disable plugins from
>>>> the packages, it's all a question of dependency. As soon as the i.MX
>>>> linux kernel is built, PXP and IPU will be. As soon as the GPU
>>>> libraries are includes, GPU sink plugins will be built.
>>>
>>> Hum, then it is not good, because it means that even if you disable the
>>> GPU sink plugin options, but still have the GPU libraries enabled, the
>>> GPU sink plugins will be installed on your target. This is very
>>> confusing.
>>
>> Yes, I understand, is it really a big deal? There's going to be more
>> plugins than expected in the rootfs, it's free!
>
>  We don't consider rootfs size to be for free.

I understand.

>>> I think you should remove the sub-options, and then simply expand the
>>> Config.in help text of the main option to say:
>>>
>>>  - The IPU and PXP plugins are always built.
>>>  - The GPU sink plugin is built when ... is enabled.
>>>  - The ... plugin is built when ... is enabled.
>>
>> This would be ever more confusing in my opinion. It means that when
>> you select gstreamer-imx you have no idea of what is going to be
>> built. Then when you realize you need the graphics libraries you have
>> to browse to select it yourself.
>
>  That's why it should be mentioned in the help text.
>
>>
>> Wouldn't it be possible to force the option value when the IMX_GPU_VIV
>> package is selected? I guess that would bring a circular dependency
>> but at least someone wouldn't be able to remove the option without
>> removing the graphics binaries.
>
>  Yes, that is possible. But we only do that in situations where it is not
> obvious which other package you should select. The idea is to avoid a
> proliferation of Config.in options.
>
>  But in this case, you _anyway_ still have to manually select the imx-gpu-viv
> package... So I don't think there is much point in adding the sub-options.
> Except if you can convert all the depends into selects (except for the glibc one
> of course).

Yes the GPU was actually a bad example, the VPU and V4L plugins do
have selects that work. But I'll offer a v3 without the options, just
with text in the Config.in and if later I find another approach I'll
submit an RFC.

Thank you all for your feedback.

Regards,
Gary

^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2016-02-02  9:07 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-30 11:45 [Buildroot] [PATCH 00/10] Update most Freescale packages Gary Bisson
2016-01-30 11:45 ` [Buildroot] [PATCH 01/10] firmware-imx: bump to version 5.2 Gary Bisson
2016-02-01 20:39   ` Thomas Petazzoni
2016-02-01 20:56     ` Gary Bisson
2016-01-30 11:45 ` [Buildroot] [PATCH 02/10] imx-kobs: bump to version 5.1 Gary Bisson
2016-02-01 20:39   ` Thomas Petazzoni
2016-01-30 11:45 ` [Buildroot] [PATCH 03/10] imx-lib: " Gary Bisson
2016-02-01 20:39   ` Thomas Petazzoni
2016-01-30 11:45 ` [Buildroot] [PATCH 04/10] freescale-imx: remove FREESCALE_IMX_VERSION Gary Bisson
2016-02-01 20:39   ` Thomas Petazzoni
2016-01-30 11:45 ` [Buildroot] [PATCH 05/10] libfslcodec: bump to version 4.0.7 Gary Bisson
2016-02-01 20:39   ` Thomas Petazzoni
2016-01-30 11:45 ` [Buildroot] [PATCH 06/10] libfslparser: " Gary Bisson
2016-02-01 20:39   ` Thomas Petazzoni
2016-01-30 11:45 ` [Buildroot] [PATCH 07/10] libfslvpuwrap: bump to version 1.0.61 Gary Bisson
2016-02-01 20:39   ` Thomas Petazzoni
2016-01-30 11:45 ` [Buildroot] [PATCH 08/10] libimxvpuapi: add new package Gary Bisson
2016-02-01 20:42   ` Thomas Petazzoni
2016-02-01 21:07     ` Gary Bisson
2016-02-01 21:17       ` Thomas Petazzoni
2016-01-30 11:45 ` [Buildroot] [PATCH 09/10] gst1-plugins-bad: add install to staging directory Gary Bisson
2016-02-01 20:42   ` Thomas Petazzoni
2016-01-30 11:45 ` [Buildroot] [PATCH 10/10] gst1-imx: bump to version 0.12.0 Gary Bisson
2016-02-01 20:44   ` Thomas Petazzoni
2016-02-01 21:20     ` Gary Bisson
2016-02-01 22:27       ` Thomas Petazzoni
2016-02-01 22:49         ` Gary Bisson
2016-02-02  8:56           ` Arnout Vandecappelle
2016-02-02  9:07             ` Gary Bisson
2016-02-02  8:51   ` Arnout Vandecappelle

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.