Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 0/2] gst-fsl-plugins: requires kernel headers <= 3.10 (branch yem/quickies)
@ 2014-07-25 21:28 Yann E. MORIN
  2014-07-25 21:28 ` [Buildroot] [PATCH 1/2] docs/manual: enhance doc for BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y Yann E. MORIN
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Yann E. MORIN @ 2014-07-25 21:28 UTC (permalink / raw)
  To: buildroot

Hello All!

As reported by Gary, gst-fsl-plugins use part of the v4l2 API that was
removed in linux 3.11, so it should not be made available for toolchains
with kernel headers >= 3.11, but only for headers <= 3.10.

The first patch enhances the manual, explicitly stating that the
_AT_LEAST_X_Y dependencies can be used both ways, either to require at
least a specific version, or to require@most a specific version. or
even both (e.g.: 3.2 <= version <= 3.11 .)

The second patch adds the headers version dependency to gst-fsl-plugins.

Regards,
Yann E. MORIN.


The following changes since commit 5af28fe6a10976eee7d9e9006baa90543d6dd025:

  pkg-autotools: add support for <pkg>_AUTORECONF_ENV (2014-07-23 23:49:10 +0200)

are available in the git repository at:

  git://gitorious.org/buildroot/buildroot.git yem/quickies

for you to fetch changes up to 09b3dee632b2855fe6517fbdbde2ac9d8a98dbbc:

  package/gst-fsl-plugins: not available for kernel headers >= 3.11 (2014-07-25 23:20:27 +0200)

----------------------------------------------------------------
Yann E. MORIN (2):
      docs/manual: enhance doc for BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y
      package/gst-fsl-plugins: not available for kernel headers >= 3.11

 docs/manual/adding-packages-directory.txt   | 4 ++--
 package/gstreamer/gst-fsl-plugins/Config.in | 5 +++--
 2 files changed, 5 insertions(+), 4 deletions(-)

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

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

* [Buildroot] [PATCH 1/2] docs/manual: enhance doc for BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y
  2014-07-25 21:28 [Buildroot] [PATCH 0/2] gst-fsl-plugins: requires kernel headers <= 3.10 (branch yem/quickies) Yann E. MORIN
@ 2014-07-25 21:28 ` Yann E. MORIN
  2014-07-26 18:25   ` Thomas De Schampheleire
                     ` (2 more replies)
  2014-07-25 21:28 ` [Buildroot] [PATCH 2/2] package/gst-fsl-plugins: not available for kernel headers >= 3.11 Yann E. MORIN
  2014-07-25 22:32 ` [Buildroot] [PATCH 0/2] gst-fsl-plugins: requires kernel headers <= 3.10 (branch yem/quickies) Thomas Petazzoni
  2 siblings, 3 replies; 10+ messages in thread
From: Yann E. MORIN @ 2014-07-25 21:28 UTC (permalink / raw)
  To: buildroot

The BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y symbols can be used to denote the
lowest required kernel headers version, but also the highest supported
version. Document that.

Use the `...` construct instead of +...+ used eveywhere else, otherwise
asciidoc would render +<=+ to the ? arrow, while `...` does no rendering
at all.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 docs/manual/adding-packages-directory.txt | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/docs/manual/adding-packages-directory.txt b/docs/manual/adding-packages-directory.txt
index c2f0a1a..93e6a3e 100644
--- a/docs/manual/adding-packages-directory.txt
+++ b/docs/manual/adding-packages-directory.txt
@@ -222,8 +222,8 @@ use in the comment.
 * Kernel headers
 ** Dependency symbol: +BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y+, (replace
    +X_Y+ with the proper version, see +toolchain/toolchain-common.in+)
-** Comment string: +headers >= X.Y+ (replace +X.Y+ with the
-   proper version)
+** Comment string: +headers >= X.Y+ and/or `headers <= X.Y` (replace
+   +X.Y+ with the proper version)
 
 * C library
 ** Dependency symbol: +BR2_TOOLCHAIN_USES_GLIBC+,
-- 
1.9.1

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

* [Buildroot] [PATCH 2/2] package/gst-fsl-plugins: not available for kernel headers >= 3.11
  2014-07-25 21:28 [Buildroot] [PATCH 0/2] gst-fsl-plugins: requires kernel headers <= 3.10 (branch yem/quickies) Yann E. MORIN
  2014-07-25 21:28 ` [Buildroot] [PATCH 1/2] docs/manual: enhance doc for BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y Yann E. MORIN
@ 2014-07-25 21:28 ` Yann E. MORIN
  2014-07-25 22:32 ` [Buildroot] [PATCH 0/2] gst-fsl-plugins: requires kernel headers <= 3.10 (branch yem/quickies) Thomas Petazzoni
  2 siblings, 0 replies; 10+ messages in thread
From: Yann E. MORIN @ 2014-07-25 21:28 UTC (permalink / raw)
  To: buildroot

gst-fsl-plugins the v4l2 API, such as 'struct v4l2_dbg_chip_ident', that
was removed in 3.11.

So, limit this package to toolchains with kernel headers <= 3.10.

Reported-by: Gary Bisson <bisson.gary@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Gary Bisson <bisson.gary@gmail.com>
---
 package/gstreamer/gst-fsl-plugins/Config.in | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/package/gstreamer/gst-fsl-plugins/Config.in b/package/gstreamer/gst-fsl-plugins/Config.in
index 309e745..e1daddb 100644
--- a/package/gstreamer/gst-fsl-plugins/Config.in
+++ b/package/gstreamer/gst-fsl-plugins/Config.in
@@ -1,15 +1,16 @@
 comment "gst-fsl-plugins needs an imx-specific Linux kernel to be built"
 	depends on BR2_arm && !BR2_LINUX_KERNEL
 
-comment "gst-fsl-plugins needs an (e)glibc toolchain"
+comment "gst-fsl-plugins needs an (e)glibc toolchain w/ headers <= 3.10"
 	depends on BR2_arm
-	depends on !BR2_TOOLCHAIN_USES_GLIBC
+	depends on !BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_11
 
 config BR2_PACKAGE_GST_FSL_PLUGINS
 	bool "gst-fsl-plugins"
 	depends on BR2_LINUX_KERNEL
 	depends on BR2_arm # Only relevant for i.MX
 	depends on BR2_TOOLCHAIN_USES_GLIBC # libfslcodec
+	depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_11 # Uses v4l2 API changed in 3.11
 	select BR2_PACKAGE_GST_PLUGINS_BASE
 	select BR2_PACKAGE_LIBFSLVPUWRAP
 	select BR2_PACKAGE_IMX_LIB
-- 
1.9.1

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

* [Buildroot] [PATCH 0/2] gst-fsl-plugins: requires kernel headers <= 3.10 (branch yem/quickies)
  2014-07-25 21:28 [Buildroot] [PATCH 0/2] gst-fsl-plugins: requires kernel headers <= 3.10 (branch yem/quickies) Yann E. MORIN
  2014-07-25 21:28 ` [Buildroot] [PATCH 1/2] docs/manual: enhance doc for BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y Yann E. MORIN
  2014-07-25 21:28 ` [Buildroot] [PATCH 2/2] package/gst-fsl-plugins: not available for kernel headers >= 3.11 Yann E. MORIN
@ 2014-07-25 22:32 ` Thomas Petazzoni
  2014-07-25 23:21   ` Gary Bisson
  2 siblings, 1 reply; 10+ messages in thread
From: Thomas Petazzoni @ 2014-07-25 22:32 UTC (permalink / raw)
  To: buildroot

Dear Yann E. MORIN,

On Fri, 25 Jul 2014 23:28:11 +0200, Yann E. MORIN wrote:

> As reported by Gary, gst-fsl-plugins use part of the v4l2 API that was
> removed in linux 3.11, so it should not be made available for toolchains
> with kernel headers >= 3.11, but only for headers <= 3.10.

That's kind of odd. Isn't the kernel to userspace API supposed to
remain backward compatible? Isn't this rather a story of custom v4l2
APIs added by Freescale but never mainlined?

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

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

* [Buildroot] [PATCH 0/2] gst-fsl-plugins: requires kernel headers <= 3.10 (branch yem/quickies)
  2014-07-25 22:32 ` [Buildroot] [PATCH 0/2] gst-fsl-plugins: requires kernel headers <= 3.10 (branch yem/quickies) Thomas Petazzoni
@ 2014-07-25 23:21   ` Gary Bisson
  0 siblings, 0 replies; 10+ messages in thread
From: Gary Bisson @ 2014-07-25 23:21 UTC (permalink / raw)
  To: buildroot

Thomas, Yann, all,

On Fri, Jul 25, 2014 at 3:32 PM, Thomas Petazzoni <
thomas.petazzoni@free-electrons.com> wrote:

> Dear Yann E. MORIN,
>
> On Fri, 25 Jul 2014 23:28:11 +0200, Yann E. MORIN wrote:
>
> > As reported by Gary, gst-fsl-plugins use part of the v4l2 API that was
> > removed in linux 3.11, so it should not be made available for toolchains
> > with kernel headers >= 3.11, but only for headers <= 3.10.
>
> That's kind of odd. Isn't the kernel to userspace API supposed to
> remain backward compatible? Isn't this rather a story of custom v4l2
> APIs added by Freescale but never mainlined?
>
>
I confirm the structure disappeared in between kernel 3.10 and 3.11 (see
include/uapi/linux/videodev2.h). Commit b71c9980 explains that this
structure
and the associated ioctl were deprecated and therefore removed.
In other words Freescale shouldn't use that structure. I'll offer another
patch
that replaces chip_ident by chip_info.

Thanks,
Gary


> Thomas
> --
> Thomas Petazzoni, CTO, Free Electrons
> Embedded Linux, Kernel and Android engineering
> http://free-electrons.com
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20140725/08472c55/attachment.html>

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

* [Buildroot] [PATCH 1/2] docs/manual: enhance doc for BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y
  2014-07-25 21:28 ` [Buildroot] [PATCH 1/2] docs/manual: enhance doc for BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y Yann E. MORIN
@ 2014-07-26 18:25   ` Thomas De Schampheleire
  2014-07-27 12:34   ` Thomas Petazzoni
  2014-07-27 13:08   ` Thomas Petazzoni
  2 siblings, 0 replies; 10+ messages in thread
From: Thomas De Schampheleire @ 2014-07-26 18:25 UTC (permalink / raw)
  To: buildroot

On Fri, Jul 25, 2014 at 11:28 PM, Yann E. MORIN <yann.morin.1998@free.fr> wrote:
> The BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y symbols can be used to denote the
> lowest required kernel headers version, but also the highest supported
> version. Document that.
>
> Use the `...` construct instead of +...+ used eveywhere else, otherwise
> asciidoc would render +<=+ to the ? arrow, while `...` does no rendering
> at all.
>
> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
> ---
>  docs/manual/adding-packages-directory.txt | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/docs/manual/adding-packages-directory.txt b/docs/manual/adding-packages-directory.txt
> index c2f0a1a..93e6a3e 100644
> --- a/docs/manual/adding-packages-directory.txt
> +++ b/docs/manual/adding-packages-directory.txt
> @@ -222,8 +222,8 @@ use in the comment.
>  * Kernel headers
>  ** Dependency symbol: +BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y+, (replace
>     +X_Y+ with the proper version, see +toolchain/toolchain-common.in+)
> -** Comment string: +headers >= X.Y+ (replace +X.Y+ with the
> -   proper version)
> +** Comment string: +headers >= X.Y+ and/or `headers <= X.Y` (replace
> +   +X.Y+ with the proper version)
>
>  * C library
>  ** Dependency symbol: +BR2_TOOLCHAIN_USES_GLIBC+,

Acked-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>

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

* [Buildroot] [PATCH 1/2] docs/manual: enhance doc for BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y
  2014-07-25 21:28 ` [Buildroot] [PATCH 1/2] docs/manual: enhance doc for BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y Yann E. MORIN
  2014-07-26 18:25   ` Thomas De Schampheleire
@ 2014-07-27 12:34   ` Thomas Petazzoni
  2014-07-27 12:49     ` Yann E. MORIN
  2014-07-27 13:08   ` Thomas Petazzoni
  2 siblings, 1 reply; 10+ messages in thread
From: Thomas Petazzoni @ 2014-07-27 12:34 UTC (permalink / raw)
  To: buildroot

Dear Yann E. MORIN,

On Fri, 25 Jul 2014 23:28:14 +0200, Yann E. MORIN wrote:
> The BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y symbols can be used to denote the
> lowest required kernel headers version, but also the highest supported
> version. Document that.

I'm honestly really unsure about this. Kernel headers expose the kernel
to userspace API, and this API is supposed to be backward compatible.
Therefore, I don't see why we should document the idea of expressing on
dependency on a highest kernel header version.

The v4l2 example we had on freescale seems like an API that shouldn't
have been part of the kernel to userspace API, and therefore shouldn't
be used by userspace libraries/applications.

Therefore, I'm tempted to say no to this patch, but I'm interested to
be convince otherwise :)

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

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

* [Buildroot] [PATCH 1/2] docs/manual: enhance doc for BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y
  2014-07-27 12:34   ` Thomas Petazzoni
@ 2014-07-27 12:49     ` Yann E. MORIN
  2014-07-27 13:04       ` Thomas Petazzoni
  0 siblings, 1 reply; 10+ messages in thread
From: Yann E. MORIN @ 2014-07-27 12:49 UTC (permalink / raw)
  To: buildroot

Thomas, All,

On 2014-07-27 14:34 +0200, Thomas Petazzoni spake thusly:
> On Fri, 25 Jul 2014 23:28:14 +0200, Yann E. MORIN wrote:
> > The BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y symbols can be used to denote the
> > lowest required kernel headers version, but also the highest supported
> > version. Document that.
> 
> I'm honestly really unsure about this. Kernel headers expose the kernel
> to userspace API, and this API is supposed to be backward compatible.
> Therefore, I don't see why we should document the idea of expressing on
> dependency on a highest kernel header version.
> 
> The v4l2 example we had on freescale seems like an API that shouldn't
> have been part of the kernel to userspace API, and therefore shouldn't
> be used by userspace libraries/applications.
> 
> Therefore, I'm tempted to say no to this patch, but I'm interested to
> be convince otherwise :)

Well, APIs can get deprecated over time, and eventually removed. For
example, the status of interfaces is described in Documentation/ABI in
your favourite kernel source tree.

So, yes, I still think this patch is valid.

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

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

* [Buildroot] [PATCH 1/2] docs/manual: enhance doc for BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y
  2014-07-27 12:49     ` Yann E. MORIN
@ 2014-07-27 13:04       ` Thomas Petazzoni
  0 siblings, 0 replies; 10+ messages in thread
From: Thomas Petazzoni @ 2014-07-27 13:04 UTC (permalink / raw)
  To: buildroot

Dear Yann E. MORIN,

On Sun, 27 Jul 2014 14:49:00 +0200, Yann E. MORIN wrote:

> > Therefore, I'm tempted to say no to this patch, but I'm interested to
> > be convince otherwise :)
> 
> Well, APIs can get deprecated over time, and eventually removed. For
> example, the status of interfaces is described in Documentation/ABI in
> your favourite kernel source tree.

Yeah, well, that's true. Even though that tends to happen very rarely
and generally for very rarely used interfaces.

> So, yes, I still think this patch is valid.

Ok, fair enough :)

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

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

* [Buildroot] [PATCH 1/2] docs/manual: enhance doc for BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y
  2014-07-25 21:28 ` [Buildroot] [PATCH 1/2] docs/manual: enhance doc for BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y Yann E. MORIN
  2014-07-26 18:25   ` Thomas De Schampheleire
  2014-07-27 12:34   ` Thomas Petazzoni
@ 2014-07-27 13:08   ` Thomas Petazzoni
  2 siblings, 0 replies; 10+ messages in thread
From: Thomas Petazzoni @ 2014-07-27 13:08 UTC (permalink / raw)
  To: buildroot

Dear Yann E. MORIN,

On Fri, 25 Jul 2014 23:28:14 +0200, Yann E. MORIN wrote:
> The BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y symbols can be used to denote the
> lowest required kernel headers version, but also the highest supported
> version. Document that.
> 
> Use the `...` construct instead of +...+ used eveywhere else, otherwise
> asciidoc would render +<=+ to the ? arrow, while `...` does no rendering
> at all.
> 
> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
> ---
>  docs/manual/adding-packages-directory.txt | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)

Applied, thanks.

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

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

end of thread, other threads:[~2014-07-27 13:08 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-07-25 21:28 [Buildroot] [PATCH 0/2] gst-fsl-plugins: requires kernel headers <= 3.10 (branch yem/quickies) Yann E. MORIN
2014-07-25 21:28 ` [Buildroot] [PATCH 1/2] docs/manual: enhance doc for BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y Yann E. MORIN
2014-07-26 18:25   ` Thomas De Schampheleire
2014-07-27 12:34   ` Thomas Petazzoni
2014-07-27 12:49     ` Yann E. MORIN
2014-07-27 13:04       ` Thomas Petazzoni
2014-07-27 13:08   ` Thomas Petazzoni
2014-07-25 21:28 ` [Buildroot] [PATCH 2/2] package/gst-fsl-plugins: not available for kernel headers >= 3.11 Yann E. MORIN
2014-07-25 22:32 ` [Buildroot] [PATCH 0/2] gst-fsl-plugins: requires kernel headers <= 3.10 (branch yem/quickies) Thomas Petazzoni
2014-07-25 23:21   ` Gary Bisson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox