# # ChangeLog for /trunk/libffado/src/genericavc/avc_avdevice.cpp # # Generated by Trac 0.10.4 # 03/28/24 16:52:50 # 11/11/07 12:03:19 wagi [716] * trunk/libffado/src/bebob/bebob_avdevice.cpp (modified) * trunk/libffado/src/bebob/bebob_avdevice_subunit.cpp (modified) * trunk/libffado/src/bebob/bebob_functionblock.cpp (modified) * trunk/libffado/src/bebob/bebob_functionblock.h (modified) * trunk/libffado/src/genericavc/avc_avdevice.cpp (modified) * trunk/libffado/src/libavc/audiosubunit/avc_audiosubunit.h (modified) * trunk/libffado/src/libavc/general/avc_plug.cpp (modified) * trunk/libffado/src/libavc/general/avc_plug.h (modified) * trunk/libffado/src/libavc/general/avc_subunit.cpp (modified) * trunk/libffado/src/libavc/general/avc_subunit.h (modified) * trunk/libffado/src/libavc/general/avc_unit.cpp (modified) * trunk/libffado/src/libavc/musicsubunit/avc_musicsubunit.cpp (modified) cache bebob avc model. lot's of small bug fixed. it should work now. 11/02/07 08:39:54 ppalmers [685] * trunk/libffado/src/fireworks/fireworks_device.cpp (modified) * trunk/libffado/src/genericavc/avc_avdevice.cpp (modified) remove device table printout 09/09/07 12:04:35 ppalmers [639] * trunk/libffado/src/bounce/bounce_avdevice.cpp (modified) * trunk/libffado/src/bounce/bounce_avdevice.h (modified) * trunk/libffado/src/devicemanager.cpp (modified) * trunk/libffado/src/dice/dice_avdevice.cpp (modified) * trunk/libffado/src/dice/dice_avdevice.h (modified) * trunk/libffado/src/ffadodevice.cpp (modified) * trunk/libffado/src/ffadodevice.h (modified) * trunk/libffado/src/fireworks/audiofire/audiofire_device.h (modified) * trunk/libffado/src/fireworks/efc/efc_cmd.h (modified) * trunk/libffado/src/fireworks/efc/efc_cmds_hardware.cpp (modified) * trunk/libffado/src/fireworks/efc/efc_cmds_hardware.h (modified) * trunk/libffado/src/fireworks/efc/efc_cmds_hardware_ctrl.cpp (added) * trunk/libffado/src/fireworks/efc/efc_cmds_hardware_ctrl.h (added) * trunk/libffado/src/fireworks/fireworks_device.cpp (modified) * trunk/libffado/src/fireworks/fireworks_device.h (modified) * trunk/libffado/src/genericavc/avc_avdevice.cpp (modified) * trunk/libffado/src/genericavc/avc_avdevice.h (modified) * trunk/libffado/src/metrichalo/mh_avdevice.cpp (modified) * trunk/libffado/src/metrichalo/mh_avdevice.h (modified) * trunk/libffado/src/motu/motu_avdevice.cpp (modified) * trunk/libffado/src/motu/motu_avdevice.h (modified) * trunk/libffado/src/rme/rme_avdevice.cpp (modified) * trunk/libffado/src/rme/rme_avdevice.h (modified) * trunk/libffado/src/SConscript (modified) * trunk/libffado/tests/test-ffado.cpp (modified) - Introduce a generic infrastructure for FFADODevices to present the clock sources they support and their state - Implement this infrastructure for BeBoB devices - Implement this infrastructure for ECHO Fireworks devices 09/08/07 09:19:40 wagi [630] * trunk/libffado/src/bebob/bebob_avdevice.cpp (modified) * trunk/libffado/src/bebob/bebob_avdevice.h (modified) * trunk/libffado/src/genericavc/avc_avdevice.cpp (modified) * trunk/libffado/src/genericavc/avc_avdevice.h (modified) * trunk/libffado/src/libavc/general/avc_unit.cpp (modified) * trunk/libffado/src/libavc/general/avc_unit.h (modified) * trunk/libffado/src/libutil/cmd_serialize.cpp (modified) Some more fixing of the cashing code. The loading is still disabled because it seems not to work right. But at least it doesn't crash anymore. Some further debugging is needed. 09/02/07 11:31:15 ppalmers [612] * trunk/libffado/src/bebob/bebob_avdevice_subunit.cpp (modified) * trunk/libffado/src/bebob/bebob_avdevice_subunit.h (modified) * trunk/libffado/src/bebob/bebob_functionblock.h (modified) * trunk/libffado/src/bebob/bebob_mixer.cpp (modified) * trunk/libffado/src/debugmodule/debugmodule.cpp (modified) * trunk/libffado/src/genericavc/avc_avdevice.cpp (modified) * trunk/libffado/src/libavc/audiosubunit/avc_audiosubunit.cpp (modified) * trunk/libffado/src/libavc/audiosubunit/avc_audiosubunit.h (modified) * trunk/libffado/src/libavc/general/avc_plug.cpp (modified) * trunk/libffado/src/libavc/general/avc_plug_info.cpp (modified) * trunk/libffado/src/libavc/general/avc_subunit.h (modified) * trunk/libffado/src/libavc/musicsubunit/avc_musicsubunit.cpp (modified) - Remove dependencies between BeBoB and generic AVC code (functionblocks) - Clean up the code at some places 08/31/07 01:56:53 ppalmers [607] * trunk/libffado/src/bebob/bebob_avdevice.cpp (modified) * trunk/libffado/src/fireworks/fireworks_device.cpp (modified) * trunk/libffado/src/genericavc/avc_avdevice.cpp (modified) * trunk/libffado/src/genericavc/avc_avdevice.h (modified) * trunk/libffado/src/genericavc/avc_vendormodel.cpp (modified) * trunk/libffado/src/genericavc/avc_vendormodel.h (modified) - Fix file-based discovery. The previous code used a pointer to a vendormodel entry. This pointer however pointed to a VendorModel object that was created on the stack of the discover function. Hence the pointer becomes invalid when the discover function is exited. The changes incorporate using a VendorModelEntry struct instead of a pointer to it. So now the FFADODevice has it's own copy of this struct, instead of a pointer to it. 08/29/07 14:17:58 wagi [599] * trunk/libffado/config.h.in (modified) * trunk/libffado/src/bebob/bebob_avdevice.cpp (modified) * trunk/libffado/src/bebob/ffado_driver_bebob.txt (added) * trunk/libffado/src/fireworks/ffado_driver_fireworks.txt (added) * trunk/libffado/src/fireworks/fireworks_device.cpp (modified) * trunk/libffado/src/genericavc/avc_avdevice.cpp (modified) * trunk/libffado/src/genericavc/avc_vendormodel.cpp (modified) * trunk/libffado/src/genericavc/avc_vendormodel.h (modified) * trunk/libffado/src/genericavc/ffado_driver_genericavc.txt (added) * trunk/libffado/src/SConscript (modified) Instead of static compiled in vendor/model table use configuration files. Maybe needs some more cleanup but I wanted to check in this baby before someone else screws me up with some majors changes in the repos :) 08/29/07 08:26:18 ppalmers [589] * trunk/libffado/src/fireworks/fireworks_device.cpp (modified) * trunk/libffado/src/fireworks/fireworks_device.h (modified) * trunk/libffado/src/genericavc/avc_avdevice.cpp (modified) small discovery fix 08/29/07 08:09:34 ppalmers [587] * trunk/libffado/SConstruct (modified) * trunk/libffado/src/bebob/bebob_avdevice.cpp (modified) * trunk/libffado/src/bounce/bounce_avdevice.cpp (modified) * trunk/libffado/src/bounce/bounce_slave_avdevice.cpp (modified) * trunk/libffado/src/debugmodule/debugmodule.cpp (modified) * trunk/libffado/src/devicemanager.cpp (modified) * trunk/libffado/src/dice/dice_avdevice.cpp (modified) * trunk/libffado/src/ffadodevice.h (modified) * trunk/libffado/src/fireworks (added) * trunk/libffado/src/fireworks/audiofire (added) * trunk/libffado/src/fireworks/audiofire/audiofire_device.cpp (added) * trunk/libffado/src/fireworks/audiofire/audiofire_device.h (added) * trunk/libffado/src/fireworks/fireworks_device.cpp (added) * trunk/libffado/src/fireworks/fireworks_device.h (added) * trunk/libffado/src/genericavc/avc_avdevice.cpp (modified) * trunk/libffado/src/libieee1394/vendor_model_ids.h (added) * trunk/libffado/src/maudio/maudio_avdevice.cpp (modified) * trunk/libffado/src/motu/motu_avdevice.cpp (modified) * trunk/libffado/src/rme/rme_avdevice.cpp (modified) * trunk/libffado/src/SConscript (modified) - moved all vendor id's to one include file - introduced the framework for the ECHO FireWorks platform 08/29/07 04:44:02 ppalmers [584] * trunk/libffado/src/bebob/bebob_avdevice.cpp (modified) * trunk/libffado/src/bebob/bebob_avdevice.h (modified) * trunk/libffado/src/bebob/focusrite/focusrite_cmd.cpp (moved) * trunk/libffado/src/bebob/focusrite/focusrite_cmd.h (moved) * trunk/libffado/src/bebob/focusrite/focusrite_device.cpp (added) * trunk/libffado/src/bebob/focusrite/focusrite_device.h (added) * trunk/libffado/src/bebob/template (added) * trunk/libffado/src/bebob/template/vendor_device.cpp (added) * trunk/libffado/src/bebob/template/vendor_device.h (added) * trunk/libffado/src/bebob/terratec/terratec_cmd.cpp (moved) * trunk/libffado/src/bebob/terratec/terratec_cmd.h (moved) * trunk/libffado/src/bebob/terratec/terratec_device.cpp (added) * trunk/libffado/src/bebob/terratec/terratec_device.h (added) * trunk/libffado/src/bounce/bounce_avdevice.cpp (modified) * trunk/libffado/src/dice/dice_avdevice.cpp (modified) * trunk/libffado/src/ffadodevice.cpp (modified) * trunk/libffado/src/genericavc/avc_avdevice.cpp (modified) * trunk/libffado/src/maudio/maudio_avdevice.cpp (modified) * trunk/libffado/src/metrichalo/mh_avdevice.cpp (modified) * trunk/libffado/src/motu/motu_avdevice.cpp (modified) * trunk/libffado/src/rme/rme_avdevice.cpp (modified) * trunk/libffado/src/SConscript (modified) * trunk/libffado/tests/test-ffado.cpp (modified) - fix bug introduced in previous commit - focusrite and terratec now have specific bebob devices 08/29/07 02:19:04 ppalmers [583] * trunk/libffado/src/bebob/bebob_avdevice.cpp (modified) * trunk/libffado/src/bebob/bebob_avdevice.h (modified) * trunk/libffado/src/bounce/bounce_avdevice.cpp (modified) * trunk/libffado/src/bounce/bounce_avdevice.h (modified) * trunk/libffado/src/bounce/bounce_slave_avdevice.cpp (modified) * trunk/libffado/src/bounce/bounce_slave_avdevice.h (modified) * trunk/libffado/src/devicemanager.cpp (modified) * trunk/libffado/src/dice/dice_avdevice.cpp (modified) * trunk/libffado/src/dice/dice_avdevice.h (modified) * trunk/libffado/src/ffadodevice.cpp (modified) * trunk/libffado/src/ffadodevice.h (modified) * trunk/libffado/src/genericavc/avc_avdevice.cpp (modified) * trunk/libffado/src/genericavc/avc_avdevice.h (modified) * trunk/libffado/src/maudio/maudio_avdevice.cpp (modified) * trunk/libffado/src/maudio/maudio_avdevice.h (modified) * trunk/libffado/src/metrichalo/mh_avdevice.cpp (modified) * trunk/libffado/src/metrichalo/mh_avdevice.h (modified) * trunk/libffado/src/motu/motu_avdevice.cpp (modified) * trunk/libffado/src/motu/motu_avdevice.h (modified) * trunk/libffado/src/rme/rme_avdevice.cpp (modified) * trunk/libffado/src/rme/rme_avdevice.h (modified) - Clean up the FFADODevice constructor to remove the nodeid that can be retrieved from the configrom. - Implement new method of creating devices: a device is supposed to implement the createDevice static method that should return an instance of itself or a subclass of itself. This should ease support for manufacturer specific customizations since we don't have to put them into the device manager class. 08/24/07 08:09:49 ppalmers [560] * trunk/libffado/src/bebob/bebob_avdevice.cpp (modified) * trunk/libffado/src/bebob/bebob_avdevice.h (modified) * trunk/libffado/src/devicemanager.cpp (modified) * trunk/libffado/src/devicemanager.h (modified) * trunk/libffado/src/ffadodevice.cpp (modified) * trunk/libffado/src/ffadodevice.h (modified) * trunk/libffado/src/genericavc/avc_avdevice.cpp (modified) * trunk/libffado/src/libavc/general/avc_plug.cpp (modified) * trunk/libffado/src/libavc/general/avc_plug.h (modified) * trunk/libffado/src/libavc/general/avc_subunit.cpp (modified) * trunk/libffado/src/libavc/general/avc_subunit.h (modified) * trunk/libffado/src/libavc/general/avc_unit.cpp (modified) * trunk/libffado/src/libavc/general/avc_unit.h (modified) * trunk/libffado/src/libieee1394/configrom.cpp (modified) * trunk/libffado/src/libieee1394/configrom.h (modified) * trunk/libffado/src/libieee1394/ieee1394service.cpp (modified) * trunk/libffado/src/libosc/OscNode.cpp (modified) * trunk/libffado/src/libosc/OscServer.cpp (modified) - Sort the FFADODevice vector on GUID before assigning device id's This results in the same device id for identical device setups, independent of the way they are connected or the node numbers they have been assigned. - Sanitized debug message reporting a bit - Cosmetic changes 08/22/07 10:15:34 ppalmers [554] * trunk/libffado/configure.ac (modified) * trunk/libffado/src/bebob-sync.cpp (modified) * trunk/libffado/src/bebob/bebob_avdevice.cpp (modified) * trunk/libffado/src/bebob/bebob_avdevice.h (modified) * trunk/libffado/src/bebob/bebob_avdevice_subunit.cpp (modified) * trunk/libffado/src/bebob/bebob_avdevice_subunit.h (modified) * trunk/libffado/src/bebob/bebob_avplug.cpp (modified) * trunk/libffado/src/bebob/bebob_avplug.h (modified) * trunk/libffado/src/bebob/bebob_dl_codes.cpp (modified) * trunk/libffado/src/bebob/bebob_dl_codes.h (modified) * trunk/libffado/src/bebob/bebob_dl_mgr.cpp (modified) * trunk/libffado/src/bebob/bebob_functionblock.cpp (modified) * trunk/libffado/src/bebob/bebob_functionblock.h (modified) * trunk/libffado/src/bebob/GenericMixer.cpp (modified) * trunk/libffado/src/bounce/bounce_avdevice.cpp (modified) * trunk/libffado/src/bounce/bounce_avdevice.h (modified) * trunk/libffado/src/debugmodule/debugmodule.cpp (modified) * trunk/libffado/src/debugmodule/debugmodule.h (modified) * trunk/libffado/src/devicemanager.cpp (modified) * trunk/libffado/src/devicemanager.h (modified) * trunk/libffado/src/dice/dice_avdevice.cpp (modified) * trunk/libffado/src/dice/dice_avdevice.h (modified) * trunk/libffado/src/ffado.cpp (modified) * trunk/libffado/src/ffadodevice.cpp (copied) * trunk/libffado/src/ffadodevice.h (copied) * trunk/libffado/src/ffado_streaming.cpp (modified) * trunk/libffado/src/genericavc (copied) * trunk/libffado/src/iavdevice.cpp (deleted) * trunk/libffado/src/iavdevice.h (deleted) * trunk/libffado/src/libavc/audiosubunit (copied) * trunk/libffado/src/libavc/avc_connect.cpp (deleted) * trunk/libffado/src/libavc/avc_connect.h (deleted) * trunk/libffado/src/libavc/avc_definitions.cpp (modified) * trunk/libffado/src/libavc/avc_definitions.h (modified) * trunk/libffado/src/libavc/avc_extended_cmd_generic.cpp (deleted) * trunk/libffado/src/libavc/avc_extended_cmd_generic.h (deleted) * trunk/libffado/src/libavc/avc_extended_plug_info.cpp (deleted) * trunk/libffado/src/libavc/avc_extended_plug_info.h (deleted) * trunk/libffado/src/libavc/avc_extended_stream_format.cpp (deleted) * trunk/libffado/src/libavc/avc_extended_stream_format.h (deleted) * trunk/libffado/src/libavc/avc_extended_subunit_info.cpp (deleted) * trunk/libffado/src/libavc/avc_extended_subunit_info.h (deleted) * trunk/libffado/src/libavc/avc_function_block.cpp (deleted) * trunk/libffado/src/libavc/avc_function_block.h (deleted) * trunk/libffado/src/libavc/avc_generic.cpp (deleted) * trunk/libffado/src/libavc/avc_generic.h (deleted) * trunk/libffado/src/libavc/avc_plug_info.cpp (deleted) * trunk/libffado/src/libavc/avc_plug_info.h (deleted) * trunk/libffado/src/libavc/avc_serialize.cpp (deleted) * trunk/libffado/src/libavc/avc_serialize.h (deleted) * trunk/libffado/src/libavc/avc_signal_source.cpp (deleted) * trunk/libffado/src/libavc/avc_signal_source.h (deleted) * trunk/libffado/src/libavc/avc_subunit_info.cpp (deleted) * trunk/libffado/src/libavc/avc_subunit_info.h (deleted) * trunk/libffado/src/libavc/avc_unit_info.cpp (deleted) * trunk/libffado/src/libavc/avc_unit_info.h (deleted) * trunk/libffado/src/libavc/ccm (copied) * trunk/libffado/src/libavc/descriptors (copied) * trunk/libffado/src/libavc/general (copied) * trunk/libffado/src/libavc/general/avc_plug.cpp (modified) * trunk/libffado/src/libavc/general/avc_subunit.cpp (modified) * trunk/libffado/src/libavc/general/avc_unit.cpp (modified) * trunk/libffado/src/libavc/general/avc_unit.h (modified) * trunk/libffado/src/libavc/musicsubunit (copied) * trunk/libffado/src/libavc/streamformat (copied) * trunk/libffado/src/libavc/util (copied) * trunk/libffado/src/libosc/OscClient.cpp (modified) * trunk/libffado/src/libstreaming/AmdtpPort.h (modified) * trunk/libffado/src/libstreaming/AmdtpPortInfo.h (modified) * trunk/libffado/src/libstreaming/AmdtpStreamProcessor.cpp (modified) * trunk/libffado/src/libstreaming/MotuPort.h (modified) * trunk/libffado/src/libstreaming/MotuPortInfo.h (modified) * trunk/libffado/src/libstreaming/Port.cpp (modified) * trunk/libffado/src/libstreaming/Port.h (modified) * trunk/libffado/src/libstreaming/PortManager.cpp (modified) * trunk/libffado/src/libstreaming/PortManager.h (modified) * trunk/libffado/src/libutil/TimestampedBuffer.h (modified) * trunk/libffado/src/Makefile.am (modified) * trunk/libffado/src/maudio/maudio_avdevice.cpp (modified) * trunk/libffado/src/maudio/maudio_avdevice.h (modified) * trunk/libffado/src/metrichalo/mh_avdevice.cpp (modified) * trunk/libffado/src/metrichalo/mh_avdevice.h (modified) * trunk/libffado/src/motu/motu_avdevice.cpp (modified) * trunk/libffado/src/motu/motu_avdevice.h (modified) * trunk/libffado/src/rme/rme_avdevice.cpp (modified) * trunk/libffado/src/rme/rme_avdevice.h (modified) * trunk/libffado/tests/Makefile.am (modified) * trunk/libffado/tests/streaming/testmidistreaming1.c (modified) * trunk/libffado/tests/streaming/teststreaming.c (modified) * trunk/libffado/tests/streaming/teststreaming2.c (modified) * trunk/libffado/tests/streaming/teststreaming3.c (modified) * trunk/libffado/tests/test-echo.cpp (added) * trunk/libffado/tests/test-ffado.cpp (modified) Merge echoaudio branch into trunk. This adds support for the Echo Audiofire devices to FFADO. Possibly also other devices working with the Apple Class Driver will work with this code. It is not fully complete yet, but the main rework is done. First of all the IAvDevice class/interface is renamed to FFADODevice, in order to separate the AV/C code from the FFADO API code. A device supported by FFADO implements a FFADODevice. The BeBoB device has been split up into three groups: - libavc/* : all code and commands that are specified by AV/C specs. Note that a lot of the code that used to be in BeBoB::AvDevice now resides in AVC::Unit - genericavc/* : a FFADODevice that uses AV/C descriptors & commands for discovery and config - bebob/* : the bebob FFADODevice that inherits from GenericAVC::AvDevice but that uses BridgeCo commands for discovery Everything has been moved as high as possible in the class hierarchy. If necessary, a subclass that uses device specific commands is introduced (e.g. BeBoB::Plug inherits from AVC::Plug and uses the BridgeCo extended plug info command to discover it's properties). There are some other fixes along the way that have been done too. 08/21/07 10:12:58 ppalmers [548] * branches/echoaudio/src/bebob/bebob_avdevice.cpp (modified) * branches/echoaudio/src/bebob/bebob_avdevice.h (modified) * branches/echoaudio/src/bebob/bebob_avplug.cpp (modified) * branches/echoaudio/src/bebob/bebob_avplug.h (modified) * branches/echoaudio/src/genericavc/avc_avdevice.cpp (modified) * branches/echoaudio/src/genericavc/avc_avdevice.h (modified) * branches/echoaudio/src/libavc/general/avc_plug.cpp (modified) * branches/echoaudio/src/libavc/general/avc_plug.h (modified) * branches/echoaudio/src/libavc/general/avc_unit.cpp (modified) * branches/echoaudio/src/libavc/general/avc_unit.h (modified) * branches/echoaudio/src/libavc/musicsubunit/avc_musicsubunit.cpp (modified) - make the BeBoB AvDevice a child class of the GenericAVC AvDevice. This avoids a lot of code duplication. - fix inconsistency in position/location numbering between ext pluginfo cmd and descriptor.