1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _SOC_EP93XX_H
3 #define _SOC_EP93XX_H
4 
5 struct platform_device;
6 
7 #define EP93XX_CHIP_REV_D0	3
8 #define EP93XX_CHIP_REV_D1	4
9 #define EP93XX_CHIP_REV_E0	5
10 #define EP93XX_CHIP_REV_E1	6
11 #define EP93XX_CHIP_REV_E2	7
12 
13 #ifdef CONFIG_ARCH_EP93XX
14 int ep93xx_pwm_acquire_gpio(struct platform_device *pdev);
15 void ep93xx_pwm_release_gpio(struct platform_device *pdev);
16 int ep93xx_ide_acquire_gpio(struct platform_device *pdev);
17 void ep93xx_ide_release_gpio(struct platform_device *pdev);
18 int ep93xx_keypad_acquire_gpio(struct platform_device *pdev);
19 void ep93xx_keypad_release_gpio(struct platform_device *pdev);
20 int ep93xx_i2s_acquire(void);
21 void ep93xx_i2s_release(void);
22 unsigned int ep93xx_chip_revision(void);
23 
24 #else
ep93xx_pwm_acquire_gpio(struct platform_device * pdev)25 static inline int ep93xx_pwm_acquire_gpio(struct platform_device *pdev) { return 0; }
ep93xx_pwm_release_gpio(struct platform_device * pdev)26 static inline void ep93xx_pwm_release_gpio(struct platform_device *pdev) {}
ep93xx_ide_acquire_gpio(struct platform_device * pdev)27 static inline int ep93xx_ide_acquire_gpio(struct platform_device *pdev) { return 0; }
ep93xx_ide_release_gpio(struct platform_device * pdev)28 static inline void ep93xx_ide_release_gpio(struct platform_device *pdev) {}
ep93xx_keypad_acquire_gpio(struct platform_device * pdev)29 static inline int ep93xx_keypad_acquire_gpio(struct platform_device *pdev) { return 0; }
ep93xx_keypad_release_gpio(struct platform_device * pdev)30 static inline void ep93xx_keypad_release_gpio(struct platform_device *pdev) {}
ep93xx_i2s_acquire(void)31 static inline int ep93xx_i2s_acquire(void) { return 0; }
ep93xx_i2s_release(void)32 static inline void ep93xx_i2s_release(void) {}
ep93xx_chip_revision(void)33 static inline unsigned int ep93xx_chip_revision(void) { return 0; }
34 
35 #endif
36 
37 #endif
38