here the action on board and resulting print on console with the debug code added just before my patch force dsdMode to OFF:
Code: Select all
printstr("dsdMode : ");
printintln(dsdMode);
#if(DSD_CHANS_DAC == 0)
dsdMode = DSD_MODE_OFF;
#endif
1) Run board with USB detached
dsdMode : 0
2) Attach USB to host
dsdMode : 0
dsdMode : 0
dsdMode : 0
dsdMode : 2
3) Run arecord -D hw:0 -r 48000 ...
dsdMode : 2
(so this without patch will record empty audio)
4) Run spekaker-tests -D hw:0 -r 48000 ...
dsdMode : 0
(AudioHwConfig will be executed also if the sample rate is not changed and correctly init ADC and DAC also without patch)
5) Run arecord -D hw:0 -r 48000 ...
(AudioHwConfig was not executed because sample rate is not changed but ADC is just correctly initialized and audio will becorrectly recorded)
6) Run arecord -D hw:0 -r 96000 ...
dsdMode : 0
(Changing samplerate force execution of AudioHwConfig)
7) Detaching and attaching again USB cable result in retarting exactly from point (2)
Hope this help to understand!
Lorenzo