Commit | Line | Data |
---|---|---|
9cedb392 MA |
1 | /* |
2 | * Copyright (C) 2010 Intel Corporation. All rights reserved. | |
3 | * | |
4 | * This program is free software; you can redistribute it and/or | |
5 | * modify it under the terms of version 2 of the GNU General | |
6 | * Public License as published by the Free Software Foundation. | |
7 | * | |
8 | * This program is distributed in the hope that it will be | |
9 | * useful, but WITHOUT ANY WARRANTY; without even the implied | |
10 | * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR | |
11 | * PURPOSE. See the GNU General Public License for more details. | |
12 | * You should have received a copy of the GNU General Public | |
13 | * License along with this program; if not, write to the Free | |
14 | * Software Foundation, Inc., 59 Temple Place - Suite 330, | |
15 | * Boston, MA 02111-1307, USA. | |
16 | * The full GNU General Public License is included in this | |
17 | * distribution in the file called COPYING. | |
18 | */ | |
19 | ||
20 | ||
21 | #ifndef _RAR_REGISTER_H | |
22 | #define _RAR_REGISTER_H | |
23 | ||
375d65db | 24 | #include <linux/types.h> |
9cedb392 MA |
25 | |
26 | /* following are used both in drivers as well as user space apps */ | |
542385ee | 27 | |
375d65db AC |
28 | #define RAR_TYPE_VIDEO 0 |
29 | #define RAR_TYPE_AUDIO 1 | |
30 | #define RAR_TYPE_IMAGE 2 | |
31 | #define RAR_TYPE_DATA 3 | |
9cedb392 | 32 | |
375d65db | 33 | #ifdef __KERNEL__ |
9cedb392 | 34 | |
375d65db | 35 | struct rar_device; |
9cedb392 | 36 | |
62a8c3a3 | 37 | #if defined(CONFIG_RAR_REGISTER) |
375d65db AC |
38 | int register_rar(int num, |
39 | int (*callback)(unsigned long data), unsigned long data); | |
40 | void unregister_rar(int num); | |
41 | int rar_get_address(int rar_index, dma_addr_t *start, dma_addr_t *end); | |
9cedb392 | 42 | int rar_lock(int rar_index); |
62a8c3a3 AC |
43 | #else |
44 | extern void unregister_rar(int num) { } | |
45 | extern int rar_lock(int rar_index) { return -EIO; } | |
46 | ||
47 | extern inline int register_rar(int num, | |
48 | int (*callback)(unsigned long data), unsigned long data) | |
49 | { | |
50 | return -ENODEV; | |
51 | } | |
52 | ||
53 | extern int rar_get_address(int rar_index, dma_addr_t *start, dma_addr_t *end) | |
54 | { | |
55 | return -ENODEV; | |
56 | } | |
57 | #endif /* RAR_REGISTER */ | |
542385ee | 58 | |
9cedb392 MA |
59 | #endif /* __KERNEL__ */ |
60 | #endif /* _RAR_REGISTER_H */ |