qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Daniel Henrique Barboza <danielhb413@gmail.com>
To: "Pali Rohár" <pali@kernel.org>, "Cédric Le Goater" <clg@kaod.org>,
	"David Gibson" <david@gibson.dropbear.id.au>,
	"Greg Kurz" <groug@kaod.org>
Cc: qemu-ppc@nongnu.org, qemu-devel@nongnu.org
Subject: Re: [PATCH] target/ppc: Fix MPC8555 and MPC8560 core type to e500v1
Date: Wed, 6 Jul 2022 14:45:16 -0300	[thread overview]
Message-ID: <48a8cd48-772b-1717-f28b-5c4de379d309@gmail.com> (raw)
In-Reply-To: <20220703195029.23793-1-pali@kernel.org>



On 7/3/22 16:50, Pali Rohár wrote:
> Commit 80d11f4467c4 ("Add definitions for Freescale PowerPC implementations")
> changed core type of MPC8555 and MPC8560 from e500v1 to e500v2.
> 
> But both MPC8555 and MPC8560 have just e500v1 cores, there are no features
> of e500v2 cores. It can be verified by reading NXP documentations:
> https://www.nxp.com/docs/en/data-sheet/MPC8555EEC.pdf
> https://www.nxp.com/docs/en/data-sheet/MPC8560EC.pdf
> https://www.nxp.com/docs/en/reference-manual/MPC8555ERM.pdf
> https://www.nxp.com/docs/en/reference-manual/MPC8560RM.pdf
> 
> Therefore fix core type of MPC8555 and MPC8560 back to e500v1.
> 
> Fixes: 80d11f4467c4 ("Add definitions for Freescale PowerPC implementations")
> Signed-off-by: Pali Rohár <pali@kernel.org>
> ---

Reviewed-by: Daniel Henrique Barboza <danielhb413@gmail.com>


And queued in ppc-next after appending the commit message with the
following:


---------

Just for completeness, here is list of all Motorola/Freescale/NXP
processors which were released and have e500v1 or e500v2 cores:

e500v1: MPC8540 MPC8541 MPC8555 MPC8560

e500v2: BSC9131 BSC9132
         C291 C292 C293
         MPC8533 MPC8535 MPC8536 MPC8543 MPC8544 MPC8545 MPC8547
         MPC8548 MPC8567 MPC8568 MPC8569 MPC8572
         P1010 P1011 P1012 P1013 P1014 P1015 P1016 P1020 P1021
         P1022 P1024 P1025 P2010 P2020

Sorted alphabetically; not by release date / generation / feature set.
All this is from public information available on NXP website.

Seems that qemu has support only for some subset of MPC85xx processors.
Historically processors with e500 cores have mpc85xx family codename and
lot of software have them in mpc85xx architecture subdirectory.

Note that GCC uses -mcpu=8540 option for specifying e500v1 core and
-mcpu=8548 option for specifying e500v2 core.

So sometimes (mpc)8540 is alias for e500v1 and (mpc)8548 is alias for
e500v2.
--------


Thanks,


Daniel


>   target/ppc/cpu-models.c | 14 +++++++-------
>   target/ppc/cpu-models.h | 14 +++++++-------
>   2 files changed, 14 insertions(+), 14 deletions(-)
> 
> diff --git a/target/ppc/cpu-models.c b/target/ppc/cpu-models.c
> index 976be5e0d171..44a2710c5843 100644
> --- a/target/ppc/cpu-models.c
> +++ b/target/ppc/cpu-models.c
> @@ -385,19 +385,19 @@
>       POWERPC_DEF_SVR("mpc8548e_v21", "MPC8548E v2.1",
>                       CPU_POWERPC_MPC8548E_v21, POWERPC_SVR_8548E_v21, e500v2)
>       POWERPC_DEF_SVR("mpc8555_v10", "MPC8555 v1.0",
> -                    CPU_POWERPC_MPC8555_v10,  POWERPC_SVR_8555_v10,  e500v2)
> +                    CPU_POWERPC_MPC8555_v10,  POWERPC_SVR_8555_v10,  e500v1)
>       POWERPC_DEF_SVR("mpc8555_v11", "MPC8555 v1.1",
> -                    CPU_POWERPC_MPC8555_v11,  POWERPC_SVR_8555_v11,  e500v2)
> +                    CPU_POWERPC_MPC8555_v11,  POWERPC_SVR_8555_v11,  e500v1)
>       POWERPC_DEF_SVR("mpc8555e_v10", "MPC8555E v1.0",
> -                    CPU_POWERPC_MPC8555E_v10, POWERPC_SVR_8555E_v10, e500v2)
> +                    CPU_POWERPC_MPC8555E_v10, POWERPC_SVR_8555E_v10, e500v1)
>       POWERPC_DEF_SVR("mpc8555e_v11", "MPC8555E v1.1",
> -                    CPU_POWERPC_MPC8555E_v11, POWERPC_SVR_8555E_v11, e500v2)
> +                    CPU_POWERPC_MPC8555E_v11, POWERPC_SVR_8555E_v11, e500v1)
>       POWERPC_DEF_SVR("mpc8560_v10", "MPC8560 v1.0",
> -                    CPU_POWERPC_MPC8560_v10,  POWERPC_SVR_8560_v10,  e500v2)
> +                    CPU_POWERPC_MPC8560_v10,  POWERPC_SVR_8560_v10,  e500v1)
>       POWERPC_DEF_SVR("mpc8560_v20", "MPC8560 v2.0",
> -                    CPU_POWERPC_MPC8560_v20,  POWERPC_SVR_8560_v20,  e500v2)
> +                    CPU_POWERPC_MPC8560_v20,  POWERPC_SVR_8560_v20,  e500v1)
>       POWERPC_DEF_SVR("mpc8560_v21", "MPC8560 v2.1",
> -                    CPU_POWERPC_MPC8560_v21,  POWERPC_SVR_8560_v21,  e500v2)
> +                    CPU_POWERPC_MPC8560_v21,  POWERPC_SVR_8560_v21,  e500v1)
>       POWERPC_DEF_SVR("mpc8567", "MPC8567",
>                       CPU_POWERPC_MPC8567,      POWERPC_SVR_8567,      e500v2)
>       POWERPC_DEF_SVR("mpc8567e", "MPC8567E",
> diff --git a/target/ppc/cpu-models.h b/target/ppc/cpu-models.h
> index 76775a74a9b6..1326493a9a05 100644
> --- a/target/ppc/cpu-models.h
> +++ b/target/ppc/cpu-models.h
> @@ -184,13 +184,13 @@ enum {
>   #define CPU_POWERPC_MPC8548E_v11     CPU_POWERPC_e500v2_v11
>   #define CPU_POWERPC_MPC8548E_v20     CPU_POWERPC_e500v2_v20
>   #define CPU_POWERPC_MPC8548E_v21     CPU_POWERPC_e500v2_v21
> -#define CPU_POWERPC_MPC8555_v10      CPU_POWERPC_e500v2_v10
> -#define CPU_POWERPC_MPC8555_v11      CPU_POWERPC_e500v2_v11
> -#define CPU_POWERPC_MPC8555E_v10     CPU_POWERPC_e500v2_v10
> -#define CPU_POWERPC_MPC8555E_v11     CPU_POWERPC_e500v2_v11
> -#define CPU_POWERPC_MPC8560_v10      CPU_POWERPC_e500v2_v10
> -#define CPU_POWERPC_MPC8560_v20      CPU_POWERPC_e500v2_v20
> -#define CPU_POWERPC_MPC8560_v21      CPU_POWERPC_e500v2_v21
> +#define CPU_POWERPC_MPC8555_v10      CPU_POWERPC_e500v1_v20
> +#define CPU_POWERPC_MPC8555_v11      CPU_POWERPC_e500v1_v20
> +#define CPU_POWERPC_MPC8555E_v10     CPU_POWERPC_e500v1_v20
> +#define CPU_POWERPC_MPC8555E_v11     CPU_POWERPC_e500v1_v20
> +#define CPU_POWERPC_MPC8560_v10      CPU_POWERPC_e500v1_v10
> +#define CPU_POWERPC_MPC8560_v20      CPU_POWERPC_e500v1_v20
> +#define CPU_POWERPC_MPC8560_v21      CPU_POWERPC_e500v1_v20
>   #define CPU_POWERPC_MPC8567          CPU_POWERPC_e500v2_v22
>   #define CPU_POWERPC_MPC8567E         CPU_POWERPC_e500v2_v22
>   #define CPU_POWERPC_MPC8568          CPU_POWERPC_e500v2_v22


      parent reply	other threads:[~2022-07-06 17:47 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-03 19:50 [PATCH] target/ppc: Fix MPC8555 and MPC8560 core type to e500v1 Pali Rohár
2022-07-04 10:18 ` Pali Rohár
2022-07-04 15:36   ` 罗勇刚(Yonggang Luo)
2023-04-08 21:14   ` Pali Rohár
2022-07-06 17:45 ` Daniel Henrique Barboza [this message]

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=48a8cd48-772b-1717-f28b-5c4de379d309@gmail.com \
    --to=danielhb413@gmail.com \
    --cc=clg@kaod.org \
    --cc=david@gibson.dropbear.id.au \
    --cc=groug@kaod.org \
    --cc=pali@kernel.org \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@nongnu.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).