Не очень понятно где лучше обсуждать этот вопрос, пока написал сюда.
Итак надо отлаживать драйверы ядра линукс.
kgdb на моей платформе не поддерживается а printk недостаточен, да и медленно получается.
Имеется работающий jtag адаптер на ft2232.
После гугления завелась отладка в eclipse, но остались вопросы.
Самый главный вопрос по ремаппингу памяти.
Все символы ядра расположены в виртуальном пространстве а при запуске отладки mmu выключен и мы работаем с физическими адресами. Из за этого невозможно установить точки останова при старте. Команда gdb_breakpoint_override hard помогает, но аппаратных брекпойнтов всего два - неудобно. Как бы это обойти ?
Более мелкий косяк: если в скрипте инициализации вставить брекпойнт он нигде не показывается - на в gdb ни в openocd и его невозможно удалить.