[wdmaudiodev] Re: Dynamic Audio Subdevices

  • From: uwekirst <u.kirst@xxxxxx>
  • To: wdmaudiodev@xxxxxxxxxxxxx
  • Date: Thu, 18 Nov 2010 10:54:23 +0100

I'm using the irp parameter of my device ioctl funktion which triggers
the Registering of the subdevices. Don't know whether this is important
or not,

/Uwe


Am 18.11.2010 10:06, schrieb Dang XiaoHui:
> thanks for reply.
>
> when the device reconnected, I just simply call the
> StartDevice(DeviceObject, NULL, NULL) with Irp=Null, and
> ResourceList=NULL .
> (StartDevice will call InstallSubdevice to create miniport )
>
> but the device in control panel > audio > play didn't show up as
> expected. What else should be done?
>
>
>
> 2010/11/18 uwekirst <u.kirst@xxxxxx <mailto:u.kirst@xxxxxx>>
>
>     Hello Danny,
>
>     I'm calling InstallSubdevice (look at one of the DDK examples),
>     which creates the miniport.
>
>     /Uwe
>
>
>     Am 18.11.2010 07:53, schrieb Dang XiaoHui:
>
>         Hello,
>
>         I'm working on a sound driver based on MSVAD simple for Win7.
>         The two filter is WaveCylic and Topology.
>
>         During the first time the device is been emulated by os,
>         StartDevice will 1)install MSVAD topology miniport. 2)install
>         MSVAD wavecyclic miniport. 3) RegisterPhysicalConnection
>         between wavecyclic and topology.
>
>         Since my driver can detect the physical connect and
>         disconnect, I want to notify OS that by unregister/register
>         those miniport and connection.
>
>         What I did is:
>         1) save topology miniport and wavecyclic pointer to Device
>         extension.
>         2) during disconnect: use the pointer saved in Device
>         extension To unregister topology-> wavecyclic->connection.
>         3) during connect: use the pointer saved in Device extension
>         To register topology-> wavecyclic->connection
>
>         the unregister works as expected. but after trying to
>         re-register those sub-device. I got the error similar to
>         
> //www.freelists.org/post/wdmaudiodev/WDM-Audio-Subdevice-registration-and-unregistration
>
>         STACK_TEXT:
>         8364392c 927204e4 85f4ba10 85f9b548 86f90c20
>         portcls!CPortFilterTopology::Init+0x1e
>         83643940 927203df 85f9b550 86f90c24 86f90c28
>         portcls!CPortTopology::NewIrpTarget+0x57
>         83643988 9272031c 85f9b550 86915548 85fadc00
>         portcls!xDispatchCreate+0xba
>         8364399c 9263aa9a 86915548 85fadc00 86915600
>         portcls!KsoDispatchCreate+0x17
>         836439c0 92636778 86915548 00000000 836439ec
>         ks!DispatchCreate+0xe0
>         836439d0 9271fcd8 86915548 85fadc00 86915548 ks!KsDispatchIrp+0x9f
>         836439ec 92724ff9 00000000 85fadc00 85f78610
>         portcls!DispatchCreate+0x4e
>         83643a04 92725cc8 86915548 85fadc00 83643a70
>         portcls!KsoDispatchIrp+0x3b
>         83643a14 8e5873d7 86915548 85fadc00 83643a7c
>         portcls!PcDispatchIrp+0x2d
>
>         how can i re-register the subdevice like the Startdevice did?
>         do I need to re-create miniport again?
>         Thanks!
>
>         sincerely
>
>         -- 
>         Danny
>
>
>     ******************
>
>     WDMAUDIODEV addresses:
>     Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx
>     <mailto:wdmaudiodev@xxxxxxxxxxxxx>
>     Subscribe: mailto:wdmaudiodev-request@xxxxxxxxxxxxx
>     <mailto:wdmaudiodev-request@xxxxxxxxxxxxx>?subject=subscribe
>     Unsubscribe: mailto:wdmaudiodev-request@xxxxxxxxxxxxx
>     <mailto:wdmaudiodev-request@xxxxxxxxxxxxx>?subject=unsubscribe
>     Moderator: mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx
>     <mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx>
>
>     URL to WDMAUDIODEV page:
>     http://www.wdmaudiodev.com/
>
>
>
>
> -- 
> 党晓辉

Other related posts: