How to use Glamo interrupts

Michael Trimarchi trimarchi at gandalf.sssup.it
Tue Jun 9 20:37:14 CEST 2009


Hi,

I'm writing the 2d acceleration on android but I need to access the 
internal register
of glamo accelerator. It is possible with the drm interface to access 
the interal
2d register?

Michael
Andreas Pokorny wrote:
> Hello,
>
> Thank you for your help. We just discovered that the "waits" we had in
> drm-tracking are not really necessary. So right now we do not need the
> interrupt to update the write pointer. Hopefully I will have a debug
> board next time I work on that part.
>
> 2009/6/6 Michael Trimarchi <trimarchi at gandalf.sssup.it>:
>   
>> What happen if you ack this irq and you take no lock on cmdq_irq, then arrive another
>> one and you don't mask and mark it pending.
>>     
>
> Yes I should have disabled the interrupt...
>
>   
>> [...]
>>     
>>>        glamo_enable_cmdq_irq(gdrm);
>>>
>>>       
>> I suppose that here you will do an unmask of the interrupt.
>>     
>
> Yes.
>
>   
>>> [...]
>>>        spin_unlock_irqrestore( &gdrm->new_ring_write_lock, flags );
>>>
>>>        /* We try to make the irq happen somehow :( */
>>>        printk(KERN_INFO "[glamo-drm] enabling...\n");
>>>        glamo_enable_cmdq_irq(gdrm);
>>>
>>>       
>> The interrupt is not just umask? So way unmask it again?
>> If you want and interrupt at each new command in the buffer why you don't
>> mask
>> it and ack?
>>     
>
> After several trial&error iteratons we had the impression that the
> glamo chip needs to
> be told again that the IRQ for the CMDQ should be triggered..
>
>   




More information about the openmoko-kernel mailing list