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/reboot.h> 9 10 struct device; 11 struct i2c_gpio_platform_data; 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 struct ep93xx_eth_data 20 { 21 unsigned char dev_addr[6]; 22 unsigned char phy_id; 23 }; 24 25 void ep93xx_map_io(void); 26 void ep93xx_init_irq(void); 27 28 #define EP93XX_CHIP_REV_D0 3 29 #define EP93XX_CHIP_REV_D1 4 30 #define EP93XX_CHIP_REV_E0 5 31 #define EP93XX_CHIP_REV_E1 6 32 #define EP93XX_CHIP_REV_E2 7 33 34 unsigned int ep93xx_chip_revision(void); 35 36 void ep93xx_register_flash(unsigned int width, 37 resource_size_t start, resource_size_t size); 38 39 void ep93xx_register_eth(struct ep93xx_eth_data *data, int copy_addr); 40 void ep93xx_register_i2c(struct i2c_gpio_platform_data *data, 41 struct i2c_board_info *devices, int num); 42 void ep93xx_register_spi(struct ep93xx_spi_info *info, 43 struct spi_board_info *devices, int num); 44 void ep93xx_register_fb(struct ep93xxfb_mach_info *data); 45 void ep93xx_register_pwm(int pwm0, int pwm1); 46 int ep93xx_pwm_acquire_gpio(struct platform_device *pdev); 47 void ep93xx_pwm_release_gpio(struct platform_device *pdev); 48 void ep93xx_register_keypad(struct ep93xx_keypad_platform_data *data); 49 int ep93xx_keypad_acquire_gpio(struct platform_device *pdev); 50 void ep93xx_keypad_release_gpio(struct platform_device *pdev); 51 void ep93xx_register_i2s(void); 52 int ep93xx_i2s_acquire(void); 53 void ep93xx_i2s_release(void); 54 void ep93xx_register_ac97(void); 55 void ep93xx_register_ide(void); 56 void ep93xx_register_adc(void); 57 int ep93xx_ide_acquire_gpio(struct platform_device *pdev); 58 void ep93xx_ide_release_gpio(struct platform_device *pdev); 59 60 struct device *ep93xx_init_devices(void); 61 extern void ep93xx_timer_init(void); 62 63 void ep93xx_restart(enum reboot_mode, const char *); 64 void ep93xx_init_late(void); 65 66 #ifdef CONFIG_CRUNCH 67 int crunch_init(void); 68 #else crunch_init(void)69static inline int crunch_init(void) { return 0; } 70 #endif 71 72 #endif 73