diff options
Diffstat (limited to 'src/soc')
-rw-r--r-- | src/soc/intel/apollolake/i2c.c | 5 | ||||
-rw-r--r-- | src/soc/intel/cannonlake/i2c.c | 5 | ||||
-rw-r--r-- | src/soc/intel/common/block/i2c/i2c_early.c | 2 | ||||
-rw-r--r-- | src/soc/intel/skylake/i2c.c | 5 |
4 files changed, 10 insertions, 7 deletions
diff --git a/src/soc/intel/apollolake/i2c.c b/src/soc/intel/apollolake/i2c.c index bcaf740fe6..3df333c869 100644 --- a/src/soc/intel/apollolake/i2c.c +++ b/src/soc/intel/apollolake/i2c.c @@ -21,10 +21,11 @@ #include <soc/pci_devs.h> #include "chip.h" -const struct dw_i2c_bus_config *dw_i2c_get_soc_cfg(unsigned int bus, - const struct device *dev) +const struct dw_i2c_bus_config *dw_i2c_get_soc_cfg(unsigned int bus) { const struct soc_intel_apollolake_config *config; + const struct device *dev = dev_find_slot(0, SA_DEVFN_ROOT); + if (!dev || !dev->chip_info) { printk(BIOS_ERR, "%s: Could not find SoC devicetree config!\n", __func__); diff --git a/src/soc/intel/cannonlake/i2c.c b/src/soc/intel/cannonlake/i2c.c index f183253443..ef3034537f 100644 --- a/src/soc/intel/cannonlake/i2c.c +++ b/src/soc/intel/cannonlake/i2c.c @@ -22,10 +22,11 @@ #include <soc/pci_devs.h> #include "chip.h" -const struct dw_i2c_bus_config *dw_i2c_get_soc_cfg(unsigned int bus, - const struct device *dev) +const struct dw_i2c_bus_config *dw_i2c_get_soc_cfg(unsigned int bus) { const struct soc_intel_cannonlake_config *config; + const struct device *dev = dev_find_slot(0, SA_DEVFN_ROOT); + if (!dev || !dev->chip_info) { printk(BIOS_ERR, "%s: Could not find SoC devicetree config!\n", __func__); diff --git a/src/soc/intel/common/block/i2c/i2c_early.c b/src/soc/intel/common/block/i2c/i2c_early.c index 728e7880b5..c4af55967a 100644 --- a/src/soc/intel/common/block/i2c/i2c_early.c +++ b/src/soc/intel/common/block/i2c/i2c_early.c @@ -47,7 +47,7 @@ static int lpss_i2c_early_init_bus(unsigned int bus) } /* Skip if not enabled for early init */ - config = dw_i2c_get_soc_cfg(bus, tree_dev); + config = dw_i2c_get_soc_cfg(bus); if (!config || !config->early_init) { printk(BIOS_DEBUG, "I2C%u not enabled for early init\n", bus); return -1; diff --git a/src/soc/intel/skylake/i2c.c b/src/soc/intel/skylake/i2c.c index 56260d702f..baf6335ced 100644 --- a/src/soc/intel/skylake/i2c.c +++ b/src/soc/intel/skylake/i2c.c @@ -20,10 +20,11 @@ #include <soc/pci_devs.h> #include "chip.h" -const struct dw_i2c_bus_config *dw_i2c_get_soc_cfg(unsigned int bus, - const struct device *dev) +const struct dw_i2c_bus_config *dw_i2c_get_soc_cfg(unsigned int bus) { const struct soc_intel_skylake_config *config; + const struct device *dev = dev_find_slot(0, SA_DEVFN_ROOT); + if (!dev || !dev->chip_info) { printk(BIOS_ERR, "%s: Could not find SoC devicetree config!\n", __func__); |