All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7
@ 2013-05-23 19:22 Daiane Angolini
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 01/13] gst-fsl-plugin: Set CROSS_ROOT so the 'ipu.h' can be found Daiane Angolini
                   ` (15 more replies)
  0 siblings, 16 replies; 20+ messages in thread
From: Daiane Angolini @ 2013-05-23 19:22 UTC (permalink / raw)
  To: meta-freescale

Update the gstreamer plugins to version 3.0.7 provided by
Freescale (from BSP 3.0.35-4.0.0).

The 3.0.7 version is compatible with MX28, MX5 and MX6.

Update imx-lib to version 3.0.35-4.0.0 (it's compatible with MX6 only)

Remove old gstreamer plugins versions.

I did test it on imx6qsabresd, imx53qsb and imx28evk. I played
*one* mp3 audio file and *one* avi/h264/aac movie file. I know
it's not a complete media test, but I think it does mean the plugins
are rigthly installed.

Fixes [YOCTO #4449]

Daiane Angolini (9):
  firmware-imx: Update to version 3.0.35-4.0.0
  imx-lib: Update to version 3.0.35-4.0.0
  imx-lib: Move it to recipe-bsp dir
  libfslvpuwrap: Update to version 1.0.35
  libfslcodec: Update to version 3.0.7
  libfslparser: Update to version 3.0.7
  gst-fsl-plugin: Update to version 3.0.7
  firmware-imx: Update to MX5 to version 3.0.35-4.0.0
  fsl-mm-core: Remove old multimedia packages for MX5

Otavio Salvador (4):
  gst-fsl-plugin: Set CROSS_ROOT so the 'ipu.h' can be found
  gst-fsl-plugin: Add runtime depends on gst-plugins-good-id3demux
  libfslcodec: Group ARM12, ARM11 and ARM9 packages
  libfslcodec: Add libfslcodec-meta which includes all codecs

 .../firmware-imx-11.09.01/vpu_fw_imx51.bin         |  Bin 147472 -> 0 bytes
 .../firmware-imx-11.09.01/vpu_fw_imx53.bin         |  Bin 147472 -> 0 bytes
 recipes-bsp/firmware-imx/firmware-imx_1.1.0.bb     |    9 --
 recipes-bsp/firmware-imx/firmware-imx_11.09.01.bb  |   16 ----
 .../firmware-imx/firmware-imx_3.0.35-4.0.0.bb      |    9 ++
 ...0-vpu-Fix-decoding-mp4PackedPBFrame-strea.patch |   31 +++++++
 ...0-vpu-Fix-the-issue-of-rotation-180-degre.patch |   36 ++++++++
 recipes-bsp/imx-lib/imx-lib.inc                    |   39 +++++++++
 recipes-bsp/imx-lib/imx-lib_11.09.01.bb            |   13 +++
 recipes-bsp/imx-lib/imx-lib_3.0.35-4.0.0.bb        |   12 +++
 recipes-multimedia/fsl-mm-core/fsl-mm-codeclib.inc |   31 -------
 .../fsl-mm-core/fsl-mm-codeclib_2.0.3.bb           |   35 --------
 .../fsl-mm-core/fsl-mm-flv-codeclib_2.0.3.bb       |   22 -----
 .../fsl-mm-core/fsl-mm-mp3enc-codeclib_2.0.3.bb    |   18 ----
 recipes-multimedia/gst-plugins/gst-fsl-plugin.inc  |   17 ++--
 ...c-Use-pkg-config-sysroot-when-checking-fo.patch |   58 +++++++++++++
 .../gst-fsl-plugin/v4lsink_back_compatible.patch   |   90 ++++++++++++++++++++
 .../gst-fsl-plugin/vss_build_failed.patch          |   16 ++++
 .../gst-plugins/gst-fsl-plugin_2.0.3.bb            |   17 ----
 .../gst-plugins/gst-fsl-plugin_3.0.5.bb            |   19 -----
 .../gst-plugins/gst-fsl-plugin_3.0.6.bb            |   19 -----
 .../gst-plugins/gst-fsl-plugin_3.0.7.bb            |   16 ++++
 ...0-vpu-Fix-decoding-mp4PackedPBFrame-strea.patch |   31 -------
 ...0-vpu-Fix-the-issue-of-rotation-180-degre.patch |   36 --------
 recipes-multimedia/imx-lib/imx-lib.inc             |   39 ---------
 recipes-multimedia/imx-lib/imx-lib_1.1.0.bb        |   10 ---
 recipes-multimedia/imx-lib/imx-lib_11.09.01.bb     |   11 ---
 recipes-multimedia/libfslcodec/libfslcodec.inc     |   49 ++++++-----
 .../libfslcodec/libfslcodec_3.0.5.bb               |   11 ---
 .../libfslcodec/libfslcodec_3.0.6.bb               |   11 ---
 .../libfslcodec/libfslcodec_3.0.7.bb               |    9 ++
 recipes-multimedia/libfslparser/libfslparser.inc   |    2 -
 .../libfslparser/libfslparser_3.0.5.bb             |   14 ---
 .../libfslparser/libfslparser_3.0.6.bb             |   11 ---
 .../libfslparser/libfslparser_3.0.7.bb             |    9 ++
 .../libfslvpuwrap/libfslvpuwrap_1.0.17.bb          |   16 ----
 .../libfslvpuwrap/libfslvpuwrap_1.0.35.bb          |   21 +++++
 37 files changed, 396 insertions(+), 407 deletions(-)
 delete mode 100644 recipes-bsp/firmware-imx/firmware-imx-11.09.01/vpu_fw_imx51.bin
 delete mode 100644 recipes-bsp/firmware-imx/firmware-imx-11.09.01/vpu_fw_imx53.bin
 delete mode 100644 recipes-bsp/firmware-imx/firmware-imx_1.1.0.bb
 delete mode 100644 recipes-bsp/firmware-imx/firmware-imx_11.09.01.bb
 create mode 100644 recipes-bsp/firmware-imx/firmware-imx_3.0.35-4.0.0.bb
 create mode 100644 recipes-bsp/imx-lib/imx-lib-11.09.01/0001-ENGR00156800-vpu-Fix-decoding-mp4PackedPBFrame-strea.patch
 create mode 100644 recipes-bsp/imx-lib/imx-lib-11.09.01/0002-ENGR00162690-vpu-Fix-the-issue-of-rotation-180-degre.patch
 create mode 100644 recipes-bsp/imx-lib/imx-lib.inc
 create mode 100644 recipes-bsp/imx-lib/imx-lib_11.09.01.bb
 create mode 100644 recipes-bsp/imx-lib/imx-lib_3.0.35-4.0.0.bb
 delete mode 100644 recipes-multimedia/fsl-mm-core/fsl-mm-codeclib.inc
 delete mode 100644 recipes-multimedia/fsl-mm-core/fsl-mm-codeclib_2.0.3.bb
 delete mode 100644 recipes-multimedia/fsl-mm-core/fsl-mm-flv-codeclib_2.0.3.bb
 delete mode 100644 recipes-multimedia/fsl-mm-core/fsl-mm-mp3enc-codeclib_2.0.3.bb
 create mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin/configure.ac-Use-pkg-config-sysroot-when-checking-fo.patch
 create mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin/v4lsink_back_compatible.patch
 create mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin/vss_build_failed.patch
 delete mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin_2.0.3.bb
 delete mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.5.bb
 delete mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.6.bb
 create mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.7.bb
 delete mode 100644 recipes-multimedia/imx-lib/imx-lib-11.09.01/0001-ENGR00156800-vpu-Fix-decoding-mp4PackedPBFrame-strea.patch
 delete mode 100644 recipes-multimedia/imx-lib/imx-lib-11.09.01/0002-ENGR00162690-vpu-Fix-the-issue-of-rotation-180-degre.patch
 delete mode 100644 recipes-multimedia/imx-lib/imx-lib.inc
 delete mode 100644 recipes-multimedia/imx-lib/imx-lib_1.1.0.bb
 delete mode 100644 recipes-multimedia/imx-lib/imx-lib_11.09.01.bb
 delete mode 100644 recipes-multimedia/libfslcodec/libfslcodec_3.0.5.bb
 delete mode 100644 recipes-multimedia/libfslcodec/libfslcodec_3.0.6.bb
 create mode 100644 recipes-multimedia/libfslcodec/libfslcodec_3.0.7.bb
 delete mode 100644 recipes-multimedia/libfslparser/libfslparser_3.0.5.bb
 delete mode 100644 recipes-multimedia/libfslparser/libfslparser_3.0.6.bb
 create mode 100644 recipes-multimedia/libfslparser/libfslparser_3.0.7.bb
 delete mode 100644 recipes-multimedia/libfslvpuwrap/libfslvpuwrap_1.0.17.bb
 create mode 100644 recipes-multimedia/libfslvpuwrap/libfslvpuwrap_1.0.35.bb

-- 
1.7.10.4




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

* [meta-fsl-arm][PATCH 01/13] gst-fsl-plugin: Set CROSS_ROOT so the 'ipu.h' can be found
  2013-05-23 19:22 [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7 Daiane Angolini
@ 2013-05-23 19:22 ` Daiane Angolini
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 02/13] gst-fsl-plugin: Add runtime depends on gst-plugins-good-id3demux Daiane Angolini
                   ` (14 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Daiane Angolini @ 2013-05-23 19:22 UTC (permalink / raw)
  To: meta-freescale; +Cc: Otavio Salvador

From: Otavio Salvador <otavio@ossystems.com.br>

The configure script of gst-fsl-plugin uses the CROSS_ROOT environment
variable to find the ipu.h header. This ensures the IPU sink to be
built.

Change-Id: If0ecc2b08d901a3fe462863ee4b2b9f0fc17a6da
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
---
 recipes-multimedia/gst-plugins/gst-fsl-plugin.inc |    1 +
 1 file changed, 1 insertion(+)

diff --git a/recipes-multimedia/gst-plugins/gst-fsl-plugin.inc b/recipes-multimedia/gst-plugins/gst-fsl-plugin.inc
index 66d29c4..b9dca01 100644
--- a/recipes-multimedia/gst-plugins/gst-fsl-plugin.inc
+++ b/recipes-multimedia/gst-plugins/gst-fsl-plugin.inc
@@ -27,6 +27,7 @@ PLATFORM_mx28 = "MX28"
 INCLUDE_DIR = "-I${STAGING_KERNEL_DIR}/include"
 EXTRA_OEMAKE = "INCLUDES=${INCLUDE_DIR}"
 EXTRA_OECONF = "PLATFORM=${PLATFORM} --disable-valgrind --disable-examples --disable-debug"
+CACHED_CONFIGUREVARS += "CROSS_ROOT=${STAGING_DIR_TARGET}"
 
 PACKAGES += "${PN}-libmfwsconf ${PN}-libgplaycore ${PN}-libgstfsl \
              ${PN}-libme ${PN}-libgstbufmeta ${PN}-libmfwba \
-- 
1.7.10.4




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

* [meta-fsl-arm][PATCH 02/13] gst-fsl-plugin: Add runtime depends on gst-plugins-good-id3demux
  2013-05-23 19:22 [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7 Daiane Angolini
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 01/13] gst-fsl-plugin: Set CROSS_ROOT so the 'ipu.h' can be found Daiane Angolini
@ 2013-05-23 19:22 ` Daiane Angolini
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 03/13] libfslcodec: Group ARM12, ARM11 and ARM9 packages Daiane Angolini
                   ` (13 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Daiane Angolini @ 2013-05-23 19:22 UTC (permalink / raw)
  To: meta-freescale; +Cc: Otavio Salvador

From: Otavio Salvador <otavio@ossystems.com.br>

The MP3 plugin requires it to be able to run properly. So add it as a
runtime depends.

Change-Id: I3a07282d076ebac61bfc37c4b29b3817275b3131
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
---
 recipes-multimedia/gst-plugins/gst-fsl-plugin.inc |    2 ++
 1 file changed, 2 insertions(+)

diff --git a/recipes-multimedia/gst-plugins/gst-fsl-plugin.inc b/recipes-multimedia/gst-plugins/gst-fsl-plugin.inc
index b9dca01..04f02b0 100644
--- a/recipes-multimedia/gst-plugins/gst-fsl-plugin.inc
+++ b/recipes-multimedia/gst-plugins/gst-fsl-plugin.inc
@@ -34,6 +34,8 @@ PACKAGES += "${PN}-libmfwsconf ${PN}-libgplaycore ${PN}-libgstfsl \
              ${PN}-libfwvss ${PN}-gplay"
 
 FILES_${PN} = "${libdir}/gstreamer-0.10/*.so ${datadir}"
+RDEPENDS_${PN} += "gst-plugins-good-id3demux"
+
 FILES_${PN}-dbg += "${libdir}/gstreamer-0.10/.debug"
 FILES_${PN}-dev += "${libdir}/gstreamer-0.10/*.la ${libdir}/pkgconfig/*.pc"
 FILES_${PN}-staticdev += "${libdir}/gstreamer-0.10/*.a"
-- 
1.7.10.4




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

* [meta-fsl-arm][PATCH 03/13] libfslcodec: Group ARM12, ARM11 and ARM9 packages
  2013-05-23 19:22 [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7 Daiane Angolini
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 01/13] gst-fsl-plugin: Set CROSS_ROOT so the 'ipu.h' can be found Daiane Angolini
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 02/13] gst-fsl-plugin: Add runtime depends on gst-plugins-good-id3demux Daiane Angolini
@ 2013-05-23 19:22 ` Daiane Angolini
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 04/13] libfslcodec: Add libfslcodec-meta which includes all codecs Daiane Angolini
                   ` (12 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Daiane Angolini @ 2013-05-23 19:22 UTC (permalink / raw)
  To: meta-freescale; +Cc: Otavio Salvador

From: Otavio Salvador <otavio@ossystems.com.br>

This rework the packages so we have all instruction set packages in
same binary, with respective 'wrap' libraries.

The complexity to proper choose it is not worth and error prone so we
avoid it. This also fixes the 'wrap' libraries path as they should be
inside 'imx-mm' directory.

Change-Id: I7f375b612807a429727c971083e19773b45691d3
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
---
 recipes-multimedia/libfslcodec/libfslcodec.inc |   37 +++++++++++-------------
 1 file changed, 17 insertions(+), 20 deletions(-)

diff --git a/recipes-multimedia/libfslcodec/libfslcodec.inc b/recipes-multimedia/libfslcodec/libfslcodec.inc
index 8b01887..5c0130b 100644
--- a/recipes-multimedia/libfslcodec/libfslcodec.inc
+++ b/recipes-multimedia/libfslcodec/libfslcodec.inc
@@ -18,41 +18,38 @@ do_install_append() {
 	# FIXME: This link points to nowhere
 	rm ${D}${libdir}/imx-mm/audio-codec/lib_src_ppp_arm11_elinux.so
 
-	# LTIB move the files around or gst-fsl-plugin won't find them
-	for p in $(find ${D}${libdir}/imx-mm -mindepth 1 -maxdepth 1 -type d); do
-		mv $p/* ${D}${libdir}
-		rmdir $p
-	done
-	rmdir ${D}${libdir}/imx-mm
+    # LTIB move the files around or gst-fsl-plugin won't find them
+    for p in $(find ${D}${libdir}/imx-mm -mindepth 2 -maxdepth 2 -not -type d); do
+            mv $p ${D}${libdir}
+    done
+    rmdir ${D}${libdir}/imx-mm/video-codec
 
 	# FIXME: Drop examples
 	rm -r ${D}${datadir}/imx-mm
 }
 
 python populate_packages_prepend() {
-    do_split_packages(d, d.getVar('libdir', True), '^lib_(.*)_elinux\.so\..*',
-                      aux_files_pattern_verbatim='${libdir}/lib_%s_elinux.so.*',
-                      output_pattern='libfslcodec-audio-%s',
-                      description='Freescale IMX Codec (%s)',
-                      extra_depends='', prepend=True)
-
-    wrapdir = bb.data.expand('${libdir}/wrap', d)
-    do_split_packages(d, wrapdir, '^lib_(.*)_elinux\.so\..*',
-                      aux_files_pattern_verbatim='${libdir}/wrap/lib_%s_elinux.so.*',
-                      output_pattern='libfslcodec-audio-wrap-%s',
-                      description='Freescale IMX Codec Wrap (%s)',
-                      extra_depends='', prepend=True)
+    codecdir = bb.data.expand('${libdir}', d)
+    do_split_packages(d, codecdir, '^lib_([^_]*).*_arm.*_elinux\.so\..*',
+                      aux_files_pattern='${libdir}/imx-mm/audio-codec/wrap/lib_%sd_wrap_arm*_elinux.so.*',
+                      output_pattern='libfslcodec-%s',
+                      description='Freescale i.MX Codec (%s)',
+                      extra_depends='')
 
     # FIXME: All binaries lack GNU_HASH in elf binary but as we don't have
     # the source we cannot fix it. Disable the insane check for now.
     for p in d.getVar('PACKAGES', True).split():
         d.setVar("INSANE_SKIP_%s" % p, "ldflags textrel")
+        d.setVar("DEBIAN_NOAUTONAME_%s" % p, "1")
 }
 
 # Ensure we get warnings if we miss something
 FILES_${PN} = ""
 
-FILES_${PN}-dev += "${libdir}/*/*${SOLIBSDEV} \
-                    ${libdir}/*/*/*${SOLIBSDEV}"
+FILES_${PN}-dev += "${libdir}/imx-mm/*/*${SOLIBSDEV} \
+                    ${libdir}/imx-mm/*/*/*${SOLIBSDEV}"
+
+# FIXME: The wrap and lib names does not match
+FILES_${PN}-oggvorbis += "${libdir}/imx-mm/audio-codec/wrap/lib_vorbisd_wrap_arm*_elinux.so.*"
 
 PACKAGE_ARCH = "${MACHINE_ARCH}"
-- 
1.7.10.4




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

* [meta-fsl-arm][PATCH 04/13] libfslcodec: Add libfslcodec-meta which includes all codecs
  2013-05-23 19:22 [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7 Daiane Angolini
                   ` (2 preceding siblings ...)
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 03/13] libfslcodec: Group ARM12, ARM11 and ARM9 packages Daiane Angolini
@ 2013-05-23 19:22 ` Daiane Angolini
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 05/13] firmware-imx: Update to version 3.0.35-4.0.0 Daiane Angolini
                   ` (11 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Daiane Angolini @ 2013-05-23 19:22 UTC (permalink / raw)
  To: meta-freescale; +Cc: Otavio Salvador

From: Otavio Salvador <otavio@ossystems.com.br>

The libfslcodec-meta is specially useful for debugging so we can test
if a failure is due a missing dependency across codecs or to provide
demo images which has a wide range of supported codecs.

Change-Id: Ic6deb1f7c1eab70405078ed79757dd57d9f29316
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
---
 recipes-multimedia/libfslcodec/libfslcodec.inc |   10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/recipes-multimedia/libfslcodec/libfslcodec.inc b/recipes-multimedia/libfslcodec/libfslcodec.inc
index 5c0130b..abf775a 100644
--- a/recipes-multimedia/libfslcodec/libfslcodec.inc
+++ b/recipes-multimedia/libfslcodec/libfslcodec.inc
@@ -14,6 +14,11 @@ SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.bin;fsl-eula=true"
 PACKAGES_DYNAMIC = "${PN}-*"
 INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
 
+PACKAGES += "${PN}-meta"
+
+ALLOW_EMPTY_${PN} = "1"
+ALLOW_EMPTY_${PN}-meta = "1"
+
 do_install_append() {
 	# FIXME: This link points to nowhere
 	rm ${D}${libdir}/imx-mm/audio-codec/lib_src_ppp_arm11_elinux.so
@@ -41,6 +46,11 @@ python populate_packages_prepend() {
     for p in d.getVar('PACKAGES', True).split():
         d.setVar("INSANE_SKIP_%s" % p, "ldflags textrel")
         d.setVar("DEBIAN_NOAUTONAME_%s" % p, "1")
+
+    # Allow addition of all codecs in a image; useful specially for
+    # debugging.
+    codec_pkgs = oe.utils.packages_filter_out_system(d)
+    d.appendVar('RDEPENDS_libfslcodec-meta', ' ' + ' '.join(codec_pkgs))
 }
 
 # Ensure we get warnings if we miss something
-- 
1.7.10.4




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

* [meta-fsl-arm][PATCH 05/13] firmware-imx: Update to version 3.0.35-4.0.0
  2013-05-23 19:22 [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7 Daiane Angolini
                   ` (3 preceding siblings ...)
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 04/13] libfslcodec: Add libfslcodec-meta which includes all codecs Daiane Angolini
@ 2013-05-23 19:22 ` Daiane Angolini
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 06/13] imx-lib: " Daiane Angolini
                   ` (10 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Daiane Angolini @ 2013-05-23 19:22 UTC (permalink / raw)
  To: meta-freescale

Add new version compatible with MX6 SOC FAMILY.
Remove old version for MX6 (1.1.0)

Change-Id: I2e500ce49590340c47ee107f08cab604c21c88d5
Signed-off-by: Daiane Angolini <daiane.angolini@freescale.com>
---
 recipes-bsp/firmware-imx/firmware-imx_1.1.0.bb        |    9 ---------
 recipes-bsp/firmware-imx/firmware-imx_3.0.35-4.0.0.bb |    9 +++++++++
 2 files changed, 9 insertions(+), 9 deletions(-)
 delete mode 100644 recipes-bsp/firmware-imx/firmware-imx_1.1.0.bb
 create mode 100644 recipes-bsp/firmware-imx/firmware-imx_3.0.35-4.0.0.bb

diff --git a/recipes-bsp/firmware-imx/firmware-imx_1.1.0.bb b/recipes-bsp/firmware-imx/firmware-imx_1.1.0.bb
deleted file mode 100644
index ebc8408..0000000
--- a/recipes-bsp/firmware-imx/firmware-imx_1.1.0.bb
+++ /dev/null
@@ -1,9 +0,0 @@
-require firmware-imx.inc
-
-PR = "${INC_PR}.0"
-PE="1"
-
-SRC_URI[md5sum] = "6eeccfdadd01f84197f3c41cf6df729b"
-SRC_URI[sha256sum] = "d17a7bdfd9c1c0fdff13ec73044f2832d8b64ab5b26e71c86a876c7c86e82eae"
-
-COMPATIBLE_MACHINE = "(mx6)"
diff --git a/recipes-bsp/firmware-imx/firmware-imx_3.0.35-4.0.0.bb b/recipes-bsp/firmware-imx/firmware-imx_3.0.35-4.0.0.bb
new file mode 100644
index 0000000..5ad962b
--- /dev/null
+++ b/recipes-bsp/firmware-imx/firmware-imx_3.0.35-4.0.0.bb
@@ -0,0 +1,9 @@
+require firmware-imx.inc
+
+PR = "${INC_PR}.0"
+PE="1"
+
+SRC_URI[md5sum] = "f23ce8437e141c1d20e3bf175eb3af7f"
+SRC_URI[sha256sum] = "5aaf5e91dbec8072fec613218c0fc939d9a59e74df53054f49ab31f1f0dd25d9"
+
+COMPATIBLE_MACHINE = "(mx6)"
-- 
1.7.10.4




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

* [meta-fsl-arm][PATCH 06/13] imx-lib: Update to version 3.0.35-4.0.0
  2013-05-23 19:22 [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7 Daiane Angolini
                   ` (4 preceding siblings ...)
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 05/13] firmware-imx: Update to version 3.0.35-4.0.0 Daiane Angolini
@ 2013-05-23 19:22 ` Daiane Angolini
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 07/13] imx-lib: Move it to recipe-bsp dir Daiane Angolini
                   ` (9 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Daiane Angolini @ 2013-05-23 19:22 UTC (permalink / raw)
  To: meta-freescale

Add new version compatible with MX6 SOC FAMILY
Remove old version for MX6 (1.1.0)
The license was changed in new vesion, so new package
is .bin file (instead of .tar.gz file).

The SRC_URI for old/new version is different, so it was
removed from .inc file and place in each version file.

Change-Id: Idd6cacf4f713b01558b002d934541e9760fe53ca
Signed-off-by: Daiane Angolini <daiane.angolini@freescale.com>
---
 recipes-multimedia/imx-lib/imx-lib.inc             |    4 ++--
 recipes-multimedia/imx-lib/imx-lib_1.1.0.bb        |   10 ----------
 recipes-multimedia/imx-lib/imx-lib_11.09.01.bb     |    2 ++
 recipes-multimedia/imx-lib/imx-lib_3.0.35-4.0.0.bb |   12 ++++++++++++
 4 files changed, 16 insertions(+), 12 deletions(-)
 delete mode 100644 recipes-multimedia/imx-lib/imx-lib_1.1.0.bb
 create mode 100644 recipes-multimedia/imx-lib/imx-lib_3.0.35-4.0.0.bb

diff --git a/recipes-multimedia/imx-lib/imx-lib.inc b/recipes-multimedia/imx-lib/imx-lib.inc
index 7847bbe..24477ce 100644
--- a/recipes-multimedia/imx-lib/imx-lib.inc
+++ b/recipes-multimedia/imx-lib/imx-lib.inc
@@ -5,11 +5,11 @@ LICENSE = "LGPLv2.1"
 SECTION = "multimedia"
 DEPENDS = "virtual/kernel"
 
-INC_PR = "r4"
+INC_PR = "r5"
 
 LIC_FILES_CHKSUM = "file://ipu/mxc_ipu_hl_lib.h;endline=13;md5=6c7486b21a8524b1879fa159578da31e"
 
-SRC_URI = "${FSL_MIRROR}/imx-lib-${PV}.tar.gz"
+inherit fsl-eula-unpack
 
 PLATFORM_mx6 = "IMX6Q"
 PLATFORM_mx5 = "IMX51"
diff --git a/recipes-multimedia/imx-lib/imx-lib_1.1.0.bb b/recipes-multimedia/imx-lib/imx-lib_1.1.0.bb
deleted file mode 100644
index c0d10a3..0000000
--- a/recipes-multimedia/imx-lib/imx-lib_1.1.0.bb
+++ /dev/null
@@ -1,10 +0,0 @@
-include imx-lib.inc
-
-PR = "${INC_PR}.0"
-PE = "1"
-
-SRC_URI[md5sum] = "d7867f6f5ff36f8e6c659da058334e73"
-SRC_URI[sha256sum] = "2c584c78a0cf77ca3b5cdf926b008968dbc2243f59c113ed323599c72f3de12c"
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-COMPATIBLE_MACHINE = "(mx6)"
diff --git a/recipes-multimedia/imx-lib/imx-lib_11.09.01.bb b/recipes-multimedia/imx-lib/imx-lib_11.09.01.bb
index b08c560..0ed5388 100644
--- a/recipes-multimedia/imx-lib/imx-lib_11.09.01.bb
+++ b/recipes-multimedia/imx-lib/imx-lib_11.09.01.bb
@@ -2,6 +2,8 @@ include imx-lib.inc
 
 PR = "${INC_PR}.2"
 
+SRC_URI = "${FSL_MIRROR}/imx-lib-${PV}.tar.gz"
+
 SRC_URI += " file://0001-ENGR00156800-vpu-Fix-decoding-mp4PackedPBFrame-strea.patch \
              file://0002-ENGR00162690-vpu-Fix-the-issue-of-rotation-180-degre.patch"
 SRC_URI[md5sum] = "45574f8f32f7000ca11d585fa60dea8c"
diff --git a/recipes-multimedia/imx-lib/imx-lib_3.0.35-4.0.0.bb b/recipes-multimedia/imx-lib/imx-lib_3.0.35-4.0.0.bb
new file mode 100644
index 0000000..5420cd6
--- /dev/null
+++ b/recipes-multimedia/imx-lib/imx-lib_3.0.35-4.0.0.bb
@@ -0,0 +1,12 @@
+include imx-lib.inc
+
+PR = "${INC_PR}.0"
+PE = "1"
+
+SRC_URI = "${FSL_MIRROR}/imx-lib-${PV}.bin;fsl-eula=true"
+
+SRC_URI[md5sum] = "f0f9b0a7a7d558edfe624190a8860122"
+SRC_URI[sha256sum] = "90caafc7a8898fc3126779eacec14fac2453afdaa45ddc7063ccd059dede97ce"
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+COMPATIBLE_MACHINE = "(mx6)"
-- 
1.7.10.4




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

* [meta-fsl-arm][PATCH 07/13] imx-lib: Move it to recipe-bsp dir
  2013-05-23 19:22 [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7 Daiane Angolini
                   ` (5 preceding siblings ...)
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 06/13] imx-lib: " Daiane Angolini
@ 2013-05-23 19:22 ` Daiane Angolini
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 08/13] libfslvpuwrap: Update to version 1.0.35 Daiane Angolini
                   ` (8 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Daiane Angolini @ 2013-05-23 19:22 UTC (permalink / raw)
  To: meta-freescale

imx-lib is not a multimedia application. It provides
others libs not related with multimedia, so it should
go to recipes-bsp dir.

Change-Id: Ie2f2adba2e155d780ce4436fc308277961a66769
Signed-off-by: Daiane Angolini <daiane.angolini@freescale.com>
---
 ...0-vpu-Fix-decoding-mp4PackedPBFrame-strea.patch |   31 ++++++++++++++++
 ...0-vpu-Fix-the-issue-of-rotation-180-degre.patch |   36 ++++++++++++++++++
 recipes-bsp/imx-lib/imx-lib.inc                    |   39 ++++++++++++++++++++
 recipes-bsp/imx-lib/imx-lib_11.09.01.bb            |   13 +++++++
 recipes-bsp/imx-lib/imx-lib_3.0.35-4.0.0.bb        |   12 ++++++
 ...0-vpu-Fix-decoding-mp4PackedPBFrame-strea.patch |   31 ----------------
 ...0-vpu-Fix-the-issue-of-rotation-180-degre.patch |   36 ------------------
 recipes-multimedia/imx-lib/imx-lib.inc             |   39 --------------------
 recipes-multimedia/imx-lib/imx-lib_11.09.01.bb     |   13 -------
 recipes-multimedia/imx-lib/imx-lib_3.0.35-4.0.0.bb |   12 ------
 10 files changed, 131 insertions(+), 131 deletions(-)
 create mode 100644 recipes-bsp/imx-lib/imx-lib-11.09.01/0001-ENGR00156800-vpu-Fix-decoding-mp4PackedPBFrame-strea.patch
 create mode 100644 recipes-bsp/imx-lib/imx-lib-11.09.01/0002-ENGR00162690-vpu-Fix-the-issue-of-rotation-180-degre.patch
 create mode 100644 recipes-bsp/imx-lib/imx-lib.inc
 create mode 100644 recipes-bsp/imx-lib/imx-lib_11.09.01.bb
 create mode 100644 recipes-bsp/imx-lib/imx-lib_3.0.35-4.0.0.bb
 delete mode 100644 recipes-multimedia/imx-lib/imx-lib-11.09.01/0001-ENGR00156800-vpu-Fix-decoding-mp4PackedPBFrame-strea.patch
 delete mode 100644 recipes-multimedia/imx-lib/imx-lib-11.09.01/0002-ENGR00162690-vpu-Fix-the-issue-of-rotation-180-degre.patch
 delete mode 100644 recipes-multimedia/imx-lib/imx-lib.inc
 delete mode 100644 recipes-multimedia/imx-lib/imx-lib_11.09.01.bb
 delete mode 100644 recipes-multimedia/imx-lib/imx-lib_3.0.35-4.0.0.bb

diff --git a/recipes-bsp/imx-lib/imx-lib-11.09.01/0001-ENGR00156800-vpu-Fix-decoding-mp4PackedPBFrame-strea.patch b/recipes-bsp/imx-lib/imx-lib-11.09.01/0001-ENGR00156800-vpu-Fix-decoding-mp4PackedPBFrame-strea.patch
new file mode 100644
index 0000000..4fa3d8b
--- /dev/null
+++ b/recipes-bsp/imx-lib/imx-lib-11.09.01/0001-ENGR00156800-vpu-Fix-decoding-mp4PackedPBFrame-strea.patch
@@ -0,0 +1,31 @@
+From 3bca9e128dd82e69f877e90c1bcd614c48a75161 Mon Sep 17 00:00:00 2001
+From: Sammy He <r62914@freescale.com>
+Date: Thu, 15 Sep 2011 22:40:10 +0800
+Subject: [PATCH 1/3] ENGR00156800 vpu: Fix decoding mp4PackedPBFrame stream failure issue
+
+Decoding the stream with mp4PackedPBFrame is failure due to write
+point in bitstream set wrong.
+This patch will fix it.
+
+Signed-off-by: Sammy He <r62914@freescale.com>
+---
+ vpu/vpu_lib.c |    3 +++
+ 1 files changed, 3 insertions(+), 0 deletions(-)
+
+diff --git a/vpu/vpu_lib.c b/vpu/vpu_lib.c
+index a5522fa..32d44b2 100644
+--- a/vpu/vpu_lib.c
++++ b/vpu/vpu_lib.c
+@@ -3552,6 +3552,9 @@ RetCode vpu_DecGetOutputInfo(DecHandle handle, DecOutputInfo * info)
+ 		info->notSufficientSliceBuffer = (val >> 2) & 0x1;
+ 	} else if (pCodecInst->codecMode == MP4_DEC) {
+ 		info->mp4PackedPBframe = ((val >> 16) & 0x01);
++		/* Need to backup WR_PTR for mp4PackedPBframe */
++		if (info->mp4PackedPBframe)
++			pCodecInst->ctxRegs[CTX_BIT_WR_PTR] = VpuReadReg(BIT_WR_PTR);
+ 	}
+ 
+ 	val = VpuReadReg(RET_DEC_PIC_SIZE);     /* decoding picture size */
+-- 
+1.7.1
+
diff --git a/recipes-bsp/imx-lib/imx-lib-11.09.01/0002-ENGR00162690-vpu-Fix-the-issue-of-rotation-180-degre.patch b/recipes-bsp/imx-lib/imx-lib-11.09.01/0002-ENGR00162690-vpu-Fix-the-issue-of-rotation-180-degre.patch
new file mode 100644
index 0000000..1183b29
--- /dev/null
+++ b/recipes-bsp/imx-lib/imx-lib-11.09.01/0002-ENGR00162690-vpu-Fix-the-issue-of-rotation-180-degre.patch
@@ -0,0 +1,36 @@
+From 57e5a741c5bef4ac5afd820979a93808ecc97c64 Mon Sep 17 00:00:00 2001
+From: Sammy He <r62914@freescale.com>
+Date: Mon, 21 Nov 2011 23:08:18 +0800
+Subject: [PATCH 2/3] ENGR00162690 vpu: Fix the issue of rotation 180 degree in encoder
+
+There may be mosaic if rotation is 180 degree in vpu encoder on mx5.
+This patch fixed it, same solution is applied to mx6 platform.
+
+Signed-off-by: Sammy He <r62914@freescale.com>
+---
+ vpu/vpu_lib.c |    2 --
+ 1 files changed, 0 insertions(+), 2 deletions(-)
+
+diff --git a/vpu/vpu_lib.c b/vpu/vpu_lib.c
+index 32d44b2..0fcf5d5 100644
+--- a/vpu/vpu_lib.c
++++ b/vpu/vpu_lib.c
+@@ -1306,7 +1306,6 @@ RetCode vpu_EncStartOneFrame(EncHandle handle, EncParam * param)
+ 		return RETCODE_FAILURE_TIMEOUT;
+ 
+ 	if (pEncInfo->rotationEnable) {
+-		rotMirEnable = 0x10;	/* Enable rotator */
+ 		switch (pEncInfo->rotationAngle) {
+ 		case 0:
+ 			rotMirMode |= 0x0;
+@@ -1326,7 +1325,6 @@ RetCode vpu_EncStartOneFrame(EncHandle handle, EncParam * param)
+ 		}
+ 	}
+ 	if (pEncInfo->mirrorEnable) {
+-		rotMirEnable = 0x10;	/* Enable mirror */
+ 		switch (pEncInfo->mirrorDirection) {
+ 		case MIRDIR_NONE:
+ 			rotMirMode |= 0x0;
+-- 
+1.7.1
+
diff --git a/recipes-bsp/imx-lib/imx-lib.inc b/recipes-bsp/imx-lib/imx-lib.inc
new file mode 100644
index 0000000..24477ce
--- /dev/null
+++ b/recipes-bsp/imx-lib/imx-lib.inc
@@ -0,0 +1,39 @@
+# Copyright (C) 2012 Freescale Semiconductor
+
+DESCRIPTION = "Platform specific libraries for imx platform"
+LICENSE = "LGPLv2.1"
+SECTION = "multimedia"
+DEPENDS = "virtual/kernel"
+
+INC_PR = "r5"
+
+LIC_FILES_CHKSUM = "file://ipu/mxc_ipu_hl_lib.h;endline=13;md5=6c7486b21a8524b1879fa159578da31e"
+
+inherit fsl-eula-unpack
+
+PLATFORM_mx6 = "IMX6Q"
+PLATFORM_mx5 = "IMX51"
+
+PARALLEL_MAKE="-j 1"
+EXTRA_OEMAKE = ""
+
+do_configure_append () {
+    # FIXME: The build system does not allow CC and AR to be overriden
+    find ${S} -name Makefile | xargs sed -i 's,^\(CC\|AR\)=,\1 ?=,g'
+}
+
+do_compile () {
+    INCLUDE_DIR="-I${STAGING_INCDIR} -I${STAGING_KERNEL_DIR}/drivers/mxc/security/rng/include \
+                 -I${STAGING_KERNEL_DIR}/drivers/mxc/security/sahara2/include \
+                 -I${STAGING_KERNEL_DIR}/include"
+    oe_runmake CROSS_COMPILE="${HOST_PREFIX}" PLATFORM="${PLATFORM}" INCLUDE="${INCLUDE_DIR}" all
+}
+
+do_install () {
+    oe_runmake PLATFORM="${PLATFORM}" DEST_DIR="${D}" install
+}
+
+FILES_${PN} += "${libdir}/*${SOLIBS}"
+FILES_${PN}-dbg += "${libdir}/.debug"
+FILES_${PN}-dev += "${libdir}/*${SOLIBSDEV}"
+
diff --git a/recipes-bsp/imx-lib/imx-lib_11.09.01.bb b/recipes-bsp/imx-lib/imx-lib_11.09.01.bb
new file mode 100644
index 0000000..0ed5388
--- /dev/null
+++ b/recipes-bsp/imx-lib/imx-lib_11.09.01.bb
@@ -0,0 +1,13 @@
+include imx-lib.inc
+
+PR = "${INC_PR}.2"
+
+SRC_URI = "${FSL_MIRROR}/imx-lib-${PV}.tar.gz"
+
+SRC_URI += " file://0001-ENGR00156800-vpu-Fix-decoding-mp4PackedPBFrame-strea.patch \
+             file://0002-ENGR00162690-vpu-Fix-the-issue-of-rotation-180-degre.patch"
+SRC_URI[md5sum] = "45574f8f32f7000ca11d585fa60dea8c"
+SRC_URI[sha256sum] = "f151a8bb3099b596b5834a1139c19e526802e6a0aa965018d16375e7e1f48f27"
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+COMPATIBLE_MACHINE = "(mx5)"
diff --git a/recipes-bsp/imx-lib/imx-lib_3.0.35-4.0.0.bb b/recipes-bsp/imx-lib/imx-lib_3.0.35-4.0.0.bb
new file mode 100644
index 0000000..5420cd6
--- /dev/null
+++ b/recipes-bsp/imx-lib/imx-lib_3.0.35-4.0.0.bb
@@ -0,0 +1,12 @@
+include imx-lib.inc
+
+PR = "${INC_PR}.0"
+PE = "1"
+
+SRC_URI = "${FSL_MIRROR}/imx-lib-${PV}.bin;fsl-eula=true"
+
+SRC_URI[md5sum] = "f0f9b0a7a7d558edfe624190a8860122"
+SRC_URI[sha256sum] = "90caafc7a8898fc3126779eacec14fac2453afdaa45ddc7063ccd059dede97ce"
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+COMPATIBLE_MACHINE = "(mx6)"
diff --git a/recipes-multimedia/imx-lib/imx-lib-11.09.01/0001-ENGR00156800-vpu-Fix-decoding-mp4PackedPBFrame-strea.patch b/recipes-multimedia/imx-lib/imx-lib-11.09.01/0001-ENGR00156800-vpu-Fix-decoding-mp4PackedPBFrame-strea.patch
deleted file mode 100644
index 4fa3d8b..0000000
--- a/recipes-multimedia/imx-lib/imx-lib-11.09.01/0001-ENGR00156800-vpu-Fix-decoding-mp4PackedPBFrame-strea.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 3bca9e128dd82e69f877e90c1bcd614c48a75161 Mon Sep 17 00:00:00 2001
-From: Sammy He <r62914@freescale.com>
-Date: Thu, 15 Sep 2011 22:40:10 +0800
-Subject: [PATCH 1/3] ENGR00156800 vpu: Fix decoding mp4PackedPBFrame stream failure issue
-
-Decoding the stream with mp4PackedPBFrame is failure due to write
-point in bitstream set wrong.
-This patch will fix it.
-
-Signed-off-by: Sammy He <r62914@freescale.com>
----
- vpu/vpu_lib.c |    3 +++
- 1 files changed, 3 insertions(+), 0 deletions(-)
-
-diff --git a/vpu/vpu_lib.c b/vpu/vpu_lib.c
-index a5522fa..32d44b2 100644
---- a/vpu/vpu_lib.c
-+++ b/vpu/vpu_lib.c
-@@ -3552,6 +3552,9 @@ RetCode vpu_DecGetOutputInfo(DecHandle handle, DecOutputInfo * info)
- 		info->notSufficientSliceBuffer = (val >> 2) & 0x1;
- 	} else if (pCodecInst->codecMode == MP4_DEC) {
- 		info->mp4PackedPBframe = ((val >> 16) & 0x01);
-+		/* Need to backup WR_PTR for mp4PackedPBframe */
-+		if (info->mp4PackedPBframe)
-+			pCodecInst->ctxRegs[CTX_BIT_WR_PTR] = VpuReadReg(BIT_WR_PTR);
- 	}
- 
- 	val = VpuReadReg(RET_DEC_PIC_SIZE);     /* decoding picture size */
--- 
-1.7.1
-
diff --git a/recipes-multimedia/imx-lib/imx-lib-11.09.01/0002-ENGR00162690-vpu-Fix-the-issue-of-rotation-180-degre.patch b/recipes-multimedia/imx-lib/imx-lib-11.09.01/0002-ENGR00162690-vpu-Fix-the-issue-of-rotation-180-degre.patch
deleted file mode 100644
index 1183b29..0000000
--- a/recipes-multimedia/imx-lib/imx-lib-11.09.01/0002-ENGR00162690-vpu-Fix-the-issue-of-rotation-180-degre.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 57e5a741c5bef4ac5afd820979a93808ecc97c64 Mon Sep 17 00:00:00 2001
-From: Sammy He <r62914@freescale.com>
-Date: Mon, 21 Nov 2011 23:08:18 +0800
-Subject: [PATCH 2/3] ENGR00162690 vpu: Fix the issue of rotation 180 degree in encoder
-
-There may be mosaic if rotation is 180 degree in vpu encoder on mx5.
-This patch fixed it, same solution is applied to mx6 platform.
-
-Signed-off-by: Sammy He <r62914@freescale.com>
----
- vpu/vpu_lib.c |    2 --
- 1 files changed, 0 insertions(+), 2 deletions(-)
-
-diff --git a/vpu/vpu_lib.c b/vpu/vpu_lib.c
-index 32d44b2..0fcf5d5 100644
---- a/vpu/vpu_lib.c
-+++ b/vpu/vpu_lib.c
-@@ -1306,7 +1306,6 @@ RetCode vpu_EncStartOneFrame(EncHandle handle, EncParam * param)
- 		return RETCODE_FAILURE_TIMEOUT;
- 
- 	if (pEncInfo->rotationEnable) {
--		rotMirEnable = 0x10;	/* Enable rotator */
- 		switch (pEncInfo->rotationAngle) {
- 		case 0:
- 			rotMirMode |= 0x0;
-@@ -1326,7 +1325,6 @@ RetCode vpu_EncStartOneFrame(EncHandle handle, EncParam * param)
- 		}
- 	}
- 	if (pEncInfo->mirrorEnable) {
--		rotMirEnable = 0x10;	/* Enable mirror */
- 		switch (pEncInfo->mirrorDirection) {
- 		case MIRDIR_NONE:
- 			rotMirMode |= 0x0;
--- 
-1.7.1
-
diff --git a/recipes-multimedia/imx-lib/imx-lib.inc b/recipes-multimedia/imx-lib/imx-lib.inc
deleted file mode 100644
index 24477ce..0000000
--- a/recipes-multimedia/imx-lib/imx-lib.inc
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright (C) 2012 Freescale Semiconductor
-
-DESCRIPTION = "Platform specific libraries for imx platform"
-LICENSE = "LGPLv2.1"
-SECTION = "multimedia"
-DEPENDS = "virtual/kernel"
-
-INC_PR = "r5"
-
-LIC_FILES_CHKSUM = "file://ipu/mxc_ipu_hl_lib.h;endline=13;md5=6c7486b21a8524b1879fa159578da31e"
-
-inherit fsl-eula-unpack
-
-PLATFORM_mx6 = "IMX6Q"
-PLATFORM_mx5 = "IMX51"
-
-PARALLEL_MAKE="-j 1"
-EXTRA_OEMAKE = ""
-
-do_configure_append () {
-    # FIXME: The build system does not allow CC and AR to be overriden
-    find ${S} -name Makefile | xargs sed -i 's,^\(CC\|AR\)=,\1 ?=,g'
-}
-
-do_compile () {
-    INCLUDE_DIR="-I${STAGING_INCDIR} -I${STAGING_KERNEL_DIR}/drivers/mxc/security/rng/include \
-                 -I${STAGING_KERNEL_DIR}/drivers/mxc/security/sahara2/include \
-                 -I${STAGING_KERNEL_DIR}/include"
-    oe_runmake CROSS_COMPILE="${HOST_PREFIX}" PLATFORM="${PLATFORM}" INCLUDE="${INCLUDE_DIR}" all
-}
-
-do_install () {
-    oe_runmake PLATFORM="${PLATFORM}" DEST_DIR="${D}" install
-}
-
-FILES_${PN} += "${libdir}/*${SOLIBS}"
-FILES_${PN}-dbg += "${libdir}/.debug"
-FILES_${PN}-dev += "${libdir}/*${SOLIBSDEV}"
-
diff --git a/recipes-multimedia/imx-lib/imx-lib_11.09.01.bb b/recipes-multimedia/imx-lib/imx-lib_11.09.01.bb
deleted file mode 100644
index 0ed5388..0000000
--- a/recipes-multimedia/imx-lib/imx-lib_11.09.01.bb
+++ /dev/null
@@ -1,13 +0,0 @@
-include imx-lib.inc
-
-PR = "${INC_PR}.2"
-
-SRC_URI = "${FSL_MIRROR}/imx-lib-${PV}.tar.gz"
-
-SRC_URI += " file://0001-ENGR00156800-vpu-Fix-decoding-mp4PackedPBFrame-strea.patch \
-             file://0002-ENGR00162690-vpu-Fix-the-issue-of-rotation-180-degre.patch"
-SRC_URI[md5sum] = "45574f8f32f7000ca11d585fa60dea8c"
-SRC_URI[sha256sum] = "f151a8bb3099b596b5834a1139c19e526802e6a0aa965018d16375e7e1f48f27"
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-COMPATIBLE_MACHINE = "(mx5)"
diff --git a/recipes-multimedia/imx-lib/imx-lib_3.0.35-4.0.0.bb b/recipes-multimedia/imx-lib/imx-lib_3.0.35-4.0.0.bb
deleted file mode 100644
index 5420cd6..0000000
--- a/recipes-multimedia/imx-lib/imx-lib_3.0.35-4.0.0.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-include imx-lib.inc
-
-PR = "${INC_PR}.0"
-PE = "1"
-
-SRC_URI = "${FSL_MIRROR}/imx-lib-${PV}.bin;fsl-eula=true"
-
-SRC_URI[md5sum] = "f0f9b0a7a7d558edfe624190a8860122"
-SRC_URI[sha256sum] = "90caafc7a8898fc3126779eacec14fac2453afdaa45ddc7063ccd059dede97ce"
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-COMPATIBLE_MACHINE = "(mx6)"
-- 
1.7.10.4




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

* [meta-fsl-arm][PATCH 08/13] libfslvpuwrap: Update to version 1.0.35
  2013-05-23 19:22 [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7 Daiane Angolini
                   ` (6 preceding siblings ...)
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 07/13] imx-lib: Move it to recipe-bsp dir Daiane Angolini
@ 2013-05-23 19:22 ` Daiane Angolini
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 09/13] libfslcodec: Update to version 3.0.7 Daiane Angolini
                   ` (7 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Daiane Angolini @ 2013-05-23 19:22 UTC (permalink / raw)
  To: meta-freescale

Add new version compatible with MX6 SOC FAMILY
Remove old version (1.0.17)

Change-Id: I515eea5ddaca61cc1034a3b70e9a3df0e6c2b9af
Signed-off-by: Daiane Angolini <daiane.angolini@freescale.com>
---
 .../libfslvpuwrap/libfslvpuwrap_1.0.17.bb          |   16 ---------------
 .../libfslvpuwrap/libfslvpuwrap_1.0.35.bb          |   21 ++++++++++++++++++++
 2 files changed, 21 insertions(+), 16 deletions(-)
 delete mode 100644 recipes-multimedia/libfslvpuwrap/libfslvpuwrap_1.0.17.bb
 create mode 100644 recipes-multimedia/libfslvpuwrap/libfslvpuwrap_1.0.35.bb

diff --git a/recipes-multimedia/libfslvpuwrap/libfslvpuwrap_1.0.17.bb b/recipes-multimedia/libfslvpuwrap/libfslvpuwrap_1.0.17.bb
deleted file mode 100644
index cb109b2..0000000
--- a/recipes-multimedia/libfslvpuwrap/libfslvpuwrap_1.0.17.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-# Copyright (C) 2012 Freescale Semicondutors
-# Released under the MIT license (see COPYING.MIT for the terms)
-DESCRIPTION = "Freescale Multimedia VPU wrapper"
-DEPENDS = "imx-lib"
-LICENSE = "GPLv2"
-SECTION = "multimedia"
-LIC_FILES_CHKSUM = "file://EULA.txt;md5=ea4d5c069d7aef0838a110409ea78a01"
-
-inherit autotools pkgconfig
-
-SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.tar.gz"
-SRC_URI[md5sum] = "d1499b9da40db798a9b1ba932c6f9525"
-SRC_URI[sha256sum] = "4e0e79053b745d69aec9007216ae0017e719fb6459b4e54d30d6666625a03b0b"
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-COMPATIBLE_MACHINE = "(mx6)"
diff --git a/recipes-multimedia/libfslvpuwrap/libfslvpuwrap_1.0.35.bb b/recipes-multimedia/libfslvpuwrap/libfslvpuwrap_1.0.35.bb
new file mode 100644
index 0000000..bdc60bb
--- /dev/null
+++ b/recipes-multimedia/libfslvpuwrap/libfslvpuwrap_1.0.35.bb
@@ -0,0 +1,21 @@
+# Copyright (C) 2012-2013 Freescale Semicondutors
+# Released under the MIT license (see COPYING.MIT for the terms)
+DESCRIPTION = "Freescale Multimedia VPU wrapper"
+DEPENDS = "imx-lib"
+LICENSE = "GPLv2"
+SECTION = "multimedia"
+LIC_FILES_CHKSUM = "file://EULA.txt;md5=ea4d5c069d7aef0838a110409ea78a01"
+
+inherit autotools pkgconfig
+
+SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.tar.gz"
+SRC_URI[md5sum] = "da8d95ee2e6676a81f2c2b4a88ed0e06"
+SRC_URI[sha256sum] = "29653d574b1fcce4cd18134f1d1080d568d763301adce923382055f9996db2e0"
+
+do_install_append() {
+    # FIXME: Drop examples for now
+    rm -r ${D}${datadir}/imx-mm
+}
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+COMPATIBLE_MACHINE = "(mx6)"
-- 
1.7.10.4




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

* [meta-fsl-arm][PATCH 09/13] libfslcodec: Update to version 3.0.7
  2013-05-23 19:22 [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7 Daiane Angolini
                   ` (7 preceding siblings ...)
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 08/13] libfslvpuwrap: Update to version 1.0.35 Daiane Angolini
@ 2013-05-23 19:22 ` Daiane Angolini
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 10/13] libfslparser: " Daiane Angolini
                   ` (6 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Daiane Angolini @ 2013-05-23 19:22 UTC (permalink / raw)
  To: meta-freescale

The 3.0.7 version is compatible with MX28, MX53 and MX6 SoCs so we
move them all to this release.

Change-Id: Iffb871c2a846391e8d628df5e3f1c9202ff29fa4
Signed-off-by: Daiane Angolini <daiane.angolini@freescale.com>
---
 recipes-multimedia/libfslcodec/libfslcodec.inc      |    2 --
 recipes-multimedia/libfslcodec/libfslcodec_3.0.5.bb |   11 -----------
 recipes-multimedia/libfslcodec/libfslcodec_3.0.6.bb |   11 -----------
 recipes-multimedia/libfslcodec/libfslcodec_3.0.7.bb |    9 +++++++++
 4 files changed, 9 insertions(+), 24 deletions(-)
 delete mode 100644 recipes-multimedia/libfslcodec/libfslcodec_3.0.5.bb
 delete mode 100644 recipes-multimedia/libfslcodec/libfslcodec_3.0.6.bb
 create mode 100644 recipes-multimedia/libfslcodec/libfslcodec_3.0.7.bb

diff --git a/recipes-multimedia/libfslcodec/libfslcodec.inc b/recipes-multimedia/libfslcodec/libfslcodec.inc
index abf775a..6fc368f 100644
--- a/recipes-multimedia/libfslcodec/libfslcodec.inc
+++ b/recipes-multimedia/libfslcodec/libfslcodec.inc
@@ -5,8 +5,6 @@ LICENSE = "Proprietary"
 SECTION = "multimedia"
 LIC_FILES_CHKSUM = "file://EULA.txt;md5=ea4d5c069d7aef0838a110409ea78a01"
 
-INC_PR = "r1"
-
 inherit fsl-eula-unpack autotools pkgconfig
 
 SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.bin;fsl-eula=true"
diff --git a/recipes-multimedia/libfslcodec/libfslcodec_3.0.5.bb b/recipes-multimedia/libfslcodec/libfslcodec_3.0.5.bb
deleted file mode 100644
index 6631525..0000000
--- a/recipes-multimedia/libfslcodec/libfslcodec_3.0.5.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-# Copyright (C) 2012-2013 Freescale Semicondutors
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-require libfslcodec.inc
-
-PR = "${INC_PR}.1"
-
-SRC_URI[md5sum] = "dc08b569175981fc0bd5f97986cfd543"
-SRC_URI[sha256sum] = "2a4a7248246ff37f30486f34918151f09493ecfcaeca0cd8155d5b5c93245138"
-
-COMPATIBLE_MACHINE = "(mx6)"
diff --git a/recipes-multimedia/libfslcodec/libfslcodec_3.0.6.bb b/recipes-multimedia/libfslcodec/libfslcodec_3.0.6.bb
deleted file mode 100644
index 59534fa..0000000
--- a/recipes-multimedia/libfslcodec/libfslcodec_3.0.6.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-# Copyright (C) 2013 Freescale Semicondutors
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-require libfslcodec.inc
-
-PR = "${INC_PR}.0"
-
-SRC_URI[md5sum] = "349bc30abbec37f78c167d99cfb5ee7b"
-SRC_URI[sha256sum] = "899547c2a02a958b792785fe3396f30d6dfb4bb3833f3cd386e0dbe94edae422"
-
-COMPATIBLE_MACHINE = "(mx28)"
diff --git a/recipes-multimedia/libfslcodec/libfslcodec_3.0.7.bb b/recipes-multimedia/libfslcodec/libfslcodec_3.0.7.bb
new file mode 100644
index 0000000..29f5130
--- /dev/null
+++ b/recipes-multimedia/libfslcodec/libfslcodec_3.0.7.bb
@@ -0,0 +1,9 @@
+# Copyright (C) 2013 Freescale Semicondutors
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+require libfslcodec.inc
+
+SRC_URI[md5sum] = "03bddd43219b4dea4f0e0fcdfed32ade"
+SRC_URI[sha256sum] = "f42c63350b76397620d05c2b1c73506af07012d93191d5acbe82f8fb3d551b89"
+
+COMPATIBLE_MACHINE = "(mx28|mx5|mx6)"
-- 
1.7.10.4




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

* [meta-fsl-arm][PATCH 10/13] libfslparser: Update to version 3.0.7
  2013-05-23 19:22 [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7 Daiane Angolini
                   ` (8 preceding siblings ...)
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 09/13] libfslcodec: Update to version 3.0.7 Daiane Angolini
@ 2013-05-23 19:22 ` Daiane Angolini
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 11/13] gst-fsl-plugin: " Daiane Angolini
                   ` (5 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Daiane Angolini @ 2013-05-23 19:22 UTC (permalink / raw)
  To: meta-freescale

The 3.0.7 version is compatible with MX28, MX53 and MX6 SoCs so we
move them all to this release.

Change-Id: Ic1086d4ffb87989c5ac060bab111ceb33da81279
Signed-off-by: Daiane Angolini <daiane.angolini@freescale.com>
---
 recipes-multimedia/libfslparser/libfslparser.inc      |    2 --
 recipes-multimedia/libfslparser/libfslparser_3.0.5.bb |   14 --------------
 recipes-multimedia/libfslparser/libfslparser_3.0.6.bb |   11 -----------
 recipes-multimedia/libfslparser/libfslparser_3.0.7.bb |    9 +++++++++
 4 files changed, 9 insertions(+), 27 deletions(-)
 delete mode 100644 recipes-multimedia/libfslparser/libfslparser_3.0.5.bb
 delete mode 100644 recipes-multimedia/libfslparser/libfslparser_3.0.6.bb
 create mode 100644 recipes-multimedia/libfslparser/libfslparser_3.0.7.bb

diff --git a/recipes-multimedia/libfslparser/libfslparser.inc b/recipes-multimedia/libfslparser/libfslparser.inc
index 6bfa502..66b1231 100644
--- a/recipes-multimedia/libfslparser/libfslparser.inc
+++ b/recipes-multimedia/libfslparser/libfslparser.inc
@@ -5,8 +5,6 @@ LICENSE = "Proprietary"
 SECTION = "multimedia"
 LIC_FILES_CHKSUM = "file://EULA.txt;md5=ea4d5c069d7aef0838a110409ea78a01"
 
-INC_PR = "r1"
-
 inherit fsl-eula-unpack autotools pkgconfig
 
 SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.bin;fsl-eula=true"
diff --git a/recipes-multimedia/libfslparser/libfslparser_3.0.5.bb b/recipes-multimedia/libfslparser/libfslparser_3.0.5.bb
deleted file mode 100644
index d31c34b..0000000
--- a/recipes-multimedia/libfslparser/libfslparser_3.0.5.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-# Copyright (C) 2012-2013 Freescale Semicondutors
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-LIC_FILES_CHKSUM = "file://EULA.txt;md5=ea4d5c069d7aef0838a110409ea78a01"
-
-require libfslparser.inc
-
-PR = "${INC_PR}.0"
-
-SRC_URI[md5sum] = "9fd8105530e1668ae91bd53a5b0d9807"
-SRC_URI[sha256sum] = "d3139e28e453d2af04439e607cd12ad17e117144049c9a8add05a5a142c654ae"
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-COMPATIBLE_MACHINE = "(mx6)"
diff --git a/recipes-multimedia/libfslparser/libfslparser_3.0.6.bb b/recipes-multimedia/libfslparser/libfslparser_3.0.6.bb
deleted file mode 100644
index 4ebee3d..0000000
--- a/recipes-multimedia/libfslparser/libfslparser_3.0.6.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-# Copyright (C) 2012-2013 Freescale Semicondutors
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-require libfslparser.inc
-
-PR = "${INC_PR}.0"
-
-SRC_URI[md5sum] = "eec29f1148f1e58fcceac11b2019280d"
-SRC_URI[sha256sum] = "37c5ba29e2c68636d20a48cf743098ea2f490566af19a13db6da221a2792254b"
-
-COMPATIBLE_MACHINE = "(mx28)"
diff --git a/recipes-multimedia/libfslparser/libfslparser_3.0.7.bb b/recipes-multimedia/libfslparser/libfslparser_3.0.7.bb
new file mode 100644
index 0000000..dcc3678
--- /dev/null
+++ b/recipes-multimedia/libfslparser/libfslparser_3.0.7.bb
@@ -0,0 +1,9 @@
+# Copyright (C) 2012-2013 Freescale Semicondutors
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+require libfslparser.inc
+
+SRC_URI[md5sum] = "320f6fd4bb45780e0e2b12ccce26113c"
+SRC_URI[sha256sum] = "292c16d2a2e4159c97ef720cfb89900f4fa606e0e9220e0734f4251265638bc2"
+
+COMPATIBLE_MACHINE = "(mx28|mx5|mx6)"
-- 
1.7.10.4




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

* [meta-fsl-arm][PATCH 11/13] gst-fsl-plugin: Update to version 3.0.7
  2013-05-23 19:22 [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7 Daiane Angolini
                   ` (9 preceding siblings ...)
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 10/13] libfslparser: " Daiane Angolini
@ 2013-05-23 19:22 ` Daiane Angolini
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 12/13] firmware-imx: Update to MX5 to version 3.0.35-4.0.0 Daiane Angolini
                   ` (4 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Daiane Angolini @ 2013-05-23 19:22 UTC (permalink / raw)
  To: meta-freescale

The 3.0.7 version is compatible with MX28, MX53 and MX6 SoCs so we
move them all to this release.

Change-Id: I3ebf1c4ad6d02e2886450bc9c3dcfb1df98b6160
Signed-off-by: Daiane Angolini <daiane.angolini@freescale.com>
---
 recipes-multimedia/gst-plugins/gst-fsl-plugin.inc  |   14 +--
 ...c-Use-pkg-config-sysroot-when-checking-fo.patch |   58 +++++++++++++
 .../gst-fsl-plugin/v4lsink_back_compatible.patch   |   90 ++++++++++++++++++++
 .../gst-fsl-plugin/vss_build_failed.patch          |   16 ++++
 .../gst-plugins/gst-fsl-plugin_2.0.3.bb            |   17 ----
 .../gst-plugins/gst-fsl-plugin_3.0.5.bb            |   19 -----
 .../gst-plugins/gst-fsl-plugin_3.0.6.bb            |   19 -----
 .../gst-plugins/gst-fsl-plugin_3.0.7.bb            |   16 ++++
 8 files changed, 187 insertions(+), 62 deletions(-)
 create mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin/configure.ac-Use-pkg-config-sysroot-when-checking-fo.patch
 create mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin/v4lsink_back_compatible.patch
 create mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin/vss_build_failed.patch
 delete mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin_2.0.3.bb
 delete mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.5.bb
 delete mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.6.bb
 create mode 100644 recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.7.bb

diff --git a/recipes-multimedia/gst-plugins/gst-fsl-plugin.inc b/recipes-multimedia/gst-plugins/gst-fsl-plugin.inc
index 04f02b0..264beb2 100644
--- a/recipes-multimedia/gst-plugins/gst-fsl-plugin.inc
+++ b/recipes-multimedia/gst-plugins/gst-fsl-plugin.inc
@@ -1,21 +1,21 @@
-# Copyright (C) 2011, 2012 Freescale Semiconductor
+# Copyright (C) 2011, 2012, 2013 Freescale Semiconductor
 # Released under the MIT license (see COPYING.MIT for the terms)
 
 DESCRIPTION = "Gstreamer freescale plugins"
 LICENSE = "GPLv2 & LGPLv2 & LGPLv2.1"
 SECTION = "multimedia"
-DEPENDS = "gstreamer gst-plugins-base imx-lib"
-INC_PR = "r9"
+
+DEPENDS = "gstreamer gst-plugins-base libfslcodec libfslparser"
+DEPENDS_append_mx5 = " imx-lib"
+DEPENDS_append_mx6 = " imx-lib libfslvpuwrap"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
                     file://COPYING-LGPL-2;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
                     file://COPYING-LGPL-2.1;md5=fbc093901857fcd118f065f900982c24"
 
-PACKAGE_NAME ?= "${PN}"
-
-S = "${WORKDIR}/${PACKAGE_NAME}-${PV}"
+S = "${WORKDIR}/gst-fsl-plugins-${PV}"
 
-SRC_URI = "${FSL_MIRROR}/${PACKAGE_NAME}-${PV}.tar.gz"
+SRC_URI = "${FSL_MIRROR}/gst-fsl-plugins-${PV}.tar.gz"
 
 inherit autotools pkgconfig
 
diff --git a/recipes-multimedia/gst-plugins/gst-fsl-plugin/configure.ac-Use-pkg-config-sysroot-when-checking-fo.patch b/recipes-multimedia/gst-plugins/gst-fsl-plugin/configure.ac-Use-pkg-config-sysroot-when-checking-fo.patch
new file mode 100644
index 0000000..cab9ff4
--- /dev/null
+++ b/recipes-multimedia/gst-plugins/gst-fsl-plugin/configure.ac-Use-pkg-config-sysroot-when-checking-fo.patch
@@ -0,0 +1,58 @@
+From 6f75a9f4ad108c1f4a3dff4dd08def174ab83a69 Mon Sep 17 00:00:00 2001
+From: Otavio Salvador <otavio@ossystems.com.br>
+Date: Tue, 21 May 2013 16:43:31 -0300
+Subject: [PATCH] configure.ac: Use pkg-config sysroot when checking for soname
+
+Upstream-Status: Pending
+
+Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
+---
+ configure.ac | 12 +++++-------
+ 1 file changed, 5 insertions(+), 7 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index e4cdb86..c12ceb4 100755
+--- a/configure.ac
++++ b/configure.ac
+@@ -16,7 +16,7 @@ AC_DEFUN([FIND_PARSER_SONAME],
+ [
+     AC_MSG_CHECKING([for lib_$1_parser_$2_elinux.3.0.so soname])
+     path=`$PKG_CONFIG --variable=libdir libfslparser`
+-    SONAME=$( $CC -print-file-name=$path/lib_$1_parser_$2_elinux.so | \
++    SONAME=$( $CC -print-file-name=$PKG_CONFIG_SYSROOT_DIR$path/lib_$1_parser_$2_elinux.so | \
+ 	    while read output; do objdump -p $output | \
+ 	    grep "SONAME" | \
+ 	    sed -e 's/ \+SONAME \+//'; done 2> /dev/null )
+@@ -27,16 +27,15 @@ AC_DEFUN([FIND_PARSER_SONAME],
+     else
+     	AC_MSG_RESULT([$SONAME])
+     fi
+-    apath=`echo $path | sed -e 's|.*/imx-mm/|/usr/lib/imx-mm/|'`
+-    $1_$2_SONAME=$apath/$SONAME
++    $1_$2_SONAME=$path/$SONAME
+     AC_SUBST($1_$2_SONAME)
+ ])
+ 
+ AC_DEFUN([FIND_ACODEC_SONAME],
+ [
+     AC_MSG_CHECKING([for lib_$1_wrap_$2_elinux.so soname])
+-    path=`$PKG_CONFIG --variable=libdir libfslaudiocodec | sed -e 's|.*/imx-mm/|/usr/lib/imx-mm/|'`
+-    SONAME=$( $CC -print-file-name=$path/wrap/lib_$1_wrap_$2_elinux.so | \
++    path=`$PKG_CONFIG --variable=libdir libfslaudiocodec`
++    SONAME=$( $CC -print-file-name=$PKG_CONFIG_SYSROOT_DIR$path/wrap/lib_$1_wrap_$2_elinux.so | \
+ 	    while read output; do objdump -p $output | \
+ 	    grep "SONAME" | \
+ 	    sed -e 's/ \+SONAME \+//'; done 2> /dev/null )
+@@ -48,8 +47,7 @@ AC_DEFUN([FIND_ACODEC_SONAME],
+     	AC_MSG_RESULT([$SONAME])
+     fi
+ 
+-    apath=`echo $path | sed -e 's|.*/imx-mm/|/usr/lib/imx-mm/|'`
+-    $1_$2_SONAME=$apath/wrap/$SONAME
++    $1_$2_SONAME=$path/wrap/$SONAME
+     AC_SUBST($1_$2_SONAME)
+ ])
+ 
+-- 
+1.8.1
+
diff --git a/recipes-multimedia/gst-plugins/gst-fsl-plugin/v4lsink_back_compatible.patch b/recipes-multimedia/gst-plugins/gst-fsl-plugin/v4lsink_back_compatible.patch
new file mode 100644
index 0000000..fecc01e
--- /dev/null
+++ b/recipes-multimedia/gst-plugins/gst-fsl-plugin/v4lsink_back_compatible.patch
@@ -0,0 +1,90 @@
+Make v4lsink backward compatible
+
+Upstream-Status: Pending
+
+diff --git a/src/misc/v4l_sink/src/mfw_gst_v4lsink.c b/src/misc/v4l_sink/src/mfw_gst_v4lsink.c
+index c9ec887..da2bac1 100644
+--- a/src/misc/v4l_sink/src/mfw_gst_v4lsink.c
++++ b/src/misc/v4l_sink/src/mfw_gst_v4lsink.c
+@@ -310,6 +310,9 @@ mfw_gst_v4l2sink_query_support_formats ()
+ 
+   ret = TRUE;
+ 
++  if(fmtdesc.index == 0)
++      ret = FALSE;
++
+ fail:
+   return ret;
+ 
+@@ -2170,19 +2173,60 @@ mfw_gst_v4lsink_base_init (gpointer g_class)
+   GstCaps *capslist;
+   GstPadTemplate *sink_template = NULL;
+ 
+-  mfw_gst_v4l2sink_query_support_formats ();
+-  /* make a list of all available caps */
+-  capslist = gst_caps_new_empty ();
++  if(!mfw_gst_v4l2sink_query_support_formats ()) {
++      // failed query caps, use default setting
++      gint i;
++      guint32 formats[] = {
++          GST_MAKE_FOURCC ('I', '4', '2', '0'),
++          GST_MAKE_FOURCC ('Y', 'V', '1', '2'),
++          GST_MAKE_FOURCC ('U', 'Y', 'V', 'Y'),
++          GST_MAKE_FOURCC ('Y', 'U', 'Y', 'V'),
++          GST_MAKE_FOURCC ('Y', 'U', 'Y', '2'),
++          GST_MAKE_FOURCC ('N', 'V', '1', '2'),
++          GST_MAKE_FOURCC ('4', '2', '2', 'P'),
++          GST_MAKE_FOURCC ('Y', '4', '2', 'B')
+ 
+-  MfwV4lFmtMap * map = g_v4lfmt_maps;
++      };
+ 
+-  while (map->mime){
+-    if (map->enable){
+-      GstStructure * structure = gst_structure_from_string(map->mime, NULL);
+-      gst_caps_append_structure (capslist, structure);
+-    }
+-    map++;
+-  };
++      /* make a list of all available caps */
++      capslist = gst_caps_new_empty ();
++      for (i = 0; i < G_N_ELEMENTS (formats); i++) {
++          gst_caps_append_structure (capslist,
++                  gst_structure_new ("video/x-raw-yuv",
++                      "format",
++                      GST_TYPE_FOURCC,
++                      formats[i], "width",
++                      GST_TYPE_INT_RANGE, 1,
++                      G_MAXINT, "height",
++                      GST_TYPE_INT_RANGE, 1,
++                      G_MAXINT, "framerate",
++                      GST_TYPE_FRACTION_RANGE,
++                      0, 1, G_MAXINT, 1,
++                      NULL));
++      }
++      /* Add RGB support */
++      gst_caps_append_structure (capslist,
++              gst_structure_new ("video/x-raw-rgb",
++                  "bpp", GST_TYPE_INT_RANGE,
++                  1, 32, "depth",
++                  GST_TYPE_INT_RANGE, 1, 32,
++                  NULL));
++
++  }
++  else {
++      /* make a list of all available caps */
++      capslist = gst_caps_new_empty ();
++
++      MfwV4lFmtMap * map = g_v4lfmt_maps;
++
++      while (map->mime){
++          if (map->enable){
++              GstStructure * structure = gst_structure_from_string(map->mime, NULL);
++              gst_caps_append_structure (capslist, structure);
++          }
++          map++;
++      };
++  }
+ 
+   sink_template = gst_pad_template_new ("sink",
+       GST_PAD_SINK, GST_PAD_ALWAYS, capslist);
diff --git a/recipes-multimedia/gst-plugins/gst-fsl-plugin/vss_build_failed.patch b/recipes-multimedia/gst-plugins/gst-fsl-plugin/vss_build_failed.patch
new file mode 100644
index 0000000..c059234
--- /dev/null
+++ b/recipes-multimedia/gst-plugins/gst-fsl-plugin/vss_build_failed.patch
@@ -0,0 +1,16 @@
+diff --git a/libs/Makefile.am b/libs/Makefile.am
+index e9d3d54..89f79be 100755
+--- a/libs/Makefile.am
++++ b/libs/Makefile.am
+@@ -36,6 +36,11 @@ endif
+ 
+ 
+ libgstfsl_@GST_MAJORMINOR@_la_CFLAGS  = $(GST_BASE_CFLAGS) $(IPU_CFLAGS) -I../inc/common
++
++if PLATFORM_IS_MX5X
++libgstfsl_@GST_MAJORMINOR@_la_CFLAGS  += -DIPULIB
++endif
++
+ libgstfsl_@GST_MAJORMINOR@_la_LDFLAGS = -version-info @GSTMXLIBS_VERSION@
+ libgstfsl_@GST_MAJORMINOR@_la_LIBADD = $(GST_BASE_LIBS) -lgstvideo-@GST_MAJORMINOR@ -lgstinterfaces-$(GST_MAJORMINOR) $(IPU_LIBS)
+ 
diff --git a/recipes-multimedia/gst-plugins/gst-fsl-plugin_2.0.3.bb b/recipes-multimedia/gst-plugins/gst-fsl-plugin_2.0.3.bb
deleted file mode 100644
index f16e6c6..0000000
--- a/recipes-multimedia/gst-plugins/gst-fsl-plugin_2.0.3.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-# Copyright (C) 2011, 2012 Freescale Semicondutor
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-require gst-fsl-plugin.inc
-DEPENDS += "fsl-mm-codeclib fsl-mm-flv-codeclib fsl-mm-mp3enc-codeclib"
-RDEPENDS_${PN} = "fsl-mm-codeclib fsl-mm-flv-codeclib fsl-mm-mp3enc-codeclib"
-
-PR = "${INC_PR}.5"
-
-SRC_URI += "file://fix_segment_fault_in_v4lsink_for_yocto.patch \
-            file://fix-missing-sys-types-h.patch \
-            file://Use-librarys-SONAME-in-dlopen.patch"
-
-SRC_URI[md5sum] = "036a8e86031b0670f41b10796e268f9e"
-SRC_URI[sha256sum] = "ee024e6fe94ce309b10dc89ab247d1bbcf8ae9cc8006178c96101ce2d4d164a0"
-
-COMPATIBLE_MACHINE = "(mx5)"
diff --git a/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.5.bb b/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.5.bb
deleted file mode 100644
index 36fbe41..0000000
--- a/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.5.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright (C) 2012-2013 Freescale Semicondutor
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-require gst-fsl-plugin.inc
-
-DEPENDS += "libfslcodec libfslvpuwrap libfslparser"
-
-PR = "${INC_PR}.3"
-
-SRC_URI += "file://fix-missing-sys-types-h.patch \
-            file://Link-with-the-Real-Time-Extension-lib.patch \
-           "
-
-PACKAGE_NAME = "gst-fsl-plugins"
-
-SRC_URI[md5sum] = "fd7c9db129cbcc4dc79b7dd832061594"
-SRC_URI[sha256sum] = "546deb407993f726ef4e140f5bd734d612d5f8872c832ac820957f667f22306e"
-
-COMPATIBLE_MACHINE = "(mx6)"
diff --git a/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.6.bb b/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.6.bb
deleted file mode 100644
index 77baa9a..0000000
--- a/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.6.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright (C) 2012-2013 Freescale Semicondutor
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-require gst-fsl-plugin.inc
-
-DEPENDS = "virtual/kernel gstreamer gst-plugins-base libfslcodec libfslparser"
-
-PR = "${INC_PR}.1"
-
-SRC_URI += "file://fix-missing-sys-types-h.patch \
-            file://Link-with-the-Real-Time-Extension-lib.patch \
-           "
-
-PACKAGE_NAME = "gst-fsl-plugins"
-
-SRC_URI[md5sum] = "5416a727e8b0bd94eec077ac7d70aae7"
-SRC_URI[sha256sum] = "fdb0b5ab964f607a93664412702a131931da8ef0b557597cbf161c3d9c9d0c12"
-
-COMPATIBLE_MACHINE = "(mx28)"
diff --git a/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.7.bb b/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.7.bb
new file mode 100644
index 0000000..097b8cb
--- /dev/null
+++ b/recipes-multimedia/gst-plugins/gst-fsl-plugin_3.0.7.bb
@@ -0,0 +1,16 @@
+# Copyright (C) 2012-2013 Freescale Semicondutor
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+require gst-fsl-plugin.inc
+
+SRC_URI[md5sum] = "08be9263c609b90e3b3e2e3aa888cd29"
+SRC_URI[sha256sum] = "f3cd4a51d1eb60c21219d8d94daa832e47fc51d8f4618bb79cdf36bcca0a0f7c"
+
+SRC_URI_append += "file://fix-missing-sys-types-h.patch \
+                   file://Link-with-the-Real-Time-Extension-lib.patch \
+                   file://vss_build_failed.patch \
+                   file://configure.ac-Use-pkg-config-sysroot-when-checking-fo.patch \
+                   file://v4lsink_back_compatible.patch \
+                  "
+
+COMPATIBLE_MACHINE = "(mx28|mx5|mx6)"
-- 
1.7.10.4




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

* [meta-fsl-arm][PATCH 12/13] firmware-imx: Update to MX5 to version 3.0.35-4.0.0
  2013-05-23 19:22 [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7 Daiane Angolini
                   ` (10 preceding siblings ...)
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 11/13] gst-fsl-plugin: " Daiane Angolini
@ 2013-05-23 19:22 ` Daiane Angolini
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 13/13] fsl-mm-core: Remove old multimedia packages for MX5 Daiane Angolini
                   ` (3 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Daiane Angolini @ 2013-05-23 19:22 UTC (permalink / raw)
  To: meta-freescale

Version 3.0.35-4.0.0 is compatible with MX5 SOC FAMILY
Remove old version (11.09.01) and patches for this version

Change-Id: I27b3d7c94c68459c32b151054b5f1b175dd75bfb
Signed-off-by: Daiane Angolini <daiane.angolini@freescale.com>
---
 .../firmware-imx-11.09.01/vpu_fw_imx51.bin             |  Bin 147472 -> 0 bytes
 .../firmware-imx-11.09.01/vpu_fw_imx53.bin             |  Bin 147472 -> 0 bytes
 recipes-bsp/firmware-imx/firmware-imx_11.09.01.bb      |   16 ----------------
 recipes-bsp/firmware-imx/firmware-imx_3.0.35-4.0.0.bb  |    2 +-
 4 files changed, 1 insertion(+), 17 deletions(-)
 delete mode 100644 recipes-bsp/firmware-imx/firmware-imx-11.09.01/vpu_fw_imx51.bin
 delete mode 100644 recipes-bsp/firmware-imx/firmware-imx-11.09.01/vpu_fw_imx53.bin
 delete mode 100644 recipes-bsp/firmware-imx/firmware-imx_11.09.01.bb

diff --git a/recipes-bsp/firmware-imx/firmware-imx-11.09.01/vpu_fw_imx51.bin b/recipes-bsp/firmware-imx/firmware-imx-11.09.01/vpu_fw_imx51.bin
deleted file mode 100644
index 9a2dcf5fc953e2db7731bd7faef98b111a31d5ea..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 147472
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%0A`@p|lt79E+VDr}l0ky*m||yFFQZ
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
LCq*TfDJ(n(s!k?|

diff --git a/recipes-bsp/firmware-imx/firmware-imx-11.09.01/vpu_fw_imx53.bin b/recipes-bsp/firmware-imx/firmware-imx-11.09.01/vpu_fw_imx53.bin
deleted file mode 100644
index b9d70f72613b36a07598361bea6cddfa9af7daa9..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 147472
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
R0sR0nzzuK$8~~f`{{s=g=oJ6}

diff --git a/recipes-bsp/firmware-imx/firmware-imx_11.09.01.bb b/recipes-bsp/firmware-imx/firmware-imx_11.09.01.bb
deleted file mode 100644
index f7d7c6e..0000000
--- a/recipes-bsp/firmware-imx/firmware-imx_11.09.01.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-require firmware-imx.inc
-
-PR = "${INC_PR}.2"
-
-SRC_URI += "file://vpu_fw_imx51.bin \
-            file://vpu_fw_imx53.bin"
-
-SRC_URI[md5sum] = "64c77a0f061fe7e628d26fda3c5c7f5a"
-SRC_URI[sha256sum] = "072e9b712db691a799182d29473d5b7ed9dc9d095a6d0053ef42a84db7709a42"
-
-do_patch() {
-	cp ${WORKDIR}/vpu_fw_imx51.bin ${S}/firmware/vpu/
-	cp ${WORKDIR}/vpu_fw_imx53.bin ${S}/firmware/vpu/
-}
-
-COMPATIBLE_MACHINE = "(mx5)"
diff --git a/recipes-bsp/firmware-imx/firmware-imx_3.0.35-4.0.0.bb b/recipes-bsp/firmware-imx/firmware-imx_3.0.35-4.0.0.bb
index 5ad962b..fd88639 100644
--- a/recipes-bsp/firmware-imx/firmware-imx_3.0.35-4.0.0.bb
+++ b/recipes-bsp/firmware-imx/firmware-imx_3.0.35-4.0.0.bb
@@ -6,4 +6,4 @@ PE="1"
 SRC_URI[md5sum] = "f23ce8437e141c1d20e3bf175eb3af7f"
 SRC_URI[sha256sum] = "5aaf5e91dbec8072fec613218c0fc939d9a59e74df53054f49ab31f1f0dd25d9"
 
-COMPATIBLE_MACHINE = "(mx6)"
+COMPATIBLE_MACHINE = "(mx5|mx6)"
-- 
1.7.10.4




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

* [meta-fsl-arm][PATCH 13/13] fsl-mm-core: Remove old multimedia packages for MX5
  2013-05-23 19:22 [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7 Daiane Angolini
                   ` (11 preceding siblings ...)
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 12/13] firmware-imx: Update to MX5 to version 3.0.35-4.0.0 Daiane Angolini
@ 2013-05-23 19:22 ` Daiane Angolini
  2013-05-23 19:31 ` [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7 Otavio Salvador
                   ` (2 subsequent siblings)
  15 siblings, 0 replies; 20+ messages in thread
From: Daiane Angolini @ 2013-05-23 19:22 UTC (permalink / raw)
  To: meta-freescale

Remove fsl-mm-codeclib, fsl-mm-codeclib, fsl-mm-flv-codeclib
and fsl-mm-mp3enc-codeclib.
In new version, all packages are covered by only libfslcodec

Change-Id: If7c8eaaad5e493410e968911734eb00a35711ff7
Signed-off-by: Daiane Angolini <daiane.angolini@freescale.com>
---
 recipes-multimedia/fsl-mm-core/fsl-mm-codeclib.inc |   31 -----------------
 .../fsl-mm-core/fsl-mm-codeclib_2.0.3.bb           |   35 --------------------
 .../fsl-mm-core/fsl-mm-flv-codeclib_2.0.3.bb       |   22 ------------
 .../fsl-mm-core/fsl-mm-mp3enc-codeclib_2.0.3.bb    |   18 ----------
 4 files changed, 106 deletions(-)
 delete mode 100644 recipes-multimedia/fsl-mm-core/fsl-mm-codeclib.inc
 delete mode 100644 recipes-multimedia/fsl-mm-core/fsl-mm-codeclib_2.0.3.bb
 delete mode 100644 recipes-multimedia/fsl-mm-core/fsl-mm-flv-codeclib_2.0.3.bb
 delete mode 100644 recipes-multimedia/fsl-mm-core/fsl-mm-mp3enc-codeclib_2.0.3.bb

diff --git a/recipes-multimedia/fsl-mm-core/fsl-mm-codeclib.inc b/recipes-multimedia/fsl-mm-core/fsl-mm-codeclib.inc
deleted file mode 100644
index fedc022..0000000
--- a/recipes-multimedia/fsl-mm-core/fsl-mm-codeclib.inc
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright (C) 2011-2013 Freescale Semiconductor
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-DESCRIPTION = "Freescale Multimedia codec libs"
-LICENSE = "Proprietary"
-SECTION = "multimedia"
-
-INC_PR = "r4"
-
-SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.bin;fsl-eula=true"
-
-inherit fsl-eula-unpack pkgconfig
-
-# FIXME: Quiet down the warnings during package
-INSANE_SKIP_${PN} = "ldflags textrel"
-INSANE_SKIP_${PN}-dev = "ldflags textrel"
-
-do_install () {
-    install -d ${D}${includedir} ${D}${libdir}
-    cp -ar ${S}/release/lib/* ${D}${libdir}
-    rm -rf ${D}${includedir}/mm_ghdr
-    cp -r ${S}/ghdr* ${D}${includedir}
-    mv ${D}${includedir}/ghdr ${D}${includedir}/mm_ghdr
-
-    # FIXME: Fix permissions
-    find ${D} -type f -exec chmod 0644 '{}' ';'
-}
-
-FILES_${PN} += "${libdir}/lib*_elinux.3.0.1.07.00"
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/recipes-multimedia/fsl-mm-core/fsl-mm-codeclib_2.0.3.bb b/recipes-multimedia/fsl-mm-core/fsl-mm-codeclib_2.0.3.bb
deleted file mode 100644
index 42cf136..0000000
--- a/recipes-multimedia/fsl-mm-core/fsl-mm-codeclib_2.0.3.bb
+++ /dev/null
@@ -1,35 +0,0 @@
-include fsl-mm-codeclib.inc
-
-PR = "${INC_PR}.0"
-
-LIC_FILES_CHKSUM = "file://docs/EULA.txt;md5=ea4d5c069d7aef0838a110409ea78a01"
-
-SRC_URI[md5sum] = "9ee06c147f635d1f904d53fc193150cc"
-SRC_URI[sha256sum] = "427436c0ab7795204a23150bac19cf261a88693e9acd9d3eab5c06c60ffe55bd"
-
-do_install_append() {
-    # FIXME: Same pkgconfig file is provided in every source package
-    #        so we install it just here and all other packages need to
-    #        depends on fsl-mm-codeclib-dev explicitly.
-    install -d ${D}${libdir}/pkgconfig
-    install -m 0644 ${S}/pkgconfig/fsl-mm-core.pc ${D}${libdir}/pkgconfig
-}
-
-# FIXME: Install files which has no sonames
-PACKAGES = "${PN} ${PN}-dev"
-FILES_${PN} += " \
-    ${libdir}/lib_aac_parser_arm11_elinux.so \
-    ${libdir}/lib_bmp_dec_arm11_elinux.so \
-    ${libdir}/lib_deinterlace_arm11_elinux.so \
-    ${libdir}/lib_flac_parser_arm11_elinux.so \
-    ${libdir}/lib_gif_dec_arm11_elinux.so \
-    ${libdir}/lib_id3_parser_arm11_elinux.so \
-    ${libdir}/lib_jpeg_enc_arm11_elinux.so \
-    ${libdir}/lib_mp3_parser_v2_arm11_elinux.so \
-    ${libdir}/lib_png_dec_arm11_elinux.so \
-    ${libdir}/lib_src_ppp_arm11_elinux.so \
-    ${libdir}/lib_wav_parser_arm11_elinux.so \
-    ${libdir}/libmpeg4_encoder_arm11_ELINUX.so \
-"
-
-COMPATIBLE_MACHINE = "(mx5)"
diff --git a/recipes-multimedia/fsl-mm-core/fsl-mm-flv-codeclib_2.0.3.bb b/recipes-multimedia/fsl-mm-core/fsl-mm-flv-codeclib_2.0.3.bb
deleted file mode 100644
index 75e07f5..0000000
--- a/recipes-multimedia/fsl-mm-core/fsl-mm-flv-codeclib_2.0.3.bb
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright (C) 2011-2013 Freescale Semicondutors <aalonso@freescale.com>
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-include fsl-mm-codeclib.inc
-
-PR = "${INC_PR}.0"
-LIC_FILES_CHKSUM = "file://ghdr/common/fsl_types.h;endline=13;md5=b805ce4a390c94d002ef86bd15ceafd4"
-
-SRC_URI[md5sum] = "b0244d881f73557be9221e6534c239be"
-SRC_URI[sha256sum] = "737399c76e8b991ebb76c07599b83da6a185211d88b95d9a9b4245f6d7fccec2"
-
-do_install_append() {
-    # FIXME: Those files are deployed in fsl-mm-codeclib
-    rm -r ${D}${includedir}/mm_ghdr/common
-}
-
-# FIXME: Same pkgconfig file is provided in every source so we need to
-#        depends on 'fsl-mm-codeclib-dev' explicitly as it is
-#        installed just on it.
-RDEPENDS_${PN}-dev = "fsl-mm-codeclib-dev"
-
-COMPATIBLE_MACHINE = "(mx5)"
diff --git a/recipes-multimedia/fsl-mm-core/fsl-mm-mp3enc-codeclib_2.0.3.bb b/recipes-multimedia/fsl-mm-core/fsl-mm-mp3enc-codeclib_2.0.3.bb
deleted file mode 100644
index eb781cf..0000000
--- a/recipes-multimedia/fsl-mm-core/fsl-mm-mp3enc-codeclib_2.0.3.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright (C) 2011-2013 Freescale Semicondutors <aalonso@freescale.com>
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-include fsl-mm-codeclib.inc
-
-PR = "${INC_PR}.0"
-
-LIC_FILES_CHKSUM = "file://ghdr/mp3_enc_interface.h;endline=11;md5=545a1927139b4739d8980c49954b6b95"
-
-SRC_URI[md5sum] = "049611d9f76b524b9fa9521527ba3235"
-SRC_URI[sha256sum] = "e3712fa45a8f42617773678d45ab7ae0f20150a4d904f1e73afa8baa1941cf99"
-
-# FIXME: Same pkgconfig file is provided in every source so we need to
-#        depends on 'fsl-mm-codeclib-dev' explicitly as it is
-#        installed just on it.
-RDEPENDS_${PN}-dev += "fsl-mm-codeclib-dev"
-
-COMPATIBLE_MACHINE = "(mx5)"
-- 
1.7.10.4




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

* Re: [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7
  2013-05-23 19:22 [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7 Daiane Angolini
                   ` (12 preceding siblings ...)
  2013-05-23 19:22 ` [meta-fsl-arm][PATCH 13/13] fsl-mm-core: Remove old multimedia packages for MX5 Daiane Angolini
@ 2013-05-23 19:31 ` Otavio Salvador
  2013-05-24 10:01 ` [PATCH " Javier Viguera
  2013-05-30 18:59 ` [meta-fsl-arm][PATCH " Otavio Salvador
  15 siblings, 0 replies; 20+ messages in thread
From: Otavio Salvador @ 2013-05-23 19:31 UTC (permalink / raw)
  To: Daiane Angolini; +Cc: meta-freescale

[-- Attachment #1: Type: text/plain, Size: 1006 bytes --]

On Thu, May 23, 2013 at 4:22 PM, Daiane Angolini <
daiane.angolini@freescale.com> wrote:

> Update the gstreamer plugins to version 3.0.7 provided by
> Freescale (from BSP 3.0.35-4.0.0).
>
> The 3.0.7 version is compatible with MX28, MX5 and MX6.
>
> Update imx-lib to version 3.0.35-4.0.0 (it's compatible with MX6 only)
>
> Remove old gstreamer plugins versions.
>
> I did test it on imx6qsabresd, imx53qsb and imx28evk. I played
> *one* mp3 audio file and *one* avi/h264/aac movie file. I know
> it's not a complete media test, but I think it does mean the plugins
> are rigthly installed.
>
> Fixes [YOCTO #4449]
>

For easy test, I made a bundle so it is easier to apply the whole set for
testing:

http://patches.openembedded.org/bundle/otavio/vpu-3.0.7-update-v1/

Regards,

-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://projetos.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750

[-- Attachment #2: Type: text/html, Size: 1743 bytes --]

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

* Re: [PATCH 00/13] Update multimedia to version 3.0.7
  2013-05-23 19:22 [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7 Daiane Angolini
                   ` (13 preceding siblings ...)
  2013-05-23 19:31 ` [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7 Otavio Salvador
@ 2013-05-24 10:01 ` Javier Viguera
  2013-05-24 11:34   ` Daiane Angolini
  2013-05-30 18:59 ` [meta-fsl-arm][PATCH " Otavio Salvador
  15 siblings, 1 reply; 20+ messages in thread
From: Javier Viguera @ 2013-05-24 10:01 UTC (permalink / raw)
  To: meta-freescale


On 23/05/13 21:22, Daiane Angolini wrote:
> Update the gstreamer plugins to version 3.0.7 provided by
> Freescale (from BSP 3.0.35-4.0.0).

Hi Daiane,

According to FSL website this package seems to be for MX6:

"L3.0.35_4.0.0_MM_CODECS
i.MX 6Quad, i.MX 6Dual, i.MX 6DualLite and i.MX 6Solo Linux Multimedia 
Codecs Sources"

Your patchset removes the old MX5 multimedia kit support (e.g. 
gst-fsl-plugin-2.0.3).

Could you confirm that this package is valid for MX51/MX53? I mean using 
a Linux kernel version *2.6.35* (which afaik is the official FSL kernel 
for MX5 platforms)

-
Javier Viguera
Software Engineer
Digi International® Spain S.A.U.


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

* Re: [PATCH 00/13] Update multimedia to version 3.0.7
  2013-05-24 10:01 ` [PATCH " Javier Viguera
@ 2013-05-24 11:34   ` Daiane Angolini
  2013-05-24 15:31     ` Javier Viguera
  0 siblings, 1 reply; 20+ messages in thread
From: Daiane Angolini @ 2013-05-24 11:34 UTC (permalink / raw)
  To: Javier Viguera; +Cc: meta-freescale

On 05/24/2013 07:01 AM, Javier Viguera wrote:
>
> On 23/05/13 21:22, Daiane Angolini wrote:
>> Update the gstreamer plugins to version 3.0.7 provided by
>> Freescale (from BSP 3.0.35-4.0.0).
>
> Hi Daiane,
>
> According to FSL website this package seems to be for MX6:
>
> "L3.0.35_4.0.0_MM_CODECS
> i.MX 6Quad, i.MX 6Dual, i.MX 6DualLite and i.MX 6Solo Linux Multimedia
> Codecs Sources"
>
> Your patchset removes the old MX5 multimedia kit support (e.g.
> gst-fsl-plugin-2.0.3).
>
> Could you confirm that this package is valid for MX51/MX53? I mean using
> a Linux kernel version *2.6.35* (which afaik is the official FSL kernel
> for MX5 platforms)

We worked to adapt 3.0.7 mm packages to MX5 and MX28 (it was minor 
changes, mainly for kernel api and Makefile, fixes that we faced during 
the yocto integration).

I'm working on a complete test of this version on imx53qsb and imx28evk 
internally, and I'm sure it will generate some bugfixes that will be 
integrated on master as soon as test cycle is done.

My plan is to have it on master, so more people will be able to test it 
for more boards, (my test range is imx53qsb and imx28evk. and it do not 
include any imx6)

It's the first time I see a MM package that is supposed to support so 
many boards, I would like some help on testing it as much as possible.

I removed the old MX5 and MX28 mm packages because I believe 3.0.7 is 
good enough to support mx6/mx53/mx28. Do you think we need a "less 
aggressive" approach?


-- 
Daiane



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

* Re: [PATCH 00/13] Update multimedia to version 3.0.7
  2013-05-24 11:34   ` Daiane Angolini
@ 2013-05-24 15:31     ` Javier Viguera
  2013-05-24 15:50       ` Daiane Angolini
  0 siblings, 1 reply; 20+ messages in thread
From: Javier Viguera @ 2013-05-24 15:31 UTC (permalink / raw)
  To: Daiane Angolini; +Cc: meta-freescale



On 24/05/13 13:34, Daiane Angolini wrote:
> I removed the old MX5 and MX28 mm packages because I believe 3.0.7 is
> good enough to support mx6/mx53/mx28. Do you think we need a "less
> aggressive" approach?

Hi Daiane,

No, i think is probably the correct thing to do. Having to support 
different versions of the multimedia kit for each platform is more work 
than to have just one version for all the platforms. I would do the same.

Just wanted to confirm that the tests you have done on an imx53qsb is 
with kernel 2.6.35 (which as far as i know is the official version for 
mx53 according to FSL).

-
Javier Viguera
Software Engineer
Digi International® Spain S.A.U.


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

* Re: [PATCH 00/13] Update multimedia to version 3.0.7
  2013-05-24 15:31     ` Javier Viguera
@ 2013-05-24 15:50       ` Daiane Angolini
  0 siblings, 0 replies; 20+ messages in thread
From: Daiane Angolini @ 2013-05-24 15:50 UTC (permalink / raw)
  To: Javier Viguera; +Cc: meta-freescale

On 05/24/2013 12:31 PM, Javier Viguera wrote:
>
>
> On 24/05/13 13:34, Daiane Angolini wrote:
>> I removed the old MX5 and MX28 mm packages because I believe 3.0.7 is
>> good enough to support mx6/mx53/mx28. Do you think we need a "less
>> aggressive" approach?
>
> Hi Daiane,
>
> No, i think is probably the correct thing to do. Having to support
> different versions of the multimedia kit for each platform is more work
> than to have just one version for all the platforms. I would do the same.
>
> Just wanted to confirm that the tests you have done on an imx53qsb is
> with kernel 2.6.35 (which as far as i know is the official version for
> mx53 according to FSL).

Yes, my tests for imx53qsb was using 2.6.35 kernel

The only official version for imx53.

;-)

-- 
Daiane



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

* Re: [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7
  2013-05-23 19:22 [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7 Daiane Angolini
                   ` (14 preceding siblings ...)
  2013-05-24 10:01 ` [PATCH " Javier Viguera
@ 2013-05-30 18:59 ` Otavio Salvador
  15 siblings, 0 replies; 20+ messages in thread
From: Otavio Salvador @ 2013-05-30 18:59 UTC (permalink / raw)
  To: Daiane Angolini; +Cc: meta-freescale

[-- Attachment #1: Type: text/plain, Size: 868 bytes --]

On Thu, May 23, 2013 at 4:22 PM, Daiane Angolini <
daiane.angolini@freescale.com> wrote:

> Update the gstreamer plugins to version 3.0.7 provided by
> Freescale (from BSP 3.0.35-4.0.0).
>
> The 3.0.7 version is compatible with MX28, MX5 and MX6.
>
> Update imx-lib to version 3.0.35-4.0.0 (it's compatible with MX6 only)
>
> Remove old gstreamer plugins versions.
>
> I did test it on imx6qsabresd, imx53qsb and imx28evk. I played
> *one* mp3 audio file and *one* avi/h264/aac movie file. I know
> it's not a complete media test, but I think it does mean the plugins
> are rigthly installed.
>
> Fixes [YOCTO #4449]
>

All serie has been applied.

-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://projetos.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750

[-- Attachment #2: Type: text/html, Size: 1389 bytes --]

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

end of thread, other threads:[~2013-05-30 18:59 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-05-23 19:22 [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7 Daiane Angolini
2013-05-23 19:22 ` [meta-fsl-arm][PATCH 01/13] gst-fsl-plugin: Set CROSS_ROOT so the 'ipu.h' can be found Daiane Angolini
2013-05-23 19:22 ` [meta-fsl-arm][PATCH 02/13] gst-fsl-plugin: Add runtime depends on gst-plugins-good-id3demux Daiane Angolini
2013-05-23 19:22 ` [meta-fsl-arm][PATCH 03/13] libfslcodec: Group ARM12, ARM11 and ARM9 packages Daiane Angolini
2013-05-23 19:22 ` [meta-fsl-arm][PATCH 04/13] libfslcodec: Add libfslcodec-meta which includes all codecs Daiane Angolini
2013-05-23 19:22 ` [meta-fsl-arm][PATCH 05/13] firmware-imx: Update to version 3.0.35-4.0.0 Daiane Angolini
2013-05-23 19:22 ` [meta-fsl-arm][PATCH 06/13] imx-lib: " Daiane Angolini
2013-05-23 19:22 ` [meta-fsl-arm][PATCH 07/13] imx-lib: Move it to recipe-bsp dir Daiane Angolini
2013-05-23 19:22 ` [meta-fsl-arm][PATCH 08/13] libfslvpuwrap: Update to version 1.0.35 Daiane Angolini
2013-05-23 19:22 ` [meta-fsl-arm][PATCH 09/13] libfslcodec: Update to version 3.0.7 Daiane Angolini
2013-05-23 19:22 ` [meta-fsl-arm][PATCH 10/13] libfslparser: " Daiane Angolini
2013-05-23 19:22 ` [meta-fsl-arm][PATCH 11/13] gst-fsl-plugin: " Daiane Angolini
2013-05-23 19:22 ` [meta-fsl-arm][PATCH 12/13] firmware-imx: Update to MX5 to version 3.0.35-4.0.0 Daiane Angolini
2013-05-23 19:22 ` [meta-fsl-arm][PATCH 13/13] fsl-mm-core: Remove old multimedia packages for MX5 Daiane Angolini
2013-05-23 19:31 ` [meta-fsl-arm][PATCH 00/13] Update multimedia to version 3.0.7 Otavio Salvador
2013-05-24 10:01 ` [PATCH " Javier Viguera
2013-05-24 11:34   ` Daiane Angolini
2013-05-24 15:31     ` Javier Viguera
2013-05-24 15:50       ` Daiane Angolini
2013-05-30 18:59 ` [meta-fsl-arm][PATCH " Otavio Salvador

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.