| 1 | /* |
| 2 | * Linux Broadcom BCM47xx GPIO char driver |
| 3 | * |
| 4 | * Copyright 2007, Broadcom Corporation |
| 5 | * All Rights Reserved. |
| 6 | * |
| 7 | * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY |
| 8 | * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM |
| 9 | * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS |
| 10 | * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE. |
| 11 | * |
| 12 | */ |
| 13 | |
| 14 | #ifndef _linux_gpio_h_ |
| 15 | #define _linux_gpio_h_ |
| 16 | |
| 17 | struct gpio_ioctl { |
| 18 | uint32 mask; |
| 19 | uint32 val; |
| 20 | }; |
| 21 | |
| 22 | #define GPIO_IOC_MAGIC 'G' |
| 23 | |
| 24 | /* reserve/release a gpio to the caller */ |
| 25 | #define GPIO_IOC_RESERVE _IOWR(GPIO_IOC_MAGIC, 1, struct gpio_ioctl) |
| 26 | #define GPIO_IOC_RELEASE _IOWR(GPIO_IOC_MAGIC, 2, struct gpio_ioctl) |
| 27 | /* ioctls to read/write the gpio registers */ |
| 28 | #define GPIO_IOC_OUT _IOWR(GPIO_IOC_MAGIC, 3, struct gpio_ioctl) |
| 29 | #define GPIO_IOC_IN _IOWR(GPIO_IOC_MAGIC, 4, struct gpio_ioctl) |
| 30 | #define GPIO_IOC_OUTEN _IOWR(GPIO_IOC_MAGIC, 5, struct gpio_ioctl) |
| 31 | |
| 32 | #endif /* _linux_gpio_h_ */ |
| 33 | |