drm/radeon: Import the Radeon KMS driver from FreeBSD

Operating Systems / DragonFlyBSD - François Tigeot [wolfpond.org] - 8 October 2013 16:05 EDT

- Credits for porting an updated version of this driver from Linux mainly go to Jean-Sébastien Pédron

- Compatibility layer for running 32-bit applications on 64-bit systems left out

Additional credits from the FreeBSD import message:

This driver is based on Linux 3.8 and a previous effort by kan@.

More informations about this project can be found on the FreeBSD wiki: https://wiki.freebsd.org/AMD_GPU

Help from: kib@, kan@ Tested by: avg@, kwm@, ray@, Alexander Yerenkow, Anders Bolt-Evensen, Denis Djubajlo, J.R. Oldroyd, Mikaël Urankar, Pierre-Emmanuel Pédron, Sam Fourman Jr., Wade , (probably other I forgot...) HW donations: kyzh, Yakaz

926decc drm/radeon: Import the Radeon KMS driver from FreeBSD
Makefile_upgrade.inc | 1 +
sys/dev/drm/ati_pcigart.c | 238 +-
sys/dev/drm/drm_buffer.c | 4 +-
sys/dev/drm/include/uapi_drm/radeon_drm.h | 984 ++
sys/dev/drm/radeon/Makefile | 119 +-
sys/dev/drm/radeon/ObjectID.h | 698 +
sys/dev/drm/radeon/README | 6 +
sys/dev/drm/radeon/atom-bits.h | 50 +
sys/dev/drm/radeon/atom-names.h | 102 +
sys/dev/drm/radeon/atom-types.h | 44 +
sys/dev/drm/radeon/atom.c | 1403 ++
sys/dev/drm/radeon/atom.h | 160 +
sys/dev/drm/radeon/atombios.h | 8012 +++++++++
sys/dev/drm/radeon/atombios_crtc.c | 1937 +++
sys/dev/drm/radeon/atombios_dp.c | 892 +
sys/dev/drm/radeon/atombios_encoders.c | 2662 +++
sys/dev/drm/radeon/atombios_i2c.c | 201 +
sys/dev/drm/radeon/avivod.h | 64 +
sys/dev/drm/radeon/cayman_blit_shaders.c | 374 +
sys/dev/drm/radeon/cayman_blit_shaders.h | 36 +
sys/dev/drm/radeon/cayman_reg_safe.h | 516 +
sys/dev/drm/radeon/evergreen.c | 3758 +++++
sys/dev/drm/radeon/evergreen_blit_kms.c | 732 +
sys/dev/drm/radeon/evergreen_blit_shaders.c | 357 +
sys/dev/drm/radeon/evergreen_blit_shaders.h | 36 +
sys/dev/drm/radeon/evergreen_cs.c | 3727 +++++
sys/dev/drm/radeon/evergreen_hdmi.c | 216 +
sys/dev/drm/radeon/evergreen_reg.h | 239 +
sys/dev/drm/radeon/evergreen_reg_safe.h | 516 +
sys/dev/drm/radeon/evergreend.h | 2045 +++
sys/dev/drm/radeon/ni.c | 1980 +++
sys/dev/drm/radeon/ni_reg.h | 88 +
sys/dev/drm/radeon/nid.h | 679 +
sys/dev/drm/radeon/r100.c | 4197 +++++
sys/dev/drm/radeon/r100_reg_safe.h | 30 +
sys/dev/drm/radeon/r100_track.h | 102 +
sys/dev/drm/radeon/r100d.h | 882 +
sys/dev/drm/radeon/r200.c | 551 +
sys/dev/drm/radeon/r200_reg_safe.h | 30 +
sys/dev/drm/radeon/r300.c | 1565 ++
sys/dev/drm/radeon/r300_cmdbuf.c | 313 +-
sys/dev/drm/radeon/r300_reg.h | 74 +-
sys/dev/drm/radeon/r300_reg_safe.h | 44 +
sys/dev/drm/radeon/r300d.h | 356 +
sys/dev/drm/radeon/r420.c | 490 +
sys/dev/drm/radeon/r420_reg_safe.h | 44 +
sys/dev/drm/radeon/r420d.h | 252 +
sys/dev/drm/radeon/r500_reg.h | 803 +
sys/dev/drm/radeon/r520.c | 329 +
sys/dev/drm/radeon/r520d.h | 189 +
sys/dev/drm/radeon/r600.c | 4384 +++++
sys/dev/drm/radeon/r600_audio.c | 257 +
sys/dev/drm/radeon/r600_blit.c | 1462 +-
sys/dev/drm/radeon/r600_blit_kms.c | 756 +
sys/dev/drm/radeon/r600_blit_shaders.c | 719 +
sys/dev/drm/radeon/r600_blit_shaders.h | 40 +
sys/dev/drm/radeon/r600_cp.c | 822 +-
sys/dev/drm/radeon/r600_cp.h | 13 +
sys/dev/drm/radeon/r600_cs.c | 2760 ++++
sys/dev/drm/radeon/r600_cs.h | 9 +
sys/dev/drm/radeon/r600_hdmi.c | 588 +
sys/dev/drm/radeon/r600_microcode.h |23292 ---------------------------
sys/dev/drm/radeon/r600_reg.h | 176 +
sys/dev/drm/radeon/r600_reg_safe.h | 492 +
sys/dev/drm/radeon/r600d.h | 1931 +++
sys/dev/drm/radeon/radeon.h | 2047 +++
sys/dev/drm/radeon/radeon_acpi.c | 637 +
sys/dev/drm/radeon/radeon_acpi.h | 446 +
sys/dev/drm/radeon/radeon_agp.c | 288 +
sys/dev/drm/radeon/radeon_asic.c | 1960 +++
sys/dev/drm/radeon/radeon_asic.h | 531 +
sys/dev/drm/radeon/radeon_atombios.c | 3190 ++++
sys/dev/drm/radeon/radeon_atpx_handler.c | 502 +
sys/dev/drm/radeon/radeon_benchmark.c | 254 +
sys/dev/drm/radeon/radeon_bios.c | 729 +
sys/dev/drm/radeon/radeon_blit_common.h | 45 +
sys/dev/drm/radeon/radeon_clocks.c | 916 ++
sys/dev/drm/radeon/radeon_combios.c | 3660 +++++
sys/dev/drm/radeon/radeon_connectors.c | 2040 +++
sys/dev/drm/radeon/radeon_cp.c | 401 +-
sys/dev/drm/radeon/radeon_cs.c | 1300 +-
sys/dev/drm/radeon/radeon_cursor.c | 315 +
sys/dev/drm/radeon/radeon_device.c | 1556 ++
sys/dev/drm/radeon/radeon_display.c | 1700 ++
sys/dev/drm/radeon/radeon_drm.h | 780 -
sys/dev/drm/radeon/radeon_drv.c | 496 +-
sys/dev/drm/radeon/radeon_drv.h | 317 +-
sys/dev/drm/radeon/radeon_encoders.c | 380 +
sys/dev/drm/radeon/radeon_fb.c | 432 +
sys/dev/drm/radeon/radeon_fence.c | 983 ++
sys/dev/drm/radeon/radeon_gart.c | 1302 ++
sys/dev/drm/radeon/radeon_gem.c | 584 +
sys/dev/drm/radeon/radeon_gem.h | 15 +
sys/dev/drm/radeon/radeon_i2c.c | 1383 ++
sys/dev/drm/radeon/radeon_irq.c | 76 +-
sys/dev/drm/radeon/radeon_irq_kms.c | 451 +
sys/dev/drm/radeon/radeon_irq_kms.h | 13 +
sys/dev/drm/radeon/radeon_kms.c | 728 +
sys/dev/drm/radeon/radeon_kms.h | 28 +
sys/dev/drm/radeon/radeon_legacy_crtc.c | 1084 ++
sys/dev/drm/radeon/radeon_legacy_encoders.c | 1816 +++
sys/dev/drm/radeon/radeon_legacy_tv.c | 925 ++
sys/dev/drm/radeon/radeon_mem.c | 30 +-
sys/dev/drm/radeon/radeon_microcode.h | 1844 ---
sys/dev/drm/radeon/radeon_mode.h | 737 +
sys/dev/drm/radeon/radeon_object.c | 650 +
sys/dev/drm/radeon/radeon_object.h | 192 +
sys/dev/drm/radeon/radeon_pm.c | 918 ++
sys/dev/drm/radeon/radeon_prime.c | 229 +
sys/dev/drm/radeon/radeon_reg.h | 3712 +++++
sys/dev/drm/radeon/radeon_ring.c | 882 +
sys/dev/drm/radeon/radeon_sa.c | 429 +
sys/dev/drm/radeon/radeon_semaphore.c | 122 +
sys/dev/drm/radeon/radeon_state.c | 455 +-
sys/dev/drm/radeon/radeon_test.c | 509 +
sys/dev/drm/radeon/radeon_trace.h | 84 +
sys/dev/drm/radeon/radeon_trace_points.c | 12 +
sys/dev/drm/radeon/radeon_ttm.c | 930 ++
sys/dev/drm/radeon/reg_srcs/cayman | 642 +
sys/dev/drm/radeon/reg_srcs/evergreen | 644 +
sys/dev/drm/radeon/reg_srcs/r100 | 105 +
sys/dev/drm/radeon/reg_srcs/r200 | 186 +
sys/dev/drm/radeon/reg_srcs/r300 | 714 +
sys/dev/drm/radeon/reg_srcs/r420 | 780 +
sys/dev/drm/radeon/reg_srcs/r600 | 755 +
sys/dev/drm/radeon/reg_srcs/rn50 | 30 +
sys/dev/drm/radeon/reg_srcs/rs600 | 780 +
sys/dev/drm/radeon/reg_srcs/rv515 | 496 +
sys/dev/drm/radeon/rn50_reg_safe.h | 30 +
sys/dev/drm/radeon/rs100d.h | 42 +
sys/dev/drm/radeon/rs400.c | 567 +
sys/dev/drm/radeon/rs400d.h | 162 +
sys/dev/drm/radeon/rs600.c | 1041 ++
sys/dev/drm/radeon/rs600_reg_safe.h | 59 +
sys/dev/drm/radeon/rs600d.h | 687 +
sys/dev/drm/radeon/rs690.c | 787 +
sys/dev/drm/radeon/rs690d.h | 312 +
sys/dev/drm/radeon/rv200d.h | 38 +
sys/dev/drm/radeon/rv250d.h | 125 +
sys/dev/drm/radeon/rv350d.h | 54 +
sys/dev/drm/radeon/rv515.c | 1200 ++
sys/dev/drm/radeon/rv515_reg_safe.h | 59 +
sys/dev/drm/radeon/rv515d.h | 651 +
sys/dev/drm/radeon/rv770.c | 1296 ++
sys/dev/drm/radeon/rv770d.h | 672 +
sys/dev/drm/radeon/si.c | 4424 +++++
sys/dev/drm/radeon/si_blit_shaders.c | 253 +
sys/dev/drm/radeon/si_blit_shaders.h | 33 +
sys/dev/drm/radeon/si_reg.h | 107 +
sys/dev/drm/radeon/sid.h | 1064 ++
sys/dev/drm/ttm/ttm_agp_backend.c | 4 +-
151 files changed, 116503 insertions(+), 29169 deletions(-)

Upstream: gitweb.dragonflybsd.org


  • Share