snd-aoa status update / automatic driver loading

Benjamin Herrenschmidt benh at kernel.crashing.org
Wed May 24 08:15:43 EST 2006


> Right, that's how snd-powermac does it. It has the nasty side-effect of
> polluting the cache a lot though, since dbdma commands are 16 bytes
> long. Am I wrong?

You don't have that much DBDMA commands that it would pollute the cache
_a lot_ :) 

> > Since we can only update the framecounter on a per-period basis, 
> 
> Alsa calls this thing the 'pointer' :) The frame counter we currently
> use is the frame counter register of the i2s bus controller, and I don't
> see why we shouldn't do that instead of reading back all the dbdma
> command status fields.

If you manage to have it properly in sync, that may work too.

> Since the i2s bus is not shut down it also counts when we are not
> transferring data. We currently calibrate on the first interrupt. That's
> fine, since having multiple periods means that we don't need to be
> absolutely precise here. If we miss one, that's fine, we can make it up
> the next time by saying that 2 have elapsed.

Ok.

Ben.





More information about the Linuxppc-dev mailing list