1 /* 2 * Copyright (C) 2007-2011 ST-Ericsson AB 3 * License terms: GNU General Public License (GPL) version 2 4 * GPIO block resgister definitions and inline macros for 5 * U300 GPIO COH 901 335 or COH 901 571/3 6 * Author: Linus Walleij <linus.walleij@stericsson.com> 7 */ 8 9 #ifndef __MACH_U300_GPIO_U300_H 10 #define __MACH_U300_GPIO_U300_H 11 12 /** 13 * enum u300_gpio_variant - the type of U300 GPIO employed 14 */ 15 enum u300_gpio_variant { 16 U300_GPIO_COH901335, 17 U300_GPIO_COH901571_3_BS335, 18 U300_GPIO_COH901571_3_BS365, 19 }; 20 21 /** 22 * struct u300_gpio_platform - U300 GPIO platform data 23 * @variant: IP block variant 24 * @ports: number of GPIO block ports 25 * @gpio_base: first GPIO number for this block (use a free range) 26 * @gpio_irq_base: first GPIO IRQ number for this block (use a free range) 27 * @pinctrl_device: pin control device to spawn as child 28 */ 29 struct u300_gpio_platform { 30 enum u300_gpio_variant variant; 31 u8 ports; 32 int gpio_base; 33 int gpio_irq_base; 34 struct platform_device *pinctrl_device; 35 }; 36 37 #endif /* __MACH_U300_GPIO_U300_H */ 38