* Eduardo Valentin <eduardo.valen...@nokia.com> [100426 01:20]:
> From: Eduardo Valentin <eduardo.valen...@nokia.com>
> 
> This patch exports the OMAP3 IDCODE, Production ID and Die ID to userspace
> via /proc/cpuinfo using the system_soc_info.
> 
> This can be used to track down silicon specific issues. The info is
> exported via /proc/cpuinfo because then it can be possible to include this
> in corematic dumps.
> 
> This is based on Peter De Schrijver patch, which export same info via sysfs.
> 
> Signed-off-by: Eduardo Valentin <eduardo.valen...@nokia.com>
> ---
>  arch/arm/mach-omap2/id.c |   20 ++++++++++++++++++++
>  1 files changed, 20 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/arm/mach-omap2/id.c b/arch/arm/mach-omap2/id.c
> index 75e36a5..887787d 100644
> --- a/arch/arm/mach-omap2/id.c
> +++ b/arch/arm/mach-omap2/id.c
> @@ -76,6 +76,10 @@ EXPORT_SYMBOL(omap_type);
>  
> /*----------------------------------------------------------------------------*/
>  
>  #define OMAP_TAP_IDCODE              0x0204
> +#define OMAP_TAP_PROD_ID_0      0x0208
> +#define OMAP_TAP_PROD_ID_1      0x020c
> +#define OMAP_TAP_PROD_ID_2      0x0210
> +#define OMAP_TAP_PROD_ID_3      0x0214
>  #define OMAP_TAP_DIE_ID_0    0x0218
>  #define OMAP_TAP_DIE_ID_1    0x021C
>  #define OMAP_TAP_DIE_ID_2    0x0220
> @@ -306,6 +310,7 @@ void __init omap4_check_revision(void)
>  
>  void __init omap3_cpuinfo(void)
>  {
> +     int sz;
>       u8 rev = GET_OMAP_REVISION();
>       char cpu_name[16], cpu_rev[16];
>  
> @@ -375,6 +380,21 @@ void __init omap3_cpuinfo(void)
>       OMAP3_SHOW_FEATURE(192mhz_clk);
>  
>       printk(")\n");
> +
> +     /* Append OMAP3 IDCODE, Production ID and Die ID to system_soc_info */
> +     sz = strlen(system_soc_info);
> +     snprintf(system_soc_info + sz, SYSTEM_SOC_INFO_SIZE - sz,
> +                     "\n\tIDCODE\t: %08x\n\tPr. ID\t: %08x %08x %08x %08x\n"
> +                     "\tDie ID\t: %08x %08x %08x %08x\n",
> +                     read_tap_reg(OMAP_TAP_IDCODE),
> +                     read_tap_reg(OMAP_TAP_PROD_ID_0),
> +                     read_tap_reg(OMAP_TAP_PROD_ID_1),
> +                     read_tap_reg(OMAP_TAP_PROD_ID_2),
> +                     read_tap_reg(OMAP_TAP_PROD_ID_3),
> +                     read_tap_reg(OMAP_TAP_DIE_ID_0),
> +                     read_tap_reg(OMAP_TAP_DIE_ID_1),
> +                     read_tap_reg(OMAP_TAP_DIE_ID_2),
> +                     read_tap_reg(OMAP_TAP_DIE_ID_3));
>  }
>  
>  /*

We should not expose the Die ID info unless specifically compiled in
with some Kconfig option. Please search for "pentium serial number privacy"
or similar.

Also, this whole series should be discussed on linux-arm-kernel.

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to