]> git.baikalelectronics.ru Git - kernel.git/commit
PCI: update bridge resources to get more big ranges in PCI assign unssigned
authorYinghai Lu <yinghai@kernel.org>
Fri, 22 Jan 2010 09:02:24 +0000 (01:02 -0800)
committerJesse Barnes <jbarnes@virtuousgeek.org>
Tue, 23 Feb 2010 00:17:22 +0000 (16:17 -0800)
commitace4435dfd415ee571aad6672fe89d17506b33dc
tree7abb576779682d20fb71d8656d50741571f0cdb2
parentaa4f6f03782b7e2cc2cf9ee323478705873847a2
PCI: update bridge resources to get more big ranges in PCI assign unssigned

BIOS separates IO ranges between several IOHs, and on some slots, BIOS assigns
resources to a bridge, but stops assigning resources to the device under that
bridge, because the device needs a big resource.

So:
  1. allocate resources and record the failed device resources
  2. clear the BIOS assigned resources of the parent bridge of failing device
  3. go back and call pci assign unassigned
  4. if it still fails, go up the tree, clear more bridges. and try again

Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
drivers/pci/setup-bus.c