All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chris Wright <chrisw@sous-sol.org>
To: linux-kernel@vger.kernel.org, stable@kernel.org
Cc: Justin Forbes <jmforbes@linuxtx.org>,
	Zwane Mwaikambo <zwane@arm.linux.org.uk>,
	"Theodore Ts'o" <tytso@mit.edu>,
	Randy Dunlap <rdunlap@xenotime.net>,
	Dave Jones <davej@redhat.com>,
	Chuck Wolber <chuckw@quantumlinux.com>,
	Chris Wedgewood <reviews@ml.cw.f00f.org>,
	torvalds@osdl.org, akpm@osdl.org, alan@lxorguk.ukuu.org.uk,
	Stefan Richter <stefanr@s5r6.in-berlin.de>,
	Greg Kroah-Hartman <gregkh@suse.de>
Subject: [PATCH 06/11] ohci1394, sbp2: fix "scsi_add_device failed" with PL-3507 based devices
Date: Fri, 02 Jun 2006 00:00:06 -0700	[thread overview]
Message-ID: <20060602194741.722684000@sous-sol.org> (raw)
In-Reply-To: 20060602194618.482948000@sous-sol.org

[-- Attachment #1: ohci1394-sbp2-fix-scsi_add_device-failed-with-pl-3507-based-devices.patch --]
[-- Type: text/plain, Size: 2485 bytes --]

-stable review patch.  If anyone has any objections, please let us know.
------------------

From: Stefan Richter <stefanr@s5r6.in-berlin.de>

Re-enable posted writes for status FIFO.
Besides bringing back a very minor bandwidth tweak from Linux 2.6.15.x
and older, this also fixes an interoperability regression since 2.6.16:
http://bugzilla.kernel.org/show_bug.cgi?id=6356
(sbp2: scsi_add_device failed. IEEE1394 HD is not working anymore.)

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Tested-by: Vanei Heidemann <linux@javanei.com.br>
Tested-by: Martin Putzlocher <mputzi@gmx.de> (chip type unconfirmed)
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---

 drivers/ieee1394/ohci1394.c |    2 +-
 drivers/ieee1394/sbp2.c     |    9 +++++++--
 2 files changed, 8 insertions(+), 3 deletions(-)

--- linux-2.6.16.19.orig/drivers/ieee1394/ohci1394.c
+++ linux-2.6.16.19/drivers/ieee1394/ohci1394.c
@@ -2525,7 +2525,7 @@ static irqreturn_t ohci_irq_handler(int 
 			if (phys_dma) {
 				reg_write(ohci,OHCI1394_PhyReqFilterHiSet, 0xffffffff);
 				reg_write(ohci,OHCI1394_PhyReqFilterLoSet, 0xffffffff);
-				reg_write(ohci,OHCI1394_PhyUpperBound, 0xffff0000);
+				reg_write(ohci,OHCI1394_PhyUpperBound, 0x01000000);
 			} else {
 				reg_write(ohci,OHCI1394_PhyReqFilterHiSet, 0x00000000);
 				reg_write(ohci,OHCI1394_PhyReqFilterLoSet, 0x00000000);
--- linux-2.6.16.19.orig/drivers/ieee1394/sbp2.c
+++ linux-2.6.16.19/drivers/ieee1394/sbp2.c
@@ -754,11 +754,16 @@ static struct scsi_id_instance_data *sbp
 
 	/* Register the status FIFO address range. We could use the same FIFO
 	 * for targets at different nodes. However we need different FIFOs per
-	 * target in order to support multi-unit devices. */
+	 * target in order to support multi-unit devices.
+	 * The FIFO is located out of the local host controller's physical range
+	 * but, if possible, within the posted write area. Status writes will
+	 * then be performed as unified transactions. This slightly reduces
+	 * bandwidth usage, and some Prolific based devices seem to require it.
+	 */
 	scsi_id->status_fifo_addr = hpsb_allocate_and_register_addrspace(
 			&sbp2_highlevel, ud->ne->host, &sbp2_ops,
 			sizeof(struct sbp2_status_block), sizeof(quadlet_t),
-			~0ULL, ~0ULL);
+			0x010000000000ULL, CSR1212_ALL_SPACE_END);
 	if (!scsi_id->status_fifo_addr) {
 		SBP2_ERR("failed to allocate status FIFO address range");
 		goto failed_alloc;

--

  parent reply	other threads:[~2006-06-02 19:51 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-06-02 19:46 [PATCH 00/11] -stable review Chris Wright
2006-06-02  7:00 ` [PATCH 01/11] Altix: correct ioc4 port order Chris Wright
2006-06-02  7:00 ` [PATCH 02/11] Altix: correct ioc3 " Chris Wright
2006-06-02  7:00 ` [PATCH 03/11] Cpuset: might sleep checking zones allowed fix Chris Wright
2006-06-02  7:00 ` [PATCH 04/11] PowerMac: force only suspend-to-disk to be valid Chris Wright
2006-06-02  7:00 ` [PATCH 05/11] Input: psmouse - fix new device detection logic Chris Wright
2006-06-02  7:00 ` Chris Wright [this message]
2006-06-02  7:00 ` [PATCH 07/11] the latest consensus libata resume fix Chris Wright
2006-06-02 19:50   ` Jens Axboe
2006-06-02 20:02     ` Greg KH
2006-06-02 20:02     ` [stable] " Chris Wright
2006-06-03  8:49     ` Marcel Holtmann
2006-06-03 13:22       ` Jens Axboe
2006-06-03 17:41         ` Chris Wright
2006-06-02  7:00 ` [PATCH 08/11] ipw2200: Filter unsupported channels out in ad-hoc mode Chris Wright
2006-06-02  7:00 ` [PATCH 09/11] x86_64: x86_64 add crashdump trigger points Chris Wright
2006-06-02  7:00 ` [PATCH 10/11] x86_64: Dont do syscall exit tracing twice Chris Wright
2006-06-02  7:00 ` [PATCH 11/11] sbp2: backport read_capacity workaround for iPod Chris Wright

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=20060602194741.722684000@sous-sol.org \
    --to=chrisw@sous-sol.org \
    --cc=akpm@osdl.org \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=chuckw@quantumlinux.com \
    --cc=davej@redhat.com \
    --cc=gregkh@suse.de \
    --cc=jmforbes@linuxtx.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rdunlap@xenotime.net \
    --cc=reviews@ml.cw.f00f.org \
    --cc=stable@kernel.org \
    --cc=stefanr@s5r6.in-berlin.de \
    --cc=torvalds@osdl.org \
    --cc=tytso@mit.edu \
    --cc=zwane@arm.linux.org.uk \
    /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.