From: Stefan Richter <stefanr@s5r6.in-berlin.de>
To: Tino Keitel <tino.keitel@gmx.de>
Cc: linux-kernel@vger.kernel.org, linux-scsi@vger.kernel.org
Subject: Re: Clean patch to fix not working spindown over Firewire
Date: Fri, 9 May 2008 23:13:41 +0200 (CEST) [thread overview]
Message-ID: <tkrat.606fe302c67e64b4@s5r6.in-berlin.de> (raw)
In-Reply-To: <20080509201635.GA20189@dose.home.local>
On 9 May, Tino Keitel wrote:
> On Wed, Apr 30, 2008 at 15:36:36 +0200, Stefan Richter wrote:
>> If it works for all RBC devices (it should according to the spec...) &&
>> your ICY Box exposes itself as RBC device (it should do so), then we
>> don't need any changes to struct scsi_device and to sbp2/ firewire-sbp2.
>
> Do you mean something like in the attached (untested) patch?
>
> Regards,
> Tino
>
> diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c
> index 01cefbb..6b927f6 100644
> --- a/drivers/scsi/sd.c
> +++ b/drivers/scsi/sd.c
> @@ -1787,8 +1787,13 @@ static int sd_start_stop_device(struct scsi_disk *sdkp, int start)
> struct scsi_device *sdp = sdkp->device;
> int res;
>
> - if (start)
> + if (start) {
> cmd[4] |= 1; /* START */
> + /* active power condition */
> + cmd[4] |= (sdp->type == TYPE_RBC) ? (1 << 4) : 0;
> + } else
> + /* standby power condition */
> + cmd[4] |= (sdp->type == TYPE_RBC) ? (3 << 4) : 0 ;
>
> if (!scsi_device_online(sdp))
> return -ENODEV;
Yes, that's what I meant. Would you test it on your disks and, if it
works, repost to LSML with your Signed-off-by line?
(See linux/Documentation/SubmittingPatches.)
Or write it as
if (start)
cmd[4] |= 1; /* START */
+
+ if (sdp->type == TYPE_RBC)
+ cmd[4] |= start ? 1 << 4 : 3 << 4; /* POWER CONDITION */
Alas the test for TYPE_RBC is not ideal. As I wrote in my other mail,
there are some SBP-2 disks which pose as TYPE_DISK. It's not a big
problem though because almost all of them also work with POWER
CONDITION = 0. The only exception is DViCO Momobay CX-1 which goes
belly-up POWER CONDITION = 0 and START = 0. Maybe I should simply
overwrite the CX-1's sdp->type by TYPE_RBC. I suspect that this is what
it implements anyway. The firmwares of the later Momobay models FX-3A
and IIRC CX-2 do so.
--
Stefan Richter
-=====-==--- -=-= -=--=
http://arcgraph.de/sr/
next prev parent reply other threads:[~2008-05-09 21:13 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-29 23:26 Hack to fix not working spindown over Firewire Tino Keitel
2008-04-30 13:31 ` Stefan Richter
2008-04-30 13:36 ` Stefan Richter
2008-05-09 20:16 ` Clean patch " Tino Keitel
2008-05-09 21:13 ` Stefan Richter [this message]
2008-05-09 22:02 ` Stefan Richter
2008-05-07 18:00 ` Hack " Tino Keitel
2008-05-09 18:32 ` Stefan Richter
2008-05-10 15:31 ` Stefan Richter
2008-05-10 22:32 ` [PATCH 0/5] SCSI and FireWire: fix/add START STOP UNIT for SBP-2 disks Stefan Richter
2008-05-10 22:34 ` [PATCH 1/5] scsi: sd: optionally set power condition in START STOP UNIT Stefan Richter
2008-05-10 22:35 ` [PATCH 2/5] firewire: fw-sbp2: fix spindown for PL-3507 and TSB42AA9 firmwares Stefan Richter
2008-05-10 22:35 ` [PATCH 3/5] ieee1394: sbp2: " Stefan Richter
2008-05-10 22:36 ` [PATCH 4/5] firewire: fw-sbp2: spin disks down on suspend and shutdown Stefan Richter
2008-05-10 22:37 ` [PATCH 5/5] ieee1394: sbp2: " Stefan Richter
2008-05-16 6:23 ` [PATCH 0/5] SCSI and FireWire: fix/add START STOP UNIT for SBP-2 disks Tino Keitel
2008-05-16 17:43 ` Stefan Richter
2008-05-18 17:35 ` Tino Keitel
2008-05-18 20:32 ` Stefan Richter
2008-05-19 17:18 ` Stefan Richter
2008-05-10 22:53 ` Hack to fix not working spindown over Firewire Stefan Richter
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=tkrat.606fe302c67e64b4@s5r6.in-berlin.de \
--to=stefanr@s5r6.in-berlin.de \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=tino.keitel@gmx.de \
/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