Index: /trunk/libffado/src/devicemanager.cpp =================================================================== --- /trunk/libffado/src/devicemanager.cpp (revision 516) +++ /trunk/libffado/src/devicemanager.cpp (revision 525) @@ -538,4 +538,14 @@ return true; } + // FIXME: the above test doesn't have the desired effect - MOTU devices + // are still allowed to proceed. Therefore for the moment include a + // further check. + // If the device isn't a BeBoB device we can't assume it will accept AVC + // commands (for example, trying to send AVC commands to a MOTU via + // libiec61883 gives an endless stream of "send oops" messages). + // Therefore only proceed if the device is a known BeBoB device. + if (!BeBoB::AvDevice::probe(pAvDevice->getConfigRom())) { + return true; + } // the path looks like this: @@ -576,4 +586,11 @@ Glib::ustring sDevicePath = getCachePath() + configRom.getGuidString(); char* configId; + // If the device isn't a BeBoB device we can't assume it will accept AVC + // commands (for example, trying to send AVC commands to a MOTU via + // libiec61883 gives an endless stream of "send oops" messages). + // Therefore only proceed if the device is a known BeBoB device. + if (!BeBoB::AvDevice::probe((ConfigRom&)configRom)) { + return false; + } asprintf(&configId, "%08x", BeBoB::AvDevice::getConfigurationId(*m_1394Service,