diff options
| author | Abhimanyu Kapur <abhimany@codeaurora.org> | 2014-03-05 20:21:45 -0800 |
|---|---|---|
| committer | David Keitel <dkeitel@codeaurora.org> | 2016-03-22 11:15:55 -0700 |
| commit | e901e28d560601d5fa52b3c8a58c62f764ec1642 (patch) | |
| tree | f61a1ef6398b0dc38353a2fcd043335037a089f8 /arch/arm64/kernel | |
| parent | f9d0fc3347e8a6a6b7a1be153507476b1bcd9f63 (diff) | |
ARM/ARM64: Introduce arch_read_hardware_id
Moving towards device tree and arm single binary refering to
machine descriptor name for hardware id information under
/proc/cpuinfo is not suitable for certain soc vendors. Add a
hook for soc vendors to supply a per-soc hardware read method.
Change-Id: Ifcccdffa3c0e1e8b5f96837eb1c023e468d4c287
Signed-off-by: Abhimanyu Kapur <abhimany@codeaurora.org>
[satyap: trivial merge conflict resolution and move changes
in arch/arm64/kernel from setup.c to cpuinfo.c to
align with kernel 4.4]
Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
Diffstat (limited to 'arch/arm64/kernel')
| -rw-r--r-- | arch/arm64/kernel/cpuinfo.c | 12 | ||||
| -rw-r--r-- | arch/arm64/kernel/setup.c | 7 |
2 files changed, 12 insertions, 7 deletions
diff --git a/arch/arm64/kernel/cpuinfo.c b/arch/arm64/kernel/cpuinfo.c index 1dfdb2fb7d35..0dce71d2fe5b 100644 --- a/arch/arm64/kernel/cpuinfo.c +++ b/arch/arm64/kernel/cpuinfo.c @@ -31,6 +31,12 @@ #include <linux/sched.h> #include <linux/smp.h> #include <linux/delay.h> +#include <linux/of_fdt.h> + +char* (*arch_read_hardware_id)(void); +EXPORT_SYMBOL(arch_read_hardware_id); + +static const char *machine_name; /* * In case the boot CPU is hotpluggable, we record its initial state and @@ -149,6 +155,12 @@ static int c_show(struct seq_file *m, void *v) seq_printf(m, "CPU revision\t: %d\n\n", MIDR_REVISION(midr)); } + machine_name = of_flat_dt_get_machine_name(); + if (!arch_read_hardware_id) + seq_printf(m, "Hardware\t: %s\n", machine_name); + else + seq_printf(m, "Hardware\t: %s\n", arch_read_hardware_id()); + return 0; } diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c index 99553b164f25..f307c089cb93 100644 --- a/arch/arm64/kernel/setup.c +++ b/arch/arm64/kernel/setup.c @@ -70,10 +70,6 @@ EXPORT_SYMBOL(boot_reason); unsigned int cold_boot; EXPORT_SYMBOL(cold_boot); -char* (*arch_read_hardware_id)(void); -EXPORT_SYMBOL(arch_read_hardware_id); - -static const char *machine_name; phys_addr_t __fdt_pointer __initdata; /* @@ -204,9 +200,6 @@ static void __init setup_machine_fdt(phys_addr_t dt_phys) } dump_stack_set_arch_desc("%s (DT)", of_flat_dt_get_machine_name()); - machine_name = of_flat_dt_get_machine_name(); - if (machine_name) - pr_info("Machine: %s\n", machine_name); } static void __init request_standard_resources(void) |
