From 7f72c641957344e05176b7f31b0fffca434f4be7 Mon Sep 17 00:00:00 2001 From: Rizwan Qureshi Date: Wed, 4 Oct 2017 18:53:19 +0530 Subject: soc/intel/{common,apollolake}: Add checks to handle negative values Fix issues reported by coverity scan in the below files. src/soc/intel/common/block/i2c 1375440: Improper use of negative value 1375441: Improper use of negative value 1375444: Improper use of negative value src/soc/intel/apollolake/i2c.c 1375442: Unsigned compared against 0 Change-Id: Ic65400c934631e3dcd3aa664c24cb451616e7f4d Signed-off-by: Rizwan Qureshi Reviewed-on: https://review.coreboot.org/21875 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin --- src/soc/intel/apollolake/i2c.c | 2 +- src/soc/intel/common/block/i2c/i2c.c | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) (limited to 'src/soc/intel') diff --git a/src/soc/intel/apollolake/i2c.c b/src/soc/intel/apollolake/i2c.c index 2b6cbf95b2..4ae500ecce 100644 --- a/src/soc/intel/apollolake/i2c.c +++ b/src/soc/intel/apollolake/i2c.c @@ -44,7 +44,7 @@ uintptr_t i2c_get_soc_early_base(unsigned int bus) /* Convert I2C bus number to PCI device and function */ int i2c_soc_bus_to_devfn(unsigned int bus) { - if (bus >= 0 && bus <= 3) + if (bus <= 3) return PCI_DEVFN(PCH_DEV_SLOT_SIO1, bus); else if (bus >= 4 && bus <= 7) return PCI_DEVFN(PCH_DEV_SLOT_SIO2, (bus - 4)); diff --git a/src/soc/intel/common/block/i2c/i2c.c b/src/soc/intel/common/block/i2c/i2c.c index 625bb991d4..c6f3be2206 100644 --- a/src/soc/intel/common/block/i2c/i2c.c +++ b/src/soc/intel/common/block/i2c/i2c.c @@ -96,9 +96,12 @@ static void lpss_i2c_dev_init(struct device *dev) const struct lpss_i2c_bus_config *config; int bus = lpss_i2c_dev_to_bus(dev); + if (bus < 0) + return; + config = i2c_get_soc_cfg(bus, dev); - if (!config || bus < 0) + if (!config) return; lpss_i2c_init(bus, config); @@ -126,6 +129,9 @@ static void lpss_i2c_acpi_fill_ssdt(struct device *dev) bus = lpss_i2c_dev_to_bus(dev); + if (bus < 0) + return; + bcfg = i2c_get_soc_cfg(bus, dev); if (!bcfg) -- cgit v1.2.3