From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753653AbdLMPfr (ORCPT ); Wed, 13 Dec 2017 10:35:47 -0500 Received: from mail.free-electrons.com ([62.4.15.54]:37697 "EHLO mail.free-electrons.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753349AbdLMPdk (ORCPT ); Wed, 13 Dec 2017 10:33:40 -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 2/8] drm/sun4i: backend: Allow a NULL plane pointer to retrieve the format Date: Wed, 13 Dec 2017 16:33:26 +0100 Message-Id: <6a1686760e61baa9f21fd2f12e56a8de92eb1714.1513178989.git-series.maxime.ripard@free-electrons.com> X-Mailer: git-send-email 2.14.3 In-Reply-To: References: In-Reply-To: References: Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The function converting the DRM format to its equivalent in the backend registers was assuming that we were having a plane. However, we might want to use that function when setting up a plane using the frontend, in which case we will not have a plane associated to the backend's layer. Yet, we still need to setup the format to the one output by the frontend. Test for NULL plane pointers before referencing them, so that we can work around it. Signed-off-by: Maxime Ripard --- drivers/gpu/drm/sun4i/sun4i_backend.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/sun4i/sun4i_backend.c b/drivers/gpu/drm/sun4i/sun4i_backend.c index c99d1a7e815a..f971d3fb5ee4 100644 --- a/drivers/gpu/drm/sun4i/sun4i_backend.c +++ b/drivers/gpu/drm/sun4i/sun4i_backend.c @@ -93,7 +93,7 @@ void sun4i_backend_layer_enable(struct sun4i_backend *backend, static int sun4i_backend_drm_format_to_layer(struct drm_plane *plane, u32 format, u32 *mode) { - if ((plane->type == DRM_PLANE_TYPE_PRIMARY) && + if (plane && (plane->type == DRM_PLANE_TYPE_PRIMARY) && (format == DRM_FORMAT_ARGB8888)) format = DRM_FORMAT_XRGB8888; -- 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:26 +0100 Subject: [PATCH 2/8] drm/sun4i: backend: Allow a NULL plane pointer to retrieve the format In-Reply-To: References: Message-ID: <6a1686760e61baa9f21fd2f12e56a8de92eb1714.1513178989.git-series.maxime.ripard@free-electrons.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org The function converting the DRM format to its equivalent in the backend registers was assuming that we were having a plane. However, we might want to use that function when setting up a plane using the frontend, in which case we will not have a plane associated to the backend's layer. Yet, we still need to setup the format to the one output by the frontend. Test for NULL plane pointers before referencing them, so that we can work around it. Signed-off-by: Maxime Ripard --- drivers/gpu/drm/sun4i/sun4i_backend.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/sun4i/sun4i_backend.c b/drivers/gpu/drm/sun4i/sun4i_backend.c index c99d1a7e815a..f971d3fb5ee4 100644 --- a/drivers/gpu/drm/sun4i/sun4i_backend.c +++ b/drivers/gpu/drm/sun4i/sun4i_backend.c @@ -93,7 +93,7 @@ void sun4i_backend_layer_enable(struct sun4i_backend *backend, static int sun4i_backend_drm_format_to_layer(struct drm_plane *plane, u32 format, u32 *mode) { - if ((plane->type == DRM_PLANE_TYPE_PRIMARY) && + if (plane && (plane->type == DRM_PLANE_TYPE_PRIMARY) && (format == DRM_FORMAT_ARGB8888)) format = DRM_FORMAT_XRGB8888; -- git-series 0.9.1 From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maxime Ripard Subject: [PATCH 2/8] drm/sun4i: backend: Allow a NULL plane pointer to retrieve the format Date: Wed, 13 Dec 2017 16:33:26 +0100 Message-ID: <6a1686760e61baa9f21fd2f12e56a8de92eb1714.1513178989.git-series.maxime.ripard@free-electrons.com> References: 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 AD56F6E50D for ; Wed, 13 Dec 2017 15:33:39 +0000 (UTC) In-Reply-To: In-Reply-To: References: 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 VGhlIGZ1bmN0aW9uIGNvbnZlcnRpbmcgdGhlIERSTSBmb3JtYXQgdG8gaXRzIGVxdWl2YWxlbnQg aW4gdGhlIGJhY2tlbmQKcmVnaXN0ZXJzIHdhcyBhc3N1bWluZyB0aGF0IHdlIHdlcmUgaGF2aW5n IGEgcGxhbmUuCgpIb3dldmVyLCB3ZSBtaWdodCB3YW50IHRvIHVzZSB0aGF0IGZ1bmN0aW9uIHdo ZW4gc2V0dGluZyB1cCBhIHBsYW5lIHVzaW5nCnRoZSBmcm9udGVuZCwgaW4gd2hpY2ggY2FzZSB3 ZSB3aWxsIG5vdCBoYXZlIGEgcGxhbmUgYXNzb2NpYXRlZCB0byB0aGUKYmFja2VuZCdzIGxheWVy LiBZZXQsIHdlIHN0aWxsIG5lZWQgdG8gc2V0dXAgdGhlIGZvcm1hdCB0byB0aGUgb25lIG91dHB1 dApieSB0aGUgZnJvbnRlbmQuCgpUZXN0IGZvciBOVUxMIHBsYW5lIHBvaW50ZXJzIGJlZm9yZSBy ZWZlcmVuY2luZyB0aGVtLCBzbyB0aGF0IHdlIGNhbiB3b3JrCmFyb3VuZCBpdC4KClNpZ25lZC1v ZmYtYnk6IE1heGltZSBSaXBhcmQgPG1heGltZS5yaXBhcmRAZnJlZS1lbGVjdHJvbnMuY29tPgot LS0KIGRyaXZlcnMvZ3B1L2RybS9zdW40aS9zdW40aV9iYWNrZW5kLmMgfCAyICstCiAxIGZpbGUg Y2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vc3VuNGkvc3VuNGlfYmFja2VuZC5jIGIvZHJpdmVycy9ncHUvZHJtL3N1bjRp L3N1bjRpX2JhY2tlbmQuYwppbmRleCBjOTlkMWE3ZTgxNWEuLmY5NzFkM2ZiNWVlNCAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL3N1bjRpL3N1bjRpX2JhY2tlbmQuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vc3VuNGkvc3VuNGlfYmFja2VuZC5jCkBAIC05Myw3ICs5Myw3IEBAIHZvaWQgc3Vu NGlfYmFja2VuZF9sYXllcl9lbmFibGUoc3RydWN0IHN1bjRpX2JhY2tlbmQgKmJhY2tlbmQsCiBz dGF0aWMgaW50IHN1bjRpX2JhY2tlbmRfZHJtX2Zvcm1hdF90b19sYXllcihzdHJ1Y3QgZHJtX3Bs YW5lICpwbGFuZSwKIAkJCQkJICAgICB1MzIgZm9ybWF0LCB1MzIgKm1vZGUpCiB7Ci0JaWYgKChw bGFuZS0+dHlwZSA9PSBEUk1fUExBTkVfVFlQRV9QUklNQVJZKSAmJgorCWlmIChwbGFuZSAmJiAo cGxhbmUtPnR5cGUgPT0gRFJNX1BMQU5FX1RZUEVfUFJJTUFSWSkgJiYKIAkgICAgKGZvcm1hdCA9 PSBEUk1fRk9STUFUX0FSR0I4ODg4KSkKIAkJZm9ybWF0ID0gRFJNX0ZPUk1BVF9YUkdCODg4ODsK IAotLSAKZ2l0LXNlcmllcyAwLjkuMQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9kcmktZGV2ZWwK