History log of /drivers/gpu/drm/nouveau/nouveau_pm.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
095f979a539245a46b9e5d600ec9c720b4d928e5 10-Jan-2012 Dave Airlie <airlied@redhat.com> drm/nouveau/pm: fix build with HWMON off

Reported-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: Dave Airlie <airlied@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
a0b25635515ef5049f93b032a1e37f18b16e0f6f 21-Nov-2011 Ben Skeggs <bskeggs@redhat.com> drm/nouveau/gpio: reimplement as nouveau_gpio.c, fixing a number of issues

- moves out of nouveau_bios.c and demagics the logical state definitions
- simplifies chipset-specific driver interface
- makes most of gpio irq handling common, will use for nv4x hpd later
- api extended to allow both direct gpio access, and access using the
logical function states
- api extended to allow for future use of gpio extender chips
- pre-nv50 was handled very badly, the main issue being that all GPIOs
were being treated as output-only.
- fixes nvd0 so gpio changes actually stick, magic reg needs bashing

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
675aac033e089833e763ea4fbabae66883d10574 21-Nov-2011 Ben Skeggs <bskeggs@redhat.com> drm/nouveau: just pass gpio line to pwm_*, not entire gpio struct

We don't need more than the line id to determine the PWM controller, and
the GPIO interfaces are about to change somewhat.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
d2edab4acffb35a6e24259886d377774efd37e6e 10-Nov-2011 Ben Skeggs <bskeggs@redhat.com> drm/nouveau/pm: fix missing volt changes when boot voltage is undefined

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
0b627a0b23404d97d1720c0c1abaee602aee9518 26-Oct-2011 Ben Skeggs <bskeggs@redhat.com> drm/nouveau/pm: change volt/fan before upclock, but after downclock

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
ff2b6c6e587cf2add3071b3a9a5c61abbbaf4677 27-Oct-2011 Ben Skeggs <bskeggs@redhat.com> drm/nouveau/pm: remove the older interfaces completely

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
d4cca9e1fccb9f7804ddfbbc2aebff7be23faa1e 06-Oct-2011 Martin Peres <martin.peres@ensi-bourges.fr> drm/nv50/pm: s/PLL_UNK05/PLL_VDEC/

Following to "drm/nv50/pm: s/unk05/vdec/", let's rename the PLL to PLL_VDEC

PLL names are purely indicative and are based on the most important engine
it clocks.

Signed-off-by: Martin Peres <martin.peres@labri.fr>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
35bb5089cc74e6d64cf0171b55c93e1bf8b8198d 27-Sep-2011 Ben Skeggs <bskeggs@redhat.com> drm/nv50/pm: s/unk05/vdec/

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
1e05415733b0d4668fbce92856fafabfa1a33333 16-Sep-2011 Ben Skeggs <bskeggs@redhat.com> drm/nouveau/pm: remove defunct fanspeed_set/get from pm table

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
a175094cd8f3d46060d8e3510bdca57eb2369a86 16-Sep-2011 Ben Skeggs <bskeggs@redhat.com> drm/nouveau/pm: introduce generic handler for on-chip fan controller

The handling of the internal pwm fan controller is similar enough between
current chipsets that it makes sense to share the logic, and bugfixes :)

No hw backends converted yet, will automatically fall-through to the
"old" per-chipset fanspeed hooks for now.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
11b7d895216f7f954c6cfa0c23b76dccb7a890c1 15-Aug-2011 Martin Peres <martin.peres@ensi-bourges.fr> drm/nouveau/pm: manual pwm fanspeed management for nv40+ boards

Exposes the following sysfs entries:
- fan0_input: read the rotational speed of the fan (poll a bit during 250ms)
- pwm0: set the pwm duty cycle
- pwm0_min/max: set the minimum/maximum pwm value

v2 (Ben Skeggs):
- nv50 pwm controller code removed in favour of other more complete code
- FAN_RPM -> FAN_SENSE
- merged FAN_SENSE readout into common code, not at all nv50-specific
- protected fanspeed changes with perflvl_wr
- formatting tidying
- added some comments where things are shaky

v3 (Martin Peres)
- ensure duty min/max from thermal table are sane

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Signed-off-by: Martin Peres <martin.peres@ensi-bourges.fr>
/drivers/gpu/drm/nouveau/nouveau_pm.c
cb9fa62671ace5ac40b9924e9014cebf04b78228 13-Aug-2011 Ben Skeggs <bskeggs@redhat.com> drm/nv50/pm: add support for pwm fan control

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
771e1035b9bfdb0c3f0e34bd281d73b721a10adb 28-Jul-2011 Ben Skeggs <bskeggs@redhat.com> drm/nouveau/pm: hook up fanspeed get/set if they're present

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
658e86ee2db9500aea529a04008cce10972416bc 03-Jul-2011 Ken Milmore <ken.milmore@googlemail.com> drm/nouveau: enable hwmon support when both nouveau/hwmon are built as modules.

The nouveau hwmon temperature support currently only functions when hwmon is
compiled into the kernel. There's no reason why this shouldn't also work when
both hwmon and nouveau are modularised (as is the case with Slackware's stock
kernels).

Signed-off-by: Ken Milmore <ken.milmore@googlemail.com>
Reviewed-by: Martin Peres <martin.peres@ensi-bourges.fr>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
77e7da6814623927cc4435d992bef9c84075594c 17-Jun-2011 Ben Skeggs <bskeggs@redhat.com> drm/nouveau/pm: add hooks to get/set *all* clocks at once

This is probably better than having to tell the common code about all the
clocks that exist on every chipset.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
da1dc4cfecdf314241cc5e0c5df1f66b4cc80cc7 09-Jun-2011 Ben Skeggs <bskeggs@redhat.com> drm/nouveau/pm: allow voltage-only perflvl set, enable nvc0

Okay, my card didn't blow up. Lets turn it on!

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
93dccbedeb2280ca2c234530236b950b232afa65 09-Jun-2011 Ben Skeggs <bskeggs@redhat.com> drm/nouveau/pm: show any info we can manage to glean on current perflvl

Previously wouldn't show detected voltage if we couldn't figure out the
clock frequencies..

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
3b5565ddfd8fe71f6470a5d240a6bb50ba90d4ff 09-Jun-2011 Ben Skeggs <bskeggs@redhat.com> drm/nouveau/pm: add support for parsing perflvl voltage on fermi chips

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
c3450239c78a4ef6c10da13dfc18831f43dbe0c5 09-Jun-2011 Ben Skeggs <bskeggs@redhat.com> drm/nouveau/pm: store voltage in microvolts

Instead of 10s of millivolts, to match fermi vbios.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
e614b2e7ca9f9946cede13b34c950b92af6fa7ef 14-Apr-2011 Martin Peres <martin.peres@free.fr> drm/nouveau: Associate memtimings with performance levels on cards <= nv98

v2 (Ben Skeggs): fix ramcfg strap, and remove bogus handling of perf 0x40

Signed-off-by: Martin Peres <martin.peres@ensi-bourges.fr>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
1f962797fb1343f02cbacb94d80c4560d47b67a9 12-Apr-2011 Martin Peres <martin.peres@free.fr> drm/nouveau/pm: fix compilation failure when CONFIG_POWER_SUPPLY is not set

Signed-off-by: Martin Peres <martin.peres@ensi-bourges.fr>
Reported-by: Stratos Psomadakis <psomas@ece.ntua.gr>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
01e542c65de11a47e726ebef63f5e59b4a74568d 19-Mar-2011 Martin Peres <martin.peres@ensi-bourges.fr> drm/nouveau: name the boot perflvl "boot"

Signed-off-by: Martin Peres <martin.peres@ensi-bourges.fr>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
317495b25ec1f0beb0dbac8ee0dfec59a1addf03 17-Feb-2011 Ben Skeggs <bskeggs@redhat.com> drm/nouveau: fix suspend/resume on GPUs that don't have PM support

This has been broken since 2.6.37, and fixes resume on a couple of fermi
boards I have access to.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
8c06a3e02062a9beb71a9444c49fb0fbcaa1eed3 30-Jan-2011 Lucas Stach <dev@lynxeye.de> drm/nouveau: correctly pair hwmon_init and hwmon_fini

I broke this with my commit
07cfe0e7a820ecad078c04e9c2a102521709145d

This fixes fdo #33434

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
07cfe0e7a820ecad078c04e9c2a102521709145d 06-Jan-2011 Lucas Stach <dev@lynxeye.de> drm/nouveau: fix hwmon device binding

Bind the hwmon structs to nouveau device kobj. This makes sure
the hwmon files are created in the device subdir in line with
all other hwmon drivers.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
6032649df9f456f379be8d51f64488cacbfa8317 11-Oct-2010 Ben Skeggs <bskeggs@redhat.com> drm/nouveau: hook up acpi power supply change tracking

Not used at all yet, but lets hook it up now anyway.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
b54262f3c828ee17e27632d0d60255281c02e1a5 26-Oct-2010 Martin Peres <martin.peres@ensi-bourges.fr> drm/nouveau: Fix compilation issues in nouveau_pm when CONFIG_HWMON is not set

Signed-off-by: Martin Peres <martin.peres@ensi-bourges.fr>
Signed-off-by: Francisco Jerez <currojerez@riseup.net>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
5c6dc6575460a0afe56d8cae7666e769e08ef942 27-Sep-2010 Ben Skeggs <bskeggs@redhat.com> drm/nouveau: pass perflvl struct to clock_pre()

On certain boards, there's BIOS scripts and memory timings that need to
be modified with the memclk. Just pass in the entire perflvl struct and
let the chipset-specific code decide what to do.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
7760fcb020b41352af4e675ce65a6aa0e93c170f 17-Sep-2010 Roy Spliet <r.spliet@student.tudelft.nl> drm/nouveau: Import initial memory timing work

This isn't correct everywhere yet, but since we don't use the data yet
it's perfectly safe to push in, and the information we gain from logs
will help to fix the remaining issues.

v2 (Ben Skeggs <bskeggs@redhat.com>):
- fixed up formatting
- free parsed timing info on takedown
- switched timing table printout to debug loglevel

Signed-off-by: Roy Spliet <r.spliet@student.tudelft.nl>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
5c4abd09bdefb41d0c80055aa9d98433624ce1f0 23-Sep-2010 Francisco Jerez <currojerez@riseup.net> drm/nouveau: Misc cleanup of the PM code.

Signed-off-by: Francisco Jerez <currojerez@riseup.net>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
8155cac489eb8cc6fd96b9bdefacdf5a56e6ea32 23-Sep-2010 Francisco Jerez <currojerez@riseup.net> drm/nouveau: Refactor nouveau_temp_get() into engine pointers.

Signed-off-by: Francisco Jerez <currojerez@riseup.net>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
34e9d85a1aae28b090ec4e72a0f98a5483c198c4 22-Sep-2010 Martin Peres <martin.peres@ensi-bourges.fr> drm/nouveau: Add temperature support (vbios parsing, readings, hwmon)

Signed-off-by: Martin Peres <martin.peres@ensi-bourges.fr>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
0fbb114af7ea63227599460c412fb8796556a169 20-Sep-2010 Francisco Jerez <currojerez@riseup.net> drm/nouveau: Parse old style perf tables.

Used on nv17-nv28, they contain memory clocks and timings, only one of
the table entries can actually be used, depending on the RAMCFG
straps, and it's usually higher than the frequency programmed on boot
by the BIOS.

The memory timings listed in table version 0x1x are used to init the
0x12xx range but they aren't required for reclocking to work.

Signed-off-by: Francisco Jerez <currojerez@riseup.net>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
64f1c11a477cb76e1572ee0793234739e045b3d5 17-Sep-2010 Ben Skeggs <bskeggs@redhat.com> drm/nouveau: restore perflvl on resume, and restore boot perflvl on unload

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
6f876986bedf23b40ab707543e88fae7eac27f1f 16-Sep-2010 Ben Skeggs <bskeggs@redhat.com> drm/nouveau: allow static performance level setting

Guarded by a module parameter for the moment, read the code for the
magic value which enables it.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c
330c5988ee78045e6a731c3693251aaa5b0d14e3 16-Sep-2010 Ben Skeggs <bskeggs@redhat.com> drm/nouveau: import initial work on vbios performance table parsing

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
/drivers/gpu/drm/nouveau/nouveau_pm.c