PNP Fake Scsi Miniport again..

Hi ,
I am trying to run my Scsi miniport driver with Pnp Support on W2k…
I am able to present a Virtual HBA & Device on ISA bus as a legacy
miniport driver … in 2K
but when I enable Pnp support ( AdapterControl , Pnp Interface Reg
entries ),
my FindAdapter and AdapterInitialize are not called somehow…
Instead I get a assertion for Devnode->Flags …

It seems W2k detects the absence of HBA/Disk…??
any clues how to circumvent this …

TIA
Rahul Gupta

Hmmm … I am pulling this out of memory.

FindAdapter will be called in a PnP if all parts agree. You must define the
PnP interface calls in HW_INITIALIZE, and the PnpInterface settings in the
Services registery key must be a PNP type interface. Typically PCI is all
that will pass that test, at least that I have seen. Also, be sure that
Context passed to FindAdapter through ScsiPortInitialize is NULL and that
you are using the 2000 version of HW_INITIALIZE, the NT4 version is shorter.

All in all … this is difficult to do, given the lack of hardware for the
mini-port to control, and SCSIPORTS in bred abohrrence of virtual
mini-ports.

Gary G. Little
Have Computer, Will Travel …
909-698-3191
909-551-2105

“rahul.gupta” wrote in message
news:xxxxx@ntdev…
>
> Hi ,
> I am trying to run my Scsi miniport driver with Pnp Support on W2k…
> I am able to present a Virtual HBA & Device on ISA bus as a legacy
> miniport driver … in 2K
> but when I enable Pnp support ( AdapterControl , Pnp Interface Reg
> entries ),
> my FindAdapter and AdapterInitialize are not called somehow…
> Instead I get a assertion for Devnode->Flags …
>
> It seems W2k detects the absence of HBA/Disk…??
> any clues how to circumvent this …
>
>
> TIA
> Rahul Gupta
>
>
>
>
>
>
>
>

Rahul and I had been conducting this discussion outside of the group, but I
think it needs to be brought back, incase some else can contribute to the
discussion.

Rahul,

Be aware that a SCSI mini-port works differently under PnP. ScsiPort
Initlialize will function like a normal DriverEntry routine in that it hooks
AddDevice and any other DriverObject entry point needed. It will verify, set
up, and store away the HW_INITIALIZE_DATA you passed it and return
STATUS_SUCCESS if you correctly filled in that structure for PnP. Your
FindAdapter will NOT be called until SCSIPORT!AddDevice is called by the PnP
manager. FindAdapter and AdapterInitialize routines will then be called from
within SCSIPORT!AddDevice, but long after DriverEntry has returned
STATUS_SUCCESS.


Gary G. Little
Have Computer, Will Travel …
909-698-3191
909-551-2105
-----Original Message-----

From: rahul.gupta [mailto:xxxxx@dcmtech.co.in]

Sent: Friday, October 11, 2002 6:27 AM

To: Gary G. Little

Subject: Re: [ntdev] Re: PNP Fake Scsi Miniport again…

Gary,

I have already done that …

my question is …

scsi miniport returns with driver entry being called …with out calling

FindAdapter and AdapterInitialize …

I am assuming they will be invoked at some other time by PNP Manager …

but Given that I have no Adapter/Disk …

Will it ever get invoked …

or is there another way I can tell Pnp Manager to call my Find Adapter &

AdapterInitialize …

Any clue will be great help…

TIA

Rahul Gupta

Gary G. Little wrote:

Hmmm … I am pulling this out of memory.

FindAdapter will be called in a PnP if all parts agree. You must define
the

PnP interface calls in HW_INITIALIZE, and the PnpInterface settings in the

Services registery key must be a PNP type interface. Typically PCI is all

that will pass that test, at least that I have seen. Also, be sure that

Context passed to FindAdapter through ScsiPortInitialize is NULL and that

you are using the 2000 version of HW_INITIALIZE, the NT4 version is
shorter.

All in all … this is difficult to do, given the lack of hardware for the

mini-port to control, and SCSIPORTS in bred abohrrence of virtual

mini-ports.

Gary G. Little

Have Computer, Will Travel …

909-698-3191

909-551-2105

“rahul.gupta” wrote in message

> news:xxxxx@ntdev…

>

>> Hi ,

>> I am trying to run my Scsi miniport driver with Pnp Support on W2k…

>> I am able to present a Virtual HBA & Device on ISA bus as a legacy

>> miniport driver … in 2K

>> but when I enable Pnp support ( AdapterControl , Pnp Interface Reg

>> entries ),

>> my FindAdapter and AdapterInitialize are not called somehow…

>> Instead I get a assertion for Devnode->Flags …

>>

>> It seems W2k detects the absence of HBA/Disk…??

>> any clues how to circumvent this …

>>

>>

>> TIA

>> Rahul Gupta

>>

>>

>>

>>

>>

>>

>>

>>

>

>

>

> —

> You are currently subscribed to ntdev as: xxxxx@dcmtech.co.in

> To unsubscribe send a blank email to %%email.unsub%%

>

>

Gary / All,
At this point of time Does a deviceobject named scsiportxx ( as in
winobj) exist for the miniport driver whose driverentry is called in the
PNP Environment.
I am not able to see object named scsiportxx for my driver… is it a
expected behaviour.???

TIA
Rahul

Gary G. Little wrote:

Rahul and I had been conducting this discussion outside of the group, but I
think it needs to be brought back, incase some else can contribute to the
discussion.

Rahul,

Be aware that a SCSI mini-port works differently under PnP. ScsiPort
Initlialize will function like a normal DriverEntry routine in that it hooks
AddDevice and any other DriverObject entry point needed. It will verify, set
up, and store away the HW_INITIALIZE_DATA you passed it and return
STATUS_SUCCESS if you correctly filled in that structure for PnP. Your
FindAdapter will NOT be called until SCSIPORT!AddDevice is called by the PnP
manager. FindAdapter and AdapterInitialize routines will then be called from
within SCSIPORT!AddDevice, but long after DriverEntry has returned
STATUS_SUCCESS.


Gary G. Little
Have Computer, Will Travel …
909-698-3191
909-551-2105
-----Original Message-----

From: rahul.gupta [mailto:xxxxx@dcmtech.co.in]

Sent: Friday, October 11, 2002 6:27 AM

To: Gary G. Little

Subject: Re: [ntdev] Re: PNP Fake Scsi Miniport again…

Gary,

I have already done that …

my question is …

scsi miniport returns with driver entry being called …with out calling

FindAdapter and AdapterInitialize …

I am assuming they will be invoked at some other time by PNP Manager …

but Given that I have no Adapter/Disk …

Will it ever get invoked …

or is there another way I can tell Pnp Manager to call my Find Adapter &

AdapterInitialize …

Any clue will be great help…

TIA

Rahul Gupta

Gary G. Little wrote:

> Hmmm … I am pulling this out of memory.

> FindAdapter will be called in a PnP if all parts agree. You must define

the

> PnP interface calls in HW_INITIALIZE, and the PnpInterface settings in the

> Services registery key must be a PNP type interface. Typically PCI is all

> that will pass that test, at least that I have seen. Also, be sure that

> Context passed to FindAdapter through ScsiPortInitialize is NULL and that

> you are using the 2000 version of HW_INITIALIZE, the NT4 version is

shorter.

> All in all … this is difficult to do, given the lack of hardware for the

> mini-port to control, and SCSIPORTS in bred abohrrence of virtual

> mini-ports.

> Gary G. Little

> Have Computer, Will Travel …

> 909-698-3191

> 909-551-2105

> “rahul.gupta” wrote in message
>
>> news:xxxxx@ntdev…
>
>>> Hi ,
>>
>>> I am trying to run my Scsi miniport driver with Pnp Support on W2k…
>>
>>> I am able to present a Virtual HBA & Device on ISA bus as a legacy
>>
>>> miniport driver … in 2K
>>
>>> but when I enable Pnp support ( AdapterControl , Pnp Interface Reg
>>
>>> entries ),
>>
>>> my FindAdapter and AdapterInitialize are not called somehow…
>>
>>> Instead I get a assertion for Devnode->Flags …
>>
>>> It seems W2k detects the absence of HBA/Disk…??
>>
>>> any clues how to circumvent this …
>>
>>> TIA
>>
>>> Rahul Gupta
>>
>> —
>
>> You are currently subscribed to ntdev as: xxxxx@dcmtech.co.in
>
>> To unsubscribe send a blank email to %%email.unsub%%
>
>
>
>
>
>
>
>
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@dcmtech.co.in
> To unsubscribe send a blank email to %%email.unsub%%
>
>

Rahul,

Remember, a mini-port really has an ass-backwards relationship with
SCSIPORT. Even though it has the DriverEntry routine, it really is the DLL
that SCSIPORT uses to talk to the hardware. DEVTREE would be better to use
than WinObj, which is more of an NT4 tool.


Gary G. Little
Have Computer, Will Travel …
909-698-3191
909-551-2105

“rahul.gupta” wrote in message
news:xxxxx@ntdev…
>
> Gary / All,
> At this point of time Does a deviceobject named scsiportxx ( as in
> winobj) exist for the miniport driver whose driverentry is called in the
> PNP Environment.
> I am not able to see object named scsiportxx for my driver… is it a
> expected behaviour.???
>
>
> TIA
> Rahul
>
>
>
>
> Gary G. Little wrote:
>
> > Rahul and I had been conducting this discussion outside of the group,
but I
> > think it needs to be brought back, incase some else can contribute to
the
> > discussion.
> >
> > Rahul,
> >
> > Be aware that a SCSI mini-port works differently under PnP. ScsiPort
> > Initlialize will function like a normal DriverEntry routine in that it
hooks
> > AddDevice and any other DriverObject entry point needed. It will verify,
set
> > up, and store away the HW_INITIALIZE_DATA you passed it and return
> > STATUS_SUCCESS if you correctly filled in that structure for PnP. Your
> > FindAdapter will NOT be called until SCSIPORT!AddDevice is called by the
PnP
> > manager. FindAdapter and AdapterInitialize routines will then be called
from
> > within SCSIPORT!AddDevice, but long after DriverEntry has returned
> > STATUS_SUCCESS.
> >
> > –
> > Gary G. Little
> > Have Computer, Will Travel …
> > 909-698-3191
> > 909-551-2105
> > -----Original Message-----
> >
> > From: rahul.gupta [mailto:xxxxx@dcmtech.co.in]
> >
> > Sent: Friday, October 11, 2002 6:27 AM
> >
> > To: Gary G. Little
> >
> > Subject: Re: [ntdev] Re: PNP Fake Scsi Miniport again…
> >
> >
> >
> > Gary,
> >
> > I have already done that …
> >
> > my question is …
> >
> > scsi miniport returns with driver entry being called …with out calling
> >
> > FindAdapter and AdapterInitialize …
> >
> > I am assuming they will be invoked at some other time by PNP Manager …
> >
> > but Given that I have no Adapter/Disk …
> >
> > Will it ever get invoked …
> >
> > or is there another way I can tell Pnp Manager to call my Find Adapter &
> >
> > AdapterInitialize …
> >
> > Any clue will be great help…
> >
> > TIA
> >
> > Rahul Gupta
> >
> >
> >
> >
> >
> > Gary G. Little wrote:
> >
> >> Hmmm … I am pulling this out of memory.
> >
> >> FindAdapter will be called in a PnP if all parts agree. You must define
> >
> > the
> >
> >> PnP interface calls in HW_INITIALIZE, and the PnpInterface settings in
the
> >
> >> Services registery key must be a PNP type interface. Typically PCI is
all
> >
> >> that will pass that test, at least that I have seen. Also, be sure that
> >
> >> Context passed to FindAdapter through ScsiPortInitialize is NULL and
that
> >
> >> you are using the 2000 version of HW_INITIALIZE, the NT4 version is
> >
> > shorter.
> >
> >> All in all … this is difficult to do, given the lack of hardware for
the
> >
> >> mini-port to control, and SCSIPORTS in bred abohrrence of virtual
> >
> >> mini-ports.
> >
> >> Gary G. Little
> >
> >> Have Computer, Will Travel …
> >
> >> 909-698-3191
> >
> >> 909-551-2105
> >
> >> “rahul.gupta” wrote in message
> >
> >> news:xxxxx@ntdev…
> >
> >>> Hi ,
> >>
> >>> I am trying to run my Scsi miniport driver with Pnp Support on W2k…
> >>
> >>> I am able to present a Virtual HBA & Device on ISA bus as a legacy
> >>
> >>> miniport driver … in 2K
> >>
> >>> but when I enable Pnp support ( AdapterControl , Pnp Interface Reg
> >>
> >>> entries ),
> >>
> >>> my FindAdapter and AdapterInitialize are not called somehow…
> >>
> >>> Instead I get a assertion for Devnode->Flags …
> >>
> >>> It seems W2k detects the absence of HBA/Disk…??
> >>
> >>> any clues how to circumvent this …
> >>
> >>> TIA
> >>
> >>> Rahul Gupta
> >>
> >> —
> >
> >> You are currently subscribed to ntdev as: xxxxx@dcmtech.co.in
> >
> >> To unsubscribe send a blank email to %%email.unsub%%
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > —
> > You are currently subscribed to ntdev as: xxxxx@dcmtech.co.in
> > To unsubscribe send a blank email to %%email.unsub%%
> >
> >
>
>
>
>
>