linux/drivers/clk
Chen-Yu Tsai 2635a64d0e clk: sunxi: sun9i-mmc: Implement reset callback for reset controls
commit 61d2f2a057 upstream.

Our MMC host driver now issues a reset, instead of just deasserting
the reset control, since commit c34eda69ad ("mmc: sunxi: Reset the
device at probe time"). The sun9i-mmc clock driver does not support
this, and will fail, which results in MMC not probing.

This patch implements the reset callback by asserting the reset control,
then deasserting it after a small delay.

Fixes: 7a6fca879f ("clk: sunxi: Add driver for A80 MMC config clocks/resets")
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Philipp Zabel <p.zabel@pengutronix.de>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Michael Turquette <mturquette@baylibre.com>
Link: lkml.kernel.org/r/20171218035751.20661-1-wens@csie.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2017-12-29 17:43:00 +01:00
..
at91 clk: at91: Fix a return value in case of error 2016-10-20 16:37:56 -07:00
axis clk: axis: Use new macro CLK_OF_DECLARE_DRIVER 2016-08-12 18:00:37 -07:00
axs10x clk/axs10x: Clear init field in driver probe 2017-10-08 10:26:04 +02:00
bcm clk: bcm2835: Fix ->fixed_divider of pllh_aux 2017-03-22 12:43:39 +01:00
berlin clk: berlin: Pass correct type to hw provider registration 2016-11-16 11:04:17 -08:00
h8300 clk: h8300: Migrate to clk_hw based registration APIs 2016-08-24 17:37:10 -07:00
hisilicon clk: hi6220: mark clock cs_atb_syspll as critical 2017-12-20 10:07:30 +01:00
imx clk: imx6: refine hdmi_isfr's parent to make HDMI work on i.MX6 SoCs w/o VPU 2017-12-20 10:07:29 +01:00
ingenic clk: ingenic: Allow divider value to be divided 2016-05-12 14:48:25 -07:00
keystone clk: keystone: fix a trivial typo 2015-10-19 15:29:09 -07:00
loongson1 CLK: Add Loongson1C clock support 2016-09-23 14:49:21 -07:00
mediatek clk: mediatek: add the option for determining PLL source clock 2017-12-20 10:07:29 +01:00
meson ARM: SoC: late DT updates for v4.9 2016-10-07 21:34:49 -07:00
microchip clk: microchip: Initialize SOSC clock rate for PIC32MZDA. 2016-08-24 16:05:24 -07:00
mmp clk: mmp: pxa910: fix return value check in pxa910_clk_init() 2016-11-01 17:41:20 -07:00
mvebu clk: mvebu: adjust AP806 CPU clock frequencies to production chip 2017-11-15 15:53:16 +01:00
mxs clk: mxs: Remove CLK_IS_ROOT 2016-03-02 17:44:59 -08:00
nxp clk: lpc32xx: add a quirk for PWM and MS clock dividers 2017-04-12 12:41:15 +02:00
pistachio clk: pistachio: correct critical clock list 2015-08-26 11:34:43 -07:00
pxa The clk changes for this release cycle are mostly dominated by 2016-03-23 06:06:45 -07:00
qcom clk: qcom: ipq4019: Add all the frequencies for apss cpu 2017-11-30 08:39:13 +00:00
renesas clk: renesas: mstp: Support 8-bit registers for r7s72100 2017-01-12 11:39:28 +01:00
rockchip clk: rockchip: add "," to mux_pll_src_apll_dpll_gpll_usb480m_p on rk3036 2017-05-14 14:00:19 +02:00
samsung clk: samsung: exynos5433: Add IDs for PHYCLK_MIPIDPHY0_* clocks 2017-11-15 15:53:12 +01:00
sirf clk: sirf: Remove CLK_IS_ROOT 2016-04-15 16:50:04 -07:00
socfpga clk: socfpga: allow for multiple parents on Arria10 periph clocks 2016-02-22 14:17:37 -08:00
spear clk: spear: Remove CLK_IS_ROOT 2016-03-02 17:46:55 -08:00
st drivers: clk: st: Handle clk synchronous mode for video clocks 2016-09-16 16:01:41 -07:00
sunxi clk: sunxi: sun9i-mmc: Implement reset callback for reset controls 2017-12-29 17:43:00 +01:00
sunxi-ng clk: sunxi-ng: sun6i: Rename HDMI DDC clock to avoid name collision 2017-12-25 14:23:45 +01:00
tegra clk: tegra: Fix cclk_lp divisor register 2017-12-20 10:07:30 +01:00
ti clk: ti: dra7-atl-clock: fix child-node lookups 2017-11-30 08:39:07 +00:00
uniphier clk: uniphier: fix DAPLL2 clock rate of Pro5 2017-12-14 09:28:24 +01:00
ux500 ARM: ux500: use CLK_OF_DECLARE() 2016-07-12 11:24:07 +02:00
versatile clk: versatile/icst: support for AP baseboard clocks 2016-08-29 11:38:51 -07:00
x86 clk: x86: Remove clkdev.h and clk.h includes 2016-03-03 11:27:26 -08:00
zte clk: zx296718: register driver earlier with core_initcall 2016-09-23 14:42:13 -07:00
zynq clk: zynq: Remove CLK_IS_ROOT 2016-03-02 17:48:26 -08:00
clk-asm9260.c clk: asm9260: Migrate to clk_hw based registration and OF APIs 2016-08-24 16:08:33 -07:00
clk-axi-clkgen.c clk: axi-clkgen: Migrate to clk_hw based OF and registration APIs 2016-08-24 16:10:31 -07:00
clk-axm5516.c clk: axm5516: Migrate to clk_hw based OF and registration APIs 2016-08-24 16:11:07 -07:00
clk-cdce706.c clk: cdce: Migrate to clk_hw based OF and registration APIs 2016-08-24 16:12:38 -07:00
clk-cdce925.c clk: cdce925: Migrate to clk_hw based OF and provider APIs 2016-08-24 17:18:13 -07:00
clk-clps711x.c clk: clps711x: Migrate to clk_hw based OF and registration APIs 2016-08-24 17:19:26 -07:00
clk-composite.c Merge branch 'clk-hw-register' (early part) into clk-next 2016-04-21 14:47:18 -07:00
clk-conf.c clk: clk-conf: Fix error message when clock isn't found 2016-07-08 11:27:58 -07:00
clk-cs2000-cp.c clk: cs2000: Migrate to clk_hw based OF and registration APIs 2016-08-24 17:20:31 -07:00
clk-devres.c ARM: 7537/1: clk: Fix release in devm_clk_put() 2012-09-19 21:51:27 +01:00
clk-divider.c clk: divider: Fix clk_divider_round_rate() to use clk_readl() 2016-08-12 17:33:09 -07:00
clk-efm32gg.c clk: efm32gg: Pass correct type to hw provider registration 2016-11-16 11:08:55 -08:00
clk-fixed-factor.c clk: fixed-factor: Remove export symbol on setup function 2016-08-15 15:08:03 -07:00
clk-fixed-rate.c clk: fixed-rate: Remove export symbol on setup function 2016-08-15 15:08:06 -07:00
clk-fractional-divider.c clk: fractional-divider: Add hw based registration APIs 2016-04-19 16:56:28 -07:00
clk-gate.c clk: gate: Add hw based registration APIs 2016-04-19 16:55:01 -07:00
clk-gpio.c clk: gpio: Add hw based registration APIs 2016-04-19 16:56:28 -07:00
clk-highbank.c clk: highbank: Migrate to clk_hw based registration and OF APIs 2016-06-30 12:25:28 -07:00
clk-max77686.c clk: max77686: fix number of clocks setup for clk_hw based registration 2016-10-17 15:31:59 -07:00
clk-mb86s7x.c clk: mb86s7x: Migrate to clk_hw based OF and registration APIs 2016-08-24 17:23:01 -07:00
clk-moxart.c clk: moxart: Migrate to clk_hw based OF and registration APIs 2016-08-24 17:23:20 -07:00
clk-multiplier.c clk: multiplier: Prevent the multiplier from under / over flowing 2016-06-20 13:00:00 -07:00
clk-mux.c clk: mux: Add hw based registration APIs 2016-04-19 16:55:01 -07:00
clk-nomadik.c clk: nomadik: Migrate to clk_hw based OF and registration APIs 2016-06-30 12:25:53 -07:00
clk-nspire.c clk: nspire: Migrate to clk_hw based OF and registration APIs 2016-08-24 17:23:21 -07:00
clk-oxnas.c clk: oxnas: make it explicitly non-modular 2016-07-06 15:20:33 -07:00
clk-palmas.c clk: palmas: Migrate to clk_hw based OF and registration APIs 2016-08-24 17:23:23 -07:00
clk-pwm.c clk: pwm: Migrate to clk_hw based OF and registration APIs 2016-08-24 17:23:27 -07:00
clk-qoriq.c clk: qoriq: Don't allow CPU clocks higher than starting value 2016-11-01 17:26:15 -07:00
clk-rk808.c clk: rk808: Pass the right pointer as the get_hw context 2016-09-09 11:07:07 -07:00
clk-s2mps11.c clk: s2mps11: Migrate to clk_hw based OF and registration APIs 2016-06-30 12:29:14 -07:00
clk-scpi.c clk: scpi: don't add cpufreq device if the scpi dvfs node is disabled 2017-07-05 14:40:30 +02:00
clk-si514.c clk: si514: Migrate to clk_hw based OF and registration APIs 2016-08-24 17:29:59 -07:00
clk-si570.c clk: si570: Migrate to clk_hw based OF and registration APIs 2016-08-24 17:30:01 -07:00
clk-si5351.c clk: si5351: Migrate to clk_hw based OF and registration APIs 2016-08-24 17:30:00 -07:00
clk-si5351.h clk: si5351: remove variant from platform_data 2014-01-27 11:20:22 -08:00
clk-stm32f4.c clk: stm32f4: fix error handling 2016-07-06 17:55:31 -07:00
clk-tango4.c clk: tango4: improve clkgen driver 2016-04-15 17:16:06 -07:00
clk-twl6040.c clk: twl6040: Migrate to clk_hw based registration APIs 2016-08-24 17:34:11 -07:00
clk-u300.c clk: u300: Migrate to clk_hw based registration APIs 2016-06-30 12:26:18 -07:00
clk-vt8500.c clk: vt8500: Migrate to clk_hw based registration APIs 2016-08-24 17:35:48 -07:00
clk-wm831x.c clk: clk-wm831x: fix a logic error 2017-01-12 11:39:27 +01:00
clk-xgene.c clk: xgene: Don't call __pa on ioremaped address 2016-10-28 11:03:47 -07:00
clk.c clk: core: Force setting the phase delay when no change 2016-08-30 14:52:26 -07:00
clk.h clk: Replace of_clk_get_by_clkspec() with of_clk_get_from_provider() 2015-03-12 12:20:34 -07:00
clkdev.c ARM: 8631/1: clkdev: Detect errors in clk_hw_register_clkdev() for mass registration 2017-01-15 13:42:57 +01:00
Kconfig clk: uniphier: add core support code for UniPhier clock driver 2016-09-16 16:31:33 -07:00
Makefile clk: Make x86/ conditional on CONFIG_COMMON_CLK 2017-05-14 14:00:17 +02:00