Received: by 2002:a25:ab43:0:0:0:0:0 with SMTP id u61csp8143046ybi; Thu, 6 Jun 2019 07:24:33 -0700 (PDT) X-Google-Smtp-Source: APXvYqwZZMcCebZhQaIbg0e/QKz1yomB3HMrQEdy4KwtzOZF41bF71zyuSkJen+rLQrMDQBdfsT9 X-Received: by 2002:a17:90a:31c:: with SMTP id 28mr126401pje.115.1559831073271; Thu, 06 Jun 2019 07:24:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1559831073; cv=none; d=google.com; s=arc-20160816; b=ftlYU8sFeXHx6WUnyzQgJiq60l6ist5BmYSUEeeV5+esL15aiy2B3tsHJMZch7KvSR 4zbEEqqZw/7npfpzIDh/VLpy56dNr7SSRvxdGUUi2/SDTO92N3skkfx//oDIFJs2lagA xup61a7x4krfVLfPdOabgXISsqnygC7xTbEFyD6uEuBJWoo2ZdqhVRFTsdG6plsztqBA 9X6MoBTBgj2a6AKo6Zedm+yaEJQ1/25RwdnSCheZmSnioPyI1DuOVNbBR7qRoYmz2d6i B6oe+LL0AzC1PQySvGgYP7EZgcqtrnHdD3hHv3aEQroLpAM2swHs1xYq1B4+T3Ad1LsO tW/A== 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=snaWRt+n1kHtPbP9j8Fsaeaxg9li+3BRPvT2SeF+pps=; b=eNdv0C2ULRyR6/8g0NFKu7ZkBkchzzHrxoQNM6gUtkJVkcETZM/51SklwqhXnrsmcp RFV5DUfqsRKg9nwVYgfJs6BLZVEC5tAHSCF5FTDCbEzIETXK0c+xQ5HgKojikKAifCqB nORPsRLxfycjZgBZKYsppniR0W18nbl0/Q++sDBnXLBvGp11VnX2KjozFQj4rK1ggDUI 4eFOFX4gEr3lz+Cd+gHsqB4Lgy1HO8rf3QWEPLOucbn4/VOIH2yWv2XQvc8YjUCVSaEE uIMoeAcZukn+D216Fl2i13nsglupLUnINpzEN2fSawfqDeYw/zn9mdumJnCAqd17+g4K ZRFw== 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id y15si1952625pfe.133.2019.06.06.07.24.16; Thu, 06 Jun 2019 07:24:33 -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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728931AbfFFOWj (ORCPT + 99 others); Thu, 6 Jun 2019 10:22:39 -0400 Received: from relay7-d.mail.gandi.net ([217.70.183.200]:47743 "EHLO relay7-d.mail.gandi.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729010AbfFFOWX (ORCPT ); Thu, 6 Jun 2019 10:22:23 -0400 X-Originating-IP: 2.224.242.101 Received: from uno.lan (2-224-242-101.ip172.fastwebnet.it [2.224.242.101]) (Authenticated sender: jacopo@jmondi.org) by relay7-d.mail.gandi.net (Postfix) with ESMTPSA id 59F3420010; Thu, 6 Jun 2019 14:22:20 +0000 (UTC) From: Jacopo Mondi To: laurent.pinchart@ideasonboard.com, kieran.bingham+renesas@ideasonboard.com, airlied@linux.ie, daniel@ffwll.ch Cc: Jacopo Mondi , koji.matsuoka.xm@renesas.com, muroya@ksk.co.jp, VenkataRajesh.Kalakodima@in.bosch.com, Harsha.ManjulaMallikarjun@in.bosch.com, linux-renesas-soc@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: [PATCH 18/20] drm: rcar-du: group: Enable DU's CMM extension Date: Thu, 6 Jun 2019 16:22:18 +0200 Message-Id: <20190606142220.1392-19-jacopo+renesas@jmondi.org> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190606142220.1392-1-jacopo+renesas@jmondi.org> References: <20190606142220.1392-1-jacopo+renesas@jmondi.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Enable the CMM units through the display unit extensional function control group register DEFR7. Signed-off-by: Jacopo Mondi --- drivers/gpu/drm/rcar-du/rcar_du_group.c | 8 ++++++++ drivers/gpu/drm/rcar-du/rcar_du_regs.h | 5 +++++ 2 files changed, 13 insertions(+) diff --git a/drivers/gpu/drm/rcar-du/rcar_du_group.c b/drivers/gpu/drm/rcar-du/rcar_du_group.c index 9eee47969e77..d252c9bb9809 100644 --- a/drivers/gpu/drm/rcar-du/rcar_du_group.c +++ b/drivers/gpu/drm/rcar-du/rcar_du_group.c @@ -147,6 +147,14 @@ static void rcar_du_group_setup(struct rcar_du_group *rgrp) rcar_du_group_setup_pins(rgrp); + if (rcar_du_has(rcdu, RCAR_DU_FEATURE_CMM)) { + u32 defr7 = DEFR7_CODE | + (rgrp->cmms_mask & BIT(1) ? DEFR7_CMME1 : 0) | + (rgrp->cmms_mask & BIT(0) ? DEFR7_CMME0 : 0); + + rcar_du_group_write(rgrp, DEFR7, defr7); + } + if (rcdu->info->gen >= 2) { rcar_du_group_setup_defr8(rgrp); rcar_du_group_setup_didsr(rgrp); diff --git a/drivers/gpu/drm/rcar-du/rcar_du_regs.h b/drivers/gpu/drm/rcar-du/rcar_du_regs.h index bc87f080b170..fb9964949368 100644 --- a/drivers/gpu/drm/rcar-du/rcar_du_regs.h +++ b/drivers/gpu/drm/rcar-du/rcar_du_regs.h @@ -197,6 +197,11 @@ #define DEFR6_MLOS1 (1 << 2) #define DEFR6_DEFAULT (DEFR6_CODE | DEFR6_TCNE1) +#define DEFR7 0x000ec +#define DEFR7_CODE (0x7779 << 16) +#define DEFR7_CMME1 BIT(6) +#define DEFR7_CMME0 BIT(4) + /* ----------------------------------------------------------------------------- * R8A7790-only Control Registers */ -- 2.21.0