ATA commands

Is there an example in the DDK that shows how to send ATA commands to
a hard drive?

Greg

Not in current DDK’s. I think you would have to look at some code from
the NT4 DDK.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Greg Jacklin
Sent: Wednesday, November 17, 2004 12:57 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] ATA commands

Is there an example in the DDK that shows how to send ATA commands to
a hard drive?

Greg


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@nvidia.com
To unsubscribe send a blank email to xxxxx@lists.osr.com

I looked under the DDK and there appears to be an IOCTL called
IOCTL_ATA_PASS_THROUGH, has anyone exp. using this IOCTL, any
suggestions/advise.

Greg

----- Original Message -----
From: “Mark Overby”
To: “Windows System Software Devs Interest List”
Sent: Wednesday, November 17, 2004 1:10 PM
Subject: RE: [ntdev] ATA commands

Not in current DDK’s. I think you would have to look at some code from
the NT4 DDK.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Greg Jacklin
Sent: Wednesday, November 17, 2004 12:57 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] ATA commands

Is there an example in the DDK that shows how to send ATA commands to
a hard drive?

Greg


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@nvidia.com
To unsubscribe send a blank email to xxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: unknown lmsubst tag argument: ‘’
To unsubscribe send a blank email to xxxxx@lists.osr.com

What layer are you looking to do this at, and more specifically what
commands are you trying to send? (Are you dealing with ATA devices or
ATAPI devices? You said ATA, but I’d like to make sure we are talking
about devices that do not implement the PACKET command set from
ATA/ATAPI standards). What OS?

IOCTL_ATA_PASS_THROUGH is limited and not available on all operating
systems.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Greg Jacklin
Sent: Wednesday, November 17, 2004 2:39 PM
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] ATA commands

I looked under the DDK and there appears to be an IOCTL called
IOCTL_ATA_PASS_THROUGH, has anyone exp. using this IOCTL, any
suggestions/advise.

Greg

----- Original Message -----
From: “Mark Overby”
To: “Windows System Software Devs Interest List”
Sent: Wednesday, November 17, 2004 1:10 PM
Subject: RE: [ntdev] ATA commands

Not in current DDK’s. I think you would have to look at some code from
the NT4 DDK.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Greg Jacklin
Sent: Wednesday, November 17, 2004 12:57 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] ATA commands

Is there an example in the DDK that shows how to send ATA commands to
a hard drive?

Greg


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@nvidia.com
To unsubscribe send a blank email to xxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: unknown lmsubst tag argument:
‘’
To unsubscribe send a blank email to xxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@nvidia.com
To unsubscribe send a blank email to xxxxx@lists.osr.com

I will be talking to a sata hdd and will be at usermode level if possible…
I guess I could write a filter driver if needs be, but would obviously
prefer not having to do that. I want to send down the SMART command, so
synchronous IO is OK. I will be implementing this on a windows 2003
machine.

Thanks,

Greg

----- Original Message -----
From: “Mark Overby”
To: “Windows System Software Devs Interest List”
Sent: Wednesday, November 17, 2004 3:07 PM
Subject: RE: [ntdev] ATA commands

What layer are you looking to do this at, and more specifically what
commands are you trying to send? (Are you dealing with ATA devices or
ATAPI devices? You said ATA, but I’d like to make sure we are talking
about devices that do not implement the PACKET command set from
ATA/ATAPI standards). What OS?

IOCTL_ATA_PASS_THROUGH is limited and not available on all operating
systems.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Greg Jacklin
Sent: Wednesday, November 17, 2004 2:39 PM
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] ATA commands

I looked under the DDK and there appears to be an IOCTL called
IOCTL_ATA_PASS_THROUGH, has anyone exp. using this IOCTL, any
suggestions/advise.

Greg

----- Original Message -----
From: “Mark Overby”
To: “Windows System Software Devs Interest List”
Sent: Wednesday, November 17, 2004 1:10 PM
Subject: RE: [ntdev] ATA commands

Not in current DDK’s. I think you would have to look at some code from
the NT4 DDK.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Greg Jacklin
Sent: Wednesday, November 17, 2004 12:57 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] ATA commands

Is there an example in the DDK that shows how to send ATA commands to
a hard drive?

Greg


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@nvidia.com
To unsubscribe send a blank email to xxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: unknown lmsubst tag argument:
‘’
To unsubscribe send a blank email to xxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@nvidia.com
To unsubscribe send a blank email to xxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: unknown lmsubst tag argument: ‘’
To unsubscribe send a blank email to xxxxx@lists.osr.com

There is a seperate IOCTL set for SMART.
IOCTL_SCSI_MINIPORT_READ_SMART_LOG and it’s friends.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Greg Jacklin
Sent: Wednesday, November 17, 2004 4:06 PM
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] ATA commands

I will be talking to a sata hdd and will be at usermode level if
possible…
I guess I could write a filter driver if needs be, but would obviously
prefer not having to do that. I want to send down the SMART command, so
synchronous IO is OK. I will be implementing this on a windows 2003
machine.

Thanks,

Greg

----- Original Message -----
From: “Mark Overby”
To: “Windows System Software Devs Interest List”
Sent: Wednesday, November 17, 2004 3:07 PM
Subject: RE: [ntdev] ATA commands

What layer are you looking to do this at, and more specifically what
commands are you trying to send? (Are you dealing with ATA devices or
ATAPI devices? You said ATA, but I’d like to make sure we are talking
about devices that do not implement the PACKET command set from
ATA/ATAPI standards). What OS?

IOCTL_ATA_PASS_THROUGH is limited and not available on all operating
systems.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Greg Jacklin
Sent: Wednesday, November 17, 2004 2:39 PM
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] ATA commands

I looked under the DDK and there appears to be an IOCTL called
IOCTL_ATA_PASS_THROUGH, has anyone exp. using this IOCTL, any
suggestions/advise.

Greg

----- Original Message -----
From: “Mark Overby”
To: “Windows System Software Devs Interest List”
Sent: Wednesday, November 17, 2004 1:10 PM
Subject: RE: [ntdev] ATA commands

Not in current DDK’s. I think you would have to look at some code from
the NT4 DDK.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Greg Jacklin
Sent: Wednesday, November 17, 2004 12:57 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] ATA commands

Is there an example in the DDK that shows how to send ATA commands to
a hard drive?

Greg


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@nvidia.com
To unsubscribe send a blank email to xxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: unknown lmsubst tag argument:
‘’
To unsubscribe send a blank email to xxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@nvidia.com
To unsubscribe send a blank email to xxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: unknown lmsubst tag argument:
‘’
To unsubscribe send a blank email to xxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@nvidia.com
To unsubscribe send a blank email to xxxxx@lists.osr.com

> IOCTL_ATA_PASS_THROUGH is limited and not available on all operating

systems.

…and this is the only way in Windows to send raw ATA commands. No other ways.
Windows just lacks this facility.

You can only send the SCSI commands which are supported as a part of
ATAPI.SYS’s SCSI emulation, but not any ATA command.

Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
xxxxx@storagecraft.com
http://www.storagecraft.com

IOCTL_ATA_PASS_THROUGH is pretty much undocumented, any examples someone
could point me to?

Greg
----- Original Message -----
From: “Maxim S. Shatskih”
To: “Windows System Software Devs Interest List”
Sent: Wednesday, November 17, 2004 9:59 PM
Subject: Re: [ntdev] ATA commands

> > IOCTL_ATA_PASS_THROUGH is limited and not available on all operating
> > systems.
>
> …and this is the only way in Windows to send raw ATA commands. No other
ways.
> Windows just lacks this facility.
>
> You can only send the SCSI commands which are supported as a part of
> ATAPI.SYS’s SCSI emulation, but not any ATA command.
>
> Maxim Shatskih, Windows DDK MVP
> StorageCraft Corporation
> xxxxx@storagecraft.com
> http://www.storagecraft.com
>
>
> —
> Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as: xxxxx@hotmail.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>

Who is/are Ur vendor(s) for the sata ?. They should provide scsi pass thru for this. ata is mostly proprietary with very many incarnations !!! Also, I’ve seen problems (during early stage ) of scsi_pass_through for sata …

-pro

You will need to build your code using the Server 2003 headers in the latest
DDK. The generated code will work on XP SP2 and Server 2003, but not 2000,
XP, or XP SP1. The documentation is also available in that DDK and though
there are no samples using it, you can use it to produce a functional
driver.


The personal opinion of
Gary G. Little

“Greg Jacklin” wrote in message news:xxxxx@ntdev…
> IOCTL_ATA_PASS_THROUGH is pretty much undocumented, any examples someone
> could point me to?
>
> Greg
> ----- Original Message -----
> From: “Maxim S. Shatskih”
> To: “Windows System Software Devs Interest List”
> Sent: Wednesday, November 17, 2004 9:59 PM
> Subject: Re: [ntdev] ATA commands
>
>
> > > IOCTL_ATA_PASS_THROUGH is limited and not available on all operating
> > > systems.
> >
> > …and this is the only way in Windows to send raw ATA commands. No
other
> ways.
> > Windows just lacks this facility.
> >
> > You can only send the SCSI commands which are supported as a part of
> > ATAPI.SYS’s SCSI emulation, but not any ATA command.
> >
> > Maxim Shatskih, Windows DDK MVP
> > StorageCraft Corporation
> > xxxxx@storagecraft.com
> > http://www.storagecraft.com
> >
> >
> > —
> > Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
> >
> > You are currently subscribed to ntdev as: xxxxx@hotmail.com
> > To unsubscribe send a blank email to xxxxx@lists.osr.com
> >
>