Received: by 2002:ac0:a679:0:0:0:0:0 with SMTP id p54csp7352imp; Wed, 20 Feb 2019 13:05:08 -0800 (PST) X-Google-Smtp-Source: AHgI3IbDqeC2AX4/Ks8vGDj2iRCSfExxpzX+lC9hrsYLBn9hStt5UpwBZoQeakqJTNjpcAw1WJRZ X-Received: by 2002:a63:fc62:: with SMTP id r34mr6804462pgk.154.1550696708700; Wed, 20 Feb 2019 13:05:08 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1550696708; cv=none; d=google.com; s=arc-20160816; b=sOZVVXX+s2DNYy3JOM84NdIiGl02ZL4C72Reave9J4C/Aa/u07GLJNU56lFoNUPDQz 87mP8kLdGZvo9rvht76HEB6El7eCAilxuxqW7ai+aL6w7PUsY9crKfZyxU40htXKWU7/ WKdbHwUHixftFoZoy11o8YxSurbHsszigOHMR29N1ZuCMO6x2SOHwqoGx74fR8dnkEC+ HWbK6xVjT9CtXxG5CXeTo5t3xRjP55nSAc7K3gFxx4zKLtYIRxP6hgd1EkJpX91iCItn 18KOJ+H9HDdA98IomyKtLnJM3S/ncCj1zJmOsj8DErTKRMQF05daVRaUwKY5cfW0yi+j Pq5w== 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=kYfm3Qe4QiKpOcb7RG7pHoeeQ2FAU4VeLa7MOIOo4lE=; b=TmA7CZtIj/ZRFzssdifvE6HWHA0DoOypfpiH2fgNuHEekpwfWYPe9BGAyRYVEHllKe uzO8QXdW5UCnavP9IKpk2/PiB6rywBSsjcHm0YrylDF/q3VHpZqiN/+ooT+TwEU6CRa5 +msO+3GEO72KBE+sYLc5NmzJrwC9Vi8w3wonVkX8GWTpAc/E5WK0a9Fy2wiwr/FqfADP BX/3wNtw/lh5NUOhPQHZ4MMN6XRok9IKWy8FgQGtoBs37O5MFSdLUZ2MXFDjf8JM9QCN +zu/e1FEVZqUu0byox1G3cjbvLwIOUg1B5Hs7S32u7fEGXVaLHwmVZ8iD4Vc0ay3CsM3 wcuA== 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 24si2122113pfr.253.2019.02.20.13.04.53; Wed, 20 Feb 2019 13:05:08 -0800 (PST) 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 S1727272AbfBTVD7 (ORCPT + 99 others); Wed, 20 Feb 2019 16:03:59 -0500 Received: from anholt.net ([50.246.234.109]:51864 "EHLO anholt.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727210AbfBTVD6 (ORCPT ); Wed, 20 Feb 2019 16:03:58 -0500 Received: from localhost (localhost [127.0.0.1]) by anholt.net (Postfix) with ESMTP id D3AB210A2D1A; Wed, 20 Feb 2019 13:03:57 -0800 (PST) X-Virus-Scanned: Debian amavisd-new at anholt.net Received: from anholt.net ([127.0.0.1]) by localhost (kingsolver.anholt.net [127.0.0.1]) (amavisd-new, port 10024) with LMTP id ZQ9ZlQHux-l3; Wed, 20 Feb 2019 13:03:56 -0800 (PST) Received: from eliezer.anholt.net (localhost [127.0.0.1]) by anholt.net (Postfix) with ESMTP id 2A71510A2D25; Wed, 20 Feb 2019 13:03:46 -0800 (PST) Received: by eliezer.anholt.net (Postfix, from userid 1000) id AE2FB2FE4652; Wed, 20 Feb 2019 13:03:43 -0800 (PST) From: Eric Anholt To: dri-devel@lists.freedesktop.org Cc: linux-kernel@vger.kernel.org, Paul Kocialkowski , Maxime Ripard , Eric Anholt Subject: [PATCH 7/7] drm/vc4: Make sure that the v3d ident debugfs has vc4's power on. Date: Wed, 20 Feb 2019 13:03:43 -0800 Message-Id: <20190220210343.28157-7-eric@anholt.net> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190220210343.28157-1-eric@anholt.net> References: <20190220210343.28157-1-eric@anholt.net> 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 Otherwise, you sometimes decode the ident fields based on 0xdeadbeef register reads. Signed-off-by: Eric Anholt --- drivers/gpu/drm/vc4/vc4_v3d.c | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/drivers/gpu/drm/vc4/vc4_v3d.c b/drivers/gpu/drm/vc4/vc4_v3d.c index 7820b8eaaa98..36e6c7086ecf 100644 --- a/drivers/gpu/drm/vc4/vc4_v3d.c +++ b/drivers/gpu/drm/vc4/vc4_v3d.c @@ -108,18 +108,23 @@ static int vc4_v3d_debugfs_ident(struct seq_file *m, void *unused) struct drm_info_node *node = (struct drm_info_node *)m->private; struct drm_device *dev = node->minor->dev; struct vc4_dev *vc4 = to_vc4_dev(dev); - uint32_t ident1 = V3D_READ(V3D_IDENT1); - uint32_t nslc = VC4_GET_FIELD(ident1, V3D_IDENT1_NSLC); - uint32_t tups = VC4_GET_FIELD(ident1, V3D_IDENT1_TUPS); - uint32_t qups = VC4_GET_FIELD(ident1, V3D_IDENT1_QUPS); - - seq_printf(m, "Revision: %d\n", - VC4_GET_FIELD(ident1, V3D_IDENT1_REV)); - seq_printf(m, "Slices: %d\n", nslc); - seq_printf(m, "TMUs: %d\n", nslc * tups); - seq_printf(m, "QPUs: %d\n", nslc * qups); - seq_printf(m, "Semaphores: %d\n", - VC4_GET_FIELD(ident1, V3D_IDENT1_NSEM)); + int ret = vc4_v3d_pm_get(vc4); + + if (ret == 0) { + uint32_t ident1 = V3D_READ(V3D_IDENT1); + uint32_t nslc = VC4_GET_FIELD(ident1, V3D_IDENT1_NSLC); + uint32_t tups = VC4_GET_FIELD(ident1, V3D_IDENT1_TUPS); + uint32_t qups = VC4_GET_FIELD(ident1, V3D_IDENT1_QUPS); + + seq_printf(m, "Revision: %d\n", + VC4_GET_FIELD(ident1, V3D_IDENT1_REV)); + seq_printf(m, "Slices: %d\n", nslc); + seq_printf(m, "TMUs: %d\n", nslc * tups); + seq_printf(m, "QPUs: %d\n", nslc * qups); + seq_printf(m, "Semaphores: %d\n", + VC4_GET_FIELD(ident1, V3D_IDENT1_NSEM)); + vc4_v3d_pm_put(vc4); + } return 0; } -- 2.20.1