All of lore.kernel.org
 help / color / mirror / Atom feed
From: matthieu castet <castet.matthieu@free.fr>
To: mdharm-kernel@one-eyed-alien.net, linux-usb@vger.kernel.org,
	Linux Kernel list <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH]  mass storage : emulation of sat scsi_pass_thru with ATACB
Date: Sat, 08 Mar 2008 21:08:26 +0100	[thread overview]
Message-ID: <47D2F23A.4020103@free.fr> (raw)
In-Reply-To: <20080308183125.GB2820@one-eyed-alien.net>

Hi Matthew,

thanks for your comments

Matthew Dharm wrote:
> Why are you using an initializer instead of a new protocol code?
Because using a new protocol code means I need to patch all the place 
where there is a comparison between us->subclass and US_SC_SCSI.
After all I am US_SC_SCSI with a special case for ATA12 & ATA16 commands.
I don't translate all scsi to atacb (that's what does US_SC_ISD200).

> 
> Most of this should probably be moved into it's own file, just like all of
> the other protocol handlers.
Ok, I will move it in another file.
> 
> Actually, why do you even have a separate 'dispatcher' function?  Why not
> just one protocol handler function which checks the command at the top and
> calls invoke_transport there?
What do you means by having a separate 'dispatcher' function?
You means why I have 2 functions emulate_pass_thru_with_atacb and 
usb_stor_transparent_scsi_command_atacb ?
I did 2 functions for having a code more clean.

You suggest something like
void usb_stor_transparent_scsi_command_atacb(struct scsi_cmnd *srb,
                        struct us_data *us)
{
     if (srb->cmnd[0] != ATA_16 && srb->cmnd[0] != ATA_12) {
         usb_stor_invoke_transport(srb, us);
         return;
     }
     copy emulate_pass_thru_with_atacb code here
}

> 
> Also, unless ATACB is a new standard (and I don't think it is, as the
> Cypress datasheet uses the term 'vendor specific'), then your functions
> need renaming.  Instead of 'emulate_pass_thru_with_atacb', how about
> something like 'cypress_atacb' --  since it's already a protocol handler,
> everyone already knows it's for passing commands.
But 'emulate_pass_thru_with_atacb' only handle ATA pass_thru scsi 
commands. It doesn't translate all scsi commands to atacb like 
'cypress_atacb' could suggest.
That's why I put 'usb_stor_transparent_scsi_command_atacb' saying it is 
transparent_scsi_command + atacb support.

Matthieu

  reply	other threads:[~2008-03-08 20:08 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-03-08 17:32 [PATCH] mass storage : emulation of sat scsi_pass_thru with ATACB matthieu castet
2008-03-08 18:31 ` Matthew Dharm
2008-03-08 20:08   ` matthieu castet [this message]
2008-03-08 21:21     ` Matthew Dharm
2008-03-09  8:21       ` matthieu castet
2008-03-09 18:45         ` Matthew Dharm
2008-03-09 21:42           ` matthieu castet
2008-03-10  1:20             ` Matthew Dharm
2008-03-13 21:22               ` matthieu castet
2008-03-14  0:51                 ` Matthew Dharm
     [not found]                   ` <20080318221207.GY2820@one-eyed-alien.net>
2008-03-19 18:40                     ` matthieu castet
2008-03-19 20:02                       ` Matthew Dharm
2008-03-20 21:39                       ` patch usb-mass-storage-emulation-of-sat-scsi_pass_thru-with-atacb.patch added to gregkh-2.6 tree gregkh
2008-03-09 10:13   ` [PATCH] mass storage : emulation of sat scsi_pass_thru with ATACB Alan Cox

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=47D2F23A.4020103@free.fr \
    --to=castet.matthieu@free.fr \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=mdharm-kernel@one-eyed-alien.net \
    /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.