Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PWM waveform, axi-pwmgen backport #2640

Open
wants to merge 397 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
397 commits
Select commit Hold shift + click to select a range
d7625a7
pwm: fsl-ftm: Change prototype of a helper to prepare further changes
Feb 14, 2024
10154be
pwm: fsl-ftm: Make use of pwmchip_parent() accessor
Feb 14, 2024
e1ef9a0
pwm: fsl-ftm: Prepare removing pwm_chip from driver data
Feb 14, 2024
b344abd
pwm: fsl-ftm: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
4fd0bf9
pwm: hibvt: Consistently name driver data hi_pwm_chip
Feb 14, 2024
1f79441
pwm: hibvt: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
b818a0d
pwm: img: Drop write-only variable from driver private data
Feb 14, 2024
e24350a
pwm: img: Make use of pwmchip_parent() accessor
Feb 14, 2024
8641a55
pwm: img: Prepare removing pwm_chip from driver data
Feb 14, 2024
266fdb8
pwm: img: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
9919665
pwm: imx1: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
b20ec42
pwm: imx27: Make use of pwmchip_parent() accessor
Feb 14, 2024
b432fdf
pwm: imx27: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
6b35322
pwm: imx-tpm: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
ef60a24
pwm: intel-lgm: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
78a0ec4
pwm: iqs620a: Create a wrapper for converting a pwm_chip to driver data
Feb 14, 2024
4f415dc
pwm: iqs620a: Prepare removing pwm_chip from driver data
Feb 14, 2024
4e73cae
pwm: iqs620a: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
3804c13
pwm: jz4740: Change prototype of a helper to prepare further changes
Feb 14, 2024
9a1e469
pwm: jz4740: Make use of pwmchip_parent() accessor
Feb 14, 2024
68b3521
pwm: jz4740: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
fdcd611
pwm: keembay: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
40f6d98
pwm: lp3943: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
dfc8a4a
pwm: lpc18xx-sct: Drop hardly used member from driver private data
Feb 14, 2024
b13a319
pwm: lpc18xx-sct: Make use of pwmchip_parent() accessor
Feb 14, 2024
1f9ed27
pwm: lpc18xx-sct: Prepare removing pwm_chip from driver data
Feb 14, 2024
3a8c940
pwm: lpc18xx-sct: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
5e6afe7
pwm: lpc32xx: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
80e5347
pwm: lpss: Make use of pwmchip_parent() accessor
Feb 14, 2024
d7dd803
pwm: lpss-*: Don't set driver data
Feb 14, 2024
859c505
pwm: lpss-*: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
0f37f0b
pwm: mediatek: Make use of pwmchip_parent() accessor
Feb 14, 2024
c852388
pwm: mediatek: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
5367c38
pwm: meson: Change prototype of a few helpers to prepare further changes
Feb 14, 2024
a26e605
pwm: meson: Make use of pwmchip_parent() accessor
Feb 14, 2024
e071fc6
pwm: meson: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
1173148
pwm: microchip-core: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
3a895cf
pwm: mtk-disp: Make use of pwmchip_parent() accessor
Feb 14, 2024
83a1e12
pwm: mtk-disp: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
2a793a0
pwm: mxs: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
5258cd5
pwm: ntxec: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
3bf348d
pwm: omap-dmtimer: Make use of pwmchip_parent() accessor
Feb 14, 2024
72ac4cd
pwm: omap-dmtimer: Prepare removing pwm_chip from driver data
Feb 14, 2024
e8c6224
pwm: omap-dmtimer: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
ac0ac41
pwm: pca9685: Prepare removing pwm_chip from driver data
Feb 14, 2024
3de5487
pwm: pca9685: Make use of pwmchip_parent() accessor
Feb 14, 2024
c1d16ac
pwm: pca9685: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
547564f
pwm: pxa: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
da87d27
pwm: raspberrypi-poe: Make use of pwmchip_parent() accessor
Feb 14, 2024
71585bb
pwm: raspberrypi-poe: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
c4ec6b6
pwm: rcar: Make use of pwmchip_parent() accessor
Feb 14, 2024
b802486
pwm: rcar: Prepare removing pwm_chip from driver data
Feb 14, 2024
1b6cae9
pwm: rcar: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
8094534
pwm: renesas-tpu: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
0e03524
pwm: rochchip: Prepare removing pwm_chip from driver data
Feb 14, 2024
2e3c6af
pwm: rockchip: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
436325a
pwm: rz-mtu3: Make use of pwmchip_parent() accessor
Feb 14, 2024
5841b15
pwm: rz-mtu3: Prepare removing pwm_chip from driver data
Feb 14, 2024
5c138d1
pwm: rz-mtu3: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
a214546
pwm: samsung: Simplify code to determine the pwmchip's parent device
Feb 14, 2024
a9806c0
pwm: samsung: Change prototype of helpers to prepare further changes
Feb 14, 2024
aeada28
pwm: samsung: Make use of pwmchip_parent() accessor
Feb 14, 2024
c18e0e1
pwm: samsung: Simplify by using devm functions in probe
Feb 14, 2024
1be1a0f
pwm: samsung: Simplify using dev_err_probe()
Feb 14, 2024
aeb6045
pwm: samsung: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
e8a9828
pwm: sifive: Simplify code to determine the pwmchip's parent device
Feb 14, 2024
ece3ba1
pwm: sifive: Prepare removing pwm_chip from driver data
Feb 14, 2024
309708a
pwm: sifive: Make use of pwmchip_parent() accessor
Feb 14, 2024
402353f
pwm: sifive: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
c13fdb0
pwm: sl28cpld: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
08df209
pwm: spear: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
15f5c3d
pwm: sprd: Rework how the available channels are counted
Feb 14, 2024
5999332
pwm: sprd: Drop duplicated tracking of the parent device
Feb 14, 2024
c10ad99
pwm: sprd: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
936ec09
pwm: sti: Prepare removing pwm_chip from driver data
Feb 14, 2024
81d9016
pwm: sti: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
f492945
pwm: stm32: Simplify code to determine the pwmchip's parent device
Feb 14, 2024
e28d60b
pwm: stm32: Change prototype of a helper to prepare further changes
Feb 14, 2024
b11e649
pwm: stm32: Prepare removing pwm_chip from driver data
Feb 14, 2024
adb5fed
pwm: stm32: Change prototype of helper that detects npwm to prepare f…
Feb 14, 2024
211dd5d
pwm: stm32: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
508b8f3
pwm: stm32-lp: Simplify code to determine the pwmchip's parent device
Feb 14, 2024
ce84965
pwm: stm32-lp: Prepare removing pwm_chip from driver data
Feb 14, 2024
9756a48
pwm: stm32-lp: Make use of pwmchip_parent() accessor
Feb 14, 2024
303c844
pwm: stm32-lp: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
3cad952
pwm: stmpe: Make use of pwmchip_parent() accessor
Feb 14, 2024
c6a51be
pwm: stmpe: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
1a34b2d
pwm: sun4i: Make use of pwmchip_parent() accessor
Feb 14, 2024
650500d
pwm: sun4i: Prepare removing pwm_chip from driver data
Feb 14, 2024
36ff31d
pwm: sun4i: Consistently name driver data sun4ichip
Feb 14, 2024
26a335d
pwm: sun4i: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
7e4b2c6
pwm: sunplus: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
82b987f
pwm: tegra: Drop duplicated tracking of the parent device
Feb 14, 2024
391c31e
pwm: tegra: Prepare removing pwm_chip from driver data
Feb 14, 2024
f0b0665
pwm: tegra: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
26a8b27
pwm: tiecap: Simplify code to determine the pwmchip's parent device
Feb 14, 2024
83361e0
pwm: tiecap: Change prototype of helpers to prepare further changes
Feb 14, 2024
f056a4c
pwm: tiecap: Make use of pwmchip_parent() accessor
Feb 14, 2024
2b8cbd6
pwm: tiecap: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
85a053a
pwm: tiehrpwm: Simplify code to determine the pwmchip's parent device
Feb 14, 2024
e8878b0
pwm: tiehrpwm: Change prototype of helpers to prepare further changes
Feb 14, 2024
24082ba
pwm: tiehrpwm: Make use of pwmchip_parent() accessor
Feb 14, 2024
b2602e6
pwm: tiehrpwm: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
50106ba
pwm: twl: Make use of pwmchip_parent() accessor
Feb 14, 2024
33676af
pwm: twl: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
6aad2ac
pwm: twl-led: Make use of pwmchip_parent() accessor
Feb 14, 2024
9a3863e
pwm: twl-led: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
62acf93
pwm: visconti: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
5e5b2a0
pwm: vt8500: Change prototype of a helper to prepare further changes
Feb 14, 2024
38dd512
pwm: vt8500: Introduce a local pwm_chip variable in .probe()
Feb 14, 2024
40460f9
pwm: vt8500: Make use of pwmchip_parent() accessor
Feb 14, 2024
23ca96f
pwm: vt8500: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
ed17f4f
pwm: xilinx: Prepare removing pwm_chip from driver data
Feb 14, 2024
89afad3
pwm: xilinx: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
b41b749
gpio: mvebu: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
0e5b40d
drm/bridge: ti-sn65dsi86: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
3c98650
leds: qcom-lpg: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
b2e2a66
staging: greybus: pwm: Change prototype of helpers to prepare further…
Feb 14, 2024
58961d8
staging: greybus: pwm: Make use of pwmchip_parent() accessor
Feb 14, 2024
9dbd199
staging: greybus: pwm: Rely on pwm framework to pass a valid hwpwm
Feb 14, 2024
949590d
staging: greybus: pwm: Drop unused gb_connection_set_data()
Feb 14, 2024
fdd631c
staging: greybus: pwm: Rework how the number of PWM lines is determined
Feb 14, 2024
32da191
staging: greybus: pwm: Make use of devm_pwmchip_alloc() function
Feb 14, 2024
5ca20a0
pwm: cadence: Make use of devm_pwmchip_alloc() function
Dec 30, 2024
f1be072
pwm: dwc: drop redundant error check
raagjadav Feb 19, 2024
fbe944c
pwm: dwc: Add 16 channel support for Intel Elkhart Lake
raagjadav Feb 19, 2024
ae90b15
pwm: dwc: simplify error handling
raagjadav Feb 19, 2024
5447f74
dt-bindings: pwm: amlogic: fix s4 bindings
jbrun3t Feb 21, 2024
9b1db07
dt-bindings: pwm: amlogic: Add a new binding for meson8 pwm types
jbrun3t Feb 21, 2024
c296110
pwm: meson: generalize 4 inputs clock on meson8 pwm type
jbrun3t Feb 21, 2024
2aebd83
pwm: imx-tpm: fix probe crash due to access registers without clock
Mar 4, 2024
61ed2d3
clk: Add a devm variant of clk_rate_exclusive_get()
Jan 4, 2024
0ada027
dt-bindings: pwm: Add bindings for OpenCores PWM Controller
littleqyp Dec 22, 2023
1ccae2c
dt-bindings: pwm: opencores: Add compatible for StarFive JH8100
JiShengTeoh Feb 26, 2024
9a35a0e
pwm: img: fix pwm clock lookup
wigyori Mar 20, 2024
d026843
pwm: Fix setting period with #pwm-cells = <1> and of_pwm_single_xlate()
Mar 29, 2024
aa3ada9
pwm: dwc: allow suspend/resume for 16 channels
raagjadav Apr 15, 2024
b6b64c0
dt-bindings: pwm: mediatek,pwm-disp: Document power-domains property
Apr 4, 2024
9b15e12
pwm: Ensure that pwm_chips are allocated using pwmchip_alloc()
Feb 14, 2024
14d7e11
dt-bindings: pwm: at91: Add sam9x7 compatible strings list
varshini-rajendran Feb 23, 2024
c2486f7
pwm: sti: Simplify probe function using devm functions
Mar 10, 2024
bf4836b
pwm: sti: Improve error reporting using dev_err_probe()
Mar 10, 2024
3678eb0
pwm: sti: Drop member from driver data that only carries a constant
Mar 10, 2024
33d9d80
pwm: sti: Maintain all per-chip driver data in a single struct
Mar 10, 2024
b0c5c06
pwm: sti: Use devm_kcalloc() instead of calculating the size for devm…
Mar 10, 2024
c8f2175
pwm: sti: Prefer local variable over pointer dereference
Mar 10, 2024
e668b65
pwm: Give some sysfs related variables and functions better names
Mar 17, 2024
184715d
pwm: Move contents of sysfs.c into core.c
Mar 17, 2024
a4da853
pwm: Ensure a struct pwm has the same lifetime as its pwm_chip
Mar 17, 2024
6b86e00
pwm: Add a struct device to struct pwm_chip
Mar 17, 2024
0f1ccbf
pwm: Don't check pointer for being non-NULL after use
Mar 29, 2024
4b395fe
pwm: Make pwmchip_[sg]et_drvdata() a wrapper around dev_set_drvdata()
Mar 17, 2024
a187f97
pwm: stm32: Add error messages in .probe()'s error paths
Mar 15, 2024
0f64ef5
pwm: stm32: Improve precision of calculation in .apply()
Mar 17, 2024
15fa797
pwm: stm32: Fix for settings using period > UINT32_MAX
Mar 17, 2024
7b49551
pwm: stm32: Calculate prescaler with a division instead of a loop
Mar 17, 2024
11d7975
pwm: bcm2835: Introduce a local variable for &pdev->dev
Mar 10, 2024
9ebbc4b
pwm: bcm2835: Drop open coded variant of devm_clk_rate_exclusive_get()
Mar 10, 2024
df5a3e4
pwm: meson: Add generic compatible for meson8 to sm1
jbrun3t Feb 21, 2024
0b3c81e
dt-bindings: pwm: mediatek,pwm-disp: add compatible for mt8365 SoC
amergnat Apr 18, 2024
6095690
pwm: meson: Drop unneeded check in .get_state()
geo-stark Apr 25, 2024
3a1c3df
pwm: meson: Add check for error from clk_round_rate()
geo-stark Apr 25, 2024
22b2c1d
pwm: meson: Use mul_u64_u64_div_u64() for frequency calculating
geo-stark Apr 25, 2024
33baf1c
dt-bindings: pwm: bcm2835: Do not require pwm-cells twice
Apr 30, 2024
87dc218
dt-bindings: pwm: google,cros-ec: Do not require pwm-cells twice
Apr 30, 2024
1350143
dt-bindings: pwm: marvell,pxa: Do not require pwm-cells twice
Apr 30, 2024
92b5f2f
dt-bindings: pwm: mediatek,mt2712: Do not require pwm-cells twice
Apr 30, 2024
4a08a1f
dt-bindings: pwm: mediatek,pwm-disp: Do not require pwm-cells twice
Apr 30, 2024
d06c561
dt-bindings: pwm: snps,dw-apb-timers: Do not require pwm-cells twice
Apr 30, 2024
3f7d330
pwm: pca9685: Drop explicit initialization of struct i2c_device_id::d…
May 8, 2024
9aa9bd7
pwm: stm32: Refuse too small period requests
Jun 21, 2024
d17d958
pwm: stm32: Fix calculation of prescaler
Jun 21, 2024
c9a3863
pwm: stm32: Fix error message to not describe the previous error path
Jun 21, 2024
d069184
pwm: stm32: Always do lazy disabling
Jul 3, 2024
528f34e
dt-bindings: pwm: describe the cells in #pwm-cells in pwm.yaml
ConchuOD May 17, 2024
d27fa3e
pwm: atmel-tcb: Fix race condition and convert to guards
Jul 9, 2024
c2e2acc
dt-bindings: pwm: fsl-ftm: Convert to yaml format
nxpfrankli May 28, 2024
89212fd
dt-bindings: pwm: Add AXI PWM generator
pdp7 Jun 5, 2024
c15ee46
pwm: Add driver for AXI PWM generator
pdp7 Jun 5, 2024
c20ad39
pwm: jz4740: Another few conversions to regmap_{set,clear}_bits()
Jun 6, 2024
f8ce55b
pwm: axi-pwmgen: Make use of regmap_clear_bits()
Jun 6, 2024
00e3b0b
pwm: add missing MODULE_DESCRIPTION() macros
Jun 10, 2024
c009248
pwm: Make use of a symbol namespace for the core
Jun 7, 2024
b27814f
pwm: cros-ec: Don't care about consumers in .get_state()
Jun 7, 2024
fd989de
pwm: cros-ec: Simplify device tree xlation
Jun 7, 2024
376edaf
pwm: Make pwm_request_from_chip() private to the core
Jun 7, 2024
b7daa0f
pwm: Remove wrong implementation details from pwm_ops's documentation
Jun 7, 2024
b412da5
dt-bindings: pwm: Add pwm-gpio
ndilieto Jun 4, 2024
83be5b9
pwm: Add GPIO PWM driver
vwax Jun 4, 2024
d06ea98
pwm: meson: Add support for Amlogic S4 PWM
Jun 13, 2024
9501fee
dt-bindings: pwm: imx: remove interrupt property from required
nxpfrankli Jun 5, 2024
d6ed27c
mfd: stm32-timers: Add some register definitions with a parameter
Jun 19, 2024
fdb45ff
pwm-stm32: Make use of parametrised register definitions
Jun 19, 2024
39a1953
pwm: lpss: use devm_pm_runtime_enable() helper
raagjadav Jun 5, 2024
7f358f9
pwm: lpss: drop redundant runtime PM handles
raagjadav Jun 5, 2024
4d56c0a
pwm: imx-tpm: Enable pinctrl setting for sleep state
Jul 2, 2024
8939f9f
pwm: Register debugfs operations after the pwm class
Jun 26, 2024
3a72bd7
pwm: Use guards for pwm_lock instead of explicity mutex_lock + mutex_…
Jun 27, 2024
6726042
pwm: Use guards for export->lock instead of explicity mutex_lock + mu…
Jun 27, 2024
23933b9
pwm: Use guards for pwm_lookup_lock instead of explicity mutex_lock +…
Jun 27, 2024
3470709
pwm: xilinx: Simplify using devm_ functions
Jun 28, 2024
94f24d2
pwm: Allow pwm state transitions from an invalid state
Jun 28, 2024
928ce5e
pwm: atmel-tcb: Simplify checking the companion output
Jul 9, 2024
6c636e2
pwm: atmel-tcb: Make private data variable naming consistent
Jul 9, 2024
a499bd1
dt-bindings: pwm: at91: Add sama7d65 compatible string
noglitch Jul 10, 2024
edb695b
pwm: axi-pwmgen: add .max_register to regmap
threexc Jul 11, 2024
d67ed7f
pwm: stm32: Use the right CCxNP bit in stm32_pwm_enable()
Sep 5, 2024
9591181
dt-bindings: pwm: renesas,pwm-rcar: Add r8a779h0 support
Jul 25, 2024
b2948a1
dt-bindings: pwm: renesas,tpu: Add r8a779h0 support
Jul 25, 2024
de3ba02
pwm: Make info in traces about affected pwm more useful
Jul 5, 2024
321a5f6
pwm: Don't export pwm_capture()
Jul 12, 2024
b20caa8
pwm: lp3943: Use of_property_count_u32_elems() to get property length
robherring Jul 31, 2024
29f45e6
pwm: Simplify pwm_capture()
Jul 29, 2024
5c1901f
pwm: lp3943: Fix an incorrect type in lp3943_pwm_parse_dt()
Aug 9, 2024
b5d75d7
pwm: omap-dmtimer: Use of_property_read_bool()
robherring Jul 31, 2024
7c050bd
pwm: atmel-hlcdc: Enable module autoloading
Aug 31, 2024
ed103e1
pwm: atmel-hlcdc: Drop trailing comma
Aug 31, 2024
9ffe9ad
pwm: axi-pwmgen: use shared macro for version reg
dlech Aug 16, 2024
e631bdf
dt-bindings: pwm: allwinner,sun4i-a10-pwm: add top-level constraints
krzk Aug 18, 2024
2a3a2b1
dt-bindings: pwm: amlogic: Add optional power-domains
geo-stark Jul 10, 2024
e2f3215
dt-bindings: pwm: amlogic: Add new bindings for meson A1 PWM
geo-stark Jul 10, 2024
2f3e307
pwm: stm32: Fix a typo
algonell Sep 12, 2024
9142f4f
dt-bindings: pwm: Add Cirrus EP93xx
maquefel Sep 9, 2024
4b20040
pwm: ep93xx: add DT support for Cirrus EP93xx
maquefel Sep 9, 2024
d261723
pwm: ep93xx: drop legacy pinctrl
maquefel Sep 9, 2024
8ff397c
pwm: imx-tpm: Use correct MODULO value for EPWM mode
iris-ersc Oct 25, 2024
92eda75
pwm: Add more locking
Sep 20, 2024
b492b9e
pwm: New abstraction for PWM waveforms
Sep 20, 2024
997a00a
pwm: Add phase support for waveform drivers
Jan 7, 2025
a1dd003
pwm: Provide new consumer API functions for waveforms
Sep 20, 2024
0f93609
pwm: Add tracing for waveform callbacks
Sep 20, 2024
35d6426
pwm: axi-pwmgen: Implementation of the waveform callbacks
Sep 20, 2024
bfe5b6b
pwm: stm32: Implementation of the waveform callbacks
Sep 20, 2024
24b750a
pwm: Reorder symbols in core.c
Sep 20, 2024
a6d28f8
pwm: Add kernel doc for members added to pwm_ops recently
Oct 1, 2024
c727dac
pwm: stm32: Fix error checking for a regmap_read() call
Oct 3, 2024
84d1b45
pwm: axi-pwmgen: Create a dedicated function for getting driver data …
Sep 23, 2024
b4159eb
dt-bindings: pwm: amlogic: Document C3 PWM
Sep 14, 2024
55bdcce
pwm: axi-pwmgen: Rename 0x10 register
dlech Oct 9, 2024
3661a5b
pwm: axi-pwmgen: Enable FORCE_ALIGN by default
dlech Oct 9, 2024
957c5bd
pwm: imx27: Workaround of the pwm output bug when decrease the duty c…
wangxiaoningnxp Oct 8, 2024
02178fa
pwm: imx27: Use clk_bulk_*() API to simplify clock handling
nxpfrankli Sep 10, 2024
fa807ed
dt-bindings: pwm: adi,axi-pwmgen: Increase #pwm-cells to 3
Oct 24, 2024
1d36acb
pwm: core: use device_match_name() instead of strcmp(dev_name(...
andy-shev Oct 25, 2024
49f406e
pwm: core: export pwm_get_state_hw()
dlech Oct 29, 2024
f56fefe
pwm: Assume a disabled PWM to emit a constant inactive output
Nov 5, 2024
90c5cae
pwm: stm32: Fix complementary output in round_waveform_tohw()
Dec 17, 2024
e5f681b
iio: adc: ad_pulsar.c: remove reference to phase
threexc Nov 14, 2024
98b95e4
iio: adc: ltc2387.c: update to use PWM waveforms
threexc Nov 14, 2024
6d1fd27
iio: adc: ad4630: update to use pwm waveforms API
threexc Nov 14, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Documentation/devicetree/bindings/pwm/adi,axi-pwmgen.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ properties:
maxItems: 1

"#pwm-cells":
const: 2
const: 3

clocks:
maxItems: 1
Expand All @@ -44,5 +44,5 @@ examples:
compatible = "adi,axi-pwmgen-2.00.a";
reg = <0x44b00000 0x1000>;
clocks = <&spi_clk>;
#pwm-cells = <2>;
#pwm-cells = <3>;
};
Original file line number Diff line number Diff line change
Expand Up @@ -46,10 +46,11 @@ properties:
- description: Module Clock
- description: Bus Clock

# Even though it only applies to subschemas under the conditionals,
# not listing them here will trigger a warning because of the
# additionalsProperties set to false.
clock-names: true
clock-names:
minItems: 1
items:
- const: mod
- const: bus

resets:
maxItems: 1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,13 @@ properties:
- atmel,sama5d2-pwm
- microchip,sam9x60-pwm
- items:
- const: microchip,sama7g5-pwm
- enum:
- microchip,sama7d65-pwm
- microchip,sama7g5-pwm
- const: atmel,sama5d2-pwm
- items:
- const: microchip,sam9x7-pwm
- const: microchip,sam9x60-pwm

reg:
maxItems: 1
Expand Down
35 changes: 35 additions & 0 deletions Documentation/devicetree/bindings/pwm/atmel,hlcdc-pwm.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/pwm/atmel,hlcdc-pwm.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Atmel's HLCDC's PWM controller

maintainers:
- Nicolas Ferre <[email protected]>
- Alexandre Belloni <[email protected]>
- Claudiu Beznea <[email protected]>

description:
The LCDC integrates a Pulse Width Modulation (PWM) Controller. This block
generates the LCD contrast control signal (LCD_PWM) that controls the
display's contrast by software. LCDC_PWM is an 8-bit PWM signal that can be
converted to an analog voltage with a simple passive filter. LCD display
panels have different backlight specifications in terms of minimum/maximum
values for PWM frequency. If the LCDC PWM frequency range does not match the
LCD display panel, it is possible to use the standalone PWM Controller to
drive the backlight.

properties:
compatible:
const: atmel,hlcdc-pwm

"#pwm-cells":
const: 3

required:
- compatible
- "#pwm-cells"

additionalProperties: false
29 changes: 0 additions & 29 deletions Documentation/devicetree/bindings/pwm/atmel-hlcdc-pwm.txt

This file was deleted.

53 changes: 53 additions & 0 deletions Documentation/devicetree/bindings/pwm/cirrus,ep9301-pwm.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/pwm/cirrus,ep9301-pwm.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Cirrus Logic ep93xx PWM controller

maintainers:
- Alexander Sverdlin <[email protected]>
- Nikita Shubin <[email protected]>

allOf:
- $ref: pwm.yaml#

properties:
compatible:
oneOf:
- const: cirrus,ep9301-pwm
- items:
- enum:
- cirrus,ep9302-pwm
- cirrus,ep9307-pwm
- cirrus,ep9312-pwm
- cirrus,ep9315-pwm
- const: cirrus,ep9301-pwm

reg:
maxItems: 1

clocks:
items:
- description: SoC PWM clock

"#pwm-cells":
const: 3

required:
- compatible
- reg
- clocks

unevaluatedProperties: false

examples:
- |
#include <dt-bindings/clock/cirrus,ep9301-syscon.h>
pwm@80910000 {
compatible = "cirrus,ep9301-pwm";
reg = <0x80910000 0x10>;
clocks = <&syscon EP93XX_CLK_PWM>;
#pwm-cells = <3>;
};
92 changes: 92 additions & 0 deletions Documentation/devicetree/bindings/pwm/fsl,vf610-ftm-pwm.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/pwm/fsl,vf610-ftm-pwm.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Freescale FlexTimer Module (FTM) PWM controller

description: |
The same FTM PWM device can have a different endianness on different SoCs. The
device tree provides a property to describing this so that an operating system
device driver can handle all variants of the device. Refer to the table below
for the endianness of the FTM PWM block as integrated into the existing SoCs:

SoC | FTM-PWM endianness
--------+-------------------
Vybrid | LE
LS1 | BE
LS2 | LE

Please see ../regmap/regmap.txt for more detail about how to specify endian
modes in device tree.

maintainers:
- Frank Li <[email protected]>

properties:
compatible:
enum:
- fsl,vf610-ftm-pwm
- fsl,imx8qm-ftm-pwm

reg:
maxItems: 1

"#pwm-cells":
const: 3

clocks:
minItems: 4
maxItems: 4

clock-names:
items:
- const: ftm_sys
- const: ftm_ext
- const: ftm_fix
- const: ftm_cnt_clk_en

pinctrl-0: true
pinctrl-1: true

pinctrl-names:
minItems: 1
items:
- const: default
- const: sleep

big-endian:
$ref: /schemas/types.yaml#/definitions/flag
description:
Boolean property, required if the FTM PWM registers use a big-
endian rather than little-endian layout.

required:
- compatible
- reg
- clocks
- clock-names

allOf:
- $ref: pwm.yaml#

unevaluatedProperties: false

examples:
- |
#include <dt-bindings/clock/vf610-clock.h>

pwm@40038000 {
compatible = "fsl,vf610-ftm-pwm";
reg = <0x40038000 0x1000>;
#pwm-cells = <3>;
clocks = <&clks VF610_CLK_FTM0>,
<&clks VF610_CLK_FTM0_EXT_SEL>,
<&clks VF610_CLK_FTM0_FIX_SEL>,
<&clks VF610_CLK_FTM0_EXT_FIX_EN>;
clock-names = "ftm_sys", "ftm_ext", "ftm_fix", "ftm_cnt_clk_en";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_pwm0_1>;
big-endian;
};
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,6 @@ properties:

required:
- compatible
- '#pwm-cells'

additionalProperties: false

Expand Down
11 changes: 4 additions & 7 deletions Documentation/devicetree/bindings/pwm/imx-pwm.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,10 @@ allOf:

properties:
"#pwm-cells":
description: |
Should be 2 for i.MX1 and 3 for i.MX27 and newer SoCs. See pwm.yaml
in this directory for a description of the cells format.
enum:
- 2
- 3
description:
The only third cell flag supported by this binding is
PWM_POLARITY_INVERTED. fsl,imx1-pwm does not support this flags.
const: 3

compatible:
oneOf:
Expand Down Expand Up @@ -70,7 +68,6 @@ required:
- reg
- clocks
- clock-names
- interrupts

additionalProperties: false

Expand Down
50 changes: 50 additions & 0 deletions Documentation/devicetree/bindings/pwm/marvell,pxa-pwm.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/pwm/marvell,pxa-pwm.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Marvell PXA PWM

maintainers:
- Duje Mihanović <[email protected]>

allOf:
- $ref: pwm.yaml#

properties:
compatible:
enum:
- marvell,pxa250-pwm
- marvell,pxa270-pwm
- marvell,pxa168-pwm
- marvell,pxa910-pwm

reg:
# Length should be 0x10
maxItems: 1

"#pwm-cells":
# Used for specifying the period length in nanoseconds
const: 1

clocks:
maxItems: 1

required:
- compatible
- reg
- clocks

additionalProperties: false

examples:
- |
#include <dt-bindings/clock/pxa-clock.h>

pwm0: pwm@40b00000 {
compatible = "marvell,pxa250-pwm";
reg = <0x40b00000 0x10>;
#pwm-cells = <1>;
clocks = <&clks CLK_PWM0>;
};
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ properties:
- mediatek,mt7629-pwm
- mediatek,mt7981-pwm
- mediatek,mt7986-pwm
- mediatek,mt7988-pwm
- mediatek,mt8183-pwm
- mediatek,mt8365-pwm
- mediatek,mt8516-pwm
Expand Down Expand Up @@ -65,7 +66,6 @@ properties:
required:
- compatible
- reg
- "#pwm-cells"
- clocks
- clock-names

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ title: MediaTek DISP_PWM Controller

maintainers:
- Jitao Shi <[email protected]>
- Xinlei Lee <[email protected]>

allOf:
- $ref: pwm.yaml#
Expand All @@ -32,6 +31,7 @@ properties:
- mediatek,mt8188-disp-pwm
- mediatek,mt8192-disp-pwm
- mediatek,mt8195-disp-pwm
- mediatek,mt8365-disp-pwm
- const: mediatek,mt8183-disp-pwm

reg:
Expand All @@ -53,10 +53,12 @@ properties:
- const: main
- const: mm

power-domains:
maxItems: 1

required:
- compatible
- reg
- "#pwm-cells"
- clocks
- clock-names

Expand Down
Loading
Loading