Re: Getting the bus/adapter transfer size/rate
- From: S. Heck <SHeck@xxxxxxxxxxxxxxxxxxxxxxxxx>
- Date: Wed, 4 Apr 2007 12:22:01 -0700
The IBM x226 has a on board Intel 82801EB SATA controller. I tried
installing the latest driver package from IBM and got the same results.
IOCTL_STORAGE_QUERY_PROPERTY
Adapter Properties
------------------
Bus Type : ATA
Maximum Transfer Length: 0x20000
Maximum Physical Pages: 0xffffffff (?????)
Alignment Mask : 0x1
IOCTL_SCSI_GET_CAPABILITIES
Maximum Transfer Length: 0x20000
Maximum Physical Pages: 0x20 (?????)
Alignment Mask : 0x1
BTW I was wrong about the IOCTL_SCSI_GET_CAPABILITIES Max Physical Pages
0x20 not being correct. I forgot to change the transfer length in the SCSI
CDB to 0X1f000 (was 0x20000) so that is why it failed. Seems strange that
Max Physical Pages isn't 0x21. Also issue with I0CTL_STORAGE_QUERY_PROPERTY
reporting Max. Physical Pages 0xffffffff.
I will have to try out some PCI based SATA controllers to see if it possible
to make larger single transfer.
"bill" wrote:
"S. Heck".
Good question. I installed WS2K3 on a IBM xSeries 226 so it is highly
possible I don't have the latest - greatest drivers. Will have to check
into
that.
BTW is 128KB the max single transfer length for ATA and SATA? As I
mentioned I am trying to make a ~ 2.4 MB SPTI data transfer but I highly
suspect this is not possible on any interface (SCSI, FC, USB, IEEE-1394).
Thanks!
"bill" wrote:
"S. Heck"
I ran into the following with a SATA tape drive on Windows Server 2003.
IOCTL_STORAGE_QUERY_PROPERTY
Adapter Properties
------------------
Bus Type : ATA
Maximum Transfer Length: 0x20000
Maximum Physical Pages: 0xffffffff (?????)
Alignment Mask : 0x1
IOCTL_SCSI_GET_CAPABILITIES
Maximum Transfer Length: 0x20000
Maximum Physical Pages: 0x20 (?????)
Alignment Mask : 0x1
Is this expected behavior?
Also is it possible to increase Maximum Transfer Size and Physical
Pages
to
make ~ 2.4 MB SPTI data transfers? If not is there any other interface
that
this possible?
"bill" wrote:
Ref: thread of March 23, 2007, subject "Great Then 64KB SPTI Data
Transfers?"
For several device types it's vital to know the transfer length/rate
for
the
bus/adapter they are attached to. What method does Windows provide
to programmers to get this information ?
I know about ...
IOCTL_STORAGE_QUERY_PROPERTY /
STORAGE_ADAPTER_DESCRIPTOR /
MaximumTransferLength for PnP and
IOCTL_SCSI_GET_CAPABILITIES /
IO_SCSI_CAPABILITIES /
MaximumTransferLength for older non-PnP devices.
But these don't work for the current crop of SATA & PATA devices.
What about other bus/adapter types like firewire & usb ?
Do we need to use WMI ... which seems like a lot of work to get such
basic info ?
Thanks,
BillM
Can we assume the correct SATA driver(s) have been installed ?
And the system motherboard/bios/bus etc. is fast enoungh to take
advantage of the increased through-put ?
BillM
Unless your mobo has SATA controller/ports, your SATA deviceBus Type : ATA
should be connected to a PCI/SATA adapter card. Otherwise it
will not do very well or may not work at all.
I see Serial ATA 2-Port SATA PCI Controller Card Adapters with
transfer rate of 1.5Gb/s (1500Mb/s) selling on the net for $20 USD.
The ports work for most SATA devices (hard drives, DVD drives)
but check 1st that it works for a tape drive.
BillM
- Follow-Ups:
- References:
- Prev by Date: Re: Win98 DDK
- Next by Date: Re: Error in using dpinst to install signed driver for 2003 x64
- Previous by thread: Re: Getting the bus/adapter transfer size/rate
- Next by thread: Re: Getting the bus/adapter transfer size/rate
- Index(es):
Relevant Pages
|
Loading