linux_dsm_epyc7002/arch/arm/mach-mvebu
Thomas Petazzoni c5379ba8fc ARM: mvebu: fix HW I/O coherency related deadlocks
Until now, our understanding for HW I/O coherency to work on the
Cortex-A9 based Marvell SoC was that only the PCIe regions should be
mapped strongly-ordered. However, we were still encountering some
deadlocks, especially when testing the CESA crypto engine. After
checking with the HW designers, it was concluded that all the MMIO
registers should be mapped as strongly ordered for the HW I/O coherency
mechanism to work properly.

This fixes some easy to reproduce deadlocks with the CESA crypto engine
driver (dmcrypt on a sufficiently large disk partition).

Tested-by: Terry Stockert <stockert@inkblotadmirer.me>
Tested-by: Romain Perier <romain.perier@free-electrons.com>
Cc: Terry Stockert <stockert@inkblotadmirer.me>
Cc: Romain Perier <romain.perier@free-electrons.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2016-06-16 16:43:10 +02:00
..
armada-370-xp.h ARM: use const and __initconst for smp_operations 2015-12-01 22:17:45 +01:00
board-v7.c ARM: mvebu: remove the workaround imprecise abort fault handler 2015-10-15 09:21:42 +02:00
coherency_ll.S ARM: mvebu: make the coherency_ll.S functions work with no coherency fabric 2014-11-22 01:49:27 +00:00
coherency.c ARM: mvebu: fix HW I/O coherency related deadlocks 2016-06-16 16:43:10 +02:00
coherency.h ARM: mvebu: Remove the unused argument of set_cpu_coherent() 2014-05-08 16:18:52 +00:00
common.h ARM: mvebu: Add standby support 2015-07-25 17:17:05 +02:00
cpu-reset.c ARM: mvebu: Clean-up the Armada XP support 2014-11-22 02:13:24 +00:00
dove.c ARM: dove: create a proper PMU driver for power domains, PMU IRQs and resets 2015-08-05 18:36:49 +02:00
headsmp-a9.S Remove __cpuinit macros and users. 2015-07-02 09:54:14 -07:00
headsmp.S ARM: mvebu: Split low level functions to manipulate HW coherency 2014-05-08 16:18:54 +00:00
Kconfig The clk changes for this release cycle are mostly dominated by 2016-03-23 06:06:45 -07:00
kirkwood-pm.c ARM: mvebu: Simplify headers and make local 2014-02-22 21:19:59 +00:00
kirkwood-pm.h ARM: mvebu: Move kirkwood DT boards into mach-mvebu 2014-02-22 21:19:55 +00:00
kirkwood.c ARM: mvebu: remove static LED setup for netxbig boards 2015-11-03 08:59:30 +01:00
kirkwood.h ARM: mvebu: Simplify headers and make local 2014-02-22 21:19:59 +00:00
Makefile ARM: mvebu: remove static LED setup for netxbig boards 2015-11-03 08:59:30 +01:00
mvebu-soc-id.c ARM: mvebu: Use system controller to get the soc id when possible 2014-06-30 17:40:59 +00:00
mvebu-soc-id.h ARM: mvebu: Update the SoC ID and revision definitions 2015-01-09 09:22:53 -06:00
platsmp-a9.c ARM: use const and __initconst for smp_operations 2015-12-01 22:17:45 +01:00
platsmp.c ARM: mvebu: add missing of_node_put() 2016-02-08 17:30:14 +01:00
pm-board.c ARM: mvebu: Add standby support 2015-07-25 17:17:05 +02:00
pm.c ARM: mvebu: Warn about the wake-up sources not taken into account in suspend 2015-07-28 11:40:47 +02:00
pmsu_ll.S mvebu SoC suspend changes for v3.19 2014-12-04 16:46:43 +01:00
pmsu.c cpufreq: mvebu: Move cpufreq code into drivers/cpufreq/ 2016-04-28 15:22:43 +02:00
pmsu.h mvebu SoC suspend changes for v3.19 2014-12-04 16:46:43 +01:00
system-controller.c ARM: mvebu: build armada375-smp code conditionally 2015-02-18 12:20:29 +01:00