From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.6 required=3.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id C470AC3A59F for ; Thu, 29 Aug 2019 22:20:39 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 90FDE2166E for ; Thu, 29 Aug 2019 22:20:39 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="uaZ8sJLG"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="HSvB2BBt" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 90FDE2166E Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=RESVKA57JqNYJzSRk7gLguX4OhjzO+UTMnQWm/ro/fo=; b=uaZ8sJLGXoDn7/ /oJUduY2DYpmxNTlkjAMjCd2g3ZZHNlPPOKOA29wFbNCsKuHMxSfP/woeOsBfeHRwADA6OLCulZhc NB+QYRT7YOUql8wT58z16egyJ8TZsQa07/yr90KuITXOtihL0O2TDj3WfrQY+IOkNgW2Il000Z9tO ajsQuzx2KceW5AU9pm5Hg0j5nM7RrRKkHUn9GyZal0U3P/u/5qcIb9lZfxlOI9S2enOkguqIlmFAa NU5SDq7XxzKZHweiJMXj1FJu90RpNTEYrc3CuKNIgWQeEZOVXWAeXq7gplaRuvSvH8pNl/WdC/uxd wF/PhQWCDCz6bIVVq3JA==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92 #3 (Red Hat Linux)) id 1i3SmP-0007em-KQ; Thu, 29 Aug 2019 22:20:33 +0000 Received: from mail-ed1-x544.google.com ([2a00:1450:4864:20::544]) by bombadil.infradead.org with esmtps (Exim 4.92 #3 (Red Hat Linux)) id 1i3SlK-0005P2-8C for linux-arm-kernel@lists.infradead.org; Thu, 29 Aug 2019 22:19:27 +0000 Received: by mail-ed1-x544.google.com with SMTP id l26so5139412edr.0 for ; Thu, 29 Aug 2019 15:19:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=AQPujerQOkg9j+eRABYeA6b+a5Y23tZKqHKGuL35Zl4=; b=HSvB2BBtVOdt5kXjFyEVz0MRhkImsE381IcFy+pMc5QLazoLSIaM7H4MflY5BU0ebe jelt53n20erCnBOi3CkFxAvMrTNfxknk5SPJTN8zVmfoBwXj6/U8weEvcY0tKBhyy6JF KR9MNb4u8jZKyHPSmlucSmMpKfnkDHCTN6+xoyfCmnZ3pIGm2pLhGH/mHAzvKFiSqDYQ anN0nbPPQKnYY1bTHGlwnAGvZpviry2kkf6ZSBIO+b5BuuNm2WOV3JTNmpy1acu+zIoa sJKFFV2OVE+U1FMhYA8Yny5TtvolzmosjxPg4CQH12aEhVkVby/RP0va9c8wDRacB8qW KI3w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=AQPujerQOkg9j+eRABYeA6b+a5Y23tZKqHKGuL35Zl4=; b=PkNwHvUF5Gfdkt+TgJM/Bg/fSeTKHE7q4Ans5r3/9jUje2EIKQ8dBXB0M9sVgPysFi eLSW0vpgLua4Jz16o7nQIzPTnNX8T/sKl/tisVIWIh1ycent1Gwg/aCubJLFKOcx73Sg qy1lgw6MR6LUdDG6+mRpozKy0FDBIrv+tZfAQ+nvRjeLfcK+lvfP9dVU3n0Iya9kKiI3 We6AVCtvOVHcxIwL1Kx9PNOykjj5ndgKiGPj119M/oGOjlLl0YCUmFsrjPGVi3vvpCqk rw6/UJv0V/jKd2+Wzwz+OUEFfwihH6dfQPkUCpbDP1HFBX5oaRA9FtjEzJp+2Tu/ysp/ lt8Q== X-Gm-Message-State: APjAAAV1AdA0qXBdA5luWsUDxFFACDm09yUoX+Ljra+pNa0vgDtBoOlX +h45/heqZEffMV4JGo3OxRo= X-Google-Smtp-Source: APXvYqyd8/Pk9UTGjdgAsiT+fJninnrmPTpt8q83YCbdhH4aR8r52P0DdFr+KHFOfnqv3B0vSFBhLg== X-Received: by 2002:a17:906:1cce:: with SMTP id i14mr10505321ejh.7.1567117164939; Thu, 29 Aug 2019 15:19:24 -0700 (PDT) Received: from localhost (pD9E51890.dip0.t-ipconnect.de. [217.229.24.144]) by smtp.gmail.com with ESMTPSA id bq18sm440804ejb.84.2019.08.29.15.19.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Aug 2019 15:19:24 -0700 (PDT) From: Thierry Reding To: Thierry Reding Subject: [PATCH 5/7] drm/nouveau: tegra: Use nvmem API Date: Fri, 30 Aug 2019 00:19:09 +0200 Message-Id: <20190829221911.24876-6-thierry.reding@gmail.com> X-Mailer: git-send-email 2.22.0 In-Reply-To: <20190829221911.24876-1-thierry.reding@gmail.com> References: <20190829221911.24876-1-thierry.reding@gmail.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190829_151926_324856_716CFBDB X-CRM114-Status: GOOD ( 12.28 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-tegra@vger.kernel.org, Nagarjuna Kristam , linux-arm-kernel@lists.infradead.org, Jon Hunter Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org From: Thierry Reding Instead of using the custom Tegra FUSE API to read the calibration fuse for the clock on GM20B, use the nvmem API. This makes the dependency between the two devices more explicit and decouples the driver from one another. Signed-off-by: Thierry Reding --- drivers/gpu/drm/nouveau/nvkm/subdev/clk/gm20b.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/clk/gm20b.c b/drivers/gpu/drm/nouveau/nvkm/subdev/clk/gm20b.c index b284e949f732..096a8b4b9bb5 100644 --- a/drivers/gpu/drm/nouveau/nvkm/subdev/clk/gm20b.c +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/clk/gm20b.c @@ -20,6 +20,8 @@ * DEALINGS IN THE SOFTWARE. */ +#include + #include #include #include @@ -929,7 +931,6 @@ gm20b_clk_new_speedo0(struct nvkm_device *device, int index, } /* FUSE register */ -#define FUSE_RESERVED_CALIB0 0x204 #define FUSE_RESERVED_CALIB0_INTERCEPT_FRAC_SHIFT 0 #define FUSE_RESERVED_CALIB0_INTERCEPT_FRAC_WIDTH 4 #define FUSE_RESERVED_CALIB0_INTERCEPT_INT_SHIFT 4 @@ -945,14 +946,17 @@ static int gm20b_clk_init_fused_params(struct gm20b_clk *clk) { struct nvkm_subdev *subdev = &clk->base.base.subdev; + struct nvkm_device *device = subdev->device; u32 val = 0; u32 rev = 0; + int ret; + + ret = nvmem_cell_read_u32(device->dev, "calibration", &val); + if (ret < 0) + return ret; -#if IS_ENABLED(CONFIG_ARCH_TEGRA) - tegra_fuse_readl(FUSE_RESERVED_CALIB0, &val); rev = (val >> FUSE_RESERVED_CALIB0_FUSE_REV_SHIFT) & MASK(FUSE_RESERVED_CALIB0_FUSE_REV_WIDTH); -#endif /* No fused parameters, we will calibrate later */ if (rev == 0) -- 2.22.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel