diff options
author | Gregory CLEMENT <gregory.clement@free-electrons.com> | 2014-06-23 17:42:08 +0200 |
---|---|---|
committer | Jason Cooper <jason@lakedaemon.net> | 2014-06-30 17:40:59 +0000 |
commit | 9674d4a3cf4307dda468a0b48e5e43a2fdb56b68 (patch) | |
tree | d126a74cc3792b0c4f91fbf1355f162e308c004d /arch/arm/mach-mvebu/common.h | |
parent | 5e80d81acc420fa33b56078f73f38546ab99be6f (diff) | |
download | linux-9674d4a3cf4307dda468a0b48e5e43a2fdb56b68.tar.gz |
ARM: mvebu: Use system controller to get the soc id when possible
On Armada 38x it is possible to get the SoC Id and the revision
without using the PCI register. Accessing the PCI registers implies
enabling its clock and, because of the initialization issue, not
keeping them enable. So if possible it is better to avoid it.
Armada 370 and Armada XP provides the SoC ID values from the system
controller but not the revision.
Armada 375 provides both but the SoC ID value looks buggy (0x6660
instead of 0x6720).
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Link: https://lkml.kernel.org/r/1403538128-27859-1-git-send-email-gregory.clement@free-electrons.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
Diffstat (limited to 'arch/arm/mach-mvebu/common.h')
-rw-r--r-- | arch/arm/mach-mvebu/common.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arm/mach-mvebu/common.h b/arch/arm/mach-mvebu/common.h index 0d05eaa10de5..a97778e28bf6 100644 --- a/arch/arm/mach-mvebu/common.h +++ b/arch/arm/mach-mvebu/common.h @@ -21,5 +21,6 @@ void mvebu_restart(enum reboot_mode mode, const char *cmd); int mvebu_cpu_reset_deassert(int cpu); void mvebu_pmsu_set_cpu_boot_addr(int hw_cpu, void *boot_addr); void mvebu_system_controller_set_cpu_boot_addr(void *boot_addr); +int mvebu_system_controller_get_soc_id(u32 *dev, u32 *rev); #endif |