To all beagleboarders

marcm - April 27, 2012

Share this

Comments

what happened there ???

Hi All,
IE9 doesnt like this site on my computer so here goes again....

I am using a dev platform TDM3730 based on a DM3730 and have got a little stuck with GPIO and kernel inetrrupts.  I am not new to the world of embedded platforms so have a good understanding about how ucontrollers are setup and used.  The issue I am having is I can only get a maximum intterupt duty cycle of ~10ms.  On an 800MHz platform I find this hard to believe and I need to get the speed down to 1ms for my project to start working properly.

I would like someone who has a beagleboard and possibly a sig-gen to try a test for me please ?
I have written a simple kernel driver that services the interrupt request on GPIO_170 and prints out an interrupt count on the console, serviced in ~30us (as scoped).  I am happy to supply the code to anyone who is willing to try the test.

I have checked all the pin mux registers that I can see for the GPIO_170 (bank 6) and it is set as input enable, pullup/down disabled, mode 4 and in the IRQ setup it is set to Falling Edge Detect.

Is there any known reason why I cannot get better than 10ms on GPIO_170 ? Or should I be using a different GPIO pin ?

Any knowledge help is greatly appreciated an may result in beer tokens ;)

Thanks
Marc

Can you cross-verify what

Can you cross-verify what timers are being used on the Beagleboard?. Try enabling the High Resolution Timers, which may improve the resolution on handling events.