yekta ayduk

Custom imx53 board -no u-boot prompt

Discussion created by yekta ayduk on Jun 6, 2012
Latest reply on Feb 7, 2013 by yektaayduk

Dear Community Members,

I have designed an imx53 custom board .
I followed the "imx53 System Development Users Guide"
and
"AN4173 U-Boot for i.MX51 Based Designs Source Code Overview and Customization"
for customization.
I have compiled the uboot code and write the u-boot.bin into SDcard on a linux desktop PC .
I connected the board to hyperterminal and minicom but I couldnt get any u-boot prompt.

After the power-on reset ,SD1_clk is generated (mx53 tries to boot from SDcard-1 ?)
but I dont see any SDRAM_CLK or UART activity .


My Customization steps are below :



STEP 1: Source Code customization :
------------------------------------

I have copied the

/home/ltib/rpm/BUILD/u-boot-2009.08/board/freescale/mx53_loco folder as
mx53_myboard folder and made the necessary changes :


 For DDR2 customization :
   In flash_header.S  
     I changed the IOMUX and ESDCTL Register Loading values according to the DDR2 data sheet.
      
  In lovlevel_init.S
    I didnt change anything.

  In mx53_myboard.c
    in setup_uart() function
           UART1_TXD and UART1_RXD  pins replaced by UART5_TXD and UART5_RXD pins.

     in esdhc_gpio_init() function
          iomux and set_pad functions for clk,cmd,and data pins of  SD1 and SD2 are called.

    In  mx53_myboard.h
      /home/ltib/rpm/BUILD/u-boot-2009.08/include/configs/mx53_myboard.h

      replaced UART1 to UART5
          #define CONFIG_UART_BASE_ADDR   UART5_BASE_ADDR
          #define CONFIG_CONS_INDEX        4
 
      boot from SD1
    #define CONFIG_SYS_FSL_ESDHC_NUM        2
    #define CONFIG_SYS_FSL_ESDHC_ADDR       0
        #define CONFIG_SYS_MMC_ENV_DEV  0

      DRAM banks and size
        #define CONFIG_NR_DRAM_BANKS    1
        #define PHYS_SDRAM_1        CSD0_BASE_ADDR
        #define PHYS_SDRAM_1_SIZE    (512 * 1024 * 1024)
        #define iomem_valid_addr(addr, size) \
    ((addr >= PHYS_SDRAM_1 && addr <= (PHYS_SDRAM_1 + PHYS_SDRAM_1_SIZE))  )

      #define CONFIG_FSL_ENV_IN_MMC
     /* #define CONFIG_FSL_ENV_IN_SATA */

     #elif defined(CONFIG_FSL_ENV_IN_MMC)
    #define CONFIG_ENV_IS_IN_MMC    1
    #define CONFIG_ENV_OFFSET    (768 * 1024)


   ????? Do You think other changes are necessary ?????????


   STEP 2 : Flashing u-boot.bin into SDcard:
-----------------------------------------------

   Disk /dev/sdb: 3951 MB, 3951034368 bytes
19 heads, 48 sectors/track, 8461 cylinders
Units = cylinders of 912 * 512 = 466944 bytes
Disk identifier: 0x000a1287

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1              10        1133      512544   83  Linux
/dev/sdb2            1134        8461     3341568   83  Linux

 sudo dd if=./u-boot.bin of=/dev/sdb bs=512 seek=2
321+1 records in
321+1 records out
164828 bytes (165 kB) copied, 0.012851 s, 12.8 MB/s


  NOTE:
----------------------------------------------

The custom board  has the following components :

--Nand Flash = MT29F8G08ABABAWP ( 8bits NandFlash)

--DDR2 memory = 2 x MT47H32M16(each 16bits =>32 bits memory)
  one DRAM bank ,only DRAM_CS0 is used

--ESDHC-1 and  ESDHC-2 (4bit micro SD cards  are connected)
  My intension is to boot from SD-interface -1 .

-- Five Uarts
    UART5 will be used as u-boot console

--LTC3589-2 is used as PMIC ,TPS54218 is used for 1.8V DDR2 power






Outcomes