From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751986AbcDSG1X (ORCPT ); Tue, 19 Apr 2016 02:27:23 -0400 Received: from gloria.sntech.de ([95.129.55.99]:39032 "EHLO gloria.sntech.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751604AbcDSG1W (ORCPT ); Tue, 19 Apr 2016 02:27:22 -0400 From: Heiko =?ISO-8859-1?Q?St=FCbner?= To: Mark Yao Cc: David Airlie , dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] drm/rockchip: support non-iommu buffer path Date: Tue, 19 Apr 2016 08:27:10 +0200 Message-ID: <2221474.O4M7g09IWn@diego> User-Agent: KMail/4.14.10 (Linux/4.4.0-1-amd64; KDE/4.14.14; x86_64; ; ) In-Reply-To: <1461032372-14630-1-git-send-email-mark.yao@rock-chips.com> References: <1461032372-14630-1-git-send-email-mark.yao@rock-chips.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Am Dienstag, 19. April 2016, 10:19:32 schrieb Mark Yao: > Some rockchip vop not support iommu, need use non-iommu > buffer for it. And if we get iommu issues, we can compare > the issues with non-iommu path, the would help the debug. > > Signed-off-by: Mark Yao > --- > drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 65 > +++++++++++++++++++-------- 1 file changed, 47 insertions(+), 18 > deletions(-) > > diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_drv.c > b/drivers/gpu/drm/rockchip/rockchip_drm_drv.c index f556a8f..90729c0 100644 > --- a/drivers/gpu/drm/rockchip/rockchip_drm_drv.c > +++ b/drivers/gpu/drm/rockchip/rockchip_drm_drv.c [...] > @@ -497,6 +514,18 @@ static int rockchip_drm_platform_probe(struct > platform_device *pdev) continue; > } > > + iommu = of_parse_phandle(port->parent, "iommus", 0); > + if (!iommu || !of_device_is_available(iommu->parent)) { > + dev_warn(dev, "No available iommu found for %s\n", > + port->parent->full_name); > + dev_warn(dev, "Force non-iommu buffer for all crtc\n"); As stated in the patch-description, this is somewhat common for _some_ vops [like the Cortex-A9s I'm still hoping to support at some point in the future :-D ], so this should probably be either a dev_dbg or a dev_info as maximum and also condensed into one line of output like: dev_dbg(dev, "no iommu attached for %s, using non-iommu buffers\n", port->parent->full_name); Heiko From mboxrd@z Thu Jan 1 00:00:00 1970 From: Heiko =?ISO-8859-1?Q?St=FCbner?= Subject: Re: [PATCH] drm/rockchip: support non-iommu buffer path Date: Tue, 19 Apr 2016 08:27:10 +0200 Message-ID: <2221474.O4M7g09IWn@diego> References: <1461032372-14630-1-git-send-email-mark.yao@rock-chips.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1461032372-14630-1-git-send-email-mark.yao@rock-chips.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Mark Yao Cc: linux-rockchip@lists.infradead.org, linux-arm-kernel@lists.infradead.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org List-Id: linux-rockchip.vger.kernel.org QW0gRGllbnN0YWcsIDE5LiBBcHJpbCAyMDE2LCAxMDoxOTozMiBzY2hyaWViIE1hcmsgWWFvOgo+ IFNvbWUgcm9ja2NoaXAgdm9wIG5vdCBzdXBwb3J0IGlvbW11LCBuZWVkIHVzZSBub24taW9tbXUK PiBidWZmZXIgZm9yIGl0LiBBbmQgaWYgd2UgZ2V0IGlvbW11IGlzc3Vlcywgd2UgY2FuIGNvbXBh cmUKPiB0aGUgaXNzdWVzIHdpdGggbm9uLWlvbW11IHBhdGgsIHRoZSB3b3VsZCBoZWxwIHRoZSBk ZWJ1Zy4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBNYXJrIFlhbyA8bWFyay55YW9Acm9jay1jaGlwcy5j b20+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9yb2NrY2hpcF9kcm1fZHJ2LmMg fCAgIDY1Cj4gKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tIDEgZmlsZSBjaGFuZ2VkLCA0NyBp bnNlcnRpb25zKCspLCAxOAo+IGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJtX2Rydi5jCj4gYi9kcml2ZXJzL2dwdS9kcm0v cm9ja2NoaXAvcm9ja2NoaXBfZHJtX2Rydi5jIGluZGV4IGY1NTZhOGYuLjkwNzI5YzAgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV9kcnYuYwo+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9yb2NrY2hpcF9kcm1fZHJ2LmMKClsuLi5dCgo+ IEBAIC00OTcsNiArNTE0LDE4IEBAIHN0YXRpYyBpbnQgcm9ja2NoaXBfZHJtX3BsYXRmb3JtX3By b2JlKHN0cnVjdAo+IHBsYXRmb3JtX2RldmljZSAqcGRldikgY29udGludWU7Cj4gIAkJfQo+IAo+ ICsJCWlvbW11ID0gb2ZfcGFyc2VfcGhhbmRsZShwb3J0LT5wYXJlbnQsICJpb21tdXMiLCAwKTsK PiArCQlpZiAoIWlvbW11IHx8ICFvZl9kZXZpY2VfaXNfYXZhaWxhYmxlKGlvbW11LT5wYXJlbnQp KSB7Cj4gKwkJCWRldl93YXJuKGRldiwgIk5vIGF2YWlsYWJsZSBpb21tdSBmb3VuZCBmb3IgJXNc biIsCj4gKwkJCQkgcG9ydC0+cGFyZW50LT5mdWxsX25hbWUpOwo+ICsJCQlkZXZfd2FybihkZXYs ICJGb3JjZSBub24taW9tbXUgYnVmZmVyIGZvciBhbGwgY3J0Y1xuIik7CgpBcyBzdGF0ZWQgaW4g dGhlIHBhdGNoLWRlc2NyaXB0aW9uLCB0aGlzIGlzIHNvbWV3aGF0IGNvbW1vbiBmb3IgX3NvbWVf IHZvcHMgCltsaWtlIHRoZSBDb3J0ZXgtQTlzIEknbSBzdGlsbCBob3BpbmcgdG8gc3VwcG9ydCBh dCBzb21lIHBvaW50IGluIHRoZSBmdXR1cmUgCjotRCBdLCBzbyB0aGlzIHNob3VsZCBwcm9iYWJs eSBiZSBlaXRoZXIgYSBkZXZfZGJnIG9yIGEgZGV2X2luZm8gYXMgbWF4aW11bSAKYW5kIGFsc28g Y29uZGVuc2VkIGludG8gb25lIGxpbmUgb2Ygb3V0cHV0IGxpa2U6CgoJZGV2X2RiZyhkZXYsICJu byBpb21tdSBhdHRhY2hlZCBmb3IgJXMsIHVzaW5nIG5vbi1pb21tdSBidWZmZXJzXG4iLAoJCQkg IHBvcnQtPnBhcmVudC0+ZnVsbF9uYW1lKTsKCgpIZWlrbwpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZl bEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9kcmktZGV2ZWwK From mboxrd@z Thu Jan 1 00:00:00 1970 From: heiko@sntech.de (Heiko =?ISO-8859-1?Q?St=FCbner?=) Date: Tue, 19 Apr 2016 08:27:10 +0200 Subject: [PATCH] drm/rockchip: support non-iommu buffer path In-Reply-To: <1461032372-14630-1-git-send-email-mark.yao@rock-chips.com> References: <1461032372-14630-1-git-send-email-mark.yao@rock-chips.com> Message-ID: <2221474.O4M7g09IWn@diego> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Am Dienstag, 19. April 2016, 10:19:32 schrieb Mark Yao: > Some rockchip vop not support iommu, need use non-iommu > buffer for it. And if we get iommu issues, we can compare > the issues with non-iommu path, the would help the debug. > > Signed-off-by: Mark Yao > --- > drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 65 > +++++++++++++++++++-------- 1 file changed, 47 insertions(+), 18 > deletions(-) > > diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_drv.c > b/drivers/gpu/drm/rockchip/rockchip_drm_drv.c index f556a8f..90729c0 100644 > --- a/drivers/gpu/drm/rockchip/rockchip_drm_drv.c > +++ b/drivers/gpu/drm/rockchip/rockchip_drm_drv.c [...] > @@ -497,6 +514,18 @@ static int rockchip_drm_platform_probe(struct > platform_device *pdev) continue; > } > > + iommu = of_parse_phandle(port->parent, "iommus", 0); > + if (!iommu || !of_device_is_available(iommu->parent)) { > + dev_warn(dev, "No available iommu found for %s\n", > + port->parent->full_name); > + dev_warn(dev, "Force non-iommu buffer for all crtc\n"); As stated in the patch-description, this is somewhat common for _some_ vops [like the Cortex-A9s I'm still hoping to support at some point in the future :-D ], so this should probably be either a dev_dbg or a dev_info as maximum and also condensed into one line of output like: dev_dbg(dev, "no iommu attached for %s, using non-iommu buffers\n", port->parent->full_name); Heiko