I've been reading through the SYSBIOS documentation, working on a few examples and looking at other threads on the BIOS forum such as the one below http://e2e.ti.com/support/embedded/bios/f/355/t/94262.aspx to get some ideas about managing Hwis in a SYSBIOS system. All the info I've looked at indicates that there is no cohesive method to manage interrupt assignment; you either use the interrupt assigned by default or pick one yourself during static or dynamic configuration.
I'm working on abstracting the lower level implementation details of the system for application developers and need a way to systematically manage interrupts. The app developer will be provided with an API to the available interfaces in the system. The code/library that I provide will be responsible for managing the resources required to support the interface (interrupts, memory etc.). There is a fair amount of latitude in the type of systems that can use this library; simple systems with a couple of tasks and interrupts and others that will take it to the edge. Are there any modules/facilities within SYSBIOS to manage this sort of task or will I need to write my own? This is for an OMAP L138 based system. I do understand that SYSBIOS provides a certain level abstraction but I want to decouple the app from the lower level implementation.
Here's a simple example of something that this module might need to do.
- Application keeps requesting interfaces that need to use Hwis (uarts, edma, i2c etc.).
- Library will need to query some module/structure to determine which interrupts are not used and assign them to interface requested.
- Library should also be able to figure out if it makes sense to combine these events (based on system interrupt number or user-specified frequency etc.)
I'm also interested to find out if there are simpler approaches to achieve what I described above :)
Thanks,
Dinesh