Skip to contentSkip to conversation

NVidia GPU binary blobs for Tegra2/3 (branch yem/gfx2)

PATCH Superseded Yann E. MORIN 3 participants 22 messages Apr 21, 2015 – Apr 26, 2015 Tegra architecture support

lore
Share & tools
lore
#0 lore raw

v11 cover NVidia GPU binary blobs for Tegra2/3 (branch yem/gfx2)

Hello All!

This series adds support for NVidia's binary blob, the driver to its family of GPUs, for Tegra2 and Tegra3, initially submitted by Nicolas.

Since those binary blobs require the old X11 driver ABI 14, we can not use them for now, as the version of X11 we have implements ABI 19; X11 ABIs are not backward compatible.

So, we need to introduce a choice for the version of X11, so as to provide whatever was the latest X11 vbersion to provide ABI 14; this would be X11 version 1.14.7.

Fortunately, Gustavo was kind enough to suggest and test that building an old X11 server with newer X11 libs was still possible, so that we only really need the old server, not all the old libs. Pfewww... ;-)

So, this series in split in two main parts:

- patches 1-5 introduce the possibility to choose an old X11 version for the server,

- patches 6-8 add new packages for the NVidia Tegra blobs.

Thanks go to Nicolas, Laurent and Gustavo for their input and testing!

Changes v8 -> v11:
- version bump for tegra drivers and codecs (Nicolas)

Changes v7 -> v8:
- introduce use of an old X11 server to provide the ABI expected by the NVidia blobs
- drop the x86 drivers, applied

Changes v6 -> v7:
- drop all Khronos Registries packages in favour of mesa3d-headers
- adapt the NVidia driver packages to use mesa3d-headers

Changes v5 -> v6:
- make python-lxml a target package too (Yegor)
- rename the packages and move one directory up (J?r?me)
- use mesa3d to provide additional headers, don't bundle them
- install extra GLES platform headers (Nicolas)
- x86 nvidia driver installs a gl.pc file (J?r?me)
- drop JPEG HW acceleration for Tegra2/3, since we do not have the headers (Nicolas)

Changes v4 -> v5:
- fix env vars when building opengl-registry

Changes v3 -> v4:
- integrate the Tegra2/3 driver from Nicolas
- lots of cleanups in the packages for Tegra2/3
- further fixes after Thomas comments
- introduce more of the Khronos registry (OpenMAX, OpenKode...)

Changes v2 -> v3:
- some rewrite after Thomas comments

Changes v1 -> v2:
- bump opengl-registry
- drop i915, applied (Peter)

Regards,
Yann E. MORIN.

The following changes since commit abf4db2c48bf60053cf66b32a0572cd59dd5d624:

package: add mosquitto (2015-04-21 16:08:44 +0200)

are available in the git repository at:

git://git.busybox.net/~ymorin/git/buildroot yem/gfx2

for you to fetch changes up to 01c5d72e1eae387c59c3e674635b2e6e5a564a1c:

package/nvidia-tegra23-codecs: new package (2015-04-21 18:05:23 +0200)

----------------------------------------------------------------
Nicolas Serafini (3):
package/nvidia-tegra23-binaries: new package package.nvidia-tegra23-binaries: add gstreamer plugins package/nvidia-tegra23-codecs: new package

Yann E. MORIN (5):
package/xserver_xorg-server: prepare for multiple supported versions package/xserver_xorg-server: make the version a choice package/xserver_xorg-server: add blind options to specify driver ABI package/xserver_xorg-server: not all versions need all dependencies package/xserver_xorg-server: add version 1.14.7

 package/Config.in                                  |   1 +
 package/nvidia-tegra23/Config.in                   |  38 ++++++
 .../nvidia-tegra23-binaries/Config.in              |  42 +++++++
 .../nvidia-tegra23/nvidia-tegra23-binaries/egl.pc  |  10 ++
 .../nvidia-tegra23/nvidia-tegra23-binaries/gles.pc |  10 ++
 .../nvidia-tegra23-binaries/glesv2.pc              |  10 ++
 .../nvidia-tegra23-binaries.hash                   |   3 +
 .../nvidia-tegra23-binaries.mk                     | 128 +++++++++++++++++++++
 .../nvidia-tegra23/nvidia-tegra23-codecs/Config.in |   7 ++
 .../nvidia-tegra23-codecs.hash                     |   3 +
 .../nvidia-tegra23-codecs/nvidia-tegra23-codecs.mk |  41 +++++++
 package/nvidia-tegra23/nvidia-tegra23.mk           |  18 +++
 ...1-backtrace.c-Fix-word-cast-to-a-pointer.patch} |   0
 package/x11r7/xserver_xorg-server/Config.in        |  31 ++++-
 .../xserver_xorg-server/xserver_xorg-server.mk     |   9 +-
 15 files changed, 348 insertions(+), 3 deletions(-)
 create mode 100644 package/nvidia-tegra23/Config.in
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-binaries/Config.in
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-binaries/egl.pc
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-binaries/gles.pc
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-binaries/glesv2.pc
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-binaries/nvidia-tegra23-binaries.hash
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-binaries/nvidia-tegra23-binaries.mk
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-codecs/Config.in
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-codecs/nvidia-tegra23-codecs.hash
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-codecs/nvidia-tegra23-codecs.mk
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23.mk
 rename package/x11r7/xserver_xorg-server/{0004-backtrace.c-Fix-word-cast-to-a-pointer.patch => 1.17.1/0001-backtrace.c-Fix-word-cast-to-a-pointer.patch} (100%)
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------.
|  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.  |
'------------------------------^-------^------------------^--------------------'
#1 lore raw

PATCH v11 1/8 package/xserver_xorg-server: prepare for multiple supported versions

Simply move patch around...

Cc Gustavo Zacarias <[email protected]>
---
 .../0001-backtrace.c-Fix-word-cast-to-a-pointer.patch}                    | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
 rename package/x11r7/xserver_xorg-server/{0004-backtrace.c-Fix-word-cast-to-a-pointer.patch => 1.17.1/0001-backtrace.c-Fix-word-cast-to-a-pointer.patch} (100%)
package/x11r7/xserver_xorg-server/1.17.1/0001-backtrace.c-Fix-word-cast-to-a-pointer.patch renamed from package/x11r7/xserver_xorg-server/0004-backtrace.c-Fix-word-cast-to-a-pointer.patch +0 -0
similarity index 100%
rename from package/x11r7/xserver_xorg-server/0004-backtrace.c-Fix-word-cast-to-a-pointer.patch
rename to package/x11r7/xserver_xorg-server/1.17.1/0001-backtrace.c-Fix-word-cast-to-a-pointer.patch
Signature · 1 line
1.9.1
#2 lore raw

PATCH v11 1/8 package/xserver_xorg-server: prepare for multiple supported versions

Dear Yann E. MORIN,

Quoted 8 lines · Yann E. MORIN

Simply move patch around...

Cc Gustavo Zacarias <[email protected]>
---
 .../0001-backtrace.c-Fix-word-cast-to-a-pointer.patch}                    | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
 rename package/x11r7/xserver_xorg-server/{0004-backtrace.c-Fix-word-cast-to-a-pointer.patch => 1.17.1/0001-backtrace.c-Fix-word-cast-to-a-pointer.patch} (100%)

Applied, thanks.

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#3 lore raw

PATCH v11 2/8 package/xserver_xorg-server: make the version a choice

In reply to Yann E. MORIN

Only a single entry for now, but we'll add one more in an upcoming patch, to support old binary-only drivers, like the NVidia Tegra2/3 drivers.

Cc Gustavo Zacarias <[email protected]>
---
 package/x11r7/xserver_xorg-server/Config.in              | 12 ++++++++++++
 package/x11r7/xserver_xorg-server/xserver_xorg-server.mk |  2 +-
 2 files changed, 13 insertions(+), 1 deletion(-)
package/x11r7/xserver_xorg-server/Config.in +12 -0
index 1123f3b..3a7b18b 100644
@@ -57,6 +57,18 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER
 if BR2_PACKAGE_XSERVER_XORG_SERVER
 
 choice
+	bool "X Window System server version"
+
+config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17_1
+	bool "1.17.1"
+
+endchoice
+
+config BR2_PACKAGE_XSERVER_XORG_SERVER_VERSION
+	string
+	default "1.17.1" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17_1
+
+choice
 	prompt "X Window System server type"
 	default BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE
 	help
package/x11r7/xserver_xorg-server/xserver_xorg-server.mk +1 -1
index f120bec..d08197d 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-XSERVER_XORG_SERVER_VERSION = 1.17.1
+XSERVER_XORG_SERVER_VERSION = $(call qstrip,$(BR2_PACKAGE_XSERVER_XORG_SERVER_VERSION))
 XSERVER_XORG_SERVER_SOURCE = xorg-server-$(XSERVER_XORG_SERVER_VERSION).tar.bz2
 XSERVER_XORG_SERVER_SITE = http://xorg.freedesktop.org/releases/individual/xserver
 XSERVER_XORG_SERVER_LICENSE = MIT
Signature · 1 line
1.9.1
#4 lore raw

PATCH v11 2/8 package/xserver_xorg-server: make the version a choice

Dear Yann E. MORIN,

Quoted 16 lines · Yann E. MORIN

Only a single entry for now, but we'll add one more in an upcoming patch, to support old binary-only drivers, like the NVidia Tegra2/3 drivers.

Cc Gustavo Zacarias <[email protected]>
---
 package/x11r7/xserver_xorg-server/Config.in              | 12 ++++++++++++
 package/x11r7/xserver_xorg-server/xserver_xorg-server.mk |  2 +-
 2 files changed, 13 insertions(+), 1 deletion(-)
package/x11r7/xserver_xorg-server/Config.in +0 -0
index 1123f3b..3a7b18b 100644

package/x11r7/xserver_xorg-server/Config.in config BR2_PACKAGE_XSERVER_XORG_SERVER · line 62

Quoted 6 lines
package/x11r7/xserver_xorg-server/Config.in +3 -0
@@ -57,6 +57,18 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER
 if BR2_PACKAGE_XSERVER_XORG_SERVER
 
 choice
+	bool "X Window System server version"
+
+config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17_1

I think it is not very useful to encode the minor version in the Config.in option name, so I've renamed that to BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17 and applied.

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#5 lore raw

PATCH v11 3/8 package/xserver_xorg-server: add blind options to specify driver ABI

In reply to Yann E. MORIN

The upcoming NVidia Tegra2/3 binary blobs only work with a certain VIDEODRV ABI (namely up to 14), so we must have a way to represent that ABI so that such packages can not be enabled with a too recent/old ABI.

Cc Gustavo Zacarias <[email protected]>
---
 package/x11r7/xserver_xorg-server/Config.in | 8 ++++++++
 1 file changed, 8 insertions(+)
package/x11r7/xserver_xorg-server/Config.in +8 -0
index 3a7b18b..05ce7d7 100644
@@ -56,11 +56,19 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER
 
 if BR2_PACKAGE_XSERVER_XORG_SERVER
 
+config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19
+	bool
+
+config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI
+	int
+	default 19 if BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19
+
 choice
 	bool "X Window System server version"
 
 config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17_1
 	bool "1.17.1"
+	select BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19
 
 endchoice
 
Signature · 1 line
1.9.1
#6 lore raw

PATCH v11 3/8 package/xserver_xorg-server: add blind options to specify driver ABI

Dear Yann E. MORIN,

Quoted 9 lines · Yann E. MORIN

The upcoming NVidia Tegra2/3 binary blobs only work with a certain VIDEODRV ABI (namely up to 14), so we must have a way to represent that ABI so that such packages can not be enabled with a too recent/old ABI.

Cc Gustavo Zacarias <[email protected]>
---
 package/x11r7/xserver_xorg-server/Config.in | 8 ++++++++
 1 file changed, 8 insertions(+)

Applied, thanks.

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#7 lore raw

PATCH v11 4/8 package/xserver_xorg-server: not all versions need all dependencies

In reply to Yann E. MORIN

Support for the Present protocol has been added to, and is mandatory since version 1.15.

As we're on the verge of adding 1.14.7, we need to make Present a version-specific dependency.

Cc Gustavo Zacarias <[email protected]>
---
 package/x11r7/xserver_xorg-server/Config.in              | 2 +-
 package/x11r7/xserver_xorg-server/xserver_xorg-server.mk | 7 ++++++-
 2 files changed, 7 insertions(+), 2 deletions(-)
package/x11r7/xserver_xorg-server/Config.in +1 -1
index 05ce7d7..2c7839e 100644
@@ -35,7 +35,6 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XPROTO_GLPROTO
 	select BR2_PACKAGE_XPROTO_INPUTPROTO
 	select BR2_PACKAGE_XPROTO_KBPROTO
-	select BR2_PACKAGE_XPROTO_PRESENTPROTO
 	select BR2_PACKAGE_XPROTO_RANDRPROTO
 	select BR2_PACKAGE_XPROTO_RENDERPROTO
 	select BR2_PACKAGE_XPROTO_RESOURCEPROTO
@@ -69,6 +68,7 @@ choice
 config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17_1
 	bool "1.17.1"
 	select BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19
+	select BR2_PACKAGE_XPROTO_PRESENTPROTO
 
 endchoice
 
package/x11r7/xserver_xorg-server/xserver_xorg-server.mk +6 -1
index d08197d..79d663c 100644
@@ -38,7 +38,6 @@ XSERVER_XORG_SERVER_DEPENDENCIES = 	\
 	xproto_glproto 			\
 	xproto_inputproto 		\
 	xproto_kbproto 			\
-	xproto_presentproto 		\
 	xproto_randrproto 		\
 	xproto_renderproto 		\
 	xproto_resourceproto 		\
@@ -75,6 +74,12 @@ XSERVER_XORG_SERVER_CONF_OPTS += \
 	--disable-systemd-logind
 endif
 
+# Present protocol only required for xserver 1.15+, but does not matter if
+# enabled for older versions as they don't use it (not even optionally).
+ifeq ($(BR2_PACKAGE_XPROTO_PRESENTPROTO),y)
+XSERVER_XORG_SERVER_DEPENDENCIES += xproto_presentproto
+endif
+
 ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR),y)
 XSERVER_XORG_SERVER_CONF_OPTS += --enable-xorg
 XSERVER_XORG_SERVER_DEPENDENCIES += libpciaccess
Signature · 1 line
1.9.1
#8 lore raw

PATCH v11 4/8 package/xserver_xorg-server: not all versions need all dependencies

Dear Yann E. MORIN,

Quoted 6 lines · Yann E. MORIN

Support for the Present protocol has been added to, and is mandatory since version 1.15.

As we're on the verge of adding 1.14.7, we need to make Present a version-specific dependency.

Quoted 6 lines
Cc Gustavo Zacarias <[email protected]>
---
 package/x11r7/xserver_xorg-server/Config.in              | 2 +-
 package/x11r7/xserver_xorg-server/xserver_xorg-server.mk | 7 ++++++-
 2 files changed, 7 insertions(+), 2 deletions(-)

Applied, thanks.

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#9 lore raw

PATCH v11 5/8 package/xserver_xorg-server: add version 1.14.7

In reply to Yann E. MORIN

Some old binary blobs drivers, like the NVidia Tegra2/3 blobs, only implement an old VIDEODRV ABI.

Since VIDEODRV ABIs are not backward compatible [0], lets introduce an older Xserver version that supports such an old ABI.

[0] http://www.x.org/wiki/XorgModuleABIVersions/

Cc Gustavo Zacarias <[email protected]>
---
 package/x11r7/xserver_xorg-server/Config.in | 9 +++++++++
 1 file changed, 9 insertions(+)
package/x11r7/xserver_xorg-server/Config.in +9 -0
index 2c7839e..d7b169a 100644
@@ -55,11 +55,15 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER
 
 if BR2_PACKAGE_XSERVER_XORG_SERVER
 
+config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_14
+	bool
+
 config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19
 	bool
 
 config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI
 	int
+	default 14 if BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_14
 	default 19 if BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19
 
 choice
@@ -70,11 +74,16 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17_1
 	select BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19
 	select BR2_PACKAGE_XPROTO_PRESENTPROTO
 
+config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_14_7
+	bool "1.14.7"
+	select BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_14
+
 endchoice
 
 config BR2_PACKAGE_XSERVER_XORG_SERVER_VERSION
 	string
 	default "1.17.1" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17_1
+	default "1.14.7" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_14_7
 
 choice
 	prompt "X Window System server type"
Signature · 1 line
1.9.1
#10 lore raw

PATCH v11 5/8 package/xserver_xorg-server: add version 1.14.7

Yann, All,

I was able to do a full build using the 1.14.7 version. The only issue I had is the lack of the hash.

There is a diff of the changes for the .hash file at the end of the mail.

Quoted 41 lines · On Tue, 21 Apr 2015 19:04:41 +0200 "Yann E. MORIN" <[email protected]>…

Some old binary blobs drivers, like the NVidia Tegra2/3 blobs, only implement an old VIDEODRV ABI.

Since VIDEODRV ABIs are not backward compatible [0], lets introduce an older Xserver version that supports such an old ABI.

[0] http://www.x.org/wiki/XorgModuleABIVersions/

Cc Gustavo Zacarias <[email protected]>
---
 package/x11r7/xserver_xorg-server/Config.in | 9 +++++++++
 1 file changed, 9 insertions(+)
(quoted diff) +0 -0

b/package/x11r7/xserver_xorg-server/Config.in index 2c7839e..d7b169a 100644 --- a/package/x11r7/xserver_xorg-server/Config.in +++ b/package/x11r7/xserver_xorg-server/Config.in

(quoted diff) +7 -0
@@ -55,11 +55,15 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER
 
 if BR2_PACKAGE_XSERVER_XORG_SERVER
 
+config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_14
+	bool
+
 config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19
 	bool
 
 config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI
 	int
+	default 14 if BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_14
 	default 19 if BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19
 
 choice
@@ -70,11 +74,16 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17_1
 	select BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19
 	select BR2_PACKAGE_XPROTO_PRESENTPROTO
 
+config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_14_7
+	bool "1.14.7"
+	select BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_14

Review config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17_1 · line 89

Quoted 10 lines
(quoted diff) +2 -0
+
 endchoice
 
 config BR2_PACKAGE_XSERVER_XORG_SERVER_VERSION
 	string
 	default "1.17.1" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17_1
+	default "1.14.7" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_14_7
 
 choice
 	prompt "X Window System server type"
package/x11r7/xserver_xorg-server/xserver_xorg-server.hash +3 -0
index 2c3cc5b..adf2c45 100644
@@ -1,3 +1,6 @@
+# From http://lists.x.org/archives/xorg-announce/2014-June/002440.html
+sha1   7a95765e56b124758fcd7b609589e65b8870880b                                xorg-server-1.14.7.tar.bz2
+sha256 fcf66fa6ad86227613d2d3e8ae13ded297e2a1e947e9060a083eaf80d323451f        xorg-server-1.14.7.tar.bz2
 # From http://lists.x.org/archives/xorg-announce/2015-February/002530.html
 sha1   490118810a54e91c8814245c99d6285caf4985dd                                xorg-server-1.17.1.tar.bz2
 sha256 2bf8e9f6f0a710dec1d2472467bff1f4e247cb6dcd76eb469aafdc8a2d7db2ab        xorg-server-1.17.1.tar.bz2

Regards,

Nicolas

#11 lore raw

PATCH v11 5/8 package/xserver_xorg-server: add version 1.14.7

Dear Nicolas Serafini,

package/x11r7/xserver_xorg-server/xserver_xorg-server.hash line 6

Quoted 11 lines · Nicolas Serafini
package/x11r7/xserver_xorg-server/xserver_xorg-server.hash +3 -0
index 2c3cc5b..adf2c45 100644
@@ -1,3 +1,6 @@
+# From http://lists.x.org/archives/xorg-announce/2014-June/002440.html
+sha1   7a95765e56b124758fcd7b609589e65b8870880b                                xorg-server-1.14.7.tar.bz2
+sha256 fcf66fa6ad86227613d2d3e8ae13ded297e2a1e947e9060a083eaf80d323451f        xorg-server-1.14.7.tar.bz2
 # From http://lists.x.org/archives/xorg-announce/2015-February/002530.html
 sha1   490118810a54e91c8814245c99d6285caf4985dd                                xorg-server-1.17.1.tar.bz2
 sha256 2bf8e9f6f0a710dec1d2472467bff1f4e247cb6dcd76eb469aafdc8a2d7db2ab        xorg-server-1.17.1.tar.bz2

Thanks, I've squashed this change into the corresponding commit.

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#12 lore raw

PATCH v11 5/8 package/xserver_xorg-server: add version 1.14.7

In reply to Yann E. MORIN

Yann, All,

I was able to do a full build using the 1.14.7 version. The only issue I had is the lack of the hash.

There is a diff of the changes for the .hash file at the end of the mail.

Quoted 41 lines · On Tue, 21 Apr 2015 19:04:41 +0200 "Yann E. MORIN" <[email protected]>…

Some old binary blobs drivers, like the NVidia Tegra2/3 blobs, only implement an old VIDEODRV ABI.

Since VIDEODRV ABIs are not backward compatible [0], lets introduce an older Xserver version that supports such an old ABI.

[0] http://www.x.org/wiki/XorgModuleABIVersions/

Cc Gustavo Zacarias <[email protected]>
---
 package/x11r7/xserver_xorg-server/Config.in | 9 +++++++++
 1 file changed, 9 insertions(+)
(quoted diff) +0 -0

b/package/x11r7/xserver_xorg-server/Config.in index 2c7839e..d7b169a 100644 --- a/package/x11r7/xserver_xorg-server/Config.in +++ b/package/x11r7/xserver_xorg-server/Config.in

(quoted diff) +7 -0
@@ -55,11 +55,15 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER
 
 if BR2_PACKAGE_XSERVER_XORG_SERVER
 
+config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_14
+	bool
+
 config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19
 	bool
 
 config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI
 	int
+	default 14 if BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_14
 	default 19 if BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19
 
 choice
@@ -70,11 +74,16 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17_1
 	select BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19
 	select BR2_PACKAGE_XPROTO_PRESENTPROTO
 
+config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_14_7
+	bool "1.14.7"
+	select BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_14

Review config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17_1 · line 89

Quoted 10 lines
(quoted diff) +2 -0
+
 endchoice
 
 config BR2_PACKAGE_XSERVER_XORG_SERVER_VERSION
 	string
 	default "1.17.1" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17_1
+	default "1.14.7" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_14_7
 
 choice
 	prompt "X Window System server type"
package/x11r7/xserver_xorg-server/xserver_xorg-server.hash +3 -0
index 2c3cc5b..adf2c45 100644
@@ -1,3 +1,6 @@
+# From http://lists.x.org/archives/xorg-announce/2014-June/002440.html
+sha1   7a95765e56b124758fcd7b609589e65b8870880b                                xorg-server-1.14.7.tar.bz2
+sha256 fcf66fa6ad86227613d2d3e8ae13ded297e2a1e947e9060a083eaf80d323451f        xorg-server-1.14.7.tar.bz2
 # From http://lists.x.org/archives/xorg-announce/2015-February/002530.html
 sha1   490118810a54e91c8814245c99d6285caf4985dd                                xorg-server-1.17.1.tar.bz2
 sha256 2bf8e9f6f0a710dec1d2472467bff1f4e247cb6dcd76eb469aafdc8a2d7db2ab        xorg-server-1.17.1.tar.bz2

Regards,

Nicolas

#13 lore raw

PATCH v11 5/8 package/xserver_xorg-server: add version 1.14.7

In reply to Yann E. MORIN

Dear Yann E. MORIN,

Quoted 6 lines · Yann E. MORIN

Some old binary blobs drivers, like the NVidia Tegra2/3 blobs, only implement an old VIDEODRV ABI.

Since VIDEODRV ABIs are not backward compatible [0], lets introduce an older Xserver version that supports such an old ABI.

Quoted 7 lines

[0] http://www.x.org/wiki/XorgModuleABIVersions/

Cc Gustavo Zacarias <[email protected]>
---
 package/x11r7/xserver_xorg-server/Config.in | 9 +++++++++
 1 file changed, 9 insertions(+)

As noticed by Nicolas, I've added a hash for 1.14.7.

Quoted 1 line

+config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_14_7

and renamed that to BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_14.

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#14 lore raw

PATCH v11 6/8 package/nvidia-tegra23-binaries: new package

In reply to Yann E. MORIN

From: Nicolas Serafini <[email protected]>

This patch adds a new package for all libraries and drivers provided by Nvidia Linux4Tegra release 16.5.

We have intermediate .mk and Config.in, because those values will be shared with the codecs package, to come in a follow-up patch, like we have for the Freescale stuff.

[yann.morin.1998 at free.fr:
- split jpeg into its own patch
- split codecs and gstreamer plugins out into their own packages
- do not patch for .pc files, just bundle them in $(@D)
]

---
Changes v10 -> v11:
- add dependency on the proper VIDEODRV ABI, and drop all useless ABI choices, since we only have one valid (ABI 14) (Thomas)
- remove superfluous TAB

Changes v9 -> v10:
- bump version (Nicolas)

Changes v7 -> v9
- fix typo in variable names (Nicolas)

Changes v6 -> v7:
- use mesa3d-headers instead of Khronos

---
 package/Config.in                                  |  1 +
 package/nvidia-tegra23/Config.in                   | 37 ++++++++
 .../nvidia-tegra23-binaries/Config.in              | 27 ++++++
 .../nvidia-tegra23/nvidia-tegra23-binaries/egl.pc  | 10 +++
 .../nvidia-tegra23/nvidia-tegra23-binaries/gles.pc | 10 +++
 .../nvidia-tegra23-binaries/glesv2.pc              | 10 +++
 .../nvidia-tegra23-binaries.hash                   |  3 +
 .../nvidia-tegra23-binaries.mk                     | 98 ++++++++++++++++++++++
 package/nvidia-tegra23/nvidia-tegra23.mk           | 18 ++++
 9 files changed, 214 insertions(+)
 create mode 100644 package/nvidia-tegra23/Config.in
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-binaries/Config.in
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-binaries/egl.pc
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-binaries/gles.pc
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-binaries/glesv2.pc
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-binaries/nvidia-tegra23-binaries.hash
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-binaries/nvidia-tegra23-binaries.mk
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23.mk
package/Config.in +1 -0
index cee013e..e773f77 100644
@@ -378,6 +378,7 @@ endif
 	source "package/nanocom/Config.in"
 	source "package/neard/Config.in"
 	source "package/nvidia-driver/Config.in"
+	source "package/nvidia-tegra23/Config.in"
 	source "package/ofono/Config.in"
 	source "package/ola/Config.in"
 	source "package/on2-8170-modules/Config.in"
package/nvidia-tegra23/Config.in new file +37 -0
new file mode 100644
index 0000000..28c99c7
@@ -0,0 +1,37 @@
+menuconfig BR2_PACKAGE_NVIDIA_TEGRA23
+	bool "nvidia-tegra23"
+	depends on BR2_cortex_a9
+	depends on BR2_ARM_EABIHF && BR2_TOOLCHAIN_USES_GLIBC
+	depends on BR2_PACKAGE_XORG7
+	depends on BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_14
+	help
+	  Install NVidia proprietary blobs to drive Tegra2 or Tegra3
+	  GPUs found in some mobile-targeted ARM SoCs.
+
+if BR2_PACKAGE_NVIDIA_TEGRA23
+
+choice
+	prompt "Tegra platform"
+	help
+	  Select the SOC platform.
+
+config BR2_PACKAGE_NVIDIA_TEGRA23_TEGRA2
+	bool "Tegra 2"
+	help
+	  NVIDIA Tegra 2 is a dual-core Cortex-A9 without NEON.
+
+config BR2_PACKAGE_NVIDIA_TEGRA23_TEGRA3
+	bool "Tegra 3"
+	depends on BR2_ARM_CPU_HAS_NEON
+	help
+	  NVIDIA Tegra 3 is a quad-core Cortex-A9 with NEON.
+
+endchoice
+
+source "package/nvidia-tegra23/nvidia-tegra23-binaries/Config.in"
+endif
+
+comment "nvidia-tegra23 needs Xorg <= 1.14 and a (e)glibc toolchain w/ EABIhf"
+	depends on BR2_cortex_a9
+	depends on !BR2_ARM_EABIHF || !BR2_TOOLCHAIN_USES_GLIBC \
+		|| !BR2_PACKAGE_XORG7 || !BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_14
package/nvidia-tegra23/nvidia-tegra23-binaries/Config.in new file +27 -0
new file mode 100644
index 0000000..8c384b8
@@ -0,0 +1,27 @@
+config BR2_PACKAGE_NVIDIA_TEGRA23_BINARIES
+	bool "nvidia-tegra23 binaries"
+	select BR2_PACKAGE_MESA3D_HEADERS
+	select BR2_PACKAGE_XLIB_LIBXT
+	select BR2_PACKAGE_XLIB_LIBXEXT
+	select BR2_PACKAGE_XLIB_LIBXV
+	select BR2_PACKAGE_HAS_LIBEGL
+	select BR2_PACKAGE_HAS_LIBGLES
+	select BR2_PACKAGE_HAS_LIBOPENMAX
+	help
+	  Those packages provide libraries, drivers and firmware that comes from
+	  NVIDIA Linux For Tegra.
+
+	  https://developer.nvidia.com/linux-tegra
+
+if BR2_PACKAGE_NVIDIA_TEGRA23_BINARIES
+
+config BR2_PACKAGE_PROVIDES_LIBEGL
+	default "nvidia-tegra23-binaries"
+
+config BR2_PACKAGE_PROVIDES_LIBGLES
+	default "nvidia-tegra23-binaries"
+
+config BR2_PACKAGE_PROVIDES_LIBOPENMAX
+	default "nvidia-tegra23-binaries"
+
+endif
package/nvidia-tegra23/nvidia-tegra23-binaries/egl.pc new file +10 -0
new file mode 100644
index 0000000..3af7eec
@@ -0,0 +1,10 @@
+prefix=/usr
+exec_prefix=${prefix}
+libdir=/usr/lib
+includedir=/usr/include
+
+Name: egl
+Description: EGL implementation
+Version: 1
+Cflags: -I${includedir}/EGL
+Libs: -L${libdir} -lEGL
package/nvidia-tegra23/nvidia-tegra23-binaries/gles.pc new file +10 -0
new file mode 100644
index 0000000..91387c9
@@ -0,0 +1,10 @@
+prefix=/usr
+exec_prefix=${prefix}
+libdir=/usr/lib
+includedir=/usr/include
+
+Name: glesv2
+Description: OpenGL ES 1.1 implementation
+Version: 1.1
+Cflags: -I${includedir}/GLES
+Libs: -L${libdir} -lGLESv1_CM
package/nvidia-tegra23/nvidia-tegra23-binaries/glesv2.pc new file +10 -0
new file mode 100644
index 0000000..356a1cb
@@ -0,0 +1,10 @@
+prefix=/usr
+exec_prefix=${prefix}
+libdir=/usr/lib
+includedir=/usr/include
+
+Name: glesv2
+Description: OpenGL ES 2 implementation
+Version: 2
+Cflags: -I${includedir}/GLESv2
+Libs: -L${libdir} -lGLESv2
package/nvidia-tegra23/nvidia-tegra23-binaries/nvidia-tegra23-binaries.hash new file +3 -0
new file mode 100644
index 0000000..50c3cda
@@ -0,0 +1,3 @@
+# From https://developer.nvidia.com/linux-tegra-rel-16
+sha1 295dcd63b2f122c2d99f07fcc083db9adb8ac178 Tegra20_Linux_R16.5_armhf.tbz2
+sha1 6be645c20d81d518856bc8520ef4c2472d57eaef Tegra30_Linux_R16.5_armhf.tbz2
package/nvidia-tegra23/nvidia-tegra23-binaries/nvidia-tegra23-binaries.mk new file +98 -0

98 lines not on this page · raw message

package/nvidia-tegra23/nvidia-tegra23.mk new file +18 -0
new file mode 100644
index 0000000..b97d0cc
@@ -0,0 +1,18 @@
+################################################################################
+#
+# nvidia-tegra23
+#
+################################################################################
+
+NVIDIA_TEGRA23_VERSION = 16.5
+
+ifeq ($(BR2_PACKAGE_NVIDIA_TEGRA23_TEGRA2),y)
+NVIDIA_TEGRA23_SITE = http://developer.download.nvidia.com/mobile/tegra/l4t/r16.5.0/ventana_release_armhf
+NVIDIA_TEGRA23_BASE = Tegra20_Linux
+endif
+ifeq ($(BR2_PACKAGE_NVIDIA_TEGRA23_TEGRA3),y)
+NVIDIA_TEGRA23_SITE = http://developer.download.nvidia.com/mobile/tegra/l4t/r16.5.0/cardhu_release_armhf
+NVIDIA_TEGRA23_BASE = Tegra30_Linux
+endif
+
+include $(sort $(wildcard package/nvidia-tegra23/*/*.mk))
Signature · 1 line
1.9.1
#15 lore raw

PATCH v11 6/8 package/nvidia-tegra23-binaries: new package

Dear Yann E. MORIN,

Quoted 15 lines · Yann E. MORIN

From: Nicolas Serafini <[email protected]>

This patch adds a new package for all libraries and drivers provided by Nvidia Linux4Tegra release 16.5.

We have intermediate .mk and Config.in, because those values will be shared with the codecs package, to come in a follow-up patch, like we have for the Freescale stuff.

[yann.morin.1998 at free.fr:
- split jpeg into its own patch
- split codecs and gstreamer plugins out into their own packages
- do not patch for .pc files, just bundle them in $(@D)
]

Quoted 8 lines

---
Changes v10 -> v11:
- add dependency on the proper VIDEODRV ABI, and drop all useless ABI choices, since we only have one valid (ABI 14) (Thomas)
- remove superfluous TAB

Applied, after doing a good number of changes:

[Thomas:
- don't select BR2_PACKAGE_XLIB_LIBXT, there is no reference to it in <pkg>_DEPENDENCIES, and it doesn't seem to be used by any library.
- select BR2_PACKAGE_XLIB_LIBX11, which is referenced by the .mk file, and is actually used by the pre-built .so files.
- do not select BR2_PACKAGE_XLIB_LIBXV, since it isn't used by the X.org libraries/drivers, but only the Gstreamer ones.
- remove 'NVIDIA_TEGRA23_BINARIES_INSTALL_TARGET = YES', it is not needed since it is the default.
- remove the definitions of NVIDIA_TEGRA23_BINARIES_FIRMWARE, NVIDIA_TEGRA23_BINARIES_LIBRARIES and NVIDIA_TEGRA23_BINARIES_PKGCONFIG, these are very long, and not really needed: just copy all the firmware, libraries and .pc files with a simple 'cp -dpfr'.]

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#16 lore raw

PATCH v11 7/8 package.nvidia-tegra23-binaries: add gstreamer plugins

In reply to Yann E. MORIN

From: Nicolas Serafini <[email protected]>

[yann.morin.1998 at free.fr: split out into their own patch]
---
 .../nvidia-tegra23-binaries/Config.in              | 15 +++++++++++
 .../nvidia-tegra23-binaries.mk                     | 30 ++++++++++++++++++++++
 2 files changed, 45 insertions(+)
package/nvidia-tegra23/nvidia-tegra23-binaries/Config.in +15 -0
index 8c384b8..00c35b7 100644
@@ -24,4 +24,19 @@ config BR2_PACKAGE_PROVIDES_LIBGLES
 config BR2_PACKAGE_PROVIDES_LIBOPENMAX
 	default "nvidia-tegra23-binaries"
 
+config BR2_PACKAGE_NVIDIA_TEGRA23_BINARIES_GSTREAMER_PLUGINS
+	bool "GStreamer 0.10.x plugins"
+	depends on BR2_PACKAGE_GSTREAMER # Run-time only
+	help
+	  GStreamer 0.10.x plugins
+
+config BR2_PACKAGE_NVIDIA_TEGRA23_BINARIES_NV_SAMPLE_APPS
+	bool "NVIDIA multimedia sample apps"
+	depends on BR2_PACKAGE_NVIDIA_TEGRA23_BINARIES_GSTREAMER_PLUGINS
+	help
+	  nvgstplayer and nvgstcapture multimedia test applications.
+
+comment "GStreamer 0.10.x plugins need GStreamer 0.10"
+	depends on !BR2_PACKAGE_GSTREAMER
+
 endif
package/nvidia-tegra23/nvidia-tegra23-binaries/nvidia-tegra23-binaries.mk +30 -0
index 6e41764..fb27700 100644
@@ -10,6 +10,10 @@ NVIDIA_TEGRA23_BINARIES_SOURCE = $(NVIDIA_TEGRA23_BASE)_R$(NVIDIA_TEGRA23_BINARI
 
 NVIDIA_TEGRA23_BINARIES_LICENSE = License For Customer Use of NVIDIA Software
 NVIDIA_TEGRA23_BINARIES_LICENSE_FILES = nv_tegra/LICENSE
+ifeq ($(BR2_PACKAGE_NVIDIA_TEGRA23_BINARIES_GSTREAMER_PLUGINS),y)
+NVIDIA_TEGRA23_BINARIES_LICENSE += LGPLv2.1
+NVIDIA_TEGRA23_BINARIES_LICENSE_FILES += nv_tegra/nv_sample_apps/LICENSE.gst-openmax
+endif
 
 NVIDIA_TEGRA23_BINARIES_INSTALL_STAGING = YES
 NVIDIA_TEGRA23_BINARIES_INSTALL_TARGET = YES
@@ -49,6 +53,11 @@ NVIDIA_TEGRA23_BINARIES_LIBRARIES = \
 NVIDIA_TEGRA23_BINARIES_DRV = \
 	nv_tegra/nvidia_drivers/usr/lib/xorg/modules/drivers/tegra_drv.abi$(BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI).so
 
+NVIDIA_TEGRA23_BINARIES_GSTREAMER_PLUGINS = \
+	libgstnv4l2.so libgstnvvidconv.so libgstnvxvimagesink.so libgstomx.so
+
+NVIDIA_TEGRA23_BINARIES_MULTIMEDIA_APPS = nvgstplayer nvgstcapture
+
 NVIDIA_TEGRA23_BINARIES_PKGCONFIG = egl.pc gles.pc glesv2.pc
 
 define NVIDIA_TEGRA23_BINARIES_EXTRACT_FURTHER
@@ -75,12 +84,31 @@ define NVIDIA_TEGRA23_BINARIES_INSTALL_LIBS
 	)
 endef
 
+ifeq ($(BR2_PACKAGE_NVIDIA_TEGRA23_BINARIES_GSTREAMER_PLUGINS),y)
+define NVIDIA_TEGRA23_BINARIES_INSTALL_GST_PLUGINS
+	$(foreach gst_plug,$(NVIDIA_TEGRA23_BINARIES_GSTREAMER_PLUGINS),
+		$(INSTALL) -D -m 0644 $(@D)/nv_tegra/nv_sample_apps/nvgstapps/usr/lib/gstreamer-0.10/$(gst_plug) \
+			$(1)/usr/lib/gstreamer-0.10/$(gst_plug); \
+	)
+endef
+endif
+
+ifeq ($(BR2_PACKAGE_NVIDIA_TEGRA23_BINARIES_NV_SAMPLE_APPS),y)
+define NVIDIA_TEGRA23_BINARIES_INSTALL_APPS
+	$(foreach apps,$(NVIDIA_TEGRA23_BINARIES_MULTIMEDIA_APPS),
+		$(INSTALL) -D -m 0755 $(@D)/nv_tegra/nv_sample_apps/nvgstapps/usr/bin/$(apps) \
+			$(TARGET_DIR)/usr/bin/$(apps); \
+	)
+endef
+endif
+
 define NVIDIA_TEGRA23_BINARIES_INSTALL_STAGING_CMDS
 	$(call NVIDIA_TEGRA23_BINARIES_INSTALL_LIBS,$(STAGING_DIR))
 	$(foreach pkgconfig,$(NVIDIA_TEGRA23_BINARIES_PKGCONFIG),
 		$(INSTALL) -D -m 0644 package/nvidia-tegra23/nvidia-tegra23-binaries/$(pkgconfig) \
 			$(STAGING_DIR)/usr/lib/pkgconfig/$(pkgconfig); \
 	)
+	$(call NVIDIA_TEGRA23_BINARIES_INSTALL_GST_PLUGINS,$(STAGING_DIR))
 endef
 
 define NVIDIA_TEGRA23_BINARIES_INSTALL_TARGET_CMDS
@@ -93,6 +121,8 @@ define NVIDIA_TEGRA23_BINARIES_INSTALL_TARGET_CMDS
 		$(TARGET_DIR)/etc/nv_tegra_release
 	$(INSTALL) -D -m 0644 $(@D)/$(NVIDIA_TEGRA23_BINARIES_DRV) \
 		$(TARGET_DIR)/usr/lib/xorg/modules/drivers/tegra_drv.so
+	$(call NVIDIA_TEGRA23_BINARIES_INSTALL_GST_PLUGINS,$(TARGET_DIR))
+	$(NVIDIA_TEGRA23_BINARIES_INSTALL_APPS)
 endef
 
 $(eval $(generic-package))
Signature · 1 line
1.9.1
#17 lore raw

PATCH v11 7/8 package.nvidia-tegra23-binaries: add gstreamer plugins

Dear Yann E. MORIN,

Quoted 9 lines · Yann E. MORIN

From: Nicolas Serafini <[email protected]>

[yann.morin.1998 at free.fr: split out into their own patch]
---
 .../nvidia-tegra23-binaries/Config.in              | 15 +++++++++++
 .../nvidia-tegra23-binaries.mk                     | 30 ++++++++++++++++++++++
 2 files changed, 45 insertions(+)

Applied, after doing some changes:

[Thomas:
- add missing libXv dependency.
- remove the NVIDIA_TEGRA23_BINARIES_GSTREAMER_PLUGINS and NVIDIA_TEGRA23_BINARIES_MULTIMEDIA_APPS, and use simple 'cp -dpfr' calls to copy the plugins and sample applications.]

Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#18 lore raw

PATCH v11 8/8 package/nvidia-tegra23-codecs: new package

In reply to Yann E. MORIN

From: Nicolas Serafini <[email protected]>

nvidia-tegra23-codecs provides various HW-accelerated media codecs, such
as: AAC3, h264, jpeg, MP3...

[me:
- split codecs from binaries into this patch
- use our extractor helpers
]

---
Changes v9 -> v10:
- bump version (Nicolas)

---
 package/nvidia-tegra23/Config.in                   |  1 +
 .../nvidia-tegra23/nvidia-tegra23-codecs/Config.in |  7 ++++
 .../nvidia-tegra23-codecs.hash                     |  3 ++
 .../nvidia-tegra23-codecs/nvidia-tegra23-codecs.mk | 41 ++++++++++++++++++++++
 4 files changed, 52 insertions(+)
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-codecs/Config.in
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-codecs/nvidia-tegra23-codecs.hash
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-codecs/nvidia-tegra23-codecs.mk
package/nvidia-tegra23/Config.in +1 -0
index 28c99c7..eb33581 100644
@@ -29,6 +29,7 @@ config BR2_PACKAGE_NVIDIA_TEGRA23_TEGRA3
 endchoice
 
 source "package/nvidia-tegra23/nvidia-tegra23-binaries/Config.in"
+source "package/nvidia-tegra23/nvidia-tegra23-codecs/Config.in"
 endif
 
 comment "nvidia-tegra23 needs Xorg <= 1.14 and a (e)glibc toolchain w/ EABIhf"
package/nvidia-tegra23/nvidia-tegra23-codecs/Config.in new file +7 -0
new file mode 100644
index 0000000..df9de69
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_NVIDIA_TEGRA23_CODECS
+	bool "nvidia-tegra23 codecs"
+	depends on BR2_PACKAGE_NVIDIA_TEGRA23_BINARIES
+	help
+	  NVIDIA Tegra restricted codecs from Linux For Tegra 16.5.
+
+	  https://developer.nvidia.com/linux-tegra-rel-16
package/nvidia-tegra23/nvidia-tegra23-codecs/nvidia-tegra23-codecs.hash new file +3 -0
new file mode 100644
index 0000000..9b5c614
@@ -0,0 +1,3 @@
+# From https://developer.nvidia.com/linux-tegra-rel-16
+sha1 540e89d5462537cd59c8a86efdb786b3b4310868 Tegra20_Linux-codecs_R16.5_armhf.tbz2
+sha1 3637efe808f25594e3cdc2756aef6e0274ab70f4 Tegra30_Linux-codecs_R16.5_armhf.tbz2
package/nvidia-tegra23/nvidia-tegra23-codecs/nvidia-tegra23-codecs.mk new file +41 -0

41 lines not on this page · raw message

Signature · 1 line
1.9.1
#19 lore raw

PATCH v11 8/8 package/nvidia-tegra23-codecs: new package

Dear Yann E. MORIN,

Quoted 15 lines · Yann E. MORIN

From: Nicolas Serafini <[email protected]>

nvidia-tegra23-codecs provides various HW-accelerated media codecs, such
as: AAC3, h264, jpeg, MP3...

[me:
- split codecs from binaries into this patch
- use our extractor helpers
]

---
Changes v9 -> v10:
- bump version (Nicolas)

Quoted 9 lines
---
 package/nvidia-tegra23/Config.in                   |  1 +
 .../nvidia-tegra23/nvidia-tegra23-codecs/Config.in |  7 ++++
 .../nvidia-tegra23-codecs.hash                     |  3 ++
 .../nvidia-tegra23-codecs/nvidia-tegra23-codecs.mk | 41 ++++++++++++++++++++++
 4 files changed, 52 insertions(+)
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-codecs/Config.in
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-codecs/nvidia-tegra23-codecs.hash
 create mode 100644 package/nvidia-tegra23/nvidia-tegra23-codecs/nvidia-tegra23-codecs.mk

Applied, after doing some changes:

[Thomas:
- Remove <pkg>_DEPENDENCIES variable that contained nvidia-tegra23-binaries, since this dependency is a runtime dependency only.
- Remove 'NVIDIA_TEGRA23_CODECS_INSTALL_STAGING = NO', since this is the default.
- Remove 'NVIDIA_TEGRA23_CODECS_INSTALL_TARGET = YES', since this is the default.
- Instead of using a NVIDIA_TEGRA23_CODECS_FIRMWARE variable listing the firmware files to copy, simply copy all firmware files.]

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#20 lore raw

v11 cover NVidia GPU binary blobs for Tegra2/3 (branch yem/gfx2)

In reply to Yann E. MORIN

Hello,

Quoted 6 lines · Yann E. MORIN

----------------------------------------------------------------
Nicolas Serafini (3):
package/nvidia-tegra23-binaries: new package package.nvidia-tegra23-binaries: add gstreamer plugins package/nvidia-tegra23-codecs: new package

Quoted 6 lines

Yann E. MORIN (5):
package/xserver_xorg-server: prepare for multiple supported versions package/xserver_xorg-server: make the version a choice package/xserver_xorg-server: add blind options to specify driver ABI package/xserver_xorg-server: not all versions need all dependencies package/xserver_xorg-server: add version 1.14.7

Series applied!

Nicolas, if you can give a test at the latest master, and check everything is still working fine for you, it would be great.

Thanks a lot!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#21 lore raw

v11 cover NVidia GPU binary blobs for Tegra2/3 (branch yem/gfx2)

Thomas, All,

On 2015-04-26 22:31 +0200, Thomas Petazzoni spake thusly:

Quoted 8 lines · Yann E. MORIN
Quoted 7 lines

----------------------------------------------------------------
Nicolas Serafini (3):
package/nvidia-tegra23-binaries: new package package.nvidia-tegra23-binaries: add gstreamer plugins package/nvidia-tegra23-codecs: new package

Quoted 8 lines
Quoted 6 lines

Yann E. MORIN (5):
package/xserver_xorg-server: prepare for multiple supported versions package/xserver_xorg-server: make the version a choice package/xserver_xorg-server: add blind options to specify driver ABI package/xserver_xorg-server: not all versions need all dependencies package/xserver_xorg-server: add version 1.14.7

Series applied!

Thanks! And thanks for further fixing it! :-)

/me can dump one more local branch! :-]

Regards,
Yann E. MORIN.

Signature · 6 lines
.-----------------.--------------------.------------------.--------------------.
|  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.  |
'------------------------------^-------^------------------^--------------------'