aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-08-30drm/radeon/dpm: update cac leakage table parsing for CIAlex Deucher2-8/+24
Uses a different table format if the board supports EVV. Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon: adjust si_dpm function for code sharingAlex Deucher1-7/+14
Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon: add get_temperature() callbacks for CIK (v2)Alex Deucher5-0/+51
This added support for the on-chip thermal sensors on CIK asics. v2: fix register offset. Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon: add KB/KV to r600_is_internal_thermal_sensorAlex Deucher1-0/+1
Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon: add CI to r600_is_internal_thermal_sensor()Alex Deucher1-0/+1
Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon: add support for thermal controller on KB/KVAlex Deucher2-0/+6
No support for reading temperature back yet. Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon/cik: add rlc helpers for DPMAlex Deucher2-0/+38
Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon: add structs to store uvd clock voltage depsAlex Deucher1-0/+12
Used for uvd power management. Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon: switch to pptable.hAlex Deucher2-612/+685
Internally we switched to using a separate header for atombios pplib definitions. Switch over the open source driver. Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon/sumo add helper to go from vid7 to vid2Alex Deucher2-0/+17
Needed for DPM on KB/KV. Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon: add indirect accessors for dift registers on CIKAlex Deucher2-0/+21
Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon: implement clock and power gating for CIK (v3)Alex Deucher7-24/+2565
Only the APUs support power gating. v2: disable cgcg for now v3: workaround hw issue in mgcg Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon: convert SI,CIK to use sumo_rlc functionsAlex Deucher7-195/+49
and remove duplicate si_rlc functions. Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon: clean up sumo_rlc_init() for code sharingAlex Deucher1-108/+113
This will eventually be shared with newer asics to reduce code duplication. Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon/cik: restructure rlc setupAlex Deucher3-31/+56
Restructure rlc setup to handle clock and power gating. Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon: add support for ASPM on CIK asicsAlex Deucher2-1/+222
Enables PCIE ASPM (Active State Power Management) on CIK asics. Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon/cik: add support for pcie gen1/2/3 switchingAlex Deucher2-0/+218
Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon: switch CIK to use radeon_ucode.hAlex Deucher2-16/+15
Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon/cik: implement some more atom helpers for DPMAlex Deucher1-0/+115
Required for DPM on CIK. Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon/kms: fix up dce8 display watermark calc for dpmAlex Deucher1-22/+74
Calculate the low and high watermarks based on the low and high clocks for the current power state. The dynamic pm hw will select the appropriate watermark based on the internal dpm state. Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon/dpm: use performance state if no UVD stateAlex Deucher1-2/+10
Newer asics don't have specific UVD states. Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon: default to 1024M gart size on rv770+Alex Deucher2-7/+19
Newer asics have a lot of vram so it's less of an issue to waste a little more space for the gart page table. This gives us some additional gart space before having to migrate to non-gart system ram for games, etc. where we use up most of vram. Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon/dpm: rework thermal state handlingAlex Deucher2-31/+15
1. Handle the the thermal state directly in the work handler. Remove the state selection function since nothing else uses it now. 2. On some asics there is no thermal state, so we just use a regular state and force the low performance state. Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon/dpm: use multiple UVD power states (v3)Alex Deucher4-12/+57
Use the UVD handle information to determine which which power states to select when using UVD. For example, decoding a single SD stream requires much lower clocks than multiple HD streams. v2: switch to a cleaner dpm/uvd interface v3: change the uvd power state while streams are active if need be Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon: add UVD->DPM helper function (v5)Alex Deucher2-0/+36
Add a helper function for counting the number of open stream handles. v2: fix copy-pasta in comments and whitespace error v3: make function static since it's only used in radeon_uvd.c at the moment v4: make non-static again for future changes v5: make static again for new rework of dpm uvd changes Signed-off-by: Christian König <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon/kms: remove r6xx+ blit copy routinesAlex Deucher14-1764/+33
No longer used now that we use the async dma engines or CP DMA for bo copies. Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/radeon: switch r6xx+ to using CP DMA for the blit copy callbackAlex Deucher1-9/+9
CP DMA is lighter weight than using the 3D engine. Signed-off-by: Alex Deucher <[email protected]>
2013-08-30drm/edid: add quirk for Medion MD30217PGAlex Deucher1-0/+3
This LCD monitor (1280x1024 native) has a completely bogus detailed timing (640x350@70hz). User reports that 1280x1024@60 has waves so prefer 1280x1024@75. Manufacturer: MED Model: 7b8 Serial#: 99188 Year: 2005 Week: 5 EDID Version: 1.3 Analog Display Input, Input Voltage Level: 0.700/0.700 V Sync: Separate Max Image Size [cm]: horiz.: 34 vert.: 27 Gamma: 2.50 DPMS capabilities: Off; RGB/Color Display First detailed timing is preferred mode redX: 0.645 redY: 0.348 greenX: 0.280 greenY: 0.605 blueX: 0.142 blueY: 0.071 whiteX: 0.313 whiteY: 0.329 Supported established timings: 720x400@70Hz 640x480@60Hz 640x480@72Hz 640x480@75Hz 800x600@56Hz 800x600@60Hz 800x600@72Hz 800x600@75Hz 1024x768@60Hz 1024x768@70Hz 1024x768@75Hz 1280x1024@75Hz Manufacturer's mask: 0 Supported standard timings: Supported detailed timing: clock: 25.2 MHz Image Size: 337 x 270 mm h_active: 640 h_sync: 688 h_sync_end 784 h_blank_end 800 h_border: 0 v_active: 350 v_sync: 350 v_sync_end 352 v_blanking: 449 v_border: 0 Monitor name: MD30217PG Ranges: V min: 56 V max: 76 Hz, H min: 30 H max: 83 kHz, PixClock max 145 MHz Serial No: 501099188 EDID (in hex): 00ffffffffffff0034a4b80774830100 050f010368221b962a0c55a559479b24 125054afcf00310a0101010101018180 000000000000d60980a0205e63103060 0200510e1100001e000000fc004d4433 3032313750470a202020000000fd0038 4c1e530e000a202020202020000000ff 003530313039393138380a2020200078 Signed-off-by: Alex Deucher <[email protected]> Reported-by: [email protected] Cc: [email protected]
2013-08-30Merge tag 'drm-intel-next-2013-08-23' of ↵Dave Airlie26-385/+1060
git://people.freedesktop.org/~danvet/drm-intel into drm-next Need to get my stuff out the door ;-) Highlights: - pc8+ support from Paulo - more vma patches from Ben. - Kconfig option to enable preliminary support by default (Josh Triplett) - Optimized cpu cache flush handling and support for write-through caching of display planes on Iris (Chris) - rc6 tuning from Stéphane Marchesin for more stability - VECS seqno wrap/semaphores fix (Ben) - a pile of smaller cleanups and improvements all over Note that I've ditched Ben's execbuf vma conversion for 3.12 since not yet ready. But there's still other vma conversion stuff in here. * tag 'drm-intel-next-2013-08-23' of git://people.freedesktop.org/~danvet/drm-intel: (62 commits) drm/i915: Print seqnos as unsigned in debugfs drm/i915: Fix context size calculation on SNB/IVB/VLV drm/i915: Use POSTING_READ in lcpll code drm/i915: enable Package C8+ by default drm/i915: add i915.pc8_timeout function drm/i915: add i915_pc8_status debugfs file drm/i915: allow package C8+ states on Haswell (disabled) drm/i915: fix SDEIMR assertion when disabling LCPLL drm/i915: grab force_wake when restoring LCPLL drm/i915: drop WaMbcDriverBootEnable workaround drm/i915: Cleaning up the relocate entry function drm/i915: merge HSW and SNB PM irq handlers drm/i915: fix how we mask PMIMR when adding work to the queue drm/i915: don't queue PM events we won't process drm/i915: don't disable/reenable IVB error interrupts when not needed drm/i915: add dev_priv->pm_irq_mask drm/i915: don't update GEN6_PMIMR when it's not needed drm/i915: wrap GEN6_PMIMR changes drm/i915: wrap GTIMR changes drm/i915: add the FCLK case to intel_ddi_get_cdclk_freq ...
2013-08-30drm: Advertise async page flip ability through GETCAP ioctlKeith Packard4-0/+10
Let applications know whether the kernel supports asynchronous page flipping. Signed-off-by: Keith Packard <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-08-30drm: Add DRM_MODE_PAGE_FLIP_ASYNC flag definitionKeith Packard1-6/+10
This requests that the driver perform the page flip as soon as possible, not necessarily waiting for vblank. Signed-off-by: Keith Packard <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-08-30drm: Pass page flip ioctl flags to driverKeith Packard16-24/+45
This lets drivers see the flags requested by the application [airlied: fixup for rcar/imx/msm] Signed-off-by: Keith Packard <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-08-30drm/omap: tiler: clear buffer properlyDan Carpenter1-1/+1
We're taking the sizeof() the wrong thing so it doesn't clear the whole buffer. Signed-off-by: Dan Carpenter <[email protected]> Acked-by: Rob Clark <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-08-30drm/prime: Remove PRIME handles only if supportedThierry Reding1-2/+4
Drivers that don't support PRIME will not have initialized the PRIME specific private component of struct drm_file. If called for such drivers, the drm_gem_remove_prime_handles() function will crash. Fix it by checking for PRIME support prior to removing the PRIME handles. Signed-off-by: Thierry Reding <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-08-30drm/vmwgfx: Split GMR2_REMAP commands if they are to largeJakob Bornecrantz1-19/+39
This fixes the piglit test texturing/max-texture-size causing the VM to die due to a too large SVGA command. Signed-off-by: Jakob Bornecrantz <[email protected]> Reviewed-by: Biran Paul <[email protected]> Reviewed-by: Zack Rusin <[email protected]> Cc: [email protected] Signed-off-by: Dave Airlie <[email protected]>
2013-08-30Merge tag 'drm-intel-fixes-2013-08-30' of ↵Dave Airlie1-1/+1
git://people.freedesktop.org/~danvet/drm-intel into drm-fixes Just a one-line patch to fix a black screen issue on rare ivb machines, cc: stable. Normally I'd just shovel this into the -next pull request this late in the -rc cycle, but Linus was making noises about not getting real fixes which are cc: stable. So here we go ;-) * tag 'drm-intel-fixes-2013-08-30' of git://people.freedesktop.org/~danvet/drm-intel: drm/i915: ivb: fix edp voltage swing reg val
2013-08-30drm: Remove the dithering_mode_property fieldDamien Lespiau1-1/+0
Unfortunately, I haven't been thorough enough in: commit ddecb10cf402a8325579f298fd4986a90f33496b Author: Lespiau, Damien <[email protected]> Date: Tue Aug 20 00:53:04 2013 +0100 drm: Remove drm_mode_create_dithering_property() And forgot to remove the dithering_mode_property member of struct drm_mode_config. Signed-off-by: Damien Lespiau <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-08-30drm/prime: double lock typoDan Carpenter1-1/+1
There is a typo so deadlocks on error instead of unlocking. Signed-off-by: Dan Carpenter <[email protected]> Reviewed-by: Daniel Vetter <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-08-30drm/vmwgfx: fix error return code in vmw_driver_load()Wei Yongjun1-1/+3
Fix to return -ENOMEM in the fence manager init error handling case instead of 0, as done elsewhere in this function. Signed-off-by: Wei Yongjun <[email protected]> Acked-by: Dmitry Torokhov <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-08-30drm: implement experimental render nodesDavid Herrmann8-13/+129
Render nodes provide an API for userspace to use non-privileged GPU commands without any running DRM-Master. It is useful for offscreen rendering, GPGPU clients, and normal render clients which do not perform modesetting. Compared to legacy clients, render clients no longer need any authentication to perform client ioctls. Instead, user-space controls render/client access to GPUs via filesystem access-modes on the render-node. Once a render-node was opened, a client has full access to the client/render operations on the GPU. However, no modesetting or ioctls that affect global state are allowed on render nodes. To prevent privilege-escalation, drivers must explicitly state that they support render nodes. They must mark their render-only ioctls as DRM_RENDER_ALLOW so render clients can use them. Furthermore, they must support clients without any attached master. If filesystem access-modes are not enough for fine-grained access control to render nodes (very unlikely, considering the versaitlity of FS-ACLs), you may still fall-back to fd-passing from server to client (which allows arbitrary access-control). However, note that revoking access is currently impossible and unlikely to get implemented. Note: Render clients no longer have any associated DRM-Master as they are supposed to be independent of any server state. DRM core highly depends on file_priv->master to be non-NULL for modesetting/ctx/etc. commands. Therefore, drivers must be very careful to not require DRM-Master if they support DRIVER_RENDER. So far render-nodes are protected by "drm_rnodes". As long as this module-parameter is not set to 1, a driver will not create render nodes. This allows us to experiment with the API a bit before we stabilize it. v2: drop insecure GEM_FLINK to force use of dmabuf Signed-off-by: David Herrmann <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-08-30video/hdmi: Rename HDMI_IDENTIFIER to HDMI_IEEE_OUILespiau, Damien3-4/+4
HDMI_IDENTIFIER was felt too generic, rename it to what it is, the IEEE OUI corresponding to HDMI Licensing, LLC. http://standards.ieee.org/develop/regauth/oui/oui.txt Cc: Thierry Reding <[email protected]> Signed-off-by: Damien Lespiau <[email protected]> Reviewed-by: Thierry Reding <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-08-30drm/i915/hdmi: Write HDMI vendor specific infoframesLespiau, Damien2-0/+30
With all the common infoframe bits now in place, we can finally write the vendor specific infoframes in our driver. Signed-off-by: Damien Lespiau <[email protected]> Reviewed-by: Ville Syrjälä <[email protected]> Reviewed-by: Thierry Reding <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-08-30drm: Add a helper to forge HDMI vendor infoframesLespiau, Damien2-0/+40
This can then be used by DRM drivers to setup their vendor infoframes. v2: Fix hmdi typo (Simon Farnsworth) v3: Adapt to the hdmi_vendor_infoframe rename Signed-off-by: Damien Lespiau <[email protected]> Reviewed-by: Simon Farnsworth <[email protected]> Reviewed-by: Ville Syrjälä <[email protected]> Reviewed-by: Thierry Reding <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-08-30video/hdmi: Use hdmi_vendor_infoframe for the HDMI specific infoframeLespiau, Damien3-22/+24
We just got rid of the version of hdmi_vendor_infoframe that had a byte array for anyone to poke at. It's now time to shuffle around the naming of hdmi_hdmi_infoframe to make hdmi_vendor_infoframe become the HDMI vendor specific structure. Cc: Thierry Reding <[email protected]> Signed-off-by: Damien Lespiau <[email protected]> Reviewed-by: Thierry Reding <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-08-30video/hdmi: Hook the HDMI vendor infoframe with the generic _pack()Lespiau, Damien2-48/+22
With this last bit, hdmi_infoframe_pack() is now able to pack any infoframe we support. At the same time, because it's impractical to make two commits out of this, we get rid of the version that encourages the open coding of the vendor infoframe packing. We can do so because the only user of this API has been ported in: Author: Damien Lespiau <[email protected]> Date: Mon Aug 12 18:08:37 2013 +0100 gpu: host1x: Port the HDMI vendor infoframe code the common helpers v2: Change oui to be an unsigned int (Ville Syrjälä) Signed-off-by: Damien Lespiau <[email protected]> Reviewed-by: Ville Syrjälä <[email protected]> Reviewed-by: Thierry Reding <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-08-30drm/edid: Move HDMI_IDENTIFIER to hdmi.hLespiau, Damien2-1/+1
We'll need the HDMI OUI for the HDMI vendor infoframe data, so let's move the DRM one to hdmi.h, might as well use the hdmi header to store some hdmi defines. (Note that, in fact, infoframes are part of the CEA-861 standard, and only the HDMI vendor specific infoframe is special to HDMI, but details..) Signed-off-by: Damien Lespiau <[email protected]> Reviewed-by: Ville Syrjälä <[email protected]> Reviewed-by: Thierry Reding <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-08-30gpu: host1x: Port the HDMI vendor infoframe code the common helpersLespiau, Damien1-20/+4
I just wrote the bits to define and pack HDMI vendor specific infoframe. Port the host1x driver to use those so I can refactor the infoframe code a bit more. This changes the length of the infoframe payload from 6 to 5, which is enough for the "frame packing" stereo format. v2: Pimp up the commit message with the note about the length (Ville Syrjälä) Cc: Thierry Reding <[email protected]> Cc: Terje Bergström <[email protected]> Cc: [email protected] Signed-off-by: Damien Lespiau <[email protected]> Reviewed-by: Thierry Reding <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-08-30video/hdmi: Introduce helpers for the HDMI vendor specific infoframeLespiau, Damien2-0/+116
Provide the same programming model than the other infoframe types. The generic _pack() function can't handle those yet as we need to move the vendor OUI in the generic hdmi_vendor_infoframe structure to know which kind of vendor infoframe we are dealing with. v2: Fix the value of Side-by-side (half), hmdi typo, pack 3D_Ext_Data (Ville Syrjälä) v3: Future proof the sending of 3D_Ext_Data (Ville Syrjälä), Fix multi-lines comment style (Thierry Reding) Signed-off-by: Damien Lespiau <[email protected]> Reviewed-by: Ville Syrjälä <[email protected]> Reviewed-by: Thierry Reding <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-08-30video/hdmi: Derive the bar data valid bit from the bar data fieldsLespiau, Damien2-4/+3
Just like: Author: Damien Lespiau <[email protected]> Date: Mon Aug 12 11:53:24 2013 +0100 video/hdmi: Don't let the user of this API create invalid infoframes But this time for the horizontal/vertical bar data present bits. Signed-off-by: Damien Lespiau <[email protected]> Reviewed-by: Ville Syrjälä <[email protected]> Reviewed-by: Thierry Reding <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2013-08-30video/hdmi: Don't let the user of this API create invalid infoframesLespiau, Damien3-3/+5
To set the active aspect ratio value in the AVI infoframe today, you not only have to set the active_aspect field, but also the active_info_valid bit. Out of the 1 user of this API, we had 100% misuse, forgetting the _valid bit. This was fixed in: Author: Damien Lespiau <[email protected]> Date: Tue Aug 6 20:32:17 2013 +0100 drm: Don't generate invalid AVI infoframes for CEA modes We can do better and derive the _valid bit from the user wanting to set the active aspect ratio. v2: Fix multi-lines comment style (Thierry Reding) Signed-off-by: Damien Lespiau <[email protected]> Reviewed-by: Ville Syrjälä <[email protected]> Reviewed-by: Thierry Reding <[email protected]> Signed-off-by: Dave Airlie <[email protected]>