Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix semaphore usage on lpc1768 emac #4449

Merged
merged 1 commit into from
Jun 8, 2017
Merged

Conversation

c1728p9
Copy link
Contributor

@c1728p9 c1728p9 commented Jun 5, 2017

The semaphore xTXDCountSem had the count to match the number of resources available, but was being used as a binary semaphore in a loop to listen for events. This patch updates the logic to make use of the resource count.

With RTX5 the OS traps with an error if the a semaphore is released more times than its count with an error similar to "Semaphore 10000e6c error -17". Because xTXDCountSem is being used as a binary semaphore it triggered this trap. With this patch the semaphore is no longer used as a binary semaphore and no longer traps.

The semaphore xTXDCountSem had the count to match the number of
resources available, but was being used as a binary semaphore in a
loop to listen for events. This patch updates the logic to make use of
the resource count.

With RTX5 the OS traps with an error if the a semaphore is released
more times than its count with an error similar to
"Semaphore 10000e6c error -17". Because xTXDCountSem is being used
as a binary semaphore it triggered this trap. With this patch the
semaphore is no longer used as a binary semaphore and no longer traps.
@sg- sg- added the needs: CI label Jun 6, 2017
@sg-
Copy link
Contributor

sg- commented Jun 7, 2017

/morph test

@mbed-bot
Copy link

mbed-bot commented Jun 8, 2017

Result: SUCCESS

Your command has finished executing! Here's what you wrote!

/morph test

Output

mbed Build Number: 482

All builds and test passed!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants