From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Google-Smtp-Source: AH8x225vvVA7tw1iBXKZTQ4r1hjIDtAshwC4BIu4St+K3H10mnOEv6Xrk+KczqEzJGvJ/4FshwE4 ARC-Seal: i=1; a=rsa-sha256; t=1517000437; cv=none; d=google.com; s=arc-20160816; b=b7xzzle+2TA7Yldio7KbMvSBYOWpWNX2J1Wzo4e1yjgX6taIuM4qVCukhQ4Ec6V4VS N6yAbstIuBMCG7tl/NSBgrysM9eH72iRHOyEHS/ZqW6a7RPhRk3QVhxp3YrGffwbeFzy /aUr3557VJVpsthcY3Db7HRjjsRr+Rb74RpuWmVpv7Ryd9vX20Elg7jl71HwZmKD55uW Q1Th+ITV2stdfj8Tszo/aqk6wvV65r+wXZXqEwVpKexgxZAkS/Qto0euGAEFs873bIkn fwd1KCshOdkz2qR4CCjbMknPMLqxPulsqrNR0pr5ICQNNR4zaNEkjF6cyw2R3HPQCZVr z7FQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=message-id:date:subject:cc:to:from:arc-authentication-results; bh=h28iQMyFnyyND681/FevGP7I7Uwbhggg7TLuN5ufj9Y=; b=b7ZxDCh1dACNaHAI9q0RRPXFAw+py7b+MxVbs6vW0o7+3wdO4eVvSxKjghnIKATfSG vidmaR2kVC2MGPZP0KH9UK7u7IF99fG5MjRgAlTt2qM0s49KMYaquuquASorrvV7qS8d Yes8Rc5MAEvCLAYJcCkutZaSLrtq5CpaL49cZ3FH+XY88uUbFNtQSdvVzIw7+bCIgG0S wDYWisDVyqTJ7CaLjVfI/HgRoPPclb8PF3Tu/VLhYB4cYQz/kzkS1RWc4qU0muL9wGCS rfEY7wuwZvtwC5dkd7LB8rp2KTCwxCL7IxeuDIAd7JhHxvGC37MHK0tQA7vnbgwc7MPG DEag== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of lyude@redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=lyude@redhat.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Authentication-Results: mx.google.com; spf=pass (google.com: domain of lyude@redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=lyude@redhat.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com 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-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: =?utf-8?q?1590690251527829204?= X-GMAIL-MSGID: =?utf-8?q?1590690251527829204?= X-Mailing-List: linux-kernel@vger.kernel.org List-ID: 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