Maxime Bizon | e7300d0 | 2009-08-18 13:23:37 +0100 | [diff] [blame] | 1 | #ifndef BCM63XX_GPIO_H |
| 2 | #define BCM63XX_GPIO_H |
| 3 | |
| 4 | #include <linux/init.h> |
Jonas Gorski | 442209f | 2012-05-15 17:47:52 +0200 | [diff] [blame] | 5 | #include <bcm63xx_cpu.h> |
Maxime Bizon | e7300d0 | 2009-08-18 13:23:37 +0100 | [diff] [blame] | 6 | |
| 7 | int __init bcm63xx_gpio_init(void); |
| 8 | |
| 9 | static inline unsigned long bcm63xx_gpio_count(void) |
| 10 | { |
| 11 | switch (bcm63xx_get_cpu_id()) { |
Jonas Gorski | e5766ae | 2012-07-24 16:33:12 +0200 | [diff] [blame] | 12 | case BCM6328_CPU_ID: |
| 13 | return 32; |
Florian Fainelli | 7b93342 | 2013-06-18 16:55:40 +0000 | [diff] [blame] | 14 | case BCM3368_CPU_ID: |
Maxime Bizon | e7300d0 | 2009-08-18 13:23:37 +0100 | [diff] [blame] | 15 | case BCM6358_CPU_ID: |
| 16 | return 40; |
Florian Fainelli | d1b2875 | 2010-03-01 23:36:32 +0100 | [diff] [blame] | 17 | case BCM6338_CPU_ID: |
| 18 | return 8; |
| 19 | case BCM6345_CPU_ID: |
| 20 | return 16; |
Jonas Gorski | 2c8aaf7 | 2013-03-21 14:03:17 +0000 | [diff] [blame] | 21 | case BCM6362_CPU_ID: |
| 22 | return 48; |
Maxime Bizon | 04712f3 | 2011-11-04 19:09:35 +0100 | [diff] [blame] | 23 | case BCM6368_CPU_ID: |
| 24 | return 38; |
Maxime Bizon | e7300d0 | 2009-08-18 13:23:37 +0100 | [diff] [blame] | 25 | case BCM6348_CPU_ID: |
| 26 | default: |
| 27 | return 37; |
| 28 | } |
| 29 | } |
| 30 | |
Florian Fainelli | 3e1bf29 | 2010-05-04 10:38:57 +0200 | [diff] [blame] | 31 | #define BCM63XX_GPIO_DIR_OUT 0x0 |
| 32 | #define BCM63XX_GPIO_DIR_IN 0x1 |
Maxime Bizon | e7300d0 | 2009-08-18 13:23:37 +0100 | [diff] [blame] | 33 | |
| 34 | #endif /* !BCM63XX_GPIO_H */ |