Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions | Variables
proc.c File Reference
#include <linux/types.h>
#include <linux/dma-mapping.h>
#include <linux/scatterlist.h>
#include <dspbridge/host_os.h>
#include <dspbridge/dbdefs.h>
#include <dspbridge/ntfy.h>
#include <dspbridge/sync.h>
#include <dspbridge/dspdefs.h>
#include <dspbridge/dspdeh.h>
#include <dspbridge/cod.h>
#include <dspbridge/dev.h>
#include <dspbridge/procpriv.h>
#include <dspbridge/dmm.h>
#include <dspbridge/mgr.h>
#include <dspbridge/node.h>
#include <dspbridge/nldr.h>
#include <dspbridge/rmm.h>
#include <dspbridge/dbdcd.h>
#include <dspbridge/msg.h>
#include <dspbridge/dspioctl.h>
#include <dspbridge/drv.h>
#include <dspbridge/proc.h>
#include <dspbridge/pwr.h>
#include <dspbridge/resourcecleanup.h>

Go to the source code of this file.

Data Structures

struct  proc_object
 

Macros

#define MAXCMDLINELEN   255
 
#define PROC_ENVPROCID   "PROC_ID=%d"
 
#define MAXPROCIDLEN   (8 + 5)
 
#define PROC_DFLT_TIMEOUT   10000 /* Time out in milliseconds */
 
#define PWR_TIMEOUT   500 /* Sleep/wake timout in msec */
 
#define EXTEND   "_EXT_END" /* Extmem end addr in DSP binary */
 
#define DSP_CACHE_LINE   128
 
#define BUFMODE_MASK   (3 << 14)
 
#define RBUF   0x4000 /* Input buffer */
 
#define WBUF   0x8000 /* Output Buffer */
 

Functions

 DEFINE_MUTEX (proc_lock)
 
int proc_attach (u32 processor_id, const struct dsp_processorattrin *attr_in, void **ph_processor, struct process_context *pr_ctxt)
 
int proc_auto_start (struct cfg_devnode *dev_node_obj, struct dev_object *hdev_obj)
 
int proc_ctrl (void *hprocessor, u32 dw_cmd, struct dsp_cbdata *arg)
 
int proc_detach (struct process_context *pr_ctxt)
 
int proc_enum_nodes (void *hprocessor, void **node_tab, u32 node_tab_size, u32 *pu_num_nodes, u32 *pu_allocated)
 
int proc_begin_dma (void *hprocessor, void *pmpu_addr, u32 ul_size, enum dma_data_direction dir)
 
int proc_end_dma (void *hprocessor, void *pmpu_addr, u32 ul_size, enum dma_data_direction dir)
 
int proc_flush_memory (void *hprocessor, void *pmpu_addr, u32 ul_size, u32 ul_flags)
 
int proc_invalidate_memory (void *hprocessor, void *pmpu_addr, u32 size)
 
int proc_get_resource_info (void *hprocessor, u32 resource_type, struct dsp_resourceinfo *resource_info, u32 resource_info_size)
 
int proc_get_dev_object (void *hprocessor, struct dev_object **device_obj)
 
int proc_get_state (void *hprocessor, struct dsp_processorstate *proc_state_obj, u32 state_info_size)
 
int proc_get_trace (void *hprocessor, u8 *pbuf, u32 max_size)
 
int proc_load (void *hprocessor, const s32 argc_index, const char **user_args, const char **user_envp)
 
int proc_map (void *hprocessor, void *pmpu_addr, u32 ul_size, void *req_addr, void **pp_map_addr, u32 ul_map_attr, struct process_context *pr_ctxt)
 
int proc_register_notify (void *hprocessor, u32 event_mask, u32 notify_type, struct dsp_notification *hnotification)
 
int proc_reserve_memory (void *hprocessor, u32 ul_size, void **pp_rsv_addr, struct process_context *pr_ctxt)
 
int proc_start (void *hprocessor)
 
int proc_stop (void *hprocessor)
 
int proc_un_map (void *hprocessor, void *map_addr, struct process_context *pr_ctxt)
 
int proc_un_reserve_memory (void *hprocessor, void *prsv_addr, struct process_context *pr_ctxt)
 
int proc_notify_clients (void *proc, u32 events)
 
int proc_notify_all_clients (void *proc, u32 events)
 
int proc_get_processor_id (void *proc, u32 *proc_id)
 

Variables

struct devicebridge
 

Macro Definition Documentation

#define BUFMODE_MASK   (3 << 14)

Definition at line 67 of file proc.c.

#define DSP_CACHE_LINE   128

Definition at line 65 of file proc.c.

#define EXTEND   "_EXT_END" /* Extmem end addr in DSP binary */

Definition at line 63 of file proc.c.

#define MAXCMDLINELEN   255

Definition at line 58 of file proc.c.

#define MAXPROCIDLEN   (8 + 5)

Definition at line 60 of file proc.c.

#define PROC_DFLT_TIMEOUT   10000 /* Time out in milliseconds */

Definition at line 61 of file proc.c.

#define PROC_ENVPROCID   "PROC_ID=%d"

Definition at line 59 of file proc.c.

#define PWR_TIMEOUT   500 /* Sleep/wake timout in msec */

Definition at line 62 of file proc.c.

#define RBUF   0x4000 /* Input buffer */

Definition at line 70 of file proc.c.

#define WBUF   0x8000 /* Output Buffer */

Definition at line 71 of file proc.c.

Function Documentation

DEFINE_MUTEX ( proc_lock  )
int proc_attach ( u32  processor_id,
const struct dsp_processorattrin attr_in,
void **  ph_processor,
struct process_context pr_ctxt 
)

Definition at line 267 of file proc.c.

int proc_auto_start ( struct cfg_devnode *  dev_node_obj,
struct dev_object hdev_obj 
)

Definition at line 425 of file proc.c.

int proc_begin_dma ( void hprocessor,
void pmpu_addr,
u32  ul_size,
enum dma_data_direction  dir 
)

Definition at line 738 of file proc.c.

int proc_ctrl ( void hprocessor,
u32  dw_cmd,
struct dsp_cbdata arg 
)

Definition at line 497 of file proc.c.

int proc_detach ( struct process_context pr_ctxt)

Definition at line 545 of file proc.c.

int proc_end_dma ( void hprocessor,
void pmpu_addr,
u32  ul_size,
enum dma_data_direction  dir 
)

Definition at line 778 of file proc.c.

int proc_enum_nodes ( void hprocessor,
void **  node_tab,
u32  node_tab_size,
u32 pu_num_nodes,
u32 pu_allocated 
)

Definition at line 582 of file proc.c.

int proc_flush_memory ( void hprocessor,
void pmpu_addr,
u32  ul_size,
u32  ul_flags 
)

Definition at line 822 of file proc.c.

int proc_get_dev_object ( void hprocessor,
struct dev_object **  device_obj 
)

Definition at line 915 of file proc.c.

int proc_get_processor_id ( void proc,
u32 proc_id 
)

Definition at line 1833 of file proc.c.

int proc_get_resource_info ( void hprocessor,
u32  resource_type,
struct dsp_resourceinfo resource_info,
u32  resource_info_size 
)

Definition at line 847 of file proc.c.

int proc_get_state ( void hprocessor,
struct dsp_processorstate proc_state_obj,
u32  state_info_size 
)

Definition at line 937 of file proc.c.

int proc_get_trace ( void hprocessor,
u8 pbuf,
u32  max_size 
)

Definition at line 992 of file proc.c.

int proc_invalidate_memory ( void hprocessor,
void pmpu_addr,
u32  size 
)

Definition at line 835 of file proc.c.

int proc_load ( void hprocessor,
const s32  argc_index,
const char **  user_args,
const char **  user_envp 
)

Definition at line 1006 of file proc.c.

int proc_map ( void hprocessor,
void pmpu_addr,
u32  ul_size,
void req_addr,
void **  pp_map_addr,
u32  ul_map_attr,
struct process_context pr_ctxt 
)

Definition at line 1266 of file proc.c.

int proc_notify_all_clients ( void proc,
u32  events 
)

Definition at line 1812 of file proc.c.

int proc_notify_clients ( void proc,
u32  events 
)

Definition at line 1791 of file proc.c.

int proc_register_notify ( void hprocessor,
u32  event_mask,
u32  notify_type,
struct dsp_notification hnotification 
)

Definition at line 1350 of file proc.c.

int proc_reserve_memory ( void hprocessor,
u32  ul_size,
void **  pp_rsv_addr,
struct process_context pr_ctxt 
)

Definition at line 1422 of file proc.c.

int proc_start ( void hprocessor)

Definition at line 1471 of file proc.c.

int proc_stop ( void hprocessor)

Definition at line 1542 of file proc.c.

int proc_un_map ( void hprocessor,
void map_addr,
struct process_context pr_ctxt 
)

Definition at line 1598 of file proc.c.

int proc_un_reserve_memory ( void hprocessor,
void prsv_addr,
struct process_context pr_ctxt 
)

Definition at line 1656 of file proc.c.

Variable Documentation

struct device* bridge

Definition at line 56 of file drv_interface.c.