xref: /openbmc/linux/arch/arm/mach-ep93xx/platform.h (revision 7d545e77)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * arch/arm/mach-ep93xx/include/mach/platform.h
4  */
5 
6 #ifndef __ASSEMBLY__
7 
8 #include <linux/platform_data/eth-ep93xx.h>
9 #include <linux/reboot.h>
10 
11 struct device;
12 struct i2c_board_info;
13 struct spi_board_info;
14 struct platform_device;
15 struct ep93xxfb_mach_info;
16 struct ep93xx_keypad_platform_data;
17 struct ep93xx_spi_info;
18 
19 void ep93xx_map_io(void);
20 void ep93xx_init_irq(void);
21 
22 void ep93xx_register_flash(unsigned int width,
23 			   resource_size_t start, resource_size_t size);
24 
25 void ep93xx_register_eth(struct ep93xx_eth_data *data, int copy_addr);
26 void ep93xx_register_i2c(struct i2c_board_info *devices, int num);
27 void ep93xx_register_spi(struct ep93xx_spi_info *info,
28 			 struct spi_board_info *devices, int num);
29 void ep93xx_register_fb(struct ep93xxfb_mach_info *data);
30 void ep93xx_register_pwm(int pwm0, int pwm1);
31 void ep93xx_register_keypad(struct ep93xx_keypad_platform_data *data);
32 void ep93xx_register_i2s(void);
33 void ep93xx_register_ac97(void);
34 void ep93xx_register_ide(void);
35 void ep93xx_register_adc(void);
36 
37 struct device *ep93xx_init_devices(void);
38 extern void ep93xx_timer_init(void);
39 
40 void ep93xx_restart(enum reboot_mode, const char *);
41 void ep93xx_init_late(void);
42 
43 #ifdef CONFIG_CRUNCH
44 int crunch_init(void);
45 #else
46 static inline int crunch_init(void) { return 0; }
47 #endif
48 
49 #endif
50