diff options
author | Sjur Brændeland <sjur.brandeland@stericsson.com> | 2012-06-19 03:08:18 -0400 |
---|---|---|
committer | Ohad Ben-Cohen <ohad@wizery.com> | 2012-07-15 04:39:01 -0400 |
commit | 4afc89d66c60a372ec15e99eee93621f650b5d17 (patch) | |
tree | a6e8c4cd9ea726de73e967b2f0372230ba73a550 /include/linux/remoteproc.h | |
parent | 72854fb042b15b6139031a59c4725b3d86708352 (diff) |
remoteproc: Support custom firmware handlers
Firmware handling is made customizable.
This is done by creating a separate ops structure for the
firmware functions that depends on a particular firmware
format (such as ELF). The ELF functions are default used
unless the HW driver explicitly injects another firmware
handler by updating rproc->fw_ops.
The function rproc_da_to_va() is exported, as custom
firmware handlers may need to use this function.
Signed-off-by: Sjur Brændeland <sjur.brandeland@stericsson.com>
[ohad: namespace fixes, whitespace fixes, style fixes]
Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com>
Diffstat (limited to 'include/linux/remoteproc.h')
-rw-r--r-- | include/linux/remoteproc.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/remoteproc.h b/include/linux/remoteproc.h index eea3ac86b2b7..131b53957b9f 100644 --- a/include/linux/remoteproc.h +++ b/include/linux/remoteproc.h | |||
@@ -369,6 +369,7 @@ enum rproc_state { | |||
369 | * @priv: private data which belongs to the platform-specific rproc module | 369 | * @priv: private data which belongs to the platform-specific rproc module |
370 | * @ops: platform-specific start/stop rproc handlers | 370 | * @ops: platform-specific start/stop rproc handlers |
371 | * @dev: virtual device for refcounting and common remoteproc behavior | 371 | * @dev: virtual device for refcounting and common remoteproc behavior |
372 | * @fw_ops: firmware-specific handlers | ||
372 | * @power: refcount of users who need this rproc powered up | 373 | * @power: refcount of users who need this rproc powered up |
373 | * @state: state of the device | 374 | * @state: state of the device |
374 | * @lock: lock which protects concurrent manipulations of the rproc | 375 | * @lock: lock which protects concurrent manipulations of the rproc |
@@ -391,6 +392,7 @@ struct rproc { | |||
391 | void *priv; | 392 | void *priv; |
392 | const struct rproc_ops *ops; | 393 | const struct rproc_ops *ops; |
393 | struct device dev; | 394 | struct device dev; |
395 | const struct rproc_fw_ops *fw_ops; | ||
394 | atomic_t power; | 396 | atomic_t power; |
395 | unsigned int state; | 397 | unsigned int state; |
396 | struct mutex lock; | 398 | struct mutex lock; |