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@xxxxxxxxxxx/
v2:
https://lore.kernel.org/linux-arm-msm/20230718062639.2339589-3-quic_fenglinw@xxxxxxxxxxx/
Thanks