platform.h 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. /*
  2. * arch/arm/mach-ep93xx/include/mach/platform.h
  3. */
  4. #ifndef __ASSEMBLY__
  5. #include <linux/reboot.h>
  6. struct device;
  7. struct i2c_gpio_platform_data;
  8. struct i2c_board_info;
  9. struct spi_board_info;
  10. struct platform_device;
  11. struct ep93xxfb_mach_info;
  12. struct ep93xx_keypad_platform_data;
  13. struct ep93xx_spi_info;
  14. struct ep93xx_eth_data
  15. {
  16. unsigned char dev_addr[6];
  17. unsigned char phy_id;
  18. };
  19. void ep93xx_map_io(void);
  20. void ep93xx_init_irq(void);
  21. #define EP93XX_CHIP_REV_D0 3
  22. #define EP93XX_CHIP_REV_D1 4
  23. #define EP93XX_CHIP_REV_E0 5
  24. #define EP93XX_CHIP_REV_E1 6
  25. #define EP93XX_CHIP_REV_E2 7
  26. unsigned int ep93xx_chip_revision(void);
  27. void ep93xx_register_flash(unsigned int width,
  28. resource_size_t start, resource_size_t size);
  29. void ep93xx_register_eth(struct ep93xx_eth_data *data, int copy_addr);
  30. void ep93xx_register_i2c(struct i2c_gpio_platform_data *data,
  31. struct i2c_board_info *devices, int num);
  32. void ep93xx_register_spi(struct ep93xx_spi_info *info,
  33. struct spi_board_info *devices, int num);
  34. void ep93xx_register_fb(struct ep93xxfb_mach_info *data);
  35. void ep93xx_register_pwm(int pwm0, int pwm1);
  36. int ep93xx_pwm_acquire_gpio(struct platform_device *pdev);
  37. void ep93xx_pwm_release_gpio(struct platform_device *pdev);
  38. void ep93xx_register_keypad(struct ep93xx_keypad_platform_data *data);
  39. int ep93xx_keypad_acquire_gpio(struct platform_device *pdev);
  40. void ep93xx_keypad_release_gpio(struct platform_device *pdev);
  41. void ep93xx_register_i2s(void);
  42. int ep93xx_i2s_acquire(void);
  43. void ep93xx_i2s_release(void);
  44. void ep93xx_register_ac97(void);
  45. void ep93xx_register_ide(void);
  46. int ep93xx_ide_acquire_gpio(struct platform_device *pdev);
  47. void ep93xx_ide_release_gpio(struct platform_device *pdev);
  48. struct device *ep93xx_init_devices(void);
  49. extern void ep93xx_timer_init(void);
  50. void ep93xx_restart(enum reboot_mode, const char *);
  51. void ep93xx_init_late(void);
  52. #ifdef CONFIG_CRUNCH
  53. int crunch_init(void);
  54. #else
  55. static inline int crunch_init(void) { return 0; }
  56. #endif
  57. #endif