Vijayakannan Ayyathurai
bd899ceb8f
pwm: Add PWM driver for Intel Keem Bay
...
The Intel Keem Bay SoC requires PWM support.
Add the pwm-keembay driver to enable this.
Signed-off-by: Lai, Poey Seng <poey.seng.lai@intel.com >
Co-developed-by: Vineetha G. Jaya Kumaran <vineetha.g.jaya.kumaran@intel.com >
Signed-off-by: Vineetha G. Jaya Kumaran <vineetha.g.jaya.kumaran@intel.com >
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com >
Co-developed-by: Vijayakannan Ayyathurai <vijayakannan.ayyathurai@intel.com >
Signed-off-by: Vijayakannan Ayyathurai <vijayakannan.ayyathurai@intel.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:56 +01:00
Vijayakannan Ayyathurai
cb55d17ea2
dt-bindings: pwm: keembay: Add bindings for Intel Keem Bay PWM
...
Add PWM Device Tree bindings documentation for the Intel Keem Bay SoC.
Signed-off-by: Vineetha G. Jaya Kumaran <vineetha.g.jaya.kumaran@intel.com >
Reviewed-by: Rob Herring <robh@kernel.org >
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Vijayakannan Ayyathurai <vijayakannan.ayyathurai@intel.com >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:56 +01:00
Lokesh Vutla
1f0f1e80fd
pwm: lp3943: Dynamically allocate PWM chip base
...
When there are other PWM controllers enabled along with pwm-lp3943,
pwm-lp3942 is failing to probe with -EEXIST error. This is because
other PWM controllers are probed first and assigned PWM base 0 and
pwm-lp3943 is requesting for 0 again.
In order to avoid this, assign the chip base with -1, so that it is
dynamically allocated.
Fixes: af66b3c093 ("pwm: Add LP3943 PWM driver")
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com >
Reviewed-by: Uwe Kleine-König <u.kleine-könig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:55 +01:00
Alexandre Belloni
34cbcd7258
pwm: atmel-tcb: Add sama5d2 support
...
Add sama5d2 support. The sama5d2 has a new clock input, its gclk. Index 0
of the clock selector is the gclk instead of the peripheral clock divided
by 2.
For now, the gclk is not used because the peripheral clock divided by 8
already gives a 9.6ns resolution which is enough for most use cases.
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:55 +01:00
Alexandre Belloni
061f8572a3
pwm: atmel-tcb: Switch to new binding
...
The PWM is now a subnode of the used TCB. This is cleaner and it mainly
allows to stop wasting TCB channels when only 2 or 4 PWMs are used.
This also removes the atmel_tclib dependency
Cc: Thierry Reding <thierry.reding@gmail.com >
Cc: linux-pwm@vger.kernel.org
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:55 +01:00
Alexandre Belloni
cd6720ba02
dt-bindings: microchip: atmel,at91rm9200-tcb: Add atmel,tcb-pwm
...
Move the TCB pwm nodes under their parent. This removes the need for the
tc-block property as there is now a child-parent relationship between the
TC channel and the TC block.
Move the documentation to the main file.
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com >
Reviewed-by: Rob Herring <robh@kernel.org >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:54 +01:00
Grygorii Strashko
44db5363fa
pwm: tiehrpwm: Handle deferred probe with dev_err_probe()
...
The devm_clk_get() may return -EPROBE_DEFER which is not handled properly
by TI EHRPWM driver and causes unnecessary boot log messages.
Hence, add proper deferred probe handling with new dev_err_probe() API.
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com >
Reviewed-by: Vignesh Raghavendra <vigneshr@ti.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:49 +01:00
Hans de Goede
e3aa45f2f8
pwm: lpss: Set DPM_FLAG_SMART_SUSPEND on Cherry Trail devices
...
As the comment above the code setting the DPM_FLAG_NO_DIRECT_COMPLETE
flag explains:
/*
* On Cherry Trail devices the GFX0._PS0 AML checks if the controller
* is on and if it is not on it turns it on and restores what it
* believes is the correct state to the PWM controller.
* Because of this we must disallow direct-complete, which keeps the
* controller (runtime)suspended, on resume to avoid 2 issues:
* 1. The controller getting turned on without the linux-pm code
* knowing about this. On devices where the controller is unused
* this causes it to stay on during the next suspend causing high
* battery drain (because S0i3 is not reached)
* 2. The state restoring code unexpectedly messing with the controller
*/
The pm-core must not skip resume to avoid the GFX0._PS0 AML code messing
with the PWM controller behind our back. But leaving the controller
runtime-suspended (skipping runtime-resume + normal-suspend) during
suspend is fine. Set the DPM_FLAG_SMART_SUSPEND flag to allow this.
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com >
Signed-off-by: Hans de Goede <hdegoede@redhat.com >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:49 +01:00
Hans de Goede
b9c90f153d
pwm: lpss: Use DPM_FLAG_NO_DIRECT_COMPLETE instead of declaring a prepare handler
...
ACPI LPSS devices use direct-complete style suspend/resume handling by
default. We set the DPM_FLAG_SMART_PREPARE and define a prepare handler
to disable this on Cherry Trail devices.
Clean this up a bit by setting the DPM_FLAG_NO_DIRECT_COMPLETE flag for
Cherry Trail devices, instead of defining a prepare handler.
While at it also improve the comment explaining why this is necessary.
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com >
Signed-off-by: Hans de Goede <hdegoede@redhat.com >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:48 +01:00
Hans de Goede
d58560e6fa
pwm: lpss: Log error from pwm_lpss_is_updating() if the update bit is still set
...
pwm_lpss_is_updating() does a sanity check which should never fail.
If the check does actually fail that is worth logging an error,
especially since this means that we will skip making the requested
changes to the PWM settings.
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com >
Signed-off-by: Hans de Goede <hdegoede@redhat.com >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:48 +01:00
Uwe Kleine-König
5e5da1e9fb
pwm: ab8500: Explicitly allocate pwm chip base dynamically
...
The ab8500 driver is the last one which doesn't (explicitly) use dynamic
allocation of the pwm id. Looking through the kernel sources I didn't
find a place that relies on this id. And with the device probed from
device tree pdev->id is -1 anyhow; making this explicit looks
beneficial, too.
Signed-off-by: Uwe Kleine-König <uwe@kleine-koenig.org >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:48 +01:00
Uwe Kleine-König
269effd03f
pwm: zx: Add missing cleanup in error path
...
zx_pwm_probe() called clk_prepare_enable() before; this must be undone
in the error path.
Fixes: 4836193c43 ("pwm: Add ZTE ZX PWM device driver")
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Acked-by: Shawn Guo <shawn.guo@linaro.org >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:48 +01:00
Uwe Kleine-König
2e978a4564
pwm: ab8500: Add error message if pwmchip_add() fails
...
pwmchip_add() doesn't emit an error message, so add one in the driver.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Reviewed-by: Linus Walleij <linus.walleij@linaro.org >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:48 +01:00
Anson Huang
f1332e9294
pwm: imx1: Use dev_err_probe() to simplify error handling
...
dev_err_probe() can reduce code size, uniform error handling and record the
defer probe reason etc., use it to simplify the code.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com >
Acked-by: Lee Jones <lee.jones@linaro.org >
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:47 +01:00
Anson Huang
d109d74c4c
pwm: imx27: Use dev_err_probe() to simplify error handling
...
dev_err_probe() can reduce code size, uniform error handling and record the
defer probe reason etc., use it to simplify the code.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com >
Acked-by: Lee Jones <lee.jones@linaro.org >
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:47 +01:00
Anson Huang
168cc32920
pwm: imx-tpm: Use dev_err_probe() to simplify error handling
...
dev_err_probe() can reduce code size, uniform error handling and record the
defer probe reason etc., use it to simplify the code.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com >
Acked-by: Lee Jones <lee.jones@linaro.org >
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:47 +01:00
Yangtao Li
accef074e9
pwm: atmel: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Acked-by: Claudiu Beznea <claudiu.beznea@microchip.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:46 +01:00
Yangtao Li
96cfceba39
pwm: sifive: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:46 +01:00
Yangtao Li
cecccd8d4a
pwm: hibvt: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code. While at it, also
declare the "i" and "ret" variables on the same line since they are of
the same type.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:46 +01:00
Yangtao Li
74ec20a4e6
pwm: lpc18xx-sct: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:46 +01:00
Yangtao Li
d574ab62a5
pwm: img: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:45 +01:00
Yangtao Li
3151b13017
pwm: clps711x: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:45 +01:00
Yangtao Li
6e0301e7df
pwm: mtk-disp: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Matthias Brugger <matthias.bgg@gmail.com >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:44 +01:00
Yangtao Li
5bec839f13
pwm: brcmstb: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:44 +01:00
Yangtao Li
4906bf5482
pwm: vt8500: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:44 +01:00
Yangtao Li
05baa59601
pwm: berlin: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:44 +01:00
Yangtao Li
f57e7d25e5
pwm: bcm2835: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:44 +01:00
Yangtao Li
1dcf0523fd
pwm: tiecap: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:44 +01:00
Yangtao Li
860b1ca0ea
pwm: imx: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:43 +01:00
Yangtao Li
dc13c0f61e
pwm: tiehrpwm: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:43 +01:00
Yangtao Li
cc1cc4ba36
pwm: samsung: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:43 +01:00
Yangtao Li
ed98401f46
pwm: bcm-iproc: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:42 +01:00
Yangtao Li
5119ee9eff
pwm: rockchip: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Heiko Stuebner <heiko@sntech.de >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:42 +01:00
Yangtao Li
17076b10d4
pwm: meson: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:42 +01:00
Yangtao Li
fd7c575ac6
pwm: lpc32xx: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:42 +01:00
Yangtao Li
537fe68786
pwm: bcm-kona: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:41 +01:00
Yangtao Li
21af435676
pwm: spear: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:41 +01:00
Yangtao Li
bde048ebbd
pwm: zx: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:41 +01:00
Yangtao Li
6945fe42f8
pwm: pxa: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:40 +01:00
Yangtao Li
728cd3e6ea
pwm: sti: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:40 +01:00
Yangtao Li
7681c2bd2a
pwm: mediatek: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:40 +01:00
Yangtao Li
fa44fe41cc
pwm: tegra: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:39 +01:00
Yangtao Li
fc0155f822
pwm: ep93xx: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:39 +01:00
Yangtao Li
e3f22bc255
pwm: renesas-tpu: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:38 +01:00
Yangtao Li
3d3a325939
pwm: rcar: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:38 +01:00
Yangtao Li
e9534031f0
pwm: fsl-ftm: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:38 +01:00
Yangtao Li
2e379ffb44
pwm: sun4i: Convert to devm_platform_ioremap_resource()
...
Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <tiny.windzz@gmail.com >
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Thierry Reding <thierry.reding@gmail.com >
2020-12-17 14:18:37 +01:00
Marc Zyngier
9fd339a45b
arm64: Work around broken GCC 4.9 handling of "S" constraint
...
GCC 4.9 seems to have a problem with the "S" asm constraint
when the symbol lives in the same compilation unit, and pretends
the constraint is impossible:
$ cat x.c
void *foo(void)
{
static int x;
int *addr;
asm("adrp %0, %1" : "=r" (addr) : "S" (&x));
return addr;
}
$ ~/Work/gcc-linaro-aarch64-linux-gnu-4.9-2014.09_linux/bin/aarch64-linux-gnu-gcc -S -x c -O2 x.c
x.c: In function ‘foo’:
x.c:5:2: error: impossible constraint in ‘asm’
asm("adrp %0, %1" : "=r" (addr) : "S" (&x));
^
Boo. Following revisions of the compiler work just fine, though.
We can fallback to the "i" constraint for GCC version prior to 5.0,
which *seems* to do the right thing. Hopefully we will be able to
remove this at some point, but in the meantime this gets us going.
Signed-off-by: Marc Zyngier <maz@kernel.org >
Acked-by: Ard Biesheuvel <ardb@kernel.org >
Link: https://lore.kernel.org/r/20201217111135.1536658-1-maz@kernel.org
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com >
2020-12-17 11:46:20 +00:00
Maxime Ripard
03813d9b7d
clk: Trace clk_set_rate() "range" functions
...
The clk_set_rate "range" functions don't have any tracepoints even
though it might be useful. Add some.
Signed-off-by: Maxime Ripard <maxime@cerno.tech >
Link: https://lore.kernel.org/r/20201207105050.2096917-1-maxime@cerno.tech
[sboyd@kernel.org: Reword commit text]
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
2020-12-17 01:54:31 -08:00
Alexandru Ardelean
16214f97f4
clk: axi-clkgen: move the OF table at the bottom of the file
...
The change is mostly cosmetic. No functional changes.
Since the driver now uses of_device_get_match_data() to obtain some driver
specific info, there is no need to define the OF table before the probe
function.
Signed-off-by: Alexandru Ardelean <alexandru.ardelean@analog.com >
Link: https://lore.kernel.org/r/20201203074037.26940-2-alexandru.ardelean@analog.com
Signed-off-by: Stephen Boyd <sboyd@kernel.org >
2020-12-17 01:52:54 -08:00