diff options
author | Alexander Graf <agraf@suse.de> | 2014-04-11 17:09:45 +0200 |
---|---|---|
committer | York Sun <yorksun@freescale.com> | 2014-04-22 17:58:45 -0700 |
commit | fa08d39517773882b07965ca4330777c6d6697ae (patch) | |
tree | cb16ee896b29f9d9cc72abfef804a375291f178c /arch/powerpc/cpu/mpc85xx/start.S | |
parent | fd96ea4dd9a22ee380f1c59939a42744aa196ad0 (diff) | |
download | u-boot-imx-fa08d39517773882b07965ca4330777c6d6697ae.zip u-boot-imx-fa08d39517773882b07965ca4330777c6d6697ae.tar.gz u-boot-imx-fa08d39517773882b07965ca4330777c6d6697ae.tar.bz2 |
PPC 85xx: Add qemu-ppce500 machine
For KVM we have a special PV machine type called "ppce500". This machine
is inspired by the MPC8544DS board, but implements a lot less features
than that one.
It also provides more PCI slots and is supposed to be enumerated by
device tree only.
This patch adds support for the generic ppce500 machine and tries to
rely solely on device tree for device enumeration.
Signed-off-by: Alexander Graf <agraf@suse.de>
Acked-by: Scott Wood <scottwood@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
Diffstat (limited to 'arch/powerpc/cpu/mpc85xx/start.S')
-rw-r--r-- | arch/powerpc/cpu/mpc85xx/start.S | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/powerpc/cpu/mpc85xx/start.S b/arch/powerpc/cpu/mpc85xx/start.S index 691bd3a..6b0380f 100644 --- a/arch/powerpc/cpu/mpc85xx/start.S +++ b/arch/powerpc/cpu/mpc85xx/start.S @@ -78,6 +78,13 @@ _start_e500: li r1,MSR_DE mtmsr r1 + /* + * If we got an ePAPR device tree pointer passed in as r3, we need that + * later in cpu_init_early_f(). Save it to a safe register before we + * clobber it so that we can fetch it from there later. + */ + mr r24, r3 + #ifdef CONFIG_SYS_FSL_ERRATUM_A004510 mfspr r3,SPRN_SVR rlwinm r3,r3,0,0xff @@ -1142,6 +1149,10 @@ _start_cont: mr r1,r3 /* Transfer to SP(r1) */ GET_GOT + + /* Pass our potential ePAPR device tree pointer to cpu_init_early_f */ + mr r3, r24 + bl cpu_init_early_f /* switch back to AS = 0 */ |