I'm trying to get a simple application to run on the C6747 (the chip is actually the OMAP L137, but we're only using the DSP side).
I need to do UART based communications on at least two of the serial ports.
We will also have to have an interrupt driven by an IO pin.
I have some relatively simple code driving the UART(s) in polled mode (from the OMAP L137 EVM Test Code). This is working as well as polled serial communications can, but I need to get at least the receive interrupt driven.
I know these are really capable parts, but I don't really need all that - Just IO, UARTs, and a FP DSP. Maybe a timer.
What I'm stuck on now is how to route all the UART Events to an interrupt, and then be able to service that interrupt, looking at the various registers available to determine why the interrupt fired. I know this involves the INTMUX registers, but I have not found a document that describes SPECIFICALLY, for the C6747 what bits to twiddle to map the UART events to the interrupt controller.
I've looked all the examples, but they either assume you're using DSP/BIOS or some other thing I don't need. I've grepped every bit of source I can find, but I cannot find any source code that puts the terms UART and INTMUX together. Separately, I can find stuff in the BIOS code, but in over 4K(!!) of lines in the serial port driver, how to get interrupt driven serial communications working, specifically for the C6747.
Even the CSL buries stuff in levels of obfuscation and seems overly complicated for what I need to do.
This seems SO elemental and is trivial on nearly every other processor I've worked on - even working with the Windows serial port driver source code is less byzantine.
Does anyone know of a concise example or documentation that tells me what I want to know (INTMUX / UART event definitions)?
Thanks.