I'm on debian and using a Transcend USB SD card adapter as recommended by Hardkernel - I've used it to program SD cards before (eg for Raspberry Pi) but don't think I've programmed an eMMC as these came pre-loaded.
I'm trying to install Arch using the ArchLinuxARM instructions of Odroid-U3. This seems to go as expected but it doesn't appear to boot at the first stage (eMMC instered into SD adapter in preparation for the final step.
I read elsewhere this can be an issue, and have followed the instructions for Odroid-U3, but it doesn't work: no HDMI signal on boot, blue LED solid on. I haven't tried a serial cable yet but this post (admittedly about the XU3 rather than U3) suggests that isn't going to work either so I want to check if you are aware of this issue, and if you have any suggestions. Thanks.
UPDATE: using a serial cable from a Windows machine I have a very primitive shell. I'm not sure what it is, but obviously it is not what I need (I can't execute the final commands to burn the eMMC boot for example). If I type "help" I get a list of commands, one of which is a memory dump. See below. It is clear that the eMMC is not quite as needed, although something is booting.
So I guess the issue is indeed some tweak needed to program a 64GB eMMC. Please advise if you can! Thanks.
Code: Select all
Odroid # sh
HUSH_VERSION=0.01
Odroid # ls
ls - list files in a directory (default /)
Usage:
ls <interface> [<dev[:part]> [directory]]
- List files in directory 'directory' of partition 'part' on
device type 'interface' instance 'dev'.
Odroid # cd /boot
Unknown command 'cd' - try 'help'
Odroid # ls /home
** No device specified **
Odroid # md 0
00000000:data abort
pc : [<bfe97bbc>] lr : [<bfe97b90>]
reloc pc : [<43e4bbbc>] lr : [<43e4bb90>]
sp : bae46d78 ip : 00000030 fp : 00000000
r10: 00000000 r9 : bae4aeb0 r8 : 00000004
r7 : 00000000 r6 : 00000004 r5 : 00000004 r4 : 00000040
r3 : 00000000 r2 : bae4b118 r1 : bae46d8c r0 : 00000009
Flags: nZCv IRQs off FIQs off Mode SVC_32
Resetting CPU ...
resetting ...
U-Boot 2016.03-1 (Mar 27 2016 - 09:14:44 -0600) Arch Linux ARM
CPU: Exynos4412 @ 1 GHz
Model: Odroid based on Exynos4412
Board: Odroid based on Exynos4412
Type: u3
DRAM: 2 GiB
LDO20@VDDQ_EMMC_1.8V: set 1800000 uV; enabling
LDO22@VDDQ_EMMC_2.8V: set 2800000 uV; enabling
LDO21@TFLASH_2.8V: set 2800000 uV; enabling
MMC: SAMSUNG SDHCI: 0, EXYNOS DWMMC: 1
*** Warning - bad CRC, using default environment
Net: No ethernet found.
Hit any key to stop autoboot: 0
starting USB...
USB0: USB EHCI 1.00
scanning bus 0 for devices... 1 USB Device(s) found
scanning usb for ethernet devices... 0 Ethernet Device(s) found
switch to partitions #0, OK
mmc0(part 0) is current device
mmc found on device 0
Checking for: /boot/uEnv.txt ...
Failed to mount ext2 filesystem...
** Unrecognized filesystem type **
Failed to mount ext2 filesystem...
** Unrecognized filesystem type **
No kernel found
Card did not respond to voltage select!
USB device 0: unknown device
Odroid # df
dfu - Device Firmware Upgrade
Usage:
dfu <USB_controller> <interface> <dev> [list]
- device firmware upgrade via <USB_controller>
on device <dev>, attached to interface
<interface>
[list] - list available alt settings
Odroid # help
? - alias for 'help'
base - print or set address offset
bdinfo - print Board Info structure
boot - boot default, i.e., run 'bootcmd'
bootd - boot default, i.e., run 'bootcmd'
bootelf - Boot from an ELF image in memory
bootm - boot application image from memory
bootp - boot image via network using BOOTP/TFTP protocol
bootvx - Boot vxWorks from an ELF image
bootz - boot Linux zImage image from memory
cmp - memory compare
coninfo - print console devices and information
cp - memory copy
crc32 - checksum calculation
dcache - enable or disable data cache
dfu - Device Firmware Upgrade
dhcp - boot image via network using DHCP/TFTP protocol
dm - Driver model low level access
echo - echo args to console
editenv - edit environment variable
env - environment handling commands
erase - erase FLASH memory
exit - exit script
ext2load- load binary file from a Ext2 filesystem
ext2ls - list files in a directory (default /)
ext4load- load binary file from a Ext4 filesystem
ext4ls - list files in a directory (default /)
ext4size- determine a file's size
ext4write- create a file in the root directory
false - do nothing, unsuccessfully
fatinfo - print information about filesystem
fatload - load binary file from a dos filesystem
fatls - list files in a directory (default /)
fatsize - determine a file's size
fatwrite- write file into a dos filesystem
fdt - flattened device tree utility commands
flinfo - print FLASH memory information
fstype - Look up a filesystem type
go - start application at address 'addr'
gpio - query and control gpio pins
gpt - GUID Partition Table
help - print command description/usage
i2c - I2C sub-system
icache - enable or disable instruction cache
iminfo - print header information for application image
itest - return true/false on integer compare
load - load binary file from a filesystem
loadb - load binary file over serial line (kermit mode)
loads - load S-Record file over serial line
loadx - load binary file over serial line (xmodem mode)
loady - load binary file over serial line (ymodem mode)
loop - infinite loop on address range
ls - list files in a directory (default /)
md - memory display
mii - MII utility commands
mm - memory modify (auto-incrementing address)
mmc - MMC sub system
mmcinfo - display MMC info
mw - memory write (fill)
nm - memory modify (constant address)
part - disk partition related commands
ping - send ICMP ECHO_REQUEST to network host
pmic - operations
printenv- print environment variables
protect - enable or disable FLASH write protection
pxe - commands to get and boot from pxe files
regulator- uclass operations
reset - Perform RESET of the CPU
run - run commands in an environment variable
save - save file to a filesystem
saveenv - save environment variables to persistent storage
setenv - set environment variables
setexpr - set environment variable as the result of eval expression
showvar - print local hushshell variables
size - determine a file's size
source - run script from memory
sysboot - command to get and boot from syslinux files
test - minimal test like /bin/sh
tftpboot- boot image via network using TFTP protocol
thordown- TIZEN "THOR" downloader
true - do nothing, successfully
ums - Use the UMS [USB Mass Storage]
usb - USB sub-system
usbboot - boot from USB device
version - print monitor, compiler and linker version