Jump to content

    

sasamy

Участник
  • Content Count

    830
  • Joined

  • Last visited

Community Reputation

0 Обычный

About sasamy

  • Rank
    Знающий

Recent Profile Visitors

1889 profile views
  1. IMX8M-mini: MIPI CSI и сопроцессор

    Сам порт можно и не трогать - в Linux есть драйвер а данные CSI бридж складывает в DDR через встроенный контроллер DMA. Для m4 доступны первые 2 гигабайта DDR - можно написать драйвер чтобы a53 сообщал адрес буфера, размер, формат данных и всё что нужно для обработки ядру m4 - есть драйверы и примеры для обмена данными между ядрами через rpmsg для Linux на a53 и FreeRTOS на m4. Вопрос зачем m4 с 400 МГц если там 4 ядра a53 есть с частотой больше гигагерца.
  2. MAC + PHY

    Так у вас судя по схеме не подключена линия запроса на прерывание от PHY к MAC - подключите и должно работать. Со встроенными MAC проще - там поллинг включается если явно не указана в DT линия IRQ, с USB MAC такое не прокатит скорей всего - драйвер MAC всегда регистрирует прерывание и ожидает его от PHY, хотя я не уверен https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/net/usb/lan78xx.c#n2974 посмотрите что пишет ядро когда интерфейс поднимается, например тут поллинг и есть ли в логах отклик от драйвера при отключении/включении кабеля наподобие этого
  3. MAC + PHY

    Если больше ничего в схеме не перепутано это по-моему единственное логическое объяснение. Можно попробовать разорвать линию RESETn, еше попробовать вручную сделать длитеьный сброс - вставить задержку на пару секунд перед вызовом phydev = phy_find_first(dev->mdiobus); и кратковременно проводком замкнуть на землю RESETn. Еще номиналы подтяжек на MDIO проверить - неизвестно что там реально запаяно.
  4. MAC + PHY

    потому что драйвер MAC его не видит на шине MDIO и все прекрасно поимает - если бы вы включили отладочные сообщения увидели бы сообщения драйвера об этом https://elixir.bootlin.com/linux/v4.19.96/source/drivers/net/usb/lan78xx.c#L2072 сейчас он молча предполагает что есть неуправляемый PHY с фиксированными параметрами - по умолчанию вывод ф-ций *_dbg отключен https://stackoverflow.com/questions/50504516/enable-linux-kernel-driver-dev-dbg-debug-messages а какие вы ешё можете предложить варианты в такой ситуации ? через DT максимум что можно изменить - MAC-адрес который и без этого легко меняется из юзерспейс и поведение лампочек
  5. MAC + PHY

    Адрес PHY устанавливается исключительно аппаратной конфигурацией - я вам даташит процитировал не может он скакать с 0 на 1 если CONFIG подключен к VSS
  6. MAC + PHY

    и вы бодро говорите что с подключением все ОК ?
  7. MAC + PHY

    почему 7800 если у вас 7801 с внешним PHY, да и сомневаюсь что прописав PHY в DT это что-то изменит - PHY должен автоматом определяться. Осцилом не пробовали смотреть обмен по mdio ? для начала отладочные сообщения включите в драйвере
  8. MAC + PHY

    Драйвер lan7801 не находит PHY и срабатывает ветка для fixed phy https://elixir.bootlin.com/linux/v4.19.96/source/drivers/net/usb/lan78xx.c#L2070 поэтому и ethtool показывает фиксированные параметры - что-то у вас не так со схемой подключения. Я бы начал проверку с VDDO_SEL pin https://www.marvell.com/documents/eoxwrbluvwybgxvagkkf/ потом RESETn, CONFIG - много мест где можно накосячить, маловероятно что софтовая проблема
  9. Работа с YOCTO

    yocto build qt sdk
  10. STM32MP1 - bare metal

    я пробовал с майнстримным ядром Linux и Mesa, собирал в buildroot - работает, где-то читал что разработчики embox запускали Quake3D для демонстрации работоспособности популярный готовый графический тулкит, для рендеринга может использовать 3D GPU, Просто я видел где-то пример того что вы делали - подобное на QML толковый дизайнер за пол-часа сделает лучше.
  11. Embedded Linux

    дело не в энтузиазме - это просто не нужно. Насчёт опенсорса у вас очень старые понятия - многие корпорации ведут разработку с отрытыми исходниками. IBM планировала вложить в разработку экосистемы Linux для своих процессоров Power 6 млрд долларов - энтузиазмом там давно не пахнет, это бизнес.
  12. STM32MP1 - bare metal

    Вспомнил один проект https://ru.wikipedia.org/wiki/Embox https://github.com/embox/embox там есть даже портированные драйверы из Linux i.mx6 и для 3D GPU, может пригодится. Лицензия BSD так что теоретически исходники открывать не нужно (правда я не не уверен в случае использования Qt со статической линковкой в один образ без коммерческой лицензии)
  13. STM32MP1 - bare metal

    тут есть тесты sdma, результаты как-то не впечатляют, даже теоретический максимум http://billauer.co.il/blog/2017/08/nxp-freescale-sdma-memory-map-throughput/ для сравнения CPU и IPU https://community.nxp.com/docs/DOC-95014 никакой засекреченности я там не заметил как и в описании IPU тоже. PXP намного проще IPU поэтому и предложил его.
  14. STM32MP1 - bare metal

    Это всё же сильно разные устройства - sdma это 16 битное микроконтроллерное ядро с rtos - оно для низкоскоростной периферии которой много и надо параллельно её обслуживать, PXP - хз что там внутри, но оптимизирован для обработки графики и данные он буферизует при копировании намного лучше, у того же SPI FIFO всего 64 слова кажется, у PXP блок 16х16 слов можно установить. PS насчет sdma я перепутал - там не rtos а Scheduler на блок-схеме :)
  15. STM32MP1 - bare metal

    Нет, но думаю sdma совсем не для графики задуман. Хотя и PXP если использовать для перекидывания данных - не особо ускоритель , а вот бработку типа CSC и scaling при выводе видео на arm9 он ускорял значительно .