This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM3359 beaglebone白色的那个板子,从SD卡U-BOOT,每次都到initialization code to match the hardware configuration,就停住了,求支持~

Other Parts Discussed in Thread: TPS65910

U-Boot SPL 2011.09 (Apr 08 2012 - 18:29:14)
Texas Instruments Revision detection unimplemented
Incorrect magic number in EEPROM
read_eeprom() failure
OMAP SD/MMC: 0
reading u-boot.img
reading u-boot.img


U-Boot 2011.09 (Apr 08 2012 - 18:25:03)

I2C: ready
DRAM: 256 MiB
WARNING: Caches not enabled
Incorrect magic number in EEPROM
NAND: HW ECC Hamming Code selected
nand_get_flash_type: unknown NAND device: Manufacturer ID: 0x10, Chip ID: 0x10
No NAND device found!!!
0 MiB
MMC: OMAP SD/MMC: 0, OMAP SD/MMC: 1
*** Warning - readenv() failed, using default environment

Net: cpsw
Hit any key to stop autoboot: 0
SD/MMC found on device 0
reading uEnv.txt

** Unable to read "uEnv.txt" from mmc 0:1 **
reading uImage

3344928 bytes read
## Booting kernel from Legacy Image at 80007fc0 ...
Image Name: Linux-3.2.0
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 3344864 Bytes = 3.2 MiB
Load Address: 80008000
Entry Point: 80008000
Verifying Checksum ... OK
XIP Kernel Image ... OK
OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
[ 0.000000] Linux version 3.2.0 (root@ubuntu) (gcc version 4.4.1 (Sourcery G++ Lite 2010q1-202) ) #18 Sat Jul 21 22:27:03 EDT 2012
[ 0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] Machine: am335xevm
[ 0.000000] Memory policy: ECC disabled, Data cache writeback
[ 0.000000] AM335X ES1.0 (sgx neon )
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 65024
[ 0.000000] Kernel command line: console=ttyO0,115200n8 root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait ip=none
[ 0.000000] PID hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
[ 0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
[ 0.000000] Memory: 256MB = 256MB total
[ 0.000000] Memory: 253132k/253132k available, 9012k reserved, 0K highmem
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
[ 0.000000] vmalloc : 0xd0800000 - 0xff000000 ( 744 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xd0000000 ( 256 MB)
[ 0.000000] modules : 0xbf000000 - 0xc0000000 ( 16 MB)
[ 0.000000] .text : 0xc0008000 - 0xc05c8000 (5888 kB)
[ 0.000000] .init : 0xc05c8000 - 0xc0605000 ( 244 kB)
[ 0.000000] .data : 0xc0606000 - 0xc0663f88 ( 376 kB)
[ 0.000000] .bss : 0xc0663fac - 0xc0690ce4 ( 180 kB)
[ 0.000000] NR_IRQS:396
[ 0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
[ 0.000000] Total of 128 interrupts on 1 active controller
[ 0.000000] OMAP clockevent source: GPTIMER2 at 24000000 Hz
[ 0.000000] OMAP clocksource: GPTIMER1 at 32768 Hz
[ 0.000000] sched_clock: 32 bits at 32kHz, resolution 30517ns, wraps every 131071999ms
[ 0.000000] Console: colour dummy device 80x30
[ 0.000183] Calibrating delay loop... 498.89 BogoMIPS (lpj=2494464)
[ 0.058166] pid_max: default: 32768 minimum: 301
[ 0.058349] Security Framework initialized
[ 0.058471] Mount-cache hash table entries: 512
[ 0.058929] CPU: Testing write buffer coherency: ok
[ 0.080291] omap_hwmod: gfx: failed to hardreset
[ 0.097076] omap_hwmod: pruss: failed to hardreset
[ 0.098510] print_constraints: dummy:
[ 0.098968] NET: Registered protocol family 16
[ 0.101776] OMAP GPIO hardware version 0.1
[ 0.105377] omap_mux_init: Add partition: #1: core, flags: 0
[ 0.108367] omap_i2c.1: alias fck already exists
[ 0.109588] omap2_mcspi.1: alias fck already exists
[ 0.109893] omap2_mcspi.2: alias fck already exists
[ 0.110229] edma.0: alias fck already exists
[ 0.110260] edma.0: alias fck already exists
[ 0.110290] edma.0: alias fck already exists
[ 0.145324] bio: create slab <bio-0> at 0
[ 0.148345] SCSI subsystem initialized
[ 0.150543] usbcore: registered new interface driver usbfs
[ 0.150970] usbcore: registered new interface driver hub
[ 0.151245] usbcore: registered new device driver usb
[ 0.151397] musb-ti81xx musb-ti81xx: musb0, board_mode=0x13, plat_mode=0x3
[ 0.151794] musb-ti81xx musb-ti81xx: musb1, board_mode=0x13, plat_mode=0x1
[ 0.153289] omap_i2c omap_i2c.1: bus 1 rev2.4.0 at 100 kHz
[ 0.155181] tps65910 1-002d: could not be detected
[ 0.156402] Advanced Linux Sound Architecture Driver Version 1.0.24.
[ 0.157897] Switching to clocksource gp timer
[ 0.179748] musb-hdrc: version 6.0, ?dma?, otg (peripheral+host)
[ 0.179962] musb-hdrc musb-hdrc.0: dma type: pio
[ 0.181182] musb-hdrc musb-hdrc.0: USB OTG mode controller at d081c000 using PIO, IRQ 18
[ 0.181365] musb-hdrc musb-hdrc.1: dma type: pio
[ 0.181884] musb-hdrc musb-hdrc.1: MUSB HDRC host driver
[ 0.181976] musb-hdrc musb-hdrc.1: new USB bus registered, assigned bus number 1
[ 0.182159] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[ 0.182189] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 0.182189] usb usb1: Product: MUSB HDRC host driver
[ 0.182220] usb usb1: Manufacturer: Linux 3.2.0 musb-hcd
[ 0.182220] usb usb1: SerialNumber: musb-hdrc.1
[ 0.183319] hub 1-0:1.0: USB hub found
[ 0.183349] hub 1-0:1.0: 1 port detected
[ 0.184143] musb-hdrc musb-hdrc.1: USB Host mode controller at d081e800 using PIO, IRQ 19
[ 0.184661] NET: Registered protocol family 2
[ 0.184906] IP route cache hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.185302] TCP established hash table entries: 8192 (order: 4, 65536 bytes)
[ 0.185516] TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
[ 0.185668] TCP: Hash tables configured (established 8192 bind 8192)
[ 0.185699] TCP reno registered
[ 0.185699] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 0.185760] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 0.186004] NET: Registered protocol family 1
[ 0.186340] RPC: Registered named UNIX socket transport module.
[ 0.186370] RPC: Registered udp transport module.
[ 0.186370] RPC: Registered tcp transport module.
[ 0.186401] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.186676] NetWinder Floating Point Emulator V0.97 (double precision)
[ 0.200347] VFS: Disk quotas dquot_6.5.2
[ 0.200408] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[ 0.201110] msgmni has been set to 494
[ 0.202148] io scheduler noop registered
[ 0.202178] io scheduler deadline registered
[ 0.202239] io scheduler cfq registered (default)
[ 0.203857] Could not set LED4 to fully on
[ 0.205993] omap_uart.0: ttyO0 at MMIO 0x44e09000 (irq = 72) is a OMAP UART0
[ 0.747741] console [ttyO0] enabled
[ 0.752166] omap_uart.1: ttyO1 at MMIO 0x48022000 (irq = 73) is a OMAP UART1
[ 0.760223] omap_uart.2: ttyO2 at MMIO 0x48024000 (irq = 74) is a OMAP UART2
[ 0.768127] omap_uart.3: ttyO3 at MMIO 0x481a6000 (irq = 44) is a OMAP UART3
[ 0.776153] omap_uart.4: ttyO4 at MMIO 0x481a8000 (irq = 45) is a OMAP UART4
[ 0.784118] omap_uart.5: ttyO5 at MMIO 0x481aa000 (irq = 46) is a OMAP UART5
[ 0.804962] brd: module loaded
[ 0.815124] loop: module loaded
[ 0.818725] i2c-core: driver [tsl2550] using legacy suspend method
[ 0.825225] i2c-core: driver [tsl2550] using legacy resume method
[ 0.831756] at24 1-0051: 32768 byte 24c256 EEPROM, writable, 64 bytes/write
[ 0.898468] No daughter card found
[ 0.902099] at24 1-0050: 32768 byte 24c256 EEPROM, writable, 64 bytes/write
[ 0.917358] AM335X: wrong header 0xffffffff, expected 0xee3355aa
[ 0.923706] The error message above indicates that there is an issue with
[ 0.923736] the EEPROM or the EEPROM contents. After verifying the EEPROM
[ 0.923736] contents, if any, refer to the am335x_evm_setup function in the
[ 0.923736] arch/arm/mach-omap2/board-am335xevm.c file to modify the board
[ 0.923767] initialization code to match the hardware configuration

SD卡里程序在另外一个TI的beaglebone的板子上是能root成功的,还能够登陆。

在我这块板子上就出现这个问题,这个是不是硬件的问题呢,如果是问题是在SD卡那里吗,怎样检查?

  • AM335X: wrong header 0xffffffff, expected 0xee3355aa

    EEPROM读取错误,可参看如下链接。

    https://groups.google.com/forum/#!topic/beagleboard/ZrWFIFbrerg

    另外,这块板从拿到手之后从未成功启动过吗?

  • 是这样子,我们想使用beaglebone的解决方案。

    这个板子是我从beaglebone上剪裁下来的,所有的资源都保存着。

    然后BOOT就到AM335X: wrong header 0xffffffff, expected 0xee3355aa这里跑不动了,这个我调试了有一段时间了,急死了!

    SD卡里的软件是没问题的,硬件部分我比照TI原来的板子认真核查了板子每一个重要环节,没发现什么问题。

    你们觉得这个到底可能是哪里的问题呢?

    请指导一二!

  • 那就没错了

    自己的板子使用原来的代码是会起不来,因为源码中会读取EEPROM来识别板子的配置。

  • 有两种方式解决:

    (1)往EEPROM里面烧写对应的header信息,需要通过I2C手动写入,具体可以参考beagelbone官网

    (2)在代码中注销EEPROM读取的操作,直接强制调用beaglebone的配置(源码中会有对其他EVM的配置,是通过EEPROM读取的header来进行区分的)

  • 我的板子是从原来geaglebone上剪裁下来的,资源没变。

    配置应该和原来geaglebone的一样才对啊,剪裁下来的通过读取EEPROM识别板子配置也应该能够识别啊。

    差哪里呢?

  • 你所说的裁剪,还是原来的beaglebone的板子吗?还是自己找着beaglebone的原理图增删了接口重新自己做的板?

  • 坛子里有原来geaglebone板子的原理图,gerber文件什么的。原理图里的东西一点没变。板子的布局器件的摆放,线序和器件的型号也如出一辙。

    现在确实存在问题,你觉得可能出现的地方在哪里?

  • 你好!请仔细阅读之前的回答。

    现在确认是你自己做的板,right?

    那板子上的EEPROM里面没有烧写任何信息,right?

     

  • 不好意思,之前网页没刷新,没看到前面回答了两条。

    先谢谢你耐心解答我的问题了。

  • 不客气

    请按照上述推荐的两种方式选择,比较简单的就是第二种方式,在u-boot里面将配置强制设置为beagle的

  • EEPROM的设置在u-boot和linux当中都有

    linux中的修改路径为

    arch\arm\mach-omap2\board-am335xevm.c

    其中的am335x_evm_setup函数