1ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik/****************************************************************
2ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik
3ebb6c22e80ccb2889b9c459df36d686d223911f5Uri ShkolnikSiano Mobile Silicon, Inc.
4ebb6c22e80ccb2889b9c459df36d686d223911f5Uri ShkolnikMDTV receiver kernel modules.
5ebb6c22e80ccb2889b9c459df36d686d223911f5Uri ShkolnikCopyright (C) 2006-2009, Uri Shkolnik
6ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik
7844a9e93d7fcd910cd94f6eb262e2cc43cacbe56Mauro Carvalho Chehab Copyright (c) 2010 - Mauro Carvalho Chehab
8844a9e93d7fcd910cd94f6eb262e2cc43cacbe56Mauro Carvalho Chehab	- Ported the driver to use rc-core
9844a9e93d7fcd910cd94f6eb262e2cc43cacbe56Mauro Carvalho Chehab	- IR raw event decoding is now done at rc-core
10844a9e93d7fcd910cd94f6eb262e2cc43cacbe56Mauro Carvalho Chehab	- Code almost re-written
11844a9e93d7fcd910cd94f6eb262e2cc43cacbe56Mauro Carvalho Chehab
12ebb6c22e80ccb2889b9c459df36d686d223911f5Uri ShkolnikThis program is free software: you can redistribute it and/or modify
13ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnikit under the terms of the GNU General Public License as published by
14ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnikthe Free Software Foundation, either version 2 of the License, or
15ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik(at your option) any later version.
16ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik
17ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik This program is distributed in the hope that it will be useful,
18ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnikbut WITHOUT ANY WARRANTY; without even the implied warranty of
19ebb6c22e80ccb2889b9c459df36d686d223911f5Uri ShkolnikMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20ebb6c22e80ccb2889b9c459df36d686d223911f5Uri ShkolnikGNU General Public License for more details.
21ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik
22ebb6c22e80ccb2889b9c459df36d686d223911f5Uri ShkolnikYou should have received a copy of the GNU General Public License
23ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnikalong with this program.  If not, see <http://www.gnu.org/licenses/>.
24ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik
25ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik****************************************************************/
26ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik
27ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik#ifndef __SMS_IR_H__
28ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik#define __SMS_IR_H__
29ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik
30ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik#include <linux/input.h>
316bda96447cef24fbf97a798b1ea664224d5fdc25Mauro Carvalho Chehab#include <media/rc-core.h>
32ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik
33ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik#define IR_DEFAULT_TIMEOUT		100
34ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik
35ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnikstruct smscore_device_t;
36ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik
37ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnikstruct ir_t {
38d8b4b5822f51e2142b731b42c81e3f03eec475b2David Härdeman	struct rc_dev *dev;
39844a9e93d7fcd910cd94f6eb262e2cc43cacbe56Mauro Carvalho Chehab	char name[40];
401722f3b376f10182db85c2f6cf5bd79b857bc9e0Mauro Carvalho Chehab	char phys[32];
41844a9e93d7fcd910cd94f6eb262e2cc43cacbe56Mauro Carvalho Chehab
42844a9e93d7fcd910cd94f6eb262e2cc43cacbe56Mauro Carvalho Chehab	char *rc_codes;
43844a9e93d7fcd910cd94f6eb262e2cc43cacbe56Mauro Carvalho Chehab	u64 protocol;
44844a9e93d7fcd910cd94f6eb262e2cc43cacbe56Mauro Carvalho Chehab
45ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik	u32 timeout;
46ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik	u32 controller;
47ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik};
48ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik
49ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnikint sms_ir_init(struct smscore_device_t *coredev);
50ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnikvoid sms_ir_exit(struct smscore_device_t *coredev);
51ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnikvoid sms_ir_event(struct smscore_device_t *coredev,
52ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik			const char *buf, int len);
53ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik
54ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik#endif /* __SMS_IR_H__ */
55ebb6c22e80ccb2889b9c459df36d686d223911f5Uri Shkolnik
56