Здравствуйте.
Сразу хочу сказать, на том rootfs, который заливается с помощью MfgTool этой проблемы нет. Где-то у меня касяк.
Значит что я делаю: buildroot-2014.02, ядро указываю выдернутое из виртуальной машины как локальное дерево, конфиг - скопированный .config из той же виртуальной машины. В конфиге buildroot включены только udev и openssh-server. Toolchain - linaro-13.09. Компилю, заливаю. Всё стартует и даже работает. Но после команды ifconfig eth0 up проходит буквально 3-5 секунд и плата идёт в ребут как по watchdog'у. Что за хрень может быть? Я с таким ещё не сталкивался...
пути для поисков:
- поизучать логи в неправильной рутовой - накопитель в ридер и к компу
- в конфиге ядра отключить watchdog, раз он под подозрением - возможно надо что-то прописать типа таймаута
- сделать пофайловое сравнение каталогов /etc для правильной и неправильной рутовых и пристально смотреть на содержимое /etc/inittab и подобных ключевых скриптов..
А что это за манипуляции с can0? На sk-imx6q их небыло
auto can0
iface can0 inet manual
#pre-up ip link set $IFACE type can bitrate 125000 listen-only off
pre-up ip link set $IFACE type can bitrate 125000 triple-sampling on
up ifconfig $IFACE up
down ifconfig $IFACE down
Если вручную вбивать, у меня вот что пишет:
# ip link set can0 type can bitrate 125000 triple-sampling on
ip: either "dev" is duplicate, or "type" is garbage
# ifconfig can0 up
flexcan imx6q-flexcan.1: bit-timing not yet defined
ifconfig: SIOCSIFFLAGS: Invalid argument
Добавил пакет iproute2. Теперь ip link set can0 type can bitrate 125000 triple-sampling on отработала нормально. Интерфейс can0 поднялся. Но поднятие eth0 - опять перезагрузка. Причём если быстро ввести udhcpc eth0 и ping ya.ru, то и настройки сети получает и яндекс пинговать начинает, а потом перегружается...
Короче собрал rootfs из виртуальной машины, ничего не меняя. Вроде всё заработало. Хотя за вчера и сегодня собрал несколько rootfs, в которых проверил всё: и wi-fi на карточке с чипом ralink работал, и гстримером воспроизвёл практически всю свою коллекцию видосов, кроме тех где звук aac (лень мне возиться с проприетарным кодеком, на потом его оставил), и все стандартные экзамплы от виванты отработали. Но вот с сеткой касяк какой-то непобедимый.
Я подозреваю, что сейчас изменю конфиг ядра в mainfs и опять вылезут теже грабли. У меня большая просьба. Кому не слишком сложно, объясните мне что за сеть на этом проце и каким боком к ней can относится? Я честно гуглил, но по всей видимости полное не понимание вопроса не позволило задать гуглу правильные вопросы и я ничего вразумительного не нашёл.
PS: у этой платки наверное будут следующие ревизии. Было бы не плохо прилепить на неё usb разъём с четырьмя точками крепления ;-) Если эта платка позиционируется как что-то на замену малине, далеко не все из малиновых юзеров дружат с паяльником(я лично знаком с такими персонажами). А я благополучно отломал этот разъём при первой же попытке вставить в него удлиннитель
Сделал минимальный rootfs. Тулчайн и все настройки бьюлдрута как в mainfs. Из пакетов iproute2, openssh, wireless-tools. /etc/network/interfaces честно содрал из mainfs. В качестве ядра - тот самый файлиг из mainfs/dl - linux_rel_imx_3.0.35_4.1.0-sk.tar.bz2. Конфиг - imx6sk. Компилю, стартую - несколько секунд и ребут. eth0 то теперь на автомате поднимается...
Пожалуйста, откройте тайну, как заставить работать эту сетевуху? Я бы на неё забил, wifi вполне себе работает, но мой роутер не может по wifi нормально раздать iptv. Картинка периодически ломается и по 2-3 секунды висит... Причём как водится на самых интересных местах.
я больше повторяться не буду - советы дал выше..
у меня плата Холы работает, в т.ч. и сеть, как на заводской рутовой (2 варианта), так и на Дебьян 6/7.. вероятно и Ubuntu пойдет без глюков..
1. Поизучать логи: в первую очередь именно этим и занялся. Даже если туда что и попадает - это не успевает попасть на флешку. Сидел и упорно вводил sync после поднятия сетки, ничего. Вводил dmesg - ничего. Ну и как я уже говорил, сетка не только поднимается, но и какое-то время работает.
2. Отключение watchdog'а никчему не привело. Он изначально и не подозревался, я упомянул о нем только потому, что ребут реально похож на его работу, никаких телодвижений по нормальному завершению работы не производится.
3. Пофайловое сканирование выявило только манипуляции с can0, с которыми я раньше не сталкивался. Я их повторил, для этого понадобилась утилита ip из пакета iproute2, басибоксовская ругалась на аргументы. Конечно же я нашёл и другие проги в папке starterkit, но ни в /etc/inittab, ни в /etc/init.d они не вызываются.
Я ведь и не говорил что оно в принципе не работает, я с самого начала уточнил, что в предоставляемой rootfs всё гут, в скомпиленной rootfs из виртуальной машины тоже всё гут. Эщё раз хочу особо подчеркнуть - это не претензия. С платой всё в порядке. Всё что относительно неё обещали работает в лучшем виде.
Но покупал я её не для того чтобы тупо запустить на ней к примеру xbmc и радоваться жизни. В конце концов я ведь мог пройтись в магазин и купить готовый девайс, который и iptv умеет, и флешки проигрывать. Я хочу полностью понимать что происходит внутри неё. И на данный момент у меня только одна проблема - это сетка. Всё остальное - кодеры, энкодеры, 3D, и остальное работает. Затык только с сетью. И я не хочу использовать ни стандартные rootfs, ни дебьян, ни убунту. Я предпочитаю самопальную rootfs, в которой есть только те компоненты, которые необходимы для решения конкретных задач, а не комбайн на все случаи жизни. А манипуляции с can0, которых в помине небыло на sk-imx6q, наводят на мысль что с местной сеткой таки есть какой-то ньюанс. Я надеюсь, что я таки найду этот ньюанс, но на это уйдёт дополнительное время. Я же всего лишь прошу пнуть меня в нужном направлении. При этом прекрасно понимая, что мне никто ничего не должен, и вся помощь предоставляется на общественных началах.
развернуто написали, гуд..
если есть возможность - выложите архив с "неправильной" рутовой и ядро до кучи - по наличию времени разверну на свободный раздел и попробую посмотреть, что там да как..
проверьте - куда указано место для логирования.. я видел путь в tmp, тогда он может просто не сохранятся..
в ядре можно включить отладочный выхлоп, тогда оно будет более говорливое.. еще (при наличии lvds или hdmi) вывести лог туда, т.к. у вас нет обычной консоли..
нужна зацепка, тогда будет проще понять природу дефекта..
ядро монолитное или с модулями? они на месте?