linux_dsm_epyc7002/drivers/gpu/drm/radeon
Benjamin Herrenschmidt 91ed6fd2c3 gpu/radeon: Set flag to indicate broken 64-bit MSI
Some radeon ASICs don't support all 64 address bits of MSIs despite
advertising support for 64-bit MSIs in their configuration space.

This breaks on systems such as IBM POWER7/8, where 64-bit MSIs can
be assigned with some of the high address bits set.

This makes use of the newly introduced "no_64bit_msi" flag in structure
pci_dev to allow the MSI allocation code to fallback to 32-bit MSIs
on those adapters.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
CC: <stable@vger.kernel.org>
---

Adding Alex's review tag. Patch to the driver is identical to the
reviewed one, I dropped the arch/powerpc hunk rewrote the subject
and cset comment.
2014-11-24 14:12:56 +11:00
..
reg_srcs drm/radeon: allow geom rings to be setup on r600/r700 (v2) 2014-02-06 12:13:52 +10:00
.gitignore
atom-bits.h
atom-names.h
atom-types.h
atom.c drm/radeon: add locking around atombios scratch space usage 2014-11-11 17:22:26 -05:00
atom.h drm/radeon: add locking around atombios scratch space usage 2014-11-11 17:22:26 -05:00
atombios_crtc.c drm/radeon: Prevent too early kms-pageflips triggered by vblank. 2014-07-17 09:01:31 -04:00
atombios_dp.c drm/radeon: add locking around atombios scratch space usage 2014-11-11 17:22:26 -05:00
atombios_encoders.c drm/radeon: consolidate duplicate encode is digital function 2014-10-01 09:00:02 -04:00
atombios_i2c.c drm/radeon: add locking around atombios scratch space usage 2014-11-11 17:22:26 -05:00
atombios.h drm/radeon: atombios.h updates for hawaii 2013-11-08 12:33:45 -05:00
avivod.h
btc_dpm.c drm/radeon: reduce sparse false positive warnings 2014-10-16 18:34:10 -04:00
btc_dpm.h Revert "drm/radeon: drop btc_get_max_clock_from_voltage_dependency_table" 2014-10-13 11:34:13 -04:00
btcd.h drm/radeon/dpm: use the driver state for dpm debugfs 2014-02-06 12:22:46 -05:00
cayman_blit_shaders.c drm/radeon/kms: remove r6xx+ blit copy routines 2013-08-30 16:29:57 -04:00
cayman_blit_shaders.h
ci_dpm.c drm/radeon: reduce sparse false positive warnings 2014-10-16 18:34:10 -04:00
ci_dpm.h drm/radeon/dpm: track uvd gated state for ci 2013-08-30 16:31:06 -04:00
ci_smc.c drm/radeon/cik: Add support for new ucode format (v5) 2014-08-05 08:53:24 -04:00
cik_blit_shaders.c
cik_blit_shaders.h
cik_reg.h drm/radeon: add indirect accessors for dift registers on CIK 2013-08-30 16:30:09 -04:00
cik_sdma.c drm/radeon: use gart for DMA IB tests 2014-11-06 15:42:45 -05:00
cik.c drm/radeon: make sure mode init is complete in bandwidth_update 2014-11-06 15:42:44 -05:00
cikd.h drm/radeon/cik: fix typo in EOP packet 2014-07-02 14:10:19 -04:00
clearstate_cayman.h drm/radeon: use NULL instead of zero in clearstate headers 2014-06-02 10:25:07 -04:00
clearstate_ci.h drm/radeon: use NULL instead of zero in clearstate headers 2014-06-02 10:25:07 -04:00
clearstate_defs.h
clearstate_evergreen.h drm/radeon: convert SI,CIK to use sumo_rlc functions 2013-08-30 16:30:08 -04:00
clearstate_si.h drm/radeon: use NULL instead of zero in clearstate headers 2014-06-02 10:25:07 -04:00
cypress_dpm.c drm/radeon: reduce sparse false positive warnings 2014-10-16 18:34:10 -04:00
cypress_dpm.h
dce3_1_afmt.c drm/radeon: fix speaker allocation setup 2014-10-16 18:34:07 -04:00
dce6_afmt.c drm/radeon: fix speaker allocation setup 2014-10-16 18:34:07 -04:00
drm_buffer.c drm/radeon: move drm_buffer to drm/radeon/ 2014-09-10 17:11:21 +10:00
drm_buffer.h drm/radeon: move drm_buffer to drm/radeon/ 2014-09-10 17:11:21 +10:00
evergreen_blit_shaders.c drm/radeon/kms: remove r6xx+ blit copy routines 2013-08-30 16:29:57 -04:00
evergreen_blit_shaders.h
evergreen_cs.c drm/radeon: remove struct radeon_bo_list 2014-03-04 14:34:34 +01:00
evergreen_dma.c drm/radeon: cope with foreign fences inside the reservation object 2014-10-03 09:19:16 -04:00
evergreen_hdmi.c drm/radeon: fix speaker allocation setup 2014-10-16 18:34:07 -04:00
evergreen_reg.h drm/radeon: Prevent too early kms-pageflips triggered by vblank. 2014-07-17 09:01:31 -04:00
evergreen_smc.h drm/radeon/dpm: fix typo in EVERGREEN_SMC_FIRMWARE_HEADER_softRegisters 2014-03-06 16:46:58 -05:00
evergreen.c drm/radeon: add missing crtc unlock when setting up the MC 2014-11-06 17:41:19 -05:00
evergreend.h drm/radeon: Setup HDMI_CONTROL for hdmi deep color gcp's (v2) 2014-06-02 18:37:33 -04:00
Kconfig
kv_dpm.c drm/radeon: dpm fixes for asrock systems 2014-10-28 10:44:35 -04:00
kv_dpm.h drm/radeon/dpm: handle bapm on kb/kv 2013-09-11 11:44:38 -04:00
kv_smc.c drm/radeon/dpm: handle bapm on kb/kv 2013-09-11 11:44:38 -04:00
Makefile drm/radeon: consolidate r600_audio.c into r600_hdmi.c 2014-10-01 09:00:03 -04:00
mkregtable.c mkregtable: Fix sscanf handling 2014-01-10 15:28:10 +01:00
ni_dma.c drm/radeon: don't reset dma on NI/SI init 2014-09-18 18:57:08 -04:00
ni_dpm.c drm/radeon: reduce sparse false positive warnings 2014-10-16 18:34:10 -04:00
ni_dpm.h drm/radeon/dpm: implement vblank_too_short callback for si 2013-07-08 17:41:11 -04:00
ni_reg.h
ni.c drm/radeon: save/restore the PD addr on suspend/resume 2014-08-26 12:20:38 -04:00
nid.h drm/radeon: add proper support for RADEON_VM_BLOCK_SIZE v2 2014-06-02 10:25:03 -04:00
nislands_smc.h
ObjectID.h
ppsmc.h drm/radeon/dpm: handle bapm on trinity 2013-09-11 11:44:37 -04:00
pptable.h drm/radeon: fix pptable.h portability 2014-01-03 11:34:21 -05:00
r100_track.h
r100.c drm/radeon: make sure mode init is complete in bandwidth_update 2014-11-06 15:42:44 -05:00
r100d.h
r200.c drm/radeon: add the infrastructure for concurrent buffer access 2014-09-11 10:46:01 -04:00
r300_cmdbuf.c drm/radeon: move drm_buffer to drm/radeon/ 2014-09-10 17:11:21 +10:00
r300_reg.h
r300.c drm/radeon: Only flush HDP cache for indirect buffers from userspace 2014-08-18 17:09:44 -04:00
r300d.h
r420.c drm/radeon: Only flush HDP cache for indirect buffers from userspace 2014-08-18 17:09:44 -04:00
r420d.h
r500_reg.h drm/radeon: Bypass hw lut's for > 8 bpc framebuffer scanout. 2014-06-13 12:22:30 -04:00
r520.c drm/radeon: resume old pm late 2014-03-06 16:46:56 -05:00
r520d.h
r600_blit_shaders.c
r600_blit_shaders.h drm/radeon/kms: remove r6xx+ blit copy routines 2013-08-30 16:29:57 -04:00
r600_blit.c drm/radeon/kms: remove r6xx+ blit copy routines 2013-08-30 16:29:57 -04:00
r600_cp.c drm: Move drm_memory.c map support declarations to <drm/drm_legacy.h> 2014-09-12 15:28:12 +02:00
r600_cs.c drm/radeon: use helpers 2014-07-18 14:25:23 +10:00
r600_dma.c drm/radeon: use gart for DMA IB tests 2014-11-06 15:42:45 -05:00
r600_dpm.c drm/radeon: fix endian swapping in vbios fetch for tdp table 2014-11-20 11:13:18 -05:00
r600_dpm.h drm/radeon/dpm: move platform caps fetching to a separate function 2014-02-18 16:11:30 +01:00
r600_hdmi.c drm/radeon: disable audio when we disable hdmi (v2) 2014-10-01 09:00:04 -04:00
r600_reg.h
r600.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2014-10-14 09:39:08 +02:00
r600d.h Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2014-10-14 09:39:08 +02:00
radeon_acpi.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
radeon_acpi.h
radeon_agp.c radeon: Remove useless quirk for zx1/FireGL X1 combo introduced with fdo #7770 2014-06-02 10:25:08 -04:00
radeon_asic.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2014-10-14 09:39:08 +02:00
radeon_asic.h Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2014-10-14 09:39:08 +02:00
radeon_atombios.c drm/radeon/atombios: declare connector convert tables as static 2014-10-01 09:00:07 -04:00
radeon_atpx_handler.c ACPIPHP / radeon / nouveau: Remove acpi_bus_no_hotplug() 2014-09-15 13:15:34 -06:00
radeon_benchmark.c drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_bios.c radeon: clean up coding style differences in radeon_get_bios() 2014-10-28 10:44:34 -04:00
radeon_clocks.c
radeon_combios.c drm/radeon/combios: declare legacy_connector_convert as static 2014-10-01 09:00:08 -04:00
radeon_connectors.c drm/radeon: Prevent hdmi deep color if max_tmds_clock is undefined. 2014-08-05 11:22:54 -04:00
radeon_cp.c drm: Move drm_memory.c map support declarations to <drm/drm_legacy.h> 2014-09-12 15:28:12 +02:00
radeon_cs.c drm/radeon: Use drm_malloc_ab instead of kmalloc_array 2014-10-28 10:44:34 -04:00
radeon_cursor.c
radeon_device.c drm/radeon: add locking around atombios scratch space usage 2014-11-11 17:22:26 -05:00
radeon_display.c drm/radeon: cope with foreign fences inside display 2014-10-03 09:19:15 -04:00
radeon_drv.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2014-10-14 09:39:08 +02:00
radeon_drv.h drm: Create drm legacy driver header 2014-09-12 11:08:55 +02:00
radeon_encoders.c drm/radeon: disable native backlight control on pre-r6xx asics (v2) 2014-11-20 11:12:55 -05:00
radeon_family.h drm/radeon: add Mullins chip family 2014-05-06 12:19:57 +02:00
radeon_fb.c drm/radeon: use container_of to resolve radeon_fbdev from drm_fb_helper 2014-09-24 12:09:25 +02:00
radeon_fence.c drm/radeon: cope with foreign fences inside the reservation object 2014-10-03 09:19:16 -04:00
radeon_gart.c drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_gem.c drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_i2c.c drm/dp: add a hw mutex around the transfer functions. (v2) 2014-06-05 09:54:29 +10:00
radeon_ib.c drm/radeon: add the infrastructure for concurrent buffer access 2014-09-11 10:46:01 -04:00
radeon_ioc32.c drm: Remove DRM_ARRAY_SIZE() for ARRAY_SIZE() 2014-06-10 09:36:17 +10:00
radeon_irq_kms.c gpu/radeon: Set flag to indicate broken 64-bit MSI 2014-11-24 14:12:56 +11:00
radeon_irq.c drm: Kill DRM_COPY_(TO|FROM)_USER 2013-12-18 11:35:01 +10:00
radeon_kms.c drm/radeon: add userptr support v8 2014-08-11 11:04:23 -04:00
radeon_legacy_crtc.c drm: Replace crtc fb with primary plane fb (v3) 2014-04-01 20:18:28 -04:00
radeon_legacy_encoders.c drm/sysfs: sort out minor and connector device object lifetimes. 2013-10-22 09:37:40 +01:00
radeon_legacy_tv.c
radeon_mem.c drm: Kill DRM_COPY_(TO|FROM)_USER 2013-12-18 11:35:01 +10:00
radeon_mn.c drm/ttm: flip the switch, and convert to dma_fence 2014-09-02 16:41:50 +02:00
radeon_mode.h drm/radeon: consolidate duplicate encode is digital function 2014-10-01 09:00:02 -04:00
radeon_object.c drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_object.h drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_pm.c Merge remote-tracking branch 'airlied/drm-next' into topic/vblank-rework 2014-09-11 14:46:53 +02:00
radeon_prime.c drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_reg.h
radeon_ring.c drm/radeon: Use drm_malloc_ab instead of kmalloc_array 2014-10-28 10:44:34 -04:00
radeon_sa.c drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_semaphore.c drm/radeon: cope with foreign fences inside the reservation object 2014-10-03 09:19:16 -04:00
radeon_state.c drm/radeon: move drm_buffer to drm/radeon/ 2014-09-10 17:11:21 +10:00
radeon_test.c drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_trace_points.c
radeon_trace.h drm/radeon: use an intervall tree to manage the VMA v2 2014-08-05 08:53:51 -04:00
radeon_ttm.c drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_ucode.c drm/radeon: add new firmware header definitions (v3) 2014-08-05 08:53:22 -04:00
radeon_ucode.h drm/radeon: add new firmware header definitions (v3) 2014-08-05 08:53:22 -04:00
radeon_uvd.c drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_vce.c drm/radeon: export reservation_object from dmabuf to ttm 2014-10-03 09:19:17 -04:00
radeon_vm.c drm/radeon: Use drm_malloc_ab instead of kmalloc_array 2014-10-28 10:44:34 -04:00
radeon.h Merge branch 'drm-fixes-3.18' of git://people.freedesktop.org/~agd5f/linux into drm-fixes 2014-10-20 11:57:21 +10:00
rs100d.h
rs400.c drm/radeon: Fix typo 'addr' -> 'entry' in rs400_gart_set_page 2014-09-18 21:52:29 -04:00
rs400d.h
rs600.c drm/radeon: make sure mode init is complete in bandwidth_update 2014-11-06 15:42:44 -05:00
rs600d.h
rs690.c drm/radeon: make sure mode init is complete in bandwidth_update 2014-11-06 15:42:44 -05:00
rs690d.h
rs780_dpm.c drm/radeon: reduce sparse false positive warnings 2014-10-16 18:34:10 -04:00
rs780_dpm.h
rs780d.h drm/radeon/dpm: add debugfs support for RS780/RS880 (v3) 2013-07-17 16:47:52 -04:00
rv6xx_dpm.c drm/radeon: reduce sparse false positive warnings 2014-10-16 18:34:10 -04:00
rv6xx_dpm.h
rv6xxd.h
rv200d.h
rv250d.h
rv350d.h
rv515.c drm/radeon: make sure mode init is complete in bandwidth_update 2014-11-06 15:42:44 -05:00
rv515d.h
rv730_dpm.c
rv730d.h
rv740_dpm.c
rv740d.h
rv770_dma.c drm/radeon: cope with foreign fences inside the reservation object 2014-10-03 09:19:16 -04:00
rv770_dpm.c drm/radeon: reduce sparse false positive warnings 2014-10-16 18:34:10 -04:00
rv770_dpm.h drm/radeon/dpm: switch on new late_enable callback 2013-12-24 17:56:50 -05:00
rv770_smc.c drm/radeon: protect concurrent smc register access with a spinlock 2013-09-11 11:44:28 -04:00
rv770_smc.h drm/radeon: protect concurrent smc register access with a spinlock 2013-09-11 11:44:28 -04:00
rv770.c drm/radeon: remove unecessary includes 2014-10-01 09:00:09 -04:00
rv770d.h drm/radeon: implement pci config reset for r6xx/7xx (v3) 2014-01-08 18:42:22 -05:00
si_blit_shaders.c
si_blit_shaders.h
si_dma.c drm/radeon: cope with foreign fences inside the reservation object 2014-10-03 09:19:16 -04:00
si_dpm.c drm/radeon/dpm: disable ulv support on SI 2014-10-28 10:44:33 -04:00
si_dpm.h drm/radeon/dpm: add support for SVI2 voltage for SI 2014-08-05 08:53:21 -04:00
si_reg.h
si_smc.c drm/radeon/si: Add support for new ucode format (v3) 2014-08-05 08:53:23 -04:00
si.c drm/radeon: make sure mode init is complete in bandwidth_update 2014-11-06 15:42:44 -05:00
sid.h drm/radeon: fix register name to match internal name 2014-10-01 09:00:01 -04:00
sislands_smc.h drm/radeon/dpm: add support for SVI2 voltage for SI 2014-08-05 08:53:21 -04:00
smu7_discrete.h drm/radeon: add dpm support for CI dGPUs (v2) 2013-08-30 16:30:29 -04:00
smu7_fusion.h drm/radeon/kms: add dpm support for KB/KV 2013-08-30 16:30:28 -04:00
smu7.h drm/radeon/kms: add dpm support for KB/KV 2013-08-30 16:30:28 -04:00
sumo_dpm.c drm/radeon: reduce sparse false positive warnings 2014-10-16 18:34:10 -04:00
sumo_dpm.h drm/radeon/sumo add helper to go from vid7 to vid2 2013-08-30 16:30:10 -04:00
sumo_smc.c drm/radeon/dpm: make some functions static for sumo 2014-01-07 12:55:50 -05:00
sumod.h
trinity_dpm.c drm/radeon: reduce sparse false positive warnings 2014-10-16 18:34:10 -04:00
trinity_dpm.h drm/radeon/dpm: add bapm callback for trinity 2013-09-11 11:44:39 -04:00
trinity_smc.c drm/radeon/dpm: make some functions static for TN 2014-01-07 12:55:57 -05:00
trinityd.h
uvd_v1_0.c drm/radeon: enable RB_ARB before resetting the VCPU 2014-08-27 12:48:00 -04:00
uvd_v2_2.c drm/radeon: add UVD support for older asics v4 2014-08-27 12:47:55 -04:00
uvd_v3_1.c drm/radeon: allow semaphore emission to fail 2013-11-15 15:56:09 -05:00
uvd_v4_2.c drm/radeon: split out radeon_uvd_resume from uvd_v4_2_resume 2013-08-30 16:31:12 -04:00
vce_v1_0.c drm/radeon: drop drivers copy of the rptr 2014-02-18 17:49:19 +01:00
vce_v2_0.c drm/radeon: add support for vce 2.0 clock gating 2014-02-18 16:11:44 +01:00