Проблема Y
Решил попробовать через UART пройти плату с rockchip отладчиком ядра. Вроде всё по инструкции сделал, но упёрся в непонятную ситуацию:
(gdb) target remote /dev/ttyUSB0
Remote debugging using /dev/ttyUSB0
Remote replied unexpectedly to 'vMustReplyEmpty': vMustReplyEmpty
Есть подозрения, что у /dev/ttyFIQ0 включена построчная буферизация, т.к. когда я делаю на устройстве:
# cat /dev/ttyFIQ0
И делаю:
(gdb) target remote /dev/ttyUSB0
По UART явно данные передаются (лампочка мигает), но при этом ничего не выводится. Но если потом сделать:
echo > /dev/ttyUSB0
На устройстве будет что-то вроде:
# cat /dev/ttyFIQ0
+$qSupported:multiprocess+;swbreak+;hwbreak+;qRelocInsn+;fork-events+;vfork-events+;exec-events+;vContSupported+;QThreadEvents+;QThreadOptions+;no-resumed+;memory-tagging+;xmlRegisters=i386;error-message+#14---+$vCont?#49---+ <дальше опущено>
Проблема X
Следовательно, вопрос: как у /dev/ttyFIQ0 отключить буфферизацию ввода?
# stty -F /dev/ttyFIQ0
speed 115200 baud; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>;
swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V;
flush = ^O; min = 1; time = 0;
-brkint ixoff -imaxbel
P.s. baudrate правильный, в /etc/inittab консоль отключена.

