[wdmaudiodev] Re: connect menu won't show up in windows8 RP

  • From: Danny <dangxhfromuestc@xxxxxxxxx>
  • To: wdmaudiodev@xxxxxxxxxxxxx
  • Date: Thu, 22 Nov 2012 13:40:34 +0800

The KsStudio log of driver A and driver B looks the same.

Machine Name = TEST
KS Studio started at 11:03:52 on 11/22/2012

------------------------------
Enumerating devices via Setup APIs
  Enumerating class KSCATEGORY_AUDIO:
      Enumerated [HD Audio Microphone mixer]
\\?\hdaudio#func_01&ven_10ec&dev_0269&subsys_10280400&rev_1001#4&dd1b1a&0&0001#{6994ad04-93ef-11d0-a3cc-00a0c9223196}\emicintopo
      Enumerated [HD Audio Headphone/Speakers mixer]
\\?\hdaudio#func_01&ven_10ec&dev_0269&subsys_10280400&rev_1001#4&dd1b1a&0&0001#{6994ad04-93ef-11d0-a3cc-00a0c9223196}\eduplicatedhplineouttopo
      Enumerated [HD Audio Speaker]
\\?\hdaudio#func_01&ven_10ec&dev_0269&subsys_10280400&rev_1001#4&dd1b1a&0&0001#{6994ad04-93ef-11d0-a3cc-00a0c9223196}\espeakerwave
      Enumerated [HD Audio Microphone 2 mixer]
\\?\hdaudio#func_01&ven_10ec&dev_0269&subsys_10280400&rev_1001#4&dd1b1a&0&0001#{6994ad04-93ef-11d0-a3cc-00a0c9223196}\emicin2topo
      Enumerated [HD Audio Headphone/Speakers]
\\?\hdaudio#func_01&ven_10ec&dev_0269&subsys_10280400&rev_1001#4&dd1b1a&0&0001#{6994ad04-93ef-11d0-a3cc-00a0c9223196}\eduplicatedhplineoutwave
      Enumerated [HD Audio Speaker mixer]
\\?\hdaudio#func_01&ven_10ec&dev_0269&subsys_10280400&rev_1001#4&dd1b1a&0&0001#{6994ad04-93ef-11d0-a3cc-00a0c9223196}\espeakertopo
SetupDiOpenDeviceInterfaceRegKey failed
      Enumerated [???]
\\?\bthenum#{0000XXXX-0000-1000-8000-00805f9b34fb}_vid&0001000f_pid&0000#7&2eadb04a&0&00241c9233c3_c00000000#{6994ad04-93ef-11d0-a3cc-00a0c9223196}\topology
SetupDiOpenDeviceInterfaceRegKey failed
      Enumerated [???]
\\?\bthenum#{0000YYYY-0000-1000-8000-00805f9b34fb}_vid&0001000f_pid&0000#7&2eadb04a&0&00241c9233c3_c00000000#{6994ad04-93ef-11d0-a3cc-00a0c9223196}\topology
SetupDiEnumDeviceInterfaces failed
GetDeviceDetails failed.
  Enumerating class KSCATEGORY_BRIDGE:
SetupDiEnumDeviceInterfaces failed
GetDeviceDetails failed.

------------------------------
Instantiating Filter: "???"

------------------------------
Profiling filter
"\\?\bthenum#{0000YYYY-0000-1000-8000-00805f9b34fb}_vid&0001000f_pid&0000#7&2eadb04a&0&00241c9233c3_c00000000#{6994ad04-93ef-11d0-a3cc-00a0c9223196}\topology"
Getting property KSPROPERTY_TYPE_SETSUPPORT:
Filter Property set supported:
        KSPROPSETID_Pin
        KSPROPSETID_Topology
        KSPROPSETID_Jack
        {7fa06c40-b8f6-4c7e-8556-e8c33a12e54d}

Getting event KSEVENT_TYPE_SETSUPPORT:
Filter Event set supported:

          Getting property KSPROPERTY_PIN_CTYPES
Getting property KSPROPSETID_Topology.KSPROPERTY_TOPOLOGY_CATEGORIES
          Getting property KSPROPERTY_TOPOLOGY_CATEGORIES
          Got KSPROPERTY_TOPOLOGY_CATEGORIES:
Getting property KSPROPSETID_Topology.KSPROPERTY_TOPOLOGY_NODES
          Getting property KSPROPERTY_TOPOLOGY_NODES
          Got KSPROPERTY_TOPOLOGY_NODES:
            No items
Getting property KSPROPSETID_Topology.KSPROPERTY_TOPOLOGY_CONNECTIONS
          Getting property KSPROPERTY_TOPOLOGY_CONNECTIONS
          Got KSPROPERTY_TOPOLOGY_CONNECTIONS:
PIN [0]    (pin 1 of 2)
          Getting property KSPROPERTY_PIN_INTERFACES
          Got KSPROPERTY_PIN_INTERFACES:
          Getting property KSPROPERTY_PIN_MEDIUMS
          Got KSPROPERTY_PIN_MEDIUMS:
          Getting property KSPROPERTY_PIN_DATARANGES
          Got KSPROPERTY_PIN_DATARANGES:
          Getting property KSPROPERTY_PIN_CONSTRAINEDDATARANGES
Failed to get property KSPROPSETID_Pin.KSPROPERTY_PIN_CONSTRAINEDDATARANGES
          Getting property KSPROPERTY_PIN_DATAFLOW
          Getting property KSPROPERTY_PIN_COMMUNICATION
          Getting property KSPROPERTY_PIN_CINSTANCES
          Getting property KSPROPERTY_PIN_GLOBALCINSTANCES
          Getting property KSPROPERTY_PIN_NECESSARYINSTANCES
          Getting property KSPROPERTY_PIN_PHYSICALCONNECTION
Failed to get property KSPROPSETID_Pin.KSPROPERTY_PIN_PHYSICALCONNECTION
          Getting property KSPROPERTY_PIN_CATEGORY
          Getting property KSPROPERTY_PIN_NAME
Failed to get property KSPROPSETID_Pin.KSPROPERTY_PIN_NAME
          Getting property KSPROPERTY_JACK_DESCRIPTION
Failed to get property KSPROPSETID_Jack.KSPROPERTY_JACK_DESCRIPTION
PIN [1]    (pin 2 of 2)
          Getting property KSPROPERTY_PIN_INTERFACES
          Got KSPROPERTY_PIN_INTERFACES:
          Getting property KSPROPERTY_PIN_MEDIUMS
          Got KSPROPERTY_PIN_MEDIUMS:
          Getting property KSPROPERTY_PIN_DATARANGES
          Got KSPROPERTY_PIN_DATARANGES:
          Getting property KSPROPERTY_PIN_CONSTRAINEDDATARANGES
Failed to get property KSPROPSETID_Pin.KSPROPERTY_PIN_CONSTRAINEDDATARANGES
          Getting property KSPROPERTY_PIN_DATAFLOW
          Getting property KSPROPERTY_PIN_COMMUNICATION
          Getting property KSPROPERTY_PIN_CINSTANCES
          Getting property KSPROPERTY_PIN_GLOBALCINSTANCES
          Getting property KSPROPERTY_PIN_NECESSARYINSTANCES
          Getting property KSPROPERTY_PIN_PHYSICALCONNECTION
Failed to get property KSPROPSETID_Pin.KSPROPERTY_PIN_PHYSICALCONNECTION
          Getting property KSPROPERTY_PIN_CATEGORY
          Getting property KSPROPERTY_PIN_NAME
          Got KSPROPERTY_PIN_NAME:
          Getting property KSPROPERTY_JACK_DESCRIPTION
          Got KSPROPERTY_JACK_DESCRIPTION:
          Getting property KSPROPERTY_PIN_CINSTANCES
          Getting property KSPROPERTY_PIN_GLOBALCINSTANCES
          Getting property KSPROPERTY_PIN_NECESSARYINSTANCES
          Getting property KSPROPERTY_PIN_CINSTANCES
          Getting property KSPROPERTY_PIN_GLOBALCINSTANCES
          Getting property KSPROPERTY_PIN_NECESSARYINSTANCES
 Misc. Supported PropertySets
         KSStudio does not recognize PropertySet GUID
{7fa06c40-b8f6-4c7e-8556-e8c33a12e54d} supported by the filter
This is not a driver bug.

------------------------------
Instantiating Filter: "???"

------------------------------
Profiling filter
"\\?\bthenum#{0000XXXX-0000-1000-8000-00805f9b34fb}_vid&0001000f_pid&0000#7&2eadb04a&0&00241c9233c3_c00000000#{6994ad04-93ef-11d0-a3cc-00a0c9223196}\topology"
Getting property KSPROPERTY_TYPE_SETSUPPORT:
Filter Property set supported:
        KSPROPSETID_Pin
        KSPROPSETID_Topology
        KSPROPSETID_Jack
        {7fa06c40-b8f6-4c7e-8556-e8c33a12e54d}

Getting event KSEVENT_TYPE_SETSUPPORT:
Filter Event set supported:

          Getting property KSPROPERTY_PIN_CTYPES
Getting property KSPROPSETID_Topology.KSPROPERTY_TOPOLOGY_CATEGORIES
          Getting property KSPROPERTY_TOPOLOGY_CATEGORIES
          Got KSPROPERTY_TOPOLOGY_CATEGORIES:
Getting property KSPROPSETID_Topology.KSPROPERTY_TOPOLOGY_NODES
          Getting property KSPROPERTY_TOPOLOGY_NODES
          Got KSPROPERTY_TOPOLOGY_NODES:
            No items
Getting property KSPROPSETID_Topology.KSPROPERTY_TOPOLOGY_CONNECTIONS
          Getting property KSPROPERTY_TOPOLOGY_CONNECTIONS
          Got KSPROPERTY_TOPOLOGY_CONNECTIONS:
PIN [0]    (pin 1 of 2)
          Getting property KSPROPERTY_PIN_INTERFACES
          Got KSPROPERTY_PIN_INTERFACES:
          Getting property KSPROPERTY_PIN_MEDIUMS
          Got KSPROPERTY_PIN_MEDIUMS:
          Getting property KSPROPERTY_PIN_DATARANGES
          Got KSPROPERTY_PIN_DATARANGES:
          Getting property KSPROPERTY_PIN_CONSTRAINEDDATARANGES
Failed to get property KSPROPSETID_Pin.KSPROPERTY_PIN_CONSTRAINEDDATARANGES
          Getting property KSPROPERTY_PIN_DATAFLOW
          Getting property KSPROPERTY_PIN_COMMUNICATION
          Getting property KSPROPERTY_PIN_CINSTANCES
          Getting property KSPROPERTY_PIN_GLOBALCINSTANCES
          Getting property KSPROPERTY_PIN_NECESSARYINSTANCES
          Getting property KSPROPERTY_PIN_PHYSICALCONNECTION
Failed to get property KSPROPSETID_Pin.KSPROPERTY_PIN_PHYSICALCONNECTION
          Getting property KSPROPERTY_PIN_CATEGORY
          Getting property KSPROPERTY_PIN_NAME
Failed to get property KSPROPSETID_Pin.KSPROPERTY_PIN_NAME
          Getting property KSPROPERTY_JACK_DESCRIPTION
Failed to get property KSPROPSETID_Jack.KSPROPERTY_JACK_DESCRIPTION
PIN [1]    (pin 2 of 2)
          Getting property KSPROPERTY_PIN_INTERFACES
          Got KSPROPERTY_PIN_INTERFACES:
          Getting property KSPROPERTY_PIN_MEDIUMS
          Got KSPROPERTY_PIN_MEDIUMS:
          Getting property KSPROPERTY_PIN_DATARANGES
          Got KSPROPERTY_PIN_DATARANGES:
          Getting property KSPROPERTY_PIN_CONSTRAINEDDATARANGES
Failed to get property KSPROPSETID_Pin.KSPROPERTY_PIN_CONSTRAINEDDATARANGES
          Getting property KSPROPERTY_PIN_DATAFLOW
          Getting property KSPROPERTY_PIN_COMMUNICATION
          Getting property KSPROPERTY_PIN_CINSTANCES
          Getting property KSPROPERTY_PIN_GLOBALCINSTANCES
          Getting property KSPROPERTY_PIN_NECESSARYINSTANCES
          Getting property KSPROPERTY_PIN_PHYSICALCONNECTION
Failed to get property KSPROPSETID_Pin.KSPROPERTY_PIN_PHYSICALCONNECTION
          Getting property KSPROPERTY_PIN_CATEGORY
          Getting property KSPROPERTY_PIN_NAME
          Got KSPROPERTY_PIN_NAME:
          Getting property KSPROPERTY_JACK_DESCRIPTION
          Got KSPROPERTY_JACK_DESCRIPTION:
          Getting property KSPROPERTY_PIN_CINSTANCES
          Getting property KSPROPERTY_PIN_GLOBALCINSTANCES
          Getting property KSPROPERTY_PIN_NECESSARYINSTANCES
          Getting property KSPROPERTY_PIN_CINSTANCES
          Getting property KSPROPERTY_PIN_GLOBALCINSTANCES
          Getting property KSPROPERTY_PIN_NECESSARYINSTANCES
 Misc. Supported PropertySets
         KSStudio does not recognize PropertySet GUID
{7fa06c40-b8f6-4c7e-8556-e8c33a12e54d} supported by the filter
This is not a driver bug.


7fa06c40-b8f6-4c7e-8556-e8c33a12e54d is the GUID BtAudio.

so I changed the handler function to another
function: PropertyHandler_BtAudio as the following code:
static
PCPROPERTY_ITEM PropertiesTopoFilter[] =
{
{
&KSPROPSETID_Jack,
KSPROPERTY_JACK_DESCRIPTION,
KSPROPERTY_TYPE_GET | KSPROPERTY_TYPE_BASICSUPPORT,
PropertyHandler_TopoFilter
},
{
&KSPROPSETID_Jack,
KSPROPERTY_JACK_DESCRIPTION2,
KSPROPERTY_TYPE_GET | KSPROPERTY_TYPE_BASICSUPPORT,
PropertyHandler_TopoFilter
},
{
&KSPROPSETID_BtAudio,
KSPROPERTY_ONESHOT_RECONNECT,
KSPROPERTY_TYPE_GET | KSPROPERTY_TYPE_BASICSUPPORT,
PropertyHandler_BtAudio
},
{
&KSPROPSETID_BtAudio,
KSPROPERTY_ONESHOT_DISCONNECT,
KSPROPERTY_TYPE_GET | KSPROPERTY_TYPE_BASICSUPPORT,
PropertyHandler_BtAudio
}
};

then bp at CMiniportTopology::Init, I can see that the KSPROPSETID_BtAudio
is registered, but FailedVirtualDriver!PropertyHandler_BtAudio is never get
called by audio stack.

dt 0xab1a2110 PCPROPERTY_ITEM
FailedVirtualDriver!PCPROPERTY_ITEM
   +0x000 Set              : 0xab1a1ba8 _GUID
{4509f757-2d46-4637-8e62-ce7db944f57b}
   +0x004 Id               : 1
   +0x008 Flags            : 0x201
   +0x00c Handler          : 0xab1a7d24     long
 FailedVirtualDriver!PropertyHandler_TopoFilter+0
1: kd> dt 0xab1a2130 PCPROPERTY_ITEM
FailedVirtualDriver!PCPROPERTY_ITEM
   +0x000 Set              : 0xab1a1b98 _GUID
{7fa06c40-b8f6-4c7e-8556-e8c33a12e54d}
   +0x004 Id               : 0
   +0x008 Flags            : 0x201
   +0x00c Handler          : 0xab1a7eb6     long
 FailedVirtualDriver!PropertyHandler_BtAudio+0
1: kd> bp FailedVirtualDriver!PropertyHandler_BtAudio
1: kd> bl
 0 e ab1a769a [e:\btsw\hostsw\profiles\audio\hfp\source\mintopo.cpp @ 229]
   0001 (0001) FailedVirtualDriver!CMiniportTopology::Init
 1 e ab1a7eb6 [e:\btsw\hostsw\profiles\audio\hfp\source\mintopo.cpp @ 754]
   0001 (0001) FailedVirtualDriver!PropertyHandler_BtAudio


-- 
Danny

Other related posts: