linux/drivers
Linus Torvalds ecd5d67ad6 pwm: A set of fixes for pwm core and various drivers
The first three patches handle clk_get_rate() returning 0 (which might
 happen for example if the CCF is disabled). The first of these was found
 because this triggered a warning with clang, the two others by looking
 for similar issues in other drivers. Similar patches were merged earlier
 for v6.15-rc1 in commit 92b71befc3 ("Merge tag
 'objtool-urgent-2025-04-01' of
 git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip").
 The remaining three fixes address issues in the new waveform pwm API.
 Now that I worked on this a bit more, the finer details and corner cases
 are better understood and the code is fixed accordingly.
 -----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCgAdFiEEP4GsaTp6HlmJrf7Tj4D7WH0S/k4FAmf6XjUACgkQj4D7WH0S
 /k5tlgf/dq4lAR0MvJi8XHv2uc8sLSMlMGajCezEiIF2aQ09lqloq68uDD6YzkJV
 IlUCH353GKBNJQuFml15TodhIuAfBKKtUutW9pRgaC20HtE1PItKSk3ebYVL8m6l
 ilLeDWA07jB3gkoDdewGnjSxIQ7jCBrcF+s0OTXibpAdBP+vbbDy/aGPM0E0Byk4
 zfGg39l9g0mwJ5ayGR+ZAncxiJM1bfWWcKpZLvOWpA7VnT7Gve9ibYdONtq+2csk
 b3ZURiwA/MTa3acbYfBxZKjwOJzphy4ZnrXtpAJpko5JjdLiRLWToe5uBDEldjV0
 b1icgiI0kIv8f1JBQ02tHsx0UOh3Uw==
 =V4W8
 -----END PGP SIGNATURE-----

Merge tag 'pwm/for-6.15-rc2-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/ukleinek/linux

Pull pwm fixes from Uwe Kleine-König:
 "A set of fixes for pwm core and various drivers

  The first three patches handle clk_get_rate() returning 0 (which might
  happen for example if the CCF is disabled). The first of these was
  found because this triggered a warning with clang, the two others by
  looking for similar issues in other drivers.

  The remaining three fixes address issues in the new waveform pwm API.
  Now that I worked on this a bit more, the finer details and corner
  cases are better understood and the code is fixed accordingly"

* tag 'pwm/for-6.15-rc2-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/ukleinek/linux:
  pwm: axi-pwmgen: Let .round_waveform_tohw() signal when request was rounded up
  pwm: stm32: Search an appropriate duty_cycle if period cannot be modified
  pwm: Let pwm_set_waveform() succeed even if lowlevel driver rounded up
  pwm: fsl-ftm: Handle clk_get_rate() returning 0
  pwm: rcar: Improve register calculation
  pwm: mediatek: Prevent divide-by-zero in pwm_mediatek_config()
History 2025-04-12 08:11:19 -07:00
..
accel Merge drm/drm-fixes into drm-misc-fixes 2025-04-08 10:15:47 +02:00
accessibility treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
acpi Merge branches 'acpi-ec' and 'acpi-button' 2025-04-11 15:50:15 +02:00
amba iommu: Get DT/ACPI parsing into the proper probe path 2025-03-11 14:05:43 +01:00
android Merge 6.14-rc6 into char-misc-next 2025-03-10 07:31:51 +01:00
ata ata: sata_sx4: Add error handling in pdc20621_i2c_read() 2025-04-09 15:24:49 +09:00
atm treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
auxdisplay treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
base treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
bcma Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
block block-6.15-20250411 2025-04-11 08:29:35 -07:00
bluetooth treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
bus treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
cache cache: StarFive: Require a 64-bit system 2024-08-01 07:15:02 -07:00
cdrom treewide: const qualify ctl_tables where applicable 2025-01-28 13:48:37 +01:00
cdx Merge branches 'apple/dart', 'arm/smmu/updates', 'arm/smmu/bindings', 'rockchip', 's390', 'core', 'intel/vt-d' and 'amd/amd-vi' into next 2025-03-20 09:11:09 +01:00
char treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
clk ARM and clkdev updates for 6.15-rc1 2025-04-03 12:21:44 -07:00
clocksource RISC-V Patches for the 6.15 Merge Window, Part 1 2025-04-04 09:49:17 -07:00
comedi treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
connector connector/cn_proc: revert "connector: Fix proc_event_num_listeners count not cleared" 2024-02-13 11:15:44 +01:00
counter Char/Misc fixes for 6.15-rc1 2025-04-02 18:03:34 -07:00
cpufreq treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
cpuidle pmdomain core: 2025-03-25 20:40:51 -07:00
crypto treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
cxl cxl for v6.15 2025-04-02 20:04:43 -07:00
dax device/dax: properly refcount device dax pages when mapping 2025-03-17 22:06:41 -07:00
dca Driver core changes for 6.11-rc1 2024-07-25 10:42:22 -07:00
devfreq PM / devfreq: rockchip-dfi: Switch to use hrtimer_setup() 2025-02-18 10:32:34 +01:00
dio dio: Have dio_bus_match() callback take a const * 2024-07-10 15:38:14 +02:00
dma treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
dma-buf Merge drm/drm-fixes into drm-misc-fixes 2025-04-08 10:15:47 +02:00
dpll Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2025-03-20 21:38:01 +01:00
edac - Add infrastructure support to EDAC in order to be able to register memory 2025-03-25 14:00:26 -07:00
eisa driver core: have match() callback in struct bus_type take a const * 2024-07-03 15:16:54 +02:00
extcon Update extcon next for v6.14 2025-01-12 13:44:27 +01:00
firewire treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
firmware ARM: 2025-04-08 13:47:55 -07:00
fpga fpga: versal: remove incorrect of_match_ptr annotation 2025-03-01 17:37:31 +08:00
fsi fsi: core: Use const 'struct bin_attribute' callbacks 2025-02-21 09:20:31 +01:00
fwctl pds_fwctl: add rpc and query support 2025-03-21 20:57:55 -03:00
gnss [tree-wide] finally take no_llseek out 2024-09-27 08:18:43 -07:00
gpio gpiolib: of: Move Atmel HSMCI quirk up out of the regulator comment 2025-04-08 11:06:45 +02:00
gpu Driver Changes: 2025-04-11 09:11:08 +10:00
greybus treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
hid treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
hsi treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
hte treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
hv - The 6 patch series "Enable strict percpu address space checks" from 2025-04-01 09:29:18 -07:00
hwmon treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
hwspinlock hwspinlock: Remove unused hwspin_lock_get_id() 2025-03-21 17:12:04 -05:00
hwtracing Char/Misc/IIO driver updates for 6.15-rc1 2025-04-01 11:26:08 -07:00
i2c treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
i3c i3c: Add NULL pointer check in i3c_master_queue_ibi() 2025-03-31 11:44:00 +02:00
idle Power management updates for 6.15-rc1 2025-03-25 15:00:18 -07:00
iio treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
infiniband treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
input A set of final cleanups for the timer subsystem: 2025-04-06 08:35:37 -07:00
interconnect interconnect changes for 6.14 2025-01-16 14:01:40 +01:00
iommu iommu/tegra241-cmdqv: Fix warnings due to dmam_free_coherent() 2025-04-11 12:44:27 +02:00
ipack driver core: have match() callback in struct bus_type take a const * 2024-07-03 15:16:54 +02:00
irqchip irqchip/irq-bcm2712-mip: Set EOI/ACK flags in msi_parent_ops 2025-04-07 16:27:48 +02:00
isdn treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
leds treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
macintosh treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
mailbox treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
mcb module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
md CRC cleanups for 6.15 2025-04-08 12:09:28 -07:00
media treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
memory treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
memstick treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
message SCSI misc on 20250326 2025-03-26 19:57:34 -07:00
mfd * Maxim MAX77705: 2025-03-29 14:33:13 -07:00
misc treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
mmc treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
most treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
mtd mtd: rawnand: Add status chack in r852_ready() 2025-04-07 09:02:49 +02:00
mux mux: gpio: use gpiod_multi_set_value_cansleep 2025-02-17 14:27:34 +01:00
net Including fixes from netfilter. 2025-04-10 08:52:18 -07:00
nfc treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
ntb Bug fixes for NTB Switchtec driver mw negative shift, Intel NTB link 2025-04-04 14:23:07 -07:00
nubus nubus: Make nubus_bus_type static and constant 2024-01-03 13:33:59 +01:00
nvdimm libnvdimm additions for 6.15 2025-04-02 20:27:18 -07:00
nvme block-6.15-20250411 2025-04-11 08:29:35 -07:00
nvmem net, treewide: define and use MAC_ADDR_STR_LEN 2025-03-19 19:17:58 +01:00
of Devicetree for v6.15: 2025-03-29 11:23:16 -07:00
opp Driver core and debugfs updates 2025-01-28 12:25:12 -08:00
parisc parisc: led: Use scnprintf() to avoid string truncation warning 2025-03-09 22:27:54 +01:00
parport treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
pci PCI: Run quirk_huawei_pcie_sva() before arm_smmu_probe_device() 2025-04-11 12:53:21 -05:00
pcmcia treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
peci module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
perf pci-v6.15-changes 2025-03-28 19:36:53 -07:00
phy phy-for-6.15 2025-04-01 12:47:11 -07:00
pinctrl Pin control changes for the v6.15 kernel cycle: 2025-03-29 16:59:16 -07:00
platform treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
pmdomain pmdomain: arm: scmi_pm_domain: Remove redundant state verification 2025-03-17 11:12:01 +01:00
pnp Staging driver updates for 6.15-rc1 2025-04-02 18:09:17 -07:00
power i2c-for-6.15-rc1 2025-04-01 14:21:02 -07:00
powercap Power management updates for 6.15-rc1 2025-03-25 15:00:18 -07:00
pps treewide: Convert new and leftover hrtimer_init() users 2025-04-05 10:30:17 +02:00
ps3 ps3: Correct some typos in comments 2024-11-15 00:32:29 +11:00
ptp treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
pwm pwm: A set of fixes for pwm core and various drivers 2025-04-12 08:11:19 -07:00
rapidio Linux 6.14-rc6 2025-03-10 17:37:25 +01:00
ras x86/amd_nb: Move SMN access code to a new amd_node driver 2025-01-08 10:59:44 +01:00
regulator These are objtool fixes and updates by Josh Poimboeuf, centered 2025-04-02 10:30:10 -07:00
remoteproc remoteproc: qcom_q6v5_pas: Make single-PD handling more robust 2025-03-22 08:42:39 -05:00
reset remoteproc updates for v6.15 2025-03-29 17:18:50 -07:00
rpmsg driver core: Constify API device_find_child() and adapt for various usages 2025-01-03 11:19:35 +01:00
rtc treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
s390 s390/virtio_ccw: Don't allocate/assign airqs for non-existing queues 2025-04-09 12:12:41 +02:00
sbus Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
scsi treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
sh sh: remove duplicate ioread/iowrite helpers 2025-03-11 10:41:18 +01:00
siox Driver core changes for 6.11-rc1 2024-07-25 10:42:22 -07:00
slimbus slimbus: messaging: Free transaction ID in delayed interrupt scenario 2025-02-20 15:19:51 +01:00
soc soc: drivers for 6.15, part 2 2025-04-04 09:06:32 -07:00
soundwire soundwire updates for 6.15 2025-04-01 12:43:13 -07:00
spi spi: fsl-spi: Remove redundant probe error message 2025-04-10 12:25:21 +01:00
spmi spmi: hisi-spmi-controller: Drop duplicated OF node assignment in spmi_controller_probe() 2025-01-17 12:58:49 +01:00
ssb driver core: have match() callback in struct bus_type take a const * 2024-07-03 15:16:54 +02:00
staging treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
target treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
tc TC: Fix the wrong format specifier 2024-11-12 15:48:08 +01:00
tee tee: optee: Fix supplicant wait loop 2025-02-14 15:17:34 +01:00
thermal More thermal control updates for 6.15-rc1 2025-04-01 16:51:44 -07:00
thunderbolt USB/Thunderbolt update for 6.15-rc1 2025-04-02 18:23:31 -07:00
tty treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
ufs Revert "Merge tag 'irq-msi-2025-03-23' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip" 2025-03-28 11:22:54 -07:00
uio Char/Misc/IIO driver updates for 6.14-rc1 2025-01-27 16:51:51 -08:00
usb treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
vdpa vduse: add virtio_fs to allowed dev id 2025-02-25 07:10:46 -05:00
vfio VFIO updates for v6.15-rc1 2025-04-01 19:35:19 -07:00
vhost virtio: features, fixes, cleanups 2025-04-01 18:52:54 -07:00
video treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
virt treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
virtio virtio: features, fixes, cleanups 2025-04-01 18:52:54 -07:00
w1 w1: w1_therm: w1: Use HWMON_CHANNEL_INFO macro to simplify code 2025-02-03 12:54:18 +01:00
watchdog treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
xen x86/xen: fix balloon target initialization for PVH dom0 2025-04-07 11:24:12 +02:00
zorro zorro: Constify 'struct bin_attribute' 2025-01-08 18:04:36 +01:00
Kconfig fwctl: Add basic structure for a class subsystem with a cdev 2025-03-06 15:11:30 -04:00
Makefile fwctl: Add basic structure for a class subsystem with a cdev 2025-03-06 15:11:30 -04:00