PDA

Bekijk de volledige versie : WL500gpv2 + TI USB 3410/5052



АндрейВладимиро
15-05-2009, 21:57
Всем доброго времени суток и заранее спасибо за помощь. Олегу отдельное за замечательную работу


Итак к делу.

Имеется сабжевая кабелюка, USB-to-serial
Сайт производителя http://focus.ti.com/docs/toolsw/folders/print/tusb-3p-lnxvcp.html

Кабель используется для подключения Huawei терминала ETS1000/1001 (CDMA)
C простым пятидолларовым кабелем это хуавеевский модем не отвечает вообще никак и нигде. Работает с модемом только этот, его кабель, от Texas Instruments.
Надо сказать что к модему как таковому претензий никаких, а вот с кабелем масса вопросов. А точнее отсутсвие драйвера в прошивке!

WL500gpv2 кабель видит, но видит его исключительно как
kernel: usbserial.c: Generic converter now attached to ttyUSB0 (or usb/tts/0 for devfs)
Соотв как и тут http://wl500g.info/showthread.php?p=143854&highlight=chap#post143854 под generic оно даже и не пытается отвечать на команды.

Прошивка сейчас стоит чешская WL500gpV2-1.9.2.7-10-USB-1.71.trx - там ti_usb_3410_5052 нету

Теперь собственно сам вопрос
1. Подскажите человеку только начинающему разбиратся в линуксах, как поставить этот драйвер малой кровью?
Попытка пройти с наскока и по манулам (http://gate.brimson.com/downloads/ti_usb_release_notes-1.1.txt) провести доустновку драйвера ни к чему ни привели, вообщем нужна помощь знающего и понимающего человека

Драйвера под 2.4 живут тут http://www.brimson.com/downloads/


upd:
да, вот это (http://wl500g.info/showpost.php?p=18606&postcount=40) и это (http://wl500g.info/showthread.php?t=17136&page=31) я уже изучил...
вижу пока только один вариант и единственный выход - это развернуть гдет у себя ту же убунту и сделать самому свою прошивку по себя

поправьте если я не прав

АндрейВладимиро
16-05-2009, 19:28
развернул у себя colinux (http://code.google.com/p/wl500g/wiki/colinux), как собрать просто прошивку (http://code.google.com/p/wl500g/wiki/CompilingCustomFirmware) вроде как понятно, но как подсунуть туда драйвер?
подскажите

theMIROn
16-05-2009, 20:40
Драйвера под 2.4 живут тут http://www.brimson.com/downloads/


colinux:/home/broadcom/src/wl500g.svn# make ti_usb
cd /home/broadcom/src/gateway/ti_usb && \
CC=mipsel-uclibc-gcc LD=mipsel-uclibc-ld AR=mipsel-uclibc-ar RANLIB=mipsel-uclibc-ranlib CFLAGS="-O2 -mips32 -mtune=mips32 -Wno-pointer-sign" \
./configure --host=mipsel-linux
configure: WARNING: If you wanted to set the --build type, don't use --host.
If a cross compiler is detected then cross compile mode will be used.
checking build system type... i686-pc-linux-gnu
checking host system type... mipsel-unknown-linux-gnu
checking os type... ok
checking cpu type... unknown (mipsel)
configure: error: this package only works on i386/i486/i586/i686 systems
make: *** [/home/broadcom/src/gateway/ti_usb/Makefile] Ошибка 1
Драйвер не предназначен для mipsel платформы

АндрейВладимиро
16-05-2009, 22:16
Все? капец?

попробовать перелопатить конфиг и убрать проверку CPU type? или шансы что поднимется ноль?


в смысле убрать отсюда

# cpu
echo "$as_me:$LINENO: checking cpu type" >&5
echo $ECHO_N "checking cpu type... $ECHO_C" >&6
case $host_cpu in
i[3456]86)
echo "$as_me:$LINENO: result: ok" >&5
echo "${ECHO_T}ok" >&6
;;
*)
echo "$as_me:$LINENO: result: unknown ($host_cpu)" >&5
echo "${ECHO_T}unknown ($host_cpu)" >&6
{ { echo "$as_me:$LINENO: error: this package only works on i386/i486/i586/i686 systems" >&5
echo "$as_me: error: this package only works on i386/i486/i586/i686 systems" >&2;}
{ (exit 1); exit 1; }; }
;;
esac
убрать "exit 1"?

АндрейВладимиро
16-05-2009, 22:29
не шанец должен быть! ;)

ядро 2.6 под mipsel (http://packages.debian.org/ru/etch/mipsel/linux-image-2.6.18-6-r5k-cobalt/filelist
)
собрали ж как то
/lib/modules/2.6.18-6-r5k-cobalt/kernel/drivers/usb/serial/ti_usb_3410_5052.ko


буду копать дальше

АндрейВладимиро
16-05-2009, 23:02
это может как-то быть полезно?

да блин 2.6, но все же... http://packages.debian.org/ru/lenny/libticables3-dev

theMIROn
17-05-2009, 07:31
ну и при чем тут дебиан и ядро 2.6, если в роутере ядро 2.4, и процессор mipsel?
в любом случае, во вложении собранный модуль, лично у меня insmod'ом загружается, будет ли работать - не знаю, авторы не рассчитывали ни на какую платформу кроме x86.

АндрейВладимиро
17-05-2009, 11:55
да, не при чем


и чуда не произошло, модуль хоть и погружается, но действительно не работает

theMIROn
17-05-2009, 14:02
да, не при чем
и чуда не произошло, модуль хоть и погружается, но действительно не работает

а что показывает cat /proc/devices? ноды нужно вручную создавать (см скрипт make_devices)

АндрейВладимиро
17-05-2009, 15:27
угу, спасибо, я это тоже уже нашел http://lists.altlinux.org/pipermail/hardware/2005-August/005994.html


5) Положить получившийся ti_usb.o в /lib/modules/$(uname -r),
выполнить depmod -a.

С модулем в принципе всё, но нужно ещё создавать файлы устройств в
/dev - тут ситуация усложняется тем, что этот модуль использует
динамический major (что вполне естественно - официального диапазона
номеров для него никто не выделял), поэтому при каждой его загрузке
файлы в /dev нужно создавать заново. В принципе там есть некий скрипт
make_devices, но приворачивать его придётся самостоятельно. Возможно,
проще будет взять какой-нибудь major из диапазона "local/experimental
use" (60-63, 120-127, 240-254) и передавать его модулю через параметр
major, например, добавив в modules.conf:

options ti_usb major=62

Тогда устройства с этим major достаточно создать только один раз.


вот сижу изучаю матчасть

АндрейВладимиро
17-05-2009, 15:33
нету его тут, не разобрался как прописать, разбираюсь

[admin@asus /opt]$ cat /proc/devices
Character devices:
1 mem
2 pty/m%d
3 pty/s%d
4 tts/%d
5 cua/%d
10 misc
81 video_capture
90 mtd
108 ppp
128 ptm
136 pts/%d
162 raw
166 usb/acm/%d
180 usb
188 usb/tts/%d
253 nvram
254 gpio

Block devices:
7 loop
8 sd
31 mtdblock
65 sd
66 sd

АндрейВладимиро
18-05-2009, 07:41
ай, все, не успел добить, улетаю в отпуск... отдохну и наброшусь с новыми силами
theMIROn, огромное вам спасибо за помощь!