Root/
1 | /* |
2 | * Copyright (C) ST-Ericsson AB 2012 |
3 | * Author: Sjur Brendeland / sjur.brandeland@stericsson.com |
4 | * |
5 | * License terms: GNU General Public License (GPL) version 2 |
6 | */ |
7 | |
8 | #ifndef __INC_MODEM_DEV_H |
9 | #define __INC_MODEM_DEV_H |
10 | #include <linux/types.h> |
11 | #include <linux/platform_device.h> |
12 | |
13 | struct ste_modem_device; |
14 | |
15 | /** |
16 | * struct ste_modem_dev_cb - Callbacks for modem initiated events. |
17 | * @kick: Called when the modem kicks the host. |
18 | * |
19 | * This structure contains callbacks for actions triggered by the modem. |
20 | */ |
21 | struct ste_modem_dev_cb { |
22 | void (*kick)(struct ste_modem_device *mdev, int notify_id); |
23 | }; |
24 | |
25 | /** |
26 | * struct ste_modem_dev_ops - Functions to control modem and modem interface. |
27 | * |
28 | * @power: Main power switch, used for cold-start or complete power off. |
29 | * @kick: Kick the modem. |
30 | * @kick_subscribe: Subscribe for notifications from the modem. |
31 | * @setup: Provide callback functions to modem device. |
32 | * |
33 | * This structure contains functions used by the ste remoteproc driver |
34 | * to manage the modem. |
35 | */ |
36 | struct ste_modem_dev_ops { |
37 | int (*power)(struct ste_modem_device *mdev, bool on); |
38 | int (*kick)(struct ste_modem_device *mdev, int notify_id); |
39 | int (*kick_subscribe)(struct ste_modem_device *mdev, int notify_id); |
40 | int (*setup)(struct ste_modem_device *mdev, |
41 | struct ste_modem_dev_cb *cfg); |
42 | }; |
43 | |
44 | /** |
45 | * struct ste_modem_device - represent the STE modem device |
46 | * @pdev: Reference to platform device |
47 | * @ops: Operations used to manage the modem. |
48 | * @drv_data: Driver private data. |
49 | */ |
50 | struct ste_modem_device { |
51 | struct platform_device pdev; |
52 | struct ste_modem_dev_ops ops; |
53 | void *drv_data; |
54 | }; |
55 | |
56 | #endif /*INC_MODEM_DEV_H*/ |
57 |
Branches:
ben-wpan
ben-wpan-stefan
javiroman/ks7010
jz-2.6.34
jz-2.6.34-rc5
jz-2.6.34-rc6
jz-2.6.34-rc7
jz-2.6.35
jz-2.6.36
jz-2.6.37
jz-2.6.38
jz-2.6.39
jz-3.0
jz-3.1
jz-3.11
jz-3.12
jz-3.13
jz-3.15
jz-3.16
jz-3.18-dt
jz-3.2
jz-3.3
jz-3.4
jz-3.5
jz-3.6
jz-3.6-rc2-pwm
jz-3.9
jz-3.9-clk
jz-3.9-rc8
jz47xx
jz47xx-2.6.38
master
Tags:
od-2011-09-04
od-2011-09-18
v2.6.34-rc5
v2.6.34-rc6
v2.6.34-rc7
v3.9