diff options
author | Jacob Garber <jgarber1@ualberta.ca> | 2019-03-21 14:20:21 -0600 |
---|---|---|
committer | Patrick Georgi <pgeorgi@google.com> | 2019-04-08 14:12:59 +0000 |
commit | 42660cdda7020ab7056f219e9033c9d0f2f09239 (patch) | |
tree | 63b72b518423b0ba1dd32c6a7afee989ab7548bb /src/mainboard/amd | |
parent | a12e9b0666e1a22958ea1fae87199a8b82266ee7 (diff) |
nb/amd/pi, mb/amd/bettong: Fix null pointer checks
The dev pointers were being dereferenced before the null
check. Move the checks so they are done earlier.
Found-by: Coverity Scan, CID 1241851 (REVERSE_INULL)
Signed-off-by: Jacob Garber <jgarber1@ualberta.ca>
Change-Id: Ie578787c3c26a1f3acb4567c135486667e88a888
Reviewed-on: https://review.coreboot.org/c/coreboot/+/32022
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Diffstat (limited to 'src/mainboard/amd')
-rw-r--r-- | src/mainboard/amd/bettong/BiosCallOuts.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/mainboard/amd/bettong/BiosCallOuts.c b/src/mainboard/amd/bettong/BiosCallOuts.c index 040de9b51c..e4020b0ed0 100644 --- a/src/mainboard/amd/bettong/BiosCallOuts.c +++ b/src/mainboard/amd/bettong/BiosCallOuts.c @@ -121,14 +121,20 @@ static AGESA_STATUS board_ReadSpd(UINT32 Func, UINTN Data, VOID *ConfigPtr) AGESA_READ_SPD_PARAMS *info = ConfigPtr; DEVTREE_CONST struct device *dev = pcidev_on_root(0x18, 2); + + if (dev == NULL) + return AGESA_ERROR; + DEVTREE_CONST struct northbridge_amd_pi_00660F01_config *config = dev->chip_info; + + if (config == NULL) + return AGESA_ERROR; + UINT8 spdAddrLookup_rev_F [2][2][4]= { { {0xA0, 0xA2}, {0xA4, 0xAC}, }, /* socket 0 - Channel 0 & 1 - 8-bit SPD addresses */ { {0x00, 0x00}, {0x00, 0x00}, }, /* socket 1 - Channel 0 & 1 - 8-bit SPD addresses */ }; - if ((dev == 0) || (config == 0)) - return AGESA_ERROR; if (info->SocketId >= ARRAY_SIZE(config->spdAddrLookup)) return AGESA_ERROR; if (info->MemChannelId >= ARRAY_SIZE(config->spdAddrLookup[0])) |