From: <tr...@ff...> - 2013-05-14 13:41:20
|
Author: jwoithe Date: 2013-05-14 06:41:12 -0700 (Tue, 14 May 2013) New Revision: 2320 Modified: trunk/libffado/src/rme/fireface_flash.cpp trunk/libffado/support/mixer-qt4/ffado/mixer/rme.py Log: rme: no code changes. Add clarifying comments dealing with the way mixer and control settings are dealt with after reading from flash. Modified: trunk/libffado/src/rme/fireface_flash.cpp =================================================================== --- trunk/libffado/src/rme/fireface_flash.cpp 2013-05-14 12:07:59 UTC (rev 2319) +++ trunk/libffado/src/rme/fireface_flash.cpp 2013-05-14 13:41:12 UTC (rev 2320) @@ -235,6 +235,12 @@ signed int Device::read_device_flash_settings(FF_software_settings_t *dsettings) { + // Note: this function does NOT copy the newly read settings into + // the hardware registers even if reading into the device's master + // settings structure (ie: when dsettings is NULL). If the settings + // read from flash are to be made active the caller must take + // care of this (by calling set_hardware_params() for instance). + if (dsettings == NULL) dsettings = settings; @@ -532,6 +538,12 @@ signed int Device::read_device_mixer_settings(FF_software_settings_t *dsettings) { + // Note: this function does NOT send the mixer configuration read from + // flash to the mixer control registers. If the newly read state is + // to become active, the caller must arrange for this to happen (perhaps + // by calling set_hardware_mixergain(), or relying on "changed" widget + // callbacks like the rme.py ffado-mixer module does). + unsigned short int vbuf[RME_FF_FLASH_MIXER_ARRAY_SIZE/2]; unsigned short int pbuf[RME_FF_FLASH_MIXER_ARRAY_SIZE/2]; unsigned short int obuf[RME_FF_FLASH_SECTOR_SIZE/2]; Modified: trunk/libffado/support/mixer-qt4/ffado/mixer/rme.py =================================================================== --- trunk/libffado/support/mixer-qt4/ffado/mixer/rme.py 2013-05-14 12:07:59 UTC (rev 2319) +++ trunk/libffado/support/mixer-qt4/ffado/mixer/rme.py 2013-05-14 13:41:12 UTC (rev 2320) @@ -176,13 +176,17 @@ log.debug("command %d sent to %s" % (self.CommandButtons[sender][1], self.CommandButtons[sender][0])) self.hw.setDiscrete(self.CommandButtons[sender][0], self.CommandButtons[sender][1]) - # If mixer values have been reloaded, refresh the mixer GUI + # If mixer values have been reloaded, refresh the mixer GUI. This + # will also commit the new values to the hardware via the "changed" + # signal handlers of the mixer elements. if (self.CommandButtons[sender][1] == 2): self.inputmatrix.refreshValues() self.outputmatrix.refreshValues() self.playbackmatrix.refreshValues() - # If settings have been reloaded from flash, refresh the GUI + # If settings have been reloaded from flash, refresh the GUI. The + # settings will be made active in the hardware via the "changed" + # signal handlers of the respective GUI control widgets. if (self.CommandButtons[sender][1] == 0): self.getValuesFromFF() |