Merge branch 'for-3.11' of git://linux-nfs.org/~bfields/linux
[linux-2.6.git] / include / linux / platform_data / remoteproc-omap.h
blobbfbd12b41162bcca18a67be96e070629bbbe841e
1 /*
2 * Remote Processor - omap-specific bits
4 * Copyright (C) 2011 Texas Instruments, Inc.
5 * Copyright (C) 2011 Google, Inc.
7 * This program is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU General Public License
9 * version 2 as published by the Free Software Foundation.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
17 #ifndef _PLAT_REMOTEPROC_H
18 #define _PLAT_REMOTEPROC_H
20 struct rproc_ops;
21 struct platform_device;
24 * struct omap_rproc_pdata - omap remoteproc's platform data
25 * @name: the remoteproc's name
26 * @oh_name: omap hwmod device
27 * @oh_name_opt: optional, secondary omap hwmod device
28 * @firmware: name of firmware file to load
29 * @mbox_name: name of omap mailbox device to use with this rproc
30 * @ops: start/stop rproc handlers
31 * @device_enable: omap-specific handler for enabling a device
32 * @device_shutdown: omap-specific handler for shutting down a device
33 * @set_bootaddr: omap-specific handler for setting the rproc boot address
35 struct omap_rproc_pdata {
36 const char *name;
37 const char *oh_name;
38 const char *oh_name_opt;
39 const char *firmware;
40 const char *mbox_name;
41 const struct rproc_ops *ops;
42 int (*device_enable) (struct platform_device *pdev);
43 int (*device_shutdown) (struct platform_device *pdev);
44 void(*set_bootaddr)(u32);
47 #if defined(CONFIG_OMAP_REMOTEPROC) || defined(CONFIG_OMAP_REMOTEPROC_MODULE)
49 void __init omap_rproc_reserve_cma(void);
51 #else
53 static inline void __init omap_rproc_reserve_cma(void)
57 #endif
59 #endif /* _PLAT_REMOTEPROC_H */