LINUX.ORG.RU

Raspberry Pi зависает при активации USB

 


0

1

Развернул я на SD-карточке генту, скомпилировал ядро 4.1.15, гружусь, и вылезают проблемы. Сначала я думал, что подвисание происходит при инициализации сетевой карты, убрал из /lib/modules модуль smsc95xx.ko, и все равно при активации USB на стадии обнаружения этой карты происходит зависание:

[    2.219170] usb 1-1: New USB device found, idVendor=0424, idProduct=9514
[    2.227820] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    2.240352] hub 1-1:1.0: USB hub found
[    2.246298] hub 1-1:1.0: 5 ports detected
[    2.523857] usb 1-1.1: new high-speed USB device number 3 using dwc_otg
[    2.634324] usb 1-1.1: New USB device found, idVendor=0424, idProduct=ec00
[    2.643335] usb 1-1.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
Может, кто сталкивался? Как решить проблему?

☆☆☆☆☆

Какая модель? Если B+ или B2+, то может быть питание (даже есть диагностический светодиод). Если просто B, то скорее всего питание.

Macil ★★★★★
()
Ответ на: комментарий от daemonpnz

4.9Вольты на «кренке», понижающей до 3.3. БП двухамперный, так что проблем не должно быть.

Macil
Какая модель?

Обычная первая «малинка». Попробовал старый распбиан, грузится, активация происходит, но потом в определенный момент тоже зависает.

В принципе, завтра, наверное, попробую найти другой БП помощней и с ним проверить.

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

4.9Вольты на «кренке», понижающей до 3.3.

Перепад напряжения для «крен» очень маленький.

Не может этот блок питания нормально работать.

vlb ★★★
()
Ответ на: комментарий от vlb

Перепаду 0.8В хватит за глаза!

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

БП двухамперный, так что проблем не должно быть.

У меня тоже есть «двухамперный». Ага, только при продаже забыли уточнить что эти амперы — китайские.

А ещё есть херовые USB кабели.

С питаловом у RPi вообще полная ж... Мало того что встроенный юсб хаб жрёт больше самого SoC, дык на первой модели стоит линейный стабилизатор.

Macil ★★★★★
()

А воткуто чё-нить?

У меня были такие же траблы, даже с двухамперным бп, когда я подклчал 3.5 юсб хдд. Пришлось покупать внешний хаб с питанием.

SL_RU ★★★★
()
Ответ на: комментарий от daemonpnz

Запитал по старой схеме (так работало): через импульсный преобразователь (он до трех ампер как с куста дает). Та же беда.

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Macil

Между чем? Не понял.

Сейчас попробовал загрузить древнючий образ 3.12.22 — загрузился! Т.е. явно что-то где-то у меня накосячено в генте.

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Macil

Проблема стопудово не в питании: сейчас я взял этот старый распбиан с ведром 3.12.22 и залил вместо того ядра свое 4.1.15 + модули. Все загрузилось.

Т.е. явно проблема в чем-то другом. Буду искать, что ему надо.

Eddy_Em ☆☆☆☆☆
() автор топика

Собери ведро с дебажными сообщениями usb и Hung task detection. Мне это помогло найти клёвый баг в самописном драйвере когда-то.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от Dark_SavanT

Все делал по инструкции, фирмварь поставил так: emerge sys-boot/raspberrypi-firmware, в /etc/fstab вот что:

proc            /proc           proc    defaults          0       0
/dev/mmcblk0p2  /               ext4    defaults,noatime  0       1
/dev/mmcblk0p1  /boot           vfat    defaults          0       2

Черт-те что!

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

я не про то. Если у тебя какая-то железяка хочет фирмварь в процессе загрузки, то ведро ждёт пока не примонтируется /, потом идёт в /lib/firmware и ищет там нужный фаил. При этом может случаться залипон когда фирмварь нужна тому, кто держит на себе /.

Тебе же в лог никто не сказал, что залипон именно в usb-устройстве, поэтому я тебе и предлагаю включить «Detect Hung Tasks» в опциях ядра, пересобрать и посмотреть на консоли в trace кто вывалится с матюгами.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от Dark_SavanT

У меня был указан этот параметр, но таймаут был выставлен в 2 минуты. Поставил 15 секунд и перекомпилял.

Вот уже больше минуты тупит, ничего не пишет.

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

В данном случае не поцтеринга, а тех, на кого ориентирована сборка Fedora для Raspberry Pi. Ты, наверное, единственный из атеистов, который их так ненавидит.

te111011010
()
Ответ на: комментарий от Eddy_Em

Развернул более древний stage3 — все равно после USB виснет.

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Dark_SavanT

Ну и баран же я!

После зависания светодиод ACT продолжает мыргать. Решил я прикола ради подключить монитор. И что я вижу? Все нормально грузится. Проблема была в том, что в inittab я не думая скопировал строчку

#Spawn a getty on Raspberry Pi serial line
T0:12345:respawn:/sbin/getty -L ttyAMA0 115200 vt100
а ведь у генты agetty!!!

В общем, поменял на agetty, и все пошло-поехало. Правда, в отличие от распбиана, почему-то после запуска openrc ничего не выводится на экран вплоть до старта agetty, когда выводится выхлоп login.

Как бы это исправить?

Eddy_Em ☆☆☆☆☆
() автор топика

Офигеть! Что за идиотская логика так зависимости делать: ставлю libwebsockets, а к ним тянутся xorg-server и прочий бред (177 пакетов)! Откуда эта дрянь берется?

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

В make.conf пропиши в USE -* перед всеми флагами дыбы отключить все дефолтные флаги и через них зависимости. Только учти, что так придётся все нужные флаги включать самому.

anonymous
()
Ответ на: комментарий от anonymous

Не, это я, дурень, профиль вот такой выбрал:

default/linux/arm/13.0/armv6j/developer
а надо было оставить default/linux/arm/13.0/armv6j

Eddy_Em ☆☆☆☆☆
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.