Windows System Software -- Consulting, Training, Development -- Unique Expertise, Guaranteed Results

Home NTDEV
Before Posting...
Please check out the Community Guidelines in the Announcements and Administration Category.

Help for SCSI mini port driver!

OSR_Community_UserOSR_Community_User Member Posts: 110,217
hi all,

I want to develop a SCSI mini port driver to support a virtual HBA. And
the biggest problem I'm facing is, how can my mini port driver inform
windows 2000 to create PDO and FDO for the virtual harddisks attached to the
virtual HBA?

any suggestion is appreciated!
Thanks in advance!

Best Regards
HuangTM

Comments

  • OSR_Community_UserOSR_Community_User Member Posts: 110,217
    you need to take a closer look at the Scsi Miniport spec. The port driver
    totally isolates the miniport from having to worry about creating PDO's and
    FDO's.

    look at the ddk it has plenty of information to get you started.

    calling scsiportinitialize from your driver entry will get your
    HwFindAdapter entry point called. If you return SP_FOUND from HwFindAdapter
    the ScsiPort will create an FDO for you .

    Later the scsi port calls you back with inquiry commands to each LUN. For
    every LUN it finds it creates a PDO.

    Daniel Nemiroff
    System Software Engineering
    Intel Corp.
    (916)356-5723

    -----Original Message-----
    From: HuangTM [mailto:[email protected]]
    Sent: Thursday, February 24, 2000 6:09 PM
    To: NT Developers Interest List
    Subject: [ntdev] Help for SCSI mini port driver!
    Importance: High


    hi all,

    I want to develop a SCSI mini port driver to support a virtual HBA. And
    the biggest problem I'm facing is, how can my mini port driver inform
    windows 2000 to create PDO and FDO for the virtual harddisks attached to the
    virtual HBA?

    any suggestion is appreciated!
    Thanks in advance!

    Best Regards
    HuangTM


    ---
    You are currently subscribed to ntdev as: [email protected]
    To unsubscribe send a blank email to $subst('Email.Unsub')
  • OSR_Community_UserOSR_Community_User Member Posts: 110,217
    > windows 2000 to create PDO and FDO for the virtual harddisks attached to
    the
    > virtual HBA?

    AFAIK this is handled automatically by SCSIPORT (who knows the
    inquiry data anyway) if you have a correct miniport.

    Max
  • OSR_Community_UserOSR_Community_User Member Posts: 110,217
    I don't think SCSIPORT issues IOCTL_SCSI_GET_INQUIRY_DATA to itself.
    However . . .

    I'm basing the following on what I've learned writing a miniport while
    spending evenings thinking about how I'd write a port driver.

    I believe, after calling HwFindAdapter ScsiPort enters a loop, sending
    INQUIRY commands to the miniport until it finds no more LUNs. For each LUN
    it finds it creates a deviceObject. I also believe this should be done
    inside a IRP_MN_QUERY_DEVICE_RELATIONS Irp. You can't filter this process.

    Daniel Nemiroff
    System Software Engineering
    Intel Corp.
    (916)356-5723

    -----Original Message-----
    From: COX,DAVID (HP-Roseville,ex1) [mailto:[email protected]]
    Sent: Friday, February 25, 2000 12:15 PM
    To: 'xxxxx[email protected]'
    Subject: RE: [ntdev] RE: Help for SCSI mini port driver!


    Since you're on the subject:

    Do you know if SCSIPORT issues IOCTL_SCSI_GET_INQUIRY_DATA to itself to
    get the LUN list (thereby allowing filter drivers to modify the data
    before PDOs are created)?

    And is there any way any driver other than the miniport can trigger
    SCSIPORT to remove existing PDOs and associated device stacks?

    Thanks.

    -----------------------------------------------------------------------
    Dave Cox
    Hewlett-Packard Co.
    ESBU/SSMO (Santa Barbara)


    -----Original Message-----
    From: Nemiroff, Daniel [mailto:[email protected]]
    Sent: Friday, February 25, 2000 8:50 AM
    To: NT Developers Interest List
    Subject: [ntdev] RE: Help for SCSI mini port driver!


    you need to take a closer look at the Scsi Miniport spec. The port driver
    totally isolates the miniport from having to worry about creating PDO's and
    FDO's.

    look at the ddk it has plenty of information to get you started.

    calling scsiportinitialize from your driver entry will get your
    HwFindAdapter entry point called. If you return SP_FOUND from HwFindAdapter
    the ScsiPort will create an FDO for you .

    Later the scsi port calls you back with inquiry commands to each LUN. For
    every LUN it finds it creates a PDO.

    Daniel Nemiroff
    System Software Engineering
    Intel Corp.
    (916)356-5723
  • OSR_Community_UserOSR_Community_User Member Posts: 110,217
    It is true for most HBAs except USB SCSI adapter.

    James

    -----Original Message-----
    From: Nemiroff, Daniel [mailto:[email protected]]
    Sent: Friday, February 25, 2000 8:50 AM
    To: NT Developers Interest List
    Subject: [ntdev] RE: Help for SCSI mini port driver!


    you need to take a closer look at the Scsi Miniport spec. The port driver
    totally isolates the miniport from having to worry about creating PDO's and
    FDO's.

    look at the ddk it has plenty of information to get you started.

    calling scsiportinitialize from your driver entry will get your
    HwFindAdapter entry point called. If you return SP_FOUND from HwFindAdapter
    the ScsiPort will create an FDO for you .

    Later the scsi port calls you back with inquiry commands to each LUN. For
    every LUN it finds it creates a PDO.

    Daniel Nemiroff
    System Software Engineering
    Intel Corp.
    (916)356-5723

    -----Original Message-----
    From: HuangTM [mailto:[email protected]]
    Sent: Thursday, February 24, 2000 6:09 PM
    To: NT Developers Interest List
    Subject: [ntdev] Help for SCSI mini port driver!
    Importance: High


    hi all,

    I want to develop a SCSI mini port driver to support a virtual HBA. And
    the biggest problem I'm facing is, how can my mini port driver inform
    windows 2000 to create PDO and FDO for the virtual harddisks attached to the
    virtual HBA?

    any suggestion is appreciated!
    Thanks in advance!

    Best Regards
    HuangTM


    ---
    You are currently subscribed to ntdev as: [email protected]
    To unsubscribe send a blank email to $subst('Email.Unsub')



    ---
    You are currently subscribed to ntdev as: [email protected]
    To unsubscribe send a blank email to $subst('Email.Unsub')
Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Upcoming OSR Seminars
OSR has suspended in-person seminars due to the Covid-19 outbreak. But, don't miss your training! Attend via the internet instead!
Kernel Debugging 30 Mar 2020 OSR Seminar Space
Developing Minifilters 20 Apr 2020 LIVE ONLINE
Writing WDF Drivers 11 May 2020 LIVE ONLINE
Internals & Software Drivers 28 Sept 2020 Dulles, VA