1 /*******************************************************************************
2 **
3 *Copyright (c) 2014 PMC-Sierra, Inc. All rights reserved.
4 *
5 *Redistribution and use in source and binary forms, with or without modification, are permitted provided
6 *that the following conditions are met:
7 *1. Redistributions of source code must retain the above copyright notice, this list of conditions and the
8 *following disclaimer.
9 *2. Redistributions in binary form must reproduce the above copyright notice,
10 *this list of conditions and the following disclaimer in the documentation and/or other materials provided
11 *with the distribution.
12 *
13 *THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED
14 *WARRANTIES,INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
15 *FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
16 *FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
17 *NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
18 *BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
19 *LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
20 *SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
21 **
22 * $FreeBSD$
23 *
24 ********************************************************************************/
25 /********************************************************************************
26 * dmapi.h
27 *
28 * Abstract: This module contains function prototype of the Discovery
29 * Module (DM) API for initiator.
30 *******************************************************************************/
31
32 #ifndef DMAPI_H
33 #define DMAPI_H
34
35 #include <dev/pms/RefTisa/discovery/api/dm.h>
36 #include <dev/pms/RefTisa/sallsdk/api/sa.h>
37
38 osGLOBAL bit32 dmCreatePort(
39 dmRoot_t *dmRoot,
40 dmPortContext_t *dmPortContext,
41 dmPortInfo_t *dmPortInfo);
42
43 osGLOBAL bit32 dmDestroyPort(
44 dmRoot_t *dmRoot,
45 dmPortContext_t *dmPortContext,
46 dmPortInfo_t *dmPortInfo);
47
48 osGLOBAL bit32 dmRegisterDevice(
49 dmRoot_t *dmRoot,
50 dmPortContext_t *dmPortContext,
51 dmDeviceInfo_t *dmDeviceInfo,
52 agsaDevHandle_t *agDevHandle);
53
54 osGLOBAL bit32 dmDiscover(
55 dmRoot_t *dmRoot,
56 dmPortContext_t *dmPortContext,
57 bit32 option);
58
59 osGLOBAL void dmGetRequirements(
60 dmRoot_t *dmRoot,
61 dmSwConfig_t *swConfig,
62 dmMemoryRequirement_t *memoryRequirement,
63 bit32 *usecsPerTick,
64 bit32 *maxNumLocks);
65
66 osGLOBAL void dmNotifyBC(
67 dmRoot_t *dmRoot,
68 dmPortContext_t *dmPortContext,
69 bit32 type);
70
71 osGLOBAL bit32 dmQueryDiscovery(
72 dmRoot_t *dmRoot,
73 dmPortContext_t *dmPortContext);
74
75 osGLOBAL bit32
76 dmResetFailedDiscovery(
77 dmRoot_t *dmRoot,
78 dmPortContext_t *dmPortContext);
79
80 osGLOBAL bit32 dmInitialize(
81 dmRoot_t *dmRoot,
82 agsaRoot_t *agRoot,
83 dmMemoryRequirement_t *memoryAllocated,
84 dmSwConfig_t *swConfig,
85 bit32 usecsPerTick );
86
87 osGLOBAL void dmTimerTick ( dmRoot_t *dmRoot );
88
89 #endif /* DMAPI_H */
Cache object: 3c664499f18530bf2142c69ef0e3c8de
|