All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Krzysztof Błaszkowski" <kb@sysmikro.com.pl>
To: "Moore, Eric" <Eric.Moore@lsi.com>
Cc: "jgarzik@pobox.com" <jgarzik@pobox.com>,
	"Stewart, Ken" <Ken.Stewart@lsi.com>,
	"linux-ide@vger.kernel.org" <linux-ide@vger.kernel.org>,
	DL-MPT Fusion Linux <DL-MPTFusionLinux@lsi.com>
Subject: Re: ATA_16 support on mptsas
Date: Fri, 27 Jun 2008 11:02:14 +0200	[thread overview]
Message-ID: <200806271102.14951.kb@sysmikro.com.pl> (raw)
In-Reply-To: <660360F4F2570145BD872F298951B17A26420CD9@cosmail03.lsi.com>

Hello,

ATA_16 through SG is supported with recent firmware for LSI cards.
I verified non-dma/pio ATA commands only.

Regards,
Krzysztof Blaszkowski

On Monday 23 June 2008 21:40, Moore, Eric wrote:
> On Monday, June 23, 2008 10:00 AM, Krzysztof Błaszkowski wrote:
> > I found that any HDIO_DRIVE_CMD ioctl on sata drive connected
> > through mpsas
> > and backplane will fail. Basically the scsi_host_template structure is
> > missing ioctl callback. after adding it and temporary
> > tweaking domain_device
> > structure associated to scsi_device (rphy only) i reached a
> > point where
> > ata_scsi_ioctl returns EIO and this why i need some clue on a
> > way of adding
> > such support similar way to aic94 where it has been done.
> >
> > I found also that mptsas leaves domain_device rather
> > uninitialized. the
> > example is rphy but there more fields i don't know if they
> > are revelant to
> > proper processing of HDIO_DRIVE_CMD.
> > i need additional references on libata design, call flow and
> > structures
> > relationship.
> >
> > probably it would be the best to design mptsas from scratch
> > using libsas but
> > this seems to me as huge work although if i was guided i
> > would probably
> > complete this.
>
> We have no plans to implement HDIO ioctls in our driver.   The SATL
> implementation is inside the mpt fusion firmware, and from the driver, we
> don't care whether the underlying protocal is SAS, SATA, Fibre Channel, or
> SPI.   For all protocals, we send scsi commands to the controller firmware
> using SCSI_IO opcode, with the following struct:
>
> typedef struct _MSG_SCSI_IO_REQUEST
> {
>     U8                      TargetID;           /* 00h */
>     U8                      Bus;                /* 01h */
>     U8                      ChainOffset;        /* 02h */
>     U8                      Function;           /* 03h */
>     U8                      CDBLength;          /* 04h */
>     U8                      SenseBufferLength;  /* 05h */
>     U8                      Reserved;           /* 06h */
>     U8                      MsgFlags;           /* 07h */
>     U32                     MsgContext;         /* 08h */
>     U8                      LUN[8];             /* 0Ch */
>     U32                     Control;            /* 14h */
>     U8                      CDB[16];            /* 18h */
>     U32                     DataLength;         /* 28h */
>     U32                     SenseBufferLowAddr; /* 2Ch */
>     SGE_IO_UNION            SGL;                /* 30h */
> } MSG_SCSI_IO_REQUEST, MPI_POINTER PTR_MSG_SCSI_IO_REQUEST,
>   SCSIIORequest_t, MPI_POINTER pSCSIIORequest_t;
>
> > I tried another approach where i used SG_IO ioctl and
> > prepared ATA_16 cdb
> > (just like libata does) but this failed on mptsas connected drives too
> > altough this way works on drives connected to ICH6.
>
> The SG tools will work with mpt fusion if your passing the ATA_12
> (opcode=0xA1) and ATA_16 (opcode=0x85).   This is implemented in fusion
> firmware.  If your failing, then your probably having old firmware.  I
> suggest that you upgrading by going to the download site  located here:
> http://www.lsi.com/cm/DownloadSearch.do?locale=EN.    Ken Stewart is from
> support, he should be able to assist you with upgrading the firmware if you
> encounter any problems.
>
> Eric Moore

  reply	other threads:[~2008-06-27  9:01 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-06-23 16:00 ATA_16 support on mptsas Krzysztof Błaszkowski
2008-06-23 19:40 ` Moore, Eric
2008-06-27  9:02   ` Krzysztof Błaszkowski [this message]
2008-06-27 14:24   ` Krzysztof Błaszkowski
2008-06-27 15:07     ` Moore, Eric
2008-06-27 17:14       ` Krzysztof Błaszkowski
  -- strict thread matches above, loose matches on Subject: below --
2008-06-23 22:09 Richard Scobie

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=200806271102.14951.kb@sysmikro.com.pl \
    --to=kb@sysmikro.com.pl \
    --cc=DL-MPTFusionLinux@lsi.com \
    --cc=Eric.Moore@lsi.com \
    --cc=Ken.Stewart@lsi.com \
    --cc=jgarzik@pobox.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.