1. 29 Jan, 2004 14 commits
    • Leann Ogasawara's avatar
      [PATCH] PCI hotplug: pcihp_zt5550.c ioremap/iounmap audit · 66f070ba
      Leann Ogasawara authored
      insert missing iounmap()
      66f070ba
    • Ralf Bächle's avatar
      68e0f3a0
    • Linda Xie's avatar
    • Takayoshi Kochi's avatar
      [PATCH] PCI Hotplug: add address file and fix acpiphp bugs · 272b06a8
      Takayoshi Kochi authored
      This is the pending patch that adds 'address' file to show
      PCI-address and a few other minor fixes.
      As 2.6.0 is out, I'm resending the patch.
      Would you mind taking this?
      
      > > > Thanks.  I had a little time to try your patch today.  Sorry
      > > > to report that it isn't working for me.
      > > >
      > > > I first powered off (successfully the 1st time) a populated slot
      > > > and removed and reinserted the card into the same slot.  The slot
      > > > powered back up but I was then unable to power it off.  I believe
      > > > the following instruction that still exists in power_off_slot()
      > > > may be preventing the slot from being powered off more than once.
      > > >     func->flags &= (~FUNC_EXISTS);
      > > >
      > > > I then tried to insert an adapter in an un-populated slot.  For
      > > > some reason (which I don't understand yet) there was an enabling
      > > > error which I believe caused enable_device() to exit via a path
      > > > that bypassed the instruction that sets the FUNC_EXISTS flag.
      > > > I was then unable to power off the slot which I believe was due
      > > > to the FUNC_EXISTS flag not being set.
      > > >
      > > > I didn't have time to definitely confirmed the above theories.
      > > > I'll take a closer look at this tomorrow unless you are able
      > > > to diagnose using my vague clues :)
      > >
      > > It turns out that both of the above mentioned problems happened
      > > because the call to acpiphp_configure_slot() from enable_device()
      > > failed after inserting the card.  When this happens enable_device()
      > > exits without setting the FUNC_EXISTS flag for any of the slot
      > > functions.  Subsequent attempts to power off the same slot fail
      > > when power_off_slot() is unable to locate a function with both
      > > FUNC_HAS_EJ0 and FUNC_EXISTS flags set.
      > >
      > > The patch works okay when using a card that allows
      > > acpiphp_configure_slot() to succeed but I believe it should
      > > be improved to allow the slot to be powered off following
      > > device enablement errors.
      >
      > Thanks for testing and comments.
      > I really appreciate it.
      >
      > This problem turned out to be somewhat fragile state
      > transition:
      >
      > a lifecycle of a slot is (if there's no error)
      >
      >   function             state
      > ----------------------------------------------------
      > 0                      nothing
      > 1  power_on_slot()  -> SLOT_POWERDON
      > 2  enable_device()  -> SLOT_POWEREDON + SLOT_ENABLED
      > 3  disable_device() -> SLOT_POWEREDON
      > 4  power_off_slot() -> nothing
      >
      > but if any error occur during enable_device(), slot will remain
      > SLOT_POWERDON, but some functions on the card may not have
      > FUNC_EXISTS flags, which will eventually prevents powering
      > off in power_off_slot(), state transition from 1 to 4 directly.
      > I.e, the FUNC_EXISTS flag introduced more states to
      > complicate things.
      >
      > The FUNC_EXISTS flag was introduced after some discussion
      > between me and Irene Zubarev, but it has no more meaning
      > than that the function has corresponding 'pci_dev' structure.
      > So I eliminated the usage of FUNC_EXISTS and the result is
      > the patches attached to this mail (for both 2.4 and 2.6.
      > I think Greg already applied the 2.4 'cleanup' patch to his tree,
      > but it's not in Marcelo's release so I'm re-attaching to
      > this mail for anyone interested in this topic.  It's identical
      > to the one I posted earlier).
      > These patches don't include Gary's patch in his post last week,
      > so please apply separately.
      >
      > Please note that current acpiphp driver cannot handle a
      > PCI card that has a PCI-to-PCI bridge on it (support
      > for such cards is incomplete).  But if it's treated as
      > an error, it should be recoverable anyway.
      272b06a8
    • Martin Hicks's avatar
      [PATCH] PCI Hotplug: Trivial warning fix · 98e2380e
      Martin Hicks authored
      This just gets rid of a stupid compile warning.
      98e2380e
    • Matthew Wilcox's avatar
      [PATCH] PCI: fix pci_get_slot() bug · 73b6196b
      Matthew Wilcox authored
      On Wed, Dec 17, 2003 at 04:24:44PM -0800, Greg KH wrote:
      > I've applied the pci portions of this patch to my trees and will send it
      > on after 2.6.0 is out.
      
      James Bottomley found a bug in it; could you also apply:
      73b6196b
    • Greg Kroah-Hartman's avatar
      [PATCH] PCI: add .owner field to the config sysfs file to be "correct" · 70d7e120
      Greg Kroah-Hartman authored
      This is in case others copy this code (which has already happened...)
      70d7e120
    • Matthew Wilcox's avatar
      [PATCH] PCI: add pci_get_slot() function · 9648e089
      Matthew Wilcox authored
      tg3.c has a bug where it can find the wrong 5704 peer on a machine with
      PCI domains.  The problem is that pci_find_slot() can't distinguish
      whether it has the correct domain or not.
      
      This patch fixes that problem by introducing pci_get_slot().
      9648e089
    • Matthew Dobson's avatar
      [PATCH] PCI: add pci_bus sysfs class · 68b308e8
      Matthew Dobson authored
      This is needed to show pci bus topology to userspace properly.
      68b308e8
    • Matthew Wilcox's avatar
      [PATCH] PCI Hotplug: Better reporting of PCI frequency / bus mode problems for acpi driver · 78d65a24
      Matthew Wilcox authored
      When plugging a 33MHz card into a bus that's running at 66MHz, I'd like
      to see a better error message than:
      
      acpiphp_glue: notify_handler: unknown event type 0x5 for \_SB_.SBA0.PCI4.S2F0
      
      The following patch would give us:
      
      Device \_SB_.SBA0.PCI4.S2F0 cannot be configured due to a frequency mismatch
      
      which I think is clearer.
      78d65a24
    • Rolf Eike Beer's avatar
      [PATCH] PCI Hotplug: Fixup pcihp_skeleton.c · b2d96267
      Rolf Eike Beer authored
      The functions are not named *_skel_*, so it seems useful not to call them with
      this.
      b2d96267
    • Russell King's avatar
      [PATCH] Prevent PCI driver registration failure oopsing · b5849a35
      Russell King authored
      Greg,
      
      As discussed about six or so months ago, we agreed to hold off this
      patch until fairly late, due to its ability to catch duplicate PCI
      driver names.  Please note that I haven't attempted to reproduce the
      problem with recent kernels, and that all ARM kernel patches released
      since then have had this patch in.
      
      I'm guessing this will actually be 2.6.1 material since it probably
      doesn't show for PCI drivers which are part of the kernel tree.
      
      
      If pci_register_driver fails, the register the PCI driver structure
      will not be registered with the driver model.  pci_register_driver
      returns with negative value, and we then attempt to unregister the
      driver structure.  This leads to an oops in the driver model.
      
      The driver model does not return the number of devices it successfully
      bound the driver to, and neither does pci_register_driver() return
      this information.
      
      Therefore, all of the code below is redundant.
      
      (There's a little redundancy left in drivers/pci/pci-driver.c but it
      is harmless unlike this block.)
      b5849a35
    • David S. Miller's avatar
    • David S. Miller's avatar
      Merge cheetah.(none):/home/davem/src/BK/sparcwork-2.6 · ad3258ed
      David S. Miller authored
      into cheetah.(none):/home/davem/src/BK/sparc-2.6
      ad3258ed
  2. 28 Jan, 2004 6 commits
  3. 27 Jan, 2004 13 commits
  4. 26 Jan, 2004 7 commits