diff options
author | Patrick Williams <patrick@stwcx.xyz> | 2017-02-23 20:31:26 -0600 |
---|---|---|
committer | Patrick Williams <patrick@stwcx.xyz> | 2017-03-29 21:31:40 +0000 |
commit | b2e6a9b5bcc725ab21f4a319e32ea09700a732b6 (patch) | |
tree | ea703254597ea62d8ea0055c428b2709b80d649e /import-layers/meta-raspberrypi/recipes-graphics/userland/userland/0012-implement-buffer-wrapping-interface-for-dispmanx.patch | |
parent | ddad1a1568cc6c729bcb317fae411152024437fa (diff) | |
download | talos-openbmc-b2e6a9b5bcc725ab21f4a319e32ea09700a732b6.tar.gz talos-openbmc-b2e6a9b5bcc725ab21f4a319e32ea09700a732b6.zip |
Squashed 'import-layers/meta-raspberrypi/'.
cce6292 linux-raspberrypi_4.9.bb: Upgrade to 4.9.10
c34a6b0 linux-raspberrypi_4.4: Update to 4.4.48
7398030 Revert "u-boot: drop patch to include lowlevel_init"
69c5675 README: Mention CM1 and CM3 support
56b0c59 rpi-base.inc: Include dtb file for CM1 and CM3
a735477 raspberrypi*.conf: Minor tweaks
9923618 raspberrypi-cm3.conf: Add dummy machine for CM3 (alias for RPi2)
d5aa048 raspberrypi-cm.conf: Add dummy machine for CM1 (alias for RPi1)
5b5c4d9 linux-raspberrypi_4.9: Update to 4.9.4
f81f022 linux-raspberrypi_4.4: Update to 4.4.43
263e6bd linux-raspberrypi: Drop v4.8
121e200 linux-raspberrypi: Drop v4.7
cb7068a linux-raspberrypi: Upgrade to v4.4.39
38bc324 linux-raspberrypi: Drop v4.1
e1f69da linux-raspberrypi_4.9.bb: Add recipe for 4.9 release
02c0d41 linux-raspberrypi_4.8.bb: Upgrade to 4.8.16
031e2695 u-boot: drop patch to include lowlevel_init
c405581 rpi-base.inc: remove input modules form XSERVER
d77f3d4 rpi-base.inc: add xserver-xorg-extension-glx to XSERVER for vc4 enabled
672e025 linux-raspberrypi-4.8: Upgrade to 4.8.15
1bf09a4 userland: Fix building on aarch64
22fb2b4 linux-raspberrypi-4.8: Upgrade to 4.8.13
90c45b4 userland: Update to latest
96b9c63 linux-raspberrypi-base.bbclass: remove version hack
17f0c23 linux-rpi.inc: Do not rely on DISTRO_TYPE to enable/disable kernel debug
064aa0a u-boot: Simplify boot script
0e66d69 linux-raspberrypi_4.8.bb: upgrade to 4.8.12
18cf04d firmware: Update to 20161125
1f64604 linux-raspberrypi_4.4.bb: upgrade to 4.4.35
44d41bf raspberrypi3.conf: fix typo for BCM43430
6bd1bfe linux-raspberrypi: remove not needed bundle_initramfs_append()
b030814 u-boot: Fix appending to RDEPENDS
9c12ac8 linux-raspberrypi_4.8.bb: Upgrade to 4.8.6
380740d linux-firmware_git.bbappend: Delete
a5f95f4 userland: Bump to latest and add ASNEEDED = ""
716b6a9 firmware: Use release tarballs
6c755af weston: Unify bbappends for weston into single file
b9e6f04 userland: Update to latest master tip
00300d9 firmware: Update to 20161030
3e6e890 linux-raspberrypi-4.4: Update to 4.4.28
12aa27d gstreamer1.0-plugins-bad_%.bbappend: Set PACKAGECONFIG_GL for RPi
ab39653 rpi-base.inc: Include pi3-disable-bt-overlay.dtb
17a6933 linux-raspberrypi: Update to 4.8.4
ddc9390 linux-firmware: Fix "No generic license file exists" warning
d51a8a7 linux-raspberrypi_4.8.bb: Update to 4.8.2
e991148 firmware: Update to latest
ed54bd3 linux-firmware: Correct the LICENSE for brcm43430-license
3360f98 sdcard_image-rpi.bbclass: Include boot script when using u-boot
1d629b1 u-boot: Add RDEPENDS on rpi-u-boot-scr
56047ad rpi-u-boot-scr: Add recipe to create u-boot boot script
1f24992 rpi-base.inc: Don't install kernel image into rootfs
c62e088 eglinfo-x11: align to VC4
1ebb370 vc4: why no framebuffer device?
8d17669 xorg align for vc4
3b9aebd mesa: align for vc4
de016ce bluez5: correctly append brcm43438 service
b6c954d Fix DISPMANX_OFFLINE variable typo
d778d0a README: Replace references to Redmine with Github Issues
1e3983f linux-raspberrypi_4.7.bb: Update to 4.7.7
ecd8875 linux-raspberrypi: Add recipe for 4.8 release
05be947 firmware: Upgrade to latest
585838e userland: Upgrade to latest
41689e8 sdcard_image-rpi.bbclass: Remove redundant RPI_KERNEL_VERSION
5697e77 linux-raspberrypi_4.4: Upgrade to 4.4.23
4817e2c sdcard_image-rpi.bbclass: avoid corrupted images with latest oe-core
ac6f357 weston: Fix typo with override
760ddd0 Switch to using 4.4 as default kernel
ed84c2c vc4graphics: Support X11 with the VC4 driver.
55388a5 firmware, userland: Bump to latest
b24afdc linux-raspberrypi_3.18: Remove
e993bdc linux-raspberrypi: Add recipe for 4.7 release
c2f7643 linux-raspberrypi_4.4: upgrade to 4.4.16
d511c7c linux-raspberrypi-4.4: add patch to enable proper operation of renderD128 device
ef22ff4 linux-rpi.inc: add the configuration options required to support vc4graphics
6b4de2b mesa_%.bbappend: new file to add the correct configuration options to support vc4graphics
bee7643 weston/weston_%.bbappend: modify configuration options to support vc4graphics
72b9635 wayland/weston_%.bbappend: modify configuration options to support vc4graphics
ba9c466 rpi-config_git.bb: add v4c overlay to config.txt to support vc4graphics
5d2722c raspberrypi3.conf: set the default value of VC4_CMA_SIZE to support vc4graphics
824b78c raspberrypi2.conf: set the default value of VC4_CMA_SIZE to support vc4graphics
dfce95f raspberrypi0.conf: set the default value of VC4_CMA_SIZE to support vc4graphics
224b9e9 raspberrypi.conf: set the default value of VC4_CMA_SIZE to support vc4graphics
0035bc8 rpi-base.inc: add vc4-kms-v3d to the overlays to support vc4graphics
6e535dd rpi-default-providers.inc: change default providers to support vc4graphics
1a32817 sdcard_image-rpi.bbclass: support for .dtbo files for dtb overlays
d98f2a7 linux-raspberrypi-base.bbclass: support for .dtbo files for dtb overlays
09b76a4 rpi-base.inc: support for .dtbo files for dtb overlays
18a2fb6 linux-raspberrypi_4.4.bb: support for .dtbo files for dtb overlays
a5f9b07 bcm2835: Compile examples correct LDFLAGS to avoid HASH errors
8c5eba1 bcm2835: Update to 1.50
5229f75 wiringPi: Fix compilation of libraries
5771c7f wiringpi: Fix prepend space
1b2c25e wiringpi: Update to 2.32
4c02c7c sdcard_image-rpi.bbclass: remove redundant IMAGEDATESTAMP
cc64d63 userland: Add bash to RDEPENDS
Change-Id: Ic9e50299fcba012068cea0c0a971c48c6da4138f
git-subtree-dir: import-layers/meta-raspberrypi
git-subtree-split: cce6292e41493158c26f5b1b7fded97faacf10d7
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Diffstat (limited to 'import-layers/meta-raspberrypi/recipes-graphics/userland/userland/0012-implement-buffer-wrapping-interface-for-dispmanx.patch')
-rw-r--r-- | import-layers/meta-raspberrypi/recipes-graphics/userland/userland/0012-implement-buffer-wrapping-interface-for-dispmanx.patch | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/import-layers/meta-raspberrypi/recipes-graphics/userland/userland/0012-implement-buffer-wrapping-interface-for-dispmanx.patch b/import-layers/meta-raspberrypi/recipes-graphics/userland/userland/0012-implement-buffer-wrapping-interface-for-dispmanx.patch new file mode 100644 index 000000000..aa3e0ef35 --- /dev/null +++ b/import-layers/meta-raspberrypi/recipes-graphics/userland/userland/0012-implement-buffer-wrapping-interface-for-dispmanx.patch @@ -0,0 +1,92 @@ +From ee5ebfcf0e030efed17f2a45fbb018a02dd421b3 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sat, 2 Apr 2016 10:54:59 -0700 +Subject: [PATCH 12/12] implement buffer wrapping interface for dispmanx + +Courtesy: Zan Dobersek + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + interface/khronos/ext/egl_wayland.c | 42 +++++++++++++++++++++++++++++++++++++ + interface/wayland/dispmanx.xml | 10 +++++++++ + 2 files changed, 52 insertions(+) + +diff --git a/interface/khronos/ext/egl_wayland.c b/interface/khronos/ext/egl_wayland.c +index 5730743..9ef89cd 100644 +--- a/interface/khronos/ext/egl_wayland.c ++++ b/interface/khronos/ext/egl_wayland.c +@@ -133,8 +133,50 @@ dispmanx_create_buffer(struct wl_client *client, struct wl_resource *resource, + buffer->handle); + } + ++static void ++dispmanx_wrap_buffer(struct wl_client *client, struct wl_resource *resource, ++ uint32_t id, uint32_t handle, int32_t width, int32_t height, ++ uint32_t stride, uint32_t buffer_height, uint32_t format) ++{ ++ struct wl_dispmanx_server_buffer *buffer; ++ VC_IMAGE_TYPE_T vc_format = get_vc_format(format); ++ uint32_t dummy; ++ ++ if(vc_format == VC_IMAGE_MIN) { ++ wl_resource_post_error(resource, ++ WL_DISPMANX_ERROR_INVALID_FORMAT, ++ "invalid format"); ++ return; ++ } ++ ++ buffer = calloc(1, sizeof *buffer); ++ if (buffer == NULL) { ++ wl_resource_post_no_memory(resource); ++ return; ++ } ++ ++ buffer->handle = handle; ++ buffer->width = width; ++ buffer->height = height; ++ buffer->format = format; ++ ++ buffer->resource = wl_resource_create(resource->client, &wl_buffer_interface, ++ 1, id); ++ if (!buffer->resource) { ++ wl_resource_post_no_memory(resource); ++ vc_dispmanx_resource_delete(buffer->handle); ++ free(buffer); ++ return; ++ } ++ ++ wl_resource_set_implementation(buffer->resource, ++ (void (**)(void)) &dispmanx_buffer_interface, ++ buffer, destroy_buffer); ++} ++ + static const struct wl_dispmanx_interface dispmanx_interface = { + dispmanx_create_buffer, ++ dispmanx_wrap_buffer, + }; + + static void +diff --git a/interface/wayland/dispmanx.xml b/interface/wayland/dispmanx.xml +index c18626d..11ed1ef 100644 +--- a/interface/wayland/dispmanx.xml ++++ b/interface/wayland/dispmanx.xml +@@ -118,6 +118,16 @@ + <arg name="buffer" type="object" interface="wl_buffer"/> + <arg name="handle" type="uint"/> + </event> ++ ++ <request name="wrap_buffer"> ++ <arg name="id" type="new_id" interface="wl_buffer"/> ++ <arg name="handle" type="uint"/> ++ <arg name="width" type="int"/> ++ <arg name="height" type="int"/> ++ <arg name="stride" type="uint"/> ++ <arg name="buffer_height" type="uint"/> ++ <arg name="format" type="uint"/> ++ </request> + </interface> + + </protocol> +-- +2.10.2 + |