там сказано, что надо еще прописать порты и создать линки в /dev
прописать порты- видимо это уже сделал в .c файле борды.
а как создавать линки в /dev? пытался нагуглить эту тему, но ничего толкого не нашел. дайте ссылочку где почитать как это делается.
в логе загрузке у меня видно только два уарта: дебаговый (ttyS0) и uart1(ttyS2), несмотря на то что бордовый файл board-sam9m10g45ek.c я скорректировал, а именно: добавил at91_register_uart для AT91SAM9G45_ID_US0.
вот из лога загрузки:
в списке девайсов у меня ttyS1 виден:
командой mknod я так и не смог воспользоваться т.к. у меня изначально при старте видны ttyS0...ttyS3.
видимо mknod и не нужен мне.
это вы шлете в отладочную консоль - было бы странно не увидеть эхо..
вот тут включенно аппаратное квитирование и два варианта - пины "подрались" с другой периферией - проверяется в файле *devices.c или на пин не приходит нужный уровень и порт (драйвер) справедливо его ждет..
верните все "на исходную" и проделайте то, что я делал с проволочкой (пины 7 и 8) и то же самое с /dev/ttyS2 (пины 9 и 10)
должно быть примерно как из вышеприведенной ссылки:
дело было в команде at91_register_uart. а именно, у меня было (неправильный вариант):
при этом команда имеет формат:
void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins)
т.е. у меня неправильно был указан portnr, и походу сначала на ttyS2 привязывался UART0, а затем поверх него UART1. ну и до кучи удалил RTS и CTS, т.к. они на плате не разведены.
в итоге имеем:
и порт стал региться норм.
правда передавать через него пока все равно не получается. но думаю это я уже добью.