Received: by 2002:a25:8b12:0:0:0:0:0 with SMTP id i18csp2161113ybl; Thu, 29 Aug 2019 04:32:12 -0700 (PDT) X-Google-Smtp-Source: APXvYqyCbetYMrwsCjK9vfVy/GNx4I4X40aMhCUbN9aIu35481ghEwkopV3CAI4YswlHNSz9iTmx X-Received: by 2002:a62:76d5:: with SMTP id r204mr10580219pfc.252.1567078332716; Thu, 29 Aug 2019 04:32:12 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1567078332; cv=none; d=google.com; s=arc-20160816; b=dwJ05oKmaBMF4lFpYqYY7UdaLuAtbo+sUi9BbIQQjpyhE6+EzDyV/HJVhF09iRP90q rOflGv8eZ0fUlM02vBEeMd+yeSvrT0JNNDHp/BRrtvzr9fcYQsfHRVWbdgx2r70pApQJ hLwDPBdWeqRDiU5ZgZY80GIj2nib8VvSZ5m+8RkkjpfZAx6uo4Z7GxexiSYonEKPc2vV aktl7IZf89FDfJwZpt8Fq6T3WxCfFD2aWwj3qG7bt/NCHEBeg5kR/x78YBWMGaJ1gPIU TgPnwdtmSNCDe0GVeMfd9JnHFSdtuFBQ00/IP8iGajnYZIt8jNSU9fguzOQsu1GjLAFq vpyg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=G+J0jMcZZdxel9jrXjJTslbisScwPYlMBcjxifqILZU=; b=fkYpa7z9/PgeKaPclarPmNCCH/Mifw6Q/Ls+mI5BhkfchNeQuM6LRsfS0ry4stjgsa 7bVrgZ1ykHg7l8znN9a+dRy8tuDaieyoqxWCgn46DhSZeY+RFmWWa+kS+WItEb9VyyAm bzJ0z4SyC/JHVV4lURbLCd8hr6DK66wA8OULyIVrqpaOkPz/H4wzXt1RkDjYejZUOghO V7ihfLQhAPzC9wKPzAcy718gJMwKl7Bg0ui7yfEZpY3kn8FV6iS0F+R5cX5m95JdEAwI b8jpYPFGl3wxFuHcLRf4Ddn3NrLiBw030UCE2hWdKbtEC8L75h18lkcyjLSF5ZpN+T/x cOvg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nxp.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id u9si1631099plq.412.2019.08.29.04.31.55; Thu, 29 Aug 2019 04:32:12 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nxp.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728306AbfH2Lar (ORCPT + 99 others); Thu, 29 Aug 2019 07:30:47 -0400 Received: from inva020.nxp.com ([92.121.34.13]:49656 "EHLO inva020.nxp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728158AbfH2Lab (ORCPT ); Thu, 29 Aug 2019 07:30:31 -0400 Received: from inva020.nxp.com (localhost [127.0.0.1]) by inva020.eu-rdc02.nxp.com (Postfix) with ESMTP id 3CEE91A0149; Thu, 29 Aug 2019 13:30:29 +0200 (CEST) Received: from inva024.eu-rdc02.nxp.com (inva024.eu-rdc02.nxp.com [134.27.226.22]) by inva020.eu-rdc02.nxp.com (Postfix) with ESMTP id 38FC11A0010; Thu, 29 Aug 2019 13:30:29 +0200 (CEST) Received: from fsr-ub1664-120.ea.freescale.net (fsr-ub1664-120.ea.freescale.net [10.171.82.81]) by inva024.eu-rdc02.nxp.com (Postfix) with ESMTP id 48E9720613; Thu, 29 Aug 2019 13:30:28 +0200 (CEST) From: Robert Chiras To: =?UTF-8?q?Guido=20G=C3=BCnther?= , Marek Vasut , Stefan Agner , David Airlie , Daniel Vetter , Rob Herring , Mark Rutland , Shawn Guo , Sascha Hauer , Fabio Estevam Cc: Pengutronix Kernel Team , NXP Linux Team , dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH v4 13/14] drm/mxsfb: Add support for horizontal stride Date: Thu, 29 Aug 2019 14:30:14 +0300 Message-Id: <1567078215-31601-14-git-send-email-robert.chiras@nxp.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1567078215-31601-1-git-send-email-robert.chiras@nxp.com> References: <1567078215-31601-1-git-send-email-robert.chiras@nxp.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Virus-Scanned: ClamAV using ClamSMTP Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Besides the eLCDIF block, there is another IP block, used in the past for EPDC panels. Since the iMX.8mq doesn't have an EPDC connector, this block is not documented, but we can use it to do additional operations on the frame buffer. In this case, we can use the pigeon registers from this IP block in order to do horizontal crop on the frame buffer processed by the eLCDIF block. Signed-off-by: Robert Chiras Tested-by: Guido Günther --- drivers/gpu/drm/mxsfb/mxsfb_crtc.c | 79 ++++++++++++++++++++++++++++++++++++-- drivers/gpu/drm/mxsfb/mxsfb_drv.c | 1 + drivers/gpu/drm/mxsfb/mxsfb_regs.h | 16 ++++++++ 3 files changed, 92 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/mxsfb/mxsfb_crtc.c b/drivers/gpu/drm/mxsfb/mxsfb_crtc.c index a12f53d..317575e 100644 --- a/drivers/gpu/drm/mxsfb/mxsfb_crtc.c +++ b/drivers/gpu/drm/mxsfb/mxsfb_crtc.c @@ -15,6 +15,7 @@ #include