From: plagnioj@jcrosoft.com (Jean-Christophe PLAGNIOL-VILLARD)
To: linux-arm-kernel@lists.infradead.org
Subject: [RFC PATCH v3 1/2] ARM: kernel: update cpuinfo to print SoC model name
Date: Thu, 31 Jan 2013 00:18:06 +0100 [thread overview]
Message-ID: <20130130231806.GO7360@game.jcrosoft.org> (raw)
In-Reply-To: <1359558091-29251-2-git-send-email-ruslan.bilovol@ti.com>
On 17:01 Wed 30 Jan , Ruslan Bilovol wrote:
> Currently, reading /proc/cpuinfo provides userspace with CPU ID of
> the CPU carrying out the read from the file.
> Userspace using this information may decide what module
> to load or how to configure some specific (and processor-depended)
> settings or so.
> However, since really different SoCs can share same ARM core,
> this information currently is not so useful.
> For example, TI OMAP4460 and OMAP4470 SoCs show the same
> information in the /proc/cpuinfo whereas they are different.
> Since in most cases ARM CPU is a part of some system on a chip (SoC),
> the "cpuinfo" file looks like exactly that place, where this
> information have to be displayed.
>
> So added new line "SoC name" in the "cpuinfo" output for system
> on a chip name. It is placed between CPU information and machine
> information, so the file structure looks gracefully (CPU-SoC-Hardware)
Nack
this break the kernel ABI
and we have now socinfo via sysfs
Best Regards,
J.
>
> Example:
>
> / # cat proc/cpuinfo
> [...]
> CPU variant : 0x2
> CPU part : 0xc09
> CPU revision : 10
>
> SoC name : OMAP4470
>
> Hardware : OMAP4 Blaze Tablet
> Revision : 20edb4
> [...]
>
> Signed-off-by: Ruslan Bilovol <ruslan.bilovol@ti.com>
> ---
> arch/arm/include/asm/setup.h | 1 +
> arch/arm/kernel/setup.c | 9 +++++++++
> 2 files changed, 10 insertions(+)
>
> diff --git a/arch/arm/include/asm/setup.h b/arch/arm/include/asm/setup.h
> index c50f056..621df40 100644
> --- a/arch/arm/include/asm/setup.h
> +++ b/arch/arm/include/asm/setup.h
> @@ -52,5 +52,6 @@ extern struct meminfo meminfo;
> extern int arm_add_memory(phys_addr_t start, phys_addr_t size);
> extern void early_print(const char *str, ...);
> extern void dump_machine_table(void);
> +extern void set_soc_model_name(char *name);
>
> #endif
> diff --git a/arch/arm/kernel/setup.c b/arch/arm/kernel/setup.c
> index 3f6cbb2..bb3805f 100644
> --- a/arch/arm/kernel/setup.c
> +++ b/arch/arm/kernel/setup.c
> @@ -134,6 +134,7 @@ char elf_platform[ELF_PLATFORM_SIZE];
> EXPORT_SYMBOL(elf_platform);
>
> static const char *cpu_name;
> +static const char *soc_name;
> static const char *machine_name;
> static char __initdata cmd_line[COMMAND_LINE_SIZE];
> struct machine_desc *machine_desc __initdata;
> @@ -493,6 +494,11 @@ static void __init setup_processor(void)
> cpu_init();
> }
>
> +void set_soc_model_name(char *name)
> +{
> + soc_name = name;
> +}
> +
> void __init dump_machine_table(void)
> {
> struct machine_desc *p;
> @@ -902,6 +908,9 @@ static int c_show(struct seq_file *m, void *v)
> seq_printf(m, "CPU revision\t: %d\n\n", cpuid & 15);
> }
>
> + if (soc_name)
> + seq_printf(m, "SoC name\t: %s\n\n", soc_name);
> +
> seq_printf(m, "Hardware\t: %s\n", machine_name);
> seq_printf(m, "Revision\t: %04x\n", system_rev);
> seq_printf(m, "Serial\t\t: %08x%08x\n",
> --
> 1.7.9.5
>
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2013-01-30 23:18 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-01-30 15:01 [RFC PATCH v3 0/2] ARM: update cpuinfo to print SoC model name Ruslan Bilovol
2013-01-30 15:01 ` [RFC PATCH v3 1/2] ARM: kernel: " Ruslan Bilovol
2013-01-30 19:07 ` Nicolas Pitre
2013-01-30 20:37 ` Matt Sealey
2013-01-30 21:02 ` Nicolas Pitre
2013-01-30 23:24 ` Russell King - ARM Linux
2013-01-31 0:33 ` Nicolas Pitre
2013-01-31 11:50 ` Ruslan Bilovol
2013-01-30 23:18 ` Jean-Christophe PLAGNIOL-VILLARD [this message]
2013-01-30 15:01 ` [RFC PATCH v3 2/2] ARM: OMAP4: setup SoC model name during ID initialisation Ruslan Bilovol
2013-01-30 15:57 ` Russell King - ARM Linux
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130130231806.GO7360@game.jcrosoft.org \
--to=plagnioj@jcrosoft.com \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).