-
Постов
431 -
Зарегистрирован
-
Посещение
Репутация
0 ОбычныйИнформация о gormih
-
Звание
nofb
- День рождения 12.02.1978
Контакты
-
Сайт
Array
-
ICQ
Array
Информация
-
Город
Array
Retained
-
Звание
Array
Посетители профиля
2 057 просмотров профиля
-
Beaglebone black
gormih ответил DASM тема в Отладочные платы
И что это? Демонстрация умения искать в гугле, и ориентироваться на сайте TI? -
JTAG нужен пригодится разве что для отладки загрузчика, такого как U-boot. После запуска ядра в 99% случаев для отладки вполне достаточно printk и debug level. Рабочую машину - рекомендую на базе ubuntu linux 12.04 64 bit. Чем мощнее процессор, тем лучше.
-
Правка файла борды
gormih ответил TigerSHARC тема в Linux
По опыту: Пока сам не напишешь пару драйверов на имеющееся в наличии рабочее ядро - о портировании новой версии ядра на свою борду думать рановато :-) -
Все нужные вам устройства описываются тут: arch/arm/mach-omap2/board-am335xevm.c Для подробного вывода логов нужно подшаманить конфигурацию ядра в части например printk level =7 , и некоторые внести некоторые изменения в самые интересные модули ядра типа #define DEBUG (обязательно до объявления всех .h файлов)
-
Сам себе задал вопрос, сам и ответил. На beagleboneblack Android SDK 4.2.2 имеет следующие соответствия по i2c: В ядре i2c0, на борде i2c-1, i2c1 -> i2c-2 , i2c2-> i2c-3. При этом инициализация i2c-1 -> i2c2 изначально в ядре не прописана, если ваше устройство "висит" на этой шине - ее придется прописать.
-
Дело оказалось в snd_soc_dai_link am335x_evm_dai static struct snd_soc_dai_link am335x_evm_dai = { .name = "max98088", .stream_name = "HiFi", .cpu_dai_name ="davinci-mcasp.1", .codec_dai_name = "max98088.1-10", .platform_name = "davinci-pcm-audio", .codec_name = "max98088.1-0010", .dai_fmt = SND_SOC_DAIFMT_DSP_B | SND_SOC_DAIFMT_NB_NF | SND_SOC_DAIFMT_CBM_CFM, .ops = &am335x_evm_ops, }; Ключевыми является .stream_name и .codec_dai_name. Теперь осталось понять, в каком месте разработчики борды напутали, и какой из трех i2c в ядре выведен на пины отмеченные как i2c-1 :)
-
Правка файла борды
gormih ответил TigerSHARC тема в Linux
Вы не поверите - как правило в файле борды:-) Там все может быть сложнее завязано. Может, например вычислять по комбинации перемычек на выводах контроллера, и тому подобное...., Куча подводных камней. Если задача не стоит сделать универсальный файл борды под целый ряд девайсов - я лично блокирую все функции идентификации борды, дабы не тратить на них время. Единственное - нужно понимать, к каким последствиям это может привести например для подключаемых модулей ядра. Это не сложности. Это стиль программирования :) Только по началу тяжело освоить, потом становится легче, когда знаешь минимум того, что должно быть описано... Со временем понимая всю "навороченность" ядра начинаешь наоборот восхищаться некоторым решениям. Писать драйвера под linux гораздо проще по сравнению например с windows именно благодаря богатой инфраструктуре того что нужно на уровне ядра, и хорошо продуманным описательным моделям самих драйверов. Я вот чистым временем около недели потратил на освоение того, как примерно работает ALSA на уровне ядра, и еще далек от завершения поставленной задачи. Из документации, на скорую руку слепленой жалким подобием doxygen мало что понятно. :) Но из того, что всплыло становится ясно, что при хорошей документации у меня ушло бы максимум 1 день на решение задачи. -
Вообщем имеем begleboneblack + max98089 EVKIT Висит кодек на i2c-1 Пишем драйвер для ALSA: На выходе имеем следующую фигню: по dmesg и далее No soundcards found. Хотя бы подскажите, куда копать.. Еще не пойму одной вещи - у меня вроде .ops не вызываются, и кодек не пишет отладочных собщений, хотя #define DEBUG в нем поставил, уровень отладки kprint 7, и есть еще живительное CFLAGS_max98088.o = -DDEBUG в Makefile. После всего этого отладочных сообщений нету.. P.S.: Скрыть под спойлер код не удалось. Что то не работает на форуме, сори.
-
Человек, который спрашивал о возможности применения Windows 100% воспримет Вашу рекомендацию как издёвку.
-
Какой вопрос, такой и ответ. MSP430 наплевать на файлы проекта, он тупо исполняет бинарный код. А вот файл проекта сильно зависит от среды, в которой проект разрабатывался. Если, например это gcc binutils + Eclipse, то вообще файл проекта не включает в себя список исходников. Если это Keil uVision или например CodeComposer - ситуация резко меняется. Вопрос о функции Main в данном случае сугубо риторический... с соответствующим ответом - "где то":-)
-
Выбор операционной системы
gormih ответил Sergio66 тема в Операционные системы
Все правильно. Linux + OpenCV. Плат под это - только ленивый не найдет. -
Правка файла борды
gormih ответил TigerSHARC тема в Linux
Если что, то - diff -u ./kernel-3.14.1/ ./kernel-2.6.36/ >kernel-from-2636-to-3141.patch Сделает патч на все ядро целиком. Это для справки. Аналогичный патч можно сделать например на всю директорию arch/arm/plat-omap и sound/soc/omap - именно там основные отличия в части исходников интересных по Вашей теме. Конфигурацию u-boot не меняли? Такое бывает еще, когда например в u-boot не задана ttys, а в ядре по умолчанию не прописана, либо прописана но не правильно. И на всякий случай дайте вывод file ./uImage -
Правка файла борды
gormih ответил TigerSHARC тема в Linux
З.Ы.: Ядро линукс проще и удобней все таки собирать под линуксом. Особо легче, если при этом знаешь что такое ls, grep, diff, patch, modprobe и прочее :-) -
Beaglebone black
gormih ответил DASM тема в Отладочные платы
Кто нибудь цеплял max98088/9 к этому счастью на андроид? Если да - поделитесь опытом :) -
Правка файла борды
gormih ответил TigerSHARC тема в Linux
Как вариант: 1) Находим любую борду под omap, которая есть в старой и новой версии SDK 2) Делаем diff 3) По примеру патча делаем патч/исправление под свою борду.