linux-ide.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Andy Falanga (afalanga)" <afalanga@micron.com>
To: "linux-ide@vger.kernel.org" <linux-ide@vger.kernel.org>
Subject: HBA isn't interpreting commands correctly
Date: Wed, 9 Dec 2015 20:32:15 +0000	[thread overview]
Message-ID: <56688F83.4070803@micron.com> (raw)

Hi,

Quick synopsis of the background, I have need to communicate with drives 
which won't get the standard handles: e.g. /dev/sdN.  This is mainly due 
to wiped FW, etc.  I need to be able to issue the ATA Download command.  
In order to accomplish this, I've modified the standard ahci driver to 
allow me access to AHCI ports with an Upper Layer driver I've written.  
The idea is to pass ATA commands directly to the lower layer driver 
without marching through the kernel.  I've tested this with a VM using 
and ICH8 AHCI controller and a real system with a Z87 chipset and in 
both cases I can execute the Download command (and Identify or whatever).

However, I've got a Xeon mobo (model x8dtl-i with an Intel ICH10R) 
which, for some reason, doesn't execute the commands correctly. This is 
configured for AHCI mode and not RAID.  I'm following the AHCI spec, 
1.3.1, for propagating command information into the Command Table List 
and Command Header.  As mentioned, this code works both in a VM with and 
ICH8 controller and a Z87 MoBo. However, on this Xeon system something 
isn't being communicated to the HBA correctly.  For example, when I 
issue an Identify to a working drive, the protocol analyzer shows that 
the HBA and the drive move 212 bytes of data.  What would account for 
this? Incidentally, using hdparm to execute an Identify on a working 
drive to the sg handle, does work.

Any pointers or ideas are welcome.

Andy

                 reply	other threads:[~2015-12-09 20:32 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=56688F83.4070803@micron.com \
    --to=afalanga@micron.com \
    --cc=linux-ide@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).