Вот сейчас борюсь с WI-FI точкой доступа Dlink DAP-3220.
Как точка доступа - вполне себе нормальная.
Понадобилось мне собрать загрузчик.
Поводом послужило наличие точки доступа Dlink DAP-3220. Неплохой внешний девайс, если б еще не сборка криворукая... В общем - утонул из-за неправильно установленного на заводе уплотнительного кольца разъема антенны. Но это лирика. Восстановил - и задумался - куда ее?
Надо поставить что-то нормальное, вместо родного ПО.
Выбор невелик - либо DD-WRT либо OpenWRT.
Припаял контакты UART - и увидел в девайсе загрузчиком art.
Ну - беда невелика, сейчас по аналогии с DWL-2100 поменяю. А вот нет!
Список железа:
SOC: Atheros 2313a
Ethernet: icplus ic101a
RAM: 32 MB
Flash: Spansion S29GL064A90TFIR4 8MB
Кстати, точка по железу - аналог следующих:
Alfa NetworksSolo48
Allnet all0258
или
Senao / EnGenius EOC-5610 / M5000
(инфо с http://www.dd-wrt.com/wiki/index.php/Supported_Devices)
Вот как раз флеш и не определился редбутом от 2100.
Попробовал всякие-разные из коллекции DD-WRT http://www.dd-wrt.com/site/support/othe ... lection%2F но! Там нет образа загрузчика .elf
Длинк как обычно "более другой" и использует art а не RedBoot, то есть из арта не получится загрузчик поменять... Надо сначала загрузить редбут в память.
Мне нужен redboot_ap48_32M_8M_icplus.elf - если следовать правилу наименования DD-WRT
Такой упоминается например здесь: http://svn.dd-wrt.com:8000/changeset/13 ... t/makefile
Уже проще.
Идем на http://ecos.sourceware.org/anoncvs.html и дергаем svs'ом ecos.
cvs -z3 -d :pserver:anoncvs@ecos.sourceware.org:/cvs/ecos co -P ecos
/usr/src/ecos# du -h
168M Однако!
Курим доки...
after 20 min: apt-get install gawk
export ECOS_REPOSITORY=/usr/src/ecos/packages
Качаем configtool-100305.bz2 и wxGTK-2.8.8.tar.bz2
Конфигурим wxGTK-2.8.8
Ставим недостающее:
apt-get install pkg-config
apt-get install libgtk2.0-dev
Сконфигурилась. Собираем и недоуменно смотрим: чего за ошибки?
Пока думаем - качаем ftp://ecos.sourceware.org/pub/ecos/ecos-install.tcl в папку /opt/ecos
и выполняем: sh ecos-install.tcl
Если не выполняется - ставим apt-get install tkcon
Качаем (например) с ftp://mirror.aarnet.edu.au/pub/sourcewa ... ux.tar.bz2
wxGTK не собирался из-за отсутствия иксов. Ставим с блекбоксом, плюс ставим gtk-dev
Еще нужен apt-get install libwxbase2.8-dev libwxbase2.8-0
А вот и не взлетело.
Накладываем патчик
Index: 2.8/src/gtk/gsockgtk.cpp
===================================================================
--- 2.8/src/gtk/gsockgtk.cpp (revision 60599)
+++ 2.8/src/gtk/gsockgtk.cpp (working copy)
@@ -15,8 +15,13 @@
#include <stdlib.h>
#include <stdio.h>
+// newer versions of glib define its own GSocket but we unfortunately use this
+// name in our own (semi-)public header and so can't change it -- rename glib
+// one instead
+#define GSocket GlibGSocket
#include <gdk/gdk.h>
#include <glib.h>
+#undef GSocket
#include "wx/gsocket.h"
#include "wx/unix/gsockunx.h"
из http://trac.wxwidgets.org/ticket/10883
Угу, взлетело, работает.
Черпнул еще мудрости на форумах DD-wrt и синхронизировал svn у них - ибо отдельно патчи накладывать лениво.
svn co svn://svn.dd-wrt.com/DD-WRT
Нда, уже 4 ГБ скачалось...
Next day. 14 гиг исходников.
Вдогонку качаем http://www.dd-wrt.com/dd-wrtv2/download ... ns.tar.bz2
Инфо из http://wiki.debian.org/EmdebianToolchain
Добавляем источник
deb http://www.emdebian.org/debian squeeze main
Ставим apt-get install g++-4.4-arm-linux-gnueabi pdebuild-cross xapt
Потом xapt -a armel -m libfoo-dev
Добавляем в path путь к mipsisa32-*
(еще куча времени)
Курю исходники - даже покурить некогда.
(Спустя неделю...)
Курить бросил.
Дернул из ftp://212.18.29.48/ftp/pub/allnet/wireless/all0258/
исходники прошивки all0258.
Там папки src/redboot_cobra нету! Выпилили, что ли?
Качаю http://dl.meraki.net/linux/redboot-ap61.tar.gz
Угу, собирается после патча CDL
Но не работает (ессно).
Урра! ap48 собрался, запустился:
- Код: Выделить всё • Развернуть
Attached TCP/IP interface to ae1.
Attaching network interface lo0... done.
Loading... 268704
Starting at 0x800100bc...
+FLASH: driver init failed: Driver does not support device
Sorry, FLASH config exceeds available space in FIS directory
Ethernet eth1: MAC address 40:38:08:00:40:3a
IP: 0.0.0.0/255.255.255.0, Gateway: 0.0.0.0
Default server: 0.0.0.0
RedBoot(tm) bootstrap and debug environment [RAM]
Non-certified release, version v1.3.0 - built 15:30:27, Aug 8 2012
Copyright (C) 2000, 2001, 2002, 2003, 2004 Red Hat, Inc.
Board: ap48
RAM: 0x80010000-0x82000000, [0x800519a0-0x81ff1000] available
FLASH: 0x00000000 - 0x00000001, 0 blocks of 0x00000000 bytes each.
Без флешки, ну - все равно большой успех.
Когда-то они были нормальными бюргерами,
Саурон собрал из них зондеркоманду.
Каждому дал коня, саблю,
бурку и патроны...
Бесконечные патроны!
(c) Гоблин.
Добавлено спустя 6 минут 43 секунды:
Я таки сделаю из этой тупой железяки то, что мне нужно, Хотя - а что мне нужно-то?