Hi all,
I am found that when I touch the touchscreen on a imx258 machine and move quickly and not to stop, the kernel thread [imx_adc_ts] consume the cpu over 40% or more(sometimes 90%).
the kernel is 2.6.31 form the ltib.
Did anyone met that problem before?and how to solve it?
Here is the thread:
static int ts_thread(void *arg)
{
struct t_touch_screen ts_sample;
int wait = 0;
daemonize("imx_adc_ts");
while (input_ts_installed) {
try_to_freeze();
memset(&ts_sample, 0, sizeof(ts_sample));
if (0 != imx_adc_get_touch_sample(&ts_sample, !wait))
continue;
input_report_abs(imx_inputdev, ABS_X, ts_sample.x_position);
input_report_abs(imx_inputdev, ABS_Y, ts_sample.y_position);
input_report_abs(imx_inputdev, ABS_PRESSURE,
ts_sample.contact_resistance);
input_sync(imx_inputdev);
wait = ts_sample.contact_resistance;
msleep(10);
}
return 0;
}
And here is the cpu utilization:
anyone knows how to resolve it?
thanks!!!
zengshu
Solved! Go to Solution.
Hello,
Did you verify if a patch such :
linux-2.6-imx.git - Freescale i.MX Linux Tree
could fix that issue?
Florent
Hello,
Did you verify if a patch such :
linux-2.6-imx.git - Freescale i.MX Linux Tree
could fix that issue?
Florent
Dear All,
I am also having the same problem as mentioned in this thread by mr.zeng shu "The CPU utilization of [imx_adc_ts] on imx258".
I am running Qt touch application while Linux initialization(in rc.local file) on imx258 with Linux 2.6.31 build by ltib. most of the time my qt touch application is working fine.
But some of the time it wont work and got freezes. In that particular time "imx_adc_ts thread" consume the cpu more than 90 %. I don't know where the exact problem is.
As suggest by Florent, By default i am using the updated patch in drivers/mxc/adc/imx_adc.c file. but it wont fix this issue.
But the problem is still exists. This is happening only for sometimes not all the times.
Could you please give me some permanent solution to solve this problem. This will affecting our product release.
@zeng shu: if you solve this issue means, Please kindly provide the solution.
Regards,
Guru