We have designed Imx28 board and size of my DDR is 128MB. we must take these next steps
1、linux_prep/include/mx28/platform.h change size for DRAM
#define SDRAM_SIZE 0x040000002、/power_prep/power_prep.c only 5v power
#define NO_DCDC_BATT_SOURCE3、/mach-mx28/hw/power/src/hw_power_registers.c ---???
//261 line
// BF_SET(POWER_5VCTRL, ENABLE_DCDC);4、 boot_prep/init-mx28.c --- enable DIV_CPU_FRAC_EN ???
1304 line
value =0x00010401 ; // HW_CLKCTRL_CPU_RD();
5、 boot_prep/init-mx28.c ----parameter for ddr
void DDR2EmiController_EDE1116_200MHz(void) { ....... }
why we must take step 3 and 4 .
when I use mfgtool ,but mfgtool stop at "Sending Firmware" the console output as attach
I take follow these step
1、I test design for DDR2 on our board as attach
2、I use mem-test to test my board ,the console output as follow
simple test
DDR test passed
t0: memcpy11 SSN test
t1: memcpy8 SSN test
t2: memcpy11 random pattern test
.....t3: byte-wise SSN test
pass
cycle pass
3、when I delete next command
<CMD type="push" body="send" file="files/linux_ivt.sb" >Sending Firmware</CMD>
the consloe output as follow
UTP: running utp_mk_devnode(class/misc,ubi_ctrl,/dev/ubi_ctrl,0x2000)
utp_mk_devnode: creating node '/dev/ubi_ctrl' with 10+62
UTP: sending Success
UTP: received command '$ flash_eraseall /dev/mtd0'
UTP: sending Busy
UTP: executing "flash_eraseall /dev/mtd0"
Erasing 128 Kibyte @ 1400000 -- 100 % complete.
UTP: sending Success
UTP: received command '$ kobs-ng init -v $FILE'
UTP: sending Busy
UTP: executing "kobs-ng init -v $FILE"
MTD CONFIG:
chip_0_device_path = "/dev/mtd0"
chip_1_device_path = "(null)"
search_exponent = 2
data_setup_time = 80
Original Attachment has been moved to: ucl.xml.zip
Original Attachment has been moved to: console.zip
Hi jie
please check if below patch is applied ;
Updates and Patches (9)
L2.6.35_1.1.1_UPDATER_PATCH_UP
The purpose of this patch release is Fix the updater.sb boot issue in the
i.MX28 Linux BSP L2.6.35_1.1.0 release. (REV L2.6.35_1.1.1)
http://www.nxp.com/products/software-and-tools/software-development-tools/i.mx-software-and-tools/i....
regarding file="files/linux_ivt.sb" >Sending Firmware this should be
rebuild with new ddr settings for custom board, please use attached
Linux Guide sect.2.5 Building the Manufacturing Firmware.
Hanging may be also caused by brownouts, one can tweak registers
HW_POWER_VDDIOCTRL[BO_OFFSET], adding debug printfs to code.
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
1、I have used L2.6.35_1.1.1_UPDATER_PATCH_UP
2、I have rebuild with new ddr settings for custom board
3、I have reset BO_OFFSET from 175mv to 500mv .
when I take top three steps , mfgtool still stops at command of "Sending Firmware"
4、I open #if in function of utp_handle_message in file of /linux-2.6.35.3/drivers/usb/gadget/fsl_updater.c . the console output as follow . it seems to be USB error.
Erasing 128 Kibyte @ 1400000 -- 100 % complete.
UTP: sending Success
[ 100.110000] Type 0x0, tag 0x00000004, param 0
[ 100.120000] utp_poll: pass
[ 100.130000] Type 0x1, tag 0x00000005, param 51ec0
[ 100.140000] utp_handle_message: EXEC
UTP: received command 'send'
UTP: sending Success
[ 100.170000] UUD:
[ 100.170000] Flags = 00
[ 100.180000] utp_exec: pass
[ 100.190000] Type 0x3, tag 0x00000005, param 0[ 100.190000] utp_handle_message: PUT, 65536 bytes stop here
[ 130.290000] g_file_storage gadget: high speed config #1
[ 130.720000] g_file_storage gadget: high speed config #1
[ 247.790000] INFO: task usb_wakeup thre:124 blocked for more than 120 seconds.
[ 247.800000] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[ 247.810000] usb_wakeup th D c0206ef0 0 124 2 0x00000000
[ 247.820000] Backtrace:
[ 247.820000] [<c0206c80>] (schedule+0x0/0x2ac) from [<c02070f8>] (schedule_timeout+0x20/0x194)
[ 247.840000] [<c02070d8>] (schedule_timeout+0x0/0x194) from [<c0206b38>] (wait_for_common+0xdc/0x178)
[ 247.850000] r5:c3c738d0 r4:7fffffff
[ 247.860000] [<c0206a5c>] (wait_for_common+0x0/0x178) from [<c0206c7c>] (wait_for_completion+0x18/0x1c)
[ 247.870000] [<c0206c64>] (wait_for_completion+0x0/0x1c) from [<c0035d8c>] (wakeup_event_thread+0x48/0x190)
[ 247.890000] [<c0035d44>] (wakeup_event_thread+0x0/0x190) from [<c00545b0>] (kthread+0x84/0x8c)
[ 247.900000] [<c005452c>] (kthread+0x0/0x8c) from [<c0042ef8>] (do_exit+0x0/0x5f0)
[ 247.910000] r7:00000013 r6:c0042ef8 r5:c005452c r4:c3c23e00
mfgtool.log
1 - Panel A Start processing NAND kernel-rootfs(128MB) <LIST/>.
Panel A Start <CMD/> type="boot" body="Recovery" file="updater.sb" timeout="60" onError="" text="Booting update firmware.".
1 - Panel A Finished <CMD/> type="boot" body="Recovery" file="updater.sb" timeout="60" onError="" text="Booting update firmware." SUCCESS code=0x0.
Panel A Start <CMD/> type="boot" body="Recovery" file="updater_ivt.sb" timeout="60" onError="" text="Booting update firmware.".
1 - Panel A Finished <CMD/> type="boot" body="Recovery" file="updater_ivt.sb" timeout="60" onError="" text="Booting update firmware." SUCCESS code=0x0.
Panel A Start <CMD/> type="find" body="Updater" file="" timeout="180" onError="" text="".
Panel A UtpUpdate Event: DeviceRemoval Msg: (null) DevState: Disconnected OpState: WAITING_FOR_DEVICE
Panel A UtpUpdate Event: VolumeArrival Msg: (null) DevState: Updater OpState: WAITING_FOR_DEVICE
1 - Panel A Finished <CMD/> type="find" body="Updater" file="" timeout="180" onError="" text="" SUCCESS code=0x0.
Panel A Start <CMD/> type="push" body="mknod class/mtd,mtd0,/dev/mtd0" file="" timeout="10" onError="" text="".
1 - Panel A Finished <CMD/> type="push" body="mknod class/mtd,mtd0,/dev/mtd0" file="" timeout="10" onError="" text="" SUCCESS code=0x0.
Panel A Start <CMD/> type="push" body="mknod class/mtd,mtd1,/dev/mtd1" file="" timeout="10" onError="" text="".
1 - Panel A Finished <CMD/> type="push" body="mknod class/mtd,mtd1,/dev/mtd1" file="" timeout="10" onError="" text="" SUCCESS code=0x0.
Panel A Start <CMD/> type="push" body="mknod class/misc,ubi_ctrl,/dev/ubi_ctrl" file="" timeout="10" onError="" text="".
1 - Panel A Finished <CMD/> type="push" body="mknod class/misc,ubi_ctrl,/dev/ubi_ctrl" file="" timeout="10" onError="" text="" SUCCESS code=0x0.
Panel A Start <CMD/> type="push" body="$ flash_eraseall /dev/mtd0" file="" timeout="10" onError="" text="Erasing rootfs partition".
1 - Panel A Finished <CMD/> type="push" body="$ flash_eraseall /dev/mtd0" file="" timeout="10" onError="" text="Erasing rootfs partition" SUCCESS code=0x0.
Panel A Start <CMD/> type="push" body="$ flash_eraseall /dev/mtd1" file="" timeout="10" onError="" text="Erasing rootfs partition".
1 - Panel A Finished <CMD/> type="push" body="$ flash_eraseall /dev/mtd1" file="" timeout="10" onError="" text="Erasing rootfs partition" SUCCESS code=0x0.
Panel A Start <CMD/> type="push" body="send" file="files/imx28_ivt_linux.sb" timeout="10" onError="" text="Sending firmware".
1 - Panel A Finished <CMD/> type="push" body="send" file="files/imx28_ivt_linux.sb" timeout="10" onError="" text="Sending firmware" FAIL code=0xffffffff.
Panel A: Operation is not completed.,failed to run command: type="push" body="send" file="files/imx28_ivt_linux.sb" timeout="10" onError="" text="Sending firmware"
2 - Panel A Finished processing NAND kernel-rootfs(128MB) <LIST/> : FAIL code=-1.
Panel A: Reason is unknown,