Commit c227f127 authored by Vladimir Zapolskiy's avatar Vladimir Zapolskiy
Browse files

arm: lpc32xx: switch to common clock framework



The change switches NXP LPC32xx platforms to LPC32xx clock driver
powered by common clock framework, this obsoletes mach-lpc32xx/clock.o
legacy clock driver and thus it is removed.

Legacy timer driver mach-lpc32xx/timer.o strictly depends on legacy
clock support, but fortunately an existing LPC32xx clock source and
clock event driver completely replaces it, and thus it can be removed
as well.

Noticeably platform UART driver directly operates on LPC32xx source
control block registers, remove this dependency to avoid overlapping
with common clock framework driver, also this guarantees that UART is
working expectedly.

Tested-by: default avatarSylvain Lemieux <slemieux@tycoint.com>
Signed-off-by: default avatarVladimir Zapolskiy <vz@mleia.com>
parent 92e963f5
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -527,7 +527,8 @@ config ARCH_LPC32XX
	select ARCH_REQUIRE_GPIOLIB
	select ARM_AMBA
	select CLKDEV_LOOKUP
	select CLKSRC_MMIO
	select CLKSRC_LPC32XX
	select COMMON_CLK
	select CPU_ARM926T
	select GENERIC_CLOCKEVENTS
	select HAVE_IDE
+1 −2
Original line number Diff line number Diff line
@@ -2,7 +2,6 @@
# Makefile for the linux kernel.
#

obj-y	:= timer.o irq.o common.o serial.o clock.o
obj-y	:= irq.o common.o serial.o
obj-y	+= pm.o suspend.o
obj-y	+= phy3250.o

arch/arm/mach-lpc32xx/clock.c

deleted100644 → 0
+0 −1284

File deleted.

Preview size limit exceeded, changes collapsed.

+0 −1
Original line number Diff line number Diff line
@@ -260,7 +260,6 @@ DT_MACHINE_START(LPC32XX_DT, "LPC32XX SoC (Flattened Device Tree)")
	.atag_offset	= 0x100,
	.map_io		= lpc32xx_map_io,
	.init_irq	= lpc32xx_init_irq,
	.init_time	= lpc32xx_timer_init,
	.init_machine	= lpc3250_machine_init,
	.dt_compat	= lpc32xx_dt_compat,
	.restart	= lpc23xx_restart,
+0 −3
Original line number Diff line number Diff line
@@ -76,9 +76,6 @@ void __init lpc32xx_serial_init(void)
	unsigned int puart;
	int i, j;

	/* UART clocks are off, let clock driver manage them */
	__raw_writel(0, LPC32XX_CLKPWR_UART_CLK_CTRL);

	for (i = 0; i < ARRAY_SIZE(uartinit_data); i++) {
		clk = clk_get(NULL, uartinit_data[i].uart_ck_name);
		if (!IS_ERR(clk)) {
Loading