linux/drivers/gpu/drm/radeon
Ilija Hadzic 40592a17b8 drm/radeon: refactor vline packet parsing function
vline packet parsing function for R600 and Evergreen+ are
the same, except that they use different registers. Factor
out the algorithm into a common function that uses register
table passed from ASIC-specific caller.

This reduces ASIC-specific function to (trivial) setup
of register table and call into the common function.

Signed-off-by: Ilija Hadzic <ihadzic@research.bell-labs.com>
Reviewed-by: Marek Olšák <maraeo@gmail.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2013-01-31 16:24:43 -05:00
..
reg_srcs drm/radeon: add WAIT_UNTIL to the non-VM safe regs list for cayman/TN 2013-01-27 22:38:44 -05:00
.gitignore
atom-bits.h
atom-names.h
atom-types.h
atom.c drm/radeon/kms: fix fans after resume 2012-04-02 11:07:42 +01:00
atom.h UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
atombios_crtc.c drm/radeon/dce32+: use fractional fb dividers for high clocks 2012-12-07 19:48:22 -05:00
atombios_dp.c drm: extract drm_dp_max_lane_count helper 2012-10-22 22:56:43 +02:00
atombios_encoders.c drm/radeon: fix eDP clk and lane setup for scaled modes 2012-12-07 19:48:23 -05:00
atombios_i2c.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
atombios.h drm/radeon/kms: upstream power table updates 2012-03-21 06:55:50 +00:00
avivod.h
cayman_blit_shaders.c bug.h: add include of it to various implicit C users 2012-02-29 17:15:08 -05:00
cayman_blit_shaders.h drm/radeon/kms: add blit support for cayman (v2) 2011-05-26 09:19:31 +10:00
evergreen_blit_kms.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
evergreen_blit_shaders.c bug.h: add include of it to various implicit C users 2012-02-29 17:15:08 -05:00
evergreen_blit_shaders.h
evergreen_cs.c drm/radeon: refactor vline packet parsing function 2013-01-31 16:24:43 -05:00
evergreen_hdmi.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
evergreen_reg.h drm/radeon: properly handle mc_stop/mc_resume on evergreen+ (v2) 2012-09-20 13:10:33 -04:00
evergreen.c drm/radeon/evergreen+: wait for the MC to settle after MC blackout 2013-01-31 09:03:22 -05:00
evergreend.h drm/radeon: switch to a finer grained reset for evergreen 2013-01-03 21:28:49 -05:00
Kconfig drm/radeon/kms: clean up the radeon kms Kconfig 2011-05-26 09:22:05 +10:00
Makefile drm/radeon: add PRIME support (v2) 2012-05-23 10:47:11 +01:00
mkregtable.c radeon mkregtable: Add missing fclose() calls 2011-02-14 09:22:54 +10:00
ni_reg.h drm/radeon/kms: add ni_reg.h 2011-01-07 14:11:38 +10:00
ni.c drm/radeon: Enable DMA_IB_SWAP_ENABLE on big endian hosts. 2013-01-24 14:00:22 -05:00
nid.h drm/radeon: reset dma engine on gpu reset (v2) 2013-01-03 13:18:41 -05:00
ObjectID.h drm/radeon/kms: Upstream ObjectID.h updates 2012-03-21 06:55:49 +00:00
r100_track.h drm/radeon: Remove more bogus inlines in the radeon driver. 2011-10-18 09:44:52 +01:00
r100.c drm/radeon: use common cs packet parse function 2013-01-31 16:24:42 -05:00
r100d.h drm/radeon: Definition of R_0003C2_GENMO_WT seems wrong 2010-12-21 12:55:33 +10:00
r200.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
r300_cmdbuf.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
r300_reg.h Fix common misspellings 2011-03-31 11:26:23 -03:00
r300.c drm/radeon: use common cs packet parse function 2013-01-31 16:24:42 -05:00
r300d.h drm/radeon/kms: manage r300 CMASK RAM access and allow CMASK clear 2011-01-06 13:00:45 +10:00
r420.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
r420d.h
r500_reg.h drm/radeon/kms: add wait_for_vblank asic callback 2012-02-27 14:46:13 +00:00
r520.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2012-10-03 23:29:23 -07:00
r520d.h
r600_audio.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
r600_blit_kms.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2012-10-03 23:29:23 -07:00
r600_blit_shaders.c The following text was taken from the original review request: 2012-03-24 10:08:39 -07:00
r600_blit_shaders.h Annotate int2float() as being a pure function. 2012-09-20 13:10:34 -04:00
r600_blit.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2012-10-03 23:29:23 -07:00
r600_cp.c drm/radeon: Use hweight32 2012-11-20 16:06:18 +10:00
r600_cs.c drm/radeon: refactor vline packet parsing function 2013-01-31 16:24:43 -05:00
r600_hdmi.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2012-10-03 23:29:23 -07:00
r600_reg.h drm/radeon: improve mc_stop/mc_resume on r5xx-r7xx 2012-12-12 14:34:08 -05:00
r600.c drm/radeon: protect against div by 0 in backend setup 2013-01-30 14:10:04 -05:00
r600d.h drm/radeon: add register headers for CP DMA on r6xx-SI 2012-12-12 17:16:48 -05:00
radeon_acpi.c drm/radeon: fix compilation with backlight disabled 2012-10-15 13:21:00 -04:00
radeon_acpi.h drm/radeon: implement handler for ACPI event 2012-09-20 13:10:36 -04:00
radeon_agp.c radeon: add AGPMode 1 quirk for RV250 2012-11-20 11:47:32 -05:00
radeon_asic.c drm/radeon: switch back to the CP ring for VM PT updates 2013-01-31 16:19:19 -05:00
radeon_asic.h drm/radeon: split r6xx and r7xx copy_dma functions 2013-01-04 09:29:54 -05:00
radeon_atombios.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2012-10-03 23:29:23 -07:00
radeon_atpx_handler.c drm/radeon: fix ATPX function documentation 2012-11-01 10:34:32 -04:00
radeon_benchmark.c drm/radeon: remove radeon_fence_create 2012-06-21 09:38:35 +02:00
radeon_bios.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
radeon_blit_common.h drm/radeon/kms: common definitions for blit copy code 2012-02-03 09:31:14 +00:00
radeon_clocks.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
radeon_combios.c drm/radeon: add quirk for RV100 board 2013-01-29 16:40:55 -05:00
radeon_connectors.c drm/radeon: Properly handle DDC probe for DP bridges 2013-01-03 15:04:38 -05:00
radeon_cp.c drm/radeon: add W|RREG32_IDX for MM_INDEX|DATA based mmio accesss 2012-12-14 10:45:22 -05:00
radeon_cs.c drm/radeon: factor out cs_next_is_pkt3_nop function 2013-01-31 16:24:42 -05:00
radeon_cursor.c drm/radeon: fix cursor corruption on DCE6 and newer 2013-01-23 13:51:43 -05:00
radeon_device.c drm/radeon: add quirk for d3 delay during switcheroo poweron for apple macbooks 2013-01-07 10:13:36 -05:00
radeon_display.c drm/radeon: Calling object_unrefer() when creating fb failure 2013-01-31 16:14:15 -05:00
radeon_drv.c drm/radeon: allow FP16 color clear registers on r500 2013-01-15 09:07:12 -05:00
radeon_drv.h drm/radeon: add W|RREG32_IDX for MM_INDEX|DATA based mmio accesss 2012-12-14 10:45:22 -05:00
radeon_encoders.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2012-10-03 23:29:23 -07:00
radeon_family.h drm/radeon/kms: add trinity (TN) chip family 2012-03-21 06:55:55 +00:00
radeon_fb.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2012-10-03 23:29:23 -07:00
radeon_fence.c drm/radeon: avoid deadlock in pm path when waiting for fence 2012-12-19 17:44:05 -05:00
radeon_gart.c drm/radeon: allow move_notify to be called without reservation 2012-12-10 20:13:49 +10:00
radeon_gem.c drm/radeon: move the retry to gem_object_create 2012-10-24 11:41:56 -04:00
radeon_i2c.c drm/radeon: Properly handle DDC probe for DP bridges 2013-01-03 15:04:38 -05:00
radeon_ioc32.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2012-10-03 23:29:23 -07:00
radeon_irq_kms.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2012-10-03 23:29:23 -07:00
radeon_irq.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
radeon_kms.c drm/radeon: add new INFO ioctl requests 2012-12-07 19:48:22 -05:00
radeon_legacy_crtc.c DRM/radeon: For single CRTC GPUs move handling of CRTC_CRT_ON to crtc_dpms(). 2012-11-01 10:34:34 -04:00
radeon_legacy_encoders.c radeon/kms: force rn50 chip to always report connected on analog output 2013-01-10 17:05:37 -05:00
radeon_legacy_tv.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
radeon_mem.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
radeon_mode.h drm/radeon: Properly handle DDC probe for DP bridges 2013-01-03 15:04:38 -05:00
radeon_object.c Revert "drm/radeon: do not move bo to different placement at each cs" 2013-01-17 13:10:50 -05:00
radeon_object.h drm/radeon: Use ttm_bo_is_reserved 2012-11-07 10:58:14 +10:00
radeon_pm.c drm/radeon: avoid deadlock in pm path when waiting for fence 2012-12-19 17:44:05 -05:00
radeon_prime.c drm/prime: drop reference on imported dma-buf come from gem 2013-01-08 14:41:53 +10:00
radeon_reg.h drm/radeon: refactor vline packet parsing function 2013-01-31 16:24:43 -05:00
radeon_ring.c drm/radeon: prevent crash in the ring space allocation 2013-01-31 16:14:16 -05:00
radeon_sa.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2012-10-03 23:29:23 -07:00
radeon_semaphore.c drm/radeon: improve semaphore debugging on lockup 2013-01-15 09:07:13 -05:00
radeon_state.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
radeon_test.c drm/radeon/kms: add support for dma rings to radeon_test_moves() 2012-12-10 16:53:47 -05:00
radeon_trace_points.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
radeon_trace.h drm/radeon: add initial tracepoint support. 2010-12-16 14:37:47 +10:00
radeon_ttm.c drm/ttm: remove no_wait_reserve, v3 2012-12-10 20:21:30 +10:00
radeon.h drm/radeon: refactor vline packet parsing function 2013-01-31 16:24:43 -05:00
rs100d.h
rs400.c drm/radeon: Mark all possible functions / structs as static 2012-09-20 13:10:41 -04:00
rs400d.h
rs600.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2012-10-03 23:29:23 -07:00
rs600d.h drm/radeon/kms: add register definitions for audio 2012-04-24 09:50:13 +01:00
rs690.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2012-10-03 23:29:23 -07:00
rs690d.h
rv200d.h
rv250d.h
rv350d.h
rv515.c drm/radeon/r5xx-r7xx: wait for the MC to settle after MC blackout 2013-01-31 16:13:42 -05:00
rv515d.h
rv770.c drm/radeon: split r6xx and r7xx copy_dma functions 2013-01-04 09:29:54 -05:00
rv770d.h drm/radeon/kms: Add initial support for async DMA on r6xx/r7xx 2012-12-10 16:53:23 -05:00
si_blit_shaders.c The following text was taken from the original review request: 2012-03-24 10:08:39 -07:00
si_blit_shaders.h drm/radeon/kms: add support for CP setup on SI 2012-03-21 06:55:54 +00:00
si_reg.h drm/radeon: SI tiling fixes for display 2012-06-20 19:55:56 +01:00
si.c drm/radeon: clear reset flags if engines are idle 2013-01-15 09:06:38 -05:00
sid.h drm/radeon: reset dma engine on gpu reset (v2) 2013-01-03 13:18:41 -05:00