Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
drivers
staging
tidspbridge
include
dspbridge
dbdcddef.h
Go to the documentation of this file.
1
/*
2
* dbdcddef.h
3
*
4
* DSP-BIOS Bridge driver support functions for TI OMAP processors.
5
*
6
* DCD (DSP/BIOS Bridge Configuration Database) constants and types.
7
*
8
* Copyright (C) 2008 Texas Instruments, Inc.
9
*
10
* This package is free software; you can redistribute it and/or modify
11
* it under the terms of the GNU General Public License version 2 as
12
* published by the Free Software Foundation.
13
*
14
* THIS PACKAGE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
15
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
16
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
17
*/
18
19
#ifndef DBDCDDEF_
20
#define DBDCDDEF_
21
22
#include <
dspbridge/dbdefs.h
>
23
#include <
dspbridge/mgrpriv.h
>
/* for mgr_processorextinfo */
24
25
/*
26
* The following defines are critical elements for the DCD module:
27
*
28
* - DCD_REGKEY enables DCD functions to locate registered DCD objects.
29
* - DCD_REGISTER_SECTION identifies the COFF section where the UUID of
30
* registered DCD objects are stored.
31
*/
32
#define DCD_REGKEY "Software\\TexasInstruments\\DspBridge\\DCD"
33
#define DCD_REGISTER_SECTION ".dcd_register"
34
35
#define DCD_MAXPATHLENGTH 255
36
37
/* DCD Manager Object */
38
struct
dcd_manager
;
39
40
struct
dcd_key_elem
{
41
struct
list_head
link
;
/* Make it linked to a list */
42
char
name
[
DCD_MAXPATHLENGTH
];
/* Name of a given value entry */
43
char
*
path
;
/* Pointer to the actual data */
44
};
45
46
/* DCD Node Properties */
47
struct
dcd_nodeprops
{
48
struct
dsp_ndbprops
ndb_props
;
49
u32
msg_segid
;
50
u32
msg_notify_type
;
51
char
*
str_create_phase_fxn
;
52
char
*
str_delete_phase_fxn
;
53
char
*
str_execute_phase_fxn
;
54
char
*
str_i_alg_name
;
55
56
/* Dynamic load properties */
57
u16
load_type
;
/* Static, dynamic, overlay */
58
u32
data_mem_seg_mask
;
/* Data memory requirements */
59
u32
code_mem_seg_mask
;
/* Code memory requirements */
60
};
61
62
/* DCD Generic Object Type */
63
struct
dcd_genericobj
{
64
union
dcd_obj
{
65
struct
dcd_nodeprops
node_obj
;
/* node object. */
66
/* processor object. */
67
struct
dsp_processorinfo
proc_info
;
68
/* extended proc object (private) */
69
struct
mgr_processorextinfo
ext_proc_obj
;
70
}
obj_data
;
71
};
72
73
/* DCD Internal Callback Type */
74
typedef
int
(*
dcd_registerfxn
) (
struct
dsp_uuid
*uuid_obj,
75
enum
dsp_dcdobjtype
obj_type,
76
void
*
handle
);
77
78
#endif
/* DBDCDDEF_ */
Generated on Thu Jan 10 2013 14:32:02 for Linux Kernel by
1.8.2