linux_dsm_epyc7002/drivers/gpu/drm
Eric Anholt 38c2c7917a drm/v3d: Fix and extend MMU error handling.
We were setting the wrong flags to enable PTI errors, so we were
seeing reads to invalid PTEs show up as write errors.  Also, we
weren't turning on the interrupts.  The AXI IDs we were dumping
included the outstanding write number and so they looked basically
random.  And the VIO_ADDR decoding was based on the MMU VA_WIDTH for
the first platform I worked on and was wrong on others.  In short,
this was a thorough mess from early HW enabling.

Tested on V3D 4.1 and 4.2 with intentional L2T, CLE, PTB, and TLB
faults.

Signed-off-by: Eric Anholt <eric@anholt.net>
Link: https://patchwork.freedesktop.org/patch/msgid/20190419001014.23579-4-eric@anholt.net
Reviewed-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2019-05-16 09:24:52 -07:00
..
amd Merge remote-tracking branch 'drm/drm-next' into drm-misc-next 2019-05-09 10:19:03 +02:00
arc drm: Split out drm_probe_helper.h 2019-01-24 13:20:42 +01:00
arm Merge remote-tracking branch 'drm/drm-next' into drm-misc-next 2019-05-09 10:19:03 +02:00
armada drm/armada: Use drm_fb_helper_fill_info 2019-03-27 09:56:14 +01:00
aspeed drm: aspeed: Clean up Kconfig options 2019-04-16 16:39:24 +02:00
ast drm/ast: Replace mapping code with drm_gem_vram_{kmap/kunmap}() 2019-05-15 16:17:07 +02:00
atmel-hlcdc drm/irq: Don't check for DRIVER_HAVE_IRQ in drm_irq_(un)install 2019-01-29 15:45:06 +01:00
bochs drm/bochs: Convert bochs driver to VRAM MM 2019-05-15 16:17:08 +02:00
bridge drm-misc-next for v5.2: 2019-04-24 10:12:50 +10:00
cirrus drm-misc-next for 5.2: 2019-04-12 14:27:45 +10:00
etnaviv Merge remote-tracking branch 'drm/drm-next' into drm-misc-next 2019-05-09 10:19:03 +02:00
exynos drm/ipp: clean up debug messages 2019-04-24 11:23:20 +09:00
fsl-dcu drm: Use new DRM_BUS_FLAG_*_(DRIVE|SAMPLE)_(POS|NEG)EDGE flags 2019-03-18 11:42:13 +02:00
gma500 drm/gma500: Use drm_fb_helper_fill_info 2019-03-27 09:57:28 +01:00
hisilicon drm/hisilicon: Convert hibmc-drm driver to VRAM MM 2019-05-15 16:17:10 +02:00
i2c drm: Split out drm_probe_helper.h 2019-01-24 13:20:42 +01:00
i810
i915 Merge remote-tracking branch 'drm/drm-next' into drm-misc-next 2019-05-09 10:19:03 +02:00
imx drm-misc-next for 5.2: 2019-03-25 11:05:12 +01:00
lib
lima drm/scheduler: rework job destruction 2019-05-02 15:45:48 -05:00
mediatek drm/mediatek: no change parent rate in round_rate() for MT2701 hdmi phy 2019-04-09 17:47:01 +08:00
meson drm-misc-next for v5.2: 2019-04-24 10:12:50 +10:00
mga drm/irq: Ditch DRIVER_IRQ_SHARED 2019-01-29 15:45:21 +01:00
mgag200 drm/mgag200: Replace mapping code with drm_gem_vram_{kmap/kunmap}() 2019-05-15 16:17:08 +02:00
msm Merge remote-tracking branch 'drm/drm-next' into drm-misc-next 2019-05-09 10:19:03 +02:00
mxsfb drm: Use new DRM_BUS_FLAG_*_(DRIVE|SAMPLE)_(POS|NEG)EDGE flags 2019-03-18 11:42:13 +02:00
nouveau Merge remote-tracking branch 'drm/drm-next' into drm-misc-next 2019-05-09 10:19:03 +02:00
omapdrm Linux 5.1-rc5 2019-04-15 15:51:49 +10:00
panel drm/panel: simple: Add FriendlyELEC HD702E 800x1280 LCD panel 2019-05-07 19:57:58 +02:00
panfrost Merge remote-tracking branch 'drm/drm-next' into drm-misc-next 2019-05-09 10:19:03 +02:00
pl111 drm-misc-next for 5.2: 2019-04-12 14:27:45 +10:00
qxl Merge branch 'drm-next-5.2' of git://people.freedesktop.org/~agd5f/linux into drm-next 2019-04-03 13:26:11 +10:00
r128 drm/irq: Ditch DRIVER_IRQ_SHARED 2019-01-29 15:45:21 +01:00
radeon drm/radeon: drop unused ati pcigart include. 2019-04-24 12:32:14 +10:00
rcar-du drm: rcar-du: lvds: Set LVEN and LVRES bits together on D3 2019-03-28 06:12:42 +02:00
rockchip Merge remote-tracking branch 'drm/drm-next' into drm-misc-next 2019-05-09 10:19:03 +02:00
savage drm/savage: mark expected switch fall-throughs 2019-01-30 17:35:29 +01:00
scheduler drm/scheduler: Add flag to hint the release of guilty job. 2019-05-02 15:50:55 -05:00
selftests drm/selftests/mm: Switch to bitmap_zalloc() 2019-03-20 17:36:06 +00:00
shmobile drm/irq: Don't check for DRIVER_HAVE_IRQ in drm_irq_(un)install 2019-01-29 15:45:06 +01:00
sis
sti drm: Split out drm_probe_helper.h 2019-01-24 13:20:42 +01:00
stm drm/stm: ltdc: return appropriate error code during probe 2019-05-06 09:22:15 +02:00
sun4i drm/sun4i: sun6i_mipi_dsi: Support DSI GENERIC_SHORT_WRITE_2 transfer 2019-05-16 11:03:19 +02:00
tdfx
tegra Merge remote-tracking branch 'drm/drm-next' into drm-misc-next 2019-05-09 10:19:03 +02:00
tilcdc drm/irq: Don't check for DRIVER_HAVE_IRQ in drm_irq_(un)install 2019-01-29 15:45:06 +01:00
tinydrm drm/tinydrm: Fix fbdev pixel format 2019-04-11 16:16:06 +02:00
ttm drm/ttm: Fix spelling of "KiB" 2019-03-19 15:04:03 -05:00
tve200 drm: Use new DRM_BUS_FLAG_*_(DRIVE|SAMPLE)_(POS|NEG)EDGE flags 2019-03-18 11:42:13 +02:00
udl drm/udl: move to embedding drm device inside udl device. 2019-04-24 13:48:45 +10:00
v3d drm/v3d: Fix and extend MMU error handling. 2019-05-16 09:24:52 -07:00
vboxvideo drm/vboxvideo: Convert vboxvideo driver to VRAM MM 2019-05-15 16:17:09 +02:00
vc4 drm-misc-next for 5.2: 2019-04-12 14:27:45 +10:00
vgem drm/vgem: fix use-after-free when drm_gem_handle_create() fails 2019-03-18 08:45:57 +01:00
via drm/via: mark expected switch fall-throughs 2019-01-30 17:35:29 +01:00
virtio drm/virtio: Remove redundant return type 2019-05-06 15:36:23 +02:00
vkms Merge remote-tracking branch 'drm/drm-next' into drm-misc-next 2019-05-09 10:19:03 +02:00
vmwgfx drm/vmwgfx: Remove set but not used variable 'fb_offset, fb_depth' 2019-04-08 10:29:05 -07:00
xen drm/drv: drm_dev_unplug(): Move out drm_dev_put() call 2019-02-21 12:11:58 +01:00
zte drm: Split out drm_probe_helper.h 2019-01-24 13:20:42 +01:00
ati_pcigart.c
drm_agpsupport.c drm: Trivial comment grammar cleanups 2019-02-04 10:21:17 +01:00
drm_atomic_helper.c Merge remote-tracking branch 'drm/drm-next' into drm-misc-next 2019-05-09 10:19:03 +02:00
drm_atomic_state_helper.c drm/docs: Fix typo in __drm_atomic_helper_connector_reset 2019-04-24 11:52:24 +02:00
drm_atomic_uapi.c drm/atomic: -EACCESS for lease-denied crtc lookup 2019-04-24 11:31:17 +02:00
drm_atomic.c drm: Add drm_atomic_get_old/new_private_obj_state 2019-04-29 12:35:56 +01:00
drm_auth.c drm/fb-helper: Avoid race with DRM userspace 2019-05-14 16:11:28 +02:00
drm_blend.c
drm_bridge.c drm: bridge: Constify mode arguments to bridge .mode_set() operation 2019-01-14 03:51:14 +02:00
drm_bufs.c drm/legacy: move map cleanups into drm_bufs.c 2019-04-24 12:32:13 +10:00
drm_cache.c
drm_client.c drm/client: Rename drm_client_add() to drm_client_register() 2019-04-11 16:14:49 +02:00
drm_color_mgmt.c drm: Constify drm_color_lut_check() 2019-01-29 23:26:12 +02:00
drm_connector.c drm: Fix timestamp docs for variable refresh properties. 2019-05-07 10:39:14 -05:00
drm_context.c drm: Fix error handling in drm_legacy_addctx 2019-01-07 11:26:31 +01:00
drm_crtc_helper_internal.h
drm_crtc_helper.c drm: Remove use of drm_mode_object 2019-01-15 13:20:56 +01:00
drm_crtc_internal.h drm/atomic: Wire file_priv through for property changes 2019-04-24 11:30:52 +02:00
drm_crtc.c drm/lease: Make sure implicit planes are leased 2019-04-24 11:30:32 +02:00
drm_damage_helper.c drm: prepare for drmP.h removal from drm_modeset_helper.h 2019-02-07 21:48:28 +01:00
drm_debugfs_crc.c
drm_debugfs.c
drm_dma.c
drm_dp_aux_dev.c drm/dp: drmP.h include removal 2019-05-06 16:00:48 +03:00
drm_dp_cec.c
drm_dp_dual_mode_helper.c drm/dp: drmP.h include removal 2019-05-06 16:00:48 +03:00
drm_dp_helper.c drm/dp: drmP.h include removal 2019-05-06 16:00:48 +03:00
drm_dp_mst_topology.c drm/dp: drmP.h include removal 2019-05-06 16:00:48 +03:00
drm_drv.c drm/legacy: move init/destroy of struct members into legacy file 2019-04-24 12:32:18 +10:00
drm_dsc.c drm/dsc: Split DSC PPS and SDP header initialisations 2019-03-05 13:24:34 -05:00
drm_dumb_buffers.c
drm_edid_load.c drm/edid: drmP.h include removal 2019-05-06 16:01:07 +03:00
drm_edid.c Merge remote-tracking branch 'drm/drm-next' into drm-misc-next 2019-05-09 10:19:03 +02:00
drm_encoder_slave.c
drm_encoder.c
drm_fb_cma_helper.c drm/cma-helper: Remove unused fbdev code 2019-01-17 10:56:38 +01:00
drm_fb_helper.c drm/fb-helper: Fix drm_fb_helper_hotplug_event() NULL ptr argument 2019-05-16 12:01:46 +02:00
drm_file.c drm: Some ocd in drm_file.c 2019-05-09 11:40:20 +02:00
drm_flip_work.c drm: move drm_can_sleep() to drm_util.h 2019-01-14 10:58:37 +01:00
drm_format_helper.c drm: add drm_format_helper.c to kerneldoc 2019-04-17 09:39:22 +02:00
drm_fourcc.c drm/fourcc: Fix conflicting Y41x definitions 2019-03-21 09:49:04 +01:00
drm_framebuffer.c drm: Trivial comment grammar cleanups 2019-02-04 10:21:17 +01:00
drm_gem_cma_helper.c drm/cma-helper: Fix drm_gem_cma_free_object() 2019-05-08 16:01:40 +02:00
drm_gem_framebuffer_helper.c drm/gem-fb-helper: Add drm_gem_fb_create_with_dirty() 2019-01-17 10:56:45 +01:00
drm_gem_shmem_helper.c drm: shmem: Off by one in drm_gem_shmem_fault() 2019-04-01 10:44:34 -07:00
drm_gem_vram_helper.c drm: Integrate VRAM MM into struct drm_device 2019-05-15 16:17:06 +02:00
drm_gem.c drm/gem: Fix sphinx warnings 2019-04-25 10:02:10 -04:00
drm_hashtab.c
drm_internal.h drm/fb-helper: Avoid race with DRM userspace 2019-05-14 16:11:28 +02:00
drm_ioc32.c drm: allow removal of legacy codepaths (v4.1) 2019-04-24 12:33:15 +10:00
drm_ioctl.c drm: introduce a capability flag for syncobj timeline support 2019-05-02 12:36:47 +10:00
drm_irq.c drm: allow removal of legacy codepaths (v4.1) 2019-04-24 12:33:15 +10:00
drm_kms_helper_common.c drm: fix spelling mistake "intead" -> "instead" 2019-03-04 11:18:50 -05:00
drm_lease.c drm/lease: Check for lessor outside of locks 2019-04-24 11:29:32 +02:00
drm_legacy_misc.c drm: Some ocd in drm_file.c 2019-05-09 11:40:20 +02:00
drm_legacy.h drm: Some ocd in drm_file.c 2019-05-09 11:40:20 +02:00
drm_lock.c drm/legacy: move lock cleanup for master into lock file (v2) 2019-04-24 12:32:15 +10:00
drm_memory.c drm: fallback to dma_alloc_coherent when memory encryption is active 2019-04-01 11:43:42 +02:00
drm_mipi_dsi.c
drm_mm.c drm: Trivial comment grammar cleanups 2019-02-04 10:21:17 +01:00
drm_mode_config.c drm: Expose "FB_DAMAGE_CLIPS" property to atomic aware user-space only 2019-04-16 15:13:23 -07:00
drm_mode_object.c drm/atomic: Wire file_priv through for property changes 2019-04-24 11:30:52 +02:00
drm_modes.c drm: Use new DRM_BUS_FLAG_*_(DRIVE|SAMPLE)_(POS|NEG)EDGE flags 2019-03-18 11:42:13 +02:00
drm_modeset_helper.c drm: prepare for drmP.h removal from drm_modeset_helper.h 2019-02-07 21:48:28 +01:00
drm_modeset_lock.c
drm_of.c drm/of: Fix kerneldoc 2019-01-12 13:07:58 +01:00
drm_panel_orientation_quirks.c drm: panel-orientation-quirks: Add quirk for Lenovo Ideapad D330 2019-03-01 09:15:55 +02:00
drm_panel.c drm/panel: Small documentation polish 2019-01-12 13:08:12 +01:00
drm_pci.c cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
drm_plane_helper.c
drm_plane.c drm/lease: Make sure implicit planes are leased 2019-04-24 11:30:32 +02:00
drm_prime.c drm: Add reservation_object to drm_gem_object 2019-02-19 11:08:40 +01:00
drm_print.c drm: Add a helper function for printing a debugfs_regset32. 2019-04-01 10:44:34 -07:00
drm_probe_helper.c drm: Split out drm_probe_helper.h 2019-01-24 13:20:42 +01:00
drm_property.c drm: Trivial comment grammar cleanups 2019-02-04 10:21:17 +01:00
drm_rect.c drm: Nuke drm_calc_{h,v}scale_relaxed() 2019-02-07 13:14:06 +02:00
drm_scatter.c
drm_scdc_helper.c
drm_simple_kms_helper.c drm: Split out drm_probe_helper.h 2019-01-24 13:20:42 +01:00
drm_syncobj.c drm: introduce a capability flag for syncobj timeline support 2019-05-02 12:36:47 +10:00
drm_sysfs.c
drm_trace_points.c
drm_trace.h
drm_vblank.c drm: Trivial comment grammar cleanups 2019-02-04 10:21:17 +01:00
drm_vm.c drm: allow removal of legacy codepaths (v4.1) 2019-04-24 12:33:15 +10:00
drm_vma_manager.c
drm_vram_helper_common.c drm: Integrate VRAM MM into struct drm_device 2019-05-15 16:17:06 +02:00
drm_vram_mm_helper.c drm: Integrate VRAM MM into struct drm_device 2019-05-15 16:17:06 +02:00
drm_writeback.c drm: writeback: Add job prepare and cleanup operations 2019-03-18 17:24:38 +02:00
Kconfig drm: Add |struct drm_gem_vram_object| and helpers 2019-05-15 16:17:04 +02:00
Makefile drm: Add VRAM MM, a simple memory manager for dedicated VRAM 2019-05-15 16:17:06 +02:00