[v2] imx-alsa-plugins: new package

Message ID 20180201132629.13188-1-joerg.krause@embedded.rocks
State Accepted
Headers show
Series
  • [v2] imx-alsa-plugins: new package
Related show

Commit Message

Jörg Krause Feb. 1, 2018, 1:26 p.m.
Freescale specific alsa-lib plugins for the i.MX processor family.

For now, the only provided plugin is:
  * Rate Converter Plugin Using Freescale ASRC Resampler

The ASRC hardware resampler can be found on i.MX53 and most i.MX 6
processors.

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
---
v2:
 * Fix comment sections (Marcus Folkesson and Baruch Siach)
---
 package/freescale-imx/Config.in                    |  1 +
 package/freescale-imx/imx-alsa-plugins/Config.in   | 25 ++++++++++++++++++++++
 .../imx-alsa-plugins/imx-alsa-plugins.hash         |  3 +++
 .../imx-alsa-plugins/imx-alsa-plugins.mk           | 21 ++++++++++++++++++
 4 files changed, 50 insertions(+)
 create mode 100644 package/freescale-imx/imx-alsa-plugins/Config.in
 create mode 100644 package/freescale-imx/imx-alsa-plugins/imx-alsa-plugins.hash
 create mode 100644 package/freescale-imx/imx-alsa-plugins/imx-alsa-plugins.mk

Comments

Thomas Petazzoni April 28, 2018, 9:40 p.m. | #1
Hello Gary,

Since you often look after all the Freescale/NXP stuff, would you mind
reviewing this patch from Jörg ?

You can also find it on patchwork at
https://patchwork.ozlabs.org/patch/868232/.

Thanks!

Thomas

On Thu,  1 Feb 2018 14:26:29 +0100, Jörg Krause wrote:
> Freescale specific alsa-lib plugins for the i.MX processor family.
> 
> For now, the only provided plugin is:
>   * Rate Converter Plugin Using Freescale ASRC Resampler
> 
> The ASRC hardware resampler can be found on i.MX53 and most i.MX 6
> processors.
> 
> Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
> ---
> v2:
>  * Fix comment sections (Marcus Folkesson and Baruch Siach)
> ---
>  package/freescale-imx/Config.in                    |  1 +
>  package/freescale-imx/imx-alsa-plugins/Config.in   | 25 ++++++++++++++++++++++
>  .../imx-alsa-plugins/imx-alsa-plugins.hash         |  3 +++
>  .../imx-alsa-plugins/imx-alsa-plugins.mk           | 21 ++++++++++++++++++
>  4 files changed, 50 insertions(+)
>  create mode 100644 package/freescale-imx/imx-alsa-plugins/Config.in
>  create mode 100644 package/freescale-imx/imx-alsa-plugins/imx-alsa-plugins.hash
>  create mode 100644 package/freescale-imx/imx-alsa-plugins/imx-alsa-plugins.mk

Applied to master, thanks.

Thomas
Gary Bisson April 30, 2018, 9:18 a.m. | #2
Hi Thomas,

On Sat, Apr 28, 2018 at 11:40:33PM +0200, Thomas Petazzoni wrote:
> Hello Gary,
> 
> Since you often look after all the Freescale/NXP stuff, would you mind
> reviewing this patch from Jörg ?

Sure. Sorry I haven't replied earlier but I usually miss patches I'm not
cc'd to.

> You can also find it on patchwork at
> https://patchwork.ozlabs.org/patch/868232/.

The patch looks good to me, it's simple enough (autotools, alsa
dependency). The only modification I would have done would be in the
Config.in help text which says:

+	  This package is provided by Freescale as-is and doesn't have
+	  an upstream.

This used to be the go-to help text for Freescale when they provided
everything as archives. Now that there's a Git repository for pretty
much all those packages I'd now say there's an upstream.

Although it is unclear how to contribute to those repositories. From
what I've seen some people sent email to the top contributors of the
repository directly.

Regards,
Gary
Thomas Petazzoni April 30, 2018, 3:56 p.m. | #3
Hello,

On Thu,  1 Feb 2018 14:26:29 +0100, Jörg Krause wrote:
> Freescale specific alsa-lib plugins for the i.MX processor family.
> 
> For now, the only provided plugin is:
>   * Rate Converter Plugin Using Freescale ASRC Resampler
> 
> The ASRC hardware resampler can be found on i.MX53 and most i.MX 6
> processors.
> 
> Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
> ---
> v2:
>  * Fix comment sections (Marcus Folkesson and Baruch Siach)
> ---
>  package/freescale-imx/Config.in                    |  1 +
>  package/freescale-imx/imx-alsa-plugins/Config.in   | 25 ++++++++++++++++++++++
>  .../imx-alsa-plugins/imx-alsa-plugins.hash         |  3 +++
>  .../imx-alsa-plugins/imx-alsa-plugins.mk           | 21 ++++++++++++++++++
>  4 files changed, 50 insertions(+)
>  create mode 100644 package/freescale-imx/imx-alsa-plugins/Config.in
>  create mode 100644 package/freescale-imx/imx-alsa-plugins/imx-alsa-plugins.hash
>  create mode 100644 package/freescale-imx/imx-alsa-plugins/imx-alsa-plugins.mk

Thanks Gary for the review of the patch. I've removed the part of the
Config.in help text that you thought was no longer needed.

I've also added an entry to the DEVELOPERS file, which was missing.

And I've applied. Thanks Jörg for the contribution!

Best regards,

Thomas

Patch

diff --git a/package/freescale-imx/Config.in b/package/freescale-imx/Config.in
index b5e5ab23dc..f658c46ba0 100644
--- a/package/freescale-imx/Config.in
+++ b/package/freescale-imx/Config.in
@@ -69,6 +69,7 @@  config BR2_PACKAGE_FREESCALE_IMX_HAS_VIV_GPU
 		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6S || \
 		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX7
 
+source "package/freescale-imx/imx-alsa-plugins/Config.in"
 source "package/freescale-imx/imx-codec/Config.in"
 source "package/freescale-imx/imx-kobs/Config.in"
 source "package/freescale-imx/imx-lib/Config.in"
diff --git a/package/freescale-imx/imx-alsa-plugins/Config.in b/package/freescale-imx/imx-alsa-plugins/Config.in
new file mode 100644
index 0000000000..7f69f30391
--- /dev/null
+++ b/package/freescale-imx/imx-alsa-plugins/Config.in
@@ -0,0 +1,25 @@ 
+config BR2_PACKAGE_IMX_ALSA_PLUGINS
+	bool "imx-alsa-plugins"
+	depends on BR2_arm # Only relevant for i.MX
+	depends on BR2_LINUX_KERNEL
+	depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib
+	select BR2_PACKAGE_ALSA_LIB
+	help
+	  ALSA plugins specific for the Freescale i.MX platform. It
+	  requires a kernel that includes the i.MX specific headers
+	  to be built.
+
+	  The following plugins are provided so far:
+	    * Rate Converter Plugin Using Freescale ASRC Hardware
+	      Resampler (i.MX53 and most i.MX6)
+
+	  This package is provided by Freescale as-is and doesn't have
+	  an upstream.
+
+comment "imx-alsa-libs needs an imx-specific Linux kernel to be built"
+	depends on BR2_arm
+	depends on !BR2_LINUX_KERNEL
+
+comment "imx-alsa-libs needs a toolchain w/ threads"
+	depends on BR2_arm
+	depends on BR2_LINUX_KERNEL && !BR2_TOOLCHAIN_HAS_THREADS
diff --git a/package/freescale-imx/imx-alsa-plugins/imx-alsa-plugins.hash b/package/freescale-imx/imx-alsa-plugins/imx-alsa-plugins.hash
new file mode 100644
index 0000000000..b0f47080ce
--- /dev/null
+++ b/package/freescale-imx/imx-alsa-plugins/imx-alsa-plugins.hash
@@ -0,0 +1,3 @@ 
+# Locally calculated:
+sha256  e76a71e9166fbedeaa535fd7ebc07edc30a1e87f529ab2aa733e3603d3183ed0  imx-alsa-plugins-rel_imx_4.9.x_1.0.0_ga.tar.gz
+sha256  32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670  COPYING.GPL
diff --git a/package/freescale-imx/imx-alsa-plugins/imx-alsa-plugins.mk b/package/freescale-imx/imx-alsa-plugins/imx-alsa-plugins.mk
new file mode 100644
index 0000000000..9c81ff0df0
--- /dev/null
+++ b/package/freescale-imx/imx-alsa-plugins/imx-alsa-plugins.mk
@@ -0,0 +1,21 @@ 
+################################################################################
+#
+# imx-alsa-plugins
+#
+################################################################################
+
+IMX_ALSA_PLUGINS_VERSION = rel_imx_4.9.x_1.0.0_ga
+IMX_ALSA_PLUGINS_SITE = https://source.codeaurora.org/external/imx/imx-alsa-plugins
+IMX_ALSA_PLUGINS_SITE_METHOD = git
+IMX_ALSA_PLUGINS_LICENSE = GPL-2.0+
+IMX_ALSA_PLUGINS_LICENSE_FILES = COPYING.GPL
+IMX_ALSA_PLUGINS_DEPENDENCIES = host-pkgconf alsa-lib
+
+# git, no configure
+IMX_ALSA_PLUGINS_AUTORECONF = YES
+
+# needs access to imx-specific kernel headers
+IMX_ALSA_PLUGINS_DEPENDENCIES += linux
+IMX_ALSA_PLUGINS_CONF_ENV += CPPFLAGS="$(TARGET_CPPFLAGS) -idirafter $(LINUX_DIR)/include/uapi"
+
+$(eval $(autotools-package))