linux_dsm_epyc7002/arch/arm/mach-mvebu
Thomas Petazzoni 6a02734d42 ARM: mvebu: map PCI I/O regions strongly ordered
In order for HW I/O coherency to work on Cortex-A9 based Marvell SoCs,
all MMIO registers must be mapped strongly ordered. In commit
1c8c3cf0b5 ("ARM: 8060/1: mm: allow sub-architectures to override PCI
I/O memory type") we implemented a new function,
pci_ioremap_set_mem_type(), that allow sub-architecture code to override
the memory type used to map PCI I/O regions.

In the discussion around this patch series [1], Arnd Bergmann made the
comment that maybe all PCI I/O regions should be mapped
strongly-ordered, which would have made our proposal to add
pci_ioremap_set_mem_type() irrelevant. So, we submitted a patch [2] that
did what Arnd suggested.

However, Russell in the end merged our initial proposal to add
pci_ioremap_set_mem_type(), but it was never used anywhere. Further
discussion with Arnd and other folks on IRC lead to the conclusion that
in fact using strongly-ordered for all platforms was maybe not
desirable, and therefore, using pci_ioremap_set_mem_type() was the most
appropriate solution.

As a consequence, this commit finally adds the
pci_ioremap_set_mem_type() call in the mach-mvebu platform code, which
was originally part of our initial patch series [3] and is necessary for
the whole mechanism to work.

[1] http://lists.infradead.org/pipermail/linux-arm-kernel/2014-May/256565.html
[2] http://lists.infradead.org/pipermail/linux-arm-kernel/2014-May/256755.html
[3] http://lists.infradead.org/pipermail/linux-arm-kernel/2014-May/256563.html

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2016-06-16 17:00:40 +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: map PCI I/O regions strongly ordered 2016-06-16 17:00:40 +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