This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

OMAP L137 Audio drivers - production ready?

I've been having a very brief look at the audio example/drivers supplied with the latest PSP. I've not got much further than reading the source for the Audio wrapper around the CODEC and McASP drivers (found at ...\pspdrivers_01_20_00_07\packages\ti\pspiom\platforms\evmOMAPL137\audio\src\Audio.c).

My question is: Is this driver considered production worthy?

Here is a quick list of a few things that jumped out at me when glancing over the source:

  • audioMdCreateChan()

When creating a channel there is a check to see if the driver is closed (i.e. has not been opened), and if so it is opened and extra initialisation is performed. It appears the author attempted to make this check thread-safe, however only the "set" of the "test-and-set" operation is atomic. The "_disable_interrupts();" (line 339) should be before the check "if (Audio_DriverState_CLOSED == chanHandle->chanState)" (line 335), otherwise there is a race condition in which this thread may be descheduled after the check but before claiming the resource.

  • audioMdDeleteChan()

There are multiple invocations of the call-backs to delete the channel for the McASP and any number of CODECs, however all the return codes apart from the last CODEC are silently ignored before being checked (line 679, 686). This is worrying as if the last CODEC deletes the channel fine but the McASP and all other CODECs fail no notification is given to the caller.

I've stopped reading through the source for the time being, as if it's not production worthy i'll wait for some that is. I'll admit these are minor corner cases - but often cases like these are the ones that turn out to be a real pain to debug later on!

I assume TI has acceptance/release procedures, is there any documentation detailing these? When are drivers considered production ready?

Thanks!

  • Joseph,

    Thanks for you post and your comments.  Much appreciated.

    Meanwhile,  there is an updated latest version (GA) version of the BIOS PSP 1.20 package for OMAPL137 that is available in the BIOS PSP update Advisor site here .

    The overall OMAPL137 SDK which packages all components (like PSP) might be coming in later.

    Your observations may not have been addressed in the BIOS PSP 1.20 GA package.  We will look into this and get back

    thanks

    regards

    sathya

  • Joseph,

    Your comments are accepted. Bug report SDOCM00057452 has been filed for tracking and be taken up in next releases.

    Thanks and regards,

    Sriram

  • Cheers!

    Is it possible to view the bug report and it's progress on the website?

    Are there listing of all bug reports for a given product available (for example all known PSP bugs for OMAP L137)?

  • Joseph,

    The normal support channel for this is through http://support.ti.com.  What my colleague has shared with you an internal engineering bug-tracking number.  In the release notes of every release you would see the IDs of every bug that has been addressed in that release.  you would be able to see an example of that in the release notes of package mentioned earlier in the post.

    thanks

    regards

    sathya

  • Thanks, I can see references to similar bug-tracking numbers in the release notes.

    However, is there no way for us to see all accepted bugs for a given release? Do we simply have to wait for the next release and read the release notes?

    For example, someone else may have found a bug in the most recent release. If I am also using that release then that same bug may affect me, and knowledge of it may save me hours of debugging. Otherwise you may end up with multiple support requests for the same bug.

    Also, it may help to steer the order of software development to know that a given driver currently has bugs, as development using it may be put off until a release in which those bugs are fixed.

  • Joseph,

    This is great feedback.  FYI, we do a fairly good job of tracking bugs internally and prioritizing work accordingly, as well as communicating to customers when a resported bug is already in our system.  However, you bring a very good point about allowing customers visibility into the filed bugs, which may prove useful for customers.  I have added this to our list of improvments requested by customers, and will be working with our internal teams to see if we can make this available.  Once again, thank you for your valuable feedback and please feel free to proposed any more ideas you may have.