Received: by 10.223.176.46 with SMTP id f43csp1164015wra; Fri, 26 Jan 2018 13:01:14 -0800 (PST) X-Google-Smtp-Source: AH8x226yAu9AVbqR3bsYXZFAhl2HABiVCyoumiX5vT1Sk4UhhX5FoeKfR6XkfVzm8wqVgUYFFUD3 X-Received: by 2002:a17:902:9005:: with SMTP id a5-v6mr15130259plp.251.1517000474403; Fri, 26 Jan 2018 13:01:14 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1517000474; cv=none; d=google.com; s=arc-20160816; b=BMPeERsJH8+hll8gN4ELBFHPYGif2huWm7b/91mGo9t1PIYk1oWOl4/cogEEm9mECo 3a3JA3M9TcljY6h4BgFVuUUbvt1TgZ6I8RqvQoOmi6WrZ8GaqoytseEY+rZHQH3zhOzG MrCEKayAUBq7DC6qVOxbDXcouWEjRRRN0QvWcBHsv/8qWZKTOiFGB39vCwBuIkN9SMUf VCcpPzZNdO5o99On7CdpQ9nICUPtkP8IGI7EyqFIETRSgIK6vtQHSIBVeSzMLgrclVUU qxN1aKw+bLFJf8Lc51IRTZNnCb+FSCc3F/7CEn3/Qg6YDsnRubvWu0BqoJwTL4giOh3T /Uyg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :arc-authentication-results; bh=h28iQMyFnyyND681/FevGP7I7Uwbhggg7TLuN5ufj9Y=; b=cRdSMi+FUJKo4yZjuLARVENNfoo9tx7Sjhvpmpt4c7bD71KFSJZLrxrDeXLRRQMjrc P+rXcQ2qFm2Gw+0ZVmEcgpSz1+hwaEDJHdWVLZ6CDIO0FARctCzE8Ir5sEgNkRaBJLE8 P7X8T4Q0MoyQWO2DW7SH3RAKmnbyy3MvwwD3T2N00S4dORxzUcFQN46jyUU7pCnHJm5p ACRJMudYngHTo9ANREPDZLoP15HBZmmyZqHgXoWCuMBr7tHEM12zmmho41CALnLdeQtA v0SX/zMUckeGit9hl0tmdiFiPebPUDKAJpOliJ5LZHP8Yu8SRtVg5PWycTsBow5+Ijm1 rsMg== 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id v8-v6si4213395plg.673.2018.01.26.13.00.59; Fri, 26 Jan 2018 13:01:14 -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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752007AbeAZVAi (ORCPT + 99 others); Fri, 26 Jan 2018 16:00:38 -0500 Received: from mx1.redhat.com ([209.132.183.28]:37714 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751560AbeAZVAh (ORCPT ); Fri, 26 Jan 2018 16:00:37 -0500 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 00B5361295; Fri, 26 Jan 2018 21:00:37 +0000 (UTC) Received: from whitewolf.lyude.net.com (ovpn-123-233.rdu2.redhat.com [10.10.123.233]) by smtp.corp.redhat.com (Postfix) with ESMTP id 18BA95457C; Fri, 26 Jan 2018 21:00:29 +0000 (UTC) From: Lyude Paul To: nouveau@lists.freedesktop.org Cc: "Alexandre Courbot" , "David Airlie" , "Rhys Kidd" , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, "Karol Herbst" , "Ben Skeggs" , "Ilia Mirkin" , "Kate Stewart" , "Martin Peres" , "Greg Kroah-Hartman" , "Lyude Paul" , "Thomas Gleixner" , "Philippe Ombredanne" Subject: [RFC v3 0/4] Implement full clockgating for Kepler1 and 2 Date: Fri, 26 Jan 2018 15:59:12 -0500 Message-Id: <20180126210013.29190-1-lyude@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.30]); Fri, 26 Jan 2018 21:00:37 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Next version of my patchseries for adding clockgating support for kepler1 and 2 on nouveau. The first version of this series can be found here: https://patchwork.freedesktop.org/series/36504/ Some very important changes: - Fix gf100_clkgate_init() to actually write registers! This got broken in the last version by accident - Dump the register packs and the resulting register writes into nvkm_trace() in gf100_clkgate_init() so we can make sure this doesn't happen again And some more minor changes: - Make all SLCG/BLCG mmiopacks for kepler2 static Additionally, I just discovered that these patches have a higher chance of crashing your card if you reclock under load. However, reclocking under load has never been supported by nouveau in the first place and has always caused trouble so that's nothing new :). Reclocking while not under load with powergating works A-OK. Lyude Paul (4): drm/nouveau: Add support for basic clockgating on Kepler1 drm/nouveau: Add support for BLCG on Kepler1 drm/nouveau: Add support for BLCG on Kepler2 drm/nouveau: Add support for SLCG for Kepler2 drivers/gpu/drm/nouveau/include/nvkm/subdev/fb.h | 1 + .../gpu/drm/nouveau/include/nvkm/subdev/therm.h | 17 ++ drivers/gpu/drm/nouveau/nvkm/engine/device/base.c | 25 +-- drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.h | 1 + drivers/gpu/drm/nouveau/nvkm/engine/gr/gk104.c | 207 +++++++++++++++++++++ drivers/gpu/drm/nouveau/nvkm/engine/gr/gk104.h | 55 ++++++ drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110.c | 155 +++++++++++++++ drivers/gpu/drm/nouveau/nvkm/subdev/fb/Kbuild | 1 + drivers/gpu/drm/nouveau/nvkm/subdev/fb/gf100.c | 6 + drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk104.c | 47 +++++ drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk104.h | 35 ++++ drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk110.c | 71 +++++++ drivers/gpu/drm/nouveau/nvkm/subdev/fb/priv.h | 2 + drivers/gpu/drm/nouveau/nvkm/subdev/therm/Kbuild | 2 + drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c | 70 ++++++- drivers/gpu/drm/nouveau/nvkm/subdev/therm/gf100.c | 75 ++++++++ drivers/gpu/drm/nouveau/nvkm/subdev/therm/gf100.h | 35 ++++ drivers/gpu/drm/nouveau/nvkm/subdev/therm/gf119.c | 8 +- drivers/gpu/drm/nouveau/nvkm/subdev/therm/gk104.c | 136 ++++++++++++++ drivers/gpu/drm/nouveau/nvkm/subdev/therm/gk104.h | 48 +++++ drivers/gpu/drm/nouveau/nvkm/subdev/therm/gt215.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/therm/priv.h | 23 ++- 22 files changed, 996 insertions(+), 26 deletions(-) create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/gk104.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk104.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk110.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/therm/gf100.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/therm/gf100.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/therm/gk104.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/therm/gk104.h -- 2.14.3