aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorFlorian Fainelli <florian.fainelli@telecomint.eu>2008-01-30 07:33:36 -0500
committerIngo Molnar <mingo@elte.hu>2008-01-30 07:33:36 -0500
commit5e3a77e9a9b7bfc1f69f51fe6d34aa649887980c (patch)
tree2ec08958a77752beb57ee8e823a4baac509be8dd /include
parent0acf8e3447b893ff921863c2a4258e210d584452 (diff)
x86: add support for the RDC R-321x SoC
This patch adds support for the RDC R-321x system-on-chip, also known as R-861x-(G). It uses the generic GPIO API and has support for the on-chip hardware watchdog. Build-fix from: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Florian Fainelli <florian.fainelli@telecomint.eu> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include')
-rw-r--r--include/asm-x86/mach-rdc321x/gpio.h56
-rw-r--r--include/asm-x86/mach-rdc321x/rdc321x_defs.h6
-rw-r--r--include/asm-x86/timex.h2
3 files changed, 64 insertions, 0 deletions
diff --git a/include/asm-x86/mach-rdc321x/gpio.h b/include/asm-x86/mach-rdc321x/gpio.h
new file mode 100644
index 000000000000..db31b929b990
--- /dev/null
+++ b/include/asm-x86/mach-rdc321x/gpio.h
@@ -0,0 +1,56 @@
1#ifndef _RDC321X_GPIO_H
2#define _RDC321X_GPIO_H
3
4extern int rdc_gpio_get_value(unsigned gpio);
5extern void rdc_gpio_set_value(unsigned gpio, int value);
6extern int rdc_gpio_direction_input(unsigned gpio);
7extern int rdc_gpio_direction_output(unsigned gpio, int value);
8
9
10/* Wrappers for the arch-neutral GPIO API */
11
12static inline int gpio_request(unsigned gpio, const char *label)
13{
14 /* Not yet implemented */
15 return 0;
16}
17
18static inline void gpio_free(unsigned gpio)
19{
20 /* Not yet implemented */
21}
22
23static inline int gpio_direction_input(unsigned gpio)
24{
25 return rdc_gpio_direction_input(gpio);
26}
27
28static inline int gpio_direction_output(unsigned gpio, int value)
29{
30 return rdc_gpio_direction_output(gpio, value);
31}
32
33static inline int gpio_get_value(unsigned gpio)
34{
35 return rdc_gpio_get_value(gpio);
36}
37
38static inline void gpio_set_value(unsigned gpio, int value)
39{
40 rdc_gpio_set_value(gpio, value);
41}
42
43static inline int gpio_to_irq(unsigned gpio)
44{
45 return gpio;
46}
47
48static inline int irq_to_gpio(unsigned irq)
49{
50 return irq;
51}
52
53/* For cansleep */
54#include <asm-generic/gpio.h>
55
56#endif /* _RDC321X_GPIO_H_ */
diff --git a/include/asm-x86/mach-rdc321x/rdc321x_defs.h b/include/asm-x86/mach-rdc321x/rdc321x_defs.h
new file mode 100644
index 000000000000..838ba8f64fd3
--- /dev/null
+++ b/include/asm-x86/mach-rdc321x/rdc321x_defs.h
@@ -0,0 +1,6 @@
1#define PFX "rdc321x: "
2
3/* General purpose configuration and data registers */
4#define RDC3210_CFGREG_ADDR 0x0CF8
5#define RDC3210_CFGREG_DATA 0x0CFC
6#define RDC_MAX_GPIO 0x3A
diff --git a/include/asm-x86/timex.h b/include/asm-x86/timex.h
index 39a21ab030f0..27cfd6c599ba 100644
--- a/include/asm-x86/timex.h
+++ b/include/asm-x86/timex.h
@@ -7,6 +7,8 @@
7 7
8#ifdef CONFIG_X86_ELAN 8#ifdef CONFIG_X86_ELAN
9# define PIT_TICK_RATE 1189200 /* AMD Elan has different frequency! */ 9# define PIT_TICK_RATE 1189200 /* AMD Elan has different frequency! */
10#elif defined(CONFIG_X86_RDC321X)
11# define PIT_TICK_RATE 1041667 /* Underlying HZ for R8610 */
10#else 12#else
11# define PIT_TICK_RATE 1193182 /* Underlying HZ */ 13# define PIT_TICK_RATE 1193182 /* Underlying HZ */
12#endif 14#endif