i.Mx285 | Linux 2.6.35.3 from L2.6.35_10.01_SDK | Manufacturing Tool (Mfgtools-Rel-1.6.2.032)

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

i.Mx285 | Linux 2.6.35.3 from L2.6.35_10.01_SDK | Manufacturing Tool (Mfgtools-Rel-1.6.2.032)

4,669 Views
andreass_
Contributor III

Hi everybody,

 

I have big problems to get our device running.

Acually we develop a TFT-Module for displaying elevator-applications.

 

We use the i.MX285-Processor from freescale. As OS we decided to use linux.

For evaluation we use the imx28evk with the linuxkernel 2.6.35.3 from the L2.6.35_10.01_SDK - (here all works)

 

now our real Hardware arrived and the Problems begins.

After checking power and other hardware aspects we want to program the imx285 with the MfgTool from Freescale with the kernel of EVK.

The tool detect our Hardware as HID-Device , I think thats a good sign. But after I press the start button, the tool display an Error (err=2, File not found, but the file is there, I tried it with absolute paths too)

It seems that the tool have problems with reading the updater_ivt.sb File.

 

 

Is there a diffenence in Kernelbuilding between the imx285 of our Hardware and the imx287 of the EVK?

and what I have to change to get a Basic Kernel running?

 

I hope anyone can help me. Many thanks

Original Attachment has been moved to: mfgtool.log.zip

Original Attachment has been moved to: ucl.xml.zip

Labels (2)
0 Kudos
11 Replies

2,337 Views
andreass_
Contributor III

Issue of incorrect DDR settings.

We have done some stress tests with success, but we think there is a problem in interacting with DDR2, IMX285 and NAND-Flash.

The imx has following registers to setup DDR

(In our first step, used the excelsheet for this register without success)

Could someone help us for setting this register for our DDR chip (MT47H64M16HR-25E). Actual we work with the settings of EVK and the kernel hung on checking bad block for NAND.

This are the default values for EVK

DRAM_REG[0] = 0x00000000;

    DRAM_REG[1] = 0x00000000;

    DRAM_REG[2] = 0x00000000;

    DRAM_REG[3] = 0x00000000;

    DRAM_REG[4] = 0x00000000;

    DRAM_REG[5] = 0x00000000;

    DRAM_REG[6] = 0x00000000;

    DRAM_REG[7] = 0x00000000;

    DRAM_REG[8] = 0x00000000;

    DRAM_REG[9] = 0x00000000;

    DRAM_REG[10] = 0x00000000;

    DRAM_REG[11] = 0x00000000;

    DRAM_REG[12] = 0x00000000;

    DRAM_REG[13] = 0x00000000;

    DRAM_REG[14] = 0x00000000;

    DRAM_REG[15] = 0x00000000;

    DRAM_REG[16] = 0x00000000;

    DRAM_REG[17] = 0x00000100;

    DRAM_REG[18] = 0x00000000;

    DRAM_REG[19] = 0x00000000;

    DRAM_REG[20] = 0x00000000;

    DRAM_REG[21] = 0x00000000;

    DRAM_REG[22] = 0x00000000;

    DRAM_REG[23] = 0x00000000;

    DRAM_REG[24] = 0x00000000;

    DRAM_REG[25] = 0x00000000;

    DRAM_REG[26] = 0x00010101;

    DRAM_REG[27] = 0x01010101;

    DRAM_REG[28] = 0x000f0f01;

    DRAM_REG[29] = 0x0f02020a;

    DRAM_REG[30] = 0x00000000;

    DRAM_REG[31] = 0x00010101;

    DRAM_REG[32] = 0x00000100;

    DRAM_REG[33] = 0x00000100;

    DRAM_REG[34] = 0x00000000;

    DRAM_REG[35] = 0x00000002;

    DRAM_REG[36] = 0x01010000;

    DRAM_REG[37] = 0x07080403; //Original

    //DRAM_REG[37] = 0x07080304;    //CASLAT=3 WRLAT=4

    DRAM_REG[38] = 0x06005003;

    DRAM_REG[39] = 0x0a0000c8;

    DRAM_REG[40] = 0x02009c40;

    DRAM_REG[41] = 0x0002030c;

    DRAM_REG[42] = 0x0036a609;

    DRAM_REG[43] = 0x031a0612;

    DRAM_REG[44] = 0x02030202;

    DRAM_REG[45] = 0x00c8001c;

    DRAM_REG[46] = 0x00000000;

    DRAM_REG[47] = 0x00000000;

    DRAM_REG[48] = 0x00012100;

    DRAM_REG[49] = 0xffff0303;

    DRAM_REG[50] = 0x00012100;

    DRAM_REG[51] = 0xffff0303;

    DRAM_REG[52] = 0x00012100;

    DRAM_REG[53] = 0xffff0303;

    DRAM_REG[54] = 0x00012100;

    DRAM_REG[55] = 0xffff0303;

    DRAM_REG[56] = 0x00000003;

    DRAM_REG[57] = 0x00000000;

    DRAM_REG[58] = 0x00000000;

    DRAM_REG[59] = 0x00000000;

    DRAM_REG[60] = 0x00000000;

    DRAM_REG[61] = 0x00000000;

    DRAM_REG[62] = 0x00000000;

    DRAM_REG[63] = 0x00000000;

    DRAM_REG[64] = 0x00000000;

    DRAM_REG[65] = 0x00000000;

    DRAM_REG[66] = 0x00000612;

    DRAM_REG[67] = 0x01000f02;

    DRAM_REG[68] = 0x06120612;

    DRAM_REG[69] = 0x00000200;

    DRAM_REG[70] = 0x00020007;

    DRAM_REG[71] = 0xf4004a27;

    DRAM_REG[72] = 0xf4004a27;

    DRAM_REG[73] = 0xf4004a27;

    DRAM_REG[74] = 0xf4004a27;

    DRAM_REG[75] = 0x07000300;

    DRAM_REG[76] = 0x07000300;

    DRAM_REG[77] = 0x07400300;

    DRAM_REG[78] = 0x07400300;

    DRAM_REG[79] = 0x00000005;

    DRAM_REG[80] = 0x00000000;

    DRAM_REG[81] = 0x00000000;

    DRAM_REG[82] = 0x01000000;

    DRAM_REG[83] = 0x01020408;

    DRAM_REG[84] = 0x08040201;

    DRAM_REG[85] = 0x000f1133;

    DRAM_REG[86] = 0x00000000;

    DRAM_REG[87] = 0x00001f04;

    DRAM_REG[88] = 0x00001f04;

    DRAM_REG[89] = 0x00001f04;

    DRAM_REG[90] = 0x00001f04;

    DRAM_REG[91] = 0x00001f04;

    DRAM_REG[92] = 0x00001f04;

    DRAM_REG[93] = 0x00001f04;

    DRAM_REG[94] = 0x00001f04;

    DRAM_REG[95] = 0x00000000;

    DRAM_REG[96] = 0x00000000;

    DRAM_REG[97] = 0x00000000;

    DRAM_REG[98] = 0x00000000;

    DRAM_REG[99] = 0x00000000;

    DRAM_REG[100] = 0x00000000;

    DRAM_REG[101] = 0x00000000;

    DRAM_REG[102] = 0x00000000;

    DRAM_REG[103] = 0x00000000;

    DRAM_REG[104] = 0x00000000;

    DRAM_REG[105] = 0x00000000;

    DRAM_REG[106] = 0x00000000;

    DRAM_REG[107] = 0x00000000;

    DRAM_REG[108] = 0x00000000;

    DRAM_REG[109] = 0x00000000;

    DRAM_REG[110] = 0x00000000;

    DRAM_REG[111] = 0x00000000;

    DRAM_REG[112] = 0x00000000;

    DRAM_REG[113] = 0x00000000;

    DRAM_REG[114] = 0x00000000;

    DRAM_REG[115] = 0x00000000;

    DRAM_REG[116] = 0x00000000;

    DRAM_REG[117] = 0x00000000;

    DRAM_REG[118] = 0x00000000;

    DRAM_REG[119] = 0x00000000;

    DRAM_REG[120] = 0x00000000;

    DRAM_REG[121] = 0x00000000;

    DRAM_REG[122] = 0x00000000;

    DRAM_REG[123] = 0x00000000;

    DRAM_REG[124] = 0x00000000;

    DRAM_REG[125] = 0x00000000;

    DRAM_REG[126] = 0x00000000;

    DRAM_REG[127] = 0x00000000;

    DRAM_REG[128] = 0x00000000;

    DRAM_REG[129] = 0x00000000;

    DRAM_REG[130] = 0x00000000;

    DRAM_REG[131] = 0x00000000;

    DRAM_REG[132] = 0x00000000;

    DRAM_REG[133] = 0x00000000;

    DRAM_REG[134] = 0x00000000;

    DRAM_REG[135] = 0x00000000;

    DRAM_REG[136] = 0x00000000;

    DRAM_REG[137] = 0x00000000;

    DRAM_REG[138] = 0x00000000;

    DRAM_REG[139] = 0x00000000;

    DRAM_REG[140] = 0x00000000;

    DRAM_REG[141] = 0x00000000;

    DRAM_REG[142] = 0x00000000;

    DRAM_REG[143] = 0x00000000;

    DRAM_REG[144] = 0x00000000;

    DRAM_REG[145] = 0x00000000;

    DRAM_REG[146] = 0x00000000;

    DRAM_REG[147] = 0x00000000;

    DRAM_REG[148] = 0x00000000;

    DRAM_REG[149] = 0x00000000;

    DRAM_REG[150] = 0x00000000;

    DRAM_REG[151] = 0x00000000;

    DRAM_REG[152] = 0x00000000;

    DRAM_REG[153] = 0x00000000;

    DRAM_REG[154] = 0x00000000;

    DRAM_REG[155] = 0x00000000;

    DRAM_REG[156] = 0x00000000;

    DRAM_REG[157] = 0x00000000;

    DRAM_REG[158] = 0x00000000;

    DRAM_REG[159] = 0x00000000;

    DRAM_REG[160] = 0x00000000;

    DRAM_REG[161] = 0x00000000;

    DRAM_REG[162] = 0x00010000;

    DRAM_REG[163] = 0x00030404;

    DRAM_REG[164] = 0x00000003;

    DRAM_REG[165] = 0x00000000;

    DRAM_REG[166] = 0x00000000;

    DRAM_REG[167] = 0x00000000;

    DRAM_REG[168] = 0x00000000;

    DRAM_REG[169] = 0x00000000;

    DRAM_REG[170] = 0x00000000;

    DRAM_REG[171] = 0x01010000;

    DRAM_REG[172] = 0x01000000;

    DRAM_REG[173] = 0x03030000;

    DRAM_REG[174] = 0x00010303;

    DRAM_REG[175] = 0x01020202;

    DRAM_REG[176] = 0x00000000;

    DRAM_REG[177] = 0x02040303;

    DRAM_REG[178] = 0x21002103;

    DRAM_REG[179] = 0x00061200;

    DRAM_REG[180] = 0x06120612;

    DRAM_REG[181] = 0x04420442;

    DRAM_REG[182] = 0x04420442;

    DRAM_REG[183] = 0x00040004;

    DRAM_REG[184] = 0x00040004;

    DRAM_REG[185] = 0x00000000;

    DRAM_REG[186] = 0x00000000;

    DRAM_REG[187] = 0x00000000;

    DRAM_REG[188] = 0x00000000;

    DRAM_REG[189] = 0xffffffff;


0 Kudos

2,336 Views
andreass_
Contributor III

Hi all,

I have disabled NAND driver support. Now the kernel stops after starting UTP commands

This problem I found in this discussion: NAND device unrecognized with an Update Error 0xffffffea(-22)

But the NAND in our Customboard is the same we used in EVK (MT29F4G08ABADA) and it work at EVK.

Please see log

Thanks


0 Kudos

2,336 Views
andreass_
Contributor III

Hi all,

we have new Information

After we found an error in boarddesign, the kernel now starts, but run into kernel panic.

This is the log.

HTLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFLC

PowerPrep start initialize power...

Configured for 5v only power source.

Battery powered operation disabled.

PowerPrep finished

LLLC

BootPrep start initialize boot...

Feb 28 201311:54:27

Read HW_PINCTRL_EMI_DS_CTRL: 0x00030000

Read HW_RTC_CTRL: 0x00000008

Read HW_RTC_STAT: 0xE0000000

FRAC 0x92925552

memory type is DDR2

Wait for ddr ready 1

set VDDD power to 1.50V (0x0062071C)

set Frac to 0x92925513

start change cpu freq

cpu 0x00010002

set cpu to 0x00010001

hbus 0x00000003

cpu 0x00010001

BootPrep finished

LLLLLLLFLCLFLLJUncompressing Linux... done, booting the kernel.

Linux version 2.6.35.3-571-gcca29a0-hg000000000000 (ubuntu@ubuntu) (gcc version 4.4.4 (4.4.4_09.06.2010) ) #16 Fri Mar 1 11:05:43 CET 2013

CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177

CPU: VIVT data cache, VIVT instruction cache

Machine: Freescale MX28EVK board

Memory policy: ECC disabled, Data cache writeback

Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32512

Kernel command line: console=ttyAM0,115200 rdinit=/linuxrc rw gpmi

PID hash table entries: 512 (order: -1, 2048 bytes)

Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)

Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)

Memory: 128MB = 128MB total

Memory: 122352k/122352k available, 8720k reserved, 0K highmem

Virtual kernel memory layout:

    vector  : 0xffff0000 - 0xffff1000   (   4 kB)

    fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)

    DMA     : 0xfde00000 - 0xffe00000   (  32 MB)

    vmalloc : 0xc8800000 - 0xf0000000   ( 632 MB)

    lowmem  : 0xc0000000 - 0xc8000000   ( 128 MB)

    modules : 0xbf000000 - 0xc0000000   (  16 MB)

      .init : 0xc0008000 - 0xc0027000   ( 124 kB)

      .text : 0xc0027000 - 0xc0305000   (2936 kB)

      .data : 0xc0306000 - 0xc0324fc0   ( 124 kB)

SLUB: Genslabs=11, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1

Hierarchical RCU implementation.

    RCU-based detection of stalled CPUs is disabled.

    Verbose stalled-CPUs detection is disabled.

NR_IRQS:288

Console: colour dummy device 80x30

console [ttyAM0] enabled

Calibrating delay loop... 226.09 BogoMIPS (lpj=1130496)

pid_max: default: 32768 minimum: 301

Mount-cache hash table entries: 512

CPU: Testing write buffer coherency: ok

regulator: core version 0.5

NET: Registered protocol family 16

regulator: vddd: 800 <--> 1575 mV at 1500 mV fast normal

regulator: vdddbo: 800 <--> 1575 mV fast normal

regulator: vdda: 1500 <--> 2275 mV at 1800 mV fast normal

vddio = 3380000, val=10

regulator: vddio: 2880 <--> 3680 mV at 3380 mV fast normal

regulator: overall_current: fast normal

regulator: vbus5v:

regulator: mxs-duart-1: fast normal

regulator: mxs-bl-1: fast normal

regulator: mxs-i2c-1: fast normal

regulator: mmc_ssp-1: fast normal

regulator: mmc_ssp-2: fast normal

regulator: charger-1: fast normal

regulator: power-test-1: fast normal

regulator: cpufreq-1: fast normal

i.MX IRAM pool: 124 KB@0xc8820000

Initializing GPMI pins

usb DR wakeup device is registered

IMX usb wakeup probe

audit: cannot initialize inotify handle

bio: create slab <bio-0> at 0

SCSI subsystem initialized

Switching to clocksource mxs clock source

Trying to unpack rootfs image as initramfs...

Freeing initrd memory: 4096K

Bus freq driver module loaded

mxs_cpu_init: cpufreq init finished

hier atomic - 1 1

audit: initializing netlink socket (disabled)

type=2000 audit(1.290:1): initialized

JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.

msgmni has been set to 246

Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)

io scheduler noop registered (default)

Console: switching to colour frame buffer device 100x30

mxs-duart.0: ttyAM0 at MMIO 0x80074000 (irq = 47) is a DebugUART

mxs-auart.0: ttySP0 at MMIO 0x8006a000 (irq = 112) is a mxs-auart.0

Found APPUART 3.1.0

mxs-auart.1: ttySP1 at MMIO 0x8006c000 (irq = 113) is a mxs-auart.1

Found APPUART 3.1.0

mxs-auart.2: ttySP2 at MMIO 0x8006e000 (irq = 114) is a mxs-auart.2

Found APPUART 3.1.0

mxs-auart.3: ttySP3 at MMIO 0x80070000 (irq = 115) is a mxs-auart.3

Found APPUART 3.1.0

brd: module loaded

loop: module loaded

Loading iSCSI transport class v2.0-870.

i.MX GPMI NFC

NFC: Version 1, 8-chip GPMI and BCH

Boot ROM: Version 1, Single-chip boot area, block mark swapping supported

Scanning for NAND Flash chips...

NAND device: Manufacturer ID: 0x2c, Chip ID: 0xdc (Micron NAND 512MiB 3,3V 8-bit)

-----------------------------

NAND Flash Device Information

-----------------------------

Manufacturer      : Micron (0x2c)

Device Code       : 0xdc

Cell Technology   : SLC

Chip Size         : 512 MiB

Pages per Block   : 64

Page Geometry     : 2048+64

ECC Strength      : 4 bits

ECC Size          : 512 B

Data Setup Time   : 20 ns

Data Hold Time    : 10 ns

Address Setup Time: 10 ns

GPMI Sample Delay : 6 ns

tREA              : Unknown

tRLOH             : Unknown

tRHOH             : Unknown

Description       : MT29F4G08AAA

-----------------

Physical Geometry

-----------------

Chip Count             : 1

Page Data Size in Bytes: 2048 (0x800)

Page OOB Size in Bytes : 64

Block Size in Bytes    : 131072 (0x20000)

Block Size in Pages    : 64 (0x40)

Chip Size in Bytes     : 536870912 (0x20000000)

Chip Size in Pages     : 262144 (0x40000)

Chip Size in Blocks    : 4096 (0x1000)

Medium Size in Bytes   : 536870912 (0x20000000)

------------

NFC Geometry

------------

ECC Algorithm          : BCH

ECC Strength           : 8

Page Size in Bytes     : 2112

Metadata Size in Bytes : 10

ECC Chunk Size in Bytes: 512

ECC Chunk Count        : 4

Payload Size in Bytes  : 2048

Auxiliary Size in Bytes: 16

Auxiliary Status Offset: 12

Block Mark Byte Offset : 1999

Block Mark Bit Offset  : 0

-----------------

Boot ROM Geometry

-----------------

Boot Area Count            : 1

Boot Area Size in Bytes    : 20971520 (0x1400000)

Stride Size in Pages       : 64

Search Area Stride Exponent: 2

Scanning device for bad blocks

(null) | 2À| 2À: [gpmi_nfc_dma_go] Chip: 0, DMA Channel: 4, Error -110

gpmi-nfc gpmi-nfc.0: [read_data] DMA error

Internal error: Oops - undefined instruction: 0 [#1]

last sysfs file:

CPU: 0    Not tainted  (2.6.35.3-571-gcca29a0-hg000000000000 #16)

PC is at dequeue_task_fair+0x78/0x188

LR is at dequeue_task_fair+0x24/0x188

pc : [<c003fdc8>]    lr : [<c003fd74>]    psr: 60000093

sp : c7c27a68  ip : c7c27a68  fp : c7c27a9c

r10: 00000001  r9 : 0002d440  r8 : 00000000

r7 : c7c24000  r6 : 00000001  r5 : c7c24030  r4 : c7c24000

r3 : c0310020  r2 : 00000000  r1 : 00000400  r0 : c0310020

Flags: nZCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment kernel

Control: 0005317f  Table: 40004000  DAC: 00000017

Process swapper (pid: 1, stack limit = 0xc7c26270)

Stack: (0xc7c27a68 to 0xc7c28000)

7a60:                   c0040934 c0077e38 c0310020 c7c24000 c0310020 00000001

7a80: c7c24000 00000000 0002d440 c7c24164 c7c27abc c7c27aa0 c003eaf8 c003fd60

7aa0: c0310020 c7c26000 c0318704 c7c24000 c7c27aec c7c27ac0 c027ce50 c003eac0

7ac0: c0346cfc ffff8c6a a0000013 c7c26000 00000002 00000000 0002d440 00000000

7ae0: c7c27b24 c7c27af0 c027d318 c027cd70 c027cc18 c0346cfc c0346cfc ffff8c6a

7b00: c03469a0 c004d8b0 c7c24000 ffffffff 00000064 c0321478 c7c27b64 c7c27b28

7b20: c027cc18 c027d1c8 c0039ae0 00000001 c7c24000 c003ef64 c032147c c032147c

7b40: 00000004 00000000 c0321444 c7c5f000 c030eea8 03800000 c7c27b74 c7c27b68

7b60: c027cd40 c027cb4c c7c27bc4 c7c27b78 c0210840 c027cd3c c030eea8 fde00120

7b80: 000000ce 00000004 c7c27bbc c7c27b98 c0211adc c02107e4 c7c27b98 c7c27b98

7ba0: 00000800 c0321444 00000000 c7c5f000 c030eea8 00000004 c7c27bec c7c27bc8

7bc0: c021185c c02107e4 c7c5f000 00000040 c7251800 40803000 c030eea8 fdf7b000

7be0: c7c27c14 c7c27bf0 c0215120 c02116bc c7c5f0c0 c7c5f1e8 0002d440 c0321584

7c00: c7c5f000 00000040 c7c27c3c c7c27c18 c02149a8 c0215074 c7c5f0c0 c7c5f1e8

7c20: c7c27cd0 00000040 0002d440 0002d440 c7c27c94 c7c27c40 c020c584 c0214950

7c40: c0313098 c7c5f1e8 00000040 0000003f c7251000 00000040 00000000 00000000

7c60: 00000001 00000000 c027c8f0 c7c5f1e8 c032159c c7c5f0c0 000016a2 00000000

7c80: c7251000 00000001 c7c27d1c c7c27c98 c020cacc c020c3b8 c7c27cd0 00020001

7ca0: c0324e7c c7c27cb0 c00434ec c005b82c 00002000 00000001 00000000 c7251000

7cc0: 16a20000 00000000 16a20000 00000000 00000000 c7c27ce0 00000000 00000040

7ce0: 00000040 00000000 00000000 c7251000 c037b080 c7c5f1e8 00000000 c7c5f0c0

7d00: c0321584 00000000 c030eea8 c7c5f1e8 c7c27d74 c7c27d20 c020dbd4 c020c864

7d20: c037b060 c7c5f4f8 c030bc30 c7c5f4f8 00000810 c032159c 00000001 00000800

7d40: 00020000 c7c5f1e8 c7c27d84 c7c5f000 c00257a0 c0321444 c0321584 00000800

7d60: c030eea8 c7c5f1e8 c7c27d84 c7c27d78 c020e09c c020db5c c7c27df4 c7c27d88

7d80: c02147b8 c020dff0 20000000 00000000 c7c27db4 00000001 c00376ec 00000014

7da0: c7c5f378 0000000b c0321444 c030eea8 20000000 00000000 060a0a14 ffffffff

7dc0: 9590dc2c c7c20056 c0212024 c7c5f0c0 c7c5f1e8 00000000 c0368af4 c030ca2c

7de0: c030eea8 c7c5f1e8 c7c27e14 c7c27df8 c0209b90 c0214138 c7c5f1e8 c030eea8

7e00: 00000001 c0368af4 c7c27e2c c7c27e18 c020b328 c02096b4 c7c5f000 c030eea8

7e20: c7c27e6c c7c27e30 c0213ea0 c020b310 c030eea8 c030eea8 c7c27e5c c7c27e48

7e40: c027c8f0 c7c5f000 c030ca2c c030ca2c c030eea8 c030ca2c c030eea8 c030eea8

7e60: c7c27ea4 c7c27e70 c0210150 c0213d50 c7c5f028 00000000 c7c27e94 c030eea8

7e80: c030eea8 c0321208 c0321208 00000000 00000000 00000000 c7c27eb4 c7c27ea8

7ea0: c01de114 c020fd48 c7c27ed4 c7c27eb8 c01dd0d4 c01de108 c030eea8 c030eedc

7ec0: c0321208 00000000 c7c27ef4 c7c27ed8 c01dd1f4 c01dd02c c0321208 c7c27ef8

7ee0: c01dd18c 00000000 c7c27f1c c7c27ef8 c01dc8dc c01dd19c c7c05638 c7c73ed0

7f00: c0321208 c6d90a80 c031ec18 00000000 c7c27f2c c7c27f20 c01dcf30 c01dc898

7f20: c7c27f5c c7c27f30 c01dc1b4 c01dcf20 c02cd3fb c0020af0 c0321208 c0020af0

7f40: 00000000 00000013 00000000 00000000 c7c27f84 c7c27f60 c01dd50c c01dc120

7f60: c001bb50 c0020af0 00000000 00000013 00000000 00000000 c7c27f94 c7c27f88

7f80: c01de560 c01dd468 c7c27fa4 c7c27f98 c001bb6c c01de524 c7c27fdc c7c27fa8

7fa0: c002736c c001bb60 0000011f c0317b98 c0045f08 00000013 c0020a60 c0020af0

7fc0: c0045f08 00000013 00000000 00000000 c7c27ff4 c7c27fe0 c0008474 c0027318

7fe0: 00000000 c00083d0 00000000 c7c27ff8 c0045f08 c00083e0 e6be2f5b efdbffd5

Backtrace:

[<c003fd50>] (dequeue_task_fair+0x0/0x188) from [<c003eaf8>] (T.776+0x48/0x58)

[<c003eab0>] (T.776+0x0/0x58) from [<c027ce50>] (schedule+0xf0/0x2ac)

r7:c7c24000 r6:c0318704 r5:c7c26000 r4:c0310020

[<c027cd60>] (schedule+0x0/0x2ac) from [<c027d318>] (schedule_timeout+0x160/0x194)

[<c027d1b8>] (schedule_timeout+0x0/0x194) from [<c027cc18>] (wait_for_common+0xdc/0x178)

r5:c0321478 r4:00000064

[<c027cb3c>] (wait_for_common+0x0/0x178) from [<c027cd40>] (wait_for_completion_timeout+0x14/0x18)

[<c027cd2c>] (wait_for_completion_timeout+0x0/0x18) from [<c0210840>] (gpmi_nfc_dma_go+0x6c/0xf8)

[<c02107d4>] (gpmi_nfc_dma_go+0x0/0xf8) from [<c021185c>] (read_data+0x1b0/0x1ec)

r8:00000004 r7:c030eea8 r6:c7c5f000 r5:00000000 r4:c0321444

[<c02116ac>] (read_data+0x0/0x1ec) from [<c0215120>] (mil_read_buf+0xbc/0xd8)

[<c0215064>] (mil_read_buf+0x0/0xd8) from [<c02149a8>] (mil_ecc_read_oob+0x68/0xa4)

[<c0214940>] (mil_ecc_read_oob+0x0/0xa4) from [<c020c584>] (nand_read_oob+0x1dc/0x2cc)

r9:0002d440 r8:0002d440 r7:00000040 r6:c7c27cd0 r5:c7c5f1e8

r4:c7c5f0c0

[<c020c3a8>] (nand_read_oob+0x0/0x2cc) from [<c020cacc>] (create_bbt+0x278/0x36c)

[<c020c854>] (create_bbt+0x0/0x36c) from [<c020dbd4>] (nand_scan_bbt+0x88/0x494)

[<c020db4c>] (nand_scan_bbt+0x0/0x494) from [<c020e09c>] (nand_default_bbt+0xbc/0xd8)

[<c020dfe0>] (nand_default_bbt+0x0/0xd8) from [<c02147b8>] (mil_scan_bbt+0x690/0x730)

[<c0214128>] (mil_scan_bbt+0x0/0x730) from [<c0209b90>] (nand_scan_tail+0x4ec/0x5ac)

[<c02096a4>] (nand_scan_tail+0x0/0x5ac) from [<c020b328>] (nand_scan+0x28/0x2c)

r7:c0368af4 r6:00000001 r5:c030eea8 r4:c7c5f1e8

[<c020b300>] (nand_scan+0x0/0x2c) from [<c0213ea0>] (gpmi_nfc_mil_init+0x160/0x3e8)

r5:c030eea8 r4:c7c5f000

[<c0213d40>] (gpmi_nfc_mil_init+0x0/0x3e8) from [<c0210150>] (gpmi_nfc_probe+0x418/0x558)

[<c020fd38>] (gpmi_nfc_probe+0x0/0x558) from [<c01de114>] (platform_drv_probe+0x1c/0x20)

[<c01de0f8>] (platform_drv_probe+0x0/0x20) from [<c01dd0d4>] (driver_probe_device+0xb8/0x170)

[<c01dd01c>] (driver_probe_device+0x0/0x170) from [<c01dd1f4>] (__driver_attach+0x68/0x8c)

r7:00000000 r6:c0321208 r5:c030eedc r4:c030eea8

[<c01dd18c>] (__driver_attach+0x0/0x8c) from [<c01dc8dc>] (bus_for_each_dev+0x54/0x94)

r7:00000000 r6:c01dd18c r5:c7c27ef8 r4:c0321208

[<c01dc888>] (bus_for_each_dev+0x0/0x94) from [<c01dcf30>] (driver_attach+0x20/0x28)

r7:00000000 r6:c031ec18 r5:c6d90a80 r4:c0321208

[<c01dcf10>] (driver_attach+0x0/0x28) from [<c01dc1b4>] (bus_add_driver+0xa4/0x21c)

[<c01dc110>] (bus_add_driver+0x0/0x21c) from [<c01dd50c>] (driver_register+0xb4/0x144)

[<c01dd458>] (driver_register+0x0/0x144) from [<c01de560>] (platform_driver_register+0x4c/0x60)

r9:00000000 r8:00000000 r7:00000013 r6:00000000 r5:c0020af0

r4:c001bb50

[<c01de514>] (platform_driver_register+0x0/0x60) from [<c001bb6c>] (gpmi_nfc_init+0x1c/0x40)

[<c001bb50>] (gpmi_nfc_init+0x0/0x40) from [<c002736c>] (do_one_initcall+0x64/0x1cc)

[<c0027308>] (do_one_initcall+0x0/0x1cc) from [<c0008474>] (kernel_init+0xa4/0x158)

r9:00000000 r8:00000000 r7:00000013 r6:c0045f08 r5:c0020af0

r4:c0020a60

[<c00083d0>] (kernel_init+0x0/0x158) from [<c0045f08>] (do_exit+0x0/0x5f0)

r5:c00083d0 r4:00000000

Code: e59f3114 e5941030 e5930030 e3a02000 (e0611000)

---[ end trace 055b45d0762880fc ]---

Kernel panic - not syncing: Attempted to kill init!

Backtrace:

[<c002b6a8>] (dump_backtrace+0x0/0x114) from [<c027c7e0>] (dump_stack+0x18/0x1c)

r7:c003fdcc r6:c7c24000 r5:0000000b r4:c0325eb8

[<c027c7c8>] (dump_stack+0x0/0x1c) from [<c027c844>] (panic+0x60/0xe4)

[<c027c7e4>] (panic+0x0/0xe4) from [<c0045f7c>] (do_exit+0x74/0x5f0)

r3:c0311b04 r2:c7c27898 r1:00000000 r0:c02ced37

[<c0045f08>] (do_exit+0x0/0x5f0) from [<c002ba68>] (die+0x2ac/0x2ec)

[<c002b7bc>] (die+0x0/0x2ec) from [<c002bb6c>] (arm_notify_die+0x58/0x5c)

[<c002bb14>] (arm_notify_die+0x0/0x5c) from [<c00271b0>] (do_undefinstr+0x11c/0x130)

[<c0027094>] (do_undefinstr+0x0/0x130) from [<c0027b04>] (__und_svc+0x44/0x60)

Exception stack(0xc7c27a20 to 0xc7c27a68)

7a20: c0310020 00000400 00000000 c0310020 c7c24000 c7c24030 00000001 c7c24000

7a40: 00000000 0002d440 00000001 c7c27a9c c7c27a68 c7c27a68 c003fd74 c003fdc8

7a60: 60000093 ffffffff

r8:00000000 r7:c7c24000 r6:00000001 r5:c7c27a54 r4:ffffffff

[<c003fd50>] (dequeue_task_fair+0x0/0x188) from [<c003eaf8>] (T.776+0x48/0x58)

[<c003eab0>] (T.776+0x0/0x58) from [<c027ce50>] (schedule+0xf0/0x2ac)

r7:c7c24000 r6:c0318704 r5:c7c26000 r4:c0310020

[<c027cd60>] (schedule+0x0/0x2ac) from [<c027d318>] (schedule_timeout+0x160/0x194)

[<c027d1b8>] (schedule_timeout+0x0/0x194) from [<c027cc18>] (wait_for_common+0xdc/0x178)

r5:c0321478 r4:00000064

[<c027cb3c>] (wait_for_common+0x0/0x178) from [<c027cd40>] (wait_for_completion_timeout+0x14/0x18)

[<c027cd2c>] (wait_for_completion_timeout+0x0/0x18) from [<c0210840>] (gpmi_nfc_dma_go+0x6c/0xf8)

[<c02107d4>] (gpmi_nfc_dma_go+0x0/0xf8) from [<c021185c>] (read_data+0x1b0/0x1ec)

r8:00000004 r7:c030eea8 r6:c7c5f000 r5:00000000 r4:c0321444

[<c02116ac>] (read_data+0x0/0x1ec) from [<c0215120>] (mil_read_buf+0xbc/0xd8)

[<c0215064>] (mil_read_buf+0x0/0xd8) from [<c02149a8>] (mil_ecc_read_oob+0x68/0xa4)

[<c0214940>] (mil_ecc_read_oob+0x0/0xa4) from [<c020c584>] (nand_read_oob+0x1dc/0x2cc)

r9:0002d440 r8:0002d440 r7:00000040 r6:c7c27cd0 r5:c7c5f1e8

r4:c7c5f0c0

[<c020c3a8>] (nand_read_oob+0x0/0x2cc) from [<c020cacc>] (create_bbt+0x278/0x36c)

[<c020c854>] (create_bbt+0x0/0x36c) from [<c020dbd4>] (nand_scan_bbt+0x88/0x494)

[<c020db4c>] (nand_scan_bbt+0x0/0x494) from [<c020e09c>] (nand_default_bbt+0xbc/0xd8)

[<c020dfe0>] (nand_default_bbt+0x0/0xd8) from [<c02147b8>] (mil_scan_bbt+0x690/0x730)

[<c0214128>] (mil_scan_bbt+0x0/0x730) from [<c0209b90>] (nand_scan_tail+0x4ec/0x5ac)

[<c02096a4>] (nand_scan_tail+0x0/0x5ac) from [<c020b328>] (nand_scan+0x28/0x2c)

r7:c0368af4 r6:00000001 r5:c030eea8 r4:c7c5f1e8

[<c020b300>] (nand_scan+0x0/0x2c) from [<c0213ea0>] (gpmi_nfc_mil_init+0x160/0x3e8)

r5:c030eea8 r4:c7c5f000

[<c0213d40>] (gpmi_nfc_mil_init+0x0/0x3e8) from [<c0210150>] (gpmi_nfc_probe+0x418/0x558)

[<c020fd38>] (gpmi_nfc_probe+0x0/0x558) from [<c01de114>] (platform_drv_probe+0x1c/0x20)

[<c01de0f8>] (platform_drv_probe+0x0/0x20) from [<c01dd0d4>] (driver_probe_device+0xb8/0x170)

[<c01dd01c>] (driver_probe_device+0x0/0x170) from [<c01dd1f4>] (__driver_attach+0x68/0x8c)

r7:00000000 r6:c0321208 r5:c030eedc r4:c030eea8

[<c01dd18c>] (__driver_attach+0x0/0x8c) from [<c01dc8dc>] (bus_for_each_dev+0x54/0x94)

r7:00000000 r6:c01dd18c r5:c7c27ef8 r4:c0321208

[<c01dc888>] (bus_for_each_dev+0x0/0x94) from [<c01dcf30>] (driver_attach+0x20/0x28)

r7:00000000 r6:c031ec18 r5:c6d90a80 r4:c0321208

[<c01dcf10>] (driver_attach+0x0/0x28) from [<c01dc1b4>] (bus_add_driver+0xa4/0x21c)

[<c01dc110>] (bus_add_driver+0x0/0x21c) from [<c01dd50c>] (driver_register+0xb4/0x144)

[<c01dd458>] (driver_register+0x0/0x144) from [<c01de560>] (platform_driver_register+0x4c/0x60)

r9:00000000 r8:00000000 r7:00000013 r6:00000000 r5:c0020af0

r4:c001bb50

[<c01de514>] (platform_driver_register+0x0/0x60) from [<c001bb6c>] (gpmi_nfc_init+0x1c/0x40)

[<c001bb50>] (gpmi_nfc_init+0x0/0x40) from [<c002736c>] (do_one_initcall+0x64/0x1cc)

[<c0027308>] (do_one_initcall+0x0/0x1cc) from [<c0008474>] (kernel_init+0xa4/0x158)

r9:00000000 r8:00000000 r7:00000013 r6:c0045f08 r5:c0020af0

r4:c0020a60

[<c00083d0>] (kernel_init+0x0/0x158) from [<c0045f08>] (do_exit+0x0/0x5f0)

r5:c00083d0 r4:00000000


I hope someone can help.

0 Kudos

2,334 Views
fabio_estevam
NXP Employee
NXP Employee

Just to narrow down the issue: please unselect the GPMI NAND driver, re-build the kernel and try again.

As Jason pointed out: "Internal error: Oops - undefined instruction: 0 [#1]" could be related to DDR2 misconfiguration, but please try removing NAND driver support.

2,336 Views
JasonLiu
NXP Employee
NXP Employee

From the log, I doubt your DDR is stable enough. Could you please do some stress test for it?

0 Kudos

2,336 Views
andreass_
Contributor III

I have tried to debug the steps after jumping to kernel adress at 40008000

I debugged it with an led so i found out the position where the kernel stops

In head.S - File (linux/arch/arm/boot/compressed/) it will hung up at trying to "Realocate entries in the GOT table"

#ifndef CONFIG_ZBOOT_ROM

        /*

         * If we're running fully PIC === CONFIG_ZBOOT_ROM = n,

         * we need to fix up pointers into the BSS region.

         *   r2 - BSS start

         *   r3 - BSS end

         *   sp - stack pointer

         */

        add    r2, r2, r0

        add    r3, r3, r0

        add    sp, sp, r0

        /*

         * Relocate all entries in the GOT table.

         */

        //hung up there

1:        ldr    r1, [r11, #0]        @ relocate entries in the GOT

        add    r1, r1, r0        @ table.  This fixes up the

        str    r1, [r11], #4        @ C references.

        bl led3on                    //my debug LED

        cmp    r11, ip

        blo    1b

       

#else

         ...


What now?

0 Kudos

2,336 Views
andreass_
Contributor III

Hi all,

I think I solved the discribed problem by changing the register of ddr.

Now I can read and write into RAM.

The problem now the kernel doesn´t start.

Bootloader hang up by jumping into kernel. I think I have an invalid zImage. The updater_ivt.bd script runs correct I think.

Do I have to change something in the kernelfiles for creating a correct zImage?

0 Kudos

2,336 Views
OtavioSalvador
Senior Contributor II

I think it might need to be fixed in imx-bootlets as well; I'd advice you to go to U-Boot 2013.01 as it has full support to mx28evk and should be very straighforward to put support for your custom board in it.

2,336 Views
andreass_
Contributor III

UPDATE:

Now I have a Timeout-Problem, I think the same Cause

0 Kudos

2,337 Views
4guin4g4
Contributor IV

May I know what is the message shown on the MfG Tool?
Which file is it looking for?

0 Kudos

2,337 Views
andreass_
Contributor III

The Message now is shown "Updater Error 0x79 (121) - Das Zeitlimit für die Semaphore wurde erreicht." (I'm from Germany)
And the Log-File of Tool show this

"

Friday, February 08, 2013 07:10:59

1 - Panel A Start processing Singlechip NAND <LIST/>.

1 - Panel A Start <CMD/> type="boot" body="Recovery" file="updater.sb" timeout="60" onError="" text="Booting update firmware. (updater.sb)".

1 - Panel A Finished <CMD/> type="boot" body="Recovery" file="updater.sb" timeout="60" onError="" text="Booting update firmware. (updater.sb)" SUCCESS code=0.

1 - Panel A Start <CMD/> type="boot" body="Recovery" file="updater_ivt.sb" timeout="60" onError="" text="Booting update firmware. (updater_ivt.sb)".

1 - Panel A DoBoot() - Failed to load updater_ivt.sb to Recovery mode device. (err=2)

1 - Panel A Finished <CMD/> type="boot" body="Recovery" file="updater_ivt.sb" timeout="60" onError="" text="Booting update firmware. (updater_ivt.sb)" FAIL code=2.

Panel A: Updater Error 0x2 (2) - Das System kann die angegebene Datei nicht finden.

2 - Panel A Finished processing Singlechip NAND <LIST/> : FAIL code=2.

2 - Panel A Start processing Singlechip NAND <LIST/>.

2 - Panel A Start <CMD/> type="boot" body="Recovery" file="updater.sb" timeout="60" onError="" text="Booting update firmware. (updater.sb)".

2 - Panel A Finished <CMD/> type="boot" body="Recovery" file="updater.sb" timeout="60" onError="" text="Booting update firmware. (updater.sb)" SUCCESS code=0.

2 - Panel A Start <CMD/> type="boot" body="Recovery" file="updater_ivt.sb" timeout="60" onError="" text="Booting update firmware. (updater_ivt.sb)".

2 - Panel A DoBoot() - Failed to load updater_ivt.sb to Recovery mode device. (err=2)

2 - Panel A Finished <CMD/> type="boot" body="Recovery" file="updater_ivt.sb" timeout="60" onError="" text="Booting update firmware. (updater_ivt.sb)" FAIL code=2.

Panel A: Updater Error 0x2 (2) - Das System kann die angegebene Datei nicht finden.

3 - Panel A Finished processing Singlechip NAND <LIST/> : FAIL code=2.

3 - Panel A Start processing Singlechip NAND <LIST/>.

3 - Panel A Start <CMD/> type="boot" body="Recovery" file="updater.sb" timeout="60" onError="" text="Booting update firmware. (updater.sb)".

3 - Panel A Finished <CMD/> type="boot" body="Recovery" file="updater.sb" timeout="60" onError="" text="Booting update firmware. (updater.sb)" SUCCESS code=0.

3 - Panel A Start <CMD/> type="boot" body="Recovery" file="updater_ivt.sb" timeout="60" onError="" text="Booting update firmware. (updater_ivt.sb)".

3 - Panel A DoBoot() - Failed to load updater_ivt.sb to Recovery mode device. (err=121)

3 - Panel A Finished <CMD/> type="boot" body="Recovery" file="updater_ivt.sb" timeout="60" onError="" text="Booting update firmware. (updater_ivt.sb)" FAIL code=121.

Panel A: Updater Error 0x79 (121) - Das Zeitlimit für die Semaphore wurde erreicht.

4 - Panel A Finished processing Singlechip NAND <LIST/> : FAIL code=121.

"


i use the default ucl.xml file for imx28 and all files are there. But it seems that the tool didn't find the file update_ivt.sb or didn't read correctly.





0 Kudos