Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp706226yba; Sun, 31 Mar 2019 10:26:51 -0700 (PDT) X-Google-Smtp-Source: APXvYqxu91uUI9q9vitjWiWPngO8oE/Q34b/aqcued0r0sSKhMslmHkw2e9coS3mSOb9lPDSXb5k X-Received: by 2002:aa7:9151:: with SMTP id 17mr22408857pfi.192.1554053211443; Sun, 31 Mar 2019 10:26:51 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1554053211; cv=none; d=google.com; s=arc-20160816; b=ar9ccKZrQyr/yKLoXLEK+hN5ZUIh18dr/UaCqNOOI65dD/5sqz2ZNUmPLKXw9c4yAT /fpmAYNqnT5BDP91zIvCpKE/psfVYk/n1X9Yt/g5xaHP++iBI50/Ulq3E4Zocq25AQ9z Z3g2+zfAUmj6S4lxdYsq8nt/dCbghw3ItD41/NunRRgGpyg/KwFAX1YLTGqZ/zVrkpmn KL89UjvxwJ0TQlHLNSIb3LFsVJMOyViisUeq8//x/uLXFmnvrEy7ZmdieJEwNeeInGBn cCSGvsEEcd3XCbgiD23rV3ID4cJYnFP6ZH70NN58goY3gKglsngBh8vd49gl2dwu6eVj K0aA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature; bh=2Y47egCouj6CwboGuzaojNr2NiGMo7cFRPCKBF1IBqo=; b=fwuMafx7scl1yUMJbyu5b0b9KKHv9zguoZPXU6MRBbfXRlD8x0ui+Pg1OkSLBDv/wv t4WCHA2IpP/lXuHL1pj3b/G7ZO/OClUzXX0GNAFSeM72Y3jKD0aHP5vmK1OrlYp1U3CU YrFdu4W8P8WSR3AOXZ5X6M7v9uaT3GwXU56l4m31Z8uGJ+kD64uaoTGaoXZ9k7lnmLu4 YJDZ/oz9wCJG/JqBZX4fAI96taCouk6d0BL0ewig+P385lKzR8lS+d/1Rp0R/9ipfp7f ZgDu1V2BCExKqjNcrtMNyFgFiMiJPLND7+7ZVIiJSJAX38+DKEeAgdCITOqeo46VnBaH 5hEg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=EvLMNUcf; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id k7si6890261pgq.74.2019.03.31.10.26.35; Sun, 31 Mar 2019 10:26:51 -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; dkim=pass header.i=@gmail.com header.s=20161025 header.b=EvLMNUcf; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731326AbfCaR0C (ORCPT + 99 others); Sun, 31 Mar 2019 13:26:02 -0400 Received: from mail-wr1-f67.google.com ([209.85.221.67]:44087 "EHLO mail-wr1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731279AbfCaR0C (ORCPT ); Sun, 31 Mar 2019 13:26:02 -0400 Received: by mail-wr1-f67.google.com with SMTP id y7so8815880wrn.11; Sun, 31 Mar 2019 10:26:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=2Y47egCouj6CwboGuzaojNr2NiGMo7cFRPCKBF1IBqo=; b=EvLMNUcf95TM4CGVe9OtSpWS8fkjxqHgDacnziGWz6camkyeUyEpWoVL0NTCTPbf0q AE/nksGmLDOGy9KvSpSWCjm0fBI/R+IROiw+kDd96KSeu8FmavufEC/B+cHJZM9/UIfP E1khh/EHOiU//QL6vZ0QCMUe2fipVX5CtJ/AISppul6AQ4aq6oWsNhu2QCnliK4fxean ilNDNKudye9UjlUt1yyk+TRfXkhXFfujvHcnTBwtSDAVpCjxzZIPZjI+qo+5lHh9vPX1 eWKl2v/J0cWiR+x9rxLrNxrkk+/Ta8YdEqa3fOsOgEuLn87ogUZlAWyeKBguyRdYhtM0 Yz6A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=2Y47egCouj6CwboGuzaojNr2NiGMo7cFRPCKBF1IBqo=; b=MXJ06qfVeduguQDJwxqhgcyO8cEWY58C4Q5Qu63vuvOZeSv7G//U+2aQGGcJRX19n1 2EINALEdt0uUeTXBKdb3tlM0/M/Tgzl9W78izp/7XWN4DKlmFtBHQsSQT/ZMCE/dpvBm TcLBuQ/0c2wJxYU+EsGO+/RB4IBKXW5+WfVVA+AxUBkyntE1haFG4ojPv3olNY0b6F6H /RyMK83jlb6fncILsUBqTPlPTAcTZPBN2FK46N9lm48pUtyhKA8XBLPpP9ucSKsR/M+S mrTuR5SaNDqEmit7UjEYErlQo7KqYaki4GK0VKgwVxtkjI+ZAydcHSTOjOoxOXEYjejC 00hQ== X-Gm-Message-State: APjAAAXhytg5EviZ48Kn3MJeKEOrN03BT+4x+PPx8OPaY2jDTTLhvA/h 1ucGJZ6z0F/B3sd/smEzlTg= X-Received: by 2002:a5d:6b43:: with SMTP id x3mr41032647wrw.76.1554053160808; Sun, 31 Mar 2019 10:26:00 -0700 (PDT) Received: from debian (cpc101300-bagu16-2-0-cust362.1-3.cable.virginm.net. [86.21.41.107]) by smtp.gmail.com with ESMTPSA id c126sm8650224wma.0.2019.03.31.10.25.59 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sun, 31 Mar 2019 10:26:00 -0700 (PDT) Date: Sun, 31 Mar 2019 18:25:58 +0100 From: Sudip Mukherjee To: Yifeng Li Cc: Teddy Wang , linux-kernel@vger.kernel.org, Bartlomiej Zolnierkiewicz , linux-fbdev@vger.kernel.org, dri-devel@lists.freedesktop.org Subject: Re: [PATCH v2 2/7] fbdev: sm712fb: add 2D-related I/O headers and functions. Message-ID: <20190331172558.ndvtilm7c2cy6xa4@debian> References: <20190322051759.15007-1-tomli@tomli.me> <20190322051759.15007-3-tomli@tomli.me> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20190322051759.15007-3-tomli@tomli.me> User-Agent: NeoMutt/20170113 (1.7.2) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Mar 22, 2019 at 01:17:54PM +0800, Yifeng Li wrote: > This commit adds I/O macros and functions related to 2D opeartions. > A hunk of hardware register definitions are taken verbatim from > OpenBSD. > > In addition, a utility function pad_to_dword() is added to help > padding data for the 2D engine. It accepts 3, 2, or 1 byte(s) of > data, and pads it to a 32-bit word suitable for 2D Drawing Engine. > > Yes, we can set info->pixmap.scan_align/buf_align = 4 and forget > about padding, but it's incompatible with cfb_imageblit() w/ > depth == 1. In case we need to fallback (e.g. debugging), it would > be inconvenient, so we pad it manually. > > Signed-off-by: Yifeng Li > --- > drivers/video/fbdev/sm712.h | 96 +++++++++++++++++++++++++++++++++++++ > 1 file changed, 96 insertions(+) > > diff --git a/drivers/video/fbdev/sm712.h b/drivers/video/fbdev/sm712.h > index 89e446db2ac7..4892fd485f08 100644 > --- a/drivers/video/fbdev/sm712.h > +++ b/drivers/video/fbdev/sm712.h > @@ -91,6 +91,102 @@ static inline u8 smtc_seqr(u8 reg) > return smtc_mmiorb(0x3c5); > } > > +/* > + * DPR (2D drawing engine) > + */ > +#define DPR_COORDS(x, y) (((x) << 16) | (y)) > + > +#define DPR_SRC_WINDOW 0x3c > +#define DPR_SRC_BASE 0x40 > +#define DPR_DST_BASE 0x44 > + > +#define DE_CTRL_START 0x80000000 > +#define DE_CTRL_RTOL 0x08000000 > +#define DE_CTRL_COMMAND_MASK 0x001f0000 > +#define DE_CTRL_COMMAND_SHIFT 16 > +#define DE_CTRL_COMMAND_BITBLT 0x00 > +#define DE_CTRL_COMMAND_SOLIDFILL 0x01 > +#define DE_CTRL_COMMAND_HOSTWRITE 0x08 > +#define DE_CTRL_ROP2_SELECT 0x00008000 > +#define DE_CTRL_ROP2_SRC_IS_PATTERN 0x00004000 > +#define DE_CTRL_ROP2_SHIFT 0 > +#define DE_CTRL_ROP2_COPY 0x0c > +#define DE_CTRL_HOST_SHIFT 22 > +#define DE_CTRL_HOST_SRC_IS_MONO 0x01 > +#define DE_CTRL_FORMAT_XY 0x00 > +#define DE_CTRL_FORMAT_24BIT 0x30 Please fix the alignment. Some of them are right aligned and some are left. -- Regards Sudip