mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-15 00:04:15 +08:00
tools/power/x86/intel-speed-select: Abstract is_punit_valid
Allow platform specific implementation to identify a valid punit. No functional changes are expected. Signed-off-by: Zhang Rui <rui.zhang@intel.com> [srinivas.pandruvada@linux.intel.com: changelog edits] Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
This commit is contained in:
parent
d0d1a603c5
commit
143584e848
@ -29,12 +29,22 @@ static char *mbox_get_trl_level_name(int level)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int mbox_is_punit_valid(struct isst_id *id)
|
||||||
|
{
|
||||||
|
if (id->cpu < 0)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
if (id->pkg < 0 || id->die < 0 || id->punit)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
static struct isst_platform_ops mbox_ops = {
|
static struct isst_platform_ops mbox_ops = {
|
||||||
.get_disp_freq_multiplier = mbox_get_disp_freq_multiplier,
|
.get_disp_freq_multiplier = mbox_get_disp_freq_multiplier,
|
||||||
.get_trl_max_levels = mbox_get_trl_max_levels,
|
.get_trl_max_levels = mbox_get_trl_max_levels,
|
||||||
.get_trl_level_name = mbox_get_trl_level_name,
|
.get_trl_level_name = mbox_get_trl_level_name,
|
||||||
|
.is_punit_valid = mbox_is_punit_valid,
|
||||||
};
|
};
|
||||||
|
|
||||||
struct isst_platform_ops *mbox_get_platform_ops(void)
|
struct isst_platform_ops *mbox_get_platform_ops(void)
|
||||||
|
@ -62,13 +62,8 @@ char *isst_get_trl_level_name(int level)
|
|||||||
|
|
||||||
int isst_is_punit_valid(struct isst_id *id)
|
int isst_is_punit_valid(struct isst_id *id)
|
||||||
{
|
{
|
||||||
if (id->cpu < 0)
|
CHECK_CB(is_punit_valid);
|
||||||
return 0;
|
return isst_ops->is_punit_valid(id);
|
||||||
|
|
||||||
if (id->pkg < 0 || id->die < 0 || id->punit)
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
return 1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int isst_send_mmio_command(unsigned int cpu, unsigned int reg, int write,
|
static int isst_send_mmio_command(unsigned int cpu, unsigned int reg, int write,
|
||||||
|
@ -185,6 +185,7 @@ struct isst_platform_ops {
|
|||||||
int (*get_disp_freq_multiplier)(void);
|
int (*get_disp_freq_multiplier)(void);
|
||||||
int (*get_trl_max_levels)(void);
|
int (*get_trl_max_levels)(void);
|
||||||
char *(*get_trl_level_name)(int level);
|
char *(*get_trl_level_name)(int level);
|
||||||
|
int (*is_punit_valid)(struct isst_id *id);
|
||||||
};
|
};
|
||||||
|
|
||||||
extern int is_cpu_in_power_domain(int cpu, struct isst_id *id);
|
extern int is_cpu_in_power_domain(int cpu, struct isst_id *id);
|
||||||
|
Loading…
Reference in New Issue
Block a user