From: skarthikselvan on
Hi All,

1) I included #include <wdm.h> and #include <storport.h> in my
VMiniport driver. I am not including <miniport.h> in VMiniport driver
because I can't include wdm.h and miniport.h together. Since I don't
have any code example, I am proceeding like this.

2) I provided AddDevice() and PnP entry points to my VMiniport driver.
Power and PnP can come via StorPort Driver through HwAdapterControl
entry point. Depending upon SCSI_ADAPTER_CONTROL_TYPE in this call, I
have to handle PnP and power. My driver will also directly gets calls
from PnP.

Since I don't have any sample code in DDK, Can anybody confirm me
whether my understanding is right?

Thanks
karthikselvan
From: GNR on
"skarthikselvan(a)gmail.com" wrote:

> Hi All,
>
> 1) I included #include <wdm.h> and #include <storport.h> in my
> VMiniport driver. I am not including <miniport.h> in VMiniport driver
> because I can't include wdm.h and miniport.h together. Since I don't
> have any code example, I am proceeding like this.
Why can't you only have <miniport.h>?
>
> 2) I provided AddDevice() and PnP entry points to my VMiniport driver.
> Power and PnP can come via StorPort Driver through HwAdapterControl
> entry point. Depending upon SCSI_ADAPTER_CONTROL_TYPE in this call, I
> have to handle PnP and power. My driver will also directly gets calls
> from PnP.
Is it not possible for you to implement a Storport-Miniport as a virtual
driver? You anyway have to install it manually.

>
> Since I don't have any sample code in DDK, Can anybody confirm me
> whether my understanding is right?
>
> Thanks
> karthikselvan
>
From: skarthikselvan on

>
> Why can't you only have <miniport.h>?
<karthikselvan> I have to call functions like StorPortInitialize()
present in Storport driver so I can't only have miniport.h

>
> > 2) I provided AddDevice() and PnP entry points to my VMiniport driver.
> > Power and PnP can come via StorPort Driver through HwAdapterControl
> > entry point. Depending upon SCSI_ADAPTER_CONTROL_TYPE in this call, I
> > have to handle PnP and power. My driver will also directly gets calls
> > from PnP.
>
> Is it not possible for you to implement a Storport-Miniport as a virtual
> driver? You anyway have to install it manually.

<karthikselvan> It is a virtual miniport storport driver. It is not
just a virtual driver.

>
>
> > Since I don't have any sample code in DDK, Can anybody confirm me
> > whether my understanding is right?
>
> > Thanks
> > karthikselvan

From: GNR on
"skarthikselvan(a)gmail.com" wrote:

>
> >
> > Why can't you only have <miniport.h>?
> <karthikselvan> I have to call functions like StorPortInitialize()
> present in Storport driver so I can't only have miniport.h
I am asking about miniport.h instead of wdm.h. storport.h is anyway required
>
> >
> > > 2) I provided AddDevice() and PnP entry points to my VMiniport driver.
> > > Power and PnP can come via StorPort Driver through HwAdapterControl
> > > entry point. Depending upon SCSI_ADAPTER_CONTROL_TYPE in this call, I
> > > have to handle PnP and power. My driver will also directly gets calls
> > > from PnP.
> >
> > Is it not possible for you to implement a Storport-Miniport as a virtual
> > driver? You anyway have to install it manually.
>
> <karthikselvan> It is a virtual miniport storport driver. It is not
> just a virtual driver.
i am also talking about a virtual storport-miniport driver. Why is it
required to be a WDM driver?
>
> >
> >
> > > Since I don't have any sample code in DDK, Can anybody confirm me
> > > whether my understanding is right?
> >
> > > Thanks
> > > karthikselvan
>
>
From: skarthikselvan on
On May 20, 10:17 am, GNR <G...(a)discussions.microsoft.com> wrote:
> "skarthiksel...(a)gmail.com" wrote:
>
> > > Why can't you only have <miniport.h>?
> > <karthikselvan> I have to call functions like StorPortInitialize()
> > present in Storport driver so I can't only have miniport.h
>
> I am asking about miniport.h instead of wdm.h. storport.h is anyway required
If I include only miniport.h and storport.h, I can't include safe
string ntstrsafe.h file (Ntdef repeatedly defined in these header
files). Safe string operations are important because I am doing lot of
string operations for iSCSI. Another important point is I receive PNP
IRPs from PnP if my StorPort attachment fails.

> > > Is it not possible for you to implement a Storport-Miniport as a virtual
> > > driver? You anyway have to install it manually.
>
> > <karthikselvan> It is a virtual miniport storport driver. It is not
> > just a virtual driver.
>
> i am also talking about a virtual storport-miniport driver. Why is it
> required to be a WDM driver?

<karthikselvan> There is no requirement to be a WDM driver. I thought
about virtual driver first and finally moved towards WDM because the
interfaces are clear, all error paths are handled and plenty of
documentations are available in DDK.
If Microsoft says, WDM driver can't used as a Virtual Storport
miniport driver, I have to change my design. To be a WDM, all I have
to do is implement some entry points.

Let me know if I miss something.