Skip to contentSkip to conversation

Xorg: enable Etnaviv support

PATCH Superseded Evgeniy Didin 4 participants 9 messages Dec 20, 2017

v1 of 2 Superseded Latest is v2 →

lore
Share & tools
lore
#0 lore raw

cover Xorg: enable Etnaviv support

This patch series enables Etnaviv support in Xorg.

Cc Thomas Petazzoni <[email protected]>
Cc Alexey Brodkin <[email protected]>
Cc arc-buildroot at synopsys.com

Evgeniy Didin (2):
libdrm-armada: new package
xf86-video-armada: new package

 package/Config.in                                  |  1 +
 package/libdrm-armada/Config.in                    |  7 +++++
 package/libdrm-armada/libdrm-armada.hash           |  2 ++
 package/libdrm-armada/libdrm-armada.mk             | 24 +++++++++++++++
 package/x11r7/Config.in                            |  1 +
 package/x11r7/xdriver_xf86-video-armada/Config.in  | 11 +++++++
 .../xdriver_xf86-video-armada.hash                 |  2 ++
 .../xdriver_xf86-video-armada.mk                   | 36 ++++++++++++++++++++++
 8 files changed, 84 insertions(+)
 create mode 100644 package/libdrm-armada/Config.in
 create mode 100644 package/libdrm-armada/libdrm-armada.hash
 create mode 100644 package/libdrm-armada/libdrm-armada.mk
 create mode 100644 package/x11r7/xdriver_xf86-video-armada/Config.in
 create mode 100644 package/x11r7/xdriver_xf86-video-armada/xdriver_xf86-video-armada.hash
 create mode 100644 package/x11r7/xdriver_xf86-video-armada/xdriver_xf86-video-armada.mk
Signature · 1 line
2.11.0
#1 lore raw

PATCH 1/2 libdrm-armada: new package

libdrm-armada is an Etnaviv libdrm buffer object management module. It is used with xf86-driver-video-armada, which is Xorg driver for Etnaviv.

Cc Thomas Petazzoni <[email protected]>
Cc Alexey Brodkin <[email protected]>
Cc arc-buildroot at synopsys.com
---
 package/Config.in                        |  1 +
 package/libdrm-armada/Config.in          |  7 +++++++
 package/libdrm-armada/libdrm-armada.hash |  2 ++
 package/libdrm-armada/libdrm-armada.mk   | 24 ++++++++++++++++++++++++
 4 files changed, 34 insertions(+)
 create mode 100644 package/libdrm-armada/Config.in
 create mode 100644 package/libdrm-armada/libdrm-armada.hash
 create mode 100644 package/libdrm-armada/libdrm-armada.mk
package/Config.in +1 -0
index bd39a374f0..54caf7ae41 100644
@@ -1116,6 +1116,7 @@ menu "Graphics"
 	source "package/libdmtx/Config.in"
 	source "package/libdri2/Config.in"
 	source "package/libdrm/Config.in"
+        source "package/libdrm-armada/Config.in"
 	source "package/libepoxy/Config.in"
 	source "package/libexif/Config.in"
 	source "package/libfm/Config.in"
package/libdrm-armada/Config.in new file +7 -0
new file mode 100644
index 0000000000..5deabf35ae
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_LIBDRM_ARMADA
+	bool "libdrm-armada"
+	select BR2_PACKAGE_LIBDRM
+	help
+	  Etnaviv libdrm buffer object management module
+
+	  http://git.arm.linux.org.uk/cgit/libdrm-armada.git/
package/libdrm-armada/libdrm-armada.hash new file +2 -0
new file mode 100644
index 0000000000..40911ea8e4
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256 0454ac8f55c7bfff548b75d7116c56fa125f5dfe118e630a85feb221de82fbb6  libdrm-armada-6b461c.tar.gz
package/libdrm-armada/libdrm-armada.mk new file +24 -0
new file mode 100644
index 0000000000..fb96ad0b6e
@@ -0,0 +1,24 @@
+################################################################################
+#
+# libdrm-armada
+#
+################################################################################
+
+LIBDRM_ARMADA_VERSION = 6b461c
+LIBDRM_ARMADA_SOURCE = libdrm-armada-$(LIBDRM_ARMADA_VERSION).tar.gz
+LIBDRM_ARMADA_SITE = http://git.arm.linux.org.uk/cgit/libdrm-armada.git
+LIBDRM_ARMADA_SITE_METHOD = git
+LIBDRM_ARMADA_DEPENDENCIES = libdrm
+LIBDRM_ARMADA_INSTALL_STAGING = YES
+
+# We're patching configure.ac
+LIBDRM_ARMADA_AUTORECONF = YES
+
+# Needed for autoreconf to work properly
+define LIBDRM_ARMADA_FIXUP_M4_DIR
+        mkdir $(@D)/m4
+endef
+
+LIBDRM_ARMADA_POST_PATCH_HOOKS += LIBDRM_ARMADA_FIXUP_M4_DIR
+
+$(eval $(autotools-package))
Signature · 1 line
2.11.0
#2 lore raw

PATCH 1/2 libdrm-armada: new package

Evgeniy, All,

On 2017-12-20 18:08 +0300, Evgeniy Didin spake thusly:

Quoted 22 lines

libdrm-armada is an Etnaviv libdrm buffer object management module. It is used with xf86-driver-video-armada, which is Xorg driver for Etnaviv.

Cc Thomas Petazzoni <[email protected]>
Cc Alexey Brodkin <[email protected]>
Cc arc-buildroot at synopsys.com
---
 package/Config.in                        |  1 +
 package/libdrm-armada/Config.in          |  7 +++++++
 package/libdrm-armada/libdrm-armada.hash |  2 ++
 package/libdrm-armada/libdrm-armada.mk   | 24 ++++++++++++++++++++++++
 4 files changed, 34 insertions(+)
 create mode 100644 package/libdrm-armada/Config.in
 create mode 100644 package/libdrm-armada/libdrm-armada.hash
 create mode 100644 package/libdrm-armada/libdrm-armada.mk
package/Config.in +0 -0
index bd39a374f0..54caf7ae41 100644

package/Config.in menu "Graphics" · line 1119

Quoted 4 lines
package/Config.in +1 -0
@@ -1116,6 +1116,7 @@ menu "Graphics"
 	source "package/libdmtx/Config.in"
 	source "package/libdri2/Config.in"
 	source "package/libdrm/Config.in"
+        source "package/libdrm-armada/Config.in"

Indentation with a TAB, not spaces:

    $ ./utils/check-package package/libdrm-armada/*
    package/libdrm-armada/libdrm-armada.mk:19: expected indent with tabs
    33 lines processed
    1 warnings generated

;-)

package/libdrm-armada/Config.in line 3

Quoted 12 lines
package/Config.in +0 -0
 	source "package/libepoxy/Config.in"
 	source "package/libexif/Config.in"
 	source "package/libfm/Config.in"
package/libdrm-armada/Config.in new file +3 -0
new file mode 100644
index 0000000000..5deabf35ae
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_LIBDRM_ARMADA
+	bool "libdrm-armada"
+	select BR2_PACKAGE_LIBDRM

libdrm depends on BR2_TOOLCHAIN_HAS_THREADS, so you need to propagate the dependency.

Quoted 18 lines
package/libdrm-armada/Config.in new file +4 -0
+	help
+	  Etnaviv libdrm buffer object management module
+
+	  http://git.arm.linux.org.uk/cgit/libdrm-armada.git/
package/libdrm-armada/libdrm-armada.hash new file +2 -0
new file mode 100644
index 0000000000..40911ea8e4
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256 0454ac8f55c7bfff548b75d7116c56fa125f5dfe118e630a85feb221de82fbb6  libdrm-armada-6b461c.tar.gz
package/libdrm-armada/libdrm-armada.mk new file +0 -0
new file mode 100644
index 0000000000..fb96ad0b6e

package/libdrm-armada/libdrm-armada.mk line 8

Quoted 8 lines
package/libdrm-armada/libdrm-armada.mk new file +8 -0
@@ -0,0 +1,24 @@
+################################################################################
+#
+# libdrm-armada
+#
+################################################################################
+
+LIBDRM_ARMADA_VERSION = 6b461c
+LIBDRM_ARMADA_SOURCE = libdrm-armada-$(LIBDRM_ARMADA_VERSION).tar.gz

This is the default value, so must not be specified.

package/libdrm-armada/libdrm-armada.mk line 14

Quoted 6 lines
package/libdrm-armada/libdrm-armada.mk new file +6 -0
+LIBDRM_ARMADA_SITE = http://git.arm.linux.org.uk/cgit/libdrm-armada.git
+LIBDRM_ARMADA_SITE_METHOD = git
+LIBDRM_ARMADA_DEPENDENCIES = libdrm
+LIBDRM_ARMADA_INSTALL_STAGING = YES
+
+# We're patching configure.ac

I have not seen a patch that touches configure.ac. For that matter, I have even seen no patch at all. Did you forget to git-add them?

Or is it needed just because it is straight from the git tree? ;-)

Regards,
Yann E. MORIN.

Quoted 17 lines
package/libdrm-armada/libdrm-armada.mk new file +10 -0
+LIBDRM_ARMADA_AUTORECONF = YES
+
+# Needed for autoreconf to work properly
+define LIBDRM_ARMADA_FIXUP_M4_DIR
+        mkdir $(@D)/m4
+endef
+
+LIBDRM_ARMADA_POST_PATCH_HOOKS += LIBDRM_ARMADA_FIXUP_M4_DIR
+
+$(eval $(autotools-package))
Signature · 6 lines
2.11.0

_______________________________________________
buildroot mailing list
buildroot at busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot
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.  |
'------------------------------^-------^------------------^--------------------'
#3 lore raw

PATCH 1/2 libdrm-armada: new package

Quoted 34 lines · Yann E. MORIN

Evgeniy, All,

On 2017-12-20 18:08 +0300, Evgeniy Didin spake thusly:

Quoted 24 lines

libdrm-armada is an Etnaviv libdrm buffer object management module. It is used with xf86-driver-video-armada, which is Xorg driver for Etnaviv.

Cc Thomas Petazzoni <[email protected]>
Cc Alexey Brodkin <[email protected]>
Cc arc-buildroot at synopsys.com

---

?package/Config.in????????????????????????|??1 +
?package/libdrm-armada/Config.in??????????|??7 +++++++
?package/libdrm-armada/libdrm-armada.hash |??2 ++
?package/libdrm-armada/libdrm-armada.mk???| 24

++++++++++++++++++++++++
?4 files changed, 34 insertions(+)
?create mode 100644 package/libdrm-armada/Config.in ?create mode 100644 package/libdrm-armada/libdrm-armada.hash ?create mode 100644 package/libdrm-armada/libdrm-armada.mk

package/Config.in +0 -0
index bd39a374f0..54caf7ae41 100644
@@ -1116,6 +1116,7 @@ menu "Graphics"
Quoted 4 lines

? source "package/libdmtx/Config.in"
? source "package/libdri2/Config.in"
? source "package/libdrm/Config.in"
+????????source "package/libdrm-armada/Config.in"

Indentation with a TAB, not spaces:

Quoted 7 lines

????$ ./utils/check-package package/libdrm-armada/* ????package/libdrm-armada/libdrm-armada.mk:19: expected indent with tabs
????33 lines processed
????1 warnings generated

;-)

Sure, didn't notice that.

Quoted 8 lines
Quoted 8 lines

? source "package/libepoxy/Config.in"
? source "package/libexif/Config.in"
? source "package/libfm/Config.in"

package/libdrm- renamed from package/libdrm-armada/Config.in +0 -0

armada/Config.in
new file mode 100644
index 0000000000..5deabf35ae
--- /dev/null

Quoted 8 lines

package/libdrm- line 3

Quoted 5 lines

+++ b/package/libdrm-armada/Config.in

package/libdrm- renamed from package/libdrm-armada/Config.in +3 -0
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_LIBDRM_ARMADA
+	bool "libdrm-armada"
+	select BR2_PACKAGE_LIBDRM

libdrm depends on BR2_TOOLCHAIN_HAS_THREADS, so you need to propagate the dependency.

Ok, I will add it.

Quoted 54 lines
Quoted 36 lines
package/libdrm- renamed from package/libdrm-armada/Config.in +4 -0
+	help
+	??Etnaviv libdrm buffer object management module
+
+	??https://urldefense.proofpoint.com/v2/url?u=http-3A__git.

arm.linux.org.uk_cgit_libdrm- 2Darmada.git_&d=DwIBaQ&c=DPL6_X_6JkXFx7AXWqB0tg&r=vQk- RIbjwN0zvlwiMSpq3LYUTNf7Gqc4ujhosYITtAw&m=CnJ1QQnRCNEGVciQmjSeLqgbk J-lRMQV6Gfay4HEu8A&s=5qH5xP6bBnTlbjhd9Xq0BYoKYxA5NJ7ib9yNXMfGz4g&e=

package/libdrm-armada/libdrm-armada.hash new file +2 -0
new file mode 100644
index 0000000000..40911ea8e4
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256

0454ac8f55c7bfff548b75d7116c56fa125f5dfe118e630a85feb221de82fbb6??l ibdrm-armada-6b461c.tar.gz

package/libdrm-armada/libdrm-armada.mk new file +1 -0
new file mode 100644
index 0000000000..fb96ad0b6e
@@ -0,0 +1,24 @@
+##################################################################

##############

package/libdrm-armada/libdrm-armada.mk new file +4 -0
+#
+# libdrm-armada
+#
+##################################################################

##############

package/libdrm-armada/libdrm-armada.mk new file +3 -0
+
+LIBDRM_ARMADA_VERSION = 6b461c
+LIBDRM_ARMADA_SOURCE = libdrm-armada-
Quoted 1 line

$(LIBDRM_ARMADA_VERSION).tar.gz

This is the default value, so must not be specified.

package/libdrm-armada/libdrm-armada.mk line 14

Quoted 10 lines

+LIBDRM_ARMADA_SITE = https://urldefense.proofpoint.com/v2/url?u=ht
tp-3A__git.arm.linux.org.uk_cgit_libdrm- 2Darmada.git&d=DwIBaQ&c=DPL6_X_6JkXFx7AXWqB0tg&r=vQk- RIbjwN0zvlwiMSpq3LYUTNf7Gqc4ujhosYITtAw&m=CnJ1QQnRCNEGVciQmjSeLqgbk J-lRMQV6Gfay4HEu8A&s=KvgEHT225hwonSHx1uDmUZmsyl6xKudpJ9GAzsSEzIc&e=

package/libdrm-armada/libdrm-armada.mk new file +5 -0
+LIBDRM_ARMADA_SITE_METHOD = git
+LIBDRM_ARMADA_DEPENDENCIES = libdrm
+LIBDRM_ARMADA_INSTALL_STAGING = YES
+
+# We're patching configure.ac

I have not seen a patch that touches configure.ac. For that matter, I have even seen no patch at all. Did you forget to git-add them?

Quoted 1 line

Or is it needed just because it is straight from the git tree? ;-)

Oh, didn't clean this comment. I used libedit.mk file as a base for this package, so from there came this comment. Will remove it.

Quoted 16 lines

Regards,
Yann E. MORIN.

Quoted 13 lines
package/libdrm-armada/libdrm-armada.mk new file +10 -1
+LIBDRM_ARMADA_AUTORECONF = YES
+
+# Needed for autoreconf to work properly
+define LIBDRM_ARMADA_FIXUP_M4_DIR
+????????mkdir $(@D)/m4
+endef
+
+LIBDRM_ARMADA_POST_PATCH_HOOKS += LIBDRM_ARMADA_FIXUP_M4_DIR
+
+$(eval $(autotools-package))
--?

2.11.0

Quoted 9 lines
Quoted 8 lines

_______________________________________________
buildroot mailing list
buildroot at busybox.net
https://urldefense.proofpoint.com/v2/url?u=http-3A__lists.busybox.n
et_mailman_listinfo_buildroot&d=DwIBaQ&c=DPL6_X_6JkXFx7AXWqB0tg&r=v Qk- RIbjwN0zvlwiMSpq3LYUTNf7Gqc4ujhosYITtAw&m=CnJ1QQnRCNEGVciQmjSeLqgbk J-lRMQV6Gfay4HEu8A&s=PUa6pTJ7cE6Uf3QeEw_d5CgLvgLTbjMgB4hR6bL0CxY&e=

Best regards,
Evgeniy Didin

#4 lore raw

PATCH 1/2 libdrm-armada: new package

In reply to Evgeniy Didin

Hello,

(In addition to the comments from Yann).

Quoted 4 lines · Evgeniy Didin
 package/Config.in                        |  1 +
 package/libdrm-armada/Config.in          |  7 +++++++
 package/libdrm-armada/libdrm-armada.hash |  2 ++
 package/libdrm-armada/libdrm-armada.mk   | 24 ++++++++++++++++++++++++

Entry in DEVELOPERS file missing.

Quoted 1 line

+LIBDRM_ARMADA_VERSION = 6b461c

Please use a full Git hash.

package/libdrm-armada/libdrm-armada.mk line 12

Quoted 5 lines
package/libdrm-armada/libdrm-armada.mk new file +5 -0
+LIBDRM_ARMADA_SOURCE = libdrm-armada-$(LIBDRM_ARMADA_VERSION).tar.gz
+LIBDRM_ARMADA_SITE = http://git.arm.linux.org.uk/cgit/libdrm-armada.git
+LIBDRM_ARMADA_SITE_METHOD = git
+LIBDRM_ARMADA_DEPENDENCIES = libdrm
+LIBDRM_ARMADA_INSTALL_STAGING = YES

It is a problem that this package has no license information whatsoever. No COPYING file, no LICENSE file, no header in the source file that indicates the license (except for
http://git.arm.linux.org.uk/cgit/libdrm-armada.git/tree/libdrm_lists.h).

Could you ask upstream to add appropriate licensing information ?

Thanks!

Thomas

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

PATCH 1/2 libdrm-armada: new package

Hello,

Quoted 6 lines · Thomas Petazzoni

Hello,

(In addition to the comments from Yann).

On Wed, 20 Dec 2017 18:08:42 +0300, Evgeniy Didin wrote:

Quoted 7 lines
Quoted 5 lines
?package/Config.in????????????????????????|??1 +
?package/libdrm-armada/Config.in??????????|??7 +++++++
?package/libdrm-armada/libdrm-armada.hash |??2 ++
?package/libdrm-armada/libdrm-armada.mk???| 24

++++++++++++++++++++++++

Entry in DEVELOPERS file missing.

Sure, I will add it.

Quoted 5 lines
Quoted 2 lines

+LIBDRM_ARMADA_VERSION = 6b461c

Please use a full Git hash.

Will do it.

Quoted 20 lines

package/libdrm-armada/libdrm-armada.mk line 12

Quoted 10 lines

+LIBDRM_ARMADA_SOURCE = libdrm-armada- $(LIBDRM_ARMADA_VERSION).tar.gz
+LIBDRM_ARMADA_SITE = https://urldefense.proofpoint.com/v2/url?u=ht
tp-3A__git.arm.linux.org.uk_cgit_libdrm- 2Darmada.git&d=DwICAg&c=DPL6_X_6JkXFx7AXWqB0tg&r=vQk- RIbjwN0zvlwiMSpq3LYUTNf7Gqc4ujhosYITtAw&m=UVQmwM_r21WNyO49KSV5QtP9z c7M-MXRN94a54yeTOo&s=2Zesvx1uezua2BKA5za5lFPQGXcyC_eRzPPY5paalxs&e=

package/libdrm-armada/libdrm-armada.mk new file +3 -0
+LIBDRM_ARMADA_SITE_METHOD = git
+LIBDRM_ARMADA_DEPENDENCIES = libdrm
+LIBDRM_ARMADA_INSTALL_STAGING = YES

It is a problem that this package has no license information whatsoever. No COPYING file, no LICENSE file, no header in the source file that indicates the license (except for
https://urldefense.proofpoint.com/v2/url?u=http-3A__git.arm.linux.org
.uk_cgit_libdrm-2Darmada.git_tree_libdrm- 5Flists.h&d=DwICAg&c=DPL6_X_6JkXFx7AXWqB0tg&r=vQk- RIbjwN0zvlwiMSpq3LYUTNf7Gqc4ujhosYITtAw&m=UVQmwM_r21WNyO49KSV5QtP9zc7 M-MXRN94a54yeTOo&s=d6SqLTdSxKN7A0n1Rv5fuIOQiQxDpOQB7sIkjSiq4mI&e=).

Quoted 2 lines

Could you ask upstream to add appropriate licensing information ?

This package was added to Yocto, and they resolved it adding libdrm_lists.h as a license file:
https://lists.yoctoproject.org/pipermail/meta-freescale/2017-May/020567
.html
Is this approach appropriate?

Quoted 3 lines

Thanks!

Thomas

Best regards,
Evgeniy Didin

#6 lore raw

PATCH 1/2 libdrm-armada: new package

In reply to Evgeniy Didin

Hi Evgeniy,

Quoted 7 lines · Evgeniy Didin

libdrm-armada is an Etnaviv libdrm buffer object management module. It is used with xf86-driver-video-armada, which is Xorg driver for Etnaviv.

Cc Thomas Petazzoni <[email protected]>
Cc Alexey Brodkin <[email protected]>
Cc arc-buildroot at synopsys.com

Is this patch really needed?

I was under the impression that it was only needed prior to Etnaviv being supported in the official libdrm package.

Regards,

Fabio Estevam

#7 lore raw

PATCH 1/2 libdrm-armada: new package

Hello Fabio, Lucas,

Quoted 13 lines · Fabio Estevam

Hi Evgeniy,

Quoted 8 lines · Evgeniy Didin

libdrm-armada is an Etnaviv libdrm buffer object management module. It is used with xf86-driver-video-armada, which is Xorg driver for Etnaviv.

Cc Thomas Petazzoni <[email protected]>
Cc Alexey Brodkin <[email protected]>
Cc arc-buildroot at synopsys.com
Quoted 5 lines

Is this patch really needed?

I was under the impression that it was only needed prior to Etnaviv being supported in the official libdrm package.

Following this message:
https://www.spinics.net/lists/dri-devel/msg158109.html

and README (lines 53-55):
http://git.arm.linux.org.uk/cgit/xf86-video-armada.git/tree/README?h=un
stable-devel#n55

We built libdrm-armada + xf86-video-armada for Wandboard and it worked fine.

In yocto project this package also was added:
https://lists.yoctoproject.org/pipermail/meta-freescale/2017-May/020566
.html

Lucas, could you please comment on whether libdrm-armada is necessary for xf86-video-armada or not? Or just libdrm is enough.

Quoted 3 lines

Regards,

Fabio Estevam

#8 lore raw

PATCH 2/2 xf86-video-armada: new package

In reply to Evgeniy Didin

xf86-video-armada is a Xorg driver for Etnaviv GPU.

Cc Thomas Petazzoni <[email protected]>
Cc Alexey Brodkin <[email protected]>
Cc arc-buildroot at synopsys.com
---
 package/x11r7/Config.in                            |  1 +
 package/x11r7/xdriver_xf86-video-armada/Config.in  | 11 +++++++
 .../xdriver_xf86-video-armada.hash                 |  2 ++
 .../xdriver_xf86-video-armada.mk                   | 36 ++++++++++++++++++++++
 4 files changed, 50 insertions(+)
 create mode 100644 package/x11r7/xdriver_xf86-video-armada/Config.in
 create mode 100644 package/x11r7/xdriver_xf86-video-armada/xdriver_xf86-video-armada.hash
 create mode 100644 package/x11r7/xdriver_xf86-video-armada/xdriver_xf86-video-armada.mk
package/x11r7/Config.in +1 -0
index ddceaa407f..e791419083 100644
@@ -157,6 +157,7 @@ if BR2_PACKAGE_XORG7
 		source package/x11r7/xdriver_xf86-input-vmmouse/Config.in
 		source package/x11r7/xdriver_xf86-video-amdgpu/Config.in
 		source package/x11r7/xdriver_xf86-video-ark/Config.in
+		source package/x11r7/xdriver_xf86-video-armada/Config.in
 		source package/x11r7/xdriver_xf86-video-ast/Config.in
 		source package/x11r7/xdriver_xf86-video-ati/Config.in
 		source package/x11r7/xdriver_xf86-video-cirrus/Config.in
package/x11r7/xdriver_xf86-video-armada/Config.in new file +11 -0
new file mode 100644
index 0000000000..ade8a75643
@@ -0,0 +1,11 @@
+config BR2_PACKAGE_XDRIVER_XF86_VIDEO_ARMADA
+	bool "xf86-video-armada"
+	depends on BR2_PACKAGE_MESA3D
+	select BR2_PACKAGE_LIBDRM_ARMADA
+	help
+	 Xorg driver for Etnaviv GPU.
+
+	 http://git.arm.linux.org.uk/cgit/xf86-video-armada.git
+
+comment "xf86-video-armada needs mesa3d"
+        depends on !BR2_PACKAGE_MESA3D
package/x11r7/xdriver_xf86-video-armada/xdriver_xf86-video-armada.hash new file +2 -0
new file mode 100644
index 0000000000..003e817cb3
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256	456d0a23bdc8320e9bd1f2431b098343a59a3605856c2574871d776b40fe515e	xdriver_xf86-video-armada-04748f.tar.gz
package/x11r7/xdriver_xf86-video-armada/xdriver_xf86-video-armada.mk new file +36 -0
new file mode 100644
index 0000000000..cc1598f158
@@ -0,0 +1,36 @@
+################################################################################
+#
+# xdriver_xf86-video-armada
+#
+################################################################################
+
+XDRIVER_XF86_VIDEO_ARMADA_VERSION = 04748f
+XDRIVER_XF86_VIDEO_ARMADA_SOURCE = xdriver_xf86-video-armada-$(XDRIVER_XF86_VIDEO_ARMADA_VERSION).tar.gz
+XDRIVER_XF86_VIDEO_ARMADA_SITE = http://git.arm.linux.org.uk/cgit/xf86-video-armada.git
+XDRIVER_XF86_VIDEO_ARMADA_SITE_METHOD = git
+XDRIVER_XF86_VIDEO_ARMADA_AUTORECONF = YES
+XDRIVER_XF86_VIDEO_ARMADA_DEPENDENCIES = \
+	libdrm-armada \
+	xserver_xorg-server
+
+
+#Need etna_viv source files for driver
+define XDRIVER_XF86_VIDEO_ARMADA_ETNASRC
+	git clone https://github.com/laanwj/etna_viv.git $(@D)/etna_viv
+        mkdir $(@D)/m4
+endef
+
+XDRIVER_XF86_VIDEO_ARMADA_POST_PATCH_HOOKS += XDRIVER_XF86_VIDEO_ARMADA_ETNASRC
+
+define XDRIVER_XF86_VIDEO_ARMADA_INSTALL_CONF_FILE
+        $(INSTALL) -m 0644 -D $(@D)/conf/xorg-sample.conf $(TARGET_DIR)/etc/X11/xorg.conf
+endef
+
+XDRIVER_XF86_VIDEO_ARMADA_POST_INSTALL_TARGET_HOOKS += XDRIVER_XF86_VIDEO_ARMADA_INSTALL_CONF_FILE
+
+
+XDRIVER_XF86_VIDEO_ARMADA_CONF_OPTS = \
+  --prefix=/usr --disable-vivante --disable-etnaviv \
+  --with-etnaviv-source=$(@D)/etna_viv
+
+$(eval $(autotools-package))
Signature · 1 line
2.11.0