linux/drivers/clk/sunxi-ng
Jernej Skrabec d897ef56fa
clk: sunxi-ng: Mask nkmp factors when setting register
Currently, if one of the factors isn't present, bit 0 gets always set to
1. For example, A83T has NMP PLLs modelled as NKMP PLL without K. Since
K is not specified, it's offset, width and shift is 0. Driver assumes
that lowest value possible is 1, otherwise we would get division by 0.
That situation causes that bit 0 is always set, which may change wanted
clock rate.

Fix that by masking every factor according to it's specified width.
Factors with width set to 0 won't have any influence to final register
value.

Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
2018-02-15 14:40:19 +01:00
..
ccu_common.c Allwinner clock patches for 4.12 2017-04-19 09:02:00 -07:00
ccu_common.h clk: move clock common macros out from vendor directories 2017-12-21 15:00:38 -08:00
ccu_div.c clk: divider: fix incorrect usage of container_of 2017-12-28 15:16:04 -08:00
ccu_div.h clk: sunxi-ng: div: Add support for fixed post-divider 2017-08-14 22:31:46 +08:00
ccu_frac.c clk: sunxi-ng: Wait for lock when using fractional mode 2017-08-01 10:18:23 +08:00
ccu_frac.h clk: sunxi-ng: Wait for lock when using fractional mode 2017-08-01 10:18:23 +08:00
ccu_gate.c clk: sunxi-ng: gate: Support common pre-dividers 2017-03-06 10:25:56 +01:00
ccu_gate.h clk: sunxi-ng: Add gate clock support 2016-07-08 18:04:38 -07:00
ccu_mmc_timing.c clk: sunxi-ng: Add interface to query or configure MMC timing modes. 2017-08-30 14:01:47 +02:00
ccu_mp.c clk: sunxi-ng: Support fixed post-dividers on MP style clocks 2017-12-07 10:09:44 +01:00
ccu_mp.h clk: sunxi-ng: Support fixed post-dividers on MP style clocks 2017-12-07 10:09:44 +01:00
ccu_mult.c clk: sunxi-ng: Wait for lock when using fractional mode 2017-08-01 10:18:23 +08:00
ccu_mult.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ccu_mux.c clk: sunxi-ng: Staticize ccu_mux_helper_unapply_prediv() 2017-06-16 14:51:36 -07:00
ccu_mux.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ccu_nk.c clk: sunxi-ng: use 1 as fallback for minimum multiplier 2017-04-13 14:09:25 +02:00
ccu_nk.h clk: sunxi-ng: Rename the internal structures 2016-10-20 19:24:20 +02:00
ccu_nkm.c clk: sunxi-ng: nkm: add support for fixed post-divider 2017-08-14 22:45:06 +08:00
ccu_nkm.h clk: sunxi-ng: nkm: add support for fixed post-divider 2017-08-14 22:45:06 +08:00
ccu_nkmp.c clk: sunxi-ng: Mask nkmp factors when setting register 2018-02-15 14:40:19 +01:00
ccu_nkmp.h clk: sunxi-ng: Rename the internal structures 2016-10-20 19:24:20 +02:00
ccu_nm.c clk: sunxi-ng: Support fixed post-dividers on NM style clocks 2017-12-08 10:08:07 +01:00
ccu_nm.h clk: sunxi-ng: Support fixed post-dividers on NM style clocks 2017-12-08 10:08:07 +01:00
ccu_phase.c clk: sunxi-ng: Add phase clock support 2016-07-08 18:04:45 -07:00
ccu_phase.h clk: sunxi-ng: Add phase clock support 2016-07-08 18:04:45 -07:00
ccu_reset.c clk: sunxi-ng: Implement reset control status readback 2017-09-26 11:13:03 +02:00
ccu_reset.h clk: sunxi-ng: explicitly include linux/spinlock.h 2017-06-07 15:32:12 +02:00
ccu_sdm.c clk: sunxi-ng: Add sigma-delta modulation support 2017-10-13 09:27:06 +02:00
ccu_sdm.h clk: sunxi-ng: Add sigma-delta modulation support 2017-10-13 09:27:06 +02:00
ccu-sun4i-a10.c clk: sunxi-ng: sun4i: Use sigma-delta modulation for audio PLL 2017-10-13 09:27:23 +02:00
ccu-sun4i-a10.h clk: sunxi-ng: sun4i: Export video PLLs 2017-10-17 19:32:16 +02:00
ccu-sun5i.c clk: sunxi-ng: sun5i: Use sigma-delta modulation for audio PLL 2017-10-13 09:27:29 +02:00
ccu-sun5i.h clk: sunxi-ng: sun5i: Export video PLLs 2017-06-07 15:32:14 +02:00
ccu-sun6i-a31.c clk: sunxi-ng: sun6i: Use sigma-delta modulation for audio PLL 2017-10-13 09:27:34 +02:00
ccu-sun6i-a31.h clk: sunxi-ng: sun6i: Export video PLLs 2017-09-29 10:46:10 +02:00
ccu-sun8i-a23-a33.h clk: sunxi-ng: Add A33 CCU support 2016-09-10 11:41:19 +02:00
ccu-sun8i-a23.c clk: sunxi-ng: sun8i: a23: Use sigma-delta modulation for audio PLL 2017-10-13 09:27:38 +02:00
ccu-sun8i-a33.c clk: Convert to using %pOF instead of full_name 2017-07-21 15:49:54 -07:00
ccu-sun8i-a83t.c clk: sunxi-ng: a83t: Add M divider to TCON1 clock 2018-01-03 13:45:04 +08:00
ccu-sun8i-a83t.h clk: sunxi-ng: Add driver for A83T CCU 2017-06-07 15:32:16 +02:00
ccu-sun8i-de2.c clk: sunxi-ng: fix the A64/H5 clock description of DE2 CCU 2017-12-29 16:15:14 +08:00
ccu-sun8i-de2.h clk: sunxi-ng: add support for DE2 CCU 2017-06-07 15:32:12 +02:00
ccu-sun8i-h3.c clk: sunxi-ng: sun8i: h3: Use sigma-delta modulation for audio PLL 2017-10-13 09:27:18 +02:00
ccu-sun8i-h3.h clk: sunxi-ng: h3: Export PLL_PERIPH0 clock for the PRCM 2017-05-31 21:57:27 +02:00
ccu-sun8i-r40.c clk: sunxi-ng: support R40 SoC 2017-08-19 17:04:37 +08:00
ccu-sun8i-r40.h clk: sunxi-ng: support R40 SoC 2017-08-19 17:04:37 +08:00
ccu-sun8i-r.c clk: Convert to using %pOF instead of full_name 2017-07-21 15:49:54 -07:00
ccu-sun8i-r.h clk: sunxi-ng: Fix header guard of ccu-sun8i-r.h 2017-07-27 16:53:47 +02:00
ccu-sun8i-v3s.c clk: Convert to using %pOF instead of full_name 2017-07-21 15:49:54 -07:00
ccu-sun8i-v3s.h clk: sunxi-ng: add support for V3s CCU 2017-01-20 21:39:03 +01:00
ccu-sun9i-a80-de.c clk: sunxi-ng: sun9i-a80: Fix wrong pointer passed to PTR_ERR() 2017-02-06 15:01:29 -08:00
ccu-sun9i-a80-de.h clk: sunxi-ng: Add A80 Display Engine CCU 2017-01-30 08:38:30 +01:00
ccu-sun9i-a80-usb.c clk: sunxi-ng: Add A80 USB CCU 2017-01-30 08:37:51 +01:00
ccu-sun9i-a80-usb.h clk: sunxi-ng: Add A80 USB CCU 2017-01-30 08:37:51 +01:00
ccu-sun9i-a80.c clk: sunxi-ng: a80: Fix audio PLL comment not matching actual code 2017-04-13 14:09:30 +02:00
ccu-sun9i-a80.h clk: sunxi-ng: Add A80 CCU 2017-01-30 08:37:30 +01:00
ccu-sun50i-a64.c clk: sunxi-ng: sun50i: a64: Add 2x fixed post-divider to MMC module clocks 2017-12-07 10:09:57 +01:00
ccu-sun50i-a64.h clk: sunxi-ng: a64: Export PLL_PERIPH0 clock for the PRCM 2017-05-31 21:57:30 +02:00
Kconfig clk: sunxi-ng: remove select on obsolete SUNXI_CCU_X kconfig name 2018-02-13 09:43:50 +01:00
Makefile We have two changes to the core framework this time around. The first being a 2017-11-17 20:04:24 -08:00