From patchwork Wed Mar 9 15:05:09 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gary Bisson X-Patchwork-Id: 595090 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by ozlabs.org (Postfix) with ESMTP id 5CF4814031F for ; Thu, 10 Mar 2016 02:05:32 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=boundarydevices-com.20150623.gappssmtp.com header.i=@boundarydevices-com.20150623.gappssmtp.com header.b=SM2NBMMV; dkim-atps=neutral Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 4E7C088E09; Wed, 9 Mar 2016 15:05:31 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id zc0S7HC9q0qg; Wed, 9 Mar 2016 15:05:29 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by whitealder.osuosl.org (Postfix) with ESMTP id 8EE0D91E82; Wed, 9 Mar 2016 15:05:29 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id ABF7C1C0D9C for ; Wed, 9 Mar 2016 15:05:28 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id A5A0C91E82 for ; Wed, 9 Mar 2016 15:05:28 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id K+pjwkgP9Xhn for ; Wed, 9 Mar 2016 15:05:27 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wm0-f46.google.com (mail-wm0-f46.google.com [74.125.82.46]) by whitealder.osuosl.org (Postfix) with ESMTPS id 915A388E09 for ; Wed, 9 Mar 2016 15:05:27 +0000 (UTC) Received: by mail-wm0-f46.google.com with SMTP id l68so182741870wml.0 for ; Wed, 09 Mar 2016 07:05:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=boundarydevices-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id; bh=uGTrWz4gKtFNeE5Pq5fFN2sABlUnA9+NmRvmNq0P+k8=; b=SM2NBMMVGu2aieAapqHfRkzpyp7xZojrjw/01bRMWRM4Cu9nyA86CHPW6ceabvJ4tW 0JvKmLCL0CQwKRedcksItKpzY08fPjlvP/zYFjDj8cRNw+Rr0bTDEr77+jNOEVCi8s3c b8YuMMAASLTYxJuImX4BWNfZbwr3CkLF2z54AeFSUqBuBKBu/1qAmGjvfw+wgmWYt9Ea KUk5CDXymUzmYva1zyjvHIalUf6Rn+jEMFqY0m8xakCiWdCaNnt9vZxv82Q/bQEENfW3 ULw0sLpDk8RfBHyIKoPATfopL9+hEgClqBfu0Ut7RlGxLnQaUnO+Nyn3VrEVVZ6whAbL IYng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=uGTrWz4gKtFNeE5Pq5fFN2sABlUnA9+NmRvmNq0P+k8=; b=Q24JVEy5y+65uTkYDC94c2InwCKsg81I5UrTMhZ1vvPYH5aNlCrjmPrxlu5YXSCFm1 acsjqN6oogM8WZSLBrNr3ON5j+RgehC08wp8zdFq54q3+W3RPvVGN6i4U4ERtxhr7pmr WDXdw8GrHRxoF7yrJ0+yzdkXWGtmCjbAwq5CjsKjGpPgNIzE0TEu4rl2d3t5b0xVeeP9 mv+6vHeNunTY8LG38XNTIaLY6cgx0jh6b36QAW6p+wjWe9VTok2620HwtbWwPnJfhCxQ gAvZnnhNMlI6rVw5W0eiF1L5hscj8zN4ZCXSPtDGgiGkZhbhN/W+W5NGhtkQ1btpqtsn HJaQ== X-Gm-Message-State: AD7BkJLSnShXuUPr9bbsNNtLLCHJ8V36w6oc5bZj7lNJJk1NSsuoGePQA9DizGkh1NhInA== X-Received: by 10.194.58.12 with SMTP id m12mr39478234wjq.22.1457535925921; Wed, 09 Mar 2016 07:05:25 -0800 (PST) Received: from t450s.lan (89-92-156-188.hfc.dyn.abo.bbox.fr. [89.92.156.188]) by smtp.googlemail.com with ESMTPSA id 63sm8834957wms.1.2016.03.09.07.05.25 (version=TLSv1/SSLv3 cipher=OTHER); Wed, 09 Mar 2016 07:05:25 -0800 (PST) From: Gary Bisson To: buildroot@busybox.net Date: Wed, 9 Mar 2016 16:05:09 +0100 Message-Id: <1457535909-12591-1-git-send-email-gary.bisson@boundarydevices.com> X-Mailer: git-send-email 2.7.0 Cc: thomas.petazzoni@free-electrons.com Subject: [Buildroot] [PATCH] freescale-imx: add BR2_PACKAGE_FREESCALE_IMX_HAS_VPU config X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" Since the imx-vpu package build is skipped if the platform doesn't have a VPU, libraries dependent on the package such as libimxvpuapi can fail although the imx-vpu package build went "fine". This patch therefore adds a BR2_PACKAGE_FREESCALE_IMX_HAS_VPU config which is used in every package selecting imx-vpu directly or indrectly. It fixes the following build errors: http://autobuild.buildroot.net/results/892/8924b17f3aa5eba1a8016d84d4478ecb0a96b236/ http://autobuild.buildroot.net/results/86f/86fef2a30065d5bc0d7755706e9ca3332426834d/ http://autobuild.buildroot.net/results/b47/b47eb03e93e2f1af85caebb707f7b4667f7e3d74/ http://autobuild.buildroot.net/results/4c9/4c9b22b33533132fd9f88917cc341ae2c2e171a8/ http://autobuild.buildroot.net/results/a8b/a8b33bfd099d9b9cd383cc568ea70846eb13c34d/ Signed-off-by: Gary Bisson --- Hi all, This patch is the follow-up of the autobuilder failures discussion: http://lists.busybox.net/pipermail/buildroot/2016-March/154989.html Implementing this BR2_PACKAGE_FREESCALE_IMX_HAS_VPU was actually easier and not as intrusive as expected. Let me know your thoughts. However during the testing of this patch, I realized that old platforms will be a nightmare to maintain, here are a few examples: - if using IMX25_3STACK or IMX51, imx-lib will fail with the following errors: iso7816-3.c:34:37: fatal error: linux/mxc_sim_interface.h: No such file or directory #include - if using IMX37_3STACK or IMX50 or IMX53 or IMX27ADS, imx-lib will fail too: fsl_shw_rand.c:46:24: fatal error: shw_driver.h: No such file or directory #include "shw_driver.h" Both issues above require to use the old 2.6.x kernels from Freescale, are they even still building? All the defconfigs I see of old platforms are using mainline kernel which doesn't work with those proprietary Freescale packages anyway as the Yocto community explained: https://github.com/Freescale/meta-fsl-arm/commit/3b698004 https://github.com/Freescale/meta-fsl-arm/commit/83b240e7 So I now think this BR2_PACKAGE_FREESCALE_IMX_HAS_VPU is necessary for the future platforms definition (IMX6UL and IMX7D) but we should still get rid of the old ones. Anyway, I guess this patch can be merged as-is to fix the build issue and we can later discuss the fate of older platforms once autobuilder will try a config with imx-lib ;) Regards, Gary --- package/freescale-imx/Config.in | 7 +++++++ package/freescale-imx/imx-vpu/Config.in | 5 +++++ package/gstreamer/gst-fsl-plugins/Config.in | 3 +-- package/gstreamer/gst-fsl-plugins/gst-fsl-plugins.mk | 6 +++++- package/libfslvpuwrap/Config.in | 6 +++++- package/libimxvpuapi/Config.in | 6 +++++- 6 files changed, 28 insertions(+), 5 deletions(-) diff --git a/package/freescale-imx/Config.in b/package/freescale-imx/Config.in index dfb6cc4..4a086ae 100644 --- a/package/freescale-imx/Config.in +++ b/package/freescale-imx/Config.in @@ -42,6 +42,13 @@ config BR2_PACKAGE_FREESCALE_IMX_PLATFORM default "IMX53" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX53 default "IMX6Q" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q +config BR2_PACKAGE_FREESCALE_IMX_HAS_VPU + bool + default y if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX27ADS || \ + BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX51 || \ + BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX53 || \ + BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q + source "package/freescale-imx/imx-kobs/Config.in" source "package/freescale-imx/imx-lib/Config.in" source "package/freescale-imx/imx-vpu/Config.in" diff --git a/package/freescale-imx/imx-vpu/Config.in b/package/freescale-imx/imx-vpu/Config.in index 220385c..779717f 100644 --- a/package/freescale-imx/imx-vpu/Config.in +++ b/package/freescale-imx/imx-vpu/Config.in @@ -1,6 +1,11 @@ +comment "imx-vpu needs an i.MX platform with VPU support" + depends on BR2_arm + depends on !BR2_PACKAGE_FREESCALE_IMX_HAS_VPU + config BR2_PACKAGE_IMX_VPU bool "imx-vpu" depends on BR2_arm # Only relevant for i.MX + depends on BR2_PACKAGE_FREESCALE_IMX_HAS_VPU select BR2_PACKAGE_FIRMWARE_IMX help Library of userspace helpers specific for the Freescale i.MX diff --git a/package/gstreamer/gst-fsl-plugins/Config.in b/package/gstreamer/gst-fsl-plugins/Config.in index a4a2606..0407dc5 100644 --- a/package/gstreamer/gst-fsl-plugins/Config.in +++ b/package/gstreamer/gst-fsl-plugins/Config.in @@ -11,9 +11,8 @@ config BR2_PACKAGE_GST_FSL_PLUGINS depends on BR2_arm # Only relevant for i.MX depends on BR2_TOOLCHAIN_USES_GLIBC # libfslcodec select BR2_PACKAGE_GST_PLUGINS_BASE - select BR2_PACKAGE_LIBFSLVPUWRAP + select BR2_PACKAGE_LIBFSLVPUWRAP if BR2_PACKAGE_FREESCALE_IMX_HAS_VPU select BR2_PACKAGE_IMX_LIB - select BR2_PACKAGE_IMX_VPU select BR2_PACKAGE_LIBFSLPARSER select BR2_PACKAGE_LIBFSLCODEC select BR2_PACKAGE_FREESCALE_IMX diff --git a/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins.mk b/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins.mk index 2ac558a..fa0e093 100644 --- a/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins.mk +++ b/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins.mk @@ -16,7 +16,11 @@ GST_FSL_PLUGINS_INSTALL_STAGING = YES GST_FSL_PLUGINS_AUTORECONF = YES GST_FSL_PLUGINS_DEPENDENCIES += host-pkgconf gstreamer gst-plugins-base \ - libfslvpuwrap imx-lib imx-vpu libfslparser libfslcodec + imx-lib libfslparser libfslcodec + +ifeq ($(BR2_PACKAGE_FREESCALE_IMX_HAS_VPU),y) +GST_FSL_PLUGINS_DEPENDENCIES += libfslvpuwrap +endif GST_FSL_PLUGINS_CONF_ENV = \ PLATFORM=$(BR2_PACKAGE_GST_FSL_PLUGINS_PLATFORM) \ diff --git a/package/libfslvpuwrap/Config.in b/package/libfslvpuwrap/Config.in index 9cc15d5..72f7126 100644 --- a/package/libfslvpuwrap/Config.in +++ b/package/libfslvpuwrap/Config.in @@ -2,11 +2,15 @@ comment "libfslvpuwrap needs an imx-specific Linux kernel to be built" depends on BR2_arm depends on !BR2_LINUX_KERNEL +comment "libfslvpuwrap needs an i.MX platform with VPU support" + depends on BR2_arm + depends on BR2_LINUX_KERNEL && !BR2_PACKAGE_FREESCALE_IMX_HAS_VPU + config BR2_PACKAGE_LIBFSLVPUWRAP bool "libfslvpuwrap" depends on BR2_LINUX_KERNEL depends on BR2_arm # Only relevant for i.MX - select BR2_PACKAGE_FREESCALE_IMX + depends on BR2_PACKAGE_FREESCALE_IMX_HAS_VPU select BR2_PACKAGE_IMX_VPU help Wrapper library for the vpu library, giving it a different API. diff --git a/package/libimxvpuapi/Config.in b/package/libimxvpuapi/Config.in index 85467f2..8b8b839 100644 --- a/package/libimxvpuapi/Config.in +++ b/package/libimxvpuapi/Config.in @@ -1,7 +1,11 @@ +comment "libimxvpuapi needs an i.MX platform with VPU support" + depends on BR2_arm + depends on !BR2_PACKAGE_FREESCALE_IMX_HAS_VPU + config BR2_PACKAGE_LIBIMXVPUAPI bool "libimxvpuapi" depends on BR2_arm # Only relevant for i.MX - select BR2_PACKAGE_FREESCALE_IMX + depends on BR2_PACKAGE_FREESCALE_IMX_HAS_VPU select BR2_PACKAGE_IMX_VPU help This library provides an API for using the iMX6 VPU video