mirror of
https://github.com/torvalds/linux.git
synced 2026-05-31 02:24:24 +02:00
backlight: qcom-wled: Support ovp values for PMI8994
WLED4 found in PMI8994 supports different ovp values.
Fixes: 6fc632d3e3 ("video: backlight: qcom-wled: Add PMI8994 compatible")
Signed-off-by: Barnabás Czémán <barnabas.czeman@mainlining.org>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Reviewed-by: Daniel Thompson (RISCstar) <danielt@kernel.org>
Link: https://patch.msgid.link/20260116-pmi8950-wled-v3-2-e6c93de84079@mainlining.org
Signed-off-by: Lee Jones <lee@kernel.org>
This commit is contained in:
parent
02031064bb
commit
f29f972a6e
|
|
@ -1244,6 +1244,15 @@ static const struct wled_var_cfg wled4_ovp_cfg = {
|
|||
.size = ARRAY_SIZE(wled4_ovp_values),
|
||||
};
|
||||
|
||||
static const u32 pmi8994_wled_ovp_values[] = {
|
||||
31000, 29500, 19400, 17800,
|
||||
};
|
||||
|
||||
static const struct wled_var_cfg pmi8994_wled_ovp_cfg = {
|
||||
.values = pmi8994_wled_ovp_values,
|
||||
.size = ARRAY_SIZE(pmi8994_wled_ovp_values),
|
||||
};
|
||||
|
||||
static inline u32 wled5_ovp_values_fn(u32 idx)
|
||||
{
|
||||
/*
|
||||
|
|
@ -1357,6 +1366,29 @@ static int wled_configure(struct wled *wled)
|
|||
},
|
||||
};
|
||||
|
||||
const struct wled_u32_opts pmi8994_wled_opts[] = {
|
||||
{
|
||||
.name = "qcom,current-boost-limit",
|
||||
.val_ptr = &cfg->boost_i_limit,
|
||||
.cfg = &wled4_boost_i_limit_cfg,
|
||||
},
|
||||
{
|
||||
.name = "qcom,current-limit-microamp",
|
||||
.val_ptr = &cfg->string_i_limit,
|
||||
.cfg = &wled4_string_i_limit_cfg,
|
||||
},
|
||||
{
|
||||
.name = "qcom,ovp-millivolt",
|
||||
.val_ptr = &cfg->ovp,
|
||||
.cfg = &pmi8994_wled_ovp_cfg,
|
||||
},
|
||||
{
|
||||
.name = "qcom,switching-freq",
|
||||
.val_ptr = &cfg->switch_freq,
|
||||
.cfg = &wled3_switch_freq_cfg,
|
||||
},
|
||||
};
|
||||
|
||||
const struct wled_u32_opts wled5_opts[] = {
|
||||
{
|
||||
.name = "qcom,current-boost-limit",
|
||||
|
|
@ -1423,8 +1455,13 @@ static int wled_configure(struct wled *wled)
|
|||
break;
|
||||
|
||||
case 4:
|
||||
u32_opts = wled4_opts;
|
||||
size = ARRAY_SIZE(wled4_opts);
|
||||
if (of_device_is_compatible(dev->of_node, "qcom,pmi8994-wled")) {
|
||||
u32_opts = pmi8994_wled_opts;
|
||||
size = ARRAY_SIZE(pmi8994_wled_opts);
|
||||
} else {
|
||||
u32_opts = wled4_opts;
|
||||
size = ARRAY_SIZE(wled4_opts);
|
||||
}
|
||||
*cfg = wled4_config_defaults;
|
||||
wled->wled_set_brightness = wled4_set_brightness;
|
||||
wled->wled_sync_toggle = wled3_sync_toggle;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user