[okl4-developer] Touchscreen on S3C2440

Rémy Gottschalk rgottschalk at linagora.com
Mon Aug 25 19:29:08 EST 2008


Geoffrey Lee a écrit :
> On Thu, Aug 21, 2008 at 06:50:26PM +0000, Rémy Gottschalk wrote:
>> Hi all,
>>
> 
> Hi Remy
> 
>> I decided to leave the flash problem for later and try to resurrect this 
>>   good old ig_touch.
>>
>> For now i managed to get it compiling again. I used the drivers doc, the 
>>   serial server and s3c2410 uart drivers, and all the lcd and og fb 
>> stuff as example.
>>
>> So s3c2410_touch and vtouch compile (although I destructed some of the 
>> working part for now). However if i forcefully call do_input_work() i 
>> got some encouraging debug output corresponding to the real state of the 
>> touchscreen (ie : pen up / pen down).
> 
> One thing that has tripped me once is the resources->next field is no 
> longer used, take a look at the device_setup_impl()  when porting your
> driver using something such as pxa timer as a reference.
> 
> You should be able to get pen down events, if you are not receiving
> any interrupts make sure that your interrupts has been registered
> with L4 and that you have enabled the device properly.  The touchscreen
> driver should be functional, you should only need to make minor
> cosmetic changes to update for the latest OKL4 2.1.
> 

It seems that I am pretty good on this side, the drivers, the server, 
and the stub are now up to date and behave almost properly.

>> My current issue to continue my rescue/update mission is that I can't 
>> confirm if it generate any interruption at all. What I am sure of is 
>> that device_interrupt_impl() is never called nor interrupt/async_handler 
>> in vtouch are.
>>
>> Since I don't really know the expected flow I feel like blindly placing 
>> traps :). For example I try in vain to see if the irq I am expecting was 
>> passing through s3c2410_do_irq() in /platform/s3c2410/pistachio/interrupt.cc
>>
>> So could you inform me a little about the normal interruption flow. 
>> Especially the lowest point in order to confirm whether my device is 
>> correctly configured and generating interruptions or not.
> 
> The KDB tracepoints might be useful for this.  Break into the KDB,
> enable tracepoints, then enable the specific tracepoint.  There should
> be one for interrupt.  The suggested way to debug this may be to 
> make use of the touchscreen in a simple Iguana program first, then
> move on to simple more functional later.
>

I found my problem with the interrupt, it was just because the interrupt 
is from the subset and thus masked by default.

My problem now is that when a the server try to access to 
vtouch->control->rx it simply die silently without any error. I checked 
with vserial and ig_serial and it is pretty much the same code. So if 
you have any idea of a possible cause or/and a way to investigate further.

Regards,

-- 
Remy Gottschalk - rgottschalk at linagora.com
Ingénieur informatique embarquée
Groupe LINAGORA - http://www.linagora.com
Tél.: +33(0)1 58 18 68 28 - Fax : +33(0)1 58 18 68 29



More information about the Developer mailing list