Received: by 2002:a05:6a10:1a4d:0:0:0:0 with SMTP id nk13csp876897pxb; Tue, 1 Feb 2022 12:15:12 -0800 (PST) X-Google-Smtp-Source: ABdhPJxFT8cbdqyBBsXTf1NQQcj4AE+4QZcWOqRf/qwlbRxrPFXdkU8tNTJ4+9qkRTYzWQnKeVOe X-Received: by 2002:a17:903:1212:: with SMTP id l18mr26774095plh.7.1643746511832; Tue, 01 Feb 2022 12:15:11 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1643746511; cv=none; d=google.com; s=arc-20160816; b=sxMFGCzPNIe7uXJ7FQdIupRsz6QVkjVCP425PQkbnZszlnIcXyfAjz7Hgpw82fiM0L NOYpW7N8vZMy9ZWygzGZ0p7WQECjAtmoVgKJNU35e0bqw6zrIBP1fVrbmOhdTMBsmAhM U8sBbkt7JFS0TquA3Ad8SniA2gDKwp6B9mnGIIjblclcn+FxKAhM4rWdaxpob7UAK8vn 9pCIJSSal/1MSU96cT1G6E+oizuOeyzAjo0zSHGGq1Jzc61gZt66WBD+3n5VEhi3n0CX 7I/7OP8s76o45OqS+f55aQEXMxPKfs13k9kMrSEc3JkgpZsP8eD//c46EQmZLcQaBT3y OBww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=Mkmqidx/oPx8b5KIx4I1UJMvTrD2DJPEkqRTiAlWLI4=; b=0VZLZJ6R7pZgG0a7qdzfxl3z44zrQSd9M277j3bVn1xx1yskzWzdmOGB5P8dIxE8+p fP2nEgRvh7KoFJkWdw/HnkF12glG+Xm/HM82fCmXk1tWxEapQZ0c1hAsu8NNqX1MkNit x+mT6eOSzAxWmPBGCyqtv+yz9zWoQZV03XiDqVV6MU3oJxkEiaGTD8bgXCs/YFefNCOT Zjo5P07+SYuMr5caEwUfPNSecduLNmX54qlUrA6HPPKEjMFDvaKmKf54/dX2LAIZ/rgR 7T0FfkoLsqnTCakaIOhg6H7/8ZFTb0rERpAgWb0CWn1VL6IVOX+BaqvuUiOf8jvGQoUq zawg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@goldelico.com header.s=strato-dkim-0002 header.b=CsWmmLRI; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id pb2si3139619pjb.162.2022.02.01.12.15.00; Tue, 01 Feb 2022 12:15:11 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@goldelico.com header.s=strato-dkim-0002 header.b=CsWmmLRI; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1377261AbiAaM1Z (ORCPT + 99 others); Mon, 31 Jan 2022 07:27:25 -0500 Received: from mo4-p02-ob.smtp.rzone.de ([85.215.255.84]:40159 "EHLO mo4-p02-ob.smtp.rzone.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1348469AbiAaM1W (ORCPT ); Mon, 31 Jan 2022 07:27:22 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1643632019; s=strato-dkim-0002; d=goldelico.com; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Cc:Date: From:Subject:Sender; bh=Mkmqidx/oPx8b5KIx4I1UJMvTrD2DJPEkqRTiAlWLI4=; b=CsWmmLRIPzjJ6YdGa38UgOFZcJVrdN5CQ+vuT/6SNxpdIiaZOqqYiPQ6ZJd/pbDhBD 88aDj9f4TpgehyfOZ6BKQBQ/AcU0KLXYlXU++wSsYywUxuHDfGwDmOrPGDNG/vEW0enR ayLex8Ecwp97V+tvgC3OUEDfgbzPeedl7yfhSy74QuiFxMTClR1L4iXdcPztU/neAD+D w9fXJAViZOria+AtKZkwhdCrPdph/VoI1jtXyXEudiJsoN3vVs/pIehmm5HeFQooGxD6 6sjzD8BHJPJz0mkWCIGIOqzO3sUTR2kfKGRAE6tr1rAc5NtnMsYF8gV6+Tcj9O9gtUWI VBdA== Authentication-Results: strato.com; dkim=none X-RZG-AUTH: ":JGIXVUS7cutRB/49FwqZ7WcJeFKiMhflhwDubTJ9o12DNOsPj0lByOdcK1L0" X-RZG-CLASS-ID: mo00 Received: from iMac.fritz.box by smtp.strato.de (RZmta 47.38.0 DYNA|AUTH) with ESMTPSA id j5fc80y0VCQxu8i (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Mon, 31 Jan 2022 13:26:59 +0100 (CET) From: "H. Nikolaus Schaller" To: Paul Cercueil , Rob Herring , Mark Rutland , Thomas Bogendoerfer , "H. Nikolaus Schaller" , Geert Uytterhoeven , Kees Cook , "Eric W. Biederman" , Miquel Raynal , David Airlie , Daniel Vetter , Neil Armstrong , Robert Foss , Laurent Pinchart , Jernej Skrabec , Harry Wentland , Sam Ravnborg , Maxime Ripard , Hans Verkuil , Liam Girdwood , Mark Brown , Paul Boddie , Andrzej Hajda , Kieran Bingham Cc: devicetree@vger.kernel.org, linux-mips@vger.kernel.org, linux-kernel@vger.kernel.org, letux-kernel@openphoenux.org, Jonas Karlman , dri-devel@lists.freedesktop.org Subject: [PATCH v12 1/9] drm/ingenic: prepare ingenic drm for later addition of JZ4780 Date: Mon, 31 Jan 2022 13:26:47 +0100 Message-Id: X-Mailer: git-send-email 2.33.0 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This changes the way the regmap is allocated to prepare for the later addition of the JZ4780 which has more registers and bits than the others. Therefore we make the regmap as big as the reg property in the device tree tells. Suggested-by: Paul Cercueil Signed-off-by: H. Nikolaus Schaller --- drivers/gpu/drm/ingenic/ingenic-drm-drv.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/ingenic/ingenic-drm-drv.c b/drivers/gpu/drm/ingenic/ingenic-drm-drv.c index b4943a56be09b..9c60fc4605e4b 100644 --- a/drivers/gpu/drm/ingenic/ingenic-drm-drv.c +++ b/drivers/gpu/drm/ingenic/ingenic-drm-drv.c @@ -173,7 +173,6 @@ static const struct regmap_config ingenic_drm_regmap_config = { .val_bits = 32, .reg_stride = 4, - .max_register = JZ_REG_LCD_SIZE1, .writeable_reg = ingenic_drm_writeable_reg, }; @@ -1011,6 +1010,8 @@ static int ingenic_drm_bind(struct device *dev, bool has_components) struct ingenic_drm_bridge *ib; struct drm_device *drm; void __iomem *base; + struct resource *res; + struct regmap_config regmap_config; long parent_rate; unsigned int i, clone_mask = 0; int ret, irq; @@ -1056,14 +1057,16 @@ static int ingenic_drm_bind(struct device *dev, bool has_components) drm->mode_config.funcs = &ingenic_drm_mode_config_funcs; drm->mode_config.helper_private = &ingenic_drm_mode_config_helpers; - base = devm_platform_ioremap_resource(pdev, 0); + base = devm_platform_get_and_ioremap_resource(pdev, 0, &res); if (IS_ERR(base)) { dev_err(dev, "Failed to get memory resource\n"); return PTR_ERR(base); } + regmap_config = ingenic_drm_regmap_config; + regmap_config.max_register = res->end - res->start; priv->map = devm_regmap_init_mmio(dev, base, - &ingenic_drm_regmap_config); + ®map_config); if (IS_ERR(priv->map)) { dev_err(dev, "Failed to create regmap\n"); return PTR_ERR(priv->map); -- 2.33.0