4 Feb
2017
4 Feb
'17
4:49 p.m.
On Thu, Feb 02, 2017 at 10:37:44AM +1100, Matt Flax wrote:
switch (params_channels(params)) { case 2:
- case 8: format = BCM2835_I2S_CH1(format) | BCM2835_I2S_CH2(format); format |= BCM2835_I2S_CH1(BCM2835_I2S_CHPOS(ch1pos)); format |= BCM2835_I2S_CH2(BCM2835_I2S_CHPOS(ch2pos));
I can't understand how this works. We're programming the hardware in an identical fashion for both channel counts, that means that what we're sending will be indistinguishable from a garbled stereo stream. How does this produce working clocks or manage to sync up reliably with external clocks?