Commit 31b16d97 authored by Marek Szyprowski's avatar Marek Szyprowski Committed by Alexandre Belloni
Browse files

rtc: s3c: Disable all enable (RTC, tick) bits in the probe



Bootloader might use RTC hardware and leave it in the enabled state. Ensure
that the potentially enabled periodic tick interrupts are disabled before
enabling the driver, because they might cause lockup if tick interrupt
happens after disabling RTC gate clock.

Signed-off-by: default avatarMarek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: default avatarAlexandre Belloni <alexandre.belloni@bootlin.com>
Reviewed-by: default avatarKrzysztof Kozlowski <krzk@kernel.org>
Link: https://lore.kernel.org/r/20201202111318.5353-1-m.szyprowski@samsung.com
parent 00c33482
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -503,6 +503,10 @@ static int s3c_rtc_probe(struct platform_device *pdev)
			goto err_src_clk;
	}

	/* disable RTC enable bits potentially set by the bootloader */
	if (info->data->disable)
		info->data->disable(info);

	/* check to see if everything is setup correctly */
	if (info->data->enable)
		info->data->enable(info);