1. 14 3月, 2008 6 次提交
    • S
      firewire: warn on fatal condition in topology code · a2cdebe3
      Stefan Richter 提交于
      If this ever happens to anybody, we want to have it in his log.
      Signed-off-by: NStefan Richter <stefanr@s5r6.in-berlin.de>
      a2cdebe3
    • J
      firewire: fw-sbp2: set single-phase retry_limit · 51f9dbef
      Jarod Wilson 提交于
      Per the SBP-2 specification, all SBP-2 target devices must have a BUSY_TIMEOUT
      register. Per the 1394-1995 specification, the retry_limt portion of the
      register should be set to 0x0 initially, and set on the target by a logged in
      initiator (i.e., a Linux host w/firewire controller(s)).
      
      Well, as it turns out, lots of devices these days have actually moved on to
      starting to implement SBP-3 compliance, which says that retry_limit should
      default to 0xf instead (yes, SBP-3 stomps directly on 1394-1995, oops).
      
      Prior to this change, the firewire driver stack didn't touch retry_limit, and
      any SBP-3 compliant device worked fine, while SBP-2 compliant ones were unable
      to retransmit when the host returned an ack_busy_X, which resulted in stalled
      out I/O, eventually causing the SCSI layer to give up and offline the device.
      
      The simple fix is for us to set retry_limit to 0xf in the register for all
      devices (which actually matches what the old ieee1394 stack did).
      
      Prior to this change, a hard disk behind an SBP-2 Prolific PL-3507 bridge chip
      would routinely encounter buffer I/O errors and wind up offlined by the SCSI
      layer. With this change, I've encountered zero I/O failures moving tens of GB
      of data around.
      Signed-off-by: NJarod Wilson <jwilson@redhat.com>
      Signed-off-by: NStefan Richter <stefanr@s5r6.in-berlin.de>
      51f9dbef
    • S
      firewire: fw-ohci: Apple UniNorth 1st generation support · 11bf20ad
      Stefan Richter 提交于
      Mostly copied from ohci1394.c.  Necessary for some older Macs, e.g.
      PowerBook G3 Pismo and early PowerBook G4 Titanium.
      Signed-off-by: NStefan Richter <stefanr@s5r6.in-berlin.de>
      11bf20ad
    • S
      firewire: fw-ohci: PPC PMac platform code · ea8d006b
      Stefan Richter 提交于
      Copied from ohci1394.c.  This code is necessary to prevent machine check
      exceptions when reloading or resuming the driver.
      
      Tested on a 1st generation PowerBook G4 Titanium, which also needs the
      pci_probe() hunk.
      Signed-off-by: NStefan Richter <stefanr@s5r6.in-berlin.de>
      
      I was able to reproduce the system exception on resume with a 3rd-gen
      Titanium PowerBook G4 667, and this patch does let the system resume
      successfully now.
      
      Not quite clear if there was possibly an updated version coming using
      pci_enable_device() instead of the pair of pmac_call_feature() calls,
      but either way, this is a definite must-have, at least for older ppc
      macs -- my Aluminum PowerBook G4/1.67 suspends and resumes without this
      patch just fine.
      Signed-off-by: NJarod Wilson <jwilson@redhat.com>
      Acked-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      ea8d006b
    • S
      firewire: endianess annotations · efbf390a
      Stefan Richter 提交于
      Kills warnings from 'make C=1 CHECKFLAGS="-D__CHECK_ENDIAN__" modules':
      
      drivers/firewire/fw-transaction.c:771:10: warning: incorrect type in assignment (different base types)
      drivers/firewire/fw-transaction.c:771:10:    expected unsigned int [unsigned] [usertype] <noident>
      drivers/firewire/fw-transaction.c:771:10:    got restricted unsigned int [usertype] <noident>
      drivers/firewire/fw-transaction.h:93:10: warning: incorrect type in assignment (different base types)
      drivers/firewire/fw-transaction.h:93:10:    expected unsigned int [unsigned] [usertype] <noident>
      drivers/firewire/fw-transaction.h:93:10:    got restricted unsigned int [usertype] <noident>
      drivers/firewire/fw-ohci.c:1490:8: warning: restricted degrades to integer
      drivers/firewire/fw-ohci.c:1490:35: warning: restricted degrades to integer
      drivers/firewire/fw-ohci.c:1516:5: warning: cast to restricted type
      Signed-off-by: NStefan Richter <stefanr@s5r6.in-berlin.de>
      Signed-off-by: NJarod Wilson <jwilson@redhat.com>
      efbf390a
    • S
      firewire: endianess fix · 25df287d
      Stefan Richter 提交于
      The generation of incoming requests was filled in in wrong byte order on
      machines with big endian CPU.
      Signed-off-by: NStefan Richter <stefanr@s5r6.in-berlin.de>
      Signed-off-by: NJarod Wilson <jwilson@redhat.com>
      25df287d
  2. 10 3月, 2008 6 次提交
  3. 09 3月, 2008 5 次提交
  4. 08 3月, 2008 19 次提交
  5. 07 3月, 2008 4 次提交