Custom imx53 board -no u-boot prompt

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Custom imx53 board -no u-boot prompt

1,318 Views
yekta
Contributor II

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






2 Replies

758 Views
yekta
Contributor II

--I think,I found what is missing(but not tried yet) .

clk_config(CONFIG_REF_CLK_FREQ, 1000, CPU_CLK);

which is called in board_late_init function() .

I commented out this part because it seems to be related to the PMIC voltage setting.

--But clk_config () is called four times in imx53_evk to set  NFC CLK,DDR CLK,CPU CLK ,PERIPHERAL CLK

for other mx53 boards its called only once for CPU CLK ?

0 Kudos
Reply

758 Views
yektaayduk
Contributor II

I redesigned the board to be able to use tools like ddr tester sw . ROM code looks for the activity on the serial ports but it has own default IOMUX pins for uart pins differenet than my old layout,also usb pins are terminated. By adjusting DDR2 parameters RAM tests dont fail anymore .Then I realised that SDcard boot in high speed mode there are setup hold time violations (arising from SDcard ?),in normal speed I can boot from SDcard ,prompt is OK.

0 Kudos
Reply