blob: 9eb3b3cd5a63501f18297676fc8c32dbdca21b57 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/*
2 * linux/arch/arm/mach-sa1100/generic.h
3 *
4 * Author: Nicolas Pitre
5 */
6
7struct sys_timer;
8
9extern struct sys_timer sa1100_timer;
10extern void __init sa1100_map_io(void);
11extern void __init sa1100_init_irq(void);
Dmitry Baryshkov45528e32008-04-10 13:31:47 +010012extern void __init sa1100_init_gpio(void);
Russell Kingd9ca5832011-11-05 10:28:50 +000013extern void sa11x0_restart(char, const char *);
Linus Torvalds1da177e2005-04-16 15:20:36 -070014
15#define SET_BANK(__nr,__start,__size) \
16 mi->bank[__nr].start = (__start), \
Russell Kingbe370302010-05-07 17:40:33 +010017 mi->bank[__nr].size = (__size)
Linus Torvalds1da177e2005-04-16 15:20:36 -070018
Linus Torvalds1da177e2005-04-16 15:20:36 -070019extern void sa1110_mb_enable(void);
20extern void sa1110_mb_disable(void);
21
22struct cpufreq_policy;
23
24extern unsigned int sa11x0_freq_to_ppcr(unsigned int khz);
25extern int sa11x0_verify_speed(struct cpufreq_policy *policy);
26extern unsigned int sa11x0_getspeed(unsigned int cpu);
27extern unsigned int sa11x0_ppcr_to_freq(unsigned int idx);
28
29struct flash_platform_data;
30struct resource;
31
Russell King7a5b4e12009-10-06 14:55:53 +010032void sa11x0_register_mtd(struct flash_platform_data *flash,
33 struct resource *res, int nr);
Russell King323cdfc2005-08-18 10:10:46 +010034
Linus Torvalds1da177e2005-04-16 15:20:36 -070035struct irda_platform_data;
Russell King7a5b4e12009-10-06 14:55:53 +010036void sa11x0_register_irda(struct irda_platform_data *irda);
Russell King118ec0b2005-09-18 22:16:41 +010037
38struct mcp_plat_data;
Russell Kinge36e26a2012-01-20 22:24:07 +000039void sa11x0_ppc_configure_mcp(void);
Russell King7a5b4e12009-10-06 14:55:53 +010040void sa11x0_register_mcp(struct mcp_plat_data *data);
Russell Kinge1b7a722012-01-14 11:50:04 +000041
42struct sa1100fb_mach_info;
43void sa11x0_register_lcd(struct sa1100fb_mach_info *inf);