From: Christophe Leroy Date: Thu, 13 Jul 2017 13:09:58 +0000 (+0200) Subject: powerpc, 8xx: Simplifying check_CPU() X-Git-Url: http://git.dujemihanovic.xyz/login.html?a=commitdiff_plain;h=36d3260756ec6277acf474e1c407fdd9a104f9cb;p=u-boot.git powerpc, 8xx: Simplifying check_CPU() All complex case have been removed and we now only support MPC866 and MPC885 families. So check_CPU() can be made a lot simpler. Signed-off-by: Christophe Leroy --- diff --git a/arch/powerpc/cpu/mpc8xx/cpu.c b/arch/powerpc/cpu/mpc8xx/cpu.c index 74e6c6d02c..1e0ea28a91 100644 --- a/arch/powerpc/cpu/mpc8xx/cpu.c +++ b/arch/powerpc/cpu/mpc8xx/cpu.c @@ -34,19 +34,11 @@ DECLARE_GLOBAL_DATA_PTR; -static char *cpu_warning = "\n " \ - "*** Warning: CPU Core has Silicon Bugs -- Check the Errata ***"; - static int check_CPU(long clock, uint pvr, uint immr) { - char *id_str = - NULL; immap_t __iomem *immap = (immap_t __iomem *)(immr & 0xFFFF0000); - uint k, m; + uint k; char buf[32]; - char pre = 'X'; - char *mid = "xx"; - char *suf; /* the highest 16 bits should be 0x0050 for a 860 */ @@ -55,8 +47,6 @@ static int check_CPU(long clock, uint pvr, uint immr) k = (immr << 16) | in_be16(&immap->im_cpm.cp_dparam16[PROFF_REVNUM / sizeof(u16)]); - m = 0; - suf = ""; /* * Some boards use sockets so different CPUs can be used. @@ -65,32 +55,20 @@ static int check_CPU(long clock, uint pvr, uint immr) switch (k) { /* MPC866P/MPC866T/MPC859T/MPC859DSL/MPC852T */ case 0x08010004: /* Rev. A.0 */ - suf = "A"; - /* fall through */ + printf("MPC866xxxZPnnA"); + break; case 0x08000003: /* Rev. 0.3 */ - pre = 'M'; m = 1; - if (id_str == NULL) - id_str = - "PC866x"; /* Unknown chip from MPC866 family */ + printf("MPC866xxxZPnn"); break; - case 0x09000000: - pre = 'M'; mid = suf = ""; m = 1; - if (id_str == NULL) - id_str = "PC885"; /* 870/875/880/885 */ + case 0x09000000: /* 870/875/880/885 */ + puts("MPC885ZPnn"); break; default: - suf = NULL; + printf("unknown MPC86x (0x%08x)", k); break; } - if (id_str == NULL) - id_str = "PC86x"; /* Unknown 86x chip */ - if (suf) - printf("%c%s%sZPnn%s", pre, id_str, mid, suf); - else - printf("unknown M%s (0x%08x)", id_str, k); - printf(" at %s MHz: ", strmhz(buf, clock)); print_size(checkicache(), " I-Cache "); @@ -102,9 +80,6 @@ static int check_CPU(long clock, uint pvr, uint immr) if (in_be32(&immap->im_cpm.cp_fec.fec_addr_low) == 0x12345678) printf(" FEC present"); - if (!m) - puts(cpu_warning); - putc('\n'); return 0;