svn commit: r308424 - head/sys/arm/broadcom/bcm2835

Oleksandr Tymoshenko gonzo at freebsd.org
Mon Nov 7 19:24:13 UTC 2016


> On Nov 7, 2016, at 10:27 AM, Hans Petter Selasky <hps at selasky.org> wrote:
> 
> On 11/07/16 18:38, Oleksandr Tymoshenko wrote:
>> +		bcm2835_audio_unlock(sc);
>> +		cv_signal(&sc->worker_cv);
> 
> 
> Shouldn't cv_signal() be done locked, so that you don't loose any transactions? CV's only wakeup the treads that are sleeping right there and then.

Hi Hans, 

In this case it doesn’t matter. bcm2835_audio_xxx lock functions are used to keep channel state consistent. The actual audio hw reprogramming happens in worker thread which only picks up latest state of the virtual channel, there is no need to run every transaction in sequence. 



More information about the svn-src-all mailing list