diff options
author | Angel Pons <th3fanbus@gmail.com> | 2022-04-03 21:10:26 +0200 |
---|---|---|
committer | Felix Held <felix-coreboot@felixheld.de> | 2022-04-04 23:56:15 +0000 |
commit | 1e124b94fc43df00abe60b067a316460384a6df1 (patch) | |
tree | fa9fa4c418da6357575b1f89bec0aac079126c29 /src/drivers | |
parent | 32ec4526a09c8daffd8e4211f45046fea20141fa (diff) |
drivers/wifi/generic/acpi.c: NULL-check pointers before dereferencing
Checking whether a pointer is NULL after it has been dereferenced makes
zero sense. Make sure the `wifi_ssdt_write_properties()` function never
gets invoked with a NULL argument for the `dev` parameter, and simplify
the logic around the `is_cnvi_ddr_rfim_enabled` variable accordingly.
Change-Id: I3fbc9565e7e9b4e1c14a68f6a5fd779577045236
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/63340
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Singer <felixsinger@posteo.net>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Diffstat (limited to 'src/drivers')
-rw-r--r-- | src/drivers/wifi/generic/acpi.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/drivers/wifi/generic/acpi.c b/src/drivers/wifi/generic/acpi.c index 65940d6e9f..ee0963178e 100644 --- a/src/drivers/wifi/generic/acpi.c +++ b/src/drivers/wifi/generic/acpi.c @@ -533,11 +533,9 @@ static void wifi_ssdt_write_device(const struct device *dev, const char *path) static void wifi_ssdt_write_properties(const struct device *dev, const char *scope) { - bool is_cnvi_ddr_rfim_enabled = false; - const struct drivers_wifi_generic_config *config = dev->chip_info; - if (dev && config) - is_cnvi_ddr_rfim_enabled = config->enable_cnvi_ddr_rfim; + + bool is_cnvi_ddr_rfim_enabled = config && config->enable_cnvi_ddr_rfim; /* Scope */ acpigen_write_scope(scope); @@ -646,6 +644,8 @@ const char *wifi_pcie_acpi_name(const struct device *dev) void wifi_cnvi_fill_ssdt(const struct device *dev) { const char *path; + if (!dev) + return; path = acpi_device_path(dev->bus->dev); if (!path) |