* [Buildroot] [PATCH] package/weston: un-break the rpi-compositor
@ 2014-02-06 20:45 Yann E. MORIN
2014-02-06 22:07 ` Peter Korsgaard
0 siblings, 1 reply; 2+ messages in thread
From: Yann E. MORIN @ 2014-02-06 20:45 UTC (permalink / raw)
To: buildroot
From: "Yann E. MORIN" <yann.morin.1998@free.fr>
The rpi-compositor was broken with the 1.4.0 release,
but we now have a fix from upstream.
Add this patch, and remove the 'depends on BROKEN'.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
Peter, I believe this should go in for 2014.02, preferrably before rc1
so -next has it to. Thanks! :-)
---
package/weston/Config.in | 1 -
...0-compositor-rpi-fix-input-initialization.patch | 57 ++++++++++++++++++++++
2 files changed, 57 insertions(+), 1 deletion(-)
create mode 100644 package/weston/weston-0000-compositor-rpi-fix-input-initialization.patch
diff --git a/package/weston/Config.in b/package/weston/Config.in
index 1ab3c2f..247efc8 100644
--- a/package/weston/Config.in
+++ b/package/weston/Config.in
@@ -41,7 +41,6 @@ comment "RPi compositor needs a toolchain w/ C++, largefile, threads"
config BR2_PACKAGE_WESTON_RPI
bool "RPi compositor"
- depends on BROKEN # rpi-backend broken in 1.4.0
depends on BR2_arm # rpi-userland
depends on BR2_INSTALL_LIBSTDCPP # rpi-userland
depends on BR2_LARGEFILE # rpi-userland
diff --git a/package/weston/weston-0000-compositor-rpi-fix-input-initialization.patch b/package/weston/weston-0000-compositor-rpi-fix-input-initialization.patch
new file mode 100644
index 0000000..8722d07
--- /dev/null
+++ b/package/weston/weston-0000-compositor-rpi-fix-input-initialization.patch
@@ -0,0 +1,57 @@
+commit bf539e39c15e9a4ef4479d03c52263a3f020ef4a
+Author: Emilio Pozuelo Monfort <emilio.pozuelo@collabora.co.uk>
+Date: Mon Feb 3 16:57:27 2014 +0100
+
+ compositor-rpi: Fix input initialization
+
+ The input initialization code assumes the outputs have already
+ been initialized; thus create the outputs first. This fixes a
+ segfault upon startup. It is also what the drm and fbdev backends
+ do.
+
+diff --git a/src/compositor-rpi.c b/src/compositor-rpi.c
+index 399090d..e7c0e0d 100644
+--- a/src/compositor-rpi.c
++++ b/src/compositor-rpi.c
+@@ -527,13 +527,6 @@ rpi_compositor_create(struct wl_display *display, int *argc, char *argv[],
+ weston_log("Dispmanx planes are %s buffered.\n",
+ compositor->single_buffer ? "single" : "double");
+
+- if (udev_input_init(&compositor->input,
+- &compositor->base,
+- compositor->udev, "seat0") != 0) {
+- weston_log("Failed to initialize udev input.\n");
+- goto out_launcher;
+- }
+-
+ for (key = KEY_F1; key < KEY_F9; key++)
+ weston_compositor_add_key_binding(&compositor->base, key,
+ MODIFIER_CTRL | MODIFIER_ALT,
+@@ -549,19 +542,23 @@ rpi_compositor_create(struct wl_display *display, int *argc, char *argv[],
+ bcm_host_init();
+
+ if (rpi_renderer_create(&compositor->base, ¶m->renderer) < 0)
+- goto out_udev_input;
++ goto out_launcher;
+
+ if (rpi_output_create(compositor, param->output_transform) < 0)
+ goto out_renderer;
+
++ if (udev_input_init(&compositor->input,
++ &compositor->base,
++ compositor->udev, "seat0") != 0) {
++ weston_log("Failed to initialize udev input.\n");
++ goto out_renderer;
++ }
++
+ return &compositor->base;
+
+ out_renderer:
+ compositor->base.renderer->destroy(&compositor->base);
+
+-out_udev_input:
+- udev_input_destroy(&compositor->input);
+-
+ out_launcher:
+ weston_launcher_destroy(compositor->base.launcher);
+
--
1.8.1.2
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [Buildroot] [PATCH] package/weston: un-break the rpi-compositor
2014-02-06 20:45 [Buildroot] [PATCH] package/weston: un-break the rpi-compositor Yann E. MORIN
@ 2014-02-06 22:07 ` Peter Korsgaard
0 siblings, 0 replies; 2+ messages in thread
From: Peter Korsgaard @ 2014-02-06 22:07 UTC (permalink / raw)
To: buildroot
>>>>> "Yann" == Yann E MORIN <yann.morin.1998@free.fr> writes:
> From: "Yann E. MORIN" <yann.morin.1998@free.fr>
> The rpi-compositor was broken with the 1.4.0 release,
> but we now have a fix from upstream.
> Add this patch, and remove the 'depends on BROKEN'.
> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
> ---
> Peter, I believe this should go in for 2014.02, preferrably before rc1
> so -next has it to. Thanks! :-)
Committed, thanks.
c
> ---
> package/weston/Config.in | 1 -
> ...0-compositor-rpi-fix-input-initialization.patch | 57 ++++++++++++++++++++++
> 2 files changed, 57 insertions(+), 1 deletion(-)
> create mode 100644 package/weston/weston-0000-compositor-rpi-fix-input-initialization.patch
> diff --git a/package/weston/Config.in b/package/weston/Config.in
> index 1ab3c2f..247efc8 100644
> --- a/package/weston/Config.in
> +++ b/package/weston/Config.in
> @@ -41,7 +41,6 @@ comment "RPi compositor needs a toolchain w/ C++, largefile, threads"
> config BR2_PACKAGE_WESTON_RPI
> bool "RPi compositor"
> - depends on BROKEN # rpi-backend broken in 1.4.0
> depends on BR2_arm # rpi-userland
> depends on BR2_INSTALL_LIBSTDCPP # rpi-userland
> depends on BR2_LARGEFILE # rpi-userland
> diff --git a/package/weston/weston-0000-compositor-rpi-fix-input-initialization.patch b/package/weston/weston-0000-compositor-rpi-fix-input-initialization.patch
> new file mode 100644
> index 0000000..8722d07
> --- /dev/null
> +++ b/package/weston/weston-0000-compositor-rpi-fix-input-initialization.patch
> @@ -0,0 +1,57 @@
> +commit bf539e39c15e9a4ef4479d03c52263a3f020ef4a
> +Author: Emilio Pozuelo Monfort <emilio.pozuelo@collabora.co.uk>
> +Date: Mon Feb 3 16:57:27 2014 +0100
> +
> + compositor-rpi: Fix input initialization
> +
> + The input initialization code assumes the outputs have already
> + been initialized; thus create the outputs first. This fixes a
> + segfault upon startup. It is also what the drm and fbdev backends
> + do.
> +
> +diff --git a/src/compositor-rpi.c b/src/compositor-rpi.c
> +index 399090d..e7c0e0d 100644
> +--- a/src/compositor-rpi.c
> ++++ b/src/compositor-rpi.c
> +@@ -527,13 +527,6 @@ rpi_compositor_create(struct wl_display *display, int *argc, char *argv[],
> + weston_log("Dispmanx planes are %s buffered.\n",
> + compositor->single_buffer ? "single" : "double");
> +
> +- if (udev_input_init(&compositor->input,
> +- &compositor->base,
> +- compositor->udev, "seat0") != 0) {
> +- weston_log("Failed to initialize udev input.\n");
> +- goto out_launcher;
> +- }
> +-
> + for (key = KEY_F1; key < KEY_F9; key++)
> + weston_compositor_add_key_binding(&compositor->base, key,
> + MODIFIER_CTRL | MODIFIER_ALT,
> +@@ -549,19 +542,23 @@ rpi_compositor_create(struct wl_display *display, int *argc, char *argv[],
> + bcm_host_init();
> +
> + if (rpi_renderer_create(&compositor->base, ¶m->renderer) < 0)
> +- goto out_udev_input;
> ++ goto out_launcher;
> +
> + if (rpi_output_create(compositor, param->output_transform) < 0)
> + goto out_renderer;
> +
> ++ if (udev_input_init(&compositor->input,
> ++ &compositor->base,
> ++ compositor->udev, "seat0") != 0) {
> ++ weston_log("Failed to initialize udev input.\n");
> ++ goto out_renderer;
> ++ }
> ++
> + return &compositor->base;
> +
> + out_renderer:
> + compositor->base.renderer->destroy(&compositor->base);
> +
> +-out_udev_input:
> +- udev_input_destroy(&compositor->input);
> +-
> + out_launcher:
> + weston_launcher_destroy(compositor->base.launcher);
> +
> --
> 1.8.1.2
--
Bye, Peter Korsgaard
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2014-02-06 22:07 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-02-06 20:45 [Buildroot] [PATCH] package/weston: un-break the rpi-compositor Yann E. MORIN
2014-02-06 22:07 ` Peter Korsgaard
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.