Author Topic: Модули ядра Android  (Read 7324 times)

Offline UnКаЙF

  • Full Member
  • ***
  • Posts: 241
  • Karma: +9/-6
    • View Profile
Модули ядра Android
« on: January 11, 2015, 02:22:02 pm »
Ребят, как определить, каких модулей не хватает ядру ?
Пытаюсь подключить 3g модем к планшету. Вот кусок вывода dmesg:
Code: [Select]
<6>[  152.036660] usb 1-1: new high speed USB device number 2 using dwc_otg
<3>[  152.858310] usb 1-1: device v12d1 p1f01 is not supported
<6>[  152.906705] scsi0 : usb-storage 1-1:1.0
<6>[  153.116631] usb 1-1: USB disconnect, device number 2
...........................
<6>[  158.336912] usb 1-1: new high speed USB device number 3 using dwc_otg
<3>[  159.108193] usb 1-1: device v12d1 p14db is not supported
<6>[  159.210151] cdc_ether 1-1:1.0: eth0: register 'cdc_ether' at usb-dwc_otg.0-1, CDC Ethernet Device, 58:2c:80:13:92:63
<3>[  159.301508] init: guoyq service_start name 'dhcpcd_eth0'
<3>[  159.400420] init: guoyq service_start name 'dhcpcd_eth0'
<7>[  170.157090] eth0: no IPv6 routers present
...............
<6>[  189.867877] usb 1-1: USB disconnect, device number 3
<6>[  189.873156] cdc_ether 1-1:1.0: eth0: unregister 'cdc_ether' usb-dwc_otg.0-1, CDC Ethernet Device
device v12d1 p1f01 - Это ZeroCD с драйверами х86 на триджике. Определяется, вроде, как накопитель, но тут же отключается. Есть конфиг ядра планшета.  :( Вот только толковых руководств - что за что отвечает не нашел.

Offline ua3prq

  • Moderator
  • Hero Member
  • *****
  • Posts: 660
  • Karma: +14/-1
    • View Profile
Re: Модули ядра Android
« Reply #1 on: January 12, 2015, 03:35:57 am »
Привет!

Советую перед этим перевести модем из составного USB девайса в нативный режим. Как правило, на этом все проблемы с ним на дроиде заканчиваются.
Вот команды для модема:
Code: [Select]
AT^U2DIAG=0    (устройство в режиме только модем)
AT^U2DIAG=1    (устройство в режиме модем + CD-ROM)
AT^U2DIAG=255    (устройство в режиме модем + CD-ROM + Card Reader)
AT^U2DIAG=256    (устройство в режиме модем + Card Reader).
Будет, возможно, проблема с установленным на WIN софте модема (перестанет распознаваться), но если это критично- можно обойти установкой других Dial-up менеджеров. Пиши, помогу.

ЗЫ: что за модем, кстати?
« Last Edit: January 12, 2015, 03:39:24 am by ua3prq »

Offline Раджа

  • Sr. Member
  • ****
  • Posts: 438
  • Karma: +6/-2
  • Разбираюсь в чем попало
    • View Profile
Re: Модули ядра Android
« Reply #2 on: January 12, 2015, 07:04:34 am »
При подключении устройства tty может вообще не быть.
Для переключения в режим модема есть USB_ModeSwitch
Почитать модно, например, тут http://rus-linux.net/MyLDP/hard/modeswitch.html
В Debian есть соответствующий пакет. Во всяких планшетах, которые 3G ready, оно встроено в прошивку.
Для ведра есть еще вот такая программа https://play.google.com/store/apps/details?id=de.draisberghof.pppwidget&hl=ru
« Last Edit: January 12, 2015, 07:12:20 am by Раджа »
Заткнись и смотри аниме!

Offline ua3prq

  • Moderator
  • Hero Member
  • *****
  • Posts: 660
  • Karma: +14/-1
    • View Profile
Re: Модули ядра Android
« Reply #3 on: January 12, 2015, 07:52:14 am »
Ну, например, мой Ramos и Pipo M3 (дроид 4.1.1) такое сами не делают. PPP Widget и подобное когда-то ставил- мертвому припарки. Поэтому предпочитаю без головняка, лучше самому все переключить  ;)

Все эти надстройки по сути выполняют именно то, что я написал. Других средств там нет.
« Last Edit: January 12, 2015, 08:00:59 am by ua3prq »

Offline UnКаЙF

  • Full Member
  • ***
  • Posts: 241
  • Karma: +9/-6
    • View Profile
Re: Модули ядра Android
« Reply #4 on: January 12, 2015, 01:07:09 pm »
Аппарат - Huяwei E3131.
Дело в том, что перевести модем в "только модем" - в моей ситуации нельзя. Им пользуются несколько юзверей на работе, причем на разных х86 устройствах. Могут быть недовольные, да и не все знают как настроить для такого режима. На 4pda, кстати, писали, что режим "только модем" иногда слетает если в разные устройства перетыкать. (Насколько это правда - не знаю, за что купил..).

Как раз PPPWidget и пытаюсь задействовать. usb_modeswitch в комплекте с ним идет. Облом в том, что чтобы сработал (увидел устройство) modeswitch нужно подключенное устройство в начальной конфигурации (соответствующий  PID) т.е. тот самый Zero-CD. А у мя оно твердит "device v12d1 p1f01 is not supported" и отключается.

Изучил дескрипторы USB этого "Zero-CD" и они, собственно, ничем особым от обычной флешки не отличаются. Отличие только в файловой системе - iso там. Я вот, думаю, не может же ядро отрубать устройство только из-за того, что нет драйвера файловой системы. Т.е. на шине оно должно оставаться ? Или нет ?  :o
« Last Edit: January 12, 2015, 01:21:28 pm by UnКаЙF »

Offline ua3prq

  • Moderator
  • Hero Member
  • *****
  • Posts: 660
  • Karma: +14/-1
    • View Profile
Re: Модули ядра Android
« Reply #5 on: January 12, 2015, 03:09:42 pm »
Я бы начал с конца всей этой эпопеи: а именно - возможна ли нормальная работа модема на том девайсе куда ты его пристраиваешь? Для начала будет ли толк от него (переключенного руками) под тем дроидом. Если да, тогда игра стоит свеч...
А то это все может затянуться, а на выходе будет облом.

Насчет iso: скорее ты прав, система ожидает от него блочного девайса с известной ФС, а распознать не может, оттого его и постоянно переинициализирует. Можно ради прикола подоткнуть USB CD/DVD-ROM (либо есть такой USB-HDD бокс Zalman-VE200/300), поглазеть на реакцию. А то если при схожих симптомах- победить такое будет затруднительно.

Quote
режим "только модем" иногда слетает если в разные устройства перетыкать. (Насколько это правда - не знаю, за что купил..).
Если на x86 стоит стоковый диалер от модема- весьма вероятно он может переключить его рано или поздно. В любом случае, как правило, он его не будет сразу видеть уже как подключенный нормально.
Если проставить универсальный "не родной"- ему будет пофиг в каком режиме модем стоит, он его дергать не будет. В инет будет дозваниваться в любом случае. Но это уже придется работать еще и у юзеров. И да, вкусности некоторые пропадут- баланс, и прочее (не помню будут ли графики и СМС), если критично.
« Last Edit: January 12, 2015, 03:19:10 pm by ua3prq »

Offline UnКаЙF

  • Full Member
  • ***
  • Posts: 241
  • Karma: +9/-6
    • View Profile
Re: Модули ядра Android
« Reply #6 on: January 12, 2015, 03:42:06 pm »
возможна ли нормальная работа модема на том девайсе куда ты его пристраиваешь?
Да. Необходимые модули есть. GSM-модемы от самого вендора поддерживаются в режиме PPP. USB CD-ROM на пробу в пределах доступности, к сожалению, отсутствует.

Ещё одна возможная причина отключения - работа некоего сервиса под названием usbdongled (содранного китайцами с usb_modeswitch), который пытается перевести модем в режим RNDIS. По крайней мере автор usb_modeswitch указал на такую возможность. http://www.draisberghof.de/usb_modeswitch/bb/viewtopic.php?f=6&t=2183
« Last Edit: January 12, 2015, 03:54:48 pm by UnКаЙF »

Offline ua3prq

  • Moderator
  • Hero Member
  • *****
  • Posts: 660
  • Karma: +14/-1
    • View Profile
Re: Модули ядра Android
« Reply #7 on: January 12, 2015, 04:04:12 pm »
Я уже давно в эти игрушки не играю.
Есть автономный WiFi роутер с литием на борту (правда, гад, только нативный модем хавает). Плюс обзавелся разными путями за неск.лет и разлочил E1550 и E173, переключил их и валяются до случая...

А вообще для резерва дома юзаю 3G на Mikrotik, он модемы практически все поднимает, даже не переключенные. Поигрался на планшете через OTG и решил, что проше и функциональнее на него (да и в LAN) по WiFi доставлять инет, с маршрутизатора на стене, если что.

Если по делу: придется видимо лезть в модули. Либо как-то заблокировать тот идентификатор, либо выкинуть из обработки драйвером.
« Last Edit: January 12, 2015, 04:16:16 pm by ua3prq »

Offline Раджа

  • Sr. Member
  • ****
  • Posts: 438
  • Karma: +6/-2
  • Разбираюсь в чем попало
    • View Profile
Re: Модули ядра Android
« Reply #8 on: January 13, 2015, 03:44:49 am »
Есть у меня свисток Алкатель с 4G и без флешки.
На дебиане запускал его с помощью usb_modeswitch и wvdial.
Первый даже в версии из wheezy нормально переключил модем в режим модема. В системе появилось несколько serial-портов. А wvdial с простеньким конфигом нормально дозвонился до провайдера.

По идее надо этот самый usbdongled надо прибить и отобрать у него права на исполнение (chmod -x), если это не скрипт.
Заткнись и смотри аниме!

Offline johndoe_71rus

  • Full Member
  • ***
  • Posts: 242
  • Karma: +3/-1
    • View Profile
Re: Модули ядра Android
« Reply #9 on: January 13, 2015, 05:59:51 am »
как раз и похоже что отрабатывает usb_modeswitch выкидывая Zero-CD. насколько помню это связано с udev rules
Cubieboard2 / Android 4.2.2 / Cubieez 7.4@3.4.79+patwood

Offline UnКаЙF

  • Full Member
  • ***
  • Posts: 241
  • Karma: +9/-6
    • View Profile
Re: Модули ядра Android
« Reply #10 on: January 13, 2015, 01:45:32 pm »
Всё становится интереснее...
Не нашел скрипт откуда usbdongle запускается. Пришлось временно переименовать
/system/bin/usbdongle -> usbdongle.bak
/system/bin/usbdongled -> usbdongled.bak
Перегрузил девайс, проверил, что демон не запустился. Вставляю модем - dmesg без изменений.  >:(

Переключил в режим "только модем". Под линуксом появилось три ttyUSBn. Вставляю в планшет - опять "device vXXX pXXX is not supported". Уж не Vendor lock ли где-то в недрах ядра ?
Думаю посмотреть как отреагирует на перепрограммированную флешку с такими же Vid и Pid как у Zero-CD модема.

Offline ua3prq

  • Moderator
  • Hero Member
  • *****
  • Posts: 660
  • Karma: +14/-1
    • View Profile
Re: Модули ядра Android
« Reply #11 on: January 14, 2015, 03:12:47 am »
Уж не Vendor lock ли где-то в недрах ядра ?
Хе хе, оригинальная реклама своей продукции  :)

Offline Раджа

  • Sr. Member
  • ****
  • Posts: 438
  • Karma: +6/-2
  • Разбираюсь в чем попало
    • View Profile
Re: Модули ядра Android
« Reply #12 on: January 14, 2015, 05:25:57 am »
Может тупо инфы по переключению этого VID:PID нет?
Заткнись и смотри аниме!