Commit c1fcd403 authored by Romain Naour's avatar Romain Naour Committed by Kukjin Kim

ARM: SAMSUNG: Rename s5p-time to samsung-time

Signed-off-by: default avatarNaour Romain <romain.naour@openwide.fr>
Reviewed-by: default avatarTomasz Figa <tomasz.figa@gmail.com>
Reviewed-by: default avatarHeiko Stuebner <heiko@sntech.de>
Signed-off-by: default avatarKukjin Kim <kgene.kim@samsung.com>
parent 7488335d
...@@ -276,8 +276,8 @@ config MACH_UNIVERSAL_C210 ...@@ -276,8 +276,8 @@ config MACH_UNIVERSAL_C210
select S5P_DEV_ONENAND select S5P_DEV_ONENAND
select S5P_DEV_TV select S5P_DEV_TV
select S5P_GPIO_INT select S5P_GPIO_INT
select S5P_HRT
select S5P_SETUP_MIPIPHY select S5P_SETUP_MIPIPHY
select SAMSUNG_HRT
help help
Machine support for Samsung Mobile Universal S5PC210 Reference Machine support for Samsung Mobile Universal S5PC210 Reference
Board. Board.
......
...@@ -41,7 +41,7 @@ ...@@ -41,7 +41,7 @@
#include <plat/mfc.h> #include <plat/mfc.h>
#include <plat/sdhci.h> #include <plat/sdhci.h>
#include <plat/fimc-core.h> #include <plat/fimc-core.h>
#include <plat/s5p-time.h> #include <plat/samsung-time.h>
#include <plat/camport.h> #include <plat/camport.h>
#include <mach/map.h> #include <mach/map.h>
...@@ -1094,7 +1094,7 @@ static void __init universal_map_io(void) ...@@ -1094,7 +1094,7 @@ static void __init universal_map_io(void)
exynos_init_io(NULL, 0); exynos_init_io(NULL, 0);
s3c24xx_init_clocks(clk_xusbxti.rate); s3c24xx_init_clocks(clk_xusbxti.rate);
s3c24xx_init_uarts(universal_uartcfgs, ARRAY_SIZE(universal_uartcfgs)); s3c24xx_init_uarts(universal_uartcfgs, ARRAY_SIZE(universal_uartcfgs));
s5p_set_timer_source(S5P_PWM2, S5P_PWM4); samsung_set_timer_source(SAMSUNG_PWM2, SAMSUNG_PWM4);
} }
static void s5p_tv_setup(void) static void s5p_tv_setup(void)
...@@ -1152,7 +1152,7 @@ MACHINE_START(UNIVERSAL_C210, "UNIVERSAL_C210") ...@@ -1152,7 +1152,7 @@ MACHINE_START(UNIVERSAL_C210, "UNIVERSAL_C210")
.map_io = universal_map_io, .map_io = universal_map_io,
.init_machine = universal_machine_init, .init_machine = universal_machine_init,
.init_late = exynos_init_late, .init_late = exynos_init_late,
.init_time = s5p_timer_init, .init_time = samsung_timer_init,
.reserve = &universal_reserve, .reserve = &universal_reserve,
.restart = exynos4_restart, .restart = exynos4_restart,
MACHINE_END MACHINE_END
...@@ -9,16 +9,16 @@ if ARCH_S5P64X0 ...@@ -9,16 +9,16 @@ if ARCH_S5P64X0
config CPU_S5P6440 config CPU_S5P6440
bool bool
select S5P_HRT
select S5P_SLEEP if PM select S5P_SLEEP if PM
select SAMSUNG_DMADEV select SAMSUNG_DMADEV
select SAMSUNG_HRT
select SAMSUNG_WAKEMASK if PM select SAMSUNG_WAKEMASK if PM
help help
Enable S5P6440 CPU support Enable S5P6440 CPU support
config CPU_S5P6450 config CPU_S5P6450
bool bool
select S5P_HRT select SAMSUNG_HRT
select S5P_SLEEP if PM select S5P_SLEEP if PM
select SAMSUNG_DMADEV select SAMSUNG_DMADEV
select SAMSUNG_WAKEMASK if PM select SAMSUNG_WAKEMASK if PM
......
...@@ -48,7 +48,7 @@ ...@@ -48,7 +48,7 @@
#include <plat/pll.h> #include <plat/pll.h>
#include <plat/adc.h> #include <plat/adc.h>
#include <linux/platform_data/touchscreen-s3c2410.h> #include <linux/platform_data/touchscreen-s3c2410.h>
#include <plat/s5p-time.h> #include <plat/samsung-time.h>
#include <plat/backlight.h> #include <plat/backlight.h>
#include <plat/fb.h> #include <plat/fb.h>
#include <plat/sdhci.h> #include <plat/sdhci.h>
...@@ -229,7 +229,7 @@ static void __init smdk6440_map_io(void) ...@@ -229,7 +229,7 @@ static void __init smdk6440_map_io(void)
s5p64x0_init_io(NULL, 0); s5p64x0_init_io(NULL, 0);
s3c24xx_init_clocks(12000000); s3c24xx_init_clocks(12000000);
s3c24xx_init_uarts(smdk6440_uartcfgs, ARRAY_SIZE(smdk6440_uartcfgs)); s3c24xx_init_uarts(smdk6440_uartcfgs, ARRAY_SIZE(smdk6440_uartcfgs));
s5p_set_timer_source(S5P_PWM3, S5P_PWM4); samsung_set_timer_source(SAMSUNG_PWM3, SAMSUNG_PWM4);
} }
static void s5p6440_set_lcd_interface(void) static void s5p6440_set_lcd_interface(void)
...@@ -273,6 +273,6 @@ MACHINE_START(SMDK6440, "SMDK6440") ...@@ -273,6 +273,6 @@ MACHINE_START(SMDK6440, "SMDK6440")
.init_irq = s5p6440_init_irq, .init_irq = s5p6440_init_irq,
.map_io = smdk6440_map_io, .map_io = smdk6440_map_io,
.init_machine = smdk6440_machine_init, .init_machine = smdk6440_machine_init,
.init_time = s5p_timer_init, .init_time = samsung_timer_init,
.restart = s5p64x0_restart, .restart = s5p64x0_restart,
MACHINE_END MACHINE_END
...@@ -48,7 +48,7 @@ ...@@ -48,7 +48,7 @@
#include <plat/pll.h> #include <plat/pll.h>
#include <plat/adc.h> #include <plat/adc.h>
#include <linux/platform_data/touchscreen-s3c2410.h> #include <linux/platform_data/touchscreen-s3c2410.h>
#include <plat/s5p-time.h> #include <plat/samsung-time.h>
#include <plat/backlight.h> #include <plat/backlight.h>
#include <plat/fb.h> #include <plat/fb.h>
#include <plat/sdhci.h> #include <plat/sdhci.h>
...@@ -248,7 +248,7 @@ static void __init smdk6450_map_io(void) ...@@ -248,7 +248,7 @@ static void __init smdk6450_map_io(void)
s5p64x0_init_io(NULL, 0); s5p64x0_init_io(NULL, 0);
s3c24xx_init_clocks(19200000); s3c24xx_init_clocks(19200000);
s3c24xx_init_uarts(smdk6450_uartcfgs, ARRAY_SIZE(smdk6450_uartcfgs)); s3c24xx_init_uarts(smdk6450_uartcfgs, ARRAY_SIZE(smdk6450_uartcfgs));
s5p_set_timer_source(S5P_PWM3, S5P_PWM4); samsung_set_timer_source(SAMSUNG_PWM3, SAMSUNG_PWM4);
} }
static void s5p6450_set_lcd_interface(void) static void s5p6450_set_lcd_interface(void)
...@@ -292,6 +292,6 @@ MACHINE_START(SMDK6450, "SMDK6450") ...@@ -292,6 +292,6 @@ MACHINE_START(SMDK6450, "SMDK6450")
.init_irq = s5p6450_init_irq, .init_irq = s5p6450_init_irq,
.map_io = smdk6450_map_io, .map_io = smdk6450_map_io,
.init_machine = smdk6450_machine_init, .init_machine = smdk6450_machine_init,
.init_time = s5p_timer_init, .init_time = samsung_timer_init,
.restart = s5p64x0_restart, .restart = s5p64x0_restart,
MACHINE_END MACHINE_END
...@@ -12,10 +12,10 @@ if ARCH_S5PV210 ...@@ -12,10 +12,10 @@ if ARCH_S5PV210
config CPU_S5PV210 config CPU_S5PV210
bool bool
select S5P_EXT_INT select S5P_EXT_INT
select S5P_HRT
select S5P_PM if PM select S5P_PM if PM
select S5P_SLEEP if PM select S5P_SLEEP if PM
select SAMSUNG_DMADEV select SAMSUNG_DMADEV
select SAMSUNG_HRT
help help
Enable S5PV210 CPU support Enable S5PV210 CPU support
......
...@@ -38,7 +38,7 @@ ...@@ -38,7 +38,7 @@
#include <plat/fb.h> #include <plat/fb.h>
#include <plat/fimc-core.h> #include <plat/fimc-core.h>
#include <plat/sdhci.h> #include <plat/sdhci.h>
#include <plat/s5p-time.h> #include <plat/samsung-time.h>
#include "common.h" #include "common.h"
...@@ -651,7 +651,7 @@ static void __init aquila_map_io(void) ...@@ -651,7 +651,7 @@ static void __init aquila_map_io(void)
s5pv210_init_io(NULL, 0); s5pv210_init_io(NULL, 0);
s3c24xx_init_clocks(24000000); s3c24xx_init_clocks(24000000);
s3c24xx_init_uarts(aquila_uartcfgs, ARRAY_SIZE(aquila_uartcfgs)); s3c24xx_init_uarts(aquila_uartcfgs, ARRAY_SIZE(aquila_uartcfgs));
s5p_set_timer_source(S5P_PWM3, S5P_PWM4); samsung_set_timer_source(SAMSUNG_PWM3, SAMSUNG_PWM4);
} }
static void __init aquila_machine_init(void) static void __init aquila_machine_init(void)
...@@ -686,6 +686,6 @@ MACHINE_START(AQUILA, "Aquila") ...@@ -686,6 +686,6 @@ MACHINE_START(AQUILA, "Aquila")
.init_irq = s5pv210_init_irq, .init_irq = s5pv210_init_irq,
.map_io = aquila_map_io, .map_io = aquila_map_io,
.init_machine = aquila_machine_init, .init_machine = aquila_machine_init,
.init_time = s5p_timer_init, .init_time = samsung_timer_init,
.restart = s5pv210_restart, .restart = s5pv210_restart,
MACHINE_END MACHINE_END
...@@ -47,7 +47,7 @@ ...@@ -47,7 +47,7 @@
#include <plat/keypad.h> #include <plat/keypad.h>
#include <plat/sdhci.h> #include <plat/sdhci.h>
#include <plat/clock.h> #include <plat/clock.h>
#include <plat/s5p-time.h> #include <plat/samsung-time.h>
#include <plat/mfc.h> #include <plat/mfc.h>
#include <plat/camport.h> #include <plat/camport.h>
...@@ -908,7 +908,7 @@ static void __init goni_map_io(void) ...@@ -908,7 +908,7 @@ static void __init goni_map_io(void)
s5pv210_init_io(NULL, 0); s5pv210_init_io(NULL, 0);
s3c24xx_init_clocks(clk_xusbxti.rate); s3c24xx_init_clocks(clk_xusbxti.rate);
s3c24xx_init_uarts(goni_uartcfgs, ARRAY_SIZE(goni_uartcfgs)); s3c24xx_init_uarts(goni_uartcfgs, ARRAY_SIZE(goni_uartcfgs));
s5p_set_timer_source(S5P_PWM3, S5P_PWM4); samsung_set_timer_source(SAMSUNG_PWM3, SAMSUNG_PWM4);
} }
static void __init goni_reserve(void) static void __init goni_reserve(void)
...@@ -973,7 +973,7 @@ MACHINE_START(GONI, "GONI") ...@@ -973,7 +973,7 @@ MACHINE_START(GONI, "GONI")
.init_irq = s5pv210_init_irq, .init_irq = s5pv210_init_irq,
.map_io = goni_map_io, .map_io = goni_map_io,
.init_machine = goni_machine_init, .init_machine = goni_machine_init,
.init_time = s5p_timer_init, .init_time = samsung_timer_init,
.reserve = &goni_reserve, .reserve = &goni_reserve,
.restart = s5pv210_restart, .restart = s5pv210_restart,
MACHINE_END MACHINE_END
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
#include <linux/platform_data/ata-samsung_cf.h> #include <linux/platform_data/ata-samsung_cf.h>
#include <linux/platform_data/i2c-s3c2410.h> #include <linux/platform_data/i2c-s3c2410.h>
#include <plat/pm.h> #include <plat/pm.h>
#include <plat/s5p-time.h> #include <plat/samsung-time.h>
#include <plat/mfc.h> #include <plat/mfc.h>
#include "common.h" #include "common.h"
...@@ -120,7 +120,7 @@ static void __init smdkc110_map_io(void) ...@@ -120,7 +120,7 @@ static void __init smdkc110_map_io(void)
s5pv210_init_io(NULL, 0); s5pv210_init_io(NULL, 0);
s3c24xx_init_clocks(24000000); s3c24xx_init_clocks(24000000);
s3c24xx_init_uarts(smdkv210_uartcfgs, ARRAY_SIZE(smdkv210_uartcfgs)); s3c24xx_init_uarts(smdkv210_uartcfgs, ARRAY_SIZE(smdkv210_uartcfgs));
s5p_set_timer_source(S5P_PWM3, S5P_PWM4); samsung_set_timer_source(SAMSUNG_PWM3, SAMSUNG_PWM4);
} }
static void __init smdkc110_reserve(void) static void __init smdkc110_reserve(void)
...@@ -153,7 +153,7 @@ MACHINE_START(SMDKC110, "SMDKC110") ...@@ -153,7 +153,7 @@ MACHINE_START(SMDKC110, "SMDKC110")
.init_irq = s5pv210_init_irq, .init_irq = s5pv210_init_irq,
.map_io = smdkc110_map_io, .map_io = smdkc110_map_io,
.init_machine = smdkc110_machine_init, .init_machine = smdkc110_machine_init,
.init_time = s5p_timer_init, .init_time = samsung_timer_init,
.restart = s5pv210_restart, .restart = s5pv210_restart,
.reserve = &smdkc110_reserve, .reserve = &smdkc110_reserve,
MACHINE_END MACHINE_END
...@@ -44,7 +44,7 @@ ...@@ -44,7 +44,7 @@
#include <plat/keypad.h> #include <plat/keypad.h>
#include <plat/pm.h> #include <plat/pm.h>
#include <plat/fb.h> #include <plat/fb.h>
#include <plat/s5p-time.h> #include <plat/samsung-time.h>
#include <plat/backlight.h> #include <plat/backlight.h>
#include <plat/mfc.h> #include <plat/mfc.h>
#include <plat/clock.h> #include <plat/clock.h>
...@@ -285,7 +285,7 @@ static void __init smdkv210_map_io(void) ...@@ -285,7 +285,7 @@ static void __init smdkv210_map_io(void)
s5pv210_init_io(NULL, 0); s5pv210_init_io(NULL, 0);
s3c24xx_init_clocks(clk_xusbxti.rate); s3c24xx_init_clocks(clk_xusbxti.rate);
s3c24xx_init_uarts(smdkv210_uartcfgs, ARRAY_SIZE(smdkv210_uartcfgs)); s3c24xx_init_uarts(smdkv210_uartcfgs, ARRAY_SIZE(smdkv210_uartcfgs));
s5p_set_timer_source(S5P_PWM2, S5P_PWM4); samsung_set_timer_source(SAMSUNG_PWM2, SAMSUNG_PWM4);
} }
static void __init smdkv210_reserve(void) static void __init smdkv210_reserve(void)
...@@ -329,7 +329,7 @@ MACHINE_START(SMDKV210, "SMDKV210") ...@@ -329,7 +329,7 @@ MACHINE_START(SMDKV210, "SMDKV210")
.init_irq = s5pv210_init_irq, .init_irq = s5pv210_init_irq,
.map_io = smdkv210_map_io, .map_io = smdkv210_map_io,
.init_machine = smdkv210_machine_init, .init_machine = smdkv210_machine_init,
.init_time = s5p_timer_init, .init_time = samsung_timer_init,
.restart = s5pv210_restart, .restart = s5pv210_restart,
.reserve = &smdkv210_reserve, .reserve = &smdkv210_reserve,
MACHINE_END MACHINE_END
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
#include <plat/devs.h> #include <plat/devs.h>
#include <plat/cpu.h> #include <plat/cpu.h>
#include <linux/platform_data/i2c-s3c2410.h> #include <linux/platform_data/i2c-s3c2410.h>
#include <plat/s5p-time.h> #include <plat/samsung-time.h>
#include "common.h" #include "common.h"
...@@ -106,7 +106,7 @@ static void __init torbreck_map_io(void) ...@@ -106,7 +106,7 @@ static void __init torbreck_map_io(void)
s5pv210_init_io(NULL, 0); s5pv210_init_io(NULL, 0);
s3c24xx_init_clocks(24000000); s3c24xx_init_clocks(24000000);
s3c24xx_init_uarts(torbreck_uartcfgs, ARRAY_SIZE(torbreck_uartcfgs)); s3c24xx_init_uarts(torbreck_uartcfgs, ARRAY_SIZE(torbreck_uartcfgs));
s5p_set_timer_source(S5P_PWM3, S5P_PWM4); samsung_set_timer_source(SAMSUNG_PWM3, SAMSUNG_PWM4);
} }
static void __init torbreck_machine_init(void) static void __init torbreck_machine_init(void)
...@@ -130,6 +130,6 @@ MACHINE_START(TORBRECK, "TORBRECK") ...@@ -130,6 +130,6 @@ MACHINE_START(TORBRECK, "TORBRECK")
.init_irq = s5pv210_init_irq, .init_irq = s5pv210_init_irq,
.map_io = torbreck_map_io, .map_io = torbreck_map_io,
.init_machine = torbreck_machine_init, .init_machine = torbreck_machine_init,
.init_time = s5p_timer_init, .init_time = samsung_timer_init,
.restart = s5pv210_restart, .restart = s5pv210_restart,
MACHINE_END MACHINE_END
...@@ -70,7 +70,7 @@ config S3C_LOWLEVEL_UART_PORT ...@@ -70,7 +70,7 @@ config S3C_LOWLEVEL_UART_PORT
# timer options # timer options
config S5P_HRT config SAMSUNG_HRT
bool bool
select SAMSUNG_DEV_PWM select SAMSUNG_DEV_PWM
help help
......
...@@ -13,7 +13,7 @@ obj- := ...@@ -13,7 +13,7 @@ obj- :=
obj-y += init.o cpu.o obj-y += init.o cpu.o
obj-$(CONFIG_ARCH_USES_GETTIMEOFFSET) += time.o obj-$(CONFIG_ARCH_USES_GETTIMEOFFSET) += time.o
obj-$(CONFIG_S5P_HRT) += s5p-time.o obj-$(CONFIG_SAMSUNG_HRT) += samsung-time.o
obj-$(CONFIG_SAMSUNG_CLOCK) += clock.o obj-$(CONFIG_SAMSUNG_CLOCK) += clock.o
obj-$(CONFIG_SAMSUNG_CLOCK) += pwm-clock.o obj-$(CONFIG_SAMSUNG_CLOCK) += pwm-clock.o
......
/* linux/arch/arm/plat-samsung/include/plat/s5p-time.h /* linux/arch/arm/plat-samsung/include/plat/samsung-time.h
* *
* Copyright 2011 Samsung Electronics Co., Ltd. * Copyright 2011 Samsung Electronics Co., Ltd.
* http://www.samsung.com/ * http://www.samsung.com/
* *
* Header file for s5p time support * Header file for samsung s3c and s5p time support
* *
* This program is free software; you can redistribute it and/or modify * This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as * it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation. * published by the Free Software Foundation.
*/ */
#ifndef __ASM_PLAT_S5P_TIME_H #ifndef __ASM_PLAT_SAMSUNG_TIME_H
#define __ASM_PLAT_S5P_TIME_H __FILE__ #define __ASM_PLAT_SAMSUNG_TIME_H __FILE__
/* S5P HR-Timer Clock mode */ /* SAMSUNG HR-Timer Clock mode */
enum s5p_timer_mode { enum samsung_timer_mode {
S5P_PWM0, SAMSUNG_PWM0,
S5P_PWM1, SAMSUNG_PWM1,
S5P_PWM2, SAMSUNG_PWM2,
S5P_PWM3, SAMSUNG_PWM3,
S5P_PWM4, SAMSUNG_PWM4,
}; };
struct s5p_timer_source { struct samsung_timer_source {
unsigned int event_id; unsigned int event_id;
unsigned int source_id; unsigned int source_id;
}; };
/* Be able to sleep for atleast 4 seconds (usually more) */ /* Be able to sleep for atleast 4 seconds (usually more) */
#define S5PTIMER_MIN_RANGE 4 #define SAMSUNG_TIMER_MIN_RANGE 4
#define TCNT_MAX 0xffffffff #define TCNT_MAX 0xffffffff
#define NON_PERIODIC 0 #define NON_PERIODIC 0
#define PERIODIC 1 #define PERIODIC 1
extern void __init s5p_set_timer_source(enum s5p_timer_mode event, extern void __init samsung_set_timer_source(enum samsung_timer_mode event,
enum s5p_timer_mode source); enum samsung_timer_mode source);
extern void s5p_timer_init(void);
#endif /* __ASM_PLAT_S5P_TIME_H */ extern void __init samsung_timer_init(void);
#endif /* __ASM_PLAT_SAMSUNG_TIME_H */
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* Copyright (c) 2011 Samsung Electronics Co., Ltd. * Copyright (c) 2011 Samsung Electronics Co., Ltd.
* http://www.samsung.com/ * http://www.samsung.com/
* *
* S5P - Common hr-timer support * SAMSUNG - Common hr-timer support
* *
* This program is free software; you can redistribute it and/or modify * This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as * it under the terms of the GNU General Public License version 2 as
...@@ -25,41 +25,41 @@ ...@@ -25,41 +25,41 @@
#include <mach/map.h> #include <mach/map.h>
#include <plat/devs.h> #include <plat/devs.h>
#include <plat/regs-timer.h> #include <plat/regs-timer.h>
#include <plat/s5p-time.h> #include <plat/samsung-time.h>
static struct clk *tin_event; static struct clk *tin_event;
static struct clk *tin_source; static struct clk *tin_source;
static struct clk *tdiv_event; static struct clk *tdiv_event;
static struct clk *tdiv_source; static struct clk *tdiv_source;
static struct clk *timerclk; static struct clk *timerclk;
static struct s5p_timer_source timer_source; static struct samsung_timer_source timer_source;
static unsigned long clock_count_per_tick; static unsigned long clock_count_per_tick;
static void s5p_timer_resume(void); static void samsung_timer_resume(void);
static void s5p_time_stop(enum s5p_timer_mode mode) static void samsung_time_stop(enum samsung_timer_mode mode)
{ {
unsigned long tcon; unsigned long tcon;
tcon = __raw_readl(S3C2410_TCON); tcon = __raw_readl(S3C2410_TCON);
switch (mode) { switch (mode) {
case S5P_PWM0: case SAMSUNG_PWM0:
tcon &= ~S3C2410_TCON_T0START; tcon &= ~S3C2410_TCON_T0START;
break; break;
case S5P_PWM1: case SAMSUNG_PWM1:
tcon &= ~S3C2410_TCON_T1START; tcon &= ~S3C2410_TCON_T1START;
break; break;
case S5P_PWM2: case SAMSUNG_PWM2:
tcon &= ~S3C2410_TCON_T2START; tcon &= ~S3C2410_TCON_T2START;
break; break;
case S5P_PWM3: case SAMSUNG_PWM3:
tcon &= ~S3C2410_TCON_T3START; tcon &= ~S3C2410_TCON_T3START;
break; break;
case S5P_PWM4: case SAMSUNG_PWM4:
tcon &= ~S3C2410_TCON_T4START; tcon &= ~S3C2410_TCON_T4START;
break; break;
...@@ -70,7 +70,7 @@ static void s5p_time_stop(enum s5p_timer_mode mode) ...@@ -70,7 +70,7 @@ static void s5p_time_stop(enum s5p_timer_mode mode)
__raw_writel(tcon, S3C2410_TCON); __raw_writel(tcon, S3C2410_TCON);
} }
static void s5p_time_setup(enum s5p_timer_mode mode, unsigned long tcnt) static void samsung_time_setup(enum samsung_timer_mode mode, unsigned long tcnt)
{ {
unsigned long tcon; unsigned long tcon;
...@@ -79,27 +79,27 @@ static void s5p_time_setup(enum s5p_timer_mode mode, unsigned long tcnt) ...@@ -79,27 +79,27 @@ static void s5p_time_setup(enum s5p_timer_mode mode, unsigned long tcnt)
tcnt--; tcnt--;
switch (mode) { switch (mode) {
case S5P_PWM0: case SAMSUNG_PWM0:
tcon &= ~(0x0f << 0); tcon &= ~(0x0f << 0);
tcon |= S3C2410_TCON_T0MANUALUPD; tcon |= S3C2410_TCON_T0MANUALUPD;
break; break;
case S5P_PWM1: case SAMSUNG_PWM1:
tcon &= ~(0x0f << 8); tcon &= ~(0x0f << 8);
tcon |= S3C2410_TCON_T1MANUALUPD; tcon |= S3C2410_TCON_T1MANUALUPD;
break; break;
case S5P_PWM2: case SAMSUNG_PWM2:
tcon &= ~(0x0f << 12); tcon &= ~(0x0f << 12);
tcon |= S3C2410_TCON_T2MANUALUPD; tcon |= S3C2410_TCON_T2MANUALUPD;
break; break;
case S5P_PWM3: case SAMSUNG_PWM3:
tcon &= ~(0x0f << 16); tcon &= ~(0x0f << 16);
tcon |= S3C2410_TCON_T3MANUALUPD; tcon |= S3C2410_TCON_T3MANUALUPD;
break; break;
case S5P_PWM4: case SAMSUNG_PWM4:
tcon &= ~(0x07 << 20); tcon &= ~(0x07 << 20);
tcon |= S3C2410_TCON_T4MANUALUPD; tcon |= S3C2410_TCON_T4MANUALUPD;
break; break;
...@@ -114,14 +114,14 @@ static void s5p_time_setup(enum s5p_timer_mode mode, unsigned long tcnt) ...@@ -114,14 +114,14 @@ static void s5p_time_setup(enum s5p_timer_mode mode, unsigned long tcnt)
__raw_writel(tcon, S3C2410_TCON); __raw_writel(tcon, S3C2410_TCON);
} }
static void s5p_time_start(enum s5p_timer_mode mode, bool periodic) static void samsung_time_start(enum samsung_timer_mode mode, bool periodic)
{ {
unsigned long tcon; unsigned long tcon;
tcon = __raw_readl(S3C2410_TCON); tcon = __raw_readl(S3C2410_TCON);
switch (mode) { switch (mode) {
case S5P_PWM0: case SAMSUNG_PWM0:
tcon |= S3C2410_TCON_T0START; tcon |= S3C2410_TCON_T0START;
tcon &= ~S3C2410_TCON_T0MANUALUPD; tcon &= ~S3C2410_TCON_T0MANUALUPD;
...@@ -131,7 +131,7 @@ static void s5p_time_start(enum s5p_timer_mode mode, bool periodic) ...@@ -131,7 +131,7 @@ static void s5p_time_start(enum s5p_timer_mode mode, bool periodic)
tcon &= ~S3C2410_TCON_T0RELOAD; tcon &= ~S3C2410_TCON_T0RELOAD;
break; break;
case S5P_PWM1: case SAMSUNG_PWM1:
tcon |= S3C2410_TCON_T1START; tcon |= S3C2410_TCON_T1START;
tcon &= ~S3C2410_TCON_T1MANUALUPD; tcon &= ~S3C2410_TCON_T1MANUALUPD;
...@@ -141,7 +141,7 @@ static void s5p_time_start(enum s5p_timer_mode mode, bool periodic) ...@@ -141,7 +141,7 @@ static void s5p_time_start(enum s5p_timer_mode mode, bool periodic)
tcon &= ~S3C2410_TCON_T1RELOAD; tcon &= ~S3C2410_TCON_T1RELOAD;
break; break;
case S5P_PWM2: case SAMSUNG_PWM2:
tcon |= S3C2410_TCON_T2START; tcon |= S3C2410_TCON_T2START;
tcon &= ~S3C2410_TCON_T2MANUALUPD; tcon &= ~S3C2410_TCON_T2MANUALUPD;
...@@ -151,7 +151,7 @@ static void s5p_time_start(enum s5p_timer_mode mode, bool periodic) ...@@ -151,7 +151,7 @@ static void s5p_time_start(enum s5p_timer_mode mode, bool periodic)
tcon &= ~S3C2410_TCON_T2RELOAD; tcon &= ~S3C2410_TCON_T2RELOAD;
break; break;
case S5P_PWM3: case SAMSUNG_PWM3:
tcon |= S3C2410_TCON_T3START; tcon |= S3C2410_TCON_T3START;
tcon &= ~S3C2410_TCON_T3MANUALUPD; tcon &= ~S3C2410_TCON_T3MANUALUPD;
...@@ -161,7 +161,7 @@ static void s5p_time_start(enum s5p_timer_mode mode, bool periodic) ...@@ -161,7 +161,7 @@ static void s5p_time_start(enum s5p_timer_mode mode, bool periodic)
tcon &= ~S3C2410_TCON_T3RELOAD; tcon &= ~S3C2410_TCON_T3RELOAD;
break; break;
case S5P_PWM4: case SAMSUNG_PWM4:
tcon |= S3C2410_TCON_T4START; tcon |= S3C2410_TCON_T4START;
tcon &= ~S3C2410_TCON_T4MANUALUPD; tcon &= ~S3C2410_TCON_T4MANUALUPD;
...@@ -178,24 +178,24 @@ static void s5p_time_start(enum s5p_timer_mode mode, bool periodic) ...@@ -178,24 +178,24 @@ static void s5p_time_start(enum s5p_timer_mode mode, bool periodic)
__raw_writel(tcon, S3C2410_TCON); __raw_writel(tcon, S3C2410_TCON);
} }
static int s5p_set_next_event(unsigned long cycles, static int samsung_set_next_event(unsigned long cycles,
struct clock_event_device *evt) struct clock_event_device *evt)
{ {
s5p_time_setup(timer_source.event_id, cycles); samsung_time_setup(timer_source.event_id, cycles);
s5p_time_start(timer_source.event_id, NON_PERIODIC); samsung_time_start(timer_source.event_id, NON_PERIODIC);
return 0; return 0;
} }
static void s5p_set_mode(enum clock_event_mode mode, static void samsung_set_mode(enum clock_event_mode mode,
struct clock_event_device *evt) struct clock_event_device *evt)
{ {
s5p_time_stop(timer_source.event_id); samsung_time_stop(timer_source.event_id);
switch (mode) { switch (mode) {
case CLOCK_EVT_MODE_PERIODIC: case CLOCK_EVT_MODE_PERIODIC:
s5p_time_setup(timer_source.event_id, clock_count_per_tick); samsung_time_setup(timer_source.event_id, clock_count_per_tick);
s5p_time_start(timer_source.event_id, PERIODIC); samsung_time_start(timer_source.event_id, PERIODIC);
break; break;
case CLOCK_EVT_MODE_ONESHOT: case CLOCK_EVT_MODE_ONESHOT:
...@@ -206,24 +206,24 @@ static void s5p_set_mode(enum clock_event_mode mode, ...@@ -206,24 +206,24 @@ static void s5p_set_mode(enum clock_event_mode mode,
break; break;
case CLOCK_EVT_MODE_RESUME: case CLOCK_EVT_MODE_RESUME:
s5p_timer_resume(); samsung_timer_resume();
break; break;
} }
} }
static void s5p_timer_resume(void) static void samsung_timer_resume(void)
{ {
/* event timer restart */ /* event timer restart */
s5p_time_setup(timer_source.event_id, clock_count_per_tick); samsung_time_setup(timer_source.event_id, clock_count_per_tick);
s5p_time_start(timer_source.event_id, PERIODIC); samsung_time_start(timer_source.event_id, PERIODIC);
/* source timer restart */ /* source timer restart */
s5p_time_setup(timer_source.source_id, TCNT_MAX); samsung_time_setup(timer_source.source_id, TCNT_MAX);
s5p_time_start(timer_source.source_id, PERIODIC); samsung_time_start(timer_source.source_id, PERIODIC);
} }
void __init s5p_set_timer_source(enum s5p_timer_mode event, void __init samsung_set_timer_source(enum samsung_timer_mode event,
enum s5p_timer_mode source) enum samsung_timer_mode source)
{ {
s3c_device_timer[event].dev.bus = &platform_bus_type; s3c_device_timer[event].dev.bus = &platform_bus_type;
s3c_device_timer[source].dev.bus = &platform_bus_type; s3c_device_timer[source].dev.bus = &platform_bus_type;
...@@ -233,14 +233,14 @@ void __init s5p_set_timer_source(enum s5p_timer_mode event, ...@@ -233,14 +233,14 @@ void __init s5p_set_timer_source(enum s5p_timer_mode event,
} }
static struct clock_event_device time_event_device = { static struct clock_event_device time_event_device = {
.name = "s5p_event_timer", .name = "samsung_event_timer",
.features = CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT, .features = CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT,
.rating = 200, .rating = 200,
.set_next_event = s5p_set_next_event, .set_next_event = samsung_set_next_event,
.set_mode = s5p_set_mode, .set_mode = samsung_set_mode,
}; };
static irqreturn_t s5p_clock_event_isr(int irq, void *dev_id) static irqreturn_t samsung_clock_event_isr(int irq, void *dev_id)
{ {
struct clock_event_device *evt = dev_id; struct clock_event_device *evt = dev_id;
...@@ -249,14 +249,14 @@ static irqreturn_t s5p_clock_event_isr(int irq, void *dev_id) ...@@ -249,14 +249,14 @@ static irqreturn_t s5p_clock_event_isr(int irq, void *dev_id)
return IRQ_HANDLED; return IRQ_HANDLED;
} }
static struct irqaction s5p_clock_event_irq = { static struct irqaction samsung_clock_event_irq = {
.name = "s5p_time_irq", .name = "samsung_time_irq",
.flags = IRQF_DISABLED | IRQF_TIMER | IRQF_IRQPOLL, .flags = IRQF_DISABLED | IRQF_TIMER | IRQF_IRQPOLL,
.handler = s5p_clock_event_isr, .handler = samsung_clock_event_isr,
.dev_id = &time_event_device, .dev_id = &time_event_device,
}; };
static void __init s5p_clockevent_init(void) static void __init samsung_clockevent_init(void)
{ {
unsigned long pclk; unsigned long pclk;
unsigned long clock_rate; unsigned long clock_rate;
...@@ -278,22 +278,22 @@ static void __init s5p_clockevent_init(void) ...@@ -278,22 +278,22 @@ static void __init s5p_clockevent_init(void)
clockevents_config_and_register(&time_event_device, clock_rate, 1, -1); clockevents_config_and_register(&time_event_device, clock_rate, 1, -1);
irq_number = timer_source.event_id + IRQ_TIMER0; irq_number = timer_source.event_id + IRQ_TIMER0;
setup_irq(irq_number, &s5p_clock_event_irq); setup_irq(irq_number, &samsung_clock_event_irq);
} }
static void __iomem *s5p_timer_reg(void) static void __iomem *samsung_timer_reg(void)
{ {
unsigned long offset = 0; unsigned long offset = 0;
switch (timer_source.source_id) { switch (timer_source.source_id) {
case S5P_PWM0: case SAMSUNG_PWM0:
case S5P_PWM1: case SAMSUNG_PWM1:
case S5P_PWM2: case SAMSUNG_PWM2:
case S5P_PWM3: case SAMSUNG_PWM3:
offset = (timer_source.source_id * 0x0c) + 0x14; offset = (timer_source.source_id * 0x0c) + 0x14;
break; break;
case S5P_PWM4: case SAMSUNG_PWM4:
offset = 0x40; offset = 0x40;
break; break;
...@@ -312,9 +312,9 @@ static void __iomem *s5p_timer_reg(void) ...@@ -312,9 +312,9 @@ static void __iomem *s5p_timer_reg(void)
* this wraps around for now, since it is just a relative time * this wraps around for now, since it is just a relative time
* stamp. (Inspired by U300 implementation.) * stamp. (Inspired by U300 implementation.)
*/ */
static u32 notrace s5p_read_sched_clock(void) static u32 notrace samsung_read_sched_clock(void)
{ {
void __iomem *reg = s5p_timer_reg(); void __iomem *reg = samsung_timer_reg();
if (!reg) if (!reg)
return 0; return 0;
...@@ -322,7 +322,7 @@ static u32 notrace s5p_read_sched_clock(void) ...@@ -322,7 +322,7 @@ static u32 notrace s5p_read_sched_clock(void)
return ~__raw_readl(reg); return ~__raw_readl(reg);
} }
static void __init s5p_clocksource_init(void) static void __init samsung_clocksource_init(void)
{ {
unsigned long pclk; unsigned long pclk;
unsigned long clock_rate; unsigned long clock_rate;
...@@ -334,17 +334,17 @@ static void __init s5p_clocksource_init(void) ...@@ -334,17 +334,17 @@ static void __init s5p_clocksource_init(void)
clock_rate = clk_get_rate(tin_source); clock_rate = clk_get_rate(tin_source);
s5p_time_setup(timer_source.source_id, TCNT_MAX); samsung_time_setup(timer_source.source_id, TCNT_MAX);
s5p_time_start(timer_source.source_id, PERIODIC); samsung_time_start(timer_source.source_id, PERIODIC);
setup_sched_clock(s5p_read_sched_clock, 32, clock_rate); setup_sched_clock(samsung_read_sched_clock, 32, clock_rate);
if (clocksource_mmio_init(s5p_timer_reg(), "s5p_clocksource_timer", if (clocksource_mmio_init(samsung_timer_reg(), "samsung_clocksource_timer",
clock_rate, 250, 32, clocksource_mmio_readl_down)) clock_rate, 250, 32, clocksource_mmio_readl_down))
panic("s5p_clocksource_timer: can't register clocksource\n"); panic("samsung_clocksource_timer: can't register clocksource\n");
} }
static void __init s5p_timer_resources(void) static void __init samsung_timer_resources(void)
{ {
unsigned long event_id = timer_source.event_id; unsigned long event_id = timer_source.event_id;
...@@ -386,9 +386,9 @@ static void __init s5p_timer_resources(void) ...@@ -386,9 +386,9 @@ static void __init s5p_timer_resources(void)
clk_enable(tin_source); clk_enable(tin_source);
} }
void __init s5p_timer_init(void) void __init samsung_timer_init(void)
{ {
s5p_timer_resources(); samsung_timer_resources();
s5p_clockevent_init(); samsung_clockevent_init();
s5p_clocksource_init(); samsung_clocksource_init();
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment