E^X Posted August 28, 2012 · Report post Спасибо за ликбез, я смог прочитать теперь этот пост, но легче не стало. Единственный конфиг. который вроде как можно=нужно трогать для этого лежит /usr/src/kamikaze/target/linux/ar71xx/config-3.3 cat config-3.3 | grep root CONFIG_CMDLINE="rootfstype=squashfs,yaffs,jffs2 noinitrd" CONFIG_INITRAMFS_SOURCE="../../root" Как бы не понятно какой параметр править. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
NiTr0 Posted August 28, 2012 · Report post cmdline. Только определитесь, в каком мтдблоке у вас действительно рут лежит. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
E^X Posted August 29, 2012 (edited) · Report post А как это определить? Для каждой модели железки он свой? Искать в гугле по модели или что-то можно глянуть где-то ещё? просто на микротиках не помню чего-то особенного там, да и в целом микротиком толком не владею, так потыкать мальца. Верной ли дорогой иду товарищи? Configure Kernel options RouterBoot hard codes the boot options passed to the kernel. In order to customize the kernel command line options passed when booting the rb450g. The following kernel configuration options should be set to enable DHCP/NFSROOT: CONFIG_CMDLINE_BOOL=y CONFIG_CMDLINE=" console=ttyS0,115200 board=450G root=/dev/nfs rw ip=dhcp" CONFIG_CMDLINE_OVERRIDE=y In order to boot from NAND, the CMDLINE value should be set as follows: CONFIG_CMDLINE=" console=ttyS0,115200 board=450G root=/dev/mtdblock2 rw rootfstype=yaffs" Принцип стал понятен, что нужно указывать. Только плин как назло в статье не про tftp, а с NFS они это делают. Вот пример для RB411 CONFIG_CMDLINE="root=/dev/mtdblock1 rootfstype=squashfs,yaffs,jffs2 noinitrd console=ttyS0,115200 init=/etc/preinit" Не известно для каких целей конечно, из форума того не ясно. Пожалуй и так root=/dev/mtdblock1 и так root=/dev/mtdblock2 попробую, а там как попрёт :) , и помучаю вот эту строку CONFIG_CMDLINE="root=/dev/mtdblock1 rootfstype=squashfs,yaffs,jffs2 noinitrd console=ttyS0,115200 init=/etc/preinit" Edited August 29, 2012 by E^X Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
NiTr0 Posted August 29, 2012 · Report post А как это определить? По карте мтд девайсов в ядре. Она у вас к слову в терминал выводится. Самый жирный кусок флэша - обычно рут. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
E^X Posted August 31, 2012 · Report post По карте мтд девайсов в ядре. Она у вас к слову в терминал выводится. Самый жирный кусок флэша - обычно рут. Пока не осилил сказанное. Потому что не знаю, как карта эта должна выглядить, что бы понять вывод в консоль. Типа это и есть список девайсов в мтд с адресацией? Early memory PFN ranges 0: 0x00000000 -> 0x00010000 ........... eth1: Atheros AG71xx at 0xb9000000, irq 4 Если да, то я так сказать не многое мог понять, просто eth1 это ещё понятно, что это и адрес и прерывание irq #4. То гдесь в логе root, и какой самый большой кусок я не понял, потому что не везде есть смещение. Самое что поганое, меня настройки cmd удаля всё и забирая опять весь транк, собирая по новой, ни на грамм elf файл не увеличивается в объёмах, сравнение по тексту в тотале, это изменение даты компиляции и ещё пару байтиков, ошибку каждый раз выдают ту же самую, что root не задан. Что не так дела не догоняю. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
NiTr0 Posted August 31, 2012 · Report post отому что не знаю, как карта эта должна выглядить, что бы понять вывод в консоль. Посмотрите вики по опенврт. В логах должно быть что-то типа такого: Creating 5 MTD partitions on "ar7240-nor0": 0x000000000000-0x000000020000 : "boot" 0x000000020000-0x000000120000 : "kernel" 0x000000120000-0x0000003e0000 : "rootfs" 0x0000003e0000-0x0000003f0000 : "config" 0x0000003f0000-0x000000400000 : "art" Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
E^X Posted August 31, 2012 (edited) · Report post Такого нет в логах, весь вывод я приатачил в верхнем моём посту. Ещё понял, что не могу найти конфиг, который править нужно. специально отключал поддержку USB, мне кажется размер файла должен полюбому меняться, много где ещё нашёл куски конфига, где можно прописать CONFIG_CMDLINE="root=/dev/mtdblock1 rootfstype=squashfs,yaffs,jffs2 noinitrd console=ttyS0,115200 init=/etc/preinit" И всё не судьба размер файла не меняется. Edited August 31, 2012 by E^X Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
NiTr0 Posted August 31, 2012 · Report post MTD почему-то не определяются. Почему, и как - сложно сказать. Пинайте девелоперов. Пока что тем более статус платформы - WIP. Или юзайте initramfs вместо squash - памяти вроде как на борде жирно будет. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
sexst Posted August 31, 2012 · Report post http://www.nexlab.it/index.php/2009/04/12/routerboard-450g-and-linux/ Не читали? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
E^X Posted August 31, 2012 (edited) · Report post http://www.nexlab.it/index.php/2009/04/12/routerboard-450g-and-linux/ Не читали? Дык с этой прошивки я узнал, что можно самому собрать ;)/ 1) В статье ноль слов, что ещё нужно создать три директории, иначе не соберётся, и это мождно увидеть только если сделаешь make v=99 2) В статье ноль слов, об указании root=....?, даже где что настраивать. 3) Есть польза, правильный пример DHCP, и то что можно собрать образ самому. Т.е. пользы от неё мало, но есть. А как теперь конфиг поправить фиг понять, я их нашёл много где по директориям, связанных с AR71xx, везде втыкал свою строку и один фиг размер файла не меняется. Чистил каждый раз make clean, удалял вообще всё. Ну вот как-то так, не известно, что делать дальше :( MTD почему-то не определяются. Почему, и как - сложно сказать. Пинайте девелоперов. Пока что тем более статус платформы - WIP.Или юзайте initramfs вместо squash - памяти вроде как на борде жирно будет. Девелопмеров каких Mikrotik или OpenWRT? Поменять можно, но оно меня не слушается. не могу конфиг файл найти, который повлияет на компиляцию.... Edited August 31, 2012 by E^X Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
NiTr0 Posted August 31, 2012 · Report post Девелопмеров каких Mikrotik или OpenWRT? OpenWRT ессно. Можете в мэйллисте ихнем поспрашивать. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
anesth Posted September 2, 2012 · Report post А как теперь конфиг поправить фиг понять, я их нашёл много где по директориям, связанных с AR71xx, везде втыкал свою строку и один фиг размер файла не меняется. Чистил каждый раз make clean, удалял вообще всё. Ну вот как-то так, не известно, что делать дальше :( А щито вы теперь сделать-то хотите? Во-первых, если вы сбилдите свой имидж пусть даже с таким же конфигом, в самом конце процесса вы увидите раскладку мтд. Примерно такие куски: LZMA 4.65 : Igor Pavlov : Public domain : 2009-02-03 mkimage -A mips -O linux -T kernel -C lzma -a 0x80000000 -e 0x80000000 -n "MIPS OpenWrt Linux-3.3.8" -d /usr/local/files/openwrt/trunk-33235/build_dir/linux-ramips_rt305x/vmlinux-wl-351.bin.lzma /usr/local/files/openwrt/trunk-33235/build_dir/linux-ramips_rt305x/vmlinux-wl-351.uImage Image Name: MIPS OpenWrt Linux-3.3.8 Created: Fri Aug 24 22:48:04 2012 Image Type: MIPS Linux Kernel Image (lzma compressed) Data Size: 862013 Bytes = 841.81 kB = 0.82 MB Load Address: 80000000 Entry Point: 80000000 if [ `stat -c%s "/usr/local/files/openwrt/trunk-33235/build_dir/linux-ramips_rt305x/vmlinux-wl-351.uImage"` -gt 917504 ]; then echo "Warning: /usr/local/files/openwrt/trunk-33235/build_dir/linux-ramips_rt305x/vmlinux-wl-351.uImage is too big"; else if [ `stat -c%s /usr/local/files/openwrt/trunk-33235/build_dir/linux-ramips_rt305x/root.squashfs` -gt 2949120 ]; then echo "Warning: /usr/local/files/openwrt/trunk-33235/build_dir/linux-ramips_rt305x/root.squashfs is too big"; else ( dd if=/usr/local/files/openwrt/trunk-33235/build_dir/linux-ramips_rt305x/vmlinux-wl-351.uImage bs=917504 conv=sync; dd if=/usr/local/files/openwrt/trunk-33235/build_dir/linux-ramips_rt305x/root.squashfs ) > /usr/local/files/openwrt/trunk-33235/bin/ramips/openwrt-ramips-rt305x-wl-351-squashfs-sysupgrade.bin; fi; fi 0+1 records in 1+0 records out 917504 bytes (918 kB) copied, 0.0018435 s, 498 MB/s 5120+1 records in 5120+1 records out 2621444 bytes (2.6 MB) copied, 0.015819 s, 166 MB/s cp /usr/local/files/openwrt/trunk-33235/build_dir/linux-ramips_rt305x/vmlinux /usr/local/files/openwrt/trunk-33235/build_dir/linux-ramips_rt305x/vmlinux-wr512-3gn-4M /usr/local/files/openwrt/trunk-33235/staging_dir/host/bin/patch-cmdline /usr/local/files/openwrt/trunk-33235/build_dir/linux-ramips_rt305x/vmlinux-wr512-3gn-4M 'board=WR512-3GN console=ttyS1,57600 mtdparts=physmap-flash.0:192k(u-boot)ro,64k(u-boot-env)ro,64k(factory)ro,896k(kernel),2880k(rootfs),3776k@0x50000(firmware)' /usr/local/files/openwrt/trunk-33235/staging_dir/host/bin/lzma e /usr/local/files/openwrt/trunk-33235/build_dir/linux-ramips_rt305x/vmlinux-wr512-3gn-4M -lc1 -lp2 -pb2 /usr/local/files/openwrt/trunk-33235/build_dir/linux-ramips_rt305x/vmlinux-wr512-3gn-4M.bin.lzma Во-вторых, раскладка у девайсов, на которых работает опенврт примерно такая (d-link dir300 b3): dev: size erasesize name mtd0: 00030000 00010000 "u-boot" mtd1: 00010000 00010000 "devdata" mtd2: 00010000 00010000 "devconf" mtd3: 000e0000 00010000 "kernel" mtd4: 002d0000 00010000 "rootfs" mtd5: 00080000 00010000 "rootfs_data" mtd6: 003b0000 00010000 "firmware" или такая (tp-link wr741nd v2): dev: size erasesize name mtd0: 00020000 00010000 "u-boot" mtd1: 000fde00 00010000 "kernel" mtd2: 002d2200 00010000 "rootfs" mtd3: 00160000 00010000 "rootfs_data" mtd4: 00010000 00010000 "art" mtd5: 003d0000 00010000 "firmware" Вам очевидно нужна партиция "rootfs", как видно выше - у разных девайсов они лежат по-разному. Ищите свою, или напишите в личку - нету счас борды чтобы попробовать, но ввиду опыта на похожих девайсах, может чем-то смогу помочь удалённо. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
E^X Posted September 3, 2012 · Report post А щито вы теперь сделать-то хотите? Да всё тоже, что бы имидж запустился. Конфиг правлю, что бы определить root=/dev/mtdblock1 Скачал не из транка, старую версию 8.09.2, так там в дефолтовом конфиге сия строчка есть. Собираю потихоньку, потом буду тестить, правда там скрипты не всё из инета могут стянуть, для компиляции --2012-09-03 10:20:37-- (try: 4) http://isteve.bofh.cz/~isteve/hotplug2/hotplug2-0.9.tar.gz Connecting to isteve.bofh.cz (isteve.bofh.cz)|91.103.161.231|:80... failed: Connection timed out. Retrying. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
E^X Posted September 3, 2012 · Report post Собралась 8.09.2, конфиг файл прекрасно мои корректировки ловит, но не судьба, не гузиться "mtdblock2" и так "mtdblock1" пробовал в конфиге, по умолчанию в файле "mtdblock2" VFS: Cannot open root device "mtdblock1" or unknown-block(0,0) Please append a correct "root=" boot option; here are the available partitions: Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
anesth Posted September 3, 2012 (edited) · Report post Собралась 8.09.2, конфиг файл прекрасно мои корректировки ловит, но не судьба, не гузиться "mtdblock2" и так "mtdblock1" пробовал в конфиге, по умолчанию в файле "mtdblock2" Я бы попробовал собрать ядро с маленькой initramfs внутри и соответствующими root= и init=. А какие у вас конфиги ядра и самой openwrt получаются? Вывод ядра там повыше сильно смахивает на то, что оно не определяет mtd-девайс ни в каком виде. Сравните с примером. Недоступность файла для скачивания не беда, явление временное. Впрочем, можете в другом месте поискать тот же файл. tplink_dmesg.txt Edited September 3, 2012 by anesth Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
E^X Posted September 10, 2012 · Report post Вот путь до конфига /usr/src/8.09.2/target/linux/ar71xx/config-default И приатачиваю файлик. сильно смахивает на то, что оно не определяет mtd-девайс ни в каком виде.Сравните с примером. Да в вашем примере однозначно больше слов mtd, у меня их вообще нет. openwrt_conf.txt Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
anesth Posted September 23, 2012 · Report post Что-то мы с вами пересечься не можем. Здесь вроде как хорошие новости :) т.к. похоже, что у вас не видится нанд, о чём говорилось по ссылке выше (на www.nextlab.it). Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
anesth Posted October 9, 2012 · Report post Небольшой итог: все получилось, trunk работает. У коллеги на борде NAND Hynix о которой и раньше говорили, что она определяется, мне на днях приехала RB450 с NAND Samsung и тоже заработала. Хотелось бы отметить для тех, кто будет решать аналогичную задачу. Собирать нужно два образа, один с initramfs, другой с отдельным корнем. Дальше грузимся с initramfs (я делал по tftp, E^X шил) - имидж openwrt-ar71xx-nand-vmlinux-initramfs.elf и пользуем скрипт wget2nand. Скрипт возьмёт с локального http-сервера ядро + корень (openwrt-ar71xx-nand-vmlinux.elf и openwrt-ar71xx-nand-rootfs.tar.gz) и разложит куда надо. Всё :) Бенчмарков, правда, не бенчмаркали пока. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
E^X Posted October 10, 2012 · Report post Спасибо огромное anesth, благодаря ему пришло осознание, что не так делал. 1) Для загрузке по DHCP, нужно но в Target Images, выбрать Ramdisk 2) Установить nand и всё хорошо, всё работает Осталось научиться создавать окружение, что бы пакеты собрать, точнее сказать, Астариск 10-ый собрать, что бы ещё с факсами 0 проблем было и можно тестить, сколько и чего потянет сей агрегат, думаю на 10 одновременных без транскодинга должна собака работать, вот ещё кодеки насобирать 729 :) В общем ещё иметь секаса и иметь. Кто может подскажет, хорошую статейку, как там насобирать всё для борда на компе? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
voron Posted February 23, 2014 · Report post Кто-то rb912 прошивал в wrt? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Viking_Oleg Posted February 24, 2014 · Report post у кого есть опыт установки openwrt на rb433ah? установил по мануалу на сайте, но никак не могу заставить работать карты в superchannel. может будут какие-то мысли? в какую сторону смотреть? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
adron2 Posted February 24, 2014 · Report post А там вроде как патч нужен чтобы нестандартные частоты открыть... Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Viking_Oleg Posted February 24, 2014 · Report post спасибо, появилась надежда... у вас случаем ссылки под рукой нет? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
voron Posted June 12, 2014 · Report post Кто-то rb912 прошивал в wrt?Теперь это стало возможно Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...