linux/drivers
Jonathan Marek de04241ab8 opp: Don't skip freq update for different frequency
We skip the OPP update if the current and target OPPs are same. This is
fine for the devices that don't support frequency but may cause issues
for the ones that need to program frequency.

An OPP entry doesn't really signify a single operating frequency but
rather the highest frequency at which the other properties of the OPP
entry apply. And we may reach here with different frequency values,
while all of them would point to the same OPP entry in the OPP table.

We just need to update the clock frequency in that case, though in order
to not add special exit points we reuse the code flow from a normal
path.

While at it, rearrange the conditionals in the 'if' statement to check
'enabled' flag at the end.

Fixes: 81c4d8a3c4 ("opp: Keep track of currently programmed OPP")
Signed-off-by: Jonathan Marek <jonathan@marek.ca>
[ Viresh: Improved commit log and subject, rename current_freq as
	  current_rate, document it, remove local variable and rearrange
	  code. ]
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
2021-02-18 12:31:08 +05:30
..
accessibility speakup: fix uninitialized flush_lock 2020-12-09 15:38:13 +01:00
acpi arm64 fixes: 2021-01-29 13:59:24 -08:00
amba
android Merge branch 'exec-for-v5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace 2020-12-15 19:29:43 -08:00
ata
atm atm: idt77252: call pci_disable_device() on error path 2020-12-21 17:34:09 -08:00
auxdisplay
base Driver core fixes for 5.11-rc5 2021-01-24 11:05:48 -08:00
bcma
block block-5.11-2021-01-29 2021-01-29 13:50:06 -08:00
bluetooth Bluetooth: btusb: Add workaround for remote-wakeup issues with Barrot 8041a02 fake CSR controllers 2020-12-07 17:01:54 +02:00
bus bus: arm-integrator-lm: Add of_node_put() before return statement 2021-01-15 17:53:05 +01:00
cdrom cdrom: Reset sector_size back it is not 2048. 2020-12-12 11:12:25 -07:00
char UAPI Changes: 2020-12-18 12:38:28 -08:00
clk A handful of clk driver fixes 2021-01-28 09:14:58 -08:00
clocksource asm-generic: cross-architecture timer cleanup 2020-12-16 00:07:17 -08:00
connector net/connector: Add const qualifier to cb_id 2020-12-16 11:06:49 -08:00
counter counter:ti-eqep: remove floor 2021-01-14 20:56:56 +00:00
cpufreq cpufreq: qcom: Migrate to dev_pm_opp_set_opp() 2021-02-02 10:28:09 +05:30
cpuidle ARM: SoC drivers for v5.11 2020-12-16 16:38:41 -08:00
crypto crypto: marvel/cesa - Fix tdma descriptor on 64-bit 2021-01-22 14:57:31 +11:00
dax libnvdimm for 5.11 2020-12-24 12:18:11 -08:00
dca
devfreq PM / devfreq: Add required OPPs support to passive governor 2021-02-04 16:48:16 +05:30
dio
dma dmaengine: stm32-mdma: fix STM32_MDMA_VERY_HIGH_PRIORITY value 2021-01-04 21:27:45 +05:30
dma-buf dma-buf: cma_heap: Fix memory leak in CMA heap 2021-01-10 23:08:21 +05:30
edac Merge branch 'akpm' (patches from Andrew) 2020-12-15 12:53:37 -08:00
eisa
extcon extcon: max77693: Fix modalias string 2020-12-11 17:18:10 +09:00
firewire
firmware A single EFI fix from Lukas: 2021-01-31 11:57:37 -08:00
fpga Merge 5.10-rc7 into char-misc-next 2020-12-07 10:08:14 +01:00
fsi hwmon patches for v5.11 2020-12-15 16:06:14 -08:00
gnss
gpio gpio: tegra: Add missing dependencies 2021-01-19 13:37:10 +01:00
gpu drm: msm: Migrate to dev_pm_opp_set_opp() 2021-02-02 10:30:49 +05:30
greybus
hid HID: wacom: Correct NULL dereference on AES pen proximity 2021-01-26 11:53:53 +01:00
hsi HSI: core: fix a kernel-doc markup 2020-12-02 22:35:44 +01:00
hv x86/hyperv: Fix kexec panic/hang issues 2021-01-05 17:52:04 +00:00
hwmon hwmon: (amd_energy) fix allocation of hwmon_channel_info config 2021-01-08 07:31:03 -08:00
hwspinlock hwspinlock: sirf: Remove the redundant 'of_match_ptr' 2020-12-10 13:34:40 -06:00
hwtracing intel_th: pci: Add Alder Lake-P support 2021-01-21 18:54:43 +01:00
i2c i2c: mediatek: Move suspend and resume handling to NOIRQ phase 2021-01-28 10:54:45 +01:00
i3c i3c/master/mipi-i3c-hci: quiet maybe-unused variable warning 2020-12-17 10:31:30 +01:00
ide SCSI fixes on 20210101 2021-01-01 12:58:07 -08:00
idle intel_idle: add SnowRidge C-state table 2020-12-30 18:25:34 +01:00
iio iio: sx9310: Fix semtech,avg-pos-strength setting when > 16 2021-01-14 21:01:22 +00:00
infiniband Revert "RDMA/rxe: Remove VLAN code leftovers from RXE" 2021-01-20 13:29:28 -04:00
input Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2020-12-15 16:18:23 -08:00
interconnect interconnect: imx8mq: Use icc_sync_state 2020-12-28 14:03:02 +02:00
iommu iommu/vt-d: Do not use flush-queue when caching-mode is on 2021-01-28 13:59:02 +01:00
ipack
irqchip irqchip fixes for 5.11, take #1 2021-01-12 21:23:55 +01:00
isdn misdn: dsp: select CONFIG_BITREVERSE 2021-01-05 15:50:36 -08:00
leds leds: rt8515: Add Richtek RT8515 LED driver 2021-01-31 10:38:03 +01:00
lightnvm lightnvm: fix memory leak when submit fails 2021-01-21 05:45:51 -07:00
macintosh macintosh/adb-iop: Send correct poll command 2020-12-07 10:48:16 +01:00
mailbox mailbox: arm_mhuv2: Add driver 2020-12-09 19:26:02 -06:00
mcb
md block-5.11-2021-01-29 2021-01-29 13:50:06 -08:00
media media: cec: add stm32 driver 2021-01-26 19:15:54 +01:00
memory Merge tag 'memory-controller-drv-tegra-5.11-3' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl into arm/drivers 2020-12-09 00:40:02 +01:00
memstick memstick: r592: Fix error return in r592_probe() 2020-12-04 12:27:10 +01:00
message SCSI misc on 20201216 2020-12-16 13:34:31 -08:00
mfd mfd: ab8500-debugfs: Remove extraneous seq_putc 2020-12-26 09:19:49 -08:00
misc misc: rtsx: init value of aspm_enabled 2021-01-22 11:04:53 +01:00
mmc mmc: core: don't initialize block size from ext_csd if not present 2021-01-15 12:09:15 +01:00
most
mtd mtd: rawnand: omap: Use BCH private fields in the specific OOB layout 2021-01-20 23:38:00 +01:00
mux
net Networking fixes for 5.11-rc6, including fixes from can, xfrm, wireless, 2021-01-28 15:24:43 -08:00
nfc nfc: s3fwrn5: Remove unused NCI prop commands 2020-12-16 13:09:35 -08:00
ntb Big fix for IDT NTB and Intel NTB LTR management support 2020-12-27 09:22:55 -08:00
nubus
nvdimm libnvdimm/label: Return -ENXIO for no slot in __blk_label_update 2020-12-16 16:53:00 -08:00
nvme nvme-core: use list_add_tail_rcu instead of list_add_tail for nvme_init_ns_head 2021-01-28 19:25:07 +01:00
nvmem
of of/device: Update dma_range_map only when dev has valid dma-ranges 2021-01-27 14:00:14 -06:00
opp opp: Don't skip freq update for different frequency 2021-02-18 12:31:08 +05:30
oprofile
parisc
parport
pci pci-v5.11-fixes-1 2020-12-25 20:17:40 -08:00
pcmcia Merge branch 'pcmcia-next' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/linux 2020-12-19 12:50:10 -08:00
perf Revert "arm64: Enable perf events based hard lockup detector" 2021-01-13 15:08:41 +00:00
phy phy: mediatek: allow compile-testing the dsi phy 2021-01-04 13:00:54 +05:30
pinctrl pinctrl: qcom: Don't clear pending interrupts when enabling 2021-01-18 16:07:08 +01:00
platform platform/x86: thinkpad_acpi: Add P53/73 firmware to fan_quirk_table for dual fan control 2021-01-18 21:42:01 +01:00
pnp
power power: supply: Fix a typo in warning message 2020-12-13 01:00:10 +01:00
powercap Merge branches 'pm-sleep', 'pm-acpi', 'pm-domains' and 'powercap' 2020-12-15 15:26:14 +01:00
pps
ps3 powerpc/ps3: use dma_mapping_error() 2020-12-15 22:50:12 +11:00
ptp ptp: ptp_ines: prevent build when HAS_IOMEM is not set 2021-01-06 16:17:23 -08:00
pwm pwm: Changes for v5.11-rc1 2020-12-19 11:51:32 -08:00
rapidio rapidio: remove unused rio_get_asm() and rio_get_device() 2020-12-15 22:46:18 -08:00
ras
regulator regulator: Fix lockdep warning resolving supplies 2021-01-22 14:03:07 +00:00
remoteproc ARM: SoC drivers for v5.11 2020-12-16 16:38:41 -08:00
reset ARM: SoC drivers for v5.11 2020-12-16 16:38:41 -08:00
rpmsg
rtc rtc: mc146818: Detect and handle broken RTCs 2021-01-27 09:36:22 +01:00
s390 - Fix max number of VCPUs reported via ultravisor information sysfs interface. 2021-01-30 11:48:57 -08:00
sbus
scsi scsi: qla2xxx: Fix description for parameter ql2xenforce_iocb_limit 2021-01-20 21:43:31 -05:00
sfi
sh sh/intc: Restore devm_ioremap() alignment 2021-01-06 19:55:29 -05:00
siox siox: Make remove callback return void 2020-12-10 16:17:15 +01:00
slimbus slimbus: qcom: fix potential NULL dereference in qcom_slim_prg_slew() 2020-12-10 16:23:56 +01:00
soc OpenRISC fixes for 5.11-rc6 2021-01-30 16:39:36 -08:00
soundwire soundwire: intel: fix another unused-function warning 2020-12-05 13:11:54 +05:30
spi spidev: Add cisco device compatible 2021-01-25 12:53:48 +00:00
spmi spmi: Add driver shutdown support 2020-12-10 10:45:36 +01:00
ssb
staging Networking fixes for 5.11-rc6, including fixes from can, xfrm, wireless, 2021-01-28 15:24:43 -08:00
target SCSI fixes on 20210130 2021-01-30 17:42:42 -08:00
tc
tee tee: optee: replace might_sleep with cond_resched 2021-01-21 10:36:48 +01:00
thermal - Add Alder Lake support ACPI ids (Srinivas Pandruvada) 2020-12-18 12:19:37 -08:00
thunderbolt thunderbolt: Drop duplicated 0x prefix from format string 2021-01-07 15:14:44 +03:00
tty tty: avoid using vfs_iocb_iter_write() for redirected console writes 2021-01-29 13:12:17 -08:00
uio uio: uio_hv_generic: use devm_kzalloc() for private data alloc 2020-12-09 19:59:00 +01:00
usb usb: bdc: Make bdc pci driver depend on BROKEN 2021-01-19 14:10:46 +01:00
vdpa virtio,vdpa: features, cleanups, fixes 2020-12-24 12:06:46 -08:00
vfio ARM: 2020-12-20 10:44:05 -08:00
vhost vhost: bugfix 2021-01-05 13:30:28 -08:00
video UAPI Changes: 2020-12-18 12:38:28 -08:00
virt
virtio virtio,vdpa: features, cleanups, fixes 2020-12-24 12:06:46 -08:00
visorbus
vlynq
vme vme: switch from 'pci_' to 'dma_' API 2020-12-09 19:44:34 +01:00
w1
watchdog linux-watchdog 5.11-rc1 tag 2020-12-23 15:01:49 -08:00
xen xen: branch for v5.11-rc6 2021-01-28 10:08:08 -08:00
zorro
Kconfig
Makefile asm-generic: cross-architecture timer cleanup 2020-12-16 00:07:17 -08:00