@ -1,5 +1,5 @@
/ *
* Copyright 2 0 0 8 - 2 0 1 1 F r e e s c a l e S e m i c o n d u c t o r , I n c .
* Copyright 2 0 0 8 - 2 0 1 2 F r e e s c a l e S e m i c o n d u c t o r , I n c .
* Kumar G a l a < k u m a r . g a l a @freescale.com>
*
* See f i l e C R E D I T S f o r l i s t o f p e o p l e w h o c o n t r i b u t e d t o t h i s
@ -155,7 +155,27 @@ __secondary_start_page:
/* r10 has the base address for the entry */
mfspr r0 ,S P R N _ P I R
# ifdef C O N F I G _ E 5 0 0 M C
# if d e f i n e d ( C O N F I G _ E 6 5 0 0 )
/ *
* PIR d e f i n i t i o n f o r E 6 5 0 0
* 0 - 1 7 Reserved ( l o g i c 0 s )
* 8 - 1 9 CHIP_ I D , 2 ’ b00 - S o C 1
* all o t h e r s - r e s e r v e d
* 2 0 - 2 4 CLUSTER_ I D 5 ’ b00 0 0 0 - C C M 1
* all o t h e r s - r e s e r v e d
* 2 5 - 2 6 CORE_ C L U S T E R _ I D 2 ’ b00 - c l u s t e r 1
* 2 ’ b0 1 - c l u s t e r 2
* 2 ’ b1 0 - c l u s t e r 3
* 2 ’ b1 1 - c l u s t e r 4
* 2 7 - 2 8 CORE_ I D 2 ’ b00 - c o r e 0
* 2 ’ b0 1 - c o r e 1
* 2 ’ b1 0 - c o r e 2
* 2 ’ b1 1 - c o r e 3
* 2 9 - 3 1 THREAD_ I D 3 ’ b00 0 - t h r e a d 0
* 3 ’ b0 0 1 - t h r e a d 1
* /
rlwinm r4 ,r0 ,2 9 ,2 5 ,3 1
# elif d e f i n e d ( C O N F I G _ E 5 0 0 M C )
rlwinm r4 ,r0 ,2 7 ,2 7 ,3 1
# else
mr r4 ,r0
@ -170,6 +190,25 @@ __secondary_start_page:
mtspr L 1 C S R 2 ,r8
# endif
# ifdef C O N F I G _ E 6 5 0 0
mfspr r0 ,S P R N _ P I R
/ *
* core 0 t h r e a d 0 : p i r r e s e t v a l u e 0 x00 , n e w p i r 0
* core 0 t h r e a d 1 : p i r r e s e t v a l u e 0 x01 , n e w p i r 1
* core 1 t h r e a d 0 : p i r r e s e t v a l u e 0 x08 , n e w p i r 2
* core 1 t h r e a d 1 : p i r r e s e t v a l u e 0 x09 , n e w p i r 3
* core 2 t h r e a d 0 : p i r r e s e t v a l u e 0 x10 , n e w p i r 4
* core 2 t h r e a d 1 : p i r r e s e t v a l u e 0 x11 , n e w p i r 5
* etc.
*
* Only t h r e a d 0 o f e a c h c o r e w i l l b e r u n n i n g , u p d a t i n g P I R d o e s n ' t
* need t o d e a l w i t h t h e t h r e a d b i t s .
* /
rlwinm r4 ,r0 ,3 0 ,2 4 ,3 0
# endif
mtspr S P R N _ P I R ,r4 / * w r i t e t o P I R r e g i s t e r * /
# if d e f i n e d ( C O N F I G _ S Y S _ P 4 0 8 0 _ E R R A T U M _ C P U 2 2 ) | | \
defined( C O N F I G _ S Y S _ F S L _ E R R A T U M _ N M G _ C P U _ A 0 1 1 )
/ *
@ -253,7 +292,7 @@ __secondary_start_page:
/* setup the entry */
li r3 ,0
li r8 ,1
stw r0 ,E N T R Y _ P I R ( r10 )
stw r4 ,E N T R Y _ P I R ( r10 )
stw r3 ,E N T R Y _ A D D R _ U P P E R ( r10 )
stw r8 ,E N T R Y _ A D D R _ L O W E R ( r10 )
stw r3 ,E N T R Y _ R 3 _ U P P E R ( r10 )