mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-24 19:30:52 +07:00
scsi: ufs-qcom: Override devfreq parameters
Override devfreq parameters for power-performance trade-off. Link: https://lore.kernel.org/r/b6875729b6072134985c9113a820cf60a2af22e7.1585160616.git.asutoshd@codeaurora.org Acked-by: Avri Altman <Avri.Altman@wdc.com> Signed-off-by: Asutosh Das <asutoshd@codeaurora.org> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
2c75f9a5be
commit
80b21006cd
@ -10,6 +10,7 @@
|
||||
#include <linux/phy/phy.h>
|
||||
#include <linux/gpio/consumer.h>
|
||||
#include <linux/reset-controller.h>
|
||||
#include <linux/devfreq.h>
|
||||
|
||||
#include "ufshcd.h"
|
||||
#include "ufshcd-pltfrm.h"
|
||||
@ -1689,6 +1690,29 @@ static void ufs_qcom_device_reset(struct ufs_hba *hba)
|
||||
usleep_range(10, 15);
|
||||
}
|
||||
|
||||
#if IS_ENABLED(CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND)
|
||||
static void ufs_qcom_config_scaling_param(struct ufs_hba *hba,
|
||||
struct devfreq_dev_profile *p,
|
||||
void *data)
|
||||
{
|
||||
static struct devfreq_simple_ondemand_data *d;
|
||||
|
||||
if (!data)
|
||||
return;
|
||||
|
||||
d = (struct devfreq_simple_ondemand_data *)data;
|
||||
p->polling_ms = 60;
|
||||
d->upthreshold = 70;
|
||||
d->downdifferential = 5;
|
||||
}
|
||||
#else
|
||||
static void ufs_qcom_config_scaling_param(struct ufs_hba *hba,
|
||||
struct devfreq_dev_profile *p,
|
||||
void *data)
|
||||
{
|
||||
}
|
||||
#endif
|
||||
|
||||
/**
|
||||
* struct ufs_hba_qcom_vops - UFS QCOM specific variant operations
|
||||
*
|
||||
@ -1710,6 +1734,7 @@ static const struct ufs_hba_variant_ops ufs_hba_qcom_vops = {
|
||||
.resume = ufs_qcom_resume,
|
||||
.dbg_register_dump = ufs_qcom_dump_dbg_regs,
|
||||
.device_reset = ufs_qcom_device_reset,
|
||||
.config_scaling_param = ufs_qcom_config_scaling_param,
|
||||
};
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user