@ -28,59 +28,13 @@
# include < c o n f i g . h >
# include < a s m / a r c h / o m a p . h >
# include < a s m / o m a p _ c o m m o n . h >
# include < a s m / a r c h / s p l . h >
# include < l i n u x / l i n k a g e . h >
ENTRY( s a v e _ b o o t _ p a r a m s )
/ *
* See i f t h e r o m c o d e p a s s e d p o i n t e r i s v a l i d :
* It i s n o t v a l i d i f i t i s n o t i n n o n - s e c u r e S R A M
* This m a y h a p p e n i f y o u a r e b o o t i n g w i t h t h e h e l p o f
* debugger
* /
ldr r2 , =NON_SECURE_SRAM_START
cmp r2 , r0
bgt 1 f
ldr r2 , =NON_SECURE_SRAM_END
cmp r2 , r0
blt 1 f
/ *
* store t h e b o o t p a r a m s p a s s e d f r o m r o m c o d e o r s a v e d
* and p a s s e d b y S P L
* /
cmp r0 , #0
beq 1 f
ldr r1 , =boot_params
ldr r1 , =OMAP_SRAM_SCRATCH_BOOT_PARAMS
str r0 , [ r1 ]
# ifdef C O N F I G _ S P L _ B U I L D
/* Store the boot device in spl_boot_device */
ldrb r2 , [ r0 , #B O O T _ D E V I C E _ O F F S E T ] @ r 1 < - v a l u e o f b o o t d e v i c e
and r2 , #B O O T _ D E V I C E _ M A S K
ldr r3 , =boot_params
strb r2 , [ r3 , #B O O T _ D E V I C E _ O F F S E T ] @ s p l _ b o o t _ d e v i c e < - r 1
/ *
* boot m o d e i s o n l y v a l i d f o r d e v i c e t h a t c a n b e r a w o r F A T b o o t e d .
* in o t h e r c a s e s i t m a y b e f a t a l t o l o o k . W h i l e p l a t f o r m s d i f f e r
* in t h e v a l u e s u s e d f o r e a c h M M C s l o t , t h e y a r e c o n t i g u o u s .
* /
cmp r2 , #M M C _ B O O T _ D E V I C E S _ S T A R T
blt 2 f
cmp r2 , #M M C _ B O O T _ D E V I C E S _ E N D
bgt 2 f
/* Store the boot mode (raw/FAT) in omap_bootmode */
ldr r2 , [ r0 , #D E V _ D E S C _ P T R _ O F F S E T ] @ g e t t h e d e v i c e d e s c r i p t o r p t r
ldr r2 , [ r2 , #D E V _ D A T A _ P T R _ O F F S E T ] @ g e t t h e p D e v i c e D a t a p t r
ldr r2 , [ r2 , #B O O T _ M O D E _ O F F S E T ] @ g e t t h e b o o t m o d e
ldr r3 , =omap_bootmode
str r2 , [ r3 ]
# endif
2 :
ldrb r2 , [ r0 , #C H _ F L A G S _ O F F S E T ]
ldr r3 , =boot_params
strb r2 , [ r3 , #C H _ F L A G S _ O F F S E T ]
1 :
bx l r
ENDPROC( s a v e _ b o o t _ p a r a m s )