sasamy
Пункты: 77333
Регистрация: 14.08.2009
Цитата
что делать?
все эти драйверы которые разработчики железа распространяют со своих сайтов и не продвигают в апстрим - жуткое д..мо как правило, я бы на вашем месте поискал модуль с драйвером в ванильном ядре. Стоят они сейчас от 300 руб, наверно будет дешевле чем тратить время на приведение в чувства непонятного кода.
ivandevel
Пункты: 1782
Регистрация: 29.08.2011
Пол: Мужчина
Из: г. Екатеринбург
Ванильное, это то что с kernel.org? А какая версия ядра оттуда гарантированно запустится на плате (из NAND) без модификаций?
sasamy
Пункты: 77333
Регистрация: 14.08.2009
У меня тут схожая задача была, так что я до кучи драйвер ваш попробовал. Скачал RTL8192xC_USB_linux_v3.4.4_4749.20121105.zip, распаковал, ядро у меня 2.6.35.3 с гуглокода. В ядре нужно включить доолнительно такие опции
Device Drivers --->
[*] Network device support --->
[*] Wireless LAN --->
<*> IEEE 802.11 for Host AP (Prism2/2.5/3 and WEP/TKIP/CCMP)
[*] Support downloading firmware images with Host AP driver
[*] Support for non-volatile firmware download
после этого ядро пересобрать.
подправил Makefile примерно как по ссылке которую вы приводили, только кросскомпиляором собирал а не на плате, добавил
CONFIG_PLATFORM_ARM_IMX233 = y
...
ifeq ($(CONFIG_PLATFORM_ARM_IMX233), y)
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
ARCH := arm
CROSS_COMPILE := arm-none-linux-gnueabi-
KVER := 2.6.35
KSRC ?= /home/sasa/imx233/linux-2.6.35.3-11.09.01-sk
endif
собрал
make clean
make
скопировал на плату и там
# insmod 8192cu.ko
[ 74.480000] rtw driver version=v3.4.4_4749.20121105
[ 74.480000] Build at: Dec 11 2012 23:00:33
[ 74.510000] usbcore: registered new interface driver rtl8192cu
вроде не ругается - самого USB свистка у меня нет чтобы проверить
ivandevel
Пункты: 1782
Регистрация: 29.08.2011
Пол: Мужчина
Из: г. Екатеринбург
О! благодарю, щас попробую по Вашей инструкции сделать.
Пока пробовал с DWA-125 A2 (RT3070). Мне таки удалось заставить его видеться в ifconfig и даже подсунуть ему фирмварь (содрал с убунты на ПК файл rt2870.bin, поместил в /lib/firmware)
Прописал в /etc/network/interfaces:
Код
auto wlan0
iface wlan2 inet dhcp
wpa-driver wext
wpa-ssid <имя моей точки>
wpa-ap-scan 1
wpa-proto RSN
wpa-pairwise CCMP
wpa-group CCMP
wpa-key-mgmt WPA-PSK
wpa-psk <мой ключ>
Сети нету, вот ругань:
Код
phy2 -> rt2x00mac_conf_tx: Info - Configured TX queue 0 - CWmin: 3, CWmax: 4, Aifs: 2, TXop: 102.
phy2 -> rt2x00mac_conf_tx: Info - Configured TX queue 1 - CWmin: 4, CWmax: 5, Aifs: 2, TXop: 188.
phy2 -> rt2x00mac_conf_tx: Info - Configured TX queue 2 - CWmin: 5, CWmax: 10, Aifs: 3, TXop: 0.
phy2 -> rt2x00mac_conf_tx: Info - Configured TX queue 3 - CWmin: 5, CWmax: 10, Aifs: 7, TXop: 0.
udhcpc (v1.19.4) started
Sending discover...
Sending discover...
Sending discover...
No lease, failing
ivandevel
Пункты: 1782
Регистрация: 29.08.2011
Пол: Мужчина
Из: г. Екатеринбург
Снова переключил внимание на свисток RTL8188, теперь модуль установился! При втыкании свистка пишет:
Код
register rtw_netdev_ops to netdev_ops
CHIP TYPE: RTL8188C_8192C
usb_endpoint_descriptor(0):
bLength=7
bDescriptorType=5
bEndpointAddress=81
wMaxPacketSize=200
bInterval=0
RT_usb_endpoint_is_bulk_in = 1
usb_endpoint_descriptor(1):
bLength=7
bDescriptorType=5
bEndpointAddress=2
wMaxPacketSize=200
bInterval=0
RT_usb_endpoint_is_bulk_out = 2
usb_endpoint_descriptor(2):
bLength=7
bDescriptorType=5
bEndpointAddress=3
wMaxPacketSize=200
bInterval=0
RT_usb_endpoint_is_bulk_out = 3
usb_endpoint_descriptor(3):
bLength=7
bDescriptorType=5
bEndpointAddress=84
wMaxPacketSize=40
bInterval=1
RT_usb_endpoint_is_int_in = 4, Interval = 1
nr_endpoint=4, in_num=2, out_num=2
USB_SPEED_HIGH
Chip Version ID: VERSION_NORMAL_TSMC_CHIP_88C.
RF_Type is 3!!
EEPROM type is E-FUSE
====> ReadAdapterInfo8192C
Boot from EFUSE, Autoload OK !
EEPROMVID = 0x0bda
EEPROMPID = 0x8176
EEPROMCustomerID : 0x00
EEPROMSubCustomerID: 0x00
RT_CustomerID: 0x00
_ReadMACAddress MAC Address from EFUSE = e8:4e:06:05:c8:ae
EEPROMRegulatory = 0x0
_ReadBoardType(0)
BT Coexistance = disable
RT_ChannelPlan: 0x0a
_ReadPSSetting...bHWPwrPindetect(0)-bHWPowerdown(0) ,bSupportRemoteWakeup(0)
### PS params=> power_mgnt(1),usbss_enable(0) ###
### AntDivCfg(0)
readAdapterInfo_8192CU(): REPLACEMENT = 1
<==== ReadAdapterInfo8192C in 320 ms
rtw_macaddr_cfg MAC Address = e8:4e:06:05:c8:ae
MAC Address from pnetdev->dev_addr= e8:4e:06:05:c8:ae
bDriverStopped:1, bSurpriseRemoved:0, bup:0, hw_init_completed:0
На ifconfig свисток виден с правильным мак-адресом. При перезагрузке его снова не видно, пока не сделаю insmod для модуля. модуль на плате, в корне. Как настоить инет теперь?
ivandevel
Пункты: 1782
Регистрация: 29.08.2011
Пол: Мужчина
Из: г. Екатеринбург
как дальше сетку поднимать?
sasamy
Пункты: 77333
Регистрация: 14.08.2009
Цитата как дальше сетку поднимать?
так вы же сами ссылку приводили - дочитайте что там написано до конца (wpa_supplicant и wireless_tools в буилдруте есть)
PS тут подробное описание настройки на русском
http://www.opennet.ru/base/net/wifi_setup.txt.html
ivandevel
Пункты: 1782
Регистрация: 29.08.2011
Пол: Мужчина
Из: г. Екатеринбург
Как заставить грузиться модуль rt8188.ko при старте? Просто при перезагрузке система опять ничего не знает об этом адаптере.
sasamy
Пункты: 77333
Регистрация: 14.08.2009
В любом загрузочном скрипте _перед_ стартом настройки сети insmod 8192cu.ko добавить - вот и все дела.
Jury093
Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата В любом загрузочном скрипте _перед_ стартом настройки сети insmod 8192cu.ko добавить - вот и все дела.
так есть стандартный файл, куда прописываются модули и последовательность их загрузки
Код root@ntpserver:~# cat /etc/modules
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
# Parameters can be specified after the module name.
и не забыть
Код depmod -a
На любой вопрос есть любой ответ.