From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753473AbdLMPdl (ORCPT ); Wed, 13 Dec 2017 10:33:41 -0500 Received: from mail.free-electrons.com ([62.4.15.54]:37675 "EHLO mail.free-electrons.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753342AbdLMPdi (ORCPT ); Wed, 13 Dec 2017 10:33:38 -0500 From: Maxime Ripard To: Daniel Vetter , David Airlie , Chen-Yu Tsai , Maxime Ripard Cc: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Thomas Petazzoni , thomas@vitsch.nl Subject: [PATCH 0/8] drm/sun4i: Support the Display Engine frontend Date: Wed, 13 Dec 2017 16:33:24 +0100 Message-Id: X-Mailer: git-send-email 2.14.3 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, This is a first serie to enable the display engine frontend. This hardware block is found in the first generation Display Engine from Allwinner. Its role is to implement more advanced features that the associated backend, even though the backend alone can be used (and was used so far) for basic composition. Among those features, we will find hardware scaling, that is supported in this serie, colorspace conversions, or more exotic formats support such as the one output by the VPU. Let me know what you think, Maxime Maxime Ripard (8): drm/sun4i: backend: Move line stride setup to buffer setup function drm/sun4i: backend: Allow a NULL plane pointer to retrieve the format drm/sun4i: sun4i_layer: Add a custom plane state drm/sun4i: crtc: Add a custom crtc atomic_check drm/sun4i: Add a driver for the display frontend drm/sun4i: sun4i_layer: Wire in the frontend drm/sun4i: sun4i_layer: Add a custom atomic_check for the frontend ARM: dts: sun8i: a33 Enable our display frontend arch/arm/boot/dts/sun8i-a33.dtsi | 1 +- drivers/gpu/drm/sun4i/Makefile | 3 +- drivers/gpu/drm/sun4i/sun4i_backend.c | 139 +++++++++- drivers/gpu/drm/sun4i/sun4i_backend.h | 6 +- drivers/gpu/drm/sun4i/sun4i_crtc.c | 14 +- drivers/gpu/drm/sun4i/sun4i_drv.c | 16 +- drivers/gpu/drm/sun4i/sun4i_drv.h | 1 +- drivers/gpu/drm/sun4i/sun4i_frontend.c | 377 ++++++++++++++++++++++++++- drivers/gpu/drm/sun4i/sun4i_frontend.h | 102 +++++++- drivers/gpu/drm/sun4i/sun4i_layer.c | 75 ++++- drivers/gpu/drm/sun4i/sun4i_layer.h | 11 +- drivers/gpu/drm/sun4i/sunxi_engine.h | 2 +- 12 files changed, 727 insertions(+), 20 deletions(-) create mode 100644 drivers/gpu/drm/sun4i/sun4i_frontend.c create mode 100644 drivers/gpu/drm/sun4i/sun4i_frontend.h base-commit: 4fbd8d194f06c8a3fd2af1ce560ddb31f7ec8323 -- git-series 0.9.1 From mboxrd@z Thu Jan 1 00:00:00 1970 From: maxime.ripard@free-electrons.com (Maxime Ripard) Date: Wed, 13 Dec 2017 16:33:24 +0100 Subject: [PATCH 0/8] drm/sun4i: Support the Display Engine frontend Message-ID: To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Hi, This is a first serie to enable the display engine frontend. This hardware block is found in the first generation Display Engine from Allwinner. Its role is to implement more advanced features that the associated backend, even though the backend alone can be used (and was used so far) for basic composition. Among those features, we will find hardware scaling, that is supported in this serie, colorspace conversions, or more exotic formats support such as the one output by the VPU. Let me know what you think, Maxime Maxime Ripard (8): drm/sun4i: backend: Move line stride setup to buffer setup function drm/sun4i: backend: Allow a NULL plane pointer to retrieve the format drm/sun4i: sun4i_layer: Add a custom plane state drm/sun4i: crtc: Add a custom crtc atomic_check drm/sun4i: Add a driver for the display frontend drm/sun4i: sun4i_layer: Wire in the frontend drm/sun4i: sun4i_layer: Add a custom atomic_check for the frontend ARM: dts: sun8i: a33 Enable our display frontend arch/arm/boot/dts/sun8i-a33.dtsi | 1 +- drivers/gpu/drm/sun4i/Makefile | 3 +- drivers/gpu/drm/sun4i/sun4i_backend.c | 139 +++++++++- drivers/gpu/drm/sun4i/sun4i_backend.h | 6 +- drivers/gpu/drm/sun4i/sun4i_crtc.c | 14 +- drivers/gpu/drm/sun4i/sun4i_drv.c | 16 +- drivers/gpu/drm/sun4i/sun4i_drv.h | 1 +- drivers/gpu/drm/sun4i/sun4i_frontend.c | 377 ++++++++++++++++++++++++++- drivers/gpu/drm/sun4i/sun4i_frontend.h | 102 +++++++- drivers/gpu/drm/sun4i/sun4i_layer.c | 75 ++++- drivers/gpu/drm/sun4i/sun4i_layer.h | 11 +- drivers/gpu/drm/sun4i/sunxi_engine.h | 2 +- 12 files changed, 727 insertions(+), 20 deletions(-) create mode 100644 drivers/gpu/drm/sun4i/sun4i_frontend.c create mode 100644 drivers/gpu/drm/sun4i/sun4i_frontend.h base-commit: 4fbd8d194f06c8a3fd2af1ce560ddb31f7ec8323 -- git-series 0.9.1 From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maxime Ripard Subject: [PATCH 0/8] drm/sun4i: Support the Display Engine frontend Date: Wed, 13 Dec 2017 16:33:24 +0100 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail.free-electrons.com (mail.free-electrons.com [62.4.15.54]) by gabe.freedesktop.org (Postfix) with ESMTP id 4423A6E50D for ; Wed, 13 Dec 2017 15:33:39 +0000 (UTC) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Daniel Vetter , David Airlie , Chen-Yu Tsai , Maxime Ripard Cc: linux-arm-kernel@lists.infradead.org, Thomas Petazzoni , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, thomas@vitsch.nl List-Id: dri-devel@lists.freedesktop.org SGksCgpUaGlzIGlzIGEgZmlyc3Qgc2VyaWUgdG8gZW5hYmxlIHRoZSBkaXNwbGF5IGVuZ2luZSBm cm9udGVuZC4KClRoaXMgaGFyZHdhcmUgYmxvY2sgaXMgZm91bmQgaW4gdGhlIGZpcnN0IGdlbmVy YXRpb24gRGlzcGxheSBFbmdpbmUgZnJvbQpBbGx3aW5uZXIuIEl0cyByb2xlIGlzIHRvIGltcGxl bWVudCBtb3JlIGFkdmFuY2VkIGZlYXR1cmVzIHRoYXQgdGhlCmFzc29jaWF0ZWQgYmFja2VuZCwg ZXZlbiB0aG91Z2ggdGhlIGJhY2tlbmQgYWxvbmUgY2FuIGJlIHVzZWQgKGFuZCB3YXMgdXNlZApz byBmYXIpIGZvciBiYXNpYyBjb21wb3NpdGlvbi4KCkFtb25nIHRob3NlIGZlYXR1cmVzLCB3ZSB3 aWxsIGZpbmQgaGFyZHdhcmUgc2NhbGluZywgdGhhdCBpcyBzdXBwb3J0ZWQgaW4KdGhpcyBzZXJp ZSwgY29sb3JzcGFjZSBjb252ZXJzaW9ucywgb3IgbW9yZSBleG90aWMgZm9ybWF0cyBzdXBwb3J0 IHN1Y2ggYXMKdGhlIG9uZSBvdXRwdXQgYnkgdGhlIFZQVS4KCkxldCBtZSBrbm93IHdoYXQgeW91 IHRoaW5rLApNYXhpbWUKCk1heGltZSBSaXBhcmQgKDgpOgogIGRybS9zdW40aTogYmFja2VuZDog TW92ZSBsaW5lIHN0cmlkZSBzZXR1cCB0byBidWZmZXIgc2V0dXAgZnVuY3Rpb24KICBkcm0vc3Vu NGk6IGJhY2tlbmQ6IEFsbG93IGEgTlVMTCBwbGFuZSBwb2ludGVyIHRvIHJldHJpZXZlIHRoZSBm b3JtYXQKICBkcm0vc3VuNGk6IHN1bjRpX2xheWVyOiBBZGQgYSBjdXN0b20gcGxhbmUgc3RhdGUK ICBkcm0vc3VuNGk6IGNydGM6IEFkZCBhIGN1c3RvbSBjcnRjIGF0b21pY19jaGVjawogIGRybS9z dW40aTogQWRkIGEgZHJpdmVyIGZvciB0aGUgZGlzcGxheSBmcm9udGVuZAogIGRybS9zdW40aTog c3VuNGlfbGF5ZXI6IFdpcmUgaW4gdGhlIGZyb250ZW5kCiAgZHJtL3N1bjRpOiBzdW40aV9sYXll cjogQWRkIGEgY3VzdG9tIGF0b21pY19jaGVjayBmb3IgdGhlIGZyb250ZW5kCiAgQVJNOiBkdHM6 IHN1bjhpOiBhMzMgRW5hYmxlIG91ciBkaXNwbGF5IGZyb250ZW5kCgogYXJjaC9hcm0vYm9vdC9k dHMvc3VuOGktYTMzLmR0c2kgICAgICAgfCAgIDEgKy0KIGRyaXZlcnMvZ3B1L2RybS9zdW40aS9N YWtlZmlsZSAgICAgICAgIHwgICAzICstCiBkcml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuNGlfYmFj a2VuZC5jICB8IDEzOSArKysrKysrKystCiBkcml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuNGlfYmFj a2VuZC5oICB8ICAgNiArLQogZHJpdmVycy9ncHUvZHJtL3N1bjRpL3N1bjRpX2NydGMuYyAgICAg fCAgMTQgKy0KIGRyaXZlcnMvZ3B1L2RybS9zdW40aS9zdW40aV9kcnYuYyAgICAgIHwgIDE2ICst CiBkcml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuNGlfZHJ2LmggICAgICB8ICAgMSArLQogZHJpdmVy cy9ncHUvZHJtL3N1bjRpL3N1bjRpX2Zyb250ZW5kLmMgfCAzNzcgKysrKysrKysrKysrKysrKysr KysrKysrKystCiBkcml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuNGlfZnJvbnRlbmQuaCB8IDEwMiAr KysrKysrLQogZHJpdmVycy9ncHUvZHJtL3N1bjRpL3N1bjRpX2xheWVyLmMgICAgfCAgNzUgKysr Ky0KIGRyaXZlcnMvZ3B1L2RybS9zdW40aS9zdW40aV9sYXllci5oICAgIHwgIDExICstCiBkcml2 ZXJzL2dwdS9kcm0vc3VuNGkvc3VueGlfZW5naW5lLmggICB8ICAgMiArLQogMTIgZmlsZXMgY2hh bmdlZCwgNzI3IGluc2VydGlvbnMoKyksIDIwIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAw NjQ0IGRyaXZlcnMvZ3B1L2RybS9zdW40aS9zdW40aV9mcm9udGVuZC5jCiBjcmVhdGUgbW9kZSAx MDA2NDQgZHJpdmVycy9ncHUvZHJtL3N1bjRpL3N1bjRpX2Zyb250ZW5kLmgKCmJhc2UtY29tbWl0 OiA0ZmJkOGQxOTRmMDZjOGEzZmQyYWYxY2U1NjBkZGIzMWY3ZWM4MzIzCi0tIApnaXQtc2VyaWVz IDAuOS4xCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRy aS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRw czovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=