Linux 3.15-rc1
[linux/fpc-iii.git] / arch / mips / ralink / common.h
blob42dfd6100a2decde80ae81c6b88d81e316c40dff
1 /*
2 * This program is free software; you can redistribute it and/or modify it
3 * under the terms of the GNU General Public License version 2 as published
4 * by the Free Software Foundation.
6 * Copyright (C) 2013 John Crispin <blogic@openwrt.org>
7 */
9 #ifndef _RALINK_COMMON_H__
10 #define _RALINK_COMMON_H__
12 #define RAMIPS_SYS_TYPE_LEN 32
14 struct ralink_pinmux_grp {
15 const char *name;
16 u32 mask;
17 int gpio_first;
18 int gpio_last;
21 struct ralink_pinmux {
22 struct ralink_pinmux_grp *mode;
23 struct ralink_pinmux_grp *uart;
24 int uart_shift;
25 u32 uart_mask;
26 void (*wdt_reset)(void);
27 struct ralink_pinmux_grp *pci;
28 int pci_shift;
29 u32 pci_mask;
31 extern struct ralink_pinmux rt_gpio_pinmux;
33 struct ralink_soc_info {
34 unsigned char sys_type[RAMIPS_SYS_TYPE_LEN];
35 unsigned char *compatible;
37 unsigned long mem_base;
38 unsigned long mem_size;
39 unsigned long mem_size_min;
40 unsigned long mem_size_max;
42 extern struct ralink_soc_info soc_info;
44 extern void ralink_of_remap(void);
46 extern void ralink_clk_init(void);
47 extern void ralink_clk_add(const char *dev, unsigned long rate);
49 extern void ralink_rst_init(void);
51 extern void prom_soc_init(struct ralink_soc_info *soc_info);
53 __iomem void *plat_of_remap_node(const char *node);
55 #endif /* _RALINK_COMMON_H__ */