On Thu, Oct 23, 2025 at 03:14:38PM +0300, Dmitry Baryshkov wrote:
> On Thu, Oct 23, 2025 at 04:06:04PM +0800, yuanjie yang wrote:
> > From: Yuanjie Yang <[email protected]>
> >
> > The NT37801 Sepc V1.0 chapter "5.7.1 Power On Sequence" states
> > VDDI=1.65V~1.95V, so set sufficient voltage for panel nt37801.
> >
> > Signed-off-by: Yongxing Mou <[email protected]>
> > Signed-off-by: Yuanjie Yang <[email protected]>
> > ---
> > drivers/gpu/drm/panel/panel-novatek-nt37801.c | 5 +++++
> > 1 file changed, 5 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/panel/panel-novatek-nt37801.c
> > b/drivers/gpu/drm/panel/panel-novatek-nt37801.c
> > index d6a37d7e0cc6..7eda16e0c1f9 100644
> > --- a/drivers/gpu/drm/panel/panel-novatek-nt37801.c
> > +++ b/drivers/gpu/drm/panel/panel-novatek-nt37801.c
> > @@ -267,6 +267,11 @@ static int novatek_nt37801_probe(struct
> > mipi_dsi_device *dsi)
> > if (ret < 0)
> > return ret;
> >
> > + ret = regulator_set_voltage(ctx->supplies[0].consumer,
> > + 1650000, 1950000);
>
> This should be done in the DT. Limit the voltage per the user.
Two reason:
1.
I see https://patchwork.freedesktop.org/patch/354612/
panel panel-novatek-nt35510.c also use regulator_set_voltage set right voltage,
so I do the same work.
2. Kaanapali vddio regulator:
vreg_l12b_1p8: ldo12 {
regulator-name = "vreg_l12b_1p8";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1800000>;
Voltage is from 1.2~.1.8 V , So I can not set it 1.65~1.95 V from
DT(1.95V is beyond the allowed range).
So I use regulator_set_voltage to set voltage, and
regulator_set_voltage will choose the appropriate voltage.
Thanks,
Yuanjie
> > + if (ret < 0)
> > + return ret;
> > +
> > ctx->reset_gpio = devm_gpiod_get(dev, "reset", GPIOD_OUT_LOW);
> > if (IS_ERR(ctx->reset_gpio))
> > return dev_err_probe(dev, PTR_ERR(ctx->reset_gpio),
> > --
> > 2.34.1
> >
>
> --
> With best wishes
> Dmitry