* Ran Shalit <ranshalit@xxxxxxxxx> [151122 07:59]: > Hello, > > I have stranhe behaviour in which even when there is no activity in > serial port, the retention counter is keep incremented all these time, > as if the cpu gets in and out of retention periodically. > I would expect the cpu to get into retention mode, when there is no > activity and stay in that state. > What can cause such behaviour ? Is it because some background process ? Sounds like your device is hitting deper idle states during idle. If you want to disable that, set the UART autosuspend_delay_ms to -1: #/bin/bash uarts=$(find /sys/class/tty/tty[SO]*/device/power/ -type d) for uart in $uarts; do echo -1 > $uart/autosuspend_delay_ms 2>&1 done The above will keep the UARTs active blocking any deeper idle states. I believe the value has to be -1 instead of 0 to disable autoidle.. but please verify yourself. > My original problem is that the ethernet performance is very low with > small windows. I thought that I can control this value by changing > sleep_latency parameter in > the following array. Yet, it did not help me. I don't know why. Maybe test if the above script helps with the Ethernet too. If the Ethernet controller is on GPMC, it's not blocking deeper idle states automatically in hardware. Adding DMA support to the Ethernet driver would be a good way to block deeper idle states automatically by the Ethernet hardware. Regards, Tony -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html