mbox series

[v4,0/5] MediaTek PMIC Wrap improvements and cleanups

Message ID 20220517104712.24579-1-angelogioacchino.delregno@collabora.com (mailing list archive)
Headers show
Series MediaTek PMIC Wrap improvements and cleanups | expand

Message

AngeloGioacchino Del Regno May 17, 2022, 10:47 a.m. UTC
This series is meant to improve the mtk-pmic-wrap driver;
that's done by removing the custom pwrap_wait_for_state() function
and correctly using the readx_poll_timeout macro instead, which is
doing exactly the same as the former.

As also shown in a patch [1] by Zhiyong Tao (MediaTek), performing
a tight loop is not desired: because of the operation timing in the
SPMI PMICs on these platforms, it makes more sense to wait for some
microseconds before trying to read again, reducing CPU busy time
around these state waits. For this purpose, a ~10uS delay was chosen.

While at it, I also took the occasion to tidy up this driver a
little by optimizing its probe() function.

[1]: https://patchwork.kernel.org/project/linux-mediatek/patch/20220329115824.13005-2-zhiyong.tao@mediatek.com/

Changes in v4:
 - Avoided moving call to platform_get_irq in patch 3/5
 - Dropped Nicolas' tags from patch 3/5 as it's different now
 - Added newline for readability in comment on patch 5/5

Changes in v3:
 - Added two more cleanup patches (4/5, 5/5)

Changes in v2:
 - Fixed a critical typo in patch 1/5. Thanks Nicolas!

AngeloGioacchino Del Regno (5):
  soc: mediatek: pwrap: Use readx_poll_timeout() instead of custom
    function
  soc: mediatek: pwrap: Switch to
    devm_platform_ioremap_resource_byname()
  soc: mediatek: pwrap: Check return value of platform_get_irq()
  soc: mediatek: pwrap: Move IO pointers to new structure
  soc: mediatek: pwrap: Compress of_device_id entries to one line

 drivers/soc/mediatek/mtk-pmic-wrap.c | 225 ++++++++++++---------------
 1 file changed, 97 insertions(+), 128 deletions(-)

Comments

Matthias Brugger May 17, 2022, 1:34 p.m. UTC | #1
On 17/05/2022 12:47, AngeloGioacchino Del Regno wrote:
> This series is meant to improve the mtk-pmic-wrap driver;
> that's done by removing the custom pwrap_wait_for_state() function
> and correctly using the readx_poll_timeout macro instead, which is
> doing exactly the same as the former.
> 
> As also shown in a patch [1] by Zhiyong Tao (MediaTek), performing
> a tight loop is not desired: because of the operation timing in the
> SPMI PMICs on these platforms, it makes more sense to wait for some
> microseconds before trying to read again, reducing CPU busy time
> around these state waits. For this purpose, a ~10uS delay was chosen.
> 
> While at it, I also took the occasion to tidy up this driver a
> little by optimizing its probe() function.
> 
> [1]: https://patchwork.kernel.org/project/linux-mediatek/patch/20220329115824.13005-2-zhiyong.tao@mediatek.com/
> 
> Changes in v4:
>   - Avoided moving call to platform_get_irq in patch 3/5
>   - Dropped Nicolas' tags from patch 3/5 as it's different now
>   - Added newline for readability in comment on patch 5/5
> 

Whole series applied, thanks!

Matthias

> Changes in v3:
>   - Added two more cleanup patches (4/5, 5/5)
> 
> Changes in v2:
>   - Fixed a critical typo in patch 1/5. Thanks Nicolas!
> 
> AngeloGioacchino Del Regno (5):
>    soc: mediatek: pwrap: Use readx_poll_timeout() instead of custom
>      function
>    soc: mediatek: pwrap: Switch to
>      devm_platform_ioremap_resource_byname()
>    soc: mediatek: pwrap: Check return value of platform_get_irq()
>    soc: mediatek: pwrap: Move IO pointers to new structure
>    soc: mediatek: pwrap: Compress of_device_id entries to one line
> 
>   drivers/soc/mediatek/mtk-pmic-wrap.c | 225 ++++++++++++---------------
>   1 file changed, 97 insertions(+), 128 deletions(-)
>