Репозитории

898 views
Skip to first unread message

Peter Zotov

unread,
Dec 9, 2010, 5:04:14 PM12/9/10
to vog...@googlegroups.com
Опенсорс -- это хорошо, но ссылок на исходники я что-то ни здесь, ни на
хабре, ни где еще не видел.
Так что вот сделал у себя на гите репозитории:

1. jzboot: http://git.whitequark.org/jzboot.git/
Реализованный с нуля по мотивам USBBoot загрузчик, нативно работающий
под Линуксом.

2. ingenic-uboot: http://git.whitequark.org/ingenic-uboot.git/
Допиленный до кондиции u-boot. Собирается make volans_nand_config all;
параметры NAND уже прописаны, можно сразу шить полученный
u-boot-nand.bin

Список будет пополняться; patches are welcome.

---
WBR, Peter Zotov.

WreWolf

unread,
Dec 10, 2010, 6:53:56 AM12/10/10
to vog...@googlegroups.com
Какие пакеты необходимы для сборки?
какой кросс компилятор?

rzk

unread,
Dec 10, 2010, 7:02:22 AM12/10/10
to VoGeeky
toolchain:
http://alt84.ru/pub_storage/ftp.ingenic.cn/3sw/01linux/00toolchain/
необходим еще mkimage из uboot, в дебиане есть в пакете uboot-mkimage.

как собирать примерно написано тут:
http://alt84.ru/pub_storage/ftp.ingenic.cn/3sw/01linux/06docs/20101015/linux_development_guide_EN.pdf

Peter Zotov

unread,
Dec 10, 2010, 8:33:44 AM12/10/10
to vog...@googlegroups.com
On Fri, 10 Dec 2010 03:53:56 -0800 (PST), WreWolf <wre...@gmail.com>
wrote:

> Какие пакеты необходимы для сборки?
> какой кросс компилятор?

1. для убута тулчейн отсюда:
http://alt84.ru/pub_storage/ftp.ingenic.cn/3sw/01linux/00toolchain/
Я собирал при помощи mipseltools-gcc412-glibc261.tar.bz2
Его достаточно распаковать куда угодно и сделать
export PATH=$PATH:~/where/they/are/bin

2. для jzboot:
Есть поддержка readline (уже вроде даже с автодополнением команд);
если надо, поставить пакет libreadline-dev. Кроме того, нужна libusb
(новая, версии 1); пакет libusb-1.0-0-dev. (Все пакеты указаны для
Debian-подобных дистрибутивов).

Собирается обычным gcc, команда make или make READLINE=1

--
WBR, Peter Zotov.

Peter Zotov

unread,
Dec 10, 2010, 8:39:11 AM12/10/10
to vog...@googlegroups.com
On Fri, 10 Dec 2010 04:02:22 -0800 (PST), rzk <rzk...@gmail.com> wrote:
> toolchain:
> http://alt84.ru/pub_storage/ftp.ingenic.cn/3sw/01linux/00toolchain/
> необходим еще mkimage из uboot, в дебиане есть в пакете
> uboot-mkimage.

Вместе с этим убутом собирается и mkimage.

--
WBR, Peter Zotov.

iSage

unread,
Dec 10, 2010, 8:42:51 AM12/10/10
to vog...@googlegroups.com
Вопрос: jzboot шить умеет? и насколько хорошо?

2010/12/10 Peter Zotov <white...@whitequark.org>:

--
Close the world...
...Open the next.

WreWolf

unread,
Dec 10, 2010, 8:45:52 AM12/10/10
to vog...@googlegroups.com
mipseltools-gcc412-glibc261.tar.bz2
я ее по мануалу в /opt распаковал

а что в js-crosstools-src?
судя по его инсталлеру он собирает то что есть уже вготовом виде, т.е. mipseltools-gcc412-glibc261.tar.bz2 (точнее то что внутри)

Peter Zotov

unread,
Dec 10, 2010, 8:46:45 AM12/10/10
to vog...@googlegroups.com
On Fri, 10 Dec 2010 16:42:51 +0300, iSage <isag...@gmail.com> wrote:
> Вопрос: jzboot шить умеет? и насколько хорошо?
>
> 2010/12/10 Peter Zotov <white...@whitequark.org>:
>> On Fri, 10 Dec 2010 04:02:22 -0800 (PST), rzk <rzk...@gmail.com>
>> wrote:
>>>
>>> toolchain:
>>> http://alt84.ru/pub_storage/ftp.ingenic.cn/3sw/01linux/00toolchain/
>>> необходим еще mkimage из uboot, в дебиане есть в пакете
>>> uboot-mkimage.
>>
>> Вместе с этим убутом собирается и mkimage.

Да, отлично шьет и дампает.
Проверено на оригинальной прошивке (полное чтение и заливка после
erase),
а кроме того на моем убуте.

--
WBR, Peter Zotov.

iSage

unread,
Dec 10, 2010, 8:49:46 AM12/10/10
to vog...@googlegroups.com
Отлично, наконец не надо таскать девайс на работу к винде.
Спасибо огромное за тулзу.

2010/12/10 Peter Zotov <white...@whitequark.org>:
> On Fri, 10 Dec 2010 16:42:51 +0300, iSage <isag...@gmail.com> wrote:
>>
>> Вопрос: jzboot шить умеет? и насколько хорошо?
>>
>> 2010/12/10 Peter Zotov <white...@whitequark.org>:
>>>
>>> On Fri, 10 Dec 2010 04:02:22 -0800 (PST), rzk <rzk...@gmail.com> wrote:
>>>>
>>>> toolchain:
>>>> http://alt84.ru/pub_storage/ftp.ingenic.cn/3sw/01linux/00toolchain/
>>>> необходим еще mkimage из uboot, в дебиане есть в пакете uboot-mkimage.
>>>
>>> Вместе с этим убутом собирается и mkimage.
>
> Да, отлично шьет и дампает.
> Проверено на оригинальной прошивке (полное чтение и заливка после erase),
> а кроме того на моем убуте.
>
> --
>  WBR, Peter Zotov.
>

--

Peter Zotov

unread,
Dec 10, 2010, 8:52:40 AM12/10/10
to vog...@googlegroups.com
On Fri, 10 Dec 2010 16:49:46 +0300, iSage <isag...@gmail.com> wrote:
> Отлично, наконец не надо таскать девайс на работу к винде.
> Спасибо огромное за тулзу.

Спасибо не мне, а Сергею Гридассову <grin...@gmail.com>, который ее по
сути и
написал. Я только отлаживал да костылил помаленьку :)

--
WBR, Peter Zotov.

rzk

unread,
Dec 10, 2010, 8:53:07 AM12/10/10
to VoGeeky
а можно более подробный мануал? зашил без oob свои u-boot и uimage -
девайс вообще не завелся, упал сразу в usb boot.

On 10 дек, 16:46, Peter Zotov <whitequ...@whitequark.org> wrote:


>  On Fri, 10 Dec 2010 16:42:51 +0300, iSage <isage....@gmail.com> wrote:
>
> > Вопрос: jzboot шить умеет? и насколько хорошо?
>

> > 2010/12/10 Peter Zotov <whitequ...@whitequark.org>:

WreWolf

unread,
Dec 10, 2010, 8:57:33 AM12/10/10
to vog...@googlegroups.com
 libreadline-dev и libusb-1.0-0-dev установлены


wrewolf@wrewolf-laptop:~/vogue/git/jzboot$ make
gcc  --std=gnu99 -Wall -Werror -O2 -I/usr/include/libusb-1.0   -o ingenic.o -MD -c ingenic.c
cc1: warnings being treated as errors
ingenic.c: In function ‘ingenic_loadstage’:
ingenic.c:293: error: ignoring return value of ‘fread’, declared with attribute warn_unused_result
ingenic.c: In function ‘ingenic_load_sdram_file’:
ingenic.c:455: error: ignoring return value of ‘fread’, declared with attribute warn_unused_result
make: *** [ingenic.o] Ошибка 1
wrewolf@wrewolf-laptop:~/vogue/git/jzboot$ make READLINE=1                      
gcc -DWITH_READLINE --std=gnu99 -Wall -Werror -O2 -I/usr/include/libusb-1.0   -o ingenic.o -MD -c ingenic.c
cc1: warnings being treated as errors
ingenic.c: In function ‘ingenic_loadstage’:
ingenic.c:293: error: ignoring return value of ‘fread’, declared with attribute warn_unused_result
ingenic.c: In function ‘ingenic_load_sdram_file’:
ingenic.c:455: error: ignoring return value of ‘fread’, declared with attribute warn_unused_result
make: *** [ingenic.o] Ошибка 1

Peter Zotov

unread,
Dec 10, 2010, 8:59:13 AM12/10/10
to vog...@googlegroups.com
On Fri, 10 Dec 2010 05:53:07 -0800 (PST), rzk <rzk...@gmail.com> wrote:
> а можно более подробный мануал? зашил без oob свои u-boot и uimage -
> девайс вообще не завелся, упал сразу в usb boot.

Для загрузчика нужно поставить другой ECC.
Делается это так:

./jzboot -i 0 -C boot.cfg
jzboot> set NAND_ECCPOS 3; rebuildcfg; boot
jzboot> nerase 0 0 1
jzboot> nprogram 0 0 u-boot-nand.bin

Алсо, только что пофиксили багу, где образ, не кратный размеру
страницы,
обрезался; git pull && make.

--
WBR, Peter Zotov.

WreWolf

unread,
Dec 10, 2010, 9:05:04 AM12/10/10
to vog...@googlegroups.com
после последнего обновления у меня собрался

Peter Zotov

unread,
Dec 10, 2010, 9:08:04 AM12/10/10
to vog...@googlegroups.com
На всякий случай отзеркалировал (т.е. обновления грузятся
автоматически)
на gitorious:

http://gitorious.org/vogoplayer-tools

--
WBR, Peter Zotov.

rzk

unread,
Dec 10, 2010, 9:08:53 AM12/10/10
to VoGeeky
~/jzboot# ./jzboot -i 0 -C boot.cfg
Shell: using command set 'SPL', run 'help' for command list. CPU: 4750
ingenic_loadstage: Broken pipe
shell_source: Broken pipe

по-другому так же:
~/jzboot# ./jzboot -i 0
Shell: using command set 'SPL', run 'help' for command list. CPU: 4750
jzboot> source boot.cfg
ingenic_loadstage: Broken pipe
Error while sourcing file boot.cfg: Broken pipe
jzboot>

после этого сразу ребут девайса, где трубы-то текут? (:

rzk

unread,
Dec 10, 2010, 9:15:37 AM12/10/10
to VoGeeky
перестянул git, собрал с readline,

теперь так:


Shell: using command set 'SPL', run 'help' for command list. CPU: 4750

ingenic_stage1_debugop: Input/output error
shell_source: Input/output error

система deb squeeze, машина - виртуалка vbox.

Peter Zotov

unread,
Dec 10, 2010, 9:16:54 AM12/10/10
to vog...@googlegroups.com
On Fri, 10 Dec 2010 06:08:53 -0800 (PST), rzk <rzk...@gmail.com> wrote:
> ~/jzboot# ./jzboot -i 0 -C boot.cfg
> Shell: using command set 'SPL', run 'help' for command list. CPU:
> 4750
> ingenic_loadstage: Broken pipe
> shell_source: Broken pipe
>
> по-другому так же:
> ~/jzboot# ./jzboot -i 0
> Shell: using command set 'SPL', run 'help' for command list. CPU:
> 4750
> jzboot> source boot.cfg
> ingenic_loadstage: Broken pipe
> Error while sourcing file boot.cfg: Broken pipe
> jzboot>
>
> после этого сразу ребут девайса, где трубы-то текут? (:

Хм, любопытно. Ни разу с подобным не сталкивался. А что в dmesg?
Что выводит jzboot, если ему дать -d5 (отладка)?

--
WBR, Peter Zotov.

rzk

unread,
Dec 10, 2010, 9:24:57 AM12/10/10
to VoGeeky
c dmesg все ок,
[ 9912.856004] usb 1-1: new high speed USB device using ehci_hcd and
address 18
[ 9913.190000] usb 1-1: New USB device found, idVendor=601a,
idProduct=4750
[ 9913.190005] usb 1-1: New USB device strings: Mfr=1, Product=2,
SerialNumber=0
[ 9913.190008] usb 1-1: Product: JZ4750 USB Boot Device
[ 9913.190010] usb 1-1: Manufacturer: Ingenic
[ 9913.190178] usb 1-1: configuration #1 chosen from 1 choice

#./jzboot -i 0 -C boot.cfg -d5
Device manager: registered 601A:4750 with data 0x884f2a0
Device open
Control: type C0, request 0, value 0, index 0, data 0xbf8ec1a7, size 8
Initializing shell


Shell: using command set 'SPL', run 'help' for command list. CPU: 4750

ingenic_stage1_debugop: Input/output error
shell_source: Input/output error

Device closed

кстати сейчас он не ребутается, можно повторять эту ошибку сколько
угодно.
в винде определяется-шьется, под линухом можно через стандартный
усббут можно залить ядро в sdram и запустить его, так что это не
хардварные проблемы.
ps: винда тоже в вбоксе.

Peter Zotov

unread,
Dec 10, 2010, 9:29:58 AM12/10/10
to vog...@googlegroups.com

Это был баг, его пофиксили.
http://git.whitequark.org/jzboot.git/commit/?id=90652cdb75b5ecc244973e8b4a0cd21e40e96bc0

--
WBR, Peter Zotov.

rzk

unread,
Dec 10, 2010, 9:43:00 AM12/10/10
to VoGeeky
еще один багрепорт:
большой лог - http://pastie.org/1365277

сейчас попробую без реконфигура для ядра.

Peter Zotov

unread,
Dec 10, 2010, 9:50:25 AM12/10/10
to vog...@googlegroups.com

rzk

unread,
Dec 10, 2010, 9:55:57 AM12/10/10
to VoGeeky
./jzboot -i 0 -C boot.cfg -d5
Device manager: registered 601A:4750 with data 0x98702a0
Device open
Control: type C0, request 0, value 0, index 0, data 0xbfa96907, size 8
Initializing shell
Shell: using command set 'SPL', run 'help' for command list. CPU: 4750
Control: type 40, request 1, value 32768, index 8192, data (nil), size
0
Bulk: writing data 0x987bbb0, size 7612
Control: type 40, request 4, value 32768, index 8192, data (nil), size
0
Control: type 40, request 1, value 33216, index 0, data (nil), size 0
Translated libusb return -9 to 32
ingenic_loadstage: Broken pipe
shell_source: Broken pipe
Device closed

(:

On 10 дек, 17:50, Peter Zotov <whitequ...@whitequark.org> wrote:
>  On Fri, 10 Dec 2010 06:43:00 -0800 (PST), rzk <rzk...@gmail.com> wrote:
>
> > еще один багрепорт:
> > большой лог -http://pastie.org/1365277
>
> > сейчас попробую без реконфигура для ядра.
>
>  Фикс в мастере:
>  http://git.whitequark.org/jzboot.git/commit/?id=0c9dd55ec7b500bd42d49...
>
> --
>    WBR, Peter Zotov.

Peter Zotov

unread,
Dec 10, 2010, 10:07:56 AM12/10/10
to vog...@googlegroups.com
On Fri, 10 Dec 2010 06:55:57 -0800 (PST), rzk <rzk...@gmail.com> wrote:
> ./jzboot -i 0 -C boot.cfg -d5
> Device manager: registered 601A:4750 with data 0x98702a0
> Device open
> Control: type C0, request 0, value 0, index 0, data 0xbfa96907, size
> 8
> Initializing shell
> Shell: using command set 'SPL', run 'help' for command list. CPU:
> 4750
> Control: type 40, request 1, value 32768, index 8192, data (nil),
> size
> 0
> Bulk: writing data 0x987bbb0, size 7612
> Control: type 40, request 4, value 32768, index 8192, data (nil),
> size
> 0
> Control: type 40, request 1, value 33216, index 0, data (nil), size 0
> Translated libusb return -9 to 32
> ingenic_loadstage: Broken pipe
> shell_source: Broken pipe
> Device closed
>
> (:

В USBBoot есть задержки после некоторых операций; в jzboot их не было.
В бранче delayed есть задержка после загрузки стейджа:

http://git.whitequark.org/jzboot.git/commit/?h=delayed&id=be5355d74e1926322e269108ee7a0d4b9ed84231

--
WBR, Peter Zotov.

rzk

unread,
Dec 10, 2010, 10:20:05 AM12/10/10
to VoGeeky
похоже на костыль, разве не libusb должно заниматься задержками с
интерфейсом?

в любом случае спасибо за быструю поддержку, чуть позже проверю
delayed.

Peter Zotov

unread,
Dec 10, 2010, 10:23:20 AM12/10/10
to vog...@googlegroups.com

Если задержка вносится не собственно коммуникацией по USB, а, например,
чем-то, что делает прошивка после получения образа, то нет.
А работать оно может рандомно потому, что отличаются хосты и
хост-контроллеры:
250 микросекунд -- это немного, может и само по себе возникать из-за
особенностей реализации.

--
WBR, Peter Zotov.

WreWolf

unread,
Dec 10, 2010, 10:28:47 AM12/10/10
to vog...@googlegroups.com
из разряда оффтопа
сборка make volans_nand_config all
на разархивированном тулчайне заняла около 5 минут.

потом тулчайн был собран на машине и сборка 
make clean 
make volans_nand_config all
заняла порядка минуты

rzk

unread,
Dec 10, 2010, 10:32:03 AM12/10/10
to vog...@googlegroups.com
а сколько сам тулчейн собирался?

2010/12/10 WreWolf <wre...@gmail.com>:

iSage

unread,
Dec 10, 2010, 10:34:45 AM12/10/10
to vog...@googlegroups.com
А ежели на разархивированном
make volans_nand_config all

make clean
make volans_nand_config all

Сколько собираться второй раз будет?


2010/12/10 WreWolf <wre...@gmail.com>:

--

WreWolf

unread,
Dec 10, 2010, 10:36:39 AM12/10/10
to vog...@googlegroups.com
минут 20.
(ноут AMD MK38 
2Gb оперативы
2,2GHz камень
Ubuntu 10.10)

WreWolf

unread,
Dec 10, 2010, 10:37:34 AM12/10/10
to vog...@googlegroups.com
вот честно не пробовал.
хотя есть подозрения что тожеменьше.
Хотя clean должна подчишать все ранее собранное

rzk

unread,
Dec 11, 2010, 12:24:08 PM12/11/10
to VoGeeky
проверил, теперь шьется, но загрузки все равно нет.
шью так:

# ./jzboot -i 0 -C boot.cfg
Shell: using command set 'SPL', run 'help' for command list. CPU: 4750
Shell: using command set 'USBBoot', run 'help' for command list. CPU:
4750
jzboot> set NAND_ECCPOS 3; rebuildcfg; boot
jzboot> nerase 0 0 1
jzboot> nprogram 0 0 u-boot-nand.bin
jzboot> nprogram 0 2048 uImage


Peter Zotov

unread,
Dec 11, 2010, 1:20:16 PM12/11/10
to vog...@googlegroups.com

Еще бы. nerase 0 0 1 стирает один блок (128 страниц), а ядро шьется с
2048-го.
nerase 0 0 32 в помощь.

Бранч delayed я смержу с мастером тогда.

--
WBR, Peter Zotov.

rzk

unread,
Dec 11, 2010, 1:32:56 PM12/11/10
to vog...@googlegroups.com
да, точно, заработало, сделал сразу 0 4096.
может стоит сделать скриптец для прошивки стандартного набора, как в
виндовом усббуте?

2010/12/11 Peter Zotov <white...@whitequark.org>:

Peter Zotov

unread,
Dec 11, 2010, 1:46:41 PM12/11/10
to vog...@googlegroups.com
On Sat, 11 Dec 2010 21:32:56 +0300, rzk <rzk...@gmail.com> wrote:
> да, точно, заработало, сделал сразу 0 4096.
> может стоит сделать скриптец для прошивки стандартного набора, как в
> виндовом усббуте?
>

Сделай, у меня нет виндового усббута.
Там есть dump.scr, который дампает оригинальную прошивку, можешь взять
за
пример.

--
WBR, Peter Zotov.

rzk

unread,
Dec 11, 2010, 3:38:16 PM12/11/10
to vog...@googlegroups.com
накидал:
u-boot-nand.bin + uImage + rootfs.yaffs2 http://pastie.org/1368585
minios dump http://pastie.org/1368586

2010/12/11 Peter Zotov <white...@whitequark.org>:

rzk

unread,
Dec 11, 2010, 3:42:13 PM12/11/10
to vog...@googlegroups.com
кстати, стоит делей сделать еще чуть больше, иногда со второго раза срабатывает.

Peter Zotov

unread,
Dec 11, 2010, 3:46:27 PM12/11/10
to vog...@googlegroups.com
On Sat, 11 Dec 2010 23:38:16 +0300, rzk <rzk...@gmail.com> wrote:
> накидал:
> u-boot-nand.bin + uImage + rootfs.yaffs2 http://pastie.org/1368585
> minios dump http://pastie.org/1368586
>

В первом патче rootfs закомментирован почему-то.
И за какие грехи nerase-у передается 32768? 4096 вполне хватает.

--
WBR, Peter Zotov.

rzk

unread,
Dec 11, 2010, 3:56:14 PM12/11/10
to vog...@googlegroups.com
чтоб стер флешь к начисто (: смени если считаешь нужным, я подумал,
что при записи такой пачки стоит стереть в ноль все что там было
когда-то.
рутфс раскоментировать если надо его шить, я пока еще не собрал свой с
блекдж^W с преферансом и куртизанками.

вообщем, feel free to fix.

вот кстати, почему бы не сделать так, что бы exit из скрипта передавал
exit самому jzboot? либо добавить функцию выхода отдельную, если это
exit из скрипта. просто после прошивки хочется увидеть консоль
системы, а не приглашение уже не нужного jzboot.

2010/12/11 Peter Zotov <white...@whitequark.org>:

Peter Zotov

unread,
Dec 11, 2010, 4:02:26 PM12/11/10
to vog...@googlegroups.com
On Sat, 11 Dec 2010 23:56:14 +0300, rzk <rzk...@gmail.com> wrote:
> чтоб стер флешь к начисто (: смени если считаешь нужным, я подумал,
> что при записи такой пачки стоит стереть в ноль все что там было
> когда-то.
> рутфс раскоментировать если надо его шить, я пока еще не собрал свой
> с
> блекдж^W с преферансом и куртизанками.
>
> вообщем, feel free to fix.
>
> вот кстати, почему бы не сделать так, что бы exit из скрипта
> передавал
> exit самому jzboot? либо добавить функцию выхода отдельную, если это
> exit из скрипта. просто после прошивки хочется увидеть консоль
> системы, а не приглашение уже не нужного jzboot.

Это было сделано специально, насколько я знаю. Feel free to patch :)
Preferably, отдельной командой.

Какую строку автора для коммита в гит сделать?
что-то вроде "First Last <em...@address.com>"

--
WBR, Peter Zotov.

rzk

unread,
Dec 11, 2010, 4:05:40 PM12/11/10
to VoGeeky
ответил на почту.

Peter Zotov

unread,
Dec 11, 2010, 4:32:23 PM12/11/10
to vog...@googlegroups.com

iSage

unread,
Dec 11, 2010, 5:51:32 PM12/11/10
to vog...@googlegroups.com
Пара багрепортов:
1) в boot.cfg неверный путь до initial.cfg
2) скрипт прошивки работает только если положить его в директорию с
jzboot, потому как путь к инклюдам считается от директории со
скриптом.

2010/12/12 Peter Zotov <white...@whitequark.org>:

--

iSage

unread,
Dec 11, 2010, 6:26:28 PM12/11/10
to vog...@googlegroups.com
Ну и с тем конфигом, что есть, рутфс шьется неверно.

2010/12/12 iSage <isag...@gmail.com>:

rzk

unread,
Dec 11, 2010, 6:36:31 PM12/11/10
to vog...@googlegroups.com
а как верно?

2010/12/12 iSage <isag...@gmail.com>:

iSage

unread,
Dec 11, 2010, 6:40:59 PM12/11/10
to vog...@googlegroups.com
А как верно я сейчас не вспомню, рабочий конфиг остался на работе в винде =/
А я во всех этих параметрах, к сожалению, нифига не понимаю.

2010/12/12 rzk <rzk...@gmail.com>:

rzk

unread,
Dec 11, 2010, 6:46:36 PM12/11/10
to vog...@googlegroups.com
ясно, нужен если что размер страницы в oob.

2010/12/12 iSage <isag...@gmail.com>:

Peter Zotov

unread,
Dec 11, 2010, 6:50:56 PM12/11/10
to vog...@googlegroups.com
On Sun, 12 Dec 2010 02:40:59 +0300, iSage <isag...@gmail.com> wrote:
> А как верно я сейчас не вспомню, рабочий конфиг остался на работе в
> винде =/
> А я во всех этих параметрах, к сожалению, нифига не понимаю.
>
> 2010/12/12 rzk <rzk...@gmail.com>:
>> а как верно?
>>
>> 2010/12/12 iSage <isag...@gmail.com>:
>>> Ну и с тем конфигом, что есть, рутфс шьется неверно.

Подозреваю, что дело в том, что дефолтные настройки NAND-а (в
частности,
параметры ECC) в линуксе стоят не такие, как для minios. Надо смотреть.

--
WBR, Peter Zotov.

Peter Zotov

unread,
Dec 11, 2010, 6:56:37 PM12/11/10
to vog...@googlegroups.com
On Sun, 12 Dec 2010 01:51:32 +0300, iSage <isag...@gmail.com> wrote:
> Пара багрепортов:
> 1) в boot.cfg неверный путь до initial.cfg
> 2) скрипт прошивки работает только если положить его в директорию с
> jzboot, потому как путь к инклюдам считается от директории со
> скриптом.
>

Путь к инклюдам _не_ считается от директории со скриптом, он считается
от текущей. (Кто не верит, см. builtin_source() в shell_builtins.c и
shell_source() в shell.c). Просто я поставил неправильный путь :)
Более того, этот скрипт у меня успешно прошивает ядро и убут (рутфс
нету пока).

Остальное фиксед:
http://git.whitequark.org/jzboot.git/commit/?id=1b0126410f92d095a02dd8a5b875ff7e5aee8aa0

--
WBR, Peter Zotov.

iSage

unread,
Dec 11, 2010, 7:01:05 PM12/11/10
to vog...@googlegroups.com
Странно. И впрямь работает.

2010/12/12 Peter Zotov <white...@whitequark.org>:

--

iSage

unread,
Dec 11, 2010, 8:05:47 PM12/11/10
to vog...@googlegroups.com
Домучал.

set NAND_ECCPOS 24 # Specify the ECC offset inside the oob
data (0-[oobsize-1])
set NAND_BADBLOCKPAGE 127 # Specify the page number of badblock
flag inside a block(0-[PAGEPERBLOCK-1])
set NAND_BCHBIT 4 # Specify the hardware BCH algorithm for 4750 (4|8)

и шить через nprogram_oob а не nprogram

2010/12/12 Peter Zotov <white...@whitequark.org>:

--

Peter Zotov

unread,
Dec 11, 2010, 8:11:11 PM12/11/10
to vog...@googlegroups.com
On Sun, 12 Dec 2010 04:05:47 +0300, iSage <isag...@gmail.com> wrote:
> Домучал.
>
> set NAND_ECCPOS 24 # Specify the ECC offset inside the oob
> data (0-[oobsize-1])
> set NAND_BADBLOCKPAGE 127 # Specify the page number of badblock
> flag inside a block(0-[PAGEPERBLOCK-1])
> set NAND_BCHBIT 4 # Specify the hardware BCH algorithm for
> 4750 (4|8)
>
> и шить через nprogram_oob а не nprogram

Кого записать как автора коммита? "First Last <em...@address.at>"

--
WBR, Peter Zotov.

iSage

unread,
Dec 11, 2010, 8:13:03 PM12/11/10
to vog...@googlegroups.com
Ivan Epifanov <isag...@gmail.com>

2010/12/12 Peter Zotov <white...@whitequark.org>:

--

Peter Zotov

unread,
Dec 11, 2010, 8:21:29 PM12/11/10
to vog...@googlegroups.com
On Sun, 12 Dec 2010 04:13:03 +0300, iSage <isag...@gmail.com> wrote:
> Ivan Epifanov <isag...@gmail.com>
>
> 2010/12/12 Peter Zotov <white...@whitequark.org>:
>> On Sun, 12 Dec 2010 04:05:47 +0300, iSage <isag...@gmail.com>
>> wrote:
>>>
>>> Домучал.
>>>
>>> set NAND_ECCPOS       24     # Specify the ECC offset inside the
>>> oob
>>> data (0-[oobsize-1])
>>> set NAND_BADBLOCKPAGE 127    # Specify the page number of badblock
>>> flag inside a block(0-[PAGEPERBLOCK-1])
>>> set NAND_BCHBIT       4      # Specify the hardware BCH algorithm
>>> for
>>> 4750 (4|8)
>>>
>>> и шить через nprogram_oob а не nprogram

Ок.
http://git.whitequark.org/jzboot.git/commit/?id=27d48e973438c1165a384be6475dd64b65c400b9

--
WBR, Peter Zotov.

iSage

unread,
Dec 12, 2010, 5:10:31 AM12/12/10
to vog...@googlegroups.com
Еще небольшой багрепорт, забыл совсем про это:
gcc --std=gnu99 -Wall -Werror -I../include -O2
-I/usr/include/libusb-1.0 -Wunused-result -o debug.o -MD -c debug.c
cc1: error: unrecognized command line option "-Wunused-result"
make: *** [debug.o] Error 1

gcc -v
Using built-in specs.
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
--infodir=/usr/share/info
--with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap
--enable-shared --enable-threads=posix --enable-checking=release
--with-system-zlib --enable-__cxa_atexit
--disable-libunwind-exceptions --enable-gnu-unique-object
--enable-languages=c,c++,objc,obj-c++,java,fortran,ada
--enable-java-awt=gtk --disable-dssi
--with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre
--enable-libgcj-multifile --enable-java-maintainer-mode
--with-ecj-jar=/usr/share/java/eclipse-ecj.jar
--disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic
--with-arch_32=i686 --build=x86_64-redhat-linux
Thread model: posix
gcc version 4.4.5 20101112 (Red Hat 4.4.5-2) (GCC)

Ман по gcc услужливо подсказывает, что -Wunused-result и так включен по-дефолту.

2010/12/12 Peter Zotov <white...@whitequark.org>:
> On Sun, 12 Dec 2010 04:13:03 +0300, iSage <isag...@gmail.com> wrote:
>>
>> Ivan Epifanov <isag...@gmail.com>
>>
>> 2010/12/12 Peter Zotov <white...@whitequark.org>:
>>>
>>> On Sun, 12 Dec 2010 04:05:47 +0300, iSage <isag...@gmail.com> wrote:
>>>>
>>>> Домучал.
>>>>
>>>> set NAND_ECCPOS       24     # Specify the ECC offset inside the oob
>>>> data (0-[oobsize-1])
>>>> set NAND_BADBLOCKPAGE 127    # Specify the page number of badblock
>>>> flag inside a block(0-[PAGEPERBLOCK-1])
>>>> set NAND_BCHBIT       4      # Specify the hardware BCH algorithm for
>>>> 4750 (4|8)
>>>>
>>>> и шить через nprogram_oob а не nprogram
>
> Ок.
> http://git.whitequark.org/jzboot.git/commit/?id=27d48e973438c1165a384be6475dd64b65c400b9
>
> --
>  WBR, Peter Zotov.
>

--

Peter Zotov

unread,
Dec 12, 2010, 12:31:16 PM12/12/10
to vog...@googlegroups.com

WreWolf

unread,
Dec 21, 2010, 5:57:44 AM12/21/10
to vog...@googlegroups.com
под генту у меня не собирается 
localhost jzboot # make -C src READLINE=1                                                           
make: pkg-config: Command not found                                                                 
make: Entering directory `/root/jzboot/src'                                                         
gcc -DWITH_READLINE --std=gnu99 -Wall -Werror -I../include -O2  -o ingenic.o -MD -c ingenic.c       
cc1: warnings being treated as errors                                                               
ingenic.c: In function 'ingenic_dump_nand':                                                         
ingenic.c:592: error: ignoring return value of 'fwrite', declared with attribute warn_unused_result 
make: *** [ingenic.o] Error 1                                                                       
make: Leaving directory `/root/jzboot/src'                                                          

iSage

unread,
Dec 21, 2010, 6:01:50 AM12/21/10
to vog...@googlegroups.com
Пока можете добавить -Wno-unused-result

2010/12/21 WreWolf <wre...@gmail.com>:

--

Danil A. Zagoskin

unread,
Dec 21, 2010, 6:09:35 AM12/21/10
to vog...@googlegroups.com
Извините, но я не верю в генту с таким хостнеймом и с юзером, не понимающим сообщения "pkg-config: Command not found"
Это не генту. Скажите, что это не генту.

2010/12/21 WreWolf <wre...@gmail.com>

WreWolf

unread,
Dec 21, 2010, 6:17:00 AM12/21/10
to vog...@googlegroups.com
dev-util/pkgconfig еще нужен 

localhost jzboot # make -C src READLINE=1 -Wno-unused-result
make: Entering directory `/root/jzboot/src'
gcc -DWITH_READLINE --std=gnu99 -Wall -Werror -I../include -O2 -I/usr/include/libusb-1.0   -o ingenic.o -MD -c ingenic.c

WreWolf

unread,
Dec 21, 2010, 6:17:49 AM12/21/10
to vog...@googlegroups.com
не это я сразу установил ;)
но ситуации это не изменило.
это генту :)

iSage

unread,
Dec 21, 2010, 6:19:39 AM12/21/10
to vog...@googlegroups.com
-Wno-unused-result надо добавить в опции gcc в мейкфайл.

2010/12/21 WreWolf <wre...@gmail.com>:


> не это я сразу установил ;)
> но ситуации это не изменило.
> это генту :)

--

WreWolf

unread,
Dec 21, 2010, 6:24:05 AM12/21/10
to vog...@googlegroups.com
gentoo запушена на vmware под виндой она голая (grub, syslog-ng, vixie-cron, dhcpcd, pkgconfig, libusb, readline )
Message has been deleted

WreWolf

unread,
Dec 21, 2010, 6:25:58 AM12/21/10
to vog...@googlegroups.com
CFLAGS  = --std=gnu99 -Wall -Werror -I../include -O2 $(shell pkg-config libusb-1.0 --cflags) 
заменить на 
CFLAGS  = --std=gnu99 -Wall -Wno-unused-result -Werror -I../include -O2 $(shell pkg-config libusb-1.0 --cflags) 

так?

iSage

unread,
Dec 21, 2010, 6:27:13 AM12/21/10
to vog...@googlegroups.com
Да

2010/12/21 WreWolf <wre...@gmail.com>:

--

WreWolf

unread,
Dec 21, 2010, 6:30:37 AM12/21/10
to vog...@googlegroups.com
localhost jzboot # make -C src READLINE=1
make: Entering directory `/root/jzboot/src'
gcc -DWITH_READLINE --std=gnu99 -Wall -Wno-unused-result -Werror -I../include -O2 -I/usr/include/libusb-1.0   -o ingenic.o -MD -c ingenic.c
cc1: warnings being treated as errors
ingenic.c: In function 'ingenic_dump_nand':
ingenic.c:592: error: ignoring return value of 'fwrite', declared with attribute warn_unused_result
At top level:
cc1: error: unrecognized command line option "-Wno-unused-result"

WreWolf

unread,
Dec 21, 2010, 6:31:53 AM12/21/10
to vog...@googlegroups.com
хм. я так сразу сделал. и не помогло. по этому пробовал врямо в make передать

и что странно данной опции нет на сайте gcc

iSage

unread,
Dec 21, 2010, 6:34:15 AM12/21/10
to vog...@googlegroups.com
Все зависит от версии.
-Werror тогда убери.

2010/12/21 WreWolf <wre...@gmail.com>:

--

WreWolf

unread,
Dec 21, 2010, 6:42:15 AM12/21/10
to vog...@googlegroups.com
собралось 
у меня gcc 4.4.4
такая строчка
CFLAGS  = --std=gnu99 -Wall -Wno-unused -I../include -O2 $(shell pkg-config libusb-1.0 --cflags)

с такой опять вылез warning на fwrite, но собрался
CFLAGS  = --std=gnu99 -Wall -I../include -O2 $(shell pkg-config libusb-1.0 --cflags)

Peter Zotov

unread,
Dec 21, 2010, 1:45:54 PM12/21/10
to vog...@googlegroups.com
On Tue, 21 Dec 2010 14:19:39 +0300, iSage <isag...@gmail.com> wrote:
> -Wno-unused-result надо добавить в опции gcc в мейкфайл.
>
> 2010/12/21 WreWolf <wre...@gmail.com>:
>> не это я сразу установил ;)
>> но ситуации это не изменило.
>> это генту :)

Исправлено, залито.

--
WBR, Peter Zotov.

Oleg Urzhumtsev

unread,
Feb 7, 2017, 4:27:29 PM2/7/17
to VoGeeky, white...@whitequark.org
В итоге, какую команду в скрипте следует использовать для прошивки .yaffs2-образа?

Makc Mikhin

unread,
Feb 7, 2017, 4:50:38 PM2/7/17
to vog...@googlegroups.com
Коллеги, а как можно использовать сабж с ардюиной? Хотелось бы, например, в качестве монитора его использовать...  

8 февраля 2017 г., 0:27 пользователь Oleg Urzhumtsev <dar...@gmail.com> написал:
В итоге, какую команду в скрипте следует использовать для прошивки .yaffs2-образа?

--
Вы получили это сообщение, поскольку подписаны на группу "VoGeeky".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес vogeeky+unsubscribe@googlegroups.com.
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.



--
Макс Михин
______________________________________________________________________
Моб.: 8 916 063-76-00

Табун Слонопотамов

unread,
Feb 8, 2017, 10:06:18 AM2/8/17
to VoGeeky, white...@whitequark.org


пятница, 10 декабря 2010 г., 1:04:14 UTC+3 пользователь Peter Zotov написал:
Опенсорс -- это хорошо, но ссылок на исходники я что-то ни здесь, ни на
 хабре, ни где еще не видел.
 Так что вот сделал у себя на гите репозитории:

 1. jzboot: http://git.whitequark.org/jzboot.git/
 Реализованный с нуля по мотивам USBBoot загрузчик, нативно работающий
 под Линуксом.

 2. ingenic-uboot: http://git.whitequark.org/ingenic-uboot.git/
 Допиленный до кондиции u-boot. Собирается make volans_nand_config all;
 параметры NAND уже прописаны, можно сразу шить полученный
 u-boot-nand.bin

 Список будет пополняться; patches are welcome.

 ---
   WBR, Peter Zotov.

L29Ah

unread,
Feb 9, 2017, 6:14:15 AM2/9/17
to vog...@googlegroups.com
On Wed, Feb 08, 2017 at 12:50:36AM +0300, Makc Mikhin wrote:
> Коллеги, а как можно использовать сабж с ардюиной? Хотелось бы, например, в
> качестве монитора его использовать...

Можешь общаться с ней по UART.

--
() ascii ribbon campaign - against html mail
/\ http://arc.pasp.de/ - against proprietary attachments
Reply all
Reply to author
Forward
0 new messages