blob: 3cd41f77dda44128a5afd052c563d6a8cea5edc2 [file] [log] [blame]
Nicolas Pitre6f475c02005-10-28 16:39:33 +01001#ifndef ASMARM_ARCH_IRDA_H
2#define ASMARM_ARCH_IRDA_H
3
4/* board specific transceiver capabilities */
5
6#define IR_OFF 1
7#define IR_SIRMODE 2
8#define IR_FIRMODE 4
9
10struct pxaficp_platform_data {
11 int transceiver_cap;
12 void (*transceiver_mode)(struct device *dev, int mode);
Dmitry Baryshkovbaf1c5d2008-04-12 20:08:16 +010013 int (*startup)(struct device *dev);
14 void (*shutdown)(struct device *dev);
Marek Vasutc4bd0172009-07-17 12:50:43 +020015 int gpio_pwdown; /* powerdown GPIO for the IrDA chip */
16 bool gpio_pwdown_inverted; /* gpio_pwdown is inverted */
Nicolas Pitre6f475c02005-10-28 16:39:33 +010017};
18
19extern void pxa_set_ficp_info(struct pxaficp_platform_data *info);
20
Dmitry Baryshkov918dbcb2008-07-02 13:53:45 +010021#if defined(CONFIG_PXA25x) || defined(CONFIG_PXA27x)
22void pxa2xx_transceiver_mode(struct device *dev, int mode);
23#endif
24
Nicolas Pitre6f475c02005-10-28 16:39:33 +010025#endif