kmscube: Move to the new repository
Fabio Estevam
reviewerPATCH 1/1 kmscube: Move to the new repository
As announced by Rob Clark at:
https://lists.freedesktop.org/archives/mesa-dev/2017-February/145745.html
, the kmscube repository has been moved from github to freedesktop.org, so change it to the new location.
With the newest code the local patch for adding imx-drm support is no longer needed.
Also, on imx6q we need to explicitily pass the card device now:
# kmscube -D /dev/dri/card1
--- package/kmscube/0001-addimxdrm.patch | 27 --------------------------- package/kmscube/kmscube.hash | 2 +- package/kmscube/kmscube.mk | 4 ++-- 3 files changed, 3 insertions(+), 30 deletions(-) delete mode 100644 package/kmscube/0001-addimxdrm.patch
package/kmscube/0001-addimxdrm.patch deleted +0 -27
@@ -1,27 +0,0 @@ -From 23186149100dd9c871f65132edce67db0b1ce3c3 Mon Sep 17 00:00:00 2001 -From: XoD <[email protected]> -Date: Mon, 13 Feb 2017 16:43:35 -0200 -Subject: [PATCH] Add imx-drm management - -Add imx-drm in the list of kms modules. - -Signed-off-by: XoD <[email protected]> -Signed-off-by: Fabio Estevam <[email protected]> ---- - kmscube.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/kmscube.c b/kmscube.c -index ca2c266..95bd77f 100644 ---- a/kmscube.c -+++ b/kmscube.c -@@ -122,6 +122,7 @@ static int init_drm(void) - static const char *modules[] = { - "exynos", - "i915", -+ "imx-drm", - "msm", - "nouveau", - "omapdrm", --- -2.7.4
package/kmscube/kmscube.hash +1 -1
@@ -1,2 +1,2 @@ # Locally computed -sha256 73cf923f915f9f7ee46f9f03bd24254fc04b5f166270c0d37c6f2bc3881186ec kmscube-8c6a20901f95e1b465bbca127f9d47fcfb8762e6.tar.gz +sha256 aee8375da730c2e59e8644d6bd5e011f06c88f723a8f8934bd5dac67d94a3b8a kmscube-87e3ff5683ee54228b3e6e75f7d4de83901fadb0.tar.gz
package/kmscube/kmscube.mk +2 -2
@@ -4,8 +4,8 @@ # ################################################################################ -KMSCUBE_VERSION = 8c6a20901f95e1b465bbca127f9d47fcfb8762e6 -KMSCUBE_SITE = $(call github,robclark,kmscube,$(KMSCUBE_VERSION)) +KMSCUBE_VERSION = 87e3ff5683ee54228b3e6e75f7d4de83901fadb0 +KMSCUBE_SITE = https://cgit.freedesktop.org/mesa/kmscube/snapshot KMSCUBE_LICENSE = MIT KMSCUBE_DEPENDENCIES = host-pkgconf mesa3d libdrm KMSCUBE_AUTORECONF = YES
Signature · 1 line
2.7.4
Thomas Petazzoni
AppliedPATCH 1/1 kmscube: Move to the new repository
Hello,
Quoted 13 lines · Fabio Estevam
As announced by Rob Clark at:
https://lists.freedesktop.org/archives/mesa-dev/2017-February/145745.html, the kmscube repository has been moved from github to freedesktop.org, so change it to the new location.
With the newest code the local patch for adding imx-drm support is no longer needed.
Also, on imx6q we need to explicitily pass the card device now:
# kmscube -D /dev/dri/card1
Quoted 7 lines
Signed-off-by Fabio Estevam <[email protected]>--- package/kmscube/0001-addimxdrm.patch | 27 --------------------------- package/kmscube/kmscube.hash | 2 +- package/kmscube/kmscube.mk | 4 ++-- 3 files changed, 3 insertions(+), 30 deletions(-) delete mode 100644 package/kmscube/0001-addimxdrm.patch
Applied to master, thanks.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
Fabio Estevam
reviewerPATCH 1/1 kmscube: Move to the new repository
Hi Thomas,
Quoted 1 line · Thomas Petazzoni
Applied to master, thanks.
There last line of the commit log (# kmscube -D /dev/dri/card1) has been dropped.
Was this intentional?
Thanks
PATCH 1/1 kmscube: Move to the new repository
Hello,
Quoted 11 lines · Fabio Estevam
Hi Thomas,
Quoted 1 line · Thomas Petazzoni
Applied to master, thanks.
There last line of the commit log (# kmscube -D
/dev/dri/card1) has been dropped.Was this intentional?
No: but it started with #, so when I did a "git commit --amend" to adjust the commit title, it got removed, and I didn't notice.
Don't start lines with # if you want them to be kept by Git :-)
Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
PATCH 1/1 kmscube: Move to the new repository
Thomas, Fabio, All,
Quoted 9 lines · Thomas Petazzoni
Hello,
Quoted 6 lines · Fabio Estevam
Hi Thomas,
Quoted 1 line · Thomas Petazzoni
Applied to master, thanks.
I actually get a build error with this version:drm-atomic.c: In function ?get_plane_id?:
drm-atomic.c:290:44: error: ?DRM_MODE_OBJECT_PLANE? undeclared (first use in this function)
drmModeObjectGetProperties(drm.fd, id, DRM_MODE_OBJECT_PLANE);
In order to fix it I've had to add the following include to drm-atomic.c:
#include <libdrm/drm_mode.h>
In case it helps, I use linaro-arm-2017-02 toolchain.
Let me know if you don't see that issue on your end.
Regards,
Gary
Fabio Estevam
reviewerPATCH 1/1 kmscube: Move to the new repository
Hi Gary,
Quoted 4 lines · Gary Bisson
I actually get a build error with this version:
drm-atomic.c: In function ?get_plane_id?:
drm-atomic.c:290:44: error: ?DRM_MODE_OBJECT_PLANE? undeclared (first use in this function)
Quoted 8 lines
drmModeObjectGetProperties(drm.fd, id, DRM_MODE_OBJECT_PLANE);In order to fix it I've had to add the following include to
drm-atomic.c:
#include <libdrm/drm_mode.h>In case it helps, I use linaro-arm-2017-02 toolchain.
Let me know if you don't see that issue on your end.
No, I didn't see this error. Could you please send a patch to Buildroot and also to the upstream project?
Thanks,
Fabio Estevam
PATCH 1/1 kmscube: Move to the new repository
Hi Fabio,
Quoted 14 lines · Fabio Estevam
Hi Gary,
Quoted 9 lines · Gary Bisson
I actually get a build error with this version:
drm-atomic.c: In function ?get_plane_id?:
drm-atomic.c:290:44: error: ?DRM_MODE_OBJECT_PLANE? undeclared (first use in this function)drmModeObjectGetProperties(drm.fd, id, DRM_MODE_OBJECT_PLANE);In order to fix it I've had to add the following include to
drm-atomic.c:
#include <libdrm/drm_mode.h>
Quoted 6 lines
Quoted 3 lines
In case it helps, I use linaro-arm-2017-02 toolchain.
Let me know if you don't see that issue on your end.
No, I didn't see this error. Could you please send a patch to Buildroot and also to the upstream project?
Before sending a patch I'd like to understand why the error only shows up in my case and not yours. I also trust that Rob built his atomic addition before pushing it.
Can you send me the output of 'make kmscube-rebuild V=1' in your environment?
Regards,
Gary
Fabio Estevam
reviewerPATCH 1/1 kmscube: Move to the new repository
Hi Gary,
Quoted 5 lines · Gary Bisson
Before sending a patch I'd like to understand why the error only shows up in my case and not yours. I also trust that Rob built his atomic addition before pushing it.
Can you send me the output of 'make kmscube-rebuild V=1' in your environment?
Sure, here is the log:
http://pastebin.com/QBDVLFDq
I just used the default toolchain from Buildroot.
There is a warning in the log and I have sent a patch to fix it upstream:
https://lists.freedesktop.org/archives/mesa-dev/2017-March/146581.html
Regards,
Fabio Estevam
PATCH 1/1 kmscube: Move to the new repository
Hi Fabio,
Quoted 5 lines · Fabio Estevam
Hi Gary,
On Wed, Mar 8, 2017 at 7:06 AM, Gary Bisson
<[email protected]> wrote:
Quoted 8 lines
Quoted 5 lines
Before sending a patch I'd like to understand why the error only shows up in my case and not yours. I also trust that Rob built his atomic addition before pushing it.
Can you send me the output of 'make kmscube-rebuild V=1' in your environment?
Sure, here is the log:
http://pastebin.com/QBDVLFDq
Thanks but I don't see anything obviously different between our configs.
Quoted 1 line
I just used the default toolchain from Buildroot.
Can you tell me where is DRM_MODE_OBJECT_PLANE defined in your case?
Here is my output:
$ grep -rn DRM_MODE_OBJECT_PLANE output/host/usr/arm-buildroot-linux-gnueabihf/ output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include/libdrm/drm_mode.h:336:#define DRM_MODE_OBJECT_PLANE 0xeeeeeeee
Also, is adding my fix to your build bringing any issue?
Regards,
Gary
Fabio Estevam
reviewerPATCH 1/1 kmscube: Move to the new repository
Hi Gary,
Quoted 6 lines · Gary Bisson
Can you tell me where is
DRM_MODE_OBJECT_PLANEdefined in your case?Here is my output:
$ grep -rn DRM_MODE_OBJECT_PLANE output/host/usr/arm-buildroot-linux-gnueabihf/ output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include/libdrm/drm_mode.h:336:#define DRM_MODE_OBJECT_PLANE 0xeeeeeeee
I see them defined in two places here:
$ grep -rn DRM_MODE_OBJECT_PLANE output/host/ output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include/drm/drm_mode.h:336:#define DRM_MODE_OBJECT_PLANE 0xeeeeeeee output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include/libdrm/drm_mode.h:336:#define DRM_MODE_OBJECT_PLANE 0xeeeeeeee
Quoted 1 line
Also, is adding my fix to your build bringing any issue?
Just tried your patch and the build still succeeds with it.
Regards,
Fabio Estevam
PATCH 1/1 kmscube: Move to the new repository
Hi Fabio,
Quoted 12 lines · Fabio Estevam
Hi Gary,
Quoted 6 lines · Gary Bisson
Can you tell me where is
DRM_MODE_OBJECT_PLANEdefined in your case?Here is my output:
$ grep -rn DRM_MODE_OBJECT_PLANE output/host/usr/arm-buildroot-linux-gnueabihf/ output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include/libdrm/drm_mode.h:336:#define DRM_MODE_OBJECT_PLANE 0xeeeeeeee
Quoted 7 lines
I see them defined in two places here:
$ grep -rn DRM_MODE_OBJECT_PLANE output/host/ output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include/drm/drm_mode.h:336:#define DRM_MODE_OBJECT_PLANE 0xeeeeeeee output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include/libdrm/drm_mode.h:336:#define DRM_MODE_OBJECT_PLANE 0xeeeeeeee
So it means your toolchain is using kernel headers >= 4.7.
http://lxr.free-electrons.com/ident?v=4.6;i=DRM_MODE_OBJECT_PLANE
http://lxr.free-electrons.com/ident?v=4.7;i=DRM_MODE_OBJECT_PLANE
Not sure which header version the Linaro toolchain is using but it's definitely older than 4.7.
From the manifest we know the toolchain is build on a machine running a 4.4.x kernel:
https://releases.linaro.org/components/toolchain/binaries/6.3-2017.02/arm-linux-gnueabihf/gcc-linaro-6.3.1-2017.02-linux-manifest.txt
Quoted 3 lines
Quoted 1 line
Also, is adding my fix to your build bringing any issue?
Just tried your patch and the build still succeeds with it.
Thanks for testing it out, good to here it works but I'm still not sure adding this libdrm/drm_mode.h is the best solution as-is.
Thomas, do you have any advice on what's the best approach here.
Regards,
Gary
PATCH 1/1 kmscube: Move to the new repository
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Gary" == Gary Bisson <[email protected]> writes:
Hi,
Quoted 8 lines
Quoted 7 lines
I see them defined in two places here:
$ grep -rn DRM_MODE_OBJECT_PLANE output/host/ output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include/drm/drm_mode.h:336:#define DRM_MODE_OBJECT_PLANE 0xeeeeeeee output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include/libdrm/drm_mode.h:336:#define DRM_MODE_OBJECT_PLANE 0xeeeeeeee
Quoted 6 lines
So it means your toolchain is using kernel headers >= 4.7.
http://lxr.free-electrons.com/ident?v=4.6;i=DRM_MODE_OBJECT_PLANE
http://lxr.free-electrons.com/ident?v=4.7;i=DRM_MODE_OBJECT_PLANENot sure which header version the Linaro toolchain is using but it's definitely older than 4.7.
Based on toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in it is using 4.6.
Quoted 2 lines
Thanks for testing it out, good to here it works but I'm still not sure adding this
libdrm/drm_mode.his the best solution as-is.
The question is what happens if kmscube is run on a kernel that doesn't support DRM_MODE_OBJECT_PLANE (E.G. kernel < 4.7)? If it really needs support for this then we should simply make the package depend on >= 4.7 headers, and if not we could add a patch to add the include.
Signature · 1 line
Bye, Peter Korsgaard
PATCH 1/1 kmscube: Move to the new repository
Hi,
Quoted 16 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Gary" == Gary Bisson <[email protected]> writes:
Hi,
Quoted 11 lines
Quoted 7 lines
I see them defined in two places here:
$ grep -rn DRM_MODE_OBJECT_PLANE output/host/ output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include/drm/drm_mode.h:336:#define DRM_MODE_OBJECT_PLANE 0xeeeeeeee output/host/usr/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include/libdrm/drm_mode.h:336:#define DRM_MODE_OBJECT_PLANE 0xeeeeeeeeSo it means your toolchain is using kernel headers >= 4.7.
http://lxr.free-electrons.com/ident?v=4.6;i=DRM_MODE_OBJECT_PLANE
http://lxr.free-electrons.com/ident?v=4.7;i=DRM_MODE_OBJECT_PLANE
Quoted 6 lines
Quoted 2 lines
Not sure which header version the Linaro toolchain is using but it's definitely older than 4.7.
Based on toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in it is using 4.6.
Thanks.
Quoted 5 lines
Quoted 2 lines
Thanks for testing it out, good to here it works but I'm still not sure adding this
libdrm/drm_mode.his the best solution as-is.The question is what happens if kmscube is run on a kernel that doesn't support
DRM_MODE_OBJECT_PLANE(E.G. kernel < 4.7)?
I believe it would work since the declaration was in the kernel already, just missing from the uapi header:
http://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/commit/?id=8812f38141
Quoted 3 lines
If it really needs
support for this then we should simply make the package depend on >= 4.7 headers, and if not we could add a patch to add the include.
Adding a dependency on headers >= 4.7 would definitely work and I think it's the easiest/cleanest option here.
I'll just be sad not to be able to use the prebuilt (linaro) toolchain ;)
Regards,
Gary
PATCH 1/1 kmscube: Move to the new repository
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Gary" == Gary Bisson <[email protected]> writes:
Hi,
Quoted 6 lines
Quoted 2 lines
The question is what happens if kmscube is run on a kernel that doesn't support
DRM_MODE_OBJECT_PLANE(E.G. kernel < 4.7)?I believe it would work since the declaration was in the kernel already, just missing from the uapi header:
http://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/commit/?id=8812f38141
Ahh, ok - Good. And looking at the state before that, the drm plane stuff was added in 3.3 (8cf5c91771515).
Quoted 8 lines
Quoted 3 lines
If it really needs
support for this then we should simply make the package depend on >= 4.7 headers, and if not we could add a patch to add the include.Adding a dependency on headers >= 4.7 would definitely work and I think it's the easiest/cleanest option here.
I'll just be sad not to be able to use the prebuilt (linaro) toolchain ;)
It is indeed a bit stupid to not allow the Linaro toolchain when the fix is so easy. Have you tried to contact upstream about either adding the drm include and/or local definitions for this define?
Signature · 1 line
Bye, Peter Korsgaard
Fabio Estevam
reviewerPATCH 1/1 kmscube: Move to the new repository
In reply to Gary BissonHi Gary,
Quoted 4 lines · Gary Bisson
Adding a dependency on headers >= 4.7 would definitely work and I think it's the easiest/cleanest option here.
I'll just be sad not to be able to use the prebuilt (linaro) toolchain ;)
What about sending the #include <libdrm/drm_mode.h> fix upstream?
BTW, I got another build error report on sparc that I have not had a chance to investigate yet:
http://autobuild.buildroot.net/results/d7e/d7e82c67e0b04b0aea990bfb19dd6e4fd914bebe/
PATCH 1/1 kmscube: Move to the new repository
Hi Fabio,
Quoted 6 lines · Fabio Estevam
Hi Gary,
On Fri, Mar 10, 2017 at 6:47 AM, Gary Bisson
<[email protected]> wrote:
Quoted 6 lines
Quoted 4 lines
Adding a dependency on headers >= 4.7 would definitely work and I think it's the easiest/cleanest option here.
I'll just be sad not to be able to use the prebuilt (linaro) toolchain ;)
What about sending the #include <
libdrm/drm_mode.h> fix upstream?
I just sent the patch upstream, we'll see how it goes.
Regards,
Gary
Fabio Estevam
reviewerPATCH 1/1 kmscube: Move to the new repository
In reply to Fabio EstevamQuoted 5 lines · Fabio Estevam
What about sending the #include <
libdrm/drm_mode.h> fix upstream?BTW, I got another build error report on sparc that I have not had a chance to investigate yet:
http://autobuild.buildroot.net/results/d7e/d7e82c67e0b04b0aea990bfb19dd6e4fd914bebe/
Just sent the following kmscube patches that fix these build failures:
https://lists.freedesktop.org/archives/mesa-dev/2017-March/147720.html
https://lists.freedesktop.org/archives/mesa-dev/2017-March/147721.html