Changeset 2168

Show
Ignore:
Timestamp:
06/20/12 18:01:21 (12 years ago)
Author:
jwoithe
Message:

motu: add information which might permit the V4HD device to be detected. This device includes 4 sub-devices (its expected that only one is related to audio) and FFADO is not currently set up to deal with such structures in the configROM, so I suspect only the first sub-device will be reported. Note that even if it's detected we currently have no idea how to drive it - this addition is currently aimed at documenting the device's existance and to perhaps make further testing possible. This patch also adds a test for an unset model ID (ie: set to the 'none' identifier), which allows us to bail after device detection if no motu model ID has been set. This patch has only been compile-tested only at this stage.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/libffado/src/motu/motu_avdevice.cpp

    r2085 r2168  
    6666namespace Motu { 
    6767 
    68 // Define the supported devices.  Device ordering is arbitary here. 
     68// Define the supported devices.  Device ordering is arbitary here.  To include a MOTU 
     69// device which cannot yet be used (for identification purposes only), set the model 
     70// field to MOTU_MODEL_NONE. 
     71// 
     72// The V4HD device includes 4 sub-devices.  Include all in the definition as a way 
     73// of documenting it.  It's likely that only one of these is of interest for audio 
     74// but that's still to be determined. 
    6975static VendorModelEntry supportedDeviceList[] = 
    7076{ 
     
    8086    {FW_VENDORID_MOTU, 0, 0x00000019, 0x000001f2, MOTU_MODEL_ULTRALITEmk3, "MOTU", "UltraLiteMk3"}, 
    8187    {FW_VENDORID_MOTU, 0, 0x0000001b, 0x000001f2, MOTU_MODEL_TRAVELERmk3, "MOTU", "TravelerMk3"}, 
     88    {FW_VENDORID_MOTU, 0, 0x00000021, 0x000001f2, MOTU_MODEL_NONE, "MOTU", "V4HD subdevice 0"}, 
     89    {FW_VENDORID_MOTU, 0, 0x00000022, 0x000001f2, MOTU_MODEL_NONE, "MOTU", "V4HD subdevice 1"}, 
     90    {FW_VENDORID_MOTU, 0, 0x00000023, 0x000001f2, MOTU_MODEL_NONE, "MOTU", "V4HD subdevice 2"}, 
     91    {FW_VENDORID_MOTU, 0, 0x00000024, 0x000001f2, MOTU_MODEL_NONE, "MOTU", "V4HD subdevice 3"}, 
    8292    {FW_VENDORID_MOTU, 0, 0x00000030, 0x000001f2, MOTU_MODEL_ULTRALITEmk3_HYB, "MOTU", "UltraLiteMk3-hybrid"}, 
    8393}; 
     
    800810           ) 
    801811        { 
     812            if (supportedDeviceList[i].model == MOTU_MODEL_NONE) { 
     813                debugOutput( DEBUG_LEVEL_VERBOSE, "%s %s found but is not currently supported by FFADO\n", 
     814                    supportedDeviceList[i].vendor_name, supportedDeviceList[i].model_name); 
     815                debugOutput( DEBUG_LEVEL_VERBOSE, "  unitVersion=0x%08x\n", unitVersion); 
     816                return false; 
     817            } 
     818 
    802819            return true; 
    803820        } 
     
    840857    debugOutput( DEBUG_LEVEL_VERBOSE, "found %s %s\n", 
    841858        m_model->vendor_name, m_model->model_name); 
     859 
     860    if (m_motu_model == MOTU_MODEL_NONE) { 
     861        debugOutput( DEBUG_LEVEL_VERBOSE, "This MOTU device is not currently supported by FFADO\n"); 
     862        return false; 
     863    } 
    842864 
    843865    if (!buildMixer()) {