Hello,
I’m looking for information/steps on getting a board to boot from the on-board eMMC.
I’ve got a board design based on a Beaglebone Black, I’m able to mount an SD card and boot successfully.
I’m looking for instructions on how to manually program the on-board eMMC (4Gb) using a modified version of the TI Arago distribution.
I’d like to get an idea as to how to do this manually, since I would like to put these boards into production.
I’ve tried the same steps required for flashing an SD MMC, but was not successful.
Thanks in advance for the help.
Brendan
Resetting the Boot flag on the boot partition after copying the files over seemed to get me closer to booting.
Below is the start-up message (I have EEPROM ignored as it isn’t programmed yet):
�M�������@ϳ��@rpqsNqpMppqxyM�wx�x���M�����@HNJ��@qr@rpqt@M@qpzrrzqyI
Ignore EEPROM to read board Id.
Ignore EEPROM to read board Id.
Ignore EEPROM to read board Id.
Ignore EEPROM to read board Id.
reading args
spl: error reading image args, err - -1
reading u-boot.img
reading u-boot.img
U-Boot 2013.10-00189-g78d8ebd-dirty (Jun 12 2014 - 10:22:19)
I2C: ready
DRAM: 512 MiB
NAND: 0 MiB
MMC: OMAP SD/MMC: 0, OMAP SD/MMC: 1
*** Error - No Valid Environment Area found
*** Warning - bad CRC, using default environment
Ignore EEPROM to read board Id.
Net: not set. Validating first E-fuse MAC
Ignore EEPROM to read board Id.
cpsw, usb_ether
Hit any key to stop autoboot: 0
gpio: pin 53 (gpio 53) value is 1
Card did not respond to voltage select!
mmc0(part 0) is current device
Card did not respond to voltage select!
mmc1(part 0) is current device
gpio: pin 54 (gpio 54) value is 1
SD/MMC found on device 1
reading uEnv.txt
1508 bytes read in 4 ms (368.2 KiB/s)
Importing environment from mmc …
gpio: pin 55 (gpio 55) value is 1
Checking if uenvcmd is set …
gpio: pin 56 (gpio 56) value is 1
Running uenvcmd …
reading zImage
4233448 bytes read in 232 ms (17.4 MiB/s)
reading initrd.img
1331224 bytes read in 77 ms (16.5 MiB/s)
reading /dtbs/am335x-wt8000.dtb
35430 bytes read in 9 ms (3.8 MiB/s)
Kernel image @ 0x80200000 [ 0x000000 - 0x4098e8 ]
Flattened Device Tree blob at 815f0000
Booting using the fdt blob at 0x815f0000
Using Device Tree in place at 815f0000, end 815fba65
Starting kernel …
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 3.12.10-ti2013.12.01 (root@desmondl-ThinkPad-Edge) (gcc version 4.8.2 20130624 (4
[ 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: Generic AM33XX (Flattened Device Tree), model: TI AM335x Falcon
[ 0.000000] cma: CMA: reserved 24 MiB at 9e000000
[ 0.000000] Memory policy: ECC disabled, Data cache writeback
[ 0.000000] CPU: All CPU(s) started in SVC mode.
[ 0.000000] AM335X ES2.1 (neon )
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 129280
[ 0.000000] Kernel command line: console=ttyO0,115200n8 capemgr.disable_partno=FALCON-HDMI,FALCON-HDMIN ro=
[ 0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[ 0.000000] Memory: 481816K/521216K available (5711K kernel code, 584K rwdata, 1936K rodata, 340K init, 21)
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
[ 0.000000] vmalloc : 0xe0800000 - 0xff000000 ( 488 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xe0000000 ( 512 MB)
[ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
[ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
[ 0.000000] .text : 0xc0008000 - 0xc0780014 (7649 kB)
[ 0.000000] .init : 0xc0781000 - 0xc07d62d4 ( 341 kB)
[ 0.000000] .data : 0xc07d8000 - 0xc086a258 ( 585 kB)
[ 0.000000] .bss : 0xc086a258 - 0xc089f1c0 ( 212 kB)
[ 0.000000] NR_IRQS:16 nr_irqs:16 16
[ 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: timer2 at 26000000 Hz
[ 0.000000] sched_clock: 32 bits at 26MHz, resolution 38ns, wraps every 165191ms
[ 0.000000] OMAP clocksource: timer1 at 26000000 Hz
[ 0.000000] Console: colour dummy device 80x30
[ 0.000222] Calibrating delay loop… 720.89 BogoMIPS (lpj=3604480)
[ 0.049815] pid_max: default: 32768 minimum: 301
[ 0.049893] Security Framework initialized
[ 0.049931] Mount-cache hash table entries: 512
[ 0.055542] CPU: Testing write buffer coherency: ok
[ 0.055848] Setting up static identity map for 0xc0599750 - 0xc05997c0
[ 0.056498] devtmpfs: initialized
[ 0.057883] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
[ 0.116592] omap_hwmod: debugss: _wait_target_disable failed
[ 0.117124] pinctrl core: initialized pinctrl subsystem
[ 0.117784] regulator-dummy: no parameters
[ 0.119580] NET: Registered protocol family 16
[ 0.121273] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.123134] cpuidle: using governor ladder
[ 0.123148] cpuidle: using governor menu
[ 0.129057] platform mpu.1: FIXME: clock-name ‘fck’ DOES NOT exist in dt!
[ 0.130831] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
[ 0.131455] platform 49000000.edma: FIXME: clock-name ‘fck’ DOES NOT exist in dt!
[ 0.132363] OMAP GPIO hardware version 0.1
[ 0.139641] platform 56000000.sgx: FIXME: clock-name ‘fck’ DOES NOT exist in dt!
[ 0.141688] DSS not supported on this SoC
[ 0.141703] No ATAGs?
[ 0.141711] hw-breakpoint: debug architecture 0x4 unsupported.
[ 0.160845] bio: create slab at 0
[ 0.171157] edma-dma-engine edma-dma-engine.0: TI EDMA DMA engine driver
[ 0.171788] vmmcsd_fixed: 3300 mV
[ 0.172158] wlan-en-regulator: 1800 mV
[ 0.174348] vgaarb: loaded
[ 0.175541] SCSI subsystem initialized
[ 0.176501] usbcore: registered new interface driver usbfs
[ 0.176642] usbcore: registered new interface driver hub
[ 0.176782] usbcore: registered new device driver usb
[ 0.179388] DCDC1: at 1500 mV
[ 0.180183] vdd_mpu: 925 <–> 1375 mV at 1325 mV
[ 0.180917] vdd_core: 925 <–> 1150 mV at 1125 mV
[ 0.181635] LDO1: at 1800 mV
[ 0.182347] LDO2: at 3300 mV
[ 0.183515] LDO3: 1800 mV
[ 0.184223] LDO4: at 3300 mV
[ 0.184894] tps65217 0-0024: TPS65217 ID 0xe version 1.2
[ 0.184923] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz
[ 0.185523] omap_i2c 4802a000.i2c: bus 1 rev0.11 at 100 kHz
[ 0.185797] media: Linux media interface: v0.10
[ 0.185941] Linux video capture interface: v2.00
[ 0.186139] pps_core: LinuxPPS API ver. 1 registered
[ 2.682607] EXT4-fs (mmcblk0p2): INFO: recovery required on
readonly filesystem
[ 2.689872] EXT4-fs (mmcblk0p2): write access will be enabled
during recovery
[ 2.702325] EXT4-fs (mmcblk0p2): recovery complete
[ 2.722045] EXT4-fs (mmcblk0p2): mounted filesystem with ordered
data mode. Opts: (null)
Begin: Running /scripts/local-bottom ... done.
done.
Begin: Running /scripts/init-bottom ... mount: mounting /dev on
/root/dev failed: No such file or directory
done.
Target filesystem doesn't have requested /sbin/init.
chroot: can't execute 'readlink': No such file or directory
No init found. Try passing init= bootarg.
So what are you passing as root=/xyz?
Regards,
in uEnv.txt, root seems to pointing in the right direction, /dev/mmcblk0p2
I’m thinking that the file system may be corrupt, I’ve tried to “dd” the SD card image to the flash, however I got a kernel panic. Copying the files over to the eMMC using the “cp” command gave another error:
root@(none):/media/mmc2# cp -rf /media/usb/flashfs/* /media/mmc2/*
[ 525.011413] ------------[ cut here ]------------
[ 525.015992] Kernel BUG at c00fcfb8 [verbose debug info unavailable]
[ 525.022162] Internal error: Oops - BUG: 0 [#1] ARM
[ 525.026877] Modules linked in: musb_dsps omap2430 musb_hdrc musb_am335x
[ 525.033428] CPU: 0 PID: 1036 Comm: cp Not tainted 3.12.10-ti2013.12.01 #34
[ 525.040196] task: dde60b40 ti: ddd1e000 task.ti: ddd1e000
[ 525.045527] PC is at _submit_bh+0x1e0/0x248
[ 525.049646] LR is at submit_bh+0x14/0x18
[ 525.053508] pc : [] lr : [] psr: 60000013
[ 525.053508] sp : ddd1fb40 ip : 00000000 fp : ddd1fb74
[ 525.064804] r10: 00000060 r9 : ddd1fc1c r8 : dd2a72d0
[ 525.069945] r7 : ddd1fc1c r6 : 000000e5 r5 : 00000000 r4 : 000000e5
[ 525.076367] r3 : 00000004 r2 : 00000000 r1 : ddd1fc1c r0 : 00000060
[ 525.082792] Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
[ 525.089814] Control: 10c5387d Table: 99650019 DAC: 00000015
[ 525.095467] Process cp (pid: 1036, stack limit = 0xddd1e240)
[ 525.101035] Stack: (0xddd1fb40 to 0xddd20000)
[ 525.105330] fb40: 000000e4 00000000 000000e5 000000e5 00000000 000000e5 ddd1fc1c dd2a72d0
[ 525.113382] fb60: ddd1fc1c ddd1fc1c ddd1fb84 ddd1fb78 c00fd034 c00fcde4 ddd1fbec ddd1fb88
[ 525.121435] fb80: c01577f0 c00fd02c 00001000 ddb04c00 dd2a72d0 00000035 00000103 00000000
[ 525.129487] fba0: 000000e3 00000000 ddd1fbc4 dd2a72d0 000000e4 00000000 000000e4 00000000
[ 525.137540] fbc0: c009ce08 dd2a72d0 dd2a72d0 ddd1fc1c dd2883c0 c08bf1c0 dd2a72d0 00001000
[ 525.145593] fbe0: ddd1fc0c ddd1fbf0 c015b08c c015761c dd2a72d0 dd2883c0 dd2883c0 ddb04c00
[ 525.153645] fc00: ddd1fc4c ddd1fc10 c015b128 c015b064 00000001 c08bf1c0 ddd1fc4c 00000004
[ 525.161698] fc20: 00000800 00000000 00000001 dd2a72d0 dd2883c0 00035000 00000000 c08bf1c0
[ 525.169750] fc40: c00fc2e8 ddd1fc50 c015dde8 c015b100 00000000 dd2883c1 00000007 dd2a72d0
[ 525.177803] fc60: ddd1fc84 ddd1fc70 c00f69f8 c015ddb0 00035000 00000000 ddd1fcc4 ddd1fc88
[ 525.185855] fc80: c00fe7a8 c00f69d0 00001000 00001000 c08bf1c0 00000000 dd2a72d0 00035000
[ 525.193907] fca0: 00000000 00000000 00001000 dd2a72d0 dd2a7394 dd2883c0 ddd1fd1c ddd1fcc8
[ 525.201959] fcc0: c015cfa8 c00fe73c 00001000 00001000 c08bf1c0 00000000 c00226a8 00001000
[ 525.210012] fce0: c0f8e000 dddce8c0 00036000 00000000 ddd1fd1c 00001000 dd2a7394 00001000
[ 525.218064] fd00: 00000000 00001000 ddd1e000 c05ad5b8 ddd1fd94 ddd1fd20 c009d530 c015cf24
[ 525.226116] fd20: 00001000 00001000 c08bf1c0 00000000 ddd1fd64 00000000 ddd1e020 dddce8c0
[ 525.234168] fd40: 00000000 ddd1e020 00035000 00000000 c08bf1c0 00000000 ddd1fee8 00000001
[ 525.242220] fd60: 00000000 00001000 386d458b dddce8c0 00001000 dd2a7394 ddd1fef0 ddd1fee8
[ 525.250273] fd80: ddd1ff10 dd2a72d0 ddd1fe0c ddd1fd98 c009ee08 c009d430 00035000 00000000
[ 525.258325] fda0: ddd1ff10 00001000 00000000 c0008760 ffffffff 000007ff 00000420 ddd1e018
[ 525.266378] fdc0: e3a00000 ebffeec8 00035000 00000000 00000000 00000001 ddf21300 00001000
[ 525.274430] fde0: ddea5000 00035000 00000000 dd2a733c 00000001 ddd1fef0 dddce8c0 ddd1fee8
[ 525.282483] fe00: ddd1fe44 ddd1fe10 c009f0d0 c009ec18 ddd1fe4c ddd1fe20 c00eb4dc 00035000
[ 525.290536] fe20: 00000000 ddd1ff78 00001000 ddd1fee8 00000001 ddd1fef0 ddd1fedc ddd1fe48
[ 525.298588] fe40: c0153b90 c009f080 00035000 00000000 c0015084 c004bb0c 00000080 fa200000
[ 525.306640] fe60: 00001000 ddd1fee8 ddd1fef0 00000034 00001000 00000036 00036000 00000000
[ 525.314692] fe80: 00035000 00000000 00000000 ddf21348 00000001 00000001 00001000 00000000
[ 525.322744] fea0: 00001000 00000000 bec8f65c 00000000 ddf21308 00035000 00000000 ddd1ff78
[ 525.330796] fec0: 00001000 00000000 00001000 00000000 ddd1ff44 ddd1fee0 c00d3d7c c0153ae4
[ 525.338849] fee0: 00035000 00000000 bec8e65c 00001000 dddce8c0 00000000 00000000 00000000
[ 525.346900] ff00: dde60b40 00000000 00000000 00000000 00035000 00000000 00001000 00000000
[ 525.354953] ff20: 00000000 00000000 00001000 dddce8c0 bec8e65c ddd1ff78 ddd1ff74 ddd1ff48
[ 525.363005] ff40: c00d44bc c00d3d04 00000000 00000000 00035000 00000000 dddce8c0 bec8e65c
[ 525.371057] ff60: 00000000 00001000 ddd1ffa4 ddd1ff78 c00d4b08 c00d440c 00035000 00000000
[ 525.379110] ff80: 00001000 bec8e65c 00000005 00000004 c0014328 ddd1e000 00000000 ddd1ffa8
[ 525.387162] ffa0: c0014180 c00d4ad0 00001000 bec8e65c 00000005 bec8e65c 00001000 00000000
[ 525.395214] ffc0: 00001000 bec8e65c 00000005 00000004 00095778 00000001 00000000 00000004
[ 525.403267] ffe0: 00000000 bec8e624 00012c6c 4859e64c 60000010 00000005 97466229 e479d00d
[ 525.411310] Backtrace:
[ 525.413735] [] (_submit_bh+0x0/0x248) from [] (submit_bh+0x14/0x18)
[ 525.421633] [] (submit_bh+0x0/0x18) from [] (__ext4_get_inode_loc+0x1e0/0x44c)
[ 525.430462] [] (__ext4_get_inode_loc+0x0/0x44c) from [] (ext4_reserve_inode_write+0x34)
[ 525.440483] [] (ext4_reserve_inode_write+0x0/0x9c) from [] (ext4_mark_inode_dirty+0x34)
[ 525.450578] r7:ddb04c00 r6:dd2883c0 r5:dd2883c0 r4:dd2a72d0
[ 525.456179] [] (ext4_mark_inode_dirty+0x0/0x1b4) from [] (ext4_dirty_inode+0x44/0x68)
[ 525.465590] r8:c08bf1c0 r7:00000000 r6:00035000 r5:dd2883c0 r4:dd2a72d0
[ 525.472211] Backtrace aborted due to bad frame pointer
[ 525.478213] Code: e3c22b02 e5892000 e121f003 eaffffa5 (e7f001f2)
[ 525.484217] —[ end trace 63f265286558cc62 ]—
[ 525.488761] Kernel panic - not syncing: Fatal exception
[ 525.493902] Rebooting in 5 seconds…