`fch_misc_setup()` uses `acpi_dev_get_property()` to read the value of
"is-rv" passed in by BIOS in ACPI tables. However, not all BIOSes
might pass in this property and hence it is important to first check
the return value of `acpi_dev_get_property()` before referencing the
object filled by it.
Signed-off-by: Furquan Shaikh <[email protected]>
---
drivers/acpi/acpi_apd.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/acpi/acpi_apd.c b/drivers/acpi/acpi_apd.c
index 4c348377a39d..806b8ce05624 100644
--- a/drivers/acpi/acpi_apd.c
+++ b/drivers/acpi/acpi_apd.c
@@ -99,8 +99,8 @@ static int fch_misc_setup(struct apd_private_data *pdata)
if (ret < 0)
return -ENOENT;
- acpi_dev_get_property(adev, "is-rv", ACPI_TYPE_INTEGER, &obj);
- clk_data->is_rv = obj->integer.value;
+ if (!acpi_dev_get_property(adev, "is-rv", ACPI_TYPE_INTEGER, &obj))
+ clk_data->is_rv = obj->integer.value;
list_for_each_entry(rentry, &resource_list, node) {
clk_data->base = devm_ioremap(&adev->dev, rentry->res->start,
--
2.28.0.220.ged08abb693-goog
On Wed, Aug 19, 2020 at 7:17 PM Furquan Shaikh <[email protected]> wrote:
>
> `fch_misc_setup()` uses `acpi_dev_get_property()` to read the value of
> "is-rv" passed in by BIOS in ACPI tables. However, not all BIOSes
> might pass in this property and hence it is important to first check
> the return value of `acpi_dev_get_property()` before referencing the
> object filled by it.
>
> Signed-off-by: Furquan Shaikh <[email protected]>
> ---
> drivers/acpi/acpi_apd.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/acpi/acpi_apd.c b/drivers/acpi/acpi_apd.c
> index 4c348377a39d..806b8ce05624 100644
> --- a/drivers/acpi/acpi_apd.c
> +++ b/drivers/acpi/acpi_apd.c
> @@ -99,8 +99,8 @@ static int fch_misc_setup(struct apd_private_data *pdata)
> if (ret < 0)
> return -ENOENT;
>
> - acpi_dev_get_property(adev, "is-rv", ACPI_TYPE_INTEGER, &obj);
> - clk_data->is_rv = obj->integer.value;
> + if (!acpi_dev_get_property(adev, "is-rv", ACPI_TYPE_INTEGER, &obj))
> + clk_data->is_rv = obj->integer.value;
>
> list_for_each_entry(rentry, &resource_list, node) {
> clk_data->base = devm_ioremap(&adev->dev, rentry->res->start,
> --
Applied (with minor subject edits) as 5.9-rc material, thanks!