Uri Shkolnik | ebb6c22 | 2009-04-05 06:01:37 -0300 | [diff] [blame] | 1 | /**************************************************************** |
| 2 | |
| 3 | Siano Mobile Silicon, Inc. |
| 4 | MDTV receiver kernel modules. |
| 5 | Copyright (C) 2006-2009, Uri Shkolnik |
| 6 | |
Mauro Carvalho Chehab | 844a9e9 | 2010-08-01 17:19:29 -0300 | [diff] [blame] | 7 | Copyright (c) 2010 - Mauro Carvalho Chehab |
| 8 | - Ported the driver to use rc-core |
| 9 | - IR raw event decoding is now done at rc-core |
| 10 | - Code almost re-written |
| 11 | |
Uri Shkolnik | ebb6c22 | 2009-04-05 06:01:37 -0300 | [diff] [blame] | 12 | This program is free software: you can redistribute it and/or modify |
| 13 | it under the terms of the GNU General Public License as published by |
| 14 | the Free Software Foundation, either version 2 of the License, or |
| 15 | (at your option) any later version. |
| 16 | |
| 17 | This program is distributed in the hope that it will be useful, |
| 18 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 19 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| 20 | GNU General Public License for more details. |
| 21 | |
| 22 | You should have received a copy of the GNU General Public License |
| 23 | along with this program. If not, see <http://www.gnu.org/licenses/>. |
| 24 | |
| 25 | ****************************************************************/ |
| 26 | |
| 27 | #ifndef __SMS_IR_H__ |
| 28 | #define __SMS_IR_H__ |
| 29 | |
| 30 | #include <linux/input.h> |
Mauro Carvalho Chehab | 6bda964 | 2010-11-17 13:28:38 -0300 | [diff] [blame] | 31 | #include <media/rc-core.h> |
Uri Shkolnik | ebb6c22 | 2009-04-05 06:01:37 -0300 | [diff] [blame] | 32 | |
Uri Shkolnik | ebb6c22 | 2009-04-05 06:01:37 -0300 | [diff] [blame] | 33 | #define IR_DEFAULT_TIMEOUT 100 |
| 34 | |
Uri Shkolnik | ebb6c22 | 2009-04-05 06:01:37 -0300 | [diff] [blame] | 35 | struct smscore_device_t; |
| 36 | |
| 37 | struct ir_t { |
David Härdeman | d8b4b58 | 2010-10-29 16:08:23 -0300 | [diff] [blame] | 38 | struct rc_dev *dev; |
Mauro Carvalho Chehab | 844a9e9 | 2010-08-01 17:19:29 -0300 | [diff] [blame] | 39 | char name[40]; |
Mauro Carvalho Chehab | 1722f3b | 2010-08-01 15:30:50 -0300 | [diff] [blame] | 40 | char phys[32]; |
Mauro Carvalho Chehab | 844a9e9 | 2010-08-01 17:19:29 -0300 | [diff] [blame] | 41 | |
| 42 | char *rc_codes; |
Mauro Carvalho Chehab | 844a9e9 | 2010-08-01 17:19:29 -0300 | [diff] [blame] | 43 | |
Uri Shkolnik | ebb6c22 | 2009-04-05 06:01:37 -0300 | [diff] [blame] | 44 | u32 timeout; |
| 45 | u32 controller; |
| 46 | }; |
| 47 | |
Mauro Carvalho Chehab | fdd1eeb | 2012-10-17 16:59:01 -0300 | [diff] [blame] | 48 | #ifdef CONFIG_SMS_SIANO_RC |
Uri Shkolnik | ebb6c22 | 2009-04-05 06:01:37 -0300 | [diff] [blame] | 49 | int sms_ir_init(struct smscore_device_t *coredev); |
| 50 | void sms_ir_exit(struct smscore_device_t *coredev); |
| 51 | void sms_ir_event(struct smscore_device_t *coredev, |
| 52 | const char *buf, int len); |
Mauro Carvalho Chehab | fdd1eeb | 2012-10-17 16:59:01 -0300 | [diff] [blame] | 53 | #else |
| 54 | inline static int sms_ir_init(struct smscore_device_t *coredev) { |
| 55 | return 0; |
| 56 | } |
| 57 | inline static void sms_ir_exit(struct smscore_device_t *coredev) {}; |
| 58 | inline static void sms_ir_event(struct smscore_device_t *coredev, |
| 59 | const char *buf, int len) {}; |
| 60 | #endif |
Uri Shkolnik | ebb6c22 | 2009-04-05 06:01:37 -0300 | [diff] [blame] | 61 | |
| 62 | #endif /* __SMS_IR_H__ */ |
| 63 | |