Commit | Line | Data |
---|---|---|
3fed7dbe JH |
1 | /* |
2 | * ImgTec IR Raw Decoder found in PowerDown Controller. | |
3 | * | |
4 | * Copyright 2010-2014 Imagination Technologies Ltd. | |
2ac6f630 JH |
5 | * |
6 | * This program is free software; you can redistribute it and/or modify | |
7 | * it under the terms of the GNU General Public License as published by the | |
8 | * Free Software Foundation; either version 2 of the License, or (at your | |
9 | * option) any later version. | |
3fed7dbe JH |
10 | */ |
11 | ||
12 | #ifndef _IMG_IR_RAW_H_ | |
13 | #define _IMG_IR_RAW_H_ | |
14 | ||
15 | struct img_ir_priv; | |
16 | ||
17 | #ifdef CONFIG_IR_IMG_RAW | |
18 | ||
19 | /** | |
20 | * struct img_ir_priv_raw - Private driver data for raw decoder. | |
21 | * @rdev: Raw remote control device | |
22 | * @timer: Timer to echo samples to keep soft decoders happy. | |
23 | * @last_status: Last raw status bits. | |
24 | */ | |
25 | struct img_ir_priv_raw { | |
26 | struct rc_dev *rdev; | |
27 | struct timer_list timer; | |
28 | u32 last_status; | |
29 | }; | |
30 | ||
31 | static inline bool img_ir_raw_enabled(struct img_ir_priv_raw *raw) | |
32 | { | |
33 | return raw->rdev; | |
34 | }; | |
35 | ||
36 | void img_ir_isr_raw(struct img_ir_priv *priv, u32 irq_status); | |
37 | void img_ir_setup_raw(struct img_ir_priv *priv); | |
38 | int img_ir_probe_raw(struct img_ir_priv *priv); | |
39 | void img_ir_remove_raw(struct img_ir_priv *priv); | |
40 | ||
41 | #else | |
42 | ||
43 | struct img_ir_priv_raw { | |
44 | }; | |
45 | static inline bool img_ir_raw_enabled(struct img_ir_priv_raw *raw) | |
46 | { | |
47 | return false; | |
48 | }; | |
49 | static inline void img_ir_isr_raw(struct img_ir_priv *priv, u32 irq_status) | |
50 | { | |
51 | } | |
52 | static inline void img_ir_setup_raw(struct img_ir_priv *priv) | |
53 | { | |
54 | } | |
55 | static inline int img_ir_probe_raw(struct img_ir_priv *priv) | |
56 | { | |
57 | return -ENODEV; | |
58 | } | |
59 | static inline void img_ir_remove_raw(struct img_ir_priv *priv) | |
60 | { | |
61 | } | |
62 | ||
63 | #endif /* CONFIG_IR_IMG_RAW */ | |
64 | ||
65 | #endif /* _IMG_IR_RAW_H_ */ |