)]}'
{
  "log": [
    {
      "commit": "6172a2a984fd0b423938ac08a64748439ea1b36e",
      "tree": "b374a9f39ae74cbf37ceaf7ec7e8311fdd8915a7",
      "parents": [
        "a7597114ba607d2edb5e38f873d01571f209b5a9"
      ],
      "author": {
        "name": "Tomohito Esaki",
        "email": "etom@igel.co.jp",
        "time": "Thu Nov 07 12:31:41 2019 -0800"
      },
      "committer": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Thu Nov 07 12:31:41 2019 -0800"
      },
      "message": "weston: Add set up SIGUSR1 blocking early using pthread_sigmask()\n\nXwayland block SIGUSR1 signal for handling this signal. However, if some\nweston plugins creates additional threads before xwayland is loaded,\nthis signal get delivered these threads and causes weston quit.\nTherefore, we should set up SIGUSR1 blocking early so that these threads\ncan inherit the setting when created.\n\nBUG: 144038327\n\nCherry picked from upstream commit\nhttps://github.com/wayland-project/weston/commit/f59dc1112be50467b7c0f8aeba68f3aa10d36725\n\nChange-Id: I2e2c3a3b3be0d3a84cb092e6991be1f978b6fc02\nSigned-off-by: Tomohito Esaki \u003cetom@igel.co.jp\u003e\n"
    },
    {
      "commit": "a7597114ba607d2edb5e38f873d01571f209b5a9",
      "tree": "a37a4ce45b764ac450e3e36e222dbe322335deaf",
      "parents": [
        "e0921a74330a8c3d7dce245c70cd21f471cdde76"
      ],
      "author": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Tue Oct 22 17:37:36 2019 -0700"
      },
      "committer": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Tue Oct 22 17:48:33 2019 -0700"
      },
      "message": "Revert \"Temporarily disable dmabuf video -\u003e overlay\"\n\nOverlays aren\u0027t really overlays, but underlays. That means they\u0027re\nbelow the primary plane, not above it, so a hole must be punched\nthrough the primary plane. NXP did this by hacking GStreamer,\nwayland-protocols and Weston. Lacking to make it all \"work\" is\nrendering the primary plane in a format that supports alpha.\n\nBUG: 142883165\n\nThis reverts commit e0921a74330a8c3d7dce245c70cd21f471cdde76.\n\nChange-Id: I6cb2909842425633ef169b2144c6af37c957fb0b\n"
    },
    {
      "commit": "e0921a74330a8c3d7dce245c70cd21f471cdde76",
      "tree": "db14fea46dd3d92848fbf410bfed17546acedb1d",
      "parents": [
        "22a1290cd65723ea26eb4650fb011901e28b6138"
      ],
      "author": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Fri Oct 18 13:36:59 2019 -0700"
      },
      "committer": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Fri Oct 18 13:36:59 2019 -0700"
      },
      "message": "Temporarily disable dmabuf video -\u003e overlay\n\nOverlay output is just black, disable this optimizations until the\nissue is fully understood.\n\nBUG: 142883165\nChange-Id: I3f9d12192249cc9fc06465c0fd8658e366eb4ab9\n"
    },
    {
      "commit": "22a1290cd65723ea26eb4650fb011901e28b6138",
      "tree": "a37a4ce45b764ac450e3e36e222dbe322335deaf",
      "parents": [
        "83844e3c78d9007cd9b4b98eb843d985a0de2b3b"
      ],
      "author": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Fri Oct 18 13:02:22 2019 -0700"
      },
      "committer": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Fri Oct 18 13:02:30 2019 -0700"
      },
      "message": "Revert \"compositor-drm: Met process stuck when do GPU PM Test\"\n\nThis reverts commit 7027805e95ab03f49ef58a55d68555c16083be70.\n\nChange-Id: I6731e79ef0662ada0ecd5119a9a8c66764fe0433\n"
    },
    {
      "commit": "83844e3c78d9007cd9b4b98eb843d985a0de2b3b",
      "tree": "bab2f591c4fb0692aa0b2daf4efc50f5b929f4ca",
      "parents": [
        "c517a37c7f9065a8ea0beec4d6017f622c9136d4"
      ],
      "author": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Thu Oct 17 21:29:56 2019 -0700"
      },
      "committer": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Thu Oct 17 21:30:03 2019 -0700"
      },
      "message": "Revert \"compositor-drm: Enable asynchrounous swap in libGBM\"\n\nThis reverts commit 17e7e40d69177959d498ad35115bdbfc9fa7a2d7.\n\nChange-Id: Ia91bd098aa7bf92cfe54a57cd9a9c2327c662c79\n"
    },
    {
      "commit": "c517a37c7f9065a8ea0beec4d6017f622c9136d4",
      "tree": "50fa74faea2b6e65e18cccc5fd04aff47d5f93b3",
      "parents": [
        "44cf165cf013eaf3a838258bbb845d33f91b05f8"
      ],
      "author": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Thu Oct 17 21:28:48 2019 -0700"
      },
      "committer": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Thu Oct 17 21:28:56 2019 -0700"
      },
      "message": "Revert \"compositor-drm: fix video playback hang after add fence in glrender\"\n\nThis reverts commit d7b53c1497a5e3abe36b58bebe10245a16d5b4c1.\n\nChange-Id: If3d8def941ef0e118b152fe4383832bf19c5142b\n"
    },
    {
      "commit": "44cf165cf013eaf3a838258bbb845d33f91b05f8",
      "tree": "4249d3732eb320dabe9febdd9939c916f3601296",
      "parents": [
        "d7ae5203114637fa2a9b3ffae7b72e7c8096da34"
      ],
      "author": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Thu Oct 17 21:25:37 2019 -0700"
      },
      "committer": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Thu Oct 17 21:25:43 2019 -0700"
      },
      "message": "Revert \"compositor-drm: Video performance dropped with in_fence feature\"\n\nThis reverts commit aa502f16b2a27accf22efb49cff5a2a5e028e14b.\n\nChange-Id: Id09161516cb30dbced5cd3c8b3e09282fa0128d4\n"
    },
    {
      "commit": "d7ae5203114637fa2a9b3ffae7b72e7c8096da34",
      "tree": "c737e6e7629b672348dc92cd5fa562897c946125",
      "parents": [
        "e0700868df7a717fc97a94813ec87c86101764da"
      ],
      "author": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Thu Oct 17 21:21:52 2019 -0700"
      },
      "committer": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Thu Oct 17 21:23:09 2019 -0700"
      },
      "message": "Revert \"gl-renderer: fix the build warning\"\n\nThis reverts commit 615567cbd9b742f6fcd534f3b1673bcbf1647c02.\n\nChange-Id: I2119f67d440fb39659369744f876e4d3c23d19ab\n"
    },
    {
      "commit": "e0700868df7a717fc97a94813ec87c86101764da",
      "tree": "2c88f0d830d916aafeda2885be53fd3cb23d84cd",
      "parents": [
        "87bee72d15955a8acee5450e08d9e08b7ec2423e"
      ],
      "author": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Thu Oct 17 21:19:44 2019 -0700"
      },
      "committer": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Thu Oct 17 21:22:54 2019 -0700"
      },
      "message": "Revert \"Disable HAVE_DRM_ATOMIC.\"\n\nThis reverts commit 87bee72d15955a8acee5450e08d9e08b7ec2423e.\n\nChange-Id: Ied7b22c0dd9494f79570028c5824a0d48e781b06\n"
    },
    {
      "commit": "87bee72d15955a8acee5450e08d9e08b7ec2423e",
      "tree": "374261bb09cec7438ecdf965056d8ad77c6cdb25",
      "parents": [
        "848a4e2168506309901451b21c4ad5b4b9896a04"
      ],
      "author": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Thu Sep 05 14:10:11 2019 -0700"
      },
      "committer": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Thu Sep 05 14:10:11 2019 -0700"
      },
      "message": "Disable HAVE_DRM_ATOMIC.\n\nweston.log:\nFailed to load module: /usr/lib/aarch64-linux-gnu/libweston-5/drm-backend.so: undefined symbol: gbm_surface_set_sync_post\nfatal: failed to create compositor backend\n\nUsage of gbm_surface_set_sync_post is guarded by #ifdef HAVE_DRM_ATOMIC in\ncompositor-drm.c. Calls to gbm_surface_set_sync_post was added by NXP and\nisn\u0027t an upstream libgbm symbol. Our imx-gpu-viv version doesn\u0027t implement\nit.\n\nweston-imx-5.0.0 worked fine on chef/stretch as it had libdrm 2.4.74 and\nconfigure.ac checks for \u003e\u003d 2.4.78 to enable HAVE_DRM_ATOMIC:\nPKG_CHECK_MODULES(DRM_COMPOSITOR_ATOMIC, [libdrm \u003e\u003d 2.4.78],\n    [AC_DEFINE([HAVE_DRM_ATOMIC], 1, [libdrm supports atomic API])],\n\nThis change is equivalent of running weston-imx-5.0.0 on chef/stretch.\nOther options are reverting the IMX specific calls to gbm_* symbols,\nor update to weston-imx-6.0.0 that doesn\u0027t have them at all.\n\nChange-Id: I9979da8df44728f8c10a4d450eae3a998ebeb6c2\n"
    },
    {
      "commit": "848a4e2168506309901451b21c4ad5b4b9896a04",
      "tree": "2c88f0d830d916aafeda2885be53fd3cb23d84cd",
      "parents": [
        "fb563901657b296c7c7c86d26602a622429e334f"
      ],
      "author": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Tue Aug 20 12:32:25 2019 -0700"
      },
      "committer": {
        "name": "Jonas Larsson",
        "email": "ljonas@google.com",
        "time": "Tue Aug 20 12:32:25 2019 -0700"
      },
      "message": "Use libdrm-imx headers\n\nChange-Id: Ie099536810d9142744ee40002543197edad93d22\n"
    },
    {
      "commit": "fb563901657b296c7c7c86d26602a622429e334f",
      "tree": "57f961aaf46bc4e72ebf0a86ff1fd46a2e07bde2",
      "parents": [
        "8a82d9edf301c3c9be659de25707b5bb9cd3d8d1"
      ],
      "author": {
        "name": "Wujian sun",
        "email": "wujian.sun@nxp.com",
        "time": "Thu Mar 14 10:19:20 2019 +0800"
      },
      "committer": {
        "name": "Wujian sun",
        "email": "wujian.sun@nxp.com",
        "time": "Thu Mar 14 11:30:30 2019 +0800"
      },
      "message": "MGS-4627 [#ccc] weston will turn off when panel-psotion\u003dnone and use\ngplay\n\nMet free invalid pointer\ninitialize clipped_view\nweston 6.0 fixed it no need merge\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by Wujian Sun \u003cwujian.sun@nxp.com\u003e\n"
    },
    {
      "commit": "8a82d9edf301c3c9be659de25707b5bb9cd3d8d1",
      "tree": "afbef14b91ea96dd976dbc13dab4dd4128f8ad17",
      "parents": [
        "20e35541ec6fd7c7a291262d419729dfce9dc7b0"
      ],
      "author": {
        "name": "Wujian sun",
        "email": "wujian.sun@nxp.com",
        "time": "Thu Mar 07 10:34:17 2019 +0800"
      },
      "committer": {
        "name": "Wujian sun",
        "email": "wujian.sun@nxp.com",
        "time": "Thu Mar 07 13:51:17 2019 +0800"
      },
      "message": "g2d-renderer: Check the value of bottom error\n\nIn the function g2d_clip_rects check bottom value error\nshould srcRect-\u003etop \u003e\u003d srcRect-\u003ebottom then return\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by Wujian Sun \u003cwujian.sun@nxp.com\u003e\n"
    },
    {
      "commit": "20e35541ec6fd7c7a291262d419729dfce9dc7b0",
      "tree": "b9b62b0a3ac57ea5755181d68797ce72cff89519",
      "parents": [
        "615567cbd9b742f6fcd534f3b1673bcbf1647c02"
      ],
      "author": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Sun Jan 06 01:09:07 2019 +0800"
      },
      "committer": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Sun Jan 06 01:09:07 2019 +0800"
      },
      "message": "compositor-drm: Bypass the check of the libinput\n\nContinue to start weston while error occurred in libinput.\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by Yong Gan \u003cyong.gan@nxp.com\u003e\n"
    },
    {
      "commit": "615567cbd9b742f6fcd534f3b1673bcbf1647c02",
      "tree": "540571ee0da1d09db50746a47af4f630805493f5",
      "parents": [
        "aa502f16b2a27accf22efb49cff5a2a5e028e14b"
      ],
      "author": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Sun Nov 11 00:06:26 2018 +0800"
      },
      "committer": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Sun Nov 11 00:06:26 2018 +0800"
      },
      "message": "gl-renderer: fix the build warning\n\nwarning: no previous prototype for ‘gl_renderer_sync_post’\n[-Wmissing-prototypes]\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Yong Gan \u003cyong.gan@nxp.com\u003e\n"
    },
    {
      "commit": "aa502f16b2a27accf22efb49cff5a2a5e028e14b",
      "tree": "f510070b076bbb1b5a272c9e58a8b20ee1b7ced5",
      "parents": [
        "1ee5c6cfef767b04b4fb915fa3920820ba6cd1b7"
      ],
      "author": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Sat Oct 27 01:31:02 2018 +0800"
      },
      "committer": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Sat Oct 27 01:32:01 2018 +0800"
      },
      "message": "compositor-drm: Video performance dropped with in_fence feature\n\nDisabe in_fence feature while using the dmabuf in gl renderer.\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by Yong Gan \u003cyong.gan@nxp.com\u003e\n"
    },
    {
      "commit": "1ee5c6cfef767b04b4fb915fa3920820ba6cd1b7",
      "tree": "3a604b3630b524816b1fd0cfe55640260146d00e",
      "parents": [
        "6ed61e30a8afdb31b0f375c2042baa2c2de7e085"
      ],
      "author": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Wed Oct 24 06:00:30 2018 +0800"
      },
      "committer": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Wed Oct 24 06:00:30 2018 +0800"
      },
      "message": "compositor: add use-g2d in config-file option\n\nAdd config option in weston.ini, such as:\n[core]\nuse-g2d\u003d1\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Yong Gan \u003cyong.gan@nxp.com\u003e\n"
    },
    {
      "commit": "6ed61e30a8afdb31b0f375c2042baa2c2de7e085",
      "tree": "38577fded9a5ea1c9969eceff147abfa6158ed6f",
      "parents": [
        "43ddfb80612ab08265375dad903e6844d5d3b6f3"
      ],
      "author": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Tue Oct 16 13:59:07 2018 +0800"
      },
      "committer": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Tue Oct 16 14:07:09 2018 +0800"
      },
      "message": "gl-renderer: remove dmabuf re-import code\n\nGPU needn\u0027t re-import every dmabuf fd, it will\ncost some time for driver query physical addr\nand make performance downgrade\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Haihua Hu \u003cjared.hu@nxp.com\u003e\n"
    },
    {
      "commit": "43ddfb80612ab08265375dad903e6844d5d3b6f3",
      "tree": "c749747bdee592092c22e9f0e1cc2aba0df70182",
      "parents": [
        "de814e1aa4899375b67140b5e5ae714c67bb27a0"
      ],
      "author": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Tue Oct 16 13:35:14 2018 +0800"
      },
      "committer": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Tue Oct 16 13:36:37 2018 +0800"
      },
      "message": "compositor-drm: cache gem handle in dmabuf object\n\ncache gem handle in dmabuf object to avoid re-import\ndmabuf fd every time\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Haihua Hu \u003cjared.hu@nxp.com\u003e\n"
    },
    {
      "commit": "de814e1aa4899375b67140b5e5ae714c67bb27a0",
      "tree": "641868ea24fc62c0c55c15a37cbd1fb4a8329864",
      "parents": [
        "d7b53c1497a5e3abe36b58bebe10245a16d5b4c1"
      ],
      "author": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Sat Sep 15 18:46:18 2018 +0800"
      },
      "committer": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Sat Sep 15 18:47:55 2018 +0800"
      },
      "message": "compositor-drm: fix DMABuf leak on 8MM\n\nNeed close gem handle even if add fb fail\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Haihua Hu \u003cjared.hu@nxp.com\u003e\n"
    },
    {
      "commit": "d7b53c1497a5e3abe36b58bebe10245a16d5b4c1",
      "tree": "c4ef3b35e250eb75fe1fdd8da18021ff62f51553",
      "parents": [
        "17e7e40d69177959d498ad35115bdbfc9fa7a2d7"
      ],
      "author": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Thu Sep 13 07:01:43 2018 +0800"
      },
      "committer": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Thu Sep 13 07:01:43 2018 +0800"
      },
      "message": "compositor-drm: fix video playback hang after add fence in glrender\n\noverlay plane do not need additional fence, add fence\nonly in primary plane.\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Haihua Hu \u003cjared.hu@nxp.com\u003e\n"
    },
    {
      "commit": "17e7e40d69177959d498ad35115bdbfc9fa7a2d7",
      "tree": "9bb1b3982d1dae8eebcc9347beaa133de6a6fef9",
      "parents": [
        "a6f05927a3595f692d1831b504ca4d77dd241622"
      ],
      "author": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Thu Sep 13 05:56:56 2018 +0800"
      },
      "committer": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Thu Sep 13 05:56:56 2018 +0800"
      },
      "message": "compositor-drm: Enable asynchrounous swap in libGBM\n\nGet the in_fence_fd from the gbm_surface, and add it to\nthe plane property, the displayer will wait for the GPU\ndriver to signal this fence fd.\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Yong Gan \u003cyong.gan@nxp.com\u003e\n"
    },
    {
      "commit": "a6f05927a3595f692d1831b504ca4d77dd241622",
      "tree": "bed68478dea0b93b74230c6344ba7abfbfd27a04",
      "parents": [
        "96ffd91c316f375d56d1000c7c88bc48230a463d"
      ],
      "author": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Wed Sep 12 05:59:01 2018 +0800"
      },
      "committer": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Wed Sep 12 06:17:00 2018 +0800"
      },
      "message": "input: Revert the send unique keymap file descriptors to clients\n\nThis reverts commit 76829fc4eaea329d2a525c3978271e13bd76c078.\nIt break the build of the wayland-ivi-extension.\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Yong Gan \u003cyong.gan@nxp.com\u003e\n"
    },
    {
      "commit": "96ffd91c316f375d56d1000c7c88bc48230a463d",
      "tree": "4d5176278cf52096152f3f6599ace3f20574dd17",
      "parents": [
        "48d278c22e9760218f48fbe4f43c85716023ecbe"
      ],
      "author": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Wed Sep 05 14:06:50 2018 +0800"
      },
      "committer": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Wed Sep 05 17:44:19 2018 +0800"
      },
      "message": "compositor-drm: add DTRC meta handle\n\nDTRC meta is used for DCSS drm driver, Only overlay plane\nhas this property. Update it when its value changed\n\nUpstream-Status: Inappropriate [i.MX-specific]\nSigned-off-by: Haihua Hu \u003cjared.hu@nxp.com\u003e\n"
    },
    {
      "commit": "48d278c22e9760218f48fbe4f43c85716023ecbe",
      "tree": "8de96c6506f9b772e5e5254ea2daaddcf5615b0b",
      "parents": [
        "30c3ca1cf326e71ca0252fb92e39b4975dbfe926"
      ],
      "author": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Wed Sep 05 13:19:00 2018 +0800"
      },
      "committer": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Wed Sep 05 17:44:19 2018 +0800"
      },
      "message": "compositor-drm: report modifiers from drm-backend\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Haihua Hu \u003cjared.hu@nxp.com\u003e\n"
    },
    {
      "commit": "30c3ca1cf326e71ca0252fb92e39b4975dbfe926",
      "tree": "54bf772c9f3374cfdfd9b3d3e5f02a72caa28bcc",
      "parents": [
        "52960ecf052346e1ae01486fa4359a3cce163395"
      ],
      "author": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Thu Aug 30 16:34:12 2018 +0800"
      },
      "committer": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Wed Sep 05 17:44:19 2018 +0800"
      },
      "message": "compositor-drm: support hdr10 metadata protocol\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Haihua Hu \u003cjared.hu@nxp.com\u003e\n"
    },
    {
      "commit": "52960ecf052346e1ae01486fa4359a3cce163395",
      "tree": "b4f43dafc2e20fee270eedbf7c5d60492362d697",
      "parents": [
        "4bb5b8ecd212614727e63bb975ec40da77120913"
      ],
      "author": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Mon Jun 25 10:55:38 2018 +0800"
      },
      "committer": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Wed Sep 05 17:44:19 2018 +0800"
      },
      "message": "compositor-drm: support 10bit NV12 dmabuf import\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Haihua Hu \u003cjared.hu@nxp.com\u003e\n"
    },
    {
      "commit": "4bb5b8ecd212614727e63bb975ec40da77120913",
      "tree": "d88e7e10daeb5965efcd98b58694a6edf5bfd0a7",
      "parents": [
        "1d6fe8b6dbc14fdb59438c3ca3b277e3ece2d6f5"
      ],
      "author": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Thu Aug 30 13:03:08 2018 +0800"
      },
      "committer": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Wed Sep 05 17:44:19 2018 +0800"
      },
      "message": "compositor-drm: fix primary fb format is not argb format\n\nwhen we need to use argb format on 850D, don\u0027t change it to\nxrgb, this will make video unvisuable. Other platform, will\ndefault use xrgb format.\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Haihua Hu \u003cjared.hu@nxp.com\u003e\n"
    },
    {
      "commit": "1d6fe8b6dbc14fdb59438c3ca3b277e3ece2d6f5",
      "tree": "b725566fc23b306dc3f73d2a589ce9986c6a5f79",
      "parents": [
        "afa6cde4226770e37a7a6613067eb570fb542646"
      ],
      "author": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Wed Jul 11 10:48:40 2018 +0800"
      },
      "committer": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Wed Sep 05 17:44:19 2018 +0800"
      },
      "message": "compositor-drm: get desktop shell window size from config\n\nget desktop shell window size from config section \"shell\"\ninstead of from environment variable\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Haihua Hu \u003cjared.hu@nxp.com\u003e\n"
    },
    {
      "commit": "afa6cde4226770e37a7a6613067eb570fb542646",
      "tree": "efe0ae2786833f6f8d30b7d5e5be2a75d213ea08",
      "parents": [
        "07ec6c63b8568cab665a75a506c1ad448d689436"
      ],
      "author": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Thu Aug 30 12:23:15 2018 +0800"
      },
      "committer": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Wed Sep 05 17:44:19 2018 +0800"
      },
      "message": "compositor-drm: refine overlay src and dest coordinate calculation\n\nFor desktop shell, its output size may different with current mode.\nWhen prepare overlay plane, compositor should take this scale to\ncalculate the dest coordinate. And src coordinate should get from buffer.\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Haihua Hu \u003cjared.hu@nxp.com\u003e\n"
    },
    {
      "commit": "07ec6c63b8568cab665a75a506c1ad448d689436",
      "tree": "72aa18db44142fab9d382ceb099f2b933e9dca8a",
      "parents": [
        "a22fb12fabdef029a64294fcbf27da97ecc6542f"
      ],
      "author": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Thu Jun 21 09:53:59 2018 +0800"
      },
      "committer": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Wed Sep 05 17:44:19 2018 +0800"
      },
      "message": "gl-renderer: implement new blend function (src_alpha, src_alpha)\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Haihua Hu \u003cjared.hu@nxp.com\u003e\n"
    },
    {
      "commit": "a22fb12fabdef029a64294fcbf27da97ecc6542f",
      "tree": "b9442d72de51a27939baf724d2f286b0c149d2e5",
      "parents": [
        "83584476cb5064af3d2d191b348c439deb5bf315"
      ],
      "author": {
        "name": "Alexandros Frantzis",
        "email": "alexandros.frantzis@collabora.com",
        "time": "Tue Aug 08 17:03:00 2017 +0300"
      },
      "committer": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Wed Sep 05 17:44:19 2018 +0800"
      },
      "message": "libweston: Implement alpha-compositing-v1 for gl renderer\n"
    },
    {
      "commit": "83584476cb5064af3d2d191b348c439deb5bf315",
      "tree": "a125d48ead74552213e9e02e715d113c32079991",
      "parents": [
        "dc2258f162f24f9b6be323a2856cc931b8630cd5"
      ],
      "author": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Wed Aug 29 14:01:11 2018 +0800"
      },
      "committer": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Wed Sep 05 17:44:19 2018 +0800"
      },
      "message": "compositor-drm: move video to overlay plane\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Haihua Hu \u003cjared.hu@nxp.com\u003e\n"
    },
    {
      "commit": "dc2258f162f24f9b6be323a2856cc931b8630cd5",
      "tree": "77f6d591199b04dc712f93cbc562761a03020eaf",
      "parents": [
        "4a3ced70e70bc51641a9f7657678a2dee32939f5"
      ],
      "author": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Wed Aug 29 12:49:08 2018 +0800"
      },
      "committer": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Wed Sep 05 17:44:19 2018 +0800"
      },
      "message": "compositor-drm: support get drm fb from dmabuf\n\ndirectly use gem object to improt dmabuf\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Haihua Hu \u003cjared.hu@nxp.com\u003e\n"
    },
    {
      "commit": "4a3ced70e70bc51641a9f7657678a2dee32939f5",
      "tree": "71080467a3aa553841b592567b3f0f85bd4037d6",
      "parents": [
        "66f04868f354362c983ab4b8da6dd9dd72dce1b4"
      ],
      "author": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Thu May 03 19:07:16 2018 +0800"
      },
      "committer": {
        "name": "Haihua Hu",
        "email": "jared.hu@nxp.com",
        "time": "Wed Sep 05 17:44:19 2018 +0800"
      },
      "message": "compositor-drm: add _query_dma_formats for linux-dmabuf\n\nalso query dma formats form drm driver\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Haihua Hu \u003cjared.hu@nxp.com\u003e\n"
    },
    {
      "commit": "66f04868f354362c983ab4b8da6dd9dd72dce1b4",
      "tree": "14be2401c8208f61d4c63729f72088ac7eab3122",
      "parents": [
        "7027805e95ab03f49ef58a55d68555c16083be70"
      ],
      "author": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Fri Aug 31 10:57:59 2018 +0800"
      },
      "committer": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Sat Sep 01 01:28:40 2018 +0800"
      },
      "message": "compositor: Add multi display support in fbdev compositor\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Yong Gan \u003cyong.gan@nxp.com\u003e\n"
    },
    {
      "commit": "7027805e95ab03f49ef58a55d68555c16083be70",
      "tree": "b39c62226c9045f14895737694d3bc17692a5edc",
      "parents": [
        "2a34ff2486c37dc37ad56ea252d887d45f1a60ba"
      ],
      "author": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Thu Jul 12 03:56:22 2018 +0800"
      },
      "committer": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Fri Aug 31 06:03:55 2018 +0800"
      },
      "message": "compositor-drm: Met process stuck when do GPU PM Test\n\ndrm master was set by systemd in PM test, try to set the master back\nThis is a workaround patch, we should detect the EPERM error when we try to commit,\ncancel the repaint, and wait for the session to be deactivated. When the session is reactivated,\nwe should make sure that repaint still works from there.\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Yong Gan \u003cyong.gan@nxp.com\u003e\n(cherry picked from commit e2d863784ff7d5d45025463db94c23fffceb9132)\n"
    },
    {
      "commit": "2a34ff2486c37dc37ad56ea252d887d45f1a60ba",
      "tree": "924778163b32ab9564bf0122b49071c4b0398a98",
      "parents": [
        "9e1d16dd88d315481ccdb2ce85119862ca7be93e"
      ],
      "author": {
        "name": "Wujian sun",
        "email": "wujian.sun@nxp.com",
        "time": "Wed Aug 29 18:27:27 2018 +0800"
      },
      "committer": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Fri Aug 31 02:05:50 2018 +0800"
      },
      "message": "g2d-renderer: Enable dither effect in the fbdev board\n\nEnable G2D_DITHER if the framebuffer pixel format is G2D_RGB565\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by Wujian Sun \u003cwujian.sun@nxp.com\u003e\n\n(cherry picked from commit 866072b52751e5023651dd9322baa513e1f74fe6)\n"
    },
    {
      "commit": "9e1d16dd88d315481ccdb2ce85119862ca7be93e",
      "tree": "8882b991104ae62a09f22f6e7f257d271d1fded3",
      "parents": [
        "28c56dbf1aa186195252d4ae971283efdf7e29a4"
      ],
      "author": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Wed Aug 29 11:02:40 2018 +0800"
      },
      "committer": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Wed Aug 29 11:02:40 2018 +0800"
      },
      "message": "compositor: Add G2d render in DRM compositor\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Yong Gan \u003cyong.gan@nxp.com\u003e\n"
    },
    {
      "commit": "28c56dbf1aa186195252d4ae971283efdf7e29a4",
      "tree": "53aed0392c7ba9d72d291489f9c4849d12534d7c",
      "parents": [
        "5465ee0aadf37b037d9627120e9b6f6d73325398"
      ],
      "author": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Wed Aug 29 10:07:28 2018 +0800"
      },
      "committer": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Wed Aug 29 10:07:28 2018 +0800"
      },
      "message": "compositor: Add G2d render in FBDev compositor\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Yong Gan \u003cyong.gan@nxp.com\u003e\n"
    },
    {
      "commit": "5465ee0aadf37b037d9627120e9b6f6d73325398",
      "tree": "a135823331da41ac0ee40c1bf477974964f7dc46",
      "parents": [
        "1f9697c3c09d3df23723d261943165b3edc04e83"
      ],
      "author": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Tue Dec 05 08:34:03 2017 +0800"
      },
      "committer": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Tue Aug 28 06:03:02 2018 +0800"
      },
      "message": "compositor: vdk performace limit to 30 fps with 4k and 60fps display setting.\n\nChange the DEFAULT_REPAINT_WINDOW from 7ms to 16ms.\nIt need more time to repaint window in 4k mode.\nAslo 7ms is not enough in multi display mode.\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Yong Gan \u003cyong.gan@nxp.com\u003e\n(cherry picked from commit 3b08f62d5a92837e23e246f90dfb089dc71cc5f8)\n"
    },
    {
      "commit": "1f9697c3c09d3df23723d261943165b3edc04e83",
      "tree": "ce4e1655b01d7b6fad2898fb807361188e1e8a1f",
      "parents": [
        "7aeda5aac31ded655918df8e0a2b38f581495d4d"
      ],
      "author": {
        "name": "Tom Hochstein",
        "email": "tom.hochstein@nxp.com",
        "time": "Fri Apr 27 12:29:54 2018 -0500"
      },
      "committer": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Tue Aug 28 06:02:53 2018 +0800"
      },
      "message": "desktop-shell: Disable idle timeout [YOCIMX-2463]\n\nSet the default idle timeout to disabled.\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Tom Hochstein \u003ctom.hochstein@nxp.com\u003e\n"
    },
    {
      "commit": "7aeda5aac31ded655918df8e0a2b38f581495d4d",
      "tree": "04387974d2d74f572c46eb83b1388c729b1357f4",
      "parents": [
        "ffa78a508de2bdda3615c2f9d793fda56b5468c6"
      ],
      "author": {
        "name": "Tom Hochstein",
        "email": "tom.hochstein@nxp.com",
        "time": "Wed Mar 07 22:34:46 2018 -0600"
      },
      "committer": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Tue Aug 28 06:02:40 2018 +0800"
      },
      "message": "desktop-shell: Improve the default configuration [YOCIMX-2296]\n\nThe default configuration file creates a desktop that is\nugly in comparison to using no configuration file. Remove\nmost of the default configuration settings to improve the\nlook.\n\nAlso add examples for HDMI configuration.\n\nUpstream-Status: Inappropriate [i.MX-specific]\n\nSigned-off-by: Tom Hochstein \u003ctom.hochstein@nxp.com\u003e\n(cherry picked from commit eda3202da19df94603d4e82824f07512b7a24899)\n"
    },
    {
      "commit": "ffa78a508de2bdda3615c2f9d793fda56b5468c6",
      "tree": "bf052ac36e78899bf64a89cd9f87276262206294",
      "parents": [
        "030e7d40fe18869880fc72ce9ae3cbeca6f49600"
      ],
      "author": {
        "name": "Prabhu Sundararaj",
        "email": "prabhu.sundararaj@nxp.com",
        "time": "Thu Oct 26 17:11:16 2017 -0500"
      },
      "committer": {
        "name": "Yong Gan",
        "email": "yong.gan@nxp.com",
        "time": "Tue Aug 28 06:02:30 2018 +0800"
      },
      "message": "launcher: logind : Fix to avoid compositor to go asleep when drm device removed\n\ndrm_device_is_kms is called multiple times for each DRM device node. When\nweston_launcher_close is called on a non-kms DRM device, it will deactivate\nthe session and cause the compositor to sleep.\n\nAdd a check for \"gone\" event when the device gets removed, to avoid deactivating\nthe compositor.\n\nThe case was reproduced on an embedded device having muliple DRM nodes on\nwhich the order of udev_enumerate_get_list_entry was not predictable.\n\nUpstream Status: Proposed\n\nSigned-off-by: Prabhu Sundararaj \u003cprabhu.sundararaj@nxp.com\u003e\n(cherry picked from commit 0a1912e121691c64b6919532180b32377ed9235a)\n(cherry picked from commit a1859cfd8fff01524fa9d98bbfa5f15656943eb5)\n"
    },
    {
      "commit": "030e7d40fe18869880fc72ce9ae3cbeca6f49600",
      "tree": "af42cc391ec691cccd07d4608eb8d819dc57ab76",
      "parents": [
        "30e283de702421a6c92c12dd3c7adec2bf252c4c"
      ],
      "author": {
        "name": "Derek Foreman",
        "email": "derekf@osg.samsung.com",
        "time": "Fri Aug 24 12:39:33 2018 -0500"
      },
      "committer": {
        "name": "Derek Foreman",
        "email": "derekf@osg.samsung.com",
        "time": "Fri Aug 24 12:39:33 2018 -0500"
      },
      "message": "configure.ac: bump to version 5.0.0 for the official release\n"
    },
    {
      "commit": "30e283de702421a6c92c12dd3c7adec2bf252c4c",
      "tree": "a75be87d0c90776c38c9c0d71cd71985932739d0",
      "parents": [
        "453345102818448c3078c0ce8f02e580c744a2a6"
      ],
      "author": {
        "name": "Stefan Agner",
        "email": "stefan@agner.ch",
        "time": "Mon Aug 20 17:11:38 2018 +0200"
      },
      "committer": {
        "name": "Stefan Agner",
        "email": "stefan@agner.ch",
        "time": "Mon Aug 20 17:11:38 2018 +0200"
      },
      "message": "compositor-drm: add DPI connector type\n\nLinux v4.7 introduced a new connector type for display parallel\ninterface (DPI). Add DPI to the list of connectors in the DRM\nbackend of Weston as well. This avoid DPI connectors showing up\nas UNNAMED.\n\nSigned-off-by: Stefan Agner \u003cstefan@agner.ch\u003e\n"
    },
    {
      "commit": "453345102818448c3078c0ce8f02e580c744a2a6",
      "tree": "cfb6c8256997d5e30a98f24f2dc537012e7cf9b5",
      "parents": [
        "76829fc4eaea329d2a525c3978271e13bd76c078"
      ],
      "author": {
        "name": "Derek Foreman",
        "email": "derekf@osg.samsung.com",
        "time": "Fri Aug 17 11:20:27 2018 -0500"
      },
      "committer": {
        "name": "Derek Foreman",
        "email": "derekf@osg.samsung.com",
        "time": "Fri Aug 17 11:20:27 2018 -0500"
      },
      "message": "configure.ac: bump to version 4.0.94 for the RC2 release\n"
    },
    {
      "commit": "76829fc4eaea329d2a525c3978271e13bd76c078",
      "tree": "fe9e08bf3b47505ca21010f2b54d01159963c0e5",
      "parents": [
        "f8f7fd69df5bf318b2da9ec6ce964ac676eb2e29"
      ],
      "author": {
        "name": "Derek Foreman",
        "email": "derekf@osg.samsung.com",
        "time": "Wed Jun 28 12:17:46 2017 -0500"
      },
      "committer": {
        "name": "Derek Foreman",
        "email": "derekf@osg.samsung.com",
        "time": "Fri Aug 17 09:25:24 2018 -0500"
      },
      "message": "input: Send unique keymap file descriptors to clients\n\nClient may map any file descriptor opened for writing with PROT_WRITE\nthemselves.  On linux, even a read-only file descriptor to an unlinked\nfile can be re-opened with write permission through /proc/self/fd.\n\nThe only way to prevent this is to create a memfd which\nis subsequently write-sealed.  Unfortunately this prevents clients\nfrom mapping with MAP_SHARED, which is already in widespread usage.\n\nTo isolate and protect the keymap, whilst allowing MAP_SHARED clients\nto continue to work, use a unique file descriptor for each\nwl_keyboard resource.\n\nReviewed-by: Daniel Stone \u003cdaniels@collabora.com\u003e\n"
    },
    {
      "commit": "f8f7fd69df5bf318b2da9ec6ce964ac676eb2e29",
      "tree": "2aa05b72312280144326cc819ecf6dd9a0985e06",
      "parents": [
        "dc1418ae8ebdb3916625f501a4d8ca4a9125b1b1"
      ],
      "author": {
        "name": "Derek Foreman",
        "email": "derekf@osg.samsung.com",
        "time": "Wed Jun 28 11:41:43 2017 -0500"
      },
      "committer": {
        "name": "Derek Foreman",
        "email": "derekf@osg.samsung.com",
        "time": "Fri Aug 17 09:25:21 2018 -0500"
      },
      "message": "input: add weston_keyboard_send_keymap helper function\n\nWe\u0027ve always had \"send_keymap\" internally, but some places failed to use\nit.  Since we also use this in the text backend, export it.\n\nReviewed-by: Daniel Stone \u003cdaniels@collabora.com\u003e\n"
    },
    {
      "commit": "dc1418ae8ebdb3916625f501a4d8ca4a9125b1b1",
      "tree": "0cff1c3cfa8cd8d3af3edc2d007bca97764986c5",
      "parents": [
        "46cbd0a7f5271cd0832e6d8687829844f40f89cd"
      ],
      "author": {
        "name": "Derek Foreman",
        "email": "derekf@osg.samsung.com",
        "time": "Fri Aug 10 13:03:57 2018 -0500"
      },
      "committer": {
        "name": "Derek Foreman",
        "email": "derekf@osg.samsung.com",
        "time": "Fri Aug 10 13:03:57 2018 -0500"
      },
      "message": "configure.ac: bump to version 4.0.93 for the RC1 release\n"
    },
    {
      "commit": "46cbd0a7f5271cd0832e6d8687829844f40f89cd",
      "tree": "7a71a49d9401128fd95f1a5a845431189b9d2b67",
      "parents": [
        "b8b2c72709a16382fe7a75a3476236bd31c0e54c"
      ],
      "author": {
        "name": "Harsha M M",
        "email": "harsha.manjulamallikarjun@in.bosch.com",
        "time": "Tue Aug 07 19:05:03 2018 +0530"
      },
      "committer": {
        "name": "Pekka Paalanen",
        "email": "pekka.paalanen@collabora.co.uk",
        "time": "Fri Aug 10 13:23:14 2018 +0300"
      },
      "message": "ivi-shell: Remove the compositor destory listener from list during de-init\n\nDuring de-init ensure removal of compositor destroy notification\nfrom list. Otherwise a dongling pointer is left behind which will\naffect other plugins.\n\nSigned-off-by: Harsha M M \u003charsha.manjulamallikarjun@in.bosch.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "b8b2c72709a16382fe7a75a3476236bd31c0e54c",
      "tree": "abf67ed9c4376c0ce417065284b5d66d9cb45f3a",
      "parents": [
        "103dc42b5ec134362db9b6dfb32edf10344e6769"
      ],
      "author": {
        "name": "Harsha M M",
        "email": "harsha.manjulamallikarjun@in.bosch.com",
        "time": "Tue Aug 07 19:05:02 2018 +0530"
      },
      "committer": {
        "name": "Pekka Paalanen",
        "email": "pekka.paalanen@collabora.co.uk",
        "time": "Wed Aug 08 12:22:24 2018 +0300"
      },
      "message": "libweston: Remove signals from the list during de-init\n\nDuring de-init ensure removal of added signals from list. Otherwise\na dongling pointer is left behind which will affect other plugins.\n\nSigned-off-by: Harsha M M \u003charsha.manjulamallikarjun@in.bosch.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "103dc42b5ec134362db9b6dfb32edf10344e6769",
      "tree": "d33fc552a89b843f430449cb63b013c50868b8ff",
      "parents": [
        "8798fa7fdfcb219d85e5f76b24f1de2dc75f688f"
      ],
      "author": {
        "name": "Will Thompson",
        "email": "will@willthompson.co.uk",
        "time": "Tue Aug 07 14:16:46 2018 +0000"
      },
      "committer": {
        "name": "Will Thompson",
        "email": "will@willthompson.co.uk",
        "time": "Tue Aug 07 15:19:01 2018 +0100"
      },
      "message": "doc: fix typos in CONTRIBUTING.md\n\n* Cover letters are no more; presumably the changes since the previous\n  revision should be summarised in the MR\n* Code should be indented with tabs, not implemented with tabs\n\nSigned-off-by: Will Thompson \u003cwill@willthompson.co.uk\u003e\n"
    },
    {
      "commit": "8798fa7fdfcb219d85e5f76b24f1de2dc75f688f",
      "tree": "71065c0d1d55b0ffb5134b279030ac7780a6bc07",
      "parents": [
        "f987cb98ef3bf7758b20b8ca3d17f6fc318d0b21"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Sat Jul 14 14:04:07 2018 +0100"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Tue Aug 07 14:38:38 2018 +0100"
      },
      "message": "doc: Use GitLab MRs for patches, not the list\n\nThough Wayland and the protocols still use mail-based patch review,\nWeston can now move to GitLab MRs with review through that system.\n\nAdd some documentation on how to submit patches through GitLab,\nspecifically targeted at people who may be familiar with GitLab review,\nbut not familiar with our rebasing microcommit workflow.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Quentin Glidic \u003csardemff7+git@sardemff7.net\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "f987cb98ef3bf7758b20b8ca3d17f6fc318d0b21",
      "tree": "01b9ba130441bb45dd7c9ddd3f5f06168a8235fb",
      "parents": [
        "3a6fa200b7dcfa830daa7412d1be06b7e5563f3d"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Sat Jul 14 13:33:30 2018 +0100"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Tue Aug 07 14:38:24 2018 +0100"
      },
      "message": "README: Move to Markdown, rewrite introduction\n\nMove the README file to Markdown, and update it to attempt to explain\nthe current status and use of Weston.\n\nThe first sections are user-facing, so they can quickly understand what\nWeston is, what it does, what it doesn\u0027t do, and how to go about using\nit. The following sections on libweston and for distribution packagers\nare left intact, but should probably be moved to separate documents.\n\nThis includes a screenshot of Weston running weston-terminal, Chrome and\nsimple-egl, which was taken by myself and subject to the same licensing\nterms as the rest of the tree.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Quentin Glidic \u003csardemff7+git@sardemff7.net\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "3a6fa200b7dcfa830daa7412d1be06b7e5563f3d",
      "tree": "0a4fdfb8b34c0d2219721869b7fe1cb07edaa105",
      "parents": [
        "2e3915f1bfd1cbefa7a417242600c3019751793e"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Sat Jul 14 13:09:58 2018 +0100"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Mon Aug 06 11:55:43 2018 +0100"
      },
      "message": "doc: Update CONTRIBUTING for Weston\n\nChange some Wayland-specific references to instead refer to Weston.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Quentin Glidic \u003csardemff7+git@sardemff7.net\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "2e3915f1bfd1cbefa7a417242600c3019751793e",
      "tree": "c7f8dce6d0e04327c19d720e840bb877bab968db",
      "parents": [
        "0335e447314f7f2beadbe87e6914ae0f9e9bcabc"
      ],
      "author": {
        "name": "Pekka Paalanen",
        "email": "pekka.paalanen@collabora.co.uk",
        "time": "Sat Jul 14 11:55:24 2018 +0100"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Mon Aug 06 11:55:40 2018 +0100"
      },
      "message": "Add CONTRIBUTING.md document\n\nTaken from Pekka\u0027s wayland/wayland@630c25f4c160 and follow-ups, use\nWayland\u0027s CONTRIBUTING document as a basis for Weston.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Quentin Glidic \u003csardemff7+git@sardemff7.net\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "0335e447314f7f2beadbe87e6914ae0f9e9bcabc",
      "tree": "d022feb5f759b3bbd7d0d453d5a74e99cded1bd0",
      "parents": [
        "48687982b55771b19b958e6a8d62794c61b2d797"
      ],
      "author": {
        "name": "Derek Foreman",
        "email": "derekf@osg.samsung.com",
        "time": "Fri Jul 27 11:45:59 2018 -0500"
      },
      "committer": {
        "name": "Derek Foreman",
        "email": "derekf@osg.samsung.com",
        "time": "Fri Jul 27 11:45:59 2018 -0500"
      },
      "message": "configure.ac: bump to version 4.0.92 for the beta release\n"
    },
    {
      "commit": "48687982b55771b19b958e6a8d62794c61b2d797",
      "tree": "08c566f45b04e12707c0729c32a5e41daf91ef89",
      "parents": [
        "117892259014d02e3ed41d241c6068d026f4c440"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Thu Jul 12 12:16:47 2018 +0100"
      },
      "committer": {
        "name": "Derek Foreman",
        "email": "derekf@osg.samsung.com",
        "time": "Fri Jul 27 11:21:10 2018 -0500"
      },
      "message": "compositor-drm: Remove addfb warning for user buffers\n\nTHe KMS AddFB call can fail for any reason at all: format/modifier not\nsuitable, stride not aligned, allocation not contiguous, etc. If this\nhappens with Weston\u0027s own buffers, the result is bad - no composition\noutput.\n\nFailing AddFB from user-supplied buffers though, is not an error. The\nuser can\u0027t necessarily allocate suitable buffers, nor does it have to.\nDon\u0027t spam the log with warnings when we fail on user buffers.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReported-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\nReviewed-by: Derek Foreman \u003cderek.foreman.samsung@gmail.com\u003e\n"
    },
    {
      "commit": "117892259014d02e3ed41d241c6068d026f4c440",
      "tree": "ce316fa5bc2d4564dc1f7d61df0360c7e9fefa03",
      "parents": [
        "8c9556c57d0f907e461e2c4ccf01155f0a7b1244"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Jul 20 19:55:37 2018 +0100"
      },
      "committer": {
        "name": "Derek Foreman",
        "email": "derekf@osg.samsung.com",
        "time": "Fri Jul 27 11:20:47 2018 -0500"
      },
      "message": "compositor-drm: Don\u0027t test render-only atomic configuration\n\nIn the RENDERER_ONLY state proposal mode, we don\u0027t actually have a\nviable configuration to test, because we won\u0027t get a renderer buffer\nuntil after assign_planes - where we\u0027re called from - has completed.\n\nThis can result in us trying to test a configuration with the CRTC and\nconnectors active, but no planes active, which the kernel can\nlegitimately fail.\n\nIf we\u0027re working in renderer-only mode, just return the state we have\nwithout trying to test it first, and let the kernel fill it in later.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nAcked-by: Derek Foreman \u003cderek.foreman.samsung@gmail.com\u003e\n"
    },
    {
      "commit": "8c9556c57d0f907e461e2c4ccf01155f0a7b1244",
      "tree": "677106e5de9d56bc60630988830237b9995a9daf",
      "parents": [
        "3ea5437dbd07d9a94aebbb651d8f8eeacc8765bd"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Jul 20 11:06:19 2018 +0100"
      },
      "committer": {
        "name": "Derek Foreman",
        "email": "derekf@osg.samsung.com",
        "time": "Fri Jul 27 11:20:25 2018 -0500"
      },
      "message": "compositor-drm: Remove unnecessary libdrm defines\n\nThe backend begins with a series of #defines of libdrm tokens, in case\nthe libdrm we build against is too old.\n\nCommit efdebbc4e82b (\"configure.ac: bump libdrm requirement to 2.4.68\")\ndid what it said on the box; since we now depend on a relatively modern\nlibdrm, we can get rid of most of our compatibility defines.\n\nDRM_CAP_TIMESTAMP_MONOTONIC was added in libdrm 2.4.47 (f8f1f6e37ae2).\nDRM_CLIENT_CAP_UNIVERSAL_PLANES was added in libdrm 2.4.55\n(8fc62ca8ac01).\nDRM_CAP_CURSOR_WIDTH and HEIGHT were added in libdrm 2.4.68\n(cc9a53f076d4).\n\nRemove these four fallback definitions.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Derek Foreman \u003cderek.foreman.samsung@gmail.com\u003e\n"
    },
    {
      "commit": "3ea5437dbd07d9a94aebbb651d8f8eeacc8765bd",
      "tree": "ed39469ac15e4576673cd0adc15fd3b8365b406d",
      "parents": [
        "67546bed04a464d18508265976f2a4b673db565c"
      ],
      "author": {
        "name": "Greg V",
        "email": "greg@unrelenting.technology",
        "time": "Sun Jul 22 11:36:21 2018 +0100"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Sun Jul 22 11:37:58 2018 +0100"
      },
      "message": "xwayland/selection: do not remove NULL property_source\n\nHappened mostly with neovim\u0027s xclip usage.\n\n[daniels: Added more cases.]\n\nReviewed-by: Daniel Stone \u003cdaniels@collabora.com\u003e\n"
    },
    {
      "commit": "67546bed04a464d18508265976f2a4b673db565c",
      "tree": "89d6eb0473160af0ccd89b714a19e4a21372bc55",
      "parents": [
        "cf4113c629751adcbb9904087932e12b5621219b"
      ],
      "author": {
        "name": "Emre Ucan",
        "email": "eucan@de.adit-jv.com",
        "time": "Thu May 24 17:08:47 2018 +0200"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Sun Jul 22 11:17:40 2018 +0100"
      },
      "message": "ivi-shell: use install paths in example config\n\nThe example weston.ini file uses source and build\ndirectory paths. Therefore, it is only useful when\nused on the same system that is used to build Weston.\n\nWe can use install paths instead of build/source paths\nto fix this problem.\n\nv2 changes:\n- use $(westondatadir) instead of $(datadir)\n\nReported-by: Michael Tretter \u003cm.tretter@pengutronix.de\u003e\nSigned-off-by: Emre Ucan \u003ceucan@de.adit-jv.com\u003e\nReviewed-by: Michael Tretter \u003cm.tretter@pengutronix.de\u003e\nReviewed-by: Emil Velikov \u003cemil.velikov@collabora.com\u003e\nReviewed-by: Daniel Stone \u003cdaniels@collabora.com\u003e\n"
    },
    {
      "commit": "cf4113c629751adcbb9904087932e12b5621219b",
      "tree": "4356a6050ff55c92810fda77c14204963d55b545",
      "parents": [
        "280b730144cafc58dc78ac60b3a3dbe61b6b6b50"
      ],
      "author": {
        "name": "Emre Ucan",
        "email": "eucan@de.adit-jv.com",
        "time": "Tue Jun 05 10:23:00 2018 +0200"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Sun Jul 22 11:06:38 2018 +0100"
      },
      "message": "ivi-shell: listen compositor wake_signal\n\nIf compositor wakes up from sleep state, we have\nto trigger repaint for all outputs.\n\nSigned-off-by: Emre Ucan \u003ceucan@de.adit-jv.com\u003e\nReviewed-by: Daniel Stone \u003cdaniels@collabora.com\u003e\n"
    },
    {
      "commit": "280b730144cafc58dc78ac60b3a3dbe61b6b6b50",
      "tree": "97b5ee83c4678a6ff33e4ffa9c4dcb4df479b02f",
      "parents": [
        "cce820dcafb4f04e6c53904c3a643ef534b31915"
      ],
      "author": {
        "name": "Derek Foreman",
        "email": "derekf@osg.samsung.com",
        "time": "Fri Jul 13 11:32:29 2018 -0500"
      },
      "committer": {
        "name": "Derek Foreman",
        "email": "derekf@osg.samsung.com",
        "time": "Fri Jul 13 11:32:29 2018 -0500"
      },
      "message": "configure.ac: bump to version 4.0.91 for the alpha release\n"
    },
    {
      "commit": "cce820dcafb4f04e6c53904c3a643ef534b31915",
      "tree": "4e81a14b5de34c0fd61bfe339302396abff4e8a3",
      "parents": [
        "1166f8e9a13f151a1dcab3cae081013324f0538e"
      ],
      "author": {
        "name": "Emilio Pozuelo Monfort",
        "email": "pochu27@gmail.com",
        "time": "Thu Jul 12 13:46:24 2018 +0200"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Jul 13 16:13:32 2018 +0100"
      },
      "message": "simple-dmabuf-drm: fix build with --disable-egl\n\nJust rely on getting the supported formats through the dmabuf\nextension.\n\nSigned-off-by: Emilio Pozuelo Monfort \u003cemilio.pozuelo@collabora.co.uk\u003e\nReviewed-by: Daniel Stone \u003cdaniels@collabora.com\u003e\n"
    },
    {
      "commit": "1166f8e9a13f151a1dcab3cae081013324f0538e",
      "tree": "46a3af71082f6e7c0b8e0825182519049951b044",
      "parents": [
        "678aabe829371d48af00e718f4a41185a3d50f1f"
      ],
      "author": {
        "name": "Emilio Pozuelo Monfort",
        "email": "pochu27@gmail.com",
        "time": "Thu Jul 12 13:46:23 2018 +0200"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Jul 13 16:13:23 2018 +0100"
      },
      "message": "simple-dmabuf-drm: require zwp_linux_dmabuf_v1 v3\n\nWe effectively require it as we don\u0027t react to dmabuf_format,\nonly to dmabuf_modifiers, so there\u0027s a chance we may not get\nthe supported formats information at all.\n\nSigned-off-by: Emilio Pozuelo Monfort \u003cemilio.pozuelo@collabora.co.uk\u003e\nReviewed-by: Daniel Stone \u003cdaniels@collabora.com\u003e\n"
    },
    {
      "commit": "678aabe829371d48af00e718f4a41185a3d50f1f",
      "tree": "3cb4c55f222b0d5e2b08d6669233057de488b521",
      "parents": [
        "9fe4bf88630090af8f4239418681ffb9a883e0e8"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Dec 09 16:00:12 2016 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Wed Jul 11 14:17:52 2018 +0100"
      },
      "message": "compositor-drm: Enable planes for atomic\n\nNow that we can sensibly test proposed plane configurations with atomic,\nsprites are not broken.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "9fe4bf88630090af8f4239418681ffb9a883e0e8",
      "tree": "b17a67f66f9583a8a6c1cf5416d85c9cc22e605a",
      "parents": [
        "b41abf9c8422b9a6f4236cfc42f8367b297acf3b"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Dec 09 18:23:22 2016 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Wed Jul 11 14:17:52 2018 +0100"
      },
      "message": "compositor-drm: Relax plane restrictions for atomic\n\nSince we now incrementally test atomic state as we build it, we can\nloosen restrictions on what we can do with planes, and let the kernel\ntell us whether or not it\u0027s OK.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "b41abf9c8422b9a6f4236cfc42f8367b297acf3b",
      "tree": "878cf33e27c1a712294b2ab04facc2075a380067",
      "parents": [
        "a284d271f134eb805f799a9861c662d895bf0b11"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Wed Jul 11 13:03:31 2018 +0100"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Wed Jul 11 14:17:52 2018 +0100"
      },
      "message": "compositor-drm: Allow scanout plane to be occluded by overlay\n\na0f8276fe814 (\"compositor-drm: Disallow overlapping overlay planes\") was\na little too pessimistic in rejecting occluded views. Whilst it\ncorrectly prevented overlay planes from occluding each other, it also\nprevented overlay planes from occluding the scanout plane.\n\nThis is undesirable: the primary/scanout plane is specified to stack\nstrictly below all overlay planes, so there is no need to reject a plane\nfrom consideration for scanout due to being occluded by an overlay\nplane.\n\nShift the check downwards so it only applies to overlay rather than\nscanout planes.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "a284d271f134eb805f799a9861c662d895bf0b11",
      "tree": "edbe39e9083643a582aee2aa354729d891d77a7a",
      "parents": [
        "d12e51646aae32a689af5785d0f81f58c8fa901c"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Tue Jul 10 18:40:12 2018 +0100"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Wed Jul 11 14:17:52 2018 +0100"
      },
      "message": "compositor-drm: Incrementally test plane states in mixed mode\n\nIn the plane-only mode, we try to place every view on a hardware plane,\nand fail if we can\u0027t do this. This requires a full walk of the scene\ngraph to come up with a complete configuration in order to be able to\ntest.\n\nIn mixed mode, we know at least some visible views will fail to be\npromoted to planes and must be composited via the renderer. In order to\nstill use some planes where possible, we use atomic modesetting\u0027s\ntest-only mode to incrementally test configurations.\n\nWe know that the renderer output will always be visible, and because it\nis the renderer, that it will be occupying the scanout plane underneath\neverything else. The actual renderer buffer doesn\u0027t materialise until\nafter assign_planes, because it cannot know what to render until then.\n\nHowever, in order to test whether a configuration is valid, we need the\nrenderer buffer in the scanout plane. For testing, we fake this by\ntemporarily stealing the old buffer - if it seems sufficiently\ncompatible - and placing it in the state we construct. This is used to\ntest whether or not a renderer buffer will work with the addition of\noverlay planes.\n\nDoing this incremental testing will allow us to enable plane usage for\natomic by default, since we know ahead of time that our chosen plane\nconfiguration will work.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "d12e51646aae32a689af5785d0f81f58c8fa901c",
      "tree": "9c36139238ce31f299f9c2df0e868b87f597db4c",
      "parents": [
        "ca6fbe3c93ff05bf006e19ac8e60f896a169b5a1"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Tue Jul 10 18:19:37 2018 +0100"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Wed Jul 11 13:08:57 2018 +0100"
      },
      "message": "compositor-drm: Add planes-only mode to state proposal\n\nAdd a new mode, which attempts to construct a scene exclusively using\nplanes. This is a building block for incrementally testing and\nconstructing state: in the plane-only mode, we test the state exactly\nonce, when we have constructed a full set of planes and want to know if\nit works or not.\n\nWhen using the renderer, we need to incrementally test views one by one\nto see if they will work on planes, falling back to the renderer if not.\nThis test is different, since the scanout plane will be occupied by the\nrenderer\u0027s buffer. Testing using the renderer or client buffers may have\ncompletely different characteristics, so we need two passes: first,\nconstructing a state with only planes and testing if that succeeds,\nfalling back later to a mixed renderer/plane mode which tests\nincrementally.\n\nThis implements the first mode, and preferentially attempts to use it.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "ca6fbe3c93ff05bf006e19ac8e60f896a169b5a1",
      "tree": "d5734681e5cd1bcc061bd941084dd47d27991c4e",
      "parents": [
        "bb6c19f7bb18cc400e11274184322ffe499e20ef"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Tue Jul 10 18:08:12 2018 +0100"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Wed Jul 11 12:50:23 2018 +0100"
      },
      "message": "compositor-drm: Never lift solid surfaces to planes\n\nThis will never work, so don\u0027t even try to do it.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "bb6c19f7bb18cc400e11274184322ffe499e20ef",
      "tree": "ae6155193624cb3a44f58fa77d2d507afb43e72e",
      "parents": [
        "f829062ef40cd12c457990c1d5e60b0c4b486d48"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Thu Dec 08 17:27:17 2016 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Wed Jul 11 12:49:53 2018 +0100"
      },
      "message": "compositor-drm: Add test-only mode to state application\n\nThe atomic API can allow us to test state before we apply it, to see if\nit will be valid. Use this when we construct a plane configuration, to\nsee if it has a chance of ever working. If not, we can fail\nassign_planes early.\n\nThis will be used in later patches to incrementally build state by\nproposing and testing potential configurations one at a time.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "f829062ef40cd12c457990c1d5e60b0c4b486d48",
      "tree": "a215ce7452b57b528be8aefe022d84f24cccdf7d",
      "parents": [
        "f7a2f835ae83409dec1e0487424cec7718385fb6"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Dec 09 17:32:10 2016 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Wed Jul 11 12:45:07 2018 +0100"
      },
      "message": "compositor-drm: Return plane state from plane preparation\n\nReturn a pointer to the plane state, rather than returning its\nunderlying weston_plane. This eliminates any ambiguity between placing\nclient buffers on planes, and placing them through the renderer.\n\ndrm_output_propose_state is only concerned with preparing, testing, and\nreturning DRM state objects. Assigning views to weston_planes only\nhappens later, inside drm_assign_planes. This makes that split more\nclear.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "f7a2f835ae83409dec1e0487424cec7718385fb6",
      "tree": "766bdc2188b5fa0727a5c2cdb2c92bb539e4a31c",
      "parents": [
        "44abfaaffde1c575e044dfd8df2db02fd8dde1b7"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Thu Dec 08 17:19:09 2016 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Wed Jul 11 12:24:55 2018 +0100"
      },
      "message": "compositor-drm: Add modes to drm_output_propose_state\n\nAdd support for multiple modes to drm_output_propose_state. Currently we\nintend to operate in three modes: planes-only (no renderer buffer,\nclient buffers in planes only), mixed-mode (promote client buffers to\nplanes where possible, falling back to the renderer where not), and\nrenderer-only (no plane usage at all).\n\nWe want to use the first (planes-only) mode where possible: it can avoid\nus having to allocate buffers for the renderer, and it also gives us the\nbest chance of the optimal configuration, with no composition. In this\nmode, we walk the scene looking at all views, trying to put them in\nplanes, and failing as soon as we find a view we cannot place in a\nplane.\n\nIn the second mode, rather than failing, we assign those views which\ncannot be on a plane to the renderer, and allow the renderer to\ncomposite them.\n\nIn the third mode, planes are not usable, so everything but the cursor\ngoes to the renderer. We will use this when we cannot use the planes-only\nmode (because some views cannot be placed in planes), but also cannot\nuse the \u0027mixed\u0027 mode because we have no renderer buffer yet. Since we\nwalk the scene graph from top to bottom, using atomic modesetting we\nwill determine if planes can be promoted in mixed mode by placing a\nrenderer buffer at the bottom of the scene, placing a cursor buffer if\napplicable, then testing if we can add overlay planes to this mode.\n\nWithout a buffer from the renderer, we cannot do these tests, so we push\neverything through the renderer and then switch to mixed mode on the\nnext repaint.\n\nThis patch implements the mixed and renderer-only modes (previously\ndifferentiated only by the sprites_are_broken flag), with the\nplanes-only mode being left for a later patch.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "44abfaaffde1c575e044dfd8df2db02fd8dde1b7",
      "tree": "ade076d690b7985208fdc7e453825db73ff5d9ac",
      "parents": [
        "a0f8276fe814957ea8ae46bd4f5fda3a9e1b8e69"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Tue Jul 10 14:31:06 2018 +0100"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Wed Jul 11 12:24:55 2018 +0100"
      },
      "message": "compositor-drm: Use sprites_are_broken for scanout plane\n\nWhen the sprites_are_broken variable is set, do not attempt to promote\nclient surfaces to the scanout plane.\n\nWe are currently assuming that every client buffer will be compatible\nwith the scanout plane, but that is not the case, particularly with more\nexotic tiled/compressed buffers. Once we promote the client buffer to\nscanout, there is no going back: if the repaint fails, we do not mark\nthis as failed and go back to repaint through composition.\n\nThis permanently removes the ability for scanout bypass when using the\nnon-atomic path. Future patches lift the restriction when using atomic\nmodesetting, as we can actually test and ensure that the view is\ncompatible with scanout.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\nReported-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "a0f8276fe814957ea8ae46bd4f5fda3a9e1b8e69",
      "tree": "22a3f0e0a20878bd9c7ee35b616655632824c646",
      "parents": [
        "ddaf95c5a1f0caa88a7c9348ef7af9fd07d1e8d6"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Tue Jul 10 11:44:25 2018 +0100"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Wed Jul 11 12:24:55 2018 +0100"
      },
      "message": "compositor-drm: Disallow overlapping overlay planes\n\nThe scanout plane strictly stacks under all overlay planes, and the\ncursor plane above. However, the stacking of overlay planes with respect\nto each other is undefined.\n\nWe can control the stacking order of overlay planes with the zpos\nproperty, though this significantly complicates plane assignment. In the\nmeantime, simply disallow assigning a view to an overlay, when it\noverlaps another view which is already on an overlay. This ensures\nstacking order is irrelevant, since the planes never intersect each\nother.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "ddaf95c5a1f0caa88a7c9348ef7af9fd07d1e8d6",
      "tree": "1c339c5a1b393b9c42c0208ff4d52b96bad07074",
      "parents": [
        "8108239c39e0e79f08827780d9f848dfaf4e50cf"
      ],
      "author": {
        "name": "Tomohito Esaki",
        "email": "etom@igel.co.jp",
        "time": "Tue Jul 10 11:47:15 2018 +0900"
      },
      "committer": {
        "name": "Pekka Paalanen",
        "email": "pekka.paalanen@collabora.co.uk",
        "time": "Tue Jul 10 15:40:52 2018 +0300"
      },
      "message": "libweston: Fix clear timing of output repainted flag\n\nSince the repaint status of the flushed output may be reset if a output\nrepaint is failed, it is necessary to clear the repainted flag\nimmediately after output repaint flush/cancel.\n\nSigned-off-by: Tomohito Esaki \u003cetom@igel.co.jp\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "8108239c39e0e79f08827780d9f848dfaf4e50cf",
      "tree": "db8d0457dbc047eef127f9362030663e729f8691",
      "parents": [
        "231ae2f33bae357e9d7461a15df07618c3461720"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Dec 09 18:03:31 2016 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Tue Jul 10 11:12:27 2018 +0100"
      },
      "message": "compositor-drm: Ignore occluded views\n\nWhen trying to assign planes, keep track of the areas which are\nalready occluded, and ignore views which are completely occluded. This\nallows us to build a state using planes only, when there are occluded\nviews which cannot go into a plane behind views which can.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\nTested-by: Emre Ucan \u003ceucan@de.adit-jv.com\u003e\n"
    },
    {
      "commit": "231ae2f33bae357e9d7461a15df07618c3461720",
      "tree": "6d16020ab22b6407f979fce848c032b1d9acf011",
      "parents": [
        "ee1aea7cd1b554ef4bd39e492186519371d020d8"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Tue Nov 29 21:03:44 2016 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Tue Jul 10 11:12:27 2018 +0100"
      },
      "message": "compositor-drm: Ignore views on other outputs\n\nWhen we come to assign_planes, try very hard to ignore views which are\nonly visible on other outputs, rather than forcibly moving them to the\nprimary plane, which causes damage all round and unnecessary repaints.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\nTested-by: Emre Ucan \u003ceucan@de.adit-jv.com\u003e\n"
    },
    {
      "commit": "ee1aea7cd1b554ef4bd39e492186519371d020d8",
      "tree": "3dd3b6e72ad3afabac2b5c2b6164553ce6108811",
      "parents": [
        "244244d11b5a9168656dd613029a0feb4879aff7"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Mon Dec 18 13:41:09 2017 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Tue Jul 10 11:12:27 2018 +0100"
      },
      "message": "compositor-drm: Split drm_assign_planes in two\n\nMove drm_assign_planes into two functions: one which proposes a plane\nconfiguration, and another which applies that state to the Weston\ninternal structures. This will be used to try multiple configurations\nand see which is supported.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\nTested-by: Emre Ucan \u003ceucan@de.adit-jv.com\u003e\n"
    },
    {
      "commit": "244244d11b5a9168656dd613029a0feb4879aff7",
      "tree": "e3d33356e7e55185b1af5a8ff298c4ea64fe665a",
      "parents": [
        "f4456221db312f326dc0f16a306686d8c2f3c999"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Nov 18 18:02:08 2016 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Mon Jul 09 15:39:32 2018 +0100"
      },
      "message": "compositor-drm: Use GBM modifier API\n\nNow that we collect information about which modifiers are supported for\nKMS display, and are able to create KMS framebuffers with modifiers,\nbegin using the modifier-aware GBM API.\n\nClient buffers from dmabuf already store multi-plane and modifier\ninformation into drm_fb. Extend this to drm_fb_get_from_bo(), used for\nwl_buffer, cursor, and gbm_surface buffers. wl_buffer buffers should by\nconvention not require modifiers. Cursor buffers must not require\nmodifiers, as they should be linear. Prior to this patch, GBM buffers\nmust have been single-planar, and able to used without explicitly naming\nmodifiers.\n\nUsing gbm_surface_create_with_modifiers allows us to pass the list of\nmodifiers acceptable to KMS for scanout to GBM, so it can allocate\nmulti-planar buffers or those which are otherwise only addressible with\nmodifiers. On platforms supporting and preferring modifiers for scanout,\nthis means that the gbm_bos we get from our scanout surface need to use\nthe extended API to query multiple planes, offsets, modifiers, etc.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\nTested-by: Emre Ucan \u003ceucan@de.adit-jv.com\u003e\n"
    },
    {
      "commit": "f4456221db312f326dc0f16a306686d8c2f3c999",
      "tree": "16b57822c6bf262be893998a57b0a37d154e0447",
      "parents": [
        "f522e2261131eb9ed9f83157420f114540cfcbf1"
      ],
      "author": {
        "name": "Sergi Granell",
        "email": "xerpi.g.12@gmail.com",
        "time": "Thu Jan 12 17:17:32 2017 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Mon Jul 09 15:39:32 2018 +0100"
      },
      "message": "compositor-drm: Support plane IN_FORMATS\n\nThe per-plane IN_FORMATS KMS property describes the format/modifier\ncombinations supported for display on this plane. Read and parse this\nformat, storing the data in each plane, so we can know which\ncombinations might work, and which combinations definitely will not\nwork.\n\nSimilarly to f11ec02cad40 (\"compositor-drm: Extract overlay FB import to\nhelper\"), we now use this when considering promoting a view to overlay\nplanes. If the framebuffer\u0027s modifier is definitely not supported by the\nplane, we do not attempt to use that plane for that view.\n\nThis will also be used in a follow-patch, passing the list of modifiers\nto GBM surface allocation to allow it to allocate more optimal buffers.\n\nSigned-off-by: Sergi Granell \u003cxerpi.g.12@gmail.com\u003e\nReviewed-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\nTested-by: Emre Ucan \u003ceucan@de.adit-jv.com\u003e\n"
    },
    {
      "commit": "f522e2261131eb9ed9f83157420f114540cfcbf1",
      "tree": "2e7f01557629cf40357ca0845d1543fe493f51fa",
      "parents": [
        "11f91bbd36e7ebdc01fb6c2b29bcab53aec7209e"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Nov 18 12:31:26 2016 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Mon Jul 09 15:39:32 2018 +0100"
      },
      "message": "compositor-drm: Add modifiers to GBM dmabuf import\n\nAdd support for the GBM_BO_IMPORT_FD_MODIFIER path, which allows us to\nimport multi-plane dmabufs, as well as format modifiers.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\nTested-by: Emre Ucan \u003ceucan@de.adit-jv.com\u003e\nFixes: https://gitlab.freedesktop.org/wayland/weston/issues/113\n"
    },
    {
      "commit": "11f91bbd36e7ebdc01fb6c2b29bcab53aec7209e",
      "tree": "3152b5d85ead447d4dc8e4dd77af58ebdf695b2a",
      "parents": [
        "bdebc3170e5816d6e2d34b36d4643c53634a0e41"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Mon Jul 09 13:05:59 2018 +0100"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Mon Jul 09 15:39:20 2018 +0100"
      },
      "message": "helpers: Move static_assert definition to shared\n\nCollect the fallback definitions of static_assert() from desktop-shell\nand the test shell, and move them to helpers.h. This allows code\nthroughout the tree to use static_assert() for build-time assertions,\nwhere it is supported by the compiler.\n\nAs GCC goes out of its way to only add static_assert() when C11 has been\nexplicitly requested - which we don\u0027t do - make sure to use the more\nwidely available _Static_assert() if that is provided.\n\nThis will be used in future patches to ensure two array lengths don\u0027t go\nout of sync.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "bdebc3170e5816d6e2d34b36d4643c53634a0e41",
      "tree": "122700b0cc3c5eb6d8078ae2b3073a8ee07f657f",
      "parents": [
        "dc082cb0718d2d07d259ffc02209cbb28714fbdc"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Mon Jul 09 13:51:51 2018 +0100"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Mon Jul 09 15:20:11 2018 +0100"
      },
      "message": "compositor-drm: Don\u0027t set fb-\u003esize for non-dumb buffers\n\nWhen creating a drm_fb from client (wl_buffer/dmabuf), gbm_surface, or\nclient buffers, set fb-\u003esize to 0. The size member is only used for dumb\nbuffers, where we mmap the whole buffer, and need the size recorded to\nlater pass to munmap.\n\nDetermining the full size of multi-planar buffers is difficult, as\nauxiliary planes are not guaranteed to have a (height*stride)\nallocation, e.g. if they are subsampled or if they do not contain pixel\ndata at all but, e.g., compression information. Single-plane tiled\nbuffers also often pad the buffer allocation to a multiple of tile\nheight, making our existing calculation incorrect.\n\nThough it does no harm to record incorrect information, it also does\nno good as we never use it; remove it in order to avoid any confusion.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "dc082cb0718d2d07d259ffc02209cbb28714fbdc",
      "tree": "457a11b1f2301b5116a726b2b1a95043d5bf2048",
      "parents": [
        "7625577a4f8dd975a1ba3270d3b5eca1fdef7256"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Mon Jul 09 13:49:04 2018 +0100"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Mon Jul 09 15:20:11 2018 +0100"
      },
      "message": "compositor-drm: Avoid cast by using unsigned loop index\n\nARRAY_LENGTH returns a size_t; rather than casting its result to\nint so we can compare to our signed index variable, just declare the\nindex as a compatible type in the first place.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "7625577a4f8dd975a1ba3270d3b5eca1fdef7256",
      "tree": "ab9413f6246dd9f367c206cd35dfb4a449e86685",
      "parents": [
        "79e95cb9951c167d5a0a13a2e101cae752256a63"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Jul 06 11:36:49 2018 +0100"
      },
      "committer": {
        "name": "Pekka Paalanen",
        "email": "pekka.paalanen@collabora.co.uk",
        "time": "Mon Jul 09 15:30:03 2018 +0300"
      },
      "message": "compositor-drm: Define DPMS property as an enum\n\nThe DPMS connector property is an enum property in KMS, which made our\nproperty handling complain at startup as we weren\u0027t defining its enums.\nFix our definition so we parse the enum values.\n\nThe only user of the property is the legacy path, which can continue\nusing fixed values as those values are part of the KMS ABI. The atomic\npath does not need any changes, since atomic uses routing and CRTC\nactive to determine the connector\u0027s power state, rather than a property.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nFixes: https://gitlab.freedesktop.org/wayland/weston/issues/125\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "79e95cb9951c167d5a0a13a2e101cae752256a63",
      "tree": "6a57c9de83fdffce579ccfc3e3d7f26edc6bd35a",
      "parents": [
        "65a4dbcc14810c4c96437966dbcb2d9641b332a2"
      ],
      "author": {
        "name": "Ankit Nautiyal",
        "email": "ankit.k.nautiyal@intel.com",
        "time": "Fri Jul 06 16:18:39 2018 +0530"
      },
      "committer": {
        "name": "Pekka Paalanen",
        "email": "pekka.paalanen@collabora.co.uk",
        "time": "Mon Jul 09 15:14:47 2018 +0300"
      },
      "message": "man: Remove description of DRM specific mode-options from weston.ini.man\n\nThe weston.ini.man describes the mode-formats that a user can specify\nfor selecting a video mode. The DRM specific examples are already\nprovided in weston-drm.man, so this inofrmation is redundant and can\nbe removed.\n\nThis patch removes the DRM specific mode option details from the\ndescription of mode configuration in weston.ini.man.\nA pointer to weston-drm.man is given, which has complete information\nabout the mode-format options supported by DRM backend.\n\nSigned-off-by: Ankit Nautiyal \u003cankit.k.nautiyal@intel.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\n"
    },
    {
      "commit": "65a4dbcc14810c4c96437966dbcb2d9641b332a2",
      "tree": "bbbfdef353a6928a16e8f579a884ddb7eaaf41b4",
      "parents": [
        "8eece0c2e7dd2bc44efd8a476062b20dbbe451e2"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Thu Dec 08 16:36:18 2016 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Jul 06 15:04:52 2018 +0100"
      },
      "message": "compositor-drm: Support modifiers for drm_fb\n\nUse the new drmModeAddFB2WithModifiers interface to import buffers with\nmodifiers.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\nTested-by: Emre Ucan \u003ceucan@de.adit-jv.com\u003e\n"
    },
    {
      "commit": "8eece0c2e7dd2bc44efd8a476062b20dbbe451e2",
      "tree": "d91d3e600be2d9e446365aa68bf820f653e03f20",
      "parents": [
        "bdf3e7e356ba0e01c502e7f29f4e8a71d521e6f1"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Thu Nov 17 17:54:00 2016 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Jul 06 15:04:52 2018 +0100"
      },
      "message": "compositor-drm: Extract drm_fb_addfb into a helper\n\nWe currently do the same thing in two places, and will soon have a\nthird.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\nTested-by: Emre Ucan \u003ceucan@de.adit-jv.com\u003e\n"
    },
    {
      "commit": "bdf3e7e356ba0e01c502e7f29f4e8a71d521e6f1",
      "tree": "1913d25b4060565b82d016ab6eb1a1b9619af949",
      "parents": [
        "f11ec02cad401781e030e7eeefe500a2b5b6b82c"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Thu Nov 17 17:33:08 2016 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Jul 06 15:04:52 2018 +0100"
      },
      "message": "compositor-drm: Use plane FB-import helper for scanout\n\nUse the same codepath, which has the added advantage of being able to\nimport dmabufs.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\nTested-by: Emre Ucan \u003ceucan@de.adit-jv.com\u003e\n"
    },
    {
      "commit": "f11ec02cad401781e030e7eeefe500a2b5b6b82c",
      "tree": "ba36703a59272c3c3402a4113c4626bfd9dd1abc",
      "parents": [
        "9b560384176b883e02b9d90f907cae3247f8b920"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Thu Nov 17 17:32:42 2016 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Jul 06 15:04:52 2018 +0100"
      },
      "message": "compositor-drm: Extract overlay FB import to helper\n\n... in order to be able to use it from scanout as well.\n\nIn doing this, the check for format compatibility is moved from after\nselecting a plane to before selecting a plane. If different planes have\ndisjoint format support, this ensures that we don\u0027t reject the view from\nall overlay consideration, just because the first plane we found didn\u0027t\nsupport its format.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\nTested-by: Emre Ucan \u003ceucan@de.adit-jv.com\u003e\n"
    },
    {
      "commit": "9b560384176b883e02b9d90f907cae3247f8b920",
      "tree": "1cbe873190ff1cfd7edf9332c153696289262993",
      "parents": [
        "7cdf231c762602b820a8ab03bae37297fb5df54f"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Wed Nov 16 19:46:35 2016 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Jul 06 14:56:16 2018 +0100"
      },
      "message": "compositor-drm: Use plane_state_coords_for_view for cursor\n\nUse the new helper to populate the cursor state as well, with some\nspecial-case handling to account for how we always upload a full-size\nBO.\n\nAs this now fully takes care of buffer transformations, HiDPI client\ncursors work, and we also clip the cursor plane completely to CRTC\nbounds.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\nReported-by: Derek Foreman \u003cderekf@osg.samsung.com\u003e\nTested-by: Emre Ucan \u003ceucan@de.adit-jv.com\u003e\nFixes: https://gitlab.freedesktop.org/wayland/weston/issues/118\n"
    },
    {
      "commit": "7cdf231c762602b820a8ab03bae37297fb5df54f",
      "tree": "6f2927ee30143e51316e2702c6d17dd57a9774c0",
      "parents": [
        "ce137472faab26f2c92d40efdfa64a5a937b57fb"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Wed Nov 16 19:40:29 2016 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Jul 06 14:52:05 2018 +0100"
      },
      "message": "compositor-drm: Use plane_state_coords_for_view for scanout\n\nNow that we have a helper to fill the plane state co-ordinates from a\nview, use this for the scanout plane.\n\nWe now explicitly check that the view fills exactly the fullscreen area\nand nothing else. We then use the new helper to fill out the plane state\nvalues, and do further checks against the filled-in co-ordinates, i.e.\nthat we\u0027re not trying to show an offset into the buffer, or to scale the\nimage.\n\nThis now allows cases where the buffer -\u003e surface -\u003e view -\u003e output\ntransform chain cancels each other out for scaling: previously, we would\nnever consider a buffer for scanout unless its scale matched the\noutput\u0027s. We now only look at the final result of the buffer -\u003e output\ntransformation, to check that this does not result in translation or\nscaling.\n\nAn audit of the error paths found some places where we would leave a\nplane state hanging; this makes them all consistent.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\nTested-by: Emre Ucan \u003ceucan@de.adit-jv.com\u003e\n"
    },
    {
      "commit": "ce137472faab26f2c92d40efdfa64a5a937b57fb",
      "tree": "d3b6174a7a62169df623b3eee57997d878eca407",
      "parents": [
        "df2726a08913ab8bd00fc6be98d7ca5626b77569"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Wed Nov 16 19:35:03 2016 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Jul 06 14:52:05 2018 +0100"
      },
      "message": "compositor-drm: Only check final co-ordinates for overlay scaling\n\nWhen considering a view for placement into an overlay plane, we\npreviously checked that the buffer\u0027s transform and scale were identical\nto the output\u0027s, and that there were no transformations applied.\n\nWe now use a more consistent set of checks through\ndrm_plane_state_coords_for_view. This checks the complete transformation\nchain, allowing only translation and scaling; at the end, we check if\nthe total buffer -\u003e surface -\u003e view -\u003e output chain requires scaling or\nrotation, and disallow it if so.\n\nThis allows scaling in the cases where the transformation chain cancels\nitself out to produce a 1:1 buffer -\u003e output pixel scale.\n\nAn erroneously disallowed case is where buffer -\u003e view -\u003e output\nrotations cancel each other out; we prevent a view from being on an\noverlay plane if rotation is involved at all. Fixing this would require\na complete analysis of the overall transformation matrix.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\nTested-by: Emre Ucan \u003ceucan@de.adit-jv.com\u003e\n"
    },
    {
      "commit": "df2726a08913ab8bd00fc6be98d7ca5626b77569",
      "tree": "55f49de358d0c37e4c2a7b8e72866bc9ce707b09",
      "parents": [
        "d6e2a76a7c725042199e889afdcd251f6e0cbaf1"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Tue Feb 07 18:48:19 2017 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Jul 06 14:52:05 2018 +0100"
      },
      "message": "compositor-drm: Fully account for buffer transformation\n\nIn our new and improved helper to determine the src/dest values for a\nbuffer on a given plane, make sure we account for all buffer\ntransformations, including viewport clipping.\n\nRather than badly open-coding it ourselves, just use the helper which\ndoes exactly this.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\nReported-by: Tiago Gomes \u003ctiago.gomes@codethink.co.uk\u003e\nTested-by: Emre Ucan \u003ceucan@de.adit-jv.com\u003e\n"
    },
    {
      "commit": "d6e2a76a7c725042199e889afdcd251f6e0cbaf1",
      "tree": "4a1963de4232db1170a29b0c2a74826fae555f6f",
      "parents": [
        "db10df183a77dc58ec5ba910c0844f8c98f340f0"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Wed Nov 16 19:33:20 2016 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Jul 06 13:45:53 2018 +0100"
      },
      "message": "compositor-drm: Extract buffer-\u003eplane co-ord translation\n\nPull this into a helper function, so we can use it everywhere.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\nTested-by: Emre Ucan \u003ceucan@de.adit-jv.com\u003e\n"
    },
    {
      "commit": "db10df183a77dc58ec5ba910c0844f8c98f340f0",
      "tree": "285a3f0b537b77f15ef218e48ffdfdd1b99302e5",
      "parents": [
        "f9bd54682b3f5350367a8fb7ae5d2288201231ab"
      ],
      "author": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Thu Dec 08 13:15:58 2016 +0000"
      },
      "committer": {
        "name": "Daniel Stone",
        "email": "daniels@collabora.com",
        "time": "Fri Jul 06 12:15:36 2018 +0100"
      },
      "message": "compositor-drm: Make alpha-to-opaque handling common\n\nRather than a hardcoded ARGB8888 -\u003e XRGB8888 translation inside a\nGBM-specific helper, just determine whether or not the view is opaque,\nand use the generic helpers to implement the format translation.\n\nAs a consequence of reordering the calls in\ndrm_output_prepare_overlay_view(), we move the GBM BO dereference into a\ndifferent failure path, before it gets captured by the plane state.\n\nSigned-off-by: Daniel Stone \u003cdaniels@collabora.com\u003e\nReviewed-by: Pekka Paalanen \u003cpekka.paalanen@collabora.co.uk\u003e\nTested-by: Emre Ucan \u003ceucan@de.adit-jv.com\u003e\n"
    }
  ],
  "next": "f9bd54682b3f5350367a8fb7ae5d2288201231ab"
}
