1. 02 4月, 2013 2 次提交
    • Y
      EISA/PCI: Init EISA early, before PNP · c5fb301a
      Yinghai Lu 提交于
      Matthew reported kernels fail the pci_eisa probe and are later successful
      with the virtual_eisa_root_init force probe without slot0.
      
      The reason for that is: PNP probing is before pci_eisa_init gets called
      as pci_eisa_init is called via pci_driver.
      
      pnp 00:0f has 0xc80 - 0xc84 reserved.
      [    9.700409] pnp 00:0f: [io  0x0c80-0x0c84]
      
      so eisa_probe will fail from pci_eisa_init
      				==>eisa_root_register
      					==>eisa_probe path.
      as force_probe is not set in pci_eisa_root, it will bail early when
      slot0 is not probed and initialized.
      
      Try to use subsys_initcall_sync instead, and will keep following sequence:
      	pci_subsys_init
      	pci_eisa_init_early
      	pnpacpi_init/isapnp_init
      
      After this patch EISA can be initialized properly, and PNP overlapping
      resource will not be reserved.
      [   10.104434] system 00:0f: [io  0x0c80-0x0c84] could not be reserved
      Reported-by: NMatthew Whitehead <mwhitehe@redhat.com>
      Tested-by: NMatthew Whitehead <mwhitehe@redhat.com>
      Signed-off-by: NYinghai Lu <yinghai@kernel.org>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      Cc: stable@vger.kernel.org
      c5fb301a
    • Y
      EISA/PCI: Fix bus res reference · 2cfda637
      Yinghai Lu 提交于
      Matthew found that 3.8.3 is having problems with an old (ancient)
      PCI-to-EISA bridge, the Intel 82375. It worked with the 3.2 kernel.
      He identified the 82375, but doesn't assign the struct resource *res
      pointer inside the struct eisa_root_device, and panics.
      
      pci_eisa_init() was using bus->resource[] directly instead of
      pci_bus_resource_n().  The bus->resource[] array is a PCI-internal
      implementation detail, and after commit 45ca9e97 (PCI: add helpers for
      building PCI bus resource lists) and commit 0efd5aab (PCI: add struct
      pci_host_bridge_window with CPU/bus address offset), bus->resource[] is not
      used for PCI root buses any more.
      
      The 82375 is a subtractive-decode PCI device, so handle it the same
      way we handle PCI-PCI bridges in subtractive-decode mode in
      pci_read_bridge_bases().
      
      [bhelgaas: changelog]
      Reported-by: NMatthew Whitehead <mwhitehe@redhat.com>
      Tested-by: NMatthew Whitehead <mwhitehe@redhat.com>
      Signed-off-by: NYinghai Lu <yinghai@kernel.org>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      Cc: stable@vger.kernel.org	# v3.3+
      2cfda637
  2. 05 8月, 2011 1 次提交
  3. 26 7月, 2011 1 次提交
  4. 16 6月, 2009 1 次提交
  5. 28 3月, 2007 1 次提交
  6. 17 4月, 2005 1 次提交
    • L
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds 提交于
      Initial git repository build. I'm not bothering with the full history,
      even though we have it. We can create a separate "historical" git
      archive of that later if we want to, and in the meantime it's about
      3.2GB when imported into git - space that would just make the early
      git days unnecessarily complicated, when we don't have a lot of good
      infrastructure for it.
      
      Let it rip!
      1da177e4