* [pull] radeon drm-next-3.11
@ 2013-06-28 0:15 alexdeucher
0 siblings, 0 replies; 12+ messages in thread
From: alexdeucher @ 2013-06-28 0:15 UTC (permalink / raw)
To: dri-devel, airlied; +Cc: Alex Deucher
From: Alex Deucher <alexander.deucher@amd.com>
Hi Dave,
This is the pull request for radeon for 3.11. Highlights include:
- Support for CIK (Sea Islands) asics: 3D, compute, UVD
- DPM (Dynamic Power Management) support for 6xx-SI
- ASPM support for 6xx-SI
- Assorted bug fixes
DPM is disabled by default for now until it gets further testing. DPM
on 6xx and NI asics are still a bit problematic, but other asic families
are generally working well. You can enable DPM by setting the dpm module
parameter to 1.
The following changes since commit 9b1be4dc02bb6b9761fbd8927c1750d75ddd2a8c:
drm/radeon: fix UVD on big endian (2013-06-12 08:17:21 -0400)
are available in the git repository at:
git://people.freedesktop.org/~agd5f/linux drm-next-3.11
Alex Deucher (166):
drm/radeon: fix AVI infoframe generation
drm/radeon: add backlight quirk for hybrid mac
drm/radeon: add a reset work handler
drm/radeon: add CIK chip families
drm/radeon: add DCE8 macro for CIK
drm/radeon: adapt to PCI BAR changes on CIK
drm/radeon: add gpu init support for CIK (v9)
drm/radeon: Add support for CIK GPU reset (v2)
drm/radeon: add support for MC/VM setup on CIK (v6)
drm/radeon/cik: stop page faults from hanging the system (v2)
drm/radeon: add initial ucode loading for CIK (v5)
drm/radeon: add support mc ucode loading on CIK (v2)
drm/radeon: Add CP init for CIK (v7)
drm/radeon: add IB and fence dispatch functions for CIK gfx (v7)
drm/radeon: add ring and IB tests for CIK (v3)
drm/radeon: implement async vm_flush for the CP (v7)
drm/radeon: Add support for RLC init on CIK (v4)
drm/radeon: add support for interrupts on CIK (v5)
drm/radeon/cik: log and handle VM page fault interrupts
drm/radeon/cik: add support for sDMA dma engines (v8)
drm/radeon: implement async vm_flush for the sDMA (v6)
drm/radeon/cik: add support for doing async VM pt updates (v5)
drm/radeon/cik: fill in startup/shutdown callbacks (v5)
drm/radeon: upstream ObjectID.h updates (v2)
drm/radeon: upstream atombios.h updates (v2)
drm/radeon: atombios power table updates (v2)
drm/radeon: handle the integrated thermal controller on CI
drm/radeon: update power state parsing for CI
drm/radeon/dce8: add support for display watermark setup
drm/radeon/cik: add hw cursor support (v2)
drm/radeon/dce8: properly handle interlaced timing
drm/radeon/dce8: crtc_set_base updates
drm/radeon/atom: add DCE8 encoder support
drm/radeon/atom: add support for new DVO tables
drm/radeon: update DISPCLK programming for DCE8
drm/radeon: add support pll selection for DCE8 (v4)
drm/radeon: Handle PPLL0 powerdown on DCE8
drm/radeon: use frac fb div on DCE8
drm/radeon: add SS override support for KB/KV
drm/radeon: Update radeon_info_ioctl for CIK (v2)
drm/radeon: add get_gpu_clock_counter() callback for cik
drm/radeon: update CIK soft reset
drm/radeon: add indirect register accessors for SMC registers
drm/radeon: add get_xclk() callback for CIK
drm/radeon/cik: add pcie_port indirect register accessors
drm/radeon: update radeon_atom_get_clock_dividers() for SI
drm/radeon: update radeon_atom_get_clock_dividers for CIK
drm/radeon/cik: add srbm_select function
drm/radeon: use callbacks for ring pointer handling (v3)
drm/radeon: implement simple doorbell page allocator
drm/radeon/cik: Add support for compute queues (v4)
drm/radeon/cik: switch to type3 nop packet for compute rings (v2)
drm/radeon: fix up ring functions for compute rings
drm/radeon/cik: add support for compute interrupts
drm/radeon/cik: add support for golden register init
drm/radeon: add radeon_asic struct for CIK (v12)
drm/radeon: add cik tile mode array query
drm/radeon: add current Bonaire PCI ids
drm/radeon: add current KB pci ids
drm/radeon/kms: add accessors for RCU indirect space
drm/radeon/evergreen: add indirect register accessors for CG registers
drm/radeon: make get_temperature functions a callback
drm/radeon: add support for thermal sensor on tn
drm/radeon/kms: move ucode defines to a separate header
drm/radeon: properly set up the RLC on ON/LN/TN (v3)
drm/radeon/kms: add atom helper functions for dpm (v3)
drm/radeon/kms: add new asic struct for rv6xx (v4)
drm/radeon/kms: add common dpm infrastructure
drm/radeon/kms: fix up rs780/rs880 display watermark calc for dpm
drm/radeon/kms: fix up 6xx/7xx display watermark calc for dpm
drm/radeon/kms: fix up dce4/5 display watermark calc for dpm
drm/radeon/kms: fix up dce6 display watermark calc for dpm
drm/radeon/kms: add common r600 dpm functions
drm/radeon/kms: add dpm support for rs780/rs880
drm/radeon/kms: add dpm support for rv6xx (v3)
drm/radeon/kms: add dpm support for rv7xx (v4)
drm/radeon/kms: add dpm support for evergreen (v4)
drm/radeon/kms: add dpm support for btc (v3)
drm/radeon/kms: add dpm support for sumo asics (v2)
drm/radeon/kms: add dpm support for trinity asics
drm/radeon/dpm: let atom control display phy powergating
drm/radeon: add dpm UVD handling for r7xx asics
drm/radeon: add dpm UVD handling for evergreen/btc asics
drm/radeon: add dpm UVD handling for sumo asics
drm/radeon: add dpm UVD handling for TN asics (v2)
drm/radeon/kms: enable UVD as needed (v9)
drm/radeon/dpm: add helpers for extended power tables (v2)
drm/radeon/dpm: track whether we are on AC or battery
drm/radeon/dpm: fixup dynamic state adjust for sumo
drm/radeon/dpm: fixup dynamic state adjust for TN
drm/radeon/dpm: fixup dynamic state adjust for btc (v2)
drm/radeon/kms: add dpm support for cayman (v5)
drm/radeon/dpm/rs780: restructure code
drm/radeon/dpm/rv6xx: restructure code
drm/radeon/dpm/rv7xx: restructure code
drm/radeon/dpm/evergreen: restructure code
drm/radeon/dpm/btc: restructure code
drm/radeon/dpm/cayman: restructure code
drm/radeon/dpm/sumo: restructure code
drm/radeon/dpm/tn: restructure code
drm/radeon/dpm: add new pre/post_set_power_state callbacks
drm/radeon/dpm: add pre/post_set_power_state callbacks (6xx-eg)
drm/radeon/dpm: add pre/post_set_power_state callback (sumo)
drm/radeon/dpm: add pre/post_set_power_state callback (TN)
drm/radeon/dpm: add pre/post_set_power_state callback (BTC)
drm/radeon/dpm: add pre/post_set_power_state callback (cayman)
drm/radeon/dpm: remove broken dyn state remnants
drm/radeon: add missing UVD clock set in cayman dpm code
drm/radeon/dpm: remove local sumo_get_xclk()
drm/radeon: implement apci perf request
drm/radeon/atom: add helper to calcuate mpll params
drm/radeon: update radeon_atom_is_voltage_gpio() for SI
drm/radeon: update radeon_atom_get_voltage_table() for SI
drm/radeon: implement pcie gen2/3 support for SI
drm/radeon: add accessors of pif_phy indirect register space
drm/radeon: add support for ASPM on evergreen asics
drm/radeon: add support for ASPM on SI asics (v2)
drm/radeon: enable additional power gating features on trinity
drm/radeon: update rlc programming sequence on SI
drm/radeon: add atom get leakage vddc function
drm/radeon: add indirect accessors for UVD CTX registers
drm/radeon: initialize save/restore buffer for pg on verde
drm/radeon: add clearstate init for verde power gating
drm/radeon: implement clock and power gating for SI
drm/radeon/dpm: add an enum for pcie gen selection
drm/radeon/dpm: pull in phase shedding limits from atom
drm/radeon/dpm: endian fixes for extended power tables
drm/radeon/dpm: pull in ppm info from atom
drm/radeon/dpm: save some display parameters for DPM
drm/radeon: minor sid.h cleanup
drm: add some additional fixed point helpers (v3)
drm/radeon/dpm/cayman: use new fixed point functions (v2)
drm/radeon: fix some memory leaks in extended table parsing
drm/radeon/dpm: validate voltages against dispclk requirements
drm/radeon: update radeon_atombios_get_default_voltages for mvdd
drm/radeon/dpm: add pcie gen helper function
drm/radeon: fix typo in atom voltage table handling (6xx-ni)
drm/radeon: fix typo in atom voltage table handling (si+)
drm/radeon/atom: fix voltage table parsing
drm/radeon/dpm/ni: properly catch errors in dpm setup
drm/radeon/dpm/btc: properly catch errors in dpm setup
drm/radeon/dpm/evergreen: properly catch errors in dpm setup
drm/radeon/dpm/sumo: properly catch errors in dpm setup
drm/radeon/dpm/trinity: properly catch errors in dpm setup
drm/radeon/dpm/r7xx: properly catch errors in dpm setup
drm/radeon/dpm/r6xx: properly catch errors in dpm setup
drm/radeon/dpm/rs780: properly catch errors in dpm setup
drm/radeon: add SI to r600_is_internal_thermal_sensor()
drm/radeon: switch SI to use radeon_ucode.h
drm/radeon/kms: add dpm support for SI (v7)
drm/radeon/dpm: add dpm_enable failure output (7xx-ni)
drm/radeon/dpm: add dpm_enable failure output (si)
drm/radeon/dpm: add dpm_set_power_state failure output (7xx-ni)
add dpm_set_power_state failure output (7xx-ni)
drm/radeon/dpm: add dpm_set_power_state failure output (si)
drm/radeon/dpm: fix typo in setting uvd clock
drm/radeon/si: fix typo in function name
drm/radeon: fix typo in cik_select_se_sh()
drm/radeon: fix typo in ni_print_power_state
drm/radeon/dpm: add support for setting UVD clock on rs780
drm/radeon/dpm: add support for setting UVD clock on rv6xx
drm/radeon/dpm: fix UVD clock setting on cayman
drm/radeon/dpm: fix UVD clock setting on SI
drm/radeon: fix endian issues in atombios dpm code
drm/radeon/NI: fix TDP adjustment in set_power_state
drm/radeon/SI: fix TDP adjustment in set_power_state
Christian König (1):
drm/radeon: add UVD support for CIK (v3)
drivers/gpu/drm/radeon/Makefile | 5 +-
drivers/gpu/drm/radeon/ObjectID.h | 40 +
drivers/gpu/drm/radeon/atombios.h | 547 ++-
drivers/gpu/drm/radeon/atombios_crtc.c | 88 +-
drivers/gpu/drm/radeon/atombios_encoders.c | 51 +-
drivers/gpu/drm/radeon/btc_dpm.c | 2740 ++++++++++
drivers/gpu/drm/radeon/btc_dpm.h | 57 +
drivers/gpu/drm/radeon/btcd.h | 181 +
drivers/gpu/drm/radeon/cik.c | 6987 +++++++++++++++++++++++++
drivers/gpu/drm/radeon/cik_blit_shaders.c | 246 +
drivers/gpu/drm/radeon/cik_blit_shaders.h | 32 +
drivers/gpu/drm/radeon/cik_reg.h | 147 +
drivers/gpu/drm/radeon/cikd.h | 1297 +++++
drivers/gpu/drm/radeon/clearstate_cayman.h | 1081 ++++
drivers/gpu/drm/radeon/clearstate_defs.h | 44 +
drivers/gpu/drm/radeon/clearstate_evergreen.h | 1080 ++++
drivers/gpu/drm/radeon/clearstate_si.h | 941 ++++
drivers/gpu/drm/radeon/cypress_dpm.c | 2176 ++++++++
drivers/gpu/drm/radeon/cypress_dpm.h | 160 +
drivers/gpu/drm/radeon/evergreen.c | 644 +++-
drivers/gpu/drm/radeon/evergreen_hdmi.c | 11 +-
drivers/gpu/drm/radeon/evergreen_reg.h | 12 +
drivers/gpu/drm/radeon/evergreen_smc.h | 67 +
drivers/gpu/drm/radeon/evergreend.h | 389 ++-
drivers/gpu/drm/radeon/ni.c | 198 +-
drivers/gpu/drm/radeon/ni_dpm.c | 4316 +++++++++++++++
drivers/gpu/drm/radeon/ni_dpm.h | 248 +
drivers/gpu/drm/radeon/nid.h | 561 ++
drivers/gpu/drm/radeon/nislands_smc.h | 329 ++
drivers/gpu/drm/radeon/ppsmc.h | 113 +
drivers/gpu/drm/radeon/r600.c | 147 +-
drivers/gpu/drm/radeon/r600_dpm.c | 1024 ++++
drivers/gpu/drm/radeon/r600_dpm.h | 226 +
drivers/gpu/drm/radeon/r600_hdmi.c | 11 +-
drivers/gpu/drm/radeon/r600_reg.h | 6 +
drivers/gpu/drm/radeon/r600d.h | 232 +-
drivers/gpu/drm/radeon/radeon.h | 519 ++-
drivers/gpu/drm/radeon/radeon_acpi.c | 145 +
drivers/gpu/drm/radeon/radeon_asic.c | 698 +++-
drivers/gpu/drm/radeon/radeon_asic.h | 178 +
drivers/gpu/drm/radeon/radeon_atombios.c | 880 +++-
drivers/gpu/drm/radeon/radeon_cs.c | 1 +
drivers/gpu/drm/radeon/radeon_cursor.c | 10 +-
drivers/gpu/drm/radeon/radeon_device.c | 106 +-
drivers/gpu/drm/radeon/radeon_display.c | 21 +-
drivers/gpu/drm/radeon/radeon_drv.c | 7 +-
drivers/gpu/drm/radeon/radeon_family.h | 3 +
drivers/gpu/drm/radeon/radeon_irq_kms.c | 20 +
drivers/gpu/drm/radeon/radeon_kms.c | 41 +-
drivers/gpu/drm/radeon/radeon_mode.h | 93 +
drivers/gpu/drm/radeon/radeon_pm.c | 607 ++-
drivers/gpu/drm/radeon/radeon_reg.h | 1 +
drivers/gpu/drm/radeon/radeon_ring.c | 51 +-
drivers/gpu/drm/radeon/radeon_ucode.h | 129 +
drivers/gpu/drm/radeon/radeon_uvd.c | 32 +-
drivers/gpu/drm/radeon/rs690.c | 291 +-
drivers/gpu/drm/radeon/rs780_dpm.c | 963 ++++
drivers/gpu/drm/radeon/rs780_dpm.h | 109 +
drivers/gpu/drm/radeon/rs780d.h | 168 +
drivers/gpu/drm/radeon/rv515.c | 224 +-
drivers/gpu/drm/radeon/rv6xx_dpm.c | 2059 ++++++++
drivers/gpu/drm/radeon/rv6xx_dpm.h | 95 +
drivers/gpu/drm/radeon/rv6xxd.h | 246 +
drivers/gpu/drm/radeon/rv730_dpm.c | 508 ++
drivers/gpu/drm/radeon/rv730d.h | 165 +
drivers/gpu/drm/radeon/rv740_dpm.c | 416 ++
drivers/gpu/drm/radeon/rv740d.h | 117 +
drivers/gpu/drm/radeon/rv770_dpm.c | 2462 +++++++++
drivers/gpu/drm/radeon/rv770_dpm.h | 288 +
drivers/gpu/drm/radeon/rv770_smc.c | 621 +++
drivers/gpu/drm/radeon/rv770_smc.h | 209 +
drivers/gpu/drm/radeon/rv770d.h | 279 +-
drivers/gpu/drm/radeon/si.c | 1337 +++++-
drivers/gpu/drm/radeon/si_dpm.c | 6387 ++++++++++++++++++++++
drivers/gpu/drm/radeon/si_dpm.h | 227 +
drivers/gpu/drm/radeon/si_smc.c | 284 +
drivers/gpu/drm/radeon/sid.h | 599 ++-
drivers/gpu/drm/radeon/sislands_smc.h | 397 ++
drivers/gpu/drm/radeon/sumo_dpm.c | 1801 +++++++
drivers/gpu/drm/radeon/sumo_dpm.h | 220 +
drivers/gpu/drm/radeon/sumo_smc.c | 222 +
drivers/gpu/drm/radeon/sumod.h | 372 ++
drivers/gpu/drm/radeon/trinity_dpm.c | 1887 +++++++
drivers/gpu/drm/radeon/trinity_dpm.h | 131 +
drivers/gpu/drm/radeon/trinity_smc.c | 115 +
drivers/gpu/drm/radeon/trinityd.h | 228 +
include/drm/drm_fixed.h | 94 +
include/drm/drm_pciids.h | 24 +
88 files changed, 52960 insertions(+), 561 deletions(-)
create mode 100644 drivers/gpu/drm/radeon/btc_dpm.c
create mode 100644 drivers/gpu/drm/radeon/btc_dpm.h
create mode 100644 drivers/gpu/drm/radeon/btcd.h
create mode 100644 drivers/gpu/drm/radeon/cik.c
create mode 100644 drivers/gpu/drm/radeon/cik_blit_shaders.c
create mode 100644 drivers/gpu/drm/radeon/cik_blit_shaders.h
create mode 100644 drivers/gpu/drm/radeon/cik_reg.h
create mode 100644 drivers/gpu/drm/radeon/cikd.h
create mode 100644 drivers/gpu/drm/radeon/clearstate_cayman.h
create mode 100644 drivers/gpu/drm/radeon/clearstate_defs.h
create mode 100644 drivers/gpu/drm/radeon/clearstate_evergreen.h
create mode 100644 drivers/gpu/drm/radeon/clearstate_si.h
create mode 100644 drivers/gpu/drm/radeon/cypress_dpm.c
create mode 100644 drivers/gpu/drm/radeon/cypress_dpm.h
create mode 100644 drivers/gpu/drm/radeon/evergreen_smc.h
create mode 100644 drivers/gpu/drm/radeon/ni_dpm.c
create mode 100644 drivers/gpu/drm/radeon/ni_dpm.h
create mode 100644 drivers/gpu/drm/radeon/nislands_smc.h
create mode 100644 drivers/gpu/drm/radeon/ppsmc.h
create mode 100644 drivers/gpu/drm/radeon/r600_dpm.c
create mode 100644 drivers/gpu/drm/radeon/r600_dpm.h
create mode 100644 drivers/gpu/drm/radeon/radeon_ucode.h
create mode 100644 drivers/gpu/drm/radeon/rs780_dpm.c
create mode 100644 drivers/gpu/drm/radeon/rs780_dpm.h
create mode 100644 drivers/gpu/drm/radeon/rs780d.h
create mode 100644 drivers/gpu/drm/radeon/rv6xx_dpm.c
create mode 100644 drivers/gpu/drm/radeon/rv6xx_dpm.h
create mode 100644 drivers/gpu/drm/radeon/rv6xxd.h
create mode 100644 drivers/gpu/drm/radeon/rv730_dpm.c
create mode 100644 drivers/gpu/drm/radeon/rv730d.h
create mode 100644 drivers/gpu/drm/radeon/rv740_dpm.c
create mode 100644 drivers/gpu/drm/radeon/rv740d.h
create mode 100644 drivers/gpu/drm/radeon/rv770_dpm.c
create mode 100644 drivers/gpu/drm/radeon/rv770_dpm.h
create mode 100644 drivers/gpu/drm/radeon/rv770_smc.c
create mode 100644 drivers/gpu/drm/radeon/rv770_smc.h
create mode 100644 drivers/gpu/drm/radeon/si_dpm.c
create mode 100644 drivers/gpu/drm/radeon/si_dpm.h
create mode 100644 drivers/gpu/drm/radeon/si_smc.c
create mode 100644 drivers/gpu/drm/radeon/sislands_smc.h
create mode 100644 drivers/gpu/drm/radeon/sumo_dpm.c
create mode 100644 drivers/gpu/drm/radeon/sumo_dpm.h
create mode 100644 drivers/gpu/drm/radeon/sumo_smc.c
create mode 100644 drivers/gpu/drm/radeon/sumod.h
create mode 100644 drivers/gpu/drm/radeon/trinity_dpm.c
create mode 100644 drivers/gpu/drm/radeon/trinity_dpm.h
create mode 100644 drivers/gpu/drm/radeon/trinity_smc.c
create mode 100644 drivers/gpu/drm/radeon/trinityd.h
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 12+ messages in thread
* [pull] radeon drm-next-3.11
@ 2013-07-01 21:01 alexdeucher
2013-07-01 21:57 ` Markus Trippelsdorf
2013-07-03 6:39 ` Ruslan N. Marchenko
0 siblings, 2 replies; 12+ messages in thread
From: alexdeucher @ 2013-07-01 21:01 UTC (permalink / raw)
To: dri-devel, airlied; +Cc: Alex Deucher
From: Alex Deucher <alexander.deucher@amd.com>
Hi Dave,
A few more patches for 3.11:
- add debugfs interface to check current DPM state
- Fix a bug that caused problems with DPM on BTC+ asics.
The following changes since commit f7d452f4fd5d86f764807a1234a407deb5b105ef:
Merge branch 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-next (2013-07-01 14:10:20 +1000)
are available in the git repository at:
git://people.freedesktop.org/~agd5f/linux drm-next-3.11
Alex Deucher (12):
drm/radeon: remove sumo dpm/uvd bringup leftovers
drm/radeon/atom: fix endian bug in radeon_atom_init_mc_reg_table()
drm/radeon: fix typo in radeon_atom_init_mc_reg_table()
drm/radeon/dpm: re-enable state transitions for BTC
drm/radeon/dpm: re-enable state transitions for Cayman
drm/radeon/dpm: add infrastructure to support debugfs info
drm/radeon/dpm: add debugfs support for rv6xx
drm/radeon/dpm: add debugfs support for 7xx/evergreen/btc
drm/radeon/dpm: add debugfs support for ON/LN
drm/radeon/dpm: add debugfs support for TN
drm/radeon/dpm: add debugfs support for cayman
drm/radeon/dpm: add debugfs support for SI
drivers/gpu/drm/radeon/btc_dpm.c | 3 --
drivers/gpu/drm/radeon/ni_dpm.c | 25 +++++++++++++---
drivers/gpu/drm/radeon/nid.h | 4 ++
drivers/gpu/drm/radeon/radeon.h | 2 +
drivers/gpu/drm/radeon/radeon_asic.c | 8 +++++
drivers/gpu/drm/radeon/radeon_asic.h | 12 ++++++++
drivers/gpu/drm/radeon/radeon_atombios.c | 3 +-
drivers/gpu/drm/radeon/radeon_pm.c | 40 ++++++++++++++++++--------
drivers/gpu/drm/radeon/rv6xx_dpm.c | 25 ++++++++++++++++
drivers/gpu/drm/radeon/rv770_dpm.c | 30 ++++++++++++++++++++
drivers/gpu/drm/radeon/rv770d.h | 4 ++
drivers/gpu/drm/radeon/si_dpm.c | 19 ++++++++++++
drivers/gpu/drm/radeon/sid.h | 4 ++
drivers/gpu/drm/radeon/sumo_dpm.c | 45 ++++++++++++++++++-----------
drivers/gpu/drm/radeon/trinity_dpm.c | 21 ++++++++++++++
15 files changed, 206 insertions(+), 39 deletions(-)
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [pull] radeon drm-next-3.11
2013-07-01 21:01 alexdeucher
@ 2013-07-01 21:57 ` Markus Trippelsdorf
2013-07-01 22:04 ` Deucher, Alexander
2013-07-03 6:39 ` Ruslan N. Marchenko
1 sibling, 1 reply; 12+ messages in thread
From: Markus Trippelsdorf @ 2013-07-01 21:57 UTC (permalink / raw)
To: alexdeucher; +Cc: Alex Deucher, dri-devel
On 2013.07.01 at 17:01 -0400, alexdeucher@gmail.com wrote:
> From: Alex Deucher <alexander.deucher@amd.com>
>
> Hi Dave,
>
> A few more patches for 3.11:
> - add debugfs interface to check current DPM state
> - Fix a bug that caused problems with DPM on BTC+ asics.
>
> The following changes since commit f7d452f4fd5d86f764807a1234a407deb5b105ef:
>
> Merge branch 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-next (2013-07-01 14:10:20 +1000)
>
> are available in the git repository at:
>
> git://people.freedesktop.org/~agd5f/linux drm-next-3.11
>
> Alex Deucher (12):
> drm/radeon: remove sumo dpm/uvd bringup leftovers
> drm/radeon/atom: fix endian bug in radeon_atom_init_mc_reg_table()
> drm/radeon: fix typo in radeon_atom_init_mc_reg_table()
> drm/radeon/dpm: re-enable state transitions for BTC
> drm/radeon/dpm: re-enable state transitions for Cayman
> drm/radeon/dpm: add infrastructure to support debugfs info
> drm/radeon/dpm: add debugfs support for rv6xx
> drm/radeon/dpm: add debugfs support for 7xx/evergreen/btc
Looks like you forgot to add debugfs support for rs780:
diff --git a/drivers/gpu/drm/radeon/radeon_asic.c b/drivers/gpu/drm/radeon/radeon_asic.c
index a5b244d..ca4f928 100644
--- a/drivers/gpu/drm/radeon/radeon_asic.c
+++ b/drivers/gpu/drm/radeon/radeon_asic.c
@@ -1270,6 +1270,7 @@ static struct radeon_asic rs780_asic = {
.get_sclk = &rs780_dpm_get_sclk,
.get_mclk = &rs780_dpm_get_mclk,
.print_power_state = &rs780_dpm_print_power_state,
+ .debugfs_print_current_performance_level = &rv770_dpm_debugfs_print_current_performance_level,
},
.pflip = {
.pre_page_flip = &rs600_pre_page_flip,
--
Markus
^ permalink raw reply related [flat|nested] 12+ messages in thread
* RE: [pull] radeon drm-next-3.11
2013-07-01 21:57 ` Markus Trippelsdorf
@ 2013-07-01 22:04 ` Deucher, Alexander
0 siblings, 0 replies; 12+ messages in thread
From: Deucher, Alexander @ 2013-07-01 22:04 UTC (permalink / raw)
To: Markus Trippelsdorf, alexdeucher@gmail.com
Cc: dri-devel@lists.freedesktop.org
> -----Original Message-----
> From: Markus Trippelsdorf [mailto:markus@trippelsdorf.de]
> Sent: Monday, July 01, 2013 5:58 PM
> To: alexdeucher@gmail.com
> Cc: dri-devel@lists.freedesktop.org; airlied@gmail.com; Deucher, Alexander
> Subject: Re: [pull] radeon drm-next-3.11
>
> On 2013.07.01 at 17:01 -0400, alexdeucher@gmail.com wrote:
> > From: Alex Deucher <alexander.deucher@amd.com>
> >
> > Hi Dave,
> >
> > A few more patches for 3.11:
> > - add debugfs interface to check current DPM state
> > - Fix a bug that caused problems with DPM on BTC+ asics.
> >
> > The following changes since commit
> f7d452f4fd5d86f764807a1234a407deb5b105ef:
> >
> > Merge branch 'drm-nouveau-next' of
> git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-next (2013-07-
> 01 14:10:20 +1000)
> >
> > are available in the git repository at:
> >
> > git://people.freedesktop.org/~agd5f/linux drm-next-3.11
> >
> > Alex Deucher (12):
> > drm/radeon: remove sumo dpm/uvd bringup leftovers
> > drm/radeon/atom: fix endian bug in radeon_atom_init_mc_reg_table()
> > drm/radeon: fix typo in radeon_atom_init_mc_reg_table()
> > drm/radeon/dpm: re-enable state transitions for BTC
> > drm/radeon/dpm: re-enable state transitions for Cayman
> > drm/radeon/dpm: add infrastructure to support debugfs info
> > drm/radeon/dpm: add debugfs support for rv6xx
> > drm/radeon/dpm: add debugfs support for 7xx/evergreen/btc
>
> Looks like you forgot to add debugfs support for rs780:
>
> diff --git a/drivers/gpu/drm/radeon/radeon_asic.c
> b/drivers/gpu/drm/radeon/radeon_asic.c
> index a5b244d..ca4f928 100644
> --- a/drivers/gpu/drm/radeon/radeon_asic.c
> +++ b/drivers/gpu/drm/radeon/radeon_asic.c
> @@ -1270,6 +1270,7 @@ static struct radeon_asic rs780_asic = {
> .get_sclk = &rs780_dpm_get_sclk,
> .get_mclk = &rs780_dpm_get_mclk,
> .print_power_state = &rs780_dpm_print_power_state,
> + .debugfs_print_current_performance_level =
> &rv770_dpm_debugfs_print_current_performance_level,
> },
> .pflip = {
> .pre_page_flip = &rs600_pre_page_flip,
>
Rs780 doesn't have a convenient way to look up the current power state so it's not implemented yet. The method used on the other asics does not work for rs780.
Alex
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [pull] radeon drm-next-3.11
2013-07-01 21:01 alexdeucher
2013-07-01 21:57 ` Markus Trippelsdorf
@ 2013-07-03 6:39 ` Ruslan N. Marchenko
2013-07-03 13:23 ` Alex Deucher
1 sibling, 1 reply; 12+ messages in thread
From: Ruslan N. Marchenko @ 2013-07-03 6:39 UTC (permalink / raw)
To: alexdeucher; +Cc: Alex Deucher, dri-devel
Am 01.07.2013 23:01, schrieb alexdeucher@gmail.com:
> From: Alex Deucher<alexander.deucher@amd.com>
>
> Hi Dave,
>
> A few more patches for 3.11:
> - add debugfs interface to check current DPM state
> - Fix a bug that caused problems with DPM on BTC+ asics.
>
> The following changes since commit f7d452f4fd5d86f764807a1234a407deb5b105ef:
>
> Merge branch 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-next (2013-07-01 14:10:20 +1000)
>
> are available in the git repository at:
>
> git://people.freedesktop.org/~agd5f/linux drm-next-3.11
>
> Alex Deucher (12):
> drm/radeon: remove sumo dpm/uvd bringup leftovers
> drm/radeon/atom: fix endian bug in radeon_atom_init_mc_reg_table()
> drm/radeon: fix typo in radeon_atom_init_mc_reg_table()
> drm/radeon/dpm: re-enable state transitions for BTC
> drm/radeon/dpm: re-enable state transitions for Cayman
> drm/radeon/dpm: add infrastructure to support debugfs info
> drm/radeon/dpm: add debugfs support for rv6xx
> drm/radeon/dpm: add debugfs support for 7xx/evergreen/btc
> drm/radeon/dpm: add debugfs support for ON/LN
> drm/radeon/dpm: add debugfs support for TN
> drm/radeon/dpm: add debugfs support for cayman
> drm/radeon/dpm: add debugfs support for SI
>
> drivers/gpu/drm/radeon/btc_dpm.c | 3 --
> drivers/gpu/drm/radeon/ni_dpm.c | 25 +++++++++++++---
> drivers/gpu/drm/radeon/nid.h | 4 ++
> drivers/gpu/drm/radeon/radeon.h | 2 +
> drivers/gpu/drm/radeon/radeon_asic.c | 8 +++++
> drivers/gpu/drm/radeon/radeon_asic.h | 12 ++++++++
> drivers/gpu/drm/radeon/radeon_atombios.c | 3 +-
> drivers/gpu/drm/radeon/radeon_pm.c | 40 ++++++++++++++++++--------
> drivers/gpu/drm/radeon/rv6xx_dpm.c | 25 ++++++++++++++++
> drivers/gpu/drm/radeon/rv770_dpm.c | 30 ++++++++++++++++++++
> drivers/gpu/drm/radeon/rv770d.h | 4 ++
> drivers/gpu/drm/radeon/si_dpm.c | 19 ++++++++++++
> drivers/gpu/drm/radeon/sid.h | 4 ++
> drivers/gpu/drm/radeon/sumo_dpm.c | 45 ++++++++++++++++++-----------
> drivers/gpu/drm/radeon/trinity_dpm.c | 21 ++++++++++++++
> 15 files changed, 206 insertions(+), 39 deletions(-)
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/dri-devel
>
This is really excellent and very wanted addition to the radeon, a huge
thanks Alex for giving a second life to my old TimelineX with hybrid
AMD/Intel graphics. Intel ironlake became a bit outdated already but
with ATi HD 5650 I was able to drink tee all day long since it never
came lower than 90 degrees Celsius. Now it comfortably sits at 55-60
so I can use it back again.
As I noticed it supports now either dynpm or profile method of clocking,
however profiles themselves also have several (3) power states. Also
during init phase it writes that it switching from boot to performance
profile - so what exactly is the difference between dpm and profile
method? Will dynpm react to ACPI events like lid closed or AC offline or
I better to add calls to acpid event handlers to tweak the profiles/methods?
In any case it's just a new breath to my relict brick, especially now
when its successor is at service repair :)
--
Looking forward to reading yours...
Ruslan N. Marchenko
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [pull] radeon drm-next-3.11
2013-07-03 6:39 ` Ruslan N. Marchenko
@ 2013-07-03 13:23 ` Alex Deucher
0 siblings, 0 replies; 12+ messages in thread
From: Alex Deucher @ 2013-07-03 13:23 UTC (permalink / raw)
To: Ruslan N. Marchenko; +Cc: Alex Deucher, dri-devel
On Wed, Jul 3, 2013 at 2:39 AM, Ruslan N. Marchenko <rufferson@gmail.com> wrote:
> Am 01.07.2013 23:01, schrieb alexdeucher@gmail.com:
>>
>> From: Alex Deucher<alexander.deucher@amd.com>
>>
>> Hi Dave,
>>
>> A few more patches for 3.11:
>> - add debugfs interface to check current DPM state
>> - Fix a bug that caused problems with DPM on BTC+ asics.
>>
>> The following changes since commit
>> f7d452f4fd5d86f764807a1234a407deb5b105ef:
>>
>> Merge branch 'drm-nouveau-next' of
>> git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-next
>> (2013-07-01 14:10:20 +1000)
>>
>> are available in the git repository at:
>>
>> git://people.freedesktop.org/~agd5f/linux drm-next-3.11
>>
>> Alex Deucher (12):
>> drm/radeon: remove sumo dpm/uvd bringup leftovers
>> drm/radeon/atom: fix endian bug in radeon_atom_init_mc_reg_table()
>> drm/radeon: fix typo in radeon_atom_init_mc_reg_table()
>> drm/radeon/dpm: re-enable state transitions for BTC
>> drm/radeon/dpm: re-enable state transitions for Cayman
>> drm/radeon/dpm: add infrastructure to support debugfs info
>> drm/radeon/dpm: add debugfs support for rv6xx
>> drm/radeon/dpm: add debugfs support for 7xx/evergreen/btc
>> drm/radeon/dpm: add debugfs support for ON/LN
>> drm/radeon/dpm: add debugfs support for TN
>> drm/radeon/dpm: add debugfs support for cayman
>> drm/radeon/dpm: add debugfs support for SI
>>
>> drivers/gpu/drm/radeon/btc_dpm.c | 3 --
>> drivers/gpu/drm/radeon/ni_dpm.c | 25 +++++++++++++---
>> drivers/gpu/drm/radeon/nid.h | 4 ++
>> drivers/gpu/drm/radeon/radeon.h | 2 +
>> drivers/gpu/drm/radeon/radeon_asic.c | 8 +++++
>> drivers/gpu/drm/radeon/radeon_asic.h | 12 ++++++++
>> drivers/gpu/drm/radeon/radeon_atombios.c | 3 +-
>> drivers/gpu/drm/radeon/radeon_pm.c | 40
>> ++++++++++++++++++--------
>> drivers/gpu/drm/radeon/rv6xx_dpm.c | 25 ++++++++++++++++
>> drivers/gpu/drm/radeon/rv770_dpm.c | 30 ++++++++++++++++++++
>> drivers/gpu/drm/radeon/rv770d.h | 4 ++
>> drivers/gpu/drm/radeon/si_dpm.c | 19 ++++++++++++
>> drivers/gpu/drm/radeon/sid.h | 4 ++
>> drivers/gpu/drm/radeon/sumo_dpm.c | 45
>> ++++++++++++++++++-----------
>> drivers/gpu/drm/radeon/trinity_dpm.c | 21 ++++++++++++++
>> 15 files changed, 206 insertions(+), 39 deletions(-)
>> _______________________________________________
>> dri-devel mailing list
>> dri-devel@lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/dri-devel
>>
> This is really excellent and very wanted addition to the radeon, a huge
> thanks Alex for giving a second life to my old TimelineX with hybrid
> AMD/Intel graphics. Intel ironlake became a bit outdated already but with
> ATi HD 5650 I was able to drink tee all day long since it never came lower
> than 90 degrees Celsius. Now it comfortably sits at 55-60 so I can use it
> back again.
>
> As I noticed it supports now either dynpm or profile method of clocking,
> however profiles themselves also have several (3) power states. Also during
> init phase it writes that it switching from boot to performance profile - so
> what exactly is the difference between dpm and profile method? Will dynpm
> react to ACPI events like lid closed or AC offline or I better to add calls
> to acpid event handlers to tweak the profiles/methods?
With with the old profile/dynpm methods, the driver was responsible
for changing the power states. With dpm, there is dedicated hardware
on the GPU that automatically changes the power levels based on GPU
load. E.g., when you have an idle desktop, the hw will put the gpu
into the lowest power level, when you start to use the 3D engine,
etc., it will automatically switch the GPU into higher power levels.
With dpm you can also manually switch between performance and battery
states. Both states will automatically switch between power levels,
but the battery state generally has a narrower range of power levels.
The driver could automatically transition based on acpi events (there
was an option do to that with the old profile method), but that's not
currently hooked up and that's more of a policy choice, so it seems
like something that would be better handled in userspace (e.g., you
may want to use the performance state even when ac is offline or you
may want to use the battery state when AC is connected, etc.).
Alex
^ permalink raw reply [flat|nested] 12+ messages in thread
* [pull] radeon drm-next-3.11
@ 2013-07-03 21:43 alexdeucher
0 siblings, 0 replies; 12+ messages in thread
From: alexdeucher @ 2013-07-03 21:43 UTC (permalink / raw)
To: dri-devel, airlied; +Cc: Alex Deucher
From: Alex Deucher <alexander.deucher@amd.com>
Hi Dave,
A few more DPM fixes.
The following changes since commit 7982128c3d447df27db963af67bc6b8dc7efb1de:
drm/radeon/dpm: add debugfs support for SI (2013-07-01 16:09:06 -0400)
are available in the git repository at:
git://people.freedesktop.org/~agd5f/linux drm-next-3.11
Alex Deucher (6):
drm/radeon/dpm: clarify debugfs warning
drm/radeon: fix endian bug in radeon_atom_get_mclk_range_table()
drm/radeon/aruba: disable additional rlc features
drm/radeon/sumo: disable PG when changing UVD clocks
drm/radeon/tn: disable PG when changing UVD clocks
drm/radeon/sumo: implement support for disable_gfx_power_gating_in_uvd flag
Mike Lothian (1):
drm/radeon/dpm: fix compilation with certain versions of gcc
drivers/gpu/drm/radeon/evergreen.c | 2 --
drivers/gpu/drm/radeon/ni_dpm.c | 1 +
drivers/gpu/drm/radeon/radeon_atombios.c | 2 +-
drivers/gpu/drm/radeon/radeon_pm.c | 2 +-
drivers/gpu/drm/radeon/rv6xx_dpm.c | 1 +
drivers/gpu/drm/radeon/rv770_dpm.c | 1 +
drivers/gpu/drm/radeon/si_dpm.c | 1 +
drivers/gpu/drm/radeon/sumo_dpm.c | 24 ++++++++++++++++++++++--
drivers/gpu/drm/radeon/trinity_dpm.c | 9 +++++++++
9 files changed, 37 insertions(+), 6 deletions(-)
^ permalink raw reply [flat|nested] 12+ messages in thread
* [pull] radeon drm-next-3.11
@ 2013-07-05 22:24 alexdeucher
2013-07-06 9:48 ` No common commits between agd5f’s and Linus’ Git trees (was: [pull] radeon drm-next-3.11) Paul Menzel
2013-07-06 15:15 ` Radeon DPM branch successfully tested on Radeon HD 6310 (AMD Wrestler) (was: [pull] radeon drm-next-3.11) Paul Menzel
0 siblings, 2 replies; 12+ messages in thread
From: alexdeucher @ 2013-07-05 22:24 UTC (permalink / raw)
To: dri-devel, airlied; +Cc: Alex Deucher
From: Alex Deucher <alexander.deucher@amd.com>
Hi Dave,
A few more DPM patches and some bug fixes. Adds a sysfs interface to force
dpm performance levels.
The following changes since commit 338a95a95508537e23c82d59a2d87be6fde4b6ff:
drm/radeon/sumo: implement support for disable_gfx_power_gating_in_uvd flag (2013-07-03 17:37:31 -0400)
are available in the git repository at:
git://people.freedesktop.org/~agd5f/linux drm-next-3.11
Alex Deucher (9):
drm/radeon: set default clocks for SI when DPM is disabled
drm/radeon: add support for 3d perf states on older asics
drm/radeon: fix surface setup on r1xx
drm/radeon/dpm: add infrastructure to force performance levels
drm/radeon/dpm: implement force performance levels for 7xx/eg/btc
drm/radeon/dpm: implement force performance level for cayman
drm/radeon/dpm: implement force performance level for SI
drm/radeon/dpm: implement force performance level for ON/LN
drm/radeon/dpm: implement force performance level for TN
drivers/gpu/drm/radeon/btc_dpm.c | 4 +-
drivers/gpu/drm/radeon/cypress_dpm.c | 4 +-
drivers/gpu/drm/radeon/evergreen.c | 8 ++--
drivers/gpu/drm/radeon/ni_dpm.c | 38 ++++++++++++---
drivers/gpu/drm/radeon/ppsmc.h | 3 +
drivers/gpu/drm/radeon/r100.c | 11 ++---
drivers/gpu/drm/radeon/radeon.h | 11 ++++
drivers/gpu/drm/radeon/radeon_asic.c | 7 +++
drivers/gpu/drm/radeon/radeon_asic.h | 10 ++++
drivers/gpu/drm/radeon/radeon_atombios.c | 4 ++
drivers/gpu/drm/radeon/radeon_pm.c | 77 +++++++++++++++++++++++++++---
drivers/gpu/drm/radeon/rv770_dpm.c | 31 +++++++++---
drivers/gpu/drm/radeon/rv770_dpm.h | 3 +-
drivers/gpu/drm/radeon/si_dpm.c | 42 +++++++++++++----
drivers/gpu/drm/radeon/sumo_dpm.c | 44 +++++++++++++++++
drivers/gpu/drm/radeon/trinity_dpm.c | 32 ++++++++++++
drivers/gpu/drm/radeon/trinity_dpm.h | 1 +
drivers/gpu/drm/radeon/trinity_smc.c | 7 +++
18 files changed, 291 insertions(+), 46 deletions(-)
^ permalink raw reply [flat|nested] 12+ messages in thread
* No common commits between agd5f’s and Linus’ Git trees (was: [pull] radeon drm-next-3.11)
2013-07-05 22:24 [pull] radeon drm-next-3.11 alexdeucher
@ 2013-07-06 9:48 ` Paul Menzel
2013-07-06 10:18 ` [solved] No common commits between agd5f’s and Linus’ Git trees Paul Menzel
2013-07-06 15:15 ` Radeon DPM branch successfully tested on Radeon HD 6310 (AMD Wrestler) (was: [pull] radeon drm-next-3.11) Paul Menzel
1 sibling, 1 reply; 12+ messages in thread
From: Paul Menzel @ 2013-07-06 9:48 UTC (permalink / raw)
To: alexdeucher; +Cc: Alex Deucher, dri-devel
[-- Attachment #1.1: Type: text/plain, Size: 914 bytes --]
Dear Alex,
Am Freitag, den 05.07.2013, 18:24 -0400 schrieb alexdeucher@gmail.com:
[…]
> The following changes since commit 338a95a95508537e23c82d59a2d87be6fde4b6ff:
>
> drm/radeon/sumo: implement support for disable_gfx_power_gating_in_uvd flag (2013-07-03 17:37:31 -0400)
>
> are available in the git repository at:
> git://people.freedesktop.org/~agd5f/linux drm-next-3.11
trying to get your tree, Git says there are no common commits with
Linus’ tree. Do you have an idea, why?
$ git describe torvalds/master
v3.10-5851-gb2c3110
$ git remote add alexdeuscher git://people.freedesktop.org/~agd5f/linux
$ git fetch alexdeuscher
warning: no common commits
[…]
What do not I understand about Git? Should not there be a lot of common
commits and downloading the whole tree *not* be necessary.
[…]
Thanks,
Paul
[-- Attachment #1.2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
[-- Attachment #2: Type: text/plain, Size: 159 bytes --]
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [solved] No common commits between agd5f’s and Linus’ Git trees
2013-07-06 9:48 ` No common commits between agd5f’s and Linus’ Git trees (was: [pull] radeon drm-next-3.11) Paul Menzel
@ 2013-07-06 10:18 ` Paul Menzel
0 siblings, 0 replies; 12+ messages in thread
From: Paul Menzel @ 2013-07-06 10:18 UTC (permalink / raw)
To: alexdeucher; +Cc: Alex Deucher, dri-devel
[-- Attachment #1.1: Type: text/plain, Size: 1248 bytes --]
Dear Alex,
Am Samstag, den 06.07.2013, 11:48 +0200 schrieb Paul Menzel:
> Am Freitag, den 05.07.2013, 18:24 -0400 schrieb alexdeucher@gmail.com:
>
> […]
>
> > The following changes since commit 338a95a95508537e23c82d59a2d87be6fde4b6ff:
> >
> > drm/radeon/sumo: implement support for disable_gfx_power_gating_in_uvd flag (2013-07-03 17:37:31 -0400)
> >
> > are available in the git repository at:
> > git://people.freedesktop.org/~agd5f/linux drm-next-3.11
>
> trying to get your tree, Git says there are no common commits with
> Linus’ tree. Do you have an idea, why?
>
> $ git describe torvalds/master
> v3.10-5851-gb2c3110
> $ git remote add alexdeuscher git://people.freedesktop.org/~agd5f/linux
> $ git fetch alexdeuscher
> warning: no common commits
> […]
>
> What do not I understand about Git? Should not there be a lot of common
> commits and downloading the whole tree *not* be necessary.
thanks to olesalscheider in #radeon on <irc.freenode.net>, I should have
also told Git what branch to fetch. (I did not even know that
works. ;-)) So doing the following worked.
$ git fetch alexdeuscher drm-next-3.11
Thanks,
Paul
[-- Attachment #1.2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
[-- Attachment #2: Type: text/plain, Size: 159 bytes --]
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 12+ messages in thread
* Radeon DPM branch successfully tested on Radeon HD 6310 (AMD Wrestler) (was: [pull] radeon drm-next-3.11)
2013-07-05 22:24 [pull] radeon drm-next-3.11 alexdeucher
2013-07-06 9:48 ` No common commits between agd5f’s and Linus’ Git trees (was: [pull] radeon drm-next-3.11) Paul Menzel
@ 2013-07-06 15:15 ` Paul Menzel
1 sibling, 0 replies; 12+ messages in thread
From: Paul Menzel @ 2013-07-06 15:15 UTC (permalink / raw)
To: alexdeucher; +Cc: Alex Deucher, dri-devel
[-- Attachment #1.1: Type: text/plain, Size: 14884 bytes --]
Dear Radeon folks,
Am Freitag, den 05.07.2013, 18:24 -0400 schrieb alexdeucher@gmail.com:
> From: Alex Deucher <alexander.deucher@amd.com>
[…]
> The following changes since commit 338a95a95508537e23c82d59a2d87be6fde4b6ff:
>
> drm/radeon/sumo: implement support for disable_gfx_power_gating_in_uvd flag (2013-07-03 17:37:31 -0400)
>
> are available in the git repository at:
> git://people.freedesktop.org/~agd5f/linux drm-next-3.11
[…]
just a note that I tested that branch successfully on an ASRock E350M1
(with coreboot) and Radeon HD 6310.
Setting the performance level also seems to work.
$ echo low | sudo tee /sys/devices/pci0000:00/0000:00:01.0/power_dpm_force_performance_level
low
$ more /sys/devices/pci0000:00/0000:00:01.0/power_dpm_force*
low
I have no idea though how to check the effects, that means if actually
less power is drawn and the chip is cooler.
Thanks,
Paul
PS: Here is the output from `kern.log`.
$ cut -d " " -f 7- /var/log/kern.log # with `drm_kms_helper.poll=0 drm.debug=0x06`
[…]
[ 53.456521] calling radeon_init+0x0/0xa1 [radeon] @ 553
[ 53.456529] [drm] radeon kernel modesetting enabled.
[ 53.457682] [drm] initializing kernel modesetting (PALM 0x1002:0x9802 0x1002:0x9802).
[ 53.457726] [drm] register mmio base: 0xF0100000
[ 53.457729] [drm] register mmio size: 262144
[ 53.457818] ATOM BIOS: AMD
[ 53.457897] radeon 0000:00:01.0: VRAM: 384M 0x0000000000000000 - 0x0000000017FFFFFF (384M used)
[ 53.457904] radeon 0000:00:01.0: GTT: 512M 0x0000000018000000 - 0x0000000037FFFFFF
[ 53.457908] [drm] Detected VRAM RAM=384M, BAR=256M
[ 53.457911] [drm] RAM width 32bits DDR
[ 53.458052] [TTM] Zone kernel: Available graphics memory: 438544 kiB
[ 53.458056] [TTM] Zone highmem: Available graphics memory: 1622228 kiB
[ 53.458058] [TTM] Initializing pool allocator
[ 53.458131] [drm] radeon: 384M of VRAM memory ready
[ 53.458135] [drm] radeon: 512M of GTT memory ready.
[ 53.517781] radeon 0000:00:01.0: radeon_uvd: Can't load firmware "radeon/SUMO_uvd.bin"
[ 53.526154] [drm] GART: num cpu pages 131072, num gpu pages 131072
[ 53.527954] [drm] Loading PALM Microcode
[ 53.556666] [drm] PCIE GART of 512M enabled (table at 0x0000000000040000).
[ 53.556903] radeon 0000:00:01.0: WB enabled
[ 53.556911] radeon 0000:00:01.0: fence driver on ring 0 use gpu addr 0x0000000018000c00 and cpu addr 0xffa3dc00
[ 53.556917] radeon 0000:00:01.0: fence driver on ring 3 use gpu addr 0x0000000018000c0c and cpu addr 0xffa3dc0c
[ 53.556925] [drm] Supports vblank timestamp caching Rev 1 (10.10.2010).
[ 53.556928] [drm] Driver supports precise vblank timestamp query.
[ 53.556970] radeon 0000:00:01.0: irq 44 for MSI/MSI-X
[ 53.556994] radeon 0000:00:01.0: radeon: using MSI.
[ 53.557037] [drm] radeon: irq initialized.
[ 53.573605] [drm] ring test on 0 succeeded in 1 usecs
[ 53.573667] [drm] ring test on 3 succeeded in 1 usecs
[ 53.573916] [drm] ib test on ring 0 succeeded in 0 usecs
[ 53.573953] [drm] ib test on ring 3 succeeded in 0 usecs
[ 53.574488] [drm] Radeon Display Connectors
[ 53.574491] [drm] Connector 0:
[ 53.574494] [drm] HDMI-A-1
[ 53.574496] [drm] HPD1
[ 53.574501] [drm] DDC: 0x6430 0x6430 0x6434 0x6434 0x6438 0x6438 0x643c 0x643c
[ 53.574504] [drm] Encoders:
[ 53.574507] [drm] DFP1: INTERNAL_UNIPHY
[ 53.574509] [drm] Connector 1:
[ 53.574512] [drm] HDMI-A-2
[ 53.574514] [drm] HPD2
[ 53.574518] [drm] DDC: 0x6440 0x6440 0x6444 0x6444 0x6448 0x6448 0x644c 0x644c
[ 53.574520] [drm] Encoders:
[ 53.574522] [drm] DFP2: INTERNAL_UNIPHY
[ 53.574525] [drm] Connector 2:
[ 53.574527] [drm] VGA-1
[ 53.574531] [drm] DDC: 0x64d8 0x64d8 0x64dc 0x64dc 0x64e0 0x64e0 0x64e4 0x64e4
[ 53.574533] [drm] Encoders:
[ 53.574536] [drm] CRT1: INTERNAL_KLDSCP_DAC1
[ 53.574601] [drm] Internal thermal controller without fan control
[ 53.574662] == power state 0 ==
[ 53.574665] ui class: none
[ 53.574669] internal class: uvd_hd
[ 53.574672] caps:
[ 53.574676] uvd vclk: 40000 dclk: 30477
[ 53.574679] power level 0 sclk: 27827 vddc: 900
[ 53.574681] status:
[ 53.574684] == power state 1 ==
[ 53.574686] ui class: none
[ 53.574688] internal class: uvd
[ 53.574690] caps:
[ 53.574693] uvd vclk: 53334 dclk: 40000
[ 53.574696] power level 0 sclk: 49231 vddc: 975
[ 53.574698] status:
[ 53.574700] == power state 2 ==
[ 53.574702] ui class: performance
[ 53.574704] internal class: none
[ 53.574707] caps:
[ 53.574710] uvd vclk: 0 dclk: 0
[ 53.574712] power level 0 sclk: 27827 vddc: 900
[ 53.574715] power level 1 sclk: 49231 vddc: 975
[ 53.574717] status:
[ 53.574719] == power state 3 ==
[ 53.574721] ui class: none
[ 53.574723] internal class: boot
[ 53.574726] caps:
[ 53.574728] uvd vclk: 0 dclk: 0
[ 53.574731] power level 0 sclk: 20000 vddc: 975
[ 53.574733] status: c r b
[ 53.574749] == power state 4 ==
[ 53.574751] ui class: none
[ 53.574753] internal class: thermal
[ 53.574756] caps:
[ 53.574758] uvd vclk: 0 dclk: 0
[ 53.574761] power level 0 sclk: 20000 vddc: 900
[ 53.574763] status:
[ 53.574768] [drm] Found smc ucode version: 0x00010601
[ 53.574882] switching from power state:
[ 53.574884] ui class: none
[ 53.574886] internal class: boot
[ 53.574889] caps:
[ 53.574892] uvd vclk: 0 dclk: 0
[ 53.574895] power level 0 sclk: 20000 vddc: 975
[ 53.574896] status: c b
[ 53.574900] switching to power state:
[ 53.574902] ui class: performance
[ 53.574904] internal class: none
[ 53.574906] caps:
[ 53.574909] uvd vclk: 0 dclk: 0
[ 53.574911] power level 0 sclk: 27827 vddc: 900
[ 53.574914] power level 1 sclk: 49231 vddc: 975
[ 53.574916] status: r
[ 53.574977] [drm] radeon: dpm initialized
[ 53.574987] [drm:radeon_atom_encoder_dpms], encoder dpms 30 to mode 3, devices 00000008, active_devices 00000000
[ 53.574995] [drm:radeon_atom_encoder_dpms], encoder dpms 30 to mode 3, devices 00000080, active_devices 00000000
[ 53.575000] [drm:radeon_atom_encoder_dpms], encoder dpms 21 to mode 3, devices 00000001, active_devices 00000000
[ 53.575142] [drm:drm_helper_probe_single_connector_modes], [CONNECTOR:13:HDMI-A-1]
[ 53.576301] [drm:radeon_atombios_connected_scratch_regs], DFP1 disconnected
[ 53.576306] [drm:drm_helper_probe_single_connector_modes], [CONNECTOR:13:HDMI-A-1] disconnected
[ 53.576311] [drm:drm_helper_probe_single_connector_modes], [CONNECTOR:15:HDMI-A-2]
[ 53.577457] [drm:radeon_atombios_connected_scratch_regs], DFP2 disconnected
[ 53.577461] [drm:drm_helper_probe_single_connector_modes], [CONNECTOR:15:HDMI-A-2] disconnected
[ 53.577465] [drm:drm_helper_probe_single_connector_modes], [CONNECTOR:17:VGA-1]
[ 53.611138] [drm:radeon_atombios_connected_scratch_regs], CRT1 connected
[ 53.611202] [drm:drm_helper_probe_single_connector_modes], [CONNECTOR:17:VGA-1] probed modes :
[ 53.611207] [drm:drm_mode_debug_printmodeline], Modeline 31:"1280x1024" 75 135000 1280 1296 1440 1688 1024 1025 1028 1066 0x40 0x5
[ 53.611214] [drm:drm_mode_debug_printmodeline], Modeline 19:"1280x1024" 60 108000 1280 1328 1440 1688 1024 1025 1028 1066 0x40 0x5
[ 53.611220] [drm:drm_mode_debug_printmodeline], Modeline 32:"1024x768" 75 78800 1024 1040 1136 1312 768 769 772 800 0x40 0x5
[ 53.611226] [drm:drm_mode_debug_printmodeline], Modeline 23:"1024x768" 75 78750 1024 1040 1136 1312 768 769 772 800 0x40 0x5
[ 53.611232] [drm:drm_mode_debug_printmodeline], Modeline 33:"1024x768" 70 75000 1024 1048 1184 1328 768 771 777 806 0x40 0xa
[ 53.611238] [drm:drm_mode_debug_printmodeline], Modeline 34:"1024x768" 60 65000 1024 1048 1184 1344 768 771 777 806 0x40 0xa
[ 53.611244] [drm:drm_mode_debug_printmodeline], Modeline 35:"832x624" 75 57284 832 864 928 1152 624 625 628 667 0x40 0xa
[ 53.611250] [drm:drm_mode_debug_printmodeline], Modeline 36:"800x600" 75 49500 800 816 896 1056 600 601 604 625 0x40 0x5
[ 53.611256] [drm:drm_mode_debug_printmodeline], Modeline 37:"800x600" 72 50000 800 856 976 1040 600 637 643 666 0x40 0x5
[ 53.611262] [drm:drm_mode_debug_printmodeline], Modeline 24:"800x600" 60 40000 800 840 968 1056 600 601 605 628 0x40 0x5
[ 53.611268] [drm:drm_mode_debug_printmodeline], Modeline 25:"800x600" 56 36000 800 824 896 1024 600 601 603 625 0x40 0x5
[ 53.611274] [drm:drm_mode_debug_printmodeline], Modeline 26:"640x480" 75 31500 640 656 720 840 480 481 484 500 0x40 0xa
[ 53.611280] [drm:drm_mode_debug_printmodeline], Modeline 27:"640x480" 73 31500 640 664 704 832 480 489 491 520 0x40 0xa
[ 53.611286] [drm:drm_mode_debug_printmodeline], Modeline 28:"640x480" 67 30240 640 704 768 864 480 483 486 525 0x40 0xa
[ 53.611292] [drm:drm_mode_debug_printmodeline], Modeline 29:"640x480" 60 25200 640 656 752 800 480 490 492 525 0x40 0xa
[ 53.611298] [drm:drm_mode_debug_printmodeline], Modeline 22:"720x405" 70 26483 720 736 808 896 405 406 409 422 0x0 0x6
[ 53.611303] [drm:drm_mode_debug_printmodeline], Modeline 30:"720x400" 70 28320 720 738 846 900 400 412 414 449 0x40 0x6
[ 53.611309] [drm:drm_mode_debug_printmodeline], Modeline 21:"640x400" 70 23354 640 656 720 800 400 401 404 417 0x0 0x6
[ 53.611315] [drm:drm_mode_debug_printmodeline], Modeline 20:"640x360" 70 20604 640 648 712 784 360 361 364 375 0x0 0x6
[ 53.611322] [drm:drm_setup_crtcs],
[ 53.611326] [drm:drm_enable_connectors], connector 13 enabled? no
[ 53.611329] [drm:drm_enable_connectors], connector 15 enabled? no
[ 53.611332] [drm:drm_enable_connectors], connector 17 enabled? yes
[ 53.611336] [drm:drm_target_preferred], looking for cmdline mode on connector 17
[ 53.611340] [drm:drm_target_preferred], looking for preferred mode on connector 17
[ 53.611343] [drm:drm_target_preferred], found mode 1280x1024
[ 53.611346] [drm:drm_setup_crtcs], picking CRTCs for 8192x8192 config
[ 53.611352] [drm:drm_setup_crtcs], desired mode 1280x1024 set on crtc 10
[ 53.615661] [drm] fb mappable at 0xE0145000
[ 53.615664] [drm] vram apper at 0xE0000000
[ 53.615667] [drm] size 5242880
[ 53.615670] [drm] fb depth is 24
[ 53.615672] [drm] pitch is 5120
[ 53.615976] fbcon: radeondrmfb (fb0) is primary device
[ 53.618334] [drm:drm_crtc_helper_set_config],
[ 53.618338] [drm:drm_crtc_helper_set_config], [CRTC:10] [FB:39] #connectors=1 (x y) (0 0)
[ 53.618351] [drm:drm_crtc_helper_set_config], crtc has no fb, full mode set
[ 53.618353] [drm:drm_crtc_helper_set_config], modes are different, full mode set
[ 53.618358] [drm:drm_mode_debug_printmodeline], Modeline 0:"" 0 0 0 0 0 0 0 0 0 0 0x0 0x0
[ 53.618364] [drm:drm_mode_debug_printmodeline], Modeline 38:"1280x1024" 75 135000 1280 1296 1440 1688 1024 1025 1028 1066 0x40 0x5
[ 53.618367] [drm:drm_crtc_helper_set_config], encoder changed, full mode switch
[ 53.618369] [drm:drm_crtc_helper_set_config], crtc changed, full mode switch
[ 53.618372] [drm:drm_crtc_helper_set_config], [CONNECTOR:17:VGA-1] to [CRTC:10]
[ 53.618375] [drm:drm_crtc_helper_set_config], attempting to set mode from userspace
[ 53.618380] [drm:drm_mode_debug_printmodeline], Modeline 38:"1280x1024" 75 135000 1280 1296 1440 1688 1024 1025 1028 1066 0x40 0x5
[ 53.618387] [drm:radeon_encoder_set_active_device], setting active device to 00000001 from 00000001 00000001 for encoder 4
[ 53.618404] [drm:drm_crtc_helper_set_mode], [CRTC:10]
[ 53.618421] [drm:radeon_atom_encoder_dpms], encoder dpms 30 to mode 3, devices 00000008, active_devices 00000000
[ 53.618427] [drm:radeon_atom_encoder_dpms], encoder dpms 30 to mode 3, devices 00000080, active_devices 00000000
[ 53.618473] [drm:radeon_compute_pll_avivo], 13500, pll dividers - fb: 21.6 ref: 2, post 8
[ 53.635317] [drm:drm_crtc_helper_set_mode], [ENCODER:16:TV-16] set [MODE:38:1280x1024]
[ 53.635323] [drm:radeon_atom_encoder_dpms], encoder dpms 21 to mode 3, devices 00000001, active_devices 00000001
[ 53.635393] [drm:dce4_crtc_load_lut], 0
[ 53.648764] [drm:radeon_atom_encoder_dpms], encoder dpms 21 to mode 0, devices 00000001, active_devices 00000001
[ 53.648777] [drm:radeon_atom_encoder_dpms], encoder dpms 30 to mode 3, devices 00000008, active_devices 00000000
[ 53.648784] [drm:radeon_atom_encoder_dpms], encoder dpms 30 to mode 3, devices 00000080, active_devices 00000000
[ 53.648803] [drm:drm_crtc_helper_set_config], Setting connector DPMS state to on
[ 53.648806] [drm:drm_crtc_helper_set_config], [CONNECTOR:17:VGA-1] set DPMS on
[ 53.648811] [drm:drm_crtc_helper_set_config],
[ 53.648813] [drm:drm_crtc_helper_set_config], [CRTC:11] [NOFB]
[ 53.648817] [drm:radeon_atom_encoder_dpms], encoder dpms 30 to mode 3, devices 00000008, active_devices 00000000
[ 53.648821] [drm:radeon_atom_encoder_dpms], encoder dpms 30 to mode 3, devices 00000080, active_devices 00000000
[ 53.648921] [drm:drm_crtc_helper_set_config],
[ 53.648925] [drm:drm_crtc_helper_set_config], [CRTC:10] [FB:39] #connectors=1 (x y) (0 0)
[ 53.648941] [drm:drm_crtc_helper_set_config], [CONNECTOR:17:VGA-1] to [CRTC:10]
[ 53.648943] [drm:drm_crtc_helper_set_config], Setting connector DPMS state to on
[ 53.648946] [drm:drm_crtc_helper_set_config], [CONNECTOR:17:VGA-1] set DPMS on
[ 53.648951] [drm:dce4_crtc_load_lut], 0
[ 53.648988] [drm:dce4_crtc_load_lut], 0
[ 53.661938] Console: switching to colour frame buffer device 160x64
[ 53.661946] [drm:drm_crtc_helper_set_config],
[ 53.661949] [drm:drm_crtc_helper_set_config], [CRTC:10] [FB:39] #connectors=1 (x y) (0 0)
[ 53.661957] [drm:drm_crtc_helper_set_config], [CONNECTOR:17:VGA-1] to [CRTC:10]
[ 53.661959] [drm:drm_crtc_helper_set_config], Setting connector DPMS state to on
[ 53.661962] [drm:drm_crtc_helper_set_config], [CONNECTOR:17:VGA-1] set DPMS on
[ 53.661965] [drm:dce4_crtc_load_lut], 0
[ 53.661999] [drm:dce4_crtc_load_lut], 0
[ 53.674948] radeon 0000:00:01.0: fb0: radeondrmfb frame buffer device
[ 53.674953] radeon 0000:00:01.0: registered panic notifier
[ 53.674973] [drm:radeon_acpi_init], Call to ATCS verify_interface failed: -5
[ 53.674980] [drm:radeon_acpi_init], Call to ATIF verify_interface failed: -5
[ 53.674988] [drm] Initialized radeon 2.34.0 20080528 for 0000:00:01.0 on minor 0
[ 53.675344] initcall radeon_init+0x0/0xa1 [radeon] returned 0 after 213556 usecs
[…]
[-- Attachment #1.2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
[-- Attachment #2: Type: text/plain, Size: 159 bytes --]
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 12+ messages in thread
* [pull] radeon drm-next-3.11
@ 2013-07-08 21:52 alexdeucher
0 siblings, 0 replies; 12+ messages in thread
From: alexdeucher @ 2013-07-08 21:52 UTC (permalink / raw)
To: dri-devel, airlied; +Cc: Alex Deucher
From: Alex Deucher <alexander.deucher@amd.com>
Hi Dave,
A few more DPM fixes based on user testing.
The following changes since commit 9b5de59629d2e58eab41e2f0e5cc60b3c395f1c3:
drm/radeon/dpm: implement force performance level for TN (2013-07-05 18:10:06 -0400)
are available in the git repository at:
git://people.freedesktop.org/~agd5f/linux drm-next-3.11
Alex Deucher (9):
drm/radeon/dpm: fix display_gap programming on rv7xx
drm/radeon: remove stray line in old pm code
drm/radeon/dpm: add helper to calculate vblank time
drm/radeon/dpm: add checks against vblank time
drm/radeon/dpm: implement vblank_too_short callback for 7xx
drm/radeon/dpm: implement vblank_too_short callback for evergreen
drm/radeon/dpm: implement vblank_too_short callback for btc
drm/radeon/dpm: implement vblank_too_short callback for cayman
drm/radeon/dpm: implement vblank_too_short callback for si
drivers/gpu/drm/radeon/atombios_crtc.c | 3 +++
drivers/gpu/drm/radeon/btc_dpm.c | 16 +++++++++++++++-
drivers/gpu/drm/radeon/cypress_dpm.c | 13 +++++++++++++
drivers/gpu/drm/radeon/ni_dpm.c | 16 +++++++++++++++-
drivers/gpu/drm/radeon/ni_dpm.h | 2 ++
drivers/gpu/drm/radeon/r600_dpm.c | 24 ++++++++++++++++++++++++
drivers/gpu/drm/radeon/r600_dpm.h | 1 +
drivers/gpu/drm/radeon/radeon.h | 2 ++
drivers/gpu/drm/radeon/radeon_asic.c | 5 +++++
drivers/gpu/drm/radeon/radeon_asic.h | 4 ++++
drivers/gpu/drm/radeon/radeon_mode.h | 1 +
drivers/gpu/drm/radeon/radeon_pm.c | 15 +++++++++++----
drivers/gpu/drm/radeon/rv770_dpm.c | 15 +++++++++++++--
drivers/gpu/drm/radeon/si_dpm.c | 3 ++-
14 files changed, 111 insertions(+), 9 deletions(-)
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2013-07-08 21:52 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-07-05 22:24 [pull] radeon drm-next-3.11 alexdeucher
2013-07-06 9:48 ` No common commits between agd5f’s and Linus’ Git trees (was: [pull] radeon drm-next-3.11) Paul Menzel
2013-07-06 10:18 ` [solved] No common commits between agd5f’s and Linus’ Git trees Paul Menzel
2013-07-06 15:15 ` Radeon DPM branch successfully tested on Radeon HD 6310 (AMD Wrestler) (was: [pull] radeon drm-next-3.11) Paul Menzel
-- strict thread matches above, loose matches on Subject: below --
2013-07-08 21:52 [pull] radeon drm-next-3.11 alexdeucher
2013-07-03 21:43 alexdeucher
2013-07-01 21:01 alexdeucher
2013-07-01 21:57 ` Markus Trippelsdorf
2013-07-01 22:04 ` Deucher, Alexander
2013-07-03 6:39 ` Ruslan N. Marchenko
2013-07-03 13:23 ` Alex Deucher
2013-06-28 0:15 alexdeucher
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox