/* * Remote Processor - omap-specific bits * * Copyright (C) 2011 Texas Instruments, Inc. * Copyright (C) 2011 Google, Inc. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ #ifndef _PLAT_REMOTEPROC_H #define _PLAT_REMOTEPROC_H struct rproc_ops; struct platform_device; /* * struct omap_rproc_pdata - omap remoteproc's platform data * @name: the remoteproc's name * @oh_name: omap hwmod device * @oh_name_opt: optional, secondary omap hwmod device * @firmware: name of firmware file to load * @mbox_name: name of omap mailbox device to use with this rproc * @ops: start/stop rproc handlers * @device_enable: omap-specific handler for enabling a device * @device_shutdown: omap-specific handler for shutting down a device * @set_bootaddr: omap-specific handler for setting the rproc boot address */ struct omap_rproc_pdata { const char *name; const char *oh_name; const char *oh_name_opt; const char *firmware; const char *mbox_name; const struct rproc_ops *ops; int (*device_enable) (struct platform_device *pdev); int (*device_shutdown) (struct platform_device *pdev); void(*set_bootaddr)(u32); }; #if defined(CONFIG_OMAP_REMOTEPROC) || defined(CONFIG_OMAP_REMOTEPROC_MODULE) void __init omap_rproc_reserve_cma(void); #else void __init omap_rproc_reserve_cma(void) { } #endif #endif /* _PLAT_REMOTEPROC_H */