[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ea0275bb-5520-41cb-be7e-71c00aa8fabf@linaro.org>
Date: Mon, 15 Apr 2024 21:47:12 +0200
From: Konrad Dybcio <konrad.dybcio@...aro.org>
To: quic_fenglinw@...cinc.com, kernel@...cinc.com,
Andy Gross <agross@...nel.org>, Bjorn Andersson <andersson@...nel.org>,
Dmitry Torokhov <dmitry.torokhov@...il.com>, Rob Herring
<robh+dt@...nel.org>, Krzysztof Kozlowski
<krzysztof.kozlowski+dt@...aro.org>,
Dmitry Baryshkov <dmitry.baryshkov@...aro.org>
Cc: linux-arm-msm@...r.kernel.org, linux-input@...r.kernel.org,
linux-kernel@...r.kernel.org, devicetree@...r.kernel.org
Subject: Re: [PATCH v10 2/4] input: pm8xxx-vibrator: refactor to support new
SPMI vibrator
On 4/12/24 14:36, Fenglin Wu via B4 Relay wrote:
> From: Fenglin Wu <quic_fenglinw@...cinc.com>
>
> Currently, vibrator control register addresses are hard coded,
> including the base address and offsets, it's not flexible to
> support new SPMI vibrator module which is usually included in
> different PMICs with different base address. Refactor it by using
> the base address defined in devicetree.
>
> Signed-off-by: Fenglin Wu <quic_fenglinw@...cinc.com>
> ---
[...]
> static const struct pm8xxx_regs pm8058_regs = {
> - .drv_addr = 0x4A,
> + .drv_offset = 0,
> .drv_mask = 0xf8,
Since you're nearby anyway:
GENMASK(7, 3)
> .drv_shift = 3,
> .drv_en_manual_mask = 0xfc,
> };
>
> static struct pm8xxx_regs pm8916_regs = {
> - .enable_addr = 0xc046,
> + .enable_offset = 0x46,
> .enable_mask = BIT(7),
> - .drv_addr = 0xc041,
> - .drv_mask = 0x1F,
> + .drv_offset = 0x41,
> + .drv_mask = 0x1f,
GENMASK(4, 0)
[...]
>
> + error = fwnode_property_read_u32(pdev->dev.fwnode, "reg", ®_base);
> + if (error < 0) {
> + dev_err(&pdev->dev, "Failed to read reg address, rc=%d\n", error);
> + return error;
return dev_err_probe() instead
Konrad
Powered by blists - more mailing lists