2013-01-22 00:25:59 +07:00
|
|
|
/*
|
|
|
|
* 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.
|
|
|
|
*
|
|
|
|
* Copyright (C) 2013 John Crispin <blogic@openwrt.org>
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef _RALINK_COMMON_H__
|
|
|
|
#define _RALINK_COMMON_H__
|
|
|
|
|
|
|
|
#define RAMIPS_SYS_TYPE_LEN 32
|
|
|
|
|
|
|
|
struct ralink_pinmux_grp {
|
|
|
|
const char *name;
|
|
|
|
u32 mask;
|
|
|
|
int gpio_first;
|
|
|
|
int gpio_last;
|
|
|
|
};
|
|
|
|
|
|
|
|
struct ralink_pinmux {
|
|
|
|
struct ralink_pinmux_grp *mode;
|
|
|
|
struct ralink_pinmux_grp *uart;
|
|
|
|
int uart_shift;
|
2013-04-12 17:45:27 +07:00
|
|
|
u32 uart_mask;
|
2013-01-22 00:25:59 +07:00
|
|
|
void (*wdt_reset)(void);
|
2013-04-12 17:40:23 +07:00
|
|
|
struct ralink_pinmux_grp *pci;
|
|
|
|
int pci_shift;
|
|
|
|
u32 pci_mask;
|
2013-01-22 00:25:59 +07:00
|
|
|
};
|
2013-04-13 03:12:09 +07:00
|
|
|
extern struct ralink_pinmux rt_gpio_pinmux;
|
2013-01-22 00:25:59 +07:00
|
|
|
|
|
|
|
struct ralink_soc_info {
|
|
|
|
unsigned char sys_type[RAMIPS_SYS_TYPE_LEN];
|
|
|
|
unsigned char *compatible;
|
2013-04-13 20:10:14 +07:00
|
|
|
|
|
|
|
unsigned long mem_base;
|
|
|
|
unsigned long mem_size;
|
|
|
|
unsigned long mem_size_min;
|
|
|
|
unsigned long mem_size_max;
|
2013-01-22 00:25:59 +07:00
|
|
|
};
|
|
|
|
extern struct ralink_soc_info soc_info;
|
|
|
|
|
|
|
|
extern void ralink_of_remap(void);
|
|
|
|
|
|
|
|
extern void ralink_clk_init(void);
|
|
|
|
extern void ralink_clk_add(const char *dev, unsigned long rate);
|
|
|
|
|
2013-09-04 05:16:59 +07:00
|
|
|
extern void ralink_rst_init(void);
|
|
|
|
|
2013-01-22 00:25:59 +07:00
|
|
|
extern void prom_soc_init(struct ralink_soc_info *soc_info);
|
|
|
|
|
|
|
|
__iomem void *plat_of_remap_node(const char *node);
|
|
|
|
|
|
|
|
#endif /* _RALINK_COMMON_H__ */
|