blob: bfbd12b41162bcca18a67be96e070629bbbe841e [file] [log] [blame]
Ohad Ben-Cohen34ed5a32011-10-20 18:53:35 +02001/*
2 * Remote Processor - omap-specific bits
3 *
4 * Copyright (C) 2011 Texas Instruments, Inc.
5 * Copyright (C) 2011 Google, Inc.
6 *
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.
10 *
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.
15 */
16
17#ifndef _PLAT_REMOTEPROC_H
18#define _PLAT_REMOTEPROC_H
19
20struct rproc_ops;
21struct platform_device;
22
23/*
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
Juan Gutierrez4980f462012-08-15 10:25:48 -050033 * @set_bootaddr: omap-specific handler for setting the rproc boot address
Ohad Ben-Cohen34ed5a32011-10-20 18:53:35 +020034 */
35struct 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);
Juan Gutierrez4980f462012-08-15 10:25:48 -050044 void(*set_bootaddr)(u32);
Ohad Ben-Cohen34ed5a32011-10-20 18:53:35 +020045};
46
47#if defined(CONFIG_OMAP_REMOTEPROC) || defined(CONFIG_OMAP_REMOTEPROC_MODULE)
48
49void __init omap_rproc_reserve_cma(void);
50
51#else
52
Suman Annae4760362013-07-01 15:30:51 +030053static inline void __init omap_rproc_reserve_cma(void)
Ohad Ben-Cohen34ed5a32011-10-20 18:53:35 +020054{
55}
56
57#endif
58
59#endif /* _PLAT_REMOTEPROC_H */