Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Functions | Variables
remoteproc_internal.h File Reference
#include <linux/irqreturn.h>
#include <linux/firmware.h>

Go to the source code of this file.

Data Structures

struct  rproc_fw_ops
 

Functions

void rproc_release (struct kref *kref)
 
irqreturn_t rproc_vq_interrupt (struct rproc *rproc, int vq_id)
 
int rproc_add_virtio_dev (struct rproc_vdev *rvdev, int id)
 
void rproc_remove_virtio_dev (struct rproc_vdev *rvdev)
 
void rproc_remove_trace_file (struct dentry *tfile)
 
struct dentryrproc_create_trace_file (const char *name, struct rproc *rproc, struct rproc_mem_entry *trace)
 
void rproc_delete_debug_dir (struct rproc *rproc)
 
void rproc_create_debug_dir (struct rproc *rproc)
 
void rproc_init_debugfs (void)
 
void rproc_exit_debugfs (void)
 
void rproc_free_vring (struct rproc_vring *rvring)
 
int rproc_alloc_vring (struct rproc_vdev *rvdev, int i)
 
voidrproc_da_to_va (struct rproc *rproc, u64 da, int len)
 
int rproc_trigger_recovery (struct rproc *rproc)
 

Variables

struct rproc_fw_ops rproc_elf_fw_ops
 

Function Documentation

int rproc_add_virtio_dev ( struct rproc_vdev rvdev,
int  id 
)

rproc_add_virtio_dev() - register an rproc-induced virtio device : the remote vdev

This function registers a virtio device. This vdev's partent is the rproc device.

Returns 0 on success or an appropriate error value otherwise.

Definition at line 264 of file remoteproc_virtio.c.

int rproc_alloc_vring ( struct rproc_vdev rvdev,
int  i 
)

Definition at line 190 of file remoteproc_core.c.

void rproc_create_debug_dir ( struct rproc rproc)

Definition at line 221 of file remoteproc_debugfs.c.

struct dentry* rproc_create_trace_file ( const char name,
struct rproc rproc,
struct rproc_mem_entry trace 
)
read

Definition at line 198 of file remoteproc_debugfs.c.

void* rproc_da_to_va ( struct rproc rproc,
u64  da,
int  len 
)

Definition at line 165 of file remoteproc_core.c.

void rproc_delete_debug_dir ( struct rproc rproc)

Definition at line 213 of file remoteproc_debugfs.c.

void rproc_exit_debugfs ( void  )

Definition at line 249 of file remoteproc_debugfs.c.

void rproc_free_vring ( struct rproc_vring rvring)

Definition at line 282 of file remoteproc_core.c.

void rproc_init_debugfs ( void  )

Definition at line 240 of file remoteproc_debugfs.c.

void rproc_release ( struct kref kref)
void rproc_remove_trace_file ( struct dentry tfile)

Definition at line 193 of file remoteproc_debugfs.c.

void rproc_remove_virtio_dev ( struct rproc_vdev rvdev)

rproc_remove_virtio_dev() - remove an rproc-induced virtio device : the remote vdev

This function unregisters an existing virtio device.

Definition at line 305 of file remoteproc_virtio.c.

int rproc_trigger_recovery ( struct rproc rproc)

rproc_trigger_recovery() - recover a remoteproc : the remote processor

The recovery is done by reseting all the virtio devices, that way all the rpmsg drivers will be reseted along with the remote processor making the remoteproc functional again.

This function can sleep, so it cannot be called from atomic context.

Definition at line 940 of file remoteproc_core.c.

irqreturn_t rproc_vq_interrupt ( struct rproc rproc,
int  notifyid 
)

rproc_vq_interrupt() - tell remoteproc that a virtqueue is interrupted : handle to the remote processor : index of the signalled virtqueue (unique per this )

This function should be called by the platform-specific rproc driver, when the remote processor signals that a specific virtqueue has pending messages available.

Returns IRQ_NONE if no message was found in the virtqueue, and otherwise returns IRQ_HANDLED.

Definition at line 56 of file remoteproc_virtio.c.

Variable Documentation

struct rproc_fw_ops rproc_elf_fw_ops

Definition at line 290 of file remoteproc_elf_loader.c.