Цитата(sergey sva @ Dec 7 2013, 23:05)

Что то мне не понятно, как это сделать ( . проводов у меня нет для этого контроллера.
Все можно загрузить через USB, посмотрите MfgTool для своей платы, отправная точка для написания своего кода - imx-bootlets. Бинарник в формате ELF нужно преобразовать в специальный формат (sb) утилитой elftosb. Возьмите за основу как готовится образ u-boot
uboot.db
CODE
// STMP378x ROM command script to load and run U-Boot
sources {
power_prep="./power_prep";
sdram_prep="./boot_prep";
image="./u-boot";
}
section (0) {
//----------------------------------------------------------
// Power Supply initialization
//----------------------------------------------------------
load power_prep;
call power_prep;
//----------------------------------------------------------
// SDRAM initialization
//----------------------------------------------------------
load sdram_prep;
call sdram_prep;
//----------------------------------------------------------
// Load and call u_boot - ELF ARM image
//----------------------------------------------------------
load image;
call image;
}
вместо image="./u-boot"; подставьте имя своего бинарного файла в формате ELF, power_prep, boot_prep - бинарники получнные после сборки imx-bootlets, подготовка имиджа командой
./elftosb2 -z -c ./uboot.db -o uboot.sb
С заводсики установками процессора образ должен быть зашифрован, по умолчанию ключ - все поля нули, параметр -z elftosb служит для шифрования нулевым ключем
-z/--zero-key Add default key of all zeroes
Если внешнюю память не собираетесь использовать то модно не инициализировать - исключить загрузку sdram_prep из файла .db
Имидж можно загрузить через USB (MfgTool, sbloader), можно с носителя. Например для MMC можно записать этим скриптом
CODE
#!/bin/sh
echo -e "\033[1mUsage: sudo ./part disk_name [image.sb]\033[0m"
echo -e "\033[1mExample: sudo ./part /dev/mmcblk0 uboot.sb\033[0m"
exit
fi
if [ ! -b "$1" ]; then
echo -e "\033[1mError: $1 disk not found\033[0m"
exit
fi
if [[ "$1" =~ mmc ]]; then
p="p"
else
p=""
fi
dd if=/dev/zero of=$1 bs=512 count=1
sfdisk --force -uM $1 << EOF
,16,0x53
,,0x83
EOF
if [ ! -b "${1}${p}1" ]; then
echo -e "\033[1mError: partition ${1}${p}1 not found\033[0m"
exit
fi
if [ -n "$2" ]; then
echo -e "\033[1mWriting image $2 to partition ${1}${p}1 ...\033[0m"
dd if=/dev/zero of=${1}${p}1 bs=512 count=4
dd if=$2 of=${1}${p}1 bs=512 seek=4 conv=sync,notrunc
fi
Это все примеры для Linux, кроме утилит загрузки (MfgTool, sbloader), как сделать в Windows к сожалению не могу подсказать - по сути вам нужно только найти elftosb для Windows, проще наверно виртуалку с Linux поставить. Вы тут пару раз про TCP упоминали, имейте ввиду - встроенного EMAC у этих процессоров нет.
Сообщение отредактировал sasamy - Dec 7 2013, 21:24