0001
0002 #ifndef BCM63XX_GPIO_H
0003 #define BCM63XX_GPIO_H
0004
0005 #include <linux/init.h>
0006 #include <bcm63xx_cpu.h>
0007
0008 int __init bcm63xx_gpio_init(void);
0009
0010 static inline unsigned long bcm63xx_gpio_count(void)
0011 {
0012 switch (bcm63xx_get_cpu_id()) {
0013 case BCM6328_CPU_ID:
0014 return 32;
0015 case BCM3368_CPU_ID:
0016 return 40;
0017 case BCM6338_CPU_ID:
0018 return 8;
0019 case BCM6345_CPU_ID:
0020 return 16;
0021 case BCM6358_CPU_ID:
0022 case BCM6368_CPU_ID:
0023 return 38;
0024 case BCM6362_CPU_ID:
0025 return 48;
0026 case BCM6348_CPU_ID:
0027 default:
0028 return 37;
0029 }
0030 }
0031
0032 #define BCM63XX_GPIO_DIR_OUT 0x0
0033 #define BCM63XX_GPIO_DIR_IN 0x1
0034
0035 #endif