devicetree: Discriminate device ops scan_bus()

Use of scan_static_bus() and tree traversals is somewhat convoluted.
Start cleaning this up by assigning each path type with separate
static scan_bus() function.

For ME, SMBus and LPC paths a bus cannot expose bridges, as those would
add to the number of encountered PCI buses.

Change-Id: I8bb11450516faad4fa33b8f69bce5b9978ec75e5
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: http://review.coreboot.org/8534
Tested-by: build bot (Jenkins)
Reviewed-by: Timothy Pearson <tpearson@raptorengineeringinc.com>
This commit is contained in:
Kyösti Mälkki
2015-02-26 20:47:47 +02:00
parent 6ccf119932
commit d0e212cdce
77 changed files with 140 additions and 117 deletions

View File

@ -1,10 +1,5 @@
#include <console/console.h>
#include <device/device.h>
#include <device/smbus.h>
#include <device/pci.h>
#include <device/pci_ids.h>
#include <device/pci_ops.h>
#include <cpu/x86/msr.h>
static void i2cmux_set_link(struct device *dev, unsigned int link)
{
@ -21,7 +16,7 @@ static struct device_operations i2cmux_operations = {
.set_resources = DEVICE_NOOP,
.enable_resources = DEVICE_NOOP,
.init = DEVICE_NOOP,
.scan_bus = scan_static_bus,
.scan_bus = scan_smbus,
.set_link = i2cmux_set_link,
};

View File

@ -1,10 +1,5 @@
#include <console/console.h>
#include <device/device.h>
#include <device/smbus.h>
#include <device/pci.h>
#include <device/pci_ids.h>
#include <device/pci_ops.h>
#include <cpu/x86/msr.h>
static void i2cmux2_set_link(struct device *dev, unsigned int link)
{
@ -20,7 +15,7 @@ static struct device_operations i2cmux2_operations = {
.set_resources = DEVICE_NOOP,
.enable_resources = DEVICE_NOOP,
.init = DEVICE_NOOP,
.scan_bus = scan_static_bus,
.scan_bus = scan_smbus,
.set_link = i2cmux2_set_link,
};