I'm now really getting into a part of my code that uses this. I had some more thought into it. There are 2 reasons I can remember to use a semaphore: protect access from another task and, more serious (cause it can lead to a crash or a program malfunction), data integrity. Even if raising a counter is not atomic in PPC, I'm sure the write cannot be interrupted (you don't get a 32 bit counter's read with half the current and half the previous value), so data integrity is not a problem here.
So to avoid using data that is not uptodate I decided to not use a semaphore, but a software interrupt in the task that's using it. The timer.device is about the only one that can be used with an interrupt from what I've read on the RKM's libraries, and that's the one I'm receiving messages from, after wich some actions are take and counter is raised, so it's all good.
Any caution/problems/advice with this solution, or it's just brilliant ? 8-)