[U-Boot] [PATCH v5] mx6: Read silicon revision from register
Stefano Babic
sbabic at denx.de
Tue Mar 20 07:28:16 CET 2012
On 19/03/2012 23:07, Fabio Estevam wrote:
> Instead of hardcoding the mx6 silicon revision, read it in run-time.
>
> Also, besides the silicon version print the mx6 variant type: quad,dual/solo
> or solo-lite.
>
> Tested on a mx6qsabrelite, where it shows:
>
> CPU: Freescale i.MX6Q rev1.0 at 792 MHz
>
> Signed-off-by: Fabio Estevam <fabio.estevam at freescale.com>
> ---
Hi Fabio,
>
> #if defined(CONFIG_DISPLAY_CPUINFO)
> +
> +#ifdef CONFIG_MX6Q
> +static char *get_mx6_type(u32 mx6type)
> +{
> + switch (mx6type) {
> + case 0x63:
> + return "Q"; /* Quad-core version of the mx6 */
> + case 0x61:
> + return "DS"; /* Dual/Solo version of the mx6 */
> + case 0x60:
> + return "SL"; /* Solo-Lite version of the mx6 */
> + default:
> + return "unknown";
> + }
> +}
> +#endif
> +
> int print_cpuinfo(void)
> {
> u32 cpurev;
>
> cpurev = get_cpu_rev();
> - printf("CPU: Freescale i.MX%x family rev%d.%d at %d MHz\n",
> +
> +#ifdef CONFIG_MX6Q
> + printf("CPU: Freescale i.MX6%s rev%d.%d at %d MHz\n",
> + get_mx6_type((cpurev & 0xFF000) >> 12),
> + (cpurev & 0x000F0) >> 4,
> + (cpurev & 0x0000F) >> 0,
> + mxc_get_clock(MXC_ARM_CLK) / 1000000);
> +#else
> + printf("CPU: Freescale i.MX%x rev%d.%d at %d MHz\n",
> (cpurev & 0xFF000) >> 12,
> (cpurev & 0x000F0) >> 4,
> (cpurev & 0x0000F) >> 0,
> mxc_get_clock(MXC_ARM_CLK) / 1000000);
> +#endif
What about if we modify slightly the code checking for MX6 in
get_mx6_type (that could become get_mx_type) ? Something like:
static char *get_mx6_type(u32 mx6type) {
if ((mx6type & 0x60) != 0x60)
return NULL;
we could drop CONFIG_MX6Q at all and also the duplication of code in
print_cpuinfo()
Best regards,
Stefano
--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: office at denx.de
=====================================================================
More information about the U-Boot
mailing list