When running Linux on a mx28evk and issuing a 'reboot'command the following 
behaviour is observed:

root@freescale /$ reboot                                                        
starting pid 329, tty '': '/etc/rc.d/rcS stop'                                  
root@freescale /$ Stopping inetd:                                               
Terminated                                                                      
Unmounting filesystems                                                          
umount: tmpfs busy - remounted read-only                                        
chown: /home/user/.rhosts: Read-only file system                                
chown: /home/user: Read-only file system                                        
chown: /home/user: Read-only file system                                        
cat: can't open '/proc/devices': No such file or directory                      
The system is going down NOW!                                                   
Sent SIGTERM to all processes                                                   
Sent SIGKILL to all processes                                                   
Requesting system reboot                                                        
[   24.240000] Restarting system.                                               
                                                                          
U-Boot 2011.12-06887-g586ab2f-dirty (Jan 24 2012 - 12:58:50)                    
                                                                                
Freescale i.MX28 family                                                         
DRAM:  0

, and then U-boot hangs.

Calling mx28_power_init() prior to mxs_iomux_setup_multiple_pads() fixes the 
problem and
make U-boot to re-start succesfully.

Signed-off-by: Fabio Estevam <fabio.este...@freescale.com>
---
This patch fixes the reboot issue, but I am not able to provide a good 
explanation for it, so
I am marking it as RFC.

 arch/arm/cpu/arm926ejs/mx28/spl_boot.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/arch/arm/cpu/arm926ejs/mx28/spl_boot.c 
b/arch/arm/cpu/arm926ejs/mx28/spl_boot.c
index dfb8309..0e57252 100644
--- a/arch/arm/cpu/arm926ejs/mx28/spl_boot.c
+++ b/arch/arm/cpu/arm926ejs/mx28/spl_boot.c
@@ -49,8 +49,8 @@ void early_delay(int delay)
 void mx28_common_spl_init(const iomux_cfg_t *iomux_setup,
                        const unsigned int iomux_size)
 {
-       mxs_iomux_setup_multiple_pads(iomux_setup, iomux_size);
        mx28_power_init();
+       mxs_iomux_setup_multiple_pads(iomux_setup, iomux_size);
        mx28_mem_init();
        mx28_power_wait_pswitch();
 }
-- 
1.7.1


_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to