aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/plat-s5p/include/plat
diff options
context:
space:
mode:
authorSangbeom Kim <sbkim73@samsung.com>2011-03-12 08:02:07 +0900
committerKukjin Kim <kgene.kim@samsung.com>2011-03-12 08:02:07 +0900
commitf8bfff8e4c3c3d447fe12e3c0e3a36f3bdd891b5 (patch)
treee870c10825866a3d2527a757f7697fa0cf4166d9 /arch/arm/plat-s5p/include/plat
parentARM: S5P: Add support for common MIPI CSIS/DSIM D-PHY control (diff)
downloadlinux-dev-f8bfff8e4c3c3d447fe12e3c0e3a36f3bdd891b5.tar.xz
linux-dev-f8bfff8e4c3c3d447fe12e3c0e3a36f3bdd891b5.zip
ARM: S5P: HRT support
This patch adds support HR-Timer(High Resolution Timer) and dynamic tick system for S5P SoCs. There are many clock sources for HR-Timer on S5P SoCs. The PWM timer, RTC, System Timer, and MCT can be used for clock source. This patch can only support PWM timer for clock source of S5P64X0 and S5PV210. Signed-off-by: Sangbeom Kim <sbkim73@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch/arm/plat-s5p/include/plat')
-rw-r--r--arch/arm/plat-s5p/include/plat/s5p-time.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/arch/arm/plat-s5p/include/plat/s5p-time.h b/arch/arm/plat-s5p/include/plat/s5p-time.h
new file mode 100644
index 000000000000..575e88109db8
--- /dev/null
+++ b/arch/arm/plat-s5p/include/plat/s5p-time.h
@@ -0,0 +1,40 @@
+/* linux/arch/arm/plat-s5p/include/plat/s5p-time.h
+ *
+ * Copyright 2011 Samsung Electronics Co., Ltd.
+ * http://www.samsung.com/
+ *
+ * Header file for s5p time support
+ *
+ * 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
+ * published by the Free Software Foundation.
+*/
+
+#ifndef __ASM_PLAT_S5P_TIME_H
+#define __ASM_PLAT_S5P_TIME_H __FILE__
+
+/* S5P HR-Timer Clock mode */
+enum s5p_timer_mode {
+ S5P_PWM0,
+ S5P_PWM1,
+ S5P_PWM2,
+ S5P_PWM3,
+ S5P_PWM4,
+};
+
+struct s5p_timer_source {
+ unsigned int event_id;
+ unsigned int source_id;
+};
+
+/* Be able to sleep for atleast 4 seconds (usually more) */
+#define S5PTIMER_MIN_RANGE 4
+
+#define TCNT_MAX 0xffffffff
+#define NON_PERIODIC 0
+#define PERIODIC 1
+
+extern void __init s5p_set_timer_source(enum s5p_timer_mode event,
+ enum s5p_timer_mode source);
+extern struct sys_timer s5p_timer;
+#endif /* __ASM_PLAT_S5P_TIME_H */