1 #########################################################################
6 # Copyright(c) 2010-2012 Intel Corporation. All rights reserved.
9 # Redistribution and use in source and binary forms, with or without
10 # modification, are permitted provided that the following conditions
13 # * Redistributions of source code must retain the above copyright
14 # notice, this list of conditions and the following disclaimer.
15 # * Redistributions in binary form must reproduce the above copyright
16 # notice, this list of conditions and the following disclaimer in
17 # the documentation and/or other materials provided with the
19 # * Neither the name of Intel Corporation nor the names of its
20 # contributors may be used to endorse or promote products derived
21 # from this software without specific prior written permission.
23 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
24 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
26 # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
27 # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
28 # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
29 # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
31 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
32 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
33 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
35 #########################################################################
36 ########################################################
38 # This file is the configuration for a single dh89xxcc_qa
41 # Each device has up to two accelerators.
42 # - The client may load balance between these
44 # Each accelerator has 8 independent ring banks.
45 # - The interrupt for each can be directed to a
47 # Each ring bank as 16 rings (hardware assisted queues).
49 ########################################################
51 ##############################################
53 ##############################################
56 ServicesEnabled = cy0;cy1
58 # Look Aside Cryptographic Configuration
61 # Look Aside Compression Configuration
62 dcTotalSRAMAvailable = 0
65 # Firmware Location Configuration
66 Firmware_UofPath = uof_firmware.bin
67 Firmware_MmpPath = mmp_firmware.bin
70 Accel0AdminBankNumber = 0
71 Accel0AcceleratorNumber = 0
75 Accel1AcceleratorNumber = 1
76 Accel1AdminBankNumber = 0
80 #Statistics, valid values: 1,0
93 #Debug feature, if set to 1 it enables additional entries in /proc filesystem
97 ################################################
99 # Hardware Access Ring Bank Configuration
100 # Each Accelerator has 8 ring banks (0-7)
101 # If the OS supports MSI-X, each ring bank has an
102 # steerable MSI-x interrupt which may be
103 # affinitized to a particular node/core.
105 ################################################
109 Bank0InterruptCoalescingEnabled = 1
110 Bank0InterruptCoalescingTimerNs = 10000
111 Bank0CoreIDAffinity = 0
112 Bank0InterruptCoalescingNumResponses = 0
114 Bank1InterruptCoalescingEnabled = 1
115 Bank1InterruptCoalescingTimerNs = 10000
116 Bank1CoreIDAffinity = 2
117 Bank1InterruptCoalescingNumResponses = 0
119 Bank2InterruptCoalescingEnabled = 1
120 Bank2InterruptCoalescingTimerNs = 10000
121 Bank2CoreIDAffinity = 4
122 Bank2InterruptCoalescingNumResponses = 0
124 Bank3InterruptCoalescingEnabled = 1
125 Bank3InterruptCoalescingTimerNs = 10000
126 Bank3CoreIDAffinity = 6
127 Bank3InterruptCoalescingNumResponses = 0
129 Bank4InterruptCoalescingEnabled = 1
130 Bank4InterruptCoalescingTimerNs = 10000
131 Bank4CoreIDAffinity = 7
132 Bank4InterruptCoalescingNumResponses = 0
134 Bank5InterruptCoalescingEnabled = 1
135 Bank5InterruptCoalescingTimerNs = 10000
136 Bank5CoreIDAffinity = 7
137 Bank5InterruptCoalescingNumResponses = 0
139 Bank6InterruptCoalescingEnabled = 1
140 Bank6InterruptCoalescingTimerNs = 10000
141 Bank6CoreIDAffinity = 7
142 Bank6InterruptCoalescingNumResponses = 0
144 Bank7InterruptCoalescingEnabled = 1
145 Bank7InterruptCoalescingTimerNs = 10000
146 Bank7CoreIDAffinity = 7
147 Bank7InterruptCoalescingNumResponses = 0
150 Bank0InterruptCoalescingEnabled = 1
151 Bank0InterruptCoalescingTimerNs = 10000
152 Bank0CoreIDAffinity = 1
153 Bank0InterruptCoalescingNumResponses = 0
155 Bank1InterruptCoalescingEnabled = 1
156 Bank1InterruptCoalescingTimerNs = 10000
157 Bank1CoreIDAffinity = 3
158 Bank1InterruptCoalescingNumResponses = 0
160 Bank2InterruptCoalescingEnabled = 1
161 Bank2InterruptCoalescingTimerNs = 10000
162 Bank2CoreIDAffinity = 5
163 Bank2InterruptCoalescingNumResponses = 0
165 Bank3InterruptCoalescingEnabled = 1
166 Bank3InterruptCoalescingTimerNs = 10000
167 Bank3CoreIDAffinity = 7
168 Bank3InterruptCoalescingNumResponses = 0
170 Bank4InterruptCoalescingEnabled = 1
171 Bank4InterruptCoalescingTimerNs = 10000
172 Bank4CoreIDAffinity = 7
173 Bank4InterruptCoalescingNumResponses = 0
175 Bank5InterruptCoalescingEnabled = 1
176 Bank5InterruptCoalescingTimerNs = 10000
177 Bank5CoreIDAffinity = 7
178 Bank5InterruptCoalescingNumResponses = 0
180 Bank6InterruptCoalescingEnabled = 1
181 Bank6InterruptCoalescingTimerNs = 10000
182 Bank6CoreIDAffinity = 7
183 Bank6InterruptCoalescingNumResponses = 0
185 Bank7InterruptCoalescingEnabled = 1
186 Bank7InterruptCoalescingTimerNs = 10000
187 Bank7CoreIDAffinity = 7
188 Bank7InterruptCoalescingNumResponses = 0
190 #######################################################
192 # Logical Instances Section
193 # A logical instance allows each address domain
194 # (kernel space and individual user space processes)
195 # to configure rings (i.e. hardware assisted queues)
196 # to be used by that address domain and to define the
197 # behavior of that ring.
199 # The address domains are in the following format
200 # - For kernel address domains
202 # - For user process address domains
204 # Where xxxxx may be any ascii value which uniquely identifies
205 # the user mode process.
206 # To allow the driver correctly configure the
207 # logical instances associated with this user process,
208 # the process must call the icp_sal_userStart(...)
209 # passing the xxxxx string during process initialisation.
210 # When the user space process is finish it must call
211 # icp_sal_userStop(...) to free resources.
212 # If there are multiple devices present in the system all conf
213 # files that describe the devices must have the same address domain
214 # sections even if the address domain does not configure any instances
215 # on that particular device. So if icp_sal_userStart("xxxxx") is called
216 # then user process address domain [xxxxx] needs to be present in all
217 # conf files for all devices in the system.
219 # Items configurable by a logical instance are:
220 # - Name of the logical instance
221 # - The accelerator associated with this logical
223 # - The ring bank associated with this logical
225 # - The response mode associated wth this logical instance (0
226 # for IRQ or 1 for polled).
227 # - The ring for receiving and the ring for transmitting.
228 # - The number of concurrent requests supported by a pair of
229 # rings on this instance (tx + rx). Note this number affects
230 # the amount of memory allocated by the driver. Also
231 # Bank<n>InterruptCoalescingNumResponses is only supported for
232 # number of concurrent requests equal to 512.
234 # Note: Logical instances may not share the same ring, but
235 # may share a ring bank.
237 # The format of the logical instances are:
240 # Cy<n>AcceleratorNumber = 0|1
241 # Cy<n>BankNumber = 0-7
242 # Cy<n>IsPolled = 0|1
243 # Cy<n>NumConcurrentSymRequests = 64|128|256|512|1024|2048|4096
244 # Cy<n>NumConcurrentAsymRequests = 64|128|256|512|1024|2048|4096
245 # Cy<n>RingAsymTx = 0-15
246 # Cy<n>RingAsymRx = 0-15
247 # Cy<n>RingSymTxHi = 0-15
248 # Cy<n>RingSymRxHi = 0-15
249 # Cy<n>RingSymRx = 0-15
251 # - For Data Compression
253 # Dc<n>AcceleratorNumber = 0|1
254 # Dc<n>BankNumber = 0-7
255 # Dc<n>IsPolled = 0|1
256 # Dc<n>NumConcurrentRequests = 64|128|256|512|1024|2048|4096
261 # - n is the number of this logical instance starting at 0.
262 # - xxxx may be any ascii value which identifies the logical instance.
264 ########################################################
266 ##############################################
267 # Kernel Instances Section
268 ##############################################
270 NumberCyInstances = 0
271 NumberDcInstances = 0
274 ##############################################
275 # User Process Instance Section
276 ##############################################
278 NumberCyInstances = 8
279 NumberDcInstances = 0
281 # Crypto - User instance #0
284 Cy0AcceleratorNumber = 0
285 Cy0ExecutionEngine = 0
287 Cy0NumConcurrentSymRequests = 512
288 Cy0NumConcurrentAsymRequests = 64
297 # Crypto - User instance #1
299 Cy1AcceleratorNumber = 1
300 Cy1ExecutionEngine = 0
303 Cy1NumConcurrentSymRequests = 512
304 Cy1NumConcurrentAsymRequests = 64
313 # Crypto - User instance #2
316 Cy2AcceleratorNumber = 0
317 Cy2ExecutionEngine = 1
319 Cy2NumConcurrentSymRequests = 512
320 Cy2NumConcurrentAsymRequests = 64
329 # Crypto - User instance #3
331 Cy3AcceleratorNumber = 1
332 Cy3ExecutionEngine = 1
335 Cy3NumConcurrentSymRequests = 512
336 Cy3NumConcurrentAsymRequests = 64
346 # Crypto - User instance #4
349 Cy4AcceleratorNumber = 0
350 Cy4ExecutionEngine = 0
352 Cy4NumConcurrentSymRequests = 512
353 Cy4NumConcurrentAsymRequests = 64
362 # Crypto - User instance #5
364 Cy5AcceleratorNumber = 1
365 Cy5ExecutionEngine = 0
368 Cy5NumConcurrentSymRequests = 512
369 Cy5NumConcurrentAsymRequests = 64
378 # Crypto - User instance #6
381 Cy6AcceleratorNumber = 0
382 Cy6ExecutionEngine = 1
384 Cy6NumConcurrentSymRequests = 512
385 Cy6NumConcurrentAsymRequests = 64
394 # Crypto - User instance #7
396 Cy7AcceleratorNumber = 1
397 Cy7ExecutionEngine = 1
400 Cy7NumConcurrentSymRequests = 512
401 Cy7NumConcurrentAsymRequests = 64