Цель Использование "обычных" устройств для прототипов/экспериментов • проверить идею на уже существующем устройстве, например, мобильном телефоне • для маргинальных ОС нет драйверов от вендоров • реализация отладочной печати должна быть очень простой
UART Мобильные устройства: • USB (Samsung, MTK) • Audio Jack (Google Nexus, Asus) • https://wiki.postmarketos.org/wiki/Serial_debugging Иногда можно найти на UART плате: https://www.xda-developers.com/patch-this-barnes-and-noble-nook-tablet-hardware-protection-compromised/
Другие интерфейсы LCD: • легко реализовать • мало информации и она "теряется" USB device: • доступны в Linux/Android • трудно использовать на ранних этапах загрузки USB host (xHCI debug port): • опциональная поддержка в контроллере • на мобильных устройствах пока не встречал
Дальнейшие идеи TODO: • опубликовать код для FPGA • двусторонний обмен • полноценная эмуляция SD-карты: ◦ на FPGA обрабатывать только команды и возвращать результат ◦ обработку SD/MMC команд производить на хосте Варианты использования эмуляции: • загрузка устройств с SD карты без передергивания и копирования • тестирование драйверов на устройстве