drivers: soc: qcom: rimps_memlat: add NULL check for SCMI handle
SCMI handle will remain NULL in case of SCMI failures during initialization. Update all store functions to check for NULL before accessing vendor ops structure. Change-Id: Ied56f62785579078fb06fb526e29aaef9d45e00d Signed-off-by: Santosh Mardi <gsantosh@codeaurora.org>
This commit is contained in:
parent
55572f84cc
commit
e5c82d7b7c
@ -207,7 +207,12 @@ static ssize_t store_##name(struct kobject *kobj, \
|
||||
unsigned int val; \
|
||||
struct memlat_mon *mon = to_memlat_mon(kobj); \
|
||||
struct memlat_cpu_grp *cpu_grp = mon->cpu_grp; \
|
||||
struct scmi_memlat_vendor_ops *ops = cpu_grp->handle->memlat_ops; \
|
||||
struct scmi_memlat_vendor_ops *ops = NULL; \
|
||||
if (cpu_grp && cpu_grp->handle && \
|
||||
cpu_grp->handle->memlat_ops) \
|
||||
ops = cpu_grp->handle->memlat_ops; \
|
||||
else \
|
||||
return -ENODEV; \
|
||||
ret = kstrtouint(buf, 10, &val); \
|
||||
if (ret < 0) \
|
||||
return ret; \
|
||||
@ -248,11 +253,14 @@ static ssize_t store_min_freq(struct kobject *kobj,
|
||||
unsigned int val;
|
||||
struct memlat_mon *mon = to_memlat_mon(kobj);
|
||||
struct memlat_cpu_grp *cpu_grp = mon->cpu_grp;
|
||||
struct scmi_memlat_vendor_ops *ops = cpu_grp->handle->memlat_ops;
|
||||
struct scmi_memlat_vendor_ops *ops = NULL;
|
||||
unsigned int min_freq;
|
||||
unsigned int max_freq;
|
||||
|
||||
if (!ops)
|
||||
if (cpu_grp && cpu_grp->handle &&
|
||||
cpu_grp->handle->memlat_ops)
|
||||
ops = cpu_grp->handle->memlat_ops;
|
||||
else
|
||||
return -ENODEV;
|
||||
|
||||
if (mon->mon_type == L3_MEMLAT) {
|
||||
@ -290,11 +298,14 @@ static ssize_t store_max_freq(struct kobject *kobj,
|
||||
unsigned int val;
|
||||
struct memlat_mon *mon = to_memlat_mon(kobj);
|
||||
struct memlat_cpu_grp *cpu_grp = mon->cpu_grp;
|
||||
struct scmi_memlat_vendor_ops *ops = cpu_grp->handle->memlat_ops;
|
||||
struct scmi_memlat_vendor_ops *ops = NULL;
|
||||
unsigned int min_freq;
|
||||
unsigned int max_freq;
|
||||
|
||||
if (!ops)
|
||||
if (cpu_grp && cpu_grp->handle &&
|
||||
cpu_grp->handle->memlat_ops)
|
||||
ops = cpu_grp->handle->memlat_ops;
|
||||
else
|
||||
return -ENODEV;
|
||||
|
||||
if (mon->mon_type == L3_MEMLAT) {
|
||||
|
Loading…
Reference in New Issue
Block a user