Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/clk.h | 1 +
drm/nouveau/nvkm/subdev/clk/base.c| 1 +
2 files changed, 2 insertions(+)
diff --git a/drm/nouveau/include/nvkm/subdev/clk.h
b/drm/nouveau/include/nvkm/subdev/clk.h
index fb54417..6
: the avg clock the gpu will stay boosted to. It doesn't seem to
affect the behaviour of the nvidia driver at all though.
v2: make clear that base/boost/tdp fields are ids
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
Reviewed-by: Martin Peres <martin.pe...@free.fr&
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvif/if0001.h | 15 +
drm/nouveau/nvkm/engine/device/ctrl.c | 59 +++
2 files changed, 74 insertions(+)
diff --git a/drm/nouveau/include/nvif/if0001.h
b/drm/nouveau/i
: boost_mode can now be changed at runtime
minor fixups
Karol Herbst (22):
bios/volt: handle voltage table version 0x50 with 0ed header
volt: properly detect entry based voltage tables
volt: save the voltage range we are able to set
volt: add nvkm_volt_map_min function
clk: don't create cstates
we should never allow to select a cstate which current voltage (depending on
the temperature) is higher than
1. the max volt entries in the voltage map table
2. what tha gpu actually can volt to
this resolves all remaining volting errors on fermi and newer
Signed-off-by: Karol Herbst <n
task for this is to figure out which of these constants are
chip specific and from where to get the chip specific factors
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/nvkm/subdev/volt/base.c | 54 -
1 file changed, 48 insertions
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/clk.h | 1 +
drm/nouveau/nvkm/subdev/clk/base.c| 2 ++
2 files changed, 3 insertions(+)
diff --git a/drm/nouveau/include/nvkm/subdev/clk.h
b/drm/nouveau/include/nvkm/subdev/clk.h
index 99ee05c..6
this is a copy of nvkm_volt_map, which always returns the lowest possible
voltage for a cstate
nvkm_volt_map will get a temperature parameter there later and also fix the
voltage calculation, so that this functions will be completly different in
later commits
Signed-off-by: Karol Herbst <n
this function just forces a reclock. This makes sense if some cstates get
(un)available and we have to adjust to that.
This can happen for various reasons:
* temperature changes
* user changes boost mode
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/
this selects which formula is used to calculate the voltage
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/bios/vmap.h | 2 +-
drm/nouveau/nvkm/subdev/bios/vmap.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drm/n
the voltage entries actually may map to a different voltage depending on the
current temperature.
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
bin/nv_cmp_volt.c | 2 +-
drm/nouveau/include/nvkm/subdev/volt.h | 2 +-
drm/nouveau/nvkm/subdev/volt/base.c
0: base clock from the vbios is max clock
1: boost only to boost clock from the vbios (default)
2: boost to max clock available
v2: moved into nvkm_cstate_valid
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
Reviewed-by: Martin Peres <martin.pe...@free.fr>
---
drm/nouveau/
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
Tested-by: Pierre Moreau <pierre.mor...@free.fr>
---
drm/nouveau/nvkm/subdev/clk/base.c | 4
1 file changed, 4 insertions(+)
diff --git a/drm/nouveau/nvkm/subdev/clk/base.c
b/drm/nouveau/nvkm/subdev/clk/base.c
index 889c
these entries specify a maximum voltage nvidia never exceeds, we shouldn't do
that, too.
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/bios/vmap.h | 2 ++
drm/nouveau/include/nvkm/subdev/volt.h | 2 ++
drm/nouveau/nvkm/subdev/bios/
this tool can be run alongside the nvidia driver to print information about
the current p/cstate, which voltage was set by nvidia and what nouveau would
set in the same situation.
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
bin/nv_cmp_volt.c
if we calculate the voltage in the table right, we get all kinds of values,
which never fit the hardware steps, so we use the closest higher value the
hardware can do
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/nvkm/subdev/volt/base.c | 25 ++
hem to switch cstates
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
Reviewed-by: Martin Peres <martin.pe...@free.fr>
Tested-by: Pierre Moreau <pierre.mor...@free.fr>
---
drm/nouveau/nvkm/subdev/bios/volt.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drm/nouveau/nv
now the cstatei parameter can be used of the nvkm_cstate_prog function to
select a specific cstate
-1 is a magic value, which will always select the highest currently possible
cstate
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/nvkm/subdev/clk/base.c | 12 +
before clocking to a cstate, we have to check if the voltage is within the
allowed range
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/volt.h | 1 +
drm/nouveau/nvkm/subdev/volt/base.c| 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
We shouldn't set voltages below the min or above the max voltage the gpu is
able to set, so save the range
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
Tested-by: Pierre Moreau <pierre.mor...@free.fr>
---
drm/nouveau/include/nvkm/subdev/volt.h | 3 +++
drm/nouveau/nvkm
there is a field in the voltage table which tells us if the VIDs are taken from
the entries or calculated through the header
v2: don't break older versions
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
Reviewed-by: Martin Peres <martin.pe...@free.fr>
Tested-by: Pierre Moreau
min_id indicates a volt map entry which acts as a floor value, this will be
used to set the lower voltage limit through pstates
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/volt.h | 2 +-
drm/nouveau/nvkm/subdev/clk/base.c | 6 --
drm/n
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/nouveau_debugfs.c | 76 +++
1 file changed, 76 insertions(+)
diff --git a/drm/nouveau/nouveau_debugfs.c b/drm/nouveau/nouveau_debugfs.c
index 3d0dc19..31b309f 100644
--- a/drm/n
there is a field in the voltage table which tells us if the VIDs are taken from
the entries or calculated through the header
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/bios/volt.h | 5 +++--
drm/nouveau/nvkm/subdev/bios/volt.c
when we calculate the voltage in the table right, we get all kinds of values,
which never fit the hardware steps, so we use the closest higher value the
hardware can do
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/nvkm/subdev/volt/base.c | 25 ++
this is a copy of nvkm_volt_map, which always returns the lowest possible
voltage for a cstate
nvkm_volt_map will get a temperature parameter there later and also fix the
voltage calculation, so that this functions will be completly different in
later commits
Signed-off-by: Karol Herbst <n
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/nvkm/subdev/clk/base.c | 17 -
1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/drm/nouveau/nvkm/subdev/clk/base.c
b/drm/nouveau/nvkm/subdev/clk/base.c
index 889cce2..4928668 100644
---
there is a field in the voltage table which tells us if the VIDs are taken from
the entries or calculated through the header
v2: don't break older versions
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
Reviewed-by: Martin Peres <martin.pe...@free.fr>
---
drm/nouveau/include
before clocking to a cstate, we have to check if the voltage is within the
allowed range
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/volt.h | 1 +
drm/nouveau/nvkm/subdev/volt/base.c| 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
min_id indicates a volt map entry which acts as a floor value, this will be
used to set the lower voltage limit through pstates
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/volt.h | 2 +-
drm/nouveau/nvkm/subdev/clk/base.c | 6 --
drm/n
we should never allow to select a cstate which current voltage (depending on
the temperature) is higher than
1. the max volt entries in the voltage map table
2. what tha gpu actually can volt to
this resolves most of the remaining volting errors on fermi and newer
Signed-off-by: Karol Herbst
the voltage entries actually may map to a different voltage depending on the
current temperature.
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
bin/nv_cmp_volt.c | 2 +-
drm/nouveau/include/nvkm/subdev/volt.h | 2 +-
drm/nouveau/nvkm/subdev/volt/base.c
this tool can be run alongside the nvidia driver to print information about
the current p/cstate, which voltage was set by nvidia and what nouveau would
set in the same situation.
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
bin/nv_cmp_volt.c
This series fixes most of the issues regarding volting on GPUs with any form
of GPU Boost inside their vbios, which is mainly Kepler and newer, but we find
some boosting related tables in Fermi vbios' already
In the end reclocking should work on most Kepler cards without any issues
Karol Herbst
these entries specify a maximum voltage nvidia never exceeds, we shouldn't do
that, too.
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/bios/vmap.h | 2 ++
drm/nouveau/include/nvkm/subdev/volt.h | 2 ++
drm/nouveau/nvkm/subdev/bios/
: the avg clock the gpu will stay boosted to. It doesn't seem to
affect the behaviour of the nvidia driver at all though.
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/bios/baseclock.h | 24 +++
drm/nouveau/nvkm/subdev/bios/
We shouldn't set voltages below the min or above the max voltage the gpu is
able to set, so save the range
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/volt.h | 3 +++
drm/nouveau/nvkm/subdev/volt/base.c| 14 +-
2 files chang
From: Karol Herbst <g...@karolherbst.de>
now the cstatei parameter can be used of the nvkm_cstate_prog function to
select a specific cstate
-1 is a magic value, which will always select the highest currently possible
cstate
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
hem to switch cstates
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
Reviewed-by: Martin Peres <martin.pe...@free.fr>
---
drm/nouveau/nvkm/subdev/bios/volt.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drm/nouveau/nvkm/subdev/bios/volt.c
b/drm/nouveau/nvkm/subdev/bi
0: base clock from the vbios is max clock
1: boost only to boost clock from the vbios (default)
2: boost to max clock available
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/clk.h | 9 -
drm/nouveau/nvkm/subdev/clk/base.c
this selects which formula is used to calculate the voltage
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/bios/vmap.h | 2 +-
drm/nouveau/nvkm/subdev/bios/vmap.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drm/n
the
entries.
This Series adds two things:
1. It parses the entries
2. It decides upon a field in the voltage table to either use the base+step or
entries approach
This fixes volting on some GPUs
Karol Herbst (2):
bios/volt: handle voltage table version 0x50 with 0ed header
volt: properly detect
From: Karol Herbst <g...@karolherbst.de>
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/clk.h | 1 +
drm/nouveau/nvkm/subdev/clk/base.c| 1 +
2 files changed, 2 insertions(+)
diff --git a/drm/nouveau/include/nvkm/subdev/clk.h
b/drm/nou
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/nvkm/subdev/clk/base.c | 4
1 file changed, 4 insertions(+)
diff --git a/drm/nouveau/nvkm/subdev/clk/base.c
b/drm/nouveau/nvkm/subdev/clk/base.c
index d575412..5b8e1df 100644
--- a/drm/nouveau/nvkm/subdev/clk/base.c
there is a field in the voltage table which tells us if the VIDs are taken from
the entries or calculated through the header
v2: don't break older versions of the table
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/bios/volt.h | 5 +--
drm/n
task for this is to figure out which of these constants are
chip specific and from where to get the chip specific factors
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/nvkm/subdev/volt/base.c | 54 -
1 file changed, 48 insertions
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/nvkm/subdev/fb/gm107.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drm/nouveau/nvkm/subdev/fb/gm107.c
b/drm/nouveau/nvkm/subdev/fb/gm107.c
index 2a91df8..9cc7e61 100644
--- a/drm/nouveau/nvkm/sub
on.
It depends on the PMU fixes for the fuc5 though, otherwise the PMU might not
work as expected and does something stupid.
Karol Herbst (2):
fb: maxwell memory reclocking looks like kepler, so try it out
fb: remove ramgm107
drm/nouveau/nvkm/subdev/fb/Kbuild | 1 -
drm/nouveau/nvkm/subdev/fb
maxwell1 memory recklocking is just as kepler and if there are some tiny
changes we might be able to integrate it in the kepler code.
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/nvkm/subdev/fb/Kbuild | 1 -
drm/nouveau/nvkm/subdev/fb/ram.h | 1 -
drm/n
fault
within the same page twice anymore.
I don't know if I got this right though, so please read this change with
great care
v2: use page_level macros
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
arch/x86/mm/kmmio.c | 89 -
this series fixes the PMU on falcons v5 which fixes memory recklocking on
kepler2 and would also allow us to enable memory recklocking on maxwell
Karol Herbst (4):
pmu/fuc: fix imm32 for gk208+
pmu/fuc: replace mov+sethi with imm32
pmu/fuc: use the call macro instead of using the call
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
Reviewed-by: Martin Peres <martin.pe...@free.fr>
---
drm/nouveau/nvkm/subdev/pmu/fuc/gk208.fuc5.h | 882 +--
drm/nouveau/nvkm/subdev/pmu/fuc/macros.fuc | 2 +-
2 files changed, 442 insertions(+), 4
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
Reviewed-by: Martin Peres <martin.pe...@free.fr>
---
drm/nouveau/nvkm/subdev/pmu/fuc/macros.fuc | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drm/nouveau/nvkm/subdev/pmu/fuc/macros.fuc
b/drm/nouveau/nvk
the macro deals with target specific differences and so we should always use
this
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
Reviewed-by: Martin Peres <martin.pe...@free.fr>
---
drm/nouveau/nvkm/subdev/pmu/fuc/gk208.fuc5.h | 12 ++--
drm/nouveau/nvkm/subdev/pmu/fu
kin wrote:
> > On Tue, Mar 1, 2016 at 4:36 PM, Martin Peres <martin.pe...@free.fr> wrote:
> >> On 26/02/16 17:19, Karol Herbst wrote:
> >>> currently there is no change, because nobody uses those macros yet, but
> >>> they
> >>> shouldn
Hi vignesh,
sorry for the late answer.
Most of the information you need you will find in here:
https://nouveau.freedesktop.org/wiki/
Also I kind of looked into this a bit, so I might be able to help out a little.
I would suggest to you to hang around in
#nouveau on freenode IRC and ask
ause I don't need to reboot
anymore
Nethertheless, we shouldn't use wait_event here, because we can't guarantee any
answere at all, can we?
v2: moved it into a new function
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/nvkm/subdev/pmu
when we start communicating with the pmu a bit more, the current code is a real
issue. I encountered a dead lock here, while testing my dynamic reclocking code
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/nvkm/subdev/pmu/base.c | 8 +---
1 file changed, 5 inse
Both patches should make the communicating with the PMU more stable.
Karol Herbst (2):
pmu: fix queued messages while getting no IRQ
pmu: be more strict about locking
drm/nouveau/nvkm/subdev/pmu/base.c | 49 --
1 file changed, 42 insertions(+), 7
Ohh completly missed that message, ignore the noise I created with my reply then
:)
> Ilia Mirkin hat am 1. März 2016 um 09:56 geschrieben:
>
>
> First, make sure there's a mentor available -- I doubt I'll have time to do
> it, but perhaps someone else will be able to.
>
Hi,
I tried to look into that myself into the so called NVENC engine on my kepler
gpu, but never got to work on that (still on my todo list),
but it would be awesome if somebody else would work on that :)
My first steps were to get nvenc working with ffmpeg (I think the code actually
landed
patch, which can be ran
alongside the nvidia driver to test nouveaus volting code and print the actual
voltage differences nouveau would try to set and what nvidia actually set on
the gpu.
Karol Herbst (9):
bios/volt: handle voltage table version 0x50 with 0ed header
bios/vmap: unk0 field
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/clk.h | 1 +
drm/nouveau/nvkm/subdev/clk/base.c| 1 +
2 files changed, 2 insertions(+)
diff --git a/drm/nouveau/include/nvkm/subdev/clk.h
b/drm/nouveau/include/nvkm/subdev/clk.h
index 6b33bc0..5
We shouldn't set voltages below the min or above the max voltage the gpu is
able to set, so let us store the min and max voltage
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/volt.h | 3 +++
drm/nouveau/nvkm/subdev/volt/base.c
these entries specify a maximum voltage nvidia never exceeds, we shouldn't do
that to after finally fixing volting.
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/bios/vmap.h | 2 ++
drm/nouveau/include/nvkm/subdev/volt.h | 2 ++
drm/nouvea
: the avg clock the gpu will stay boosted to. It doesn't seem to
affect the behaviour of the nvidia driver at all though.
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/bios/baseclock.h | 24 +++
drm/nouveau/nvkm/subdev/bios/
we need this later to see which cstate can be actually used, because the
set voltage for a cstate actually exceed the maximum possible voltage of the
gpu.
We want to know that in the clk subdev so that we do not try to set such a
cstate
Signed-off-by: Karol Herbst <nouv...@karolherbst
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/nvkm/subdev/clk/base.c | 17 -
1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/drm/nouveau/nvkm/subdev/clk/base.c
b/drm/nouveau/nvkm/subdev/clk/base.c
index 0ef371b..0f9b8c5 100644
---
hem to switch cstates
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/nvkm/subdev/bios/volt.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drm/nouveau/nvkm/subdev/bios/volt.c
b/drm/nouveau/nvkm/subdev/bios/volt.c
index 6e0a336..fd2776b 100644
--- a/drm/nou
this selects what affects the voltage and how the constants are used from the
voltage map table entries to calculate the final voltage
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/bios/vmap.h | 2 +-
drm/nouveau/nvkm/subdev/bios/vmap.c
this can be run alongside the nvidia driver and it usefull to actually check
that nouveau would set the right voltage with the same clocks set
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
bin/nv_cmp_volt.c | 112 ++
1 file c
for some reasons these calls don't really go there where they should go
leading to various corruptions of the PMU state
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/nvkm/subdev/pmu/fuc/gk208.fuc5.h | 12 ++--
drm/nouveau/nvkm/subdev/pmu/fuc/kernel.fuc
while trying out my pmu_counter patches on a gk208 gpu, I notived that the pmu
is pretty much screwed up there.
Karol Herbst (4):
pmu/fuc: fix imm32 for gk208+
pmu/fuc: replace mov+sethi with imm32
pmu/fuc: call# seems to be broken on gk208
pmu/fuc: movw is somewhat weird on gk208, use
currently there is no change, because nobody uses those macros yet, but they
shouldn't stay broken
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/nvkm/subdev/pmu/fuc/macros.fuc | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drm/nouveau/nvkm/
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/nvkm/subdev/pmu/fuc/gk208.fuc5.h | 882 +--
drm/nouveau/nvkm/subdev/pmu/fuc/macros.fuc | 2 +-
2 files changed, 442 insertions(+), 442 deletions(-)
diff --git a/drm/nouveau/nvkm/subdev/pmu/fuc
v5: expose only if the sensor reading is valid
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
Reviewed-by: Martin Peres <martin.pe...@free.fr>
---
drm/nouveau/include/nvif/device.h | 1 +
drm/nouveau/nouveau_hwmon.c | 36
2 files
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
Reviewed-by: Martin Peres <martin.pe...@free.fr>
---
drm/nouveau/nvkm/subdev/bios/extdev.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drm/nouveau/nvkm/subdev/bios/extdev.c
b/drm/nouveau/nvkm/subdev/bios/ex
based on Martins initial work
v3: fix ina2x9 calculations
v4: don't kmalloc(0), fix the lsb/pga stuff
v5: add a field to tell if the power reading may be invalid
add nkvm_iccsense_read_all function
check for the device on the i2c bus
move to oneinit
Signed-off-by: Karol Herbst <n
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
Reviewed-by: Martin Peres <martin.pe...@free.fr>
---
drm/nouveau/nouveau_hwmon.c | 39 +++
1 file changed, 19 insertions(+), 20 deletions(-)
diff --git a/drm/nouveau/nouveau_hwmon.c b
nges in v3: fixes ina2x9, rebase on current master
changes in v4: some minor ina2x9 fixes and get it to work on maxwell gen2
changes in v5: final polishing
Tested-by: Stefan Hühner <ste...@huehner.org> on gm206
Karol Herbst (4):
iccsense: implement for ina209, ina219 and ina3221
hwmon: add p
From: Martin Peres <martin.pe...@free.fr>
Karol Herbst:
v4: don't kmalloc(0)
v5: stricter validation
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
Reviewed-by: Martin Peres <martin.pe...@free.fr>
---
drm/nouveau/include/nvkm/subdev/bios/iccsense.h | 16
drm/nouvea
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/nvkm/subdev/bios/extdev.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drm/nouveau/nvkm/subdev/bios/extdev.c
b/drm/nouveau/nvkm/subdev/bios/extdev.c
index c9e6f6f..b857835 100644
--- a/drm/nouvea
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/nouveau_hwmon.c | 39 +++
1 file changed, 19 insertions(+), 20 deletions(-)
diff --git a/drm/nouveau/nouveau_hwmon.c b/drm/nouveau/nouveau_hwmon.c
index c4f77f5..a630192 100644
---
based on Martins initial work
v3: fix ina2x9 calculations
v4: don't kmalloc(0), fix the lsb/pga stuff
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/bios/extdev.h | 3 +
drm/nouveau/include/nvkm/subdev/i2c.h | 31 ++
drm/nouveau/i
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvif/device.h | 1 +
drm/nouveau/nouveau_hwmon.c | 39 +++
2 files changed, 40 insertions(+)
diff --git a/drm/nouveau/include/nvif/device.h
b/drm/nouveau/include/nvif/de
From: Martin Peres <martin.pe...@free.fr>
v4: don't kmalloc(0)
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/bios/iccsense.h | 16
drm/nouveau/nvkm/subdev/bios/Kbuild | 1 +
drm/nouveau/nvkm/subdev/bios/iccsense.c
nges in v3: fixes ina2x9, rebase on current master
changes in v4: some minor ina2x9 fixes and get it to work on maxwell gen2
Tested-by: Stefan Hühner <ste...@huehner.org> on gm206
Karol Herbst (4):
iccsense: implement for ina209, ina219 and ina3221
hwmon: add power consumption
hwmon: don
nges in v3: fixes ina2x9, rebase on current master
Karol Herbst (2):
iccsense: implement for ina209, ina219 and ina3221
hwmon: add power consumption
Martin Peres (2):
subdev/iccsense: add new subdev for power sensors
nvbios/iccsense: add parsing of the SENSE table
drm/nouveau/include/nvi
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvif/device.h | 1 +
drm/nouveau/nouveau_hwmon.c | 39 +++
2 files changed, 40 insertions(+)
diff --git a/drm/nouveau/include/nvif/device.h
b/drm/nouveau/include/nvif/de
based on Martins initial work
v2: fix ina2x9 calculations, add also for gm200
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/bios/extdev.h | 3 +
drm/nouveau/include/nvkm/subdev/i2c.h | 16 +++
drm/nouveau/include/nvkm/subdev/iccs
From: Martin Peres <martin.pe...@free.fr>
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/core/device.h | 83 +--
drm/nouveau/include/nvkm/subdev/iccsense.h | 10 +++
drm/nouveau/nvkm/core/subdev.c | 83 +---
From: Martin Peres <martin.pe...@free.fr>
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/bios/iccsense.h | 16 +
drm/nouveau/nvkm/subdev/bios/Kbuild | 1 +
drm/nouveau/nvkm/subdev/bios/iccsense.c | 95
based on Martins initial work, but heavily reworked
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/bios/extdev.h | 3 +
drm/nouveau/include/nvkm/subdev/i2c.h | 16 +++
drm/nouveau/include/nvkm/subdev/iccsense.h| 5 +
drm/nouvea
From: Martin Peres <martin.pe...@free.fr>
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/core/device.h | 83 +--
drm/nouveau/include/nvkm/subdev/iccsense.h | 10 +++
drm/nouveau/nvkm/core/subdev.c | 83 +---
From: Martin Peres <martin.pe...@free.fr>
v2: add missing fields for proper support (mode and rail)
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/subdev/bios/iccsense.h | 16 +
drm/nouveau/nvkm/subdev/bios/Kbuild | 1 +
drm/
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvif/device.h | 1 +
drm/nouveau/nouveau_hwmon.c | 39 +++
2 files changed, 40 insertions(+)
diff --git a/drm/nouveau/include/nvif/device.h
b/drm/nouveau/include/nvif/de
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvif/device.h | 1 +
drm/nouveau/nouveau_hwmon.c | 30 ++
2 files changed, 31 insertions(+)
diff --git a/drm/nouveau/include/nvif/device.h
b/drm/nouveau/include/nvif/device.h
. If not, please report to either of us.
Thanks
Karol Herbst (1):
hwmon: add power consumption
Martin Peres (1):
power sensor support
drm/nouveau/include/nvif/device.h | 1 +
drm/nouveau/include/nvkm/core/device.h | 83 +++---
drm/nouveau/include/nvkm/subdev/bios/extdev.h
From: Martin Peres <martin.pe...@free.fr>
v2 (Karol Herbst <nouv...@karolherbst.de>):
fix power_rail mapping for ina3221
minor code cleanups
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/include/nvkm/core/device.h | 83 +++---
d
v2: read and reset counters faster
Signed-off-by: Karol Herbst <nouv...@karolherbst.de>
---
drm/nouveau/nvkm/subdev/pmu/fuc/gf100.fuc3.h | 411 +--
drm/nouveau/nvkm/subdev/pmu/fuc/gf119.fuc4.h | 745 +++
drm/nouveau/nvkm/subdev/pmu/fuc/gk104.fuc4.h
901 - 1000 of 1119 matches
Mail list logo