From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
To: Fenglin Wu <quic_fenglinw@quicinc.com>
Cc: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>,
linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org,
krzysztof.kozlowski+dt@linaro.org, robh+dt@kernel.org,
agross@kernel.org, andersson@kernel.org,
Konrad Dybcio <konrad.dybcio@linaro.org>,
linux-input@vger.kernel.org, quic_collinsd@quicinc.com,
quic_subbaram@quicinc.com, quic_kamalw@quicinc.com,
jestar@qti.qualcomm.com, Luca Weiss <luca.weiss@fairphone.com>
Subject: Re: [RESEND PATCH v6 3/3] input: pm8xxx-vibrator: add new SPMI vibrator support
Date: Thu, 28 Mar 2024 13:24:38 -0700 [thread overview]
Message-ID: <ZgXSBiQcBEbwF060@google.com> (raw)
In-Reply-To: <98c668b6-7595-2c0a-ebe5-2f729d29b618@quicinc.com>
Hi Fenglin,
On Thu, Mar 28, 2024 at 02:52:32PM +0800, Fenglin Wu wrote:
>
>
> On 2023/10/1 0:17, Dmitry Torokhov wrote:
> > On Mon, Sep 25, 2023 at 10:54:45AM +0800, Fenglin Wu wrote:
> > >
> > >
> > > On 9/24/2023 3:07 AM, Dmitry Baryshkov wrote:
> > > > > +
> > > > > + switch (vib->data->hw_type) {
> > > > > + case SSBI_VIB:
> > > > > mask = SSBI_VIB_DRV_LEVEL_MASK;
> > > > > shift = SSBI_VIB_DRV_SHIFT;
> > > > > + break;
> > > > > + case SPMI_VIB:
> > > > > + mask = SPMI_VIB_DRV_LEVEL_MASK;
> > > > > + shift = SPMI_VIB_DRV_SHIFT;
> > > > > + break;
> > > > > + case SPMI_VIB_GEN2:
> > > > > + mask = SPMI_VIB_GEN2_DRV_MASK;
> > > > > + shift = SPMI_VIB_GEN2_DRV_SHIFT;
> > > > > + break;
> > > > > + default:
> > > > > + return -EINVAL;
> > > > Could you please move the switch to the previous patch? Then it would
> > > > be more obvious that you are just adding the SPMI_VIB_GEN2 here.
> > > >
> > > > Other than that LGTM.
> > >
> > > Sure, I can move the switch to the previous refactoring patch.
> >
> > Actually, the idea of having a const "reg" or "chip", etc. structure is
> > to avoid this kind of runtime checks based on hardware type and instead
> > use common computation. I believe you need to move mask and shift into
> > the chip-specific structure and avoid defining hw_type.
> >
> > Thanks.
>
> Hi Dmitry,
>
> The v7 changes have been pending for a while, I am not sure if you are still
> insist on this. As I explained, I actually did it this way in v2 and it got
> updated to this by following other comments.
>
> Can you respond and tell me if you prefer changes similar to v2? I can
> update and push v8 by following your suggestion.
>
> v7: https://lore.kernel.org/linux-arm-msm/20231108-pm8xxx-vibrator-v7-0-632c731d25a8@quicinc.com/
>
> v2: https://lore.kernel.org/linux-arm-msm/20230718062639.2339589-3-quic_fenglinw@quicinc.com/
Yes, I believe what you had in v2 was better, and Dmitry Baryshkov's
comments on v2 were also great.
You can have 2 styles of code - you have a hw type for each regulator
and then use it to do conditional logic in the code. If you do it this
way you and you need to add a new device type or model you have to go
through the code and validate all the checks. Or you could have a
structure that is defined flexibly enough to cover all existing
permutations, and you rely on the data in it to control the behavior.
You should not mix the 2 styles, as this just makes the code more
confusing.
Thanks.
--
Dmitry
next prev parent reply other threads:[~2024-03-28 20:24 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-22 8:37 [RESEND PATCH v6 0/3] Add support for vibrator in multiple PMICs Fenglin Wu
2023-09-22 8:37 ` [RESEND PATCH v6 1/3] input: pm8xxx-vib: refactor to easily support new SPMI vibrator Fenglin Wu
2023-09-23 19:05 ` Dmitry Baryshkov
2023-09-25 2:52 ` Fenglin Wu
2023-09-22 8:38 ` [RESEND PATCH v6 2/3] dt-bindings: input: qcom,pm8xxx-vib: add new SPMI vibrator module Fenglin Wu
2023-09-22 8:38 ` [RESEND PATCH v6 3/3] input: pm8xxx-vibrator: add new SPMI vibrator support Fenglin Wu
2023-09-23 19:07 ` Dmitry Baryshkov
2023-09-25 2:54 ` Fenglin Wu
2023-09-30 16:17 ` Dmitry Torokhov
2023-10-09 4:01 ` Fenglin Wu
2023-10-25 9:54 ` Fenglin Wu
2024-03-28 6:52 ` Fenglin Wu
2024-03-28 20:24 ` Dmitry Torokhov [this message]
-- strict thread matches above, loose matches on Subject: below --
2023-08-28 5:32 [RESEND PATCH v6 0/3] Add support for vibrator in multiple PMICs Fenglin Wu
2023-08-28 5:32 ` [RESEND PATCH v6 3/3] input: pm8xxx-vibrator: add new SPMI vibrator support Fenglin Wu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZgXSBiQcBEbwF060@google.com \
--to=dmitry.torokhov@gmail.com \
--cc=agross@kernel.org \
--cc=andersson@kernel.org \
--cc=dmitry.baryshkov@linaro.org \
--cc=jestar@qti.qualcomm.com \
--cc=konrad.dybcio@linaro.org \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=luca.weiss@fairphone.com \
--cc=quic_collinsd@quicinc.com \
--cc=quic_fenglinw@quicinc.com \
--cc=quic_kamalw@quicinc.com \
--cc=quic_subbaram@quicinc.com \
--cc=robh+dt@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox