Здравствуйте моя плата SK-AT91SAM9G45 с ядром 2.6.36 -rs6, ешё наложен патч rt.
Возникла проблема при передаче по UART на скорости 115200 пакета из 6 байт на другое устройство, в ответ должно быть получено 3 байта в ответном сообщении. На логическом анализаторе видно что, в ответ приходит 3 байта все нормально, но в файловом дескрипторе вылавливается только последний 3-й байт.
Время между концом моего пакета и началом ответного сообщения 0,1ms, а третий байт приходит ещё через + 0,2ms. Для того чтобы принять полностью ответное сообщение как вариант можно к UART прикрутить DMA и как это сделать, ведь поддержка DMA у UART даташите имеется.
По-моему просто termios неправильно настроен и первые байты как управляющие символы воспринимаются
DMA используется по умолчанию
-> Device Drivers
-> Character devices
-> Serial drivers
[*] AT91 / AT32 on-chip serial port support
[*] Support for console on AT91 / AT32 serial port [*] Support DMA transfers on AT91 / AT32 serial port