Hello everybody, I am working on an embedded system doing serial communication on an sama5. The timing constraines, we have to fullfill are quite tough. My problem: If I receive a long packet (800...1000 char), our application runs into a timeout. We have approx 5ms time to receive the first char and with a bus analyzer, I can see the first char is physically transmitted after 200us. But our application frequently tells me about no char available within the specified 5ms. The transmission of the 800...1000 chars at our baudrate takes something like 10ms. So I guess, the lower levels gather the chars and present them to application after the complete (or rather complete) telegram was received. With short telegrams, we do not have any problems. So I set the VMIN in termios C_CC to 1, to force the driver to submit chars, even if just one is available - no change. Now I started reading the driver code and observed the ring-buffer in arm_serial.c. Since I don't get which function my user-space read() is actually calling, I am not sure, whether I really get a single char if a single char is available or whether the driver waits for the buffer to be filled to a certain level. I also tried to switch off the DMA - again no change. Can somone help me? Thanks, Marcus Wolf Wolf-Entwicklungen for EFR GmbH, München