From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id A66B0C433EF for ; Tue, 11 Jan 2022 12:03:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:From:Subject:References:Cc: To:MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=7wLChz34tl2SEW0GmkzPaGpzYcrbAyWwULzcDcTEUns=; b=WFgSADutX3rRio v5gzQMkHsQMmIj9hv10ysuygi2hcnbHOlluoD2aEU6zSieHAzqOTx/NEwZAtI9dV98sti+ReB5guV gLqGci9KxtNDo+k0JMSWyRmmUiHMWGSuWu4C2VZvwZit0i5Qs57HbxtwDZJat/0SkWU6qCDEXBxst 2vA2NtgTDf5vP9XqdiUY7KzOQu+GUx+eJBiPy6FjKs1L9vSW3Y81SMogx8Yj0plAxsHK+BcGl6XMk MvgQGcV+OXQmwIiENshEGDfha09BIGqIqfUbK7FTZffQFj6Vm0USahoIVlpsmCYJ0F7LWYiw70oFV rn4ECt8cn64rKEeyNUcw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1n7Frl-00GATc-0J; Tue, 11 Jan 2022 12:03:05 +0000 Received: from smtp.domeneshop.no ([2a01:5b40:0:3005::1]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1n7Frh-00GAQp-G8; Tue, 11 Jan 2022 12:03:04 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tronnes.org ; s=ds202112; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:From: Subject:References:Cc:To:MIME-Version:Date:Message-ID:Sender:Reply-To: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=jyL93/6BnSzZVNk0d+pZVStpOnNWGIWV0cp232YBOgI=; b=mT2tFt8Aj6L1bsweeK606aleQA 0q/CwoWO+evMQh6GF50pJ9PCCCJyuXmOhrRYLTjQTDKpOhN5D1TYzPaDFKoepp28vQrmdjWG6wUW8 LGlw4YnNeBeXX7pKtIYZ3/rLRKgUBssnd7als6RGu0CxyV46XVwUK4IDmmPFA3ITABbriBLqZUyX7 UWENmSQBWStSeVvtNjuAYCql48TE2QdR6owbFy1pu34zh7hD38mCeIMvQV128RgQ14GVHI+BlaVUf s1SRoWZUU6eUnGUkYz/h6+kwWvf5T6XHSBuiDwqgK/Ebb/WdPwu+Hoa2GmokqiDnSf/G5RdV5o7Ly 1/sUx6RQ==; Received: from 211.81-166-168.customer.lyse.net ([81.166.168.211]:50898 helo=[192.168.10.61]) by smtp.domeneshop.no with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1n7Frc-0003rr-1p; Tue, 11 Jan 2022 13:02:56 +0100 Message-ID: Date: Tue, 11 Jan 2022 13:02:50 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.4.1 To: tzimmermann@suse.de Cc: airlied@linux.ie, daniel.vetter@ffwll.ch, daniel@ffwll.ch, dri-devel@lists.freedesktop.org, linux-amlogic@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-aspeed@lists.ozlabs.org, linux-mips@vger.kernel.org, linux-renesas-soc@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-sunxi@lists.linux.dev, maarten.lankhorst@linux.intel.com, marcel@ziswiler.com, mripard@kernel.org, naresh.kamboju@linaro.org, noralf@tronnes.org References: <20211106193509.17472-2-tzimmermann@suse.de> Subject: Re: [PATCH v2 1/2] drm/mipi-dbi: Remove dependency on GEM CMA helper library From: =?UTF-8?Q?Noralf_Tr=c3=b8nnes?= In-Reply-To: <20211106193509.17472-2-tzimmermann@suse.de> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220111_040301_597749_17097671 X-CRM114-Status: GOOD ( 14.29 ) X-BeenThere: linux-amlogic@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-amlogic" Errors-To: linux-amlogic-bounces+linux-amlogic=archiver.kernel.org@lists.infradead.org > The MIPI DBI helpers access struct drm_gem_cma_object.vaddr in a > few places. Replace all instances with the correct generic GEM > functions. Use drm_gem_fb_vmap() for mapping a framebuffer's GEM > objects and drm_gem_fb_vunmap() for unmapping them. This removes > the dependency on CMA helpers within MIPI DBI. > > Signed-off-by: Thomas Zimmermann > Reviewed-by: Daniel Vetter > --- > drivers/gpu/drm/drm_mipi_dbi.c | 34 +++++++++++++++++++++++++--------- > 1 file changed, 25 insertions(+), 9 deletions(-) > > diff --git a/drivers/gpu/drm/drm_mipi_dbi.c b/drivers/gpu/drm/drm_mipi_dbi.c > index 71b646c4131f..f80fd6c0ccf8 100644 > --- a/drivers/gpu/drm/drm_mipi_dbi.c > +++ b/drivers/gpu/drm/drm_mipi_dbi.c > @@ -15,9 +15,10 @@ > #include > #include > #include > -#include > +#include > #include > #include > +#include > #include > #include > #include > @@ -200,13 +201,19 @@ int mipi_dbi_buf_copy(void *dst, struct drm_framebuffer *fb, > struct drm_rect *clip, bool swap) > { > struct drm_gem_object *gem = drm_gem_fb_get_obj(fb, 0); > - struct drm_gem_cma_object *cma_obj = to_drm_gem_cma_obj(gem); > - void *src = cma_obj->vaddr; > + struct dma_buf_map map[DRM_FORMAT_MAX_PLANES]; > + struct dma_buf_map data[DRM_FORMAT_MAX_PLANES]; > + void *src; > int ret; > > ret = drm_gem_fb_begin_cpu_access(fb, DMA_FROM_DEVICE); > if (ret) > return ret; > + src = data[0].vaddr; /* TODO: Use mapping abstraction properly */ This assignment should be after the _vmap() call. The MIPI DBI drivers are currently broken because of this. Noralf. > + > + ret = drm_gem_fb_vmap(fb, map, data); > + if (ret) > + goto out_drm_gem_fb_end_cpu_access; > > switch (fb->format->format) { > case DRM_FORMAT_RGB565: > @@ -221,9 +228,11 @@ int mipi_dbi_buf_copy(void *dst, struct drm_framebuffer *fb, > default: > drm_err_once(fb->dev, "Format is not supported: %p4cc\n", > &fb->format->format); > - return -EINVAL; > + ret = -EINVAL; > } > > + drm_gem_fb_vunmap(fb, map); > +out_drm_gem_fb_end_cpu_access: > drm_gem_fb_end_cpu_access(fb, DMA_FROM_DEVICE); > > return ret; > _______________________________________________ linux-amlogic mailing list linux-amlogic@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-amlogic