linux-2.6-microblaze.git
7 months agopwm: vt8500: Introduce a local pwm_chip variable in .probe()
Uwe Kleine-König [Wed, 14 Feb 2024 09:33:13 +0000 (10:33 +0100)]
pwm: vt8500: Introduce a local pwm_chip variable in .probe()

This simplifies converting the driver to pwmchip_alloc() as there is only
a single code line left that makes use of struct vt8500_chip::chip.

Link: https://lore.kernel.org/r/7d903b608609d46cf1ee1e06530f516f42af1ebb.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: vt8500: Change prototype of a helper to prepare further changes
Uwe Kleine-König [Wed, 14 Feb 2024 09:33:12 +0000 (10:33 +0100)]
pwm: vt8500: Change prototype of a helper to prepare further changes

This prepares the driver for further changes that will make it harder to
determine the pwm_chip from a given vt8500_chip. To just not have to do
that, rework vt8500_pwm_busy_wait() to take a pwm_chip.

Link: https://lore.kernel.org/r/fb384c550b359e7707219f87872bcf36482875ff.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: visconti: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:33:11 +0000 (10:33 +0100)]
pwm: visconti: Make use of devm_pwmchip_alloc() function

This prepares the pwm-visconti driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/24e779de69365686bb004742cd8f07cbda131212.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: twl-led: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:33:10 +0000 (10:33 +0100)]
pwm: twl-led: Make use of devm_pwmchip_alloc() function

This prepares the pwm-twl-led driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/5bac90addb3a178ef958a2a524c6ec7e3eea3e6a.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: twl-led: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:33:09 +0000 (10:33 +0100)]
pwm: twl-led: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Link: https://lore.kernel.org/r/43c35b7116a637501b51ac93ec24c00ea92ee1af.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: twl: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:33:08 +0000 (10:33 +0100)]
pwm: twl: Make use of devm_pwmchip_alloc() function

This prepares the pwm-twol driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/c65e796d46df71cd8d0d0941921997b9501f1cb3.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: twl: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:33:07 +0000 (10:33 +0100)]
pwm: twl: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Link: https://lore.kernel.org/r/f11beb6b3a398d1257219a635a78ed0b02263978.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: tiehrpwm: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:33:06 +0000 (10:33 +0100)]
pwm: tiehrpwm: Make use of devm_pwmchip_alloc() function

This prepares the pwm-tiecap driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/62fbac428cae0942f8e88234bf249537fcd890a3.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: tiehrpwm: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:33:05 +0000 (10:33 +0100)]
pwm: tiehrpwm: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Link: https://lore.kernel.org/r/9badd116d0e26a5656b222c5b4adad7e111a53c7.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: tiehrpwm: Change prototype of helpers to prepare further changes
Uwe Kleine-König [Wed, 14 Feb 2024 09:33:04 +0000 (10:33 +0100)]
pwm: tiehrpwm: Change prototype of helpers to prepare further changes

This prepares the driver for further changes that will make it harder to
determine the pwm_chip from a given ehrpwm_pwm_chip. To just not have to
do that, rework ehrpwm_pwm_save_context() and
ehrpwm_pwm_restore_context() take a pwm_chip. Also use the pwm_chip as
driver data instead of the ehrpwm_pwm_chip.

Link: https://lore.kernel.org/r/79052207cdf71f0882ae13fe1a192ef6f6dba35b.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: tiehrpwm: Simplify code to determine the pwmchip's parent device
Uwe Kleine-König [Wed, 14 Feb 2024 09:33:03 +0000 (10:33 +0100)]
pwm: tiehrpwm: Simplify code to determine the pwmchip's parent device

There is already a pointer to the pwmchip, make use of it directly
instead of using the struct ehrpwm_pwm_chip *ddata just obtained from
it. This also has the advantage of not using struct
ehrpwm_pwm_chip::chip any more which will be dropped soon.

Link: https://lore.kernel.org/r/b2b06a3aabf8c04969d59ddf7ba565b303855878.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: tiecap: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:33:02 +0000 (10:33 +0100)]
pwm: tiecap: Make use of devm_pwmchip_alloc() function

This prepares the pwm-tegra driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/af7846109c0df225126c8e5cd186b89ace70afc0.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: tiecap: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:33:01 +0000 (10:33 +0100)]
pwm: tiecap: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Link: https://lore.kernel.org/r/ae92e06b49437ca7e768b1f8b405170e33948a70.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: tiecap: Change prototype of helpers to prepare further changes
Uwe Kleine-König [Wed, 14 Feb 2024 09:33:00 +0000 (10:33 +0100)]
pwm: tiecap: Change prototype of helpers to prepare further changes

This prepares the driver for further changes that will make it harder to
determine the pwm_chip from a given ecap_pwm_chip. To just not have to
do that, rework ecap_pwm_save_context() and ecap_pwm_restore_context
take a pwm_chip. Also use the pwm_chip as driver data instead of the
ecap_pwm_chip.

Link: https://lore.kernel.org/r/ed031f201ff52c6b298de2dc81b06aad3a0207f8.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: tiecap: Simplify code to determine the pwmchip's parent device
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:59 +0000 (10:32 +0100)]
pwm: tiecap: Simplify code to determine the pwmchip's parent device

There is already a pointer to the pwmchip, make use of it directly
instead of using the struct ecap_pwm_chip *pc just obtained from
it. This also has the advantage of not using struct ecap_pwm_chip::chip
any more which will be dropped soon.

Link: https://lore.kernel.org/r/628f4b8c4ba1321075fc1dff70453a1c79ffb814.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: tegra: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:58 +0000 (10:32 +0100)]
pwm: tegra: Make use of devm_pwmchip_alloc() function

This prepares the pwm-tegra driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/8719be3d57b0b5cf575b312e5ff41fe0717e3a43.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: tegra: Prepare removing pwm_chip from driver data
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:57 +0000 (10:32 +0100)]
pwm: tegra: Prepare removing pwm_chip from driver data

This prepares the driver for further changes that will drop struct
pwm_chip chip from struct tegra_pwm_chip. Use the pwm_chip as driver
data instead of the tegra_pwm_chip to get access to the pwm_chip in
tegra_pwm_remove() without using pc->chip.

Link: https://lore.kernel.org/r/2813c63bf1317dee808f4c5c4a9411999f2d5746.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: tegra: Drop duplicated tracking of the parent device
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:56 +0000 (10:32 +0100)]
pwm: tegra: Drop duplicated tracking of the parent device

The pwmchip stores a pointer to the parent device, so there is no need
to store another copy in driver private data. Drop struct
tegra_pwm_chip::dev and use the pwm_chip's parent pointer instead.

Link: https://lore.kernel.org/r/225f4bfcb15fb69eb818ddb71d623157c447180a.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: sunplus: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:55 +0000 (10:32 +0100)]
pwm: sunplus: Make use of devm_pwmchip_alloc() function

This prepares the pwm-sunplus driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/192be7e428eff17dd922c9c0d0d168225b89bb34.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: sun4i: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:54 +0000 (10:32 +0100)]
pwm: sun4i: Make use of devm_pwmchip_alloc() function

This prepares the pwm-sun4i driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Link: https://lore.kernel.org/r/9d175b4e27878618cef2e75b6ecbf01ad5d18164.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: sun4i: Consistently name driver data sun4ichip
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:53 +0000 (10:32 +0100)]
pwm: sun4i: Consistently name driver data sun4ichip

The driver uses three different names for variables of type
sun4i_pwm_chip:

$ git grep 'struct sun4i_pwm_chip \*' v6.8-rc1 -- drivers/pwm/pwm-sun4i.c
v6.8-rc1:drivers/pwm/pwm-sun4i.c:static inline struct sun4i_pwm_chip *to_sun4i_pwm_chip(struct pwm_chip *chip)
v6.8-rc1:drivers/pwm/pwm-sun4i.c:static inline u32 sun4i_pwm_readl(struct sun4i_pwm_chip *chip,
v6.8-rc1:drivers/pwm/pwm-sun4i.c:static inline void sun4i_pwm_writel(struct sun4i_pwm_chip *chip,
v6.8-rc1:drivers/pwm/pwm-sun4i.c:       struct sun4i_pwm_chip *sun4i_pwm = to_sun4i_pwm_chip(chip);
v6.8-rc1:drivers/pwm/pwm-sun4i.c:static int sun4i_pwm_calculate(struct sun4i_pwm_chip *sun4i_pwm,
v6.8-rc1:drivers/pwm/pwm-sun4i.c:       struct sun4i_pwm_chip *sun4i_pwm = to_sun4i_pwm_chip(chip);
v6.8-rc1:drivers/pwm/pwm-sun4i.c:       struct sun4i_pwm_chip *sun4ichip;
v6.8-rc1:drivers/pwm/pwm-sun4i.c:       struct sun4i_pwm_chip *sun4ichip = platform_get_drvdata(pdev);

"chip" is usually reserved for variables of type struct pwm_chip. So
pick sun4ichip as common name which better matches the type name than
sun4i_pwm.

Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Link: https://lore.kernel.org/r/705f54a13b59fff50eaa345d8b1e0c691345b996.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: sun4i: Prepare removing pwm_chip from driver data
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:52 +0000 (10:32 +0100)]
pwm: sun4i: Prepare removing pwm_chip from driver data

This prepares the driver for further changes that will drop struct
pwm_chip chip from struct sun4i_pwm_chip. Use the pwm_chip as driver
data instead of the sun4i_pwm_chip to get access to the pwm_chip in
sun4i_pwm_remove() without using sun4ichip->chip.

Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Link: https://lore.kernel.org/r/f8e3fb96fe341ba0a4bed982aa731c5c7c355b83.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: sun4i: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:51 +0000 (10:32 +0100)]
pwm: sun4i: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Link: https://lore.kernel.org/r/3ddaec73f3abefb45625d0a469026fa8d13da8c0.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: stmpe: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:50 +0000 (10:32 +0100)]
pwm: stmpe: Make use of devm_pwmchip_alloc() function

This prepares the pwm-stmpe driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/7e3dbf3b70126038c0ba16331ca8c07cab575bd3.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: stmpe: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:49 +0000 (10:32 +0100)]
pwm: stmpe: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Link: https://lore.kernel.org/r/2136fbdf9b1e6bac479b935b439e2be73a003b97.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: stm32-lp: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:48 +0000 (10:32 +0100)]
pwm: stm32-lp: Make use of devm_pwmchip_alloc() function

This prepares the pwm-stm32-lp driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/04af7b3d00bc932dd025200a3bf74527c29ca47a.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: stm32-lp: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:47 +0000 (10:32 +0100)]
pwm: stm32-lp: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Link: https://lore.kernel.org/r/d79148ed49389c657b72df05758032be2b516ceb.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: stm32-lp: Prepare removing pwm_chip from driver data
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:46 +0000 (10:32 +0100)]
pwm: stm32-lp: Prepare removing pwm_chip from driver data

This prepares the driver for further changes that will drop struct
pwm_chip chip from struct stm32_pwm_lp. Use the pwm_chip as driver
data instead of the stm32_pwm_lp to get access to the pwm_chip in
stm32_pwm_lp_suspend() without using priv->chip.

Link: https://lore.kernel.org/r/df47d1aff9b529c9a4762b6ba339a18cecba1497.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: stm32-lp: Simplify code to determine the pwmchip's parent device
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:45 +0000 (10:32 +0100)]
pwm: stm32-lp: Simplify code to determine the pwmchip's parent device

There is already a pointer to the pwmchip, make use of it directly
instead of using the struct stm32_pwm_lp *priv just obtained from
it. This also has the advantage of not using struct stm32_pwm_lp::chip
any more which will be dropped soon.

Link: https://lore.kernel.org/r/9ad2399e1a683a6344b12d7f70498393b8f8b9de.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: stm32: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:44 +0000 (10:32 +0100)]
pwm: stm32: Make use of devm_pwmchip_alloc() function

This prepares the pwm-stm32 driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/59e5dfff2b878cc8590e286572672e4f10e35380.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: stm32: Change prototype of helper that detects npwm to prepare further changes
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:43 +0000 (10:32 +0100)]
pwm: stm32: Change prototype of helper that detects npwm to prepare further changes

When the stm32 pwm driver is converted to pwmchip_alloc(), the number of
available PWM lines must be known before the driver private data can be
allocated. So rework the helper function that determines this number to
not take the driver private data struct as input parameter.

Link: https://lore.kernel.org/r/13d4d3e90a9ee1bcd04674dfdc16f242615b8320.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: stm32: Prepare removing pwm_chip from driver data
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:42 +0000 (10:32 +0100)]
pwm: stm32: Prepare removing pwm_chip from driver data

This prepares the driver for further changes that will drop struct
pwm_chip chip from struct stm32_pwm. Use the pwm_chip as driver
data instead of the stm32_pwm to get access to the pwm_chip in
stm32_pwm_suspend() without using priv->chip.

Link: https://lore.kernel.org/r/3db96cd915d9d8fc350a7193c0d55dd109b1f035.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: stm32: Change prototype of a helper to prepare further changes
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:41 +0000 (10:32 +0100)]
pwm: stm32: Change prototype of a helper to prepare further changes

This prepares the driver for further changes that will make it harder to
determine the pwm_chip from a given stm32_pwm. To just not have to do
that, rework stm32_pwm_raw_capture() to take a pwm_chip.

Link: https://lore.kernel.org/r/33790c64563cb0434d7156d96f189c6037b3eb0b.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: stm32: Simplify code to determine the pwmchip's parent device
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:40 +0000 (10:32 +0100)]
pwm: stm32: Simplify code to determine the pwmchip's parent device

There is already a pointer to the pwmchip, make use of it directly
instead of using the struct stm32_pwm *priv just obtained from it. This
also has the advantage of not using struct stm32_pwm::chip any more
which will be dropped soon.

Link: https://lore.kernel.org/r/54ace92a3c02d22f15a79c7ecf00c29f28386a33.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: sti: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:39 +0000 (10:32 +0100)]
pwm: sti: Make use of devm_pwmchip_alloc() function

This prepares the pwm-sti driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/da6fbb5e98e988400e037b0d2ac0c1749822d702.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: sti: Prepare removing pwm_chip from driver data
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:38 +0000 (10:32 +0100)]
pwm: sti: Prepare removing pwm_chip from driver data

This prepares the driver for further changes that will drop struct
pwm_chip chip from struct sti_pwm_chip. Use the pwm_chip as driver data
instead of the sti_pwm_chip to get access to the pwm_chip in
sti_pwm_remove() without using pc->chip.

Link: https://lore.kernel.org/r/56d53372aacff6871df4d6c6779c9dac94592696.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: sprd: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:37 +0000 (10:32 +0100)]
pwm: sprd: Make use of devm_pwmchip_alloc() function

This prepares the pwm-sprd driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Tested-by: Chunyan Zhang <zhang.lyra@gmail.com>
Link: https://lore.kernel.org/r/543213f44686ee72d8f88897bf2ca616e837ae44.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: sprd: Drop duplicated tracking of the parent device
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:36 +0000 (10:32 +0100)]
pwm: sprd: Drop duplicated tracking of the parent device

The pwmchip stores a pointer to the parent device, so there is no need
to store another copy in driver private data. Drop struct
sprd_pwm_chip::dev and use the pwm_chip's parent pointer instead.

Tested-by: Chunyan Zhang <zhang.lyra@gmail.com>
Link: https://lore.kernel.org/r/f85771f4bf659c0fdee30cf117b87fd877bad5e4.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: sprd: Rework how the available channels are counted
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:35 +0000 (10:32 +0100)]
pwm: sprd: Rework how the available channels are counted

To be able to convert the sprd driver to pwmchip_alloc() the number of
PWM channels must be known when the driver private data is allocated. So
make sprd_pwm_clk_init() not take a struct sprd_pwm_chip. On the plus
side this allows to drop a member of said driver private data.

Reviewed-by: Chunyan Zhang <zhang.lyra@gmail.com>
Link: https://lore.kernel.org/r/682cbbafbfc4982383d66c3871bb9e52d4e03195.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: spear: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:34 +0000 (10:32 +0100)]
pwm: spear: Make use of devm_pwmchip_alloc() function

This prepares the pwm-spear driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/c67e3f26435a8fa047ad6887803dbcb9c1e032ee.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: sl28cpld: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:33 +0000 (10:32 +0100)]
pwm: sl28cpld: Make use of devm_pwmchip_alloc() function

This prepares the pwm-sl28cpld driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Reviewed-by: Michael Walle <mwalle@kernel.org>
Link: https://lore.kernel.org/r/ee687086f7fc78264fac723f65ddc96cb7518c03.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: sifive: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:32 +0000 (10:32 +0100)]
pwm: sifive: Make use of devm_pwmchip_alloc() function

This prepares the pwm-sifive driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/30a4cacafe2c323f2531dd1c1126f0bf0fe5e03c.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: sifive: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:31 +0000 (10:32 +0100)]
pwm: sifive: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Link: https://lore.kernel.org/r/170c3c61707992cbc57dce31f70c168fcd3dbe51.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: sifive: Prepare removing pwm_chip from driver data
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:30 +0000 (10:32 +0100)]
pwm: sifive: Prepare removing pwm_chip from driver data

This prepares the driver for further changes that will drop struct
pwm_chip chip from struct pwm_sifive_ddata. Use the pwm_chip as driver
data instead of the pwm_sifive_ddata to get access to the pwm_chip in
pwm_sifive_remove() without using ddata->chip. In the clock rate
notifier it's not possible to get the pwm_chip without adding a pointer
to this to struct pwm_sifive_ddata. Instead of that add a parent device
pointer which is all that is needed there.

Link: https://lore.kernel.org/r/b7b7985f4dc746f6a36c5048d428c4ed0a2d42dc.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: sifive: Simplify code to determine the pwmchip's parent device
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:29 +0000 (10:32 +0100)]
pwm: sifive: Simplify code to determine the pwmchip's parent device

There is already a pointer to the pwmchip, make use of it directly
instead of using the struct pwm_sifive_ddata *ddata just obtained from
it. This also has the advantage of not using struct
pwm_sifive_ddata::chip any more which will be dropped soon.

Link: https://lore.kernel.org/r/78da5070d3ff5767da6f1c053d069c1e25229375.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: samsung: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:28 +0000 (10:32 +0100)]
pwm: samsung: Make use of devm_pwmchip_alloc() function

This prepares the pwm-samsung driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/f188e68bdea8d5a24277a10c8c9a6350a9c246ac.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: samsung: Simplify using dev_err_probe()
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:27 +0000 (10:32 +0100)]
pwm: samsung: Simplify using dev_err_probe()

dev_err_probe() simplifies and improves the idiom "emit error message +
return error code". Apply it accordingly.

Link: https://lore.kernel.org/r/27a55fc05eb13802c9eddc600d0460e279388999.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: samsung: Simplify by using devm functions in probe
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:26 +0000 (10:32 +0100)]
pwm: samsung: Simplify by using devm functions in probe

With using devm_clk_get_enabled() and devm_pwmchip_add() the
.remove_new() callback can be dropped and an error path in .probe()
simplified.

Link: https://lore.kernel.org/r/d46ec625c14c460039082f74ec8ca3084b7c8e3a.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: samsung: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:25 +0000 (10:32 +0100)]
pwm: samsung: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Link: https://lore.kernel.org/r/421ee291a065aeae7a1552f22da4173313e789ad.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: samsung: Change prototype of helpers to prepare further changes
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:24 +0000 (10:32 +0100)]
pwm: samsung: Change prototype of helpers to prepare further changes

This prepares the driver for further changes that will make it harder to
determine the pwm_chip from a given samsung_pwm_chip. To just not have
to do that, rework pwm_samsung_calc_tin() and pwm_samsung_parse_dt take
a pwm_chip. Also use the pwm_chip as driver data instead of the
samsung_pwm_chip.

Link: https://lore.kernel.org/r/33ea7d7fbf3be4a542ae8aafa213470c5831487e.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: samsung: Simplify code to determine the pwmchip's parent device
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:23 +0000 (10:32 +0100)]
pwm: samsung: Simplify code to determine the pwmchip's parent device

There is already a pointer to the pwmchip, make use of it directly
instead of using the struct samsung_pwm_chip *our_chip just obtained
from it. This also has the advantage of not using struct
samsung_pwm_chip::chip any more which will be dropped soon.

Link: https://lore.kernel.org/r/4e8400a42979b6be0b80dff5ae964d8e9d6232eb.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: rz-mtu3: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:22 +0000 (10:32 +0100)]
pwm: rz-mtu3: Make use of devm_pwmchip_alloc() function

This prepares the pwm-rz-mtu3 driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/b05ffb9bcaf4ddb6305f8505715a5542805e3227.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: rz-mtu3: Prepare removing pwm_chip from driver data
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:21 +0000 (10:32 +0100)]
pwm: rz-mtu3: Prepare removing pwm_chip from driver data

This prepares the driver for further changes that will drop struct
pwm_chip chip from struct rz_mtu3_pwm_chip. Use the pwm_chip as driver
data and devm callback parameter instead of the rz_mtu3_pwm_chip to get
access to the pwm_chip in various functions without using
rz_mtu3_pwm->chip.

Link: https://lore.kernel.org/r/707f2aced94a235f244022f10202ce7730b1168b.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: rz-mtu3: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:20 +0000 (10:32 +0100)]
pwm: rz-mtu3: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Link: https://lore.kernel.org/r/90e6b5d5215425f3a5ff4468ba8aedf3d387f812.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: rockchip: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:19 +0000 (10:32 +0100)]
pwm: rockchip: Make use of devm_pwmchip_alloc() function

This prepares the pwm-rockchip driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/61a3f48710e3e795beb2e496c8c673bbc0f6c932.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: rochchip: Prepare removing pwm_chip from driver data
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:18 +0000 (10:32 +0100)]
pwm: rochchip: Prepare removing pwm_chip from driver data

This prepares the driver for further changes that will drop struct
pwm_chip chip from struct rockchip_pwm_chip. Use the pwm_chip as driver
data instead of the rockchip_pwm_chip to get access to the pwm_chip in
rockchip_pwm_remove() without using pc->chip.

Link: https://lore.kernel.org/r/301657442c578cc8d330ad2b07463d59fed4bff6.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: renesas-tpu: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:17 +0000 (10:32 +0100)]
pwm: renesas-tpu: Make use of devm_pwmchip_alloc() function

This prepares the pwm-renesas-tpu driver to further changes of the pwm
core outlined in the commit introducing devm_pwmchip_alloc(). There is
no intended semantical change and the driver should behave as before.

Also convert the to_tpu_device() helper macro to a static inline to get
some type safety.

Link: https://lore.kernel.org/r/aac4a9546b0f474d991144aa925c83cfa7abe2c0.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: rcar: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:16 +0000 (10:32 +0100)]
pwm: rcar: Make use of devm_pwmchip_alloc() function

This prepares the pwm-rcar driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/a37a167364366b6cbe2dd299dce02731706213b2.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: rcar: Prepare removing pwm_chip from driver data
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:15 +0000 (10:32 +0100)]
pwm: rcar: Prepare removing pwm_chip from driver data

This prepares the driver for further changes that will drop struct
pwm_chip chip from struct rcar_pwm_chip. Use the pwm_chip as driver
data instead of the rcar_pwm_chip to get access to the pwm_chip in
the .remove() callbacks without using rcar_pwm->chip.

Link: https://lore.kernel.org/r/e588e3ccdd0ac1c9c3f3a79b3e52112f83f9d71c.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: rcar: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:14 +0000 (10:32 +0100)]
pwm: rcar: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Link: https://lore.kernel.org/r/8b33a106c84517430d90ee4a8dcb878d0fc3bad5.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: raspberrypi-poe: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:13 +0000 (10:32 +0100)]
pwm: raspberrypi-poe: Make use of devm_pwmchip_alloc() function

This prepares the pwm-raspberrypi-poe driver to further changes of the
pwm core outlined in the commit introducing devm_pwmchip_alloc(). There
is no intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/4654a6438ab618574afc3bb73bf402df7c254ee2.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: raspberrypi-poe: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:12 +0000 (10:32 +0100)]
pwm: raspberrypi-poe: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Link: https://lore.kernel.org/r/6758bcddb150f2c4353469937f1a68ecb87465ed.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: pxa: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:11 +0000 (10:32 +0100)]
pwm: pxa: Make use of devm_pwmchip_alloc() function

This prepares the pwm-pxa driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/bee8ae436a9dfb8539637cbb7269a208f787a62a.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: pca9685: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:10 +0000 (10:32 +0100)]
pwm: pca9685: Make use of devm_pwmchip_alloc() function

This prepares the pwm-pca9685 driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/4cb65adc92414a901dd3c0b8412de075196a3c54.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: pca9685: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:09 +0000 (10:32 +0100)]
pwm: pca9685: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Link: https://lore.kernel.org/r/14b6ec2bdaa7050b9f49a69f35edef731fd84c25.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: pca9685: Prepare removing pwm_chip from driver data
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:08 +0000 (10:32 +0100)]
pwm: pca9685: Prepare removing pwm_chip from driver data

This prepares the driver for further changes that will drop struct
pwm_chip chip from struct pca9685. Use the pwm_chip as i2c client data
and gpiochip data instead of the pca9685 to get access to the
pwm_chip in pca9685_pwm_remove(), pca9685_pwm_runtime_suspend(),
pca9685_pwm_runtime_resume(), pca9685_pwm_gpio_request() and the gpio
callbacks without using pca->chip. Also the prototype for various helper
functions is changed to take a pwm_chip instead of a pca9685 for the
same reason.

Link: https://lore.kernel.org/r/e87b378545cee15a52f0d410fcceebf671ab90e0.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: omap-dmtimer: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:07 +0000 (10:32 +0100)]
pwm: omap-dmtimer: Make use of devm_pwmchip_alloc() function

This prepares the pwm-omap-dmtimer driver to further changes of the pwm
core outlined in the commit introducing devm_pwmchip_alloc(). There is
no intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/78d1448b0fd1136b010f629feffb9d89c853e472.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: omap-dmtimer: Prepare removing pwm_chip from driver data
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:06 +0000 (10:32 +0100)]
pwm: omap-dmtimer: Prepare removing pwm_chip from driver data

This prepares the driver for further changes that will drop struct
pwm_chip chip from struct pwm_omap_dmtimer_chip. Use the pwm_chip as
driver data instead of the pwm_omap_dmtimer_chip to get access to the
pwm_chip in pwm_omap_dmtimer_remove() without using omap->chip.

Link: https://lore.kernel.org/r/809672026f3d583ba4fc4bd92b525951df172106.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: omap-dmtimer: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:05 +0000 (10:32 +0100)]
pwm: omap-dmtimer: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Link: https://lore.kernel.org/r/6681ebd024c2b8b2315ca3da5cac612e5f433d63.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: ntxec: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:04 +0000 (10:32 +0100)]
pwm: ntxec: Make use of devm_pwmchip_alloc() function

This prepares the pwm-ntxec driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/c0c9d6cb3a6662268e660f4f6c89b32268ecf019.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: mxs: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:03 +0000 (10:32 +0100)]
pwm: mxs: Make use of devm_pwmchip_alloc() function

This prepares the pwm-mxs driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Also convert the to_mxs_pwm_chip() helper macro to a static inline to
get some type safety.

Link: https://lore.kernel.org/r/39203f3bfbf4e97654db78bdc7e0c9a2b72c1368.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: mtk-disp: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:02 +0000 (10:32 +0100)]
pwm: mtk-disp: Make use of devm_pwmchip_alloc() function

This prepares the pwm-mtk-disp driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/a70bf253dc41c61d9b901423710c97f235e372c3.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: mtk-disp: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:01 +0000 (10:32 +0100)]
pwm: mtk-disp: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Link: https://lore.kernel.org/r/93ba7ef22f8d26f17e64326249d5da54ab8014ea.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: microchip-core: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:32:00 +0000 (10:32 +0100)]
pwm: microchip-core: Make use of devm_pwmchip_alloc() function

This prepares the pwm-microchip-core driver to further changes of the
pwm core outlined in the commit introducing devm_pwmchip_alloc(). There
is no intended semantical change and the driver should behave as before.

Acked-by: Conor Dooley <conor.dooley@microchip.com>
Link: https://lore.kernel.org/r/c6660b655c1d4c9d79280030e24090a4a4c5dd8b.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: meson: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:59 +0000 (10:31 +0100)]
pwm: meson: Make use of devm_pwmchip_alloc() function

This prepares the pwm-meson driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/6cc57880e910e6ffd8df15bc4a41c42fe9523293.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: meson: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:58 +0000 (10:31 +0100)]
pwm: meson: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Link: https://lore.kernel.org/r/02d5f32001c4d0817fa79f5831cfd16b7e345f00.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: meson: Change prototype of a few helpers to prepare further changes
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:57 +0000 (10:31 +0100)]
pwm: meson: Change prototype of a few helpers to prepare further changes

This prepares the driver for further changes that will make it harder to
determine the pwm_chip from a given meson_pwm. To just not have to do
that, rework meson_pwm_calc(), meson_pwm_enable(), meson_pwm_disable()
and meson_pwm_init_channels() to take a pwm_chip.

Link: https://lore.kernel.org/r/157084e1dd464da0097edba880240868c1c0b27e.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: mediatek: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:56 +0000 (10:31 +0100)]
pwm: mediatek: Make use of devm_pwmchip_alloc() function

This prepares the pwm-mediatek driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/513b2037c00ebf2f3a69472f4b99adaf4fb40d83.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: mediatek: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:55 +0000 (10:31 +0100)]
pwm: mediatek: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Link: https://lore.kernel.org/r/819996ee175bec0ab71acc385c78e7233617e136.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: lpss-*: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:54 +0000 (10:31 +0100)]
pwm: lpss-*: Make use of devm_pwmchip_alloc() function

This prepares the pwm-lpss drivers to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Reviewed-by: Andy Shevchenko <andy@kernel.org>
Link: https://lore.kernel.org/r/b567ab5dd992e361eb884fa6c2cac11be9c7dde3.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: lpss-*: Don't set driver data
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:53 +0000 (10:31 +0100)]
pwm: lpss-*: Don't set driver data

The drivers don't make use of driver data, neither in the variant
pci_get_drvdata() nor as platform_get_drvdata() nor as
dev_get_drvdata(). Drop setting driver data accordingly.

Link: https://lore.kernel.org/r/25671b7562d96b67fd05b3fa6fc76538ddf5914f.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: lpss: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:52 +0000 (10:31 +0100)]
pwm: lpss: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Link: https://lore.kernel.org/r/77617ba84bed7807a05779109432a292dd79f72f.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: lpc32xx: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:51 +0000 (10:31 +0100)]
pwm: lpc32xx: Make use of devm_pwmchip_alloc() function

This prepares the pwm-lpc32xx driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Also convert the to_lpc32xx_pwm_chip() helper macro to a static inline
to get some type safety.

Link: https://lore.kernel.org/r/ef26238772ee9ca455a49e9b976a4f66654b26f7.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: lpc18xx-sct: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:50 +0000 (10:31 +0100)]
pwm: lpc18xx-sct: Make use of devm_pwmchip_alloc() function

This prepares the pwm-lpc18xx-sct driver to further changes of the pwm
core outlined in the commit introducing devm_pwmchip_alloc(). There is
no intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/d480891340e927705843cd09e5777d4daaa6c9cc.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: lpc18xx-sct: Prepare removing pwm_chip from driver data
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:49 +0000 (10:31 +0100)]
pwm: lpc18xx-sct: Prepare removing pwm_chip from driver data

This prepares the driver for further changes that will drop struct
pwm_chip chip from struct lpc18xx_pwm_chip. Use the pwm_chip as driver
data instead of the lpc18xx_pwm_chip to get access to the pwm_chip in
lpc18xx_pwm_remove() without using lpc18xx_pwm->chip.

Link: https://lore.kernel.org/r/b7bf8c421ff754ec3e985ec6235f4ddd6e5e27a4.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: lpc18xx-sct: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:48 +0000 (10:31 +0100)]
pwm: lpc18xx-sct: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Link: https://lore.kernel.org/r/e4fb330c8dbf8fecd365afe3f8b33f8c7952eb38.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: lpc18xx-sct: Drop hardly used member from driver private data
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:47 +0000 (10:31 +0100)]
pwm: lpc18xx-sct: Drop hardly used member from driver private data

The device pointer is only used once in lpc18xx_pwm_request(). There the
pwm_chip is available, too, which has a pointer to the same structure.
Replace the usage accordingly and drop the then write-only member
variable.

Link: https://lore.kernel.org/r/427a719a24dd7ff5ebbac3e260a1773c094c7489.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: lp3943: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:46 +0000 (10:31 +0100)]
pwm: lp3943: Make use of devm_pwmchip_alloc() function

This prepares the pwm-lp3943 driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/44a2d303bb511e49c6db8aaedd17986c3aedde44.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: keembay: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:45 +0000 (10:31 +0100)]
pwm: keembay: Make use of devm_pwmchip_alloc() function

This prepares the pwm-keembay driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/f65c27bf0a1f9ba4e5dbb115ff628860163ff8e0.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: jz4740: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:44 +0000 (10:31 +0100)]
pwm: jz4740: Make use of devm_pwmchip_alloc() function

This prepares the pwm-jz4740 driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Acked-by: Paul Cercueil <paul@crapouillou.net>
Link: https://lore.kernel.org/r/14a081c097b4e7c7f346ca6557ece8d16ad5749d.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: jz4740: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:43 +0000 (10:31 +0100)]
pwm: jz4740: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Link: https://lore.kernel.org/r/86b8a362f1e50c5b95c43e056d03ee5ca66d1641.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: jz4740: Change prototype of a helper to prepare further changes
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:42 +0000 (10:31 +0100)]
pwm: jz4740: Change prototype of a helper to prepare further changes

This prepares the driver for further changes that will make it harder to
determine the pwm_chip from a given jz4740_pwm_chip. To just not have to
do that, rework jz4740_pwm_can_use_chn() to take a pwm_chip.

Link: https://lore.kernel.org/r/83b826f0bf58b93f26d3bc30b1a957f84eedf41a.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: iqs620a: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:41 +0000 (10:31 +0100)]
pwm: iqs620a: Make use of devm_pwmchip_alloc() function

This prepares the pwm-iqs620a driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/85cb0e73baadd76ede364abc4b57ee72000880e5.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: iqs620a: Prepare removing pwm_chip from driver data
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:40 +0000 (10:31 +0100)]
pwm: iqs620a: Prepare removing pwm_chip from driver data

This prepares the driver for further changes that will drop struct
pwm_chip chip from struct iqs620_pwm_private. The only two functions
that make use of struct iqs620_pwm_private::chip (apart from the probe
function that is handled later when converting to pwmchip_alloc()) only
use the chip's device pointer. Introduce such a pointer in driver data
and use that instead.

Link: https://lore.kernel.org/r/e6b1636c0d26d8bcb02a66b2963e2cc394014d76.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: iqs620a: Create a wrapper for converting a pwm_chip to driver data
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:39 +0000 (10:31 +0100)]
pwm: iqs620a: Create a wrapper for converting a pwm_chip to driver data

There is no semantic change. The new function just implements what was
open-coded twice in the driver before.

Link: https://lore.kernel.org/r/cc7ab547b4c4b79456b548aa72205bcf4476db8c.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: intel-lgm: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:38 +0000 (10:31 +0100)]
pwm: intel-lgm: Make use of devm_pwmchip_alloc() function

This prepares the pwm-intel-lgm driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/3b2be81b046fe2213736ad37153131d5f4c859f5.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: imx-tpm: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:37 +0000 (10:31 +0100)]
pwm: imx-tpm: Make use of devm_pwmchip_alloc() function

This prepares the pwm-tmp driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Link: https://lore.kernel.org/r/5de5d53295fa445d58a79f83421dd3406166c3c6.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: imx27: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:36 +0000 (10:31 +0100)]
pwm: imx27: Make use of devm_pwmchip_alloc() function

This prepares the pwm-imx27 driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Also convert the to_pwm_imx27_chip() helper macro to a static inline to
get some type safety.

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Link: https://lore.kernel.org/r/3da748c80e9bbe29e7c119190dbc4bd67d159f22.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: imx27: Make use of pwmchip_parent() accessor
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:35 +0000 (10:31 +0100)]
pwm: imx27: Make use of pwmchip_parent() accessor

struct pwm_chip::dev is about to change. To not have to touch this
driver in the same commit as struct pwm_chip::dev, use the accessor
function provided for exactly this purpose.

Link: https://lore.kernel.org/r/a8e3e3b3ea0684c9b289999c6f09eedbc2520f54.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
7 months agopwm: imx1: Make use of devm_pwmchip_alloc() function
Uwe Kleine-König [Wed, 14 Feb 2024 09:31:34 +0000 (10:31 +0100)]
pwm: imx1: Make use of devm_pwmchip_alloc() function

This prepares the pwm-imx1 driver to further changes of the pwm core
outlined in the commit introducing devm_pwmchip_alloc(). There is no
intended semantical change and the driver should behave as before.

Also convert the to_pwm_imx1_chip() helper macro to a static inline to
get some type safety.

Link: https://lore.kernel.org/r/c6995e0d281255a7514edf9f25a561302dcaf65f.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>