diff options
455 files changed, 20415 insertions, 8308 deletions
diff --git a/Documentation/RCU/checklist.txt b/Documentation/RCU/checklist.txt index 6e253407b3dc..accfe2f5247d 100644 --- a/Documentation/RCU/checklist.txt +++ b/Documentation/RCU/checklist.txt | |||
@@ -298,3 +298,15 @@ over a rather long period of time, but improvements are always welcome! | |||
298 | 298 | ||
299 | Note that, rcu_assign_pointer() and rcu_dereference() relate to | 299 | Note that, rcu_assign_pointer() and rcu_dereference() relate to |
300 | SRCU just as they do to other forms of RCU. | 300 | SRCU just as they do to other forms of RCU. |
301 | |||
302 | 15. The whole point of call_rcu(), synchronize_rcu(), and friends | ||
303 | is to wait until all pre-existing readers have finished before | ||
304 | carrying out some otherwise-destructive operation. It is | ||
305 | therefore critically important to -first- remove any path | ||
306 | that readers can follow that could be affected by the | ||
307 | destructive operation, and -only- -then- invoke call_rcu(), | ||
308 | synchronize_rcu(), or friends. | ||
309 | |||
310 | Because these primitives only wait for pre-existing readers, | ||
311 | it is the caller's responsibility to guarantee safety to | ||
312 | any subsequent readers. | ||
diff --git a/Documentation/feature-removal-schedule.txt b/Documentation/feature-removal-schedule.txt index 5ddbe350487a..20d3b94703a4 100644 --- a/Documentation/feature-removal-schedule.txt +++ b/Documentation/feature-removal-schedule.txt | |||
@@ -335,3 +335,12 @@ Why: In 2.6.18 the Secmark concept was introduced to replace the "compat_net" | |||
335 | Secmark, it is time to deprecate the older mechanism and start the | 335 | Secmark, it is time to deprecate the older mechanism and start the |
336 | process of removing the old code. | 336 | process of removing the old code. |
337 | Who: Paul Moore <paul.moore@hp.com> | 337 | Who: Paul Moore <paul.moore@hp.com> |
338 | --------------------------- | ||
339 | |||
340 | What: sysfs ui for changing p4-clockmod parameters | ||
341 | When: September 2009 | ||
342 | Why: See commits 129f8ae9b1b5be94517da76009ea956e89104ce8 and | ||
343 | e088e4c9cdb618675874becb91b2fd581ee707e6. | ||
344 | Removal is subject to fixing any remaining bugs in ACPI which may | ||
345 | cause the thermal throttling not to happen at the right time. | ||
346 | Who: Dave Jones <davej@redhat.com>, Matthew Garrett <mjg@redhat.com> | ||
diff --git a/Documentation/filesystems/ext2.txt b/Documentation/filesystems/ext2.txt index 4333e836c495..23448551cabe 100644 --- a/Documentation/filesystems/ext2.txt +++ b/Documentation/filesystems/ext2.txt | |||
@@ -373,10 +373,10 @@ Filesystem Resizing http://ext2resize.sourceforge.net/ | |||
373 | Compression (*) http://e2compr.sourceforge.net/ | 373 | Compression (*) http://e2compr.sourceforge.net/ |
374 | 374 | ||
375 | Implementations for: | 375 | Implementations for: |
376 | Windows 95/98/NT/2000 http://uranus.it.swin.edu.au/~jn/linux/Explore2fs.htm | 376 | Windows 95/98/NT/2000 http://www.chrysocome.net/explore2fs |
377 | Windows 95 (*) http://www.yipton.demon.co.uk/content.html#FSDEXT2 | 377 | Windows 95 (*) http://www.yipton.net/content.html#FSDEXT2 |
378 | DOS client (*) ftp://metalab.unc.edu/pub/Linux/system/filesystems/ext2/ | 378 | DOS client (*) ftp://metalab.unc.edu/pub/Linux/system/filesystems/ext2/ |
379 | OS/2 http://perso.wanadoo.fr/matthieu.willm/ext2-os2/ | 379 | OS/2 (*) ftp://metalab.unc.edu/pub/Linux/system/filesystems/ext2/ |
380 | RISC OS client ftp://ftp.barnet.ac.uk/pub/acorn/armlinux/iscafs/ | 380 | RISC OS client http://www.esw-heim.tu-clausthal.de/~marco/smorbrod/IscaFS/ |
381 | 381 | ||
382 | (*) no longer actively developed/supported (as of Apr 2001) | 382 | (*) no longer actively developed/supported (as of Mar 2009) |
diff --git a/Documentation/filesystems/ext3.txt b/Documentation/filesystems/ext3.txt index 9dd2a3bb2acc..e5f3833a6ef8 100644 --- a/Documentation/filesystems/ext3.txt +++ b/Documentation/filesystems/ext3.txt | |||
@@ -198,5 +198,5 @@ kernel source: <file:fs/ext3/> | |||
198 | programs: http://e2fsprogs.sourceforge.net/ | 198 | programs: http://e2fsprogs.sourceforge.net/ |
199 | http://ext2resize.sourceforge.net | 199 | http://ext2resize.sourceforge.net |
200 | 200 | ||
201 | useful links: http://www-106.ibm.com/developerworks/linux/library/l-fs7/ | 201 | useful links: http://www.ibm.com/developerworks/library/l-fs7.html |
202 | http://www-106.ibm.com/developerworks/linux/library/l-fs8/ | 202 | http://www.ibm.com/developerworks/library/l-fs8.html |
diff --git a/Documentation/filesystems/squashfs.txt b/Documentation/filesystems/squashfs.txt index 3e79e4a7a392..b324c033035a 100644 --- a/Documentation/filesystems/squashfs.txt +++ b/Documentation/filesystems/squashfs.txt | |||
@@ -22,7 +22,7 @@ Squashfs filesystem features versus Cramfs: | |||
22 | 22 | ||
23 | Squashfs Cramfs | 23 | Squashfs Cramfs |
24 | 24 | ||
25 | Max filesystem size: 2^64 16 MiB | 25 | Max filesystem size: 2^64 256 MiB |
26 | Max file size: ~ 2 TiB 16 MiB | 26 | Max file size: ~ 2 TiB 16 MiB |
27 | Max files: unlimited unlimited | 27 | Max files: unlimited unlimited |
28 | Max directories: unlimited unlimited | 28 | Max directories: unlimited unlimited |
diff --git a/Documentation/hwmon/lm90 b/Documentation/hwmon/lm90 index 0e8411710238..93d8e3d55150 100644 --- a/Documentation/hwmon/lm90 +++ b/Documentation/hwmon/lm90 | |||
@@ -42,6 +42,11 @@ Supported chips: | |||
42 | Addresses scanned: I2C 0x4e | 42 | Addresses scanned: I2C 0x4e |
43 | Datasheet: Publicly available at the Maxim website | 43 | Datasheet: Publicly available at the Maxim website |
44 | http://www.maxim-ic.com/quick_view2.cfm/qv_pk/3497 | 44 | http://www.maxim-ic.com/quick_view2.cfm/qv_pk/3497 |
45 | * Maxim MAX6648 | ||
46 | Prefix: 'max6646' | ||
47 | Addresses scanned: I2C 0x4c | ||
48 | Datasheet: Publicly available at the Maxim website | ||
49 | http://www.maxim-ic.com/quick_view2.cfm/qv_pk/3500 | ||
45 | * Maxim MAX6649 | 50 | * Maxim MAX6649 |
46 | Prefix: 'max6646' | 51 | Prefix: 'max6646' |
47 | Addresses scanned: I2C 0x4c | 52 | Addresses scanned: I2C 0x4c |
@@ -74,6 +79,11 @@ Supported chips: | |||
74 | 0x4c, 0x4d and 0x4e | 79 | 0x4c, 0x4d and 0x4e |
75 | Datasheet: Publicly available at the Maxim website | 80 | Datasheet: Publicly available at the Maxim website |
76 | http://www.maxim-ic.com/quick_view2.cfm/qv_pk/3370 | 81 | http://www.maxim-ic.com/quick_view2.cfm/qv_pk/3370 |
82 | * Maxim MAX6692 | ||
83 | Prefix: 'max6646' | ||
84 | Addresses scanned: I2C 0x4c | ||
85 | Datasheet: Publicly available at the Maxim website | ||
86 | http://www.maxim-ic.com/quick_view2.cfm/qv_pk/3500 | ||
77 | 87 | ||
78 | 88 | ||
79 | Author: Jean Delvare <khali@linux-fr.org> | 89 | Author: Jean Delvare <khali@linux-fr.org> |
diff --git a/Documentation/logo.gif b/Documentation/logo.gif deleted file mode 100644 index 2eae75fecfb9..000000000000 --- a/Documentation/logo.gif +++ /dev/null | |||
Binary files differ | |||
diff --git a/Documentation/logo.svg b/Documentation/logo.svg new file mode 100644 index 000000000000..cb9e4851d8c3 --- /dev/null +++ b/Documentation/logo.svg | |||
@@ -0,0 +1,2911 @@ | |||
1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?> | ||
2 | <!-- Created with Inkscape (http://www.inkscape.org/) --> | ||
3 | <svg | ||
4 | xmlns:dc="http://purl.org/dc/elements/1.1/" | ||
5 | xmlns:cc="http://creativecommons.org/ns#" | ||
6 | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | ||
7 | xmlns:svg="http://www.w3.org/2000/svg" | ||
8 | xmlns="http://www.w3.org/2000/svg" | ||
9 | xmlns:xlink="http://www.w3.org/1999/xlink" | ||
10 | xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" | ||
11 | xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" | ||
12 | width="1771.6534" | ||
13 | height="1417.3228" | ||
14 | id="svg2" | ||
15 | sodipodi:version="0.32" | ||
16 | inkscape:version="0.46" | ||
17 | sodipodi:docname="tuz.svg" | ||
18 | inkscape:output_extension="org.inkscape.output.svg.inkscape" | ||
19 | version="1.0" | ||
20 | style="display:inline;enable-background:new" | ||
21 | inkscape:export-filename="/home/cheeseness/Documents/LCA09/mascot/tuz_final.png" | ||
22 | inkscape:export-xdpi="100.03588" | ||
23 | inkscape:export-ydpi="100.03588"> | ||
24 | <sodipodi:namedview | ||
25 | id="base" | ||
26 | pagecolor="#ffffff" | ||
27 | bordercolor="#666666" | ||
28 | borderopacity="1.0" | ||
29 | gridtolerance="10000" | ||
30 | guidetolerance="10" | ||
31 | objecttolerance="10" | ||
32 | inkscape:pageopacity="0.0" | ||
33 | inkscape:pageshadow="2" | ||
34 | inkscape:zoom="0.25" | ||
35 | inkscape:cx="-174.7931" | ||
36 | inkscape:cy="784.26325" | ||
37 | inkscape:document-units="px" | ||
38 | inkscape:current-layer="svg2" | ||
39 | showgrid="false" | ||
40 | inkscape:window-width="1280" | ||
41 | inkscape:window-height="823" | ||
42 | inkscape:window-x="-4" | ||
43 | inkscape:window-y="25" | ||
44 | showguides="true" | ||
45 | inkscape:guide-bbox="true" | ||
46 | units="mm" /> | ||
47 | <defs | ||
48 | id="defs4"> | ||
49 | <filter | ||
50 | inkscape:collect="always" | ||
51 | x="-0.084654994" | ||
52 | width="1.16931" | ||
53 | y="-0.36592469" | ||
54 | height="1.7318494" | ||
55 | id="filter11361"> | ||
56 | <feGaussianBlur | ||
57 | inkscape:collect="always" | ||
58 | stdDeviation="4.5740586" | ||
59 | id="feGaussianBlur11363" /> | ||
60 | </filter> | ||
61 | <inkscape:perspective | ||
62 | sodipodi:type="inkscape:persp3d" | ||
63 | inkscape:vp_x="0 : 564.0976 : 1" | ||
64 | inkscape:vp_y="0 : 1000 : 0" | ||
65 | inkscape:vp_z="1445.8591 : 564.0976 : 1" | ||
66 | inkscape:persp3d-origin="722.92957 : 376.06506 : 1" | ||
67 | id="perspective8145" /> | ||
68 | <linearGradient | ||
69 | id="linearGradient7622"> | ||
70 | <stop | ||
71 | style="stop-color:#ffffff;stop-opacity:1;" | ||
72 | offset="0" | ||
73 | id="stop7624" /> | ||
74 | <stop | ||
75 | style="stop-color:#ffffff;stop-opacity:0;" | ||
76 | offset="1" | ||
77 | id="stop7626" /> | ||
78 | </linearGradient> | ||
79 | <linearGradient | ||
80 | id="linearGradient4113"> | ||
81 | <stop | ||
82 | style="stop-color:#000000;stop-opacity:0;" | ||
83 | offset="0" | ||
84 | id="stop4115" /> | ||
85 | <stop | ||
86 | style="stop-color:#000000;stop-opacity:1;" | ||
87 | offset="1" | ||
88 | id="stop4117" /> | ||
89 | </linearGradient> | ||
90 | <linearGradient | ||
91 | inkscape:collect="always" | ||
92 | id="linearGradient3660"> | ||
93 | <stop | ||
94 | style="stop-color:#ffffff;stop-opacity:1;" | ||
95 | offset="0" | ||
96 | id="stop3662" /> | ||
97 | <stop | ||
98 | style="stop-color:#ffffff;stop-opacity:0;" | ||
99 | offset="1" | ||
100 | id="stop3664" /> | ||
101 | </linearGradient> | ||
102 | <linearGradient | ||
103 | id="linearGradient3627"> | ||
104 | <stop | ||
105 | style="stop-color:#ffffff;stop-opacity:1;" | ||
106 | offset="0" | ||
107 | id="stop3629" /> | ||
108 | <stop | ||
109 | style="stop-color:#000000;stop-opacity:1;" | ||
110 | offset="1" | ||
111 | id="stop3631" /> | ||
112 | </linearGradient> | ||
113 | <linearGradient | ||
114 | id="linearGradient2843"> | ||
115 | <stop | ||
116 | id="stop2845" | ||
117 | offset="0" | ||
118 | style="stop-color:#000000;stop-opacity:1;" /> | ||
119 | <stop | ||
120 | style="stop-color:#000000;stop-opacity:1;" | ||
121 | offset="0.02188784" | ||
122 | id="stop2847" /> | ||
123 | <stop | ||
124 | style="stop-color:#000000;stop-opacity:1;" | ||
125 | offset="0.75866222" | ||
126 | id="stop2849" /> | ||
127 | <stop | ||
128 | id="stop2851" | ||
129 | offset="0.88508981" | ||
130 | style="stop-color:#232323;stop-opacity:1;" /> | ||
131 | <stop | ||
132 | id="stop2853" | ||
133 | offset="1" | ||
134 | style="stop-color:#595959;stop-opacity:1;" /> | ||
135 | </linearGradient> | ||
136 | <linearGradient | ||
137 | inkscape:collect="always" | ||
138 | id="linearGradient8964"> | ||
139 | <stop | ||
140 | style="stop-color:#1a1a1a;stop-opacity:1;" | ||
141 | offset="0" | ||
142 | id="stop8966" /> | ||
143 | <stop | ||
144 | style="stop-color:#1a1a1a;stop-opacity:0;" | ||
145 | offset="1" | ||
146 | id="stop8968" /> | ||
147 | </linearGradient> | ||
148 | <linearGradient | ||
149 | id="linearGradient8952"> | ||
150 | <stop | ||
151 | style="stop-color:#0a0c0c;stop-opacity:1;" | ||
152 | offset="0" | ||
153 | id="stop8954" /> | ||
154 | <stop | ||
155 | style="stop-color:#1f2727;stop-opacity:0;" | ||
156 | offset="1" | ||
157 | id="stop8956" /> | ||
158 | </linearGradient> | ||
159 | <linearGradient | ||
160 | id="linearGradient8430"> | ||
161 | <stop | ||
162 | style="stop-color:#1e2323;stop-opacity:1;" | ||
163 | offset="0" | ||
164 | id="stop8432" /> | ||
165 | <stop | ||
166 | id="stop8438" | ||
167 | offset="0.55992389" | ||
168 | style="stop-color:#181d1d;stop-opacity:1;" /> | ||
169 | <stop | ||
170 | style="stop-color:#000000;stop-opacity:1;" | ||
171 | offset="1" | ||
172 | id="stop8434" /> | ||
173 | </linearGradient> | ||
174 | <linearGradient | ||
175 | id="linearGradient8398"> | ||
176 | <stop | ||
177 | style="stop-color:#283131;stop-opacity:0;" | ||
178 | offset="0" | ||
179 | id="stop8400" /> | ||
180 | <stop | ||
181 | id="stop8402" | ||
182 | offset="0.5125587" | ||
183 | style="stop-color:#1e2424;stop-opacity:0;" /> | ||
184 | <stop | ||
185 | style="stop-color:#000000;stop-opacity:1;" | ||
186 | offset="1" | ||
187 | id="stop8404" /> | ||
188 | </linearGradient> | ||
189 | <linearGradient | ||
190 | inkscape:collect="always" | ||
191 | id="linearGradient4870"> | ||
192 | <stop | ||
193 | style="stop-color:#c7bd80;stop-opacity:1;" | ||
194 | offset="0" | ||
195 | id="stop4872" /> | ||
196 | <stop | ||
197 | style="stop-color:#c7bd80;stop-opacity:0;" | ||
198 | offset="1" | ||
199 | id="stop4874" /> | ||
200 | </linearGradient> | ||
201 | <linearGradient | ||
202 | inkscape:collect="always" | ||
203 | id="linearGradient4862"> | ||
204 | <stop | ||
205 | style="stop-color:#e2e2e2;stop-opacity:1;" | ||
206 | offset="0" | ||
207 | id="stop4864" /> | ||
208 | <stop | ||
209 | style="stop-color:#e2e2e2;stop-opacity:0;" | ||
210 | offset="1" | ||
211 | id="stop4866" /> | ||
212 | </linearGradient> | ||
213 | <linearGradient | ||
214 | id="linearGradient4478"> | ||
215 | <stop | ||
216 | style="stop-color:#f9eed3;stop-opacity:1;" | ||
217 | offset="0" | ||
218 | id="stop4480" /> | ||
219 | <stop | ||
220 | style="stop-color:#000000;stop-opacity:0;" | ||
221 | offset="1" | ||
222 | id="stop4482" /> | ||
223 | </linearGradient> | ||
224 | <linearGradient | ||
225 | id="linearGradient4106"> | ||
226 | <stop | ||
227 | style="stop-color:#d9e002;stop-opacity:1;" | ||
228 | offset="0" | ||
229 | id="stop4108" /> | ||
230 | <stop | ||
231 | id="stop4114" | ||
232 | offset="0.5" | ||
233 | style="stop-color:#a9ae01;stop-opacity:1;" /> | ||
234 | <stop | ||
235 | style="stop-color:#717501;stop-opacity:1;" | ||
236 | offset="1" | ||
237 | id="stop4110" /> | ||
238 | </linearGradient> | ||
239 | <linearGradient | ||
240 | id="linearGradient4084"> | ||
241 | <stop | ||
242 | style="stop-color:#7d7d00;stop-opacity:1;" | ||
243 | offset="0" | ||
244 | id="stop4086" /> | ||
245 | <stop | ||
246 | id="stop4088" | ||
247 | offset="0.3636601" | ||
248 | style="stop-color:#c6c700;stop-opacity:1;" /> | ||
249 | <stop | ||
250 | style="stop-color:#f6f800;stop-opacity:1;" | ||
251 | offset="1" | ||
252 | id="stop4090" /> | ||
253 | </linearGradient> | ||
254 | <linearGradient | ||
255 | id="linearGradient4041"> | ||
256 | <stop | ||
257 | id="stop4043" | ||
258 | offset="0" | ||
259 | style="stop-color:#ffff00;stop-opacity:1;" /> | ||
260 | <stop | ||
261 | id="stop4045" | ||
262 | offset="1" | ||
263 | style="stop-color:#ffff00;stop-opacity:0;" /> | ||
264 | </linearGradient> | ||
265 | <linearGradient | ||
266 | id="linearGradient4025"> | ||
267 | <stop | ||
268 | style="stop-color:#ffffff;stop-opacity:1;" | ||
269 | offset="0" | ||
270 | id="stop4027" /> | ||
271 | <stop | ||
272 | style="stop-color:#ffffff;stop-opacity:0;" | ||
273 | offset="1" | ||
274 | id="stop4031" /> | ||
275 | </linearGradient> | ||
276 | <linearGradient | ||
277 | id="linearGradient4013"> | ||
278 | <stop | ||
279 | style="stop-color:#ffff00;stop-opacity:1;" | ||
280 | offset="0" | ||
281 | id="stop4015" /> | ||
282 | <stop | ||
283 | style="stop-color:#b2b200;stop-opacity:1;" | ||
284 | offset="1" | ||
285 | id="stop4017" /> | ||
286 | </linearGradient> | ||
287 | <linearGradient | ||
288 | id="linearGradient3985"> | ||
289 | <stop | ||
290 | style="stop-color:#000000;stop-opacity:1;" | ||
291 | offset="0" | ||
292 | id="stop3987" /> | ||
293 | <stop | ||
294 | style="stop-color:#1d1d1d;stop-opacity:1;" | ||
295 | offset="1" | ||
296 | id="stop3989" /> | ||
297 | </linearGradient> | ||
298 | <linearGradient | ||
299 | id="linearGradient3961"> | ||
300 | <stop | ||
301 | style="stop-color:#283131;stop-opacity:0;" | ||
302 | offset="0" | ||
303 | id="stop3963" /> | ||
304 | <stop | ||
305 | id="stop3965" | ||
306 | offset="0.5" | ||
307 | style="stop-color:#1e2424;stop-opacity:1;" /> | ||
308 | <stop | ||
309 | style="stop-color:#000000;stop-opacity:1;" | ||
310 | offset="1" | ||
311 | id="stop3967" /> | ||
312 | </linearGradient> | ||
313 | <linearGradient | ||
314 | id="linearGradient3951"> | ||
315 | <stop | ||
316 | id="stop3953" | ||
317 | offset="0" | ||
318 | style="stop-color:#344040;stop-opacity:1;" /> | ||
319 | <stop | ||
320 | style="stop-color:#222929;stop-opacity:1;" | ||
321 | offset="0.5" | ||
322 | id="stop3955" /> | ||
323 | <stop | ||
324 | id="stop3957" | ||
325 | offset="1" | ||
326 | style="stop-color:#000000;stop-opacity:1;" /> | ||
327 | </linearGradient> | ||
328 | <linearGradient | ||
329 | id="linearGradient3909"> | ||
330 | <stop | ||
331 | style="stop-color:#283131;stop-opacity:1;" | ||
332 | offset="0" | ||
333 | id="stop3911" /> | ||
334 | <stop | ||
335 | id="stop3917" | ||
336 | offset="0.5" | ||
337 | style="stop-color:#1e2424;stop-opacity:1;" /> | ||
338 | <stop | ||
339 | style="stop-color:#000000;stop-opacity:1;" | ||
340 | offset="1" | ||
341 | id="stop3913" /> | ||
342 | </linearGradient> | ||
343 | <linearGradient | ||
344 | id="linearGradient3537"> | ||
345 | <stop | ||
346 | style="stop-color:#ada469;stop-opacity:1;" | ||
347 | offset="0" | ||
348 | id="stop3539" /> | ||
349 | <stop | ||
350 | id="stop3545" | ||
351 | offset="0.81132078" | ||
352 | style="stop-color:#ada469;stop-opacity:1;" /> | ||
353 | <stop | ||
354 | style="stop-color:#ffffff;stop-opacity:1;" | ||
355 | offset="1" | ||
356 | id="stop3541" /> | ||
357 | </linearGradient> | ||
358 | <linearGradient | ||
359 | id="linearGradient3317"> | ||
360 | <stop | ||
361 | style="stop-color:#cfc690;stop-opacity:1" | ||
362 | offset="0" | ||
363 | id="stop3319" /> | ||
364 | <stop | ||
365 | id="stop3321" | ||
366 | offset="0.21161865" | ||
367 | style="stop-color:#afa775;stop-opacity:1;" /> | ||
368 | <stop | ||
369 | id="stop3323" | ||
370 | offset="0.53408515" | ||
371 | style="stop-color:#615c3a;stop-opacity:1;" /> | ||
372 | <stop | ||
373 | style="stop-color:#000000;stop-opacity:1;" | ||
374 | offset="0.76504093" | ||
375 | id="stop3325" /> | ||
376 | <stop | ||
377 | id="stop3327" | ||
378 | offset="1" | ||
379 | style="stop-color:#403518;stop-opacity:1;" /> | ||
380 | </linearGradient> | ||
381 | <linearGradient | ||
382 | id="linearGradient3239"> | ||
383 | <stop | ||
384 | id="stop3251" | ||
385 | offset="0" | ||
386 | style="stop-color:#cfc690;stop-opacity:1;" /> | ||
387 | <stop | ||
388 | style="stop-color:#afa775;stop-opacity:1;" | ||
389 | offset="0.21161865" | ||
390 | id="stop3267" /> | ||
391 | <stop | ||
392 | style="stop-color:#615c3a;stop-opacity:1;" | ||
393 | offset="0.53408515" | ||
394 | id="stop3261" /> | ||
395 | <stop | ||
396 | id="stop3265" | ||
397 | offset="0.76504093" | ||
398 | style="stop-color:#000000;stop-opacity:1;" /> | ||
399 | <stop | ||
400 | style="stop-color:#403518;stop-opacity:1;" | ||
401 | offset="1" | ||
402 | id="stop3243" /> | ||
403 | </linearGradient> | ||
404 | <radialGradient | ||
405 | inkscape:collect="always" | ||
406 | xlink:href="#linearGradient3239" | ||
407 | id="radialGradient3281" | ||
408 | gradientUnits="userSpaceOnUse" | ||
409 | gradientTransform="matrix(1.5480423,1.7414304,-1.9683515,1.7497638,-1130.5586,-1872.5121)" | ||
410 | spreadMethod="pad" | ||
411 | cx="806.52582" | ||
412 | cy="212.68117" | ||
413 | fx="806.52582" | ||
414 | fy="212.68117" | ||
415 | r="48.363216" /> | ||
416 | <radialGradient | ||
417 | inkscape:collect="always" | ||
418 | xlink:href="#linearGradient3317" | ||
419 | id="radialGradient3315" | ||
420 | cx="543.6698" | ||
421 | cy="147.3131" | ||
422 | fx="543.6698" | ||
423 | fy="147.3131" | ||
424 | r="47.863216" | ||
425 | gradientTransform="matrix(2.1382256,0,0,2.3382884,-77.03847,-101.68704)" | ||
426 | gradientUnits="userSpaceOnUse" /> | ||
427 | <radialGradient | ||
428 | inkscape:collect="always" | ||
429 | xlink:href="#linearGradient3537" | ||
430 | id="radialGradient3543" | ||
431 | cx="385" | ||
432 | cy="237.00504" | ||
433 | fx="385" | ||
434 | fy="237.00504" | ||
435 | r="86.928574" | ||
436 | gradientTransform="matrix(1,0,0,0.8562038,0,34.080427)" | ||
437 | gradientUnits="userSpaceOnUse" /> | ||
438 | <radialGradient | ||
439 | inkscape:collect="always" | ||
440 | xlink:href="#linearGradient3909" | ||
441 | id="radialGradient3915" | ||
442 | cx="418.30365" | ||
443 | cy="342.47794" | ||
444 | fx="418.30365" | ||
445 | fy="342.47794" | ||
446 | r="131.4509" | ||
447 | gradientTransform="matrix(1.3957347,0.6211056,-0.4244067,0.9537174,-15.061913,-227.96711)" | ||
448 | gradientUnits="userSpaceOnUse" /> | ||
449 | <radialGradient | ||
450 | inkscape:collect="always" | ||
451 | xlink:href="#linearGradient3951" | ||
452 | id="radialGradient3933" | ||
453 | cx="397.16388" | ||
454 | cy="336.95245" | ||
455 | fx="397.16388" | ||
456 | fy="336.95245" | ||
457 | r="36.75" | ||
458 | gradientUnits="userSpaceOnUse" | ||
459 | gradientTransform="matrix(1.9449972,2.4894837e-7,-2.4894833e-7,1.9449969,-375.31868,-318.41912)" /> | ||
460 | <linearGradient | ||
461 | inkscape:collect="always" | ||
462 | xlink:href="#linearGradient3961" | ||
463 | id="linearGradient3959" | ||
464 | x1="398.21429" | ||
465 | y1="343.52289" | ||
466 | x2="379.28571" | ||
467 | y2="265.30862" | ||
468 | gradientUnits="userSpaceOnUse" | ||
469 | gradientTransform="translate(450.03125,73.843964)" /> | ||
470 | <filter | ||
471 | inkscape:collect="always" | ||
472 | id="filter3981" | ||
473 | x="-0.30000001" | ||
474 | width="1.6" | ||
475 | y="-0.30000001" | ||
476 | height="1.6"> | ||
477 | <feGaussianBlur | ||
478 | inkscape:collect="always" | ||
479 | stdDeviation="2" | ||
480 | id="feGaussianBlur3983" /> | ||
481 | </filter> | ||
482 | <radialGradient | ||
483 | inkscape:collect="always" | ||
484 | xlink:href="#linearGradient3985" | ||
485 | id="radialGradient3991" | ||
486 | cx="402.48898" | ||
487 | cy="317.23578" | ||
488 | fx="402.48898" | ||
489 | fy="317.23578" | ||
490 | r="23.714285" | ||
491 | gradientUnits="userSpaceOnUse" | ||
492 | gradientTransform="matrix(4.3776616,0,0,4.3776616,-1358.3025,-1070.7357)" /> | ||
493 | <clipPath | ||
494 | clipPathUnits="userSpaceOnUse" | ||
495 | id="clipPath3999"> | ||
496 | <path | ||
497 | style="opacity:1;fill:#f5ff04;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:20.79999924;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" | ||
498 | d="M 179.64286,267.36218 C 157.23242,307.0651 119.02676,383.14247 110.35715,417.00504 C 101.70994,450.78014 101.58516,483.42158 110,503.43362 C 118.3602,523.31575 136.16398,539.06642 150.71428,544.86218 C 150.1179,530.48631 165.08723,501.57635 223.57143,472.36218 C 282.1977,443.07704 301.95306,445.23132 327.14285,425.21932 C 352.77291,404.85756 339.75316,358.17469 330.35714,331.29075 C 320.9229,304.29747 295.38973,272.16627 263.92857,261.6479 C 232.8953,251.27258 198.91081,256.79953 179.64286,267.36218 z" | ||
499 | id="path4001" | ||
500 | sodipodi:nodetypes="czzczzzzc" /> | ||
501 | </clipPath> | ||
502 | <radialGradient | ||
503 | inkscape:collect="always" | ||
504 | xlink:href="#linearGradient4013" | ||
505 | id="radialGradient4056" | ||
506 | gradientUnits="userSpaceOnUse" | ||
507 | gradientTransform="matrix(1.1323239,0.7659488,-1.4550286,2.1510098,588.75376,-711.79716)" | ||
508 | cx="228.81355" | ||
509 | cy="440.26971" | ||
510 | fx="228.81355" | ||
511 | fy="440.26971" | ||
512 | r="119.17509" /> | ||
513 | <radialGradient | ||
514 | inkscape:collect="always" | ||
515 | xlink:href="#linearGradient4041" | ||
516 | id="radialGradient4060" | ||
517 | gradientUnits="userSpaceOnUse" | ||
518 | gradientTransform="matrix(5.911206e-2,2.6869855,-0.7234268,1.5914947e-2,408.72779,-424.56452)" | ||
519 | cx="275.4422" | ||
520 | cy="335.34866" | ||
521 | fx="275.4422" | ||
522 | fy="335.34866" | ||
523 | r="36.75" /> | ||
524 | <radialGradient | ||
525 | inkscape:collect="always" | ||
526 | xlink:href="#linearGradient4025" | ||
527 | id="radialGradient4062" | ||
528 | gradientUnits="userSpaceOnUse" | ||
529 | gradientTransform="matrix(5.911206e-2,2.6869855,-0.7234268,1.5914947e-2,408.72779,-424.56452)" | ||
530 | cx="275.4422" | ||
531 | cy="335.34866" | ||
532 | fx="275.4422" | ||
533 | fy="335.34866" | ||
534 | r="36.75" /> | ||
535 | <linearGradient | ||
536 | inkscape:collect="always" | ||
537 | xlink:href="#linearGradient4084" | ||
538 | id="linearGradient4082" | ||
539 | gradientUnits="userSpaceOnUse" | ||
540 | x1="182.35046" | ||
541 | y1="256.11136" | ||
542 | x2="145.53348" | ||
543 | y2="542.20502" /> | ||
544 | <clipPath | ||
545 | clipPathUnits="userSpaceOnUse" | ||
546 | id="clipPath4100"> | ||
547 | <path | ||
548 | style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.9000755px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" | ||
549 | d="M 265.93541,126.68393 L 247.1682,295.54701 L 421.27363,222.42633 L 483.22803,311.08516 L 541.11243,279.09486 L 503.57801,99.035183 L 265.93541,126.68393 z" | ||
550 | id="path4102" | ||
551 | sodipodi:nodetypes="ccccccc" /> | ||
552 | </clipPath> | ||
553 | <radialGradient | ||
554 | inkscape:collect="always" | ||
555 | xlink:href="#linearGradient4106" | ||
556 | id="radialGradient4112" | ||
557 | cx="250.22678" | ||
558 | cy="475.09763" | ||
559 | fx="250.22678" | ||
560 | fy="475.09763" | ||
561 | r="95.98877" | ||
562 | gradientTransform="matrix(1.2259004,-0.7077739,0.1413989,0.2449102,322.22326,608.91815)" | ||
563 | gradientUnits="userSpaceOnUse" /> | ||
564 | <linearGradient | ||
565 | inkscape:collect="always" | ||
566 | xlink:href="#linearGradient4478" | ||
567 | id="linearGradient4484" | ||
568 | x1="412.08926" | ||
569 | y1="404.91574" | ||
570 | x2="417.375" | ||
571 | y2="401.82648" | ||
572 | gradientUnits="userSpaceOnUse" /> | ||
573 | <linearGradient | ||
574 | inkscape:collect="always" | ||
575 | xlink:href="#linearGradient4478" | ||
576 | id="linearGradient4486" | ||
577 | x1="411.91071" | ||
578 | y1="404.91577" | ||
579 | x2="417.375" | ||
580 | y2="401.82648" | ||
581 | gradientUnits="userSpaceOnUse" /> | ||
582 | <linearGradient | ||
583 | inkscape:collect="always" | ||
584 | xlink:href="#linearGradient4478" | ||
585 | id="linearGradient4488" | ||
586 | x1="411.91071" | ||
587 | y1="405.54077" | ||
588 | x2="417.375" | ||
589 | y2="401.82648" | ||
590 | gradientUnits="userSpaceOnUse" /> | ||
591 | <linearGradient | ||
592 | inkscape:collect="always" | ||
593 | xlink:href="#linearGradient4478" | ||
594 | id="linearGradient4490" | ||
595 | x1="412.08926" | ||
596 | y1="405.54077" | ||
597 | x2="417.375" | ||
598 | y2="401.82648" | ||
599 | gradientUnits="userSpaceOnUse" /> | ||
600 | <linearGradient | ||
601 | inkscape:collect="always" | ||
602 | xlink:href="#linearGradient4478" | ||
603 | id="linearGradient4492" | ||
604 | x1="411.73212" | ||
605 | y1="405.54077" | ||
606 | x2="417.375" | ||
607 | y2="401.82648" | ||
608 | gradientUnits="userSpaceOnUse" /> | ||
609 | <radialGradient | ||
610 | inkscape:collect="always" | ||
611 | xlink:href="#linearGradient4862" | ||
612 | id="radialGradient4868" | ||
613 | cx="429.56738" | ||
614 | cy="377.42877" | ||
615 | fx="429.56738" | ||
616 | fy="377.42877" | ||
617 | r="72.079735" | ||
618 | gradientTransform="matrix(1,0,0,0.618034,0,144.16496)" | ||
619 | gradientUnits="userSpaceOnUse" /> | ||
620 | <radialGradient | ||
621 | inkscape:collect="always" | ||
622 | xlink:href="#linearGradient4870" | ||
623 | id="radialGradient4876" | ||
624 | cx="437.6991" | ||
625 | cy="391.21735" | ||
626 | fx="437.6991" | ||
627 | fy="391.21735" | ||
628 | r="36.611931" | ||
629 | gradientTransform="matrix(1,0,0,0.618034,0,149.43174)" | ||
630 | gradientUnits="userSpaceOnUse" /> | ||
631 | <radialGradient | ||
632 | inkscape:collect="always" | ||
633 | xlink:href="#linearGradient4013" | ||
634 | id="radialGradient3585" | ||
635 | gradientUnits="userSpaceOnUse" | ||
636 | gradientTransform="matrix(1.1323239,0.7659488,-1.4550286,2.1510098,588.75376,-711.79716)" | ||
637 | cx="228.81355" | ||
638 | cy="440.26971" | ||
639 | fx="228.81355" | ||
640 | fy="440.26971" | ||
641 | r="119.17509" /> | ||
642 | <linearGradient | ||
643 | inkscape:collect="always" | ||
644 | xlink:href="#linearGradient4084" | ||
645 | id="linearGradient3587" | ||
646 | gradientUnits="userSpaceOnUse" | ||
647 | x1="182.35046" | ||
648 | y1="256.11136" | ||
649 | x2="145.53348" | ||
650 | y2="542.20502" /> | ||
651 | <radialGradient | ||
652 | inkscape:collect="always" | ||
653 | xlink:href="#linearGradient3317" | ||
654 | id="radialGradient8410" | ||
655 | gradientUnits="userSpaceOnUse" | ||
656 | gradientTransform="matrix(1.0036478,-1.0345492e-7,1.7124628e-7,1.6613125,-753.99632,-302.76972)" | ||
657 | cx="317.78754" | ||
658 | cy="129.65378" | ||
659 | fx="317.78754" | ||
660 | fy="129.65378" | ||
661 | r="47.863216" /> | ||
662 | <radialGradient | ||
663 | inkscape:collect="always" | ||
664 | xlink:href="#linearGradient8398" | ||
665 | id="radialGradient8412" | ||
666 | gradientUnits="userSpaceOnUse" | ||
667 | gradientTransform="matrix(2.0747661,-0.1577957,0.2382425,3.1325183,-1144.2358,-272.29325)" | ||
668 | cx="325.30847" | ||
669 | cy="80.909554" | ||
670 | fx="325.30847" | ||
671 | fy="80.909554" | ||
672 | r="26.937988" /> | ||
673 | <clipPath | ||
674 | clipPathUnits="userSpaceOnUse" | ||
675 | id="clipPath8514"> | ||
676 | <path | ||
677 | style="opacity:1;fill:#262f2f;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
678 | d="M 352.24553,211.99185 C 348.4411,186.72762 335.43581,161.35383 335.08873,136.46662 C 334.90247,123.1111 338.36158,109.89571 348.84426,96.912574 C 385.19128,31.616739 465.78517,12.217889 534.77892,5.447147 C 621.70131,-5.569654 719.69159,23.387219 768.15026,100.84843 C 822.27428,176.58173 824.82502,273.38755 848.7623,360.37638 C 878.20009,487.50398 903.54144,616.59052 909.15454,747.22673 C 906.09106,825.40858 900.7282,912.41088 848.65133,975.36086 C 800.62479,1025.7183 725.86486,1025.4139 661.58145,1034.3632 C 571.02606,1039.0182 477.22992,1018.2174 399.79755,970.16496 C 335.02191,932.22495 304.06736,856.68633 302.51815,784.14538 C 294.12898,704.27022 328.90967,630.33687 354.13855,556.98577 C 361.60916,474.2247 363.55141,390.73802 363.79189,307.60093 C 362.95507,275.40549 356.70236,243.7836 352.24553,211.99185 z" | ||
679 | id="path8516" | ||
680 | sodipodi:nodetypes="cscccccccccccc" /> | ||
681 | </clipPath> | ||
682 | <clipPath | ||
683 | clipPathUnits="userSpaceOnUse" | ||
684 | id="clipPath8604"> | ||
685 | <path | ||
686 | style="opacity:1;fill:#262f2f;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
687 | d="M 352.24553,211.99185 C 348.4411,186.72762 335.43581,161.35383 335.08873,136.46662 C 334.90247,123.1111 338.36158,109.89571 348.84426,96.912574 C 385.19128,31.616739 465.78517,12.217889 534.77892,5.447147 C 621.70131,-5.569654 719.69159,23.387219 768.15026,100.84843 C 822.27428,176.58173 824.82502,273.38755 848.7623,360.37638 C 878.20009,487.50398 903.54144,616.59052 909.15454,747.22673 C 906.09106,825.40858 900.7282,912.41088 848.65133,975.36086 C 800.62479,1025.7183 725.86486,1025.4139 661.58145,1034.3632 C 571.02606,1039.0182 477.22992,1018.2174 399.79755,970.16496 C 335.02191,932.22495 304.06736,856.68633 302.51815,784.14538 C 294.12898,704.27022 328.90967,630.33687 354.13855,556.98577 C 361.60916,474.2247 363.55141,390.73802 363.79189,307.60093 C 362.95507,275.40549 356.70236,243.7836 352.24553,211.99185 z" | ||
688 | id="path8606" | ||
689 | sodipodi:nodetypes="cscccccccccccc" /> | ||
690 | </clipPath> | ||
691 | <clipPath | ||
692 | clipPathUnits="userSpaceOnUse" | ||
693 | id="clipPath8610"> | ||
694 | <path | ||
695 | style="opacity:1;fill:#262f2f;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
696 | d="M 352.24553,211.99185 C 348.4411,186.72762 335.43581,161.35383 335.08873,136.46662 C 334.90247,123.1111 338.36158,109.89571 348.84426,96.912574 C 385.19128,31.616739 465.78517,12.217889 534.77892,5.447147 C 621.70131,-5.569654 719.69159,23.387219 768.15026,100.84843 C 822.27428,176.58173 824.82502,273.38755 848.7623,360.37638 C 878.20009,487.50398 903.54144,616.59052 909.15454,747.22673 C 906.09106,825.40858 900.7282,912.41088 848.65133,975.36086 C 800.62479,1025.7183 725.86486,1025.4139 661.58145,1034.3632 C 571.02606,1039.0182 477.22992,1018.2174 399.79755,970.16496 C 335.02191,932.22495 304.06736,856.68633 302.51815,784.14538 C 294.12898,704.27022 328.90967,630.33687 354.13855,556.98577 C 361.60916,474.2247 363.55141,390.73802 363.79189,307.60093 C 362.95507,275.40549 356.70236,243.7836 352.24553,211.99185 z" | ||
697 | id="path8612" | ||
698 | sodipodi:nodetypes="cscccccccccccc" /> | ||
699 | </clipPath> | ||
700 | <clipPath | ||
701 | clipPathUnits="userSpaceOnUse" | ||
702 | id="clipPath8616"> | ||
703 | <path | ||
704 | style="opacity:1;fill:#262f2f;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
705 | d="M 352.24553,211.99185 C 348.4411,186.72762 335.43581,161.35383 335.08873,136.46662 C 334.90247,123.1111 338.36158,109.89571 348.84426,96.912574 C 385.19128,31.616739 465.78517,12.217889 534.77892,5.447147 C 621.70131,-5.569654 719.69159,23.387219 768.15026,100.84843 C 822.27428,176.58173 824.82502,273.38755 848.7623,360.37638 C 878.20009,487.50398 903.54144,616.59052 909.15454,747.22673 C 906.09106,825.40858 900.7282,912.41088 848.65133,975.36086 C 800.62479,1025.7183 725.86486,1025.4139 661.58145,1034.3632 C 571.02606,1039.0182 477.22992,1018.2174 399.79755,970.16496 C 335.02191,932.22495 304.06736,856.68633 302.51815,784.14538 C 294.12898,704.27022 328.90967,630.33687 354.13855,556.98577 C 361.60916,474.2247 363.55141,390.73802 363.79189,307.60093 C 362.95507,275.40549 356.70236,243.7836 352.24553,211.99185 z" | ||
706 | id="path8618" | ||
707 | sodipodi:nodetypes="cscccccccccccc" /> | ||
708 | </clipPath> | ||
709 | <clipPath | ||
710 | clipPathUnits="userSpaceOnUse" | ||
711 | id="clipPath8622"> | ||
712 | <path | ||
713 | style="opacity:1;fill:#202020;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
714 | d="M 821.64329,477.88997 C 821.64329,477.88997 844.26276,471.38316 857.38604,472.01724 C 870.50932,472.65133 888.02762,473.95586 901.09489,484.20343 C 914.16216,494.45099 926.16263,511.3435 935.20728,542.57308 C 944.25193,573.80266 936.9056,641.82509 929.03125,685.92043 C 921.1569,730.01577 900.76615,792.03341 884.03125,825.92043 C 867.29635,859.80745 834.23354,903.41563 823.46182,915.79659 C 812.0976,928.85856 767.25593,952.22276 744.03125,958.06326 C 749.33455,947.45666 792.93101,907.47442 779.03125,897.349 C 765.01228,887.13674 733.27116,943.33136 694.7381,926.38217 C 716.12041,913.25005 736.5175,875.19611 728.77871,859.78772 C 720.93846,844.17733 698.07378,908.54529 635.24317,896.8006 C 665.29521,869.27394 690.65023,825.89659 676.50587,813.8209 C 662.09071,801.51403 616.04412,868.11405 616.04412,868.11405 C 616.04412,868.11405 613.22222,826.41287 629.81732,799.50673 C 646.45667,772.52886 709.47029,717.89146 729.37045,687.80331 C 749.2706,657.71517 762.98301,621.79429 771.50587,595.28537 C 780.02873,568.77645 787.30681,518.18583 787.30681,518.18583" | ||
715 | id="path8624" | ||
716 | sodipodi:nodetypes="czzzzzzczczczczzzc" /> | ||
717 | </clipPath> | ||
718 | <clipPath | ||
719 | clipPathUnits="userSpaceOnUse" | ||
720 | id="clipPath8642"> | ||
721 | <path | ||
722 | style="opacity:1;fill:#0f0f0f;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
723 | d="M 366.88839,504.13471 C 366.88839,504.13471 337.33433,544.70776 319.03125,578.42042 C 300.72816,612.13309 260.41016,704.77736 248.67411,749.49185 C 236.91471,794.29529 186.17411,873.06329 186.17411,873.06329 L 262.24554,891.27757 C 262.24554,891.27757 274.05266,878.45422 293.31696,845.20614 C 312.58126,811.95806 353.67411,706.63471 353.67411,706.63471 L 366.88839,504.13471 z" | ||
724 | id="path8644" | ||
725 | sodipodi:nodetypes="czzcczcc" /> | ||
726 | </clipPath> | ||
727 | <clipPath | ||
728 | clipPathUnits="userSpaceOnUse" | ||
729 | id="clipPath8658"> | ||
730 | <path | ||
731 | style="opacity:1;fill:#0b0b0b;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
732 | d="M 569.03125,1018.7776 C 564.74554,1019.4919 541.4031,1022.3957 511.17411,1028.7776 C 480.94512,1035.1595 411.39918,1054.7395 368.31696,1064.4919 C 325.23474,1074.2443 251.05253,1099.3079 211.40434,1091.7573 C 171.75616,1084.2067 121.88839,1027.349 121.88839,1027.349 L 126.17411,933.06329 C 126.17411,933.06329 212.05962,916.86235 238.31696,899.49186 C 264.57431,882.12137 283.89934,849.82588 297.60268,828.06329 C 311.30602,806.3007 330.45982,756.63471 330.45982,756.63471 L 569.03125,1018.7776 z" | ||
733 | id="path8660" | ||
734 | sodipodi:nodetypes="czzzcczzcc" /> | ||
735 | </clipPath> | ||
736 | <filter | ||
737 | inkscape:collect="always" | ||
738 | id="filter8802" | ||
739 | x="-0.35311759" | ||
740 | width="1.7062352" | ||
741 | y="-0.1817714" | ||
742 | height="1.3635428"> | ||
743 | <feGaussianBlur | ||
744 | inkscape:collect="always" | ||
745 | stdDeviation="48.038491" | ||
746 | id="feGaussianBlur8804" /> | ||
747 | </filter> | ||
748 | <filter | ||
749 | inkscape:collect="always" | ||
750 | id="filter8806" | ||
751 | x="-0.61142862" | ||
752 | width="2.2228572" | ||
753 | y="-0.14930232" | ||
754 | height="1.2986046"> | ||
755 | <feGaussianBlur | ||
756 | inkscape:collect="always" | ||
757 | stdDeviation="37.830213" | ||
758 | id="feGaussianBlur8808" /> | ||
759 | </filter> | ||
760 | <filter | ||
761 | inkscape:collect="always" | ||
762 | id="filter8810" | ||
763 | x="-0.23519406" | ||
764 | width="1.4703881" | ||
765 | y="-0.24500646" | ||
766 | height="1.4900129"> | ||
767 | <feGaussianBlur | ||
768 | inkscape:collect="always" | ||
769 | stdDeviation="58.328041" | ||
770 | id="feGaussianBlur8812" /> | ||
771 | </filter> | ||
772 | <filter | ||
773 | inkscape:collect="always" | ||
774 | id="filter8814" | ||
775 | x="-0.20466694" | ||
776 | width="1.4093339" | ||
777 | y="-0.29007819" | ||
778 | height="1.5801564"> | ||
779 | <feGaussianBlur | ||
780 | inkscape:collect="always" | ||
781 | stdDeviation="22.300169" | ||
782 | id="feGaussianBlur8816" /> | ||
783 | </filter> | ||
784 | <filter | ||
785 | inkscape:collect="always" | ||
786 | id="filter8818" | ||
787 | x="-0.34381232" | ||
788 | width="1.6876246" | ||
789 | y="-0.18433961" | ||
790 | height="1.3686792"> | ||
791 | <feGaussianBlur | ||
792 | inkscape:collect="always" | ||
793 | stdDeviation="34.542167" | ||
794 | id="feGaussianBlur8820" /> | ||
795 | </filter> | ||
796 | <filter | ||
797 | inkscape:collect="always" | ||
798 | id="filter8822" | ||
799 | x="-0.2742857" | ||
800 | width="1.5485713" | ||
801 | y="-0.21333334" | ||
802 | height="1.4266667"> | ||
803 | <feGaussianBlur | ||
804 | inkscape:collect="always" | ||
805 | stdDeviation="11.313708" | ||
806 | id="feGaussianBlur8824" /> | ||
807 | </filter> | ||
808 | <filter | ||
809 | inkscape:collect="always" | ||
810 | id="filter8826" | ||
811 | x="-0.25894088" | ||
812 | width="1.5178818" | ||
813 | y="-0.2236412" | ||
814 | height="1.4472824"> | ||
815 | <feGaussianBlur | ||
816 | inkscape:collect="always" | ||
817 | stdDeviation="19.631544" | ||
818 | id="feGaussianBlur8828" /> | ||
819 | </filter> | ||
820 | <filter | ||
821 | inkscape:collect="always" | ||
822 | id="filter8856" | ||
823 | x="-0.3253231" | ||
824 | width="1.6506462" | ||
825 | y="-0.19013336" | ||
826 | height="1.3802667"> | ||
827 | <feGaussianBlur | ||
828 | inkscape:collect="always" | ||
829 | stdDeviation="28.712591" | ||
830 | id="feGaussianBlur8858" /> | ||
831 | </filter> | ||
832 | <filter | ||
833 | inkscape:collect="always" | ||
834 | id="filter8860" | ||
835 | x="-0.38093024" | ||
836 | width="1.7618605" | ||
837 | y="-0.17518716" | ||
838 | height="1.3503743"> | ||
839 | <feGaussianBlur | ||
840 | inkscape:collect="always" | ||
841 | stdDeviation="19.304015" | ||
842 | id="feGaussianBlur8862" /> | ||
843 | </filter> | ||
844 | <filter | ||
845 | inkscape:collect="always" | ||
846 | id="filter8888" | ||
847 | x="-0.2112188" | ||
848 | width="1.4224375" | ||
849 | y="-0.16808605" | ||
850 | height="1.3361721"> | ||
851 | <feGaussianBlur | ||
852 | inkscape:collect="always" | ||
853 | stdDeviation="8.3693583" | ||
854 | id="feGaussianBlur8890" /> | ||
855 | </filter> | ||
856 | <filter | ||
857 | inkscape:collect="always" | ||
858 | id="filter8892" | ||
859 | x="-0.18692794" | ||
860 | width="1.3738559" | ||
861 | y="-0.23646873" | ||
862 | height="1.4729375"> | ||
863 | <feGaussianBlur | ||
864 | inkscape:collect="always" | ||
865 | stdDeviation="31.21228" | ||
866 | id="feGaussianBlur8894" /> | ||
867 | </filter> | ||
868 | <clipPath | ||
869 | clipPathUnits="userSpaceOnUse" | ||
870 | id="clipPath8906"> | ||
871 | <path | ||
872 | style="opacity:1;fill:#262f2f;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
873 | d="M 352.24553,211.99185 C 348.4411,186.72762 335.43581,161.35383 335.08873,136.46662 C 334.90247,123.1111 338.36158,109.89571 348.84426,96.912574 C 385.19128,31.616739 465.78517,12.217889 534.77892,5.447147 C 621.70131,-5.569654 719.69159,23.387219 768.15026,100.84843 C 822.27428,176.58173 824.82502,273.38755 848.7623,360.37638 C 878.20009,487.50398 903.54144,616.59052 909.15454,747.22673 C 906.09106,825.40858 900.7282,912.41088 848.65133,975.36086 C 800.62479,1025.7183 725.86486,1025.4139 661.58145,1034.3632 C 571.02606,1039.0182 477.22992,1018.2174 399.79755,970.16496 C 335.02191,932.22495 304.06736,856.68633 302.51815,784.14538 C 294.12898,704.27022 328.90967,630.33687 354.13855,556.98577 C 361.60916,474.2247 363.55141,390.73802 363.79189,307.60093 C 362.95507,275.40549 356.70236,243.7836 352.24553,211.99185 z" | ||
874 | id="path8908" | ||
875 | sodipodi:nodetypes="cscccccccccccc" /> | ||
876 | </clipPath> | ||
877 | <filter | ||
878 | inkscape:collect="always" | ||
879 | id="filter8940" | ||
880 | x="-0.25152978" | ||
881 | width="1.5030596" | ||
882 | y="-0.053035267" | ||
883 | height="1.1060705"> | ||
884 | <feGaussianBlur | ||
885 | inkscape:collect="always" | ||
886 | stdDeviation="13.024603" | ||
887 | id="feGaussianBlur8942" /> | ||
888 | </filter> | ||
889 | <linearGradient | ||
890 | inkscape:collect="always" | ||
891 | xlink:href="#linearGradient8952" | ||
892 | id="linearGradient8958" | ||
893 | x1="609.31244" | ||
894 | y1="239.46866" | ||
895 | x2="560.83142" | ||
896 | y2="262.86206" | ||
897 | gradientUnits="userSpaceOnUse" | ||
898 | gradientTransform="translate(450.03125,73.843964)" /> | ||
899 | <linearGradient | ||
900 | inkscape:collect="always" | ||
901 | xlink:href="#linearGradient8964" | ||
902 | id="linearGradient8970" | ||
903 | x1="603.84064" | ||
904 | y1="627.85303" | ||
905 | x2="616.24396" | ||
906 | y2="585.42664" | ||
907 | gradientUnits="userSpaceOnUse" | ||
908 | gradientTransform="translate(450.03125,73.843964)" /> | ||
909 | <filter | ||
910 | inkscape:collect="always" | ||
911 | id="filter9020" | ||
912 | x="-0.32861114" | ||
913 | width="1.6572223" | ||
914 | y="-0.182" | ||
915 | height="1.364"> | ||
916 | <feGaussianBlur | ||
917 | inkscape:collect="always" | ||
918 | stdDeviation="20.912684" | ||
919 | id="feGaussianBlur9022" /> | ||
920 | </filter> | ||
921 | <filter | ||
922 | inkscape:collect="always" | ||
923 | id="filter9024" | ||
924 | x="-0.55453134" | ||
925 | width="2.1090627" | ||
926 | y="-0.51434779" | ||
927 | height="2.0286956"> | ||
928 | <feGaussianBlur | ||
929 | inkscape:collect="always" | ||
930 | stdDeviation="20.912684" | ||
931 | id="feGaussianBlur9026" /> | ||
932 | </filter> | ||
933 | <filter | ||
934 | inkscape:collect="always" | ||
935 | id="filter9044" | ||
936 | x="-0.32631579" | ||
937 | width="1.6526316" | ||
938 | y="-0.84545463" | ||
939 | height="2.6909094"> | ||
940 | <feGaussianBlur | ||
941 | inkscape:collect="always" | ||
942 | stdDeviation="21.92031" | ||
943 | id="feGaussianBlur9046" /> | ||
944 | </filter> | ||
945 | <filter | ||
946 | inkscape:collect="always" | ||
947 | id="filter9048" | ||
948 | x="-0.40879121" | ||
949 | width="1.8175824" | ||
950 | y="-0.71538466" | ||
951 | height="2.4307692"> | ||
952 | <feGaussianBlur | ||
953 | inkscape:collect="always" | ||
954 | stdDeviation="21.92031" | ||
955 | id="feGaussianBlur9050" /> | ||
956 | </filter> | ||
957 | <filter | ||
958 | inkscape:collect="always" | ||
959 | id="filter3587" | ||
960 | x="-0.1"> | ||
961 | <feGaussianBlur | ||
962 | inkscape:collect="always" | ||
963 | stdDeviation="8.881432" | ||
964 | id="feGaussianBlur3589" /> | ||
965 | </filter> | ||
966 | <clipPath | ||
967 | clipPathUnits="userSpaceOnUse" | ||
968 | id="clipPath3602"> | ||
969 | <path | ||
970 | sodipodi:nodetypes="czzzzzzczczczczzzc" | ||
971 | id="path3604" | ||
972 | d="M 647.61204,540.04601 C 647.61204,540.04601 670.23151,533.5392 683.35479,534.17328 C 696.47807,534.80737 713.99637,536.1119 727.06364,546.35947 C 740.13091,556.60703 752.13138,573.49954 761.17603,604.72912 C 770.22068,635.9587 762.87435,703.98113 755,748.07647 C 747.12565,792.17181 726.7349,854.18945 710,888.07647 C 693.2651,921.96349 660.20229,965.57167 649.43057,977.95263 C 638.06635,991.0146 593.22468,1014.3788 570,1020.2193 C 575.3033,1009.6127 618.89976,969.63046 605,959.50504 C 590.98103,949.29278 559.23991,1005.4874 520.70685,988.53821 C 542.08916,975.40609 562.48625,937.35215 554.74746,921.94376 C 546.90721,906.33337 524.04253,970.70133 461.21192,958.95664 C 491.26396,931.42998 516.61898,888.05263 502.47462,875.97694 C 488.05946,863.67007 442.01287,930.27009 442.01287,930.27009 C 442.01287,930.27009 439.19097,888.56891 455.78607,861.66277 C 472.42542,834.6849 535.43904,780.0475 555.3392,749.95935 C 575.23935,719.87121 588.95176,683.95033 597.47462,657.44141 C 605.99748,630.93249 613.27556,580.34187 613.27556,580.34187" | ||
973 | style="opacity:1;fill:#202020;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
974 | </clipPath> | ||
975 | <filter | ||
976 | inkscape:collect="always" | ||
977 | id="filter4120" | ||
978 | x="-0.2770822" | ||
979 | width="1.5541644" | ||
980 | y="-0.32482043" | ||
981 | height="1.6496409"> | ||
982 | <feGaussianBlur | ||
983 | inkscape:collect="always" | ||
984 | stdDeviation="19.956289" | ||
985 | id="feGaussianBlur4122" /> | ||
986 | </filter> | ||
987 | <clipPath | ||
988 | clipPathUnits="userSpaceOnUse" | ||
989 | id="clipPath3631"> | ||
990 | <path | ||
991 | style="opacity:1;fill:#ada469;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
992 | d="M 760.16396,935.83377 C 766.95806,954.73656 770.65765,969.13346 772.05426,987.04566 C 773.45088,1004.958 768.27158,1038.8465 769.1538,1057.7018 C 770.03555,1076.547 777.28749,1097.8008 796.49843,1106.6707 C 815.9173,1115.6365 845.81767,1116.882 870.61827,1103.5251 C 895.41887,1090.1681 928.01929,1033.1996 941.59253,1006.2164 C 955.21638,979.13246 980.3536,891.71903 986.25333,856.44781 C 992.15306,821.1766 988.80387,815.14704 981.63585,807.39232 C 984.27615,779.55217 980.13613,752.45689 994.74554,720.20614 C 964.49653,732.03184 957.36325,760.36684 946.42665,785.71122 C 938.42574,734.77829 946.63581,714.43803 949.74554,684.49186 C 920.68078,699.26977 906.88403,731.60588 904.74554,777.349 C 893.82159,776.0448 883.3541,772.91477 871.17411,776.63471 C 870.91007,730.61137 869.71055,699.7453 880.08474,662.42822 C 826.82927,683.45508 817.13746,769.02232 824.03125,775.20614 C 813.14843,775.74114 802.66017,773.90884 791.17411,778.06329 C 791.81303,735.49194 790.91365,693.15468 761.17411,655.20614 C 761.17411,655.20614 730.21605,736.12848 729.74554,758.77757 C 729.27503,781.42666 739.19713,798.94345 739.19713,798.94345 C 739.19713,798.94345 730.62906,835.68396 732.89854,857.17568 C 735.19439,878.91714 753.34144,916.85185 760.16396,935.83377 z" | ||
993 | id="path3633" | ||
994 | sodipodi:nodetypes="czzzzzzcccccccccczczz" /> | ||
995 | </clipPath> | ||
996 | <clipPath | ||
997 | clipPathUnits="userSpaceOnUse" | ||
998 | id="clipPath3665"> | ||
999 | <path | ||
1000 | sodipodi:nodetypes="czzcczcc" | ||
1001 | id="path3667" | ||
1002 | d="M 366.88839,504.13471 C 366.88839,504.13471 337.33433,544.70776 319.03125,578.42042 C 300.72816,612.13309 260.41016,704.77736 248.67411,749.49185 C 236.91471,794.29529 186.17411,873.06329 186.17411,873.06329 L 262.24554,891.27757 C 262.24554,891.27757 274.05266,878.45422 293.31696,845.20614 C 312.58126,811.95806 353.67411,706.63471 353.67411,706.63471 L 366.88839,504.13471 z" | ||
1003 | style="opacity:1;fill:#0f0f0f;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> | ||
1004 | </clipPath> | ||
1005 | <clipPath | ||
1006 | clipPathUnits="userSpaceOnUse" | ||
1007 | id="clipPath3677"> | ||
1008 | <path | ||
1009 | style="opacity:1;fill:#ada469;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
1010 | d="M 586.13271,997.98981 C 592.92681,1016.8926 596.6264,1031.2895 598.02301,1049.2017 C 599.41963,1067.114 594.24033,1101.0025 595.12255,1119.8578 C 596.0043,1138.703 603.25624,1159.9568 622.46718,1168.8267 C 641.88605,1177.7925 671.78642,1179.038 696.58702,1165.6811 C 721.38762,1152.3241 753.98804,1095.3556 767.56128,1068.3724 C 781.18513,1041.2885 806.32235,953.87507 812.22208,918.60385 C 818.12181,883.33264 814.77262,877.30308 807.6046,869.54836 C 810.2449,841.70821 806.10488,814.61293 820.71429,782.36218 C 790.46528,794.18788 783.332,822.52288 772.3954,847.86726 C 764.39449,796.93433 772.60456,776.59407 775.71429,746.6479 C 746.64953,761.42581 732.85278,793.76192 730.71429,839.50504 C 719.79034,838.20084 709.32285,835.07081 697.14286,838.79075 C 696.87882,792.76741 695.6793,761.90134 706.05349,724.58426 C 652.79802,745.61112 643.10621,831.17836 650,837.36218 C 639.11718,837.89718 628.62892,836.06488 617.14286,840.21933 C 617.78178,797.64798 616.8824,755.31072 587.14286,717.36218 C 587.14286,717.36218 556.1848,798.28452 555.71429,820.93361 C 555.24378,843.5827 565.16588,861.09949 565.16588,861.09949 C 565.16588,861.09949 556.59781,897.84 558.86729,919.33172 C 561.16314,941.07318 579.31019,979.00789 586.13271,997.98981 z" | ||
1011 | id="path3679" | ||
1012 | sodipodi:nodetypes="czzzzzzcccccccccczczz" /> | ||
1013 | </clipPath> | ||
1014 | <filter | ||
1015 | inkscape:collect="always" | ||
1016 | id="filter3898"> | ||
1017 | <feGaussianBlur | ||
1018 | inkscape:collect="always" | ||
1019 | stdDeviation="10.892985" | ||
1020 | id="feGaussianBlur3900" /> | ||
1021 | </filter> | ||
1022 | <filter | ||
1023 | inkscape:collect="always" | ||
1024 | id="filter4130" | ||
1025 | x="-0.49509686" | ||
1026 | width="1.9901937" | ||
1027 | y="-0.26708817" | ||
1028 | height="1.5341763"> | ||
1029 | <feGaussianBlur | ||
1030 | inkscape:collect="always" | ||
1031 | stdDeviation="10.730622" | ||
1032 | id="feGaussianBlur4132" /> | ||
1033 | </filter> | ||
1034 | <filter | ||
1035 | inkscape:collect="always" | ||
1036 | id="filter4141" | ||
1037 | x="-0.40611032" | ||
1038 | width="1.8122206" | ||
1039 | y="-0.30260596" | ||
1040 | height="1.6052119"> | ||
1041 | <feGaussianBlur | ||
1042 | inkscape:collect="always" | ||
1043 | stdDeviation="9.8586086" | ||
1044 | id="feGaussianBlur4143" /> | ||
1045 | </filter> | ||
1046 | <clipPath | ||
1047 | clipPathUnits="userSpaceOnUse" | ||
1048 | id="clipPath4177"> | ||
1049 | <path | ||
1050 | sodipodi:nodetypes="czzzzzzcccccccccczczz" | ||
1051 | id="path4179" | ||
1052 | d="M 586.13271,997.98981 C 592.92681,1016.8926 596.6264,1031.2895 598.02301,1049.2017 C 599.41963,1067.114 594.24033,1101.0025 595.12255,1119.8578 C 596.0043,1138.703 603.25624,1159.9568 622.46718,1168.8267 C 641.88605,1177.7925 671.78642,1179.038 696.58702,1165.6811 C 721.38762,1152.3241 753.98804,1095.3556 767.56128,1068.3724 C 781.18513,1041.2885 806.32235,953.87507 812.22208,918.60385 C 818.12181,883.33264 814.77262,877.30308 807.6046,869.54836 C 810.2449,841.70821 806.10488,814.61293 820.71429,782.36218 C 790.46528,794.18788 783.332,822.52288 772.3954,847.86726 C 764.39449,796.93433 772.60456,776.59407 775.71429,746.6479 C 746.64953,761.42581 732.85278,793.76192 730.71429,839.50504 C 719.79034,838.20084 709.32285,835.07081 697.14286,838.79075 C 696.87882,792.76741 695.6793,761.90134 706.05349,724.58426 C 652.79802,745.61112 643.10621,831.17836 650,837.36218 C 639.11718,837.89718 628.62892,836.06488 617.14286,840.21933 C 617.78178,797.64798 616.8824,755.31072 587.14286,717.36218 C 587.14286,717.36218 556.1848,798.28452 555.71429,820.93361 C 555.24378,843.5827 565.16588,861.09949 565.16588,861.09949 C 565.16588,861.09949 556.59781,897.84 558.86729,919.33172 C 561.16314,941.07318 579.31019,979.00789 586.13271,997.98981 z" | ||
1053 | style="opacity:1;fill:#ada469;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
1054 | </clipPath> | ||
1055 | <filter | ||
1056 | inkscape:collect="always" | ||
1057 | id="filter4185"> | ||
1058 | <feGaussianBlur | ||
1059 | inkscape:collect="always" | ||
1060 | stdDeviation="3.6164709" | ||
1061 | id="feGaussianBlur4187" /> | ||
1062 | </filter> | ||
1063 | <filter | ||
1064 | inkscape:collect="always" | ||
1065 | id="filter4105"> | ||
1066 | <feGaussianBlur | ||
1067 | inkscape:collect="always" | ||
1068 | stdDeviation="3.8640966" | ||
1069 | id="feGaussianBlur4107" /> | ||
1070 | </filter> | ||
1071 | <clipPath | ||
1072 | clipPathUnits="userSpaceOnUse" | ||
1073 | id="clipPath2833"> | ||
1074 | <path | ||
1075 | style="opacity:1;fill:#292929;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
1076 | d="M 569.03125,1018.7776 C 564.74554,1019.4919 541.4031,1022.3957 511.17411,1028.7776 C 480.94512,1035.1595 453.86016,1033.7437 375.38803,1046.1072 C 295.53625,1058.688 281.32367,1088.6495 267.26578,1093.1715 C 252.56564,1097.9001 121.88839,1027.349 121.88839,1027.349 L 126.17411,933.06329 C 126.17411,933.06329 212.05962,916.86235 238.31696,899.49186 C 264.57431,882.12137 283.89934,849.82588 297.60268,828.06329 C 311.30602,806.3007 330.45982,756.63471 330.45982,756.63471 L 569.03125,1018.7776 z" | ||
1077 | id="path2835" | ||
1078 | sodipodi:nodetypes="czzzcczzcc" /> | ||
1079 | </clipPath> | ||
1080 | <linearGradient | ||
1081 | inkscape:collect="always" | ||
1082 | xlink:href="#linearGradient2843" | ||
1083 | id="linearGradient2841" | ||
1084 | gradientUnits="userSpaceOnUse" | ||
1085 | x1="347.89655" | ||
1086 | y1="1070.2124" | ||
1087 | x2="275.58191" | ||
1088 | y2="867.97992" /> | ||
1089 | <linearGradient | ||
1090 | inkscape:collect="always" | ||
1091 | xlink:href="#linearGradient3627" | ||
1092 | id="linearGradient3688" | ||
1093 | gradientUnits="userSpaceOnUse" | ||
1094 | x1="699.32867" | ||
1095 | y1="269.76755" | ||
1096 | x2="698.97504" | ||
1097 | y2="346.1351" /> | ||
1098 | <mask | ||
1099 | maskUnits="userSpaceOnUse" | ||
1100 | id="mask3684"> | ||
1101 | <path | ||
1102 | sodipodi:type="arc" | ||
1103 | style="opacity:1;fill:url(#linearGradient3688);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.43724918px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
1104 | id="path3686" | ||
1105 | sodipodi:cx="579.474" | ||
1106 | sodipodi:cy="260.57516" | ||
1107 | sodipodi:rx="192.6866" | ||
1108 | sodipodi:ry="164.04877" | ||
1109 | d="M 772.1606,260.57516 A 192.6866,164.04877 0 1 1 386.7874,260.57516 A 192.6866,164.04877 0 1 1 772.1606,260.57516 z" | ||
1110 | transform="translate(-174.03125,62.156036)" /> | ||
1111 | </mask> | ||
1112 | <clipPath | ||
1113 | clipPathUnits="userSpaceOnUse" | ||
1114 | id="clipPath3622"> | ||
1115 | <path | ||
1116 | style="opacity:1;fill:#ada469;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
1117 | d="M 266.27183,924.57186 C 264.86456,943.37307 265.12693,957.32289 268.35357,973.87514 C 271.58022,990.42748 284.75965,1019.7825 288.68797,1037.0589 C 292.61419,1054.326 291.3821,1075.3685 276.22853,1088.2071 C 260.91092,1101.1845 234.17726,1109.806 208.39623,1103.9409 C 182.61517,1098.0756 138.84716,1054.7175 119.80604,1033.7126 C 100.6939,1012.6293 56.045183,939.86194 41.867508,909.43681 C 27.689836,879.01169 29.207903,872.71824 33.747793,863.90708 C 24.381071,839.38658 21.334081,813.84027 0.035335518,788.33044 C 30.360815,791.44488 43.915625,815.28677 60.161025,835.47019 C 54.631129,787.39416 42.10631,771.05369 31.787073,744.74589 C 61.781368,750.82755 82.366433,776.61829 95.766856,817.45839 C 105.32101,813.54048 114.00462,808.08545 125.95427,808.39719 C 114.65677,766.70139 108.00481,738.48135 89.267015,707.32725 C 142.70898,712.99758 172.92404,787.96657 168.23844,795.28805 C 178.21641,793.04406 187.24409,788.75767 198.67497,789.63638 C 187.42601,751.28936 177.62716,712.76848 195.01526,670.9882 C 195.01526,670.9882 243.30204,736.42507 249.40492,756.79397 C 255.50779,777.16288 250.92373,795.49449 250.92373,795.49449 C 250.92373,795.49449 267.8833,826.57978 271.21765,846.58862 C 274.59075,866.82997 267.68496,905.69194 266.27183,924.57186 z" | ||
1118 | id="path3624" | ||
1119 | sodipodi:nodetypes="czzzzzzcccccccccczczz" /> | ||
1120 | </clipPath> | ||
1121 | <clipPath | ||
1122 | clipPathUnits="userSpaceOnUse" | ||
1123 | id="clipPath3636"> | ||
1124 | <path | ||
1125 | style="opacity:1;fill:#ada469;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
1126 | d="M 760.16396,935.83377 C 766.95806,954.73656 770.65765,969.13346 772.05426,987.04566 C 773.45088,1004.958 768.27158,1038.8465 769.1538,1057.7018 C 770.03555,1076.547 777.28749,1097.8008 796.49843,1106.6707 C 815.9173,1115.6365 845.81767,1116.882 870.61827,1103.5251 C 895.41887,1090.1681 928.01929,1033.1996 941.59253,1006.2164 C 955.21638,979.13246 980.3536,891.71903 986.25333,856.44781 C 992.15306,821.1766 988.80387,815.14704 981.63585,807.39232 C 984.27615,779.55217 980.13613,752.45689 994.74554,720.20614 C 964.49653,732.03184 957.36325,760.36684 946.42665,785.71122 C 938.42574,734.77829 946.63581,714.43803 949.74554,684.49186 C 920.68078,699.26977 906.88403,731.60588 904.74554,777.349 C 893.82159,776.0448 883.3541,772.91477 871.17411,776.63471 C 870.91007,730.61137 869.71055,699.7453 880.08474,662.42822 C 826.82927,683.45508 817.13746,769.02232 824.03125,775.20614 C 813.14843,775.74114 802.66017,773.90884 791.17411,778.06329 C 791.81303,735.49194 790.91365,693.15468 761.17411,655.20614 C 761.17411,655.20614 730.21605,736.12848 729.74554,758.77757 C 729.27503,781.42666 739.19713,798.94345 739.19713,798.94345 C 739.19713,798.94345 730.62906,835.68396 732.89854,857.17568 C 735.19439,878.91714 753.34144,916.85185 760.16396,935.83377 z" | ||
1127 | id="path3638" | ||
1128 | sodipodi:nodetypes="czzzzzzcccccccccczczz" /> | ||
1129 | </clipPath> | ||
1130 | <linearGradient | ||
1131 | inkscape:collect="always" | ||
1132 | xlink:href="#linearGradient3660" | ||
1133 | id="linearGradient3666" | ||
1134 | x1="1255.7386" | ||
1135 | y1="667.09216" | ||
1136 | x2="893.69995" | ||
1137 | y2="858.01099" | ||
1138 | gradientUnits="userSpaceOnUse" /> | ||
1139 | <filter | ||
1140 | inkscape:collect="always" | ||
1141 | id="filter3779" | ||
1142 | x="-0.087980822" | ||
1143 | width="1.1759616" | ||
1144 | y="-0.17728332" | ||
1145 | height="1.3545666"> | ||
1146 | <feGaussianBlur | ||
1147 | inkscape:collect="always" | ||
1148 | stdDeviation="16.340344" | ||
1149 | id="feGaussianBlur3781" /> | ||
1150 | </filter> | ||
1151 | <filter | ||
1152 | id="filter3785" | ||
1153 | inkscape:label="White Fur"> | ||
1154 | <feTurbulence | ||
1155 | id="feTurbulence3787" | ||
1156 | in="SourceAlpha" | ||
1157 | type="fractalNoise" | ||
1158 | baseFrequency="0.24044943820224721" | ||
1159 | numOctaves="10" | ||
1160 | seed="655" | ||
1161 | result="result0" /> | ||
1162 | <feDisplacementMap | ||
1163 | id="feDisplacementMap3789" | ||
1164 | in="SourceGraphic" | ||
1165 | in2="result0" | ||
1166 | scale="62" | ||
1167 | xChannelSelector="B" | ||
1168 | yChannelSelector="G" /> | ||
1169 | </filter> | ||
1170 | <filter | ||
1171 | inkscape:collect="always" | ||
1172 | id="filter3677"> | ||
1173 | <feGaussianBlur | ||
1174 | inkscape:collect="always" | ||
1175 | stdDeviation="2.0397518" | ||
1176 | id="feGaussianBlur3679" /> | ||
1177 | </filter> | ||
1178 | <clipPath | ||
1179 | clipPathUnits="userSpaceOnUse" | ||
1180 | id="clipPath3722"> | ||
1181 | <path | ||
1182 | style="opacity:1;fill:#121212;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
1183 | d="M 709.28572,844.50504 C 763.57143,843.07647 835.32072,829.45305 879.28572,817.71932 C 923.33843,805.96218 1005.172,781.37208 1054.6428,759.86218 C 1103.9821,738.40946 1168.2465,700.58058 1208.9286,667.71933 C 1249.4367,634.99864 1261.3185,611.89952 1269.6429,634.1479 C 1278.012,656.51569 1253.2359,690.47352 1231.7857,715.21933 C 1210.1816,740.14273 1179.0544,767.92466 1132.8571,804.50504 C 1086.6598,841.08542 976.77458,906.08967 920,933.07647 C 862.93394,960.20183 791.79666,991.31489 747.85714,1005.5765 C 703.91762,1019.8381 616.42857,1036.6479 616.42857,1036.6479 L 709.28572,844.50504 z" | ||
1184 | id="path3724" | ||
1185 | sodipodi:nodetypes="czzzzzzzzcc" /> | ||
1186 | </clipPath> | ||
1187 | <clipPath | ||
1188 | clipPathUnits="userSpaceOnUse" | ||
1189 | id="clipPath3986"> | ||
1190 | <path | ||
1191 | style="opacity:1;fill:#121212;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
1192 | d="M 709.28572,844.50504 C 763.57143,843.07647 835.32072,829.45305 879.28572,817.71932 C 923.33843,805.96218 1005.172,781.37208 1054.6428,759.86218 C 1103.9821,738.40946 1168.2465,700.58058 1208.9286,667.71933 C 1249.4367,634.99864 1261.3185,611.89952 1269.6429,634.1479 C 1278.012,656.51569 1253.2359,690.47352 1231.7857,715.21933 C 1210.1816,740.14273 1179.0544,767.92466 1132.8571,804.50504 C 1086.6598,841.08542 976.77458,906.08967 920,933.07647 C 862.93394,960.20183 791.79666,991.31489 747.85714,1005.5765 C 703.91762,1019.8381 616.42857,1036.6479 616.42857,1036.6479 L 709.28572,844.50504 z" | ||
1193 | id="path3988" | ||
1194 | sodipodi:nodetypes="czzzzzzzzcc" /> | ||
1195 | </clipPath> | ||
1196 | <clipPath | ||
1197 | clipPathUnits="userSpaceOnUse" | ||
1198 | id="clipPath3992"> | ||
1199 | <path | ||
1200 | style="opacity:1;fill:#121212;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
1201 | d="M 709.28572,844.50504 C 763.57143,843.07647 835.32072,829.45305 879.28572,817.71932 C 923.33843,805.96218 1005.172,781.37208 1054.6428,759.86218 C 1103.9821,738.40946 1168.2465,700.58058 1208.9286,667.71933 C 1249.4367,634.99864 1261.3185,611.89952 1269.6429,634.1479 C 1278.012,656.51569 1253.2359,690.47352 1231.7857,715.21933 C 1210.1816,740.14273 1179.0544,767.92466 1132.8571,804.50504 C 1086.6598,841.08542 976.77458,906.08967 920,933.07647 C 862.93394,960.20183 791.79666,991.31489 747.85714,1005.5765 C 703.91762,1019.8381 616.42857,1036.6479 616.42857,1036.6479 L 709.28572,844.50504 z" | ||
1202 | id="path3994" | ||
1203 | sodipodi:nodetypes="czzzzzzzzcc" /> | ||
1204 | </clipPath> | ||
1205 | <clipPath | ||
1206 | clipPathUnits="userSpaceOnUse" | ||
1207 | id="clipPath3998"> | ||
1208 | <path | ||
1209 | style="opacity:1;fill:#262f2f;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
1210 | d="M 178.21428,274.14789 C 174.40985,248.88366 161.40456,223.50987 161.05748,198.62266 C 160.87122,185.26714 164.33033,172.05175 174.81301,159.06861 C 211.16003,93.772775 291.75392,74.373925 360.74767,67.603183 C 447.67006,56.586382 545.66034,85.543255 594.11901,163.00447 C 648.24303,238.73777 650.79377,335.54359 674.73105,422.53242 C 704.16884,549.66002 729.51019,678.74656 735.12329,809.38277 C 732.05981,887.56462 726.69695,974.56692 674.62008,1037.5169 C 626.59354,1087.8743 551.83361,1087.5699 487.5502,1096.5192 C 396.99481,1101.1742 303.19867,1080.3734 225.7663,1032.321 C 160.99066,994.38099 130.03611,918.84237 128.4869,846.30142 C 120.09773,766.42626 154.87842,692.49291 180.1073,619.14181 C 187.57791,536.38074 189.52016,452.89406 189.76064,369.75697 C 188.92382,337.56153 182.67111,305.93964 178.21428,274.14789 z" | ||
1211 | id="path4000" | ||
1212 | sodipodi:nodetypes="cscccccccccccc" /> | ||
1213 | </clipPath> | ||
1214 | <filter | ||
1215 | inkscape:collect="always" | ||
1216 | id="filter4002" | ||
1217 | x="-0.24334238" | ||
1218 | width="1.4866848" | ||
1219 | y="-0.39104807" | ||
1220 | height="1.7820961"> | ||
1221 | <feGaussianBlur | ||
1222 | inkscape:collect="always" | ||
1223 | stdDeviation="14.589518" | ||
1224 | id="feGaussianBlur4004" /> | ||
1225 | </filter> | ||
1226 | <filter | ||
1227 | inkscape:collect="always" | ||
1228 | id="filter4010" | ||
1229 | x="-0.14577261" | ||
1230 | width="1.2915452" | ||
1231 | y="-0.23523259" | ||
1232 | height="1.4704652"> | ||
1233 | <feGaussianBlur | ||
1234 | inkscape:collect="always" | ||
1235 | stdDeviation="4.4442907" | ||
1236 | id="feGaussianBlur4012" /> | ||
1237 | </filter> | ||
1238 | <filter | ||
1239 | inkscape:collect="always" | ||
1240 | id="filter4053"> | ||
1241 | <feGaussianBlur | ||
1242 | inkscape:collect="always" | ||
1243 | stdDeviation="0.6062947" | ||
1244 | id="feGaussianBlur4055" /> | ||
1245 | </filter> | ||
1246 | <filter | ||
1247 | inkscape:collect="always" | ||
1248 | id="filter4079"> | ||
1249 | <feGaussianBlur | ||
1250 | inkscape:collect="always" | ||
1251 | stdDeviation="6.5887624" | ||
1252 | id="feGaussianBlur4081" /> | ||
1253 | </filter> | ||
1254 | <filter | ||
1255 | inkscape:collect="always" | ||
1256 | id="filter4083"> | ||
1257 | <feGaussianBlur | ||
1258 | inkscape:collect="always" | ||
1259 | stdDeviation="1.5052066" | ||
1260 | id="feGaussianBlur4085" /> | ||
1261 | </filter> | ||
1262 | <radialGradient | ||
1263 | inkscape:collect="always" | ||
1264 | xlink:href="#linearGradient4113" | ||
1265 | id="radialGradient4119" | ||
1266 | cx="296.33783" | ||
1267 | cy="427.17749" | ||
1268 | fx="296.33783" | ||
1269 | fy="427.17749" | ||
1270 | r="19.704132" | ||
1271 | gradientUnits="userSpaceOnUse" | ||
1272 | gradientTransform="matrix(2.9797125,0,0,2.9797125,-599.28727,-827.0855)" /> | ||
1273 | <filter | ||
1274 | inkscape:collect="always" | ||
1275 | id="filter6949" | ||
1276 | x="-0.10294895" | ||
1277 | width="1.2058979" | ||
1278 | y="-0.34224695" | ||
1279 | height="1.6844939"> | ||
1280 | <feGaussianBlur | ||
1281 | inkscape:collect="always" | ||
1282 | stdDeviation="1.1675612" | ||
1283 | id="feGaussianBlur6951" /> | ||
1284 | </filter> | ||
1285 | <filter | ||
1286 | inkscape:collect="always" | ||
1287 | id="filter6953" | ||
1288 | x="-0.098320946" | ||
1289 | width="1.1966419" | ||
1290 | y="-0.19750816" | ||
1291 | height="1.3950163"> | ||
1292 | <feGaussianBlur | ||
1293 | inkscape:collect="always" | ||
1294 | stdDeviation="1.1675612" | ||
1295 | id="feGaussianBlur6955" /> | ||
1296 | </filter> | ||
1297 | <filter | ||
1298 | inkscape:collect="always" | ||
1299 | id="filter6957" | ||
1300 | x="-0.098213427" | ||
1301 | width="1.1964267" | ||
1302 | y="-0.19838208" | ||
1303 | height="1.3967642"> | ||
1304 | <feGaussianBlur | ||
1305 | inkscape:collect="always" | ||
1306 | stdDeviation="1.1675612" | ||
1307 | id="feGaussianBlur6959" /> | ||
1308 | </filter> | ||
1309 | <filter | ||
1310 | inkscape:collect="always" | ||
1311 | id="filter6961" | ||
1312 | x="-0.09919104" | ||
1313 | width="1.1983821" | ||
1314 | y="-0.22643611" | ||
1315 | height="1.4528722"> | ||
1316 | <feGaussianBlur | ||
1317 | inkscape:collect="always" | ||
1318 | stdDeviation="1.1675612" | ||
1319 | id="feGaussianBlur6963" /> | ||
1320 | </filter> | ||
1321 | <filter | ||
1322 | inkscape:collect="always" | ||
1323 | id="filter6965" | ||
1324 | x="-0.099081434" | ||
1325 | width="1.1981629" | ||
1326 | y="-0.22529824" | ||
1327 | height="1.4505965"> | ||
1328 | <feGaussianBlur | ||
1329 | inkscape:collect="always" | ||
1330 | stdDeviation="1.1675612" | ||
1331 | id="feGaussianBlur6967" /> | ||
1332 | </filter> | ||
1333 | <filter | ||
1334 | inkscape:collect="always" | ||
1335 | id="filter6969" | ||
1336 | x="-0.10450897" | ||
1337 | width="1.2090179" | ||
1338 | y="-0.40468886" | ||
1339 | height="1.8093777"> | ||
1340 | <feGaussianBlur | ||
1341 | inkscape:collect="always" | ||
1342 | stdDeviation="1.1675612" | ||
1343 | id="feGaussianBlur6971" /> | ||
1344 | </filter> | ||
1345 | <filter | ||
1346 | inkscape:collect="always" | ||
1347 | id="filter6973" | ||
1348 | x="-0.10330495" | ||
1349 | width="1.2066098" | ||
1350 | y="-0.36439717" | ||
1351 | height="1.7287945"> | ||
1352 | <feGaussianBlur | ||
1353 | inkscape:collect="always" | ||
1354 | stdDeviation="1.1675612" | ||
1355 | id="feGaussianBlur6975" /> | ||
1356 | </filter> | ||
1357 | <filter | ||
1358 | inkscape:collect="always" | ||
1359 | id="filter6977" | ||
1360 | x="-0.10224481" | ||
1361 | width="1.2044896" | ||
1362 | y="-0.32371372" | ||
1363 | height="1.6474274"> | ||
1364 | <feGaussianBlur | ||
1365 | inkscape:collect="always" | ||
1366 | stdDeviation="1.1675612" | ||
1367 | id="feGaussianBlur6979" /> | ||
1368 | </filter> | ||
1369 | <filter | ||
1370 | inkscape:collect="always" | ||
1371 | id="filter6981" | ||
1372 | x="-0.10052545" | ||
1373 | width="1.2010509" | ||
1374 | y="-0.2742162" | ||
1375 | height="1.5484324"> | ||
1376 | <feGaussianBlur | ||
1377 | inkscape:collect="always" | ||
1378 | stdDeviation="1.1675612" | ||
1379 | id="feGaussianBlur6983" /> | ||
1380 | </filter> | ||
1381 | <filter | ||
1382 | inkscape:collect="always" | ||
1383 | id="filter6985" | ||
1384 | x="-0.098428868" | ||
1385 | width="1.1968577" | ||
1386 | y="-0.20853186" | ||
1387 | height="1.4170637"> | ||
1388 | <feGaussianBlur | ||
1389 | inkscape:collect="always" | ||
1390 | stdDeviation="1.1675612" | ||
1391 | id="feGaussianBlur6987" /> | ||
1392 | </filter> | ||
1393 | <filter | ||
1394 | inkscape:collect="always" | ||
1395 | id="filter6989" | ||
1396 | x="-0.098428868" | ||
1397 | width="1.1968577" | ||
1398 | y="-0.20287035" | ||
1399 | height="1.4057407"> | ||
1400 | <feGaussianBlur | ||
1401 | inkscape:collect="always" | ||
1402 | stdDeviation="1.1675612" | ||
1403 | id="feGaussianBlur6991" /> | ||
1404 | </filter> | ||
1405 | <filter | ||
1406 | inkscape:collect="always" | ||
1407 | id="filter6993" | ||
1408 | x="-0.098213255" | ||
1409 | width="1.1964265" | ||
1410 | y="-0.19838208" | ||
1411 | height="1.3967642"> | ||
1412 | <feGaussianBlur | ||
1413 | inkscape:collect="always" | ||
1414 | stdDeviation="1.1675612" | ||
1415 | id="feGaussianBlur6995" /> | ||
1416 | </filter> | ||
1417 | <filter | ||
1418 | inkscape:collect="always" | ||
1419 | id="filter6997"> | ||
1420 | <feGaussianBlur | ||
1421 | inkscape:collect="always" | ||
1422 | stdDeviation="1.1675612" | ||
1423 | id="feGaussianBlur6999" /> | ||
1424 | </filter> | ||
1425 | <filter | ||
1426 | inkscape:collect="always" | ||
1427 | id="filter7001"> | ||
1428 | <feGaussianBlur | ||
1429 | inkscape:collect="always" | ||
1430 | stdDeviation="1.1675612" | ||
1431 | id="feGaussianBlur7003" /> | ||
1432 | </filter> | ||
1433 | <filter | ||
1434 | inkscape:collect="always" | ||
1435 | id="filter7285" | ||
1436 | x="-0.030884685" | ||
1437 | width="1.0617694" | ||
1438 | y="-0.10267408" | ||
1439 | height="1.2053483"> | ||
1440 | <feGaussianBlur | ||
1441 | inkscape:collect="always" | ||
1442 | stdDeviation="0.35026836" | ||
1443 | id="feGaussianBlur7287" /> | ||
1444 | </filter> | ||
1445 | <filter | ||
1446 | inkscape:collect="always" | ||
1447 | id="filter7289"> | ||
1448 | <feGaussianBlur | ||
1449 | inkscape:collect="always" | ||
1450 | stdDeviation="0.35026836" | ||
1451 | id="feGaussianBlur7291" /> | ||
1452 | </filter> | ||
1453 | <filter | ||
1454 | inkscape:collect="always" | ||
1455 | id="filter7293"> | ||
1456 | <feGaussianBlur | ||
1457 | inkscape:collect="always" | ||
1458 | stdDeviation="0.35026836" | ||
1459 | id="feGaussianBlur7295" /> | ||
1460 | </filter> | ||
1461 | <filter | ||
1462 | inkscape:collect="always" | ||
1463 | id="filter7297"> | ||
1464 | <feGaussianBlur | ||
1465 | inkscape:collect="always" | ||
1466 | stdDeviation="0.35026836" | ||
1467 | id="feGaussianBlur7299" /> | ||
1468 | </filter> | ||
1469 | <filter | ||
1470 | inkscape:collect="always" | ||
1471 | id="filter7301"> | ||
1472 | <feGaussianBlur | ||
1473 | inkscape:collect="always" | ||
1474 | stdDeviation="0.35026836" | ||
1475 | id="feGaussianBlur7303" /> | ||
1476 | </filter> | ||
1477 | <filter | ||
1478 | inkscape:collect="always" | ||
1479 | id="filter7305"> | ||
1480 | <feGaussianBlur | ||
1481 | inkscape:collect="always" | ||
1482 | stdDeviation="0.35026836" | ||
1483 | id="feGaussianBlur7307" /> | ||
1484 | </filter> | ||
1485 | <filter | ||
1486 | inkscape:collect="always" | ||
1487 | id="filter7309"> | ||
1488 | <feGaussianBlur | ||
1489 | inkscape:collect="always" | ||
1490 | stdDeviation="0.35026836" | ||
1491 | id="feGaussianBlur7311" /> | ||
1492 | </filter> | ||
1493 | <filter | ||
1494 | inkscape:collect="always" | ||
1495 | id="filter7313"> | ||
1496 | <feGaussianBlur | ||
1497 | inkscape:collect="always" | ||
1498 | stdDeviation="0.35026836" | ||
1499 | id="feGaussianBlur7315" /> | ||
1500 | </filter> | ||
1501 | <filter | ||
1502 | inkscape:collect="always" | ||
1503 | id="filter7317"> | ||
1504 | <feGaussianBlur | ||
1505 | inkscape:collect="always" | ||
1506 | stdDeviation="0.35026836" | ||
1507 | id="feGaussianBlur7319" /> | ||
1508 | </filter> | ||
1509 | <filter | ||
1510 | inkscape:collect="always" | ||
1511 | id="filter7321"> | ||
1512 | <feGaussianBlur | ||
1513 | inkscape:collect="always" | ||
1514 | stdDeviation="0.35026836" | ||
1515 | id="feGaussianBlur7323" /> | ||
1516 | </filter> | ||
1517 | <filter | ||
1518 | inkscape:collect="always" | ||
1519 | id="filter7325" | ||
1520 | x="-0.031352691" | ||
1521 | width="1.0627054" | ||
1522 | y="-0.12140666" | ||
1523 | height="1.2428133"> | ||
1524 | <feGaussianBlur | ||
1525 | inkscape:collect="always" | ||
1526 | stdDeviation="0.35026836" | ||
1527 | id="feGaussianBlur7327" /> | ||
1528 | </filter> | ||
1529 | <filter | ||
1530 | inkscape:collect="always" | ||
1531 | id="filter7329" | ||
1532 | x="-0.030991485" | ||
1533 | width="1.061983" | ||
1534 | y="-0.10931916" | ||
1535 | height="1.2186383"> | ||
1536 | <feGaussianBlur | ||
1537 | inkscape:collect="always" | ||
1538 | stdDeviation="0.35026836" | ||
1539 | id="feGaussianBlur7331" /> | ||
1540 | </filter> | ||
1541 | <filter | ||
1542 | inkscape:collect="always" | ||
1543 | id="filter7333"> | ||
1544 | <feGaussianBlur | ||
1545 | inkscape:collect="always" | ||
1546 | stdDeviation="0.35026836" | ||
1547 | id="feGaussianBlur7335" /> | ||
1548 | </filter> | ||
1549 | <filter | ||
1550 | inkscape:collect="always" | ||
1551 | id="filter7337"> | ||
1552 | <feGaussianBlur | ||
1553 | inkscape:collect="always" | ||
1554 | stdDeviation="0.35026836" | ||
1555 | id="feGaussianBlur7339" /> | ||
1556 | </filter> | ||
1557 | <filter | ||
1558 | inkscape:collect="always" | ||
1559 | id="filter7345"> | ||
1560 | <feGaussianBlur | ||
1561 | inkscape:collect="always" | ||
1562 | stdDeviation="1.7233839" | ||
1563 | id="feGaussianBlur7347" /> | ||
1564 | </filter> | ||
1565 | <clipPath | ||
1566 | clipPathUnits="userSpaceOnUse" | ||
1567 | id="clipPath7421"> | ||
1568 | <path | ||
1569 | sodipodi:type="inkscape:offset" | ||
1570 | inkscape:radius="0" | ||
1571 | inkscape:original="M 1111.4062 -285.9375 L 1107.4688 -284.0625 C 1107.4283 -284.05228 1107.3692 -284.04201 1107.3438 -284.03125 C 1106.925 -283.8184 1107.1791 -283.93067 1106.6875 -283.71875 C 1106.2014 -283.50919 1104.9499 -283.13456 1102.5938 -282.25 C 1099.2626 -280.99942 1096.7895 -280.10016 1095.5938 -279.1875 C 1094.0576 -279.16623 1091.8733 -278.95419 1089.9375 -278.46875 C 1086.956 -277.72108 1085.0823 -277.29474 1083.1875 -276.875 C 1081.2927 -276.45527 1081.512 -276.23281 1080.3125 -276 C 1079.0159 -275.74833 1078.5911 -276.00899 1074.875 -275.21875 C 1071.3851 -274.4766 1065.9802 -273.28768 1064.7188 -272.53125 C 1063.1348 -272.71203 1060.8513 -272.85303 1058.875 -272.5625 C 1055.8346 -272.11554 1053.9588 -271.88974 1052.0312 -271.65625 C 1051.3758 -271.57687 1050.9902 -271.45547 1050.6875 -271.375 C 1050.2613 -271.24334 1050.0017 -271.11498 1049.3125 -271.03125 C 1048.0009 -270.87188 1047.5503 -271.18808 1043.7812 -270.75 C 1040.2273 -270.33691 1034.7758 -269.47718 1033.5312 -268.8125 C 1031.9322 -269.10979 1029.6735 -269.34669 1027.6875 -269.15625 C 1024.6287 -268.86293 1022.7155 -268.67226 1020.7812 -268.5 C 1018.847 -268.32773 1019.0926 -268.07763 1017.875 -267.96875 C 1016.5588 -267.85105 1016.1152 -268.13238 1012.3438 -267.71875 C 1008.8017 -267.3303 1003.3359 -266.50948 1002.0625 -265.84375 C 1000.4636 -266.13844 998.1753 -266.35076 996.1875 -266.15625 C 993.12921 -265.857 991.2463 -265.67601 989.3125 -265.5 C 988.65501 -265.44015 988.27245 -265.32144 987.96875 -265.25 C 987.54105 -265.13104 987.28525 -265.03193 986.59375 -264.96875 C 985.27775 -264.84849 984.834 -265.16363 981.0625 -264.75 C 977.50631 -264.35998 972.0569 -263.51084 970.8125 -262.84375 C 969.21381 -263.13793 966.95265 -263.36747 964.96875 -263.15625 C 961.91305 -262.83092 959.9947 -262.63001 958.0625 -262.4375 C 956.13031 -262.24499 956.37275 -261.99662 955.15625 -261.875 C 953.84137 -261.74353 953.3932 -262.03954 949.625 -261.59375 C 946.08611 -261.17509 940.6473 -260.30158 939.375 -259.625 C 937.77741 -259.90604 935.51505 -260.04543 933.53125 -259.8125 C 930.47927 -259.45413 928.58625 -259.24464 926.65625 -259.03125 C 926.00007 -258.95869 925.6156 -258.85856 925.3125 -258.78125 C 924.88571 -258.65402 924.6276 -258.51405 923.9375 -258.4375 C 922.62411 -258.29181 922.17015 -258.61152 918.40625 -258.125 C 914.85737 -257.66624 909.4276 -256.70598 908.1875 -256 C 906.59441 -256.24424 904.3537 -256.38135 902.375 -256.125 C 899.32741 -255.73018 897.4243 -255.47655 895.5 -255.21875 C 893.57571 -254.96096 893.7739 -254.72522 892.5625 -254.5625 C 891.25301 -254.3866 890.8153 -254.66688 887.0625 -254.09375 C 883.53821 -253.55551 878.1393 -252.39458 876.875 -251.65625 C 875.28751 -251.85979 873.0295 -251.91098 871.0625 -251.5625 C 868.03631 -251.02638 866.1636 -250.70081 864.25 -250.375 C 863.59941 -250.26423 863.2363 -250.10406 862.9375 -250 C 862.51681 -249.83512 862.27405 -249.6687 861.59375 -249.53125 C 860.29905 -249.26966 859.86665 -249.53745 856.15625 -248.71875 C 852.65777 -247.9468 847.31035 -246.33582 846.09375 -245.5 C 844.53085 -245.57745 842.33625 -245.41472 840.40625 -244.90625 C 837.43387 -244.12312 835.58855 -243.67416 833.71875 -243.15625 C 831.84875 -242.63835 832.0521 -242.38897 830.875 -242.0625 C 829.60251 -241.7096 829.17795 -241.95541 825.53125 -240.875 C 822.10657 -239.86037 816.88185 -237.94183 815.65625 -237.03125 C 814.11747 -237.01851 811.93645 -236.75903 810.03125 -236.15625 C 807.10027 -235.22891 805.2809 -234.69783 803.4375 -234.09375 C 802.81071 -233.88837 802.44585 -233.70117 802.15625 -233.5625 C 801.74867 -233.34889 801.50295 -233.15375 800.84375 -232.9375 C 799.58925 -232.52596 799.1576 -232.74846 795.5625 -231.5 C 792.17261 -230.32283 786.96755 -228.2863 785.78125 -227.34375 C 784.25737 -227.28408 782.1312 -226.94888 780.25 -226.28125 C 777.35261 -225.25296 775.55095 -224.60577 773.71875 -223.96875 C 771.88655 -223.33174 772.0909 -223.12021 770.9375 -222.71875 C 769.69071 -222.28479 769.27395 -222.51903 765.71875 -221.15625 C 762.38005 -219.87645 757.23165 -217.6737 756.03125 -216.6875 C 754.52407 -216.57981 752.39555 -216.1887 750.53125 -215.46875 C 747.66307 -214.36115 745.90735 -213.68719 744.09375 -213 C 743.47705 -212.76637 743.0973 -212.55797 742.8125 -212.40625 C 742.81251 -212.40625 742.8125 -212.37673 742.8125 -212.375 L 734.8125 -209.1875 L 736.625 -194.46875 C 736.36701 -194.52956 742.8125 -191.15625 742.8125 -191.15625 C 743.03891 -191.30093 743.26145 -191.42886 743.53125 -191.53125 C 744.61177 -191.94123 745.70285 -191.74702 749.53125 -193.21875 C 753.35977 -194.69049 754.7553 -195.22373 755.4375 -195.625 C 756.11711 -196.02478 757.04925 -196.50437 757.65625 -197.15625 C 759.48317 -197.294 761.22705 -197.64948 762.59375 -198.15625 C 765.56175 -199.25677 767.4691 -199.96244 769.375 -200.625 C 771.28081 -201.28754 771.72915 -202.03987 772.78125 -202.40625 C 773.87287 -202.78636 774.97635 -202.57163 778.84375 -203.9375 C 782.71115 -205.30336 784.1269 -205.76458 784.8125 -206.15625 C 785.51361 -206.55677 786.5133 -207.08923 787.125 -207.75 C 789.09581 -207.80466 790.94195 -208.13463 792.40625 -208.625 C 795.40777 -209.63008 797.3324 -210.24671 799.25 -210.875 C 800.78861 -211.3791 801.42415 -211.92177 802.15625 -212.3125 C 802.38647 -212.44681 802.63215 -212.56623 802.90625 -212.65625 C 804.00457 -213.01673 805.0877 -212.73762 809 -213.96875 C 812.91231 -215.19988 814.366 -215.6417 815.0625 -216 C 815.75641 -216.35697 816.6926 -216.79261 817.3125 -217.40625 C 819.17771 -217.42891 820.94835 -217.67308 822.34375 -218.09375 C 825.37415 -219.00729 827.33615 -219.52385 829.28125 -220.0625 C 831.22637 -220.60114 831.70745 -221.32702 832.78125 -221.625 C 833.89527 -221.93415 835.00125 -221.61761 838.96875 -222.65625 C 842.93625 -223.69488 844.38625 -224.08898 845.09375 -224.40625 C 845.82855 -224.73584 846.90765 -225.15997 847.53125 -225.78125 C 849.52907 -225.66525 851.3887 -225.80134 852.875 -226.15625 C 855.95311 -226.89125 857.9584 -227.25719 859.9375 -227.65625 C 861.52541 -227.97643 862.1818 -228.4468 862.9375 -228.75 C 863.17501 -228.8568 863.4044 -228.94276 863.6875 -229 C 864.82091 -229.22919 865.99215 -228.79107 870.03125 -229.5 C 874.07067 -230.20893 875.5315 -230.42709 876.25 -230.6875 C 876.96581 -230.94694 877.95435 -231.25474 878.59375 -231.78125 C 880.51795 -231.54176 882.34165 -231.55672 883.78125 -231.78125 C 886.90767 -232.26887 888.9358 -232.48192 890.9375 -232.75 C 892.93921 -233.01807 893.42625 -233.69514 894.53125 -233.84375 C 895.67767 -233.99793 896.8071 -233.54218 900.875 -234.0625 C 904.94281 -234.58282 906.43525 -234.75823 907.15625 -235 C 907.89337 -235.24714 908.95435 -235.58623 909.59375 -236.125 C 911.64375 -235.78947 913.56745 -235.72704 915.09375 -235.90625 C 918.23595 -236.27521 920.27375 -236.46561 922.28125 -236.6875 C 923.89207 -236.86552 924.5459 -237.2957 925.3125 -237.53125 C 925.55341 -237.61677 925.80655 -237.68685 926.09375 -237.71875 C 927.24345 -237.84647 928.39505 -237.3721 932.46875 -237.84375 C 936.54245 -238.3154 938.0278 -238.45435 938.75 -238.6875 C 939.46941 -238.91977 940.45025 -239.16096 941.09375 -239.65625 C 943.03005 -239.32279 944.8638 -239.25201 946.3125 -239.40625 C 949.45851 -239.7412 951.49 -239.92484 953.5 -240.125 C 955.50991 -240.32514 955.98415 -240.95139 957.09375 -241.0625 C 958.24485 -241.17778 959.39025 -240.69744 963.46875 -241.125 C 967.54725 -241.55256 969.05765 -241.68709 969.78125 -241.90625 C 970.52047 -242.13011 971.57685 -242.4195 972.21875 -242.9375 C 974.27575 -242.53883 976.2206 -242.4441 977.75 -242.59375 C 980.89871 -242.90185 982.9258 -243.067 984.9375 -243.25 C 986.55151 -243.39682 987.20055 -243.81055 987.96875 -244.03125 C 988.21005 -244.11211 988.4623 -244.16116 988.75 -244.1875 C 989.90211 -244.29295 991.0429 -243.79475 995.125 -244.1875 C 999.20711 -244.58025 1000.7139 -244.71834 1001.4375 -244.9375 C 1002.1584 -245.15583 1003.1371 -245.3852 1003.7812 -245.875 C 1005.7193 -245.52501 1007.5501 -245.42062 1009 -245.5625 C 1012.1487 -245.8706 1014.1758 -246.03575 1016.1875 -246.21875 C 1018.1991 -246.40174 1018.7017 -247.05677 1019.8125 -247.15625 C 1020.9648 -247.25948 1022.1047 -246.77142 1026.1875 -247.15625 C 1030.2704 -247.54107 1031.7762 -247.65725 1032.5 -247.875 C 1033.2393 -248.09743 1034.2956 -248.38949 1034.9375 -248.90625 C 1036.9949 -248.50448 1038.9404 -248.40292 1040.4688 -248.5625 C 1043.6153 -248.89102 1045.6458 -249.0852 1047.6562 -249.28125 C 1049.2692 -249.43854 1049.9219 -249.91273 1050.6875 -250.15625 C 1050.9282 -250.24429 1051.1507 -250.27762 1051.4375 -250.3125 C 1052.5858 -250.4522 1053.7542 -249.97259 1057.8125 -250.5625 C 1061.8708 -251.15242 1063.3743 -251.33964 1064.0938 -251.59375 C 1064.8104 -251.84691 1065.7684 -252.15182 1066.4062 -252.6875 C 1068.3259 -252.47556 1070.1262 -252.53609 1071.5625 -252.78125 C 1074.6816 -253.31365 1076.6741 -253.70986 1078.6562 -254.09375 C 1080.6383 -254.47762 1081.1305 -255.1334 1082.2188 -255.375 C 1083.3475 -255.62566 1084.489 -255.25871 1088.4688 -256.25 C 1092.4483 -257.24127 1093.8983 -257.6693 1094.5938 -258.03125 C 1095.316 -258.40725 1096.3555 -258.90183 1096.9688 -259.5625 C 1098.9317 -259.57454 1100.7625 -259.85355 1102.1875 -260.40625 C 1105.1387 -261.55085 1107.0607 -262.27567 1108.875 -263.15625 C 1110.3307 -263.86277 1111.1941 -264.85828 1111.4062 -265.15625 C 1111.6185 -265.4542 1111.5051 -265.8848 1111.5312 -265.90625 C 1111.5742 -265.94148 1111.8716 -266.00028 1112.0312 -266.34375 C 1112.8902 -268.19082 1114.3544 -271.97139 1114.4688 -272.65625 C 1114.5825 -273.33839 1114.6368 -274.00902 1114.6875 -274.40625 C 1114.7169 -274.63575 1114.5404 -275.28515 1114.5625 -275.34375 C 1114.5934 -275.42579 1114.8508 -275.59432 1114.9062 -275.84375 C 1115.1725 -277.04206 1114.9953 -278.05111 1114.7812 -279.46875 C 1114.5673 -280.88638 1113.8096 -284.08338 1113.1562 -284.9375 C 1112.4973 -285.79922 1111.9314 -285.94801 1111.4062 -285.9375 z " | ||
1572 | style="fill:#bcb786;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
1573 | id="path7423" | ||
1574 | d="M 1111.4062,-285.9375 L 1107.4688,-284.0625 C 1107.4283,-284.05228 1107.3692,-284.04201 1107.3438,-284.03125 C 1106.925,-283.8184 1107.1791,-283.93067 1106.6875,-283.71875 C 1106.2014,-283.50919 1104.9499,-283.13456 1102.5938,-282.25 C 1099.2626,-280.99942 1096.7895,-280.10016 1095.5938,-279.1875 C 1094.0576,-279.16623 1091.8733,-278.95419 1089.9375,-278.46875 C 1086.956,-277.72108 1085.0823,-277.29474 1083.1875,-276.875 C 1081.2927,-276.45527 1081.512,-276.23281 1080.3125,-276 C 1079.0159,-275.74833 1078.5911,-276.00899 1074.875,-275.21875 C 1071.3851,-274.4766 1065.9802,-273.28768 1064.7188,-272.53125 C 1063.1348,-272.71203 1060.8513,-272.85303 1058.875,-272.5625 C 1055.8346,-272.11554 1053.9588,-271.88974 1052.0312,-271.65625 C 1051.3758,-271.57687 1050.9902,-271.45547 1050.6875,-271.375 C 1050.2613,-271.24334 1050.0017,-271.11498 1049.3125,-271.03125 C 1048.0009,-270.87188 1047.5503,-271.18808 1043.7812,-270.75 C 1040.2273,-270.33691 1034.7758,-269.47718 1033.5312,-268.8125 C 1031.9322,-269.10979 1029.6735,-269.34669 1027.6875,-269.15625 C 1024.6287,-268.86293 1022.7155,-268.67226 1020.7812,-268.5 C 1018.847,-268.32773 1019.0926,-268.07763 1017.875,-267.96875 C 1016.5588,-267.85105 1016.1152,-268.13238 1012.3438,-267.71875 C 1008.8017,-267.3303 1003.3359,-266.50948 1002.0625,-265.84375 C 1000.4636,-266.13844 998.1753,-266.35076 996.1875,-266.15625 C 993.12921,-265.857 991.2463,-265.67601 989.3125,-265.5 C 988.65501,-265.44015 988.27245,-265.32144 987.96875,-265.25 C 987.54105,-265.13104 987.28525,-265.03193 986.59375,-264.96875 C 985.27775,-264.84849 984.834,-265.16363 981.0625,-264.75 C 977.50631,-264.35998 972.0569,-263.51084 970.8125,-262.84375 C 969.21381,-263.13793 966.95265,-263.36747 964.96875,-263.15625 C 961.91305,-262.83092 959.9947,-262.63001 958.0625,-262.4375 C 956.13031,-262.24499 956.37275,-261.99662 955.15625,-261.875 C 953.84137,-261.74353 953.3932,-262.03954 949.625,-261.59375 C 946.08611,-261.17509 940.6473,-260.30158 939.375,-259.625 C 937.77741,-259.90604 935.51505,-260.04543 933.53125,-259.8125 C 930.47927,-259.45413 928.58625,-259.24464 926.65625,-259.03125 C 926.00007,-258.95869 925.6156,-258.85856 925.3125,-258.78125 C 924.88571,-258.65402 924.6276,-258.51405 923.9375,-258.4375 C 922.62411,-258.29181 922.17015,-258.61152 918.40625,-258.125 C 914.85737,-257.66624 909.4276,-256.70598 908.1875,-256 C 906.59441,-256.24424 904.3537,-256.38135 902.375,-256.125 C 899.32741,-255.73018 897.4243,-255.47655 895.5,-255.21875 C 893.57571,-254.96096 893.7739,-254.72522 892.5625,-254.5625 C 891.25301,-254.3866 890.8153,-254.66688 887.0625,-254.09375 C 883.53821,-253.55551 878.1393,-252.39458 876.875,-251.65625 C 875.28751,-251.85979 873.0295,-251.91098 871.0625,-251.5625 C 868.03631,-251.02638 866.1636,-250.70081 864.25,-250.375 C 863.59941,-250.26423 863.2363,-250.10406 862.9375,-250 C 862.51681,-249.83512 862.27405,-249.6687 861.59375,-249.53125 C 860.29905,-249.26966 859.86665,-249.53745 856.15625,-248.71875 C 852.65777,-247.9468 847.31035,-246.33582 846.09375,-245.5 C 844.53085,-245.57745 842.33625,-245.41472 840.40625,-244.90625 C 837.43387,-244.12312 835.58855,-243.67416 833.71875,-243.15625 C 831.84875,-242.63835 832.0521,-242.38897 830.875,-242.0625 C 829.60251,-241.7096 829.17795,-241.95541 825.53125,-240.875 C 822.10657,-239.86037 816.88185,-237.94183 815.65625,-237.03125 C 814.11747,-237.01851 811.93645,-236.75903 810.03125,-236.15625 C 807.10027,-235.22891 805.2809,-234.69783 803.4375,-234.09375 C 802.81071,-233.88837 802.44585,-233.70117 802.15625,-233.5625 C 801.74867,-233.34889 801.50295,-233.15375 800.84375,-232.9375 C 799.58925,-232.52596 799.1576,-232.74846 795.5625,-231.5 C 792.17261,-230.32283 786.96755,-228.2863 785.78125,-227.34375 C 784.25737,-227.28408 782.1312,-226.94888 780.25,-226.28125 C 777.35261,-225.25296 775.55095,-224.60577 773.71875,-223.96875 C 771.88655,-223.33174 772.0909,-223.12021 770.9375,-222.71875 C 769.69071,-222.28479 769.27395,-222.51903 765.71875,-221.15625 C 762.38005,-219.87645 757.23165,-217.6737 756.03125,-216.6875 C 754.52407,-216.57981 752.39555,-216.1887 750.53125,-215.46875 C 747.66307,-214.36115 745.90735,-213.68719 744.09375,-213 C 743.47705,-212.76637 743.0973,-212.55797 742.8125,-212.40625 C 742.81251,-212.40625 742.8125,-212.37673 742.8125,-212.375 L 734.8125,-209.1875 L 736.625,-194.46875 C 736.36701,-194.52956 742.8125,-191.15625 742.8125,-191.15625 C 743.03891,-191.30093 743.26145,-191.42886 743.53125,-191.53125 C 744.61177,-191.94123 745.70285,-191.74702 749.53125,-193.21875 C 753.35977,-194.69049 754.7553,-195.22373 755.4375,-195.625 C 756.11711,-196.02478 757.04925,-196.50437 757.65625,-197.15625 C 759.48317,-197.294 761.22705,-197.64948 762.59375,-198.15625 C 765.56175,-199.25677 767.4691,-199.96244 769.375,-200.625 C 771.28081,-201.28754 771.72915,-202.03987 772.78125,-202.40625 C 773.87287,-202.78636 774.97635,-202.57163 778.84375,-203.9375 C 782.71115,-205.30336 784.1269,-205.76458 784.8125,-206.15625 C 785.51361,-206.55677 786.5133,-207.08923 787.125,-207.75 C 789.09581,-207.80466 790.94195,-208.13463 792.40625,-208.625 C 795.40777,-209.63008 797.3324,-210.24671 799.25,-210.875 C 800.78861,-211.3791 801.42415,-211.92177 802.15625,-212.3125 C 802.38647,-212.44681 802.63215,-212.56623 802.90625,-212.65625 C 804.00457,-213.01673 805.0877,-212.73762 809,-213.96875 C 812.91231,-215.19988 814.366,-215.6417 815.0625,-216 C 815.75641,-216.35697 816.6926,-216.79261 817.3125,-217.40625 C 819.17771,-217.42891 820.94835,-217.67308 822.34375,-218.09375 C 825.37415,-219.00729 827.33615,-219.52385 829.28125,-220.0625 C 831.22637,-220.60114 831.70745,-221.32702 832.78125,-221.625 C 833.89527,-221.93415 835.00125,-221.61761 838.96875,-222.65625 C 842.93625,-223.69488 844.38625,-224.08898 845.09375,-224.40625 C 845.82855,-224.73584 846.90765,-225.15997 847.53125,-225.78125 C 849.52907,-225.66525 851.3887,-225.80134 852.875,-226.15625 C 855.95311,-226.89125 857.9584,-227.25719 859.9375,-227.65625 C 861.52541,-227.97643 862.1818,-228.4468 862.9375,-228.75 C 863.17501,-228.8568 863.4044,-228.94276 863.6875,-229 C 864.82091,-229.22919 865.99215,-228.79107 870.03125,-229.5 C 874.07067,-230.20893 875.5315,-230.42709 876.25,-230.6875 C 876.96581,-230.94694 877.95435,-231.25474 878.59375,-231.78125 C 880.51795,-231.54176 882.34165,-231.55672 883.78125,-231.78125 C 886.90767,-232.26887 888.9358,-232.48192 890.9375,-232.75 C 892.93921,-233.01807 893.42625,-233.69514 894.53125,-233.84375 C 895.67767,-233.99793 896.8071,-233.54218 900.875,-234.0625 C 904.94281,-234.58282 906.43525,-234.75823 907.15625,-235 C 907.89337,-235.24714 908.95435,-235.58623 909.59375,-236.125 C 911.64375,-235.78947 913.56745,-235.72704 915.09375,-235.90625 C 918.23595,-236.27521 920.27375,-236.46561 922.28125,-236.6875 C 923.89207,-236.86552 924.5459,-237.2957 925.3125,-237.53125 C 925.55341,-237.61677 925.80655,-237.68685 926.09375,-237.71875 C 927.24345,-237.84647 928.39505,-237.3721 932.46875,-237.84375 C 936.54245,-238.3154 938.0278,-238.45435 938.75,-238.6875 C 939.46941,-238.91977 940.45025,-239.16096 941.09375,-239.65625 C 943.03005,-239.32279 944.8638,-239.25201 946.3125,-239.40625 C 949.45851,-239.7412 951.49,-239.92484 953.5,-240.125 C 955.50991,-240.32514 955.98415,-240.95139 957.09375,-241.0625 C 958.24485,-241.17778 959.39025,-240.69744 963.46875,-241.125 C 967.54725,-241.55256 969.05765,-241.68709 969.78125,-241.90625 C 970.52047,-242.13011 971.57685,-242.4195 972.21875,-242.9375 C 974.27575,-242.53883 976.2206,-242.4441 977.75,-242.59375 C 980.89871,-242.90185 982.9258,-243.067 984.9375,-243.25 C 986.55151,-243.39682 987.20055,-243.81055 987.96875,-244.03125 C 988.21005,-244.11211 988.4623,-244.16116 988.75,-244.1875 C 989.90211,-244.29295 991.0429,-243.79475 995.125,-244.1875 C 999.20711,-244.58025 1000.7139,-244.71834 1001.4375,-244.9375 C 1002.1584,-245.15583 1003.1371,-245.3852 1003.7812,-245.875 C 1005.7193,-245.52501 1007.5501,-245.42062 1009,-245.5625 C 1012.1487,-245.8706 1014.1758,-246.03575 1016.1875,-246.21875 C 1018.1991,-246.40174 1018.7017,-247.05677 1019.8125,-247.15625 C 1020.9648,-247.25948 1022.1047,-246.77142 1026.1875,-247.15625 C 1030.2704,-247.54107 1031.7762,-247.65725 1032.5,-247.875 C 1033.2393,-248.09743 1034.2956,-248.38949 1034.9375,-248.90625 C 1036.9949,-248.50448 1038.9404,-248.40292 1040.4688,-248.5625 C 1043.6153,-248.89102 1045.6458,-249.0852 1047.6562,-249.28125 C 1049.2692,-249.43854 1049.9219,-249.91273 1050.6875,-250.15625 C 1050.9282,-250.24429 1051.1507,-250.27762 1051.4375,-250.3125 C 1052.5858,-250.4522 1053.7542,-249.97259 1057.8125,-250.5625 C 1061.8708,-251.15242 1063.3743,-251.33964 1064.0938,-251.59375 C 1064.8104,-251.84691 1065.7684,-252.15182 1066.4062,-252.6875 C 1068.3259,-252.47556 1070.1262,-252.53609 1071.5625,-252.78125 C 1074.6816,-253.31365 1076.6741,-253.70986 1078.6562,-254.09375 C 1080.6383,-254.47762 1081.1305,-255.1334 1082.2188,-255.375 C 1083.3475,-255.62566 1084.489,-255.25871 1088.4688,-256.25 C 1092.4483,-257.24127 1093.8983,-257.6693 1094.5938,-258.03125 C 1095.316,-258.40725 1096.3555,-258.90183 1096.9688,-259.5625 C 1098.9317,-259.57454 1100.7625,-259.85355 1102.1875,-260.40625 C 1105.1387,-261.55085 1107.0607,-262.27567 1108.875,-263.15625 C 1110.3307,-263.86277 1111.1941,-264.85828 1111.4062,-265.15625 C 1111.6185,-265.4542 1111.5051,-265.8848 1111.5312,-265.90625 C 1111.5742,-265.94148 1111.8716,-266.00028 1112.0312,-266.34375 C 1112.8902,-268.19082 1114.3544,-271.97139 1114.4688,-272.65625 C 1114.5825,-273.33839 1114.6368,-274.00902 1114.6875,-274.40625 C 1114.7169,-274.63575 1114.5404,-275.28515 1114.5625,-275.34375 C 1114.5934,-275.42579 1114.8508,-275.59432 1114.9062,-275.84375 C 1115.1725,-277.04206 1114.9953,-278.05111 1114.7812,-279.46875 C 1114.5673,-280.88638 1113.8096,-284.08338 1113.1562,-284.9375 C 1112.4973,-285.79922 1111.9314,-285.94801 1111.4062,-285.9375 z" | ||
1575 | transform="translate(8.0045714e-2,-3.125e-2)" /> | ||
1576 | </clipPath> | ||
1577 | <filter | ||
1578 | inkscape:collect="always" | ||
1579 | id="filter7578" | ||
1580 | x="-0.08160872" | ||
1581 | width="1.1632174" | ||
1582 | y="-0.22659944" | ||
1583 | height="1.4531989"> | ||
1584 | <feGaussianBlur | ||
1585 | inkscape:collect="always" | ||
1586 | stdDeviation="2.437399" | ||
1587 | id="feGaussianBlur7580" /> | ||
1588 | </filter> | ||
1589 | <filter | ||
1590 | inkscape:collect="always" | ||
1591 | id="filter7594" | ||
1592 | x="-0.040804356" | ||
1593 | width="1.0816087" | ||
1594 | y="-0.11329972" | ||
1595 | height="1.2265995"> | ||
1596 | <feGaussianBlur | ||
1597 | inkscape:collect="always" | ||
1598 | stdDeviation="1.2186995" | ||
1599 | id="feGaussianBlur7596" /> | ||
1600 | </filter> | ||
1601 | <clipPath | ||
1602 | clipPathUnits="userSpaceOnUse" | ||
1603 | id="clipPath7606"> | ||
1604 | <path | ||
1605 | id="path7608" | ||
1606 | d="M 1049.205,-282.26672 L 1049.1152,-282.25891 C 1047.7278,-281.37446 1042.5119,-280.65171 1042.4862,-272.73547 C 1042.462,-265.31022 1057.4991,-255.64401 1059.6425,-254.64172 C 1061.3727,-253.83263 1063.2341,-253.23296 1065.0488,-252.92297 L 1066.4862,-252.70422 C 1068.4059,-252.49228 1070.2062,-252.55281 1071.6425,-252.79797 C 1074.7616,-253.33037 1076.7541,-253.72658 1078.7362,-254.11047 C 1080.7183,-254.49434 1081.2105,-255.15012 1082.2988,-255.39172 C 1083.4275,-255.64238 1084.569,-255.27543 1088.5488,-256.26672 C 1092.5283,-257.258 1093.9782,-257.68602 1094.6738,-258.04797 C 1095.396,-258.42398 1096.4355,-258.91855 1097.0488,-259.57922 C 1099.0117,-259.59127 1100.8425,-259.87027 1102.2675,-260.42297 C 1105.2187,-261.56758 1107.1407,-262.29239 1108.955,-263.17297 C 1110.4107,-263.8795 1111.2741,-264.875 1111.4862,-265.17297 C 1111.6985,-265.47093 1111.5852,-265.90152 1111.6112,-265.92297 C 1111.6542,-265.95821 1111.9517,-266.017 1112.1112,-266.36047 C 1112.9702,-268.20755 1114.4344,-271.98811 1114.5488,-272.67297 C 1114.6625,-273.35512 1114.7168,-274.02574 1114.7675,-274.42297 C 1114.7969,-274.65248 1114.6204,-275.30187 1114.6425,-275.36047 C 1114.6734,-275.44252 1114.9308,-275.61104 1114.9862,-275.86047 C 1115.2525,-277.05879 1115.0754,-278.06783 1114.8612,-279.48547 C 1114.6473,-280.90311 1113.8896,-284.1001 1113.2362,-284.95422 C 1112.8168,-285.50279 1112.4369,-285.74672 1112.08,-285.86047 C 1112.0129,-285.87776 1111.9561,-285.90721 1111.8925,-285.92297 C 1111.8715,-285.92695 1111.8508,-285.91983 1111.83,-285.92297 C 1111.5184,-285.99847 1111.2215,-286.08164 1110.6738,-286.14172 C 1109.6883,-286.24984 1108.2491,-286.40112 1106.705,-286.39172 C 1106.1903,-286.38859 1105.6679,-286.34408 1105.1425,-286.29797 C 1101.5836,-285.98569 1096.1327,-285.30689 1094.9238,-284.67297 C 1093.2907,-285.00699 1090.9756,-285.2852 1088.9862,-285.14172 C 1085.9222,-284.92075 1084.0185,-284.79953 1082.08,-284.67297 C 1080.1416,-284.54642 1080.3939,-284.28433 1079.1738,-284.20422 C 1077.8547,-284.11762 1077.3869,-284.42747 1073.6112,-284.11047 C 1070.0655,-283.81275 1064.6306,-283.1173 1063.3925,-282.48547 C 1061.7591,-282.81998 1059.4466,-283.09786 1057.455,-282.95422 C 1054.3908,-282.73324 1052.4872,-282.58078 1050.5488,-282.45422 C 1049.8896,-282.41119 1049.5064,-282.33029 1049.205,-282.26672 z" | ||
1607 | style="opacity:0.82448976;fill:#bcb786;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
1608 | </clipPath> | ||
1609 | <filter | ||
1610 | inkscape:collect="always" | ||
1611 | id="filter7610" | ||
1612 | x="-0.021942979" | ||
1613 | width="1.0438859" | ||
1614 | y="-0.10017137" | ||
1615 | height="1.2003427"> | ||
1616 | <feGaussianBlur | ||
1617 | inkscape:collect="always" | ||
1618 | stdDeviation="0.57530213" | ||
1619 | id="feGaussianBlur7612" /> | ||
1620 | </filter> | ||
1621 | <clipPath | ||
1622 | clipPathUnits="userSpaceOnUse" | ||
1623 | id="clipPath7616"> | ||
1624 | <path | ||
1625 | id="path7618" | ||
1626 | d="M 205.47016,-408.97318 L 205.38003,-408.97164 C 203.9344,-408.18598 198.68082,-407.82829 198.10378,-399.93307 C 197.56244,-392.52754 211.88973,-381.83741 213.95811,-380.68826 C 215.62775,-379.76062 217.44286,-379.03275 219.23156,-378.59711 L 220.65023,-378.27877 C 222.5505,-377.93363 224.35065,-377.86862 225.80054,-378.01314 C 228.94914,-378.32698 230.9644,-378.58345 232.96843,-378.82834 C 234.97245,-379.07322 235.50913,-379.69312 236.61162,-379.85833 C 237.75504,-380.02976 238.86821,-379.58419 242.90739,-380.29586 C 246.94627,-381.00755 248.42246,-381.33354 249.14158,-381.64616 C 249.88822,-381.97095 250.95964,-382.39191 251.61747,-383.00826 C 253.57644,-382.88355 255.42223,-383.03435 256.88227,-383.48645 C 259.90603,-384.42272 261.87384,-385.01189 263.74507,-385.76396 C 265.24645,-386.36738 266.17709,-387.30032 266.40943,-387.58279 C 266.64197,-387.86524 266.55894,-388.30268 266.58637,-388.32227 C 266.63172,-388.35443 266.93259,-388.39235 267.11563,-388.72388 C 268.1012,-390.50664 269.82518,-394.17603 269.987,-394.85126 C 270.14794,-395.52383 270.24882,-396.18904 270.32707,-396.58177 C 270.37238,-396.80868 270.24154,-397.46878 270.26767,-397.5257 C 270.30421,-397.6054 270.57272,-397.75558 270.64536,-398.00055 C 270.99449,-399.17741 270.8881,-400.19633 270.77316,-401.62545 C 270.65853,-403.05454 270.12535,-406.29655 269.53303,-407.1941 C 269.15286,-407.77056 268.79088,-408.04035 268.44277,-408.17869 C 268.37703,-408.20061 268.32242,-408.23394 268.26007,-408.2541 C 268.2394,-408.25953 268.21826,-408.25387 268.19773,-408.25845 C 267.89214,-408.35547 267.60176,-408.45912 267.05957,-408.5572 C 266.084,-408.7337 264.65883,-408.98486 263.11782,-409.08304 C 262.60416,-409.11577 262.07992,-409.10775 261.55259,-409.09835 C 257.98058,-409.03472 252.49564,-408.73725 251.24552,-408.18907 C 249.63965,-408.63604 247.34955,-409.07483 245.35499,-409.07027 C 242.28304,-409.06325 240.37552,-409.07493 238.43292,-409.0837 C 236.49041,-409.09248 236.72384,-408.81345 235.50112,-408.81852 C 234.1792,-408.82401 233.73411,-409.16569 229.9455,-409.11245 C 226.38768,-409.06243 220.91754,-408.74723 219.63844,-408.20318 C 218.0323,-408.65065 215.74477,-409.08893 213.74801,-409.08436 C 210.67586,-409.07735 208.76626,-409.05786 206.82375,-409.06662 C 206.16316,-409.06961 205.77525,-409.0156 205.47016,-408.97318 z" | ||
1627 | style="opacity:0.82448976;fill:#bcb786;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
1628 | </clipPath> | ||
1629 | <linearGradient | ||
1630 | inkscape:collect="always" | ||
1631 | xlink:href="#linearGradient7622" | ||
1632 | id="linearGradient7708" | ||
1633 | gradientUnits="userSpaceOnUse" | ||
1634 | gradientTransform="translate(-19.091883,4.2426407)" | ||
1635 | x1="774.97668" | ||
1636 | y1="-211.87105" | ||
1637 | x2="755.11584" | ||
1638 | y2="-202.67865" /> | ||
1639 | <mask | ||
1640 | maskUnits="userSpaceOnUse" | ||
1641 | id="mask7704"> | ||
1642 | <path | ||
1643 | style="fill:url(#linearGradient7708);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" | ||
1644 | d="M 718.40812,-224.31217 L 751.65812,-168.31217 L 1027.6581,-192.31217 L 1187.1581,-240.56217 L 1120.6581,-323.31217 L 718.40812,-224.31217 z" | ||
1645 | id="path7706" /> | ||
1646 | </mask> | ||
1647 | <radialGradient | ||
1648 | inkscape:collect="always" | ||
1649 | xlink:href="#linearGradient8430" | ||
1650 | id="radialGradient7904" | ||
1651 | gradientUnits="userSpaceOnUse" | ||
1652 | gradientTransform="matrix(-0.3324832,0.9022288,-0.9582407,-0.3531242,305.29227,19.909497)" | ||
1653 | cx="142.95833" | ||
1654 | cy="107.09234" | ||
1655 | fx="142.95833" | ||
1656 | fy="107.09234" | ||
1657 | r="66.981766" /> | ||
1658 | <radialGradient | ||
1659 | inkscape:collect="always" | ||
1660 | xlink:href="#linearGradient3317" | ||
1661 | id="radialGradient7906" | ||
1662 | gradientUnits="userSpaceOnUse" | ||
1663 | gradientTransform="matrix(1.0036478,-1.0345492e-7,1.7124628e-7,1.6613125,-160.53487,-96.205369)" | ||
1664 | cx="317.78754" | ||
1665 | cy="129.65378" | ||
1666 | fx="317.78754" | ||
1667 | fy="129.65378" | ||
1668 | r="47.863216" /> | ||
1669 | <radialGradient | ||
1670 | inkscape:collect="always" | ||
1671 | xlink:href="#linearGradient8398" | ||
1672 | id="radialGradient7908" | ||
1673 | gradientUnits="userSpaceOnUse" | ||
1674 | gradientTransform="matrix(2.0747661,-0.1577957,0.2382425,3.1325183,-550.77432,-65.728909)" | ||
1675 | cx="325.30847" | ||
1676 | cy="80.909554" | ||
1677 | fx="325.30847" | ||
1678 | fy="80.909554" | ||
1679 | r="26.937988" /> | ||
1680 | <clipPath | ||
1681 | clipPathUnits="userSpaceOnUse" | ||
1682 | id="clipPath8209"> | ||
1683 | <path | ||
1684 | sodipodi:nodetypes="czcc" | ||
1685 | id="path8211" | ||
1686 | d="M 734.03125,519.49186 C 734.03125,519.49186 750.78638,556.50992 762.73266,573.44581 C 774.67895,590.3817 815.45982,629.49186 815.45982,629.49186 L 816.05699,490.90211" | ||
1687 | style="opacity:1;fill:#1a1a1a;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> | ||
1688 | </clipPath> | ||
1689 | <filter | ||
1690 | inkscape:collect="always" | ||
1691 | id="filter8225"> | ||
1692 | <feGaussianBlur | ||
1693 | inkscape:collect="always" | ||
1694 | stdDeviation="10.661912" | ||
1695 | id="feGaussianBlur8227" /> | ||
1696 | </filter> | ||
1697 | <filter | ||
1698 | inkscape:collect="always" | ||
1699 | id="filter8333"> | ||
1700 | <feGaussianBlur | ||
1701 | inkscape:collect="always" | ||
1702 | stdDeviation="7.18" | ||
1703 | id="feGaussianBlur8335" /> | ||
1704 | </filter> | ||
1705 | <clipPath | ||
1706 | clipPathUnits="userSpaceOnUse" | ||
1707 | id="clipPath8338"> | ||
1708 | <path | ||
1709 | sodipodi:nodetypes="czzzzzzcccccccccczczz" | ||
1710 | id="path8340" | ||
1711 | d="M 266.27183,924.57185 C 264.86456,943.37307 265.12693,957.32289 268.35357,973.87513 C 271.58023,990.42751 284.75966,1019.7825 288.68798,1037.0589 C 292.61419,1054.326 291.38211,1075.3686 276.22854,1088.2071 C 260.91093,1101.1846 234.17727,1109.8061 208.39624,1103.9409 C 182.61518,1098.0756 138.84716,1054.7175 119.80605,1033.7126 C 100.6939,1012.6293 56.045182,939.86193 41.867507,909.4368 C 27.689835,879.01168 29.207902,872.71823 33.747792,863.90708 C 24.38107,839.38658 21.33408,813.84026 0.035334479,788.33044 C 30.360814,791.44487 43.915624,815.28676 60.161024,835.47019 C 54.631128,787.39416 42.106309,771.05368 31.787072,744.74589 C 61.781367,750.82754 82.366432,776.61828 95.766855,817.45839 C 105.32101,813.54047 114.00462,808.08545 125.95427,808.39719 C 114.65677,766.70139 108.0048,738.48134 89.267014,707.32725 C 142.70898,712.99757 172.92404,787.96657 168.23844,795.28805 C 178.21641,793.04406 187.24409,788.75767 198.67497,789.63638 C 187.426,751.28935 177.62715,712.76848 195.01526,670.98819 C 195.01526,670.98819 243.30204,736.42507 249.40491,756.79397 C 255.50779,777.16287 250.92373,795.49448 250.92373,795.49448 C 250.92373,795.49448 267.8833,826.57978 271.21765,846.58862 C 274.59075,866.82996 267.68496,905.69193 266.27183,924.57185 z" | ||
1712 | style="opacity:1;fill:#ada469;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
1713 | </clipPath> | ||
1714 | <filter | ||
1715 | inkscape:collect="always" | ||
1716 | id="filter8354"> | ||
1717 | <feGaussianBlur | ||
1718 | inkscape:collect="always" | ||
1719 | stdDeviation="6.82" | ||
1720 | id="feGaussianBlur8356" /> | ||
1721 | </filter> | ||
1722 | <clipPath | ||
1723 | clipPathUnits="userSpaceOnUse" | ||
1724 | id="clipPath8359"> | ||
1725 | <path | ||
1726 | sodipodi:nodetypes="czzzzzzcccccccccczczz" | ||
1727 | id="path8361" | ||
1728 | d="M 266.27183,924.57185 C 264.86456,943.37307 265.12693,957.32289 268.35357,973.87513 C 271.58023,990.42751 284.75966,1019.7825 288.68798,1037.0589 C 292.61419,1054.326 291.38211,1075.3686 276.22854,1088.2071 C 260.91093,1101.1846 234.17727,1109.8061 208.39624,1103.9409 C 182.61518,1098.0756 138.84716,1054.7175 119.80605,1033.7126 C 100.6939,1012.6293 56.045182,939.86193 41.867507,909.4368 C 27.689835,879.01168 29.207902,872.71823 33.747792,863.90708 C 24.38107,839.38658 21.33408,813.84026 0.035334479,788.33044 C 30.360814,791.44487 43.915624,815.28676 60.161024,835.47019 C 54.631128,787.39416 42.106309,771.05368 31.787072,744.74589 C 61.781367,750.82754 82.366432,776.61828 95.766855,817.45839 C 105.32101,813.54047 114.00462,808.08545 125.95427,808.39719 C 114.65677,766.70139 108.0048,738.48134 89.267014,707.32725 C 142.70898,712.99757 172.92404,787.96657 168.23844,795.28805 C 178.21641,793.04406 187.24409,788.75767 198.67497,789.63638 C 187.426,751.28935 177.62715,712.76848 195.01526,670.98819 C 195.01526,670.98819 243.30204,736.42507 249.40491,756.79397 C 255.50779,777.16287 250.92373,795.49448 250.92373,795.49448 C 250.92373,795.49448 267.8833,826.57978 271.21765,846.58862 C 274.59075,866.82996 267.68496,905.69193 266.27183,924.57185 z" | ||
1729 | style="opacity:1;fill:#ada469;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
1730 | </clipPath> | ||
1731 | <filter | ||
1732 | inkscape:collect="always" | ||
1733 | id="filter8379" | ||
1734 | x="-0.14413793" | ||
1735 | width="1.288276" | ||
1736 | y="-0.10278689" | ||
1737 | height="1.2055738"> | ||
1738 | <feGaussianBlur | ||
1739 | inkscape:collect="always" | ||
1740 | stdDeviation="7.389266" | ||
1741 | id="feGaussianBlur8381" /> | ||
1742 | </filter> | ||
1743 | <clipPath | ||
1744 | clipPathUnits="userSpaceOnUse" | ||
1745 | id="clipPath8392"> | ||
1746 | <path | ||
1747 | sodipodi:nodetypes="czzzzzzcccccccccczczz" | ||
1748 | id="path8394" | ||
1749 | d="M 760.16396,935.83377 C 766.95806,954.73656 770.65765,969.13346 772.05426,987.04566 C 773.45088,1004.958 768.27158,1038.8465 769.1538,1057.7018 C 770.03555,1076.547 777.28749,1097.8008 796.49843,1106.6707 C 815.9173,1115.6365 845.81767,1116.882 870.61827,1103.5251 C 895.41887,1090.1681 928.01929,1033.1996 941.59253,1006.2164 C 955.21638,979.13246 980.3536,891.71903 986.25333,856.44781 C 992.15306,821.1766 988.80387,815.14704 981.63585,807.39232 C 984.27615,779.55217 980.13613,752.45689 994.74554,720.20614 C 964.49653,732.03184 957.36325,760.36684 946.42665,785.71122 C 938.42574,734.77829 946.63581,714.43803 949.74554,684.49186 C 920.68078,699.26977 906.88403,731.60588 904.74554,777.349 C 893.82159,776.0448 883.3541,772.91477 871.17411,776.63471 C 870.91007,730.61137 869.71055,699.7453 880.08474,662.42822 C 826.82927,683.45508 817.13746,769.02232 824.03125,775.20614 C 813.14843,775.74114 802.66017,773.90884 791.17411,778.06329 C 791.81303,735.49194 790.91365,693.15468 761.17411,655.20614 C 761.17411,655.20614 730.21605,736.12848 729.74554,758.77757 C 729.27503,781.42666 739.19713,798.94345 739.19713,798.94345 C 739.19713,798.94345 730.62906,835.68396 732.89854,857.17568 C 735.19439,878.91714 753.34144,916.85185 760.16396,935.83377 z" | ||
1750 | style="opacity:1;fill:#ada469;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
1751 | </clipPath> | ||
1752 | <filter | ||
1753 | inkscape:collect="always" | ||
1754 | id="filter8404" | ||
1755 | x="-0.090268657" | ||
1756 | width="1.1805373" | ||
1757 | y="-0.10250848" | ||
1758 | height="1.205017"> | ||
1759 | <feGaussianBlur | ||
1760 | inkscape:collect="always" | ||
1761 | stdDeviation="5.3457272" | ||
1762 | id="feGaussianBlur8406" /> | ||
1763 | </filter> | ||
1764 | <clipPath | ||
1765 | clipPathUnits="userSpaceOnUse" | ||
1766 | id="clipPath8417"> | ||
1767 | <path | ||
1768 | sodipodi:nodetypes="czzzzzzcccccccccczczz" | ||
1769 | id="path8419" | ||
1770 | d="M 760.16396,935.83377 C 766.95806,954.73656 770.65765,969.13346 772.05426,987.04566 C 773.45088,1004.958 768.27158,1038.8465 769.1538,1057.7018 C 770.03555,1076.547 777.28749,1097.8008 796.49843,1106.6707 C 815.9173,1115.6365 845.81767,1116.882 870.61827,1103.5251 C 895.41887,1090.1681 928.01929,1033.1996 941.59253,1006.2164 C 955.21638,979.13246 980.3536,891.71903 986.25333,856.44781 C 992.15306,821.1766 988.80387,815.14704 981.63585,807.39232 C 984.27615,779.55217 980.13613,752.45689 994.74554,720.20614 C 964.49653,732.03184 957.36325,760.36684 946.42665,785.71122 C 938.42574,734.77829 946.63581,714.43803 949.74554,684.49186 C 920.68078,699.26977 906.88403,731.60588 904.74554,777.349 C 893.82159,776.0448 883.3541,772.91477 871.17411,776.63471 C 870.91007,730.61137 869.71055,699.7453 880.08474,662.42822 C 826.82927,683.45508 817.13746,769.02232 824.03125,775.20614 C 813.14843,775.74114 802.66017,773.90884 791.17411,778.06329 C 791.81303,735.49194 790.91365,693.15468 761.17411,655.20614 C 761.17411,655.20614 730.21605,736.12848 729.74554,758.77757 C 729.27503,781.42666 739.19713,798.94345 739.19713,798.94345 C 739.19713,798.94345 730.62906,835.68396 732.89854,857.17568 C 735.19439,878.91714 753.34144,916.85185 760.16396,935.83377 z" | ||
1771 | style="opacity:1;fill:#ada469;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
1772 | </clipPath> | ||
1773 | </defs> | ||
1774 | <metadata | ||
1775 | id="metadata7"> | ||
1776 | <rdf:RDF> | ||
1777 | <cc:Work | ||
1778 | rdf:about=""> | ||
1779 | <dc:format>image/svg+xml</dc:format> | ||
1780 | <dc:type | ||
1781 | rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> | ||
1782 | </cc:Work> | ||
1783 | </rdf:RDF> | ||
1784 | </metadata> | ||
1785 | <g | ||
1786 | inkscape:groupmode="layer" | ||
1787 | id="layer1" | ||
1788 | inkscape:label="Shadow"> | ||
1789 | <path | ||
1790 | style="opacity:0.5;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter11361);enable-background:new" | ||
1791 | d="M 304.64285,526.6479 C 294.64285,527.00505 286.42857,529.50504 286.42857,529.50504 L 293.92857,535.57647 L 304.28571,539.1479 L 320.35714,539.50504 L 342.85714,534.1479 L 350.71428,535.21933 L 371.07143,533.07647 L 360.71428,539.86219 C 366.17351,538.83858 378.10757,543.4313 370.35714,545.21933 C 368.61714,545.62075 384.28571,540.57648 384.28571,540.57648 L 386.78571,535.93361 L 390.35714,526.6479 L 401.78571,526.6479 L 419.99999,522.00504 L 423.57143,517.00505 L 407.49999,518.07647 L 395.35714,520.21933 L 380.71428,515.21933 L 310.02218,531.92707 L 304.64285,526.6479 z" | ||
1792 | id="path10326" | ||
1793 | sodipodi:nodetypes="cccccccccsccccccccccc" | ||
1794 | transform="matrix(10.726753,0,0,10.726753,-2882.1235,-4565.4583)" | ||
1795 | inkscape:export-filename="/home/cheeseness/Documents/LCA09/mascot/tuz_new.png" | ||
1796 | inkscape:export-xdpi="142.10527" | ||
1797 | inkscape:export-ydpi="142.10527" /> | ||
1798 | </g> | ||
1799 | <g | ||
1800 | inkscape:groupmode="layer" | ||
1801 | id="layer20" | ||
1802 | inkscape:label="New Ear"> | ||
1803 | <g | ||
1804 | style="opacity:1;display:inline;enable-background:new" | ||
1805 | id="g7882" | ||
1806 | transform="matrix(0.71084,-0.1937433,0.262963,0.9648058,503.68027,136.48399)"> | ||
1807 | <path | ||
1808 | sodipodi:nodetypes="czzzzcc" | ||
1809 | id="path7876" | ||
1810 | d="M 245.12255,100.05344 C 245.12255,100.05344 197.99444,68.406519 177.9079,64.252501 C 157.86998,60.108538 139.435,60.934923 125.97426,77.859824 C 112.51352,94.784725 113.89687,139.12502 112.43872,164.82937 C 110.98057,190.53372 114.98817,235.00638 130.04332,253.49489 C 145.09848,271.98339 175.92966,267.07991 179.97027,274.90859 C 182.1831,279.19595 245.12255,100.05344 245.12255,100.05344 z" | ||
1811 | style="opacity:1;fill:url(#radialGradient7904);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> | ||
1812 | <path | ||
1813 | sodipodi:nodetypes="czzzzzc" | ||
1814 | id="path7878" | ||
1815 | d="M 135.37935,82.017807 C 135.37935,82.017807 161.7229,83.95659 173.01242,95.920995 C 184.42736,108.01833 186.74699,117.25251 188.30828,133.65558 C 189.87165,150.08057 187.45871,162.0737 180.49446,169.69292 C 173.53021,177.31214 179.49017,189.27624 154.57841,181.76399 C 129.66665,174.25174 127.54617,153.98101 128.06318,135.45924 C 128.58039,116.93026 135.37935,82.017807 135.37935,82.017807 z" | ||
1816 | style="opacity:1;fill:url(#radialGradient7906);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> | ||
1817 | <path | ||
1818 | sodipodi:nodetypes="czccssc" | ||
1819 | id="path7880" | ||
1820 | d="M 135.648,81.927211 C 135.648,81.927211 131.00335,98.292286 136.23625,110.49031 C 141.72419,123.28285 163.4605,154.75038 163.4605,165.14596 L 186.11675,160.14596 C 188.65893,153.17952 189.32727,144.3939 188.30425,133.64596 C 186.74296,117.24289 184.43795,108.02455 173.023,95.927211 C 163.36812,85.695164 141.42989,82.552354 135.648,81.927211 z" | ||
1821 | style="opacity:1;fill:url(#radialGradient7908);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
1822 | </g> | ||
1823 | </g> | ||
1824 | <g | ||
1825 | inkscape:groupmode="layer" | ||
1826 | id="layer21" | ||
1827 | inkscape:label="Rendered2" | ||
1828 | style="display:inline"> | ||
1829 | <path | ||
1830 | style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
1831 | d="M 845.03125,1154.7776 C 840.74554,1155.4919 817.4031,1158.3957 787.17411,1164.7776 C 756.94512,1171.1595 729.86016,1169.7437 651.38803,1182.1072 C 571.53625,1194.688 557.32367,1224.6495 543.26578,1229.1715 C 528.56564,1233.9001 397.88839,1163.349 397.88839,1163.349 L 402.17411,1069.0633 C 402.17411,1069.0633 488.05962,1052.8624 514.31696,1035.4919 C 540.57431,1018.1214 559.89934,985.82588 573.60268,964.06329 C 587.30602,942.3007 606.45982,892.63471 606.45982,892.63471 L 845.03125,1154.7776 z" | ||
1832 | id="path7917" | ||
1833 | sodipodi:nodetypes="czzzcczzcc" /> | ||
1834 | <path | ||
1835 | style="opacity:0.5;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter8888);enable-background:accumulate" | ||
1836 | d="M 332.34019,898.38549 L 299.60838,837.08593 L 261.99104,882.19239 C 264.16779,883.5095 267.76529,861.33636 307.59144,817.77531 L 332.34019,898.38549 z" | ||
1837 | id="path7919" | ||
1838 | clip-path="url(#clipPath8658)" | ||
1839 | sodipodi:nodetypes="ccccc" | ||
1840 | transform="translate(276,136)" /> | ||
1841 | <path | ||
1842 | style="opacity:1;fill:url(#linearGradient2841);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter8892);enable-background:accumulate" | ||
1843 | d="M 200.81833,863.03015 L 347.18943,811.41136 L 591.14127,1037.6855 L 349.31075,1177.6927 L 168.29141,1090.0114 L 200.81833,863.03015 z" | ||
1844 | id="path7923" | ||
1845 | clip-path="url(#clipPath2833)" | ||
1846 | sodipodi:nodetypes="cccccc" | ||
1847 | transform="translate(276,136)" /> | ||
1848 | <path | ||
1849 | style="opacity:1;fill:#0f0f0f;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
1850 | d="M 642.88839,640.13471 C 642.88839,640.13471 613.33433,680.70776 595.03125,714.42042 C 576.72816,748.13309 536.41016,840.77736 524.67411,885.49185 C 512.91471,930.29529 462.17411,1009.0633 462.17411,1009.0633 L 538.24554,1027.2776 C 538.24554,1027.2776 550.05266,1014.4542 569.31696,981.20614 C 588.58126,947.95806 629.67411,842.63471 629.67411,842.63471 L 642.88839,640.13471 z" | ||
1851 | id="path7921" | ||
1852 | sodipodi:nodetypes="czzcczcc" /> | ||
1853 | <path | ||
1854 | style="opacity:0.4;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter8856);enable-background:accumulate" | ||
1855 | d="M 430.28131,381.94122 C 423.21025,384.76965 194.10007,414.09303 194.10007,414.09303 L 154.46046,773.92607 L 244.65895,866.56568 L 296.98485,752.01438 L 397.45289,565.62246 L 430.28131,381.94122 z" | ||
1856 | id="path7925" | ||
1857 | sodipodi:nodetypes="ccccccc" | ||
1858 | clip-path="url(#clipPath3665)" | ||
1859 | transform="translate(276,136)" /> | ||
1860 | <path | ||
1861 | style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
1862 | d="M 969.67051,1164.0346 C 969.67051,1164.0346 992.92679,1175.4283 1005.7383,1184.5107 C 1018.4357,1193.5122 1035.2107,1209.1598 1047.4307,1221.8712 C 1059.7362,1234.6714 1067.5434,1244.4699 1088.9634,1246.032 C 1110.3956,1247.5949 1142.2458,1237.2444 1162.2594,1221.3678 C 1182.2729,1205.4912 1207.9063,1152.135 1207.9063,1152.135 L 1080.7455,1009.0633" | ||
1863 | id="path7927" | ||
1864 | sodipodi:nodetypes="czzzzcc" /> | ||
1865 | <path | ||
1866 | style="opacity:0.75;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter8860);enable-background:accumulate" | ||
1867 | d="M 331.34019,641.50471 L 216.17367,835.36467 L 260.2153,925.96265 L 357.79603,732.21539 L 331.34019,641.50471 z" | ||
1868 | id="path7929" | ||
1869 | clip-path="url(#clipPath8642)" | ||
1870 | sodipodi:nodetypes="ccccc" | ||
1871 | transform="translate(276,136)" /> | ||
1872 | <g | ||
1873 | style="opacity:1;display:inline;enable-background:new" | ||
1874 | id="g7931" | ||
1875 | transform="matrix(0.9934486,0.1142802,-0.1142802,0.9934486,-9.24324,588.09054)" | ||
1876 | inkscape:transform-center-x="-347.89063" | ||
1877 | inkscape:transform-center-y="-28.255779"> | ||
1878 | <path | ||
1879 | style="opacity:1;fill:#bcb786;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
1880 | d="M 1049.205,-282.26672 L 1049.1152,-282.25891 C 1047.7278,-281.37446 1042.5119,-280.65171 1042.4862,-272.73547 C 1042.462,-265.31022 1057.4991,-255.64401 1059.6425,-254.64172 C 1061.3727,-253.83263 1063.2341,-253.23296 1065.0488,-252.92297 L 1066.4862,-252.70422 C 1068.4059,-252.49228 1070.2062,-252.55281 1071.6425,-252.79797 C 1074.7616,-253.33037 1076.7541,-253.72658 1078.7362,-254.11047 C 1080.7183,-254.49434 1081.2105,-255.15012 1082.2988,-255.39172 C 1083.4275,-255.64238 1084.569,-255.27543 1088.5488,-256.26672 C 1092.5283,-257.258 1093.9782,-257.68602 1094.6738,-258.04797 C 1095.396,-258.42398 1096.4355,-258.91855 1097.0488,-259.57922 C 1099.0117,-259.59127 1100.8425,-259.87027 1102.2675,-260.42297 C 1105.2187,-261.56758 1107.1407,-262.29239 1108.955,-263.17297 C 1110.4107,-263.8795 1111.2741,-264.875 1111.4862,-265.17297 C 1111.6985,-265.47093 1111.5852,-265.90152 1111.6112,-265.92297 C 1111.6542,-265.95821 1111.9517,-266.017 1112.1112,-266.36047 C 1112.9702,-268.20755 1114.4344,-271.98811 1114.5488,-272.67297 C 1114.6625,-273.35512 1114.7168,-274.02574 1114.7675,-274.42297 C 1114.7969,-274.65248 1114.6204,-275.30187 1114.6425,-275.36047 C 1114.6734,-275.44252 1114.9308,-275.61104 1114.9862,-275.86047 C 1115.2525,-277.05879 1115.0754,-278.06783 1114.8612,-279.48547 C 1114.6473,-280.90311 1113.8896,-284.1001 1113.2362,-284.95422 C 1112.8168,-285.50279 1112.4369,-285.74672 1112.08,-285.86047 C 1112.0129,-285.87776 1111.9561,-285.90721 1111.8925,-285.92297 C 1111.8715,-285.92695 1111.8508,-285.91983 1111.83,-285.92297 C 1111.5184,-285.99847 1111.2215,-286.08164 1110.6738,-286.14172 C 1109.6883,-286.24984 1108.2491,-286.40112 1106.705,-286.39172 C 1106.1903,-286.38859 1105.6679,-286.34408 1105.1425,-286.29797 C 1101.5836,-285.98569 1096.1327,-285.30689 1094.9238,-284.67297 C 1093.2907,-285.00699 1090.9756,-285.2852 1088.9862,-285.14172 C 1085.9222,-284.92075 1084.0185,-284.79953 1082.08,-284.67297 C 1080.1416,-284.54642 1080.3939,-284.28433 1079.1738,-284.20422 C 1077.8547,-284.11762 1077.3869,-284.42747 1073.6112,-284.11047 C 1070.0655,-283.81275 1064.6306,-283.1173 1063.3925,-282.48547 C 1061.7591,-282.81998 1059.4466,-283.09786 1057.455,-282.95422 C 1054.3908,-282.73324 1052.4872,-282.58078 1050.5488,-282.45422 C 1049.8896,-282.41119 1049.5064,-282.33029 1049.205,-282.26672 z" | ||
1881 | id="path7933" /> | ||
1882 | <g | ||
1883 | clip-path="url(#clipPath7616)" | ||
1884 | style="display:inline;filter:url(#filter7610);enable-background:new" | ||
1885 | id="g7935" | ||
1886 | transform="matrix(0.9975712,-6.9654277e-2,6.9654277e-2,0.9975712,872.72062,140.02502)"> | ||
1887 | <path | ||
1888 | sodipodi:nodetypes="ccssscsssscscsscsssccscssccsscssscc" | ||
1889 | id="path7937" | ||
1890 | d="M 229.94262,-409.12268 C 226.38481,-409.07267 220.91842,-408.76259 219.63928,-408.21854 C 218.03319,-408.66601 215.73612,-409.09985 213.73933,-409.09528 C 210.66734,-409.08826 208.77464,-409.08651 206.83206,-409.09528 C 206.17159,-409.09827 205.78447,-409.02811 205.47939,-408.98569 C 205.47939,-408.98569 205.47939,-407.88976 205.47939,-407.88976 C 205.59911,-408.06923 205.87191,-408.58022 206.42914,-408.65691 C 207.17672,-408.7598 211.59842,-408.80814 213.73933,-408.76651 C 215.51393,-408.73198 218.19456,-408.49224 220.12854,-407.80756 C 220.44994,-407.69378 220.74779,-407.53378 221.02073,-407.39659 C 222.98415,-406.40966 228.96409,-403.09505 228.96409,-403.09505 C 228.96409,-403.09505 222.33134,-407.04273 221.48122,-407.53358 C 221.27791,-407.65097 220.90658,-407.79127 220.44513,-407.94456 C 221.66576,-408.39235 225.5211,-408.56427 228.27336,-408.65691 C 231.29786,-408.75873 231.62112,-408.7465 233.68405,-408.46512 C 235.81336,-408.17469 237.02256,-407.86236 237.02256,-407.86236 C 237.02255,-407.86236 236.9442,-408.50354 238.05865,-408.65691 C 238.80622,-408.7598 243.22794,-408.80814 245.36884,-408.76651 C 247.43834,-408.72625 250.73489,-408.35935 252.65024,-407.39659 C 253.65356,-406.89226 255.68588,-405.82796 257.44559,-404.86088 L 257.5412,-404.88031 C 257.5412,-404.88031 253.96086,-407.04273 253.11073,-407.53358 C 252.90742,-407.65097 252.5361,-407.79127 252.07464,-407.94456 C 253.29526,-408.39235 257.12183,-408.56427 259.87409,-408.65691 C 262.89859,-408.75873 263.22184,-408.7465 265.28478,-408.46512 C 267.23794,-408.19872 268.2977,-407.93506 268.47939,-407.88976 C 268.47939,-407.88976 268.4523,-408.20122 268.4523,-408.20122 C 268.04327,-408.33767 267.73806,-408.43457 267.05192,-408.5587 C 265.75111,-408.79403 263.6528,-409.16026 261.54335,-409.12268 C 257.9714,-409.05904 252.49007,-408.76672 251.24001,-408.21854 C 249.63418,-408.66549 247.36339,-409.09984 245.36884,-409.09528 C 242.29685,-409.08826 240.37536,-409.08651 238.43279,-409.09528 C 236.49023,-409.10406 236.72011,-408.81621 235.49721,-408.8213 C 234.1753,-408.8268 233.73109,-409.17593 229.94262,-409.12268 C 229.94262,-409.12268 229.94262,-409.12268 229.94262,-409.12268" | ||
1891 | style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
1892 | <path | ||
1893 | id="path7939" | ||
1894 | d="M 206.1989,-407.47878 C 208.11911,-406.66172 210.77605,-405.28595 212.35787,-404.08139 C 213.93971,-402.87683 215.26544,-402.30771 217.91246,-400.16344 C 218.79803,-399.44606 219.66111,-398.81359 220.50439,-398.2417 L 221.04496,-398.43181 C 220.33173,-398.9152 219.5772,-399.45212 218.77587,-400.05384 C 215.95364,-402.17305 215.14932,-402.86357 212.7608,-404.32798 C 210.37226,-405.79238 208.66132,-406.69374 206.1989,-407.47878 C 206.1989,-407.47878 206.1989,-407.47878 206.1989,-407.47878" | ||
1895 | style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
1896 | sodipodi:nodetypes="cssccsscc" /> | ||
1897 | <path | ||
1898 | id="path7941" | ||
1899 | d="M 237.79963,-407.47878 C 239.71984,-406.66172 242.40557,-405.28595 243.98738,-404.08139 C 244.80045,-403.46223 245.54587,-403.01097 246.43784,-402.42738 L 247.08684,-402.54404 C 246.28853,-403.12041 245.51507,-403.63839 244.39031,-404.32798 C 242.00177,-405.79238 240.26205,-406.69374 237.79963,-407.47878 C 237.79963,-407.47878 237.79963,-407.47878 237.79963,-407.47878" | ||
1900 | style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
1901 | sodipodi:nodetypes="csccscc" /> | ||
1902 | </g> | ||
1903 | <g | ||
1904 | clip-path="url(#clipPath7606)" | ||
1905 | id="g7943"> | ||
1906 | <path | ||
1907 | style="opacity:0.75;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter7578);enable-background:new" | ||
1908 | d="M 1056.25,-278.80481 C 1060.3946,-280.28358 1066.25,-275.67981 1066.25,-275.67981 C 1067.149,-275.39889 1068.9751,-276.57428 1068.8743,-277.36595 C 1068.8743,-277.36595 1067.324,-279.22657 1068.5,-280.30481 C 1069.676,-281.38305 1073.796,-278.79743 1076,-278.67981 C 1078.204,-278.56219 1081.5621,-278.90922 1083,-279.42981 C 1084.4379,-279.9504 1084.1129,-280.8544 1085.625,-281.17981 C 1087.1371,-281.50522 1090.7439,-280.14227 1092.6855,-280.01098 C 1094.6271,-279.87969 1097.3336,-279.67671 1098.5,-280.17981 C 1099.6664,-280.68291 1098.6782,-281.33902 1100.375,-282.05481 C 1102.0718,-282.7706 1108.1352,-283.01143 1110,-282.17981 C 1111.8648,-281.34819 1111.8099,-281.66061 1112.625,-279.17981 C 1113.4401,-276.69901 1120.0648,-274.01696 1111.5,-265.80481 C 1102.9352,-257.59266 1052.1221,-252.01887 1045.875,-263.05481 C 1039.6279,-274.09075 1052.1054,-277.32604 1056.25,-278.80481 z" | ||
1909 | id="path7945" | ||
1910 | sodipodi:nodetypes="czzzzzzzzzzzzzz" /> | ||
1911 | <path | ||
1912 | style="opacity:0.75;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter7594);enable-background:new" | ||
1913 | d="M 1058.5,-275.42981 C 1062.6446,-276.90858 1068.5,-272.30481 1068.5,-272.30481 C 1069.399,-272.02389 1071.2251,-273.19928 1071.1243,-273.99095 C 1071.1243,-273.99095 1069.574,-275.85157 1070.75,-276.92981 C 1071.926,-278.00805 1076.046,-275.42243 1078.25,-275.30481 C 1080.454,-275.18719 1083.8121,-275.53422 1085.25,-276.05481 C 1086.6879,-276.5754 1086.3629,-277.4794 1087.875,-277.80481 C 1089.3871,-278.13022 1092.9939,-276.76727 1094.9355,-276.63598 C 1096.8771,-276.50469 1099.5836,-276.30171 1100.75,-276.80481 C 1101.9164,-277.30791 1100.9282,-277.96402 1102.625,-278.67981 C 1104.3218,-279.3956 1110.3852,-279.63643 1112.25,-278.80481 C 1114.1148,-277.97319 1114.0599,-278.28561 1114.875,-275.80481 C 1115.6901,-273.32401 1122.3148,-270.64196 1113.75,-262.42981 C 1105.1852,-254.21766 1054.3721,-248.64387 1048.125,-259.67981 C 1041.8779,-270.71575 1054.3554,-273.95104 1058.5,-275.42981 z" | ||
1914 | id="path7947" | ||
1915 | sodipodi:nodetypes="czzzzzzzzzzzzzz" /> | ||
1916 | </g> | ||
1917 | </g> | ||
1918 | <path | ||
1919 | style="opacity:1;fill:#101414;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
1920 | d="M 628.24553,347.99185 C 624.4411,322.72762 611.43581,297.35383 611.08873,272.46662 C 610.90247,259.1111 614.36158,245.89571 624.84426,232.91257 C 661.19128,167.61674 741.78517,148.21789 810.77892,141.44715 C 897.70131,130.43035 995.69159,159.38722 1044.1503,236.84843 C 1098.2743,312.58173 1100.825,409.38755 1124.7623,496.37638 C 1154.2001,623.50398 1179.5414,752.59052 1185.1545,883.22673 C 1182.0911,961.40858 1176.7282,1048.4109 1124.6513,1111.3609 C 1076.6248,1161.7183 1001.8649,1161.4139 937.58145,1170.3632 C 847.02606,1175.0182 753.22992,1154.2174 675.79755,1106.165 C 611.02191,1068.225 580.06736,992.68633 578.51815,920.14538 C 570.12898,840.27022 604.90967,766.33687 630.13855,692.98577 C 637.60916,610.2247 639.55141,526.73802 639.79189,443.60093 C 638.95507,411.40549 632.70236,379.7836 628.24553,347.99185 z" | ||
1921 | id="path7949" | ||
1922 | sodipodi:nodetypes="cscccccccccccc" /> | ||
1923 | <path | ||
1924 | style="opacity:0.25;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter8940);enable-background:accumulate" | ||
1925 | d="M 311.83409,415.43155 L 321.73359,537.05392 L 261.62951,673.52553 L 277.18586,848.1809 C 292.79912,910.0601 309.37131,946.84995 351.56201,965.23473 C 355.88112,928.99475 312.95049,822.27485 312.31937,776.11489 C 311.68792,729.93044 323.14971,667.50703 342.99704,617.81842 C 363.04539,567.62654 379.89378,572.972 385.12193,525.22549 C 390.35008,477.47898 367.69553,375.83357 367.69553,375.83357 L 311.83409,415.43155 z" | ||
1926 | id="path7951" | ||
1927 | sodipodi:nodetypes="ccccczzzcc" | ||
1928 | clip-path="url(#clipPath8616)" | ||
1929 | transform="translate(276,136)" /> | ||
1930 | <path | ||
1931 | style="opacity:1;fill:url(#linearGradient8970);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
1932 | d="M 1010.0312,655.49186 C 1010.0312,655.49186 1026.7864,692.50992 1038.7327,709.44581 C 1050.6789,726.3817 1091.4598,765.49186 1091.4598,765.49186 L 1144.057,637.90211" | ||
1933 | id="path7953" | ||
1934 | sodipodi:nodetypes="czcc" /> | ||
1935 | <path | ||
1936 | style="opacity:0.07999998;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter8822);enable-background:accumulate" | ||
1937 | d="M 730.31998,536.56864 C 730.31998,545.05392 772.86772,595.03667 772.86772,595.03667 L 785.47431,566.26713 L 730.31998,536.56864 z" | ||
1938 | id="path7955" | ||
1939 | sodipodi:nodetypes="cccc" | ||
1940 | clip-path="url(#clipPath8209)" | ||
1941 | transform="translate(276,136)" /> | ||
1942 | <g | ||
1943 | transform="translate(450.03125,73.843964)" | ||
1944 | style="opacity:1;display:inline;enable-background:new" | ||
1945 | id="g7957" | ||
1946 | clip-path="url(#clipPath3998)"> | ||
1947 | <g | ||
1948 | transform="translate(-174.03125,62.156036)" | ||
1949 | style="filter:url(#filter3677)" | ||
1950 | id="g7959"> | ||
1951 | <g | ||
1952 | id="g7961" | ||
1953 | style="filter:url(#filter3785)"> | ||
1954 | <path | ||
1955 | sodipodi:nodetypes="czzzzzzzzzz" | ||
1956 | id="path7963" | ||
1957 | d="M 425.88244,476.99186 C 436.68787,475.5132 450.62645,480.34637 470.5253,480.20614 C 490.42415,480.06591 527.97852,463.29492 552.66815,463.06328 C 577.35778,462.83164 615.41985,475.34734 631.95387,478.06328 C 648.48789,480.77922 654.80219,477.90476 659.45386,485.92043 C 664.10553,493.9361 661.38057,496.66767 649.09672,506.63472 C 636.81287,516.60177 608.30704,519.27104 583.02529,519.49186 C 557.74295,519.71268 512.644,526.57038 487.66815,523.42042 C 462.6923,520.27046 430.73059,515.59775 418.73958,505.56328 C 406.74857,495.52881 398.88874,488.83146 401.23958,481.63471 C 403.59042,474.43796 415.07701,478.47052 425.88244,476.99186 z" | ||
1958 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
1959 | <rect | ||
1960 | y="412.60312" | ||
1961 | x="343.6539" | ||
1962 | height="181.01935" | ||
1963 | width="381.83765" | ||
1964 | id="rect7965" | ||
1965 | style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> | ||
1966 | </g> | ||
1967 | <g | ||
1968 | id="g7967" | ||
1969 | style="filter:url(#filter3785)"> | ||
1970 | <path | ||
1971 | sodipodi:nodetypes="czzzcc" | ||
1972 | id="path7969" | ||
1973 | d="M 687.14286,452.36218 C 676.68117,462.07661 600.16326,471.36732 586.42857,481.6479 C 572.69388,491.92848 571.67605,494.53616 574.28571,501.6479 C 576.89537,508.75964 580.83098,511.05362 600,510.21932 C 619.16902,509.38502 698.57143,482.5976 698.57143,488.79075 L 687.14286,452.36218 z" | ||
1974 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
1975 | transform="translate(174.03125,-62.156036)" /> | ||
1976 | <rect | ||
1977 | y="344.82138" | ||
1978 | x="702.86414" | ||
1979 | height="162.63455" | ||
1980 | width="207.8894" | ||
1981 | id="rect7971" | ||
1982 | style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> | ||
1983 | </g> | ||
1984 | </g> | ||
1985 | <g | ||
1986 | transform="translate(-174.03125,62.156036)" | ||
1987 | style="opacity:0.18000004;display:inline;enable-background:new" | ||
1988 | id="g7973"> | ||
1989 | <g | ||
1990 | id="g7975" | ||
1991 | style="filter:url(#filter3785)"> | ||
1992 | <path | ||
1993 | sodipodi:nodetypes="czzzzzzzzzz" | ||
1994 | id="path7977" | ||
1995 | d="M 425.88244,476.99186 C 436.68787,475.5132 450.62645,480.34637 470.5253,480.20614 C 490.42415,480.06591 527.97852,463.29492 552.66815,463.06328 C 577.35778,462.83164 615.41985,475.34734 631.95387,478.06328 C 648.48789,480.77922 654.80219,477.90476 659.45386,485.92043 C 664.10553,493.9361 661.38057,496.66767 649.09672,506.63472 C 636.81287,516.60177 608.30704,519.27104 583.02529,519.49186 C 557.74295,519.71268 512.644,526.57038 487.66815,523.42042 C 462.6923,520.27046 430.73059,515.59775 418.73958,505.56328 C 406.74857,495.52881 398.88874,488.83146 401.23958,481.63471 C 403.59042,474.43796 415.07701,478.47052 425.88244,476.99186 z" | ||
1996 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
1997 | <rect | ||
1998 | y="412.60312" | ||
1999 | x="343.6539" | ||
2000 | height="181.01935" | ||
2001 | width="381.83765" | ||
2002 | id="rect7979" | ||
2003 | style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> | ||
2004 | </g> | ||
2005 | <g | ||
2006 | id="g7981" | ||
2007 | style="filter:url(#filter3785)"> | ||
2008 | <path | ||
2009 | sodipodi:nodetypes="czzzcc" | ||
2010 | id="path7983" | ||
2011 | d="M 687.14286,452.36218 C 676.68117,462.07661 600.16326,471.36732 586.42857,481.6479 C 572.69388,491.92848 571.67605,494.53616 574.28571,501.6479 C 576.89537,508.75964 580.83098,511.05362 600,510.21932 C 619.16902,509.38502 698.57143,482.5976 698.57143,488.79075 L 687.14286,452.36218 z" | ||
2012 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
2013 | transform="translate(174.03125,-62.156036)" /> | ||
2014 | <rect | ||
2015 | y="344.82138" | ||
2016 | x="702.86414" | ||
2017 | height="162.63455" | ||
2018 | width="207.8894" | ||
2019 | id="rect7985" | ||
2020 | style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> | ||
2021 | </g> | ||
2022 | </g> | ||
2023 | </g> | ||
2024 | <path | ||
2025 | style="opacity:0.75;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter8802);enable-background:accumulate" | ||
2026 | d="M 582.65599,-7.4183011 L 695.79307,78.848726 L 804.68752,337.64981 L 842.87128,545.5392 L 963.07944,637.46308 C 963.07944,637.46308 950.35151,350.37773 943.28044,323.50767 C 936.20938,296.63761 793.37381,-69.643698 793.37381,-69.643698 L 582.65599,-7.4183011 z" | ||
2027 | id="path7987" | ||
2028 | clip-path="url(#clipPath8604)" | ||
2029 | sodipodi:nodetypes="cccccscc" | ||
2030 | transform="translate(276,136)" /> | ||
2031 | <path | ||
2032 | style="opacity:1;fill:url(#linearGradient8958);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
2033 | d="M 964.13839,239.599 C 964.13839,239.599 972.81571,250.49562 988.24554,251.56328 C 1003.6754,252.63094 1037.9672,211.61061 1058.4241,199.42043 C 1078.9034,187.2169 1105.4705,172.81818 1122.3527,179.06329 C 1139.2348,185.30839 1144.5105,205.49938 1150.2098,227.099 C 1155.9092,248.69861 1156.9284,288.91289 1147.5313,319.95615 C 1138.1341,350.9994 1097.028,393.0599 1082.1741,423.349 C 1067.3202,453.6381 1070.567,463.17043 1070.567,463.17043" | ||
2034 | id="path7989" | ||
2035 | sodipodi:nodetypes="czzzzzzc" /> | ||
2036 | <path | ||
2037 | style="opacity:1;fill:url(#radialGradient3315);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
2038 | d="M 1124.4955,207.63471 C 1108.6027,206.74185 1074.7767,219.74054 1058.4241,231.92043 C 1041.9855,244.16433 1029.2032,256.03483 1029.1384,284.06328 C 1029.0732,312.26932 1042.2575,323.13969 1058.2455,331.02757 C 1074.2335,338.91546 1091.9317,338.14685 1110.2098,319.24186 C 1128.488,300.33686 1124.4955,207.63471 1124.4955,207.63471 z" | ||
2039 | id="path7991" | ||
2040 | sodipodi:nodetypes="czzzzc" /> | ||
2041 | <path | ||
2042 | sodipodi:type="arc" | ||
2043 | style="opacity:0.75;fill:url(#radialGradient3543);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:bevel;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter4120);enable-background:accumulate" | ||
2044 | id="path7993" | ||
2045 | sodipodi:cx="385" | ||
2046 | sodipodi:cy="237.00504" | ||
2047 | sodipodi:rx="86.428574" | ||
2048 | sodipodi:ry="73.928574" | ||
2049 | d="M 471.42857,237.00504 A 86.428574,73.928574 0 1 1 298.57143,237.00504 A 86.428574,73.928574 0 1 1 471.42857,237.00504 z" | ||
2050 | transform="matrix(0.9434749,-0.1239943,0.1440089,1.0957669,451.94827,134.5988)" | ||
2051 | clip-path="url(#clipPath4100)" /> | ||
2052 | <path | ||
2053 | transform="translate(450.03125,73.843964)" | ||
2054 | style="opacity:1;fill:url(#radialGradient3915);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
2055 | d="M 527.60588,407.44884 C 527.60588,407.44884 405.56444,445.85232 340.09154,417.08065 C 274.61865,388.30899 265.71429,292.36218 265.71429,292.36218 C 265.71429,292.36218 339.09587,211.85825 395.63507,208.74742 C 451.46212,205.67578 486.20893,228.89074 510.50508,274.59913 C 534.85708,320.41261 527.60588,407.44884 527.60588,407.44884 z" | ||
2056 | id="path7995" | ||
2057 | sodipodi:nodetypes="csczzc" | ||
2058 | mask="url(#mask3684)" /> | ||
2059 | <path | ||
2060 | style="opacity:1;fill:url(#linearGradient3959);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:bevel;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
2061 | d="M 772.17411,393.349 C 772.17411,393.349 808.39165,365.96653 823.78125,357.45614 C 838.95859,349.06313 849.49553,345.849 859.6741,345.849 L 844.13839,412.81328" | ||
2062 | id="path7997" | ||
2063 | sodipodi:nodetypes="czcc" /> | ||
2064 | <path | ||
2065 | sodipodi:type="arc" | ||
2066 | style="opacity:1;fill:url(#radialGradient3933);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:bevel;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
2067 | id="path7999" | ||
2068 | sodipodi:cx="409.28571" | ||
2069 | sodipodi:cy="306.64789" | ||
2070 | sodipodi:rx="36.25" | ||
2071 | sodipodi:ry="36.25" | ||
2072 | d="M 445.53571,306.64789 A 36.25,36.25 0 1 1 373.03571,306.64789 A 36.25,36.25 0 1 1 445.53571,306.64789 z" | ||
2073 | transform="translate(449.49554,74.915393)" /> | ||
2074 | <path | ||
2075 | style="opacity:0.3;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter8806);enable-background:accumulate" | ||
2076 | d="M 311.83409,415.43155 L 321.73359,537.05392 L 261.62951,673.52553 L 277.18586,848.1809 C 292.79912,910.0601 309.37131,946.84995 351.56201,965.23473 C 355.88112,928.99475 360.24362,892.86709 320.31937,742.11489 L 337.99704,672.81842 L 410.12193,534.22549 L 367.69553,375.83357 L 311.83409,415.43155 z" | ||
2077 | id="path8001" | ||
2078 | sodipodi:nodetypes="cccccccccc" | ||
2079 | clip-path="url(#clipPath8616)" | ||
2080 | transform="translate(276,136)" /> | ||
2081 | <path | ||
2082 | style="opacity:0.5;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter8826);enable-background:accumulate" | ||
2083 | d="M 635.21025,581.13004 C 621.06811,593.85796 674.44372,615.71019 711.57778,605.17167 C 748.71184,594.63315 816.22265,569.6073 814.81537,525.97571 C 813.40809,482.34413 738.44784,397.28228 738.44784,397.28228 L 635.21025,581.13004 z" | ||
2084 | id="path8003" | ||
2085 | sodipodi:nodetypes="czzcc" /> | ||
2086 | <path | ||
2087 | sodipodi:type="arc" | ||
2088 | style="opacity:1;fill:url(#radialGradient3991);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:bevel;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
2089 | id="path8005" | ||
2090 | sodipodi:cx="410" | ||
2091 | sodipodi:cy="306.64789" | ||
2092 | sodipodi:rx="23.214285" | ||
2093 | sodipodi:ry="23.214285" | ||
2094 | d="M 433.21428,306.64789 A 23.214285,23.214285 0 1 1 386.78572,306.64789 A 23.214285,23.214285 0 1 1 433.21428,306.64789 z" | ||
2095 | transform="translate(449.67411,74.915393)" /> | ||
2096 | <path | ||
2097 | sodipodi:type="arc" | ||
2098 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:bevel;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter3981);enable-background:accumulate" | ||
2099 | id="path8007" | ||
2100 | sodipodi:cx="414.28571" | ||
2101 | sodipodi:cy="303.07648" | ||
2102 | sodipodi:rx="7.5" | ||
2103 | sodipodi:ry="7.5" | ||
2104 | d="M 421.78571,303.07648 A 7.5,7.5 0 1 1 406.78571,303.07648 A 7.5,7.5 0 1 1 421.78571,303.07648 z" | ||
2105 | transform="translate(451.99554,73.486821)" /> | ||
2106 | <path | ||
2107 | style="opacity:1;fill:url(#radialGradient4112);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
2108 | d="M 789.31696,478.349 C 789.31696,478.349 796.33977,497.91759 788.24553,513.349 C 780.15129,528.78041 745.92236,552.33722 720.74554,563.349 C 695.43582,574.41891 635.27254,596.31293 618.95982,605.31328 C 602.49834,614.39571 600.74554,617.99185 600.74554,617.99185 C 600.74554,617.99185 593.59861,598.92744 629.49553,566.20615 C 665.66764,533.23401 771.52265,518.15665 789.31696,478.349 z" | ||
2109 | id="path8009" | ||
2110 | sodipodi:nodetypes="czzzczc" /> | ||
2111 | <g | ||
2112 | style="opacity:1;display:inline;enable-background:new" | ||
2113 | id="g8011" | ||
2114 | transform="translate(780.74553,74.55825)"> | ||
2115 | <path | ||
2116 | transform="translate(-329.81481,0)" | ||
2117 | clip-path="url(#clipPath3999)" | ||
2118 | sodipodi:nodetypes="czzczzzszc" | ||
2119 | id="path8013" | ||
2120 | d="M 179.64286,267.36218 C 157.23242,307.0651 119.02676,383.14247 110.35715,417.00504 C 101.70994,450.78014 101.58516,483.42158 110,503.43362 C 118.3602,523.31575 136.16398,539.06642 150.71428,544.86218 C 150.1179,530.48631 165.08723,501.57635 223.57143,472.36218 C 282.1977,443.07704 301.95306,445.23132 327.14285,425.21932 C 352.77291,404.85756 335.34872,345.57268 330.35714,331.29075 C 325.36556,317.00882 329.12051,327.91101 328.41112,326.19774 C 317.72184,300.38182 294.1968,271.76744 263.92857,261.6479 C 233.66034,251.52836 198.91081,256.79953 179.64286,267.36218 z" | ||
2121 | style="opacity:1;fill:url(#radialGradient3585);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:20.79999924;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" /> | ||
2122 | <path | ||
2123 | transform="matrix(0.8823874,0.4705236,-0.4705236,0.8823874,-166.62245,2.387362)" | ||
2124 | d="M 248.28731,338.07648 A 64.715881,134.00607 0 1 1 118.85555,338.07648 A 64.715881,134.00607 0 1 1 248.28731,338.07648 z" | ||
2125 | sodipodi:ry="134.00607" | ||
2126 | sodipodi:rx="64.715881" | ||
2127 | sodipodi:cy="338.07648" | ||
2128 | sodipodi:cx="183.57143" | ||
2129 | id="path8015" | ||
2130 | style="opacity:1;fill:url(#radialGradient4060);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:20.79999924;stroke-linecap:butt;stroke-linejoin:bevel;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
2131 | sodipodi:type="arc" /> | ||
2132 | <path | ||
2133 | transform="matrix(0.8823874,0.4705236,-0.4705236,0.8823874,-162.19388,-18.755495)" | ||
2134 | d="M 248.28731,338.07648 A 64.715881,134.00607 0 1 1 118.85555,338.07648 A 64.715881,134.00607 0 1 1 248.28731,338.07648 z" | ||
2135 | sodipodi:ry="134.00607" | ||
2136 | sodipodi:rx="64.715881" | ||
2137 | sodipodi:cy="338.07648" | ||
2138 | sodipodi:cx="183.57143" | ||
2139 | id="path8017" | ||
2140 | style="opacity:1;fill:url(#radialGradient4062);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:20.79999924;stroke-linecap:butt;stroke-linejoin:bevel;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
2141 | sodipodi:type="arc" /> | ||
2142 | <path | ||
2143 | transform="translate(-329.81481,3e-7)" | ||
2144 | clip-path="url(#clipPath3999)" | ||
2145 | sodipodi:nodetypes="czzczzzszc" | ||
2146 | id="path8019" | ||
2147 | d="M 179.64286,267.36218 C 157.23242,307.0651 119.02676,383.14247 110.35715,417.00504 C 101.70994,450.78014 101.58516,483.42158 110,503.43362 C 118.3602,523.31575 136.16398,539.06642 150.71428,544.86218 C 150.1179,530.48631 165.08723,501.57635 223.57143,472.36218 C 282.1977,443.07704 301.95306,445.23132 327.14285,425.21932 C 352.77291,404.85756 335.34872,345.57268 330.35714,331.29075 C 325.36556,317.00882 329.12051,327.91101 328.41112,326.19774 C 317.72184,300.38182 294.1968,271.76744 263.92857,261.6479 C 233.66034,251.52836 198.91081,256.79953 179.64286,267.36218 z" | ||
2148 | style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3587);stroke-width:20.79999924;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline;filter:url(#filter4079);enable-background:new" /> | ||
2149 | </g> | ||
2150 | <path | ||
2151 | sodipodi:type="arc" | ||
2152 | style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:bevel;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
2153 | id="path8021" | ||
2154 | sodipodi:cx="310.71429" | ||
2155 | sodipodi:cy="398.07648" | ||
2156 | sodipodi:rx="19.704132" | ||
2157 | sodipodi:ry="19.704132" | ||
2158 | d="M 330.41843,398.07648 A 19.704132,19.704132 0 1 1 291.01016,398.07648 A 19.704132,19.704132 0 1 1 330.41843,398.07648 z" | ||
2159 | transform="translate(452.55663,72.581273)" /> | ||
2160 | <path | ||
2161 | sodipodi:type="arc" | ||
2162 | style="opacity:1;fill:url(#radialGradient4056);fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient4082);stroke-width:20.79999924;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter4083);enable-background:accumulate" | ||
2163 | id="path8023" | ||
2164 | sodipodi:cx="310.71429" | ||
2165 | sodipodi:cy="398.07648" | ||
2166 | sodipodi:rx="19.704132" | ||
2167 | sodipodi:ry="19.704132" | ||
2168 | d="M 330.41843,398.07648 A 19.704132,19.704132 0 1 1 291.01016,398.07648 A 19.704132,19.704132 0 1 1 330.41843,398.07648 z" | ||
2169 | transform="translate(450.55663,72.581273)" /> | ||
2170 | <path | ||
2171 | sodipodi:type="arc" | ||
2172 | style="opacity:1;fill:url(#radialGradient4119);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:bevel;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
2173 | id="path8025" | ||
2174 | sodipodi:cx="310.71429" | ||
2175 | sodipodi:cy="398.07648" | ||
2176 | sodipodi:rx="19.704132" | ||
2177 | sodipodi:ry="19.704132" | ||
2178 | d="M 330.41843,398.07648 A 19.704132,19.704132 0 1 1 291.01016,398.07648 A 19.704132,19.704132 0 1 1 330.41843,398.07648 z" | ||
2179 | transform="translate(450.55663,72.581273)" /> | ||
2180 | <path | ||
2181 | sodipodi:type="arc" | ||
2182 | style="opacity:1;fill:url(#radialGradient4868);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999994px;stroke-linecap:butt;stroke-linejoin:bevel;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter4002);enable-background:accumulate" | ||
2183 | id="path8027" | ||
2184 | sodipodi:cx="429.56738" | ||
2185 | sodipodi:cy="377.42877" | ||
2186 | sodipodi:rx="72.079735" | ||
2187 | sodipodi:ry="44.547726" | ||
2188 | d="M 501.64712,377.42877 A 72.079735,44.547726 0 1 1 357.48765,377.42877 A 72.079735,44.547726 0 1 1 501.64712,377.42877 z" | ||
2189 | transform="matrix(0.9969564,-7.7961675e-2,7.7961675e-2,0.9969564,436.61877,125.29509)" | ||
2190 | inkscape:transform-center-x="-47.231976" | ||
2191 | inkscape:transform-center-y="-3.6935079" /> | ||
2192 | <path | ||
2193 | sodipodi:type="arc" | ||
2194 | style="opacity:1;fill:url(#radialGradient4876);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999994px;stroke-linecap:butt;stroke-linejoin:bevel;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter4010);enable-background:accumulate" | ||
2195 | id="path8029" | ||
2196 | sodipodi:cx="437.6991" | ||
2197 | sodipodi:cy="391.21735" | ||
2198 | sodipodi:rx="36.611931" | ||
2199 | sodipodi:ry="22.627417" | ||
2200 | d="M 474.31103,391.21735 A 36.611931,22.627417 0 1 1 401.08717,391.21735 A 36.611931,22.627417 0 1 1 474.31103,391.21735 z" | ||
2201 | transform="matrix(1.4357951,-6.9991037e-2,6.9991037e-2,1.4357951,235.18065,-63.86546)" | ||
2202 | inkscape:transform-center-x="-20.955902" | ||
2203 | inkscape:transform-center-y="-13.056625" /> | ||
2204 | <g | ||
2205 | transform="translate(450.03125,73.843964)" | ||
2206 | id="g8031" | ||
2207 | style="opacity:1;display:inline;filter:url(#filter4053);enable-background:new"> | ||
2208 | <path | ||
2209 | d="M 416.87499,401.82648 A 3.2142856,3.2142856 0 1 1 410.44642,401.82648 A 3.2142856,3.2142856 0 1 1 416.87499,401.82648 z" | ||
2210 | sodipodi:ry="3.2142856" | ||
2211 | sodipodi:rx="3.2142856" | ||
2212 | sodipodi:cy="401.82648" | ||
2213 | sodipodi:cx="413.66071" | ||
2214 | id="path8033" | ||
2215 | style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient4484);stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
2216 | sodipodi:type="arc" /> | ||
2217 | <path | ||
2218 | transform="translate(13.125009,8.1249913)" | ||
2219 | d="M 416.87499,401.82648 A 3.2142856,3.2142856 0 1 1 410.44642,401.82648 A 3.2142856,3.2142856 0 1 1 416.87499,401.82648 z" | ||
2220 | sodipodi:ry="3.2142856" | ||
2221 | sodipodi:rx="3.2142856" | ||
2222 | sodipodi:cy="401.82648" | ||
2223 | sodipodi:cx="413.66071" | ||
2224 | id="path8035" | ||
2225 | style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient4486);stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
2226 | sodipodi:type="arc" /> | ||
2227 | <path | ||
2228 | transform="translate(32.946437,7.4999913)" | ||
2229 | d="M 416.87499,401.82648 A 3.2142856,3.2142856 0 1 1 410.44642,401.82648 A 3.2142856,3.2142856 0 1 1 416.87499,401.82648 z" | ||
2230 | sodipodi:ry="3.2142856" | ||
2231 | sodipodi:rx="3.2142856" | ||
2232 | sodipodi:cy="401.82648" | ||
2233 | sodipodi:cx="413.66071" | ||
2234 | id="path8037" | ||
2235 | style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient4488);stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
2236 | sodipodi:type="arc" /> | ||
2237 | <path | ||
2238 | transform="translate(24.910723,-10.267866)" | ||
2239 | d="M 416.87499,401.82648 A 3.2142856,3.2142856 0 1 1 410.44642,401.82648 A 3.2142856,3.2142856 0 1 1 416.87499,401.82648 z" | ||
2240 | sodipodi:ry="3.2142856" | ||
2241 | sodipodi:rx="3.2142856" | ||
2242 | sodipodi:cy="401.82648" | ||
2243 | sodipodi:cx="413.66071" | ||
2244 | id="path8039" | ||
2245 | style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient4490);stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
2246 | sodipodi:type="arc" /> | ||
2247 | <path | ||
2248 | transform="translate(47.589294,-0.6250087)" | ||
2249 | d="M 416.87499,401.82648 A 3.2142856,3.2142856 0 1 1 410.44642,401.82648 A 3.2142856,3.2142856 0 1 1 416.87499,401.82648 z" | ||
2250 | sodipodi:ry="3.2142856" | ||
2251 | sodipodi:rx="3.2142856" | ||
2252 | sodipodi:cy="401.82648" | ||
2253 | sodipodi:cx="413.66071" | ||
2254 | id="path8041" | ||
2255 | style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient4492);stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
2256 | sodipodi:type="arc" /> | ||
2257 | </g> | ||
2258 | <path | ||
2259 | style="opacity:1;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
2260 | d="M 896.20301,482.92837 C 897.1881,487.27845 900.74008,489.10785 903.58974,490.82019 C 908.05042,493.33311 910.1099,492.3423 912.74425,490.06258 C 914.3462,488.14141 923.42736,485.36393 928.33848,482.99151 C 932.66809,481.5326 937.24178,477.63278 941.723,474.65775 C 945.11814,473.03051 947.06964,475.01239 949.55168,475.6679 C 952.4958,476.38451 953.96285,477.83965 955.6126,479.20344 C 958.00876,480.37863 954.6847,482.34657 958.8956,483.49658 C 960.08651,483.71452 961.31255,484.07303 962.17859,482.99151" | ||
2261 | id="path8043" | ||
2262 | sodipodi:nodetypes="ccccccccc" /> | ||
2263 | <path | ||
2264 | style="opacity:1;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
2265 | d="M 910.85021,475.35223 C 913.16515,475.32025 914.02799,475.99476 916.34292,474.53148 C 919.79856,471.45035 921.74546,471.38671 924.29787,470.11206 C 927.32444,468.79683 930.83357,478.26375 934.3994,479.96105 C 936.79449,479.13963 935.68854,481.75484 935.85149,482.6127 C 935.90862,485.25954 938.65843,486.29076 940.20777,488.04227 C 943.52381,490.29776 947.583,494.33773 951.31945,493.34557 C 957.7647,490.4145 961.59867,492.06411 967.60816,485.95883 C 968.31221,484.77749 967.02391,479.06423 970.70175,478.76149 C 973.22574,479.01487 974.86842,478.81164 976.76267,479.32971 C 982.20367,481.4469 984.50045,485.77971 991.47301,487.28466 C 997.65591,488.25105 999.08565,491.07892 1005.3626,492.33542" | ||
2266 | id="path8045" | ||
2267 | sodipodi:nodetypes="cccccccccccc" /> | ||
2268 | <path | ||
2269 | style="opacity:1;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
2270 | d="M 876.98133,483.52197 C 879.37991,482.72817 883.08746,487.71407 885.15446,490.56765 C 885.74727,493.24717 886.30823,496.0541 885.91207,502.68948 C 886.6972,505.10702 888.59256,505.72043 890.7103,505.97248 C 893.82775,505.4357 896.58699,504.64818 898.0339,502.94202 C 899.9055,501.00035 903.34643,505.33596 906.11512,506.98263 C 909.72521,508.89472 913.8889,508.96149 917.98442,509.25547 C 919.688,509.02483 920.35482,513.77062 921.26741,517.3367 C 921.65155,521.71476 920.38197,524.23239 919.49965,527.18568 C 919.20535,529.68223 922.48815,530.71542 925.8131,531.73137 C 928.99554,532.47261 932.35734,533.39321 934.90447,533.49914 C 940.04633,534.37405 942.99321,536.18966 947.0263,537.53975 C 949.26544,538.3563 950.28649,539.78191 951.57199,541.07528" | ||
2271 | id="path8047" | ||
2272 | sodipodi:nodetypes="ccccccccccccc" /> | ||
2273 | <path | ||
2274 | style="opacity:0.25;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter8814);enable-background:new" | ||
2275 | d="M 332,187.69519 C 332,187.69519 389.5,162.19519 389.5,159.69519 C 389.5,157.19519 395,107.69519 395,107.69519 C 395,107.69519 486,59.195189 486.5,57.195189 C 487,55.195189 572.5,-4.8048114 572.5,-4.8048114 L 386.5,17.195189 L 311,123.19519 L 332,187.69519 z" | ||
2276 | id="path8049" | ||
2277 | clip-path="url(#clipPath8514)" | ||
2278 | transform="translate(276,136)" /> | ||
2279 | <path | ||
2280 | style="opacity:0.25;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
2281 | d="M 1697.2846,722.5514 C 1697.2846,722.5514 1581.3191,796.0905 1574.2481,800.33314 C 1567.177,804.57578 1343.7312,937.51186 1343.7312,937.51186 L 1347.9739,977.10984 L 1564.3486,876.70067 L 1681.7283,774.8773 L 1697.2846,722.5514 z" | ||
2282 | id="path8051" /> | ||
2283 | <path | ||
2284 | style="opacity:0.5;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter8810);enable-background:accumulate" | ||
2285 | d="M 528.91587,556.85291 C 523.25902,555.4387 347.89654,631.80623 347.89654,631.80623 L 313.95541,812.82557 L 365.05087,1006.7738 L 622.25397,1074.4551 C 622.25397,1074.4551 828.72915,1227.1901 834.386,1222.9475 C 840.04286,1218.7049 1002.6774,1029.2002 1002.6774,1029.2002 L 842.87128,845.35248 L 796.20224,667.16157 L 528.91587,556.85291 z" | ||
2286 | id="path8053" | ||
2287 | clip-path="url(#clipPath8610)" | ||
2288 | sodipodi:nodetypes="cccccscccc" | ||
2289 | transform="translate(276,136)" /> | ||
2290 | <path | ||
2291 | style="opacity:1;fill:#0c0c0c;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
2292 | d="M 1097.6433,613.88997 C 1097.6433,613.88997 1120.2628,607.38316 1133.386,608.01724 C 1146.5093,608.65133 1164.0276,609.95586 1177.0949,620.20343 C 1190.1622,630.45099 1202.1626,647.3435 1211.2073,678.57308 C 1220.2519,709.80266 1212.9056,777.82509 1205.0312,821.92043 C 1197.1569,866.01577 1176.7661,928.03341 1160.0312,961.92043 C 1143.2964,995.80745 1110.2335,1039.4156 1099.4618,1051.7966 C 1088.0976,1064.8586 1043.2559,1088.2228 1020.0312,1094.0633 C 1025.3346,1083.4567 1068.931,1043.4744 1055.0312,1033.349 C 1041.0123,1023.1367 1009.2712,1079.3314 970.7381,1062.3822 C 992.12041,1049.2501 1012.5175,1011.1961 1004.7787,995.78772 C 996.93846,980.17733 974.07378,1044.5453 911.24317,1032.8006 C 941.29521,1005.2739 966.65023,961.89659 952.50587,949.8209 C 938.09071,937.51403 892.04412,1004.1141 892.04412,1004.1141 C 892.04412,1004.1141 889.22222,962.41287 905.81732,935.50673 C 922.45667,908.52886 985.47029,853.89146 1005.3704,823.80331 C 1025.2706,793.71517 1038.983,757.79429 1047.5059,731.28537 C 1056.0287,704.77645 1063.3068,654.18583 1063.3068,654.18583" | ||
2293 | id="path8055" | ||
2294 | sodipodi:nodetypes="czzzzzzczczczczzzc" /> | ||
2295 | <path | ||
2296 | style="opacity:0.25;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter8818);enable-background:accumulate" | ||
2297 | d="M 770.74639,609.17881 L 719.8347,706.75955 L 639.93163,817.77531 L 674.57987,889.19309 L 717.00628,968.38906 L 789.13117,923.13422 L 803.27331,730.80117 L 824.48651,592.20825 L 810.34437,502.05213 L 770.74639,609.17881 z" | ||
2298 | id="path8057" | ||
2299 | clip-path="url(#clipPath8622)" | ||
2300 | sodipodi:nodetypes="cccccccccc" | ||
2301 | transform="translate(276,136)" /> | ||
2302 | <path | ||
2303 | style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter8810);enable-background:accumulate" | ||
2304 | d="M 295,846.19519 L 301.64488,777.27234 C 301.64488,777.27234 391.96439,866.27691 464,900.19519 C 536.03561,934.11347 772,962.19519 772,962.19519 L 926,936.19519 L 890,1098.1952 L 604,1124.1952 L 306,1035.1952 L 295,846.19519 z" | ||
2305 | id="path8059" | ||
2306 | clip-path="url(#clipPath8906)" | ||
2307 | sodipodi:nodetypes="cczcccccc" | ||
2308 | transform="translate(276,136)" /> | ||
2309 | <path | ||
2310 | transform="translate(450.03125,73.843964)" | ||
2311 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter3587);enable-background:new" | ||
2312 | d="M 405.79629,845.99023 L 480.74961,911.04406 L 483.24924,927.92446 L 502.6526,938.08337 L 509.14464,961.13446 L 540.85369,952.76336 L 555.70293,1000.8466 C 567.95945,1013.5745 645.49637,887.7369 611.56436,1039.0304 L 550.75318,1055.2939 L 461.55026,960.60104 L 398.72523,906.80141 L 405.79629,845.99023 z" | ||
2313 | id="path8061" | ||
2314 | sodipodi:nodetypes="cccccccccccc" | ||
2315 | clip-path="url(#clipPath3602)" /> | ||
2316 | <path | ||
2317 | style="opacity:1;fill:#121212;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" | ||
2318 | d="M 1159.317,918.349 C 1213.6027,916.92043 1285.352,903.29701 1329.317,891.56328 C 1373.3697,879.80614 1455.2033,855.21604 1504.674,833.70614 C 1554.0133,812.25342 1618.2778,774.42454 1658.9599,741.56329 C 1699.468,708.8426 1711.3498,685.74348 1719.6741,707.99186 C 1728.0432,730.35965 1703.2672,764.31748 1681.817,789.06329 C 1660.2128,813.98669 1629.0856,841.76862 1582.8883,878.349 C 1536.691,914.92938 1426.8058,979.93363 1370.0312,1006.9204 C 1312.9652,1034.0458 1241.8279,1065.1589 1197.8884,1079.4205 C 1153.9489,1093.6821 1066.4598,1110.4919 1066.4598,1110.4919 L 1159.317,918.349 z" | ||
2319 | id="path8063" | ||
2320 | sodipodi:nodetypes="czzzzzzzzcc" /> | ||
2321 | <path | ||
2322 | transform="translate(450.03125,73.843964)" | ||
2323 | style="opacity:0.5;fill:url(#linearGradient3666);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter3779);enable-background:accumulate" | ||
2324 | d="M 1241.5965,652.95007 C 1241.5965,652.95007 1176.875,707.28713 1095.9326,751.94501 C 1013.9082,797.19985 811.67556,845.28311 811.67556,845.28311 C 811.67556,845.28311 796.57419,866.33507 856.93045,873.56739 C 917.28671,880.79971 1081.0124,820.2667 1135.5306,777.40085 C 1190.0488,734.535 1255.7387,665.67799 1255.7387,665.67799 L 1241.5965,652.95007 z" | ||
2325 | id="path8065" | ||
2326 | sodipodi:nodetypes="czczzcc" | ||
2327 | clip-path="url(#clipPath3992)" /> | ||
2328 | <g | ||
2329 | transform="translate(450.03125,73.843964)" | ||
2330 | style="opacity:1;display:inline;enable-background:new" | ||
2331 | id="g8067" | ||
2332 | clip-path="url(#clipPath3986)"> | ||
2333 | <g | ||
2334 | transform="translate(-174.03125,62.156036)" | ||
2335 | style="filter:url(#filter3677)" | ||
2336 | id="g8069"> | ||
2337 | <g | ||
2338 | style="filter:url(#filter3785)" | ||
2339 | id="g8071"> | ||
2340 | <path | ||
2341 | sodipodi:nodetypes="czzccccc" | ||
2342 | id="path8073" | ||
2343 | d="M 1094.2857,725.93361 C 1094.2857,725.93361 1093.9896,752.09452 1098.9285,763.79076 C 1103.8674,775.487 1118.9666,790.27741 1127.5,795.21933 C 1136.0334,800.16125 1146.4286,803.79075 1146.4286,803.79075 L 1264.2857,688.79075 L 1282.1429,613.07647 L 1185.7143,651.6479 L 1094.2857,725.93361 z" | ||
2344 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
2345 | transform="translate(174.03125,-62.156036)" /> | ||
2346 | <rect | ||
2347 | y="486.14224" | ||
2348 | x="1197.8389" | ||
2349 | height="309.71277" | ||
2350 | width="333.75412" | ||
2351 | id="rect8075" | ||
2352 | style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> | ||
2353 | </g> | ||
2354 | </g> | ||
2355 | <g | ||
2356 | transform="translate(-174.03125,62.156036)" | ||
2357 | style="opacity:0.18000004;display:inline;enable-background:new" | ||
2358 | id="g8077"> | ||
2359 | <g | ||
2360 | style="filter:url(#filter3785)" | ||
2361 | id="g8079"> | ||
2362 | <path | ||
2363 | sodipodi:nodetypes="czzccccc" | ||
2364 | id="path8081" | ||
2365 | d="M 1094.2857,725.93361 C 1094.2857,725.93361 1093.9896,752.09452 1098.9285,763.79076 C 1103.8674,775.487 1118.9666,790.27741 1127.5,795.21933 C 1136.0334,800.16125 1146.4286,803.79075 1146.4286,803.79075 L 1264.2857,688.79075 L 1282.1429,613.07647 L 1185.7143,651.6479 L 1094.2857,725.93361 z" | ||
2366 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
2367 | transform="translate(174.03125,-62.156036)" /> | ||
2368 | <rect | ||
2369 | y="486.14224" | ||
2370 | x="1197.8389" | ||
2371 | height="309.71277" | ||
2372 | width="333.75412" | ||
2373 | id="rect8083" | ||
2374 | style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> | ||
2375 | </g> | ||
2376 | </g> | ||
2377 | </g> | ||
2378 | <path | ||
2379 | transform="translate(450.03125,73.843964)" | ||
2380 | style="opacity:0.83300003;fill:#050505;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:15;stroke-linecap:butt;stroke-linejoin:miter;marker:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter8225);enable-background:accumulate" | ||
2381 | d="M 1264.1875,605 C 1259.6964,605.73268 1256.0305,608.45509 1252.25,611.40625 C 1242.1687,619.27601 1224.0805,645.83149 1204.2188,661.875 C 1164.3514,694.07816 1100.2228,731.85201 1051.6562,752.96875 C 1003.0422,774.10613 921.11498,798.78676 877.34375,810.46875 C 833.94554,822.05121 762.29972,835.59982 709.09375,837 L 704.53125,837.125 L 702.53125,841.25 L 609.6875,1033.375 L 603.1875,1046.8438 L 617.84375,1044 C 617.84375,1044 705.11343,1027.3486 750.1875,1012.7188 C 794.9127,998.20213 865.97836,967.05197 923.21875,939.84375 C 980.82199,912.46306 1090.1551,847.86412 1137.5,810.375 C 1183.8608,773.66518 1215.3049,745.65818 1237.4375,720.125 C 1248.3386,707.549 1260.1823,692.59356 1268.4688,677.375 C 1276.7552,662.15644 1287.6285,633.15692 1282.1562,618.53125 C 1280.9385,615.27651 1279.6048,612.46995 1277.5625,610.03125 C 1275.5202,607.59255 1269.0878,608.45926 1269,605 C 1268.7902,596.73518 1265.6845,604.75577 1264.1875,605 z M 1266.3438,620.21875 C 1266.7586,620.80449 1267.3749,621.77641 1268.125,623.78125 C 1271.0218,631.52338 1266.6843,655.68 1259.3125,669.21875 C 1251.9407,682.7575 1236.6741,698.14269 1226.125,710.3125 C 1205.0496,734.62606 1174.2213,762.17406 1128.1875,798.625 C 1083.1379,834.29659 972.72717,899.71959 916.78125,926.3125 C 859.88952,953.35499 788.68509,984.4309 745.53125,998.4375 C 709.16634,1010.2406 649.68654,1022.2713 629.8125,1026.2188 L 714.09375,851.75 C 768.80066,849.7007 837.88634,836.53365 881.21875,824.96875 C 925.55297,813.1365 1007.2974,788.63242 1057.625,766.75 C 1107.737,744.96129 1170.1594,705.58184 1211.6562,672.0625 C 1232.3026,655.38529 1253.4011,629.51662 1261.4688,623.21875 C 1263.9058,621.31633 1265.5494,620.58295 1266.3438,620.21875 z" | ||
2382 | id="path8085" | ||
2383 | clip-path="url(#clipPath3722)" | ||
2384 | sodipodi:nodetypes="cssssccccccssssssssccssssssccssssc" /> | ||
2385 | <g | ||
2386 | style="opacity:1;display:inline;enable-background:new" | ||
2387 | id="g8087" | ||
2388 | mask="url(#mask7704)" | ||
2389 | transform="matrix(0.9934486,0.1142802,-0.1142802,0.9934486,-9.24324,588.09054)" | ||
2390 | inkscape:transform-center-x="-185.09603" | ||
2391 | inkscape:transform-center-y="-12.859654"> | ||
2392 | <path | ||
2393 | transform="translate(8.0045714e-2,-3.125e-2)" | ||
2394 | style="fill:#bcb786;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
2395 | d="M 1111.4062,-285.9375 L 1107.4688,-284.0625 C 1107.4283,-284.05228 1107.3692,-284.04201 1107.3438,-284.03125 C 1106.925,-283.8184 1107.1791,-283.93067 1106.6875,-283.71875 C 1106.2014,-283.50919 1104.9499,-283.13456 1102.5938,-282.25 C 1099.2626,-280.99942 1096.7895,-280.10016 1095.5938,-279.1875 C 1094.0576,-279.16623 1091.8733,-278.95419 1089.9375,-278.46875 C 1086.956,-277.72108 1085.0823,-277.29474 1083.1875,-276.875 C 1081.2927,-276.45527 1081.512,-276.23281 1080.3125,-276 C 1079.0159,-275.74833 1078.5911,-276.00899 1074.875,-275.21875 C 1071.3851,-274.4766 1065.9802,-273.28768 1064.7188,-272.53125 C 1063.1348,-272.71203 1060.8513,-272.85303 1058.875,-272.5625 C 1055.8346,-272.11554 1053.9588,-271.88974 1052.0312,-271.65625 C 1051.3758,-271.57687 1050.9902,-271.45547 1050.6875,-271.375 C 1050.2613,-271.24334 1050.0017,-271.11498 1049.3125,-271.03125 C 1048.0009,-270.87188 1047.5503,-271.18808 1043.7812,-270.75 C 1040.2273,-270.33691 1034.7758,-269.47718 1033.5312,-268.8125 C 1031.9322,-269.10979 1029.6735,-269.34669 1027.6875,-269.15625 C 1024.6287,-268.86293 1022.7155,-268.67226 1020.7812,-268.5 C 1018.847,-268.32773 1019.0926,-268.07763 1017.875,-267.96875 C 1016.5588,-267.85105 1016.1152,-268.13238 1012.3438,-267.71875 C 1008.8017,-267.3303 1003.3359,-266.50948 1002.0625,-265.84375 C 1000.4636,-266.13844 998.1753,-266.35076 996.1875,-266.15625 C 993.12921,-265.857 991.2463,-265.67601 989.3125,-265.5 C 988.65501,-265.44015 988.27245,-265.32144 987.96875,-265.25 C 987.54105,-265.13104 987.28525,-265.03193 986.59375,-264.96875 C 985.27775,-264.84849 984.834,-265.16363 981.0625,-264.75 C 977.50631,-264.35998 972.0569,-263.51084 970.8125,-262.84375 C 969.21381,-263.13793 966.95265,-263.36747 964.96875,-263.15625 C 961.91305,-262.83092 959.9947,-262.63001 958.0625,-262.4375 C 956.13031,-262.24499 956.37275,-261.99662 955.15625,-261.875 C 953.84137,-261.74353 953.3932,-262.03954 949.625,-261.59375 C 946.08611,-261.17509 940.6473,-260.30158 939.375,-259.625 C 937.77741,-259.90604 935.51505,-260.04543 933.53125,-259.8125 C 930.47927,-259.45413 928.58625,-259.24464 926.65625,-259.03125 C 926.00007,-258.95869 925.6156,-258.85856 925.3125,-258.78125 C 924.88571,-258.65402 924.6276,-258.51405 923.9375,-258.4375 C 922.62411,-258.29181 922.17015,-258.61152 918.40625,-258.125 C 914.85737,-257.66624 909.4276,-256.70598 908.1875,-256 C 906.59441,-256.24424 904.3537,-256.38135 902.375,-256.125 C 899.32741,-255.73018 897.4243,-255.47655 895.5,-255.21875 C 893.57571,-254.96096 893.7739,-254.72522 892.5625,-254.5625 C 891.25301,-254.3866 890.8153,-254.66688 887.0625,-254.09375 C 883.53821,-253.55551 878.1393,-252.39458 876.875,-251.65625 C 875.28751,-251.85979 873.0295,-251.91098 871.0625,-251.5625 C 868.03631,-251.02638 866.1636,-250.70081 864.25,-250.375 C 863.59941,-250.26423 863.2363,-250.10406 862.9375,-250 C 862.51681,-249.83512 862.27405,-249.6687 861.59375,-249.53125 C 860.29905,-249.26966 859.86665,-249.53745 856.15625,-248.71875 C 852.65777,-247.9468 847.31035,-246.33582 846.09375,-245.5 C 844.53085,-245.57745 842.33625,-245.41472 840.40625,-244.90625 C 837.43387,-244.12312 835.58855,-243.67416 833.71875,-243.15625 C 831.84875,-242.63835 832.0521,-242.38897 830.875,-242.0625 C 829.60251,-241.7096 829.17795,-241.95541 825.53125,-240.875 C 822.10657,-239.86037 816.88185,-237.94183 815.65625,-237.03125 C 814.11747,-237.01851 811.93645,-236.75903 810.03125,-236.15625 C 807.10027,-235.22891 805.2809,-234.69783 803.4375,-234.09375 C 802.81071,-233.88837 802.44585,-233.70117 802.15625,-233.5625 C 801.74867,-233.34889 801.50295,-233.15375 800.84375,-232.9375 C 799.58925,-232.52596 799.1576,-232.74846 795.5625,-231.5 C 792.17261,-230.32283 786.96755,-228.2863 785.78125,-227.34375 C 784.25737,-227.28408 782.1312,-226.94888 780.25,-226.28125 C 777.35261,-225.25296 775.55095,-224.60577 773.71875,-223.96875 C 771.88655,-223.33174 772.0909,-223.12021 770.9375,-222.71875 C 769.69071,-222.28479 769.27395,-222.51903 765.71875,-221.15625 C 762.38005,-219.87645 757.23165,-217.6737 756.03125,-216.6875 C 754.52407,-216.57981 752.39555,-216.1887 750.53125,-215.46875 C 747.66307,-214.36115 745.90735,-213.68719 744.09375,-213 C 743.47705,-212.76637 743.0973,-212.55797 742.8125,-212.40625 C 742.81251,-212.40625 742.8125,-212.37673 742.8125,-212.375 L 734.8125,-209.1875 L 722.3366,-205.69561 L 730.26626,-186.41789 C 729.67463,-184.44432 742.8125,-191.15625 742.8125,-191.15625 C 743.03891,-191.30093 743.26145,-191.42886 743.53125,-191.53125 C 744.61177,-191.94123 745.70285,-191.74702 749.53125,-193.21875 C 753.35977,-194.69049 754.7553,-195.22373 755.4375,-195.625 C 756.11711,-196.02478 757.04925,-196.50437 757.65625,-197.15625 C 759.48317,-197.294 761.22705,-197.64948 762.59375,-198.15625 C 765.56175,-199.25677 767.4691,-199.96244 769.375,-200.625 C 771.28081,-201.28754 771.72915,-202.03987 772.78125,-202.40625 C 773.87287,-202.78636 774.97635,-202.57163 778.84375,-203.9375 C 782.71115,-205.30336 784.1269,-205.76458 784.8125,-206.15625 C 785.51361,-206.55677 786.5133,-207.08923 787.125,-207.75 C 789.09581,-207.80466 790.94195,-208.13463 792.40625,-208.625 C 795.40777,-209.63008 797.3324,-210.24671 799.25,-210.875 C 800.78861,-211.3791 801.42415,-211.92177 802.15625,-212.3125 C 802.38647,-212.44681 802.63215,-212.56623 802.90625,-212.65625 C 804.00457,-213.01673 805.0877,-212.73762 809,-213.96875 C 812.91231,-215.19988 814.366,-215.6417 815.0625,-216 C 815.75641,-216.35697 816.6926,-216.79261 817.3125,-217.40625 C 819.17771,-217.42891 820.94835,-217.67308 822.34375,-218.09375 C 825.37415,-219.00729 827.33615,-219.52385 829.28125,-220.0625 C 831.22637,-220.60114 831.70745,-221.32702 832.78125,-221.625 C 833.89527,-221.93415 835.00125,-221.61761 838.96875,-222.65625 C 842.93625,-223.69488 844.38625,-224.08898 845.09375,-224.40625 C 845.82855,-224.73584 846.90765,-225.15997 847.53125,-225.78125 C 849.52907,-225.66525 851.3887,-225.80134 852.875,-226.15625 C 855.95311,-226.89125 857.9584,-227.25719 859.9375,-227.65625 C 861.52541,-227.97643 862.1818,-228.4468 862.9375,-228.75 C 863.17501,-228.8568 863.4044,-228.94276 863.6875,-229 C 864.82091,-229.22919 865.99215,-228.79107 870.03125,-229.5 C 874.07067,-230.20893 875.5315,-230.42709 876.25,-230.6875 C 876.96581,-230.94694 877.95435,-231.25474 878.59375,-231.78125 C 880.51795,-231.54176 882.34165,-231.55672 883.78125,-231.78125 C 886.90767,-232.26887 888.9358,-232.48192 890.9375,-232.75 C 892.93921,-233.01807 893.42625,-233.69514 894.53125,-233.84375 C 895.67767,-233.99793 896.8071,-233.54218 900.875,-234.0625 C 904.94281,-234.58282 906.43525,-234.75823 907.15625,-235 C 907.89337,-235.24714 908.95435,-235.58623 909.59375,-236.125 C 911.64375,-235.78947 913.56745,-235.72704 915.09375,-235.90625 C 918.23595,-236.27521 920.27375,-236.46561 922.28125,-236.6875 C 923.89207,-236.86552 924.5459,-237.2957 925.3125,-237.53125 C 925.55341,-237.61677 925.80655,-237.68685 926.09375,-237.71875 C 927.24345,-237.84647 928.39505,-237.3721 932.46875,-237.84375 C 936.54245,-238.3154 938.0278,-238.45435 938.75,-238.6875 C 939.46941,-238.91977 940.45025,-239.16096 941.09375,-239.65625 C 943.03005,-239.32279 944.8638,-239.25201 946.3125,-239.40625 C 949.45851,-239.7412 951.49,-239.92484 953.5,-240.125 C 955.50991,-240.32514 955.98415,-240.95139 957.09375,-241.0625 C 958.24485,-241.17778 959.39025,-240.69744 963.46875,-241.125 C 967.54725,-241.55256 969.05765,-241.68709 969.78125,-241.90625 C 970.52047,-242.13011 971.57685,-242.4195 972.21875,-242.9375 C 974.27575,-242.53883 976.2206,-242.4441 977.75,-242.59375 C 980.89871,-242.90185 982.9258,-243.067 984.9375,-243.25 C 986.55151,-243.39682 987.20055,-243.81055 987.96875,-244.03125 C 988.21005,-244.11211 988.4623,-244.16116 988.75,-244.1875 C 989.90211,-244.29295 991.0429,-243.79475 995.125,-244.1875 C 999.20711,-244.58025 1000.7139,-244.71834 1001.4375,-244.9375 C 1002.1584,-245.15583 1003.1371,-245.3852 1003.7812,-245.875 C 1005.7193,-245.52501 1007.5501,-245.42062 1009,-245.5625 C 1012.1487,-245.8706 1014.1758,-246.03575 1016.1875,-246.21875 C 1018.1991,-246.40174 1018.7017,-247.05677 1019.8125,-247.15625 C 1020.9648,-247.25948 1022.1047,-246.77142 1026.1875,-247.15625 C 1030.2704,-247.54107 1031.7762,-247.65725 1032.5,-247.875 C 1033.2393,-248.09743 1034.2956,-248.38949 1034.9375,-248.90625 C 1036.9949,-248.50448 1038.9404,-248.40292 1040.4688,-248.5625 C 1043.6153,-248.89102 1045.6458,-249.0852 1047.6562,-249.28125 C 1049.2692,-249.43854 1049.9219,-249.91273 1050.6875,-250.15625 C 1050.9282,-250.24429 1051.1507,-250.27762 1051.4375,-250.3125 C 1052.5858,-250.4522 1053.7542,-249.97259 1057.8125,-250.5625 C 1061.8708,-251.15242 1063.3743,-251.33964 1064.0938,-251.59375 C 1064.8104,-251.84691 1065.7684,-252.15182 1066.4062,-252.6875 C 1068.3259,-252.47556 1070.1262,-252.53609 1071.5625,-252.78125 C 1074.6816,-253.31365 1076.6741,-253.70986 1078.6562,-254.09375 C 1080.6383,-254.47762 1081.1305,-255.1334 1082.2188,-255.375 C 1083.3475,-255.62566 1084.489,-255.25871 1088.4688,-256.25 C 1092.4483,-257.24127 1093.8983,-257.6693 1094.5938,-258.03125 C 1095.316,-258.40725 1096.3555,-258.90183 1096.9688,-259.5625 C 1098.9317,-259.57454 1100.7625,-259.85355 1102.1875,-260.40625 C 1105.1387,-261.55085 1107.0607,-262.27567 1108.875,-263.15625 C 1110.3307,-263.86277 1111.1941,-264.85828 1111.4062,-265.15625 C 1111.6185,-265.4542 1111.5051,-265.8848 1111.5312,-265.90625 C 1111.5742,-265.94148 1111.8716,-266.00028 1112.0312,-266.34375 C 1112.8902,-268.19082 1114.3544,-271.97139 1114.4688,-272.65625 C 1114.5825,-273.33839 1114.6368,-274.00902 1114.6875,-274.40625 C 1114.7169,-274.63575 1114.5404,-275.28515 1114.5625,-275.34375 C 1114.5934,-275.42579 1114.8508,-275.59432 1114.9062,-275.84375 C 1115.1725,-277.04206 1114.9953,-278.05111 1114.7812,-279.46875 C 1114.5673,-280.88638 1113.8096,-284.08338 1113.1562,-284.9375 C 1112.4973,-285.79922 1111.9314,-285.94801 1111.4062,-285.9375 z" | ||
2396 | id="path8089" | ||
2397 | sodipodi:nodetypes="ccssscsssscssssscsssscssssscsssscssssscsssscssssscsssscssssscsssscssscccccssscssssscsssssscssssscsssssscssssscsssssscssssscsssssscssssscsssssscssssscsssssssssssc" /> | ||
2398 | <g | ||
2399 | clip-path="url(#clipPath7421)" | ||
2400 | id="g8091"> | ||
2401 | <path | ||
2402 | id="path8093" | ||
2403 | d="M 1107.409,-284.04961 C 1106.9903,-283.83678 1107.2534,-283.95572 1106.7618,-283.7438 C 1106.2757,-283.53426 1105.0384,-283.16941 1102.6822,-282.28485 C 1099.3511,-281.03428 1096.852,-280.13141 1095.6563,-279.21875 C 1094.1202,-279.19749 1091.9358,-278.98544 1090,-278.5 C 1087.0185,-277.75234 1085.1448,-277.32599 1083.25,-276.90625 C 1081.3552,-276.48653 1081.5745,-276.26406 1080.375,-276.03125 C 1079.0784,-275.77959 1078.6536,-276.04024 1074.9375,-275.25 C 1071.4476,-274.50786 1066.0427,-273.31893 1064.7813,-272.5625 C 1063.1974,-272.74329 1060.9138,-272.88428 1058.9375,-272.59375 C 1055.8971,-272.1468 1054.0213,-271.92099 1052.0938,-271.6875 C 1051.4384,-271.60813 1051.0527,-271.48672 1050.75,-271.40625 C 1050.3238,-271.2746 1050.0642,-271.14623 1049.375,-271.0625 C 1048.0634,-270.90314 1047.6128,-271.21933 1043.8438,-270.78125 C 1040.2899,-270.36817 1034.8384,-269.50843 1033.5938,-268.84375 C 1031.9948,-269.14105 1029.736,-269.37794 1027.75,-269.1875 C 1024.6912,-268.89419 1022.778,-268.70351 1020.8438,-268.53125 C 1018.9095,-268.35899 1019.1551,-268.10888 1017.9375,-268 C 1016.6213,-267.88231 1016.1777,-268.16363 1012.4063,-267.75 C 1008.8644,-267.36156 1003.3984,-266.54073 1002.125,-265.875 C 1000.5261,-266.1697 998.23783,-266.38201 996.25,-266.1875 C 993.19176,-265.88826 991.30887,-265.70726 989.375,-265.53125 C 988.71751,-265.47141 988.33496,-265.35269 988.03125,-265.28125 C 987.6036,-265.1623 987.34774,-265.06318 986.65625,-265 C 985.34029,-264.87975 984.89649,-265.19488 981.125,-264.78125 C 977.56886,-264.39124 972.11946,-263.54209 970.875,-262.875 C 969.27637,-263.16919 967.01516,-263.39872 965.03125,-263.1875 C 961.97565,-262.86218 960.05721,-262.66126 958.125,-262.46875 C 956.19279,-262.27625 956.43513,-262.02787 955.21875,-261.90625 C 953.90387,-261.77479 953.45577,-262.07079 949.6875,-261.625 C 946.14863,-261.20635 940.70982,-260.33283 939.4375,-259.65625 C 937.83995,-259.9373 935.57754,-260.07668 933.59375,-259.84375 C 930.54177,-259.48539 928.64867,-259.27589 926.71875,-259.0625 C 926.06255,-258.98995 925.67809,-258.88981 925.375,-258.8125 C 924.94823,-258.68528 924.69009,-258.5453 924,-258.46875 C 922.68667,-258.32307 922.23254,-258.64277 918.46875,-258.15625 C 914.91986,-257.6975 909.49012,-256.73723 908.25,-256.03125 C 906.65695,-256.27549 904.41619,-256.4126 902.4375,-256.15625 C 899.38991,-255.76144 897.48679,-255.5078 895.5625,-255.25 C 893.63822,-254.99221 893.83639,-254.75647 892.625,-254.59375 C 891.31554,-254.41785 890.87781,-254.69813 887.125,-254.125 C 883.60071,-253.58676 878.20185,-252.42583 876.9375,-251.6875 C 875.35,-251.89104 873.092,-251.94223 871.125,-251.59375 C 868.09883,-251.05763 866.22611,-250.73206 864.3125,-250.40625 C 863.66189,-250.29548 863.29879,-250.13531 863,-250.03125 C 862.57933,-249.86637 862.33655,-249.69995 861.65625,-249.5625 C 860.3616,-249.30091 859.92913,-249.5687 856.21875,-248.75 C 852.72022,-247.97805 847.3728,-246.36707 846.15625,-245.53125 C 844.59347,-245.6087 842.39867,-245.44597 840.46875,-244.9375 C 837.49631,-244.15437 835.65114,-243.70541 833.78125,-243.1875 C 831.91137,-242.6696 832.11465,-242.42022 830.9375,-242.09375 C 829.66504,-241.74085 829.24047,-241.98666 825.59375,-240.90625 C 822.16905,-239.89162 816.94431,-237.97308 815.71875,-237.0625 C 814.17992,-237.04976 811.99892,-236.79028 810.09375,-236.1875 C 807.16269,-235.26016 805.34344,-234.72908 803.5,-234.125 C 802.87324,-233.91962 802.50827,-233.73242 802.21875,-233.59375 C 801.81112,-233.38014 801.56541,-233.185 800.90625,-232.96875 C 799.65179,-232.55721 799.22014,-232.77971 795.625,-231.53125 C 792.23515,-230.35408 787.03002,-228.31755 785.84375,-227.375 C 784.31986,-227.31533 782.1937,-226.98013 780.3125,-226.3125 C 777.41511,-225.28421 775.61342,-224.63702 773.78125,-224 C 771.94908,-223.36299 772.1534,-223.15146 771,-222.75 C 769.75322,-222.31604 769.33639,-222.55028 765.78125,-221.1875 C 762.44258,-219.9077 757.2941,-217.70495 756.09375,-216.71875 C 754.58657,-216.61106 752.45806,-216.21995 750.59375,-215.5 C 747.72557,-214.3924 745.96995,-213.71844 744.15625,-213.03125 C 743.53959,-212.79762 743.15984,-212.58922 742.875,-212.4375 C 742.875,-212.4375 742.875,-211.34375 742.875,-211.34375 C 742.98678,-211.56611 743.26099,-212.16118 743.78125,-212.4375 C 744.47922,-212.80822 748.59488,-214.43087 750.59375,-215.15625 C 752.25061,-215.7575 754.74764,-216.48493 756.5625,-216.46875 C 756.86412,-216.46606 757.15012,-216.41785 757.40625,-216.375 C 759.24874,-216.06675 764.875,-214.8125 764.875,-214.8125 C 764.87499,-214.8125 758.64151,-216.45925 757.84375,-216.65625 C 757.65296,-216.70336 757.30803,-216.72497 756.875,-216.71875 C 758.02046,-217.58846 761.636,-219.11226 764.21875,-220.15625 C 767.05697,-221.30352 767.33556,-221.40807 769.28125,-221.8125 C 771.28955,-222.22994 772.4375,-222.3125 772.4375,-222.3125 C 772.4375,-222.31249 772.35514,-222.91364 773.40625,-223.4375 C 774.11135,-223.78891 778.29327,-225.3299 780.3125,-226 C 782.2644,-226.64773 785.3699,-227.3585 787.1875,-227 C 789.05073,-226.6325 794.71875,-225.1875 794.71875,-225.1875 C 794.71876,-225.1875 788.43175,-227.05861 787.625,-227.28125 C 787.43208,-227.3345 787.09416,-227.36729 786.65625,-227.375 C 787.81459,-228.20788 791.45069,-229.57032 794.0625,-230.53125 C 796.93266,-231.58726 797.22984,-231.69305 799.1875,-232.0625 C 801.04099,-232.41229 802.04634,-232.48798 802.21875,-232.5 C 802.33235,-232.71724 802.5962,-233.31002 803.125,-233.5625 C 803.83444,-233.90124 808.05107,-235.27525 810.09375,-235.875 C 811.78692,-236.37211 814.33452,-236.91177 816.1875,-236.78125 C 816.49545,-236.75957 816.80099,-236.68399 817.0625,-236.625 C 818.94368,-236.20068 824.65625,-234.59375 824.65625,-234.59375 C 824.65626,-234.59375 818.31451,-236.659 817.5,-236.90625 C 817.30521,-236.96539 816.94212,-237.01019 816.5,-237.03125 C 817.66949,-237.8288 821.36302,-239.08747 824,-239.96875 C 826.89781,-240.93722 827.23301,-240.97207 829.21875,-241.25 C 831.2684,-241.53689 832.40625,-241.5625 832.40625,-241.5625 C 832.40623,-241.5625 832.3335,-242.16947 833.40625,-242.625 C 834.12585,-242.93057 838.39723,-244.12575 840.46875,-244.625 C 842.47119,-245.10758 845.66724,-245.55329 847.53125,-245.03125 C 849.44203,-244.4961 855.25,-242.53125 855.25,-242.53125 C 855.25,-242.53125 848.82734,-244.95476 848,-245.25 C 847.80216,-245.32061 847.41784,-245.39039 846.96875,-245.4375 C 848.15665,-246.16615 851.88402,-247.21158 854.5625,-247.9375 C 857.50592,-248.73525 857.85458,-248.70833 859.875,-248.84375 C 861.78789,-248.97198 862.82205,-248.91484 863,-248.90625 C 863.11728,-249.10991 863.39176,-249.68573 863.9375,-249.875 C 864.66969,-250.12894 869.01602,-250.92289 871.125,-251.25 C 872.87313,-251.52111 875.52588,-251.7347 877.4375,-251.34375 C 877.75516,-251.27879 878.04272,-251.15824 878.3125,-251.0625 C 880.25324,-250.37377 886.15625,-247.96875 886.15625,-247.96875 C 886.15626,-247.96875 879.62154,-250.91952 878.78125,-251.28125 C 878.58028,-251.36776 878.20612,-251.44804 877.75,-251.53125 C 878.9565,-252.16443 882.77956,-252.92685 885.5,-253.4375 C 888.48953,-253.99869 888.80023,-253.96704 890.84375,-253.96875 C 892.95301,-253.97052 894.15625,-253.84375 894.15625,-253.84375 C 894.15625,-253.84374 894.08354,-254.47494 895.1875,-254.78125 C 895.92802,-254.98672 900.31362,-255.61512 902.4375,-255.84375 C 904.49052,-256.06474 907.75613,-256.09597 909.65625,-255.375 C 911.60404,-254.63593 917.5,-252 917.5,-252 C 917.50002,-252 910.93712,-255.17897 910.09375,-255.5625 C 909.89207,-255.65423 909.55154,-255.74871 909.09375,-255.84375 C 910.30467,-256.44563 914.07817,-257.09259 916.8125,-257.5 C 919.8173,-257.94772 920.13801,-257.9517 922.1875,-257.90625 C 924.12795,-257.86323 925.19449,-257.71202 925.375,-257.6875 C 925.49392,-257.88066 925.7589,-258.45333 926.3125,-258.59375 C 927.05521,-258.78213 931.46679,-259.32803 933.59375,-259.53125 C 935.35678,-259.69967 938.01384,-259.76554 939.9375,-259.28125 C 940.25718,-259.20077 940.54101,-259.07766 940.8125,-258.96875 C 942.76543,-258.18526 948.71875,-255.5 948.71875,-255.5 C 948.71873,-255.5 942.12684,-258.75348 941.28125,-259.15625 C 941.07903,-259.25257 940.70899,-259.36328 940.25,-259.46875 C 941.46414,-260.04302 945.29366,-260.59094 948.03125,-260.96875 C 951.03963,-261.38395 951.35432,-261.41138 953.40625,-261.34375 C 955.52423,-261.27394 956.71875,-261.09375 956.71875,-261.09375 C 956.71873,-261.09375 956.6415,-261.73116 957.75,-262 C 958.49362,-262.18035 962.90176,-262.66355 965.03125,-262.84375 C 967.08972,-263.01792 970.37449,-262.96807 972.28125,-262.1875 C 974.23584,-261.38734 980.15625,-258.65625 980.15625,-258.65625 C 980.15623,-258.65625 973.59632,-261.96501 972.75,-262.375 C 972.54763,-262.47305 972.17814,-262.5781 971.71875,-262.6875 C 972.93392,-263.2514 976.72883,-263.8018 979.46875,-264.15625 C 982.47966,-264.54577 982.79006,-264.5539 984.84375,-264.46875 C 986.78814,-264.38815 987.85038,-264.21551 988.03125,-264.1875 C 988.15041,-264.37836 988.41402,-264.93281 988.96875,-265.0625 C 989.71301,-265.2365 994.11868,-265.71297 996.25,-265.875 C 998.01662,-266.00927 1000.6997,-266.00071 1002.625,-265.5 C 1002.945,-265.41679 1003.2283,-265.29873 1003.5,-265.1875 C 1005.4546,-264.38734 1011.4063,-261.625 1011.4063,-261.625 C 1011.4062,-261.625 1004.8151,-264.96501 1003.9688,-265.375 C 1003.7664,-265.47305 1003.3969,-265.57811 1002.9375,-265.6875 C 1004.1526,-266.2514 1007.9788,-266.77056 1010.7188,-267.125 C 1013.7297,-267.51453 1014.0713,-267.5539 1016.125,-267.46875 C 1018.2447,-267.38087 1019.4375,-267.15625 1019.4375,-267.15625 C 1019.4375,-267.15625 1019.3591,-267.80527 1020.4688,-268.0625 C 1021.2131,-268.23506 1025.6183,-268.68586 1027.75,-268.84375 C 1029.8106,-268.99635 1033.0929,-268.94052 1035,-268.15625 C 1036.955,-267.3523 1042.875,-264.65625 1042.875,-264.65625 C 1042.875,-264.65625 1036.3152,-267.93212 1035.4688,-268.34375 C 1035.2663,-268.44219 1034.897,-268.54597 1034.4375,-268.65625 C 1035.6529,-269.21779 1039.4494,-269.78403 1042.1875,-270.15625 C 1045.1965,-270.5653 1045.5102,-270.57183 1047.5625,-270.5 C 1049.5056,-270.43201 1050.5697,-270.33515 1050.75,-270.3125 C 1050.8688,-270.5069 1051.1346,-271.04131 1051.6875,-271.1875 C 1052.4293,-271.38362 1056.8186,-272.01628 1058.9375,-272.28125 C 1060.6939,-272.50086 1063.3428,-272.61356 1065.25,-272.25 C 1065.5669,-272.18959 1065.8558,-272.06062 1066.125,-271.96875 C 1068.0612,-271.30783 1073.9688,-269.03125 1073.9688,-269.03125 C 1073.9687,-269.03125 1067.4321,-271.8378 1066.5938,-272.1875 C 1066.3933,-272.27113 1066.0176,-272.36083 1065.5625,-272.4375 C 1066.7662,-273.08796 1070.5816,-273.80945 1073.2813,-274.4375 C 1076.248,-275.1277 1076.5702,-275.19257 1078.5938,-275.3125 C 1080.6824,-275.4363 1081.875,-275.34375 1081.875,-275.34375 C 1081.875,-275.34374 1081.788,-275.9758 1082.875,-276.375 C 1083.6042,-276.6428 1087.9222,-277.71297 1090,-278.1875 C 1092.0085,-278.64619 1095.1679,-279.2168 1097,-278.8125 C 1098.8781,-278.39804 1110.5782,-275.79687 1110.5782,-275.79687 C 1110.5782,-275.79687 1098.2507,-278.81953 1097.4375,-279.0625 C 1097.243,-279.12062 1096.8789,-279.16876 1096.4375,-279.1875 C 1097.6051,-279.99119 1099.9517,-280.8748 1102.5469,-281.89062 C 1104.2283,-282.5488 1103.4706,-282.26721 1105.3228,-282.89422 C 1107.0764,-283.48788 1107.8082,-283.90493 1107.9532,-284.00721 C 1108.2993,-284.21372 1107.5972,-284.12909 1107.409,-284.04961 z" | ||
2404 | style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter7001);enable-background:new" | ||
2405 | sodipodi:nodetypes="czscsssscssssscsssscssssscsssscssssscsssscssssscsssscssssscsssscssccsssscscsscssscscsscsssscscsscssscscsscsssscscsscssscscsscsssscscsscssscscsscsssscscsscssscscsscsssscscsscssscscsscc" /> | ||
2406 | <path | ||
2407 | id="path8095" | ||
2408 | d="M 1082.625,-275.125 C 1084.498,-274.73152 1087.1211,-273.97945 1088.6563,-273.15625 C 1090.1915,-272.33306 1091.4785,-272.10025 1094.0313,-270.65625 C 1096.5579,-269.22699 1098.8271,-268.64929 1101,-268.125 C 1103.3476,-267.55858 1106.4354,-267.40977 1109.8438,-266.9375 C 1108.7549,-267.77725 1103.2364,-268.10995 1101.4375,-268.5 C 1099.6386,-268.89006 1097.5434,-269.51616 1094.8438,-270.8125 C 1092.1441,-272.10884 1091.3494,-272.61146 1089.0313,-273.5 C 1086.7131,-274.38854 1085.0269,-274.88314 1082.625,-275.125 z" | ||
2409 | style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter6949);enable-background:new" /> | ||
2410 | <path | ||
2411 | id="path8097" | ||
2412 | d="M 1051.4688,-270 C 1053.3741,-269.42241 1055.9969,-268.38428 1057.5625,-267.40625 C 1059.1281,-266.42823 1060.4427,-266.04644 1063.0625,-264.28125 C 1065.6555,-262.53409 1068.0484,-261.57198 1070.3125,-260.6875 C 1072.7586,-259.73193 1075.9951,-259.03037 1079.7188,-257.625 C 1078.5292,-258.76284 1072.6557,-260.31175 1070.7813,-261 C 1068.9068,-261.68825 1066.6995,-262.5662 1063.9063,-264.28125 C 1061.113,-265.99629 1060.3327,-266.56515 1057.9688,-267.6875 C 1055.6047,-268.80984 1053.9121,-269.52205 1051.4688,-270 z" | ||
2413 | style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter6961);enable-background:new" /> | ||
2414 | <path | ||
2415 | id="path8099" | ||
2416 | d="M 1020.2188,-266.84375 C 1022.1307,-266.20564 1024.8,-265.08839 1026.375,-264.03125 C 1027.9501,-262.9741 1029.2706,-262.52258 1031.9063,-260.625 C 1034.5149,-258.74679 1036.9347,-257.59497 1039.2188,-256.5625 C 1041.6865,-255.44705 1044.9833,-254.3892 1048.75,-252.71875 C 1047.5467,-253.94128 1041.5472,-256.03298 1039.6563,-256.84375 C 1037.7653,-257.65452 1035.5914,-258.73754 1032.7813,-260.59375 C 1029.9711,-262.44995 1029.1595,-263.07068 1026.7813,-264.3125 C 1024.403,-265.5543 1022.6706,-266.28819 1020.2188,-266.84375 z" | ||
2417 | style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter6957);enable-background:new" /> | ||
2418 | <path | ||
2419 | id="path8101" | ||
2420 | d="M 1110.1719,-266.89063 C 1110.3227,-266.84207 1110.8599,-266.25963 1110.2813,-265.40625 C 1109.4712,-264.21166 1104.5764,-262.08196 1101.7188,-261.28125 C 1098.8739,-260.48413 1095.4287,-260.30351 1091.1563,-261.65625 C 1086.8547,-263.0182 1085.6866,-264.12497 1080.5,-265.96875 C 1085.164,-263.85358 1086.6953,-262.01642 1090.625,-260.625 C 1092.2457,-260.05113 1093.9921,-259.6854 1095.6875,-259.59375 C 1095.2424,-259.26812 1094.1572,-258.61045 1092.125,-258 C 1089.3295,-257.16031 1085.4759,-256.46622 1083.875,-256.375 C 1082.3604,-256.28868 1080.733,-256.88749 1080.4375,-257 C 1080.6042,-256.89692 1080.8107,-256.62266 1080.1875,-255.96875 C 1079.2882,-255.02512 1074.0401,-254.04575 1071.0625,-253.71875 C 1068.0982,-253.3932 1064.5409,-253.73471 1060.1563,-255.625 C 1056.1783,-257.33997 1054.8173,-258.54036 1050.75,-260.375 C 1050.75,-260.375 1050.75,-260.21875 1050.75,-260.21875 C 1054.3931,-258.12346 1056.034,-256.33548 1059.625,-254.65625 C 1061.3552,-253.84716 1063.2167,-253.24749 1065.0313,-252.9375 C 1064.4964,-252.65074 1063.4735,-252.22599 1061.5938,-251.90625 C 1058.7248,-251.41829 1054.7848,-251.09011 1053.1563,-251.15625 C 1052.3056,-251.19079 1051.4277,-251.34062 1050.75,-251.5625 C 1050.0652,-251.77738 1049.5603,-252.00717 1049.4375,-252.0625 C 1049.6069,-251.95529 1049.8686,-251.65962 1049.2188,-251.03125 C 1048.3091,-250.15163 1042.9727,-249.69487 1039.9688,-249.5625 C 1036.9783,-249.43071 1033.3799,-250.01313 1028.9688,-252.125 C 1024.5276,-254.25126 1023.3273,-255.5266 1018.0625,-257.90625 C 1022.7968,-255.30921 1024.349,-253.27715 1028.4063,-251.1875 C 1030.0796,-250.32565 1031.8915,-249.69325 1033.6563,-249.25 C 1033.193,-249.01668 1032.0669,-248.56186 1029.9688,-248.3125 C 1027.0825,-247.96952 1023.1342,-247.81962 1021.5,-247.9375 C 1019.9538,-248.049 1018.2688,-248.79446 1017.9688,-248.9375 C 1018.1379,-248.81721 1018.3826,-248.52702 1017.75,-247.9375 C 1016.8372,-247.08677 1011.5059,-246.67538 1008.5,-246.5625 C 1005.5075,-246.45013 1001.9103,-247.05293 997.5,-249.15625 C 993.49875,-251.06448 992.11197,-252.29408 988.03125,-254.25 C 988.03122,-254.25 988.03125,-254.09375 988.03125,-254.09375 C 991.68631,-251.88983 993.32546,-250.0412 996.9375,-248.1875 C 998.67779,-247.29435 1000.5745,-246.65923 1002.4063,-246.21875 C 1001.8663,-245.97045 1000.8282,-245.60342 998.9375,-245.375 C 996.05182,-245.02642 992.07145,-244.85405 990.4375,-244.96875 C 989.58405,-245.02865 988.71119,-245.22666 988.03125,-245.46875 C 987.34415,-245.70405 986.8419,-245.94101 986.71875,-246 C 986.88873,-245.88773 987.18323,-245.57775 986.53125,-244.96875 C 985.6186,-244.11625 980.25592,-243.67538 977.25,-243.5625 C 974.25754,-243.45013 970.65654,-244.09055 966.25,-246.15625 C 961.81347,-248.23603 960.60312,-249.48796 955.34375,-251.8125 C 960.07313,-249.26501 961.63449,-247.2347 965.6875,-245.1875 C 967.35905,-244.34317 969.17304,-243.72107 970.9375,-243.28125 C 970.47427,-243.04703 969.3478,-242.59718 967.25,-242.34375 C 964.36431,-241.99517 960.4138,-241.77423 958.78125,-241.875 C 957.23669,-241.97032 955.58094,-242.70385 955.28125,-242.84375 C 955.45024,-242.72522 955.66317,-242.4399 955.03125,-241.84375 C 954.11939,-240.98347 948.7846,-240.5135 945.78125,-240.375 C 942.7913,-240.2371 939.2138,-240.82568 934.8125,-242.84375 C 930.81942,-244.67464 929.44739,-245.87295 925.375,-247.75 C 925.37498,-247.75 925.375,-247.59375 925.375,-247.59375 C 929.02261,-245.46048 930.64533,-243.65888 934.25,-241.875 C 935.98675,-241.01549 937.85727,-240.42486 939.6875,-240 C 939.14803,-239.7471 938.13687,-239.35871 936.25,-239.09375 C 933.37022,-238.68939 929.41187,-238.44813 927.78125,-238.53125 C 926.92953,-238.57466 926.05355,-238.7398 925.375,-238.96875 C 924.68931,-239.19076 924.1854,-239.41214 924.0625,-239.46875 C 924.23209,-239.35976 924.4944,-239.0591 923.84375,-238.4375 C 922.93296,-237.56736 917.59354,-237.04598 914.59375,-236.875 C 911.60742,-236.70479 908.01994,-237.19077 903.625,-239.15625 C 899.20011,-241.13513 898.01904,-242.38444 892.78125,-244.53125 C 897.49122,-242.14358 899.05142,-240.14252 903.09375,-238.1875 C 904.7609,-237.38119 906.55418,-236.79092 908.3125,-236.40625 C 907.85087,-236.15755 906.7155,-235.694 904.625,-235.375 C 901.7494,-234.93624 897.8446,-234.6419 896.21875,-234.6875 C 894.68052,-234.73062 892.98595,-235.43272 892.6875,-235.5625 C 892.85583,-235.44968 893.09807,-235.14875 892.46875,-234.53125 C 891.56063,-233.64015 886.2658,-233.003 883.28125,-232.71875 C 880.31007,-232.43577 876.70783,-232.89455 872.34375,-234.65625 C 868.38441,-236.25456 867.0146,-237.45112 863,-238.96875 C 863.00003,-238.96875 863,-238.8125 863,-238.8125 C 866.5959,-237.00115 868.23831,-235.23017 871.8125,-233.65625 C 873.53457,-232.8979 875.39998,-232.3673 877.21875,-232.03125 C 876.68266,-231.75217 875.65217,-231.34362 873.78125,-230.96875 C 870.92586,-230.39665 866.99183,-229.94936 865.375,-229.9375 C 864.53049,-229.93129 863.66892,-230.01844 863,-230.1875 C 862.32409,-230.34901 861.83991,-230.51673 861.71875,-230.5625 C 861.88597,-230.46848 862.14142,-230.17902 861.5,-229.5 C 860.60213,-228.54948 855.31352,-227.58292 852.375,-227.0625 C 849.44966,-226.54441 845.94285,-226.68826 841.65625,-228.09375 C 837.34045,-229.50882 836.18348,-230.62369 831.09375,-232.0625 C 835.6706,-230.31149 837.1823,-228.50244 841.125,-227.0625 C 842.75108,-226.46861 844.49385,-226.10685 846.21875,-225.90625 C 845.7659,-225.60923 844.66397,-225.02286 842.625,-224.4375 C 839.82028,-223.63233 835.98614,-222.86167 834.40625,-222.6875 C 832.9115,-222.5227 831.29002,-223.00431 831,-223.09375 C 831.16356,-223.00368 831.39278,-222.73382 830.78125,-222.03125 C 829.89878,-221.0174 824.73673,-219.6596 821.84375,-218.96875 C 818.96373,-218.28097 815.50815,-218.20873 811.28125,-219.40625 C 807.4464,-220.4927 806.10867,-221.47862 802.21875,-222.53125 C 802.21874,-222.53125 802.21875,-222.375 802.21875,-222.375 C 805.70293,-220.98015 807.28816,-219.4556 810.75,-218.34375 C 812.41793,-217.80803 814.20578,-217.55701 815.96875,-217.46875 C 815.44911,-217.11663 814.46836,-216.55423 812.65625,-215.9375 C 809.89059,-214.99625 806.06601,-214.00213 804.5,-213.78125 C 803.68206,-213.66586 802.8669,-213.65842 802.21875,-213.75 C 801.56379,-213.83321 801.08615,-213.96827 800.96875,-214 C 801.13079,-213.92536 801.40274,-213.65956 800.78125,-212.90625 C 799.91125,-211.85172 794.77162,-210.247 791.90625,-209.46875 C 789.05372,-208.69399 785.64713,-208.51055 781.46875,-209.5625 C 777.26192,-210.62163 776.11206,-211.60416 771.125,-212.71875 C 775.60954,-211.25929 777.09435,-209.58352 780.9375,-208.46875 C 782.52254,-208.00898 784.22429,-207.8305 785.90625,-207.78125 C 785.46468,-207.44449 784.39374,-206.75352 782.40625,-206 C 779.67232,-204.96351 775.95427,-203.83731 774.40625,-203.5625 C 772.94163,-203.30248 771.34667,-203.67904 771.0625,-203.75 C 771.22275,-203.67035 771.44294,-203.42902 770.84375,-202.6875 C 769.97909,-201.61744 764.92723,-199.86935 762.09375,-199 C 759.27295,-198.13453 755.88625,-197.84369 751.75,-198.78125 C 747.99741,-199.63186 746.70215,-200.49772 742.875,-201.375 C 742.875,-201.375 742.875,-201.21875 742.875,-201.21875 C 746.30296,-199.98096 747.86241,-198.58645 751.25,-197.6875 C 752.88216,-197.25436 754.61704,-197.10449 756.34375,-197.125 C 755.83482,-196.74083 754.867,-196.10318 753.09375,-195.375 C 750.38741,-194.26366 746.65742,-193.06719 745.125,-192.75 C 744.3246,-192.58431 743.51269,-192.53138 742.875,-192.59375 C 742.875,-192.59375 742.875,-192.07823 742.875,-191.67146 C 742.875,-191.40639 742.875,-191.1875 742.875,-191.1875 C 743.10145,-191.33218 743.32391,-191.46011 743.59375,-191.5625 C 744.67427,-191.97248 745.76536,-191.77827 749.59375,-193.25 C 753.42218,-194.72174 754.81787,-195.25498 755.5,-195.65625 C 756.1796,-196.05603 757.11165,-196.53562 757.71875,-197.1875 C 759.5456,-197.32525 761.2895,-197.68073 762.65625,-198.1875 C 765.62437,-199.28802 767.53162,-199.99369 769.4375,-200.65625 C 771.34336,-201.31879 771.79159,-202.07112 772.84375,-202.4375 C 773.9353,-202.81761 775.03886,-202.60288 778.90625,-203.96875 C 782.7737,-205.33461 784.18941,-205.79583 784.875,-206.1875 C 785.57609,-206.58802 786.57581,-207.12048 787.1875,-207.78125 C 789.1583,-207.83591 791.00435,-208.16588 792.46875,-208.65625 C 795.47023,-209.66133 797.3949,-210.27796 799.3125,-210.90625 C 800.8511,-211.41035 801.48652,-211.95302 802.21875,-212.34375 C 802.44891,-212.47806 802.69449,-212.59748 802.96875,-212.6875 C 804.06698,-213.04798 805.1502,-212.76887 809.0625,-214 C 812.97483,-215.23113 814.42855,-215.67295 815.125,-216.03125 C 815.81888,-216.38822 816.75515,-216.82386 817.375,-217.4375 C 819.24021,-217.46016 821.01081,-217.70433 822.40625,-218.125 C 825.43668,-219.03854 827.39863,-219.5551 829.34375,-220.09375 C 831.28886,-220.63239 831.76993,-221.35827 832.84375,-221.65625 C 833.95776,-221.9654 835.06369,-221.64886 839.03125,-222.6875 C 842.99886,-223.72613 844.44883,-224.12023 845.15625,-224.4375 C 845.89112,-224.76709 846.97008,-225.19122 847.59375,-225.8125 C 849.59149,-225.6965 851.45118,-225.83259 852.9375,-226.1875 C 856.01561,-226.9225 858.02094,-227.28844 860,-227.6875 C 861.58792,-228.00768 862.24429,-228.47805 863,-228.78125 C 863.23757,-228.88805 863.46695,-228.97401 863.75,-229.03125 C 864.88347,-229.26044 866.05448,-228.82232 870.09375,-229.53125 C 874.13308,-230.24018 875.594,-230.45834 876.3125,-230.71875 C 877.02836,-230.97819 878.01678,-231.28599 878.65625,-231.8125 C 880.58052,-231.57301 882.40413,-231.58797 883.84375,-231.8125 C 886.97008,-232.30012 888.9983,-232.51317 891,-232.78125 C 893.00171,-233.04932 893.48869,-233.72639 894.59375,-233.875 C 895.74014,-234.02918 896.86967,-233.57343 900.9375,-234.09375 C 905.00534,-234.61407 906.49763,-234.78948 907.21875,-235.03125 C 907.95585,-235.27839 909.01684,-235.61748 909.65625,-236.15625 C 911.70632,-235.82072 913.63003,-235.75829 915.15625,-235.9375 C 918.29856,-236.30646 920.33619,-236.49686 922.34375,-236.71875 C 923.95451,-236.89677 924.60842,-237.32695 925.375,-237.5625 C 925.61594,-237.64802 925.86912,-237.7181 926.15625,-237.75 C 927.30603,-237.87772 928.45754,-237.40335 932.53125,-237.875 C 936.60499,-238.34665 938.09034,-238.4856 938.8125,-238.71875 C 939.53196,-238.95102 940.51274,-239.19221 941.15625,-239.6875 C 943.09262,-239.35404 944.92631,-239.28326 946.375,-239.4375 C 949.52102,-239.77245 951.55256,-239.95609 953.5625,-240.15625 C 955.57246,-240.35639 956.04664,-240.98264 957.15625,-241.09375 C 958.30739,-241.20903 959.45268,-240.72869 963.53125,-241.15625 C 967.60986,-241.58381 969.12011,-241.71834 969.84375,-241.9375 C 970.5829,-242.16136 971.63947,-242.45075 972.28125,-242.96875 C 974.33835,-242.57008 976.28312,-242.47535 977.8125,-242.625 C 980.96123,-242.9331 982.98834,-243.09825 985,-243.28125 C 986.61407,-243.42807 987.2631,-243.8418 988.03125,-244.0625 C 988.27267,-244.14336 988.52478,-244.19241 988.8125,-244.21875 C 989.96461,-244.3242 991.10546,-243.826 995.1875,-244.21875 C 999.26958,-244.6115 1000.7764,-244.74959 1001.5,-244.96875 C 1002.2209,-245.18708 1003.1997,-245.41645 1003.8438,-245.90625 C 1005.7818,-245.55626 1007.6126,-245.45187 1009.0625,-245.59375 C 1012.2112,-245.90185 1014.2383,-246.067 1016.25,-246.25 C 1018.2616,-246.43299 1018.7642,-247.08802 1019.875,-247.1875 C 1021.0273,-247.29073 1022.1672,-246.80267 1026.25,-247.1875 C 1030.3329,-247.57232 1031.8387,-247.6885 1032.5625,-247.90625 C 1033.3018,-248.12868 1034.3581,-248.42074 1035,-248.9375 C 1037.0574,-248.53573 1039.0029,-248.43417 1040.5313,-248.59375 C 1043.6779,-248.92227 1045.7084,-249.11645 1047.7188,-249.3125 C 1049.3318,-249.46979 1049.9844,-249.94398 1050.75,-250.1875 C 1050.9907,-250.27554 1051.2132,-250.30887 1051.5,-250.34375 C 1052.6483,-250.48345 1053.8167,-250.00384 1057.875,-250.59375 C 1061.9333,-251.18367 1063.4368,-251.37089 1064.1563,-251.625 C 1064.873,-251.87816 1065.8308,-252.18307 1066.4688,-252.71875 C 1068.3885,-252.50681 1070.1887,-252.56734 1071.625,-252.8125 C 1074.7441,-253.3449 1076.7366,-253.74111 1078.7188,-254.125 C 1080.7009,-254.50887 1081.1931,-255.16465 1082.2813,-255.40625 C 1083.4101,-255.65691 1084.5516,-255.28996 1088.5313,-256.28125 C 1092.5109,-257.27253 1093.9609,-257.70055 1094.6563,-258.0625 C 1095.3786,-258.43851 1096.4182,-258.93308 1097.0313,-259.59375 C 1098.9943,-259.6058 1100.825,-259.8848 1102.25,-260.4375 C 1105.2012,-261.58211 1107.1232,-262.30692 1108.9375,-263.1875 C 1110.3932,-263.89403 1111.2723,-264.87391 1111.4844,-265.17188 C 1111.6966,-265.46984 1111.5962,-265.91718 1111.6223,-265.93863 C 1111.6652,-265.97387 1111.9416,-266.0236 1112.1013,-266.36707 C 1112.9602,-268.21415 1114.4223,-272.01166 1114.5365,-272.69652 C 1114.6502,-273.37868 1114.7003,-274.04426 1114.751,-274.44149 C 1114.7804,-274.67101 1114.6043,-275.30693 1114.6264,-275.36553 C 1114.6573,-275.44759 1114.9309,-275.63081 1114.9863,-275.88024 C 1115.2526,-277.07857 1115.0752,-278.07153 1114.8612,-279.48917 C 1114.6472,-280.90681 1113.8775,-284.11131 1113.2243,-284.96543 C 1112.5654,-285.82715 1112.0014,-285.9766 1111.4764,-285.96609 C 1111.2678,-285.69633 1111.6132,-285.703 1111.639,-285.65348 C 1112.3196,-285.60269 1112.573,-285.28484 1113.0582,-284.75686 C 1113.5434,-284.22888 1114.501,-280.8173 1114.6376,-279.36691 C 1114.7742,-277.91652 1114.8276,-276.50671 1114.5496,-275.89827 C 1114.2715,-275.28982 1113.6054,-275.46963 1113.313,-275.40375 C 1113.844,-275.21786 1114.2038,-275.19053 1114.2654,-274.34607 C 1114.3247,-273.53269 1114.1322,-272.70638 1113.7456,-271.54045 C 1113.3544,-270.36044 1111.9004,-267.19047 1111.4599,-266.94168 C 1111.0076,-266.68617 1110.5075,-266.75969 1110.1719,-266.89063 z" | ||
2421 | style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter6997);enable-background:new" | ||
2422 | sodipodi:nodetypes="cssscscsscsssccscssssssscscsscsssscscssssssscscsscsssscscssssssscscsscsssscscssssssscscsscsssscscssssssscscsscsssccscsscscssscssssscsssssscssssscsssssscssssscsssssscssssscsssssscssssscsssssscssssscsszsszssszzcczzzczzzc" /> | ||
2423 | <path | ||
2424 | id="path8103" | ||
2425 | d="M 988.75,-263.84375 C 990.66161,-263.20935 993.30027,-262.08534 994.875,-261.03125 C 996.44977,-259.97716 997.7711,-259.54873 1000.4063,-257.65625 C 1003.0145,-255.78311 1005.4332,-254.64103 1007.7188,-253.59375 C 1010.1881,-252.46228 1013.4709,-251.43901 1017.25,-249.65625 C 1016.0428,-250.91465 1010.111,-253.0207 1008.2188,-253.84375 C 1006.3266,-254.66679 1004.0908,-255.77424 1001.2813,-257.625 C 998.47169,-259.47575 997.65906,-260.10654 995.28125,-261.34375 C 992.90343,-262.58094 991.20137,-263.29295 988.75,-263.84375 z" | ||
2426 | style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter6953);enable-background:new" /> | ||
2427 | <path | ||
2428 | id="path8105" | ||
2429 | d="M 957.5,-260.78125 C 959.41,-260.16315 962.08288,-259.07191 963.65625,-258.03125 C 965.22964,-256.99059 966.55233,-256.54873 969.1875,-254.65625 C 971.79573,-252.7831 974.21442,-251.64104 976.5,-250.59375 C 978.96931,-249.46228 982.25213,-248.439 986.03125,-246.65625 C 984.82397,-247.91465 978.82971,-250.05195 976.9375,-250.875 C 975.04533,-251.69804 972.84084,-252.8055 970.03125,-254.65625 C 967.22167,-256.507 966.4383,-257.09557 964.0625,-258.3125 C 961.68672,-259.52941 959.94929,-260.25135 957.5,-260.78125 z" | ||
2430 | style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter6993);enable-background:new" /> | ||
2431 | <path | ||
2432 | id="path8107" | ||
2433 | d="M 926.09375,-257.375 C 928.00147,-256.77755 930.64723,-255.71116 932.21875,-254.6875 C 933.79025,-253.66385 935.08897,-253.24779 937.71875,-251.40625 C 940.32166,-249.58352 942.74762,-248.43405 945.03125,-247.40625 C 947.49845,-246.29584 950.7866,-245.31302 954.5625,-243.5625 C 953.35627,-244.8106 947.3906,-246.88059 945.5,-247.6875 C 943.60942,-248.4944 941.39758,-249.57854 938.59375,-251.375 C 935.7899,-253.17144 934.96671,-253.77751 932.59375,-254.96875 C 930.22078,-256.15999 928.54013,-256.87158 926.09375,-257.375 z" | ||
2434 | style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter6989);enable-background:new" /> | ||
2435 | <path | ||
2436 | id="path8109" | ||
2437 | d="M 894.90625,-253.5625 C 896.80838,-253.00895 899.49326,-251.97363 901.0625,-250.96875 C 902.63173,-249.96388 903.93651,-249.56011 906.5625,-247.75 C 909.16162,-245.95836 911.56284,-244.87811 913.84375,-243.875 C 916.30803,-242.79126 919.60359,-241.83471 923.375,-240.125 C 922.1702,-241.36007 916.20084,-243.36978 914.3125,-244.15625 C 912.42418,-244.94272 910.2373,-245.98705 907.4375,-247.75 C 904.63773,-249.51294 903.83831,-250.11836 901.46875,-251.28125 C 899.09918,-252.44413 897.3455,-253.11537 894.90625,-253.5625 z" | ||
2438 | style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter6985);enable-background:new" /> | ||
2439 | <path | ||
2440 | id="path8111" | ||
2441 | d="M 863.71875,-248.65625 C 865.59937,-248.22716 868.22302,-247.27587 869.78125,-246.34375 C 871.33948,-245.41164 872.63358,-245.08599 875.25,-243.34375 C 877.83971,-241.61931 880.23067,-240.63573 882.5,-239.71875 C 884.95176,-238.72806 888.23959,-237.84168 892,-236.21875 C 890.79869,-237.42609 884.84751,-239.28484 882.96875,-240 C 881.09,-240.71517 878.88335,-241.68442 876.09375,-243.375 C 873.30412,-245.06557 872.50914,-245.60322 870.15625,-246.65625 C 867.80333,-247.70926 866.13041,-248.36873 863.71875,-248.65625 z" | ||
2442 | style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter6965);enable-background:new" /> | ||
2443 | <path | ||
2444 | id="path8113" | ||
2445 | d="M 833.15625,-241.375 C 835.00461,-241.07856 837.6257,-240.39868 839.15625,-239.59375 C 840.68683,-238.78882 841.96999,-238.53802 844.53125,-237.0625 C 847.06629,-235.60204 849.42193,-234.73741 851.65625,-234 C 854.07024,-233.20332 857.31336,-232.53311 861.03125,-231.15625 C 859.84354,-232.28498 853.94353,-233.746 852.09375,-234.3125 C 850.24398,-234.879 848.09033,-235.68642 845.34375,-237.15625 C 842.59718,-238.62608 841.84239,-239.07653 839.53125,-239.9375 C 837.2201,-240.79845 835.52654,-241.25759 833.15625,-241.375 z" | ||
2446 | style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter6981);enable-background:new" /> | ||
2447 | <path | ||
2448 | id="path8115" | ||
2449 | d="M 802.90625,-232.3125 C 804.72845,-232.10123 807.27201,-231.51193 808.78125,-230.78125 C 810.2905,-230.05059 811.53693,-229.85127 814.0625,-228.5 C 816.56226,-227.16254 818.89404,-226.45157 821.09375,-225.84375 C 823.47028,-225.18708 826.65839,-224.77087 830.3125,-223.65625 C 829.14515,-224.70121 823.38362,-225.75954 821.5625,-226.21875 C 819.74139,-226.67796 817.61025,-227.34571 814.90625,-228.65625 C 812.20222,-229.96677 811.43519,-230.37615 809.15625,-231.125 C 806.8773,-231.87383 805.243,-232.30431 802.90625,-232.3125 z" | ||
2450 | style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter6977);enable-background:new" /> | ||
2451 | <path | ||
2452 | id="path8117" | ||
2453 | d="M 773.1875,-222.1875 C 774.99859,-222.0088 777.50809,-221.52244 779,-220.84375 C 780.49194,-220.16506 781.7534,-220.04553 784.25,-218.78125 C 786.72107,-217.52987 789.04005,-216.88511 791.21875,-216.34375 C 793.57262,-215.75887 796.71009,-215.44623 800.3125,-214.5 C 799.16166,-215.49116 793.45999,-216.2833 791.65625,-216.6875 C 789.85253,-217.0917 787.74072,-217.70866 785.0625,-218.9375 C 782.38432,-220.16634 781.65905,-220.54839 779.40625,-221.21875 C 777.15346,-221.88909 775.50998,-222.22107 773.1875,-222.1875 z" | ||
2454 | style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter6973);enable-background:new" /> | ||
2455 | <path | ||
2456 | id="path8119" | ||
2457 | d="M 743.5625,-211.1875 C 745.35531,-211.05839 747.83563,-210.63785 749.3125,-210 C 750.7894,-209.36215 752.0286,-209.25844 754.5,-208.0625 C 756.94618,-206.87878 759.22054,-206.31584 761.375,-205.84375 C 763.70267,-205.33372 766.7946,-205.16311 770.375,-204.28125 C 769.23121,-205.25185 763.62741,-205.8719 761.84375,-206.21875 C 760.06008,-206.56559 757.9609,-207.10631 755.3125,-208.25 C 752.66409,-209.39368 751.91755,-209.76631 749.6875,-210.375 C 747.45742,-210.98368 745.86156,-211.28466 743.5625,-211.1875 z" | ||
2458 | style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter6969);enable-background:new" /> | ||
2459 | <g | ||
2460 | id="g8121" | ||
2461 | style="fill:#ffffff;fill-opacity:1;filter:url(#filter7345)"> | ||
2462 | <path | ||
2463 | sodipodi:nodetypes="czzzczzc" | ||
2464 | id="path8123" | ||
2465 | d="M 744.9375,-212.11731 C 744.9375,-212.11731 752.15979,-215.34049 754,-215.61731 C 755.84021,-215.89413 757.35225,-215.62054 760,-215.05481 C 762.64775,-214.48908 768.7357,-212.83963 771.1875,-211.67981 C 773.6393,-210.51999 776.5,-208.11731 776.5,-208.11731 C 776.5,-208.11731 769.35356,-210.8975 766.3125,-211.67981 C 763.27144,-212.46212 758.66789,-213.76355 755.9375,-213.99231 C 753.20711,-214.22107 744.9375,-212.11731 744.9375,-212.11731 z" | ||
2466 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" /> | ||
2467 | <path | ||
2468 | sodipodi:nodetypes="czzzczzc" | ||
2469 | id="path8125" | ||
2470 | d="M 735.46875,-206.95416 C 735.46875,-206.95416 739.12854,-209.17734 740.96875,-209.45416 C 742.80896,-209.73098 744.6335,-209.20739 747.28125,-208.64166 C 749.929,-208.07593 756.01695,-206.42648 758.46875,-205.26666 C 760.92055,-204.10684 765.03125,-203.14166 765.03125,-203.14166 C 765.03125,-203.14166 756.63481,-204.48435 753.59375,-205.26666 C 750.55269,-206.04897 745.63664,-207.6004 742.90625,-207.82916 C 740.17586,-208.05792 735.46875,-206.95416 735.46875,-206.95416 z" | ||
2471 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2472 | <path | ||
2473 | sodipodi:nodetypes="czzzczzc" | ||
2474 | id="path8127" | ||
2475 | d="M 759.85042,-217.61116 C 759.85042,-217.61116 768.39412,-220.90973 770.2482,-221.06902 C 772.10229,-221.22832 773.88986,-220.58982 776.4963,-219.85694 C 779.10274,-219.12406 785.07354,-217.091 787.44666,-215.77769 C 789.81978,-214.46438 793.86083,-213.23987 793.86083,-213.23987 C 793.86083,-213.23987 785.5667,-215.11352 782.58152,-216.08754 C 779.59633,-217.06156 774.78883,-218.92232 772.0785,-219.32416 C 769.36817,-219.726 759.85042,-217.61116 759.85042,-217.61116 z" | ||
2476 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2477 | <path | ||
2478 | sodipodi:nodetypes="czzzczzc" | ||
2479 | id="path8129" | ||
2480 | d="M 775.19813,-223.2266 C 775.19813,-223.2266 782.96946,-226.00904 784.82644,-226.13009 C 786.68341,-226.25113 788.45744,-225.57592 791.04822,-224.78947 C 793.63899,-224.00302 799.56662,-221.8473 801.91216,-220.48535 C 804.25771,-219.1234 808.27265,-217.81585 808.27265,-217.81585 C 808.27265,-217.81585 800.01892,-219.86008 797.05444,-220.89543 C 794.08997,-221.93078 789.32185,-223.89024 786.62038,-224.34786 C 783.91891,-224.80549 775.19813,-223.2266 775.19813,-223.2266 z" | ||
2481 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2482 | <path | ||
2483 | inkscape:transform-center-y="-4.3190906" | ||
2484 | inkscape:transform-center-x="13.852145" | ||
2485 | sodipodi:nodetypes="czzzczzc" | ||
2486 | id="path8131" | ||
2487 | d="M 789.64298,-227.95417 C 789.64298,-227.95417 798.32554,-231.47448 800.18452,-231.55952 C 802.04349,-231.64455 803.8041,-230.9351 806.37915,-230.09859 C 808.9542,-229.2621 814.83894,-226.99193 817.15766,-225.58479 C 819.47638,-224.17764 823.46523,-222.79255 823.46523,-222.79255 C 823.46523,-222.79255 815.25266,-224.99632 812.3088,-226.08891 C 809.36494,-227.1815 804.63568,-229.23299 801.94358,-229.74288 C 799.25149,-230.25276 789.64298,-227.95417 789.64298,-227.95417 z" | ||
2488 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2489 | <path | ||
2490 | inkscape:transform-center-y="-4.3190906" | ||
2491 | inkscape:transform-center-x="13.852145" | ||
2492 | sodipodi:nodetypes="czzzczzc" | ||
2493 | id="path8133" | ||
2494 | d="M 804.49513,-233.32948 C 804.49513,-233.32948 812.30269,-235.91229 814.16167,-235.99733 C 816.02064,-236.08236 817.78125,-235.37291 820.3563,-234.5364 C 822.93135,-233.69991 828.81609,-231.42974 831.13481,-230.0226 C 833.45353,-228.61545 837.44238,-227.23036 837.44238,-227.23036 C 837.44238,-227.23036 829.22981,-229.43413 826.28595,-230.52672 C 823.34209,-231.61931 818.61283,-233.6708 815.92073,-234.18069 C 813.22864,-234.69057 804.49513,-233.32948 804.49513,-233.32948 z" | ||
2495 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2496 | <path | ||
2497 | inkscape:transform-center-y="-4.3190906" | ||
2498 | inkscape:transform-center-x="13.852145" | ||
2499 | sodipodi:nodetypes="czzzczzc" | ||
2500 | id="path8135" | ||
2501 | d="M 819.55763,-237.57948 C 819.55763,-237.57948 828.11519,-240.16229 829.97417,-240.24733 C 831.83314,-240.33236 833.59375,-239.62291 836.1688,-238.7864 C 838.74385,-237.94991 844.62859,-235.67974 846.94731,-234.2726 C 849.26603,-232.86545 853.25488,-231.48036 853.25488,-231.48036 C 853.25488,-231.48036 845.04231,-233.68413 842.09845,-234.77672 C 839.15459,-235.86931 834.42533,-237.9208 831.73323,-238.43069 C 829.04114,-238.94057 819.55763,-237.57948 819.55763,-237.57948 z" | ||
2502 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2503 | <path | ||
2504 | inkscape:transform-center-y="-4.9269042" | ||
2505 | inkscape:transform-center-x="13.64141" | ||
2506 | sodipodi:nodetypes="czzzczzc" | ||
2507 | id="path8137" | ||
2508 | d="M 836.23395,-242.60125 C 836.23395,-242.60125 843.20097,-244.58848 845.06179,-244.56882 C 846.9226,-244.54915 848.64052,-243.7418 851.16444,-242.76177 C 853.68837,-241.78177 859.4361,-239.18419 861.672,-237.64886 C 863.9079,-236.11351 867.81253,-234.50625 867.81253,-234.50625 C 867.81253,-234.50625 859.73692,-237.16847 856.85917,-238.42491 C 853.98143,-239.68136 849.37505,-241.99561 846.71589,-242.65612 C 844.05674,-243.31661 836.23395,-242.60125 836.23395,-242.60125 z" | ||
2509 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2510 | <path | ||
2511 | inkscape:transform-center-y="-5.1542119" | ||
2512 | inkscape:transform-center-x="13.55068" | ||
2513 | sodipodi:nodetypes="czzzczzc" | ||
2514 | id="path8139" | ||
2515 | d="M 850.73028,-246.00461 C 850.73028,-246.00461 858.41812,-248.03229 860.2781,-247.97315 C 862.13807,-247.914 863.83848,-247.07036 866.34103,-246.03699 C 868.84358,-245.00365 874.5349,-242.28467 876.73771,-240.70224 C 878.94053,-239.11979 882.81016,-237.43004 882.81016,-237.43004 C 882.81016,-237.43004 874.79287,-240.26302 871.94244,-241.58026 C 869.09201,-242.89749 864.53578,-245.30898 861.89124,-246.02576 C 859.2467,-246.74254 850.73028,-246.00461 850.73028,-246.00461 z" | ||
2516 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2517 | <path | ||
2518 | inkscape:transform-center-y="-5.4740887" | ||
2519 | inkscape:transform-center-x="13.41151" | ||
2520 | sodipodi:nodetypes="czzzczzc" | ||
2521 | id="path8141" | ||
2522 | d="M 864.82496,-249.21081 C 864.82496,-249.21081 872.99448,-251.17987 874.85184,-251.06477 C 876.70919,-250.94965 878.38342,-250.05521 880.85374,-248.94698 C 883.32405,-247.83877 888.93094,-244.94971 891.08512,-243.30167 C 893.2393,-241.65363 897.05632,-239.84815 897.05632,-239.84815 C 897.05632,-239.84815 889.12793,-242.92121 886.31845,-244.32365 C 883.50896,-245.72609 879.02739,-248.27364 876.40562,-249.06971 C 873.78386,-249.86577 864.82496,-249.21081 864.82496,-249.21081 z" | ||
2523 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2524 | <path | ||
2525 | inkscape:transform-center-y="-5.79376" | ||
2526 | inkscape:transform-center-x="13.258805" | ||
2527 | sodipodi:nodetypes="czzzczzc" | ||
2528 | id="path8143" | ||
2529 | d="M 881.38485,-251.60282 C 881.38485,-251.60282 889.47021,-253.51091 891.32322,-253.33946 C 893.17622,-253.16799 894.82252,-252.22313 897.25804,-251.04038 C 899.69357,-249.85767 905.21013,-246.79968 907.31327,-245.08699 C 909.41641,-243.37429 913.17684,-241.45373 913.17684,-241.45373 C 913.17684,-241.45373 905.34544,-244.76613 902.57984,-246.25323 C 899.81423,-247.74035 895.41209,-250.42282 892.8157,-251.29814 C 890.21933,-252.17345 881.38485,-251.60282 881.38485,-251.60282 z" | ||
2530 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2531 | <path | ||
2532 | inkscape:transform-center-y="-5.7433893" | ||
2533 | inkscape:transform-center-x="13.28378" | ||
2534 | sodipodi:nodetypes="czzzczzc" | ||
2535 | id="path8145" | ||
2536 | d="M 896.58415,-254.34724 C 896.58415,-254.34724 904.22581,-255.77494 906.07962,-255.61239 C 907.93342,-255.44983 909.58424,-254.51289 912.02541,-253.34186 C 914.46659,-252.17086 919.99779,-249.1394 922.10913,-247.43684 C 924.22047,-245.73426 927.99009,-243.83179 927.99009,-243.83179 C 927.99009,-243.83179 920.14286,-247.10653 917.37014,-248.58034 C 914.59743,-250.05414 910.18245,-252.71543 907.58189,-253.57827 C 904.98134,-254.44109 896.58415,-254.34724 896.58415,-254.34724 z" | ||
2537 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2538 | <path | ||
2539 | inkscape:transform-center-y="-5.7433893" | ||
2540 | inkscape:transform-center-x="13.28378" | ||
2541 | sodipodi:nodetypes="czzzczzc" | ||
2542 | id="path8147" | ||
2543 | d="M 911.45328,-255.98544 C 911.45328,-255.98544 920.09494,-257.53814 921.94875,-257.37559 C 923.80255,-257.21303 925.45337,-256.27609 927.89454,-255.10506 C 930.33572,-253.93406 935.86692,-250.9026 937.97826,-249.20004 C 940.0896,-247.49746 943.85922,-245.59499 943.85922,-245.59499 C 943.85922,-245.59499 936.01199,-248.86973 933.23927,-250.34354 C 930.46656,-251.81734 926.05158,-254.47863 923.45102,-255.34147 C 920.85047,-256.20429 911.45328,-255.98544 911.45328,-255.98544 z" | ||
2544 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2545 | <path | ||
2546 | inkscape:transform-center-y="-5.7433893" | ||
2547 | inkscape:transform-center-x="13.28378" | ||
2548 | sodipodi:nodetypes="czzzczzc" | ||
2549 | id="path8149" | ||
2550 | d="M 927.70328,-258.29794 C 927.70328,-258.29794 935.34494,-259.16314 937.19875,-259.00059 C 939.05255,-258.83803 940.70337,-257.90109 943.14454,-256.73006 C 945.58572,-255.55906 951.11692,-252.5276 953.22826,-250.82504 C 955.3396,-249.12246 959.10922,-247.21999 959.10922,-247.21999 C 959.10922,-247.21999 951.26199,-250.49473 948.48927,-251.96854 C 945.71656,-253.44234 941.30158,-256.10363 938.70102,-256.96647 C 936.10047,-257.82929 927.70328,-258.29794 927.70328,-258.29794 z" | ||
2551 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2552 | <path | ||
2553 | inkscape:transform-center-y="-5.7433893" | ||
2554 | inkscape:transform-center-x="13.28378" | ||
2555 | sodipodi:nodetypes="czzzczzc" | ||
2556 | id="path8151" | ||
2557 | d="M 942.82828,-259.48544 C 942.82828,-259.48544 951.40744,-260.97564 953.26125,-260.81309 C 955.11505,-260.65053 956.76587,-259.71359 959.20704,-258.54256 C 961.64822,-257.37156 967.17942,-254.3401 969.29076,-252.63754 C 971.4021,-250.93496 975.17172,-249.03249 975.17172,-249.03249 C 975.17172,-249.03249 967.32449,-252.30723 964.55177,-253.78104 C 961.77906,-255.25484 957.36408,-257.91613 954.76352,-258.77897 C 952.16297,-259.64179 942.82828,-259.48544 942.82828,-259.48544 z" | ||
2558 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2559 | <path | ||
2560 | inkscape:transform-center-y="-5.7433893" | ||
2561 | inkscape:transform-center-x="13.28378" | ||
2562 | sodipodi:nodetypes="czzzczzc" | ||
2563 | id="path8153" | ||
2564 | d="M 959.07828,-261.54794 C 959.07828,-261.54794 966.90744,-262.35064 968.76125,-262.18809 C 970.61505,-262.02553 972.26587,-261.08859 974.70704,-259.91756 C 977.14822,-258.74656 982.67942,-255.7151 984.79076,-254.01254 C 986.9021,-252.30996 990.67172,-250.40749 990.67172,-250.40749 C 990.67172,-250.40749 982.82449,-253.68223 980.05177,-255.15604 C 977.27906,-256.62984 972.86408,-259.29113 970.26352,-260.15397 C 967.66297,-261.01679 959.07828,-261.54794 959.07828,-261.54794 z" | ||
2565 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2566 | <path | ||
2567 | inkscape:transform-center-y="-5.7433893" | ||
2568 | inkscape:transform-center-x="13.28378" | ||
2569 | sodipodi:nodetypes="czzzczzc" | ||
2570 | id="path8155" | ||
2571 | d="M 974.45328,-262.79794 C 974.45328,-262.79794 982.84494,-263.97564 984.69875,-263.81309 C 986.55255,-263.65053 988.20337,-262.71359 990.64454,-261.54256 C 993.08572,-260.37156 998.61692,-257.3401 1000.7283,-255.63754 C 1002.8396,-253.93496 1006.6092,-252.03249 1006.6092,-252.03249 C 1006.6092,-252.03249 998.76199,-255.30723 995.98927,-256.78104 C 993.21656,-258.25484 988.80158,-260.91613 986.20102,-261.77897 C 983.60047,-262.64179 974.45328,-262.79794 974.45328,-262.79794 z" | ||
2572 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2573 | <path | ||
2574 | inkscape:transform-center-y="-5.7433893" | ||
2575 | inkscape:transform-center-x="13.28378" | ||
2576 | sodipodi:nodetypes="czzzczzc" | ||
2577 | id="path8157" | ||
2578 | d="M 990.64078,-264.86044 C 990.64078,-264.86044 997.53244,-265.85064 999.38625,-265.68809 C 1001.2401,-265.52553 1002.8909,-264.58859 1005.332,-263.41756 C 1007.7732,-262.24656 1013.3044,-259.2151 1015.4158,-257.51254 C 1017.5271,-255.80996 1021.2967,-253.90749 1021.2967,-253.90749 C 1021.2967,-253.90749 1013.4495,-257.18223 1010.6768,-258.65604 C 1007.9041,-260.12984 1003.4891,-262.79113 1000.8885,-263.65397 C 998.28797,-264.51679 990.64078,-264.86044 990.64078,-264.86044 z" | ||
2579 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2580 | <path | ||
2581 | inkscape:transform-center-y="-5.7433893" | ||
2582 | inkscape:transform-center-x="13.28378" | ||
2583 | sodipodi:nodetypes="czzzczzc" | ||
2584 | id="path8159" | ||
2585 | d="M 1007.7658,-265.79794 C 1007.7658,-265.79794 1014.5949,-266.97564 1016.4488,-266.81309 C 1018.3026,-266.65053 1019.9534,-265.71359 1022.3945,-264.54256 C 1024.8357,-263.37156 1030.3669,-260.3401 1032.4783,-258.63754 C 1034.5896,-256.93496 1038.3592,-255.03249 1038.3592,-255.03249 C 1038.3592,-255.03249 1030.512,-258.30723 1027.7393,-259.78104 C 1024.9666,-261.25484 1020.5516,-263.91613 1017.951,-264.77897 C 1015.3505,-265.64179 1007.7658,-265.79794 1007.7658,-265.79794 z" | ||
2586 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2587 | <path | ||
2588 | inkscape:transform-center-y="-5.7433893" | ||
2589 | inkscape:transform-center-x="13.28378" | ||
2590 | sodipodi:nodetypes="czzzczzc" | ||
2591 | id="path8161" | ||
2592 | d="M 1023.8908,-267.79794 C 1023.8908,-267.79794 1029.9699,-268.22564 1031.8238,-268.06309 C 1033.6776,-267.90053 1035.3284,-266.96359 1037.7695,-265.79256 C 1040.2107,-264.62156 1045.7419,-261.5901 1047.8533,-259.88754 C 1049.9646,-258.18496 1053.7342,-256.28249 1053.7342,-256.28249 C 1053.7342,-256.28249 1045.887,-259.55723 1043.1143,-261.03104 C 1040.3416,-262.50484 1035.9266,-265.16613 1033.326,-266.02897 C 1030.7255,-266.89179 1023.8908,-267.79794 1023.8908,-267.79794 z" | ||
2593 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2594 | <path | ||
2595 | inkscape:transform-center-y="-5.7433893" | ||
2596 | inkscape:transform-center-x="13.28378" | ||
2597 | sodipodi:nodetypes="czzzczzc" | ||
2598 | id="path8163" | ||
2599 | d="M 1039.7033,-269.17294 C 1039.7033,-269.17294 1046.1574,-269.85064 1048.0113,-269.68809 C 1049.8651,-269.52553 1051.5159,-268.58859 1053.957,-267.41756 C 1056.3982,-266.24656 1061.9294,-263.2151 1064.0408,-261.51254 C 1066.1521,-259.80996 1069.9217,-257.90749 1069.9217,-257.90749 C 1069.9217,-257.90749 1062.0745,-261.18223 1059.3018,-262.65604 C 1056.5291,-264.12984 1052.1141,-266.79113 1049.5135,-267.65397 C 1046.913,-268.51679 1039.7033,-269.17294 1039.7033,-269.17294 z" | ||
2600 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2601 | <path | ||
2602 | inkscape:transform-center-y="-5.1360724" | ||
2603 | inkscape:transform-center-x="13.55813" | ||
2604 | sodipodi:nodetypes="czzzczzc" | ||
2605 | id="path8165" | ||
2606 | d="M 1055.2718,-271.03319 C 1055.2718,-271.03319 1060.7694,-271.94264 1062.6296,-271.88667 C 1064.4897,-271.83067 1066.1915,-270.98993 1068.6957,-269.96081 C 1071.2001,-268.93171 1076.896,-266.22241 1079.1015,-264.64372 C 1081.307,-263.06501 1085.1795,-261.38182 1085.1795,-261.38182 C 1085.1795,-261.38182 1077.1575,-264.20121 1074.3047,-265.5136 C 1071.4521,-266.82598 1066.8918,-269.22973 1064.246,-269.94203 C 1061.6003,-270.65431 1055.2718,-271.03319 1055.2718,-271.03319 z" | ||
2607 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2608 | <path | ||
2609 | inkscape:transform-center-y="-4.6370147" | ||
2610 | inkscape:transform-center-x="13.74758" | ||
2611 | sodipodi:nodetypes="czzzczzc" | ||
2612 | id="path8167" | ||
2613 | d="M 1072.7007,-273.48537 C 1072.7007,-273.48537 1077.2479,-274.64118 1079.1087,-274.67158 C 1080.9694,-274.70196 1082.7083,-273.94109 1085.2576,-273.02927 C 1087.807,-272.1175 1093.6225,-269.67541 1095.899,-268.20077 C 1098.1753,-266.72609 1102.1217,-265.22441 1102.1217,-265.22441 C 1102.1217,-265.22441 1093.9775,-267.66852 1091.067,-268.84713 C 1088.1565,-270.02573 1083.4896,-272.21528 1080.8136,-272.80404 C 1078.1377,-273.39279 1072.7007,-273.48537 1072.7007,-273.48537 z" | ||
2614 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2615 | <path | ||
2616 | inkscape:transform-center-y="-4.4842392" | ||
2617 | inkscape:transform-center-x="13.79933" | ||
2618 | sodipodi:nodetypes="czzzczzc" | ||
2619 | id="path8169" | ||
2620 | d="M 1087.1585,-276.5244 C 1087.1585,-276.5244 1093.1185,-278.29795 1094.9787,-278.35464 C 1096.8387,-278.41131 1098.5883,-277.67509 1101.1502,-276.79939 C 1103.7122,-275.92373 1103.6728,-275.94226 1106.4837,-275.30924 C 1109.2806,-274.67938 1113.5604,-273.79611 1113.5604,-273.79611 C 1113.5604,-273.79611 1109.9449,-273.81239 1106.7681,-274.26225 C 1103.6526,-274.70344 1099.3938,-275.9605 1096.7097,-276.51138 C 1094.0258,-277.06226 1087.1585,-276.5244 1087.1585,-276.5244 z" | ||
2621 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" /> | ||
2622 | <path | ||
2623 | sodipodi:nodetypes="czczc" | ||
2624 | id="path8171" | ||
2625 | d="M 1099.25,-279.92981 C 1099.4112,-279.66119 1110.4581,-284.53027 1111.4375,-284.61731 C 1112.4169,-284.70435 1113.4375,-281.49231 1113.4375,-281.49231 C 1113.4375,-281.49231 1112.6624,-282.99665 1110.5625,-282.55481 C 1108.4626,-282.11297 1099.2616,-279.8834 1099.25,-279.92981 z" | ||
2626 | style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" /> | ||
2627 | </g> | ||
2628 | <path | ||
2629 | id="path8173" | ||
2630 | d="M 1107.4532,-284.0938 C 1107.0345,-283.88097 1107.2976,-283.99991 1106.806,-283.78799 C 1106.3199,-283.57845 1105.0826,-283.2136 1102.7264,-282.32904 C 1099.3953,-281.07847 1096.8962,-280.1756 1095.7005,-279.26294 C 1094.1644,-279.24168 1091.98,-279.02963 1090.0442,-278.54419 C 1087.0627,-277.79653 1085.189,-277.37018 1083.2942,-276.95044 C 1081.3994,-276.53072 1081.6187,-276.30825 1080.4192,-276.07544 C 1079.1226,-275.82378 1078.6978,-276.08443 1074.9817,-275.29419 C 1071.4918,-274.55205 1066.0869,-273.36312 1064.8255,-272.60669 C 1063.2416,-272.78748 1060.958,-272.92847 1058.9817,-272.63794 C 1055.9413,-272.19099 1054.0655,-271.96518 1052.138,-271.73169 C 1051.4826,-271.65232 1051.0969,-271.53091 1050.7942,-271.45044 C 1050.368,-271.31879 1050.1084,-271.19042 1049.4192,-271.10669 C 1048.1076,-270.94733 1047.657,-271.26352 1043.888,-270.82544 C 1040.3341,-270.41236 1034.8826,-269.55262 1033.638,-268.88794 C 1032.039,-269.18524 1029.7802,-269.42213 1027.7942,-269.23169 C 1024.7354,-268.93838 1022.8222,-268.7477 1020.888,-268.57544 C 1018.9537,-268.40318 1019.1993,-268.15307 1017.9817,-268.04419 C 1016.6655,-267.9265 1016.2219,-268.20782 1012.4505,-267.79419 C 1008.9086,-267.40575 1003.4426,-266.58492 1002.1692,-265.91919 C 1000.5703,-266.21389 998.28202,-266.4262 996.29419,-266.23169 C 993.23595,-265.93245 991.35306,-265.75145 989.41919,-265.57544 C 988.7617,-265.5156 988.37915,-265.39688 988.07544,-265.32544 C 987.64779,-265.20649 987.39193,-265.10737 986.70044,-265.04419 C 985.38448,-264.92394 984.94068,-265.23907 981.16919,-264.82544 C 977.61305,-264.43543 972.16365,-263.58628 970.91919,-262.91919 C 969.32056,-263.21338 967.05935,-263.44291 965.07544,-263.23169 C 962.01984,-262.90637 960.1014,-262.70545 958.16919,-262.51294 C 956.23698,-262.32044 956.47932,-262.07206 955.26294,-261.95044 C 953.94806,-261.81898 953.49996,-262.11498 949.73169,-261.66919 C 946.19282,-261.25054 940.75401,-260.37702 939.48169,-259.70044 C 937.88414,-259.98149 935.62173,-260.12087 933.63794,-259.88794 C 930.58596,-259.52958 928.69286,-259.32008 926.76294,-259.10669 C 926.10674,-259.03414 925.72228,-258.934 925.41919,-258.85669 C 924.99242,-258.72947 924.73428,-258.58949 924.04419,-258.51294 C 922.73086,-258.36726 922.27673,-258.68696 918.51294,-258.20044 C 914.96405,-257.74169 909.53431,-256.78142 908.29419,-256.07544 C 906.70114,-256.31968 904.46038,-256.45679 902.48169,-256.20044 C 899.4341,-255.80563 897.53098,-255.55199 895.60669,-255.29419 C 893.68241,-255.0364 893.88058,-254.80066 892.66919,-254.63794 C 891.35973,-254.46204 890.922,-254.74232 887.16919,-254.16919 C 883.6449,-253.63095 878.24604,-252.47002 876.98169,-251.73169 C 875.39419,-251.93523 873.13619,-251.98642 871.16919,-251.63794 C 868.14302,-251.10182 866.2703,-250.77625 864.35669,-250.45044 C 863.70608,-250.33967 863.34298,-250.1795 863.04419,-250.07544 C 862.62352,-249.91056 862.38074,-249.74414 861.70044,-249.60669 C 860.40579,-249.3451 859.97332,-249.61289 856.26294,-248.79419 C 852.76441,-248.02224 847.41699,-246.41126 846.20044,-245.57544 C 844.63766,-245.65289 842.44286,-245.49016 840.51294,-244.98169 C 837.5405,-244.19856 835.69533,-243.7496 833.82544,-243.23169 C 831.95556,-242.71379 832.15884,-242.46441 830.98169,-242.13794 C 829.70923,-241.78504 829.28466,-242.03085 825.63794,-240.95044 C 822.21324,-239.93581 816.9885,-238.01727 815.76294,-237.10669 C 814.22411,-237.09395 812.04311,-236.83447 810.13794,-236.23169 C 807.20688,-235.30435 805.38763,-234.77327 803.54419,-234.16919 C 802.91743,-233.96381 802.55246,-233.77661 802.26294,-233.63794 C 801.85531,-233.42433 801.6096,-233.22919 800.95044,-233.01294 C 799.69598,-232.6014 799.26433,-232.8239 795.66919,-231.57544 C 792.27934,-230.39827 787.07421,-228.36174 785.88794,-227.41919 C 784.36405,-227.35952 782.23789,-227.02432 780.35669,-226.35669 C 777.4593,-225.3284 775.65761,-224.68121 773.82544,-224.04419 C 771.99327,-223.40718 772.19759,-223.19565 771.04419,-222.79419 C 769.79741,-222.36023 769.38058,-222.59447 765.82544,-221.23169 C 762.48677,-219.95189 757.33829,-217.74914 756.13794,-216.76294 C 754.63076,-216.65525 752.50225,-216.26414 750.63794,-215.54419 C 747.76976,-214.43659 746.01414,-213.76263 744.20044,-213.07544 C 743.58378,-212.84181 743.20403,-212.63341 742.91919,-212.48169 C 742.91919,-212.48169 742.91919,-211.38794 742.91919,-211.38794 C 743.03097,-211.6103 743.30518,-212.20537 743.82544,-212.48169 C 744.52341,-212.85241 748.63907,-214.47506 750.63794,-215.20044 C 752.2948,-215.80169 754.79183,-216.52912 756.60669,-216.51294 C 756.90831,-216.51025 757.19431,-216.46204 757.45044,-216.41919 C 759.29293,-216.11094 764.91919,-214.85669 764.91919,-214.85669 C 764.91918,-214.85669 758.6857,-216.50344 757.88794,-216.70044 C 757.69715,-216.74755 757.35222,-216.76916 756.91919,-216.76294 C 758.06465,-217.63265 761.68019,-219.15645 764.26294,-220.20044 C 767.10116,-221.34771 767.37975,-221.45226 769.32544,-221.85669 C 771.33374,-222.27413 772.48169,-222.35669 772.48169,-222.35669 C 772.48169,-222.35668 772.39933,-222.95783 773.45044,-223.48169 C 774.15554,-223.8331 778.33746,-225.37409 780.35669,-226.04419 C 782.30859,-226.69192 785.41409,-227.40269 787.23169,-227.04419 C 789.09492,-226.67669 794.76294,-225.23169 794.76294,-225.23169 C 794.76295,-225.23169 788.47594,-227.1028 787.66919,-227.32544 C 787.47627,-227.37869 787.13835,-227.41148 786.70044,-227.41919 C 787.85878,-228.25207 791.49488,-229.61451 794.10669,-230.57544 C 796.97685,-231.63145 797.27403,-231.73724 799.23169,-232.10669 C 801.08518,-232.45648 802.09053,-232.53217 802.26294,-232.54419 C 802.37654,-232.76143 802.64039,-233.35421 803.16919,-233.60669 C 803.87863,-233.94543 808.09526,-235.31944 810.13794,-235.91919 C 811.83111,-236.4163 814.37871,-236.95596 816.23169,-236.82544 C 816.53964,-236.80376 816.84518,-236.72818 817.10669,-236.66919 C 818.98787,-236.24487 824.70044,-234.63794 824.70044,-234.63794 C 824.70045,-234.63794 818.3587,-236.70319 817.54419,-236.95044 C 817.3494,-237.00958 816.98631,-237.05438 816.54419,-237.07544 C 817.71368,-237.87299 821.40721,-239.13166 824.04419,-240.01294 C 826.942,-240.98141 827.2772,-241.01626 829.26294,-241.29419 C 831.31259,-241.58108 832.45044,-241.60669 832.45044,-241.60669 C 832.45042,-241.60669 832.37769,-242.21366 833.45044,-242.66919 C 834.17004,-242.97476 838.44142,-244.16994 840.51294,-244.66919 C 842.51538,-245.15177 845.71143,-245.59748 847.57544,-245.07544 C 849.48622,-244.54029 855.29419,-242.57544 855.29419,-242.57544 C 855.29419,-242.57544 848.87153,-244.99895 848.04419,-245.29419 C 847.84635,-245.3648 847.46203,-245.43458 847.01294,-245.48169 C 848.20084,-246.21034 851.92821,-247.25577 854.60669,-247.98169 C 857.55011,-248.77944 857.89877,-248.75252 859.91919,-248.88794 C 861.83208,-249.01617 862.86624,-248.95903 863.04419,-248.95044 C 863.16147,-249.1541 863.43595,-249.72992 863.98169,-249.91919 C 864.71388,-250.17313 869.06021,-250.96708 871.16919,-251.29419 C 872.91732,-251.5653 875.57007,-251.77889 877.48169,-251.38794 C 877.79935,-251.32298 878.08691,-251.20243 878.35669,-251.10669 C 880.29743,-250.41796 886.20044,-248.01294 886.20044,-248.01294 C 886.20045,-248.01294 879.66573,-250.96371 878.82544,-251.32544 C 878.62447,-251.41195 878.25031,-251.49223 877.79419,-251.57544 C 879.00069,-252.20862 882.82375,-252.97104 885.54419,-253.48169 C 888.53372,-254.04288 888.84442,-254.01123 890.88794,-254.01294 C 892.9972,-254.01471 894.20044,-253.88794 894.20044,-253.88794 C 894.20044,-253.88793 894.12773,-254.51913 895.23169,-254.82544 C 895.97221,-255.03091 900.35781,-255.65931 902.48169,-255.88794 C 904.53471,-256.10893 907.80032,-256.14016 909.70044,-255.41919 C 911.64823,-254.68012 917.54419,-252.04419 917.54419,-252.04419 C 917.54421,-252.04419 910.98131,-255.22316 910.13794,-255.60669 C 909.93626,-255.69842 909.59573,-255.7929 909.13794,-255.88794 C 910.34886,-256.48982 914.12236,-257.13678 916.85669,-257.54419 C 919.86149,-257.99191 920.1822,-257.99589 922.23169,-257.95044 C 924.17214,-257.90742 925.23868,-257.75621 925.41919,-257.73169 C 925.53811,-257.92485 925.80309,-258.49752 926.35669,-258.63794 C 927.0994,-258.82632 931.51098,-259.37222 933.63794,-259.57544 C 935.40097,-259.74386 938.05803,-259.80973 939.98169,-259.32544 C 940.30137,-259.24496 940.5852,-259.12185 940.85669,-259.01294 C 942.80962,-258.22945 948.76294,-255.54419 948.76294,-255.54419 C 948.76292,-255.54419 942.17103,-258.79767 941.32544,-259.20044 C 941.12322,-259.29676 940.75318,-259.40747 940.29419,-259.51294 C 941.50833,-260.08721 945.33785,-260.63513 948.07544,-261.01294 C 951.08382,-261.42814 951.39851,-261.45557 953.45044,-261.38794 C 955.56842,-261.31813 956.76294,-261.13794 956.76294,-261.13794 C 956.76292,-261.13794 956.68569,-261.77535 957.79419,-262.04419 C 958.53781,-262.22454 962.94595,-262.70774 965.07544,-262.88794 C 967.13391,-263.06211 970.41868,-263.01226 972.32544,-262.23169 C 974.28003,-261.43153 980.20044,-258.70044 980.20044,-258.70044 C 980.20042,-258.70044 973.64051,-262.0092 972.79419,-262.41919 C 972.59182,-262.51724 972.22233,-262.62229 971.76294,-262.73169 C 972.97811,-263.29559 976.77302,-263.84599 979.51294,-264.20044 C 982.52385,-264.58996 982.83425,-264.59809 984.88794,-264.51294 C 986.83233,-264.43234 987.89457,-264.2597 988.07544,-264.23169 C 988.1946,-264.42255 988.45821,-264.977 989.01294,-265.10669 C 989.7572,-265.28069 994.16287,-265.75716 996.29419,-265.91919 C 998.06081,-266.05346 1000.7439,-266.0449 1002.6692,-265.54419 C 1002.9892,-265.46098 1003.2725,-265.34292 1003.5442,-265.23169 C 1005.4988,-264.43153 1011.4505,-261.66919 1011.4505,-261.66919 C 1011.4504,-261.66919 1004.8593,-265.0092 1004.013,-265.41919 C 1003.8106,-265.51724 1003.4411,-265.6223 1002.9817,-265.73169 C 1004.1968,-266.29559 1008.023,-266.81475 1010.763,-267.16919 C 1013.7739,-267.55872 1014.1155,-267.59809 1016.1692,-267.51294 C 1018.2889,-267.42506 1019.4817,-267.20044 1019.4817,-267.20044 C 1019.4817,-267.20044 1019.4033,-267.84946 1020.513,-268.10669 C 1021.2573,-268.27925 1025.6625,-268.73005 1027.7942,-268.88794 C 1029.8548,-269.04054 1033.1371,-268.98471 1035.0442,-268.20044 C 1036.9992,-267.39649 1042.9192,-264.70044 1042.9192,-264.70044 C 1042.9192,-264.70044 1036.3594,-267.97631 1035.513,-268.38794 C 1035.3105,-268.48638 1034.9412,-268.59016 1034.4817,-268.70044 C 1035.6971,-269.26198 1039.4936,-269.82822 1042.2317,-270.20044 C 1045.2407,-270.60949 1045.5544,-270.61602 1047.6067,-270.54419 C 1049.5498,-270.4762 1050.6139,-270.37934 1050.7942,-270.35669 C 1050.913,-270.55109 1051.1788,-271.0855 1051.7317,-271.23169 C 1052.4735,-271.42781 1056.8628,-272.06047 1058.9817,-272.32544 C 1060.7381,-272.54505 1063.387,-272.65775 1065.2942,-272.29419 C 1065.6111,-272.23378 1065.9,-272.10481 1066.1692,-272.01294 C 1068.1054,-271.35202 1074.013,-269.07544 1074.013,-269.07544 C 1074.0129,-269.07544 1067.4763,-271.88199 1066.638,-272.23169 C 1066.4375,-272.31532 1066.0618,-272.40502 1065.6067,-272.48169 C 1066.8104,-273.13215 1070.6258,-273.85364 1073.3255,-274.48169 C 1076.2922,-275.17189 1076.6144,-275.23676 1078.638,-275.35669 C 1080.7266,-275.48049 1081.9192,-275.38794 1081.9192,-275.38794 C 1081.9192,-275.38793 1081.8322,-276.01999 1082.9192,-276.41919 C 1083.6484,-276.68699 1087.9664,-277.75716 1090.0442,-278.23169 C 1092.0527,-278.69038 1095.2121,-279.26099 1097.0442,-278.85669 C 1098.9223,-278.44223 1110.6224,-275.84106 1110.6224,-275.84106 C 1110.6224,-275.84106 1098.2949,-278.86372 1097.4817,-279.10669 C 1097.2872,-279.16481 1096.9231,-279.21295 1096.4817,-279.23169 C 1097.6493,-280.03538 1099.9959,-280.91899 1102.5911,-281.93481 C 1104.2725,-282.59299 1103.5148,-282.3114 1105.367,-282.93841 C 1107.1206,-283.53207 1107.8524,-283.94912 1107.9974,-284.0514 C 1108.3435,-284.25791 1107.6414,-284.17328 1107.4532,-284.0938 z" | ||
2631 | style="opacity:0.25;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter7333);enable-background:new" | ||
2632 | sodipodi:nodetypes="czscsssscssssscsssscssssscsssscssssscsssscssssscsssscssssscsssscssccsssscscsscssscscsscsssscscsscssscscsscsssscscsscssscscsscsssscscsscssscscsscsssscscsscssscscsscsssscscsscssscscsscc" /> | ||
2633 | <path | ||
2634 | id="path8175" | ||
2635 | d="M 1082.625,-275.125 C 1084.498,-274.73152 1087.1211,-273.97945 1088.6563,-273.15625 C 1090.1915,-272.33306 1091.4785,-272.10025 1094.0313,-270.65625 C 1096.5579,-269.22699 1098.8271,-268.64929 1101,-268.125 C 1103.3476,-267.55858 1106.4354,-267.40977 1109.8438,-266.9375 C 1108.7549,-267.77725 1103.2364,-268.10995 1101.4375,-268.5 C 1099.6386,-268.89006 1097.5434,-269.51616 1094.8438,-270.8125 C 1092.1441,-272.10884 1091.3494,-272.61146 1089.0313,-273.5 C 1086.7131,-274.38854 1085.0269,-274.88314 1082.625,-275.125 z" | ||
2636 | style="opacity:0.25;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter7285);enable-background:new" /> | ||
2637 | <path | ||
2638 | id="path8177" | ||
2639 | d="M 1051.4688,-270 C 1053.3741,-269.42241 1055.9969,-268.38428 1057.5625,-267.40625 C 1059.1281,-266.42823 1060.4427,-266.04644 1063.0625,-264.28125 C 1065.6555,-262.53409 1068.0484,-261.57198 1070.3125,-260.6875 C 1072.7586,-259.73193 1075.9951,-259.03037 1079.7188,-257.625 C 1078.5292,-258.76284 1072.6557,-260.31175 1070.7813,-261 C 1068.9068,-261.68825 1066.6995,-262.5662 1063.9063,-264.28125 C 1061.113,-265.99629 1060.3327,-266.56515 1057.9688,-267.6875 C 1055.6047,-268.80984 1053.9121,-269.52205 1051.4688,-270 z" | ||
2640 | style="opacity:0.25;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter7289);enable-background:new" /> | ||
2641 | <path | ||
2642 | id="path8179" | ||
2643 | d="M 1020.2188,-266.84375 C 1022.1307,-266.20564 1024.8,-265.08839 1026.375,-264.03125 C 1027.9501,-262.9741 1029.2706,-262.52258 1031.9063,-260.625 C 1034.5149,-258.74679 1036.9347,-257.59497 1039.2188,-256.5625 C 1041.6865,-255.44705 1044.9833,-254.3892 1048.75,-252.71875 C 1047.5467,-253.94128 1041.5472,-256.03298 1039.6563,-256.84375 C 1037.7653,-257.65452 1035.5914,-258.73754 1032.7813,-260.59375 C 1029.9711,-262.44995 1029.1595,-263.07068 1026.7813,-264.3125 C 1024.403,-265.5543 1022.6706,-266.28819 1020.2188,-266.84375 z" | ||
2644 | style="opacity:0.25;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter7293);enable-background:new" /> | ||
2645 | <path | ||
2646 | id="path8181" | ||
2647 | d="M 1110.1719,-266.89063 C 1110.3227,-266.84207 1110.8599,-266.25963 1110.2813,-265.40625 C 1109.4712,-264.21166 1104.5764,-262.08196 1101.7188,-261.28125 C 1098.8739,-260.48413 1095.4287,-260.30351 1091.1563,-261.65625 C 1086.8547,-263.0182 1085.6866,-264.12497 1080.5,-265.96875 C 1085.164,-263.85358 1086.6953,-262.01642 1090.625,-260.625 C 1092.2457,-260.05113 1093.9921,-259.6854 1095.6875,-259.59375 C 1095.2424,-259.26812 1094.1572,-258.61045 1092.125,-258 C 1089.3295,-257.16031 1085.4759,-256.46622 1083.875,-256.375 C 1082.3604,-256.28868 1080.733,-256.88749 1080.4375,-257 C 1080.6042,-256.89692 1080.8107,-256.62266 1080.1875,-255.96875 C 1079.2882,-255.02512 1074.0401,-254.04575 1071.0625,-253.71875 C 1068.0982,-253.3932 1064.5409,-253.73471 1060.1563,-255.625 C 1056.1783,-257.33997 1054.8173,-258.54036 1050.75,-260.375 C 1050.75,-260.375 1050.75,-260.21875 1050.75,-260.21875 C 1054.3931,-258.12346 1056.034,-256.33548 1059.625,-254.65625 C 1061.3552,-253.84716 1063.2167,-253.24749 1065.0313,-252.9375 C 1064.4964,-252.65074 1063.4735,-252.22599 1061.5938,-251.90625 C 1058.7248,-251.41829 1054.7848,-251.09011 1053.1563,-251.15625 C 1052.3056,-251.19079 1051.4277,-251.34062 1050.75,-251.5625 C 1050.0652,-251.77738 1049.5603,-252.00717 1049.4375,-252.0625 C 1049.6069,-251.95529 1049.8686,-251.65962 1049.2188,-251.03125 C 1048.3091,-250.15163 1042.9727,-249.69487 1039.9688,-249.5625 C 1036.9783,-249.43071 1033.3799,-250.01313 1028.9688,-252.125 C 1024.5276,-254.25126 1023.3273,-255.5266 1018.0625,-257.90625 C 1022.7968,-255.30921 1024.349,-253.27715 1028.4063,-251.1875 C 1030.0796,-250.32565 1031.8915,-249.69325 1033.6563,-249.25 C 1033.193,-249.01668 1032.0669,-248.56186 1029.9688,-248.3125 C 1027.0825,-247.96952 1023.1342,-247.81962 1021.5,-247.9375 C 1019.9538,-248.049 1018.2688,-248.79446 1017.9688,-248.9375 C 1018.1379,-248.81721 1018.3826,-248.52702 1017.75,-247.9375 C 1016.8372,-247.08677 1011.5059,-246.67538 1008.5,-246.5625 C 1005.5075,-246.45013 1001.9103,-247.05293 997.5,-249.15625 C 993.49875,-251.06448 992.11197,-252.29408 988.03125,-254.25 C 988.03122,-254.25 988.03125,-254.09375 988.03125,-254.09375 C 991.68631,-251.88983 993.32546,-250.0412 996.9375,-248.1875 C 998.67779,-247.29435 1000.5745,-246.65923 1002.4063,-246.21875 C 1001.8663,-245.97045 1000.8282,-245.60342 998.9375,-245.375 C 996.05182,-245.02642 992.07145,-244.85405 990.4375,-244.96875 C 989.58405,-245.02865 988.71119,-245.22666 988.03125,-245.46875 C 987.34415,-245.70405 986.8419,-245.94101 986.71875,-246 C 986.88873,-245.88773 987.18323,-245.57775 986.53125,-244.96875 C 985.6186,-244.11625 980.25592,-243.67538 977.25,-243.5625 C 974.25754,-243.45013 970.65654,-244.09055 966.25,-246.15625 C 961.81347,-248.23603 960.60312,-249.48796 955.34375,-251.8125 C 960.07313,-249.26501 961.63449,-247.2347 965.6875,-245.1875 C 967.35905,-244.34317 969.17304,-243.72107 970.9375,-243.28125 C 970.47427,-243.04703 969.3478,-242.59718 967.25,-242.34375 C 964.36431,-241.99517 960.4138,-241.77423 958.78125,-241.875 C 957.23669,-241.97032 955.58094,-242.70385 955.28125,-242.84375 C 955.45024,-242.72522 955.66317,-242.4399 955.03125,-241.84375 C 954.11939,-240.98347 948.7846,-240.5135 945.78125,-240.375 C 942.7913,-240.2371 939.2138,-240.82568 934.8125,-242.84375 C 930.81942,-244.67464 929.44739,-245.87295 925.375,-247.75 C 925.37498,-247.75 925.375,-247.59375 925.375,-247.59375 C 929.02261,-245.46048 930.64533,-243.65888 934.25,-241.875 C 935.98675,-241.01549 937.85727,-240.42486 939.6875,-240 C 939.14803,-239.7471 938.13687,-239.35871 936.25,-239.09375 C 933.37022,-238.68939 929.41187,-238.44813 927.78125,-238.53125 C 926.92953,-238.57466 926.05355,-238.7398 925.375,-238.96875 C 924.68931,-239.19076 924.1854,-239.41214 924.0625,-239.46875 C 924.23209,-239.35976 924.4944,-239.0591 923.84375,-238.4375 C 922.93296,-237.56736 917.59354,-237.04598 914.59375,-236.875 C 911.60742,-236.70479 908.01994,-237.19077 903.625,-239.15625 C 899.20011,-241.13513 898.01904,-242.38444 892.78125,-244.53125 C 897.49122,-242.14358 899.05142,-240.14252 903.09375,-238.1875 C 904.7609,-237.38119 906.55418,-236.79092 908.3125,-236.40625 C 907.85087,-236.15755 906.7155,-235.694 904.625,-235.375 C 901.7494,-234.93624 897.8446,-234.6419 896.21875,-234.6875 C 894.68052,-234.73062 892.98595,-235.43272 892.6875,-235.5625 C 892.85583,-235.44968 893.09807,-235.14875 892.46875,-234.53125 C 891.56063,-233.64015 886.2658,-233.003 883.28125,-232.71875 C 880.31007,-232.43577 876.70783,-232.89455 872.34375,-234.65625 C 868.38441,-236.25456 867.0146,-237.45112 863,-238.96875 C 863.00003,-238.96875 863,-238.8125 863,-238.8125 C 866.5959,-237.00115 868.23831,-235.23017 871.8125,-233.65625 C 873.53457,-232.8979 875.39998,-232.3673 877.21875,-232.03125 C 876.68266,-231.75217 875.65217,-231.34362 873.78125,-230.96875 C 870.92586,-230.39665 866.99183,-229.94936 865.375,-229.9375 C 864.53049,-229.93129 863.66892,-230.01844 863,-230.1875 C 862.32409,-230.34901 861.83991,-230.51673 861.71875,-230.5625 C 861.88597,-230.46848 862.14142,-230.17902 861.5,-229.5 C 860.60213,-228.54948 855.31352,-227.58292 852.375,-227.0625 C 849.44966,-226.54441 845.94285,-226.68826 841.65625,-228.09375 C 837.34045,-229.50882 836.18348,-230.62369 831.09375,-232.0625 C 835.6706,-230.31149 837.1823,-228.50244 841.125,-227.0625 C 842.75108,-226.46861 844.49385,-226.10685 846.21875,-225.90625 C 845.7659,-225.60923 844.66397,-225.02286 842.625,-224.4375 C 839.82028,-223.63233 835.98614,-222.86167 834.40625,-222.6875 C 832.9115,-222.5227 831.29002,-223.00431 831,-223.09375 C 831.16356,-223.00368 831.39278,-222.73382 830.78125,-222.03125 C 829.89878,-221.0174 824.73673,-219.6596 821.84375,-218.96875 C 818.96373,-218.28097 815.50815,-218.20873 811.28125,-219.40625 C 807.4464,-220.4927 806.10867,-221.47862 802.21875,-222.53125 C 802.21874,-222.53125 802.21875,-222.375 802.21875,-222.375 C 805.70293,-220.98015 807.28816,-219.4556 810.75,-218.34375 C 812.41793,-217.80803 814.20578,-217.55701 815.96875,-217.46875 C 815.44911,-217.11663 814.46836,-216.55423 812.65625,-215.9375 C 809.89059,-214.99625 806.06601,-214.00213 804.5,-213.78125 C 803.68206,-213.66586 802.8669,-213.65842 802.21875,-213.75 C 801.56379,-213.83321 801.08615,-213.96827 800.96875,-214 C 801.13079,-213.92536 801.40274,-213.65956 800.78125,-212.90625 C 799.91125,-211.85172 794.77162,-210.247 791.90625,-209.46875 C 789.05372,-208.69399 785.64713,-208.51055 781.46875,-209.5625 C 777.26192,-210.62163 776.11206,-211.60416 771.125,-212.71875 C 775.60954,-211.25929 777.09435,-209.58352 780.9375,-208.46875 C 782.52254,-208.00898 784.22429,-207.8305 785.90625,-207.78125 C 785.46468,-207.44449 784.39374,-206.75352 782.40625,-206 C 779.67232,-204.96351 775.95427,-203.83731 774.40625,-203.5625 C 772.94163,-203.30248 771.34667,-203.67904 771.0625,-203.75 C 771.22275,-203.67035 771.44294,-203.42902 770.84375,-202.6875 C 769.97909,-201.61744 764.92723,-199.86935 762.09375,-199 C 759.27295,-198.13453 755.88625,-197.84369 751.75,-198.78125 C 747.99741,-199.63186 746.70215,-200.49772 742.875,-201.375 C 742.875,-201.375 742.875,-201.21875 742.875,-201.21875 C 746.30296,-199.98096 747.86241,-198.58645 751.25,-197.6875 C 752.88216,-197.25436 754.61704,-197.10449 756.34375,-197.125 C 755.83482,-196.74083 754.867,-196.10318 753.09375,-195.375 C 750.38741,-194.26366 746.65742,-193.06719 745.125,-192.75 C 744.3246,-192.58431 743.51269,-192.53138 742.875,-192.59375 C 742.875,-192.59375 742.875,-192.07823 742.875,-191.67146 C 742.875,-191.40639 742.875,-191.1875 742.875,-191.1875 C 743.10145,-191.33218 743.32391,-191.46011 743.59375,-191.5625 C 744.67427,-191.97248 745.76536,-191.77827 749.59375,-193.25 C 753.42218,-194.72174 754.81787,-195.25498 755.5,-195.65625 C 756.1796,-196.05603 757.11165,-196.53562 757.71875,-197.1875 C 759.5456,-197.32525 761.2895,-197.68073 762.65625,-198.1875 C 765.62437,-199.28802 767.53162,-199.99369 769.4375,-200.65625 C 771.34336,-201.31879 771.79159,-202.07112 772.84375,-202.4375 C 773.9353,-202.81761 775.03886,-202.60288 778.90625,-203.96875 C 782.7737,-205.33461 784.18941,-205.79583 784.875,-206.1875 C 785.57609,-206.58802 786.57581,-207.12048 787.1875,-207.78125 C 789.1583,-207.83591 791.00435,-208.16588 792.46875,-208.65625 C 795.47023,-209.66133 797.3949,-210.27796 799.3125,-210.90625 C 800.8511,-211.41035 801.48652,-211.95302 802.21875,-212.34375 C 802.44891,-212.47806 802.69449,-212.59748 802.96875,-212.6875 C 804.06698,-213.04798 805.1502,-212.76887 809.0625,-214 C 812.97483,-215.23113 814.42855,-215.67295 815.125,-216.03125 C 815.81888,-216.38822 816.75515,-216.82386 817.375,-217.4375 C 819.24021,-217.46016 821.01081,-217.70433 822.40625,-218.125 C 825.43668,-219.03854 827.39863,-219.5551 829.34375,-220.09375 C 831.28886,-220.63239 831.76993,-221.35827 832.84375,-221.65625 C 833.95776,-221.9654 835.06369,-221.64886 839.03125,-222.6875 C 842.99886,-223.72613 844.44883,-224.12023 845.15625,-224.4375 C 845.89112,-224.76709 846.97008,-225.19122 847.59375,-225.8125 C 849.59149,-225.6965 851.45118,-225.83259 852.9375,-226.1875 C 856.01561,-226.9225 858.02094,-227.28844 860,-227.6875 C 861.58792,-228.00768 862.24429,-228.47805 863,-228.78125 C 863.23757,-228.88805 863.46695,-228.97401 863.75,-229.03125 C 864.88347,-229.26044 866.05448,-228.82232 870.09375,-229.53125 C 874.13308,-230.24018 875.594,-230.45834 876.3125,-230.71875 C 877.02836,-230.97819 878.01678,-231.28599 878.65625,-231.8125 C 880.58052,-231.57301 882.40413,-231.58797 883.84375,-231.8125 C 886.97008,-232.30012 888.9983,-232.51317 891,-232.78125 C 893.00171,-233.04932 893.48869,-233.72639 894.59375,-233.875 C 895.74014,-234.02918 896.86967,-233.57343 900.9375,-234.09375 C 905.00534,-234.61407 906.49763,-234.78948 907.21875,-235.03125 C 907.95585,-235.27839 909.01684,-235.61748 909.65625,-236.15625 C 911.70632,-235.82072 913.63003,-235.75829 915.15625,-235.9375 C 918.29856,-236.30646 920.33619,-236.49686 922.34375,-236.71875 C 923.95451,-236.89677 924.60842,-237.32695 925.375,-237.5625 C 925.61594,-237.64802 925.86912,-237.7181 926.15625,-237.75 C 927.30603,-237.87772 928.45754,-237.40335 932.53125,-237.875 C 936.60499,-238.34665 938.09034,-238.4856 938.8125,-238.71875 C 939.53196,-238.95102 940.51274,-239.19221 941.15625,-239.6875 C 943.09262,-239.35404 944.92631,-239.28326 946.375,-239.4375 C 949.52102,-239.77245 951.55256,-239.95609 953.5625,-240.15625 C 955.57246,-240.35639 956.04664,-240.98264 957.15625,-241.09375 C 958.30739,-241.20903 959.45268,-240.72869 963.53125,-241.15625 C 967.60986,-241.58381 969.12011,-241.71834 969.84375,-241.9375 C 970.5829,-242.16136 971.63947,-242.45075 972.28125,-242.96875 C 974.33835,-242.57008 976.28312,-242.47535 977.8125,-242.625 C 980.96123,-242.9331 982.98834,-243.09825 985,-243.28125 C 986.61407,-243.42807 987.2631,-243.8418 988.03125,-244.0625 C 988.27267,-244.14336 988.52478,-244.19241 988.8125,-244.21875 C 989.96461,-244.3242 991.10546,-243.826 995.1875,-244.21875 C 999.26958,-244.6115 1000.7764,-244.74959 1001.5,-244.96875 C 1002.2209,-245.18708 1003.1997,-245.41645 1003.8438,-245.90625 C 1005.7818,-245.55626 1007.6126,-245.45187 1009.0625,-245.59375 C 1012.2112,-245.90185 1014.2383,-246.067 1016.25,-246.25 C 1018.2616,-246.43299 1018.7642,-247.08802 1019.875,-247.1875 C 1021.0273,-247.29073 1022.1672,-246.80267 1026.25,-247.1875 C 1030.3329,-247.57232 1031.8387,-247.6885 1032.5625,-247.90625 C 1033.3018,-248.12868 1034.3581,-248.42074 1035,-248.9375 C 1037.0574,-248.53573 1039.0029,-248.43417 1040.5313,-248.59375 C 1043.6779,-248.92227 1045.7084,-249.11645 1047.7188,-249.3125 C 1049.3318,-249.46979 1049.9844,-249.94398 1050.75,-250.1875 C 1050.9907,-250.27554 1051.2132,-250.30887 1051.5,-250.34375 C 1052.6483,-250.48345 1053.8167,-250.00384 1057.875,-250.59375 C 1061.9333,-251.18367 1063.4368,-251.37089 1064.1563,-251.625 C 1064.873,-251.87816 1065.8308,-252.18307 1066.4688,-252.71875 C 1068.3885,-252.50681 1070.1887,-252.56734 1071.625,-252.8125 C 1074.7441,-253.3449 1076.7366,-253.74111 1078.7188,-254.125 C 1080.7009,-254.50887 1081.1931,-255.16465 1082.2813,-255.40625 C 1083.4101,-255.65691 1084.5516,-255.28996 1088.5313,-256.28125 C 1092.5109,-257.27253 1093.9609,-257.70055 1094.6563,-258.0625 C 1095.3786,-258.43851 1096.4182,-258.93308 1097.0313,-259.59375 C 1098.9943,-259.6058 1100.825,-259.8848 1102.25,-260.4375 C 1105.2012,-261.58211 1107.1232,-262.30692 1108.9375,-263.1875 C 1110.3932,-263.89403 1111.2723,-264.87391 1111.4844,-265.17188 C 1111.6966,-265.46984 1111.5962,-265.91718 1111.6223,-265.93863 C 1111.6652,-265.97387 1111.9416,-266.0236 1112.1013,-266.36707 C 1112.9602,-268.21415 1114.4223,-272.01166 1114.5365,-272.69652 C 1114.6502,-273.37868 1114.7003,-274.04426 1114.751,-274.44149 C 1114.7804,-274.67101 1114.6043,-275.30693 1114.6264,-275.36553 C 1114.6573,-275.44759 1114.9309,-275.63081 1114.9863,-275.88024 C 1115.2526,-277.07857 1115.0752,-278.07153 1114.8612,-279.48917 C 1114.6472,-280.90681 1113.8775,-284.11131 1113.2243,-284.96543 C 1112.5654,-285.82715 1112.0014,-285.9766 1111.4764,-285.96609 C 1111.2678,-285.69633 1111.6132,-285.703 1111.639,-285.65348 C 1112.3196,-285.60269 1112.573,-285.28484 1113.0582,-284.75686 C 1113.5434,-284.22888 1114.28,-280.90569 1114.4166,-279.4553 C 1114.5532,-278.00491 1114.6066,-276.5951 1114.3286,-275.98666 C 1114.0505,-275.37821 1113.6054,-275.46963 1113.313,-275.40375 C 1113.844,-275.21786 1113.9828,-275.27892 1114.0444,-274.43446 C 1114.1037,-273.62108 1113.9112,-272.79477 1113.5246,-271.62884 C 1113.1334,-270.44883 1111.6794,-267.27886 1111.2389,-267.03007 C 1110.7866,-266.77456 1110.5075,-266.75969 1110.1719,-266.89063 z" | ||
2648 | style="opacity:0.25;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter7337);enable-background:new" | ||
2649 | sodipodi:nodetypes="cssscscsscsssccscssssssscscsscsssscscssssssscscsscsssscscssssssscscsscsssscscssssssscscsscsssscscssssssscscsscsssccscsscscssscssssscsssssscssssscsssssscssssscsssssscssssscsssssscssssscsssssscssssscsszsszssszzcczzzczzzc" /> | ||
2650 | <path | ||
2651 | id="path8183" | ||
2652 | d="M 988.75,-263.84375 C 990.66161,-263.20935 993.30027,-262.08534 994.875,-261.03125 C 996.44977,-259.97716 997.7711,-259.54873 1000.4063,-257.65625 C 1003.0145,-255.78311 1005.4332,-254.64103 1007.7188,-253.59375 C 1010.1881,-252.46228 1013.4709,-251.43901 1017.25,-249.65625 C 1016.0428,-250.91465 1010.111,-253.0207 1008.2188,-253.84375 C 1006.3266,-254.66679 1004.0908,-255.77424 1001.2813,-257.625 C 998.47169,-259.47575 997.65906,-260.10654 995.28125,-261.34375 C 992.90343,-262.58094 991.20137,-263.29295 988.75,-263.84375 z" | ||
2653 | style="opacity:0.25;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter7297);enable-background:new" /> | ||
2654 | <path | ||
2655 | id="path8185" | ||
2656 | d="M 957.5,-260.78125 C 959.41,-260.16315 962.08288,-259.07191 963.65625,-258.03125 C 965.22964,-256.99059 966.55233,-256.54873 969.1875,-254.65625 C 971.79573,-252.7831 974.21442,-251.64104 976.5,-250.59375 C 978.96931,-249.46228 982.25213,-248.439 986.03125,-246.65625 C 984.82397,-247.91465 978.82971,-250.05195 976.9375,-250.875 C 975.04533,-251.69804 972.84084,-252.8055 970.03125,-254.65625 C 967.22167,-256.507 966.4383,-257.09557 964.0625,-258.3125 C 961.68672,-259.52941 959.94929,-260.25135 957.5,-260.78125 z" | ||
2657 | style="opacity:0.25;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter7301);enable-background:new" /> | ||
2658 | <path | ||
2659 | id="path8187" | ||
2660 | d="M 926.09375,-257.375 C 928.00147,-256.77755 930.64723,-255.71116 932.21875,-254.6875 C 933.79025,-253.66385 935.08897,-253.24779 937.71875,-251.40625 C 940.32166,-249.58352 942.74762,-248.43405 945.03125,-247.40625 C 947.49845,-246.29584 950.7866,-245.31302 954.5625,-243.5625 C 953.35627,-244.8106 947.3906,-246.88059 945.5,-247.6875 C 943.60942,-248.4944 941.39758,-249.57854 938.59375,-251.375 C 935.7899,-253.17144 934.96671,-253.77751 932.59375,-254.96875 C 930.22078,-256.15999 928.54013,-256.87158 926.09375,-257.375 z" | ||
2661 | style="opacity:0.25;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter7305);enable-background:new" /> | ||
2662 | <path | ||
2663 | id="path8189" | ||
2664 | d="M 894.90625,-253.5625 C 896.80838,-253.00895 899.49326,-251.97363 901.0625,-250.96875 C 902.63173,-249.96388 903.93651,-249.56011 906.5625,-247.75 C 909.16162,-245.95836 911.56284,-244.87811 913.84375,-243.875 C 916.30803,-242.79126 919.60359,-241.83471 923.375,-240.125 C 922.1702,-241.36007 916.20084,-243.36978 914.3125,-244.15625 C 912.42418,-244.94272 910.2373,-245.98705 907.4375,-247.75 C 904.63773,-249.51294 903.83831,-250.11836 901.46875,-251.28125 C 899.09918,-252.44413 897.3455,-253.11537 894.90625,-253.5625 z" | ||
2665 | style="opacity:0.25;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter7309);enable-background:new" /> | ||
2666 | <path | ||
2667 | id="path8191" | ||
2668 | d="M 863.71875,-248.65625 C 865.59937,-248.22716 868.22302,-247.27587 869.78125,-246.34375 C 871.33948,-245.41164 872.63358,-245.08599 875.25,-243.34375 C 877.83971,-241.61931 880.23067,-240.63573 882.5,-239.71875 C 884.95176,-238.72806 888.23959,-237.84168 892,-236.21875 C 890.79869,-237.42609 884.84751,-239.28484 882.96875,-240 C 881.09,-240.71517 878.88335,-241.68442 876.09375,-243.375 C 873.30412,-245.06557 872.50914,-245.60322 870.15625,-246.65625 C 867.80333,-247.70926 866.13041,-248.36873 863.71875,-248.65625 z" | ||
2669 | style="opacity:0.25;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter7313);enable-background:new" /> | ||
2670 | <path | ||
2671 | id="path8193" | ||
2672 | d="M 833.15625,-241.375 C 835.00461,-241.07856 837.6257,-240.39868 839.15625,-239.59375 C 840.68683,-238.78882 841.96999,-238.53802 844.53125,-237.0625 C 847.06629,-235.60204 849.42193,-234.73741 851.65625,-234 C 854.07024,-233.20332 857.31336,-232.53311 861.03125,-231.15625 C 859.84354,-232.28498 853.94353,-233.746 852.09375,-234.3125 C 850.24398,-234.879 848.09033,-235.68642 845.34375,-237.15625 C 842.59718,-238.62608 841.84239,-239.07653 839.53125,-239.9375 C 837.2201,-240.79845 835.52654,-241.25759 833.15625,-241.375 z" | ||
2673 | style="opacity:0.25;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter7317);enable-background:new" /> | ||
2674 | <path | ||
2675 | id="path8195" | ||
2676 | d="M 802.90625,-232.3125 C 804.72845,-232.10123 807.27201,-231.51193 808.78125,-230.78125 C 810.2905,-230.05059 811.53693,-229.85127 814.0625,-228.5 C 816.56226,-227.16254 818.89404,-226.45157 821.09375,-225.84375 C 823.47028,-225.18708 826.65839,-224.77087 830.3125,-223.65625 C 829.14515,-224.70121 823.38362,-225.75954 821.5625,-226.21875 C 819.74139,-226.67796 817.61025,-227.34571 814.90625,-228.65625 C 812.20222,-229.96677 811.43519,-230.37615 809.15625,-231.125 C 806.8773,-231.87383 805.243,-232.30431 802.90625,-232.3125 z" | ||
2677 | style="opacity:0.25;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter7321);enable-background:new" /> | ||
2678 | <path | ||
2679 | id="path8197" | ||
2680 | d="M 773.1875,-222.1875 C 774.99859,-222.0088 777.50809,-221.52244 779,-220.84375 C 780.49194,-220.16506 781.7534,-220.04553 784.25,-218.78125 C 786.72107,-217.52987 789.04005,-216.88511 791.21875,-216.34375 C 793.57262,-215.75887 796.71009,-215.44623 800.3125,-214.5 C 799.16166,-215.49116 793.45999,-216.2833 791.65625,-216.6875 C 789.85253,-217.0917 787.74072,-217.70866 785.0625,-218.9375 C 782.38432,-220.16634 781.65905,-220.54839 779.40625,-221.21875 C 777.15346,-221.88909 775.50998,-222.22107 773.1875,-222.1875 z" | ||
2681 | style="opacity:0.25;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter7329);enable-background:new" /> | ||
2682 | <path | ||
2683 | id="path8199" | ||
2684 | d="M 743.5625,-211.1875 C 745.35531,-211.05839 747.83563,-210.63785 749.3125,-210 C 750.7894,-209.36215 752.0286,-209.25844 754.5,-208.0625 C 756.94618,-206.87878 759.22054,-206.31584 761.375,-205.84375 C 763.70267,-205.33372 766.7946,-205.16311 770.375,-204.28125 C 769.23121,-205.25185 763.62741,-205.8719 761.84375,-206.21875 C 760.06008,-206.56559 757.9609,-207.10631 755.3125,-208.25 C 752.66409,-209.39368 751.91755,-209.76631 749.6875,-210.375 C 747.45742,-210.98368 745.86156,-211.28466 743.5625,-211.1875 z" | ||
2685 | style="opacity:0.25;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;filter:url(#filter7325);enable-background:new" /> | ||
2686 | </g> | ||
2687 | </g> | ||
2688 | <path | ||
2689 | style="opacity:1;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
2690 | d="M 863.87812,475.6679 C 865.52024,472.4499 867.39593,469.93261 868.73948,465.81892 C 869.5382,462.16103 872.05152,463.78819 875.99995,457.42202 C 877.40188,455.18252 881.47648,457.81338 884.96505,455.02291 C 886.23577,454.21972 887.84993,454.6186 889.44761,454.95978 C 893.213,456.27874 895.27337,458.66333 897.78137,460.76815 C 903.92043,466.73838 918.31551,468.71142 921.26741,467.08161 C 922.70146,464.17687 929.14869,461.67273 933.64178,455.96993 C 934.38989,454.84726 945.37114,447.22547 948.28899,449.40394" | ||
2691 | id="path8201" | ||
2692 | sodipodi:nodetypes="ccccccccc" /> | ||
2693 | <path | ||
2694 | style="opacity:1;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
2695 | d="M 888.50059,465.25071 C 895.864,462.01774 902.31149,456.34231 909.20872,451.86619 C 912.51929,449.89665 916.07855,455.0822 920.00472,455.46485 C 922.30245,455.24672 923.71762,456.66744 925.68683,457.10635 C 930.84319,458.42414 928.08476,460.97123 935.66209,463.54607 C 941.8177,465.26647 944.56949,456.7476 950.56184,456.22247 C 955.43923,455.71948 958.66076,455.90644 962.17859,455.96993 C 966.10555,456.10882 966.25714,452.47233 968.23951,450.66663 C 971.22007,447.86141 975.39512,448.81691 978.38436,445.92573 C 979.4019,444.54105 980.33894,442.91488 981.11895,440.81764 C 982.00096,438.8173 984.15901,441.12362 985.91718,442.08033" | ||
2696 | id="path8203" | ||
2697 | sodipodi:nodetypes="ccccccccccc" /> | ||
2698 | </g> | ||
2699 | <g | ||
2700 | inkscape:groupmode="layer" | ||
2701 | id="layer15" | ||
2702 | inkscape:label="Feet" | ||
2703 | style="display:inline"> | ||
2704 | <path | ||
2705 | style="opacity:0.25;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter9048);enable-background:accumulate" | ||
2706 | d="M 403.27922,1056.3058 L 459.84776,1013.8794 L 531.97265,1028.0215 L 485.30361,1080.3474 L 431.56349,1087.4185 L 403.27922,1056.3058 z" | ||
2707 | id="path8994" /> | ||
2708 | <path | ||
2709 | style="opacity:1;fill:#ada469;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
2710 | d="M 542.27183,1060.5719 C 540.86456,1079.3731 541.12693,1093.3229 544.35357,1109.8752 C 547.58023,1126.4275 560.75966,1155.7825 564.68798,1173.0589 C 568.61419,1190.326 567.38211,1211.3686 552.22854,1224.2072 C 536.91093,1237.1846 510.17726,1245.8061 484.39623,1239.9409 C 458.61518,1234.0757 414.84716,1190.7175 395.80604,1169.7126 C 376.6939,1148.6293 332.04518,1075.862 317.86751,1045.4368 C 303.68984,1015.0117 305.2079,1008.7182 309.74779,999.90708 C 300.38107,975.38658 297.33408,949.84027 276.03534,924.33044 C 306.36081,927.44488 319.91562,951.28677 336.16102,971.47019 C 330.63113,923.39416 318.10631,907.05369 307.78707,880.74589 C 337.78137,886.82754 358.36643,912.61828 371.76686,953.45839 C 381.32101,949.54048 390.00462,944.08545 401.95427,944.39719 C 390.65677,902.70139 384.00481,874.48135 365.26702,843.32725 C 418.70898,848.99758 448.92404,923.96657 444.23844,931.28805 C 454.21641,929.04406 463.24409,924.75767 474.67497,925.63638 C 463.426,887.28936 453.62716,848.76848 471.01526,806.98819 C 471.01526,806.98819 519.30204,872.42507 525.40492,892.79397 C 531.50779,913.16287 526.92373,931.49448 526.92373,931.49448 C 526.92373,931.49448 543.8833,962.57978 547.21765,982.58862 C 550.59075,1002.83 543.68496,1041.6919 542.27183,1060.5719 z" | ||
2711 | id="path4189" | ||
2712 | sodipodi:nodetypes="czzzzzzcccccccccczczz" /> | ||
2713 | <path | ||
2714 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter3587);enable-background:accumulate" | ||
2715 | d="M 719.5,738.69519 L 737.81177,754.12715 L 782.2228,738.73894 L 805.5,713.19519 L 816.96397,732.41584 L 847.63558,745.19938 L 872.73295,750.92775 L 892,723.19519 L 908.02309,747.02126 L 947,752.19519 L 957.24541,745.99667 L 964.00012,754.69487 L 989.5,765.69519 L 991.5,725.19519 L 955.94866,710.6576 L 923.45591,689.1305 L 883.0038,677.66492 L 861.69668,662.13148 L 840,685.19519 L 755.02878,638.61208 L 722,676.69519 L 719.5,738.69519 z" | ||
2716 | id="path4191" | ||
2717 | sodipodi:nodetypes="cccccccccccccccccccccc" | ||
2718 | clip-path="url(#clipPath3631)" | ||
2719 | transform="matrix(-0.9045327,0.2506626,0.2506626,0.9045327,995.28646,23.53493)" /> | ||
2720 | <path | ||
2721 | style="opacity:0.58775509;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:20.79999924;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline;filter:url(#filter3898);enable-background:new" | ||
2722 | d="M 584,696.5 L 577.4375,713.65625 C 577.4375,713.65625 569.62598,734.02113 561.75,757.3125 C 557.81201,768.95818 553.86698,781.35395 550.8125,792.4375 C 547.75802,803.52105 545.47664,812.81736 545.3125,820.71875 C 544.91443,839.88071 551.05903,855.60705 554.25,862.46875 C 553.47847,866.02398 552.25863,871.92307 550.90625,880.5625 C 548.98583,892.83071 547.18798,907.71691 548.53125,920.4375 C 549.91334,933.52585 555.34347,948.62515 561.125,963.46875 C 566.90653,978.31235 573.17935,992.69586 576.34375,1001.5 C 582.97581,1019.9519 586.33671,1033.0763 587.65625,1050 C 588.2376,1057.4561 587.41398,1070.336 586.40625,1083.375 C 585.39852,1096.414 584.21964,1109.6764 584.71875,1120.3438 C 585.70786,1141.4836 594.04673,1167.1785 618.09375,1178.2812 C 640.86858,1188.7966 673.42057,1189.9834 701.53125,1174.8438 C 717.69117,1166.1404 731.60759,1147.7462 744.90625,1127.9375 C 758.20491,1108.1288 769.87542,1086.8841 776.84375,1073.0312 C 792.19667,1042.51 816.23728,957.56702 822.46875,920.3125 C 825.48734,902.26597 826.39041,891.24695 825.09375,882.28125 C 824.11522,875.51521 821.26556,870.13385 818.21875,866.0625 C 820.26149,838.55459 817.48668,814.69372 830.1875,786.65625 L 840.75,763.375 L 816.9375,772.6875 C 799.44775,779.52503 788.03586,791.73286 780.34375,804.75 C 780.02124,805.29577 779.78061,805.85776 779.46875,806.40625 C 779.69078,783.89104 783.87659,768.76866 786.0625,747.71875 L 788.03125,728.71875 L 771,737.375 C 740.40551,752.93071 725.30511,785.56821 721.28125,827.59375 C 717.03593,826.96828 712.44985,826.5741 707.46875,826.75 C 707.17726,787.56964 707.07246,759.71315 716.0625,727.375 L 721.65625,707.25 L 702.21875,714.90625 C 671.30938,727.11019 654.35921,756.83698 645.59375,783.28125 C 641.21102,796.50339 638.84793,809.08246 638,819.21875 C 637.76797,821.99248 637.68894,824.53007 637.6875,826.9375 C 634.44563,826.90109 631.26698,827.07339 627.625,827.4375 C 627.66662,788.43277 624.14076,747.68335 595.34375,710.9375 L 584,696.5 z M 589.8125,740.3125 C 606.61941,770.95633 607.28701,804.27978 606.75,840.0625 L 606.53125,855.125 L 618.56618,848.58579 C 627.22823,845.45277 638.12676,848.35827 650.5,847.75 L 665.17465,857.1066 L 658.84375,831.3125 C 658.7541,831.08253 658.62329,830.89581 658.59375,830.59375 C 658.39424,828.55389 658.37143,825.12068 658.71875,820.96875 C 659.41339,812.66489 661.50832,801.38351 665.34375,789.8125 C 670.49907,774.25956 678.83176,758.62002 690.46875,747.28125 C 685.78494,775.91923 687.25316,807.54059 687.45711,843.08639 L 684.69118,856.34803 L 700.1875,848.75 C 709.2169,845.99229 717.37647,848.40004 729.46875,849.84375 L 742.71507,859.28798 L 741.09375,840 C 742.54168,809.02823 749.31524,786.32192 761.8125,771.125 C 758.82562,790.90384 756.38207,812.9098 762.125,849.46875 L 763.19052,855.84193 L 760.25237,867.35878 L 770.86948,859.1906 L 780.05921,869.41258 L 778.51093,858.94898 L 781.9375,852 C 787.63852,838.78851 792.11032,825.78663 798.28125,815.34375 C 799.24111,813.71941 800.31278,812.27939 801.34375,810.78125 C 797.66309,831.9366 798.91659,850.9894 797.25,868.5625 L 792.56986,876.36948 L 799.96875,876.59375 C 803.1888,880.07736 803.83625,880.44443 804.53125,885.25 C 805.22625,890.05557 804.84987,899.65035 801.96875,916.875 C 796.40076,950.16292 770.12313,994.71481 758.22835,1018.3614 C 751.62344,1031.4918 739.70002,1075.8473 727.105,1094.6079 C 714.50998,1113.3684 698.57363,1134.3752 689.93296,1139.0288 C 668.44244,1150.603 645.37702,1164.5347 629.31407,1157.1183 C 614.93921,1150.4813 606.27438,1135.9256 605.5,1119.375 C 605.11689,1111.187 606.11279,1098.0658 607.125,1084.9688 C 608.13721,1071.8717 618.41391,1062.398 622.54839,1048.4062 C 627.92068,1030.2254 621.10152,1011.8118 610.04839,994.46875 C 603.56184,984.29097 586.07159,970.21085 580.5,955.90625 C 574.92841,941.60165 570.13249,926.9031 569.21875,918.25 C 568.29254,909.47887 569.64125,895.22498 571.4375,883.75 C 573.23375,872.27503 575.28125,863.46875 575.28125,863.46875 L 584.70403,859.85355 L 574.21875,855.96875 C 574.21875,855.96875 565.71986,840.65865 566.125,821.15625 C 566.19611,817.73309 567.96126,808.4282 570.84375,797.96875 C 573.72624,787.5093 577.60841,775.41604 581.46875,764 C 584.51314,754.99692 587.24938,747.39655 589.8125,740.3125 z" | ||
2723 | id="path4193" | ||
2724 | clip-path="url(#clipPath3677)" | ||
2725 | sodipodi:nodetypes="ccssscsssssssssssssccccscccccccccsscccccccccccssscccccccccccccccsccccssssssssssssscccsssc" | ||
2726 | transform="matrix(-0.9045327,0.2506626,0.2506626,0.9045327,822.28931,10.93589)" /> | ||
2727 | <g | ||
2728 | id="g3617" | ||
2729 | clip-path="url(#clipPath3622)" | ||
2730 | transform="translate(276,136)"> | ||
2731 | <path | ||
2732 | transform="matrix(-0.9045327,0.2506626,0.2506626,0.9045327,-52.200498,74.09707)" | ||
2733 | id="path4195" | ||
2734 | d="M -15.66751,843.48852 L -65.16499,827.93217 L -92.03504,880.25807 L -51.02285,925.51291 L -1.52538,887.32914 L -15.66751,843.48852 z" | ||
2735 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter9024);enable-background:accumulate" /> | ||
2736 | <path | ||
2737 | sodipodi:nodetypes="ccccccccccccc" | ||
2738 | transform="matrix(-0.9045327,0.2506626,0.2506626,0.9045327,-46.92842,75.511284)" | ||
2739 | id="path4197" | ||
2740 | d="M 118.70648,859.93048 L 63.552152,813.26144 L 19.711532,850.03099 L 53.652662,903.7711 L 40.055848,989.23313 L 0.61048221,1017.5253 L -40.401718,1028.839 L -43.230138,1075.508 L 13.338402,1100.9639 L 32.282389,1031.3139 L 55.738939,972.45727 L 102.08648,899.84236 L 118.70648,859.93048 z" | ||
2741 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter9020);enable-background:accumulate" /> | ||
2742 | </g> | ||
2743 | <path | ||
2744 | style="opacity:0.25;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter9044);enable-background:accumulate" | ||
2745 | d="M -70.82184,932.58397 L -10.01066,905.71392 L 90.3985,936.82662 L 26.75889,967.93931 L -55.26549,950.96875 L -70.82184,932.58397 z" | ||
2746 | id="path4199" | ||
2747 | transform="matrix(-0.9045327,0.2506626,0.2506626,0.9045327,229.07158,211.51128)" /> | ||
2748 | <path | ||
2749 | style="opacity:0.58775509;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:20.79999924;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline;filter:url(#filter4105);enable-background:new" | ||
2750 | d="M 583.0625,715.75 C 570.95641,750.19974 556.348,784.28333 551.3125,820.59375 C 550.48042,835.52242 555.90165,849.75318 560.15625,863.65625 C 554.24001,890.85751 550.01944,920.5562 561.3125,946.78125 C 574.82967,984.9421 596.31397,1022.4634 593.73529,1064.2495 C 592.78699,1093.5437 584.72085,1125.2436 599.125,1152.5312 C 609.32364,1171.866 632.26456,1179.8429 653.09285,1180.1988 C 680.95504,1181.3729 709.55546,1168.5772 725.09375,1144.9375 C 747.68924,1115.5658 766.89426,1083.4402 780.3324,1048.8777 C 797.22293,1003.3717 810.0042,956.31698 818.26642,908.4788 C 820.09082,895.53774 821.3675,881.00895 813.6875,869.65625 C 810.25635,862.31993 813.72957,854.09611 813.00293,846.34648 C 813.67693,821.35182 817.01525,795.68272 829.65625,773.75 C 811.92312,780.1946 794.58357,790.30971 785.65318,807.61425 C 781.7181,814.3238 778.04836,821.18838 774.28125,828 C 770.73126,797.98592 778.00088,768.35172 781.0625,738.71875 C 760.89646,747.77338 744.18578,764.37397 736.88755,785.40075 C 730.58292,800.98078 728.08533,817.71793 726.625,834.4375 C 718.37166,832.91825 709.94053,832.33595 701.5625,832.9375 C 700.59942,794.23963 701.09554,753.53035 712.53125,717.03125 C 693.85012,723.24901 677.36504,735.76676 666.90322,752.41848 C 653.05068,773.29827 645.64182,798.17243 643.84375,823.03125 C 644.42909,827.35579 643.78249,834.87134 637.5,832.90625 C 632.16882,832.9238 626.87092,833.58508 621.5625,834 C 622.71034,794.61852 618.22106,752.3718 594.5,719.78125 C 591.43929,716.14408 588.86315,712.09687 585.875,708.4375 C 584.9375,710.875 584,713.3125 583.0625,715.75 z M 590.8125,729.59375 C 609.37777,758.89004 613.295,794.41387 612.9375,828.46875 C 613.14159,833.64401 612.42094,840.29795 613.0625,844.53125 C 625.38106,838.4285 639.80162,842.09135 652.84375,842.34375 C 655.16087,843.567 656.03585,843.99618 654.75,840.9375 C 650.58545,826.98465 652.90172,812.3245 656.55504,798.52986 C 662.92191,772.23922 677.18332,747.44188 699.375,731.5 C 690.75791,768.73706 693.65842,808.06161 693.28125,845.46875 C 705.53469,838.55885 720.56004,842.02262 733.3125,845.21875 C 736.70472,848.75355 735.60185,844.48927 735.5,841.40625 C 735.01691,820.03567 739.63133,798.33662 749.1875,779.25 C 755.15016,768.56273 763.43088,759.44621 771.625,750.375 C 763.75344,784.2131 762.4221,819.71093 768.90625,853.875 C 770.6311,852.46382 773.51306,853.42086 774.5625,853.5 C 784.24619,832.26318 790.91362,808.11938 809.45266,792.75815 C 811.32595,792.38693 808.00448,801.2831 807.96875,804.65625 C 804.43387,826.50206 800.79359,848.79859 799.18454,870.87536 C 790.40075,873.21707 802.03289,873.1989 802.65329,874.93786 C 810.5764,885.50366 807.31628,899.34258 806.28494,911.2912 C 799.22089,956.32475 784.14263,998.65314 770.33139,1041.971 C 758.25663,1074.9203 742.95719,1100.8235 722.44331,1129.1725 C 711.49074,1142.7239 699.19859,1157.0238 681.59956,1161.6725 C 661.44355,1167.9138 637.3928,1172.5494 619,1161.7188 C 601.71034,1149.3774 597.97607,1126.0099 599.73774,1106.0324 C 599.78653,1090.2062 604.6766,1077.5203 604.14834,1062.5406 C 603.6101,1047.2777 601.85699,1031.9759 597.60573,1015.6743 C 593.35447,999.37268 588.56248,990.75636 581.48667,974.10092 C 574.24556,957.05636 566.41652,937.35229 563.28125,917.8125 C 561.53177,899.18536 566.17296,880.68988 569.0625,862.5625 C 572.35873,859.72554 567.46451,857.36591 566.75,854.375 C 559.14887,837.35992 558.34253,817.6001 564.00766,799.81502 C 571.13786,774.74272 579.76853,750.18261 588.6875,725.6875 C 589.39583,726.98958 590.10417,728.29167 590.8125,729.59375 z" | ||
2751 | id="path4201" | ||
2752 | sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccccccccccccccczzzcccccc" | ||
2753 | clip-path="url(#clipPath4177)" | ||
2754 | transform="matrix(-0.9045327,0.2506626,0.2506626,0.9045327,822.28931,10.93589)" /> | ||
2755 | <path | ||
2756 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter4130);enable-background:accumulate" | ||
2757 | d="M 735.05635,733.03834 L 737.81177,754.12715 L 782.2228,738.73894 L 787.07343,716.34919 L 783.13726,694.29697 L 760.68563,657.70396 L 752.40559,688.0089 L 735.05635,733.03834 z" | ||
2758 | id="path4203" | ||
2759 | sodipodi:nodetypes="cccccccc" | ||
2760 | clip-path="url(#clipPath3631)" | ||
2761 | transform="matrix(-0.9045327,0.2506626,0.2506626,0.9045327,995.28646,23.53493)" /> | ||
2762 | <path | ||
2763 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter4141);enable-background:accumulate" | ||
2764 | d="M 831.81321,730.29452 L 847.63558,745.19938 L 868.49031,748.09932 L 866.90002,708.17334 L 875.22563,677.66492 L 868.06064,671.32386 L 846.36395,692.26626 L 831.81321,730.29452 z" | ||
2765 | id="path4205" | ||
2766 | sodipodi:nodetypes="cccccccc" | ||
2767 | clip-path="url(#clipPath3631)" | ||
2768 | transform="matrix(-0.9045327,0.2506626,0.2506626,0.9045327,995.28646,23.53493)" /> | ||
2769 | <g | ||
2770 | id="g8317" | ||
2771 | style="filter:url(#filter8333)" | ||
2772 | clip-path="url(#clipPath8338)" | ||
2773 | transform="translate(276,136)"> | ||
2774 | <path | ||
2775 | transform="matrix(-0.9045327,0.2506626,0.2506626,0.9045327,719.28646,-112.46507)" | ||
2776 | clip-path="none" | ||
2777 | sodipodi:nodetypes="ccccc" | ||
2778 | id="path4209" | ||
2779 | d="M 964.00012,754.69487 L 982.42893,762.15966 L 991.5,725.19519 L 976.62969,730.03405 L 964.00012,754.69487 z" | ||
2780 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> | ||
2781 | <rect | ||
2782 | y="757.19519" | ||
2783 | x="-55" | ||
2784 | height="177" | ||
2785 | width="182" | ||
2786 | id="rect8315" | ||
2787 | style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:25;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> | ||
2788 | </g> | ||
2789 | <g | ||
2790 | id="g8346" | ||
2791 | style="filter:url(#filter8354)" | ||
2792 | clip-path="url(#clipPath8359)" | ||
2793 | transform="translate(276,136)"> | ||
2794 | <path | ||
2795 | transform="matrix(-0.9045327,0.2506626,0.2506626,0.9045327,719.28646,-112.46507)" | ||
2796 | clip-path="none" | ||
2797 | sodipodi:nodetypes="ccccccc" | ||
2798 | id="path4207" | ||
2799 | d="M 910.14441,746.31415 L 942.75736,751.48808 L 942.39617,727.61189 L 949.5847,697.92968 L 941.13358,692.66603 L 919.31164,719.1768 L 910.14441,746.31415 z" | ||
2800 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> | ||
2801 | <rect | ||
2802 | y="696.19519" | ||
2803 | x="-22" | ||
2804 | height="176" | ||
2805 | width="165" | ||
2806 | id="rect8344" | ||
2807 | style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:25;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> | ||
2808 | </g> | ||
2809 | </g> | ||
2810 | <g | ||
2811 | inkscape:groupmode="layer" | ||
2812 | id="layer16" | ||
2813 | inkscape:label="Left Foot" | ||
2814 | style="display:inline"> | ||
2815 | <path | ||
2816 | style="opacity:1;fill:#ada469;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline;enable-background:new" | ||
2817 | d="M 1036.164,1071.8338 C 1042.9581,1090.7366 1046.6577,1105.1335 1048.0543,1123.0457 C 1049.4509,1140.958 1044.2716,1174.8465 1045.1538,1193.7018 C 1046.0356,1212.547 1053.2875,1233.8008 1072.4984,1242.6707 C 1091.9173,1251.6365 1121.8177,1252.882 1146.6183,1239.5251 C 1171.4189,1226.1681 1204.0193,1169.1996 1217.5925,1142.2164 C 1231.2164,1115.1325 1256.3536,1027.719 1262.2533,992.44781 C 1268.1531,957.1766 1264.8039,951.14704 1257.6359,943.39232 C 1260.2762,915.55217 1256.1361,888.45689 1270.7455,856.20614 C 1240.4965,868.03184 1233.3632,896.36684 1222.4266,921.71122 C 1214.4257,870.77829 1222.6358,850.43803 1225.7455,820.49186 C 1196.6808,835.26977 1182.884,867.60588 1180.7455,913.349 C 1169.8216,912.0448 1159.3541,908.91477 1147.1741,912.63471 C 1146.9101,866.61137 1145.7106,835.7453 1156.0847,798.42822 C 1102.8293,819.45508 1093.1375,905.02232 1100.0312,911.20614 C 1089.1484,911.74114 1078.6602,909.90884 1067.1741,914.06329 C 1067.813,871.49194 1066.9136,829.15468 1037.1741,791.20614 C 1037.1741,791.20614 1006.2161,872.12848 1005.7455,894.77757 C 1005.275,917.42666 1015.1971,934.94345 1015.1971,934.94345 C 1015.1971,934.94345 1006.6291,971.68396 1008.8985,993.17568 C 1011.1944,1014.9171 1029.3414,1052.8519 1036.164,1071.8338 z" | ||
2818 | id="path8848" | ||
2819 | sodipodi:nodetypes="czzzzzzcccccccccczczz" /> | ||
2820 | <path | ||
2821 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter3587);enable-background:accumulate" | ||
2822 | d="M 719.5,738.69519 L 737.81177,754.12715 L 782.2228,738.73894 L 805.5,713.19519 L 816.96397,732.41584 L 847.63558,745.19938 L 872.73295,750.92775 L 892,723.19519 L 908.02309,747.02126 L 947,752.19519 L 957.24541,745.99667 L 964.00012,754.69487 L 989.5,765.69519 L 991.5,725.19519 L 955.94866,710.6576 L 923.45591,689.1305 L 883.0038,677.66492 L 861.69668,662.13148 L 840,685.19519 L 755.02878,638.61208 L 722,676.69519 L 719.5,738.69519 z" | ||
2823 | id="path3635" | ||
2824 | sodipodi:nodetypes="cccccccccccccccccccccc" | ||
2825 | clip-path="url(#clipPath3631)" | ||
2826 | transform="translate(276,136)" /> | ||
2827 | <path | ||
2828 | transform="translate(450.03125,73.843964)" | ||
2829 | style="opacity:0.58775509;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:20.79999924;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline;filter:url(#filter3898);enable-background:new" | ||
2830 | d="M 584,696.5 L 577.4375,713.65625 C 577.4375,713.65625 569.62598,734.02113 561.75,757.3125 C 557.81201,768.95818 553.86698,781.35395 550.8125,792.4375 C 547.75802,803.52105 545.47664,812.81736 545.3125,820.71875 C 544.91443,839.88071 551.05903,855.60705 554.25,862.46875 C 553.47847,866.02398 552.25863,871.92307 550.90625,880.5625 C 548.98583,892.83071 547.18798,907.71691 548.53125,920.4375 C 549.91334,933.52585 555.34347,948.62515 561.125,963.46875 C 566.90653,978.31235 573.17935,992.69586 576.34375,1001.5 C 582.97581,1019.9519 586.33671,1033.0763 587.65625,1050 C 588.2376,1057.4561 587.41398,1070.336 586.40625,1083.375 C 585.39852,1096.414 584.21964,1109.6764 584.71875,1120.3438 C 585.70786,1141.4836 594.04673,1167.1785 618.09375,1178.2812 C 640.86858,1188.7966 673.42057,1189.9834 701.53125,1174.8438 C 717.69117,1166.1404 731.60759,1147.7462 744.90625,1127.9375 C 758.20491,1108.1288 769.87542,1086.8841 776.84375,1073.0312 C 792.19667,1042.51 816.23728,957.56702 822.46875,920.3125 C 825.48734,902.26597 826.39041,891.24695 825.09375,882.28125 C 824.11522,875.51521 821.26556,870.13385 818.21875,866.0625 C 820.26149,838.55459 817.48668,814.69372 830.1875,786.65625 L 840.75,763.375 L 816.9375,772.6875 C 799.44775,779.52503 788.03586,791.73286 780.34375,804.75 C 780.02124,805.29577 779.78061,805.85776 779.46875,806.40625 C 779.69078,783.89104 783.87659,768.76866 786.0625,747.71875 L 788.03125,728.71875 L 771,737.375 C 740.40551,752.93071 725.30511,785.56821 721.28125,827.59375 C 717.03593,826.96828 712.44985,826.5741 707.46875,826.75 C 707.17726,787.56964 707.07246,759.71315 716.0625,727.375 L 721.65625,707.25 L 702.21875,714.90625 C 671.30938,727.11019 654.35921,756.83698 645.59375,783.28125 C 641.21102,796.50339 638.84793,809.08246 638,819.21875 C 637.76797,821.99248 637.68894,824.53007 637.6875,826.9375 C 634.44563,826.90109 631.26698,827.07339 627.625,827.4375 C 627.66662,788.43277 624.14076,747.68335 595.34375,710.9375 L 584,696.5 z M 589.8125,740.3125 C 606.61941,770.95633 607.28701,804.27978 606.75,840.0625 L 606.53125,855.125 L 618.56618,848.58579 C 627.22823,845.45277 638.12676,848.35827 650.5,847.75 L 665.17465,857.1066 L 658.84375,831.3125 C 658.7541,831.08253 658.62329,830.89581 658.59375,830.59375 C 658.39424,828.55389 658.37143,825.12068 658.71875,820.96875 C 659.41339,812.66489 661.50832,801.38351 665.34375,789.8125 C 670.49907,774.25956 678.83176,758.62002 690.46875,747.28125 C 685.78494,775.91923 687.25316,807.54059 687.45711,843.08639 L 684.69118,856.34803 L 700.1875,848.75 C 709.2169,845.99229 717.37647,848.40004 729.46875,849.84375 L 742.71507,859.28798 L 741.09375,840 C 742.54168,809.02823 749.31524,786.32192 761.8125,771.125 C 758.82562,790.90384 756.38207,812.9098 762.125,849.46875 L 763.19052,855.84193 L 760.25237,867.35878 L 770.86948,859.1906 L 780.05921,869.41258 L 778.51093,858.94898 L 781.9375,852 C 787.63852,838.78851 792.11032,825.78663 798.28125,815.34375 C 799.24111,813.71941 800.31278,812.27939 801.34375,810.78125 C 797.66309,831.9366 798.91659,850.9894 797.25,868.5625 L 792.56986,876.36948 L 799.96875,876.59375 C 803.1888,880.07736 803.83625,880.44443 804.53125,885.25 C 805.22625,890.05557 804.84987,899.65035 801.96875,916.875 C 796.40076,950.16292 770.17603,1040.0409 758.28125,1063.6875 C 751.67634,1076.8179 740.25127,1097.5832 727.65625,1116.3438 C 715.06123,1135.1043 700.29692,1151.8776 691.65625,1156.5312 C 670.16573,1168.1054 642.87545,1166.7914 626.8125,1159.375 C 612.43764,1152.738 606.27438,1135.9256 605.5,1119.375 C 605.11689,1111.187 606.11279,1098.0658 607.125,1084.9688 C 608.13721,1071.8717 618.41391,1062.398 622.54839,1048.4062 C 627.92068,1030.2254 621.10152,1011.8118 610.04839,994.46875 C 603.56184,984.29097 586.07159,970.21085 580.5,955.90625 C 574.92841,941.60165 570.13249,926.9031 569.21875,918.25 C 568.29254,909.47887 569.64125,895.22498 571.4375,883.75 C 573.23375,872.27503 575.28125,863.46875 575.28125,863.46875 L 584.70403,859.85355 L 574.21875,855.96875 C 574.21875,855.96875 565.71986,840.65865 566.125,821.15625 C 566.19611,817.73309 567.96126,808.4282 570.84375,797.96875 C 573.72624,787.5093 577.60841,775.41604 581.46875,764 C 584.51314,754.99692 587.24938,747.39655 589.8125,740.3125 z" | ||
2831 | id="path3669" | ||
2832 | clip-path="url(#clipPath3677)" | ||
2833 | sodipodi:nodetypes="ccssscsssssssssssssccccscccccccccsscccccccccccssscccccccccccccccsccccssssssssssssscccsssc" /> | ||
2834 | <g | ||
2835 | id="g3628" | ||
2836 | clip-path="url(#clipPath3636)" | ||
2837 | transform="translate(276,136)"> | ||
2838 | <path | ||
2839 | id="path8988" | ||
2840 | d="M 824.48651,818.48242 L 774.98903,802.92607 L 748.11898,855.25197 L 789.13117,900.50681 L 838.62864,862.32304 L 824.48651,818.48242 z" | ||
2841 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter9024);enable-background:accumulate" /> | ||
2842 | <path | ||
2843 | id="path8990" | ||
2844 | d="M 964.49365,855.25197 L 909.33932,808.58293 L 865.4987,845.35248 L 899.43983,899.09259 L 906.51089,965.56063 L 855.59921,1000.916 L 814.58701,1012.2297 L 811.75859,1058.8987 L 868.32713,1084.3546 L 931.96674,1007.987 L 956.00837,913.23473 L 964.49365,855.25197 z" | ||
2845 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter9020);enable-background:accumulate" /> | ||
2846 | </g> | ||
2847 | <path | ||
2848 | style="opacity:0.25;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter9044);enable-background:accumulate" | ||
2849 | d="M 1045.3322,1043.5779 L 1106.1434,1016.7078 L 1206.5525,1047.8205 L 1142.9129,1078.9332 L 1060.8885,1061.9626 L 1045.3322,1043.5779 z" | ||
2850 | id="path8992" /> | ||
2851 | <path | ||
2852 | transform="translate(450.03125,73.843964)" | ||
2853 | style="opacity:0.58775509;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:20.79999924;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline;filter:url(#filter4185);enable-background:new" | ||
2854 | d="M 583.0625,715.75 C 570.95641,750.19974 556.348,784.28333 551.3125,820.59375 C 550.48042,835.52242 555.90165,849.75318 560.15625,863.65625 C 554.24001,890.85751 550.01944,920.5562 561.3125,946.78125 C 574.82967,984.9421 596.31397,1022.4634 593.73529,1064.2495 C 592.78699,1093.5437 584.72085,1125.2436 599.125,1152.5312 C 609.32364,1171.866 632.26456,1179.8429 653.09285,1180.1988 C 680.95504,1181.3729 709.55546,1168.5772 725.09375,1144.9375 C 747.68924,1115.5658 766.89426,1083.4402 780.3324,1048.8777 C 797.22293,1003.3717 810.0042,956.31698 818.26642,908.4788 C 820.09082,895.53774 821.3675,881.00895 813.6875,869.65625 C 810.25635,862.31993 813.72957,854.09611 813.00293,846.34648 C 813.67693,821.35182 817.01525,795.68272 829.65625,773.75 C 811.92312,780.1946 794.58357,790.30971 785.65318,807.61425 C 781.7181,814.3238 778.04836,821.18838 774.28125,828 C 770.73126,797.98592 778.00088,768.35172 781.0625,738.71875 C 760.89646,747.77338 744.18578,764.37397 736.88755,785.40075 C 730.58292,800.98078 728.08533,817.71793 726.625,834.4375 C 718.37166,832.91825 709.94053,832.33595 701.5625,832.9375 C 700.59942,794.23963 701.09554,753.53035 712.53125,717.03125 C 693.85012,723.24901 677.36504,735.76676 666.90322,752.41848 C 653.05068,773.29827 645.64182,798.17243 643.84375,823.03125 C 644.42909,827.35579 643.78249,834.87134 637.5,832.90625 C 632.16882,832.9238 626.87092,833.58508 621.5625,834 C 622.71034,794.61852 618.22106,752.3718 594.5,719.78125 C 591.43929,716.14408 588.86315,712.09687 585.875,708.4375 C 584.9375,710.875 584,713.3125 583.0625,715.75 z M 590.8125,729.59375 C 609.37777,758.89004 613.295,794.41387 612.9375,828.46875 C 613.14159,833.64401 612.42094,840.29795 613.0625,844.53125 C 625.38106,838.4285 639.80162,842.09135 652.84375,842.34375 C 655.16087,843.567 656.03585,843.99618 654.75,840.9375 C 650.58545,826.98465 652.90172,812.3245 656.55504,798.52986 C 662.92191,772.23922 677.18332,747.44188 699.375,731.5 C 690.75791,768.73706 693.65842,808.06161 693.28125,845.46875 C 705.53469,838.55885 720.56004,842.02262 733.3125,845.21875 C 736.70472,848.75355 735.60185,844.48927 735.5,841.40625 C 735.01691,820.03567 739.63133,798.33662 749.1875,779.25 C 755.15016,768.56273 763.43088,759.44621 771.625,750.375 C 763.75344,784.2131 762.4221,819.71093 768.90625,853.875 C 770.6311,852.46382 773.51306,853.42086 774.5625,853.5 C 784.24619,832.26318 790.91362,808.11938 809.45266,792.75815 C 811.32595,792.38693 808.00448,801.2831 807.96875,804.65625 C 804.43387,826.50206 804.67155,848.82948 803.0625,870.90625 C 801.75012,872.28304 805.91085,873.22979 806.53125,874.96875 C 814.45436,885.53455 809.65419,899.80024 808.62285,911.74886 C 801.5588,956.78241 786.85732,1000.1282 773.04608,1043.446 C 760.97132,1076.3953 742.32638,1106.526 721.8125,1134.875 C 710.85993,1148.4264 698.56778,1162.7263 680.96875,1167.375 C 660.81274,1173.6163 637.3928,1172.5494 619,1161.7188 C 601.71034,1149.3774 597.97607,1126.0099 599.73774,1106.0324 C 599.78653,1090.2062 602.10985,1078.2316 607.65521,1063.2271 C 613.20056,1048.2226 610.12626,1031.8954 605.875,1015.5938 C 601.62374,999.2922 593.69597,989.33378 584.05342,973.38963 C 574.41087,957.44548 566.41652,937.35229 563.28125,917.8125 C 561.53177,899.18536 566.17296,880.68988 569.0625,862.5625 C 572.35873,859.72554 567.46451,857.36591 566.75,854.375 C 559.14887,837.35992 558.34253,817.6001 564.00766,799.81502 C 571.13786,774.74272 579.76853,750.18261 588.6875,725.6875 C 589.39583,726.98958 590.10417,728.29167 590.8125,729.59375 z" | ||
2855 | id="path4149" | ||
2856 | sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccccccccccccccczzzcccccc" | ||
2857 | clip-path="url(#clipPath4177)" /> | ||
2858 | <path | ||
2859 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter4130);enable-background:accumulate" | ||
2860 | d="M 735.05635,733.03834 L 737.81177,754.12715 L 782.2228,738.73894 L 787.07343,716.34919 L 783.13726,694.29697 L 760.68563,657.70396 L 752.40559,688.0089 L 735.05635,733.03834 z" | ||
2861 | id="path3902" | ||
2862 | sodipodi:nodetypes="cccccccc" | ||
2863 | clip-path="url(#clipPath3631)" | ||
2864 | transform="translate(276,136)" /> | ||
2865 | <path | ||
2866 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter4141);enable-background:accumulate" | ||
2867 | d="M 831.81321,730.29452 L 847.63558,745.19938 L 868.49031,748.09932 L 866.90002,708.17334 L 875.22563,677.66492 L 868.06064,671.32386 L 846.36395,692.26626 L 831.81321,730.29452 z" | ||
2868 | id="path4135" | ||
2869 | sodipodi:nodetypes="cccccccc" | ||
2870 | clip-path="url(#clipPath3631)" | ||
2871 | transform="translate(276,136)" /> | ||
2872 | <g | ||
2873 | id="g8367" | ||
2874 | style="filter:url(#filter8379)" | ||
2875 | clip-path="url(#clipPath8392)" | ||
2876 | transform="translate(276,136)"> | ||
2877 | <path | ||
2878 | clip-path="none" | ||
2879 | sodipodi:nodetypes="ccccccc" | ||
2880 | id="path4145" | ||
2881 | d="M 910.14441,746.31415 L 942.75736,751.48808 L 942.39617,727.61189 L 949.5847,697.92968 L 941.13358,692.66603 L 919.31164,719.1768 L 910.14441,746.31415 z" | ||
2882 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> | ||
2883 | <rect | ||
2884 | y="650.19098" | ||
2885 | x="877.51953" | ||
2886 | height="172.53406" | ||
2887 | width="123.03658" | ||
2888 | id="rect8365" | ||
2889 | style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:25;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> | ||
2890 | </g> | ||
2891 | <g | ||
2892 | id="g8400" | ||
2893 | style="filter:url(#filter8404)" | ||
2894 | clip-path="url(#clipPath8417)" | ||
2895 | transform="translate(276,136)"> | ||
2896 | <path | ||
2897 | clip-path="none" | ||
2898 | sodipodi:nodetypes="ccccc" | ||
2899 | id="path4147" | ||
2900 | d="M 964.00012,754.69487 L 982.42893,762.15966 L 991.5,725.19519 L 976.62969,730.03405 L 964.00012,754.69487 z" | ||
2901 | style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> | ||
2902 | <rect | ||
2903 | y="677.06104" | ||
2904 | x="924.89569" | ||
2905 | height="125.1579" | ||
2906 | width="142.12846" | ||
2907 | id="rect8398" | ||
2908 | style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:25;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> | ||
2909 | </g> | ||
2910 | </g> | ||
2911 | </svg> | ||
diff --git a/Documentation/logo.txt b/Documentation/logo.txt index 296f0f7f67eb..a2e62445e28e 100644 --- a/Documentation/logo.txt +++ b/Documentation/logo.txt | |||
@@ -1,13 +1,4 @@ | |||
1 | This is the full-colour version of the currently unofficial Linux logo | 1 | Tux is taking a three month sabbatical to work as a barber, so Tuz is |
2 | ("currently unofficial" just means that there has been no paperwork and | 2 | standing in. He's taken pains to ensure you'll hardly notice. |
3 | that I have not really announced it yet). It was created by Larry Ewing, | ||
4 | and is freely usable as long as you acknowledge Larry as the original | ||
5 | artist. | ||
6 | |||
7 | Note that there are black-and-white versions of this available that | ||
8 | scale down to smaller sizes and are better for letterheads or whatever | ||
9 | you want to use it for: for the full range of logos take a look at | ||
10 | Larry's web-page: | ||
11 | |||
12 | http://www.isc.tamu.edu/~lewing/linux/ | ||
13 | 3 | ||
4 | Image by Andrew McGown and Josh Bush. Image is licensed CC BY-SA. | ||
diff --git a/Documentation/networking/ipv6.txt b/Documentation/networking/ipv6.txt new file mode 100644 index 000000000000..268e5c103dd8 --- /dev/null +++ b/Documentation/networking/ipv6.txt | |||
@@ -0,0 +1,35 @@ | |||
1 | |||
2 | Options for the ipv6 module are supplied as parameters at load time. | ||
3 | |||
4 | Module options may be given as command line arguments to the insmod | ||
5 | or modprobe command, but are usually specified in either the | ||
6 | /etc/modules.conf or /etc/modprobe.conf configuration file, or in a | ||
7 | distro-specific configuration file. | ||
8 | |||
9 | The available ipv6 module parameters are listed below. If a parameter | ||
10 | is not specified the default value is used. | ||
11 | |||
12 | The parameters are as follows: | ||
13 | |||
14 | disable | ||
15 | |||
16 | Specifies whether to load the IPv6 module, but disable all | ||
17 | its functionality. This might be used when another module | ||
18 | has a dependency on the IPv6 module being loaded, but no | ||
19 | IPv6 addresses or operations are desired. | ||
20 | |||
21 | The possible values and their effects are: | ||
22 | |||
23 | 0 | ||
24 | IPv6 is enabled. | ||
25 | |||
26 | This is the default value. | ||
27 | |||
28 | 1 | ||
29 | IPv6 is disabled. | ||
30 | |||
31 | No IPv6 addresses will be added to interfaces, and | ||
32 | it will not be possible to open an IPv6 socket. | ||
33 | |||
34 | A reboot is required to enable IPv6. | ||
35 | |||
diff --git a/MAINTAINERS b/MAINTAINERS index 1c2ca1dc66f2..5d460c9d1c2c 100644 --- a/MAINTAINERS +++ b/MAINTAINERS | |||
@@ -1469,8 +1469,6 @@ L: linux-acpi@vger.kernel.org | |||
1469 | S: Supported | 1469 | S: Supported |
1470 | 1470 | ||
1471 | DOCUMENTATION (/Documentation directory) | 1471 | DOCUMENTATION (/Documentation directory) |
1472 | P: Michael Kerrisk | ||
1473 | M: mtk.manpages@gmail.com | ||
1474 | P: Randy Dunlap | 1472 | P: Randy Dunlap |
1475 | M: rdunlap@xenotime.net | 1473 | M: rdunlap@xenotime.net |
1476 | L: linux-doc@vger.kernel.org | 1474 | L: linux-doc@vger.kernel.org |
@@ -2879,7 +2877,7 @@ P: Michael Kerrisk | |||
2879 | M: mtk.manpages@gmail.com | 2877 | M: mtk.manpages@gmail.com |
2880 | W: http://www.kernel.org/doc/man-pages | 2878 | W: http://www.kernel.org/doc/man-pages |
2881 | L: linux-man@vger.kernel.org | 2879 | L: linux-man@vger.kernel.org |
2882 | S: Supported | 2880 | S: Maintained |
2883 | 2881 | ||
2884 | MARVELL LIBERTAS WIRELESS DRIVER | 2882 | MARVELL LIBERTAS WIRELESS DRIVER |
2885 | P: Dan Williams | 2883 | P: Dan Williams |
@@ -3352,10 +3350,8 @@ S: Maintained | |||
3352 | PARISC ARCHITECTURE | 3350 | PARISC ARCHITECTURE |
3353 | P: Kyle McMartin | 3351 | P: Kyle McMartin |
3354 | M: kyle@mcmartin.ca | 3352 | M: kyle@mcmartin.ca |
3355 | P: Matthew Wilcox | 3353 | P: Helge Deller |
3356 | M: matthew@wil.cx | 3354 | M: deller@gmx.de |
3357 | P: Grant Grundler | ||
3358 | M: grundler@parisc-linux.org | ||
3359 | L: linux-parisc@vger.kernel.org | 3355 | L: linux-parisc@vger.kernel.org |
3360 | W: http://www.parisc-linux.org/ | 3356 | W: http://www.parisc-linux.org/ |
3361 | T: git kernel.org:/pub/scm/linux/kernel/git/kyle/parisc-2.6.git | 3357 | T: git kernel.org:/pub/scm/linux/kernel/git/kyle/parisc-2.6.git |
@@ -3880,6 +3876,15 @@ L: linux-ide@vger.kernel.org | |||
3880 | T: git kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev.git | 3876 | T: git kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev.git |
3881 | S: Supported | 3877 | S: Supported |
3882 | 3878 | ||
3879 | SERVER ENGINES 10Gbps NIC - BladeEngine 2 DRIVER | ||
3880 | P: Sathya Perla | ||
3881 | M: sathyap@serverengines.com | ||
3882 | P: Subbu Seetharaman | ||
3883 | M: subbus@serverengines.com | ||
3884 | L: netdev@vger.kernel.org | ||
3885 | W: http://www.serverengines.com | ||
3886 | S: Supported | ||
3887 | |||
3883 | SFC NETWORK DRIVER | 3888 | SFC NETWORK DRIVER |
3884 | P: Steve Hodgson | 3889 | P: Steve Hodgson |
3885 | P: Ben Hutchings | 3890 | P: Ben Hutchings |
@@ -1,7 +1,7 @@ | |||
1 | VERSION = 2 | 1 | VERSION = 2 |
2 | PATCHLEVEL = 6 | 2 | PATCHLEVEL = 6 |
3 | SUBLEVEL = 29 | 3 | SUBLEVEL = 29 |
4 | EXTRAVERSION = -rc7 | 4 | EXTRAVERSION = -rc8 |
5 | NAME = Erotic Pickled Herring | 5 | NAME = Erotic Pickled Herring |
6 | 6 | ||
7 | # *DOCUMENTATION* | 7 | # *DOCUMENTATION* |
@@ -904,12 +904,18 @@ localver = $(subst $(space),, $(string) \ | |||
904 | # and if the SCM is know a tag from the SCM is appended. | 904 | # and if the SCM is know a tag from the SCM is appended. |
905 | # The appended tag is determined by the SCM used. | 905 | # The appended tag is determined by the SCM used. |
906 | # | 906 | # |
907 | # Currently, only git is supported. | 907 | # .scmversion is used when generating rpm packages so we do not loose |
908 | # Other SCMs can edit scripts/setlocalversion and add the appropriate | 908 | # the version information from the SCM when we do the build of the kernel |
909 | # checks as needed. | 909 | # from the copied source |
910 | ifdef CONFIG_LOCALVERSION_AUTO | 910 | ifdef CONFIG_LOCALVERSION_AUTO |
911 | _localver-auto = $(shell $(CONFIG_SHELL) \ | 911 | |
912 | $(srctree)/scripts/setlocalversion $(srctree)) | 912 | ifeq ($(wildcard .scmversion),) |
913 | _localver-auto = $(shell $(CONFIG_SHELL) \ | ||
914 | $(srctree)/scripts/setlocalversion $(srctree)) | ||
915 | else | ||
916 | _localver-auto = $(shell cat .scmversion 2> /dev/null) | ||
917 | endif | ||
918 | |||
913 | localver-auto = $(LOCALVERSION)$(_localver-auto) | 919 | localver-auto = $(LOCALVERSION)$(_localver-auto) |
914 | endif | 920 | endif |
915 | 921 | ||
@@ -1537,7 +1543,7 @@ quiet_cmd_depmod = DEPMOD $(KERNELRELEASE) | |||
1537 | cmd_depmod = \ | 1543 | cmd_depmod = \ |
1538 | if [ -r System.map -a -x $(DEPMOD) ]; then \ | 1544 | if [ -r System.map -a -x $(DEPMOD) ]; then \ |
1539 | $(DEPMOD) -ae -F System.map \ | 1545 | $(DEPMOD) -ae -F System.map \ |
1540 | $(if $(strip $(INSTALL_MOD_PATH)), -b $(INSTALL_MOD_PATH) -r) \ | 1546 | $(if $(strip $(INSTALL_MOD_PATH)), -b $(INSTALL_MOD_PATH) ) \ |
1541 | $(KERNELRELEASE); \ | 1547 | $(KERNELRELEASE); \ |
1542 | fi | 1548 | fi |
1543 | 1549 | ||
diff --git a/arch/arm/kernel/entry-common.S b/arch/arm/kernel/entry-common.S index 49a6ba926c2b..159d0416f270 100644 --- a/arch/arm/kernel/entry-common.S +++ b/arch/arm/kernel/entry-common.S | |||
@@ -111,6 +111,7 @@ ENTRY(mcount) | |||
111 | .globl mcount_call | 111 | .globl mcount_call |
112 | mcount_call: | 112 | mcount_call: |
113 | bl ftrace_stub | 113 | bl ftrace_stub |
114 | ldr lr, [fp, #-4] @ restore lr | ||
114 | ldmia sp!, {r0-r3, pc} | 115 | ldmia sp!, {r0-r3, pc} |
115 | 116 | ||
116 | ENTRY(ftrace_caller) | 117 | ENTRY(ftrace_caller) |
@@ -122,6 +123,7 @@ ENTRY(ftrace_caller) | |||
122 | .globl ftrace_call | 123 | .globl ftrace_call |
123 | ftrace_call: | 124 | ftrace_call: |
124 | bl ftrace_stub | 125 | bl ftrace_stub |
126 | ldr lr, [fp, #-4] @ restore lr | ||
125 | ldmia sp!, {r0-r3, pc} | 127 | ldmia sp!, {r0-r3, pc} |
126 | 128 | ||
127 | #else | 129 | #else |
@@ -133,6 +135,7 @@ ENTRY(mcount) | |||
133 | adr r0, ftrace_stub | 135 | adr r0, ftrace_stub |
134 | cmp r0, r2 | 136 | cmp r0, r2 |
135 | bne trace | 137 | bne trace |
138 | ldr lr, [fp, #-4] @ restore lr | ||
136 | ldmia sp!, {r0-r3, pc} | 139 | ldmia sp!, {r0-r3, pc} |
137 | 140 | ||
138 | trace: | 141 | trace: |
@@ -141,6 +144,7 @@ trace: | |||
141 | sub r0, r0, #MCOUNT_INSN_SIZE | 144 | sub r0, r0, #MCOUNT_INSN_SIZE |
142 | mov lr, pc | 145 | mov lr, pc |
143 | mov pc, r2 | 146 | mov pc, r2 |
147 | mov lr, r1 @ restore lr | ||
144 | ldmia sp!, {r0-r3, pc} | 148 | ldmia sp!, {r0-r3, pc} |
145 | 149 | ||
146 | #endif /* CONFIG_DYNAMIC_FTRACE */ | 150 | #endif /* CONFIG_DYNAMIC_FTRACE */ |
diff --git a/arch/arm/kernel/fiq.c b/arch/arm/kernel/fiq.c index 36f81d967979..6ff7919613d7 100644 --- a/arch/arm/kernel/fiq.c +++ b/arch/arm/kernel/fiq.c | |||
@@ -88,7 +88,7 @@ void set_fiq_handler(void *start, unsigned int length) | |||
88 | * disable irqs for the duration. Note - these functions are almost | 88 | * disable irqs for the duration. Note - these functions are almost |
89 | * entirely coded in assembly. | 89 | * entirely coded in assembly. |
90 | */ | 90 | */ |
91 | void __attribute__((naked)) set_fiq_regs(struct pt_regs *regs) | 91 | void __naked set_fiq_regs(struct pt_regs *regs) |
92 | { | 92 | { |
93 | register unsigned long tmp; | 93 | register unsigned long tmp; |
94 | asm volatile ( | 94 | asm volatile ( |
@@ -106,7 +106,7 @@ void __attribute__((naked)) set_fiq_regs(struct pt_regs *regs) | |||
106 | : "r" (®s->ARM_r8), "I" (PSR_I_BIT | PSR_F_BIT | FIQ_MODE)); | 106 | : "r" (®s->ARM_r8), "I" (PSR_I_BIT | PSR_F_BIT | FIQ_MODE)); |
107 | } | 107 | } |
108 | 108 | ||
109 | void __attribute__((naked)) get_fiq_regs(struct pt_regs *regs) | 109 | void __naked get_fiq_regs(struct pt_regs *regs) |
110 | { | 110 | { |
111 | register unsigned long tmp; | 111 | register unsigned long tmp; |
112 | asm volatile ( | 112 | asm volatile ( |
diff --git a/arch/arm/mach-at91/at91sam9263_devices.c b/arch/arm/mach-at91/at91sam9263_devices.c index 134af97ff340..b7f233242315 100644 --- a/arch/arm/mach-at91/at91sam9263_devices.c +++ b/arch/arm/mach-at91/at91sam9263_devices.c | |||
@@ -347,6 +347,111 @@ void __init at91_add_device_mmc(short mmc_id, struct at91_mmc_data *data) | |||
347 | void __init at91_add_device_mmc(short mmc_id, struct at91_mmc_data *data) {} | 347 | void __init at91_add_device_mmc(short mmc_id, struct at91_mmc_data *data) {} |
348 | #endif | 348 | #endif |
349 | 349 | ||
350 | /* -------------------------------------------------------------------- | ||
351 | * Compact Flash (PCMCIA or IDE) | ||
352 | * -------------------------------------------------------------------- */ | ||
353 | |||
354 | #if defined(CONFIG_AT91_CF) || defined(CONFIG_AT91_CF_MODULE) || \ | ||
355 | defined(CONFIG_BLK_DEV_IDE_AT91) || defined(CONFIG_BLK_DEV_IDE_AT91_MODULE) | ||
356 | |||
357 | static struct at91_cf_data cf0_data; | ||
358 | |||
359 | static struct resource cf0_resources[] = { | ||
360 | [0] = { | ||
361 | .start = AT91_CHIPSELECT_4, | ||
362 | .end = AT91_CHIPSELECT_4 + SZ_256M - 1, | ||
363 | .flags = IORESOURCE_MEM | IORESOURCE_MEM_8AND16BIT, | ||
364 | } | ||
365 | }; | ||
366 | |||
367 | static struct platform_device cf0_device = { | ||
368 | .id = 0, | ||
369 | .dev = { | ||
370 | .platform_data = &cf0_data, | ||
371 | }, | ||
372 | .resource = cf0_resources, | ||
373 | .num_resources = ARRAY_SIZE(cf0_resources), | ||
374 | }; | ||
375 | |||
376 | static struct at91_cf_data cf1_data; | ||
377 | |||
378 | static struct resource cf1_resources[] = { | ||
379 | [0] = { | ||
380 | .start = AT91_CHIPSELECT_5, | ||
381 | .end = AT91_CHIPSELECT_5 + SZ_256M - 1, | ||
382 | .flags = IORESOURCE_MEM | IORESOURCE_MEM_8AND16BIT, | ||
383 | } | ||
384 | }; | ||
385 | |||
386 | static struct platform_device cf1_device = { | ||
387 | .id = 1, | ||
388 | .dev = { | ||
389 | .platform_data = &cf1_data, | ||
390 | }, | ||
391 | .resource = cf1_resources, | ||
392 | .num_resources = ARRAY_SIZE(cf1_resources), | ||
393 | }; | ||
394 | |||
395 | void __init at91_add_device_cf(struct at91_cf_data *data) | ||
396 | { | ||
397 | unsigned long ebi0_csa; | ||
398 | struct platform_device *pdev; | ||
399 | |||
400 | if (!data) | ||
401 | return; | ||
402 | |||
403 | /* | ||
404 | * assign CS4 or CS5 to SMC with Compact Flash logic support, | ||
405 | * we assume SMC timings are configured by board code, | ||
406 | * except True IDE where timings are controlled by driver | ||
407 | */ | ||
408 | ebi0_csa = at91_sys_read(AT91_MATRIX_EBI0CSA); | ||
409 | switch (data->chipselect) { | ||
410 | case 4: | ||
411 | at91_set_A_periph(AT91_PIN_PD6, 0); /* EBI0_NCS4/CFCS0 */ | ||
412 | ebi0_csa |= AT91_MATRIX_EBI0_CS4A_SMC_CF1; | ||
413 | cf0_data = *data; | ||
414 | pdev = &cf0_device; | ||
415 | break; | ||
416 | case 5: | ||
417 | at91_set_A_periph(AT91_PIN_PD7, 0); /* EBI0_NCS5/CFCS1 */ | ||
418 | ebi0_csa |= AT91_MATRIX_EBI0_CS5A_SMC_CF2; | ||
419 | cf1_data = *data; | ||
420 | pdev = &cf1_device; | ||
421 | break; | ||
422 | default: | ||
423 | printk(KERN_ERR "AT91 CF: bad chip-select requested (%u)\n", | ||
424 | data->chipselect); | ||
425 | return; | ||
426 | } | ||
427 | at91_sys_write(AT91_MATRIX_EBI0CSA, ebi0_csa); | ||
428 | |||
429 | if (data->det_pin) { | ||
430 | at91_set_gpio_input(data->det_pin, 1); | ||
431 | at91_set_deglitch(data->det_pin, 1); | ||
432 | } | ||
433 | |||
434 | if (data->irq_pin) { | ||
435 | at91_set_gpio_input(data->irq_pin, 1); | ||
436 | at91_set_deglitch(data->irq_pin, 1); | ||
437 | } | ||
438 | |||
439 | if (data->vcc_pin) | ||
440 | /* initially off */ | ||
441 | at91_set_gpio_output(data->vcc_pin, 0); | ||
442 | |||
443 | /* enable EBI controlled pins */ | ||
444 | at91_set_A_periph(AT91_PIN_PD5, 1); /* NWAIT */ | ||
445 | at91_set_A_periph(AT91_PIN_PD8, 0); /* CFCE1 */ | ||
446 | at91_set_A_periph(AT91_PIN_PD9, 0); /* CFCE2 */ | ||
447 | at91_set_A_periph(AT91_PIN_PD14, 0); /* CFNRW */ | ||
448 | |||
449 | pdev->name = (data->flags & AT91_CF_TRUE_IDE) ? "at91_ide" : "at91_cf"; | ||
450 | platform_device_register(pdev); | ||
451 | } | ||
452 | #else | ||
453 | void __init at91_add_device_cf(struct at91_cf_data *data) {} | ||
454 | #endif | ||
350 | 455 | ||
351 | /* -------------------------------------------------------------------- | 456 | /* -------------------------------------------------------------------- |
352 | * NAND / SmartMedia | 457 | * NAND / SmartMedia |
diff --git a/arch/arm/mach-at91/include/mach/board.h b/arch/arm/mach-at91/include/mach/board.h index 0b3ae21b4565..793fe7b25f36 100644 --- a/arch/arm/mach-at91/include/mach/board.h +++ b/arch/arm/mach-at91/include/mach/board.h | |||
@@ -56,6 +56,9 @@ struct at91_cf_data { | |||
56 | u8 vcc_pin; /* power switching */ | 56 | u8 vcc_pin; /* power switching */ |
57 | u8 rst_pin; /* card reset */ | 57 | u8 rst_pin; /* card reset */ |
58 | u8 chipselect; /* EBI Chip Select number */ | 58 | u8 chipselect; /* EBI Chip Select number */ |
59 | u8 flags; | ||
60 | #define AT91_CF_TRUE_IDE 0x01 | ||
61 | #define AT91_IDE_SWAP_A0_A2 0x02 | ||
59 | }; | 62 | }; |
60 | extern void __init at91_add_device_cf(struct at91_cf_data *data); | 63 | extern void __init at91_add_device_cf(struct at91_cf_data *data); |
61 | 64 | ||
diff --git a/arch/arm/mach-ep93xx/include/mach/platform.h b/arch/arm/mach-ep93xx/include/mach/platform.h index 88f7e88f152f..05f0f4f2f3ce 100644 --- a/arch/arm/mach-ep93xx/include/mach/platform.h +++ b/arch/arm/mach-ep93xx/include/mach/platform.h | |||
@@ -4,6 +4,8 @@ | |||
4 | 4 | ||
5 | #ifndef __ASSEMBLY__ | 5 | #ifndef __ASSEMBLY__ |
6 | 6 | ||
7 | struct i2c_board_info; | ||
8 | |||
7 | struct ep93xx_eth_data | 9 | struct ep93xx_eth_data |
8 | { | 10 | { |
9 | unsigned char dev_addr[6]; | 11 | unsigned char dev_addr[6]; |
diff --git a/arch/arm/mach-mx1/devices.c b/arch/arm/mach-mx1/devices.c index 686d8d2dbb24..a95644193f3f 100644 --- a/arch/arm/mach-mx1/devices.c +++ b/arch/arm/mach-mx1/devices.c | |||
@@ -23,6 +23,8 @@ | |||
23 | #include <linux/init.h> | 23 | #include <linux/init.h> |
24 | #include <linux/platform_device.h> | 24 | #include <linux/platform_device.h> |
25 | #include <linux/gpio.h> | 25 | #include <linux/gpio.h> |
26 | |||
27 | #include <mach/irqs.h> | ||
26 | #include <mach/hardware.h> | 28 | #include <mach/hardware.h> |
27 | 29 | ||
28 | static struct resource imx_csi_resources[] = { | 30 | static struct resource imx_csi_resources[] = { |
diff --git a/arch/arm/mach-mx1/mx1ads.c b/arch/arm/mach-mx1/mx1ads.c index 2e4b185fe4a9..3200cf60e384 100644 --- a/arch/arm/mach-mx1/mx1ads.c +++ b/arch/arm/mach-mx1/mx1ads.c | |||
@@ -21,6 +21,7 @@ | |||
21 | #include <asm/mach/arch.h> | 21 | #include <asm/mach/arch.h> |
22 | #include <asm/mach/time.h> | 22 | #include <asm/mach/time.h> |
23 | 23 | ||
24 | #include <mach/irqs.h> | ||
24 | #include <mach/hardware.h> | 25 | #include <mach/hardware.h> |
25 | #include <mach/common.h> | 26 | #include <mach/common.h> |
26 | #include <mach/imx-uart.h> | 27 | #include <mach/imx-uart.h> |
diff --git a/arch/arm/mach-omap2/board-ldp.c b/arch/arm/mach-omap2/board-ldp.c index f6a13451d1fd..6031e179926b 100644 --- a/arch/arm/mach-omap2/board-ldp.c +++ b/arch/arm/mach-omap2/board-ldp.c | |||
@@ -81,7 +81,7 @@ static inline void __init ldp_init_smc911x(void) | |||
81 | } | 81 | } |
82 | 82 | ||
83 | ldp_smc911x_resources[0].start = cs_mem_base + 0x0; | 83 | ldp_smc911x_resources[0].start = cs_mem_base + 0x0; |
84 | ldp_smc911x_resources[0].end = cs_mem_base + 0xf; | 84 | ldp_smc911x_resources[0].end = cs_mem_base + 0xff; |
85 | udelay(100); | 85 | udelay(100); |
86 | 86 | ||
87 | eth_gpio = LDP_SMC911X_GPIO; | 87 | eth_gpio = LDP_SMC911X_GPIO; |
diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c index 38c88fbe658d..e39cd2c46cfa 100644 --- a/arch/arm/mach-omap2/board-omap3beagle.c +++ b/arch/arm/mach-omap2/board-omap3beagle.c | |||
@@ -178,7 +178,9 @@ static int __init omap3_beagle_i2c_init(void) | |||
178 | #ifdef CONFIG_I2C2_OMAP_BEAGLE | 178 | #ifdef CONFIG_I2C2_OMAP_BEAGLE |
179 | omap_register_i2c_bus(2, 400, NULL, 0); | 179 | omap_register_i2c_bus(2, 400, NULL, 0); |
180 | #endif | 180 | #endif |
181 | omap_register_i2c_bus(3, 400, NULL, 0); | 181 | /* Bus 3 is attached to the DVI port where devices like the pico DLP |
182 | * projector don't work reliably with 400kHz */ | ||
183 | omap_register_i2c_bus(3, 100, NULL, 0); | ||
182 | return 0; | 184 | return 0; |
183 | } | 185 | } |
184 | 186 | ||
diff --git a/arch/arm/mach-orion5x/common.c b/arch/arm/mach-orion5x/common.c index 0a623379789f..8a0e49d84256 100644 --- a/arch/arm/mach-orion5x/common.c +++ b/arch/arm/mach-orion5x/common.c | |||
@@ -431,6 +431,10 @@ void __init orion5x_uart1_init(void) | |||
431 | /***************************************************************************** | 431 | /***************************************************************************** |
432 | * XOR engine | 432 | * XOR engine |
433 | ****************************************************************************/ | 433 | ****************************************************************************/ |
434 | struct mv_xor_platform_shared_data orion5x_xor_shared_data = { | ||
435 | .dram = &orion5x_mbus_dram_info, | ||
436 | }; | ||
437 | |||
434 | static struct resource orion5x_xor_shared_resources[] = { | 438 | static struct resource orion5x_xor_shared_resources[] = { |
435 | { | 439 | { |
436 | .name = "xor low", | 440 | .name = "xor low", |
@@ -448,6 +452,9 @@ static struct resource orion5x_xor_shared_resources[] = { | |||
448 | static struct platform_device orion5x_xor_shared = { | 452 | static struct platform_device orion5x_xor_shared = { |
449 | .name = MV_XOR_SHARED_NAME, | 453 | .name = MV_XOR_SHARED_NAME, |
450 | .id = 0, | 454 | .id = 0, |
455 | .dev = { | ||
456 | .platform_data = &orion5x_xor_shared_data, | ||
457 | }, | ||
451 | .num_resources = ARRAY_SIZE(orion5x_xor_shared_resources), | 458 | .num_resources = ARRAY_SIZE(orion5x_xor_shared_resources), |
452 | .resource = orion5x_xor_shared_resources, | 459 | .resource = orion5x_xor_shared_resources, |
453 | }; | 460 | }; |
diff --git a/arch/arm/mach-s3c6410/mach-smdk6410.c b/arch/arm/mach-s3c6410/mach-smdk6410.c index 3c4d47145c83..25f7935576f8 100644 --- a/arch/arm/mach-s3c6410/mach-smdk6410.c +++ b/arch/arm/mach-s3c6410/mach-smdk6410.c | |||
@@ -129,7 +129,7 @@ static struct s3c_fb_platdata smdk6410_lcd_pdata __initdata = { | |||
129 | .vidcon1 = VIDCON1_INV_HSYNC | VIDCON1_INV_VSYNC, | 129 | .vidcon1 = VIDCON1_INV_HSYNC | VIDCON1_INV_VSYNC, |
130 | }; | 130 | }; |
131 | 131 | ||
132 | struct map_desc smdk6410_iodesc[] = {}; | 132 | static struct map_desc smdk6410_iodesc[] = {}; |
133 | 133 | ||
134 | static struct platform_device *smdk6410_devices[] __initdata = { | 134 | static struct platform_device *smdk6410_devices[] __initdata = { |
135 | #ifdef CONFIG_SMDK6410_SD_CH0 | 135 | #ifdef CONFIG_SMDK6410_SD_CH0 |
@@ -146,7 +146,7 @@ static struct platform_device *smdk6410_devices[] __initdata = { | |||
146 | 146 | ||
147 | static struct i2c_board_info i2c_devs0[] __initdata = { | 147 | static struct i2c_board_info i2c_devs0[] __initdata = { |
148 | { I2C_BOARD_INFO("24c08", 0x50), }, | 148 | { I2C_BOARD_INFO("24c08", 0x50), }, |
149 | { I2C_BOARD_INFO("WM8580", 0X1b), }, | 149 | { I2C_BOARD_INFO("wm8580", 0x1b), }, |
150 | }; | 150 | }; |
151 | 151 | ||
152 | static struct i2c_board_info i2c_devs1[] __initdata = { | 152 | static struct i2c_board_info i2c_devs1[] __initdata = { |
diff --git a/arch/arm/mm/copypage-feroceon.c b/arch/arm/mm/copypage-feroceon.c index c3ba6a94da0c..70997d5bee2d 100644 --- a/arch/arm/mm/copypage-feroceon.c +++ b/arch/arm/mm/copypage-feroceon.c | |||
@@ -13,7 +13,7 @@ | |||
13 | #include <linux/init.h> | 13 | #include <linux/init.h> |
14 | #include <linux/highmem.h> | 14 | #include <linux/highmem.h> |
15 | 15 | ||
16 | static void __attribute__((naked)) | 16 | static void __naked |
17 | feroceon_copy_user_page(void *kto, const void *kfrom) | 17 | feroceon_copy_user_page(void *kto, const void *kfrom) |
18 | { | 18 | { |
19 | asm("\ | 19 | asm("\ |
diff --git a/arch/arm/mm/copypage-v3.c b/arch/arm/mm/copypage-v3.c index 70ed96c8af8e..de9c06854ad7 100644 --- a/arch/arm/mm/copypage-v3.c +++ b/arch/arm/mm/copypage-v3.c | |||
@@ -15,7 +15,7 @@ | |||
15 | * | 15 | * |
16 | * FIXME: do we need to handle cache stuff... | 16 | * FIXME: do we need to handle cache stuff... |
17 | */ | 17 | */ |
18 | static void __attribute__((naked)) | 18 | static void __naked |
19 | v3_copy_user_page(void *kto, const void *kfrom) | 19 | v3_copy_user_page(void *kto, const void *kfrom) |
20 | { | 20 | { |
21 | asm("\n\ | 21 | asm("\n\ |
diff --git a/arch/arm/mm/copypage-v4mc.c b/arch/arm/mm/copypage-v4mc.c index 1601698b9800..7370a7142b04 100644 --- a/arch/arm/mm/copypage-v4mc.c +++ b/arch/arm/mm/copypage-v4mc.c | |||
@@ -44,7 +44,7 @@ static DEFINE_SPINLOCK(minicache_lock); | |||
44 | * instruction. If your processor does not supply this, you have to write your | 44 | * instruction. If your processor does not supply this, you have to write your |
45 | * own copy_user_highpage that does the right thing. | 45 | * own copy_user_highpage that does the right thing. |
46 | */ | 46 | */ |
47 | static void __attribute__((naked)) | 47 | static void __naked |
48 | mc_copy_user_page(void *from, void *to) | 48 | mc_copy_user_page(void *from, void *to) |
49 | { | 49 | { |
50 | asm volatile( | 50 | asm volatile( |
diff --git a/arch/arm/mm/copypage-v4wb.c b/arch/arm/mm/copypage-v4wb.c index 3ec93dab7656..9ab098414227 100644 --- a/arch/arm/mm/copypage-v4wb.c +++ b/arch/arm/mm/copypage-v4wb.c | |||
@@ -22,7 +22,7 @@ | |||
22 | * instruction. If your processor does not supply this, you have to write your | 22 | * instruction. If your processor does not supply this, you have to write your |
23 | * own copy_user_highpage that does the right thing. | 23 | * own copy_user_highpage that does the right thing. |
24 | */ | 24 | */ |
25 | static void __attribute__((naked)) | 25 | static void __naked |
26 | v4wb_copy_user_page(void *kto, const void *kfrom) | 26 | v4wb_copy_user_page(void *kto, const void *kfrom) |
27 | { | 27 | { |
28 | asm("\ | 28 | asm("\ |
diff --git a/arch/arm/mm/copypage-v4wt.c b/arch/arm/mm/copypage-v4wt.c index 0f1188efae45..300efafd6643 100644 --- a/arch/arm/mm/copypage-v4wt.c +++ b/arch/arm/mm/copypage-v4wt.c | |||
@@ -20,7 +20,7 @@ | |||
20 | * dirty data in the cache. However, we do have to ensure that | 20 | * dirty data in the cache. However, we do have to ensure that |
21 | * subsequent reads are up to date. | 21 | * subsequent reads are up to date. |
22 | */ | 22 | */ |
23 | static void __attribute__((naked)) | 23 | static void __naked |
24 | v4wt_copy_user_page(void *kto, const void *kfrom) | 24 | v4wt_copy_user_page(void *kto, const void *kfrom) |
25 | { | 25 | { |
26 | asm("\ | 26 | asm("\ |
diff --git a/arch/arm/mm/copypage-xsc3.c b/arch/arm/mm/copypage-xsc3.c index 39a994542cad..bc4525f5ab23 100644 --- a/arch/arm/mm/copypage-xsc3.c +++ b/arch/arm/mm/copypage-xsc3.c | |||
@@ -29,7 +29,7 @@ | |||
29 | * if we eventually end up using our copied page. | 29 | * if we eventually end up using our copied page. |
30 | * | 30 | * |
31 | */ | 31 | */ |
32 | static void __attribute__((naked)) | 32 | static void __naked |
33 | xsc3_mc_copy_user_page(void *kto, const void *kfrom) | 33 | xsc3_mc_copy_user_page(void *kto, const void *kfrom) |
34 | { | 34 | { |
35 | asm("\ | 35 | asm("\ |
diff --git a/arch/arm/mm/copypage-xscale.c b/arch/arm/mm/copypage-xscale.c index d18f2397ee2d..76824d3e966a 100644 --- a/arch/arm/mm/copypage-xscale.c +++ b/arch/arm/mm/copypage-xscale.c | |||
@@ -42,7 +42,7 @@ static DEFINE_SPINLOCK(minicache_lock); | |||
42 | * Dcache aliasing issue. The writes will be forwarded to the write buffer, | 42 | * Dcache aliasing issue. The writes will be forwarded to the write buffer, |
43 | * and merged as appropriate. | 43 | * and merged as appropriate. |
44 | */ | 44 | */ |
45 | static void __attribute__((naked)) | 45 | static void __naked |
46 | mc_copy_user_page(void *from, void *to) | 46 | mc_copy_user_page(void *from, void *to) |
47 | { | 47 | { |
48 | /* | 48 | /* |
diff --git a/arch/arm/mm/dma-mapping.c b/arch/arm/mm/dma-mapping.c index 310e479309ef..f1ef5613ccd4 100644 --- a/arch/arm/mm/dma-mapping.c +++ b/arch/arm/mm/dma-mapping.c | |||
@@ -490,26 +490,30 @@ core_initcall(consistent_init); | |||
490 | */ | 490 | */ |
491 | void dma_cache_maint(const void *start, size_t size, int direction) | 491 | void dma_cache_maint(const void *start, size_t size, int direction) |
492 | { | 492 | { |
493 | const void *end = start + size; | 493 | void (*inner_op)(const void *, const void *); |
494 | void (*outer_op)(unsigned long, unsigned long); | ||
494 | 495 | ||
495 | BUG_ON(!virt_addr_valid(start) || !virt_addr_valid(end - 1)); | 496 | BUG_ON(!virt_addr_valid(start) || !virt_addr_valid(start + size - 1)); |
496 | 497 | ||
497 | switch (direction) { | 498 | switch (direction) { |
498 | case DMA_FROM_DEVICE: /* invalidate only */ | 499 | case DMA_FROM_DEVICE: /* invalidate only */ |
499 | dmac_inv_range(start, end); | 500 | inner_op = dmac_inv_range; |
500 | outer_inv_range(__pa(start), __pa(end)); | 501 | outer_op = outer_inv_range; |
501 | break; | 502 | break; |
502 | case DMA_TO_DEVICE: /* writeback only */ | 503 | case DMA_TO_DEVICE: /* writeback only */ |
503 | dmac_clean_range(start, end); | 504 | inner_op = dmac_clean_range; |
504 | outer_clean_range(__pa(start), __pa(end)); | 505 | outer_op = outer_clean_range; |
505 | break; | 506 | break; |
506 | case DMA_BIDIRECTIONAL: /* writeback and invalidate */ | 507 | case DMA_BIDIRECTIONAL: /* writeback and invalidate */ |
507 | dmac_flush_range(start, end); | 508 | inner_op = dmac_flush_range; |
508 | outer_flush_range(__pa(start), __pa(end)); | 509 | outer_op = outer_flush_range; |
509 | break; | 510 | break; |
510 | default: | 511 | default: |
511 | BUG(); | 512 | BUG(); |
512 | } | 513 | } |
514 | |||
515 | inner_op(start, start + size); | ||
516 | outer_op(__pa(start), __pa(start) + size); | ||
513 | } | 517 | } |
514 | EXPORT_SYMBOL(dma_cache_maint); | 518 | EXPORT_SYMBOL(dma_cache_maint); |
515 | 519 | ||
diff --git a/arch/arm/mm/init.c b/arch/arm/mm/init.c index 34df4d9d03a6..80fd3b69ae1f 100644 --- a/arch/arm/mm/init.c +++ b/arch/arm/mm/init.c | |||
@@ -382,7 +382,7 @@ void __init bootmem_init(void) | |||
382 | for_each_node(node) | 382 | for_each_node(node) |
383 | bootmem_free_node(node, mi); | 383 | bootmem_free_node(node, mi); |
384 | 384 | ||
385 | high_memory = __va(memend_pfn << PAGE_SHIFT); | 385 | high_memory = __va((memend_pfn << PAGE_SHIFT) - 1) + 1; |
386 | 386 | ||
387 | /* | 387 | /* |
388 | * This doesn't seem to be used by the Linux memory manager any | 388 | * This doesn't seem to be used by the Linux memory manager any |
diff --git a/arch/arm/mm/mmap.c b/arch/arm/mm/mmap.c index 5358fcc7f61e..f7457fea6de8 100644 --- a/arch/arm/mm/mmap.c +++ b/arch/arm/mm/mmap.c | |||
@@ -124,7 +124,7 @@ int valid_phys_addr_range(unsigned long addr, size_t size) | |||
124 | { | 124 | { |
125 | if (addr < PHYS_OFFSET) | 125 | if (addr < PHYS_OFFSET) |
126 | return 0; | 126 | return 0; |
127 | if (addr + size > __pa(high_memory)) | 127 | if (addr + size >= __pa(high_memory - 1)) |
128 | return 0; | 128 | return 0; |
129 | 129 | ||
130 | return 1; | 130 | return 1; |
diff --git a/arch/arm/plat-omap/Makefile b/arch/arm/plat-omap/Makefile index deaff58878a2..04a100cfb8e5 100644 --- a/arch/arm/plat-omap/Makefile +++ b/arch/arm/plat-omap/Makefile | |||
@@ -18,7 +18,8 @@ obj-$(CONFIG_CPU_FREQ) += cpu-omap.o | |||
18 | obj-$(CONFIG_OMAP_DM_TIMER) += dmtimer.o | 18 | obj-$(CONFIG_OMAP_DM_TIMER) += dmtimer.o |
19 | obj-$(CONFIG_OMAP_DEBUG_DEVICES) += debug-devices.o | 19 | obj-$(CONFIG_OMAP_DEBUG_DEVICES) += debug-devices.o |
20 | obj-$(CONFIG_OMAP_DEBUG_LEDS) += debug-leds.o | 20 | obj-$(CONFIG_OMAP_DEBUG_LEDS) += debug-leds.o |
21 | obj-$(CONFIG_I2C_OMAP) += i2c.o | 21 | i2c-omap-$(CONFIG_I2C_OMAP) := i2c.o |
22 | obj-y += $(i2c-omap-m) $(i2c-omap-y) | ||
22 | 23 | ||
23 | # OMAP mailbox framework | 24 | # OMAP mailbox framework |
24 | obj-$(CONFIG_OMAP_MBOX_FWK) += mailbox.o | 25 | obj-$(CONFIG_OMAP_MBOX_FWK) += mailbox.o |
diff --git a/arch/arm/plat-omap/common.c b/arch/arm/plat-omap/common.c index 0843b8882f93..6825fbb5a056 100644 --- a/arch/arm/plat-omap/common.c +++ b/arch/arm/plat-omap/common.c | |||
@@ -200,20 +200,16 @@ static struct clocksource clocksource_32k = { | |||
200 | }; | 200 | }; |
201 | 201 | ||
202 | /* | 202 | /* |
203 | * Rounds down to nearest nsec. | ||
204 | */ | ||
205 | unsigned long long omap_32k_ticks_to_nsecs(unsigned long ticks_32k) | ||
206 | { | ||
207 | return cyc2ns(&clocksource_32k, ticks_32k); | ||
208 | } | ||
209 | |||
210 | /* | ||
211 | * Returns current time from boot in nsecs. It's OK for this to wrap | 203 | * Returns current time from boot in nsecs. It's OK for this to wrap |
212 | * around for now, as it's just a relative time stamp. | 204 | * around for now, as it's just a relative time stamp. |
213 | */ | 205 | */ |
214 | unsigned long long sched_clock(void) | 206 | unsigned long long sched_clock(void) |
215 | { | 207 | { |
216 | return omap_32k_ticks_to_nsecs(omap_32k_read()); | 208 | unsigned long long ret; |
209 | |||
210 | ret = (unsigned long long)omap_32k_read(); | ||
211 | ret = (ret * clocksource_32k.mult_orig) >> clocksource_32k.shift; | ||
212 | return ret; | ||
217 | } | 213 | } |
218 | 214 | ||
219 | static int __init omap_init_clocksource_32k(void) | 215 | static int __init omap_init_clocksource_32k(void) |
diff --git a/arch/arm/plat-omap/include/mach/common.h b/arch/arm/plat-omap/include/mach/common.h index ef70e2b0f054..e746ec7e785e 100644 --- a/arch/arm/plat-omap/include/mach/common.h +++ b/arch/arm/plat-omap/include/mach/common.h | |||
@@ -35,7 +35,7 @@ extern void omap_map_common_io(void); | |||
35 | extern struct sys_timer omap_timer; | 35 | extern struct sys_timer omap_timer; |
36 | extern void omap_serial_init(void); | 36 | extern void omap_serial_init(void); |
37 | extern void omap_serial_enable_clocks(int enable); | 37 | extern void omap_serial_enable_clocks(int enable); |
38 | #ifdef CONFIG_I2C_OMAP | 38 | #if defined(CONFIG_I2C_OMAP) || defined(CONFIG_I2C_OMAP_MODULE) |
39 | extern int omap_register_i2c_bus(int bus_id, u32 clkrate, | 39 | extern int omap_register_i2c_bus(int bus_id, u32 clkrate, |
40 | struct i2c_board_info const *info, | 40 | struct i2c_board_info const *info, |
41 | unsigned len); | 41 | unsigned len); |
diff --git a/arch/arm/plat-omap/include/mach/pm.h b/arch/arm/plat-omap/include/mach/pm.h index 2a9c27ad4c37..37e2f0f38b46 100644 --- a/arch/arm/plat-omap/include/mach/pm.h +++ b/arch/arm/plat-omap/include/mach/pm.h | |||
@@ -108,7 +108,7 @@ | |||
108 | !defined(CONFIG_ARCH_OMAP15XX) && \ | 108 | !defined(CONFIG_ARCH_OMAP15XX) && \ |
109 | !defined(CONFIG_ARCH_OMAP16XX) && \ | 109 | !defined(CONFIG_ARCH_OMAP16XX) && \ |
110 | !defined(CONFIG_ARCH_OMAP24XX) | 110 | !defined(CONFIG_ARCH_OMAP24XX) |
111 | #error "Power management for this processor not implemented yet" | 111 | #warning "Power management for this processor not implemented yet" |
112 | #endif | 112 | #endif |
113 | 113 | ||
114 | #ifndef __ASSEMBLER__ | 114 | #ifndef __ASSEMBLER__ |
diff --git a/arch/arm/plat-s3c64xx/clock.c b/arch/arm/plat-s3c64xx/clock.c index 136c982c68e1..ad1b9682c9c3 100644 --- a/arch/arm/plat-s3c64xx/clock.c +++ b/arch/arm/plat-s3c64xx/clock.c | |||
@@ -248,7 +248,7 @@ static struct clk *clks[] __initdata = { | |||
248 | &clk_48m, | 248 | &clk_48m, |
249 | }; | 249 | }; |
250 | 250 | ||
251 | void s3c64xx_register_clocks(void) | 251 | void __init s3c64xx_register_clocks(void) |
252 | { | 252 | { |
253 | struct clk *clkp; | 253 | struct clk *clkp; |
254 | int ret; | 254 | int ret; |
diff --git a/arch/arm/plat-s3c64xx/gpiolib.c b/arch/arm/plat-s3c64xx/gpiolib.c index cc62941d7b5c..ee9188add8fb 100644 --- a/arch/arm/plat-s3c64xx/gpiolib.c +++ b/arch/arm/plat-s3c64xx/gpiolib.c | |||
@@ -417,4 +417,4 @@ static __init int s3c64xx_gpiolib_init(void) | |||
417 | return 0; | 417 | return 0; |
418 | } | 418 | } |
419 | 419 | ||
420 | arch_initcall(s3c64xx_gpiolib_init); | 420 | core_initcall(s3c64xx_gpiolib_init); |
diff --git a/arch/arm/plat-s3c64xx/include/plat/irqs.h b/arch/arm/plat-s3c64xx/include/plat/irqs.h index 2846f550b727..f865bf4d709e 100644 --- a/arch/arm/plat-s3c64xx/include/plat/irqs.h +++ b/arch/arm/plat-s3c64xx/include/plat/irqs.h | |||
@@ -117,7 +117,7 @@ | |||
117 | #define IRQ_ONENAND1 S3C64XX_IRQ_VIC1(12) | 117 | #define IRQ_ONENAND1 S3C64XX_IRQ_VIC1(12) |
118 | #define IRQ_NFC S3C64XX_IRQ_VIC1(13) | 118 | #define IRQ_NFC S3C64XX_IRQ_VIC1(13) |
119 | #define IRQ_CFCON S3C64XX_IRQ_VIC1(14) | 119 | #define IRQ_CFCON S3C64XX_IRQ_VIC1(14) |
120 | #define IRQ_UHOST S3C64XX_IRQ_VIC1(15) | 120 | #define IRQ_USBH S3C64XX_IRQ_VIC1(15) |
121 | #define IRQ_SPI0 S3C64XX_IRQ_VIC1(16) | 121 | #define IRQ_SPI0 S3C64XX_IRQ_VIC1(16) |
122 | #define IRQ_SPI1 S3C64XX_IRQ_VIC1(17) | 122 | #define IRQ_SPI1 S3C64XX_IRQ_VIC1(17) |
123 | #define IRQ_IIC S3C64XX_IRQ_VIC1(18) | 123 | #define IRQ_IIC S3C64XX_IRQ_VIC1(18) |
diff --git a/arch/arm/plat-s3c64xx/irq-eint.c b/arch/arm/plat-s3c64xx/irq-eint.c index ebb305ce7689..cf524826c93a 100644 --- a/arch/arm/plat-s3c64xx/irq-eint.c +++ b/arch/arm/plat-s3c64xx/irq-eint.c | |||
@@ -14,12 +14,15 @@ | |||
14 | 14 | ||
15 | #include <linux/kernel.h> | 15 | #include <linux/kernel.h> |
16 | #include <linux/interrupt.h> | 16 | #include <linux/interrupt.h> |
17 | #include <linux/gpio.h> | ||
17 | #include <linux/irq.h> | 18 | #include <linux/irq.h> |
18 | #include <linux/io.h> | 19 | #include <linux/io.h> |
19 | 20 | ||
20 | #include <asm/hardware/vic.h> | 21 | #include <asm/hardware/vic.h> |
21 | 22 | ||
22 | #include <plat/regs-irqtype.h> | 23 | #include <plat/regs-irqtype.h> |
24 | #include <plat/regs-gpio.h> | ||
25 | #include <plat/gpio-cfg.h> | ||
23 | 26 | ||
24 | #include <mach/map.h> | 27 | #include <mach/map.h> |
25 | #include <plat/cpu.h> | 28 | #include <plat/cpu.h> |
@@ -74,6 +77,7 @@ static void s3c_irq_eint_maskack(unsigned int irq) | |||
74 | static int s3c_irq_eint_set_type(unsigned int irq, unsigned int type) | 77 | static int s3c_irq_eint_set_type(unsigned int irq, unsigned int type) |
75 | { | 78 | { |
76 | int offs = eint_offset(irq); | 79 | int offs = eint_offset(irq); |
80 | int pin; | ||
77 | int shift; | 81 | int shift; |
78 | u32 ctrl, mask; | 82 | u32 ctrl, mask; |
79 | u32 newvalue = 0; | 83 | u32 newvalue = 0; |
@@ -125,6 +129,15 @@ static int s3c_irq_eint_set_type(unsigned int irq, unsigned int type) | |||
125 | ctrl |= newvalue << shift; | 129 | ctrl |= newvalue << shift; |
126 | __raw_writel(ctrl, reg); | 130 | __raw_writel(ctrl, reg); |
127 | 131 | ||
132 | /* set the GPIO pin appropriately */ | ||
133 | |||
134 | if (offs < 23) | ||
135 | pin = S3C64XX_GPN(offs); | ||
136 | else | ||
137 | pin = S3C64XX_GPM(offs - 23); | ||
138 | |||
139 | s3c_gpio_cfgpin(pin, S3C_GPIO_SFN(2)); | ||
140 | |||
128 | return 0; | 141 | return 0; |
129 | } | 142 | } |
130 | 143 | ||
@@ -181,7 +194,7 @@ static void s3c_irq_demux_eint20_27(unsigned int irq, struct irq_desc *desc) | |||
181 | s3c_irq_demux_eint(20, 27); | 194 | s3c_irq_demux_eint(20, 27); |
182 | } | 195 | } |
183 | 196 | ||
184 | int __init s3c64xx_init_irq_eint(void) | 197 | static int __init s3c64xx_init_irq_eint(void) |
185 | { | 198 | { |
186 | int irq; | 199 | int irq; |
187 | 200 | ||
diff --git a/arch/arm/plat-s3c64xx/irq.c b/arch/arm/plat-s3c64xx/irq.c index a94f1d5e819d..f22edf7c2d2d 100644 --- a/arch/arm/plat-s3c64xx/irq.c +++ b/arch/arm/plat-s3c64xx/irq.c | |||
@@ -207,7 +207,7 @@ static struct irq_chip s3c_irq_uart = { | |||
207 | 207 | ||
208 | static void __init s3c64xx_uart_irq(struct uart_irq *uirq) | 208 | static void __init s3c64xx_uart_irq(struct uart_irq *uirq) |
209 | { | 209 | { |
210 | void *reg_base = uirq->regs; | 210 | void __iomem *reg_base = uirq->regs; |
211 | unsigned int irq; | 211 | unsigned int irq; |
212 | int offs; | 212 | int offs; |
213 | 213 | ||
diff --git a/arch/arm/plat-s3c64xx/s3c6400-clock.c b/arch/arm/plat-s3c64xx/s3c6400-clock.c index 8d9a0cada668..05b17528041e 100644 --- a/arch/arm/plat-s3c64xx/s3c6400-clock.c +++ b/arch/arm/plat-s3c64xx/s3c6400-clock.c | |||
@@ -36,7 +36,7 @@ | |||
36 | * ext_xtal_mux for want of an actual name from the manual. | 36 | * ext_xtal_mux for want of an actual name from the manual. |
37 | */ | 37 | */ |
38 | 38 | ||
39 | struct clk clk_ext_xtal_mux = { | 39 | static struct clk clk_ext_xtal_mux = { |
40 | .name = "ext_xtal", | 40 | .name = "ext_xtal", |
41 | .id = -1, | 41 | .id = -1, |
42 | }; | 42 | }; |
@@ -63,7 +63,7 @@ struct clksrc_clk { | |||
63 | void __iomem *reg_divider; | 63 | void __iomem *reg_divider; |
64 | }; | 64 | }; |
65 | 65 | ||
66 | struct clk clk_fout_apll = { | 66 | static struct clk clk_fout_apll = { |
67 | .name = "fout_apll", | 67 | .name = "fout_apll", |
68 | .id = -1, | 68 | .id = -1, |
69 | }; | 69 | }; |
@@ -78,7 +78,7 @@ static struct clk_sources clk_src_apll = { | |||
78 | .nr_sources = ARRAY_SIZE(clk_src_apll_list), | 78 | .nr_sources = ARRAY_SIZE(clk_src_apll_list), |
79 | }; | 79 | }; |
80 | 80 | ||
81 | struct clksrc_clk clk_mout_apll = { | 81 | static struct clksrc_clk clk_mout_apll = { |
82 | .clk = { | 82 | .clk = { |
83 | .name = "mout_apll", | 83 | .name = "mout_apll", |
84 | .id = -1, | 84 | .id = -1, |
@@ -88,7 +88,7 @@ struct clksrc_clk clk_mout_apll = { | |||
88 | .sources = &clk_src_apll, | 88 | .sources = &clk_src_apll, |
89 | }; | 89 | }; |
90 | 90 | ||
91 | struct clk clk_fout_epll = { | 91 | static struct clk clk_fout_epll = { |
92 | .name = "fout_epll", | 92 | .name = "fout_epll", |
93 | .id = -1, | 93 | .id = -1, |
94 | }; | 94 | }; |
@@ -103,7 +103,7 @@ static struct clk_sources clk_src_epll = { | |||
103 | .nr_sources = ARRAY_SIZE(clk_src_epll_list), | 103 | .nr_sources = ARRAY_SIZE(clk_src_epll_list), |
104 | }; | 104 | }; |
105 | 105 | ||
106 | struct clksrc_clk clk_mout_epll = { | 106 | static struct clksrc_clk clk_mout_epll = { |
107 | .clk = { | 107 | .clk = { |
108 | .name = "mout_epll", | 108 | .name = "mout_epll", |
109 | .id = -1, | 109 | .id = -1, |
@@ -123,7 +123,7 @@ static struct clk_sources clk_src_mpll = { | |||
123 | .nr_sources = ARRAY_SIZE(clk_src_mpll_list), | 123 | .nr_sources = ARRAY_SIZE(clk_src_mpll_list), |
124 | }; | 124 | }; |
125 | 125 | ||
126 | struct clksrc_clk clk_mout_mpll = { | 126 | static struct clksrc_clk clk_mout_mpll = { |
127 | .clk = { | 127 | .clk = { |
128 | .name = "mout_mpll", | 128 | .name = "mout_mpll", |
129 | .id = -1, | 129 | .id = -1, |
@@ -145,7 +145,7 @@ static unsigned long s3c64xx_clk_doutmpll_get_rate(struct clk *clk) | |||
145 | return rate; | 145 | return rate; |
146 | } | 146 | } |
147 | 147 | ||
148 | struct clk clk_dout_mpll = { | 148 | static struct clk clk_dout_mpll = { |
149 | .name = "dout_mpll", | 149 | .name = "dout_mpll", |
150 | .id = -1, | 150 | .id = -1, |
151 | .parent = &clk_mout_mpll.clk, | 151 | .parent = &clk_mout_mpll.clk, |
@@ -189,10 +189,10 @@ static struct clk_sources clkset_uart = { | |||
189 | }; | 189 | }; |
190 | 190 | ||
191 | static struct clk *clkset_uhost_list[] = { | 191 | static struct clk *clkset_uhost_list[] = { |
192 | &clk_48m, | ||
192 | &clk_mout_epll.clk, | 193 | &clk_mout_epll.clk, |
193 | &clk_dout_mpll, | 194 | &clk_dout_mpll, |
194 | &clk_fin_epll, | 195 | &clk_fin_epll, |
195 | &clk_48m, | ||
196 | }; | 196 | }; |
197 | 197 | ||
198 | static struct clk_sources clkset_uhost = { | 198 | static struct clk_sources clkset_uhost = { |
@@ -239,10 +239,12 @@ static int s3c64xx_setrate_clksrc(struct clk *clk, unsigned long rate) | |||
239 | 239 | ||
240 | rate = clk_round_rate(clk, rate); | 240 | rate = clk_round_rate(clk, rate); |
241 | div = clk_get_rate(clk->parent) / rate; | 241 | div = clk_get_rate(clk->parent) / rate; |
242 | if (div > 16) | ||
243 | return -EINVAL; | ||
242 | 244 | ||
243 | val = __raw_readl(reg); | 245 | val = __raw_readl(reg); |
244 | val &= ~sclk->mask; | 246 | val &= ~(0xf << sclk->shift); |
245 | val |= (rate - 1) << sclk->shift; | 247 | val |= (div - 1) << sclk->shift; |
246 | __raw_writel(val, reg); | 248 | __raw_writel(val, reg); |
247 | 249 | ||
248 | return 0; | 250 | return 0; |
@@ -351,7 +353,7 @@ static struct clksrc_clk clk_mmc2 = { | |||
351 | 353 | ||
352 | static struct clksrc_clk clk_usbhost = { | 354 | static struct clksrc_clk clk_usbhost = { |
353 | .clk = { | 355 | .clk = { |
354 | .name = "usb-host-bus", | 356 | .name = "usb-bus-host", |
355 | .id = -1, | 357 | .id = -1, |
356 | .ctrlbit = S3C_CLKCON_SCLK_UHOST, | 358 | .ctrlbit = S3C_CLKCON_SCLK_UHOST, |
357 | .enable = s3c64xx_sclk_ctrl, | 359 | .enable = s3c64xx_sclk_ctrl, |
diff --git a/arch/arm/tools/mach-types b/arch/arm/tools/mach-types index fd23c0e9e698..b4211d8b2ac7 100644 --- a/arch/arm/tools/mach-types +++ b/arch/arm/tools/mach-types | |||
@@ -12,7 +12,7 @@ | |||
12 | # | 12 | # |
13 | # http://www.arm.linux.org.uk/developer/machines/?action=new | 13 | # http://www.arm.linux.org.uk/developer/machines/?action=new |
14 | # | 14 | # |
15 | # Last update: Sun Nov 30 16:39:36 2008 | 15 | # Last update: Thu Mar 12 18:01:45 2009 |
16 | # | 16 | # |
17 | # machine_is_xxx CONFIG_xxxx MACH_TYPE_xxx number | 17 | # machine_is_xxx CONFIG_xxxx MACH_TYPE_xxx number |
18 | # | 18 | # |
@@ -1811,7 +1811,7 @@ pilz_pmi5 MACH_PILZ_PMI5 PILZ_PMI5 1820 | |||
1811 | jade MACH_JADE JADE 1821 | 1811 | jade MACH_JADE JADE 1821 |
1812 | ks8695_softplc MACH_KS8695_SOFTPLC KS8695_SOFTPLC 1822 | 1812 | ks8695_softplc MACH_KS8695_SOFTPLC KS8695_SOFTPLC 1822 |
1813 | gprisc3 MACH_GPRISC3 GPRISC3 1823 | 1813 | gprisc3 MACH_GPRISC3 GPRISC3 1823 |
1814 | stamp9260 MACH_STAMP9260 STAMP9260 1824 | 1814 | stamp9g20 MACH_STAMP9G20 STAMP9G20 1824 |
1815 | smdk6430 MACH_SMDK6430 SMDK6430 1825 | 1815 | smdk6430 MACH_SMDK6430 SMDK6430 1825 |
1816 | smdkc100 MACH_SMDKC100 SMDKC100 1826 | 1816 | smdkc100 MACH_SMDKC100 SMDKC100 1826 |
1817 | tavorevb MACH_TAVOREVB TAVOREVB 1827 | 1817 | tavorevb MACH_TAVOREVB TAVOREVB 1827 |
@@ -1993,4 +1993,134 @@ spark MACH_SPARK SPARK 2002 | |||
1993 | benzina MACH_BENZINA BENZINA 2003 | 1993 | benzina MACH_BENZINA BENZINA 2003 |
1994 | blaze MACH_BLAZE BLAZE 2004 | 1994 | blaze MACH_BLAZE BLAZE 2004 |
1995 | linkstation_ls_hgl MACH_LINKSTATION_LS_HGL LINKSTATION_LS_HGL 2005 | 1995 | linkstation_ls_hgl MACH_LINKSTATION_LS_HGL LINKSTATION_LS_HGL 2005 |
1996 | htcvenus MACH_HTCVENUS HTCVENUS 2006 | 1996 | htckovsky MACH_HTCVENUS HTCVENUS 2006 |
1997 | sony_prs505 MACH_SONY_PRS505 SONY_PRS505 2007 | ||
1998 | hanlin_v3 MACH_HANLIN_V3 HANLIN_V3 2008 | ||
1999 | sapphira MACH_SAPPHIRA SAPPHIRA 2009 | ||
2000 | dack_sda_01 MACH_DACK_SDA_01 DACK_SDA_01 2010 | ||
2001 | armbox MACH_ARMBOX ARMBOX 2011 | ||
2002 | harris_rvp MACH_HARRIS_RVP HARRIS_RVP 2012 | ||
2003 | ribaldo MACH_RIBALDO RIBALDO 2013 | ||
2004 | agora MACH_AGORA AGORA 2014 | ||
2005 | omap3_mini MACH_OMAP3_MINI OMAP3_MINI 2015 | ||
2006 | a9sam6432_b MACH_A9SAM6432_B A9SAM6432_B 2016 | ||
2007 | usg2410 MACH_USG2410 USG2410 2017 | ||
2008 | pc72052_i10_revb MACH_PC72052_I10_REVB PC72052_I10_REVB 2018 | ||
2009 | mx35_exm32 MACH_MX35_EXM32 MX35_EXM32 2019 | ||
2010 | topas910 MACH_TOPAS910 TOPAS910 2020 | ||
2011 | hyena MACH_HYENA HYENA 2021 | ||
2012 | pospax MACH_POSPAX POSPAX 2022 | ||
2013 | hdl_gx MACH_HDL_GX HDL_GX 2023 | ||
2014 | ctera_4bay MACH_CTERA_4BAY CTERA_4BAY 2024 | ||
2015 | ctera_plug_c MACH_CTERA_PLUG_C CTERA_PLUG_C 2025 | ||
2016 | crwea_plug_i MACH_CRWEA_PLUG_I CRWEA_PLUG_I 2026 | ||
2017 | egauge2 MACH_EGAUGE2 EGAUGE2 2027 | ||
2018 | didj MACH_DIDJ DIDJ 2028 | ||
2019 | m_s3c2443 MACH_MEISTER MEISTER 2029 | ||
2020 | htcblackstone MACH_HTCBLACKSTONE HTCBLACKSTONE 2030 | ||
2021 | cpuat9g20 MACH_CPUAT9G20 CPUAT9G20 2031 | ||
2022 | smdk6440 MACH_SMDK6440 SMDK6440 2032 | ||
2023 | omap_35xx_mvp MACH_OMAP_35XX_MVP OMAP_35XX_MVP 2033 | ||
2024 | ctera_plug_i MACH_CTERA_PLUG_I CTERA_PLUG_I 2034 | ||
2025 | pvg610_100 MACH_PVG610 PVG610 2035 | ||
2026 | hprw6815 MACH_HPRW6815 HPRW6815 2036 | ||
2027 | omap3_oswald MACH_OMAP3_OSWALD OMAP3_OSWALD 2037 | ||
2028 | nas4220b MACH_NAS4220B NAS4220B 2038 | ||
2029 | htcraphael_cdma MACH_HTCRAPHAEL_CDMA HTCRAPHAEL_CDMA 2039 | ||
2030 | htcdiamond_cdma MACH_HTCDIAMOND_CDMA HTCDIAMOND_CDMA 2040 | ||
2031 | scaler MACH_SCALER SCALER 2041 | ||
2032 | zylonite2 MACH_ZYLONITE2 ZYLONITE2 2042 | ||
2033 | aspenite MACH_ASPENITE ASPENITE 2043 | ||
2034 | teton MACH_TETON TETON 2044 | ||
2035 | ttc_dkb MACH_TTC_DKB TTC_DKB 2045 | ||
2036 | bishop2 MACH_BISHOP2 BISHOP2 2046 | ||
2037 | ippv5 MACH_IPPV5 IPPV5 2047 | ||
2038 | farm926 MACH_FARM926 FARM926 2048 | ||
2039 | mmccpu MACH_MMCCPU MMCCPU 2049 | ||
2040 | sgmsfl MACH_SGMSFL SGMSFL 2050 | ||
2041 | tt8000 MACH_TT8000 TT8000 2051 | ||
2042 | zrn4300lp MACH_ZRN4300LP ZRN4300LP 2052 | ||
2043 | mptc MACH_MPTC MPTC 2053 | ||
2044 | h6051 MACH_H6051 H6051 2054 | ||
2045 | pvg610_101 MACH_PVG610_101 PVG610_101 2055 | ||
2046 | stamp9261_pc_evb MACH_STAMP9261_PC_EVB STAMP9261_PC_EVB 2056 | ||
2047 | pelco_odysseus MACH_PELCO_ODYSSEUS PELCO_ODYSSEUS 2057 | ||
2048 | tny_a9260 MACH_TNY_A9260 TNY_A9260 2058 | ||
2049 | tny_a9g20 MACH_TNY_A9G20 TNY_A9G20 2059 | ||
2050 | aesop_mp2530f MACH_AESOP_MP2530F AESOP_MP2530F 2060 | ||
2051 | dx900 MACH_DX900 DX900 2061 | ||
2052 | cpodc2 MACH_CPODC2 CPODC2 2062 | ||
2053 | tilt_8925 MACH_TILT_8925 TILT_8925 2063 | ||
2054 | davinci_dm357_evm MACH_DAVINCI_DM357_EVM DAVINCI_DM357_EVM 2064 | ||
2055 | swordfish MACH_SWORDFISH SWORDFISH 2065 | ||
2056 | corvus MACH_CORVUS CORVUS 2066 | ||
2057 | taurus MACH_TAURUS TAURUS 2067 | ||
2058 | axm MACH_AXM AXM 2068 | ||
2059 | axc MACH_AXC AXC 2069 | ||
2060 | baby MACH_BABY BABY 2070 | ||
2061 | mp200 MACH_MP200 MP200 2071 | ||
2062 | pcm043 MACH_PCM043 PCM043 2072 | ||
2063 | hanlin_v3c MACH_HANLIN_V3C HANLIN_V3C 2073 | ||
2064 | kbk9g20 MACH_KBK9G20 KBK9G20 2074 | ||
2065 | adsturbog5 MACH_ADSTURBOG5 ADSTURBOG5 2075 | ||
2066 | avenger_lite1 MACH_AVENGER_LITE1 AVENGER_LITE1 2076 | ||
2067 | suc82x MACH_SUC SUC 2077 | ||
2068 | at91sam7s256 MACH_AT91SAM7S256 AT91SAM7S256 2078 | ||
2069 | mendoza MACH_MENDOZA MENDOZA 2079 | ||
2070 | kira MACH_KIRA KIRA 2080 | ||
2071 | mx1hbm MACH_MX1HBM MX1HBM 2081 | ||
2072 | quatro43xx MACH_QUATRO43XX QUATRO43XX 2082 | ||
2073 | quatro4230 MACH_QUATRO4230 QUATRO4230 2083 | ||
2074 | nsb400 MACH_NSB400 NSB400 2084 | ||
2075 | drp255 MACH_DRP255 DRP255 2085 | ||
2076 | thoth MACH_THOTH THOTH 2086 | ||
2077 | firestone MACH_FIRESTONE FIRESTONE 2087 | ||
2078 | asusp750 MACH_ASUSP750 ASUSP750 2088 | ||
2079 | ctera_dl MACH_CTERA_DL CTERA_DL 2089 | ||
2080 | socr MACH_SOCR SOCR 2090 | ||
2081 | htcoxygen MACH_HTCOXYGEN HTCOXYGEN 2091 | ||
2082 | heroc MACH_HEROC HEROC 2092 | ||
2083 | zeno6800 MACH_ZENO6800 ZENO6800 2093 | ||
2084 | sc2mcs MACH_SC2MCS SC2MCS 2094 | ||
2085 | gene100 MACH_GENE100 GENE100 2095 | ||
2086 | as353x MACH_AS353X AS353X 2096 | ||
2087 | sheevaplug MACH_SHEEVAPLUG SHEEVAPLUG 2097 | ||
2088 | at91sam9g20 MACH_AT91SAM9G20 AT91SAM9G20 2098 | ||
2089 | mv88f6192gtw_fe MACH_MV88F6192GTW_FE MV88F6192GTW_FE 2099 | ||
2090 | cc9200 MACH_CC9200 CC9200 2100 | ||
2091 | sm9200 MACH_SM9200 SM9200 2101 | ||
2092 | tp9200 MACH_TP9200 TP9200 2102 | ||
2093 | snapperdv MACH_SNAPPERDV SNAPPERDV 2103 | ||
2094 | avengers_lite MACH_AVENGERS_LITE AVENGERS_LITE 2104 | ||
2095 | avengers_lite1 MACH_AVENGERS_LITE1 AVENGERS_LITE1 2105 | ||
2096 | omap3axon MACH_OMAP3AXON OMAP3AXON 2106 | ||
2097 | ma8xx MACH_MA8XX MA8XX 2107 | ||
2098 | mp201ek MACH_MP201EK MP201EK 2108 | ||
2099 | davinci_tux MACH_DAVINCI_TUX DAVINCI_TUX 2109 | ||
2100 | mpa1600 MACH_MPA1600 MPA1600 2110 | ||
2101 | pelco_troy MACH_PELCO_TROY PELCO_TROY 2111 | ||
2102 | nsb667 MACH_NSB667 NSB667 2112 | ||
2103 | rovers5_4mpix MACH_ROVERS5_4MPIX ROVERS5_4MPIX 2113 | ||
2104 | twocom MACH_TWOCOM TWOCOM 2114 | ||
2105 | ubisys_p9_rcu3r2 MACH_UBISYS_P9_RCU3R2 UBISYS_P9_RCU3R2 2115 | ||
2106 | hero_espresso MACH_HERO_ESPRESSO HERO_ESPRESSO 2116 | ||
2107 | afeusb MACH_AFEUSB AFEUSB 2117 | ||
2108 | t830 MACH_T830 T830 2118 | ||
2109 | spd8020_cc MACH_SPD8020_CC SPD8020_CC 2119 | ||
2110 | om_3d7k MACH_OM_3D7K OM_3D7K 2120 | ||
2111 | picocom2 MACH_PICOCOM2 PICOCOM2 2121 | ||
2112 | uwg4mx27 MACH_UWG4MX27 UWG4MX27 2122 | ||
2113 | uwg4mx31 MACH_UWG4MX31 UWG4MX31 2123 | ||
2114 | cherry MACH_CHERRY CHERRY 2124 | ||
2115 | mx51_babbage MACH_MX51_BABBAGE MX51_BABBAGE 2125 | ||
2116 | s3c2440turkiye MACH_S3C2440TURKIYE S3C2440TURKIYE 2126 | ||
2117 | tx37 MACH_TX37 TX37 2127 | ||
2118 | sbc2800_9g20 MACH_SBC2800_9G20 SBC2800_9G20 2128 | ||
2119 | benzglb MACH_BENZGLB BENZGLB 2129 | ||
2120 | benztd MACH_BENZTD BENZTD 2130 | ||
2121 | cartesio_plus MACH_CARTESIO_PLUS CARTESIO_PLUS 2131 | ||
2122 | solrad_g20 MACH_SOLRAD_G20 SOLRAD_G20 2132 | ||
2123 | mx27wallace MACH_MX27WALLACE MX27WALLACE 2133 | ||
2124 | fmzwebmodul MACH_FMZWEBMODUL FMZWEBMODUL 2134 | ||
2125 | rd78x00_masa MACH_RD78X00_MASA RD78X00_MASA 2135 | ||
2126 | smallogger MACH_SMALLOGGER SMALLOGGER 2136 | ||
diff --git a/arch/blackfin/Kconfig b/arch/blackfin/Kconfig index 8f1f97d56e1e..0c1f86e3e44a 100644 --- a/arch/blackfin/Kconfig +++ b/arch/blackfin/Kconfig | |||
@@ -1129,6 +1129,7 @@ endchoice | |||
1129 | 1129 | ||
1130 | config PM_WAKEUP_BY_GPIO | 1130 | config PM_WAKEUP_BY_GPIO |
1131 | bool "Allow Wakeup from Standby by GPIO" | 1131 | bool "Allow Wakeup from Standby by GPIO" |
1132 | depends on PM && !BF54x | ||
1132 | 1133 | ||
1133 | config PM_WAKEUP_GPIO_NUMBER | 1134 | config PM_WAKEUP_GPIO_NUMBER |
1134 | int "GPIO number" | 1135 | int "GPIO number" |
@@ -1168,6 +1169,12 @@ config PM_BFIN_WAKE_GP | |||
1168 | default n | 1169 | default n |
1169 | help | 1170 | help |
1170 | Enable General-Purpose Wake-Up (Voltage Regulator Power-Up) | 1171 | Enable General-Purpose Wake-Up (Voltage Regulator Power-Up) |
1172 | (all processors, except ADSP-BF549). This option sets | ||
1173 | the general-purpose wake-up enable (GPWE) control bit to enable | ||
1174 | wake-up upon detection of an active low signal on the /GPW (PH7) pin. | ||
1175 | On ADSP-BF549 this option enables the the same functionality on the | ||
1176 | /MRXON pin also PH7. | ||
1177 | |||
1171 | endmenu | 1178 | endmenu |
1172 | 1179 | ||
1173 | menu "CPU Frequency scaling" | 1180 | menu "CPU Frequency scaling" |
diff --git a/arch/blackfin/Kconfig.debug b/arch/blackfin/Kconfig.debug index 5f981d9ca625..79e7e63ab709 100644 --- a/arch/blackfin/Kconfig.debug +++ b/arch/blackfin/Kconfig.debug | |||
@@ -21,12 +21,6 @@ config DEBUG_STACK_USAGE | |||
21 | config HAVE_ARCH_KGDB | 21 | config HAVE_ARCH_KGDB |
22 | def_bool y | 22 | def_bool y |
23 | 23 | ||
24 | config KGDB_TESTCASE | ||
25 | tristate "KGDB: for test case in expect" | ||
26 | default n | ||
27 | help | ||
28 | This is a kgdb test case for automated testing. | ||
29 | |||
30 | config DEBUG_VERBOSE | 24 | config DEBUG_VERBOSE |
31 | bool "Verbose fault messages" | 25 | bool "Verbose fault messages" |
32 | default y | 26 | default y |
diff --git a/arch/blackfin/configs/BF518F-EZBRD_defconfig b/arch/blackfin/configs/BF518F-EZBRD_defconfig index 4fdb9e04759f..281f4b60e603 100644 --- a/arch/blackfin/configs/BF518F-EZBRD_defconfig +++ b/arch/blackfin/configs/BF518F-EZBRD_defconfig | |||
@@ -1,7 +1,7 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.28-rc2 | 3 | # Linux kernel version: 2.6.28 |
4 | # Fri Jan 9 17:58:41 2009 | 4 | # Fri Feb 20 10:01:44 2009 |
5 | # | 5 | # |
6 | # CONFIG_MMU is not set | 6 | # CONFIG_MMU is not set |
7 | # CONFIG_FPU is not set | 7 | # CONFIG_FPU is not set |
@@ -133,10 +133,15 @@ CONFIG_BF518=y | |||
133 | # CONFIG_BF538 is not set | 133 | # CONFIG_BF538 is not set |
134 | # CONFIG_BF539 is not set | 134 | # CONFIG_BF539 is not set |
135 | # CONFIG_BF542 is not set | 135 | # CONFIG_BF542 is not set |
136 | # CONFIG_BF542M is not set | ||
136 | # CONFIG_BF544 is not set | 137 | # CONFIG_BF544 is not set |
138 | # CONFIG_BF544M is not set | ||
137 | # CONFIG_BF547 is not set | 139 | # CONFIG_BF547 is not set |
140 | # CONFIG_BF547M is not set | ||
138 | # CONFIG_BF548 is not set | 141 | # CONFIG_BF548 is not set |
142 | # CONFIG_BF548M is not set | ||
139 | # CONFIG_BF549 is not set | 143 | # CONFIG_BF549 is not set |
144 | # CONFIG_BF549M is not set | ||
140 | # CONFIG_BF561 is not set | 145 | # CONFIG_BF561 is not set |
141 | CONFIG_BF_REV_MIN=0 | 146 | CONFIG_BF_REV_MIN=0 |
142 | CONFIG_BF_REV_MAX=2 | 147 | CONFIG_BF_REV_MAX=2 |
@@ -426,7 +431,17 @@ CONFIG_DEFAULT_TCP_CONG="cubic" | |||
426 | # CONFIG_TIPC is not set | 431 | # CONFIG_TIPC is not set |
427 | # CONFIG_ATM is not set | 432 | # CONFIG_ATM is not set |
428 | # CONFIG_BRIDGE is not set | 433 | # CONFIG_BRIDGE is not set |
429 | # CONFIG_NET_DSA is not set | 434 | CONFIG_NET_DSA=y |
435 | # CONFIG_NET_DSA_TAG_DSA is not set | ||
436 | # CONFIG_NET_DSA_TAG_EDSA is not set | ||
437 | # CONFIG_NET_DSA_TAG_TRAILER is not set | ||
438 | CONFIG_NET_DSA_TAG_STPID=y | ||
439 | # CONFIG_NET_DSA_MV88E6XXX is not set | ||
440 | # CONFIG_NET_DSA_MV88E6060 is not set | ||
441 | # CONFIG_NET_DSA_MV88E6XXX_NEED_PPU is not set | ||
442 | # CONFIG_NET_DSA_MV88E6131 is not set | ||
443 | # CONFIG_NET_DSA_MV88E6123_61_65 is not set | ||
444 | CONFIG_NET_DSA_KSZ8893M=y | ||
430 | # CONFIG_VLAN_8021Q is not set | 445 | # CONFIG_VLAN_8021Q is not set |
431 | # CONFIG_DECNET is not set | 446 | # CONFIG_DECNET is not set |
432 | # CONFIG_LLC2 is not set | 447 | # CONFIG_LLC2 is not set |
@@ -529,6 +544,8 @@ CONFIG_MTD_COMPLEX_MAPPINGS=y | |||
529 | # | 544 | # |
530 | # Self-contained MTD device drivers | 545 | # Self-contained MTD device drivers |
531 | # | 546 | # |
547 | # CONFIG_MTD_DATAFLASH is not set | ||
548 | # CONFIG_MTD_M25P80 is not set | ||
532 | # CONFIG_MTD_SLRAM is not set | 549 | # CONFIG_MTD_SLRAM is not set |
533 | # CONFIG_MTD_PHRAM is not set | 550 | # CONFIG_MTD_PHRAM is not set |
534 | # CONFIG_MTD_MTDRAM is not set | 551 | # CONFIG_MTD_MTDRAM is not set |
@@ -561,7 +578,9 @@ CONFIG_BLK_DEV_RAM_SIZE=4096 | |||
561 | # CONFIG_BLK_DEV_HD is not set | 578 | # CONFIG_BLK_DEV_HD is not set |
562 | CONFIG_MISC_DEVICES=y | 579 | CONFIG_MISC_DEVICES=y |
563 | # CONFIG_EEPROM_93CX6 is not set | 580 | # CONFIG_EEPROM_93CX6 is not set |
581 | # CONFIG_ICS932S401 is not set | ||
564 | # CONFIG_ENCLOSURE_SERVICES is not set | 582 | # CONFIG_ENCLOSURE_SERVICES is not set |
583 | # CONFIG_C2PORT is not set | ||
565 | CONFIG_HAVE_IDE=y | 584 | CONFIG_HAVE_IDE=y |
566 | # CONFIG_IDE is not set | 585 | # CONFIG_IDE is not set |
567 | 586 | ||
@@ -607,6 +626,7 @@ CONFIG_BFIN_RX_DESC_NUM=20 | |||
607 | # CONFIG_SMC91X is not set | 626 | # CONFIG_SMC91X is not set |
608 | # CONFIG_SMSC911X is not set | 627 | # CONFIG_SMSC911X is not set |
609 | # CONFIG_DM9000 is not set | 628 | # CONFIG_DM9000 is not set |
629 | # CONFIG_ENC28J60 is not set | ||
610 | # CONFIG_IBM_NEW_EMAC_ZMII is not set | 630 | # CONFIG_IBM_NEW_EMAC_ZMII is not set |
611 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | 631 | # CONFIG_IBM_NEW_EMAC_RGMII is not set |
612 | # CONFIG_IBM_NEW_EMAC_TAH is not set | 632 | # CONFIG_IBM_NEW_EMAC_TAH is not set |
@@ -764,7 +784,23 @@ CONFIG_I2C_BLACKFIN_TWI_CLK_KHZ=100 | |||
764 | # CONFIG_I2C_DEBUG_ALGO is not set | 784 | # CONFIG_I2C_DEBUG_ALGO is not set |
765 | # CONFIG_I2C_DEBUG_BUS is not set | 785 | # CONFIG_I2C_DEBUG_BUS is not set |
766 | # CONFIG_I2C_DEBUG_CHIP is not set | 786 | # CONFIG_I2C_DEBUG_CHIP is not set |
767 | # CONFIG_SPI is not set | 787 | CONFIG_SPI=y |
788 | # CONFIG_SPI_DEBUG is not set | ||
789 | CONFIG_SPI_MASTER=y | ||
790 | |||
791 | # | ||
792 | # SPI Master Controller Drivers | ||
793 | # | ||
794 | CONFIG_SPI_BFIN=y | ||
795 | # CONFIG_SPI_BFIN_LOCK is not set | ||
796 | # CONFIG_SPI_BITBANG is not set | ||
797 | |||
798 | # | ||
799 | # SPI Protocol Masters | ||
800 | # | ||
801 | # CONFIG_SPI_AT25 is not set | ||
802 | # CONFIG_SPI_SPIDEV is not set | ||
803 | # CONFIG_SPI_TLE62X0 is not set | ||
768 | CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y | 804 | CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y |
769 | # CONFIG_GPIOLIB is not set | 805 | # CONFIG_GPIOLIB is not set |
770 | # CONFIG_W1 is not set | 806 | # CONFIG_W1 is not set |
@@ -788,8 +824,10 @@ CONFIG_BFIN_WDT=y | |||
788 | # CONFIG_MFD_SM501 is not set | 824 | # CONFIG_MFD_SM501 is not set |
789 | # CONFIG_HTC_PASIC3 is not set | 825 | # CONFIG_HTC_PASIC3 is not set |
790 | # CONFIG_MFD_TMIO is not set | 826 | # CONFIG_MFD_TMIO is not set |
827 | # CONFIG_PMIC_DA903X is not set | ||
791 | # CONFIG_MFD_WM8400 is not set | 828 | # CONFIG_MFD_WM8400 is not set |
792 | # CONFIG_MFD_WM8350_I2C is not set | 829 | # CONFIG_MFD_WM8350_I2C is not set |
830 | # CONFIG_REGULATOR is not set | ||
793 | 831 | ||
794 | # | 832 | # |
795 | # Multimedia devices | 833 | # Multimedia devices |
@@ -861,10 +899,18 @@ CONFIG_RTC_INTF_DEV=y | |||
861 | # CONFIG_RTC_DRV_M41T80 is not set | 899 | # CONFIG_RTC_DRV_M41T80 is not set |
862 | # CONFIG_RTC_DRV_S35390A is not set | 900 | # CONFIG_RTC_DRV_S35390A is not set |
863 | # CONFIG_RTC_DRV_FM3130 is not set | 901 | # CONFIG_RTC_DRV_FM3130 is not set |
902 | # CONFIG_RTC_DRV_RX8581 is not set | ||
864 | 903 | ||
865 | # | 904 | # |
866 | # SPI RTC drivers | 905 | # SPI RTC drivers |
867 | # | 906 | # |
907 | # CONFIG_RTC_DRV_M41T94 is not set | ||
908 | # CONFIG_RTC_DRV_DS1305 is not set | ||
909 | # CONFIG_RTC_DRV_DS1390 is not set | ||
910 | # CONFIG_RTC_DRV_MAX6902 is not set | ||
911 | # CONFIG_RTC_DRV_R9701 is not set | ||
912 | # CONFIG_RTC_DRV_RS5C348 is not set | ||
913 | # CONFIG_RTC_DRV_DS3234 is not set | ||
868 | 914 | ||
869 | # | 915 | # |
870 | # Platform RTC drivers | 916 | # Platform RTC drivers |
@@ -1062,12 +1108,20 @@ CONFIG_DEBUG_INFO=y | |||
1062 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | 1108 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set |
1063 | # CONFIG_FAULT_INJECTION is not set | 1109 | # CONFIG_FAULT_INJECTION is not set |
1064 | CONFIG_SYSCTL_SYSCALL_CHECK=y | 1110 | CONFIG_SYSCTL_SYSCALL_CHECK=y |
1111 | |||
1112 | # | ||
1113 | # Tracers | ||
1114 | # | ||
1115 | # CONFIG_SCHED_TRACER is not set | ||
1116 | # CONFIG_CONTEXT_SWITCH_TRACER is not set | ||
1117 | # CONFIG_BOOT_TRACER is not set | ||
1065 | # CONFIG_DYNAMIC_PRINTK_DEBUG is not set | 1118 | # CONFIG_DYNAMIC_PRINTK_DEBUG is not set |
1066 | # CONFIG_SAMPLES is not set | 1119 | # CONFIG_SAMPLES is not set |
1067 | CONFIG_HAVE_ARCH_KGDB=y | 1120 | CONFIG_HAVE_ARCH_KGDB=y |
1068 | # CONFIG_KGDB is not set | 1121 | # CONFIG_KGDB is not set |
1069 | # CONFIG_DEBUG_STACKOVERFLOW is not set | 1122 | # CONFIG_DEBUG_STACKOVERFLOW is not set |
1070 | # CONFIG_DEBUG_STACK_USAGE is not set | 1123 | # CONFIG_DEBUG_STACK_USAGE is not set |
1124 | # CONFIG_KGDB_TESTCASE is not set | ||
1071 | CONFIG_DEBUG_VERBOSE=y | 1125 | CONFIG_DEBUG_VERBOSE=y |
1072 | CONFIG_DEBUG_MMRS=y | 1126 | CONFIG_DEBUG_MMRS=y |
1073 | # CONFIG_DEBUG_HWERR is not set | 1127 | # CONFIG_DEBUG_HWERR is not set |
@@ -1100,6 +1154,7 @@ CONFIG_CRYPTO=y | |||
1100 | # | 1154 | # |
1101 | # CONFIG_CRYPTO_FIPS is not set | 1155 | # CONFIG_CRYPTO_FIPS is not set |
1102 | # CONFIG_CRYPTO_MANAGER is not set | 1156 | # CONFIG_CRYPTO_MANAGER is not set |
1157 | # CONFIG_CRYPTO_MANAGER2 is not set | ||
1103 | # CONFIG_CRYPTO_GF128MUL is not set | 1158 | # CONFIG_CRYPTO_GF128MUL is not set |
1104 | # CONFIG_CRYPTO_NULL is not set | 1159 | # CONFIG_CRYPTO_NULL is not set |
1105 | # CONFIG_CRYPTO_CRYPTD is not set | 1160 | # CONFIG_CRYPTO_CRYPTD is not set |
diff --git a/arch/blackfin/configs/BF527-EZKIT_defconfig b/arch/blackfin/configs/BF527-EZKIT_defconfig index 833128b39724..a50050f17706 100644 --- a/arch/blackfin/configs/BF527-EZKIT_defconfig +++ b/arch/blackfin/configs/BF527-EZKIT_defconfig | |||
@@ -327,8 +327,8 @@ CONFIG_BFIN_ICACHE=y | |||
327 | CONFIG_BFIN_DCACHE=y | 327 | CONFIG_BFIN_DCACHE=y |
328 | # CONFIG_BFIN_DCACHE_BANKA is not set | 328 | # CONFIG_BFIN_DCACHE_BANKA is not set |
329 | # CONFIG_BFIN_ICACHE_LOCK is not set | 329 | # CONFIG_BFIN_ICACHE_LOCK is not set |
330 | # CONFIG_BFIN_WB is not set | 330 | CONFIG_BFIN_WB=y |
331 | CONFIG_BFIN_WT=y | 331 | # CONFIG_BFIN_WT is not set |
332 | # CONFIG_MPU is not set | 332 | # CONFIG_MPU is not set |
333 | 333 | ||
334 | # | 334 | # |
diff --git a/arch/blackfin/configs/BF533-EZKIT_defconfig b/arch/blackfin/configs/BF533-EZKIT_defconfig index 334c94b51c40..0a2a00d63887 100644 --- a/arch/blackfin/configs/BF533-EZKIT_defconfig +++ b/arch/blackfin/configs/BF533-EZKIT_defconfig | |||
@@ -290,8 +290,8 @@ CONFIG_BFIN_ICACHE=y | |||
290 | CONFIG_BFIN_DCACHE=y | 290 | CONFIG_BFIN_DCACHE=y |
291 | # CONFIG_BFIN_DCACHE_BANKA is not set | 291 | # CONFIG_BFIN_DCACHE_BANKA is not set |
292 | # CONFIG_BFIN_ICACHE_LOCK is not set | 292 | # CONFIG_BFIN_ICACHE_LOCK is not set |
293 | # CONFIG_BFIN_WB is not set | 293 | CONFIG_BFIN_WB=y |
294 | CONFIG_BFIN_WT=y | 294 | # CONFIG_BFIN_WT is not set |
295 | # CONFIG_MPU is not set | 295 | # CONFIG_MPU is not set |
296 | 296 | ||
297 | # | 297 | # |
diff --git a/arch/blackfin/configs/BF533-STAMP_defconfig b/arch/blackfin/configs/BF533-STAMP_defconfig index 9d733436e300..eb027587a355 100644 --- a/arch/blackfin/configs/BF533-STAMP_defconfig +++ b/arch/blackfin/configs/BF533-STAMP_defconfig | |||
@@ -290,8 +290,8 @@ CONFIG_BFIN_ICACHE=y | |||
290 | CONFIG_BFIN_DCACHE=y | 290 | CONFIG_BFIN_DCACHE=y |
291 | # CONFIG_BFIN_DCACHE_BANKA is not set | 291 | # CONFIG_BFIN_DCACHE_BANKA is not set |
292 | # CONFIG_BFIN_ICACHE_LOCK is not set | 292 | # CONFIG_BFIN_ICACHE_LOCK is not set |
293 | # CONFIG_BFIN_WB is not set | 293 | CONFIG_BFIN_WB=y |
294 | CONFIG_BFIN_WT=y | 294 | # CONFIG_BFIN_WT is not set |
295 | # CONFIG_MPU is not set | 295 | # CONFIG_MPU is not set |
296 | 296 | ||
297 | # | 297 | # |
diff --git a/arch/blackfin/configs/BF537-STAMP_defconfig b/arch/blackfin/configs/BF537-STAMP_defconfig index 4fb4108d3103..9e62b9f40eb1 100644 --- a/arch/blackfin/configs/BF537-STAMP_defconfig +++ b/arch/blackfin/configs/BF537-STAMP_defconfig | |||
@@ -298,8 +298,8 @@ CONFIG_BFIN_ICACHE=y | |||
298 | CONFIG_BFIN_DCACHE=y | 298 | CONFIG_BFIN_DCACHE=y |
299 | # CONFIG_BFIN_DCACHE_BANKA is not set | 299 | # CONFIG_BFIN_DCACHE_BANKA is not set |
300 | # CONFIG_BFIN_ICACHE_LOCK is not set | 300 | # CONFIG_BFIN_ICACHE_LOCK is not set |
301 | # CONFIG_BFIN_WB is not set | 301 | CONFIG_BFIN_WB=y |
302 | CONFIG_BFIN_WT=y | 302 | # CONFIG_BFIN_WT is not set |
303 | # CONFIG_MPU is not set | 303 | # CONFIG_MPU is not set |
304 | 304 | ||
305 | # | 305 | # |
@@ -568,15 +568,7 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=2 | |||
568 | # CONFIG_MTD_DOC2000 is not set | 568 | # CONFIG_MTD_DOC2000 is not set |
569 | # CONFIG_MTD_DOC2001 is not set | 569 | # CONFIG_MTD_DOC2001 is not set |
570 | # CONFIG_MTD_DOC2001PLUS is not set | 570 | # CONFIG_MTD_DOC2001PLUS is not set |
571 | CONFIG_MTD_NAND=m | 571 | # CONFIG_MTD_NAND is not set |
572 | # CONFIG_MTD_NAND_VERIFY_WRITE is not set | ||
573 | # CONFIG_MTD_NAND_ECC_SMC is not set | ||
574 | # CONFIG_MTD_NAND_MUSEUM_IDS is not set | ||
575 | # CONFIG_MTD_NAND_BFIN is not set | ||
576 | CONFIG_MTD_NAND_IDS=m | ||
577 | # CONFIG_MTD_NAND_DISKONCHIP is not set | ||
578 | # CONFIG_MTD_NAND_NANDSIM is not set | ||
579 | CONFIG_MTD_NAND_PLATFORM=m | ||
580 | # CONFIG_MTD_ONENAND is not set | 572 | # CONFIG_MTD_ONENAND is not set |
581 | 573 | ||
582 | # | 574 | # |
diff --git a/arch/blackfin/configs/BF538-EZKIT_defconfig b/arch/blackfin/configs/BF538-EZKIT_defconfig index cb32f5624a1b..dd6ad6be1c87 100644 --- a/arch/blackfin/configs/BF538-EZKIT_defconfig +++ b/arch/blackfin/configs/BF538-EZKIT_defconfig | |||
@@ -306,8 +306,8 @@ CONFIG_BFIN_ICACHE=y | |||
306 | CONFIG_BFIN_DCACHE=y | 306 | CONFIG_BFIN_DCACHE=y |
307 | # CONFIG_BFIN_DCACHE_BANKA is not set | 307 | # CONFIG_BFIN_DCACHE_BANKA is not set |
308 | # CONFIG_BFIN_ICACHE_LOCK is not set | 308 | # CONFIG_BFIN_ICACHE_LOCK is not set |
309 | # CONFIG_BFIN_WB is not set | 309 | CONFIG_BFIN_WB=y |
310 | CONFIG_BFIN_WT=y | 310 | # CONFIG_BFIN_WT is not set |
311 | # CONFIG_MPU is not set | 311 | # CONFIG_MPU is not set |
312 | 312 | ||
313 | # | 313 | # |
diff --git a/arch/blackfin/configs/BF548-EZKIT_defconfig b/arch/blackfin/configs/BF548-EZKIT_defconfig index 0f8697618aa5..6bc2fb1b2a70 100644 --- a/arch/blackfin/configs/BF548-EZKIT_defconfig +++ b/arch/blackfin/configs/BF548-EZKIT_defconfig | |||
@@ -361,8 +361,8 @@ CONFIG_BFIN_ICACHE=y | |||
361 | CONFIG_BFIN_DCACHE=y | 361 | CONFIG_BFIN_DCACHE=y |
362 | # CONFIG_BFIN_DCACHE_BANKA is not set | 362 | # CONFIG_BFIN_DCACHE_BANKA is not set |
363 | # CONFIG_BFIN_ICACHE_LOCK is not set | 363 | # CONFIG_BFIN_ICACHE_LOCK is not set |
364 | # CONFIG_BFIN_WB is not set | 364 | CONFIG_BFIN_WB=y |
365 | CONFIG_BFIN_WT=y | 365 | # CONFIG_BFIN_WT is not set |
366 | # CONFIG_BFIN_L2_CACHEABLE is not set | 366 | # CONFIG_BFIN_L2_CACHEABLE is not set |
367 | # CONFIG_MPU is not set | 367 | # CONFIG_MPU is not set |
368 | 368 | ||
@@ -680,7 +680,7 @@ CONFIG_SCSI=y | |||
680 | CONFIG_SCSI_DMA=y | 680 | CONFIG_SCSI_DMA=y |
681 | # CONFIG_SCSI_TGT is not set | 681 | # CONFIG_SCSI_TGT is not set |
682 | # CONFIG_SCSI_NETLINK is not set | 682 | # CONFIG_SCSI_NETLINK is not set |
683 | CONFIG_SCSI_PROC_FS=y | 683 | # CONFIG_SCSI_PROC_FS is not set |
684 | 684 | ||
685 | # | 685 | # |
686 | # SCSI support type (disk, tape, CD-ROM) | 686 | # SCSI support type (disk, tape, CD-ROM) |
diff --git a/arch/blackfin/configs/BF561-EZKIT_defconfig b/arch/blackfin/configs/BF561-EZKIT_defconfig index 042c7adfccfa..69714fb3e608 100644 --- a/arch/blackfin/configs/BF561-EZKIT_defconfig +++ b/arch/blackfin/configs/BF561-EZKIT_defconfig | |||
@@ -329,8 +329,8 @@ CONFIG_BFIN_ICACHE=y | |||
329 | CONFIG_BFIN_DCACHE=y | 329 | CONFIG_BFIN_DCACHE=y |
330 | # CONFIG_BFIN_DCACHE_BANKA is not set | 330 | # CONFIG_BFIN_DCACHE_BANKA is not set |
331 | # CONFIG_BFIN_ICACHE_LOCK is not set | 331 | # CONFIG_BFIN_ICACHE_LOCK is not set |
332 | # CONFIG_BFIN_WB is not set | 332 | CONFIG_BFIN_WB=y |
333 | CONFIG_BFIN_WT=y | 333 | # CONFIG_BFIN_WT is not set |
334 | # CONFIG_BFIN_L2_CACHEABLE is not set | 334 | # CONFIG_BFIN_L2_CACHEABLE is not set |
335 | # CONFIG_MPU is not set | 335 | # CONFIG_MPU is not set |
336 | 336 | ||
diff --git a/arch/blackfin/configs/BlackStamp_defconfig b/arch/blackfin/configs/BlackStamp_defconfig index 3a20e281d23c..017c6ea071b5 100644 --- a/arch/blackfin/configs/BlackStamp_defconfig +++ b/arch/blackfin/configs/BlackStamp_defconfig | |||
@@ -288,8 +288,8 @@ CONFIG_BFIN_ICACHE=y | |||
288 | CONFIG_BFIN_DCACHE=y | 288 | CONFIG_BFIN_DCACHE=y |
289 | # CONFIG_BFIN_DCACHE_BANKA is not set | 289 | # CONFIG_BFIN_DCACHE_BANKA is not set |
290 | # CONFIG_BFIN_ICACHE_LOCK is not set | 290 | # CONFIG_BFIN_ICACHE_LOCK is not set |
291 | # CONFIG_BFIN_WB is not set | 291 | CONFIG_BFIN_WB=y |
292 | CONFIG_BFIN_WT=y | 292 | # CONFIG_BFIN_WT is not set |
293 | # CONFIG_MPU is not set | 293 | # CONFIG_MPU is not set |
294 | 294 | ||
295 | # | 295 | # |
diff --git a/arch/blackfin/configs/CM-BF527_defconfig b/arch/blackfin/configs/CM-BF527_defconfig index 865ed85a5760..d880ef786770 100644 --- a/arch/blackfin/configs/CM-BF527_defconfig +++ b/arch/blackfin/configs/CM-BF527_defconfig | |||
@@ -332,8 +332,8 @@ CONFIG_BFIN_ICACHE=y | |||
332 | CONFIG_BFIN_DCACHE=y | 332 | CONFIG_BFIN_DCACHE=y |
333 | # CONFIG_BFIN_DCACHE_BANKA is not set | 333 | # CONFIG_BFIN_DCACHE_BANKA is not set |
334 | # CONFIG_BFIN_ICACHE_LOCK is not set | 334 | # CONFIG_BFIN_ICACHE_LOCK is not set |
335 | # CONFIG_BFIN_WB is not set | 335 | CONFIG_BFIN_WB=y |
336 | CONFIG_BFIN_WT=y | 336 | # CONFIG_BFIN_WT is not set |
337 | # CONFIG_MPU is not set | 337 | # CONFIG_MPU is not set |
338 | 338 | ||
339 | # | 339 | # |
diff --git a/arch/blackfin/configs/CM-BF548_defconfig b/arch/blackfin/configs/CM-BF548_defconfig index efe9741b1f14..f410430b4e3d 100644 --- a/arch/blackfin/configs/CM-BF548_defconfig +++ b/arch/blackfin/configs/CM-BF548_defconfig | |||
@@ -336,8 +336,8 @@ CONFIG_BFIN_ICACHE=y | |||
336 | CONFIG_BFIN_DCACHE=y | 336 | CONFIG_BFIN_DCACHE=y |
337 | # CONFIG_BFIN_DCACHE_BANKA is not set | 337 | # CONFIG_BFIN_DCACHE_BANKA is not set |
338 | # CONFIG_BFIN_ICACHE_LOCK is not set | 338 | # CONFIG_BFIN_ICACHE_LOCK is not set |
339 | # CONFIG_BFIN_WB is not set | 339 | CONFIG_BFIN_WB=y |
340 | CONFIG_BFIN_WT=y | 340 | # CONFIG_BFIN_WT is not set |
341 | CONFIG_L1_MAX_PIECE=16 | 341 | CONFIG_L1_MAX_PIECE=16 |
342 | # CONFIG_MPU is not set | 342 | # CONFIG_MPU is not set |
343 | 343 | ||
@@ -595,7 +595,7 @@ CONFIG_SCSI=y | |||
595 | CONFIG_SCSI_DMA=y | 595 | CONFIG_SCSI_DMA=y |
596 | # CONFIG_SCSI_TGT is not set | 596 | # CONFIG_SCSI_TGT is not set |
597 | # CONFIG_SCSI_NETLINK is not set | 597 | # CONFIG_SCSI_NETLINK is not set |
598 | CONFIG_SCSI_PROC_FS=y | 598 | # CONFIG_SCSI_PROC_FS is not set |
599 | 599 | ||
600 | # | 600 | # |
601 | # SCSI support type (disk, tape, CD-ROM) | 601 | # SCSI support type (disk, tape, CD-ROM) |
diff --git a/arch/blackfin/configs/IP0X_defconfig b/arch/blackfin/configs/IP0X_defconfig index eae83b5de92f..7db93874c987 100644 --- a/arch/blackfin/configs/IP0X_defconfig +++ b/arch/blackfin/configs/IP0X_defconfig | |||
@@ -612,7 +612,7 @@ CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 | |||
612 | CONFIG_SCSI=y | 612 | CONFIG_SCSI=y |
613 | # CONFIG_SCSI_TGT is not set | 613 | # CONFIG_SCSI_TGT is not set |
614 | # CONFIG_SCSI_NETLINK is not set | 614 | # CONFIG_SCSI_NETLINK is not set |
615 | CONFIG_SCSI_PROC_FS=y | 615 | # CONFIG_SCSI_PROC_FS is not set |
616 | 616 | ||
617 | # | 617 | # |
618 | # SCSI support type (disk, tape, CD-ROM) | 618 | # SCSI support type (disk, tape, CD-ROM) |
diff --git a/arch/blackfin/configs/SRV1_defconfig b/arch/blackfin/configs/SRV1_defconfig index fa580affc9d6..a46529c6ade3 100644 --- a/arch/blackfin/configs/SRV1_defconfig +++ b/arch/blackfin/configs/SRV1_defconfig | |||
@@ -282,8 +282,8 @@ CONFIG_BFIN_ICACHE=y | |||
282 | CONFIG_BFIN_DCACHE=y | 282 | CONFIG_BFIN_DCACHE=y |
283 | # CONFIG_BFIN_DCACHE_BANKA is not set | 283 | # CONFIG_BFIN_DCACHE_BANKA is not set |
284 | # CONFIG_BFIN_ICACHE_LOCK is not set | 284 | # CONFIG_BFIN_ICACHE_LOCK is not set |
285 | # CONFIG_BFIN_WB is not set | 285 | CONFIG_BFIN_WB=y |
286 | CONFIG_BFIN_WT=y | 286 | # CONFIG_BFIN_WT is not set |
287 | CONFIG_L1_MAX_PIECE=16 | 287 | CONFIG_L1_MAX_PIECE=16 |
288 | 288 | ||
289 | # | 289 | # |
diff --git a/arch/blackfin/include/asm/Kbuild b/arch/blackfin/include/asm/Kbuild index 606ecfdcc962..09c31418cc08 100644 --- a/arch/blackfin/include/asm/Kbuild +++ b/arch/blackfin/include/asm/Kbuild | |||
@@ -1,3 +1,4 @@ | |||
1 | include include/asm-generic/Kbuild.asm | 1 | include include/asm-generic/Kbuild.asm |
2 | 2 | ||
3 | unifdef-y += bfin_sport.h | ||
3 | unifdef-y += fixed_code.h | 4 | unifdef-y += fixed_code.h |
diff --git a/arch/blackfin/include/asm/bfin_sport.h b/arch/blackfin/include/asm/bfin_sport.h index fe88a2c19213..65a651db5b07 100644 --- a/arch/blackfin/include/asm/bfin_sport.h +++ b/arch/blackfin/include/asm/bfin_sport.h | |||
@@ -1,30 +1,9 @@ | |||
1 | /* | 1 | /* |
2 | * File: include/asm-blackfin/bfin_sport.h | 2 | * bfin_sport.h - userspace header for bfin sport driver |
3 | * Based on: | ||
4 | * Author: Roy Huang (roy.huang@analog.com) | ||
5 | * | 3 | * |
6 | * Created: Thu Aug. 24 2006 | 4 | * Copyright 2004-2008 Analog Devices Inc. |
7 | * Description: | ||
8 | * | 5 | * |
9 | * Modified: | 6 | * Licensed under the GPL-2 or later. |
10 | * Copyright 2004-2006 Analog Devices Inc. | ||
11 | * | ||
12 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | ||
13 | * | ||
14 | * This program is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation; either version 2 of the License, or | ||
17 | * (at your option) any later version. | ||
18 | * | ||
19 | * This program is distributed in the hope that it will be useful, | ||
20 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
21 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
22 | * GNU General Public License for more details. | ||
23 | * | ||
24 | * You should have received a copy of the GNU General Public License | ||
25 | * along with this program; if not, see the file COPYING, or write | ||
26 | * to the Free Software Foundation, Inc., | ||
27 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
28 | */ | 7 | */ |
29 | 8 | ||
30 | #ifndef __BFIN_SPORT_H__ | 9 | #ifndef __BFIN_SPORT_H__ |
@@ -42,11 +21,10 @@ | |||
42 | #define NORM_FORMAT 0x0 | 21 | #define NORM_FORMAT 0x0 |
43 | #define ALAW_FORMAT 0x2 | 22 | #define ALAW_FORMAT 0x2 |
44 | #define ULAW_FORMAT 0x3 | 23 | #define ULAW_FORMAT 0x3 |
45 | struct sport_register; | ||
46 | 24 | ||
47 | /* Function driver which use sport must initialize the structure */ | 25 | /* Function driver which use sport must initialize the structure */ |
48 | struct sport_config { | 26 | struct sport_config { |
49 | /*TDM (multichannels), I2S or other mode */ | 27 | /* TDM (multichannels), I2S or other mode */ |
50 | unsigned int mode:3; | 28 | unsigned int mode:3; |
51 | 29 | ||
52 | /* if TDM mode is selected, channels must be set */ | 30 | /* if TDM mode is selected, channels must be set */ |
@@ -72,12 +50,18 @@ struct sport_config { | |||
72 | int serial_clk; | 50 | int serial_clk; |
73 | int fsync_clk; | 51 | int fsync_clk; |
74 | 52 | ||
75 | unsigned int data_format:2; /*Normal, u-law or a-law */ | 53 | unsigned int data_format:2; /* Normal, u-law or a-law */ |
76 | 54 | ||
77 | int word_len; /* How length of the word in bits, 3-32 bits */ | 55 | int word_len; /* How length of the word in bits, 3-32 bits */ |
78 | int dma_enabled; | 56 | int dma_enabled; |
79 | }; | 57 | }; |
80 | 58 | ||
59 | /* Userspace interface */ | ||
60 | #define SPORT_IOC_MAGIC 'P' | ||
61 | #define SPORT_IOC_CONFIG _IOWR('P', 0x01, struct sport_config) | ||
62 | |||
63 | #ifdef __KERNEL__ | ||
64 | |||
81 | struct sport_register { | 65 | struct sport_register { |
82 | unsigned short tcr1; | 66 | unsigned short tcr1; |
83 | unsigned short reserved0; | 67 | unsigned short reserved0; |
@@ -117,9 +101,6 @@ struct sport_register { | |||
117 | unsigned long mrcs3; | 101 | unsigned long mrcs3; |
118 | }; | 102 | }; |
119 | 103 | ||
120 | #define SPORT_IOC_MAGIC 'P' | ||
121 | #define SPORT_IOC_CONFIG _IOWR('P', 0x01, struct sport_config) | ||
122 | |||
123 | struct sport_dev { | 104 | struct sport_dev { |
124 | struct cdev cdev; /* Char device structure */ | 105 | struct cdev cdev; /* Char device structure */ |
125 | 106 | ||
@@ -149,6 +130,8 @@ struct sport_dev { | |||
149 | struct sport_config config; | 130 | struct sport_config config; |
150 | }; | 131 | }; |
151 | 132 | ||
133 | #endif | ||
134 | |||
152 | #define SPORT_TCR1 0 | 135 | #define SPORT_TCR1 0 |
153 | #define SPORT_TCR2 1 | 136 | #define SPORT_TCR2 1 |
154 | #define SPORT_TCLKDIV 2 | 137 | #define SPORT_TCLKDIV 2 |
@@ -169,4 +152,4 @@ struct sport_dev { | |||
169 | #define SPORT_MRCS2 22 | 152 | #define SPORT_MRCS2 22 |
170 | #define SPORT_MRCS3 23 | 153 | #define SPORT_MRCS3 23 |
171 | 154 | ||
172 | #endif /*__BFIN_SPORT_H__*/ | 155 | #endif |
diff --git a/arch/blackfin/include/asm/ipipe.h b/arch/blackfin/include/asm/ipipe.h index 76f53d8b9a0d..343b56361ec9 100644 --- a/arch/blackfin/include/asm/ipipe.h +++ b/arch/blackfin/include/asm/ipipe.h | |||
@@ -35,9 +35,9 @@ | |||
35 | #include <asm/atomic.h> | 35 | #include <asm/atomic.h> |
36 | #include <asm/traps.h> | 36 | #include <asm/traps.h> |
37 | 37 | ||
38 | #define IPIPE_ARCH_STRING "1.8-00" | 38 | #define IPIPE_ARCH_STRING "1.9-00" |
39 | #define IPIPE_MAJOR_NUMBER 1 | 39 | #define IPIPE_MAJOR_NUMBER 1 |
40 | #define IPIPE_MINOR_NUMBER 8 | 40 | #define IPIPE_MINOR_NUMBER 9 |
41 | #define IPIPE_PATCH_NUMBER 0 | 41 | #define IPIPE_PATCH_NUMBER 0 |
42 | 42 | ||
43 | #ifdef CONFIG_SMP | 43 | #ifdef CONFIG_SMP |
@@ -83,9 +83,9 @@ struct ipipe_sysinfo { | |||
83 | "%2 = CYCLES2\n" \ | 83 | "%2 = CYCLES2\n" \ |
84 | "CC = %2 == %0\n" \ | 84 | "CC = %2 == %0\n" \ |
85 | "if ! CC jump 1b\n" \ | 85 | "if ! CC jump 1b\n" \ |
86 | : "=r" (((unsigned long *)&t)[1]), \ | 86 | : "=d,a" (((unsigned long *)&t)[1]), \ |
87 | "=r" (((unsigned long *)&t)[0]), \ | 87 | "=d,a" (((unsigned long *)&t)[0]), \ |
88 | "=r" (__cy2) \ | 88 | "=d,a" (__cy2) \ |
89 | : /*no input*/ : "CC"); \ | 89 | : /*no input*/ : "CC"); \ |
90 | t; \ | 90 | t; \ |
91 | }) | 91 | }) |
@@ -118,35 +118,40 @@ void __ipipe_disable_irqdesc(struct ipipe_domain *ipd, | |||
118 | 118 | ||
119 | #define __ipipe_disable_irq(irq) (irq_desc[irq].chip->mask(irq)) | 119 | #define __ipipe_disable_irq(irq) (irq_desc[irq].chip->mask(irq)) |
120 | 120 | ||
121 | #define __ipipe_lock_root() \ | 121 | static inline int __ipipe_check_tickdev(const char *devname) |
122 | set_bit(IPIPE_ROOTLOCK_FLAG, &ipipe_root_domain->flags) | 122 | { |
123 | return 1; | ||
124 | } | ||
123 | 125 | ||
124 | #define __ipipe_unlock_root() \ | 126 | static inline void __ipipe_lock_root(void) |
125 | clear_bit(IPIPE_ROOTLOCK_FLAG, &ipipe_root_domain->flags) | 127 | { |
128 | set_bit(IPIPE_SYNCDEFER_FLAG, &ipipe_root_cpudom_var(status)); | ||
129 | } | ||
130 | |||
131 | static inline void __ipipe_unlock_root(void) | ||
132 | { | ||
133 | clear_bit(IPIPE_SYNCDEFER_FLAG, &ipipe_root_cpudom_var(status)); | ||
134 | } | ||
126 | 135 | ||
127 | void __ipipe_enable_pipeline(void); | 136 | void __ipipe_enable_pipeline(void); |
128 | 137 | ||
129 | #define __ipipe_hook_critical_ipi(ipd) do { } while (0) | 138 | #define __ipipe_hook_critical_ipi(ipd) do { } while (0) |
130 | 139 | ||
131 | #define __ipipe_sync_pipeline(syncmask) \ | 140 | #define __ipipe_sync_pipeline ___ipipe_sync_pipeline |
132 | do { \ | 141 | void ___ipipe_sync_pipeline(unsigned long syncmask); |
133 | struct ipipe_domain *ipd = ipipe_current_domain; \ | ||
134 | if (likely(ipd != ipipe_root_domain || !test_bit(IPIPE_ROOTLOCK_FLAG, &ipd->flags))) \ | ||
135 | __ipipe_sync_stage(syncmask); \ | ||
136 | } while (0) | ||
137 | 142 | ||
138 | void __ipipe_handle_irq(unsigned irq, struct pt_regs *regs); | 143 | void __ipipe_handle_irq(unsigned irq, struct pt_regs *regs); |
139 | 144 | ||
140 | int __ipipe_get_irq_priority(unsigned irq); | 145 | int __ipipe_get_irq_priority(unsigned irq); |
141 | 146 | ||
142 | int __ipipe_get_irqthread_priority(unsigned irq); | ||
143 | |||
144 | void __ipipe_stall_root_raw(void); | 147 | void __ipipe_stall_root_raw(void); |
145 | 148 | ||
146 | void __ipipe_unstall_root_raw(void); | 149 | void __ipipe_unstall_root_raw(void); |
147 | 150 | ||
148 | void __ipipe_serial_debug(const char *fmt, ...); | 151 | void __ipipe_serial_debug(const char *fmt, ...); |
149 | 152 | ||
153 | asmlinkage void __ipipe_call_irqtail(unsigned long addr); | ||
154 | |||
150 | DECLARE_PER_CPU(struct pt_regs, __ipipe_tick_regs); | 155 | DECLARE_PER_CPU(struct pt_regs, __ipipe_tick_regs); |
151 | 156 | ||
152 | extern unsigned long __ipipe_core_clock; | 157 | extern unsigned long __ipipe_core_clock; |
@@ -162,42 +167,25 @@ static inline unsigned long __ipipe_ffnz(unsigned long ul) | |||
162 | 167 | ||
163 | #define __ipipe_run_irqtail() /* Must be a macro */ \ | 168 | #define __ipipe_run_irqtail() /* Must be a macro */ \ |
164 | do { \ | 169 | do { \ |
165 | asmlinkage void __ipipe_call_irqtail(void); \ | ||
166 | unsigned long __pending; \ | 170 | unsigned long __pending; \ |
167 | CSYNC(); \ | 171 | CSYNC(); \ |
168 | __pending = bfin_read_IPEND(); \ | 172 | __pending = bfin_read_IPEND(); \ |
169 | if (__pending & 0x8000) { \ | 173 | if (__pending & 0x8000) { \ |
170 | __pending &= ~0x8010; \ | 174 | __pending &= ~0x8010; \ |
171 | if (__pending && (__pending & (__pending - 1)) == 0) \ | 175 | if (__pending && (__pending & (__pending - 1)) == 0) \ |
172 | __ipipe_call_irqtail(); \ | 176 | __ipipe_call_irqtail(__ipipe_irq_tail_hook); \ |
173 | } \ | 177 | } \ |
174 | } while (0) | 178 | } while (0) |
175 | 179 | ||
176 | #define __ipipe_run_isr(ipd, irq) \ | 180 | #define __ipipe_run_isr(ipd, irq) \ |
177 | do { \ | 181 | do { \ |
178 | if (ipd == ipipe_root_domain) { \ | 182 | if (ipd == ipipe_root_domain) { \ |
179 | /* \ | 183 | local_irq_enable_hw(); \ |
180 | * Note: the I-pipe implements a threaded interrupt model on \ | 184 | if (ipipe_virtual_irq_p(irq)) \ |
181 | * this arch for Linux external IRQs. The interrupt handler we \ | ||
182 | * call here only wakes up the associated IRQ thread. \ | ||
183 | */ \ | ||
184 | if (ipipe_virtual_irq_p(irq)) { \ | ||
185 | /* No irqtail here; virtual interrupts have no effect \ | ||
186 | on IPEND so there is no need for processing \ | ||
187 | deferral. */ \ | ||
188 | local_irq_enable_nohead(ipd); \ | ||
189 | ipd->irqs[irq].handler(irq, ipd->irqs[irq].cookie); \ | 185 | ipd->irqs[irq].handler(irq, ipd->irqs[irq].cookie); \ |
190 | local_irq_disable_nohead(ipd); \ | 186 | else \ |
191 | } else \ | ||
192 | /* \ | ||
193 | * No need to run the irqtail here either; \ | ||
194 | * we can't be preempted by hw IRQs, so \ | ||
195 | * non-Linux IRQs cannot stack over the short \ | ||
196 | * thread wakeup code. Which in turn means \ | ||
197 | * that no irqtail condition could be pending \ | ||
198 | * for domains above Linux in the pipeline. \ | ||
199 | */ \ | ||
200 | ipd->irqs[irq].handler(irq, &__raw_get_cpu_var(__ipipe_tick_regs)); \ | 187 | ipd->irqs[irq].handler(irq, &__raw_get_cpu_var(__ipipe_tick_regs)); \ |
188 | local_irq_disable_hw(); \ | ||
201 | } else { \ | 189 | } else { \ |
202 | __clear_bit(IPIPE_SYNC_FLAG, &ipipe_cpudom_var(ipd, status)); \ | 190 | __clear_bit(IPIPE_SYNC_FLAG, &ipipe_cpudom_var(ipd, status)); \ |
203 | local_irq_enable_nohead(ipd); \ | 191 | local_irq_enable_nohead(ipd); \ |
@@ -217,42 +205,24 @@ void ipipe_init_irq_threads(void); | |||
217 | 205 | ||
218 | int ipipe_start_irq_thread(unsigned irq, struct irq_desc *desc); | 206 | int ipipe_start_irq_thread(unsigned irq, struct irq_desc *desc); |
219 | 207 | ||
220 | #define IS_SYSIRQ(irq) ((irq) > IRQ_CORETMR && (irq) <= SYS_IRQS) | 208 | #ifdef CONFIG_GENERIC_CLOCKEVENTS |
221 | #define IS_GPIOIRQ(irq) ((irq) >= GPIO_IRQ_BASE && (irq) < NR_IRQS) | 209 | #define IRQ_SYSTMR IRQ_CORETMR |
222 | 210 | #define IRQ_PRIOTMR IRQ_CORETMR | |
211 | #else | ||
223 | #define IRQ_SYSTMR IRQ_TIMER0 | 212 | #define IRQ_SYSTMR IRQ_TIMER0 |
224 | #define IRQ_PRIOTMR CONFIG_IRQ_TIMER0 | 213 | #define IRQ_PRIOTMR CONFIG_IRQ_TIMER0 |
214 | #endif | ||
225 | 215 | ||
226 | #if defined(CONFIG_BF531) || defined(CONFIG_BF532) || defined(CONFIG_BF533) | 216 | #ifdef CONFIG_BF561 |
227 | #define PRIO_GPIODEMUX(irq) CONFIG_PFA | ||
228 | #elif defined(CONFIG_BF534) || defined(CONFIG_BF536) || defined(CONFIG_BF537) | ||
229 | #define PRIO_GPIODEMUX(irq) CONFIG_IRQ_PROG_INTA | ||
230 | #elif defined(CONFIG_BF52x) | ||
231 | #define PRIO_GPIODEMUX(irq) ((irq) == IRQ_PORTF_INTA ? CONFIG_IRQ_PORTF_INTA : \ | ||
232 | (irq) == IRQ_PORTG_INTA ? CONFIG_IRQ_PORTG_INTA : \ | ||
233 | (irq) == IRQ_PORTH_INTA ? CONFIG_IRQ_PORTH_INTA : \ | ||
234 | -1) | ||
235 | #elif defined(CONFIG_BF561) | ||
236 | #define PRIO_GPIODEMUX(irq) ((irq) == IRQ_PROG0_INTA ? CONFIG_IRQ_PROG0_INTA : \ | ||
237 | (irq) == IRQ_PROG1_INTA ? CONFIG_IRQ_PROG1_INTA : \ | ||
238 | (irq) == IRQ_PROG2_INTA ? CONFIG_IRQ_PROG2_INTA : \ | ||
239 | -1) | ||
240 | #define bfin_write_TIMER_DISABLE(val) bfin_write_TMRS8_DISABLE(val) | 217 | #define bfin_write_TIMER_DISABLE(val) bfin_write_TMRS8_DISABLE(val) |
241 | #define bfin_write_TIMER_ENABLE(val) bfin_write_TMRS8_ENABLE(val) | 218 | #define bfin_write_TIMER_ENABLE(val) bfin_write_TMRS8_ENABLE(val) |
242 | #define bfin_write_TIMER_STATUS(val) bfin_write_TMRS8_STATUS(val) | 219 | #define bfin_write_TIMER_STATUS(val) bfin_write_TMRS8_STATUS(val) |
243 | #define bfin_read_TIMER_STATUS() bfin_read_TMRS8_STATUS() | 220 | #define bfin_read_TIMER_STATUS() bfin_read_TMRS8_STATUS() |
244 | #elif defined(CONFIG_BF54x) | 221 | #elif defined(CONFIG_BF54x) |
245 | #define PRIO_GPIODEMUX(irq) ((irq) == IRQ_PINT0 ? CONFIG_IRQ_PINT0 : \ | ||
246 | (irq) == IRQ_PINT1 ? CONFIG_IRQ_PINT1 : \ | ||
247 | (irq) == IRQ_PINT2 ? CONFIG_IRQ_PINT2 : \ | ||
248 | (irq) == IRQ_PINT3 ? CONFIG_IRQ_PINT3 : \ | ||
249 | -1) | ||
250 | #define bfin_write_TIMER_DISABLE(val) bfin_write_TIMER_DISABLE0(val) | 222 | #define bfin_write_TIMER_DISABLE(val) bfin_write_TIMER_DISABLE0(val) |
251 | #define bfin_write_TIMER_ENABLE(val) bfin_write_TIMER_ENABLE0(val) | 223 | #define bfin_write_TIMER_ENABLE(val) bfin_write_TIMER_ENABLE0(val) |
252 | #define bfin_write_TIMER_STATUS(val) bfin_write_TIMER_STATUS0(val) | 224 | #define bfin_write_TIMER_STATUS(val) bfin_write_TIMER_STATUS0(val) |
253 | #define bfin_read_TIMER_STATUS(val) bfin_read_TIMER_STATUS0(val) | 225 | #define bfin_read_TIMER_STATUS(val) bfin_read_TIMER_STATUS0(val) |
254 | #else | ||
255 | # error "no PRIO_GPIODEMUX() for this part" | ||
256 | #endif | 226 | #endif |
257 | 227 | ||
258 | #define __ipipe_root_tick_p(regs) ((regs->ipend & 0x10) != 0) | 228 | #define __ipipe_root_tick_p(regs) ((regs->ipend & 0x10) != 0) |
@@ -275,4 +245,6 @@ int ipipe_start_irq_thread(unsigned irq, struct irq_desc *desc); | |||
275 | 245 | ||
276 | #endif /* !CONFIG_IPIPE */ | 246 | #endif /* !CONFIG_IPIPE */ |
277 | 247 | ||
248 | #define ipipe_update_tick_evtdev(evtdev) do { } while (0) | ||
249 | |||
278 | #endif /* !__ASM_BLACKFIN_IPIPE_H */ | 250 | #endif /* !__ASM_BLACKFIN_IPIPE_H */ |
diff --git a/arch/blackfin/include/asm/ipipe_base.h b/arch/blackfin/include/asm/ipipe_base.h index cb1025aeabcf..3e8acbd1a3be 100644 --- a/arch/blackfin/include/asm/ipipe_base.h +++ b/arch/blackfin/include/asm/ipipe_base.h | |||
@@ -1,5 +1,5 @@ | |||
1 | /* -*- linux-c -*- | 1 | /* -*- linux-c -*- |
2 | * include/asm-blackfin/_baseipipe.h | 2 | * include/asm-blackfin/ipipe_base.h |
3 | * | 3 | * |
4 | * Copyright (C) 2007 Philippe Gerum. | 4 | * Copyright (C) 2007 Philippe Gerum. |
5 | * | 5 | * |
@@ -27,8 +27,9 @@ | |||
27 | #define IPIPE_NR_XIRQS NR_IRQS | 27 | #define IPIPE_NR_XIRQS NR_IRQS |
28 | #define IPIPE_IRQ_ISHIFT 5 /* 2^5 for 32bits arch. */ | 28 | #define IPIPE_IRQ_ISHIFT 5 /* 2^5 for 32bits arch. */ |
29 | 29 | ||
30 | /* Blackfin-specific, global domain flags */ | 30 | /* Blackfin-specific, per-cpu pipeline status */ |
31 | #define IPIPE_ROOTLOCK_FLAG 1 /* Lock pipeline for root */ | 31 | #define IPIPE_SYNCDEFER_FLAG 15 |
32 | #define IPIPE_SYNCDEFER_MASK (1L << IPIPE_SYNCDEFER_MASK) | ||
32 | 33 | ||
33 | /* Blackfin traps -- i.e. exception vector numbers */ | 34 | /* Blackfin traps -- i.e. exception vector numbers */ |
34 | #define IPIPE_NR_FAULTS 52 /* We leave a gap after VEC_ILL_RES. */ | 35 | #define IPIPE_NR_FAULTS 52 /* We leave a gap after VEC_ILL_RES. */ |
@@ -48,11 +49,6 @@ | |||
48 | 49 | ||
49 | #ifndef __ASSEMBLY__ | 50 | #ifndef __ASSEMBLY__ |
50 | 51 | ||
51 | #include <linux/bitops.h> | ||
52 | |||
53 | extern int test_bit(int nr, const void *addr); | ||
54 | |||
55 | |||
56 | extern unsigned long __ipipe_root_status; /* Alias to ipipe_root_cpudom_var(status) */ | 52 | extern unsigned long __ipipe_root_status; /* Alias to ipipe_root_cpudom_var(status) */ |
57 | 53 | ||
58 | static inline void __ipipe_stall_root(void) | 54 | static inline void __ipipe_stall_root(void) |
diff --git a/arch/blackfin/include/asm/irq.h b/arch/blackfin/include/asm/irq.h index 3d977909ce7d..7645e85a5f6f 100644 --- a/arch/blackfin/include/asm/irq.h +++ b/arch/blackfin/include/asm/irq.h | |||
@@ -61,20 +61,38 @@ void __ipipe_restore_root(unsigned long flags); | |||
61 | #define raw_irqs_disabled_flags(flags) (!irqs_enabled_from_flags_hw(flags)) | 61 | #define raw_irqs_disabled_flags(flags) (!irqs_enabled_from_flags_hw(flags)) |
62 | #define local_test_iflag_hw(x) irqs_enabled_from_flags_hw(x) | 62 | #define local_test_iflag_hw(x) irqs_enabled_from_flags_hw(x) |
63 | 63 | ||
64 | #define local_save_flags(x) \ | 64 | #define local_save_flags(x) \ |
65 | do { \ | 65 | do { \ |
66 | (x) = __ipipe_test_root() ? \ | 66 | (x) = __ipipe_test_root() ? \ |
67 | __all_masked_irq_flags : bfin_irq_flags; \ | 67 | __all_masked_irq_flags : bfin_irq_flags; \ |
68 | barrier(); \ | ||
68 | } while (0) | 69 | } while (0) |
69 | 70 | ||
70 | #define local_irq_save(x) \ | 71 | #define local_irq_save(x) \ |
71 | do { \ | 72 | do { \ |
72 | (x) = __ipipe_test_and_stall_root(); \ | 73 | (x) = __ipipe_test_and_stall_root() ? \ |
74 | __all_masked_irq_flags : bfin_irq_flags; \ | ||
75 | barrier(); \ | ||
76 | } while (0) | ||
77 | |||
78 | static inline void local_irq_restore(unsigned long x) | ||
79 | { | ||
80 | barrier(); | ||
81 | __ipipe_restore_root(x == __all_masked_irq_flags); | ||
82 | } | ||
83 | |||
84 | #define local_irq_disable() \ | ||
85 | do { \ | ||
86 | __ipipe_stall_root(); \ | ||
87 | barrier(); \ | ||
73 | } while (0) | 88 | } while (0) |
74 | 89 | ||
75 | #define local_irq_restore(x) __ipipe_restore_root(x) | 90 | static inline void local_irq_enable(void) |
76 | #define local_irq_disable() __ipipe_stall_root() | 91 | { |
77 | #define local_irq_enable() __ipipe_unstall_root() | 92 | barrier(); |
93 | __ipipe_unstall_root(); | ||
94 | } | ||
95 | |||
78 | #define irqs_disabled() __ipipe_test_root() | 96 | #define irqs_disabled() __ipipe_test_root() |
79 | 97 | ||
80 | #define local_save_flags_hw(x) \ | 98 | #define local_save_flags_hw(x) \ |
diff --git a/arch/blackfin/include/asm/thread_info.h b/arch/blackfin/include/asm/thread_info.h index e721ce55956c..2920087516f2 100644 --- a/arch/blackfin/include/asm/thread_info.h +++ b/arch/blackfin/include/asm/thread_info.h | |||
@@ -122,6 +122,7 @@ static inline struct thread_info *current_thread_info(void) | |||
122 | #define TIF_MEMDIE 4 | 122 | #define TIF_MEMDIE 4 |
123 | #define TIF_RESTORE_SIGMASK 5 /* restore signal mask in do_signal() */ | 123 | #define TIF_RESTORE_SIGMASK 5 /* restore signal mask in do_signal() */ |
124 | #define TIF_FREEZE 6 /* is freezing for suspend */ | 124 | #define TIF_FREEZE 6 /* is freezing for suspend */ |
125 | #define TIF_IRQ_SYNC 7 /* sync pipeline stage */ | ||
125 | 126 | ||
126 | /* as above, but as bit values */ | 127 | /* as above, but as bit values */ |
127 | #define _TIF_SYSCALL_TRACE (1<<TIF_SYSCALL_TRACE) | 128 | #define _TIF_SYSCALL_TRACE (1<<TIF_SYSCALL_TRACE) |
@@ -130,6 +131,7 @@ static inline struct thread_info *current_thread_info(void) | |||
130 | #define _TIF_POLLING_NRFLAG (1<<TIF_POLLING_NRFLAG) | 131 | #define _TIF_POLLING_NRFLAG (1<<TIF_POLLING_NRFLAG) |
131 | #define _TIF_RESTORE_SIGMASK (1<<TIF_RESTORE_SIGMASK) | 132 | #define _TIF_RESTORE_SIGMASK (1<<TIF_RESTORE_SIGMASK) |
132 | #define _TIF_FREEZE (1<<TIF_FREEZE) | 133 | #define _TIF_FREEZE (1<<TIF_FREEZE) |
134 | #define _TIF_IRQ_SYNC (1<<TIF_IRQ_SYNC) | ||
133 | 135 | ||
134 | #define _TIF_WORK_MASK 0x0000FFFE /* work to do on interrupt/exception return */ | 136 | #define _TIF_WORK_MASK 0x0000FFFE /* work to do on interrupt/exception return */ |
135 | 137 | ||
diff --git a/arch/blackfin/kernel/Makefile b/arch/blackfin/kernel/Makefile index 4a92a86824b7..fd4d4328a0f2 100644 --- a/arch/blackfin/kernel/Makefile +++ b/arch/blackfin/kernel/Makefile | |||
@@ -15,13 +15,15 @@ else | |||
15 | obj-y += time.o | 15 | obj-y += time.o |
16 | endif | 16 | endif |
17 | 17 | ||
18 | CFLAGS_kgdb_test.o := -mlong-calls -O0 | ||
19 | |||
20 | obj-$(CONFIG_IPIPE) += ipipe.o | 18 | obj-$(CONFIG_IPIPE) += ipipe.o |
21 | obj-$(CONFIG_IPIPE_TRACE_MCOUNT) += mcount.o | 19 | obj-$(CONFIG_IPIPE_TRACE_MCOUNT) += mcount.o |
22 | obj-$(CONFIG_BFIN_GPTIMERS) += gptimers.o | 20 | obj-$(CONFIG_BFIN_GPTIMERS) += gptimers.o |
23 | obj-$(CONFIG_CPLB_INFO) += cplbinfo.o | 21 | obj-$(CONFIG_CPLB_INFO) += cplbinfo.o |
24 | obj-$(CONFIG_MODULES) += module.o | 22 | obj-$(CONFIG_MODULES) += module.o |
25 | obj-$(CONFIG_KGDB) += kgdb.o | 23 | obj-$(CONFIG_KGDB) += kgdb.o |
26 | obj-$(CONFIG_KGDB_TESTCASE) += kgdb_test.o | 24 | obj-$(CONFIG_KGDB_TESTS) += kgdb_test.o |
27 | obj-$(CONFIG_EARLY_PRINTK) += early_printk.o | 25 | obj-$(CONFIG_EARLY_PRINTK) += early_printk.o |
26 | |||
27 | # the kgdb test puts code into L2 and without linker | ||
28 | # relaxation, we need to force long calls to/from it | ||
29 | CFLAGS_kgdb_test.o := -mlong-calls -O0 | ||
diff --git a/arch/blackfin/kernel/cplb-nompu/cplbinit.c b/arch/blackfin/kernel/cplb-nompu/cplbinit.c index 0e28f7595733..d6c067782e63 100644 --- a/arch/blackfin/kernel/cplb-nompu/cplbinit.c +++ b/arch/blackfin/kernel/cplb-nompu/cplbinit.c | |||
@@ -53,9 +53,13 @@ void __init generate_cplb_tables_cpu(unsigned int cpu) | |||
53 | 53 | ||
54 | i_d = i_i = 0; | 54 | i_d = i_i = 0; |
55 | 55 | ||
56 | #ifdef CONFIG_DEBUG_HUNT_FOR_ZERO | ||
56 | /* Set up the zero page. */ | 57 | /* Set up the zero page. */ |
57 | d_tbl[i_d].addr = 0; | 58 | d_tbl[i_d].addr = 0; |
58 | d_tbl[i_d++].data = SDRAM_OOPS | PAGE_SIZE_1KB; | 59 | d_tbl[i_d++].data = SDRAM_OOPS | PAGE_SIZE_1KB; |
60 | i_tbl[i_i].addr = 0; | ||
61 | i_tbl[i_i++].data = SDRAM_OOPS | PAGE_SIZE_1KB; | ||
62 | #endif | ||
59 | 63 | ||
60 | /* Cover kernel memory with 4M pages. */ | 64 | /* Cover kernel memory with 4M pages. */ |
61 | addr = 0; | 65 | addr = 0; |
diff --git a/arch/blackfin/kernel/ipipe.c b/arch/blackfin/kernel/ipipe.c index 339be5a3ae6a..a5de8d45424c 100644 --- a/arch/blackfin/kernel/ipipe.c +++ b/arch/blackfin/kernel/ipipe.c | |||
@@ -35,14 +35,8 @@ | |||
35 | #include <asm/atomic.h> | 35 | #include <asm/atomic.h> |
36 | #include <asm/io.h> | 36 | #include <asm/io.h> |
37 | 37 | ||
38 | static int create_irq_threads; | ||
39 | |||
40 | DEFINE_PER_CPU(struct pt_regs, __ipipe_tick_regs); | 38 | DEFINE_PER_CPU(struct pt_regs, __ipipe_tick_regs); |
41 | 39 | ||
42 | static DEFINE_PER_CPU(unsigned long, pending_irqthread_mask); | ||
43 | |||
44 | static DEFINE_PER_CPU(int [IVG13 + 1], pending_irq_count); | ||
45 | |||
46 | asmlinkage void asm_do_IRQ(unsigned int irq, struct pt_regs *regs); | 40 | asmlinkage void asm_do_IRQ(unsigned int irq, struct pt_regs *regs); |
47 | 41 | ||
48 | static void __ipipe_no_irqtail(void); | 42 | static void __ipipe_no_irqtail(void); |
@@ -93,6 +87,7 @@ void __ipipe_enable_pipeline(void) | |||
93 | */ | 87 | */ |
94 | void __ipipe_handle_irq(unsigned irq, struct pt_regs *regs) | 88 | void __ipipe_handle_irq(unsigned irq, struct pt_regs *regs) |
95 | { | 89 | { |
90 | struct ipipe_percpu_domain_data *p = ipipe_root_cpudom_ptr(); | ||
96 | struct ipipe_domain *this_domain, *next_domain; | 91 | struct ipipe_domain *this_domain, *next_domain; |
97 | struct list_head *head, *pos; | 92 | struct list_head *head, *pos; |
98 | int m_ack, s = -1; | 93 | int m_ack, s = -1; |
@@ -104,7 +99,6 @@ void __ipipe_handle_irq(unsigned irq, struct pt_regs *regs) | |||
104 | * interrupt. | 99 | * interrupt. |
105 | */ | 100 | */ |
106 | m_ack = (regs == NULL || irq == IRQ_SYSTMR || irq == IRQ_CORETMR); | 101 | m_ack = (regs == NULL || irq == IRQ_SYSTMR || irq == IRQ_CORETMR); |
107 | |||
108 | this_domain = ipipe_current_domain; | 102 | this_domain = ipipe_current_domain; |
109 | 103 | ||
110 | if (unlikely(test_bit(IPIPE_STICKY_FLAG, &this_domain->irqs[irq].control))) | 104 | if (unlikely(test_bit(IPIPE_STICKY_FLAG, &this_domain->irqs[irq].control))) |
@@ -114,49 +108,28 @@ void __ipipe_handle_irq(unsigned irq, struct pt_regs *regs) | |||
114 | next_domain = list_entry(head, struct ipipe_domain, p_link); | 108 | next_domain = list_entry(head, struct ipipe_domain, p_link); |
115 | if (likely(test_bit(IPIPE_WIRED_FLAG, &next_domain->irqs[irq].control))) { | 109 | if (likely(test_bit(IPIPE_WIRED_FLAG, &next_domain->irqs[irq].control))) { |
116 | if (!m_ack && next_domain->irqs[irq].acknowledge != NULL) | 110 | if (!m_ack && next_domain->irqs[irq].acknowledge != NULL) |
117 | next_domain->irqs[irq].acknowledge(irq, irq_desc + irq); | 111 | next_domain->irqs[irq].acknowledge(irq, irq_to_desc(irq)); |
118 | if (test_bit(IPIPE_ROOTLOCK_FLAG, &ipipe_root_domain->flags)) | 112 | if (test_bit(IPIPE_SYNCDEFER_FLAG, &p->status)) |
119 | s = __test_and_set_bit(IPIPE_STALL_FLAG, | 113 | s = __test_and_set_bit(IPIPE_STALL_FLAG, &p->status); |
120 | &ipipe_root_cpudom_var(status)); | ||
121 | __ipipe_dispatch_wired(next_domain, irq); | 114 | __ipipe_dispatch_wired(next_domain, irq); |
122 | goto finalize; | 115 | goto out; |
123 | return; | ||
124 | } | 116 | } |
125 | } | 117 | } |
126 | 118 | ||
127 | /* Ack the interrupt. */ | 119 | /* Ack the interrupt. */ |
128 | 120 | ||
129 | pos = head; | 121 | pos = head; |
130 | |||
131 | while (pos != &__ipipe_pipeline) { | 122 | while (pos != &__ipipe_pipeline) { |
132 | next_domain = list_entry(pos, struct ipipe_domain, p_link); | 123 | next_domain = list_entry(pos, struct ipipe_domain, p_link); |
133 | /* | ||
134 | * For each domain handling the incoming IRQ, mark it | ||
135 | * as pending in its log. | ||
136 | */ | ||
137 | if (test_bit(IPIPE_HANDLE_FLAG, &next_domain->irqs[irq].control)) { | 124 | if (test_bit(IPIPE_HANDLE_FLAG, &next_domain->irqs[irq].control)) { |
138 | /* | ||
139 | * Domains that handle this IRQ are polled for | ||
140 | * acknowledging it by decreasing priority | ||
141 | * order. The interrupt must be made pending | ||
142 | * _first_ in the domain's status flags before | ||
143 | * the PIC is unlocked. | ||
144 | */ | ||
145 | __ipipe_set_irq_pending(next_domain, irq); | 125 | __ipipe_set_irq_pending(next_domain, irq); |
146 | |||
147 | if (!m_ack && next_domain->irqs[irq].acknowledge != NULL) { | 126 | if (!m_ack && next_domain->irqs[irq].acknowledge != NULL) { |
148 | next_domain->irqs[irq].acknowledge(irq, irq_desc + irq); | 127 | next_domain->irqs[irq].acknowledge(irq, irq_to_desc(irq)); |
149 | m_ack = 1; | 128 | m_ack = 1; |
150 | } | 129 | } |
151 | } | 130 | } |
152 | |||
153 | /* | ||
154 | * If the domain does not want the IRQ to be passed | ||
155 | * down the interrupt pipe, exit the loop now. | ||
156 | */ | ||
157 | if (!test_bit(IPIPE_PASS_FLAG, &next_domain->irqs[irq].control)) | 131 | if (!test_bit(IPIPE_PASS_FLAG, &next_domain->irqs[irq].control)) |
158 | break; | 132 | break; |
159 | |||
160 | pos = next_domain->p_link.next; | 133 | pos = next_domain->p_link.next; |
161 | } | 134 | } |
162 | 135 | ||
@@ -166,18 +139,24 @@ void __ipipe_handle_irq(unsigned irq, struct pt_regs *regs) | |||
166 | * immediately to the current domain if the interrupt has been | 139 | * immediately to the current domain if the interrupt has been |
167 | * marked as 'sticky'. This search does not go beyond the | 140 | * marked as 'sticky'. This search does not go beyond the |
168 | * current domain in the pipeline. We also enforce the | 141 | * current domain in the pipeline. We also enforce the |
169 | * additional root stage lock (blackfin-specific). */ | 142 | * additional root stage lock (blackfin-specific). |
143 | */ | ||
144 | if (test_bit(IPIPE_SYNCDEFER_FLAG, &p->status)) | ||
145 | s = __test_and_set_bit(IPIPE_STALL_FLAG, &p->status); | ||
170 | 146 | ||
171 | if (test_bit(IPIPE_ROOTLOCK_FLAG, &ipipe_root_domain->flags)) | 147 | /* |
172 | s = __test_and_set_bit(IPIPE_STALL_FLAG, | 148 | * If the interrupt preempted the head domain, then do not |
173 | &ipipe_root_cpudom_var(status)); | 149 | * even try to walk the pipeline, unless an interrupt is |
174 | finalize: | 150 | * pending for it. |
151 | */ | ||
152 | if (test_bit(IPIPE_AHEAD_FLAG, &this_domain->flags) && | ||
153 | ipipe_head_cpudom_var(irqpend_himask) == 0) | ||
154 | goto out; | ||
175 | 155 | ||
176 | __ipipe_walk_pipeline(head); | 156 | __ipipe_walk_pipeline(head); |
177 | 157 | out: | |
178 | if (!s) | 158 | if (!s) |
179 | __clear_bit(IPIPE_STALL_FLAG, | 159 | __clear_bit(IPIPE_STALL_FLAG, &p->status); |
180 | &ipipe_root_cpudom_var(status)); | ||
181 | } | 160 | } |
182 | 161 | ||
183 | int __ipipe_check_root(void) | 162 | int __ipipe_check_root(void) |
@@ -187,7 +166,7 @@ int __ipipe_check_root(void) | |||
187 | 166 | ||
188 | void __ipipe_enable_irqdesc(struct ipipe_domain *ipd, unsigned irq) | 167 | void __ipipe_enable_irqdesc(struct ipipe_domain *ipd, unsigned irq) |
189 | { | 168 | { |
190 | struct irq_desc *desc = irq_desc + irq; | 169 | struct irq_desc *desc = irq_to_desc(irq); |
191 | int prio = desc->ic_prio; | 170 | int prio = desc->ic_prio; |
192 | 171 | ||
193 | desc->depth = 0; | 172 | desc->depth = 0; |
@@ -199,7 +178,7 @@ EXPORT_SYMBOL(__ipipe_enable_irqdesc); | |||
199 | 178 | ||
200 | void __ipipe_disable_irqdesc(struct ipipe_domain *ipd, unsigned irq) | 179 | void __ipipe_disable_irqdesc(struct ipipe_domain *ipd, unsigned irq) |
201 | { | 180 | { |
202 | struct irq_desc *desc = irq_desc + irq; | 181 | struct irq_desc *desc = irq_to_desc(irq); |
203 | int prio = desc->ic_prio; | 182 | int prio = desc->ic_prio; |
204 | 183 | ||
205 | if (ipd != &ipipe_root && | 184 | if (ipd != &ipipe_root && |
@@ -236,15 +215,18 @@ int __ipipe_syscall_root(struct pt_regs *regs) | |||
236 | { | 215 | { |
237 | unsigned long flags; | 216 | unsigned long flags; |
238 | 217 | ||
239 | /* We need to run the IRQ tail hook whenever we don't | 218 | /* |
219 | * We need to run the IRQ tail hook whenever we don't | ||
240 | * propagate a syscall to higher domains, because we know that | 220 | * propagate a syscall to higher domains, because we know that |
241 | * important operations might be pending there (e.g. Xenomai | 221 | * important operations might be pending there (e.g. Xenomai |
242 | * deferred rescheduling). */ | 222 | * deferred rescheduling). |
223 | */ | ||
243 | 224 | ||
244 | if (!__ipipe_syscall_watched_p(current, regs->orig_p0)) { | 225 | if (regs->orig_p0 < NR_syscalls) { |
245 | void (*hook)(void) = (void (*)(void))__ipipe_irq_tail_hook; | 226 | void (*hook)(void) = (void (*)(void))__ipipe_irq_tail_hook; |
246 | hook(); | 227 | hook(); |
247 | return 0; | 228 | if ((current->flags & PF_EVNOTIFY) == 0) |
229 | return 0; | ||
248 | } | 230 | } |
249 | 231 | ||
250 | /* | 232 | /* |
@@ -312,112 +294,46 @@ int ipipe_trigger_irq(unsigned irq) | |||
312 | { | 294 | { |
313 | unsigned long flags; | 295 | unsigned long flags; |
314 | 296 | ||
297 | #ifdef CONFIG_IPIPE_DEBUG | ||
315 | if (irq >= IPIPE_NR_IRQS || | 298 | if (irq >= IPIPE_NR_IRQS || |
316 | (ipipe_virtual_irq_p(irq) | 299 | (ipipe_virtual_irq_p(irq) |
317 | && !test_bit(irq - IPIPE_VIRQ_BASE, &__ipipe_virtual_irq_map))) | 300 | && !test_bit(irq - IPIPE_VIRQ_BASE, &__ipipe_virtual_irq_map))) |
318 | return -EINVAL; | 301 | return -EINVAL; |
302 | #endif | ||
319 | 303 | ||
320 | local_irq_save_hw(flags); | 304 | local_irq_save_hw(flags); |
321 | |||
322 | __ipipe_handle_irq(irq, NULL); | 305 | __ipipe_handle_irq(irq, NULL); |
323 | |||
324 | local_irq_restore_hw(flags); | 306 | local_irq_restore_hw(flags); |
325 | 307 | ||
326 | return 1; | 308 | return 1; |
327 | } | 309 | } |
328 | 310 | ||
329 | /* Move Linux IRQ to threads. */ | 311 | asmlinkage void __ipipe_sync_root(void) |
330 | |||
331 | static int do_irqd(void *__desc) | ||
332 | { | 312 | { |
333 | struct irq_desc *desc = __desc; | 313 | unsigned long flags; |
334 | unsigned irq = desc - irq_desc; | ||
335 | int thrprio = desc->thr_prio; | ||
336 | int thrmask = 1 << thrprio; | ||
337 | int cpu = smp_processor_id(); | ||
338 | cpumask_t cpumask; | ||
339 | |||
340 | sigfillset(¤t->blocked); | ||
341 | current->flags |= PF_NOFREEZE; | ||
342 | cpumask = cpumask_of_cpu(cpu); | ||
343 | set_cpus_allowed(current, cpumask); | ||
344 | ipipe_setscheduler_root(current, SCHED_FIFO, 50 + thrprio); | ||
345 | |||
346 | while (!kthread_should_stop()) { | ||
347 | local_irq_disable(); | ||
348 | if (!(desc->status & IRQ_SCHEDULED)) { | ||
349 | set_current_state(TASK_INTERRUPTIBLE); | ||
350 | resched: | ||
351 | local_irq_enable(); | ||
352 | schedule(); | ||
353 | local_irq_disable(); | ||
354 | } | ||
355 | __set_current_state(TASK_RUNNING); | ||
356 | /* | ||
357 | * If higher priority interrupt servers are ready to | ||
358 | * run, reschedule immediately. We need this for the | ||
359 | * GPIO demux IRQ handler to unmask the interrupt line | ||
360 | * _last_, after all GPIO IRQs have run. | ||
361 | */ | ||
362 | if (per_cpu(pending_irqthread_mask, cpu) & ~(thrmask|(thrmask-1))) | ||
363 | goto resched; | ||
364 | if (--per_cpu(pending_irq_count[thrprio], cpu) == 0) | ||
365 | per_cpu(pending_irqthread_mask, cpu) &= ~thrmask; | ||
366 | desc->status &= ~IRQ_SCHEDULED; | ||
367 | desc->thr_handler(irq, &__raw_get_cpu_var(__ipipe_tick_regs)); | ||
368 | local_irq_enable(); | ||
369 | } | ||
370 | __set_current_state(TASK_RUNNING); | ||
371 | return 0; | ||
372 | } | ||
373 | 314 | ||
374 | static void kick_irqd(unsigned irq, void *cookie) | 315 | BUG_ON(irqs_disabled()); |
375 | { | ||
376 | struct irq_desc *desc = irq_desc + irq; | ||
377 | int thrprio = desc->thr_prio; | ||
378 | int thrmask = 1 << thrprio; | ||
379 | int cpu = smp_processor_id(); | ||
380 | |||
381 | if (!(desc->status & IRQ_SCHEDULED)) { | ||
382 | desc->status |= IRQ_SCHEDULED; | ||
383 | per_cpu(pending_irqthread_mask, cpu) |= thrmask; | ||
384 | ++per_cpu(pending_irq_count[thrprio], cpu); | ||
385 | wake_up_process(desc->thread); | ||
386 | } | ||
387 | } | ||
388 | 316 | ||
389 | int ipipe_start_irq_thread(unsigned irq, struct irq_desc *desc) | 317 | local_irq_save_hw(flags); |
390 | { | ||
391 | if (desc->thread || !create_irq_threads) | ||
392 | return 0; | ||
393 | |||
394 | desc->thread = kthread_create(do_irqd, desc, "IRQ %d", irq); | ||
395 | if (desc->thread == NULL) { | ||
396 | printk(KERN_ERR "irqd: could not create IRQ thread %d!\n", irq); | ||
397 | return -ENOMEM; | ||
398 | } | ||
399 | 318 | ||
400 | wake_up_process(desc->thread); | 319 | clear_thread_flag(TIF_IRQ_SYNC); |
401 | 320 | ||
402 | desc->thr_handler = ipipe_root_domain->irqs[irq].handler; | 321 | if (ipipe_root_cpudom_var(irqpend_himask) != 0) |
403 | ipipe_root_domain->irqs[irq].handler = &kick_irqd; | 322 | __ipipe_sync_pipeline(IPIPE_IRQMASK_ANY); |
404 | 323 | ||
405 | return 0; | 324 | local_irq_restore_hw(flags); |
406 | } | 325 | } |
407 | 326 | ||
408 | void __init ipipe_init_irq_threads(void) | 327 | void ___ipipe_sync_pipeline(unsigned long syncmask) |
409 | { | 328 | { |
410 | unsigned irq; | 329 | struct ipipe_domain *ipd = ipipe_current_domain; |
411 | struct irq_desc *desc; | ||
412 | |||
413 | create_irq_threads = 1; | ||
414 | 330 | ||
415 | for (irq = 0; irq < NR_IRQS; irq++) { | 331 | if (ipd == ipipe_root_domain) { |
416 | desc = irq_desc + irq; | 332 | if (test_bit(IPIPE_SYNCDEFER_FLAG, &ipipe_root_cpudom_var(status))) |
417 | if (desc->action != NULL || | 333 | return; |
418 | (desc->status & IRQ_NOREQUEST) != 0) | ||
419 | ipipe_start_irq_thread(irq, desc); | ||
420 | } | 334 | } |
335 | |||
336 | __ipipe_sync_stage(syncmask); | ||
421 | } | 337 | } |
422 | 338 | ||
423 | EXPORT_SYMBOL(show_stack); | 339 | EXPORT_SYMBOL(show_stack); |
diff --git a/arch/blackfin/kernel/irqchip.c b/arch/blackfin/kernel/irqchip.c index 75724eee6494..7fd126564846 100644 --- a/arch/blackfin/kernel/irqchip.c +++ b/arch/blackfin/kernel/irqchip.c | |||
@@ -144,11 +144,15 @@ asmlinkage void asm_do_IRQ(unsigned int irq, struct pt_regs *regs) | |||
144 | #endif | 144 | #endif |
145 | generic_handle_irq(irq); | 145 | generic_handle_irq(irq); |
146 | 146 | ||
147 | #ifndef CONFIG_IPIPE /* Useless and bugous over the I-pipe: IRQs are threaded. */ | 147 | #ifndef CONFIG_IPIPE |
148 | /* If we're the only interrupt running (ignoring IRQ15 which is for | 148 | /* |
149 | syscalls), lower our priority to IRQ14 so that softirqs run at | 149 | * If we're the only interrupt running (ignoring IRQ15 which |
150 | that level. If there's another, lower-level interrupt, irq_exit | 150 | * is for syscalls), lower our priority to IRQ14 so that |
151 | will defer softirqs to that. */ | 151 | * softirqs run at that level. If there's another, |
152 | * lower-level interrupt, irq_exit will defer softirqs to | ||
153 | * that. If the interrupt pipeline is enabled, we are already | ||
154 | * running at IRQ14 priority, so we don't need this code. | ||
155 | */ | ||
152 | CSYNC(); | 156 | CSYNC(); |
153 | pending = bfin_read_IPEND() & ~0x8000; | 157 | pending = bfin_read_IPEND() & ~0x8000; |
154 | other_ints = pending & (pending - 1); | 158 | other_ints = pending & (pending - 1); |
diff --git a/arch/blackfin/kernel/kgdb_test.c b/arch/blackfin/kernel/kgdb_test.c index 3dba9c17304a..dbcf3e45cb0b 100644 --- a/arch/blackfin/kernel/kgdb_test.c +++ b/arch/blackfin/kernel/kgdb_test.c | |||
@@ -20,6 +20,7 @@ | |||
20 | static char cmdline[256]; | 20 | static char cmdline[256]; |
21 | static unsigned long len; | 21 | static unsigned long len; |
22 | 22 | ||
23 | #ifndef CONFIG_SMP | ||
23 | static int num1 __attribute__((l1_data)); | 24 | static int num1 __attribute__((l1_data)); |
24 | 25 | ||
25 | void kgdb_l1_test(void) __attribute__((l1_text)); | 26 | void kgdb_l1_test(void) __attribute__((l1_text)); |
@@ -32,6 +33,8 @@ void kgdb_l1_test(void) | |||
32 | printk(KERN_ALERT "L1(after change) : data variable addr = 0x%p, data value is %d\n", &num1, num1); | 33 | printk(KERN_ALERT "L1(after change) : data variable addr = 0x%p, data value is %d\n", &num1, num1); |
33 | return ; | 34 | return ; |
34 | } | 35 | } |
36 | #endif | ||
37 | |||
35 | #if L2_LENGTH | 38 | #if L2_LENGTH |
36 | 39 | ||
37 | static int num2 __attribute__((l2)); | 40 | static int num2 __attribute__((l2)); |
@@ -59,10 +62,12 @@ int kgdb_test(char *name, int len, int count, int z) | |||
59 | static int test_proc_output(char *buf) | 62 | static int test_proc_output(char *buf) |
60 | { | 63 | { |
61 | kgdb_test("hello world!", 12, 0x55, 0x10); | 64 | kgdb_test("hello world!", 12, 0x55, 0x10); |
65 | #ifndef CONFIG_SMP | ||
62 | kgdb_l1_test(); | 66 | kgdb_l1_test(); |
63 | #if L2_LENGTH | 67 | #endif |
68 | #if L2_LENGTH | ||
64 | kgdb_l2_test(); | 69 | kgdb_l2_test(); |
65 | #endif | 70 | #endif |
66 | 71 | ||
67 | return 0; | 72 | return 0; |
68 | } | 73 | } |
diff --git a/arch/blackfin/kernel/ptrace.c b/arch/blackfin/kernel/ptrace.c index 594e325b40e4..d76618db50df 100644 --- a/arch/blackfin/kernel/ptrace.c +++ b/arch/blackfin/kernel/ptrace.c | |||
@@ -45,6 +45,7 @@ | |||
45 | #include <asm/asm-offsets.h> | 45 | #include <asm/asm-offsets.h> |
46 | #include <asm/dma.h> | 46 | #include <asm/dma.h> |
47 | #include <asm/fixed_code.h> | 47 | #include <asm/fixed_code.h> |
48 | #include <asm/cacheflush.h> | ||
48 | #include <asm/mem_map.h> | 49 | #include <asm/mem_map.h> |
49 | 50 | ||
50 | #define TEXT_OFFSET 0 | 51 | #define TEXT_OFFSET 0 |
@@ -240,7 +241,7 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
240 | 241 | ||
241 | } else if (addr >= FIXED_CODE_START | 242 | } else if (addr >= FIXED_CODE_START |
242 | && addr + sizeof(tmp) <= FIXED_CODE_END) { | 243 | && addr + sizeof(tmp) <= FIXED_CODE_END) { |
243 | memcpy(&tmp, (const void *)(addr), sizeof(tmp)); | 244 | copy_from_user_page(0, 0, 0, &tmp, (const void *)(addr), sizeof(tmp)); |
244 | copied = sizeof(tmp); | 245 | copied = sizeof(tmp); |
245 | 246 | ||
246 | } else | 247 | } else |
@@ -320,7 +321,7 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
320 | 321 | ||
321 | } else if (addr >= FIXED_CODE_START | 322 | } else if (addr >= FIXED_CODE_START |
322 | && addr + sizeof(data) <= FIXED_CODE_END) { | 323 | && addr + sizeof(data) <= FIXED_CODE_END) { |
323 | memcpy((void *)(addr), &data, sizeof(data)); | 324 | copy_to_user_page(0, 0, 0, (void *)(addr), &data, sizeof(data)); |
324 | copied = sizeof(data); | 325 | copied = sizeof(data); |
325 | 326 | ||
326 | } else | 327 | } else |
diff --git a/arch/blackfin/kernel/setup.c b/arch/blackfin/kernel/setup.c index e5c116230800..a58687bdee6a 100644 --- a/arch/blackfin/kernel/setup.c +++ b/arch/blackfin/kernel/setup.c | |||
@@ -889,6 +889,10 @@ void __init setup_arch(char **cmdline_p) | |||
889 | CPU, bfin_revid()); | 889 | CPU, bfin_revid()); |
890 | } | 890 | } |
891 | 891 | ||
892 | /* We can't run on BF548-0.1 due to ANOMALY 05000448 */ | ||
893 | if (bfin_cpuid() == 0x27de && bfin_revid() == 1) | ||
894 | panic("You can't run on this processor due to 05000448\n"); | ||
895 | |||
892 | printk(KERN_INFO "Blackfin Linux support by http://blackfin.uclinux.org/\n"); | 896 | printk(KERN_INFO "Blackfin Linux support by http://blackfin.uclinux.org/\n"); |
893 | 897 | ||
894 | printk(KERN_INFO "Processor Speed: %lu MHz core clock and %lu MHz System Clock\n", | 898 | printk(KERN_INFO "Processor Speed: %lu MHz core clock and %lu MHz System Clock\n", |
@@ -1141,12 +1145,12 @@ static int show_cpuinfo(struct seq_file *m, void *v) | |||
1141 | icache_size = 0; | 1145 | icache_size = 0; |
1142 | 1146 | ||
1143 | seq_printf(m, "cache size\t: %d KB(L1 icache) " | 1147 | seq_printf(m, "cache size\t: %d KB(L1 icache) " |
1144 | "%d KB(L1 dcache-%s) %d KB(L2 cache)\n", | 1148 | "%d KB(L1 dcache%s) %d KB(L2 cache)\n", |
1145 | icache_size, dcache_size, | 1149 | icache_size, dcache_size, |
1146 | #if defined CONFIG_BFIN_WB | 1150 | #if defined CONFIG_BFIN_WB |
1147 | "wb" | 1151 | "-wb" |
1148 | #elif defined CONFIG_BFIN_WT | 1152 | #elif defined CONFIG_BFIN_WT |
1149 | "wt" | 1153 | "-wt" |
1150 | #endif | 1154 | #endif |
1151 | "", 0); | 1155 | "", 0); |
1152 | 1156 | ||
diff --git a/arch/blackfin/kernel/time.c b/arch/blackfin/kernel/time.c index 172b4c588467..1bbacfbd4c5d 100644 --- a/arch/blackfin/kernel/time.c +++ b/arch/blackfin/kernel/time.c | |||
@@ -134,7 +134,10 @@ irqreturn_t timer_interrupt(int irq, void *dummy) | |||
134 | 134 | ||
135 | write_seqlock(&xtime_lock); | 135 | write_seqlock(&xtime_lock); |
136 | #if defined(CONFIG_TICK_SOURCE_SYSTMR0) && !defined(CONFIG_IPIPE) | 136 | #if defined(CONFIG_TICK_SOURCE_SYSTMR0) && !defined(CONFIG_IPIPE) |
137 | /* FIXME: Here TIMIL0 is not set when IPIPE enabled, why? */ | 137 | /* |
138 | * TIMIL0 is latched in __ipipe_grab_irq() when the I-Pipe is | ||
139 | * enabled. | ||
140 | */ | ||
138 | if (get_gptimer_status(0) & TIMER_STATUS_TIMIL0) { | 141 | if (get_gptimer_status(0) & TIMER_STATUS_TIMIL0) { |
139 | #endif | 142 | #endif |
140 | do_timer(1); | 143 | do_timer(1); |
diff --git a/arch/blackfin/mach-bf518/boards/ezbrd.c b/arch/blackfin/mach-bf518/boards/ezbrd.c index 0e175342112e..41f2eacfef20 100644 --- a/arch/blackfin/mach-bf518/boards/ezbrd.c +++ b/arch/blackfin/mach-bf518/boards/ezbrd.c | |||
@@ -113,7 +113,6 @@ static struct platform_device bfin_mac_device = { | |||
113 | .name = "bfin_mac", | 113 | .name = "bfin_mac", |
114 | .dev.platform_data = &bfin_mii_bus, | 114 | .dev.platform_data = &bfin_mii_bus, |
115 | }; | 115 | }; |
116 | #endif | ||
117 | 116 | ||
118 | #if defined(CONFIG_NET_DSA_KSZ8893M) || defined(CONFIG_NET_DSA_KSZ8893M_MODULE) | 117 | #if defined(CONFIG_NET_DSA_KSZ8893M) || defined(CONFIG_NET_DSA_KSZ8893M_MODULE) |
119 | static struct dsa_platform_data ksz8893m_switch_data = { | 118 | static struct dsa_platform_data ksz8893m_switch_data = { |
@@ -132,6 +131,7 @@ static struct platform_device ksz8893m_switch_device = { | |||
132 | .dev.platform_data = &ksz8893m_switch_data, | 131 | .dev.platform_data = &ksz8893m_switch_data, |
133 | }; | 132 | }; |
134 | #endif | 133 | #endif |
134 | #endif | ||
135 | 135 | ||
136 | #if defined(CONFIG_MTD_M25P80) \ | 136 | #if defined(CONFIG_MTD_M25P80) \ |
137 | || defined(CONFIG_MTD_M25P80_MODULE) | 137 | || defined(CONFIG_MTD_M25P80_MODULE) |
@@ -171,6 +171,7 @@ static struct bfin5xx_spi_chip spi_adc_chip_info = { | |||
171 | }; | 171 | }; |
172 | #endif | 172 | #endif |
173 | 173 | ||
174 | #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) | ||
174 | #if defined(CONFIG_NET_DSA_KSZ8893M) \ | 175 | #if defined(CONFIG_NET_DSA_KSZ8893M) \ |
175 | || defined(CONFIG_NET_DSA_KSZ8893M_MODULE) | 176 | || defined(CONFIG_NET_DSA_KSZ8893M_MODULE) |
176 | /* SPI SWITCH CHIP */ | 177 | /* SPI SWITCH CHIP */ |
@@ -179,10 +180,11 @@ static struct bfin5xx_spi_chip spi_switch_info = { | |||
179 | .bits_per_word = 8, | 180 | .bits_per_word = 8, |
180 | }; | 181 | }; |
181 | #endif | 182 | #endif |
183 | #endif | ||
182 | 184 | ||
183 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 185 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
184 | static struct bfin5xx_spi_chip spi_mmc_chip_info = { | 186 | static struct bfin5xx_spi_chip mmc_spi_chip_info = { |
185 | .enable_dma = 1, | 187 | .enable_dma = 0, |
186 | .bits_per_word = 8, | 188 | .bits_per_word = 8, |
187 | }; | 189 | }; |
188 | #endif | 190 | #endif |
@@ -259,6 +261,7 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = { | |||
259 | }, | 261 | }, |
260 | #endif | 262 | #endif |
261 | 263 | ||
264 | #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) | ||
262 | #if defined(CONFIG_NET_DSA_KSZ8893M) \ | 265 | #if defined(CONFIG_NET_DSA_KSZ8893M) \ |
263 | || defined(CONFIG_NET_DSA_KSZ8893M_MODULE) | 266 | || defined(CONFIG_NET_DSA_KSZ8893M_MODULE) |
264 | { | 267 | { |
@@ -271,24 +274,15 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = { | |||
271 | .mode = SPI_MODE_3, | 274 | .mode = SPI_MODE_3, |
272 | }, | 275 | }, |
273 | #endif | 276 | #endif |
277 | #endif | ||
274 | 278 | ||
275 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 279 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
276 | { | 280 | { |
277 | .modalias = "spi_mmc_dummy", | 281 | .modalias = "mmc_spi", |
278 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ | 282 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ |
279 | .bus_num = 0, | 283 | .bus_num = 0, |
280 | .chip_select = 0, | 284 | .chip_select = 5, |
281 | .platform_data = NULL, | 285 | .controller_data = &mmc_spi_chip_info, |
282 | .controller_data = &spi_mmc_chip_info, | ||
283 | .mode = SPI_MODE_3, | ||
284 | }, | ||
285 | { | ||
286 | .modalias = "spi_mmc", | ||
287 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ | ||
288 | .bus_num = 0, | ||
289 | .chip_select = CONFIG_SPI_MMC_CS_CHAN, | ||
290 | .platform_data = NULL, | ||
291 | .controller_data = &spi_mmc_chip_info, | ||
292 | .mode = SPI_MODE_3, | 286 | .mode = SPI_MODE_3, |
293 | }, | 287 | }, |
294 | #endif | 288 | #endif |
@@ -630,11 +624,10 @@ static struct platform_device *stamp_devices[] __initdata = { | |||
630 | #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) | 624 | #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) |
631 | &bfin_mii_bus, | 625 | &bfin_mii_bus, |
632 | &bfin_mac_device, | 626 | &bfin_mac_device, |
633 | #endif | ||
634 | |||
635 | #if defined(CONFIG_NET_DSA_KSZ8893M) || defined(CONFIG_NET_DSA_KSZ8893M_MODULE) | 627 | #if defined(CONFIG_NET_DSA_KSZ8893M) || defined(CONFIG_NET_DSA_KSZ8893M_MODULE) |
636 | &ksz8893m_switch_device, | 628 | &ksz8893m_switch_device, |
637 | #endif | 629 | #endif |
630 | #endif | ||
638 | 631 | ||
639 | #if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE) | 632 | #if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE) |
640 | &bfin_spi0_device, | 633 | &bfin_spi0_device, |
diff --git a/arch/blackfin/mach-bf518/include/mach/anomaly.h b/arch/blackfin/mach-bf518/include/mach/anomaly.h index e5b4bef0edae..c847bb101076 100644 --- a/arch/blackfin/mach-bf518/include/mach/anomaly.h +++ b/arch/blackfin/mach-bf518/include/mach/anomaly.h | |||
@@ -2,12 +2,12 @@ | |||
2 | * File: include/asm-blackfin/mach-bf518/anomaly.h | 2 | * File: include/asm-blackfin/mach-bf518/anomaly.h |
3 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | 3 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ |
4 | * | 4 | * |
5 | * Copyright (C) 2004-2008 Analog Devices Inc. | 5 | * Copyright (C) 2004-2009 Analog Devices Inc. |
6 | * Licensed under the GPL-2 or later. | 6 | * Licensed under the GPL-2 or later. |
7 | */ | 7 | */ |
8 | 8 | ||
9 | /* This file shoule be up to date with: | 9 | /* This file shoule be up to date with: |
10 | * - ???? | 10 | * - Revision B, 02/03/2009; ADSP-BF512/BF514/BF516/BF518 Blackfin Processor Anomaly List |
11 | */ | 11 | */ |
12 | 12 | ||
13 | #ifndef _MACH_ANOMALY_H_ | 13 | #ifndef _MACH_ANOMALY_H_ |
@@ -19,6 +19,8 @@ | |||
19 | #define ANOMALY_05000122 (1) | 19 | #define ANOMALY_05000122 (1) |
20 | /* False Hardware Error from an Access in the Shadow of a Conditional Branch */ | 20 | /* False Hardware Error from an Access in the Shadow of a Conditional Branch */ |
21 | #define ANOMALY_05000245 (1) | 21 | #define ANOMALY_05000245 (1) |
22 | /* Incorrect Timer Pulse Width in Single-Shot PWM_OUT Mode with External Clock */ | ||
23 | #define ANOMALY_05000254 (1) | ||
22 | /* Sensitivity To Noise with Slow Input Edge Rates on External SPORT TX and RX Clocks */ | 24 | /* Sensitivity To Noise with Slow Input Edge Rates on External SPORT TX and RX Clocks */ |
23 | #define ANOMALY_05000265 (1) | 25 | #define ANOMALY_05000265 (1) |
24 | /* False Hardware Errors Caused by Fetches at the Boundary of Reserved Memory */ | 26 | /* False Hardware Errors Caused by Fetches at the Boundary of Reserved Memory */ |
@@ -53,6 +55,12 @@ | |||
53 | #define ANOMALY_05000443 (1) | 55 | #define ANOMALY_05000443 (1) |
54 | /* Incorrect L1 Instruction Bank B Memory Map Location */ | 56 | /* Incorrect L1 Instruction Bank B Memory Map Location */ |
55 | #define ANOMALY_05000444 (1) | 57 | #define ANOMALY_05000444 (1) |
58 | /* Incorrect Default Hysteresis Setting for RESET, NMI, and BMODE Signals */ | ||
59 | #define ANOMALY_05000452 (1) | ||
60 | /* PWM_TRIPB Signal Not Available on PG10 */ | ||
61 | #define ANOMALY_05000453 (1) | ||
62 | /* PPI_FS3 is Driven One Half Cycle Later Than PPI Data */ | ||
63 | #define ANOMALY_05000455 (1) | ||
56 | 64 | ||
57 | /* Anomalies that don't exist on this proc */ | 65 | /* Anomalies that don't exist on this proc */ |
58 | #define ANOMALY_05000125 (0) | 66 | #define ANOMALY_05000125 (0) |
@@ -65,15 +73,20 @@ | |||
65 | #define ANOMALY_05000263 (0) | 73 | #define ANOMALY_05000263 (0) |
66 | #define ANOMALY_05000266 (0) | 74 | #define ANOMALY_05000266 (0) |
67 | #define ANOMALY_05000273 (0) | 75 | #define ANOMALY_05000273 (0) |
76 | #define ANOMALY_05000278 (0) | ||
68 | #define ANOMALY_05000285 (0) | 77 | #define ANOMALY_05000285 (0) |
78 | #define ANOMALY_05000305 (0) | ||
69 | #define ANOMALY_05000307 (0) | 79 | #define ANOMALY_05000307 (0) |
70 | #define ANOMALY_05000311 (0) | 80 | #define ANOMALY_05000311 (0) |
71 | #define ANOMALY_05000312 (0) | 81 | #define ANOMALY_05000312 (0) |
72 | #define ANOMALY_05000323 (0) | 82 | #define ANOMALY_05000323 (0) |
73 | #define ANOMALY_05000353 (0) | 83 | #define ANOMALY_05000353 (0) |
74 | #define ANOMALY_05000363 (0) | 84 | #define ANOMALY_05000363 (0) |
85 | #define ANOMALY_05000380 (0) | ||
75 | #define ANOMALY_05000386 (0) | 86 | #define ANOMALY_05000386 (0) |
76 | #define ANOMALY_05000412 (0) | 87 | #define ANOMALY_05000412 (0) |
77 | #define ANOMALY_05000432 (0) | 88 | #define ANOMALY_05000432 (0) |
89 | #define ANOMALY_05000447 (0) | ||
90 | #define ANOMALY_05000448 (0) | ||
78 | 91 | ||
79 | #endif | 92 | #endif |
diff --git a/arch/blackfin/mach-bf518/include/mach/bfin_serial_5xx.h b/arch/blackfin/mach-bf518/include/mach/bfin_serial_5xx.h index b50a63b975a2..e21c1c3e4ec7 100644 --- a/arch/blackfin/mach-bf518/include/mach/bfin_serial_5xx.h +++ b/arch/blackfin/mach-bf518/include/mach/bfin_serial_5xx.h | |||
@@ -144,7 +144,7 @@ struct bfin_serial_res bfin_serial_resource[] = { | |||
144 | CH_UART0_TX, | 144 | CH_UART0_TX, |
145 | CH_UART0_RX, | 145 | CH_UART0_RX, |
146 | #endif | 146 | #endif |
147 | #ifdef CONFIG_BFIN_UART0_CTSRTS | 147 | #ifdef CONFIG_SERIAL_BFIN_CTSRTS |
148 | CONFIG_UART0_CTS_PIN, | 148 | CONFIG_UART0_CTS_PIN, |
149 | CONFIG_UART0_RTS_PIN, | 149 | CONFIG_UART0_RTS_PIN, |
150 | #endif | 150 | #endif |
@@ -158,7 +158,7 @@ struct bfin_serial_res bfin_serial_resource[] = { | |||
158 | CH_UART1_TX, | 158 | CH_UART1_TX, |
159 | CH_UART1_RX, | 159 | CH_UART1_RX, |
160 | #endif | 160 | #endif |
161 | #ifdef CONFIG_BFIN_UART1_CTSRTS | 161 | #ifdef CONFIG_SERIAL_BFIN_CTSRTS |
162 | CONFIG_UART1_CTS_PIN, | 162 | CONFIG_UART1_CTS_PIN, |
163 | CONFIG_UART1_RTS_PIN, | 163 | CONFIG_UART1_RTS_PIN, |
164 | #endif | 164 | #endif |
diff --git a/arch/blackfin/mach-bf527/boards/cm_bf527.c b/arch/blackfin/mach-bf527/boards/cm_bf527.c index 856c097b5317..48e69eecdba4 100644 --- a/arch/blackfin/mach-bf527/boards/cm_bf527.c +++ b/arch/blackfin/mach-bf527/boards/cm_bf527.c | |||
@@ -487,9 +487,9 @@ static struct bfin5xx_spi_chip ad9960_spi_chip_info = { | |||
487 | }; | 487 | }; |
488 | #endif | 488 | #endif |
489 | 489 | ||
490 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 490 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
491 | static struct bfin5xx_spi_chip spi_mmc_chip_info = { | 491 | static struct bfin5xx_spi_chip mmc_spi_chip_info = { |
492 | .enable_dma = 1, | 492 | .enable_dma = 0, |
493 | .bits_per_word = 8, | 493 | .bits_per_word = 8, |
494 | }; | 494 | }; |
495 | #endif | 495 | #endif |
@@ -585,23 +585,13 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = { | |||
585 | .controller_data = &ad9960_spi_chip_info, | 585 | .controller_data = &ad9960_spi_chip_info, |
586 | }, | 586 | }, |
587 | #endif | 587 | #endif |
588 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 588 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
589 | { | 589 | { |
590 | .modalias = "spi_mmc_dummy", | 590 | .modalias = "mmc_spi", |
591 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ | 591 | .max_speed_hz = 20000000, /* max spi clock (SCK) speed in HZ */ |
592 | .bus_num = 0, | ||
593 | .chip_select = 0, | ||
594 | .platform_data = NULL, | ||
595 | .controller_data = &spi_mmc_chip_info, | ||
596 | .mode = SPI_MODE_3, | ||
597 | }, | ||
598 | { | ||
599 | .modalias = "spi_mmc", | ||
600 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ | ||
601 | .bus_num = 0, | 592 | .bus_num = 0, |
602 | .chip_select = CONFIG_SPI_MMC_CS_CHAN, | 593 | .chip_select = 5, |
603 | .platform_data = NULL, | 594 | .controller_data = &mmc_spi_chip_info, |
604 | .controller_data = &spi_mmc_chip_info, | ||
605 | .mode = SPI_MODE_3, | 595 | .mode = SPI_MODE_3, |
606 | }, | 596 | }, |
607 | #endif | 597 | #endif |
diff --git a/arch/blackfin/mach-bf527/boards/ezbrd.c b/arch/blackfin/mach-bf527/boards/ezbrd.c index 83606fcdde27..7fe480e4ebe8 100644 --- a/arch/blackfin/mach-bf527/boards/ezbrd.c +++ b/arch/blackfin/mach-bf527/boards/ezbrd.c | |||
@@ -256,9 +256,9 @@ static struct bfin5xx_spi_chip spi_adc_chip_info = { | |||
256 | }; | 256 | }; |
257 | #endif | 257 | #endif |
258 | 258 | ||
259 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 259 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
260 | static struct bfin5xx_spi_chip spi_mmc_chip_info = { | 260 | static struct bfin5xx_spi_chip mmc_spi_chip_info = { |
261 | .enable_dma = 1, | 261 | .enable_dma = 0, |
262 | .bits_per_word = 8, | 262 | .bits_per_word = 8, |
263 | }; | 263 | }; |
264 | #endif | 264 | #endif |
@@ -366,23 +366,13 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = { | |||
366 | }, | 366 | }, |
367 | #endif | 367 | #endif |
368 | 368 | ||
369 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 369 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
370 | { | 370 | { |
371 | .modalias = "spi_mmc_dummy", | 371 | .modalias = "mmc_spi", |
372 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ | 372 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ |
373 | .bus_num = 0, | 373 | .bus_num = 0, |
374 | .chip_select = 0, | 374 | .chip_select = 5, |
375 | .platform_data = NULL, | 375 | .controller_data = &mmc_spi_chip_info, |
376 | .controller_data = &spi_mmc_chip_info, | ||
377 | .mode = SPI_MODE_3, | ||
378 | }, | ||
379 | { | ||
380 | .modalias = "spi_mmc", | ||
381 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ | ||
382 | .bus_num = 0, | ||
383 | .chip_select = CONFIG_SPI_MMC_CS_CHAN, | ||
384 | .platform_data = NULL, | ||
385 | .controller_data = &spi_mmc_chip_info, | ||
386 | .mode = SPI_MODE_3, | 376 | .mode = SPI_MODE_3, |
387 | }, | 377 | }, |
388 | #endif | 378 | #endif |
diff --git a/arch/blackfin/mach-bf527/include/mach/anomaly.h b/arch/blackfin/mach-bf527/include/mach/anomaly.h index 035e8d835058..df6808d8a6ef 100644 --- a/arch/blackfin/mach-bf527/include/mach/anomaly.h +++ b/arch/blackfin/mach-bf527/include/mach/anomaly.h | |||
@@ -2,7 +2,7 @@ | |||
2 | * File: include/asm-blackfin/mach-bf527/anomaly.h | 2 | * File: include/asm-blackfin/mach-bf527/anomaly.h |
3 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | 3 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ |
4 | * | 4 | * |
5 | * Copyright (C) 2004-2008 Analog Devices Inc. | 5 | * Copyright (C) 2004-2009 Analog Devices Inc. |
6 | * Licensed under the GPL-2 or later. | 6 | * Licensed under the GPL-2 or later. |
7 | */ | 7 | */ |
8 | 8 | ||
@@ -167,12 +167,16 @@ | |||
167 | #define ANOMALY_05000263 (0) | 167 | #define ANOMALY_05000263 (0) |
168 | #define ANOMALY_05000266 (0) | 168 | #define ANOMALY_05000266 (0) |
169 | #define ANOMALY_05000273 (0) | 169 | #define ANOMALY_05000273 (0) |
170 | #define ANOMALY_05000278 (0) | ||
170 | #define ANOMALY_05000285 (0) | 171 | #define ANOMALY_05000285 (0) |
172 | #define ANOMALY_05000305 (0) | ||
171 | #define ANOMALY_05000307 (0) | 173 | #define ANOMALY_05000307 (0) |
172 | #define ANOMALY_05000311 (0) | 174 | #define ANOMALY_05000311 (0) |
173 | #define ANOMALY_05000312 (0) | 175 | #define ANOMALY_05000312 (0) |
174 | #define ANOMALY_05000323 (0) | 176 | #define ANOMALY_05000323 (0) |
175 | #define ANOMALY_05000363 (0) | 177 | #define ANOMALY_05000363 (0) |
176 | #define ANOMALY_05000412 (0) | 178 | #define ANOMALY_05000412 (0) |
179 | #define ANOMALY_05000447 (0) | ||
180 | #define ANOMALY_05000448 (0) | ||
177 | 181 | ||
178 | #endif | 182 | #endif |
diff --git a/arch/blackfin/mach-bf527/include/mach/bfin_serial_5xx.h b/arch/blackfin/mach-bf527/include/mach/bfin_serial_5xx.h index 75722d6008b0..e8c41fd842b5 100644 --- a/arch/blackfin/mach-bf527/include/mach/bfin_serial_5xx.h +++ b/arch/blackfin/mach-bf527/include/mach/bfin_serial_5xx.h | |||
@@ -144,7 +144,7 @@ struct bfin_serial_res bfin_serial_resource[] = { | |||
144 | CH_UART0_TX, | 144 | CH_UART0_TX, |
145 | CH_UART0_RX, | 145 | CH_UART0_RX, |
146 | #endif | 146 | #endif |
147 | #ifdef CONFIG_BFIN_UART0_CTSRTS | 147 | #ifdef CONFIG_SERIAL_BFIN_CTSRTS |
148 | CONFIG_UART0_CTS_PIN, | 148 | CONFIG_UART0_CTS_PIN, |
149 | CONFIG_UART0_RTS_PIN, | 149 | CONFIG_UART0_RTS_PIN, |
150 | #endif | 150 | #endif |
@@ -158,7 +158,7 @@ struct bfin_serial_res bfin_serial_resource[] = { | |||
158 | CH_UART1_TX, | 158 | CH_UART1_TX, |
159 | CH_UART1_RX, | 159 | CH_UART1_RX, |
160 | #endif | 160 | #endif |
161 | #ifdef CONFIG_BFIN_UART1_CTSRTS | 161 | #ifdef CONFIG_SERIAL_BFIN_CTSRTS |
162 | CONFIG_UART1_CTS_PIN, | 162 | CONFIG_UART1_CTS_PIN, |
163 | CONFIG_UART1_RTS_PIN, | 163 | CONFIG_UART1_RTS_PIN, |
164 | #endif | 164 | #endif |
diff --git a/arch/blackfin/mach-bf533/boards/Kconfig b/arch/blackfin/mach-bf533/boards/Kconfig index 308c98dc5aba..8d8b3e7321e6 100644 --- a/arch/blackfin/mach-bf533/boards/Kconfig +++ b/arch/blackfin/mach-bf533/boards/Kconfig | |||
@@ -38,9 +38,4 @@ config BFIN532_IP0X | |||
38 | help | 38 | help |
39 | Core support for IP04/IP04 open hardware IP-PBX. | 39 | Core support for IP04/IP04 open hardware IP-PBX. |
40 | 40 | ||
41 | config GENERIC_BF533_BOARD | ||
42 | bool "Generic" | ||
43 | help | ||
44 | Generic or Custom board support. | ||
45 | |||
46 | endchoice | 41 | endchoice |
diff --git a/arch/blackfin/mach-bf533/boards/Makefile b/arch/blackfin/mach-bf533/boards/Makefile index 9afbe72b484f..ff1e832f80d2 100644 --- a/arch/blackfin/mach-bf533/boards/Makefile +++ b/arch/blackfin/mach-bf533/boards/Makefile | |||
@@ -2,7 +2,6 @@ | |||
2 | # arch/blackfin/mach-bf533/boards/Makefile | 2 | # arch/blackfin/mach-bf533/boards/Makefile |
3 | # | 3 | # |
4 | 4 | ||
5 | obj-$(CONFIG_GENERIC_BF533_BOARD) += generic_board.o | ||
6 | obj-$(CONFIG_BFIN533_STAMP) += stamp.o | 5 | obj-$(CONFIG_BFIN533_STAMP) += stamp.o |
7 | obj-$(CONFIG_BFIN532_IP0X) += ip0x.o | 6 | obj-$(CONFIG_BFIN532_IP0X) += ip0x.o |
8 | obj-$(CONFIG_BFIN533_EZKIT) += ezkit.o | 7 | obj-$(CONFIG_BFIN533_EZKIT) += ezkit.o |
diff --git a/arch/blackfin/mach-bf533/boards/blackstamp.c b/arch/blackfin/mach-bf533/boards/blackstamp.c index 015c18f85e7f..0765872a8ada 100644 --- a/arch/blackfin/mach-bf533/boards/blackstamp.c +++ b/arch/blackfin/mach-bf533/boards/blackstamp.c | |||
@@ -101,9 +101,9 @@ static struct bfin5xx_spi_chip spi_flash_chip_info = { | |||
101 | }; | 101 | }; |
102 | #endif | 102 | #endif |
103 | 103 | ||
104 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 104 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
105 | static struct bfin5xx_spi_chip spi_mmc_chip_info = { | 105 | static struct bfin5xx_spi_chip mmc_spi_chip_info = { |
106 | .enable_dma = 1, | 106 | .enable_dma = 0, |
107 | .bits_per_word = 8, | 107 | .bits_per_word = 8, |
108 | }; | 108 | }; |
109 | #endif | 109 | #endif |
@@ -129,23 +129,13 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = { | |||
129 | }, | 129 | }, |
130 | #endif | 130 | #endif |
131 | 131 | ||
132 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 132 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
133 | { | ||
134 | .modalias = "spi_mmc_dummy", | ||
135 | .max_speed_hz = 20000000, /* max spi clock (SCK) speed in HZ */ | ||
136 | .bus_num = 0, | ||
137 | .chip_select = 0, | ||
138 | .platform_data = NULL, | ||
139 | .controller_data = &spi_mmc_chip_info, | ||
140 | .mode = SPI_MODE_3, | ||
141 | }, | ||
142 | { | 133 | { |
143 | .modalias = "spi_mmc", | 134 | .modalias = "mmc_spi", |
144 | .max_speed_hz = 20000000, /* max spi clock (SCK) speed in HZ */ | 135 | .max_speed_hz = 20000000, /* max spi clock (SCK) speed in HZ */ |
145 | .bus_num = 0, | 136 | .bus_num = 0, |
146 | .chip_select = CONFIG_SPI_MMC_CS_CHAN, | 137 | .chip_select = 5, |
147 | .platform_data = NULL, | 138 | .controller_data = &mmc_spi_chip_info, |
148 | .controller_data = &spi_mmc_chip_info, | ||
149 | .mode = SPI_MODE_3, | 139 | .mode = SPI_MODE_3, |
150 | }, | 140 | }, |
151 | #endif | 141 | #endif |
diff --git a/arch/blackfin/mach-bf533/boards/cm_bf533.c b/arch/blackfin/mach-bf533/boards/cm_bf533.c index e7061c7e8c42..e8974878d8c2 100644 --- a/arch/blackfin/mach-bf533/boards/cm_bf533.c +++ b/arch/blackfin/mach-bf533/boards/cm_bf533.c | |||
@@ -96,9 +96,9 @@ static struct bfin5xx_spi_chip ad1836_spi_chip_info = { | |||
96 | }; | 96 | }; |
97 | #endif | 97 | #endif |
98 | 98 | ||
99 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 99 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
100 | static struct bfin5xx_spi_chip spi_mmc_chip_info = { | 100 | static struct bfin5xx_spi_chip mmc_spi_chip_info = { |
101 | .enable_dma = 1, | 101 | .enable_dma = 0, |
102 | .bits_per_word = 8, | 102 | .bits_per_word = 8, |
103 | }; | 103 | }; |
104 | #endif | 104 | #endif |
@@ -138,23 +138,13 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = { | |||
138 | }, | 138 | }, |
139 | #endif | 139 | #endif |
140 | 140 | ||
141 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 141 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
142 | { | ||
143 | .modalias = "spi_mmc_dummy", | ||
144 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ | ||
145 | .bus_num = 0, | ||
146 | .chip_select = 0, | ||
147 | .platform_data = NULL, | ||
148 | .controller_data = &spi_mmc_chip_info, | ||
149 | .mode = SPI_MODE_3, | ||
150 | }, | ||
151 | { | 142 | { |
152 | .modalias = "spi_mmc", | 143 | .modalias = "mmc_spi", |
153 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ | 144 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ |
154 | .bus_num = 0, | 145 | .bus_num = 0, |
155 | .chip_select = CONFIG_SPI_MMC_CS_CHAN, | 146 | .chip_select = 5, |
156 | .platform_data = NULL, | 147 | .controller_data = &mmc_spi_chip_info, |
157 | .controller_data = &spi_mmc_chip_info, | ||
158 | .mode = SPI_MODE_3, | 148 | .mode = SPI_MODE_3, |
159 | }, | 149 | }, |
160 | #endif | 150 | #endif |
diff --git a/arch/blackfin/mach-bf533/boards/generic_board.c b/arch/blackfin/mach-bf533/boards/generic_board.c deleted file mode 100644 index 986eeec53b1f..000000000000 --- a/arch/blackfin/mach-bf533/boards/generic_board.c +++ /dev/null | |||
@@ -1,126 +0,0 @@ | |||
1 | /* | ||
2 | * File: arch/blackfin/mach-bf533/generic_board.c | ||
3 | * Based on: arch/blackfin/mach-bf533/ezkit.c | ||
4 | * Author: Aidan Williams <aidan@nicta.com.au> | ||
5 | * | ||
6 | * Created: 2005 | ||
7 | * Description: | ||
8 | * | ||
9 | * Modified: | ||
10 | * Copyright 2005 National ICT Australia (NICTA) | ||
11 | * Copyright 2004-2006 Analog Devices Inc. | ||
12 | * | ||
13 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | ||
14 | * | ||
15 | * This program is free software; you can redistribute it and/or modify | ||
16 | * it under the terms of the GNU General Public License as published by | ||
17 | * the Free Software Foundation; either version 2 of the License, or | ||
18 | * (at your option) any later version. | ||
19 | * | ||
20 | * This program is distributed in the hope that it will be useful, | ||
21 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
22 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
23 | * GNU General Public License for more details. | ||
24 | * | ||
25 | * You should have received a copy of the GNU General Public License | ||
26 | * along with this program; if not, see the file COPYING, or write | ||
27 | * to the Free Software Foundation, Inc., | ||
28 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
29 | */ | ||
30 | |||
31 | #include <linux/device.h> | ||
32 | #include <linux/platform_device.h> | ||
33 | #include <linux/irq.h> | ||
34 | |||
35 | /* | ||
36 | * Name the Board for the /proc/cpuinfo | ||
37 | */ | ||
38 | const char bfin_board_name[] = "UNKNOWN BOARD"; | ||
39 | |||
40 | #if defined(CONFIG_RTC_DRV_BFIN) || defined(CONFIG_RTC_DRV_BFIN_MODULE) | ||
41 | static struct platform_device rtc_device = { | ||
42 | .name = "rtc-bfin", | ||
43 | .id = -1, | ||
44 | }; | ||
45 | #endif | ||
46 | |||
47 | /* | ||
48 | * Driver needs to know address, irq and flag pin. | ||
49 | */ | ||
50 | #if defined(CONFIG_SMC91X) || defined(CONFIG_SMC91X_MODULE) | ||
51 | static struct resource smc91x_resources[] = { | ||
52 | { | ||
53 | .start = 0x20300300, | ||
54 | .end = 0x20300300 + 16, | ||
55 | .flags = IORESOURCE_MEM, | ||
56 | }, { | ||
57 | .start = IRQ_PROG_INTB, | ||
58 | .end = IRQ_PROG_INTB, | ||
59 | .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL, | ||
60 | }, { | ||
61 | .start = IRQ_PF7, | ||
62 | .end = IRQ_PF7, | ||
63 | .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL, | ||
64 | }, | ||
65 | }; | ||
66 | |||
67 | static struct platform_device smc91x_device = { | ||
68 | .name = "smc91x", | ||
69 | .id = 0, | ||
70 | .num_resources = ARRAY_SIZE(smc91x_resources), | ||
71 | .resource = smc91x_resources, | ||
72 | }; | ||
73 | #endif | ||
74 | |||
75 | #if defined(CONFIG_BFIN_SIR) || defined(CONFIG_BFIN_SIR_MODULE) | ||
76 | #ifdef CONFIG_BFIN_SIR0 | ||
77 | static struct resource bfin_sir0_resources[] = { | ||
78 | { | ||
79 | .start = 0xFFC00400, | ||
80 | .end = 0xFFC004FF, | ||
81 | .flags = IORESOURCE_MEM, | ||
82 | }, | ||
83 | { | ||
84 | .start = IRQ_UART0_RX, | ||
85 | .end = IRQ_UART0_RX+1, | ||
86 | .flags = IORESOURCE_IRQ, | ||
87 | }, | ||
88 | { | ||
89 | .start = CH_UART0_RX, | ||
90 | .end = CH_UART0_RX+1, | ||
91 | .flags = IORESOURCE_DMA, | ||
92 | }, | ||
93 | }; | ||
94 | |||
95 | static struct platform_device bfin_sir0_device = { | ||
96 | .name = "bfin_sir", | ||
97 | .id = 0, | ||
98 | .num_resources = ARRAY_SIZE(bfin_sir0_resources), | ||
99 | .resource = bfin_sir0_resources, | ||
100 | }; | ||
101 | #endif | ||
102 | #endif | ||
103 | |||
104 | static struct platform_device *generic_board_devices[] __initdata = { | ||
105 | #if defined(CONFIG_RTC_DRV_BFIN) || defined(CONFIG_RTC_DRV_BFIN_MODULE) | ||
106 | &rtc_device, | ||
107 | #endif | ||
108 | |||
109 | #if defined(CONFIG_SMC91X) || defined(CONFIG_SMC91X_MODULE) | ||
110 | &smc91x_device, | ||
111 | #endif | ||
112 | |||
113 | #if defined(CONFIG_BFIN_SIR) || defined(CONFIG_BFIN_SIR_MODULE) | ||
114 | #ifdef CONFIG_BFIN_SIR0 | ||
115 | &bfin_sir0_device, | ||
116 | #endif | ||
117 | #endif | ||
118 | }; | ||
119 | |||
120 | static int __init generic_board_init(void) | ||
121 | { | ||
122 | printk(KERN_INFO "%s(): registering device resources\n", __func__); | ||
123 | return platform_add_devices(generic_board_devices, ARRAY_SIZE(generic_board_devices)); | ||
124 | } | ||
125 | |||
126 | arch_initcall(generic_board_init); | ||
diff --git a/arch/blackfin/mach-bf533/boards/ip0x.c b/arch/blackfin/mach-bf533/boards/ip0x.c index e30b1b7d1442..f19b63378b12 100644 --- a/arch/blackfin/mach-bf533/boards/ip0x.c +++ b/arch/blackfin/mach-bf533/boards/ip0x.c | |||
@@ -127,8 +127,8 @@ static struct platform_device dm9000_device2 = { | |||
127 | #if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE) | 127 | #if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE) |
128 | /* all SPI peripherals info goes here */ | 128 | /* all SPI peripherals info goes here */ |
129 | 129 | ||
130 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 130 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
131 | static struct bfin5xx_spi_chip spi_mmc_chip_info = { | 131 | static struct bfin5xx_spi_chip mmc_spi_chip_info = { |
132 | /* | 132 | /* |
133 | * CPOL (Clock Polarity) | 133 | * CPOL (Clock Polarity) |
134 | * 0 - Active high SCK | 134 | * 0 - Active high SCK |
@@ -152,14 +152,13 @@ static struct bfin5xx_spi_chip spi_mmc_chip_info = { | |||
152 | /* Notice: for blackfin, the speed_hz is the value of register | 152 | /* Notice: for blackfin, the speed_hz is the value of register |
153 | * SPI_BAUD, not the real baudrate */ | 153 | * SPI_BAUD, not the real baudrate */ |
154 | static struct spi_board_info bfin_spi_board_info[] __initdata = { | 154 | static struct spi_board_info bfin_spi_board_info[] __initdata = { |
155 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 155 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
156 | { | 156 | { |
157 | .modalias = "spi_mmc", | 157 | .modalias = "mmc_spi", |
158 | .max_speed_hz = 2, | 158 | .max_speed_hz = 2, |
159 | .bus_num = 1, | 159 | .bus_num = 1, |
160 | .chip_select = CONFIG_SPI_MMC_CS_CHAN, | 160 | .chip_select = 5, |
161 | .platform_data = NULL, | 161 | .controller_data = &mmc_spi_chip_info, |
162 | .controller_data = &spi_mmc_chip_info, | ||
163 | }, | 162 | }, |
164 | #endif | 163 | #endif |
165 | }; | 164 | }; |
diff --git a/arch/blackfin/mach-bf533/include/mach/anomaly.h b/arch/blackfin/mach-bf533/include/mach/anomaly.h index 0d3a03429fb9..1cf893e2e55b 100644 --- a/arch/blackfin/mach-bf533/include/mach/anomaly.h +++ b/arch/blackfin/mach-bf533/include/mach/anomaly.h | |||
@@ -2,7 +2,7 @@ | |||
2 | * File: include/asm-blackfin/mach-bf533/anomaly.h | 2 | * File: include/asm-blackfin/mach-bf533/anomaly.h |
3 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | 3 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ |
4 | * | 4 | * |
5 | * Copyright (C) 2004-2008 Analog Devices Inc. | 5 | * Copyright (C) 2004-2009 Analog Devices Inc. |
6 | * Licensed under the GPL-2 or later. | 6 | * Licensed under the GPL-2 or later. |
7 | */ | 7 | */ |
8 | 8 | ||
@@ -160,7 +160,7 @@ | |||
160 | #define ANOMALY_05000301 (__SILICON_REVISION__ < 6) | 160 | #define ANOMALY_05000301 (__SILICON_REVISION__ < 6) |
161 | /* SSYNCs After Writes To DMA MMR Registers May Not Be Handled Correctly */ | 161 | /* SSYNCs After Writes To DMA MMR Registers May Not Be Handled Correctly */ |
162 | #define ANOMALY_05000302 (__SILICON_REVISION__ < 5) | 162 | #define ANOMALY_05000302 (__SILICON_REVISION__ < 5) |
163 | /* New Feature: Additional Hysteresis on SPORT Input Pins (Not Available On Older Silicon) */ | 163 | /* SPORT_HYS Bit in PLL_CTL Register Is Not Functional */ |
164 | #define ANOMALY_05000305 (__SILICON_REVISION__ < 5) | 164 | #define ANOMALY_05000305 (__SILICON_REVISION__ < 5) |
165 | /* New Feature: Additional PPI Frame Sync Sampling Options (Not Available On Older Silicon) */ | 165 | /* New Feature: Additional PPI Frame Sync Sampling Options (Not Available On Older Silicon) */ |
166 | #define ANOMALY_05000306 (__SILICON_REVISION__ < 5) | 166 | #define ANOMALY_05000306 (__SILICON_REVISION__ < 5) |
@@ -278,9 +278,12 @@ | |||
278 | #define ANOMALY_05000266 (0) | 278 | #define ANOMALY_05000266 (0) |
279 | #define ANOMALY_05000323 (0) | 279 | #define ANOMALY_05000323 (0) |
280 | #define ANOMALY_05000353 (1) | 280 | #define ANOMALY_05000353 (1) |
281 | #define ANOMALY_05000380 (0) | ||
281 | #define ANOMALY_05000386 (1) | 282 | #define ANOMALY_05000386 (1) |
282 | #define ANOMALY_05000412 (0) | 283 | #define ANOMALY_05000412 (0) |
283 | #define ANOMALY_05000432 (0) | 284 | #define ANOMALY_05000432 (0) |
284 | #define ANOMALY_05000435 (0) | 285 | #define ANOMALY_05000435 (0) |
286 | #define ANOMALY_05000447 (0) | ||
287 | #define ANOMALY_05000448 (0) | ||
285 | 288 | ||
286 | #endif | 289 | #endif |
diff --git a/arch/blackfin/mach-bf533/include/mach/bfin_serial_5xx.h b/arch/blackfin/mach-bf533/include/mach/bfin_serial_5xx.h index f3d9e495230c..5f517f53b0fd 100644 --- a/arch/blackfin/mach-bf533/include/mach/bfin_serial_5xx.h +++ b/arch/blackfin/mach-bf533/include/mach/bfin_serial_5xx.h | |||
@@ -134,7 +134,7 @@ struct bfin_serial_res bfin_serial_resource[] = { | |||
134 | CH_UART_TX, | 134 | CH_UART_TX, |
135 | CH_UART_RX, | 135 | CH_UART_RX, |
136 | #endif | 136 | #endif |
137 | #ifdef CONFIG_BFIN_UART0_CTSRTS | 137 | #ifdef CONFIG_SERIAL_BFIN_CTSRTS |
138 | CONFIG_UART0_CTS_PIN, | 138 | CONFIG_UART0_CTS_PIN, |
139 | CONFIG_UART0_RTS_PIN, | 139 | CONFIG_UART0_RTS_PIN, |
140 | #endif | 140 | #endif |
diff --git a/arch/blackfin/mach-bf537/boards/Kconfig b/arch/blackfin/mach-bf537/boards/Kconfig index 42a57b0acb29..77c59da87e85 100644 --- a/arch/blackfin/mach-bf537/boards/Kconfig +++ b/arch/blackfin/mach-bf537/boards/Kconfig | |||
@@ -33,9 +33,4 @@ config CAMSIG_MINOTAUR | |||
33 | help | 33 | help |
34 | Board supply package for CSP Minotaur | 34 | Board supply package for CSP Minotaur |
35 | 35 | ||
36 | config GENERIC_BF537_BOARD | ||
37 | bool "Generic" | ||
38 | help | ||
39 | Generic or Custom board support. | ||
40 | |||
41 | endchoice | 36 | endchoice |
diff --git a/arch/blackfin/mach-bf537/boards/Makefile b/arch/blackfin/mach-bf537/boards/Makefile index 7168cc14afd8..68b98a7af6a6 100644 --- a/arch/blackfin/mach-bf537/boards/Makefile +++ b/arch/blackfin/mach-bf537/boards/Makefile | |||
@@ -2,7 +2,6 @@ | |||
2 | # arch/blackfin/mach-bf537/boards/Makefile | 2 | # arch/blackfin/mach-bf537/boards/Makefile |
3 | # | 3 | # |
4 | 4 | ||
5 | obj-$(CONFIG_GENERIC_BF537_BOARD) += generic_board.o | ||
6 | obj-$(CONFIG_BFIN537_STAMP) += stamp.o | 5 | obj-$(CONFIG_BFIN537_STAMP) += stamp.o |
7 | obj-$(CONFIG_BFIN537_BLUETECHNIX_CM) += cm_bf537.o | 6 | obj-$(CONFIG_BFIN537_BLUETECHNIX_CM) += cm_bf537.o |
8 | obj-$(CONFIG_BFIN537_BLUETECHNIX_TCM) += tcm_bf537.o | 7 | obj-$(CONFIG_BFIN537_BLUETECHNIX_TCM) += tcm_bf537.o |
diff --git a/arch/blackfin/mach-bf537/boards/cm_bf537.c b/arch/blackfin/mach-bf537/boards/cm_bf537.c index 9cd8fb2a30d3..41c75b9bfac0 100644 --- a/arch/blackfin/mach-bf537/boards/cm_bf537.c +++ b/arch/blackfin/mach-bf537/boards/cm_bf537.c | |||
@@ -108,9 +108,9 @@ static struct bfin5xx_spi_chip ad9960_spi_chip_info = { | |||
108 | }; | 108 | }; |
109 | #endif | 109 | #endif |
110 | 110 | ||
111 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 111 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
112 | static struct bfin5xx_spi_chip spi_mmc_chip_info = { | 112 | static struct bfin5xx_spi_chip mmc_spi_chip_info = { |
113 | .enable_dma = 1, | 113 | .enable_dma = 0, |
114 | .bits_per_word = 8, | 114 | .bits_per_word = 8, |
115 | }; | 115 | }; |
116 | #endif | 116 | #endif |
@@ -160,23 +160,13 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = { | |||
160 | }, | 160 | }, |
161 | #endif | 161 | #endif |
162 | 162 | ||
163 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 163 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
164 | { | ||
165 | .modalias = "spi_mmc_dummy", | ||
166 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ | ||
167 | .bus_num = 0, | ||
168 | .chip_select = 7, | ||
169 | .platform_data = NULL, | ||
170 | .controller_data = &spi_mmc_chip_info, | ||
171 | .mode = SPI_MODE_3, | ||
172 | }, | ||
173 | { | 164 | { |
174 | .modalias = "spi_mmc", | 165 | .modalias = "mmc_spi", |
175 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ | 166 | .max_speed_hz = 20000000, /* max spi clock (SCK) speed in HZ */ |
176 | .bus_num = 0, | 167 | .bus_num = 0, |
177 | .chip_select = CONFIG_SPI_MMC_CS_CHAN, | 168 | .chip_select = 1, |
178 | .platform_data = NULL, | 169 | .controller_data = &mmc_spi_chip_info, |
179 | .controller_data = &spi_mmc_chip_info, | ||
180 | .mode = SPI_MODE_3, | 170 | .mode = SPI_MODE_3, |
181 | }, | 171 | }, |
182 | #endif | 172 | #endif |
diff --git a/arch/blackfin/mach-bf537/boards/generic_board.c b/arch/blackfin/mach-bf537/boards/generic_board.c deleted file mode 100644 index da710fdc4569..000000000000 --- a/arch/blackfin/mach-bf537/boards/generic_board.c +++ /dev/null | |||
@@ -1,745 +0,0 @@ | |||
1 | /* | ||
2 | * File: arch/blackfin/mach-bf537/boards/generic_board.c | ||
3 | * Based on: arch/blackfin/mach-bf533/boards/ezkit.c | ||
4 | * Author: Aidan Williams <aidan@nicta.com.au> | ||
5 | * | ||
6 | * Created: | ||
7 | * Description: | ||
8 | * | ||
9 | * Modified: | ||
10 | * Copyright 2005 National ICT Australia (NICTA) | ||
11 | * Copyright 2004-2008 Analog Devices Inc. | ||
12 | * | ||
13 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | ||
14 | * | ||
15 | * This program is free software; you can redistribute it and/or modify | ||
16 | * it under the terms of the GNU General Public License as published by | ||
17 | * the Free Software Foundation; either version 2 of the License, or | ||
18 | * (at your option) any later version. | ||
19 | * | ||
20 | * This program is distributed in the hope that it will be useful, | ||
21 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
22 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
23 | * GNU General Public License for more details. | ||
24 | * | ||
25 | * You should have received a copy of the GNU General Public License | ||
26 | * along with this program; if not, see the file COPYING, or write | ||
27 | * to the Free Software Foundation, Inc., | ||
28 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
29 | */ | ||
30 | |||
31 | #include <linux/device.h> | ||
32 | #include <linux/etherdevice.h> | ||
33 | #include <linux/platform_device.h> | ||
34 | #include <linux/mtd/mtd.h> | ||
35 | #include <linux/mtd/partitions.h> | ||
36 | #include <linux/spi/spi.h> | ||
37 | #include <linux/spi/flash.h> | ||
38 | #if defined(CONFIG_USB_ISP1362_HCD) || defined(CONFIG_USB_ISP1362_HCD_MODULE) | ||
39 | #include <linux/usb/isp1362.h> | ||
40 | #endif | ||
41 | #include <linux/irq.h> | ||
42 | #include <linux/interrupt.h> | ||
43 | #include <linux/usb/sl811.h> | ||
44 | #include <asm/dma.h> | ||
45 | #include <asm/bfin5xx_spi.h> | ||
46 | #include <asm/reboot.h> | ||
47 | #include <asm/portmux.h> | ||
48 | #include <linux/spi/ad7877.h> | ||
49 | |||
50 | /* | ||
51 | * Name the Board for the /proc/cpuinfo | ||
52 | */ | ||
53 | const char bfin_board_name[] = "UNKNOWN BOARD"; | ||
54 | |||
55 | /* | ||
56 | * Driver needs to know address, irq and flag pin. | ||
57 | */ | ||
58 | |||
59 | #if defined(CONFIG_USB_ISP1760_HCD) || defined(CONFIG_USB_ISP1760_HCD_MODULE) | ||
60 | #include <linux/usb/isp1760.h> | ||
61 | static struct resource bfin_isp1760_resources[] = { | ||
62 | [0] = { | ||
63 | .start = 0x203C0000, | ||
64 | .end = 0x203C0000 + 0x000fffff, | ||
65 | .flags = IORESOURCE_MEM, | ||
66 | }, | ||
67 | [1] = { | ||
68 | .start = IRQ_PF7, | ||
69 | .end = IRQ_PF7, | ||
70 | .flags = IORESOURCE_IRQ, | ||
71 | }, | ||
72 | }; | ||
73 | |||
74 | static struct isp1760_platform_data isp1760_priv = { | ||
75 | .is_isp1761 = 0, | ||
76 | .port1_disable = 0, | ||
77 | .bus_width_16 = 1, | ||
78 | .port1_otg = 0, | ||
79 | .analog_oc = 0, | ||
80 | .dack_polarity_high = 0, | ||
81 | .dreq_polarity_high = 0, | ||
82 | }; | ||
83 | |||
84 | static struct platform_device bfin_isp1760_device = { | ||
85 | .name = "isp1760-hcd", | ||
86 | .id = 0, | ||
87 | .dev = { | ||
88 | .platform_data = &isp1760_priv, | ||
89 | }, | ||
90 | .num_resources = ARRAY_SIZE(bfin_isp1760_resources), | ||
91 | .resource = bfin_isp1760_resources, | ||
92 | }; | ||
93 | #endif | ||
94 | |||
95 | #if defined(CONFIG_BFIN_CFPCMCIA) || defined(CONFIG_BFIN_CFPCMCIA_MODULE) | ||
96 | static struct resource bfin_pcmcia_cf_resources[] = { | ||
97 | { | ||
98 | .start = 0x20310000, /* IO PORT */ | ||
99 | .end = 0x20312000, | ||
100 | .flags = IORESOURCE_MEM, | ||
101 | }, { | ||
102 | .start = 0x20311000, /* Attribute Memory */ | ||
103 | .end = 0x20311FFF, | ||
104 | .flags = IORESOURCE_MEM, | ||
105 | }, { | ||
106 | .start = IRQ_PF4, | ||
107 | .end = IRQ_PF4, | ||
108 | .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_LOWLEVEL, | ||
109 | }, { | ||
110 | .start = 6, /* Card Detect PF6 */ | ||
111 | .end = 6, | ||
112 | .flags = IORESOURCE_IRQ, | ||
113 | }, | ||
114 | }; | ||
115 | |||
116 | static struct platform_device bfin_pcmcia_cf_device = { | ||
117 | .name = "bfin_cf_pcmcia", | ||
118 | .id = -1, | ||
119 | .num_resources = ARRAY_SIZE(bfin_pcmcia_cf_resources), | ||
120 | .resource = bfin_pcmcia_cf_resources, | ||
121 | }; | ||
122 | #endif | ||
123 | |||
124 | #if defined(CONFIG_RTC_DRV_BFIN) || defined(CONFIG_RTC_DRV_BFIN_MODULE) | ||
125 | static struct platform_device rtc_device = { | ||
126 | .name = "rtc-bfin", | ||
127 | .id = -1, | ||
128 | }; | ||
129 | #endif | ||
130 | |||
131 | #if defined(CONFIG_SMC91X) || defined(CONFIG_SMC91X_MODULE) | ||
132 | static struct resource smc91x_resources[] = { | ||
133 | { | ||
134 | .name = "smc91x-regs", | ||
135 | .start = 0x20300300, | ||
136 | .end = 0x20300300 + 16, | ||
137 | .flags = IORESOURCE_MEM, | ||
138 | }, { | ||
139 | |||
140 | .start = IRQ_PF7, | ||
141 | .end = IRQ_PF7, | ||
142 | .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL, | ||
143 | }, | ||
144 | }; | ||
145 | static struct platform_device smc91x_device = { | ||
146 | .name = "smc91x", | ||
147 | .id = 0, | ||
148 | .num_resources = ARRAY_SIZE(smc91x_resources), | ||
149 | .resource = smc91x_resources, | ||
150 | }; | ||
151 | #endif | ||
152 | |||
153 | #if defined(CONFIG_DM9000) || defined(CONFIG_DM9000_MODULE) | ||
154 | static struct resource dm9000_resources[] = { | ||
155 | [0] = { | ||
156 | .start = 0x203FB800, | ||
157 | .end = 0x203FB800 + 1, | ||
158 | .flags = IORESOURCE_MEM, | ||
159 | }, | ||
160 | [1] = { | ||
161 | .start = 0x203FB800 + 4, | ||
162 | .end = 0x203FB800 + 5, | ||
163 | .flags = IORESOURCE_MEM, | ||
164 | }, | ||
165 | [2] = { | ||
166 | .start = IRQ_PF9, | ||
167 | .end = IRQ_PF9, | ||
168 | .flags = (IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHEDGE), | ||
169 | }, | ||
170 | }; | ||
171 | |||
172 | static struct platform_device dm9000_device = { | ||
173 | .name = "dm9000", | ||
174 | .id = -1, | ||
175 | .num_resources = ARRAY_SIZE(dm9000_resources), | ||
176 | .resource = dm9000_resources, | ||
177 | }; | ||
178 | #endif | ||
179 | |||
180 | #if defined(CONFIG_USB_SL811_HCD) || defined(CONFIG_USB_SL811_HCD_MODULE) | ||
181 | static struct resource sl811_hcd_resources[] = { | ||
182 | { | ||
183 | .start = 0x20340000, | ||
184 | .end = 0x20340000, | ||
185 | .flags = IORESOURCE_MEM, | ||
186 | }, { | ||
187 | .start = 0x20340004, | ||
188 | .end = 0x20340004, | ||
189 | .flags = IORESOURCE_MEM, | ||
190 | }, { | ||
191 | .start = CONFIG_USB_SL811_BFIN_IRQ, | ||
192 | .end = CONFIG_USB_SL811_BFIN_IRQ, | ||
193 | .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL, | ||
194 | }, | ||
195 | }; | ||
196 | |||
197 | #if defined(CONFIG_USB_SL811_BFIN_USE_VBUS) | ||
198 | void sl811_port_power(struct device *dev, int is_on) | ||
199 | { | ||
200 | gpio_request(CONFIG_USB_SL811_BFIN_GPIO_VBUS, "usb:SL811_VBUS"); | ||
201 | gpio_direction_output(CONFIG_USB_SL811_BFIN_GPIO_VBUS, is_on); | ||
202 | |||
203 | } | ||
204 | #endif | ||
205 | |||
206 | static struct sl811_platform_data sl811_priv = { | ||
207 | .potpg = 10, | ||
208 | .power = 250, /* == 500mA */ | ||
209 | #if defined(CONFIG_USB_SL811_BFIN_USE_VBUS) | ||
210 | .port_power = &sl811_port_power, | ||
211 | #endif | ||
212 | }; | ||
213 | |||
214 | static struct platform_device sl811_hcd_device = { | ||
215 | .name = "sl811-hcd", | ||
216 | .id = 0, | ||
217 | .dev = { | ||
218 | .platform_data = &sl811_priv, | ||
219 | }, | ||
220 | .num_resources = ARRAY_SIZE(sl811_hcd_resources), | ||
221 | .resource = sl811_hcd_resources, | ||
222 | }; | ||
223 | #endif | ||
224 | |||
225 | #if defined(CONFIG_USB_ISP1362_HCD) || defined(CONFIG_USB_ISP1362_HCD_MODULE) | ||
226 | static struct resource isp1362_hcd_resources[] = { | ||
227 | { | ||
228 | .start = 0x20360000, | ||
229 | .end = 0x20360000, | ||
230 | .flags = IORESOURCE_MEM, | ||
231 | }, { | ||
232 | .start = 0x20360004, | ||
233 | .end = 0x20360004, | ||
234 | .flags = IORESOURCE_MEM, | ||
235 | }, { | ||
236 | .start = CONFIG_USB_ISP1362_BFIN_GPIO_IRQ, | ||
237 | .end = CONFIG_USB_ISP1362_BFIN_GPIO_IRQ, | ||
238 | .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL, | ||
239 | }, | ||
240 | }; | ||
241 | |||
242 | static struct isp1362_platform_data isp1362_priv = { | ||
243 | .sel15Kres = 1, | ||
244 | .clknotstop = 0, | ||
245 | .oc_enable = 0, | ||
246 | .int_act_high = 0, | ||
247 | .int_edge_triggered = 0, | ||
248 | .remote_wakeup_connected = 0, | ||
249 | .no_power_switching = 1, | ||
250 | .power_switching_mode = 0, | ||
251 | }; | ||
252 | |||
253 | static struct platform_device isp1362_hcd_device = { | ||
254 | .name = "isp1362-hcd", | ||
255 | .id = 0, | ||
256 | .dev = { | ||
257 | .platform_data = &isp1362_priv, | ||
258 | }, | ||
259 | .num_resources = ARRAY_SIZE(isp1362_hcd_resources), | ||
260 | .resource = isp1362_hcd_resources, | ||
261 | }; | ||
262 | #endif | ||
263 | |||
264 | #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) | ||
265 | static struct platform_device bfin_mii_bus = { | ||
266 | .name = "bfin_mii_bus", | ||
267 | }; | ||
268 | |||
269 | static struct platform_device bfin_mac_device = { | ||
270 | .name = "bfin_mac", | ||
271 | .dev.platform_data = &bfin_mii_bus, | ||
272 | }; | ||
273 | #endif | ||
274 | |||
275 | #if defined(CONFIG_USB_NET2272) || defined(CONFIG_USB_NET2272_MODULE) | ||
276 | static struct resource net2272_bfin_resources[] = { | ||
277 | { | ||
278 | .start = 0x20300000, | ||
279 | .end = 0x20300000 + 0x100, | ||
280 | .flags = IORESOURCE_MEM, | ||
281 | }, { | ||
282 | .start = IRQ_PF7, | ||
283 | .end = IRQ_PF7, | ||
284 | .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL, | ||
285 | }, | ||
286 | }; | ||
287 | |||
288 | static struct platform_device net2272_bfin_device = { | ||
289 | .name = "net2272", | ||
290 | .id = -1, | ||
291 | .num_resources = ARRAY_SIZE(net2272_bfin_resources), | ||
292 | .resource = net2272_bfin_resources, | ||
293 | }; | ||
294 | #endif | ||
295 | |||
296 | #if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE) | ||
297 | /* all SPI peripherals info goes here */ | ||
298 | |||
299 | #if defined(CONFIG_MTD_M25P80) \ | ||
300 | || defined(CONFIG_MTD_M25P80_MODULE) | ||
301 | static struct mtd_partition bfin_spi_flash_partitions[] = { | ||
302 | { | ||
303 | .name = "bootloader(spi)", | ||
304 | .size = 0x00020000, | ||
305 | .offset = 0, | ||
306 | .mask_flags = MTD_CAP_ROM | ||
307 | }, { | ||
308 | .name = "linux kernel(spi)", | ||
309 | .size = 0xe0000, | ||
310 | .offset = 0x20000 | ||
311 | }, { | ||
312 | .name = "file system(spi)", | ||
313 | .size = 0x700000, | ||
314 | .offset = 0x00100000, | ||
315 | } | ||
316 | }; | ||
317 | |||
318 | static struct flash_platform_data bfin_spi_flash_data = { | ||
319 | .name = "m25p80", | ||
320 | .parts = bfin_spi_flash_partitions, | ||
321 | .nr_parts = ARRAY_SIZE(bfin_spi_flash_partitions), | ||
322 | .type = "m25p64", | ||
323 | }; | ||
324 | |||
325 | /* SPI flash chip (m25p64) */ | ||
326 | static struct bfin5xx_spi_chip spi_flash_chip_info = { | ||
327 | .enable_dma = 0, /* use dma transfer with this chip*/ | ||
328 | .bits_per_word = 8, | ||
329 | }; | ||
330 | #endif | ||
331 | |||
332 | #if defined(CONFIG_SPI_ADC_BF533) \ | ||
333 | || defined(CONFIG_SPI_ADC_BF533_MODULE) | ||
334 | /* SPI ADC chip */ | ||
335 | static struct bfin5xx_spi_chip spi_adc_chip_info = { | ||
336 | .enable_dma = 1, /* use dma transfer with this chip*/ | ||
337 | .bits_per_word = 16, | ||
338 | }; | ||
339 | #endif | ||
340 | |||
341 | #if defined(CONFIG_SND_BLACKFIN_AD1836) \ | ||
342 | || defined(CONFIG_SND_BLACKFIN_AD1836_MODULE) | ||
343 | static struct bfin5xx_spi_chip ad1836_spi_chip_info = { | ||
344 | .enable_dma = 0, | ||
345 | .bits_per_word = 16, | ||
346 | }; | ||
347 | #endif | ||
348 | |||
349 | #if defined(CONFIG_AD9960) || defined(CONFIG_AD9960_MODULE) | ||
350 | static struct bfin5xx_spi_chip ad9960_spi_chip_info = { | ||
351 | .enable_dma = 0, | ||
352 | .bits_per_word = 16, | ||
353 | }; | ||
354 | #endif | ||
355 | |||
356 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | ||
357 | static struct bfin5xx_spi_chip spi_mmc_chip_info = { | ||
358 | .enable_dma = 1, | ||
359 | .bits_per_word = 8, | ||
360 | }; | ||
361 | #endif | ||
362 | |||
363 | #if defined(CONFIG_PBX) | ||
364 | static struct bfin5xx_spi_chip spi_si3xxx_chip_info = { | ||
365 | .ctl_reg = 0x4, /* send zero */ | ||
366 | .enable_dma = 0, | ||
367 | .bits_per_word = 8, | ||
368 | .cs_change_per_word = 1, | ||
369 | }; | ||
370 | #endif | ||
371 | |||
372 | #if defined(CONFIG_TOUCHSCREEN_AD7877) || defined(CONFIG_TOUCHSCREEN_AD7877_MODULE) | ||
373 | static struct bfin5xx_spi_chip spi_ad7877_chip_info = { | ||
374 | .enable_dma = 0, | ||
375 | .bits_per_word = 16, | ||
376 | }; | ||
377 | |||
378 | static const struct ad7877_platform_data bfin_ad7877_ts_info = { | ||
379 | .model = 7877, | ||
380 | .vref_delay_usecs = 50, /* internal, no capacitor */ | ||
381 | .x_plate_ohms = 419, | ||
382 | .y_plate_ohms = 486, | ||
383 | .pressure_max = 1000, | ||
384 | .pressure_min = 0, | ||
385 | .stopacq_polarity = 1, | ||
386 | .first_conversion_delay = 3, | ||
387 | .acquisition_time = 1, | ||
388 | .averaging = 1, | ||
389 | .pen_down_acc_interval = 1, | ||
390 | }; | ||
391 | #endif | ||
392 | |||
393 | static struct spi_board_info bfin_spi_board_info[] __initdata = { | ||
394 | #if defined(CONFIG_MTD_M25P80) \ | ||
395 | || defined(CONFIG_MTD_M25P80_MODULE) | ||
396 | { | ||
397 | /* the modalias must be the same as spi device driver name */ | ||
398 | .modalias = "m25p80", /* Name of spi_driver for this device */ | ||
399 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ | ||
400 | .bus_num = 0, /* Framework bus number */ | ||
401 | .chip_select = 1, /* Framework chip select. On STAMP537 it is SPISSEL1*/ | ||
402 | .platform_data = &bfin_spi_flash_data, | ||
403 | .controller_data = &spi_flash_chip_info, | ||
404 | .mode = SPI_MODE_3, | ||
405 | }, | ||
406 | #endif | ||
407 | |||
408 | #if defined(CONFIG_SPI_ADC_BF533) \ | ||
409 | || defined(CONFIG_SPI_ADC_BF533_MODULE) | ||
410 | { | ||
411 | .modalias = "bfin_spi_adc", /* Name of spi_driver for this device */ | ||
412 | .max_speed_hz = 6250000, /* max spi clock (SCK) speed in HZ */ | ||
413 | .bus_num = 0, /* Framework bus number */ | ||
414 | .chip_select = 1, /* Framework chip select. */ | ||
415 | .platform_data = NULL, /* No spi_driver specific config */ | ||
416 | .controller_data = &spi_adc_chip_info, | ||
417 | }, | ||
418 | #endif | ||
419 | |||
420 | #if defined(CONFIG_SND_BLACKFIN_AD1836) \ | ||
421 | || defined(CONFIG_SND_BLACKFIN_AD1836_MODULE) | ||
422 | { | ||
423 | .modalias = "ad1836-spi", | ||
424 | .max_speed_hz = 3125000, /* max spi clock (SCK) speed in HZ */ | ||
425 | .bus_num = 0, | ||
426 | .chip_select = CONFIG_SND_BLACKFIN_SPI_PFBIT, | ||
427 | .controller_data = &ad1836_spi_chip_info, | ||
428 | }, | ||
429 | #endif | ||
430 | #if defined(CONFIG_AD9960) || defined(CONFIG_AD9960_MODULE) | ||
431 | { | ||
432 | .modalias = "ad9960-spi", | ||
433 | .max_speed_hz = 10000000, /* max spi clock (SCK) speed in HZ */ | ||
434 | .bus_num = 0, | ||
435 | .chip_select = 1, | ||
436 | .controller_data = &ad9960_spi_chip_info, | ||
437 | }, | ||
438 | #endif | ||
439 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | ||
440 | { | ||
441 | .modalias = "spi_mmc_dummy", | ||
442 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ | ||
443 | .bus_num = 0, | ||
444 | .chip_select = 0, | ||
445 | .platform_data = NULL, | ||
446 | .controller_data = &spi_mmc_chip_info, | ||
447 | .mode = SPI_MODE_3, | ||
448 | }, | ||
449 | { | ||
450 | .modalias = "spi_mmc", | ||
451 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ | ||
452 | .bus_num = 0, | ||
453 | .chip_select = CONFIG_SPI_MMC_CS_CHAN, | ||
454 | .platform_data = NULL, | ||
455 | .controller_data = &spi_mmc_chip_info, | ||
456 | .mode = SPI_MODE_3, | ||
457 | }, | ||
458 | #endif | ||
459 | #if defined(CONFIG_PBX) | ||
460 | { | ||
461 | .modalias = "fxs-spi", | ||
462 | .max_speed_hz = 12500000, /* max spi clock (SCK) speed in HZ */ | ||
463 | .bus_num = 0, | ||
464 | .chip_select = 8 - CONFIG_J11_JUMPER, | ||
465 | .controller_data = &spi_si3xxx_chip_info, | ||
466 | .mode = SPI_MODE_3, | ||
467 | }, | ||
468 | { | ||
469 | .modalias = "fxo-spi", | ||
470 | .max_speed_hz = 12500000, /* max spi clock (SCK) speed in HZ */ | ||
471 | .bus_num = 0, | ||
472 | .chip_select = 8 - CONFIG_J19_JUMPER, | ||
473 | .controller_data = &spi_si3xxx_chip_info, | ||
474 | .mode = SPI_MODE_3, | ||
475 | }, | ||
476 | #endif | ||
477 | #if defined(CONFIG_TOUCHSCREEN_AD7877) || defined(CONFIG_TOUCHSCREEN_AD7877_MODULE) | ||
478 | { | ||
479 | .modalias = "ad7877", | ||
480 | .platform_data = &bfin_ad7877_ts_info, | ||
481 | .irq = IRQ_PF6, | ||
482 | .max_speed_hz = 12500000, /* max spi clock (SCK) speed in HZ */ | ||
483 | .bus_num = 0, | ||
484 | .chip_select = 1, | ||
485 | .controller_data = &spi_ad7877_chip_info, | ||
486 | }, | ||
487 | #endif | ||
488 | }; | ||
489 | |||
490 | /* SPI controller data */ | ||
491 | static struct bfin5xx_spi_master bfin_spi0_info = { | ||
492 | .num_chipselect = 8, | ||
493 | .enable_dma = 1, /* master has the ability to do dma transfer */ | ||
494 | .pin_req = {P_SPI0_SCK, P_SPI0_MISO, P_SPI0_MOSI, 0}, | ||
495 | }; | ||
496 | |||
497 | /* SPI (0) */ | ||
498 | static struct resource bfin_spi0_resource[] = { | ||
499 | [0] = { | ||
500 | .start = SPI0_REGBASE, | ||
501 | .end = SPI0_REGBASE + 0xFF, | ||
502 | .flags = IORESOURCE_MEM, | ||
503 | }, | ||
504 | [1] = { | ||
505 | .start = CH_SPI, | ||
506 | .end = CH_SPI, | ||
507 | .flags = IORESOURCE_IRQ, | ||
508 | }, | ||
509 | }; | ||
510 | |||
511 | static struct platform_device bfin_spi0_device = { | ||
512 | .name = "bfin-spi", | ||
513 | .id = 0, /* Bus number */ | ||
514 | .num_resources = ARRAY_SIZE(bfin_spi0_resource), | ||
515 | .resource = bfin_spi0_resource, | ||
516 | .dev = { | ||
517 | .platform_data = &bfin_spi0_info, /* Passed to driver */ | ||
518 | }, | ||
519 | }; | ||
520 | #endif /* spi master and devices */ | ||
521 | |||
522 | #if defined(CONFIG_FB_BF537_LQ035) || defined(CONFIG_FB_BF537_LQ035_MODULE) | ||
523 | static struct platform_device bfin_fb_device = { | ||
524 | .name = "bf537-lq035", | ||
525 | }; | ||
526 | #endif | ||
527 | |||
528 | #if defined(CONFIG_FB_BFIN_7393) || defined(CONFIG_FB_BFIN_7393_MODULE) | ||
529 | static struct platform_device bfin_fb_adv7393_device = { | ||
530 | .name = "bfin-adv7393", | ||
531 | }; | ||
532 | #endif | ||
533 | |||
534 | #if defined(CONFIG_SERIAL_BFIN) || defined(CONFIG_SERIAL_BFIN_MODULE) | ||
535 | static struct resource bfin_uart_resources[] = { | ||
536 | { | ||
537 | .start = 0xFFC00400, | ||
538 | .end = 0xFFC004FF, | ||
539 | .flags = IORESOURCE_MEM, | ||
540 | }, { | ||
541 | .start = 0xFFC02000, | ||
542 | .end = 0xFFC020FF, | ||
543 | .flags = IORESOURCE_MEM, | ||
544 | }, | ||
545 | }; | ||
546 | |||
547 | static struct platform_device bfin_uart_device = { | ||
548 | .name = "bfin-uart", | ||
549 | .id = 1, | ||
550 | .num_resources = ARRAY_SIZE(bfin_uart_resources), | ||
551 | .resource = bfin_uart_resources, | ||
552 | }; | ||
553 | #endif | ||
554 | |||
555 | #if defined(CONFIG_BFIN_SIR) || defined(CONFIG_BFIN_SIR_MODULE) | ||
556 | #ifdef CONFIG_BFIN_SIR0 | ||
557 | static struct resource bfin_sir0_resources[] = { | ||
558 | { | ||
559 | .start = 0xFFC00400, | ||
560 | .end = 0xFFC004FF, | ||
561 | .flags = IORESOURCE_MEM, | ||
562 | }, | ||
563 | { | ||
564 | .start = IRQ_UART0_RX, | ||
565 | .end = IRQ_UART0_RX+1, | ||
566 | .flags = IORESOURCE_IRQ, | ||
567 | }, | ||
568 | { | ||
569 | .start = CH_UART0_RX, | ||
570 | .end = CH_UART0_RX+1, | ||
571 | .flags = IORESOURCE_DMA, | ||
572 | }, | ||
573 | }; | ||
574 | |||
575 | static struct platform_device bfin_sir0_device = { | ||
576 | .name = "bfin_sir", | ||
577 | .id = 0, | ||
578 | .num_resources = ARRAY_SIZE(bfin_sir0_resources), | ||
579 | .resource = bfin_sir0_resources, | ||
580 | }; | ||
581 | #endif | ||
582 | #ifdef CONFIG_BFIN_SIR1 | ||
583 | static struct resource bfin_sir1_resources[] = { | ||
584 | { | ||
585 | .start = 0xFFC02000, | ||
586 | .end = 0xFFC020FF, | ||
587 | .flags = IORESOURCE_MEM, | ||
588 | }, | ||
589 | { | ||
590 | .start = IRQ_UART1_RX, | ||
591 | .end = IRQ_UART1_RX+1, | ||
592 | .flags = IORESOURCE_IRQ, | ||
593 | }, | ||
594 | { | ||
595 | .start = CH_UART1_RX, | ||
596 | .end = CH_UART1_RX+1, | ||
597 | .flags = IORESOURCE_DMA, | ||
598 | }, | ||
599 | }; | ||
600 | |||
601 | static struct platform_device bfin_sir1_device = { | ||
602 | .name = "bfin_sir", | ||
603 | .id = 1, | ||
604 | .num_resources = ARRAY_SIZE(bfin_sir1_resources), | ||
605 | .resource = bfin_sir1_resources, | ||
606 | }; | ||
607 | #endif | ||
608 | #endif | ||
609 | |||
610 | #if defined(CONFIG_I2C_BLACKFIN_TWI) || defined(CONFIG_I2C_BLACKFIN_TWI_MODULE) | ||
611 | static struct resource bfin_twi0_resource[] = { | ||
612 | [0] = { | ||
613 | .start = TWI0_REGBASE, | ||
614 | .end = TWI0_REGBASE + 0xFF, | ||
615 | .flags = IORESOURCE_MEM, | ||
616 | }, | ||
617 | [1] = { | ||
618 | .start = IRQ_TWI, | ||
619 | .end = IRQ_TWI, | ||
620 | .flags = IORESOURCE_IRQ, | ||
621 | }, | ||
622 | }; | ||
623 | |||
624 | static struct platform_device i2c_bfin_twi_device = { | ||
625 | .name = "i2c-bfin-twi", | ||
626 | .id = 0, | ||
627 | .num_resources = ARRAY_SIZE(bfin_twi0_resource), | ||
628 | .resource = bfin_twi0_resource, | ||
629 | }; | ||
630 | #endif | ||
631 | |||
632 | #if defined(CONFIG_SERIAL_BFIN_SPORT) || defined(CONFIG_SERIAL_BFIN_SPORT_MODULE) | ||
633 | static struct platform_device bfin_sport0_uart_device = { | ||
634 | .name = "bfin-sport-uart", | ||
635 | .id = 0, | ||
636 | }; | ||
637 | |||
638 | static struct platform_device bfin_sport1_uart_device = { | ||
639 | .name = "bfin-sport-uart", | ||
640 | .id = 1, | ||
641 | }; | ||
642 | #endif | ||
643 | |||
644 | static struct platform_device *stamp_devices[] __initdata = { | ||
645 | #if defined(CONFIG_BFIN_CFPCMCIA) || defined(CONFIG_BFIN_CFPCMCIA_MODULE) | ||
646 | &bfin_pcmcia_cf_device, | ||
647 | #endif | ||
648 | |||
649 | #if defined(CONFIG_RTC_DRV_BFIN) || defined(CONFIG_RTC_DRV_BFIN_MODULE) | ||
650 | &rtc_device, | ||
651 | #endif | ||
652 | |||
653 | #if defined(CONFIG_USB_SL811_HCD) || defined(CONFIG_USB_SL811_HCD_MODULE) | ||
654 | &sl811_hcd_device, | ||
655 | #endif | ||
656 | |||
657 | #if defined(CONFIG_USB_ISP1362_HCD) || defined(CONFIG_USB_ISP1362_HCD_MODULE) | ||
658 | &isp1362_hcd_device, | ||
659 | #endif | ||
660 | |||
661 | #if defined(CONFIG_SMC91X) || defined(CONFIG_SMC91X_MODULE) | ||
662 | &smc91x_device, | ||
663 | #endif | ||
664 | |||
665 | #if defined(CONFIG_DM9000) || defined(CONFIG_DM9000_MODULE) | ||
666 | &dm9000_device, | ||
667 | #endif | ||
668 | |||
669 | #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) | ||
670 | &bfin_mii_bus, | ||
671 | &bfin_mac_device, | ||
672 | #endif | ||
673 | |||
674 | #if defined(CONFIG_USB_NET2272) || defined(CONFIG_USB_NET2272_MODULE) | ||
675 | &net2272_bfin_device, | ||
676 | #endif | ||
677 | |||
678 | #if defined(CONFIG_USB_ISP1760_HCD) || defined(CONFIG_USB_ISP1760_HCD_MODULE) | ||
679 | &bfin_isp1760_device, | ||
680 | #endif | ||
681 | |||
682 | #if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE) | ||
683 | &bfin_spi0_device, | ||
684 | #endif | ||
685 | |||
686 | #if defined(CONFIG_FB_BF537_LQ035) || defined(CONFIG_FB_BF537_LQ035_MODULE) | ||
687 | &bfin_fb_device, | ||
688 | #endif | ||
689 | |||
690 | #if defined(CONFIG_FB_BFIN_7393) || defined(CONFIG_FB_BFIN_7393_MODULE) | ||
691 | &bfin_fb_adv7393_device, | ||
692 | #endif | ||
693 | |||
694 | #if defined(CONFIG_SERIAL_BFIN) || defined(CONFIG_SERIAL_BFIN_MODULE) | ||
695 | &bfin_uart_device, | ||
696 | #endif | ||
697 | |||
698 | #if defined(CONFIG_BFIN_SIR) || defined(CONFIG_BFIN_SIR_MODULE) | ||
699 | #ifdef CONFIG_BFIN_SIR0 | ||
700 | &bfin_sir0_device, | ||
701 | #endif | ||
702 | #ifdef CONFIG_BFIN_SIR1 | ||
703 | &bfin_sir1_device, | ||
704 | #endif | ||
705 | #endif | ||
706 | |||
707 | #if defined(CONFIG_I2C_BLACKFIN_TWI) || defined(CONFIG_I2C_BLACKFIN_TWI_MODULE) | ||
708 | &i2c_bfin_twi_device, | ||
709 | #endif | ||
710 | |||
711 | #if defined(CONFIG_SERIAL_BFIN_SPORT) || defined(CONFIG_SERIAL_BFIN_SPORT_MODULE) | ||
712 | &bfin_sport0_uart_device, | ||
713 | &bfin_sport1_uart_device, | ||
714 | #endif | ||
715 | }; | ||
716 | |||
717 | static int __init generic_init(void) | ||
718 | { | ||
719 | printk(KERN_INFO "%s(): registering device resources\n", __func__); | ||
720 | platform_add_devices(stamp_devices, ARRAY_SIZE(stamp_devices)); | ||
721 | #if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE) | ||
722 | spi_register_board_info(bfin_spi_board_info, | ||
723 | ARRAY_SIZE(bfin_spi_board_info)); | ||
724 | #endif | ||
725 | |||
726 | return 0; | ||
727 | } | ||
728 | |||
729 | arch_initcall(generic_init); | ||
730 | |||
731 | void native_machine_restart(char *cmd) | ||
732 | { | ||
733 | /* workaround reboot hang when booting from SPI */ | ||
734 | if ((bfin_read_SYSCR() & 0x7) == 0x3) | ||
735 | bfin_reset_boot_spi_cs(P_DEFAULT_BOOT_SPI_CS); | ||
736 | } | ||
737 | |||
738 | #if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE) | ||
739 | void bfin_get_ether_addr(char *addr) | ||
740 | { | ||
741 | random_ether_addr(addr); | ||
742 | printk(KERN_WARNING "%s:%s: Setting Ethernet MAC to a random one\n", __FILE__, __func__); | ||
743 | } | ||
744 | EXPORT_SYMBOL(bfin_get_ether_addr); | ||
745 | #endif | ||
diff --git a/arch/blackfin/mach-bf537/boards/minotaur.c b/arch/blackfin/mach-bf537/boards/minotaur.c index db7d3a385e4b..3c159819e555 100644 --- a/arch/blackfin/mach-bf537/boards/minotaur.c +++ b/arch/blackfin/mach-bf537/boards/minotaur.c | |||
@@ -134,9 +134,9 @@ static struct bfin5xx_spi_chip spi_flash_chip_info = { | |||
134 | }; | 134 | }; |
135 | #endif | 135 | #endif |
136 | 136 | ||
137 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 137 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
138 | static struct bfin5xx_spi_chip spi_mmc_chip_info = { | 138 | static struct bfin5xx_spi_chip mmc_spi_chip_info = { |
139 | .enable_dma = 1, | 139 | .enable_dma = 0, |
140 | .bits_per_word = 8, | 140 | .bits_per_word = 8, |
141 | }; | 141 | }; |
142 | #endif | 142 | #endif |
@@ -156,23 +156,13 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = { | |||
156 | }, | 156 | }, |
157 | #endif | 157 | #endif |
158 | 158 | ||
159 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 159 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
160 | { | 160 | { |
161 | .modalias = "spi_mmc_dummy", | 161 | .modalias = "mmc_spi", |
162 | .max_speed_hz = 5000000, /* max spi clock (SCK) speed in HZ */ | 162 | .max_speed_hz = 5000000, /* max spi clock (SCK) speed in HZ */ |
163 | .bus_num = 0, | 163 | .bus_num = 0, |
164 | .chip_select = 0, | 164 | .chip_select = 5, |
165 | .platform_data = NULL, | 165 | .controller_data = &mmc_spi_chip_info, |
166 | .controller_data = &spi_mmc_chip_info, | ||
167 | .mode = SPI_MODE_3, | ||
168 | }, | ||
169 | { | ||
170 | .modalias = "spi_mmc", | ||
171 | .max_speed_hz = 5000000, /* max spi clock (SCK) speed in HZ */ | ||
172 | .bus_num = 0, | ||
173 | .chip_select = CONFIG_SPI_MMC_CS_CHAN, | ||
174 | .platform_data = NULL, | ||
175 | .controller_data = &spi_mmc_chip_info, | ||
176 | .mode = SPI_MODE_3, | 166 | .mode = SPI_MODE_3, |
177 | }, | 167 | }, |
178 | #endif | 168 | #endif |
diff --git a/arch/blackfin/mach-bf537/boards/pnav10.c b/arch/blackfin/mach-bf537/boards/pnav10.c index 590eb3a139b7..4e1de1e53f89 100644 --- a/arch/blackfin/mach-bf537/boards/pnav10.c +++ b/arch/blackfin/mach-bf537/boards/pnav10.c | |||
@@ -289,9 +289,9 @@ static struct bfin5xx_spi_chip ad9960_spi_chip_info = { | |||
289 | }; | 289 | }; |
290 | #endif | 290 | #endif |
291 | 291 | ||
292 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 292 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
293 | static struct bfin5xx_spi_chip spi_mmc_chip_info = { | 293 | static struct bfin5xx_spi_chip mmc_spi_chip_info = { |
294 | .enable_dma = 1, | 294 | .enable_dma = 0, |
295 | .bits_per_word = 8, | 295 | .bits_per_word = 8, |
296 | }; | 296 | }; |
297 | #endif | 297 | #endif |
@@ -364,23 +364,13 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = { | |||
364 | .controller_data = &ad9960_spi_chip_info, | 364 | .controller_data = &ad9960_spi_chip_info, |
365 | }, | 365 | }, |
366 | #endif | 366 | #endif |
367 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 367 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
368 | { | ||
369 | .modalias = "spi_mmc_dummy", | ||
370 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ | ||
371 | .bus_num = 0, | ||
372 | .chip_select = 7, | ||
373 | .platform_data = NULL, | ||
374 | .controller_data = &spi_mmc_chip_info, | ||
375 | .mode = SPI_MODE_3, | ||
376 | }, | ||
377 | { | 368 | { |
378 | .modalias = "spi_mmc", | 369 | .modalias = "mmc_spi", |
379 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ | 370 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ |
380 | .bus_num = 0, | 371 | .bus_num = 0, |
381 | .chip_select = CONFIG_SPI_MMC_CS_CHAN, | 372 | .chip_select = 5, |
382 | .platform_data = NULL, | 373 | .controller_data = &mmc_spi_chip_info, |
383 | .controller_data = &spi_mmc_chip_info, | ||
384 | .mode = SPI_MODE_3, | 374 | .mode = SPI_MODE_3, |
385 | }, | 375 | }, |
386 | #endif | 376 | #endif |
diff --git a/arch/blackfin/mach-bf537/boards/tcm_bf537.c b/arch/blackfin/mach-bf537/boards/tcm_bf537.c index 3f4f203a06ec..53ad10f3cd76 100644 --- a/arch/blackfin/mach-bf537/boards/tcm_bf537.c +++ b/arch/blackfin/mach-bf537/boards/tcm_bf537.c | |||
@@ -108,9 +108,9 @@ static struct bfin5xx_spi_chip ad9960_spi_chip_info = { | |||
108 | }; | 108 | }; |
109 | #endif | 109 | #endif |
110 | 110 | ||
111 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 111 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
112 | static struct bfin5xx_spi_chip spi_mmc_chip_info = { | 112 | static struct bfin5xx_spi_chip mmc_spi_chip_info = { |
113 | .enable_dma = 1, | 113 | .enable_dma = 0, |
114 | .bits_per_word = 8, | 114 | .bits_per_word = 8, |
115 | }; | 115 | }; |
116 | #endif | 116 | #endif |
@@ -160,23 +160,13 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = { | |||
160 | }, | 160 | }, |
161 | #endif | 161 | #endif |
162 | 162 | ||
163 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 163 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
164 | { | ||
165 | .modalias = "spi_mmc_dummy", | ||
166 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ | ||
167 | .bus_num = 0, | ||
168 | .chip_select = 7, | ||
169 | .platform_data = NULL, | ||
170 | .controller_data = &spi_mmc_chip_info, | ||
171 | .mode = SPI_MODE_3, | ||
172 | }, | ||
173 | { | 164 | { |
174 | .modalias = "spi_mmc", | 165 | .modalias = "mmc_spi", |
175 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ | 166 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ |
176 | .bus_num = 0, | 167 | .bus_num = 0, |
177 | .chip_select = CONFIG_SPI_MMC_CS_CHAN, | 168 | .chip_select = 5, |
178 | .platform_data = NULL, | 169 | .controller_data = &mmc_spi_chip_info, |
179 | .controller_data = &spi_mmc_chip_info, | ||
180 | .mode = SPI_MODE_3, | 170 | .mode = SPI_MODE_3, |
181 | }, | 171 | }, |
182 | #endif | 172 | #endif |
diff --git a/arch/blackfin/mach-bf537/include/mach/anomaly.h b/arch/blackfin/mach-bf537/include/mach/anomaly.h index 9cb39121d1cb..1bfd80c26c90 100644 --- a/arch/blackfin/mach-bf537/include/mach/anomaly.h +++ b/arch/blackfin/mach-bf537/include/mach/anomaly.h | |||
@@ -2,7 +2,7 @@ | |||
2 | * File: include/asm-blackfin/mach-bf537/anomaly.h | 2 | * File: include/asm-blackfin/mach-bf537/anomaly.h |
3 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | 3 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ |
4 | * | 4 | * |
5 | * Copyright (C) 2004-2008 Analog Devices Inc. | 5 | * Copyright (C) 2004-2009 Analog Devices Inc. |
6 | * Licensed under the GPL-2 or later. | 6 | * Licensed under the GPL-2 or later. |
7 | */ | 7 | */ |
8 | 8 | ||
@@ -110,7 +110,7 @@ | |||
110 | #define ANOMALY_05000301 (1) | 110 | #define ANOMALY_05000301 (1) |
111 | /* SSYNCs After Writes To CAN/DMA MMR Registers Are Not Always Handled Correctly */ | 111 | /* SSYNCs After Writes To CAN/DMA MMR Registers Are Not Always Handled Correctly */ |
112 | #define ANOMALY_05000304 (__SILICON_REVISION__ < 3) | 112 | #define ANOMALY_05000304 (__SILICON_REVISION__ < 3) |
113 | /* New Feature: Additional Hysteresis on SPORT Input Pins (Not Available On Older Silicon) */ | 113 | /* SPORT_HYS Bit in PLL_CTL Register Is Not Functional */ |
114 | #define ANOMALY_05000305 (__SILICON_REVISION__ < 3) | 114 | #define ANOMALY_05000305 (__SILICON_REVISION__ < 3) |
115 | /* SCKELOW Bit Does Not Maintain State Through Hibernate */ | 115 | /* SCKELOW Bit Does Not Maintain State Through Hibernate */ |
116 | #define ANOMALY_05000307 (__SILICON_REVISION__ < 3) | 116 | #define ANOMALY_05000307 (__SILICON_REVISION__ < 3) |
@@ -168,9 +168,12 @@ | |||
168 | #define ANOMALY_05000323 (0) | 168 | #define ANOMALY_05000323 (0) |
169 | #define ANOMALY_05000353 (1) | 169 | #define ANOMALY_05000353 (1) |
170 | #define ANOMALY_05000363 (0) | 170 | #define ANOMALY_05000363 (0) |
171 | #define ANOMALY_05000380 (0) | ||
171 | #define ANOMALY_05000386 (1) | 172 | #define ANOMALY_05000386 (1) |
172 | #define ANOMALY_05000412 (0) | 173 | #define ANOMALY_05000412 (0) |
173 | #define ANOMALY_05000432 (0) | 174 | #define ANOMALY_05000432 (0) |
174 | #define ANOMALY_05000435 (0) | 175 | #define ANOMALY_05000435 (0) |
176 | #define ANOMALY_05000447 (0) | ||
177 | #define ANOMALY_05000448 (0) | ||
175 | 178 | ||
176 | #endif | 179 | #endif |
diff --git a/arch/blackfin/mach-bf537/include/mach/bfin_serial_5xx.h b/arch/blackfin/mach-bf537/include/mach/bfin_serial_5xx.h index b3f87e1d16a2..9e34700844a2 100644 --- a/arch/blackfin/mach-bf537/include/mach/bfin_serial_5xx.h +++ b/arch/blackfin/mach-bf537/include/mach/bfin_serial_5xx.h | |||
@@ -144,7 +144,7 @@ struct bfin_serial_res bfin_serial_resource[] = { | |||
144 | CH_UART0_TX, | 144 | CH_UART0_TX, |
145 | CH_UART0_RX, | 145 | CH_UART0_RX, |
146 | #endif | 146 | #endif |
147 | #ifdef CONFIG_BFIN_UART0_CTSRTS | 147 | #ifdef CONFIG_SERIAL_BFIN_CTSRTS |
148 | CONFIG_UART0_CTS_PIN, | 148 | CONFIG_UART0_CTS_PIN, |
149 | CONFIG_UART0_RTS_PIN, | 149 | CONFIG_UART0_RTS_PIN, |
150 | #endif | 150 | #endif |
@@ -158,7 +158,7 @@ struct bfin_serial_res bfin_serial_resource[] = { | |||
158 | CH_UART1_TX, | 158 | CH_UART1_TX, |
159 | CH_UART1_RX, | 159 | CH_UART1_RX, |
160 | #endif | 160 | #endif |
161 | #ifdef CONFIG_BFIN_UART1_CTSRTS | 161 | #ifdef CONFIG_SERIAL_BFIN_CTSRTS |
162 | CONFIG_UART1_CTS_PIN, | 162 | CONFIG_UART1_CTS_PIN, |
163 | CONFIG_UART1_RTS_PIN, | 163 | CONFIG_UART1_RTS_PIN, |
164 | #endif | 164 | #endif |
diff --git a/arch/blackfin/mach-bf538/include/mach/anomaly.h b/arch/blackfin/mach-bf538/include/mach/anomaly.h index e130b4f8a05d..3a5699827363 100644 --- a/arch/blackfin/mach-bf538/include/mach/anomaly.h +++ b/arch/blackfin/mach-bf538/include/mach/anomaly.h | |||
@@ -2,7 +2,7 @@ | |||
2 | * File: include/asm-blackfin/mach-bf538/anomaly.h | 2 | * File: include/asm-blackfin/mach-bf538/anomaly.h |
3 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | 3 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ |
4 | * | 4 | * |
5 | * Copyright (C) 2004-2008 Analog Devices Inc. | 5 | * Copyright (C) 2004-2009 Analog Devices Inc. |
6 | * Licensed under the GPL-2 or later. | 6 | * Licensed under the GPL-2 or later. |
7 | */ | 7 | */ |
8 | 8 | ||
@@ -120,13 +120,17 @@ | |||
120 | #define ANOMALY_05000198 (0) | 120 | #define ANOMALY_05000198 (0) |
121 | #define ANOMALY_05000230 (0) | 121 | #define ANOMALY_05000230 (0) |
122 | #define ANOMALY_05000263 (0) | 122 | #define ANOMALY_05000263 (0) |
123 | #define ANOMALY_05000305 (0) | ||
123 | #define ANOMALY_05000311 (0) | 124 | #define ANOMALY_05000311 (0) |
124 | #define ANOMALY_05000323 (0) | 125 | #define ANOMALY_05000323 (0) |
125 | #define ANOMALY_05000353 (1) | 126 | #define ANOMALY_05000353 (1) |
126 | #define ANOMALY_05000363 (0) | 127 | #define ANOMALY_05000363 (0) |
128 | #define ANOMALY_05000380 (0) | ||
127 | #define ANOMALY_05000386 (1) | 129 | #define ANOMALY_05000386 (1) |
128 | #define ANOMALY_05000412 (0) | 130 | #define ANOMALY_05000412 (0) |
129 | #define ANOMALY_05000432 (0) | 131 | #define ANOMALY_05000432 (0) |
130 | #define ANOMALY_05000435 (0) | 132 | #define ANOMALY_05000435 (0) |
133 | #define ANOMALY_05000447 (0) | ||
134 | #define ANOMALY_05000448 (0) | ||
131 | 135 | ||
132 | #endif | 136 | #endif |
diff --git a/arch/blackfin/mach-bf538/include/mach/bfin_serial_5xx.h b/arch/blackfin/mach-bf538/include/mach/bfin_serial_5xx.h index 40503b6b89a3..3c2811ebecdd 100644 --- a/arch/blackfin/mach-bf538/include/mach/bfin_serial_5xx.h +++ b/arch/blackfin/mach-bf538/include/mach/bfin_serial_5xx.h | |||
@@ -144,7 +144,7 @@ struct bfin_serial_res bfin_serial_resource[] = { | |||
144 | CH_UART0_TX, | 144 | CH_UART0_TX, |
145 | CH_UART0_RX, | 145 | CH_UART0_RX, |
146 | #endif | 146 | #endif |
147 | #ifdef CONFIG_BFIN_UART0_CTSRTS | 147 | #ifdef CONFIG_SERIAL_BFIN_CTSRTS |
148 | CONFIG_UART0_CTS_PIN, | 148 | CONFIG_UART0_CTS_PIN, |
149 | CONFIG_UART0_RTS_PIN, | 149 | CONFIG_UART0_RTS_PIN, |
150 | #endif | 150 | #endif |
@@ -158,7 +158,7 @@ struct bfin_serial_res bfin_serial_resource[] = { | |||
158 | CH_UART1_TX, | 158 | CH_UART1_TX, |
159 | CH_UART1_RX, | 159 | CH_UART1_RX, |
160 | #endif | 160 | #endif |
161 | #ifdef CONFIG_BFIN_UART1_CTSRTS | 161 | #ifdef CONFIG_SERIAL_BFIN_CTSRTS |
162 | CONFIG_UART1_CTS_PIN, | 162 | CONFIG_UART1_CTS_PIN, |
163 | CONFIG_UART1_RTS_PIN, | 163 | CONFIG_UART1_RTS_PIN, |
164 | #endif | 164 | #endif |
diff --git a/arch/blackfin/mach-bf548/include/mach/anomaly.h b/arch/blackfin/mach-bf548/include/mach/anomaly.h index 23d03c52f4b4..882e40ccf0d1 100644 --- a/arch/blackfin/mach-bf548/include/mach/anomaly.h +++ b/arch/blackfin/mach-bf548/include/mach/anomaly.h | |||
@@ -2,12 +2,12 @@ | |||
2 | * File: include/asm-blackfin/mach-bf548/anomaly.h | 2 | * File: include/asm-blackfin/mach-bf548/anomaly.h |
3 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | 3 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ |
4 | * | 4 | * |
5 | * Copyright (C) 2004-2008 Analog Devices Inc. | 5 | * Copyright (C) 2004-2009 Analog Devices Inc. |
6 | * Licensed under the GPL-2 or later. | 6 | * Licensed under the GPL-2 or later. |
7 | */ | 7 | */ |
8 | 8 | ||
9 | /* This file shoule be up to date with: | 9 | /* This file shoule be up to date with: |
10 | * - Revision G, 08/07/2008; ADSP-BF542/BF544/BF547/BF548/BF549 Blackfin Processor Anomaly List | 10 | * - Revision H, 01/16/2009; ADSP-BF542/BF544/BF547/BF548/BF549 Blackfin Processor Anomaly List |
11 | */ | 11 | */ |
12 | 12 | ||
13 | #ifndef _MACH_ANOMALY_H_ | 13 | #ifndef _MACH_ANOMALY_H_ |
@@ -91,8 +91,6 @@ | |||
91 | #define ANOMALY_05000371 (__SILICON_REVISION__ < 2) | 91 | #define ANOMALY_05000371 (__SILICON_REVISION__ < 2) |
92 | /* USB DP/DM Data Pins May Lose State When Entering Hibernate */ | 92 | /* USB DP/DM Data Pins May Lose State When Entering Hibernate */ |
93 | #define ANOMALY_05000372 (__SILICON_REVISION__ < 1) | 93 | #define ANOMALY_05000372 (__SILICON_REVISION__ < 1) |
94 | /* Mobile DDR Operation Not Functional */ | ||
95 | #define ANOMALY_05000377 (1) | ||
96 | /* Security/Authentication Speedpath Causes Authentication To Fail To Initiate */ | 94 | /* Security/Authentication Speedpath Causes Authentication To Fail To Initiate */ |
97 | #define ANOMALY_05000378 (__SILICON_REVISION__ < 2) | 95 | #define ANOMALY_05000378 (__SILICON_REVISION__ < 2) |
98 | /* 16-Bit NAND FLASH Boot Mode Is Not Functional */ | 96 | /* 16-Bit NAND FLASH Boot Mode Is Not Functional */ |
@@ -157,8 +155,22 @@ | |||
157 | #define ANOMALY_05000429 (__SILICON_REVISION__ < 2) | 155 | #define ANOMALY_05000429 (__SILICON_REVISION__ < 2) |
158 | /* Software System Reset Corrupts PLL_LOCKCNT Register */ | 156 | /* Software System Reset Corrupts PLL_LOCKCNT Register */ |
159 | #define ANOMALY_05000430 (__SILICON_REVISION__ >= 2) | 157 | #define ANOMALY_05000430 (__SILICON_REVISION__ >= 2) |
158 | /* Incorrect Use of Stack in Lockbox Firmware During Authentication */ | ||
159 | #define ANOMALY_05000431 (__SILICON_REVISION__ < 3) | ||
160 | /* OTP Write Accesses Not Supported */ | ||
161 | #define ANOMALY_05000442 (__SILICON_REVISION__ < 1) | ||
160 | /* IFLUSH Instruction at End of Hardware Loop Causes Infinite Stall */ | 162 | /* IFLUSH Instruction at End of Hardware Loop Causes Infinite Stall */ |
161 | #define ANOMALY_05000443 (1) | 163 | #define ANOMALY_05000443 (1) |
164 | /* CDMAPRIO and L2DMAPRIO Bits in the SYSCR Register Are Not Functional */ | ||
165 | #define ANOMALY_05000446 (1) | ||
166 | /* UART IrDA Receiver Fails on Extended Bit Pulses */ | ||
167 | #define ANOMALY_05000447 (1) | ||
168 | /* DDR Clock Duty Cycle Spec Violation (tCH, tCL) */ | ||
169 | #define ANOMALY_05000448 (__SILICON_REVISION__ == 1) | ||
170 | /* Reduced Timing Margins on DDR Output Setup and Hold (tDS and tDH) */ | ||
171 | #define ANOMALY_05000449 (__SILICON_REVISION__ == 1) | ||
172 | /* USB DMA Mode 1 Short Packet Data Corruption */ | ||
173 | #define ANOMALY_05000450 (1 | ||
162 | 174 | ||
163 | /* Anomalies that don't exist on this proc */ | 175 | /* Anomalies that don't exist on this proc */ |
164 | #define ANOMALY_05000125 (0) | 176 | #define ANOMALY_05000125 (0) |
@@ -171,6 +183,8 @@ | |||
171 | #define ANOMALY_05000263 (0) | 183 | #define ANOMALY_05000263 (0) |
172 | #define ANOMALY_05000266 (0) | 184 | #define ANOMALY_05000266 (0) |
173 | #define ANOMALY_05000273 (0) | 185 | #define ANOMALY_05000273 (0) |
186 | #define ANOMALY_05000278 (0) | ||
187 | #define ANOMALY_05000305 (0) | ||
174 | #define ANOMALY_05000307 (0) | 188 | #define ANOMALY_05000307 (0) |
175 | #define ANOMALY_05000311 (0) | 189 | #define ANOMALY_05000311 (0) |
176 | #define ANOMALY_05000323 (0) | 190 | #define ANOMALY_05000323 (0) |
diff --git a/arch/blackfin/mach-bf548/include/mach/bfin_serial_5xx.h b/arch/blackfin/mach-bf548/include/mach/bfin_serial_5xx.h index e4cf35e7ab9f..c05e79cba257 100644 --- a/arch/blackfin/mach-bf548/include/mach/bfin_serial_5xx.h +++ b/arch/blackfin/mach-bf548/include/mach/bfin_serial_5xx.h | |||
@@ -63,7 +63,7 @@ | |||
63 | #define UART_ENABLE_INTS(x, v) UART_SET_IER(x, v) | 63 | #define UART_ENABLE_INTS(x, v) UART_SET_IER(x, v) |
64 | #define UART_DISABLE_INTS(x) UART_CLEAR_IER(x, 0xF) | 64 | #define UART_DISABLE_INTS(x) UART_CLEAR_IER(x, 0xF) |
65 | 65 | ||
66 | #if defined(CONFIG_BFIN_UART0_CTSRTS) || defined(CONFIG_BFIN_UART1_CTSRTS) | 66 | #if defined(CONFIG_BFIN_UART0_CTSRTS) || defined(CONFIG_BFIN_UART2_CTSRTS) |
67 | # define CONFIG_SERIAL_BFIN_CTSRTS | 67 | # define CONFIG_SERIAL_BFIN_CTSRTS |
68 | 68 | ||
69 | # ifndef CONFIG_UART0_CTS_PIN | 69 | # ifndef CONFIG_UART0_CTS_PIN |
@@ -74,12 +74,12 @@ | |||
74 | # define CONFIG_UART0_RTS_PIN -1 | 74 | # define CONFIG_UART0_RTS_PIN -1 |
75 | # endif | 75 | # endif |
76 | 76 | ||
77 | # ifndef CONFIG_UART1_CTS_PIN | 77 | # ifndef CONFIG_UART2_CTS_PIN |
78 | # define CONFIG_UART1_CTS_PIN -1 | 78 | # define CONFIG_UART2_CTS_PIN -1 |
79 | # endif | 79 | # endif |
80 | 80 | ||
81 | # ifndef CONFIG_UART1_RTS_PIN | 81 | # ifndef CONFIG_UART2_RTS_PIN |
82 | # define CONFIG_UART1_RTS_PIN -1 | 82 | # define CONFIG_UART2_RTS_PIN -1 |
83 | # endif | 83 | # endif |
84 | #endif | 84 | #endif |
85 | 85 | ||
@@ -130,7 +130,7 @@ struct bfin_serial_res bfin_serial_resource[] = { | |||
130 | CH_UART0_TX, | 130 | CH_UART0_TX, |
131 | CH_UART0_RX, | 131 | CH_UART0_RX, |
132 | #endif | 132 | #endif |
133 | #ifdef CONFIG_BFIN_UART0_CTSRTS | 133 | #ifdef CONFIG_SERIAL_BFIN_CTSRTS |
134 | CONFIG_UART0_CTS_PIN, | 134 | CONFIG_UART0_CTS_PIN, |
135 | CONFIG_UART0_RTS_PIN, | 135 | CONFIG_UART0_RTS_PIN, |
136 | #endif | 136 | #endif |
@@ -144,6 +144,10 @@ struct bfin_serial_res bfin_serial_resource[] = { | |||
144 | CH_UART1_TX, | 144 | CH_UART1_TX, |
145 | CH_UART1_RX, | 145 | CH_UART1_RX, |
146 | #endif | 146 | #endif |
147 | #ifdef CONFIG_SERIAL_BFIN_CTSRTS | ||
148 | 0, | ||
149 | 0, | ||
150 | #endif | ||
147 | }, | 151 | }, |
148 | #endif | 152 | #endif |
149 | #ifdef CONFIG_SERIAL_BFIN_UART2 | 153 | #ifdef CONFIG_SERIAL_BFIN_UART2 |
@@ -154,7 +158,7 @@ struct bfin_serial_res bfin_serial_resource[] = { | |||
154 | CH_UART2_TX, | 158 | CH_UART2_TX, |
155 | CH_UART2_RX, | 159 | CH_UART2_RX, |
156 | #endif | 160 | #endif |
157 | #ifdef CONFIG_BFIN_UART2_CTSRTS | 161 | #ifdef CONFIG_SERIAL_BFIN_CTSRTS |
158 | CONFIG_UART2_CTS_PIN, | 162 | CONFIG_UART2_CTS_PIN, |
159 | CONFIG_UART2_RTS_PIN, | 163 | CONFIG_UART2_RTS_PIN, |
160 | #endif | 164 | #endif |
@@ -168,6 +172,10 @@ struct bfin_serial_res bfin_serial_resource[] = { | |||
168 | CH_UART3_TX, | 172 | CH_UART3_TX, |
169 | CH_UART3_RX, | 173 | CH_UART3_RX, |
170 | #endif | 174 | #endif |
175 | #ifdef CONFIG_SERIAL_BFIN_CTSRTS | ||
176 | 0, | ||
177 | 0, | ||
178 | #endif | ||
171 | }, | 179 | }, |
172 | #endif | 180 | #endif |
173 | }; | 181 | }; |
diff --git a/arch/blackfin/mach-bf548/include/mach/irq.h b/arch/blackfin/mach-bf548/include/mach/irq.h index 60299a71e090..f194625f6821 100644 --- a/arch/blackfin/mach-bf548/include/mach/irq.h +++ b/arch/blackfin/mach-bf548/include/mach/irq.h | |||
@@ -123,8 +123,8 @@ Events (highest priority) EMU 0 | |||
123 | #define IRQ_MXVR_ERROR BFIN_IRQ(51) /* MXVR Status (Error) Interrupt */ | 123 | #define IRQ_MXVR_ERROR BFIN_IRQ(51) /* MXVR Status (Error) Interrupt */ |
124 | #define IRQ_MXVR_MSG BFIN_IRQ(52) /* MXVR Message Interrupt */ | 124 | #define IRQ_MXVR_MSG BFIN_IRQ(52) /* MXVR Message Interrupt */ |
125 | #define IRQ_MXVR_PKT BFIN_IRQ(53) /* MXVR Packet Interrupt */ | 125 | #define IRQ_MXVR_PKT BFIN_IRQ(53) /* MXVR Packet Interrupt */ |
126 | #define IRQ_EPP1_ERROR BFIN_IRQ(54) /* EPPI1 Error Interrupt */ | 126 | #define IRQ_EPPI1_ERROR BFIN_IRQ(54) /* EPPI1 Error Interrupt */ |
127 | #define IRQ_EPP2_ERROR BFIN_IRQ(55) /* EPPI2 Error Interrupt */ | 127 | #define IRQ_EPPI2_ERROR BFIN_IRQ(55) /* EPPI2 Error Interrupt */ |
128 | #define IRQ_UART3_ERROR BFIN_IRQ(56) /* UART3 Status (Error) Interrupt */ | 128 | #define IRQ_UART3_ERROR BFIN_IRQ(56) /* UART3 Status (Error) Interrupt */ |
129 | #define IRQ_HOST_ERROR BFIN_IRQ(57) /* HOST Status (Error) Interrupt */ | 129 | #define IRQ_HOST_ERROR BFIN_IRQ(57) /* HOST Status (Error) Interrupt */ |
130 | #define IRQ_PIXC_ERROR BFIN_IRQ(59) /* PIXC Status (Error) Interrupt */ | 130 | #define IRQ_PIXC_ERROR BFIN_IRQ(59) /* PIXC Status (Error) Interrupt */ |
@@ -361,8 +361,8 @@ Events (highest priority) EMU 0 | |||
361 | #define IRQ_UART2_ERR IRQ_UART2_ERROR | 361 | #define IRQ_UART2_ERR IRQ_UART2_ERROR |
362 | #define IRQ_CAN0_ERR IRQ_CAN0_ERROR | 362 | #define IRQ_CAN0_ERR IRQ_CAN0_ERROR |
363 | #define IRQ_MXVR_ERR IRQ_MXVR_ERROR | 363 | #define IRQ_MXVR_ERR IRQ_MXVR_ERROR |
364 | #define IRQ_EPP1_ERR IRQ_EPP1_ERROR | 364 | #define IRQ_EPPI1_ERR IRQ_EPPI1_ERROR |
365 | #define IRQ_EPP2_ERR IRQ_EPP2_ERROR | 365 | #define IRQ_EPPI2_ERR IRQ_EPPI2_ERROR |
366 | #define IRQ_UART3_ERR IRQ_UART3_ERROR | 366 | #define IRQ_UART3_ERR IRQ_UART3_ERROR |
367 | #define IRQ_HOST_ERR IRQ_HOST_ERROR | 367 | #define IRQ_HOST_ERR IRQ_HOST_ERROR |
368 | #define IRQ_PIXC_ERR IRQ_PIXC_ERROR | 368 | #define IRQ_PIXC_ERR IRQ_PIXC_ERROR |
diff --git a/arch/blackfin/mach-bf561/boards/Kconfig b/arch/blackfin/mach-bf561/boards/Kconfig index e41a67b1fb53..e4bc6d7c5a6a 100644 --- a/arch/blackfin/mach-bf561/boards/Kconfig +++ b/arch/blackfin/mach-bf561/boards/Kconfig | |||
@@ -19,9 +19,4 @@ config BFIN561_BLUETECHNIX_CM | |||
19 | help | 19 | help |
20 | CM-BF561 support for EVAL- and DEV-Board. | 20 | CM-BF561 support for EVAL- and DEV-Board. |
21 | 21 | ||
22 | config GENERIC_BF561_BOARD | ||
23 | bool "Generic" | ||
24 | help | ||
25 | Generic or Custom board support. | ||
26 | |||
27 | endchoice | 22 | endchoice |
diff --git a/arch/blackfin/mach-bf561/boards/Makefile b/arch/blackfin/mach-bf561/boards/Makefile index 04add010b568..3a152559e957 100644 --- a/arch/blackfin/mach-bf561/boards/Makefile +++ b/arch/blackfin/mach-bf561/boards/Makefile | |||
@@ -2,7 +2,6 @@ | |||
2 | # arch/blackfin/mach-bf561/boards/Makefile | 2 | # arch/blackfin/mach-bf561/boards/Makefile |
3 | # | 3 | # |
4 | 4 | ||
5 | obj-$(CONFIG_GENERIC_BF561_BOARD) += generic_board.o | ||
6 | obj-$(CONFIG_BFIN561_BLUETECHNIX_CM) += cm_bf561.o | 5 | obj-$(CONFIG_BFIN561_BLUETECHNIX_CM) += cm_bf561.o |
7 | obj-$(CONFIG_BFIN561_EZKIT) += ezkit.o | 6 | obj-$(CONFIG_BFIN561_EZKIT) += ezkit.o |
8 | obj-$(CONFIG_BFIN561_TEPLA) += tepla.o | 7 | obj-$(CONFIG_BFIN561_TEPLA) += tepla.o |
diff --git a/arch/blackfin/mach-bf561/boards/cm_bf561.c b/arch/blackfin/mach-bf561/boards/cm_bf561.c index 6880d1ebfe60..f623c6b0719f 100644 --- a/arch/blackfin/mach-bf561/boards/cm_bf561.c +++ b/arch/blackfin/mach-bf561/boards/cm_bf561.c | |||
@@ -105,9 +105,9 @@ static struct bfin5xx_spi_chip ad9960_spi_chip_info = { | |||
105 | }; | 105 | }; |
106 | #endif | 106 | #endif |
107 | 107 | ||
108 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 108 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
109 | static struct bfin5xx_spi_chip spi_mmc_chip_info = { | 109 | static struct bfin5xx_spi_chip mmc_spi_chip_info = { |
110 | .enable_dma = 1, | 110 | .enable_dma = 0, |
111 | .bits_per_word = 8, | 111 | .bits_per_word = 8, |
112 | }; | 112 | }; |
113 | #endif | 113 | #endif |
@@ -155,14 +155,13 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = { | |||
155 | .controller_data = &ad9960_spi_chip_info, | 155 | .controller_data = &ad9960_spi_chip_info, |
156 | }, | 156 | }, |
157 | #endif | 157 | #endif |
158 | #if defined(CONFIG_SPI_MMC) || defined(CONFIG_SPI_MMC_MODULE) | 158 | #if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE) |
159 | { | 159 | { |
160 | .modalias = "spi_mmc", | 160 | .modalias = "mmc_spi", |
161 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ | 161 | .max_speed_hz = 25000000, /* max spi clock (SCK) speed in HZ */ |
162 | .bus_num = 0, | 162 | .bus_num = 0, |
163 | .chip_select = CONFIG_SPI_MMC_CS_CHAN, | 163 | .chip_select = 5, |
164 | .platform_data = NULL, | 164 | .controller_data = &mmc_spi_chip_info, |
165 | .controller_data = &spi_mmc_chip_info, | ||
166 | .mode = SPI_MODE_3, | 165 | .mode = SPI_MODE_3, |
167 | }, | 166 | }, |
168 | #endif | 167 | #endif |
diff --git a/arch/blackfin/mach-bf561/boards/generic_board.c b/arch/blackfin/mach-bf561/boards/generic_board.c deleted file mode 100644 index 0ba366a0e696..000000000000 --- a/arch/blackfin/mach-bf561/boards/generic_board.c +++ /dev/null | |||
@@ -1,113 +0,0 @@ | |||
1 | /* | ||
2 | * File: arch/blackfin/mach-bf561/generic_board.c | ||
3 | * Based on: arch/blackfin/mach-bf533/ezkit.c | ||
4 | * Author: Aidan Williams <aidan@nicta.com.au> | ||
5 | * | ||
6 | * Created: | ||
7 | * Description: | ||
8 | * | ||
9 | * Modified: | ||
10 | * Copyright 2005 National ICT Australia (NICTA) | ||
11 | * Copyright 2004-2006 Analog Devices Inc. | ||
12 | * | ||
13 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | ||
14 | * | ||
15 | * This program is free software; you can redistribute it and/or modify | ||
16 | * it under the terms of the GNU General Public License as published by | ||
17 | * the Free Software Foundation; either version 2 of the License, or | ||
18 | * (at your option) any later version. | ||
19 | * | ||
20 | * This program is distributed in the hope that it will be useful, | ||
21 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
22 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
23 | * GNU General Public License for more details. | ||
24 | * | ||
25 | * You should have received a copy of the GNU General Public License | ||
26 | * along with this program; if not, see the file COPYING, or write | ||
27 | * to the Free Software Foundation, Inc., | ||
28 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
29 | */ | ||
30 | |||
31 | #include <linux/device.h> | ||
32 | #include <linux/platform_device.h> | ||
33 | #include <linux/irq.h> | ||
34 | |||
35 | const char bfin_board_name[] = "UNKNOWN BOARD"; | ||
36 | |||
37 | /* | ||
38 | * Driver needs to know address, irq and flag pin. | ||
39 | */ | ||
40 | #if defined(CONFIG_SMC91X) || defined(CONFIG_SMC91X_MODULE) | ||
41 | static struct resource smc91x_resources[] = { | ||
42 | { | ||
43 | .start = 0x2C010300, | ||
44 | .end = 0x2C010300 + 16, | ||
45 | .flags = IORESOURCE_MEM, | ||
46 | }, { | ||
47 | .start = IRQ_PROG_INTB, | ||
48 | .end = IRQ_PROG_INTB, | ||
49 | .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL, | ||
50 | }, { | ||
51 | .start = IRQ_PF9, | ||
52 | .end = IRQ_PF9, | ||
53 | .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL, | ||
54 | }, | ||
55 | }; | ||
56 | |||
57 | static struct platform_device smc91x_device = { | ||
58 | .name = "smc91x", | ||
59 | .id = 0, | ||
60 | .num_resources = ARRAY_SIZE(smc91x_resources), | ||
61 | .resource = smc91x_resources, | ||
62 | }; | ||
63 | #endif | ||
64 | |||
65 | #if defined(CONFIG_BFIN_SIR) || defined(CONFIG_BFIN_SIR_MODULE) | ||
66 | #ifdef CONFIG_BFIN_SIR0 | ||
67 | static struct resource bfin_sir0_resources[] = { | ||
68 | { | ||
69 | .start = 0xFFC00400, | ||
70 | .end = 0xFFC004FF, | ||
71 | .flags = IORESOURCE_MEM, | ||
72 | }, | ||
73 | { | ||
74 | .start = IRQ_UART0_RX, | ||
75 | .end = IRQ_UART0_RX+1, | ||
76 | .flags = IORESOURCE_IRQ, | ||
77 | }, | ||
78 | { | ||
79 | .start = CH_UART0_RX, | ||
80 | .end = CH_UART0_RX+1, | ||
81 | .flags = IORESOURCE_DMA, | ||
82 | }, | ||
83 | }; | ||
84 | |||
85 | static struct platform_device bfin_sir0_device = { | ||
86 | .name = "bfin_sir", | ||
87 | .id = 0, | ||
88 | .num_resources = ARRAY_SIZE(bfin_sir0_resources), | ||
89 | .resource = bfin_sir0_resources, | ||
90 | }; | ||
91 | #endif | ||
92 | #endif | ||
93 | |||
94 | static struct platform_device *generic_board_devices[] __initdata = { | ||
95 | #if defined(CONFIG_SMC91X) || defined(CONFIG_SMC91X_MODULE) | ||
96 | &smc91x_device, | ||
97 | #endif | ||
98 | |||
99 | #if defined(CONFIG_BFIN_SIR) || defined(CONFIG_BFIN_SIR_MODULE) | ||
100 | #ifdef CONFIG_BFIN_SIR0 | ||
101 | &bfin_sir0_device, | ||
102 | #endif | ||
103 | #endif | ||
104 | }; | ||
105 | |||
106 | static int __init generic_board_init(void) | ||
107 | { | ||
108 | printk(KERN_INFO "%s(): registering device resources\n", __func__); | ||
109 | return platform_add_devices(generic_board_devices, | ||
110 | ARRAY_SIZE(generic_board_devices)); | ||
111 | } | ||
112 | |||
113 | arch_initcall(generic_board_init); | ||
diff --git a/arch/blackfin/mach-bf561/include/mach/anomaly.h b/arch/blackfin/mach-bf561/include/mach/anomaly.h index 1a9e17562821..d0b0b3506440 100644 --- a/arch/blackfin/mach-bf561/include/mach/anomaly.h +++ b/arch/blackfin/mach-bf561/include/mach/anomaly.h | |||
@@ -2,7 +2,7 @@ | |||
2 | * File: include/asm-blackfin/mach-bf561/anomaly.h | 2 | * File: include/asm-blackfin/mach-bf561/anomaly.h |
3 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | 3 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ |
4 | * | 4 | * |
5 | * Copyright (C) 2004-2008 Analog Devices Inc. | 5 | * Copyright (C) 2004-2009 Analog Devices Inc. |
6 | * Licensed under the GPL-2 or later. | 6 | * Licensed under the GPL-2 or later. |
7 | */ | 7 | */ |
8 | 8 | ||
@@ -224,7 +224,7 @@ | |||
224 | #define ANOMALY_05000301 (1) | 224 | #define ANOMALY_05000301 (1) |
225 | /* SSYNCs After Writes To DMA MMR Registers May Not Be Handled Correctly */ | 225 | /* SSYNCs After Writes To DMA MMR Registers May Not Be Handled Correctly */ |
226 | #define ANOMALY_05000302 (1) | 226 | #define ANOMALY_05000302 (1) |
227 | /* New Feature: Additional Hysteresis on SPORT Input Pins (Not Available On Older Silicon) */ | 227 | /* SPORT_HYS Bit in PLL_CTL Register Is Not Functional */ |
228 | #define ANOMALY_05000305 (__SILICON_REVISION__ < 5) | 228 | #define ANOMALY_05000305 (__SILICON_REVISION__ < 5) |
229 | /* SCKELOW Bit Does Not Maintain State Through Hibernate */ | 229 | /* SCKELOW Bit Does Not Maintain State Through Hibernate */ |
230 | #define ANOMALY_05000307 (__SILICON_REVISION__ < 5) | 230 | #define ANOMALY_05000307 (__SILICON_REVISION__ < 5) |
@@ -283,8 +283,11 @@ | |||
283 | #define ANOMALY_05000273 (0) | 283 | #define ANOMALY_05000273 (0) |
284 | #define ANOMALY_05000311 (0) | 284 | #define ANOMALY_05000311 (0) |
285 | #define ANOMALY_05000353 (1) | 285 | #define ANOMALY_05000353 (1) |
286 | #define ANOMALY_05000380 (0) | ||
286 | #define ANOMALY_05000386 (1) | 287 | #define ANOMALY_05000386 (1) |
287 | #define ANOMALY_05000432 (0) | 288 | #define ANOMALY_05000432 (0) |
288 | #define ANOMALY_05000435 (0) | 289 | #define ANOMALY_05000435 (0) |
290 | #define ANOMALY_05000447 (0) | ||
291 | #define ANOMALY_05000448 (0) | ||
289 | 292 | ||
290 | #endif | 293 | #endif |
diff --git a/arch/blackfin/mach-bf561/include/mach/bfin_serial_5xx.h b/arch/blackfin/mach-bf561/include/mach/bfin_serial_5xx.h index 043bfcf26c52..ca8c5f645209 100644 --- a/arch/blackfin/mach-bf561/include/mach/bfin_serial_5xx.h +++ b/arch/blackfin/mach-bf561/include/mach/bfin_serial_5xx.h | |||
@@ -134,7 +134,7 @@ struct bfin_serial_res bfin_serial_resource[] = { | |||
134 | CH_UART_TX, | 134 | CH_UART_TX, |
135 | CH_UART_RX, | 135 | CH_UART_RX, |
136 | #endif | 136 | #endif |
137 | #ifdef CONFIG_BFIN_UART0_CTSRTS | 137 | #ifdef CONFIG_SERIAL_BFIN_CTSRTS |
138 | CONFIG_UART0_CTS_PIN, | 138 | CONFIG_UART0_CTS_PIN, |
139 | CONFIG_UART0_RTS_PIN, | 139 | CONFIG_UART0_RTS_PIN, |
140 | #endif | 140 | #endif |
diff --git a/arch/blackfin/mach-common/arch_checks.c b/arch/blackfin/mach-common/arch_checks.c index 98133b968f7b..80d39b2f9db2 100644 --- a/arch/blackfin/mach-common/arch_checks.c +++ b/arch/blackfin/mach-common/arch_checks.c | |||
@@ -62,3 +62,12 @@ | |||
62 | #if (CONFIG_BOOT_LOAD & 0x3) | 62 | #if (CONFIG_BOOT_LOAD & 0x3) |
63 | # error "The kernel load address must be 4 byte aligned" | 63 | # error "The kernel load address must be 4 byte aligned" |
64 | #endif | 64 | #endif |
65 | |||
66 | /* The entire kernel must be able to make a 24bit pcrel call to start of L1 */ | ||
67 | #if ((0xffffffff - L1_CODE_START + 1) + CONFIG_BOOT_LOAD) > 0x1000000 | ||
68 | # error "The kernel load address is too high; keep it below 10meg for safety" | ||
69 | #endif | ||
70 | |||
71 | #if ANOMALY_05000448 | ||
72 | # error You are using a part with anomaly 05000448, this issue causes random memory read/write failures - that means random crashes. | ||
73 | #endif | ||
diff --git a/arch/blackfin/mach-common/cache.S b/arch/blackfin/mach-common/cache.S index 3c98dacbf289..aa0648c6a9fe 100644 --- a/arch/blackfin/mach-common/cache.S +++ b/arch/blackfin/mach-common/cache.S | |||
@@ -66,11 +66,33 @@ | |||
66 | 66 | ||
67 | /* Invalidate all instruction cache lines assocoiated with this memory area */ | 67 | /* Invalidate all instruction cache lines assocoiated with this memory area */ |
68 | ENTRY(_blackfin_icache_flush_range) | 68 | ENTRY(_blackfin_icache_flush_range) |
69 | /* | ||
70 | * Walkaround to avoid loading wrong instruction after invalidating icache | ||
71 | * and following sequence is met. | ||
72 | * | ||
73 | * 1) One instruction address is cached in the instruction cache. | ||
74 | * 2) This instruction in SDRAM is changed. | ||
75 | * 3) IFLASH[P0] is executed only once in blackfin_icache_flush_range(). | ||
76 | * 4) This instruction is executed again, but the old one is loaded. | ||
77 | */ | ||
78 | P0 = R0; | ||
79 | IFLUSH[P0]; | ||
69 | do_flush IFLUSH, , nop | 80 | do_flush IFLUSH, , nop |
70 | ENDPROC(_blackfin_icache_flush_range) | 81 | ENDPROC(_blackfin_icache_flush_range) |
71 | 82 | ||
72 | /* Flush all cache lines assocoiated with this area of memory. */ | 83 | /* Flush all cache lines assocoiated with this area of memory. */ |
73 | ENTRY(_blackfin_icache_dcache_flush_range) | 84 | ENTRY(_blackfin_icache_dcache_flush_range) |
85 | /* | ||
86 | * Walkaround to avoid loading wrong instruction after invalidating icache | ||
87 | * and following sequence is met. | ||
88 | * | ||
89 | * 1) One instruction address is cached in the instruction cache. | ||
90 | * 2) This instruction in SDRAM is changed. | ||
91 | * 3) IFLASH[P0] is executed only once in blackfin_icache_flush_range(). | ||
92 | * 4) This instruction is executed again, but the old one is loaded. | ||
93 | */ | ||
94 | P0 = R0; | ||
95 | IFLUSH[P0]; | ||
74 | do_flush FLUSH, IFLUSH | 96 | do_flush FLUSH, IFLUSH |
75 | ENDPROC(_blackfin_icache_dcache_flush_range) | 97 | ENDPROC(_blackfin_icache_dcache_flush_range) |
76 | 98 | ||
diff --git a/arch/blackfin/mach-common/clocks-init.c b/arch/blackfin/mach-common/clocks-init.c index 9dddb6f8cc85..35393651359b 100644 --- a/arch/blackfin/mach-common/clocks-init.c +++ b/arch/blackfin/mach-common/clocks-init.c | |||
@@ -17,7 +17,7 @@ | |||
17 | #define SDGCTL_WIDTH (1 << 31) /* SDRAM external data path width */ | 17 | #define SDGCTL_WIDTH (1 << 31) /* SDRAM external data path width */ |
18 | #define PLL_CTL_VAL \ | 18 | #define PLL_CTL_VAL \ |
19 | (((CONFIG_VCO_MULT & 63) << 9) | CLKIN_HALF | \ | 19 | (((CONFIG_VCO_MULT & 63) << 9) | CLKIN_HALF | \ |
20 | (PLL_BYPASS << 8) | (ANOMALY_05000265 ? 0x8000 : 0)) | 20 | (PLL_BYPASS << 8) | (ANOMALY_05000305 ? 0 : 0x8000)) |
21 | 21 | ||
22 | __attribute__((l1_text)) | 22 | __attribute__((l1_text)) |
23 | static void do_sync(void) | 23 | static void do_sync(void) |
diff --git a/arch/blackfin/mach-common/dpmc_modes.S b/arch/blackfin/mach-common/dpmc_modes.S index 4da50bcd9300..8009a512fb11 100644 --- a/arch/blackfin/mach-common/dpmc_modes.S +++ b/arch/blackfin/mach-common/dpmc_modes.S | |||
@@ -376,10 +376,22 @@ ENTRY(_do_hibernate) | |||
376 | #endif | 376 | #endif |
377 | 377 | ||
378 | #ifdef PINT0_ASSIGN | 378 | #ifdef PINT0_ASSIGN |
379 | PM_SYS_PUSH(PINT0_MASK_SET) | ||
380 | PM_SYS_PUSH(PINT1_MASK_SET) | ||
381 | PM_SYS_PUSH(PINT2_MASK_SET) | ||
382 | PM_SYS_PUSH(PINT3_MASK_SET) | ||
379 | PM_SYS_PUSH(PINT0_ASSIGN) | 383 | PM_SYS_PUSH(PINT0_ASSIGN) |
380 | PM_SYS_PUSH(PINT1_ASSIGN) | 384 | PM_SYS_PUSH(PINT1_ASSIGN) |
381 | PM_SYS_PUSH(PINT2_ASSIGN) | 385 | PM_SYS_PUSH(PINT2_ASSIGN) |
382 | PM_SYS_PUSH(PINT3_ASSIGN) | 386 | PM_SYS_PUSH(PINT3_ASSIGN) |
387 | PM_SYS_PUSH(PINT0_INVERT_SET) | ||
388 | PM_SYS_PUSH(PINT1_INVERT_SET) | ||
389 | PM_SYS_PUSH(PINT2_INVERT_SET) | ||
390 | PM_SYS_PUSH(PINT3_INVERT_SET) | ||
391 | PM_SYS_PUSH(PINT0_EDGE_SET) | ||
392 | PM_SYS_PUSH(PINT1_EDGE_SET) | ||
393 | PM_SYS_PUSH(PINT2_EDGE_SET) | ||
394 | PM_SYS_PUSH(PINT3_EDGE_SET) | ||
383 | #endif | 395 | #endif |
384 | 396 | ||
385 | PM_SYS_PUSH(EBIU_AMBCTL0) | 397 | PM_SYS_PUSH(EBIU_AMBCTL0) |
@@ -714,10 +726,22 @@ ENTRY(_do_hibernate) | |||
714 | PM_SYS_POP(EBIU_AMBCTL0) | 726 | PM_SYS_POP(EBIU_AMBCTL0) |
715 | 727 | ||
716 | #ifdef PINT0_ASSIGN | 728 | #ifdef PINT0_ASSIGN |
729 | PM_SYS_POP(PINT3_EDGE_SET) | ||
730 | PM_SYS_POP(PINT2_EDGE_SET) | ||
731 | PM_SYS_POP(PINT1_EDGE_SET) | ||
732 | PM_SYS_POP(PINT0_EDGE_SET) | ||
733 | PM_SYS_POP(PINT3_INVERT_SET) | ||
734 | PM_SYS_POP(PINT2_INVERT_SET) | ||
735 | PM_SYS_POP(PINT1_INVERT_SET) | ||
736 | PM_SYS_POP(PINT0_INVERT_SET) | ||
717 | PM_SYS_POP(PINT3_ASSIGN) | 737 | PM_SYS_POP(PINT3_ASSIGN) |
718 | PM_SYS_POP(PINT2_ASSIGN) | 738 | PM_SYS_POP(PINT2_ASSIGN) |
719 | PM_SYS_POP(PINT1_ASSIGN) | 739 | PM_SYS_POP(PINT1_ASSIGN) |
720 | PM_SYS_POP(PINT0_ASSIGN) | 740 | PM_SYS_POP(PINT0_ASSIGN) |
741 | PM_SYS_POP(PINT3_MASK_SET) | ||
742 | PM_SYS_POP(PINT2_MASK_SET) | ||
743 | PM_SYS_POP(PINT1_MASK_SET) | ||
744 | PM_SYS_POP(PINT0_MASK_SET) | ||
721 | #endif | 745 | #endif |
722 | 746 | ||
723 | #ifdef SICA_IWR1 | 747 | #ifdef SICA_IWR1 |
diff --git a/arch/blackfin/mach-common/entry.S b/arch/blackfin/mach-common/entry.S index 88de053bbe8e..21e65a339a22 100644 --- a/arch/blackfin/mach-common/entry.S +++ b/arch/blackfin/mach-common/entry.S | |||
@@ -600,6 +600,19 @@ ENTRY(_system_call) | |||
600 | p2 = [p2]; | 600 | p2 = [p2]; |
601 | 601 | ||
602 | [p2+(TASK_THREAD+THREAD_KSP)] = sp; | 602 | [p2+(TASK_THREAD+THREAD_KSP)] = sp; |
603 | #ifdef CONFIG_IPIPE | ||
604 | r0 = sp; | ||
605 | SP += -12; | ||
606 | call ___ipipe_syscall_root; | ||
607 | SP += 12; | ||
608 | cc = r0 == 1; | ||
609 | if cc jump .Lsyscall_really_exit; | ||
610 | cc = r0 == -1; | ||
611 | if cc jump .Lresume_userspace; | ||
612 | r3 = [sp + PT_R3]; | ||
613 | r4 = [sp + PT_R4]; | ||
614 | p0 = [sp + PT_ORIG_P0]; | ||
615 | #endif /* CONFIG_IPIPE */ | ||
603 | 616 | ||
604 | /* Check the System Call */ | 617 | /* Check the System Call */ |
605 | r7 = __NR_syscall; | 618 | r7 = __NR_syscall; |
@@ -654,6 +667,17 @@ ENTRY(_system_call) | |||
654 | r7 = r7 & r4; | 667 | r7 = r7 & r4; |
655 | 668 | ||
656 | .Lsyscall_resched: | 669 | .Lsyscall_resched: |
670 | #ifdef CONFIG_IPIPE | ||
671 | cc = BITTST(r7, TIF_IRQ_SYNC); | ||
672 | if !cc jump .Lsyscall_no_irqsync; | ||
673 | [--sp] = reti; | ||
674 | r0 = [sp++]; | ||
675 | SP += -12; | ||
676 | call ___ipipe_sync_root; | ||
677 | SP += 12; | ||
678 | jump .Lresume_userspace_1; | ||
679 | .Lsyscall_no_irqsync: | ||
680 | #endif | ||
657 | cc = BITTST(r7, TIF_NEED_RESCHED); | 681 | cc = BITTST(r7, TIF_NEED_RESCHED); |
658 | if !cc jump .Lsyscall_sigpending; | 682 | if !cc jump .Lsyscall_sigpending; |
659 | 683 | ||
@@ -685,6 +709,10 @@ ENTRY(_system_call) | |||
685 | .Lsyscall_really_exit: | 709 | .Lsyscall_really_exit: |
686 | r5 = [sp + PT_RESERVED]; | 710 | r5 = [sp + PT_RESERVED]; |
687 | rets = r5; | 711 | rets = r5; |
712 | #ifdef CONFIG_IPIPE | ||
713 | [--sp] = reti; | ||
714 | r5 = [sp++]; | ||
715 | #endif /* CONFIG_IPIPE */ | ||
688 | rts; | 716 | rts; |
689 | ENDPROC(_system_call) | 717 | ENDPROC(_system_call) |
690 | 718 | ||
@@ -771,6 +799,15 @@ _new_old_task: | |||
771 | ENDPROC(_resume) | 799 | ENDPROC(_resume) |
772 | 800 | ||
773 | ENTRY(_ret_from_exception) | 801 | ENTRY(_ret_from_exception) |
802 | #ifdef CONFIG_IPIPE | ||
803 | [--sp] = rets; | ||
804 | SP += -12; | ||
805 | call ___ipipe_check_root | ||
806 | SP += 12 | ||
807 | rets = [sp++]; | ||
808 | cc = r0 == 0; | ||
809 | if cc jump 4f; /* not on behalf of Linux, get out */ | ||
810 | #endif /* CONFIG_IPIPE */ | ||
774 | p2.l = lo(IPEND); | 811 | p2.l = lo(IPEND); |
775 | p2.h = hi(IPEND); | 812 | p2.h = hi(IPEND); |
776 | 813 | ||
@@ -827,6 +864,28 @@ ENTRY(_ret_from_exception) | |||
827 | rts; | 864 | rts; |
828 | ENDPROC(_ret_from_exception) | 865 | ENDPROC(_ret_from_exception) |
829 | 866 | ||
867 | #ifdef CONFIG_IPIPE | ||
868 | |||
869 | _sync_root_irqs: | ||
870 | [--sp] = reti; /* Reenable interrupts */ | ||
871 | r0 = [sp++]; | ||
872 | jump.l ___ipipe_sync_root | ||
873 | |||
874 | _resume_kernel_from_int: | ||
875 | r0.l = _sync_root_irqs | ||
876 | r0.h = _sync_root_irqs | ||
877 | [--sp] = rets; | ||
878 | [--sp] = ( r7:4, p5:3 ); | ||
879 | SP += -12; | ||
880 | call ___ipipe_call_irqtail | ||
881 | SP += 12; | ||
882 | ( r7:4, p5:3 ) = [sp++]; | ||
883 | rets = [sp++]; | ||
884 | rts | ||
885 | #else | ||
886 | #define _resume_kernel_from_int 2f | ||
887 | #endif | ||
888 | |||
830 | ENTRY(_return_from_int) | 889 | ENTRY(_return_from_int) |
831 | /* If someone else already raised IRQ 15, do nothing. */ | 890 | /* If someone else already raised IRQ 15, do nothing. */ |
832 | csync; | 891 | csync; |
@@ -848,7 +907,7 @@ ENTRY(_return_from_int) | |||
848 | r1 = r0 - r1; | 907 | r1 = r0 - r1; |
849 | r2 = r0 & r1; | 908 | r2 = r0 & r1; |
850 | cc = r2 == 0; | 909 | cc = r2 == 0; |
851 | if !cc jump 2f; | 910 | if !cc jump _resume_kernel_from_int; |
852 | 911 | ||
853 | /* Lower the interrupt level to 15. */ | 912 | /* Lower the interrupt level to 15. */ |
854 | p0.l = lo(EVT15); | 913 | p0.l = lo(EVT15); |
diff --git a/arch/blackfin/mach-common/interrupt.S b/arch/blackfin/mach-common/interrupt.S index 43c4eb9acb65..0069c2dd4625 100644 --- a/arch/blackfin/mach-common/interrupt.S +++ b/arch/blackfin/mach-common/interrupt.S | |||
@@ -235,6 +235,7 @@ ENDPROC(_evt_system_call) | |||
235 | 235 | ||
236 | #ifdef CONFIG_IPIPE | 236 | #ifdef CONFIG_IPIPE |
237 | ENTRY(___ipipe_call_irqtail) | 237 | ENTRY(___ipipe_call_irqtail) |
238 | p0 = r0; | ||
238 | r0.l = 1f; | 239 | r0.l = 1f; |
239 | r0.h = 1f; | 240 | r0.h = 1f; |
240 | reti = r0; | 241 | reti = r0; |
@@ -242,9 +243,6 @@ ENTRY(___ipipe_call_irqtail) | |||
242 | 1: | 243 | 1: |
243 | [--sp] = rets; | 244 | [--sp] = rets; |
244 | [--sp] = ( r7:4, p5:3 ); | 245 | [--sp] = ( r7:4, p5:3 ); |
245 | p0.l = ___ipipe_irq_tail_hook; | ||
246 | p0.h = ___ipipe_irq_tail_hook; | ||
247 | p0 = [p0]; | ||
248 | sp += -12; | 246 | sp += -12; |
249 | call (p0); | 247 | call (p0); |
250 | sp += 12; | 248 | sp += 12; |
@@ -259,7 +257,7 @@ ENTRY(___ipipe_call_irqtail) | |||
259 | p0.h = hi(EVT14); | 257 | p0.h = hi(EVT14); |
260 | [p0] = r0; | 258 | [p0] = r0; |
261 | csync; | 259 | csync; |
262 | r0 = 0x401f; | 260 | r0 = 0x401f (z); |
263 | sti r0; | 261 | sti r0; |
264 | raise 14; | 262 | raise 14; |
265 | [--sp] = reti; /* IRQs on. */ | 263 | [--sp] = reti; /* IRQs on. */ |
@@ -277,11 +275,7 @@ ENTRY(___ipipe_call_irqtail) | |||
277 | p0.h = _bfin_irq_flags; | 275 | p0.h = _bfin_irq_flags; |
278 | r0 = [p0]; | 276 | r0 = [p0]; |
279 | sti r0; | 277 | sti r0; |
280 | #if 0 /* FIXME: this actually raises scheduling latencies */ | ||
281 | /* Reenable interrupts */ | ||
282 | [--sp] = reti; | ||
283 | r0 = [sp++]; | ||
284 | #endif | ||
285 | rts; | 278 | rts; |
286 | ENDPROC(___ipipe_call_irqtail) | 279 | ENDPROC(___ipipe_call_irqtail) |
280 | |||
287 | #endif /* CONFIG_IPIPE */ | 281 | #endif /* CONFIG_IPIPE */ |
diff --git a/arch/blackfin/mach-common/ints-priority.c b/arch/blackfin/mach-common/ints-priority.c index 202494568c6c..a7d7b2dd4059 100644 --- a/arch/blackfin/mach-common/ints-priority.c +++ b/arch/blackfin/mach-common/ints-priority.c | |||
@@ -161,11 +161,15 @@ static void bfin_core_unmask_irq(unsigned int irq) | |||
161 | 161 | ||
162 | static void bfin_internal_mask_irq(unsigned int irq) | 162 | static void bfin_internal_mask_irq(unsigned int irq) |
163 | { | 163 | { |
164 | unsigned long flags; | ||
165 | |||
164 | #ifdef CONFIG_BF53x | 166 | #ifdef CONFIG_BF53x |
167 | local_irq_save_hw(flags); | ||
165 | bfin_write_SIC_IMASK(bfin_read_SIC_IMASK() & | 168 | bfin_write_SIC_IMASK(bfin_read_SIC_IMASK() & |
166 | ~(1 << SIC_SYSIRQ(irq))); | 169 | ~(1 << SIC_SYSIRQ(irq))); |
167 | #else | 170 | #else |
168 | unsigned mask_bank, mask_bit; | 171 | unsigned mask_bank, mask_bit; |
172 | local_irq_save_hw(flags); | ||
169 | mask_bank = SIC_SYSIRQ(irq) / 32; | 173 | mask_bank = SIC_SYSIRQ(irq) / 32; |
170 | mask_bit = SIC_SYSIRQ(irq) % 32; | 174 | mask_bit = SIC_SYSIRQ(irq) % 32; |
171 | bfin_write_SIC_IMASK(mask_bank, bfin_read_SIC_IMASK(mask_bank) & | 175 | bfin_write_SIC_IMASK(mask_bank, bfin_read_SIC_IMASK(mask_bank) & |
@@ -175,15 +179,20 @@ static void bfin_internal_mask_irq(unsigned int irq) | |||
175 | ~(1 << mask_bit)); | 179 | ~(1 << mask_bit)); |
176 | #endif | 180 | #endif |
177 | #endif | 181 | #endif |
182 | local_irq_restore_hw(flags); | ||
178 | } | 183 | } |
179 | 184 | ||
180 | static void bfin_internal_unmask_irq(unsigned int irq) | 185 | static void bfin_internal_unmask_irq(unsigned int irq) |
181 | { | 186 | { |
187 | unsigned long flags; | ||
188 | |||
182 | #ifdef CONFIG_BF53x | 189 | #ifdef CONFIG_BF53x |
190 | local_irq_save_hw(flags); | ||
183 | bfin_write_SIC_IMASK(bfin_read_SIC_IMASK() | | 191 | bfin_write_SIC_IMASK(bfin_read_SIC_IMASK() | |
184 | (1 << SIC_SYSIRQ(irq))); | 192 | (1 << SIC_SYSIRQ(irq))); |
185 | #else | 193 | #else |
186 | unsigned mask_bank, mask_bit; | 194 | unsigned mask_bank, mask_bit; |
195 | local_irq_save_hw(flags); | ||
187 | mask_bank = SIC_SYSIRQ(irq) / 32; | 196 | mask_bank = SIC_SYSIRQ(irq) / 32; |
188 | mask_bit = SIC_SYSIRQ(irq) % 32; | 197 | mask_bit = SIC_SYSIRQ(irq) % 32; |
189 | bfin_write_SIC_IMASK(mask_bank, bfin_read_SIC_IMASK(mask_bank) | | 198 | bfin_write_SIC_IMASK(mask_bank, bfin_read_SIC_IMASK(mask_bank) | |
@@ -193,6 +202,7 @@ static void bfin_internal_unmask_irq(unsigned int irq) | |||
193 | (1 << mask_bit)); | 202 | (1 << mask_bit)); |
194 | #endif | 203 | #endif |
195 | #endif | 204 | #endif |
205 | local_irq_restore_hw(flags); | ||
196 | } | 206 | } |
197 | 207 | ||
198 | #ifdef CONFIG_PM | 208 | #ifdef CONFIG_PM |
@@ -390,7 +400,7 @@ static void bfin_demux_error_irq(unsigned int int_err_irq, | |||
390 | static inline void bfin_set_irq_handler(unsigned irq, irq_flow_handler_t handle) | 400 | static inline void bfin_set_irq_handler(unsigned irq, irq_flow_handler_t handle) |
391 | { | 401 | { |
392 | #ifdef CONFIG_IPIPE | 402 | #ifdef CONFIG_IPIPE |
393 | _set_irq_handler(irq, handle_edge_irq); | 403 | _set_irq_handler(irq, handle_level_irq); |
394 | #else | 404 | #else |
395 | struct irq_desc *desc = irq_desc + irq; | 405 | struct irq_desc *desc = irq_desc + irq; |
396 | /* May not call generic set_irq_handler() due to spinlock | 406 | /* May not call generic set_irq_handler() due to spinlock |
@@ -1055,13 +1065,18 @@ int __init init_arch_irq(void) | |||
1055 | #endif | 1065 | #endif |
1056 | default: | 1066 | default: |
1057 | #ifdef CONFIG_IPIPE | 1067 | #ifdef CONFIG_IPIPE |
1058 | /* | 1068 | /* |
1059 | * We want internal interrupt sources to be masked, because | 1069 | * We want internal interrupt sources to be |
1060 | * ISRs may trigger interrupts recursively (e.g. DMA), but | 1070 | * masked, because ISRs may trigger interrupts |
1061 | * interrupts are _not_ masked at CPU level. So let's handle | 1071 | * recursively (e.g. DMA), but interrupts are |
1062 | * them as level interrupts. | 1072 | * _not_ masked at CPU level. So let's handle |
1063 | */ | 1073 | * most of them as level interrupts, except |
1064 | set_irq_handler(irq, handle_level_irq); | 1074 | * the timer interrupt which is special. |
1075 | */ | ||
1076 | if (irq == IRQ_SYSTMR || irq == IRQ_CORETMR) | ||
1077 | set_irq_handler(irq, handle_simple_irq); | ||
1078 | else | ||
1079 | set_irq_handler(irq, handle_level_irq); | ||
1065 | #else /* !CONFIG_IPIPE */ | 1080 | #else /* !CONFIG_IPIPE */ |
1066 | set_irq_handler(irq, handle_simple_irq); | 1081 | set_irq_handler(irq, handle_simple_irq); |
1067 | #endif /* !CONFIG_IPIPE */ | 1082 | #endif /* !CONFIG_IPIPE */ |
@@ -1123,9 +1138,8 @@ int __init init_arch_irq(void) | |||
1123 | 1138 | ||
1124 | #ifdef CONFIG_IPIPE | 1139 | #ifdef CONFIG_IPIPE |
1125 | for (irq = 0; irq < NR_IRQS; irq++) { | 1140 | for (irq = 0; irq < NR_IRQS; irq++) { |
1126 | struct irq_desc *desc = irq_desc + irq; | 1141 | struct irq_desc *desc = irq_to_desc(irq); |
1127 | desc->ic_prio = __ipipe_get_irq_priority(irq); | 1142 | desc->ic_prio = __ipipe_get_irq_priority(irq); |
1128 | desc->thr_prio = __ipipe_get_irqthread_priority(irq); | ||
1129 | } | 1143 | } |
1130 | #endif /* CONFIG_IPIPE */ | 1144 | #endif /* CONFIG_IPIPE */ |
1131 | 1145 | ||
@@ -1208,76 +1222,21 @@ int __ipipe_get_irq_priority(unsigned irq) | |||
1208 | return IVG15; | 1222 | return IVG15; |
1209 | } | 1223 | } |
1210 | 1224 | ||
1211 | int __ipipe_get_irqthread_priority(unsigned irq) | ||
1212 | { | ||
1213 | int ient, prio; | ||
1214 | int demux_irq; | ||
1215 | |||
1216 | /* The returned priority value is rescaled to [0..IVG13+1] | ||
1217 | * with 0 being the lowest effective priority level. */ | ||
1218 | |||
1219 | if (irq <= IRQ_CORETMR) | ||
1220 | return IVG13 - irq + 1; | ||
1221 | |||
1222 | /* GPIO IRQs are given the priority of the demux | ||
1223 | * interrupt. */ | ||
1224 | if (IS_GPIOIRQ(irq)) { | ||
1225 | #if defined(CONFIG_BF54x) | ||
1226 | u32 bank = PINT_2_BANK(irq2pint_lut[irq - SYS_IRQS]); | ||
1227 | demux_irq = (bank == 0 ? IRQ_PINT0 : | ||
1228 | bank == 1 ? IRQ_PINT1 : | ||
1229 | bank == 2 ? IRQ_PINT2 : | ||
1230 | IRQ_PINT3); | ||
1231 | #elif defined(CONFIG_BF561) | ||
1232 | demux_irq = (irq >= IRQ_PF32 ? IRQ_PROG2_INTA : | ||
1233 | irq >= IRQ_PF16 ? IRQ_PROG1_INTA : | ||
1234 | IRQ_PROG0_INTA); | ||
1235 | #elif defined(CONFIG_BF52x) | ||
1236 | demux_irq = (irq >= IRQ_PH0 ? IRQ_PORTH_INTA : | ||
1237 | irq >= IRQ_PG0 ? IRQ_PORTG_INTA : | ||
1238 | IRQ_PORTF_INTA); | ||
1239 | #else | ||
1240 | demux_irq = irq; | ||
1241 | #endif | ||
1242 | return IVG13 - PRIO_GPIODEMUX(demux_irq) + 1; | ||
1243 | } | ||
1244 | |||
1245 | /* The GPIO demux interrupt is given a lower priority | ||
1246 | * than the GPIO IRQs, so that its threaded handler | ||
1247 | * unmasks the interrupt line after the decoded IRQs | ||
1248 | * have been processed. */ | ||
1249 | prio = PRIO_GPIODEMUX(irq); | ||
1250 | /* demux irq? */ | ||
1251 | if (prio != -1) | ||
1252 | return IVG13 - prio; | ||
1253 | |||
1254 | for (ient = 0; ient < NR_PERI_INTS; ient++) { | ||
1255 | struct ivgx *ivg = ivg_table + ient; | ||
1256 | if (ivg->irqno == irq) { | ||
1257 | for (prio = 0; prio <= IVG13-IVG7; prio++) { | ||
1258 | if (ivg7_13[prio].ifirst <= ivg && | ||
1259 | ivg7_13[prio].istop > ivg) | ||
1260 | return IVG7 - prio; | ||
1261 | } | ||
1262 | } | ||
1263 | } | ||
1264 | |||
1265 | return 0; | ||
1266 | } | ||
1267 | |||
1268 | /* Hw interrupts are disabled on entry (check SAVE_CONTEXT). */ | 1225 | /* Hw interrupts are disabled on entry (check SAVE_CONTEXT). */ |
1269 | #ifdef CONFIG_DO_IRQ_L1 | 1226 | #ifdef CONFIG_DO_IRQ_L1 |
1270 | __attribute__((l1_text)) | 1227 | __attribute__((l1_text)) |
1271 | #endif | 1228 | #endif |
1272 | asmlinkage int __ipipe_grab_irq(int vec, struct pt_regs *regs) | 1229 | asmlinkage int __ipipe_grab_irq(int vec, struct pt_regs *regs) |
1273 | { | 1230 | { |
1231 | struct ipipe_percpu_domain_data *p = ipipe_root_cpudom_ptr(); | ||
1232 | struct ipipe_domain *this_domain = ipipe_current_domain; | ||
1274 | struct ivgx *ivg_stop = ivg7_13[vec-IVG7].istop; | 1233 | struct ivgx *ivg_stop = ivg7_13[vec-IVG7].istop; |
1275 | struct ivgx *ivg = ivg7_13[vec-IVG7].ifirst; | 1234 | struct ivgx *ivg = ivg7_13[vec-IVG7].ifirst; |
1276 | int irq; | 1235 | int irq, s; |
1277 | 1236 | ||
1278 | if (likely(vec == EVT_IVTMR_P)) { | 1237 | if (likely(vec == EVT_IVTMR_P)) { |
1279 | irq = IRQ_CORETMR; | 1238 | irq = IRQ_CORETMR; |
1280 | goto handle_irq; | 1239 | goto core_tick; |
1281 | } | 1240 | } |
1282 | 1241 | ||
1283 | SSYNC(); | 1242 | SSYNC(); |
@@ -1319,24 +1278,39 @@ asmlinkage int __ipipe_grab_irq(int vec, struct pt_regs *regs) | |||
1319 | irq = ivg->irqno; | 1278 | irq = ivg->irqno; |
1320 | 1279 | ||
1321 | if (irq == IRQ_SYSTMR) { | 1280 | if (irq == IRQ_SYSTMR) { |
1281 | #ifdef CONFIG_GENERIC_CLOCKEVENTS | ||
1282 | core_tick: | ||
1283 | #else | ||
1322 | bfin_write_TIMER_STATUS(1); /* Latch TIMIL0 */ | 1284 | bfin_write_TIMER_STATUS(1); /* Latch TIMIL0 */ |
1285 | #endif | ||
1323 | /* This is basically what we need from the register frame. */ | 1286 | /* This is basically what we need from the register frame. */ |
1324 | __raw_get_cpu_var(__ipipe_tick_regs).ipend = regs->ipend; | 1287 | __raw_get_cpu_var(__ipipe_tick_regs).ipend = regs->ipend; |
1325 | __raw_get_cpu_var(__ipipe_tick_regs).pc = regs->pc; | 1288 | __raw_get_cpu_var(__ipipe_tick_regs).pc = regs->pc; |
1326 | if (!ipipe_root_domain_p) | 1289 | if (this_domain != ipipe_root_domain) |
1327 | __raw_get_cpu_var(__ipipe_tick_regs).ipend |= 0x10; | ||
1328 | else | ||
1329 | __raw_get_cpu_var(__ipipe_tick_regs).ipend &= ~0x10; | 1290 | __raw_get_cpu_var(__ipipe_tick_regs).ipend &= ~0x10; |
1291 | else | ||
1292 | __raw_get_cpu_var(__ipipe_tick_regs).ipend |= 0x10; | ||
1330 | } | 1293 | } |
1331 | 1294 | ||
1332 | handle_irq: | 1295 | #ifndef CONFIG_GENERIC_CLOCKEVENTS |
1296 | core_tick: | ||
1297 | #endif | ||
1298 | if (this_domain == ipipe_root_domain) { | ||
1299 | s = __test_and_set_bit(IPIPE_SYNCDEFER_FLAG, &p->status); | ||
1300 | barrier(); | ||
1301 | } | ||
1333 | 1302 | ||
1334 | ipipe_trace_irq_entry(irq); | 1303 | ipipe_trace_irq_entry(irq); |
1335 | __ipipe_handle_irq(irq, regs); | 1304 | __ipipe_handle_irq(irq, regs); |
1336 | ipipe_trace_irq_exit(irq); | 1305 | ipipe_trace_irq_exit(irq); |
1337 | 1306 | ||
1338 | if (ipipe_root_domain_p) | 1307 | if (this_domain == ipipe_root_domain) { |
1339 | return !test_bit(IPIPE_STALL_FLAG, &ipipe_root_cpudom_var(status)); | 1308 | set_thread_flag(TIF_IRQ_SYNC); |
1309 | if (!s) { | ||
1310 | __clear_bit(IPIPE_SYNCDEFER_FLAG, &p->status); | ||
1311 | return !test_bit(IPIPE_STALL_FLAG, &p->status); | ||
1312 | } | ||
1313 | } | ||
1340 | 1314 | ||
1341 | return 0; | 1315 | return 0; |
1342 | } | 1316 | } |
diff --git a/arch/blackfin/mach-common/smp.c b/arch/blackfin/mach-common/smp.c index 77c992847094..93eab6146079 100644 --- a/arch/blackfin/mach-common/smp.c +++ b/arch/blackfin/mach-common/smp.c | |||
@@ -158,10 +158,14 @@ static irqreturn_t ipi_handler(int irq, void *dev_instance) | |||
158 | kfree(msg); | 158 | kfree(msg); |
159 | break; | 159 | break; |
160 | case BFIN_IPI_CALL_FUNC: | 160 | case BFIN_IPI_CALL_FUNC: |
161 | spin_unlock(&msg_queue->lock); | ||
161 | ipi_call_function(cpu, msg); | 162 | ipi_call_function(cpu, msg); |
163 | spin_lock(&msg_queue->lock); | ||
162 | break; | 164 | break; |
163 | case BFIN_IPI_CPU_STOP: | 165 | case BFIN_IPI_CPU_STOP: |
166 | spin_unlock(&msg_queue->lock); | ||
164 | ipi_cpu_stop(cpu); | 167 | ipi_cpu_stop(cpu); |
168 | spin_lock(&msg_queue->lock); | ||
165 | kfree(msg); | 169 | kfree(msg); |
166 | break; | 170 | break; |
167 | default: | 171 | default: |
@@ -457,7 +461,7 @@ void smp_icache_flush_range_others(unsigned long start, unsigned long end) | |||
457 | smp_flush_data.start = start; | 461 | smp_flush_data.start = start; |
458 | smp_flush_data.end = end; | 462 | smp_flush_data.end = end; |
459 | 463 | ||
460 | if (smp_call_function(&ipi_flush_icache, &smp_flush_data, 1)) | 464 | if (smp_call_function(&ipi_flush_icache, &smp_flush_data, 0)) |
461 | printk(KERN_WARNING "SMP: failed to run I-cache flush request on other CPUs\n"); | 465 | printk(KERN_WARNING "SMP: failed to run I-cache flush request on other CPUs\n"); |
462 | } | 466 | } |
463 | EXPORT_SYMBOL_GPL(smp_icache_flush_range_others); | 467 | EXPORT_SYMBOL_GPL(smp_icache_flush_range_others); |
diff --git a/arch/blackfin/mm/init.c b/arch/blackfin/mm/init.c index d0532b72bba5..9c3629b9a689 100644 --- a/arch/blackfin/mm/init.c +++ b/arch/blackfin/mm/init.c | |||
@@ -104,7 +104,7 @@ void __init paging_init(void) | |||
104 | } | 104 | } |
105 | } | 105 | } |
106 | 106 | ||
107 | asmlinkage void init_pda(void) | 107 | asmlinkage void __init init_pda(void) |
108 | { | 108 | { |
109 | unsigned int cpu = raw_smp_processor_id(); | 109 | unsigned int cpu = raw_smp_processor_id(); |
110 | 110 | ||
diff --git a/arch/ia64/sn/pci/pcibr/pcibr_dma.c b/arch/ia64/sn/pci/pcibr/pcibr_dma.c index e626e50a938a..060df4aa9916 100644 --- a/arch/ia64/sn/pci/pcibr/pcibr_dma.c +++ b/arch/ia64/sn/pci/pcibr/pcibr_dma.c | |||
@@ -135,11 +135,10 @@ pcibr_dmatrans_direct64(struct pcidev_info * info, u64 paddr, | |||
135 | if (SN_DMA_ADDRTYPE(dma_flags) == SN_DMA_ADDR_PHYS) | 135 | if (SN_DMA_ADDRTYPE(dma_flags) == SN_DMA_ADDR_PHYS) |
136 | pci_addr = IS_PIC_SOFT(pcibus_info) ? | 136 | pci_addr = IS_PIC_SOFT(pcibus_info) ? |
137 | PHYS_TO_DMA(paddr) : | 137 | PHYS_TO_DMA(paddr) : |
138 | PHYS_TO_TIODMA(paddr) | dma_attributes; | 138 | PHYS_TO_TIODMA(paddr); |
139 | else | 139 | else |
140 | pci_addr = IS_PIC_SOFT(pcibus_info) ? | 140 | pci_addr = paddr; |
141 | paddr : | 141 | pci_addr |= dma_attributes; |
142 | paddr | dma_attributes; | ||
143 | 142 | ||
144 | /* Handle Bus mode */ | 143 | /* Handle Bus mode */ |
145 | if (IS_PCIX(pcibus_info)) | 144 | if (IS_PCIX(pcibus_info)) |
diff --git a/arch/m68knommu/platform/5206e/config.c b/arch/m68knommu/platform/5206e/config.c index d01a5d2b7557..db902540bf2c 100644 --- a/arch/m68knommu/platform/5206e/config.c +++ b/arch/m68knommu/platform/5206e/config.c | |||
@@ -17,6 +17,7 @@ | |||
17 | #include <asm/coldfire.h> | 17 | #include <asm/coldfire.h> |
18 | #include <asm/mcfsim.h> | 18 | #include <asm/mcfsim.h> |
19 | #include <asm/mcfdma.h> | 19 | #include <asm/mcfdma.h> |
20 | #include <asm/mcfuart.h> | ||
20 | 21 | ||
21 | /***************************************************************************/ | 22 | /***************************************************************************/ |
22 | 23 | ||
diff --git a/arch/m68knommu/platform/528x/config.c b/arch/m68knommu/platform/528x/config.c index dfdb5c2ed8e6..44baeb225dc7 100644 --- a/arch/m68knommu/platform/528x/config.c +++ b/arch/m68knommu/platform/528x/config.c | |||
@@ -24,7 +24,6 @@ | |||
24 | #include <asm/coldfire.h> | 24 | #include <asm/coldfire.h> |
25 | #include <asm/mcfsim.h> | 25 | #include <asm/mcfsim.h> |
26 | #include <asm/mcfuart.h> | 26 | #include <asm/mcfuart.h> |
27 | #include <asm/mcfqspi.h> | ||
28 | 27 | ||
29 | #ifdef CONFIG_MTD_PARTITIONS | 28 | #ifdef CONFIG_MTD_PARTITIONS |
30 | #include <linux/mtd/partitions.h> | 29 | #include <linux/mtd/partitions.h> |
@@ -33,233 +32,6 @@ | |||
33 | /***************************************************************************/ | 32 | /***************************************************************************/ |
34 | 33 | ||
35 | void coldfire_reset(void); | 34 | void coldfire_reset(void); |
36 | static void coldfire_qspi_cs_control(u8 cs, u8 command); | ||
37 | |||
38 | /***************************************************************************/ | ||
39 | |||
40 | #if defined(CONFIG_SPI) | ||
41 | |||
42 | #if defined(CONFIG_WILDFIRE) | ||
43 | #define SPI_NUM_CHIPSELECTS 0x02 | ||
44 | #define SPI_PAR_VAL 0x07 /* Enable DIN, DOUT, CLK */ | ||
45 | #define SPI_CS_MASK 0x18 | ||
46 | |||
47 | #define FLASH_BLOCKSIZE (1024*64) | ||
48 | #define FLASH_NUMBLOCKS 16 | ||
49 | #define FLASH_TYPE "m25p80" | ||
50 | |||
51 | #define M25P80_CS 0 | ||
52 | #define MMC_CS 1 | ||
53 | |||
54 | #ifdef CONFIG_MTD_PARTITIONS | ||
55 | static struct mtd_partition stm25p_partitions[] = { | ||
56 | /* sflash */ | ||
57 | [0] = { | ||
58 | .name = "stm25p80", | ||
59 | .offset = 0x00000000, | ||
60 | .size = FLASH_BLOCKSIZE * FLASH_NUMBLOCKS, | ||
61 | .mask_flags = 0 | ||
62 | } | ||
63 | }; | ||
64 | |||
65 | #endif | ||
66 | |||
67 | #elif defined(CONFIG_WILDFIREMOD) | ||
68 | |||
69 | #define SPI_NUM_CHIPSELECTS 0x08 | ||
70 | #define SPI_PAR_VAL 0x07 /* Enable DIN, DOUT, CLK */ | ||
71 | #define SPI_CS_MASK 0x78 | ||
72 | |||
73 | #define FLASH_BLOCKSIZE (1024*64) | ||
74 | #define FLASH_NUMBLOCKS 64 | ||
75 | #define FLASH_TYPE "m25p32" | ||
76 | /* Reserve 1M for the kernel parition */ | ||
77 | #define FLASH_KERNEL_SIZE (1024 * 1024) | ||
78 | |||
79 | #define M25P80_CS 5 | ||
80 | #define MMC_CS 6 | ||
81 | |||
82 | #ifdef CONFIG_MTD_PARTITIONS | ||
83 | static struct mtd_partition stm25p_partitions[] = { | ||
84 | /* sflash */ | ||
85 | [0] = { | ||
86 | .name = "kernel", | ||
87 | .offset = FLASH_BLOCKSIZE * FLASH_NUMBLOCKS - FLASH_KERNEL_SIZE, | ||
88 | .size = FLASH_KERNEL_SIZE, | ||
89 | .mask_flags = 0 | ||
90 | }, | ||
91 | [1] = { | ||
92 | .name = "image", | ||
93 | .offset = 0x00000000, | ||
94 | .size = FLASH_BLOCKSIZE * FLASH_NUMBLOCKS - FLASH_KERNEL_SIZE, | ||
95 | .mask_flags = 0 | ||
96 | }, | ||
97 | [2] = { | ||
98 | .name = "all", | ||
99 | .offset = 0x00000000, | ||
100 | .size = FLASH_BLOCKSIZE * FLASH_NUMBLOCKS, | ||
101 | .mask_flags = 0 | ||
102 | } | ||
103 | }; | ||
104 | #endif | ||
105 | |||
106 | #else | ||
107 | #define SPI_NUM_CHIPSELECTS 0x04 | ||
108 | #define SPI_PAR_VAL 0x7F /* Enable DIN, DOUT, CLK, CS0 - CS4 */ | ||
109 | #endif | ||
110 | |||
111 | #ifdef MMC_CS | ||
112 | static struct coldfire_spi_chip flash_chip_info = { | ||
113 | .mode = SPI_MODE_0, | ||
114 | .bits_per_word = 16, | ||
115 | .del_cs_to_clk = 17, | ||
116 | .del_after_trans = 1, | ||
117 | .void_write_data = 0 | ||
118 | }; | ||
119 | |||
120 | static struct coldfire_spi_chip mmc_chip_info = { | ||
121 | .mode = SPI_MODE_0, | ||
122 | .bits_per_word = 16, | ||
123 | .del_cs_to_clk = 17, | ||
124 | .del_after_trans = 1, | ||
125 | .void_write_data = 0xFFFF | ||
126 | }; | ||
127 | #endif | ||
128 | |||
129 | #ifdef M25P80_CS | ||
130 | static struct flash_platform_data stm25p80_platform_data = { | ||
131 | .name = "ST M25P80 SPI Flash chip", | ||
132 | #ifdef CONFIG_MTD_PARTITIONS | ||
133 | .parts = stm25p_partitions, | ||
134 | .nr_parts = sizeof(stm25p_partitions) / sizeof(*stm25p_partitions), | ||
135 | #endif | ||
136 | .type = FLASH_TYPE | ||
137 | }; | ||
138 | #endif | ||
139 | |||
140 | static struct spi_board_info spi_board_info[] __initdata = { | ||
141 | #ifdef M25P80_CS | ||
142 | { | ||
143 | .modalias = "m25p80", | ||
144 | .max_speed_hz = 16000000, | ||
145 | .bus_num = 1, | ||
146 | .chip_select = M25P80_CS, | ||
147 | .platform_data = &stm25p80_platform_data, | ||
148 | .controller_data = &flash_chip_info | ||
149 | }, | ||
150 | #endif | ||
151 | #ifdef MMC_CS | ||
152 | { | ||
153 | .modalias = "mmc_spi", | ||
154 | .max_speed_hz = 16000000, | ||
155 | .bus_num = 1, | ||
156 | .chip_select = MMC_CS, | ||
157 | .controller_data = &mmc_chip_info | ||
158 | } | ||
159 | #endif | ||
160 | }; | ||
161 | |||
162 | static struct coldfire_spi_master coldfire_master_info = { | ||
163 | .bus_num = 1, | ||
164 | .num_chipselect = SPI_NUM_CHIPSELECTS, | ||
165 | .irq_source = MCF5282_QSPI_IRQ_SOURCE, | ||
166 | .irq_vector = MCF5282_QSPI_IRQ_VECTOR, | ||
167 | .irq_mask = ((0x01 << MCF5282_QSPI_IRQ_SOURCE) | 0x01), | ||
168 | .irq_lp = 0x2B, /* Level 5 and Priority 3 */ | ||
169 | .par_val = SPI_PAR_VAL, | ||
170 | .cs_control = coldfire_qspi_cs_control, | ||
171 | }; | ||
172 | |||
173 | static struct resource coldfire_spi_resources[] = { | ||
174 | [0] = { | ||
175 | .name = "qspi-par", | ||
176 | .start = MCF5282_QSPI_PAR, | ||
177 | .end = MCF5282_QSPI_PAR, | ||
178 | .flags = IORESOURCE_MEM | ||
179 | }, | ||
180 | |||
181 | [1] = { | ||
182 | .name = "qspi-module", | ||
183 | .start = MCF5282_QSPI_QMR, | ||
184 | .end = MCF5282_QSPI_QMR + 0x18, | ||
185 | .flags = IORESOURCE_MEM | ||
186 | }, | ||
187 | |||
188 | [2] = { | ||
189 | .name = "qspi-int-level", | ||
190 | .start = MCF5282_INTC0 + MCFINTC_ICR0 + MCF5282_QSPI_IRQ_SOURCE, | ||
191 | .end = MCF5282_INTC0 + MCFINTC_ICR0 + MCF5282_QSPI_IRQ_SOURCE, | ||
192 | .flags = IORESOURCE_MEM | ||
193 | }, | ||
194 | |||
195 | [3] = { | ||
196 | .name = "qspi-int-mask", | ||
197 | .start = MCF5282_INTC0 + MCFINTC_IMRL, | ||
198 | .end = MCF5282_INTC0 + MCFINTC_IMRL, | ||
199 | .flags = IORESOURCE_MEM | ||
200 | } | ||
201 | }; | ||
202 | |||
203 | static struct platform_device coldfire_spi = { | ||
204 | .name = "spi_coldfire", | ||
205 | .id = -1, | ||
206 | .resource = coldfire_spi_resources, | ||
207 | .num_resources = ARRAY_SIZE(coldfire_spi_resources), | ||
208 | .dev = { | ||
209 | .platform_data = &coldfire_master_info, | ||
210 | } | ||
211 | }; | ||
212 | |||
213 | static void coldfire_qspi_cs_control(u8 cs, u8 command) | ||
214 | { | ||
215 | u8 cs_bit = ((0x01 << cs) << 3) & SPI_CS_MASK; | ||
216 | |||
217 | #if defined(CONFIG_WILDFIRE) | ||
218 | u8 cs_mask = ~(((0x01 << cs) << 3) & SPI_CS_MASK); | ||
219 | #endif | ||
220 | #if defined(CONFIG_WILDFIREMOD) | ||
221 | u8 cs_mask = (cs << 3) & SPI_CS_MASK; | ||
222 | #endif | ||
223 | |||
224 | /* | ||
225 | * Don't do anything if the chip select is not | ||
226 | * one of the port qs pins. | ||
227 | */ | ||
228 | if (command & QSPI_CS_INIT) { | ||
229 | #if defined(CONFIG_WILDFIRE) | ||
230 | MCF5282_GPIO_DDRQS |= cs_bit; | ||
231 | MCF5282_GPIO_PQSPAR &= ~cs_bit; | ||
232 | #endif | ||
233 | |||
234 | #if defined(CONFIG_WILDFIREMOD) | ||
235 | MCF5282_GPIO_DDRQS |= SPI_CS_MASK; | ||
236 | MCF5282_GPIO_PQSPAR &= ~SPI_CS_MASK; | ||
237 | #endif | ||
238 | } | ||
239 | |||
240 | if (command & QSPI_CS_ASSERT) { | ||
241 | MCF5282_GPIO_PORTQS &= ~SPI_CS_MASK; | ||
242 | MCF5282_GPIO_PORTQS |= cs_mask; | ||
243 | } else if (command & QSPI_CS_DROP) { | ||
244 | MCF5282_GPIO_PORTQS |= SPI_CS_MASK; | ||
245 | } | ||
246 | } | ||
247 | |||
248 | static int __init spi_dev_init(void) | ||
249 | { | ||
250 | int retval; | ||
251 | |||
252 | retval = platform_device_register(&coldfire_spi); | ||
253 | if (retval < 0) | ||
254 | return retval; | ||
255 | |||
256 | if (ARRAY_SIZE(spi_board_info)) | ||
257 | retval = spi_register_board_info(spi_board_info, ARRAY_SIZE(spi_board_info)); | ||
258 | |||
259 | return retval; | ||
260 | } | ||
261 | |||
262 | #endif /* CONFIG_SPI */ | ||
263 | 35 | ||
264 | /***************************************************************************/ | 36 | /***************************************************************************/ |
265 | 37 | ||
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig index e61465a18c7e..206cb7953b0c 100644 --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig | |||
@@ -238,8 +238,12 @@ config MIPS_SIM | |||
238 | This option enables support for MIPS Technologies MIPSsim software | 238 | This option enables support for MIPS Technologies MIPSsim software |
239 | emulator. | 239 | emulator. |
240 | 240 | ||
241 | config MACH_EMMA | 241 | config NEC_MARKEINS |
242 | bool "NEC EMMA series based machines" | 242 | bool "NEC EMMA2RH Mark-eins board" |
243 | select SOC_EMMA2RH | ||
244 | select HW_HAS_PCI | ||
245 | help | ||
246 | This enables support for the NEC Electronics Mark-eins boards. | ||
243 | 247 | ||
244 | config MACH_VR41XX | 248 | config MACH_VR41XX |
245 | bool "NEC VR4100 series based machines" | 249 | bool "NEC VR4100 series based machines" |
@@ -637,7 +641,6 @@ endchoice | |||
637 | 641 | ||
638 | source "arch/mips/alchemy/Kconfig" | 642 | source "arch/mips/alchemy/Kconfig" |
639 | source "arch/mips/basler/excite/Kconfig" | 643 | source "arch/mips/basler/excite/Kconfig" |
640 | source "arch/mips/emma/Kconfig" | ||
641 | source "arch/mips/jazz/Kconfig" | 644 | source "arch/mips/jazz/Kconfig" |
642 | source "arch/mips/lasat/Kconfig" | 645 | source "arch/mips/lasat/Kconfig" |
643 | source "arch/mips/pmc-sierra/Kconfig" | 646 | source "arch/mips/pmc-sierra/Kconfig" |
@@ -895,6 +898,18 @@ config MIPS_RM9122 | |||
895 | bool | 898 | bool |
896 | select SERIAL_RM9000 | 899 | select SERIAL_RM9000 |
897 | 900 | ||
901 | config SOC_EMMA2RH | ||
902 | bool | ||
903 | select CEVT_R4K | ||
904 | select CSRC_R4K | ||
905 | select DMA_NONCOHERENT | ||
906 | select IRQ_CPU | ||
907 | select SWAP_IO_SPACE | ||
908 | select SYS_HAS_CPU_R5500 | ||
909 | select SYS_SUPPORTS_32BIT_KERNEL | ||
910 | select SYS_SUPPORTS_64BIT_KERNEL | ||
911 | select SYS_SUPPORTS_BIG_ENDIAN | ||
912 | |||
898 | config SOC_PNX833X | 913 | config SOC_PNX833X |
899 | bool | 914 | bool |
900 | select CEVT_R4K | 915 | select CEVT_R4K |
@@ -930,11 +945,6 @@ config SOC_PNX8550 | |||
930 | config SWAP_IO_SPACE | 945 | config SWAP_IO_SPACE |
931 | bool | 946 | bool |
932 | 947 | ||
933 | config EMMA2RH | ||
934 | bool | ||
935 | depends on MARKEINS | ||
936 | default y | ||
937 | |||
938 | config SERIAL_RM9000 | 948 | config SERIAL_RM9000 |
939 | bool | 949 | bool |
940 | 950 | ||
diff --git a/arch/mips/Makefile b/arch/mips/Makefile index 21b00e95daef..22dab2e14348 100644 --- a/arch/mips/Makefile +++ b/arch/mips/Makefile | |||
@@ -416,7 +416,7 @@ load-$(CONFIG_PNX8550_STB810) += 0xffffffff80060000 | |||
416 | # | 416 | # |
417 | # Common NEC EMMAXXX | 417 | # Common NEC EMMAXXX |
418 | # | 418 | # |
419 | core-$(CONFIG_SOC_EMMA) += arch/mips/emma/common/ | 419 | core-$(CONFIG_SOC_EMMA2RH) += arch/mips/emma/common/ |
420 | cflags-$(CONFIG_SOC_EMMA2RH) += -I$(srctree)/arch/mips/include/asm/mach-emma2rh | 420 | cflags-$(CONFIG_SOC_EMMA2RH) += -I$(srctree)/arch/mips/include/asm/mach-emma2rh |
421 | 421 | ||
422 | # | 422 | # |
diff --git a/arch/mips/configs/ip27_defconfig b/arch/mips/configs/ip27_defconfig index f2baea3039bb..0208723adf28 100644 --- a/arch/mips/configs/ip27_defconfig +++ b/arch/mips/configs/ip27_defconfig | |||
@@ -512,7 +512,7 @@ CONFIG_MD_LINEAR=m | |||
512 | CONFIG_MD_RAID0=y | 512 | CONFIG_MD_RAID0=y |
513 | CONFIG_MD_RAID1=y | 513 | CONFIG_MD_RAID1=y |
514 | CONFIG_MD_RAID10=m | 514 | CONFIG_MD_RAID10=m |
515 | CONFIG_MD_RAID456=m | 515 | CONFIG_MD_RAID456=y |
516 | CONFIG_MD_RAID5_RESHAPE=y | 516 | CONFIG_MD_RAID5_RESHAPE=y |
517 | CONFIG_MD_MULTIPATH=m | 517 | CONFIG_MD_MULTIPATH=m |
518 | CONFIG_MD_FAULTY=m | 518 | CONFIG_MD_FAULTY=m |
diff --git a/arch/mips/configs/jmr3927_defconfig b/arch/mips/configs/jmr3927_defconfig index 9d5bd2a0af3d..5380f1f582d9 100644 --- a/arch/mips/configs/jmr3927_defconfig +++ b/arch/mips/configs/jmr3927_defconfig | |||
@@ -1,7 +1,7 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.26-rc9 | 3 | # Linux kernel version: 2.6.29-rc7 |
4 | # Fri Jul 11 23:01:36 2008 | 4 | # Wed Mar 4 23:07:16 2009 |
5 | # | 5 | # |
6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
7 | 7 | ||
@@ -18,8 +18,10 @@ CONFIG_MIPS=y | |||
18 | # CONFIG_LEMOTE_FULONG is not set | 18 | # CONFIG_LEMOTE_FULONG is not set |
19 | # CONFIG_MIPS_MALTA is not set | 19 | # CONFIG_MIPS_MALTA is not set |
20 | # CONFIG_MIPS_SIM is not set | 20 | # CONFIG_MIPS_SIM is not set |
21 | # CONFIG_MARKEINS is not set | 21 | # CONFIG_MACH_EMMA is not set |
22 | # CONFIG_MACH_VR41XX is not set | 22 | # CONFIG_MACH_VR41XX is not set |
23 | # CONFIG_NXP_STB220 is not set | ||
24 | # CONFIG_NXP_STB225 is not set | ||
23 | # CONFIG_PNX8550_JBS is not set | 25 | # CONFIG_PNX8550_JBS is not set |
24 | # CONFIG_PNX8550_STB810 is not set | 26 | # CONFIG_PNX8550_STB810 is not set |
25 | # CONFIG_PMC_MSP is not set | 27 | # CONFIG_PMC_MSP is not set |
@@ -39,7 +41,11 @@ CONFIG_MIPS=y | |||
39 | # CONFIG_SNI_RM is not set | 41 | # CONFIG_SNI_RM is not set |
40 | CONFIG_MACH_TX39XX=y | 42 | CONFIG_MACH_TX39XX=y |
41 | # CONFIG_MACH_TX49XX is not set | 43 | # CONFIG_MACH_TX49XX is not set |
44 | # CONFIG_MIKROTIK_RB532 is not set | ||
42 | # CONFIG_WR_PPMC is not set | 45 | # CONFIG_WR_PPMC is not set |
46 | # CONFIG_CAVIUM_OCTEON_SIMULATOR is not set | ||
47 | # CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set | ||
48 | CONFIG_MACH_TXX9=y | ||
43 | CONFIG_TOSHIBA_JMR3927=y | 49 | CONFIG_TOSHIBA_JMR3927=y |
44 | CONFIG_SOC_TX3927=y | 50 | CONFIG_SOC_TX3927=y |
45 | # CONFIG_TOSHIBA_FPCIB0 is not set | 51 | # CONFIG_TOSHIBA_FPCIB0 is not set |
@@ -54,12 +60,14 @@ CONFIG_GENERIC_CALIBRATE_DELAY=y | |||
54 | CONFIG_GENERIC_CLOCKEVENTS=y | 60 | CONFIG_GENERIC_CLOCKEVENTS=y |
55 | CONFIG_GENERIC_TIME=y | 61 | CONFIG_GENERIC_TIME=y |
56 | CONFIG_GENERIC_CMOS_UPDATE=y | 62 | CONFIG_GENERIC_CMOS_UPDATE=y |
57 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 63 | CONFIG_SCHED_OMIT_FRAME_POINTER=y |
58 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y | 64 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y |
59 | CONFIG_CEVT_TXX9=y | 65 | CONFIG_CEVT_TXX9=y |
60 | CONFIG_GPIO_TXX9=y | 66 | CONFIG_GPIO_TXX9=y |
61 | CONFIG_DMA_NONCOHERENT=y | 67 | CONFIG_DMA_NONCOHERENT=y |
62 | CONFIG_DMA_NEED_PCI_MAP_STATE=y | 68 | CONFIG_DMA_NEED_PCI_MAP_STATE=y |
69 | CONFIG_EARLY_PRINTK=y | ||
70 | CONFIG_SYS_HAS_EARLY_PRINTK=y | ||
63 | # CONFIG_HOTPLUG_CPU is not set | 71 | # CONFIG_HOTPLUG_CPU is not set |
64 | # CONFIG_NO_IOPORT is not set | 72 | # CONFIG_NO_IOPORT is not set |
65 | CONFIG_GENERIC_GPIO=y | 73 | CONFIG_GENERIC_GPIO=y |
@@ -87,6 +95,7 @@ CONFIG_CPU_TX39XX=y | |||
87 | # CONFIG_CPU_TX49XX is not set | 95 | # CONFIG_CPU_TX49XX is not set |
88 | # CONFIG_CPU_R5000 is not set | 96 | # CONFIG_CPU_R5000 is not set |
89 | # CONFIG_CPU_R5432 is not set | 97 | # CONFIG_CPU_R5432 is not set |
98 | # CONFIG_CPU_R5500 is not set | ||
90 | # CONFIG_CPU_R6000 is not set | 99 | # CONFIG_CPU_R6000 is not set |
91 | # CONFIG_CPU_NEVADA is not set | 100 | # CONFIG_CPU_NEVADA is not set |
92 | # CONFIG_CPU_R8000 is not set | 101 | # CONFIG_CPU_R8000 is not set |
@@ -94,6 +103,7 @@ CONFIG_CPU_TX39XX=y | |||
94 | # CONFIG_CPU_RM7000 is not set | 103 | # CONFIG_CPU_RM7000 is not set |
95 | # CONFIG_CPU_RM9000 is not set | 104 | # CONFIG_CPU_RM9000 is not set |
96 | # CONFIG_CPU_SB1 is not set | 105 | # CONFIG_CPU_SB1 is not set |
106 | # CONFIG_CPU_CAVIUM_OCTEON is not set | ||
97 | CONFIG_SYS_HAS_CPU_TX39XX=y | 107 | CONFIG_SYS_HAS_CPU_TX39XX=y |
98 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y | 108 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y |
99 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y | 109 | CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y |
@@ -117,14 +127,12 @@ CONFIG_ARCH_FLATMEM_ENABLE=y | |||
117 | CONFIG_ARCH_POPULATES_NODE_MAP=y | 127 | CONFIG_ARCH_POPULATES_NODE_MAP=y |
118 | CONFIG_FLATMEM=y | 128 | CONFIG_FLATMEM=y |
119 | CONFIG_FLAT_NODE_MEM_MAP=y | 129 | CONFIG_FLAT_NODE_MEM_MAP=y |
120 | # CONFIG_SPARSEMEM_STATIC is not set | ||
121 | # CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set | ||
122 | CONFIG_PAGEFLAGS_EXTENDED=y | 130 | CONFIG_PAGEFLAGS_EXTENDED=y |
123 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 131 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
124 | # CONFIG_RESOURCES_64BIT is not set | 132 | # CONFIG_PHYS_ADDR_T_64BIT is not set |
125 | CONFIG_ZONE_DMA_FLAG=0 | 133 | CONFIG_ZONE_DMA_FLAG=0 |
126 | CONFIG_VIRT_TO_BUS=y | 134 | CONFIG_VIRT_TO_BUS=y |
127 | # CONFIG_TICK_ONESHOT is not set | 135 | CONFIG_UNEVICTABLE_LRU=y |
128 | # CONFIG_NO_HZ is not set | 136 | # CONFIG_NO_HZ is not set |
129 | # CONFIG_HIGH_RES_TIMERS is not set | 137 | # CONFIG_HIGH_RES_TIMERS is not set |
130 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | 138 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y |
@@ -159,6 +167,15 @@ CONFIG_SYSVIPC_SYSCTL=y | |||
159 | # CONFIG_BSD_PROCESS_ACCT is not set | 167 | # CONFIG_BSD_PROCESS_ACCT is not set |
160 | # CONFIG_TASKSTATS is not set | 168 | # CONFIG_TASKSTATS is not set |
161 | # CONFIG_AUDIT is not set | 169 | # CONFIG_AUDIT is not set |
170 | |||
171 | # | ||
172 | # RCU Subsystem | ||
173 | # | ||
174 | CONFIG_CLASSIC_RCU=y | ||
175 | # CONFIG_TREE_RCU is not set | ||
176 | # CONFIG_PREEMPT_RCU is not set | ||
177 | # CONFIG_TREE_RCU_TRACE is not set | ||
178 | # CONFIG_PREEMPT_RCU_TRACE is not set | ||
162 | # CONFIG_IKCONFIG is not set | 179 | # CONFIG_IKCONFIG is not set |
163 | CONFIG_LOG_BUF_SHIFT=14 | 180 | CONFIG_LOG_BUF_SHIFT=14 |
164 | # CONFIG_CGROUPS is not set | 181 | # CONFIG_CGROUPS is not set |
@@ -171,7 +188,6 @@ CONFIG_CC_OPTIMIZE_FOR_SIZE=y | |||
171 | CONFIG_SYSCTL=y | 188 | CONFIG_SYSCTL=y |
172 | CONFIG_EMBEDDED=y | 189 | CONFIG_EMBEDDED=y |
173 | CONFIG_SYSCTL_SYSCALL=y | 190 | CONFIG_SYSCTL_SYSCALL=y |
174 | CONFIG_SYSCTL_SYSCALL_CHECK=y | ||
175 | CONFIG_KALLSYMS=y | 191 | CONFIG_KALLSYMS=y |
176 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | 192 | # CONFIG_KALLSYMS_EXTRA_PASS is not set |
177 | # CONFIG_HOTPLUG is not set | 193 | # CONFIG_HOTPLUG is not set |
@@ -188,26 +204,23 @@ CONFIG_SIGNALFD=y | |||
188 | CONFIG_TIMERFD=y | 204 | CONFIG_TIMERFD=y |
189 | CONFIG_EVENTFD=y | 205 | CONFIG_EVENTFD=y |
190 | CONFIG_SHMEM=y | 206 | CONFIG_SHMEM=y |
207 | CONFIG_AIO=y | ||
191 | CONFIG_VM_EVENT_COUNTERS=y | 208 | CONFIG_VM_EVENT_COUNTERS=y |
209 | CONFIG_PCI_QUIRKS=y | ||
192 | CONFIG_SLAB=y | 210 | CONFIG_SLAB=y |
193 | # CONFIG_SLUB is not set | 211 | # CONFIG_SLUB is not set |
194 | # CONFIG_SLOB is not set | 212 | # CONFIG_SLOB is not set |
195 | # CONFIG_PROFILING is not set | 213 | # CONFIG_PROFILING is not set |
196 | # CONFIG_MARKERS is not set | ||
197 | CONFIG_HAVE_OPROFILE=y | 214 | CONFIG_HAVE_OPROFILE=y |
198 | # CONFIG_HAVE_KPROBES is not set | 215 | # CONFIG_HAVE_GENERIC_DMA_COHERENT is not set |
199 | # CONFIG_HAVE_KRETPROBES is not set | ||
200 | # CONFIG_HAVE_DMA_ATTRS is not set | ||
201 | CONFIG_PROC_PAGE_MONITOR=y | ||
202 | CONFIG_SLABINFO=y | 216 | CONFIG_SLABINFO=y |
203 | CONFIG_RT_MUTEXES=y | 217 | CONFIG_RT_MUTEXES=y |
204 | # CONFIG_TINY_SHMEM is not set | ||
205 | CONFIG_BASE_SMALL=0 | 218 | CONFIG_BASE_SMALL=0 |
206 | # CONFIG_MODULES is not set | 219 | # CONFIG_MODULES is not set |
207 | CONFIG_BLOCK=y | 220 | CONFIG_BLOCK=y |
208 | # CONFIG_LBD is not set | 221 | # CONFIG_LBD is not set |
209 | # CONFIG_BLK_DEV_IO_TRACE is not set | 222 | # CONFIG_BLK_DEV_IO_TRACE is not set |
210 | # CONFIG_LSF is not set | 223 | # CONFIG_BLK_DEV_INTEGRITY is not set |
211 | 224 | ||
212 | # | 225 | # |
213 | # IO Schedulers | 226 | # IO Schedulers |
@@ -221,7 +234,7 @@ CONFIG_IOSCHED_CFQ=y | |||
221 | CONFIG_DEFAULT_CFQ=y | 234 | CONFIG_DEFAULT_CFQ=y |
222 | # CONFIG_DEFAULT_NOOP is not set | 235 | # CONFIG_DEFAULT_NOOP is not set |
223 | CONFIG_DEFAULT_IOSCHED="cfq" | 236 | CONFIG_DEFAULT_IOSCHED="cfq" |
224 | CONFIG_CLASSIC_RCU=y | 237 | # CONFIG_FREEZER is not set |
225 | 238 | ||
226 | # | 239 | # |
227 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) | 240 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) |
@@ -231,12 +244,15 @@ CONFIG_PCI=y | |||
231 | CONFIG_PCI_DOMAINS=y | 244 | CONFIG_PCI_DOMAINS=y |
232 | # CONFIG_ARCH_SUPPORTS_MSI is not set | 245 | # CONFIG_ARCH_SUPPORTS_MSI is not set |
233 | CONFIG_PCI_LEGACY=y | 246 | CONFIG_PCI_LEGACY=y |
247 | # CONFIG_PCI_STUB is not set | ||
234 | CONFIG_MMU=y | 248 | CONFIG_MMU=y |
235 | 249 | ||
236 | # | 250 | # |
237 | # Executable file formats | 251 | # Executable file formats |
238 | # | 252 | # |
239 | CONFIG_BINFMT_ELF=y | 253 | CONFIG_BINFMT_ELF=y |
254 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
255 | # CONFIG_HAVE_AOUT is not set | ||
240 | # CONFIG_BINFMT_MISC is not set | 256 | # CONFIG_BINFMT_MISC is not set |
241 | CONFIG_TRAD_SIGNALS=y | 257 | CONFIG_TRAD_SIGNALS=y |
242 | 258 | ||
@@ -245,15 +261,12 @@ CONFIG_TRAD_SIGNALS=y | |||
245 | # | 261 | # |
246 | CONFIG_ARCH_SUSPEND_POSSIBLE=y | 262 | CONFIG_ARCH_SUSPEND_POSSIBLE=y |
247 | # CONFIG_PM is not set | 263 | # CONFIG_PM is not set |
248 | |||
249 | # | ||
250 | # Networking | ||
251 | # | ||
252 | CONFIG_NET=y | 264 | CONFIG_NET=y |
253 | 265 | ||
254 | # | 266 | # |
255 | # Networking options | 267 | # Networking options |
256 | # | 268 | # |
269 | CONFIG_COMPAT_NET_DEV_OPS=y | ||
257 | CONFIG_PACKET=y | 270 | CONFIG_PACKET=y |
258 | # CONFIG_PACKET_MMAP is not set | 271 | # CONFIG_PACKET_MMAP is not set |
259 | CONFIG_UNIX=y | 272 | CONFIG_UNIX=y |
@@ -293,6 +306,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic" | |||
293 | # CONFIG_IPX is not set | 306 | # CONFIG_IPX is not set |
294 | # CONFIG_ATALK is not set | 307 | # CONFIG_ATALK is not set |
295 | # CONFIG_NET_SCHED is not set | 308 | # CONFIG_NET_SCHED is not set |
309 | # CONFIG_DCB is not set | ||
296 | 310 | ||
297 | # | 311 | # |
298 | # Network testing | 312 | # Network testing |
@@ -302,14 +316,9 @@ CONFIG_DEFAULT_TCP_CONG="cubic" | |||
302 | # CONFIG_CAN is not set | 316 | # CONFIG_CAN is not set |
303 | # CONFIG_IRDA is not set | 317 | # CONFIG_IRDA is not set |
304 | # CONFIG_BT is not set | 318 | # CONFIG_BT is not set |
305 | 319 | # CONFIG_PHONET is not set | |
306 | # | 320 | # CONFIG_WIRELESS is not set |
307 | # Wireless | 321 | # CONFIG_WIMAX is not set |
308 | # | ||
309 | # CONFIG_CFG80211 is not set | ||
310 | # CONFIG_WIRELESS_EXT is not set | ||
311 | # CONFIG_MAC80211 is not set | ||
312 | # CONFIG_IEEE80211 is not set | ||
313 | # CONFIG_RFKILL is not set | 322 | # CONFIG_RFKILL is not set |
314 | 323 | ||
315 | # | 324 | # |
@@ -323,7 +332,89 @@ CONFIG_STANDALONE=y | |||
323 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 332 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
324 | # CONFIG_SYS_HYPERVISOR is not set | 333 | # CONFIG_SYS_HYPERVISOR is not set |
325 | # CONFIG_CONNECTOR is not set | 334 | # CONFIG_CONNECTOR is not set |
326 | # CONFIG_MTD is not set | 335 | CONFIG_MTD=y |
336 | # CONFIG_MTD_DEBUG is not set | ||
337 | # CONFIG_MTD_CONCAT is not set | ||
338 | CONFIG_MTD_PARTITIONS=y | ||
339 | # CONFIG_MTD_REDBOOT_PARTS is not set | ||
340 | CONFIG_MTD_CMDLINE_PARTS=y | ||
341 | # CONFIG_MTD_AR7_PARTS is not set | ||
342 | |||
343 | # | ||
344 | # User Modules And Translation Layers | ||
345 | # | ||
346 | CONFIG_MTD_CHAR=y | ||
347 | # CONFIG_MTD_BLKDEVS is not set | ||
348 | # CONFIG_MTD_BLOCK is not set | ||
349 | # CONFIG_MTD_BLOCK_RO is not set | ||
350 | # CONFIG_FTL is not set | ||
351 | # CONFIG_NFTL is not set | ||
352 | # CONFIG_INFTL is not set | ||
353 | # CONFIG_RFD_FTL is not set | ||
354 | # CONFIG_SSFDC is not set | ||
355 | # CONFIG_MTD_OOPS is not set | ||
356 | |||
357 | # | ||
358 | # RAM/ROM/Flash chip drivers | ||
359 | # | ||
360 | CONFIG_MTD_CFI=y | ||
361 | CONFIG_MTD_JEDECPROBE=y | ||
362 | CONFIG_MTD_GEN_PROBE=y | ||
363 | # CONFIG_MTD_CFI_ADV_OPTIONS is not set | ||
364 | CONFIG_MTD_MAP_BANK_WIDTH_1=y | ||
365 | CONFIG_MTD_MAP_BANK_WIDTH_2=y | ||
366 | CONFIG_MTD_MAP_BANK_WIDTH_4=y | ||
367 | # CONFIG_MTD_MAP_BANK_WIDTH_8 is not set | ||
368 | # CONFIG_MTD_MAP_BANK_WIDTH_16 is not set | ||
369 | # CONFIG_MTD_MAP_BANK_WIDTH_32 is not set | ||
370 | CONFIG_MTD_CFI_I1=y | ||
371 | CONFIG_MTD_CFI_I2=y | ||
372 | # CONFIG_MTD_CFI_I4 is not set | ||
373 | # CONFIG_MTD_CFI_I8 is not set | ||
374 | # CONFIG_MTD_CFI_INTELEXT is not set | ||
375 | CONFIG_MTD_CFI_AMDSTD=y | ||
376 | # CONFIG_MTD_CFI_STAA is not set | ||
377 | CONFIG_MTD_CFI_UTIL=y | ||
378 | # CONFIG_MTD_RAM is not set | ||
379 | # CONFIG_MTD_ROM is not set | ||
380 | # CONFIG_MTD_ABSENT is not set | ||
381 | |||
382 | # | ||
383 | # Mapping drivers for chip access | ||
384 | # | ||
385 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set | ||
386 | CONFIG_MTD_PHYSMAP=y | ||
387 | # CONFIG_MTD_PHYSMAP_COMPAT is not set | ||
388 | # CONFIG_MTD_INTEL_VR_NOR is not set | ||
389 | # CONFIG_MTD_PLATRAM is not set | ||
390 | |||
391 | # | ||
392 | # Self-contained MTD device drivers | ||
393 | # | ||
394 | # CONFIG_MTD_PMC551 is not set | ||
395 | # CONFIG_MTD_SLRAM is not set | ||
396 | # CONFIG_MTD_PHRAM is not set | ||
397 | # CONFIG_MTD_MTDRAM is not set | ||
398 | # CONFIG_MTD_BLOCK2MTD is not set | ||
399 | |||
400 | # | ||
401 | # Disk-On-Chip Device Drivers | ||
402 | # | ||
403 | # CONFIG_MTD_DOC2000 is not set | ||
404 | # CONFIG_MTD_DOC2001 is not set | ||
405 | # CONFIG_MTD_DOC2001PLUS is not set | ||
406 | # CONFIG_MTD_NAND is not set | ||
407 | # CONFIG_MTD_ONENAND is not set | ||
408 | |||
409 | # | ||
410 | # LPDDR flash memory drivers | ||
411 | # | ||
412 | # CONFIG_MTD_LPDDR is not set | ||
413 | |||
414 | # | ||
415 | # UBI - Unsorted block images | ||
416 | # | ||
417 | # CONFIG_MTD_UBI is not set | ||
327 | # CONFIG_PARPORT is not set | 418 | # CONFIG_PARPORT is not set |
328 | CONFIG_BLK_DEV=y | 419 | CONFIG_BLK_DEV=y |
329 | # CONFIG_BLK_CPQ_DA is not set | 420 | # CONFIG_BLK_CPQ_DA is not set |
@@ -336,6 +427,7 @@ CONFIG_BLK_DEV=y | |||
336 | # CONFIG_BLK_DEV_RAM is not set | 427 | # CONFIG_BLK_DEV_RAM is not set |
337 | # CONFIG_CDROM_PKTCDVD is not set | 428 | # CONFIG_CDROM_PKTCDVD is not set |
338 | # CONFIG_ATA_OVER_ETH is not set | 429 | # CONFIG_ATA_OVER_ETH is not set |
430 | # CONFIG_BLK_DEV_HD is not set | ||
339 | # CONFIG_MISC_DEVICES is not set | 431 | # CONFIG_MISC_DEVICES is not set |
340 | CONFIG_HAVE_IDE=y | 432 | CONFIG_HAVE_IDE=y |
341 | # CONFIG_IDE is not set | 433 | # CONFIG_IDE is not set |
@@ -361,7 +453,6 @@ CONFIG_HAVE_IDE=y | |||
361 | # CONFIG_IEEE1394 is not set | 453 | # CONFIG_IEEE1394 is not set |
362 | # CONFIG_I2O is not set | 454 | # CONFIG_I2O is not set |
363 | CONFIG_NETDEVICES=y | 455 | CONFIG_NETDEVICES=y |
364 | # CONFIG_NETDEVICES_MULTIQUEUE is not set | ||
365 | # CONFIG_DUMMY is not set | 456 | # CONFIG_DUMMY is not set |
366 | # CONFIG_BONDING is not set | 457 | # CONFIG_BONDING is not set |
367 | # CONFIG_EQUALIZER is not set | 458 | # CONFIG_EQUALIZER is not set |
@@ -383,6 +474,9 @@ CONFIG_PHYLIB=y | |||
383 | # CONFIG_BROADCOM_PHY is not set | 474 | # CONFIG_BROADCOM_PHY is not set |
384 | # CONFIG_ICPLUS_PHY is not set | 475 | # CONFIG_ICPLUS_PHY is not set |
385 | # CONFIG_REALTEK_PHY is not set | 476 | # CONFIG_REALTEK_PHY is not set |
477 | # CONFIG_NATIONAL_PHY is not set | ||
478 | # CONFIG_STE10XP is not set | ||
479 | # CONFIG_LSI_ET1011C_PHY is not set | ||
386 | # CONFIG_FIXED_PHY is not set | 480 | # CONFIG_FIXED_PHY is not set |
387 | # CONFIG_MDIO_BITBANG is not set | 481 | # CONFIG_MDIO_BITBANG is not set |
388 | CONFIG_NET_ETHERNET=y | 482 | CONFIG_NET_ETHERNET=y |
@@ -392,6 +486,7 @@ CONFIG_NET_ETHERNET=y | |||
392 | # CONFIG_SUNGEM is not set | 486 | # CONFIG_SUNGEM is not set |
393 | # CONFIG_CASSINI is not set | 487 | # CONFIG_CASSINI is not set |
394 | # CONFIG_NET_VENDOR_3COM is not set | 488 | # CONFIG_NET_VENDOR_3COM is not set |
489 | # CONFIG_SMC91X is not set | ||
395 | # CONFIG_DM9000 is not set | 490 | # CONFIG_DM9000 is not set |
396 | # CONFIG_NET_TULIP is not set | 491 | # CONFIG_NET_TULIP is not set |
397 | # CONFIG_HP100 is not set | 492 | # CONFIG_HP100 is not set |
@@ -399,6 +494,9 @@ CONFIG_NET_ETHERNET=y | |||
399 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | 494 | # CONFIG_IBM_NEW_EMAC_RGMII is not set |
400 | # CONFIG_IBM_NEW_EMAC_TAH is not set | 495 | # CONFIG_IBM_NEW_EMAC_TAH is not set |
401 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | 496 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set |
497 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
498 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
499 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
402 | CONFIG_NET_PCI=y | 500 | CONFIG_NET_PCI=y |
403 | # CONFIG_PCNET32 is not set | 501 | # CONFIG_PCNET32 is not set |
404 | # CONFIG_AMD8111_ETH is not set | 502 | # CONFIG_AMD8111_ETH is not set |
@@ -406,7 +504,6 @@ CONFIG_NET_PCI=y | |||
406 | # CONFIG_B44 is not set | 504 | # CONFIG_B44 is not set |
407 | # CONFIG_FORCEDETH is not set | 505 | # CONFIG_FORCEDETH is not set |
408 | CONFIG_TC35815=y | 506 | CONFIG_TC35815=y |
409 | # CONFIG_EEPRO100 is not set | ||
410 | # CONFIG_E100 is not set | 507 | # CONFIG_E100 is not set |
411 | # CONFIG_FEALNX is not set | 508 | # CONFIG_FEALNX is not set |
412 | # CONFIG_NATSEMI is not set | 509 | # CONFIG_NATSEMI is not set |
@@ -415,9 +512,11 @@ CONFIG_TC35815=y | |||
415 | # CONFIG_R6040 is not set | 512 | # CONFIG_R6040 is not set |
416 | # CONFIG_SIS900 is not set | 513 | # CONFIG_SIS900 is not set |
417 | # CONFIG_EPIC100 is not set | 514 | # CONFIG_EPIC100 is not set |
515 | # CONFIG_SMSC9420 is not set | ||
418 | # CONFIG_SUNDANCE is not set | 516 | # CONFIG_SUNDANCE is not set |
419 | # CONFIG_TLAN is not set | 517 | # CONFIG_TLAN is not set |
420 | # CONFIG_VIA_RHINE is not set | 518 | # CONFIG_VIA_RHINE is not set |
519 | # CONFIG_ATL2 is not set | ||
421 | # CONFIG_NETDEV_1000 is not set | 520 | # CONFIG_NETDEV_1000 is not set |
422 | # CONFIG_NETDEV_10000 is not set | 521 | # CONFIG_NETDEV_10000 is not set |
423 | # CONFIG_TR is not set | 522 | # CONFIG_TR is not set |
@@ -428,6 +527,10 @@ CONFIG_TC35815=y | |||
428 | # CONFIG_WLAN_PRE80211 is not set | 527 | # CONFIG_WLAN_PRE80211 is not set |
429 | # CONFIG_WLAN_80211 is not set | 528 | # CONFIG_WLAN_80211 is not set |
430 | # CONFIG_IWLWIFI_LEDS is not set | 529 | # CONFIG_IWLWIFI_LEDS is not set |
530 | |||
531 | # | ||
532 | # Enable WiMAX (Networking options) to see the WiMAX drivers | ||
533 | # | ||
431 | # CONFIG_WAN is not set | 534 | # CONFIG_WAN is not set |
432 | # CONFIG_FDDI is not set | 535 | # CONFIG_FDDI is not set |
433 | # CONFIG_PPP is not set | 536 | # CONFIG_PPP is not set |
@@ -440,27 +543,7 @@ CONFIG_TC35815=y | |||
440 | # | 543 | # |
441 | # Input device support | 544 | # Input device support |
442 | # | 545 | # |
443 | CONFIG_INPUT=y | 546 | # CONFIG_INPUT is not set |
444 | # CONFIG_INPUT_FF_MEMLESS is not set | ||
445 | # CONFIG_INPUT_POLLDEV is not set | ||
446 | |||
447 | # | ||
448 | # Userland interfaces | ||
449 | # | ||
450 | # CONFIG_INPUT_MOUSEDEV is not set | ||
451 | # CONFIG_INPUT_JOYDEV is not set | ||
452 | # CONFIG_INPUT_EVDEV is not set | ||
453 | # CONFIG_INPUT_EVBUG is not set | ||
454 | |||
455 | # | ||
456 | # Input Device Drivers | ||
457 | # | ||
458 | # CONFIG_INPUT_KEYBOARD is not set | ||
459 | # CONFIG_INPUT_MOUSE is not set | ||
460 | # CONFIG_INPUT_JOYSTICK is not set | ||
461 | # CONFIG_INPUT_TABLET is not set | ||
462 | # CONFIG_INPUT_TOUCHSCREEN is not set | ||
463 | # CONFIG_INPUT_MISC is not set | ||
464 | 547 | ||
465 | # | 548 | # |
466 | # Hardware I/O ports | 549 | # Hardware I/O ports |
@@ -517,10 +600,11 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
517 | CONFIG_DEVPORT=y | 600 | CONFIG_DEVPORT=y |
518 | # CONFIG_I2C is not set | 601 | # CONFIG_I2C is not set |
519 | # CONFIG_SPI is not set | 602 | # CONFIG_SPI is not set |
520 | CONFIG_HAVE_GPIO_LIB=y | 603 | CONFIG_ARCH_REQUIRE_GPIOLIB=y |
604 | CONFIG_GPIOLIB=y | ||
521 | 605 | ||
522 | # | 606 | # |
523 | # GPIO Support | 607 | # Memory mapped GPIO expanders: |
524 | # | 608 | # |
525 | 609 | ||
526 | # | 610 | # |
@@ -528,6 +612,11 @@ CONFIG_HAVE_GPIO_LIB=y | |||
528 | # | 612 | # |
529 | 613 | ||
530 | # | 614 | # |
615 | # PCI GPIO expanders: | ||
616 | # | ||
617 | # CONFIG_GPIO_BT8XX is not set | ||
618 | |||
619 | # | ||
531 | # SPI GPIO expanders: | 620 | # SPI GPIO expanders: |
532 | # | 621 | # |
533 | # CONFIG_W1 is not set | 622 | # CONFIG_W1 is not set |
@@ -542,6 +631,7 @@ CONFIG_WATCHDOG=y | |||
542 | # Watchdog Device Drivers | 631 | # Watchdog Device Drivers |
543 | # | 632 | # |
544 | # CONFIG_SOFT_WATCHDOG is not set | 633 | # CONFIG_SOFT_WATCHDOG is not set |
634 | # CONFIG_ALIM7101_WDT is not set | ||
545 | CONFIG_TXX9_WDT=y | 635 | CONFIG_TXX9_WDT=y |
546 | 636 | ||
547 | # | 637 | # |
@@ -549,18 +639,21 @@ CONFIG_TXX9_WDT=y | |||
549 | # | 639 | # |
550 | # CONFIG_PCIPCWATCHDOG is not set | 640 | # CONFIG_PCIPCWATCHDOG is not set |
551 | # CONFIG_WDTPCI is not set | 641 | # CONFIG_WDTPCI is not set |
642 | CONFIG_SSB_POSSIBLE=y | ||
552 | 643 | ||
553 | # | 644 | # |
554 | # Sonics Silicon Backplane | 645 | # Sonics Silicon Backplane |
555 | # | 646 | # |
556 | CONFIG_SSB_POSSIBLE=y | ||
557 | # CONFIG_SSB is not set | 647 | # CONFIG_SSB is not set |
558 | 648 | ||
559 | # | 649 | # |
560 | # Multifunction device drivers | 650 | # Multifunction device drivers |
561 | # | 651 | # |
652 | # CONFIG_MFD_CORE is not set | ||
562 | # CONFIG_MFD_SM501 is not set | 653 | # CONFIG_MFD_SM501 is not set |
563 | # CONFIG_HTC_PASIC3 is not set | 654 | # CONFIG_HTC_PASIC3 is not set |
655 | # CONFIG_MFD_TMIO is not set | ||
656 | # CONFIG_REGULATOR is not set | ||
564 | 657 | ||
565 | # | 658 | # |
566 | # Multimedia devices | 659 | # Multimedia devices |
@@ -591,16 +684,26 @@ CONFIG_SSB_POSSIBLE=y | |||
591 | # Display device support | 684 | # Display device support |
592 | # | 685 | # |
593 | # CONFIG_DISPLAY_SUPPORT is not set | 686 | # CONFIG_DISPLAY_SUPPORT is not set |
594 | |||
595 | # | ||
596 | # Sound | ||
597 | # | ||
598 | # CONFIG_SOUND is not set | 687 | # CONFIG_SOUND is not set |
599 | # CONFIG_HID_SUPPORT is not set | ||
600 | # CONFIG_USB_SUPPORT is not set | 688 | # CONFIG_USB_SUPPORT is not set |
601 | # CONFIG_MMC is not set | 689 | # CONFIG_MMC is not set |
602 | # CONFIG_MEMSTICK is not set | 690 | # CONFIG_MEMSTICK is not set |
603 | # CONFIG_NEW_LEDS is not set | 691 | CONFIG_NEW_LEDS=y |
692 | CONFIG_LEDS_CLASS=y | ||
693 | |||
694 | # | ||
695 | # LED drivers | ||
696 | # | ||
697 | CONFIG_LEDS_GPIO=y | ||
698 | |||
699 | # | ||
700 | # LED Triggers | ||
701 | # | ||
702 | CONFIG_LEDS_TRIGGERS=y | ||
703 | # CONFIG_LEDS_TRIGGER_TIMER is not set | ||
704 | CONFIG_LEDS_TRIGGER_HEARTBEAT=y | ||
705 | # CONFIG_LEDS_TRIGGER_BACKLIGHT is not set | ||
706 | # CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set | ||
604 | # CONFIG_ACCESSIBILITY is not set | 707 | # CONFIG_ACCESSIBILITY is not set |
605 | # CONFIG_INFINIBAND is not set | 708 | # CONFIG_INFINIBAND is not set |
606 | CONFIG_RTC_LIB=y | 709 | CONFIG_RTC_LIB=y |
@@ -626,27 +729,34 @@ CONFIG_RTC_INTF_DEV=y | |||
626 | # Platform RTC drivers | 729 | # Platform RTC drivers |
627 | # | 730 | # |
628 | # CONFIG_RTC_DRV_CMOS is not set | 731 | # CONFIG_RTC_DRV_CMOS is not set |
732 | # CONFIG_RTC_DRV_DS1286 is not set | ||
629 | # CONFIG_RTC_DRV_DS1511 is not set | 733 | # CONFIG_RTC_DRV_DS1511 is not set |
630 | # CONFIG_RTC_DRV_DS1553 is not set | 734 | # CONFIG_RTC_DRV_DS1553 is not set |
631 | CONFIG_RTC_DRV_DS1742=y | 735 | CONFIG_RTC_DRV_DS1742=y |
632 | # CONFIG_RTC_DRV_STK17TA8 is not set | 736 | # CONFIG_RTC_DRV_STK17TA8 is not set |
633 | # CONFIG_RTC_DRV_M48T86 is not set | 737 | # CONFIG_RTC_DRV_M48T86 is not set |
738 | # CONFIG_RTC_DRV_M48T35 is not set | ||
634 | # CONFIG_RTC_DRV_M48T59 is not set | 739 | # CONFIG_RTC_DRV_M48T59 is not set |
740 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
635 | # CONFIG_RTC_DRV_V3020 is not set | 741 | # CONFIG_RTC_DRV_V3020 is not set |
636 | 742 | ||
637 | # | 743 | # |
638 | # on-CPU RTC drivers | 744 | # on-CPU RTC drivers |
639 | # | 745 | # |
746 | # CONFIG_DMADEVICES is not set | ||
640 | # CONFIG_UIO is not set | 747 | # CONFIG_UIO is not set |
748 | # CONFIG_STAGING is not set | ||
641 | 749 | ||
642 | # | 750 | # |
643 | # File systems | 751 | # File systems |
644 | # | 752 | # |
645 | # CONFIG_EXT2_FS is not set | 753 | # CONFIG_EXT2_FS is not set |
646 | # CONFIG_EXT3_FS is not set | 754 | # CONFIG_EXT3_FS is not set |
755 | # CONFIG_EXT4_FS is not set | ||
647 | # CONFIG_REISERFS_FS is not set | 756 | # CONFIG_REISERFS_FS is not set |
648 | # CONFIG_JFS_FS is not set | 757 | # CONFIG_JFS_FS is not set |
649 | # CONFIG_FS_POSIX_ACL is not set | 758 | # CONFIG_FS_POSIX_ACL is not set |
759 | CONFIG_FILE_LOCKING=y | ||
650 | # CONFIG_XFS_FS is not set | 760 | # CONFIG_XFS_FS is not set |
651 | # CONFIG_OCFS2_FS is not set | 761 | # CONFIG_OCFS2_FS is not set |
652 | CONFIG_DNOTIFY=y | 762 | CONFIG_DNOTIFY=y |
@@ -676,28 +786,17 @@ CONFIG_INOTIFY_USER=y | |||
676 | CONFIG_PROC_FS=y | 786 | CONFIG_PROC_FS=y |
677 | CONFIG_PROC_KCORE=y | 787 | CONFIG_PROC_KCORE=y |
678 | CONFIG_PROC_SYSCTL=y | 788 | CONFIG_PROC_SYSCTL=y |
789 | CONFIG_PROC_PAGE_MONITOR=y | ||
679 | CONFIG_SYSFS=y | 790 | CONFIG_SYSFS=y |
680 | # CONFIG_TMPFS is not set | 791 | # CONFIG_TMPFS is not set |
681 | # CONFIG_HUGETLB_PAGE is not set | 792 | # CONFIG_HUGETLB_PAGE is not set |
682 | # CONFIG_CONFIGFS_FS is not set | 793 | # CONFIG_CONFIGFS_FS is not set |
683 | 794 | # CONFIG_MISC_FILESYSTEMS is not set | |
684 | # | ||
685 | # Miscellaneous filesystems | ||
686 | # | ||
687 | # CONFIG_HFSPLUS_FS is not set | ||
688 | # CONFIG_CRAMFS is not set | ||
689 | # CONFIG_VXFS_FS is not set | ||
690 | # CONFIG_MINIX_FS is not set | ||
691 | # CONFIG_HPFS_FS is not set | ||
692 | # CONFIG_QNX4FS_FS is not set | ||
693 | # CONFIG_ROMFS_FS is not set | ||
694 | # CONFIG_SYSV_FS is not set | ||
695 | # CONFIG_UFS_FS is not set | ||
696 | CONFIG_NETWORK_FILESYSTEMS=y | 795 | CONFIG_NETWORK_FILESYSTEMS=y |
697 | CONFIG_NFS_FS=y | 796 | CONFIG_NFS_FS=y |
698 | # CONFIG_NFS_V3 is not set | 797 | # CONFIG_NFS_V3 is not set |
699 | # CONFIG_NFSD is not set | ||
700 | CONFIG_ROOT_NFS=y | 798 | CONFIG_ROOT_NFS=y |
799 | # CONFIG_NFSD is not set | ||
701 | CONFIG_LOCKD=y | 800 | CONFIG_LOCKD=y |
702 | CONFIG_NFS_COMMON=y | 801 | CONFIG_NFS_COMMON=y |
703 | CONFIG_SUNRPC=y | 802 | CONFIG_SUNRPC=y |
@@ -726,7 +825,16 @@ CONFIG_FRAME_WARN=1024 | |||
726 | # CONFIG_DEBUG_FS is not set | 825 | # CONFIG_DEBUG_FS is not set |
727 | # CONFIG_HEADERS_CHECK is not set | 826 | # CONFIG_HEADERS_CHECK is not set |
728 | # CONFIG_DEBUG_KERNEL is not set | 827 | # CONFIG_DEBUG_KERNEL is not set |
828 | # CONFIG_DEBUG_MEMORY_INIT is not set | ||
829 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||
830 | CONFIG_SYSCTL_SYSCALL_CHECK=y | ||
831 | |||
832 | # | ||
833 | # Tracers | ||
834 | # | ||
835 | # CONFIG_DYNAMIC_PRINTK_DEBUG is not set | ||
729 | # CONFIG_SAMPLES is not set | 836 | # CONFIG_SAMPLES is not set |
837 | CONFIG_HAVE_ARCH_KGDB=y | ||
730 | CONFIG_CMDLINE="" | 838 | CONFIG_CMDLINE="" |
731 | 839 | ||
732 | # | 840 | # |
@@ -734,15 +842,18 @@ CONFIG_CMDLINE="" | |||
734 | # | 842 | # |
735 | # CONFIG_KEYS is not set | 843 | # CONFIG_KEYS is not set |
736 | # CONFIG_SECURITY is not set | 844 | # CONFIG_SECURITY is not set |
845 | # CONFIG_SECURITYFS is not set | ||
846 | # CONFIG_SECURITY_FILE_CAPABILITIES is not set | ||
737 | # CONFIG_CRYPTO is not set | 847 | # CONFIG_CRYPTO is not set |
738 | 848 | ||
739 | # | 849 | # |
740 | # Library routines | 850 | # Library routines |
741 | # | 851 | # |
742 | CONFIG_BITREVERSE=y | 852 | CONFIG_BITREVERSE=y |
743 | # CONFIG_GENERIC_FIND_FIRST_BIT is not set | 853 | CONFIG_GENERIC_FIND_LAST_BIT=y |
744 | # CONFIG_CRC_CCITT is not set | 854 | # CONFIG_CRC_CCITT is not set |
745 | # CONFIG_CRC16 is not set | 855 | # CONFIG_CRC16 is not set |
856 | # CONFIG_CRC_T10DIF is not set | ||
746 | # CONFIG_CRC_ITU_T is not set | 857 | # CONFIG_CRC_ITU_T is not set |
747 | CONFIG_CRC32=y | 858 | CONFIG_CRC32=y |
748 | # CONFIG_CRC7 is not set | 859 | # CONFIG_CRC7 is not set |
diff --git a/arch/mips/configs/emma2rh_defconfig b/arch/mips/configs/markeins_defconfig index fea9bc9865a3..bad8901f8f3c 100644 --- a/arch/mips/configs/emma2rh_defconfig +++ b/arch/mips/configs/markeins_defconfig | |||
@@ -35,7 +35,7 @@ CONFIG_ZONE_DMA=y | |||
35 | # CONFIG_PNX8550_STB810 is not set | 35 | # CONFIG_PNX8550_STB810 is not set |
36 | # CONFIG_MACH_VR41XX is not set | 36 | # CONFIG_MACH_VR41XX is not set |
37 | # CONFIG_PMC_YOSEMITE is not set | 37 | # CONFIG_PMC_YOSEMITE is not set |
38 | CONFIG_MARKEINS=y | 38 | CONFIG_NEC_MARKEINS=y |
39 | # CONFIG_SGI_IP22 is not set | 39 | # CONFIG_SGI_IP22 is not set |
40 | # CONFIG_SGI_IP27 is not set | 40 | # CONFIG_SGI_IP27 is not set |
41 | # CONFIG_SGI_IP32 is not set | 41 | # CONFIG_SGI_IP32 is not set |
@@ -68,7 +68,7 @@ CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y | |||
68 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y | 68 | CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y |
69 | CONFIG_IRQ_CPU=y | 69 | CONFIG_IRQ_CPU=y |
70 | CONFIG_SWAP_IO_SPACE=y | 70 | CONFIG_SWAP_IO_SPACE=y |
71 | CONFIG_EMMA2RH=y | 71 | CONFIG_SOC_EMMA2RH=y |
72 | CONFIG_MIPS_L1_CACHE_SHIFT=5 | 72 | CONFIG_MIPS_L1_CACHE_SHIFT=5 |
73 | 73 | ||
74 | # | 74 | # |
@@ -574,9 +574,9 @@ CONFIG_MTD_CFI_UTIL=y | |||
574 | # | 574 | # |
575 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set | 575 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set |
576 | CONFIG_MTD_PHYSMAP=y | 576 | CONFIG_MTD_PHYSMAP=y |
577 | CONFIG_MTD_PHYSMAP_START=0x1e000000 | 577 | CONFIG_MTD_PHYSMAP_START=0x0 |
578 | CONFIG_MTD_PHYSMAP_LEN=0x02000000 | 578 | CONFIG_MTD_PHYSMAP_LEN=0x0 |
579 | CONFIG_MTD_PHYSMAP_BANKWIDTH=2 | 579 | CONFIG_MTD_PHYSMAP_BANKWIDTH=0 |
580 | # CONFIG_MTD_PLATRAM is not set | 580 | # CONFIG_MTD_PLATRAM is not set |
581 | 581 | ||
582 | # | 582 | # |
diff --git a/arch/mips/configs/rbtx49xx_defconfig b/arch/mips/configs/rbtx49xx_defconfig index 83d5c58662c8..1efe977497dd 100644 --- a/arch/mips/configs/rbtx49xx_defconfig +++ b/arch/mips/configs/rbtx49xx_defconfig | |||
@@ -1,7 +1,7 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.26-rc9 | 3 | # Linux kernel version: 2.6.29-rc7 |
4 | # Fri Jul 11 23:03:21 2008 | 4 | # Wed Mar 4 23:08:06 2009 |
5 | # | 5 | # |
6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
7 | 7 | ||
@@ -18,8 +18,10 @@ CONFIG_MIPS=y | |||
18 | # CONFIG_LEMOTE_FULONG is not set | 18 | # CONFIG_LEMOTE_FULONG is not set |
19 | # CONFIG_MIPS_MALTA is not set | 19 | # CONFIG_MIPS_MALTA is not set |
20 | # CONFIG_MIPS_SIM is not set | 20 | # CONFIG_MIPS_SIM is not set |
21 | # CONFIG_MARKEINS is not set | 21 | # CONFIG_MACH_EMMA is not set |
22 | # CONFIG_MACH_VR41XX is not set | 22 | # CONFIG_MACH_VR41XX is not set |
23 | # CONFIG_NXP_STB220 is not set | ||
24 | # CONFIG_NXP_STB225 is not set | ||
23 | # CONFIG_PNX8550_JBS is not set | 25 | # CONFIG_PNX8550_JBS is not set |
24 | # CONFIG_PNX8550_STB810 is not set | 26 | # CONFIG_PNX8550_STB810 is not set |
25 | # CONFIG_PMC_MSP is not set | 27 | # CONFIG_PMC_MSP is not set |
@@ -39,20 +41,28 @@ CONFIG_MIPS=y | |||
39 | # CONFIG_SNI_RM is not set | 41 | # CONFIG_SNI_RM is not set |
40 | # CONFIG_MACH_TX39XX is not set | 42 | # CONFIG_MACH_TX39XX is not set |
41 | CONFIG_MACH_TX49XX=y | 43 | CONFIG_MACH_TX49XX=y |
44 | # CONFIG_MIKROTIK_RB532 is not set | ||
42 | # CONFIG_WR_PPMC is not set | 45 | # CONFIG_WR_PPMC is not set |
46 | # CONFIG_CAVIUM_OCTEON_SIMULATOR is not set | ||
47 | # CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set | ||
48 | CONFIG_MACH_TXX9=y | ||
43 | CONFIG_TOSHIBA_RBTX4927=y | 49 | CONFIG_TOSHIBA_RBTX4927=y |
44 | CONFIG_TOSHIBA_RBTX4938=y | 50 | CONFIG_TOSHIBA_RBTX4938=y |
51 | CONFIG_TOSHIBA_RBTX4939=y | ||
45 | CONFIG_SOC_TX4927=y | 52 | CONFIG_SOC_TX4927=y |
46 | CONFIG_SOC_TX4938=y | 53 | CONFIG_SOC_TX4938=y |
54 | CONFIG_SOC_TX4939=y | ||
55 | CONFIG_TXX9_7SEGLED=y | ||
47 | # CONFIG_TOSHIBA_FPCIB0 is not set | 56 | # CONFIG_TOSHIBA_FPCIB0 is not set |
48 | CONFIG_PICMG_PCI_BACKPLANE_DEFAULT=y | 57 | CONFIG_PICMG_PCI_BACKPLANE_DEFAULT=y |
49 | 58 | ||
50 | # | 59 | # |
51 | # Multiplex Pin Select | 60 | # Multiplex Pin Select |
52 | # | 61 | # |
53 | CONFIG_TOSHIBA_RBTX4938_MPLEX_PIO58_61=y | 62 | # CONFIG_TOSHIBA_RBTX4938_MPLEX_PIO58_61 is not set |
54 | # CONFIG_TOSHIBA_RBTX4938_MPLEX_NAND is not set | 63 | # CONFIG_TOSHIBA_RBTX4938_MPLEX_NAND is not set |
55 | # CONFIG_TOSHIBA_RBTX4938_MPLEX_ATA is not set | 64 | # CONFIG_TOSHIBA_RBTX4938_MPLEX_ATA is not set |
65 | CONFIG_TOSHIBA_RBTX4938_MPLEX_KEEP=y | ||
56 | CONFIG_PCI_TX4927=y | 66 | CONFIG_PCI_TX4927=y |
57 | CONFIG_RWSEM_GENERIC_SPINLOCK=y | 67 | CONFIG_RWSEM_GENERIC_SPINLOCK=y |
58 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set | 68 | # CONFIG_ARCH_HAS_ILOG2_U32 is not set |
@@ -64,14 +74,18 @@ CONFIG_GENERIC_CALIBRATE_DELAY=y | |||
64 | CONFIG_GENERIC_CLOCKEVENTS=y | 74 | CONFIG_GENERIC_CLOCKEVENTS=y |
65 | CONFIG_GENERIC_TIME=y | 75 | CONFIG_GENERIC_TIME=y |
66 | CONFIG_GENERIC_CMOS_UPDATE=y | 76 | CONFIG_GENERIC_CMOS_UPDATE=y |
67 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | 77 | CONFIG_SCHED_OMIT_FRAME_POINTER=y |
68 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y | 78 | CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y |
79 | CONFIG_CEVT_R4K_LIB=y | ||
69 | CONFIG_CEVT_R4K=y | 80 | CONFIG_CEVT_R4K=y |
70 | CONFIG_CEVT_TXX9=y | 81 | CONFIG_CEVT_TXX9=y |
82 | CONFIG_CSRC_R4K_LIB=y | ||
71 | CONFIG_CSRC_R4K=y | 83 | CONFIG_CSRC_R4K=y |
72 | CONFIG_GPIO_TXX9=y | 84 | CONFIG_GPIO_TXX9=y |
73 | CONFIG_DMA_NONCOHERENT=y | 85 | CONFIG_DMA_NONCOHERENT=y |
74 | CONFIG_DMA_NEED_PCI_MAP_STATE=y | 86 | CONFIG_DMA_NEED_PCI_MAP_STATE=y |
87 | CONFIG_EARLY_PRINTK=y | ||
88 | CONFIG_SYS_HAS_EARLY_PRINTK=y | ||
75 | # CONFIG_HOTPLUG_CPU is not set | 89 | # CONFIG_HOTPLUG_CPU is not set |
76 | # CONFIG_NO_IOPORT is not set | 90 | # CONFIG_NO_IOPORT is not set |
77 | CONFIG_GENERIC_GPIO=y | 91 | CONFIG_GENERIC_GPIO=y |
@@ -100,6 +114,7 @@ CONFIG_MIPS_L1_CACHE_SHIFT=5 | |||
100 | CONFIG_CPU_TX49XX=y | 114 | CONFIG_CPU_TX49XX=y |
101 | # CONFIG_CPU_R5000 is not set | 115 | # CONFIG_CPU_R5000 is not set |
102 | # CONFIG_CPU_R5432 is not set | 116 | # CONFIG_CPU_R5432 is not set |
117 | # CONFIG_CPU_R5500 is not set | ||
103 | # CONFIG_CPU_R6000 is not set | 118 | # CONFIG_CPU_R6000 is not set |
104 | # CONFIG_CPU_NEVADA is not set | 119 | # CONFIG_CPU_NEVADA is not set |
105 | # CONFIG_CPU_R8000 is not set | 120 | # CONFIG_CPU_R8000 is not set |
@@ -107,6 +122,7 @@ CONFIG_CPU_TX49XX=y | |||
107 | # CONFIG_CPU_RM7000 is not set | 122 | # CONFIG_CPU_RM7000 is not set |
108 | # CONFIG_CPU_RM9000 is not set | 123 | # CONFIG_CPU_RM9000 is not set |
109 | # CONFIG_CPU_SB1 is not set | 124 | # CONFIG_CPU_SB1 is not set |
125 | # CONFIG_CPU_CAVIUM_OCTEON is not set | ||
110 | CONFIG_SYS_HAS_CPU_TX49XX=y | 126 | CONFIG_SYS_HAS_CPU_TX49XX=y |
111 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y | 127 | CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y |
112 | CONFIG_SYS_SUPPORTS_64BIT_KERNEL=y | 128 | CONFIG_SYS_SUPPORTS_64BIT_KERNEL=y |
@@ -134,13 +150,12 @@ CONFIG_ARCH_FLATMEM_ENABLE=y | |||
134 | CONFIG_ARCH_POPULATES_NODE_MAP=y | 150 | CONFIG_ARCH_POPULATES_NODE_MAP=y |
135 | CONFIG_FLATMEM=y | 151 | CONFIG_FLATMEM=y |
136 | CONFIG_FLAT_NODE_MEM_MAP=y | 152 | CONFIG_FLAT_NODE_MEM_MAP=y |
137 | # CONFIG_SPARSEMEM_STATIC is not set | ||
138 | # CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set | ||
139 | CONFIG_PAGEFLAGS_EXTENDED=y | 153 | CONFIG_PAGEFLAGS_EXTENDED=y |
140 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 154 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
141 | # CONFIG_RESOURCES_64BIT is not set | 155 | # CONFIG_PHYS_ADDR_T_64BIT is not set |
142 | CONFIG_ZONE_DMA_FLAG=0 | 156 | CONFIG_ZONE_DMA_FLAG=0 |
143 | CONFIG_VIRT_TO_BUS=y | 157 | CONFIG_VIRT_TO_BUS=y |
158 | CONFIG_UNEVICTABLE_LRU=y | ||
144 | CONFIG_TICK_ONESHOT=y | 159 | CONFIG_TICK_ONESHOT=y |
145 | CONFIG_NO_HZ=y | 160 | CONFIG_NO_HZ=y |
146 | CONFIG_HIGH_RES_TIMERS=y | 161 | CONFIG_HIGH_RES_TIMERS=y |
@@ -176,6 +191,15 @@ CONFIG_SYSVIPC_SYSCTL=y | |||
176 | # CONFIG_BSD_PROCESS_ACCT is not set | 191 | # CONFIG_BSD_PROCESS_ACCT is not set |
177 | # CONFIG_TASKSTATS is not set | 192 | # CONFIG_TASKSTATS is not set |
178 | # CONFIG_AUDIT is not set | 193 | # CONFIG_AUDIT is not set |
194 | |||
195 | # | ||
196 | # RCU Subsystem | ||
197 | # | ||
198 | CONFIG_CLASSIC_RCU=y | ||
199 | # CONFIG_TREE_RCU is not set | ||
200 | # CONFIG_PREEMPT_RCU is not set | ||
201 | # CONFIG_TREE_RCU_TRACE is not set | ||
202 | # CONFIG_PREEMPT_RCU_TRACE is not set | ||
179 | CONFIG_IKCONFIG=y | 203 | CONFIG_IKCONFIG=y |
180 | CONFIG_IKCONFIG_PROC=y | 204 | CONFIG_IKCONFIG_PROC=y |
181 | CONFIG_LOG_BUF_SHIFT=14 | 205 | CONFIG_LOG_BUF_SHIFT=14 |
@@ -190,7 +214,6 @@ CONFIG_CC_OPTIMIZE_FOR_SIZE=y | |||
190 | CONFIG_SYSCTL=y | 214 | CONFIG_SYSCTL=y |
191 | CONFIG_EMBEDDED=y | 215 | CONFIG_EMBEDDED=y |
192 | CONFIG_SYSCTL_SYSCALL=y | 216 | CONFIG_SYSCTL_SYSCALL=y |
193 | CONFIG_SYSCTL_SYSCALL_CHECK=y | ||
194 | CONFIG_KALLSYMS=y | 217 | CONFIG_KALLSYMS=y |
195 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | 218 | # CONFIG_KALLSYMS_EXTRA_PASS is not set |
196 | # CONFIG_HOTPLUG is not set | 219 | # CONFIG_HOTPLUG is not set |
@@ -207,30 +230,26 @@ CONFIG_SIGNALFD=y | |||
207 | CONFIG_TIMERFD=y | 230 | CONFIG_TIMERFD=y |
208 | CONFIG_EVENTFD=y | 231 | CONFIG_EVENTFD=y |
209 | CONFIG_SHMEM=y | 232 | CONFIG_SHMEM=y |
233 | CONFIG_AIO=y | ||
210 | CONFIG_VM_EVENT_COUNTERS=y | 234 | CONFIG_VM_EVENT_COUNTERS=y |
235 | CONFIG_PCI_QUIRKS=y | ||
211 | CONFIG_SLAB=y | 236 | CONFIG_SLAB=y |
212 | # CONFIG_SLUB is not set | 237 | # CONFIG_SLUB is not set |
213 | # CONFIG_SLOB is not set | 238 | # CONFIG_SLOB is not set |
214 | # CONFIG_PROFILING is not set | 239 | # CONFIG_PROFILING is not set |
215 | # CONFIG_MARKERS is not set | ||
216 | CONFIG_HAVE_OPROFILE=y | 240 | CONFIG_HAVE_OPROFILE=y |
217 | # CONFIG_HAVE_KPROBES is not set | 241 | # CONFIG_HAVE_GENERIC_DMA_COHERENT is not set |
218 | # CONFIG_HAVE_KRETPROBES is not set | ||
219 | # CONFIG_HAVE_DMA_ATTRS is not set | ||
220 | CONFIG_PROC_PAGE_MONITOR=y | ||
221 | CONFIG_SLABINFO=y | 242 | CONFIG_SLABINFO=y |
222 | # CONFIG_TINY_SHMEM is not set | ||
223 | CONFIG_BASE_SMALL=0 | 243 | CONFIG_BASE_SMALL=0 |
224 | CONFIG_MODULES=y | 244 | CONFIG_MODULES=y |
225 | # CONFIG_MODULE_FORCE_LOAD is not set | 245 | # CONFIG_MODULE_FORCE_LOAD is not set |
226 | # CONFIG_MODULE_UNLOAD is not set | 246 | CONFIG_MODULE_UNLOAD=y |
227 | # CONFIG_MODVERSIONS is not set | 247 | # CONFIG_MODVERSIONS is not set |
228 | # CONFIG_MODULE_SRCVERSION_ALL is not set | 248 | # CONFIG_MODULE_SRCVERSION_ALL is not set |
229 | CONFIG_KMOD=y | ||
230 | CONFIG_BLOCK=y | 249 | CONFIG_BLOCK=y |
231 | # CONFIG_LBD is not set | 250 | # CONFIG_LBD is not set |
232 | # CONFIG_BLK_DEV_IO_TRACE is not set | 251 | # CONFIG_BLK_DEV_IO_TRACE is not set |
233 | # CONFIG_LSF is not set | 252 | # CONFIG_BLK_DEV_INTEGRITY is not set |
234 | 253 | ||
235 | # | 254 | # |
236 | # IO Schedulers | 255 | # IO Schedulers |
@@ -244,7 +263,8 @@ CONFIG_DEFAULT_AS=y | |||
244 | # CONFIG_DEFAULT_CFQ is not set | 263 | # CONFIG_DEFAULT_CFQ is not set |
245 | # CONFIG_DEFAULT_NOOP is not set | 264 | # CONFIG_DEFAULT_NOOP is not set |
246 | CONFIG_DEFAULT_IOSCHED="anticipatory" | 265 | CONFIG_DEFAULT_IOSCHED="anticipatory" |
247 | CONFIG_CLASSIC_RCU=y | 266 | # CONFIG_PROBE_INITRD_HEADER is not set |
267 | # CONFIG_FREEZER is not set | ||
248 | 268 | ||
249 | # | 269 | # |
250 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) | 270 | # Bus options (PCI, PCMCIA, EISA, ISA, TC) |
@@ -254,12 +274,15 @@ CONFIG_PCI=y | |||
254 | CONFIG_PCI_DOMAINS=y | 274 | CONFIG_PCI_DOMAINS=y |
255 | # CONFIG_ARCH_SUPPORTS_MSI is not set | 275 | # CONFIG_ARCH_SUPPORTS_MSI is not set |
256 | # CONFIG_PCI_LEGACY is not set | 276 | # CONFIG_PCI_LEGACY is not set |
277 | # CONFIG_PCI_STUB is not set | ||
257 | CONFIG_MMU=y | 278 | CONFIG_MMU=y |
258 | 279 | ||
259 | # | 280 | # |
260 | # Executable file formats | 281 | # Executable file formats |
261 | # | 282 | # |
262 | CONFIG_BINFMT_ELF=y | 283 | CONFIG_BINFMT_ELF=y |
284 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
285 | # CONFIG_HAVE_AOUT is not set | ||
263 | # CONFIG_BINFMT_MISC is not set | 286 | # CONFIG_BINFMT_MISC is not set |
264 | CONFIG_TRAD_SIGNALS=y | 287 | CONFIG_TRAD_SIGNALS=y |
265 | 288 | ||
@@ -268,15 +291,12 @@ CONFIG_TRAD_SIGNALS=y | |||
268 | # | 291 | # |
269 | CONFIG_ARCH_SUSPEND_POSSIBLE=y | 292 | CONFIG_ARCH_SUSPEND_POSSIBLE=y |
270 | # CONFIG_PM is not set | 293 | # CONFIG_PM is not set |
271 | |||
272 | # | ||
273 | # Networking | ||
274 | # | ||
275 | CONFIG_NET=y | 294 | CONFIG_NET=y |
276 | 295 | ||
277 | # | 296 | # |
278 | # Networking options | 297 | # Networking options |
279 | # | 298 | # |
299 | CONFIG_COMPAT_NET_DEV_OPS=y | ||
280 | CONFIG_PACKET=y | 300 | CONFIG_PACKET=y |
281 | # CONFIG_PACKET_MMAP is not set | 301 | # CONFIG_PACKET_MMAP is not set |
282 | CONFIG_UNIX=y | 302 | CONFIG_UNIX=y |
@@ -318,6 +338,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic" | |||
318 | # CONFIG_IPX is not set | 338 | # CONFIG_IPX is not set |
319 | # CONFIG_ATALK is not set | 339 | # CONFIG_ATALK is not set |
320 | # CONFIG_NET_SCHED is not set | 340 | # CONFIG_NET_SCHED is not set |
341 | # CONFIG_DCB is not set | ||
321 | 342 | ||
322 | # | 343 | # |
323 | # Network testing | 344 | # Network testing |
@@ -327,14 +348,9 @@ CONFIG_DEFAULT_TCP_CONG="cubic" | |||
327 | # CONFIG_CAN is not set | 348 | # CONFIG_CAN is not set |
328 | # CONFIG_IRDA is not set | 349 | # CONFIG_IRDA is not set |
329 | # CONFIG_BT is not set | 350 | # CONFIG_BT is not set |
330 | 351 | # CONFIG_PHONET is not set | |
331 | # | 352 | # CONFIG_WIRELESS is not set |
332 | # Wireless | 353 | # CONFIG_WIMAX is not set |
333 | # | ||
334 | # CONFIG_CFG80211 is not set | ||
335 | # CONFIG_WIRELESS_EXT is not set | ||
336 | # CONFIG_MAC80211 is not set | ||
337 | # CONFIG_IEEE80211 is not set | ||
338 | # CONFIG_RFKILL is not set | 354 | # CONFIG_RFKILL is not set |
339 | 355 | ||
340 | # | 356 | # |
@@ -348,7 +364,90 @@ CONFIG_STANDALONE=y | |||
348 | CONFIG_PREVENT_FIRMWARE_BUILD=y | 364 | CONFIG_PREVENT_FIRMWARE_BUILD=y |
349 | # CONFIG_SYS_HYPERVISOR is not set | 365 | # CONFIG_SYS_HYPERVISOR is not set |
350 | # CONFIG_CONNECTOR is not set | 366 | # CONFIG_CONNECTOR is not set |
351 | # CONFIG_MTD is not set | 367 | CONFIG_MTD=y |
368 | # CONFIG_MTD_DEBUG is not set | ||
369 | # CONFIG_MTD_CONCAT is not set | ||
370 | CONFIG_MTD_PARTITIONS=y | ||
371 | # CONFIG_MTD_TESTS is not set | ||
372 | # CONFIG_MTD_REDBOOT_PARTS is not set | ||
373 | CONFIG_MTD_CMDLINE_PARTS=y | ||
374 | # CONFIG_MTD_AR7_PARTS is not set | ||
375 | |||
376 | # | ||
377 | # User Modules And Translation Layers | ||
378 | # | ||
379 | CONFIG_MTD_CHAR=y | ||
380 | # CONFIG_MTD_BLKDEVS is not set | ||
381 | # CONFIG_MTD_BLOCK is not set | ||
382 | # CONFIG_MTD_BLOCK_RO is not set | ||
383 | # CONFIG_FTL is not set | ||
384 | # CONFIG_NFTL is not set | ||
385 | # CONFIG_INFTL is not set | ||
386 | # CONFIG_RFD_FTL is not set | ||
387 | # CONFIG_SSFDC is not set | ||
388 | # CONFIG_MTD_OOPS is not set | ||
389 | |||
390 | # | ||
391 | # RAM/ROM/Flash chip drivers | ||
392 | # | ||
393 | CONFIG_MTD_CFI=y | ||
394 | CONFIG_MTD_JEDECPROBE=y | ||
395 | CONFIG_MTD_GEN_PROBE=y | ||
396 | # CONFIG_MTD_CFI_ADV_OPTIONS is not set | ||
397 | CONFIG_MTD_MAP_BANK_WIDTH_1=y | ||
398 | CONFIG_MTD_MAP_BANK_WIDTH_2=y | ||
399 | CONFIG_MTD_MAP_BANK_WIDTH_4=y | ||
400 | # CONFIG_MTD_MAP_BANK_WIDTH_8 is not set | ||
401 | # CONFIG_MTD_MAP_BANK_WIDTH_16 is not set | ||
402 | # CONFIG_MTD_MAP_BANK_WIDTH_32 is not set | ||
403 | CONFIG_MTD_CFI_I1=y | ||
404 | CONFIG_MTD_CFI_I2=y | ||
405 | # CONFIG_MTD_CFI_I4 is not set | ||
406 | # CONFIG_MTD_CFI_I8 is not set | ||
407 | # CONFIG_MTD_CFI_INTELEXT is not set | ||
408 | CONFIG_MTD_CFI_AMDSTD=y | ||
409 | # CONFIG_MTD_CFI_STAA is not set | ||
410 | CONFIG_MTD_CFI_UTIL=y | ||
411 | # CONFIG_MTD_RAM is not set | ||
412 | # CONFIG_MTD_ROM is not set | ||
413 | # CONFIG_MTD_ABSENT is not set | ||
414 | |||
415 | # | ||
416 | # Mapping drivers for chip access | ||
417 | # | ||
418 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set | ||
419 | CONFIG_MTD_PHYSMAP=y | ||
420 | # CONFIG_MTD_PHYSMAP_COMPAT is not set | ||
421 | # CONFIG_MTD_INTEL_VR_NOR is not set | ||
422 | # CONFIG_MTD_PLATRAM is not set | ||
423 | |||
424 | # | ||
425 | # Self-contained MTD device drivers | ||
426 | # | ||
427 | # CONFIG_MTD_PMC551 is not set | ||
428 | # CONFIG_MTD_SLRAM is not set | ||
429 | # CONFIG_MTD_PHRAM is not set | ||
430 | # CONFIG_MTD_MTDRAM is not set | ||
431 | # CONFIG_MTD_BLOCK2MTD is not set | ||
432 | |||
433 | # | ||
434 | # Disk-On-Chip Device Drivers | ||
435 | # | ||
436 | # CONFIG_MTD_DOC2000 is not set | ||
437 | # CONFIG_MTD_DOC2001 is not set | ||
438 | # CONFIG_MTD_DOC2001PLUS is not set | ||
439 | # CONFIG_MTD_NAND is not set | ||
440 | # CONFIG_MTD_ONENAND is not set | ||
441 | |||
442 | # | ||
443 | # LPDDR flash memory drivers | ||
444 | # | ||
445 | # CONFIG_MTD_LPDDR is not set | ||
446 | |||
447 | # | ||
448 | # UBI - Unsorted block images | ||
449 | # | ||
450 | # CONFIG_MTD_UBI is not set | ||
352 | # CONFIG_PARPORT is not set | 451 | # CONFIG_PARPORT is not set |
353 | CONFIG_BLK_DEV=y | 452 | CONFIG_BLK_DEV=y |
354 | # CONFIG_BLK_CPQ_DA is not set | 453 | # CONFIG_BLK_CPQ_DA is not set |
@@ -365,9 +464,60 @@ CONFIG_BLK_DEV_RAM_SIZE=8192 | |||
365 | # CONFIG_BLK_DEV_XIP is not set | 464 | # CONFIG_BLK_DEV_XIP is not set |
366 | # CONFIG_CDROM_PKTCDVD is not set | 465 | # CONFIG_CDROM_PKTCDVD is not set |
367 | # CONFIG_ATA_OVER_ETH is not set | 466 | # CONFIG_ATA_OVER_ETH is not set |
467 | # CONFIG_BLK_DEV_HD is not set | ||
368 | # CONFIG_MISC_DEVICES is not set | 468 | # CONFIG_MISC_DEVICES is not set |
369 | CONFIG_HAVE_IDE=y | 469 | CONFIG_HAVE_IDE=y |
370 | # CONFIG_IDE is not set | 470 | CONFIG_IDE=y |
471 | |||
472 | # | ||
473 | # Please see Documentation/ide/ide.txt for help/info on IDE drives | ||
474 | # | ||
475 | CONFIG_IDE_TIMINGS=y | ||
476 | # CONFIG_BLK_DEV_IDE_SATA is not set | ||
477 | CONFIG_IDE_GD=y | ||
478 | CONFIG_IDE_GD_ATA=y | ||
479 | # CONFIG_IDE_GD_ATAPI is not set | ||
480 | # CONFIG_BLK_DEV_IDECD is not set | ||
481 | # CONFIG_BLK_DEV_IDETAPE is not set | ||
482 | # CONFIG_IDE_TASK_IOCTL is not set | ||
483 | CONFIG_IDE_PROC_FS=y | ||
484 | |||
485 | # | ||
486 | # IDE chipset support/bugfixes | ||
487 | # | ||
488 | # CONFIG_IDE_GENERIC is not set | ||
489 | # CONFIG_BLK_DEV_PLATFORM is not set | ||
490 | CONFIG_BLK_DEV_IDEDMA_SFF=y | ||
491 | |||
492 | # | ||
493 | # PCI IDE chipsets support | ||
494 | # | ||
495 | # CONFIG_BLK_DEV_GENERIC is not set | ||
496 | # CONFIG_BLK_DEV_AEC62XX is not set | ||
497 | # CONFIG_BLK_DEV_ALI15X3 is not set | ||
498 | # CONFIG_BLK_DEV_AMD74XX is not set | ||
499 | # CONFIG_BLK_DEV_CMD64X is not set | ||
500 | # CONFIG_BLK_DEV_TRIFLEX is not set | ||
501 | # CONFIG_BLK_DEV_CS5530 is not set | ||
502 | # CONFIG_BLK_DEV_HPT366 is not set | ||
503 | # CONFIG_BLK_DEV_JMICRON is not set | ||
504 | # CONFIG_BLK_DEV_SC1200 is not set | ||
505 | # CONFIG_BLK_DEV_PIIX is not set | ||
506 | # CONFIG_BLK_DEV_IT8172 is not set | ||
507 | # CONFIG_BLK_DEV_IT8213 is not set | ||
508 | # CONFIG_BLK_DEV_IT821X is not set | ||
509 | # CONFIG_BLK_DEV_NS87415 is not set | ||
510 | # CONFIG_BLK_DEV_PDC202XX_OLD is not set | ||
511 | # CONFIG_BLK_DEV_PDC202XX_NEW is not set | ||
512 | # CONFIG_BLK_DEV_SVWKS is not set | ||
513 | # CONFIG_BLK_DEV_SIIMAGE is not set | ||
514 | # CONFIG_BLK_DEV_SLC90E66 is not set | ||
515 | # CONFIG_BLK_DEV_TRM290 is not set | ||
516 | # CONFIG_BLK_DEV_VIA82CXXX is not set | ||
517 | # CONFIG_BLK_DEV_TC86C001 is not set | ||
518 | CONFIG_BLK_DEV_IDE_TX4938=y | ||
519 | CONFIG_BLK_DEV_IDE_TX4939=y | ||
520 | CONFIG_BLK_DEV_IDEDMA=y | ||
371 | 521 | ||
372 | # | 522 | # |
373 | # SCSI device support | 523 | # SCSI device support |
@@ -390,7 +540,6 @@ CONFIG_HAVE_IDE=y | |||
390 | # CONFIG_IEEE1394 is not set | 540 | # CONFIG_IEEE1394 is not set |
391 | # CONFIG_I2O is not set | 541 | # CONFIG_I2O is not set |
392 | CONFIG_NETDEVICES=y | 542 | CONFIG_NETDEVICES=y |
393 | # CONFIG_NETDEVICES_MULTIQUEUE is not set | ||
394 | # CONFIG_DUMMY is not set | 543 | # CONFIG_DUMMY is not set |
395 | # CONFIG_BONDING is not set | 544 | # CONFIG_BONDING is not set |
396 | # CONFIG_EQUALIZER is not set | 545 | # CONFIG_EQUALIZER is not set |
@@ -412,15 +561,19 @@ CONFIG_PHYLIB=y | |||
412 | # CONFIG_BROADCOM_PHY is not set | 561 | # CONFIG_BROADCOM_PHY is not set |
413 | # CONFIG_ICPLUS_PHY is not set | 562 | # CONFIG_ICPLUS_PHY is not set |
414 | # CONFIG_REALTEK_PHY is not set | 563 | # CONFIG_REALTEK_PHY is not set |
564 | # CONFIG_NATIONAL_PHY is not set | ||
565 | # CONFIG_STE10XP is not set | ||
566 | # CONFIG_LSI_ET1011C_PHY is not set | ||
415 | # CONFIG_FIXED_PHY is not set | 567 | # CONFIG_FIXED_PHY is not set |
416 | # CONFIG_MDIO_BITBANG is not set | 568 | # CONFIG_MDIO_BITBANG is not set |
417 | CONFIG_NET_ETHERNET=y | 569 | CONFIG_NET_ETHERNET=y |
418 | # CONFIG_MII is not set | 570 | CONFIG_MII=y |
419 | # CONFIG_AX88796 is not set | 571 | # CONFIG_AX88796 is not set |
420 | # CONFIG_HAPPYMEAL is not set | 572 | # CONFIG_HAPPYMEAL is not set |
421 | # CONFIG_SUNGEM is not set | 573 | # CONFIG_SUNGEM is not set |
422 | # CONFIG_CASSINI is not set | 574 | # CONFIG_CASSINI is not set |
423 | # CONFIG_NET_VENDOR_3COM is not set | 575 | # CONFIG_NET_VENDOR_3COM is not set |
576 | CONFIG_SMC91X=y | ||
424 | # CONFIG_DM9000 is not set | 577 | # CONFIG_DM9000 is not set |
425 | # CONFIG_NET_TULIP is not set | 578 | # CONFIG_NET_TULIP is not set |
426 | # CONFIG_HP100 is not set | 579 | # CONFIG_HP100 is not set |
@@ -429,6 +582,9 @@ CONFIG_NE2000=y | |||
429 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | 582 | # CONFIG_IBM_NEW_EMAC_RGMII is not set |
430 | # CONFIG_IBM_NEW_EMAC_TAH is not set | 583 | # CONFIG_IBM_NEW_EMAC_TAH is not set |
431 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | 584 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set |
585 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
586 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
587 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
432 | CONFIG_NET_PCI=y | 588 | CONFIG_NET_PCI=y |
433 | # CONFIG_PCNET32 is not set | 589 | # CONFIG_PCNET32 is not set |
434 | # CONFIG_AMD8111_ETH is not set | 590 | # CONFIG_AMD8111_ETH is not set |
@@ -436,7 +592,6 @@ CONFIG_NET_PCI=y | |||
436 | # CONFIG_B44 is not set | 592 | # CONFIG_B44 is not set |
437 | # CONFIG_FORCEDETH is not set | 593 | # CONFIG_FORCEDETH is not set |
438 | CONFIG_TC35815=y | 594 | CONFIG_TC35815=y |
439 | # CONFIG_EEPRO100 is not set | ||
440 | # CONFIG_E100 is not set | 595 | # CONFIG_E100 is not set |
441 | # CONFIG_FEALNX is not set | 596 | # CONFIG_FEALNX is not set |
442 | # CONFIG_NATSEMI is not set | 597 | # CONFIG_NATSEMI is not set |
@@ -445,9 +600,11 @@ CONFIG_TC35815=y | |||
445 | # CONFIG_R6040 is not set | 600 | # CONFIG_R6040 is not set |
446 | # CONFIG_SIS900 is not set | 601 | # CONFIG_SIS900 is not set |
447 | # CONFIG_EPIC100 is not set | 602 | # CONFIG_EPIC100 is not set |
603 | # CONFIG_SMSC9420 is not set | ||
448 | # CONFIG_SUNDANCE is not set | 604 | # CONFIG_SUNDANCE is not set |
449 | # CONFIG_TLAN is not set | 605 | # CONFIG_TLAN is not set |
450 | # CONFIG_VIA_RHINE is not set | 606 | # CONFIG_VIA_RHINE is not set |
607 | # CONFIG_ATL2 is not set | ||
451 | # CONFIG_NETDEV_1000 is not set | 608 | # CONFIG_NETDEV_1000 is not set |
452 | # CONFIG_NETDEV_10000 is not set | 609 | # CONFIG_NETDEV_10000 is not set |
453 | # CONFIG_TR is not set | 610 | # CONFIG_TR is not set |
@@ -458,6 +615,10 @@ CONFIG_TC35815=y | |||
458 | # CONFIG_WLAN_PRE80211 is not set | 615 | # CONFIG_WLAN_PRE80211 is not set |
459 | # CONFIG_WLAN_80211 is not set | 616 | # CONFIG_WLAN_80211 is not set |
460 | # CONFIG_IWLWIFI_LEDS is not set | 617 | # CONFIG_IWLWIFI_LEDS is not set |
618 | |||
619 | # | ||
620 | # Enable WiMAX (Networking options) to see the WiMAX drivers | ||
621 | # | ||
461 | # CONFIG_WAN is not set | 622 | # CONFIG_WAN is not set |
462 | # CONFIG_FDDI is not set | 623 | # CONFIG_FDDI is not set |
463 | # CONFIG_PPP is not set | 624 | # CONFIG_PPP is not set |
@@ -502,6 +663,7 @@ CONFIG_SERIAL_TXX9_CONSOLE=y | |||
502 | CONFIG_SERIAL_TXX9_STDSERIAL=y | 663 | CONFIG_SERIAL_TXX9_STDSERIAL=y |
503 | # CONFIG_SERIAL_JSM is not set | 664 | # CONFIG_SERIAL_JSM is not set |
504 | CONFIG_UNIX98_PTYS=y | 665 | CONFIG_UNIX98_PTYS=y |
666 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | ||
505 | CONFIG_LEGACY_PTYS=y | 667 | CONFIG_LEGACY_PTYS=y |
506 | CONFIG_LEGACY_PTY_COUNT=256 | 668 | CONFIG_LEGACY_PTY_COUNT=256 |
507 | # CONFIG_IPMI_HANDLER is not set | 669 | # CONFIG_IPMI_HANDLER is not set |
@@ -517,17 +679,19 @@ CONFIG_SPI_MASTER=y | |||
517 | # | 679 | # |
518 | # SPI Master Controller Drivers | 680 | # SPI Master Controller Drivers |
519 | # | 681 | # |
682 | # CONFIG_SPI_BITBANG is not set | ||
683 | # CONFIG_SPI_GPIO is not set | ||
520 | CONFIG_SPI_TXX9=y | 684 | CONFIG_SPI_TXX9=y |
521 | 685 | ||
522 | # | 686 | # |
523 | # SPI Protocol Masters | 687 | # SPI Protocol Masters |
524 | # | 688 | # |
525 | CONFIG_EEPROM_AT25=y | ||
526 | # CONFIG_SPI_TLE62X0 is not set | 689 | # CONFIG_SPI_TLE62X0 is not set |
527 | CONFIG_HAVE_GPIO_LIB=y | 690 | CONFIG_ARCH_REQUIRE_GPIOLIB=y |
691 | CONFIG_GPIOLIB=y | ||
528 | 692 | ||
529 | # | 693 | # |
530 | # GPIO Support | 694 | # Memory mapped GPIO expanders: |
531 | # | 695 | # |
532 | 696 | ||
533 | # | 697 | # |
@@ -535,8 +699,14 @@ CONFIG_HAVE_GPIO_LIB=y | |||
535 | # | 699 | # |
536 | 700 | ||
537 | # | 701 | # |
702 | # PCI GPIO expanders: | ||
703 | # | ||
704 | # CONFIG_GPIO_BT8XX is not set | ||
705 | |||
706 | # | ||
538 | # SPI GPIO expanders: | 707 | # SPI GPIO expanders: |
539 | # | 708 | # |
709 | # CONFIG_GPIO_MAX7301 is not set | ||
540 | # CONFIG_GPIO_MCP23S08 is not set | 710 | # CONFIG_GPIO_MCP23S08 is not set |
541 | # CONFIG_W1 is not set | 711 | # CONFIG_W1 is not set |
542 | # CONFIG_POWER_SUPPLY is not set | 712 | # CONFIG_POWER_SUPPLY is not set |
@@ -550,6 +720,7 @@ CONFIG_WATCHDOG=y | |||
550 | # Watchdog Device Drivers | 720 | # Watchdog Device Drivers |
551 | # | 721 | # |
552 | # CONFIG_SOFT_WATCHDOG is not set | 722 | # CONFIG_SOFT_WATCHDOG is not set |
723 | # CONFIG_ALIM7101_WDT is not set | ||
553 | CONFIG_TXX9_WDT=m | 724 | CONFIG_TXX9_WDT=m |
554 | 725 | ||
555 | # | 726 | # |
@@ -557,18 +728,21 @@ CONFIG_TXX9_WDT=m | |||
557 | # | 728 | # |
558 | # CONFIG_PCIPCWATCHDOG is not set | 729 | # CONFIG_PCIPCWATCHDOG is not set |
559 | # CONFIG_WDTPCI is not set | 730 | # CONFIG_WDTPCI is not set |
731 | CONFIG_SSB_POSSIBLE=y | ||
560 | 732 | ||
561 | # | 733 | # |
562 | # Sonics Silicon Backplane | 734 | # Sonics Silicon Backplane |
563 | # | 735 | # |
564 | CONFIG_SSB_POSSIBLE=y | ||
565 | # CONFIG_SSB is not set | 736 | # CONFIG_SSB is not set |
566 | 737 | ||
567 | # | 738 | # |
568 | # Multifunction device drivers | 739 | # Multifunction device drivers |
569 | # | 740 | # |
741 | # CONFIG_MFD_CORE is not set | ||
570 | # CONFIG_MFD_SM501 is not set | 742 | # CONFIG_MFD_SM501 is not set |
571 | # CONFIG_HTC_PASIC3 is not set | 743 | # CONFIG_HTC_PASIC3 is not set |
744 | # CONFIG_MFD_TMIO is not set | ||
745 | # CONFIG_REGULATOR is not set | ||
572 | 746 | ||
573 | # | 747 | # |
574 | # Multimedia devices | 748 | # Multimedia devices |
@@ -599,15 +773,27 @@ CONFIG_SSB_POSSIBLE=y | |||
599 | # Display device support | 773 | # Display device support |
600 | # | 774 | # |
601 | # CONFIG_DISPLAY_SUPPORT is not set | 775 | # CONFIG_DISPLAY_SUPPORT is not set |
602 | |||
603 | # | ||
604 | # Sound | ||
605 | # | ||
606 | # CONFIG_SOUND is not set | 776 | # CONFIG_SOUND is not set |
607 | # CONFIG_USB_SUPPORT is not set | 777 | # CONFIG_USB_SUPPORT is not set |
608 | # CONFIG_MMC is not set | 778 | # CONFIG_MMC is not set |
609 | # CONFIG_MEMSTICK is not set | 779 | # CONFIG_MEMSTICK is not set |
610 | # CONFIG_NEW_LEDS is not set | 780 | CONFIG_NEW_LEDS=y |
781 | CONFIG_LEDS_CLASS=y | ||
782 | |||
783 | # | ||
784 | # LED drivers | ||
785 | # | ||
786 | CONFIG_LEDS_GPIO=y | ||
787 | |||
788 | # | ||
789 | # LED Triggers | ||
790 | # | ||
791 | CONFIG_LEDS_TRIGGERS=y | ||
792 | # CONFIG_LEDS_TRIGGER_TIMER is not set | ||
793 | CONFIG_LEDS_TRIGGER_IDE_DISK=y | ||
794 | CONFIG_LEDS_TRIGGER_HEARTBEAT=y | ||
795 | # CONFIG_LEDS_TRIGGER_BACKLIGHT is not set | ||
796 | # CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set | ||
611 | # CONFIG_ACCESSIBILITY is not set | 797 | # CONFIG_ACCESSIBILITY is not set |
612 | # CONFIG_INFINIBAND is not set | 798 | # CONFIG_INFINIBAND is not set |
613 | CONFIG_RTC_LIB=y | 799 | CONFIG_RTC_LIB=y |
@@ -628,35 +814,47 @@ CONFIG_RTC_INTF_DEV_UIE_EMUL=y | |||
628 | # | 814 | # |
629 | # SPI RTC drivers | 815 | # SPI RTC drivers |
630 | # | 816 | # |
817 | # CONFIG_RTC_DRV_M41T94 is not set | ||
818 | # CONFIG_RTC_DRV_DS1305 is not set | ||
819 | # CONFIG_RTC_DRV_DS1390 is not set | ||
631 | # CONFIG_RTC_DRV_MAX6902 is not set | 820 | # CONFIG_RTC_DRV_MAX6902 is not set |
632 | # CONFIG_RTC_DRV_R9701 is not set | 821 | # CONFIG_RTC_DRV_R9701 is not set |
633 | CONFIG_RTC_DRV_RS5C348=y | 822 | CONFIG_RTC_DRV_RS5C348=y |
823 | # CONFIG_RTC_DRV_DS3234 is not set | ||
634 | 824 | ||
635 | # | 825 | # |
636 | # Platform RTC drivers | 826 | # Platform RTC drivers |
637 | # | 827 | # |
638 | # CONFIG_RTC_DRV_CMOS is not set | 828 | # CONFIG_RTC_DRV_CMOS is not set |
829 | # CONFIG_RTC_DRV_DS1286 is not set | ||
639 | # CONFIG_RTC_DRV_DS1511 is not set | 830 | # CONFIG_RTC_DRV_DS1511 is not set |
640 | # CONFIG_RTC_DRV_DS1553 is not set | 831 | # CONFIG_RTC_DRV_DS1553 is not set |
641 | CONFIG_RTC_DRV_DS1742=y | 832 | CONFIG_RTC_DRV_DS1742=y |
642 | # CONFIG_RTC_DRV_STK17TA8 is not set | 833 | # CONFIG_RTC_DRV_STK17TA8 is not set |
643 | # CONFIG_RTC_DRV_M48T86 is not set | 834 | # CONFIG_RTC_DRV_M48T86 is not set |
835 | # CONFIG_RTC_DRV_M48T35 is not set | ||
644 | # CONFIG_RTC_DRV_M48T59 is not set | 836 | # CONFIG_RTC_DRV_M48T59 is not set |
837 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
645 | # CONFIG_RTC_DRV_V3020 is not set | 838 | # CONFIG_RTC_DRV_V3020 is not set |
646 | 839 | ||
647 | # | 840 | # |
648 | # on-CPU RTC drivers | 841 | # on-CPU RTC drivers |
649 | # | 842 | # |
843 | CONFIG_RTC_DRV_TX4939=y | ||
844 | # CONFIG_DMADEVICES is not set | ||
650 | # CONFIG_UIO is not set | 845 | # CONFIG_UIO is not set |
846 | # CONFIG_STAGING is not set | ||
651 | 847 | ||
652 | # | 848 | # |
653 | # File systems | 849 | # File systems |
654 | # | 850 | # |
655 | # CONFIG_EXT2_FS is not set | 851 | # CONFIG_EXT2_FS is not set |
656 | # CONFIG_EXT3_FS is not set | 852 | # CONFIG_EXT3_FS is not set |
853 | # CONFIG_EXT4_FS is not set | ||
657 | # CONFIG_REISERFS_FS is not set | 854 | # CONFIG_REISERFS_FS is not set |
658 | # CONFIG_JFS_FS is not set | 855 | # CONFIG_JFS_FS is not set |
659 | CONFIG_FS_POSIX_ACL=y | 856 | CONFIG_FS_POSIX_ACL=y |
857 | CONFIG_FILE_LOCKING=y | ||
660 | # CONFIG_XFS_FS is not set | 858 | # CONFIG_XFS_FS is not set |
661 | # CONFIG_OCFS2_FS is not set | 859 | # CONFIG_OCFS2_FS is not set |
662 | # CONFIG_DNOTIFY is not set | 860 | # CONFIG_DNOTIFY is not set |
@@ -687,30 +885,19 @@ CONFIG_GENERIC_ACL=y | |||
687 | CONFIG_PROC_FS=y | 885 | CONFIG_PROC_FS=y |
688 | # CONFIG_PROC_KCORE is not set | 886 | # CONFIG_PROC_KCORE is not set |
689 | CONFIG_PROC_SYSCTL=y | 887 | CONFIG_PROC_SYSCTL=y |
888 | CONFIG_PROC_PAGE_MONITOR=y | ||
690 | CONFIG_SYSFS=y | 889 | CONFIG_SYSFS=y |
691 | CONFIG_TMPFS=y | 890 | CONFIG_TMPFS=y |
692 | CONFIG_TMPFS_POSIX_ACL=y | 891 | CONFIG_TMPFS_POSIX_ACL=y |
693 | # CONFIG_HUGETLB_PAGE is not set | 892 | # CONFIG_HUGETLB_PAGE is not set |
694 | # CONFIG_CONFIGFS_FS is not set | 893 | # CONFIG_CONFIGFS_FS is not set |
695 | 894 | # CONFIG_MISC_FILESYSTEMS is not set | |
696 | # | ||
697 | # Miscellaneous filesystems | ||
698 | # | ||
699 | # CONFIG_HFSPLUS_FS is not set | ||
700 | # CONFIG_CRAMFS is not set | ||
701 | # CONFIG_VXFS_FS is not set | ||
702 | # CONFIG_MINIX_FS is not set | ||
703 | # CONFIG_HPFS_FS is not set | ||
704 | # CONFIG_QNX4FS_FS is not set | ||
705 | # CONFIG_ROMFS_FS is not set | ||
706 | # CONFIG_SYSV_FS is not set | ||
707 | # CONFIG_UFS_FS is not set | ||
708 | CONFIG_NETWORK_FILESYSTEMS=y | 895 | CONFIG_NETWORK_FILESYSTEMS=y |
709 | CONFIG_NFS_FS=y | 896 | CONFIG_NFS_FS=y |
710 | CONFIG_NFS_V3=y | 897 | CONFIG_NFS_V3=y |
711 | # CONFIG_NFS_V3_ACL is not set | 898 | # CONFIG_NFS_V3_ACL is not set |
712 | # CONFIG_NFSD is not set | ||
713 | CONFIG_ROOT_NFS=y | 899 | CONFIG_ROOT_NFS=y |
900 | # CONFIG_NFSD is not set | ||
714 | CONFIG_LOCKD=y | 901 | CONFIG_LOCKD=y |
715 | CONFIG_LOCKD_V4=y | 902 | CONFIG_LOCKD_V4=y |
716 | CONFIG_NFS_COMMON=y | 903 | CONFIG_NFS_COMMON=y |
@@ -740,7 +927,16 @@ CONFIG_FRAME_WARN=1024 | |||
740 | CONFIG_DEBUG_FS=y | 927 | CONFIG_DEBUG_FS=y |
741 | # CONFIG_HEADERS_CHECK is not set | 928 | # CONFIG_HEADERS_CHECK is not set |
742 | # CONFIG_DEBUG_KERNEL is not set | 929 | # CONFIG_DEBUG_KERNEL is not set |
930 | # CONFIG_DEBUG_MEMORY_INIT is not set | ||
931 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||
932 | CONFIG_SYSCTL_SYSCALL_CHECK=y | ||
933 | |||
934 | # | ||
935 | # Tracers | ||
936 | # | ||
937 | # CONFIG_DYNAMIC_PRINTK_DEBUG is not set | ||
743 | # CONFIG_SAMPLES is not set | 938 | # CONFIG_SAMPLES is not set |
939 | CONFIG_HAVE_ARCH_KGDB=y | ||
744 | CONFIG_CMDLINE="" | 940 | CONFIG_CMDLINE="" |
745 | 941 | ||
746 | # | 942 | # |
@@ -748,15 +944,18 @@ CONFIG_CMDLINE="" | |||
748 | # | 944 | # |
749 | # CONFIG_KEYS is not set | 945 | # CONFIG_KEYS is not set |
750 | # CONFIG_SECURITY is not set | 946 | # CONFIG_SECURITY is not set |
947 | # CONFIG_SECURITYFS is not set | ||
948 | # CONFIG_SECURITY_FILE_CAPABILITIES is not set | ||
751 | # CONFIG_CRYPTO is not set | 949 | # CONFIG_CRYPTO is not set |
752 | 950 | ||
753 | # | 951 | # |
754 | # Library routines | 952 | # Library routines |
755 | # | 953 | # |
756 | CONFIG_BITREVERSE=y | 954 | CONFIG_BITREVERSE=y |
757 | # CONFIG_GENERIC_FIND_FIRST_BIT is not set | 955 | CONFIG_GENERIC_FIND_LAST_BIT=y |
758 | # CONFIG_CRC_CCITT is not set | 956 | # CONFIG_CRC_CCITT is not set |
759 | # CONFIG_CRC16 is not set | 957 | # CONFIG_CRC16 is not set |
958 | # CONFIG_CRC_T10DIF is not set | ||
760 | # CONFIG_CRC_ITU_T is not set | 959 | # CONFIG_CRC_ITU_T is not set |
761 | CONFIG_CRC32=y | 960 | CONFIG_CRC32=y |
762 | # CONFIG_CRC7 is not set | 961 | # CONFIG_CRC7 is not set |
diff --git a/arch/mips/emma/Kconfig b/arch/mips/emma/Kconfig deleted file mode 100644 index 9669c72123c9..000000000000 --- a/arch/mips/emma/Kconfig +++ /dev/null | |||
@@ -1,29 +0,0 @@ | |||
1 | choice | ||
2 | prompt "Machine type" | ||
3 | depends on MACH_EMMA | ||
4 | default NEC_MARKEINS | ||
5 | |||
6 | config NEC_MARKEINS | ||
7 | bool "NEC EMMA2RH Mark-eins board" | ||
8 | select SOC_EMMA2RH | ||
9 | select HW_HAS_PCI | ||
10 | help | ||
11 | This enables support for the NEC Electronics Mark-eins boards. | ||
12 | |||
13 | endchoice | ||
14 | |||
15 | config SOC_EMMA2RH | ||
16 | bool | ||
17 | select SOC_EMMA | ||
18 | select SYS_HAS_CPU_R5500 | ||
19 | select SYS_SUPPORTS_32BIT_KERNEL | ||
20 | select SYS_SUPPORTS_64BIT_KERNEL | ||
21 | |||
22 | config SOC_EMMA | ||
23 | bool | ||
24 | select CEVT_R4K | ||
25 | select CSRC_R4K | ||
26 | select DMA_NONCOHERENT | ||
27 | select IRQ_CPU | ||
28 | select SWAP_IO_SPACE | ||
29 | select SYS_SUPPORTS_BIG_ENDIAN | ||
diff --git a/arch/mips/emma/markeins/platform.c b/arch/mips/emma/markeins/platform.c index 88e87f6b3442..d5f47e4f0d18 100644 --- a/arch/mips/emma/markeins/platform.c +++ b/arch/mips/emma/markeins/platform.c | |||
@@ -141,13 +141,6 @@ static struct platform_device serial_emma = { | |||
141 | }, | 141 | }, |
142 | }; | 142 | }; |
143 | 143 | ||
144 | static struct platform_device *devices[] = { | ||
145 | &i2c_emma_devices[0], | ||
146 | &i2c_emma_devices[1], | ||
147 | &i2c_emma_devices[2], | ||
148 | &serial_emma, | ||
149 | }; | ||
150 | |||
151 | static struct mtd_partition markeins_parts[] = { | 144 | static struct mtd_partition markeins_parts[] = { |
152 | [0] = { | 145 | [0] = { |
153 | .name = "RootFS", | 146 | .name = "RootFS", |
@@ -181,11 +174,39 @@ static struct mtd_partition markeins_parts[] = { | |||
181 | }, | 174 | }, |
182 | }; | 175 | }; |
183 | 176 | ||
177 | static struct physmap_flash_data markeins_flash_data = { | ||
178 | .width = 2, | ||
179 | .nr_parts = ARRAY_SIZE(markeins_parts), | ||
180 | .parts = markeins_parts | ||
181 | }; | ||
182 | |||
183 | static struct resource markeins_flash_resource = { | ||
184 | .start = 0x1e000000, | ||
185 | .end = 0x02000000, | ||
186 | .flags = IORESOURCE_MEM | ||
187 | }; | ||
188 | |||
189 | static struct platform_device markeins_flash_device = { | ||
190 | .name = "physmap-flash", | ||
191 | .id = 0, | ||
192 | .dev = { | ||
193 | .platform_data = &markeins_flash_data, | ||
194 | }, | ||
195 | .num_resources = 1, | ||
196 | .resource = &markeins_flash_resource, | ||
197 | }; | ||
198 | |||
199 | static struct platform_device *devices[] = { | ||
200 | i2c_emma_devices, | ||
201 | i2c_emma_devices + 1, | ||
202 | i2c_emma_devices + 2, | ||
203 | &serial_emma, | ||
204 | &markeins_flash_device, | ||
205 | }; | ||
206 | |||
184 | static int __init platform_devices_setup(void) | 207 | static int __init platform_devices_setup(void) |
185 | { | 208 | { |
186 | physmap_set_partitions(markeins_parts, ARRAY_SIZE(markeins_parts)); | ||
187 | return platform_add_devices(devices, ARRAY_SIZE(devices)); | 209 | return platform_add_devices(devices, ARRAY_SIZE(devices)); |
188 | } | 210 | } |
189 | 211 | ||
190 | arch_initcall(platform_devices_setup); | 212 | arch_initcall(platform_devices_setup); |
191 | |||
diff --git a/arch/mips/include/asm/compat.h b/arch/mips/include/asm/compat.h index ac5d541368e9..6c5b40905dd6 100644 --- a/arch/mips/include/asm/compat.h +++ b/arch/mips/include/asm/compat.h | |||
@@ -3,6 +3,8 @@ | |||
3 | /* | 3 | /* |
4 | * Architecture specific compatibility types | 4 | * Architecture specific compatibility types |
5 | */ | 5 | */ |
6 | #include <linux/seccomp.h> | ||
7 | #include <linux/thread_info.h> | ||
6 | #include <linux/types.h> | 8 | #include <linux/types.h> |
7 | #include <asm/page.h> | 9 | #include <asm/page.h> |
8 | #include <asm/ptrace.h> | 10 | #include <asm/ptrace.h> |
@@ -218,4 +220,9 @@ struct compat_shmid64_ds { | |||
218 | compat_ulong_t __unused2; | 220 | compat_ulong_t __unused2; |
219 | }; | 221 | }; |
220 | 222 | ||
223 | static inline int is_compat_task(void) | ||
224 | { | ||
225 | return test_thread_flag(TIF_32BIT); | ||
226 | } | ||
227 | |||
221 | #endif /* _ASM_COMPAT_H */ | 228 | #endif /* _ASM_COMPAT_H */ |
diff --git a/arch/mips/include/asm/hazards.h b/arch/mips/include/asm/hazards.h index 43baed16a109..134e1fc8f4d6 100644 --- a/arch/mips/include/asm/hazards.h +++ b/arch/mips/include/asm/hazards.h | |||
@@ -138,7 +138,8 @@ do { \ | |||
138 | __instruction_hazard(); \ | 138 | __instruction_hazard(); \ |
139 | } while (0) | 139 | } while (0) |
140 | 140 | ||
141 | #elif defined(CONFIG_CPU_R10000) || defined(CONFIG_CPU_CAVIUM_OCTEON) | 141 | #elif defined(CONFIG_CPU_R10000) || defined(CONFIG_CPU_CAVIUM_OCTEON) || \ |
142 | defined(CONFIG_CPU_R5500) | ||
142 | 143 | ||
143 | /* | 144 | /* |
144 | * R10000 rocks - all hazards handled in hardware, so this becomes a nobrainer. | 145 | * R10000 rocks - all hazards handled in hardware, so this becomes a nobrainer. |
diff --git a/arch/mips/include/asm/prefetch.h b/arch/mips/include/asm/prefetch.h index 17850834ccb0..a56594f360ee 100644 --- a/arch/mips/include/asm/prefetch.h +++ b/arch/mips/include/asm/prefetch.h | |||
@@ -26,7 +26,7 @@ | |||
26 | * Pref_WriteBackInvalidate is a nop and Pref_PrepareForStore is broken in | 26 | * Pref_WriteBackInvalidate is a nop and Pref_PrepareForStore is broken in |
27 | * current versions due to erratum G105. | 27 | * current versions due to erratum G105. |
28 | * | 28 | * |
29 | * VR7701 only implements the Load prefetch. | 29 | * VR5500 (including VR5701 and VR7701) only implement load prefetch. |
30 | * | 30 | * |
31 | * Finally MIPS32 and MIPS64 implement all of the following hints. | 31 | * Finally MIPS32 and MIPS64 implement all of the following hints. |
32 | */ | 32 | */ |
diff --git a/arch/mips/include/asm/seccomp.h b/arch/mips/include/asm/seccomp.h index a6772e9507f5..ae6306ebdcad 100644 --- a/arch/mips/include/asm/seccomp.h +++ b/arch/mips/include/asm/seccomp.h | |||
@@ -15,8 +15,6 @@ | |||
15 | */ | 15 | */ |
16 | #ifdef CONFIG_MIPS32_O32 | 16 | #ifdef CONFIG_MIPS32_O32 |
17 | 17 | ||
18 | #define TIF_32BIT TIF_32BIT_REGS | ||
19 | |||
20 | #define __NR_seccomp_read_32 4003 | 18 | #define __NR_seccomp_read_32 4003 |
21 | #define __NR_seccomp_write_32 4004 | 19 | #define __NR_seccomp_write_32 4004 |
22 | #define __NR_seccomp_exit_32 4001 | 20 | #define __NR_seccomp_exit_32 4001 |
@@ -24,8 +22,6 @@ | |||
24 | 22 | ||
25 | #elif defined(CONFIG_MIPS32_N32) | 23 | #elif defined(CONFIG_MIPS32_N32) |
26 | 24 | ||
27 | #define TIF_32BIT _TIF_32BIT_ADDR | ||
28 | |||
29 | #define __NR_seccomp_read_32 6000 | 25 | #define __NR_seccomp_read_32 6000 |
30 | #define __NR_seccomp_write_32 6001 | 26 | #define __NR_seccomp_write_32 6001 |
31 | #define __NR_seccomp_exit_32 6058 | 27 | #define __NR_seccomp_exit_32 6058 |
diff --git a/arch/mips/include/asm/thread_info.h b/arch/mips/include/asm/thread_info.h index 3f76de73c943..676aa2ae1913 100644 --- a/arch/mips/include/asm/thread_info.h +++ b/arch/mips/include/asm/thread_info.h | |||
@@ -127,6 +127,12 @@ register struct thread_info *__current_thread_info __asm__("$28"); | |||
127 | #define TIF_LOAD_WATCH 25 /* If set, load watch registers */ | 127 | #define TIF_LOAD_WATCH 25 /* If set, load watch registers */ |
128 | #define TIF_SYSCALL_TRACE 31 /* syscall trace active */ | 128 | #define TIF_SYSCALL_TRACE 31 /* syscall trace active */ |
129 | 129 | ||
130 | #ifdef CONFIG_MIPS32_O32 | ||
131 | #define TIF_32BIT TIF_32BIT_REGS | ||
132 | #elif defined(CONFIG_MIPS32_N32) | ||
133 | #define TIF_32BIT _TIF_32BIT_ADDR | ||
134 | #endif /* CONFIG_MIPS32_O32 */ | ||
135 | |||
130 | #define _TIF_SYSCALL_TRACE (1<<TIF_SYSCALL_TRACE) | 136 | #define _TIF_SYSCALL_TRACE (1<<TIF_SYSCALL_TRACE) |
131 | #define _TIF_SIGPENDING (1<<TIF_SIGPENDING) | 137 | #define _TIF_SIGPENDING (1<<TIF_SIGPENDING) |
132 | #define _TIF_NEED_RESCHED (1<<TIF_NEED_RESCHED) | 138 | #define _TIF_NEED_RESCHED (1<<TIF_NEED_RESCHED) |
diff --git a/arch/mips/kernel/cpu-probe.c b/arch/mips/kernel/cpu-probe.c index a7162a4484cf..1bdbcad3bb74 100644 --- a/arch/mips/kernel/cpu-probe.c +++ b/arch/mips/kernel/cpu-probe.c | |||
@@ -149,6 +149,7 @@ void __init check_wait(void) | |||
149 | case CPU_R4650: | 149 | case CPU_R4650: |
150 | case CPU_R4700: | 150 | case CPU_R4700: |
151 | case CPU_R5000: | 151 | case CPU_R5000: |
152 | case CPU_R5500: | ||
152 | case CPU_NEVADA: | 153 | case CPU_NEVADA: |
153 | case CPU_4KC: | 154 | case CPU_4KC: |
154 | case CPU_4KEC: | 155 | case CPU_4KEC: |
diff --git a/arch/mips/kernel/linux32.c b/arch/mips/kernel/linux32.c index 2f8452b404c7..1a86f84fa947 100644 --- a/arch/mips/kernel/linux32.c +++ b/arch/mips/kernel/linux32.c | |||
@@ -235,7 +235,7 @@ SYSCALL_DEFINE6(32_ipc, u32, call, long, first, long, second, long, third, | |||
235 | #else | 235 | #else |
236 | 236 | ||
237 | SYSCALL_DEFINE6(32_ipc, u32, call, int, first, int, second, int, third, | 237 | SYSCALL_DEFINE6(32_ipc, u32, call, int, first, int, second, int, third, |
238 | u32, ptr, u32 fifth) | 238 | u32, ptr, u32, fifth) |
239 | { | 239 | { |
240 | return -ENOSYS; | 240 | return -ENOSYS; |
241 | } | 241 | } |
diff --git a/arch/mips/mm/page.c b/arch/mips/mm/page.c index 1417c6494858..48060c635acd 100644 --- a/arch/mips/mm/page.c +++ b/arch/mips/mm/page.c | |||
@@ -172,8 +172,9 @@ static void __cpuinit set_prefetch_parameters(void) | |||
172 | */ | 172 | */ |
173 | cache_line_size = cpu_dcache_line_size(); | 173 | cache_line_size = cpu_dcache_line_size(); |
174 | switch (current_cpu_type()) { | 174 | switch (current_cpu_type()) { |
175 | case CPU_R5500: | ||
175 | case CPU_TX49XX: | 176 | case CPU_TX49XX: |
176 | /* TX49 supports only Pref_Load */ | 177 | /* These processors only support the Pref_Load. */ |
177 | pref_bias_copy_load = 256; | 178 | pref_bias_copy_load = 256; |
178 | break; | 179 | break; |
179 | 180 | ||
diff --git a/arch/mips/mm/tlbex.c b/arch/mips/mm/tlbex.c index 42942038d0fd..f335cf6cdd78 100644 --- a/arch/mips/mm/tlbex.c +++ b/arch/mips/mm/tlbex.c | |||
@@ -318,6 +318,7 @@ static void __cpuinit build_tlb_write_entry(u32 **p, struct uasm_label **l, | |||
318 | case CPU_BCM4710: | 318 | case CPU_BCM4710: |
319 | case CPU_LOONGSON2: | 319 | case CPU_LOONGSON2: |
320 | case CPU_CAVIUM_OCTEON: | 320 | case CPU_CAVIUM_OCTEON: |
321 | case CPU_R5500: | ||
321 | if (m4kc_tlbp_war()) | 322 | if (m4kc_tlbp_war()) |
322 | uasm_i_nop(p); | 323 | uasm_i_nop(p); |
323 | tlbw(p); | 324 | tlbw(p); |
diff --git a/arch/parisc/configs/712_defconfig b/arch/parisc/configs/712_defconfig index 9fc96e727165..bf34a28895fa 100644 --- a/arch/parisc/configs/712_defconfig +++ b/arch/parisc/configs/712_defconfig | |||
@@ -1,7 +1,7 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.23 | 3 | # Linux kernel version: 2.6.29-rc8 |
4 | # Fri Oct 12 21:00:07 2007 | 4 | # Fri Mar 13 01:32:55 2009 |
5 | # | 5 | # |
6 | CONFIG_PARISC=y | 6 | CONFIG_PARISC=y |
7 | CONFIG_MMU=y | 7 | CONFIG_MMU=y |
@@ -33,17 +33,35 @@ CONFIG_SYSVIPC_SYSCTL=y | |||
33 | CONFIG_POSIX_MQUEUE=y | 33 | CONFIG_POSIX_MQUEUE=y |
34 | # CONFIG_BSD_PROCESS_ACCT is not set | 34 | # CONFIG_BSD_PROCESS_ACCT is not set |
35 | # CONFIG_TASKSTATS is not set | 35 | # CONFIG_TASKSTATS is not set |
36 | # CONFIG_USER_NS is not set | ||
37 | # CONFIG_AUDIT is not set | 36 | # CONFIG_AUDIT is not set |
37 | |||
38 | # | ||
39 | # RCU Subsystem | ||
40 | # | ||
41 | CONFIG_CLASSIC_RCU=y | ||
42 | # CONFIG_TREE_RCU is not set | ||
43 | # CONFIG_PREEMPT_RCU is not set | ||
44 | # CONFIG_TREE_RCU_TRACE is not set | ||
45 | # CONFIG_PREEMPT_RCU_TRACE is not set | ||
38 | CONFIG_IKCONFIG=y | 46 | CONFIG_IKCONFIG=y |
39 | CONFIG_IKCONFIG_PROC=y | 47 | CONFIG_IKCONFIG_PROC=y |
40 | CONFIG_LOG_BUF_SHIFT=16 | 48 | CONFIG_LOG_BUF_SHIFT=16 |
49 | # CONFIG_GROUP_SCHED is not set | ||
50 | # CONFIG_CGROUPS is not set | ||
41 | CONFIG_SYSFS_DEPRECATED=y | 51 | CONFIG_SYSFS_DEPRECATED=y |
52 | CONFIG_SYSFS_DEPRECATED_V2=y | ||
42 | # CONFIG_RELAY is not set | 53 | # CONFIG_RELAY is not set |
54 | CONFIG_NAMESPACES=y | ||
55 | # CONFIG_UTS_NS is not set | ||
56 | # CONFIG_IPC_NS is not set | ||
57 | # CONFIG_USER_NS is not set | ||
58 | # CONFIG_PID_NS is not set | ||
59 | # CONFIG_NET_NS is not set | ||
43 | CONFIG_BLK_DEV_INITRD=y | 60 | CONFIG_BLK_DEV_INITRD=y |
44 | CONFIG_INITRAMFS_SOURCE="" | 61 | CONFIG_INITRAMFS_SOURCE="" |
45 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | 62 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y |
46 | CONFIG_SYSCTL=y | 63 | CONFIG_SYSCTL=y |
64 | CONFIG_ANON_INODES=y | ||
47 | # CONFIG_EMBEDDED is not set | 65 | # CONFIG_EMBEDDED is not set |
48 | CONFIG_SYSCTL_SYSCALL=y | 66 | CONFIG_SYSCTL_SYSCALL=y |
49 | CONFIG_KALLSYMS=y | 67 | CONFIG_KALLSYMS=y |
@@ -55,29 +73,38 @@ CONFIG_BUG=y | |||
55 | CONFIG_ELF_CORE=y | 73 | CONFIG_ELF_CORE=y |
56 | CONFIG_BASE_FULL=y | 74 | CONFIG_BASE_FULL=y |
57 | CONFIG_FUTEX=y | 75 | CONFIG_FUTEX=y |
58 | CONFIG_ANON_INODES=y | ||
59 | CONFIG_EPOLL=y | 76 | CONFIG_EPOLL=y |
60 | CONFIG_SIGNALFD=y | 77 | CONFIG_SIGNALFD=y |
78 | CONFIG_TIMERFD=y | ||
61 | CONFIG_EVENTFD=y | 79 | CONFIG_EVENTFD=y |
62 | CONFIG_SHMEM=y | 80 | CONFIG_SHMEM=y |
81 | CONFIG_AIO=y | ||
63 | CONFIG_VM_EVENT_COUNTERS=y | 82 | CONFIG_VM_EVENT_COUNTERS=y |
83 | CONFIG_COMPAT_BRK=y | ||
64 | CONFIG_SLAB=y | 84 | CONFIG_SLAB=y |
65 | # CONFIG_SLUB is not set | 85 | # CONFIG_SLUB is not set |
66 | # CONFIG_SLOB is not set | 86 | # CONFIG_SLOB is not set |
87 | CONFIG_PROFILING=y | ||
88 | CONFIG_TRACEPOINTS=y | ||
89 | # CONFIG_MARKERS is not set | ||
90 | CONFIG_OPROFILE=m | ||
91 | CONFIG_HAVE_OPROFILE=y | ||
92 | # CONFIG_HAVE_GENERIC_DMA_COHERENT is not set | ||
93 | CONFIG_SLABINFO=y | ||
67 | CONFIG_RT_MUTEXES=y | 94 | CONFIG_RT_MUTEXES=y |
68 | # CONFIG_TINY_SHMEM is not set | ||
69 | CONFIG_BASE_SMALL=0 | 95 | CONFIG_BASE_SMALL=0 |
70 | CONFIG_MODULES=y | 96 | CONFIG_MODULES=y |
97 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
71 | CONFIG_MODULE_UNLOAD=y | 98 | CONFIG_MODULE_UNLOAD=y |
72 | CONFIG_MODULE_FORCE_UNLOAD=y | 99 | CONFIG_MODULE_FORCE_UNLOAD=y |
73 | # CONFIG_MODVERSIONS is not set | 100 | # CONFIG_MODVERSIONS is not set |
74 | # CONFIG_MODULE_SRCVERSION_ALL is not set | 101 | # CONFIG_MODULE_SRCVERSION_ALL is not set |
75 | CONFIG_KMOD=y | 102 | CONFIG_INIT_ALL_POSSIBLE=y |
76 | CONFIG_BLOCK=y | 103 | CONFIG_BLOCK=y |
77 | # CONFIG_LBD is not set | 104 | # CONFIG_LBD is not set |
78 | # CONFIG_BLK_DEV_IO_TRACE is not set | 105 | # CONFIG_BLK_DEV_IO_TRACE is not set |
79 | # CONFIG_LSF is not set | ||
80 | # CONFIG_BLK_DEV_BSG is not set | 106 | # CONFIG_BLK_DEV_BSG is not set |
107 | # CONFIG_BLK_DEV_INTEGRITY is not set | ||
81 | 108 | ||
82 | # | 109 | # |
83 | # IO Schedulers | 110 | # IO Schedulers |
@@ -91,6 +118,7 @@ CONFIG_DEFAULT_AS=y | |||
91 | # CONFIG_DEFAULT_CFQ is not set | 118 | # CONFIG_DEFAULT_CFQ is not set |
92 | # CONFIG_DEFAULT_NOOP is not set | 119 | # CONFIG_DEFAULT_NOOP is not set |
93 | CONFIG_DEFAULT_IOSCHED="anticipatory" | 120 | CONFIG_DEFAULT_IOSCHED="anticipatory" |
121 | # CONFIG_FREEZER is not set | ||
94 | 122 | ||
95 | # | 123 | # |
96 | # Processor type and features | 124 | # Processor type and features |
@@ -114,17 +142,19 @@ CONFIG_HZ_250=y | |||
114 | # CONFIG_HZ_300 is not set | 142 | # CONFIG_HZ_300 is not set |
115 | # CONFIG_HZ_1000 is not set | 143 | # CONFIG_HZ_1000 is not set |
116 | CONFIG_HZ=250 | 144 | CONFIG_HZ=250 |
145 | # CONFIG_SCHED_HRTICK is not set | ||
117 | CONFIG_SELECT_MEMORY_MODEL=y | 146 | CONFIG_SELECT_MEMORY_MODEL=y |
118 | CONFIG_FLATMEM_MANUAL=y | 147 | CONFIG_FLATMEM_MANUAL=y |
119 | # CONFIG_DISCONTIGMEM_MANUAL is not set | 148 | # CONFIG_DISCONTIGMEM_MANUAL is not set |
120 | # CONFIG_SPARSEMEM_MANUAL is not set | 149 | # CONFIG_SPARSEMEM_MANUAL is not set |
121 | CONFIG_FLATMEM=y | 150 | CONFIG_FLATMEM=y |
122 | CONFIG_FLAT_NODE_MEM_MAP=y | 151 | CONFIG_FLAT_NODE_MEM_MAP=y |
123 | # CONFIG_SPARSEMEM_STATIC is not set | 152 | CONFIG_PAGEFLAGS_EXTENDED=y |
124 | CONFIG_SPLIT_PTLOCK_CPUS=4096 | 153 | CONFIG_SPLIT_PTLOCK_CPUS=4096 |
125 | # CONFIG_RESOURCES_64BIT is not set | 154 | # CONFIG_PHYS_ADDR_T_64BIT is not set |
126 | CONFIG_ZONE_DMA_FLAG=0 | 155 | CONFIG_ZONE_DMA_FLAG=0 |
127 | CONFIG_VIRT_TO_BUS=y | 156 | CONFIG_VIRT_TO_BUS=y |
157 | CONFIG_UNEVICTABLE_LRU=y | ||
128 | # CONFIG_HPUX is not set | 158 | # CONFIG_HPUX is not set |
129 | 159 | ||
130 | # | 160 | # |
@@ -138,10 +168,6 @@ CONFIG_GSC_LASI=y | |||
138 | # CONFIG_EISA is not set | 168 | # CONFIG_EISA is not set |
139 | # CONFIG_PCI is not set | 169 | # CONFIG_PCI is not set |
140 | # CONFIG_ARCH_SUPPORTS_MSI is not set | 170 | # CONFIG_ARCH_SUPPORTS_MSI is not set |
141 | |||
142 | # | ||
143 | # PCCARD (PCMCIA/CardBus) support | ||
144 | # | ||
145 | # CONFIG_PCCARD is not set | 171 | # CONFIG_PCCARD is not set |
146 | 172 | ||
147 | # | 173 | # |
@@ -156,16 +182,15 @@ CONFIG_PDC_STABLE=y | |||
156 | # Executable file formats | 182 | # Executable file formats |
157 | # | 183 | # |
158 | CONFIG_BINFMT_ELF=y | 184 | CONFIG_BINFMT_ELF=y |
185 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
186 | # CONFIG_HAVE_AOUT is not set | ||
159 | CONFIG_BINFMT_MISC=m | 187 | CONFIG_BINFMT_MISC=m |
160 | |||
161 | # | ||
162 | # Networking | ||
163 | # | ||
164 | CONFIG_NET=y | 188 | CONFIG_NET=y |
165 | 189 | ||
166 | # | 190 | # |
167 | # Networking options | 191 | # Networking options |
168 | # | 192 | # |
193 | CONFIG_COMPAT_NET_DEV_OPS=y | ||
169 | CONFIG_PACKET=y | 194 | CONFIG_PACKET=y |
170 | CONFIG_PACKET_MMAP=y | 195 | CONFIG_PACKET_MMAP=y |
171 | CONFIG_UNIX=y | 196 | CONFIG_UNIX=y |
@@ -173,6 +198,7 @@ CONFIG_XFRM=y | |||
173 | CONFIG_XFRM_USER=m | 198 | CONFIG_XFRM_USER=m |
174 | # CONFIG_XFRM_SUB_POLICY is not set | 199 | # CONFIG_XFRM_SUB_POLICY is not set |
175 | # CONFIG_XFRM_MIGRATE is not set | 200 | # CONFIG_XFRM_MIGRATE is not set |
201 | # CONFIG_XFRM_STATISTICS is not set | ||
176 | CONFIG_NET_KEY=m | 202 | CONFIG_NET_KEY=m |
177 | # CONFIG_NET_KEY_MIGRATE is not set | 203 | # CONFIG_NET_KEY_MIGRATE is not set |
178 | CONFIG_INET=y | 204 | CONFIG_INET=y |
@@ -203,25 +229,25 @@ CONFIG_INET_TCP_DIAG=m | |||
203 | CONFIG_TCP_CONG_CUBIC=y | 229 | CONFIG_TCP_CONG_CUBIC=y |
204 | CONFIG_DEFAULT_TCP_CONG="cubic" | 230 | CONFIG_DEFAULT_TCP_CONG="cubic" |
205 | # CONFIG_TCP_MD5SIG is not set | 231 | # CONFIG_TCP_MD5SIG is not set |
206 | # CONFIG_IP_VS is not set | ||
207 | # CONFIG_IPV6 is not set | 232 | # CONFIG_IPV6 is not set |
208 | # CONFIG_INET6_XFRM_TUNNEL is not set | ||
209 | # CONFIG_INET6_TUNNEL is not set | ||
210 | # CONFIG_NETWORK_SECMARK is not set | 233 | # CONFIG_NETWORK_SECMARK is not set |
211 | CONFIG_NETFILTER=y | 234 | CONFIG_NETFILTER=y |
212 | # CONFIG_NETFILTER_DEBUG is not set | 235 | # CONFIG_NETFILTER_DEBUG is not set |
236 | CONFIG_NETFILTER_ADVANCED=y | ||
213 | 237 | ||
214 | # | 238 | # |
215 | # Core Netfilter Configuration | 239 | # Core Netfilter Configuration |
216 | # | 240 | # |
217 | # CONFIG_NETFILTER_NETLINK is not set | 241 | # CONFIG_NETFILTER_NETLINK_QUEUE is not set |
218 | # CONFIG_NF_CONNTRACK_ENABLED is not set | 242 | # CONFIG_NETFILTER_NETLINK_LOG is not set |
219 | # CONFIG_NF_CONNTRACK is not set | 243 | # CONFIG_NF_CONNTRACK is not set |
220 | # CONFIG_NETFILTER_XTABLES is not set | 244 | # CONFIG_NETFILTER_XTABLES is not set |
245 | # CONFIG_IP_VS is not set | ||
221 | 246 | ||
222 | # | 247 | # |
223 | # IP: Netfilter Configuration | 248 | # IP: Netfilter Configuration |
224 | # | 249 | # |
250 | # CONFIG_NF_DEFRAG_IPV4 is not set | ||
225 | CONFIG_IP_NF_QUEUE=m | 251 | CONFIG_IP_NF_QUEUE=m |
226 | # CONFIG_IP_NF_IPTABLES is not set | 252 | # CONFIG_IP_NF_IPTABLES is not set |
227 | # CONFIG_IP_NF_ARPTABLES is not set | 253 | # CONFIG_IP_NF_ARPTABLES is not set |
@@ -230,6 +256,7 @@ CONFIG_IP_NF_QUEUE=m | |||
230 | # CONFIG_TIPC is not set | 256 | # CONFIG_TIPC is not set |
231 | # CONFIG_ATM is not set | 257 | # CONFIG_ATM is not set |
232 | # CONFIG_BRIDGE is not set | 258 | # CONFIG_BRIDGE is not set |
259 | # CONFIG_NET_DSA is not set | ||
233 | # CONFIG_VLAN_8021Q is not set | 260 | # CONFIG_VLAN_8021Q is not set |
234 | # CONFIG_DECNET is not set | 261 | # CONFIG_DECNET is not set |
235 | CONFIG_LLC=m | 262 | CONFIG_LLC=m |
@@ -240,28 +267,26 @@ CONFIG_LLC2=m | |||
240 | # CONFIG_LAPB is not set | 267 | # CONFIG_LAPB is not set |
241 | # CONFIG_ECONET is not set | 268 | # CONFIG_ECONET is not set |
242 | # CONFIG_WAN_ROUTER is not set | 269 | # CONFIG_WAN_ROUTER is not set |
243 | |||
244 | # | ||
245 | # QoS and/or fair queueing | ||
246 | # | ||
247 | # CONFIG_NET_SCHED is not set | 270 | # CONFIG_NET_SCHED is not set |
271 | # CONFIG_DCB is not set | ||
248 | 272 | ||
249 | # | 273 | # |
250 | # Network testing | 274 | # Network testing |
251 | # | 275 | # |
252 | CONFIG_NET_PKTGEN=m | 276 | CONFIG_NET_PKTGEN=m |
253 | # CONFIG_HAMRADIO is not set | 277 | # CONFIG_HAMRADIO is not set |
278 | # CONFIG_CAN is not set | ||
254 | # CONFIG_IRDA is not set | 279 | # CONFIG_IRDA is not set |
255 | # CONFIG_BT is not set | 280 | # CONFIG_BT is not set |
256 | # CONFIG_AF_RXRPC is not set | 281 | # CONFIG_AF_RXRPC is not set |
257 | 282 | # CONFIG_PHONET is not set | |
258 | # | 283 | CONFIG_WIRELESS=y |
259 | # Wireless | ||
260 | # | ||
261 | # CONFIG_CFG80211 is not set | 284 | # CONFIG_CFG80211 is not set |
285 | CONFIG_WIRELESS_OLD_REGULATORY=y | ||
262 | # CONFIG_WIRELESS_EXT is not set | 286 | # CONFIG_WIRELESS_EXT is not set |
287 | # CONFIG_LIB80211 is not set | ||
263 | # CONFIG_MAC80211 is not set | 288 | # CONFIG_MAC80211 is not set |
264 | # CONFIG_IEEE80211 is not set | 289 | # CONFIG_WIMAX is not set |
265 | # CONFIG_RFKILL is not set | 290 | # CONFIG_RFKILL is not set |
266 | # CONFIG_NET_9P is not set | 291 | # CONFIG_NET_9P is not set |
267 | 292 | ||
@@ -276,6 +301,8 @@ CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | |||
276 | # CONFIG_STANDALONE is not set | 301 | # CONFIG_STANDALONE is not set |
277 | # CONFIG_PREVENT_FIRMWARE_BUILD is not set | 302 | # CONFIG_PREVENT_FIRMWARE_BUILD is not set |
278 | CONFIG_FW_LOADER=y | 303 | CONFIG_FW_LOADER=y |
304 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
305 | CONFIG_EXTRA_FIRMWARE="" | ||
279 | # CONFIG_DEBUG_DRIVER is not set | 306 | # CONFIG_DEBUG_DRIVER is not set |
280 | # CONFIG_DEBUG_DEVRES is not set | 307 | # CONFIG_DEBUG_DEVRES is not set |
281 | # CONFIG_SYS_HYPERVISOR is not set | 308 | # CONFIG_SYS_HYPERVISOR is not set |
@@ -298,11 +325,19 @@ CONFIG_BLK_DEV_CRYPTOLOOP=y | |||
298 | CONFIG_BLK_DEV_RAM=y | 325 | CONFIG_BLK_DEV_RAM=y |
299 | CONFIG_BLK_DEV_RAM_COUNT=16 | 326 | CONFIG_BLK_DEV_RAM_COUNT=16 |
300 | CONFIG_BLK_DEV_RAM_SIZE=6144 | 327 | CONFIG_BLK_DEV_RAM_SIZE=6144 |
301 | CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 | 328 | # CONFIG_BLK_DEV_XIP is not set |
302 | # CONFIG_CDROM_PKTCDVD is not set | 329 | # CONFIG_CDROM_PKTCDVD is not set |
303 | CONFIG_ATA_OVER_ETH=m | 330 | CONFIG_ATA_OVER_ETH=m |
331 | # CONFIG_BLK_DEV_HD is not set | ||
304 | CONFIG_MISC_DEVICES=y | 332 | CONFIG_MISC_DEVICES=y |
333 | # CONFIG_ENCLOSURE_SERVICES is not set | ||
334 | # CONFIG_C2PORT is not set | ||
335 | |||
336 | # | ||
337 | # EEPROM support | ||
338 | # | ||
305 | # CONFIG_EEPROM_93CX6 is not set | 339 | # CONFIG_EEPROM_93CX6 is not set |
340 | CONFIG_HAVE_IDE=y | ||
306 | # CONFIG_IDE is not set | 341 | # CONFIG_IDE is not set |
307 | 342 | ||
308 | # | 343 | # |
@@ -342,14 +377,17 @@ CONFIG_SCSI_SPI_ATTRS=y | |||
342 | # CONFIG_SCSI_FC_ATTRS is not set | 377 | # CONFIG_SCSI_FC_ATTRS is not set |
343 | CONFIG_SCSI_ISCSI_ATTRS=m | 378 | CONFIG_SCSI_ISCSI_ATTRS=m |
344 | # CONFIG_SCSI_SAS_LIBSAS is not set | 379 | # CONFIG_SCSI_SAS_LIBSAS is not set |
380 | # CONFIG_SCSI_SRP_ATTRS is not set | ||
345 | CONFIG_SCSI_LOWLEVEL=y | 381 | CONFIG_SCSI_LOWLEVEL=y |
346 | # CONFIG_ISCSI_TCP is not set | 382 | # CONFIG_ISCSI_TCP is not set |
383 | # CONFIG_LIBFC is not set | ||
347 | # CONFIG_SCSI_PPA is not set | 384 | # CONFIG_SCSI_PPA is not set |
348 | # CONFIG_SCSI_IMM is not set | 385 | # CONFIG_SCSI_IMM is not set |
349 | CONFIG_SCSI_LASI700=y | 386 | CONFIG_SCSI_LASI700=y |
350 | CONFIG_53C700_LE_ON_BE=y | 387 | CONFIG_53C700_LE_ON_BE=y |
351 | # CONFIG_SCSI_ZALON is not set | 388 | # CONFIG_SCSI_ZALON is not set |
352 | CONFIG_SCSI_DEBUG=m | 389 | CONFIG_SCSI_DEBUG=m |
390 | # CONFIG_SCSI_DH is not set | ||
353 | # CONFIG_ATA is not set | 391 | # CONFIG_ATA is not set |
354 | CONFIG_MD=y | 392 | CONFIG_MD=y |
355 | CONFIG_BLK_DEV_MD=m | 393 | CONFIG_BLK_DEV_MD=m |
@@ -362,7 +400,6 @@ CONFIG_MD_RAID1=m | |||
362 | # CONFIG_MD_FAULTY is not set | 400 | # CONFIG_MD_FAULTY is not set |
363 | # CONFIG_BLK_DEV_DM is not set | 401 | # CONFIG_BLK_DEV_DM is not set |
364 | CONFIG_NETDEVICES=y | 402 | CONFIG_NETDEVICES=y |
365 | # CONFIG_NETDEVICES_MULTIQUEUE is not set | ||
366 | CONFIG_DUMMY=m | 403 | CONFIG_DUMMY=m |
367 | CONFIG_BONDING=m | 404 | CONFIG_BONDING=m |
368 | # CONFIG_MACVLAN is not set | 405 | # CONFIG_MACVLAN is not set |
@@ -377,6 +414,9 @@ CONFIG_LASI_82596=y | |||
377 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | 414 | # CONFIG_IBM_NEW_EMAC_RGMII is not set |
378 | # CONFIG_IBM_NEW_EMAC_TAH is not set | 415 | # CONFIG_IBM_NEW_EMAC_TAH is not set |
379 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | 416 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set |
417 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
418 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
419 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
380 | # CONFIG_B44 is not set | 420 | # CONFIG_B44 is not set |
381 | # CONFIG_NET_POCKET is not set | 421 | # CONFIG_NET_POCKET is not set |
382 | CONFIG_NETDEV_1000=y | 422 | CONFIG_NETDEV_1000=y |
@@ -387,6 +427,11 @@ CONFIG_NETDEV_10000=y | |||
387 | # | 427 | # |
388 | # CONFIG_WLAN_PRE80211 is not set | 428 | # CONFIG_WLAN_PRE80211 is not set |
389 | # CONFIG_WLAN_80211 is not set | 429 | # CONFIG_WLAN_80211 is not set |
430 | # CONFIG_IWLWIFI_LEDS is not set | ||
431 | |||
432 | # | ||
433 | # Enable WiMAX (Networking options) to see the WiMAX drivers | ||
434 | # | ||
390 | # CONFIG_WAN is not set | 435 | # CONFIG_WAN is not set |
391 | # CONFIG_PLIP is not set | 436 | # CONFIG_PLIP is not set |
392 | CONFIG_PPP=m | 437 | CONFIG_PPP=m |
@@ -401,7 +446,6 @@ CONFIG_PPPOE=m | |||
401 | # CONFIG_PPPOL2TP is not set | 446 | # CONFIG_PPPOL2TP is not set |
402 | # CONFIG_SLIP is not set | 447 | # CONFIG_SLIP is not set |
403 | CONFIG_SLHC=m | 448 | CONFIG_SLHC=m |
404 | # CONFIG_SHAPER is not set | ||
405 | # CONFIG_NETCONSOLE is not set | 449 | # CONFIG_NETCONSOLE is not set |
406 | # CONFIG_NETPOLL is not set | 450 | # CONFIG_NETPOLL is not set |
407 | # CONFIG_NET_POLL_CONTROLLER is not set | 451 | # CONFIG_NET_POLL_CONTROLLER is not set |
@@ -423,7 +467,6 @@ CONFIG_INPUT_MOUSEDEV_PSAUX=y | |||
423 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | 467 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 |
424 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | 468 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 |
425 | # CONFIG_INPUT_JOYDEV is not set | 469 | # CONFIG_INPUT_JOYDEV is not set |
426 | # CONFIG_INPUT_TSDEV is not set | ||
427 | # CONFIG_INPUT_EVDEV is not set | 470 | # CONFIG_INPUT_EVDEV is not set |
428 | # CONFIG_INPUT_EVBUG is not set | 471 | # CONFIG_INPUT_EVBUG is not set |
429 | 472 | ||
@@ -446,8 +489,8 @@ CONFIG_MOUSE_PS2=y | |||
446 | CONFIG_MOUSE_PS2_ALPS=y | 489 | CONFIG_MOUSE_PS2_ALPS=y |
447 | CONFIG_MOUSE_PS2_LOGIPS2PP=y | 490 | CONFIG_MOUSE_PS2_LOGIPS2PP=y |
448 | CONFIG_MOUSE_PS2_SYNAPTICS=y | 491 | CONFIG_MOUSE_PS2_SYNAPTICS=y |
449 | CONFIG_MOUSE_PS2_LIFEBOOK=y | ||
450 | CONFIG_MOUSE_PS2_TRACKPOINT=y | 492 | CONFIG_MOUSE_PS2_TRACKPOINT=y |
493 | # CONFIG_MOUSE_PS2_ELANTECH is not set | ||
451 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set | 494 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set |
452 | CONFIG_MOUSE_SERIAL=m | 495 | CONFIG_MOUSE_SERIAL=m |
453 | # CONFIG_MOUSE_VSXXXAA is not set | 496 | # CONFIG_MOUSE_VSXXXAA is not set |
@@ -474,9 +517,11 @@ CONFIG_SERIO_LIBPS2=y | |||
474 | # Character devices | 517 | # Character devices |
475 | # | 518 | # |
476 | CONFIG_VT=y | 519 | CONFIG_VT=y |
520 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
477 | CONFIG_VT_CONSOLE=y | 521 | CONFIG_VT_CONSOLE=y |
478 | CONFIG_HW_CONSOLE=y | 522 | CONFIG_HW_CONSOLE=y |
479 | # CONFIG_VT_HW_CONSOLE_BINDING is not set | 523 | # CONFIG_VT_HW_CONSOLE_BINDING is not set |
524 | CONFIG_DEVKMEM=y | ||
480 | # CONFIG_SERIAL_NONSTANDARD is not set | 525 | # CONFIG_SERIAL_NONSTANDARD is not set |
481 | 526 | ||
482 | # | 527 | # |
@@ -501,72 +546,76 @@ CONFIG_PDC_CONSOLE=y | |||
501 | CONFIG_SERIAL_CORE=y | 546 | CONFIG_SERIAL_CORE=y |
502 | CONFIG_SERIAL_CORE_CONSOLE=y | 547 | CONFIG_SERIAL_CORE_CONSOLE=y |
503 | CONFIG_UNIX98_PTYS=y | 548 | CONFIG_UNIX98_PTYS=y |
549 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | ||
504 | CONFIG_LEGACY_PTYS=y | 550 | CONFIG_LEGACY_PTYS=y |
505 | CONFIG_LEGACY_PTY_COUNT=64 | 551 | CONFIG_LEGACY_PTY_COUNT=64 |
506 | CONFIG_PRINTER=m | 552 | CONFIG_PRINTER=m |
507 | # CONFIG_LP_CONSOLE is not set | 553 | # CONFIG_LP_CONSOLE is not set |
508 | CONFIG_PPDEV=m | 554 | CONFIG_PPDEV=m |
509 | # CONFIG_TIPAR is not set | ||
510 | # CONFIG_IPMI_HANDLER is not set | 555 | # CONFIG_IPMI_HANDLER is not set |
511 | # CONFIG_WATCHDOG is not set | ||
512 | # CONFIG_HW_RANDOM is not set | 556 | # CONFIG_HW_RANDOM is not set |
513 | CONFIG_GEN_RTC=y | ||
514 | CONFIG_GEN_RTC_X=y | ||
515 | # CONFIG_R3964 is not set | 557 | # CONFIG_R3964 is not set |
516 | CONFIG_RAW_DRIVER=y | 558 | CONFIG_RAW_DRIVER=y |
517 | CONFIG_MAX_RAW_DEVS=256 | 559 | CONFIG_MAX_RAW_DEVS=256 |
518 | # CONFIG_TCG_TPM is not set | 560 | # CONFIG_TCG_TPM is not set |
519 | # CONFIG_I2C is not set | 561 | # CONFIG_I2C is not set |
520 | |||
521 | # | ||
522 | # SPI support | ||
523 | # | ||
524 | # CONFIG_SPI is not set | 562 | # CONFIG_SPI is not set |
525 | # CONFIG_SPI_MASTER is not set | ||
526 | # CONFIG_W1 is not set | 563 | # CONFIG_W1 is not set |
527 | # CONFIG_POWER_SUPPLY is not set | 564 | # CONFIG_POWER_SUPPLY is not set |
528 | # CONFIG_HWMON is not set | 565 | # CONFIG_HWMON is not set |
566 | # CONFIG_THERMAL is not set | ||
567 | # CONFIG_THERMAL_HWMON is not set | ||
568 | # CONFIG_WATCHDOG is not set | ||
569 | CONFIG_SSB_POSSIBLE=y | ||
529 | 570 | ||
530 | # | 571 | # |
531 | # Sonics Silicon Backplane | 572 | # Sonics Silicon Backplane |
532 | # | 573 | # |
533 | CONFIG_SSB_POSSIBLE=y | ||
534 | # CONFIG_SSB is not set | 574 | # CONFIG_SSB is not set |
535 | 575 | ||
536 | # | 576 | # |
537 | # Multifunction device drivers | 577 | # Multifunction device drivers |
538 | # | 578 | # |
579 | # CONFIG_MFD_CORE is not set | ||
539 | # CONFIG_MFD_SM501 is not set | 580 | # CONFIG_MFD_SM501 is not set |
581 | # CONFIG_HTC_PASIC3 is not set | ||
582 | # CONFIG_MFD_TMIO is not set | ||
583 | # CONFIG_REGULATOR is not set | ||
540 | 584 | ||
541 | # | 585 | # |
542 | # Multimedia devices | 586 | # Multimedia devices |
543 | # | 587 | # |
588 | |||
589 | # | ||
590 | # Multimedia core support | ||
591 | # | ||
544 | # CONFIG_VIDEO_DEV is not set | 592 | # CONFIG_VIDEO_DEV is not set |
545 | # CONFIG_DVB_CORE is not set | 593 | # CONFIG_DVB_CORE is not set |
546 | # CONFIG_DAB is not set | 594 | # CONFIG_VIDEO_MEDIA is not set |
547 | 595 | ||
548 | # | 596 | # |
549 | # Graphics support | 597 | # Multimedia drivers |
550 | # | 598 | # |
551 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | 599 | # CONFIG_DAB is not set |
552 | 600 | ||
553 | # | 601 | # |
554 | # Display device support | 602 | # Graphics support |
555 | # | 603 | # |
556 | # CONFIG_DISPLAY_SUPPORT is not set | ||
557 | # CONFIG_VGASTATE is not set | 604 | # CONFIG_VGASTATE is not set |
558 | CONFIG_VIDEO_OUTPUT_CONTROL=m | 605 | CONFIG_VIDEO_OUTPUT_CONTROL=m |
559 | CONFIG_FB=y | 606 | CONFIG_FB=y |
560 | # CONFIG_FIRMWARE_EDID is not set | 607 | # CONFIG_FIRMWARE_EDID is not set |
561 | # CONFIG_FB_DDC is not set | 608 | # CONFIG_FB_DDC is not set |
609 | # CONFIG_FB_BOOT_VESA_SUPPORT is not set | ||
562 | CONFIG_FB_CFB_FILLRECT=y | 610 | CONFIG_FB_CFB_FILLRECT=y |
563 | CONFIG_FB_CFB_COPYAREA=y | 611 | CONFIG_FB_CFB_COPYAREA=y |
564 | CONFIG_FB_CFB_IMAGEBLIT=y | 612 | CONFIG_FB_CFB_IMAGEBLIT=y |
613 | # CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set | ||
565 | # CONFIG_FB_SYS_FILLRECT is not set | 614 | # CONFIG_FB_SYS_FILLRECT is not set |
566 | # CONFIG_FB_SYS_COPYAREA is not set | 615 | # CONFIG_FB_SYS_COPYAREA is not set |
567 | # CONFIG_FB_SYS_IMAGEBLIT is not set | 616 | # CONFIG_FB_SYS_IMAGEBLIT is not set |
617 | # CONFIG_FB_FOREIGN_ENDIAN is not set | ||
568 | # CONFIG_FB_SYS_FOPS is not set | 618 | # CONFIG_FB_SYS_FOPS is not set |
569 | CONFIG_FB_DEFERRED_IO=y | ||
570 | # CONFIG_FB_SVGALIB is not set | 619 | # CONFIG_FB_SVGALIB is not set |
571 | # CONFIG_FB_MACMODES is not set | 620 | # CONFIG_FB_MACMODES is not set |
572 | # CONFIG_FB_BACKLIGHT is not set | 621 | # CONFIG_FB_BACKLIGHT is not set |
@@ -579,6 +628,14 @@ CONFIG_FB_TILEBLITTING=y | |||
579 | CONFIG_FB_STI=y | 628 | CONFIG_FB_STI=y |
580 | # CONFIG_FB_S1D13XXX is not set | 629 | # CONFIG_FB_S1D13XXX is not set |
581 | # CONFIG_FB_VIRTUAL is not set | 630 | # CONFIG_FB_VIRTUAL is not set |
631 | # CONFIG_FB_METRONOME is not set | ||
632 | # CONFIG_FB_MB862XX is not set | ||
633 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
634 | |||
635 | # | ||
636 | # Display device support | ||
637 | # | ||
638 | # CONFIG_DISPLAY_SUPPORT is not set | ||
582 | 639 | ||
583 | # | 640 | # |
584 | # Console display driver support | 641 | # Console display driver support |
@@ -606,15 +663,8 @@ CONFIG_LOGO=y | |||
606 | # CONFIG_LOGO_LINUX_VGA16 is not set | 663 | # CONFIG_LOGO_LINUX_VGA16 is not set |
607 | # CONFIG_LOGO_LINUX_CLUT224 is not set | 664 | # CONFIG_LOGO_LINUX_CLUT224 is not set |
608 | CONFIG_LOGO_PARISC_CLUT224=y | 665 | CONFIG_LOGO_PARISC_CLUT224=y |
609 | |||
610 | # | ||
611 | # Sound | ||
612 | # | ||
613 | CONFIG_SOUND=y | 666 | CONFIG_SOUND=y |
614 | 667 | CONFIG_SOUND_OSS_CORE=y | |
615 | # | ||
616 | # Advanced Linux Sound Architecture | ||
617 | # | ||
618 | CONFIG_SND=y | 668 | CONFIG_SND=y |
619 | CONFIG_SND_TIMER=y | 669 | CONFIG_SND_TIMER=y |
620 | CONFIG_SND_PCM=y | 670 | CONFIG_SND_PCM=y |
@@ -630,10 +680,7 @@ CONFIG_SND_SUPPORT_OLD_API=y | |||
630 | CONFIG_SND_VERBOSE_PROCFS=y | 680 | CONFIG_SND_VERBOSE_PROCFS=y |
631 | # CONFIG_SND_VERBOSE_PRINTK is not set | 681 | # CONFIG_SND_VERBOSE_PRINTK is not set |
632 | # CONFIG_SND_DEBUG is not set | 682 | # CONFIG_SND_DEBUG is not set |
633 | 683 | CONFIG_SND_DRIVERS=y | |
634 | # | ||
635 | # Generic devices | ||
636 | # | ||
637 | # CONFIG_SND_DUMMY is not set | 684 | # CONFIG_SND_DUMMY is not set |
638 | # CONFIG_SND_VIRMIDI is not set | 685 | # CONFIG_SND_VIRMIDI is not set |
639 | # CONFIG_SND_MTPAV is not set | 686 | # CONFIG_SND_MTPAV is not set |
@@ -641,63 +688,82 @@ CONFIG_SND_VERBOSE_PROCFS=y | |||
641 | # CONFIG_SND_SERIAL_U16550 is not set | 688 | # CONFIG_SND_SERIAL_U16550 is not set |
642 | # CONFIG_SND_MPU401 is not set | 689 | # CONFIG_SND_MPU401 is not set |
643 | # CONFIG_SND_PORTMAN2X4 is not set | 690 | # CONFIG_SND_PORTMAN2X4 is not set |
644 | 691 | CONFIG_SND_GSC=y | |
645 | # | ||
646 | # GSC devices | ||
647 | # | ||
648 | CONFIG_SND_HARMONY=y | 692 | CONFIG_SND_HARMONY=y |
649 | |||
650 | # | ||
651 | # System on Chip audio support | ||
652 | # | ||
653 | # CONFIG_SND_SOC is not set | 693 | # CONFIG_SND_SOC is not set |
654 | |||
655 | # | ||
656 | # SoC Audio support for SuperH | ||
657 | # | ||
658 | |||
659 | # | ||
660 | # Open Sound System | ||
661 | # | ||
662 | # CONFIG_SOUND_PRIME is not set | 694 | # CONFIG_SOUND_PRIME is not set |
663 | CONFIG_HID_SUPPORT=y | 695 | CONFIG_HID_SUPPORT=y |
664 | CONFIG_HID=y | 696 | CONFIG_HID=y |
665 | CONFIG_HID_DEBUG=y | 697 | CONFIG_HID_DEBUG=y |
698 | # CONFIG_HIDRAW is not set | ||
699 | # CONFIG_HID_PID is not set | ||
700 | |||
701 | # | ||
702 | # Special HID drivers | ||
703 | # | ||
704 | CONFIG_HID_COMPAT=y | ||
666 | CONFIG_USB_SUPPORT=y | 705 | CONFIG_USB_SUPPORT=y |
667 | # CONFIG_USB_ARCH_HAS_HCD is not set | 706 | # CONFIG_USB_ARCH_HAS_HCD is not set |
668 | # CONFIG_USB_ARCH_HAS_OHCI is not set | 707 | # CONFIG_USB_ARCH_HAS_OHCI is not set |
669 | # CONFIG_USB_ARCH_HAS_EHCI is not set | 708 | # CONFIG_USB_ARCH_HAS_EHCI is not set |
670 | 709 | ||
671 | # | 710 | # |
672 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 711 | # Enable Host or Gadget support to see Inventra options |
673 | # | 712 | # |
674 | 713 | ||
675 | # | 714 | # |
676 | # USB Gadget Support | 715 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed; |
677 | # | 716 | # |
678 | # CONFIG_USB_GADGET is not set | 717 | # CONFIG_USB_GADGET is not set |
718 | |||
719 | # | ||
720 | # OTG and related infrastructure | ||
721 | # | ||
679 | # CONFIG_MMC is not set | 722 | # CONFIG_MMC is not set |
723 | # CONFIG_MEMSTICK is not set | ||
680 | # CONFIG_NEW_LEDS is not set | 724 | # CONFIG_NEW_LEDS is not set |
681 | # CONFIG_RTC_CLASS is not set | 725 | # CONFIG_ACCESSIBILITY is not set |
726 | CONFIG_RTC_LIB=y | ||
727 | CONFIG_RTC_CLASS=y | ||
728 | CONFIG_RTC_HCTOSYS=y | ||
729 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
730 | # CONFIG_RTC_DEBUG is not set | ||
682 | 731 | ||
683 | # | 732 | # |
684 | # DMA Engine support | 733 | # RTC interfaces |
685 | # | 734 | # |
686 | # CONFIG_DMA_ENGINE is not set | 735 | CONFIG_RTC_INTF_SYSFS=y |
736 | CONFIG_RTC_INTF_PROC=y | ||
737 | CONFIG_RTC_INTF_DEV=y | ||
738 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
739 | # CONFIG_RTC_DRV_TEST is not set | ||
687 | 740 | ||
688 | # | 741 | # |
689 | # DMA Clients | 742 | # SPI RTC drivers |
690 | # | 743 | # |
691 | 744 | ||
692 | # | 745 | # |
693 | # DMA Devices | 746 | # Platform RTC drivers |
694 | # | 747 | # |
695 | # CONFIG_AUXDISPLAY is not set | 748 | # CONFIG_RTC_DRV_DS1286 is not set |
749 | # CONFIG_RTC_DRV_DS1511 is not set | ||
750 | # CONFIG_RTC_DRV_DS1553 is not set | ||
751 | # CONFIG_RTC_DRV_DS1742 is not set | ||
752 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
753 | # CONFIG_RTC_DRV_M48T86 is not set | ||
754 | # CONFIG_RTC_DRV_M48T35 is not set | ||
755 | # CONFIG_RTC_DRV_M48T59 is not set | ||
756 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
757 | # CONFIG_RTC_DRV_V3020 is not set | ||
696 | 758 | ||
697 | # | 759 | # |
698 | # Userspace I/O | 760 | # on-CPU RTC drivers |
699 | # | 761 | # |
762 | CONFIG_RTC_DRV_PARISC=y | ||
763 | # CONFIG_DMADEVICES is not set | ||
764 | # CONFIG_AUXDISPLAY is not set | ||
700 | # CONFIG_UIO is not set | 765 | # CONFIG_UIO is not set |
766 | # CONFIG_STAGING is not set | ||
701 | 767 | ||
702 | # | 768 | # |
703 | # File systems | 769 | # File systems |
@@ -707,7 +773,7 @@ CONFIG_EXT2_FS=y | |||
707 | # CONFIG_EXT2_FS_XIP is not set | 773 | # CONFIG_EXT2_FS_XIP is not set |
708 | CONFIG_EXT3_FS=y | 774 | CONFIG_EXT3_FS=y |
709 | # CONFIG_EXT3_FS_XATTR is not set | 775 | # CONFIG_EXT3_FS_XATTR is not set |
710 | # CONFIG_EXT4DEV_FS is not set | 776 | # CONFIG_EXT4_FS is not set |
711 | CONFIG_JBD=y | 777 | CONFIG_JBD=y |
712 | # CONFIG_JBD_DEBUG is not set | 778 | # CONFIG_JBD_DEBUG is not set |
713 | # CONFIG_REISERFS_FS is not set | 779 | # CONFIG_REISERFS_FS is not set |
@@ -717,19 +783,18 @@ CONFIG_JFS_FS=m | |||
717 | # CONFIG_JFS_DEBUG is not set | 783 | # CONFIG_JFS_DEBUG is not set |
718 | # CONFIG_JFS_STATISTICS is not set | 784 | # CONFIG_JFS_STATISTICS is not set |
719 | CONFIG_FS_POSIX_ACL=y | 785 | CONFIG_FS_POSIX_ACL=y |
786 | CONFIG_FILE_LOCKING=y | ||
720 | CONFIG_XFS_FS=m | 787 | CONFIG_XFS_FS=m |
721 | # CONFIG_XFS_QUOTA is not set | 788 | # CONFIG_XFS_QUOTA is not set |
722 | # CONFIG_XFS_SECURITY is not set | ||
723 | # CONFIG_XFS_POSIX_ACL is not set | 789 | # CONFIG_XFS_POSIX_ACL is not set |
724 | # CONFIG_XFS_RT is not set | 790 | # CONFIG_XFS_RT is not set |
725 | # CONFIG_GFS2_FS is not set | 791 | # CONFIG_XFS_DEBUG is not set |
726 | # CONFIG_OCFS2_FS is not set | 792 | # CONFIG_OCFS2_FS is not set |
727 | # CONFIG_MINIX_FS is not set | 793 | # CONFIG_BTRFS_FS is not set |
728 | # CONFIG_ROMFS_FS is not set | 794 | CONFIG_DNOTIFY=y |
729 | CONFIG_INOTIFY=y | 795 | CONFIG_INOTIFY=y |
730 | CONFIG_INOTIFY_USER=y | 796 | CONFIG_INOTIFY_USER=y |
731 | # CONFIG_QUOTA is not set | 797 | # CONFIG_QUOTA is not set |
732 | CONFIG_DNOTIFY=y | ||
733 | # CONFIG_AUTOFS_FS is not set | 798 | # CONFIG_AUTOFS_FS is not set |
734 | CONFIG_AUTOFS4_FS=y | 799 | CONFIG_AUTOFS4_FS=y |
735 | # CONFIG_FUSE_FS is not set | 800 | # CONFIG_FUSE_FS is not set |
@@ -759,16 +824,13 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | |||
759 | CONFIG_PROC_FS=y | 824 | CONFIG_PROC_FS=y |
760 | CONFIG_PROC_KCORE=y | 825 | CONFIG_PROC_KCORE=y |
761 | CONFIG_PROC_SYSCTL=y | 826 | CONFIG_PROC_SYSCTL=y |
827 | CONFIG_PROC_PAGE_MONITOR=y | ||
762 | CONFIG_SYSFS=y | 828 | CONFIG_SYSFS=y |
763 | CONFIG_TMPFS=y | 829 | CONFIG_TMPFS=y |
764 | # CONFIG_TMPFS_POSIX_ACL is not set | 830 | # CONFIG_TMPFS_POSIX_ACL is not set |
765 | # CONFIG_HUGETLB_PAGE is not set | 831 | # CONFIG_HUGETLB_PAGE is not set |
766 | CONFIG_RAMFS=y | ||
767 | # CONFIG_CONFIGFS_FS is not set | 832 | # CONFIG_CONFIGFS_FS is not set |
768 | 833 | CONFIG_MISC_FILESYSTEMS=y | |
769 | # | ||
770 | # Miscellaneous filesystems | ||
771 | # | ||
772 | # CONFIG_ADFS_FS is not set | 834 | # CONFIG_ADFS_FS is not set |
773 | # CONFIG_AFFS_FS is not set | 835 | # CONFIG_AFFS_FS is not set |
774 | # CONFIG_ECRYPT_FS is not set | 836 | # CONFIG_ECRYPT_FS is not set |
@@ -778,35 +840,34 @@ CONFIG_RAMFS=y | |||
778 | # CONFIG_BFS_FS is not set | 840 | # CONFIG_BFS_FS is not set |
779 | # CONFIG_EFS_FS is not set | 841 | # CONFIG_EFS_FS is not set |
780 | # CONFIG_CRAMFS is not set | 842 | # CONFIG_CRAMFS is not set |
843 | # CONFIG_SQUASHFS is not set | ||
781 | # CONFIG_VXFS_FS is not set | 844 | # CONFIG_VXFS_FS is not set |
845 | # CONFIG_MINIX_FS is not set | ||
846 | # CONFIG_OMFS_FS is not set | ||
782 | # CONFIG_HPFS_FS is not set | 847 | # CONFIG_HPFS_FS is not set |
783 | # CONFIG_QNX4FS_FS is not set | 848 | # CONFIG_QNX4FS_FS is not set |
849 | # CONFIG_ROMFS_FS is not set | ||
784 | # CONFIG_SYSV_FS is not set | 850 | # CONFIG_SYSV_FS is not set |
785 | CONFIG_UFS_FS=m | 851 | CONFIG_UFS_FS=m |
786 | # CONFIG_UFS_FS_WRITE is not set | 852 | # CONFIG_UFS_FS_WRITE is not set |
787 | # CONFIG_UFS_DEBUG is not set | 853 | # CONFIG_UFS_DEBUG is not set |
788 | 854 | CONFIG_NETWORK_FILESYSTEMS=y | |
789 | # | ||
790 | # Network File Systems | ||
791 | # | ||
792 | CONFIG_NFS_FS=y | 855 | CONFIG_NFS_FS=y |
793 | CONFIG_NFS_V3=y | 856 | CONFIG_NFS_V3=y |
794 | # CONFIG_NFS_V3_ACL is not set | 857 | # CONFIG_NFS_V3_ACL is not set |
795 | CONFIG_NFS_V4=y | 858 | CONFIG_NFS_V4=y |
796 | CONFIG_NFS_DIRECTIO=y | 859 | CONFIG_ROOT_NFS=y |
797 | CONFIG_NFSD=m | 860 | CONFIG_NFSD=m |
798 | CONFIG_NFSD_V3=y | 861 | CONFIG_NFSD_V3=y |
799 | # CONFIG_NFSD_V3_ACL is not set | 862 | # CONFIG_NFSD_V3_ACL is not set |
800 | CONFIG_NFSD_V4=y | 863 | CONFIG_NFSD_V4=y |
801 | CONFIG_NFSD_TCP=y | ||
802 | CONFIG_ROOT_NFS=y | ||
803 | CONFIG_LOCKD=y | 864 | CONFIG_LOCKD=y |
804 | CONFIG_LOCKD_V4=y | 865 | CONFIG_LOCKD_V4=y |
805 | CONFIG_EXPORTFS=m | 866 | CONFIG_EXPORTFS=m |
806 | CONFIG_NFS_COMMON=y | 867 | CONFIG_NFS_COMMON=y |
807 | CONFIG_SUNRPC=y | 868 | CONFIG_SUNRPC=y |
808 | CONFIG_SUNRPC_GSS=y | 869 | CONFIG_SUNRPC_GSS=y |
809 | # CONFIG_SUNRPC_BIND34 is not set | 870 | # CONFIG_SUNRPC_REGISTER_V4 is not set |
810 | CONFIG_RPCSEC_GSS_KRB5=y | 871 | CONFIG_RPCSEC_GSS_KRB5=y |
811 | CONFIG_RPCSEC_GSS_SPKM3=m | 872 | CONFIG_RPCSEC_GSS_SPKM3=m |
812 | CONFIG_SMB_FS=m | 873 | CONFIG_SMB_FS=m |
@@ -815,6 +876,7 @@ CONFIG_SMB_NLS_REMOTE="cp437" | |||
815 | CONFIG_CIFS=m | 876 | CONFIG_CIFS=m |
816 | # CONFIG_CIFS_STATS is not set | 877 | # CONFIG_CIFS_STATS is not set |
817 | # CONFIG_CIFS_WEAK_PW_HASH is not set | 878 | # CONFIG_CIFS_WEAK_PW_HASH is not set |
879 | # CONFIG_CIFS_UPCALL is not set | ||
818 | # CONFIG_CIFS_XATTR is not set | 880 | # CONFIG_CIFS_XATTR is not set |
819 | # CONFIG_CIFS_DEBUG2 is not set | 881 | # CONFIG_CIFS_DEBUG2 is not set |
820 | # CONFIG_CIFS_EXPERIMENTAL is not set | 882 | # CONFIG_CIFS_EXPERIMENTAL is not set |
@@ -827,10 +889,6 @@ CONFIG_CIFS=m | |||
827 | # | 889 | # |
828 | # CONFIG_PARTITION_ADVANCED is not set | 890 | # CONFIG_PARTITION_ADVANCED is not set |
829 | CONFIG_MSDOS_PARTITION=y | 891 | CONFIG_MSDOS_PARTITION=y |
830 | |||
831 | # | ||
832 | # Native Language Support | ||
833 | # | ||
834 | CONFIG_NLS=y | 892 | CONFIG_NLS=y |
835 | CONFIG_NLS_DEFAULT="iso8859-1" | 893 | CONFIG_NLS_DEFAULT="iso8859-1" |
836 | CONFIG_NLS_CODEPAGE_437=m | 894 | CONFIG_NLS_CODEPAGE_437=m |
@@ -871,33 +929,28 @@ CONFIG_NLS_ISO8859_15=m | |||
871 | CONFIG_NLS_KOI8_R=m | 929 | CONFIG_NLS_KOI8_R=m |
872 | CONFIG_NLS_KOI8_U=m | 930 | CONFIG_NLS_KOI8_U=m |
873 | CONFIG_NLS_UTF8=m | 931 | CONFIG_NLS_UTF8=m |
874 | |||
875 | # | ||
876 | # Distributed Lock Manager | ||
877 | # | ||
878 | # CONFIG_DLM is not set | 932 | # CONFIG_DLM is not set |
879 | 933 | ||
880 | # | 934 | # |
881 | # Profiling support | ||
882 | # | ||
883 | CONFIG_PROFILING=y | ||
884 | CONFIG_OPROFILE=m | ||
885 | |||
886 | # | ||
887 | # Kernel hacking | 935 | # Kernel hacking |
888 | # | 936 | # |
889 | # CONFIG_PRINTK_TIME is not set | 937 | # CONFIG_PRINTK_TIME is not set |
938 | CONFIG_ENABLE_WARN_DEPRECATED=y | ||
890 | CONFIG_ENABLE_MUST_CHECK=y | 939 | CONFIG_ENABLE_MUST_CHECK=y |
940 | CONFIG_FRAME_WARN=1024 | ||
891 | CONFIG_MAGIC_SYSRQ=y | 941 | CONFIG_MAGIC_SYSRQ=y |
892 | # CONFIG_UNUSED_SYMBOLS is not set | 942 | # CONFIG_UNUSED_SYMBOLS is not set |
893 | # CONFIG_DEBUG_FS is not set | 943 | CONFIG_DEBUG_FS=y |
894 | # CONFIG_HEADERS_CHECK is not set | 944 | # CONFIG_HEADERS_CHECK is not set |
895 | CONFIG_DEBUG_KERNEL=y | 945 | CONFIG_DEBUG_KERNEL=y |
896 | # CONFIG_DEBUG_SHIRQ is not set | 946 | # CONFIG_DEBUG_SHIRQ is not set |
897 | CONFIG_DETECT_SOFTLOCKUP=y | 947 | CONFIG_DETECT_SOFTLOCKUP=y |
948 | # CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set | ||
949 | CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 | ||
898 | CONFIG_SCHED_DEBUG=y | 950 | CONFIG_SCHED_DEBUG=y |
899 | # CONFIG_SCHEDSTATS is not set | 951 | # CONFIG_SCHEDSTATS is not set |
900 | # CONFIG_TIMER_STATS is not set | 952 | # CONFIG_TIMER_STATS is not set |
953 | # CONFIG_DEBUG_OBJECTS is not set | ||
901 | # CONFIG_DEBUG_SLAB is not set | 954 | # CONFIG_DEBUG_SLAB is not set |
902 | # CONFIG_DEBUG_RT_MUTEXES is not set | 955 | # CONFIG_DEBUG_RT_MUTEXES is not set |
903 | # CONFIG_RT_MUTEX_TESTER is not set | 956 | # CONFIG_RT_MUTEX_TESTER is not set |
@@ -909,10 +962,32 @@ CONFIG_DEBUG_MUTEXES=y | |||
909 | CONFIG_DEBUG_BUGVERBOSE=y | 962 | CONFIG_DEBUG_BUGVERBOSE=y |
910 | # CONFIG_DEBUG_INFO is not set | 963 | # CONFIG_DEBUG_INFO is not set |
911 | # CONFIG_DEBUG_VM is not set | 964 | # CONFIG_DEBUG_VM is not set |
965 | # CONFIG_DEBUG_WRITECOUNT is not set | ||
966 | CONFIG_DEBUG_MEMORY_INIT=y | ||
912 | # CONFIG_DEBUG_LIST is not set | 967 | # CONFIG_DEBUG_LIST is not set |
913 | CONFIG_FORCED_INLINING=y | 968 | # CONFIG_DEBUG_SG is not set |
969 | # CONFIG_DEBUG_NOTIFIERS is not set | ||
970 | # CONFIG_BOOT_PRINTK_DELAY is not set | ||
914 | # CONFIG_RCU_TORTURE_TEST is not set | 971 | # CONFIG_RCU_TORTURE_TEST is not set |
972 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||
973 | # CONFIG_BACKTRACE_SELF_TEST is not set | ||
974 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | ||
915 | # CONFIG_FAULT_INJECTION is not set | 975 | # CONFIG_FAULT_INJECTION is not set |
976 | # CONFIG_SYSCTL_SYSCALL_CHECK is not set | ||
977 | CONFIG_NOP_TRACER=y | ||
978 | CONFIG_RING_BUFFER=y | ||
979 | CONFIG_TRACING=y | ||
980 | |||
981 | # | ||
982 | # Tracers | ||
983 | # | ||
984 | # CONFIG_SCHED_TRACER is not set | ||
985 | # CONFIG_CONTEXT_SWITCH_TRACER is not set | ||
986 | # CONFIG_BOOT_TRACER is not set | ||
987 | # CONFIG_TRACE_BRANCH_PROFILING is not set | ||
988 | # CONFIG_FTRACE_STARTUP_TEST is not set | ||
989 | # CONFIG_DYNAMIC_PRINTK_DEBUG is not set | ||
990 | # CONFIG_SAMPLES is not set | ||
916 | CONFIG_DEBUG_RODATA=y | 991 | CONFIG_DEBUG_RODATA=y |
917 | 992 | ||
918 | # | 993 | # |
@@ -921,57 +996,113 @@ CONFIG_DEBUG_RODATA=y | |||
921 | CONFIG_KEYS=y | 996 | CONFIG_KEYS=y |
922 | CONFIG_KEYS_DEBUG_PROC_KEYS=y | 997 | CONFIG_KEYS_DEBUG_PROC_KEYS=y |
923 | # CONFIG_SECURITY is not set | 998 | # CONFIG_SECURITY is not set |
999 | # CONFIG_SECURITYFS is not set | ||
1000 | # CONFIG_SECURITY_FILE_CAPABILITIES is not set | ||
924 | CONFIG_CRYPTO=y | 1001 | CONFIG_CRYPTO=y |
1002 | |||
1003 | # | ||
1004 | # Crypto core or helper | ||
1005 | # | ||
1006 | # CONFIG_CRYPTO_FIPS is not set | ||
925 | CONFIG_CRYPTO_ALGAPI=y | 1007 | CONFIG_CRYPTO_ALGAPI=y |
1008 | CONFIG_CRYPTO_ALGAPI2=y | ||
1009 | CONFIG_CRYPTO_AEAD=m | ||
1010 | CONFIG_CRYPTO_AEAD2=y | ||
926 | CONFIG_CRYPTO_BLKCIPHER=y | 1011 | CONFIG_CRYPTO_BLKCIPHER=y |
1012 | CONFIG_CRYPTO_BLKCIPHER2=y | ||
927 | CONFIG_CRYPTO_HASH=y | 1013 | CONFIG_CRYPTO_HASH=y |
1014 | CONFIG_CRYPTO_HASH2=y | ||
1015 | CONFIG_CRYPTO_RNG2=y | ||
928 | CONFIG_CRYPTO_MANAGER=y | 1016 | CONFIG_CRYPTO_MANAGER=y |
1017 | CONFIG_CRYPTO_MANAGER2=y | ||
1018 | # CONFIG_CRYPTO_GF128MUL is not set | ||
1019 | CONFIG_CRYPTO_NULL=m | ||
1020 | # CONFIG_CRYPTO_CRYPTD is not set | ||
1021 | CONFIG_CRYPTO_AUTHENC=m | ||
1022 | CONFIG_CRYPTO_TEST=m | ||
1023 | |||
1024 | # | ||
1025 | # Authenticated Encryption with Associated Data | ||
1026 | # | ||
1027 | # CONFIG_CRYPTO_CCM is not set | ||
1028 | # CONFIG_CRYPTO_GCM is not set | ||
1029 | # CONFIG_CRYPTO_SEQIV is not set | ||
1030 | |||
1031 | # | ||
1032 | # Block modes | ||
1033 | # | ||
1034 | CONFIG_CRYPTO_CBC=y | ||
1035 | # CONFIG_CRYPTO_CTR is not set | ||
1036 | # CONFIG_CRYPTO_CTS is not set | ||
1037 | CONFIG_CRYPTO_ECB=m | ||
1038 | # CONFIG_CRYPTO_LRW is not set | ||
1039 | # CONFIG_CRYPTO_PCBC is not set | ||
1040 | # CONFIG_CRYPTO_XTS is not set | ||
1041 | |||
1042 | # | ||
1043 | # Hash modes | ||
1044 | # | ||
929 | CONFIG_CRYPTO_HMAC=y | 1045 | CONFIG_CRYPTO_HMAC=y |
930 | # CONFIG_CRYPTO_XCBC is not set | 1046 | # CONFIG_CRYPTO_XCBC is not set |
931 | CONFIG_CRYPTO_NULL=m | 1047 | |
1048 | # | ||
1049 | # Digest | ||
1050 | # | ||
1051 | CONFIG_CRYPTO_CRC32C=m | ||
932 | CONFIG_CRYPTO_MD4=m | 1052 | CONFIG_CRYPTO_MD4=m |
933 | CONFIG_CRYPTO_MD5=y | 1053 | CONFIG_CRYPTO_MD5=y |
1054 | CONFIG_CRYPTO_MICHAEL_MIC=m | ||
1055 | # CONFIG_CRYPTO_RMD128 is not set | ||
1056 | # CONFIG_CRYPTO_RMD160 is not set | ||
1057 | # CONFIG_CRYPTO_RMD256 is not set | ||
1058 | # CONFIG_CRYPTO_RMD320 is not set | ||
934 | CONFIG_CRYPTO_SHA1=m | 1059 | CONFIG_CRYPTO_SHA1=m |
935 | CONFIG_CRYPTO_SHA256=m | 1060 | CONFIG_CRYPTO_SHA256=m |
936 | CONFIG_CRYPTO_SHA512=m | 1061 | CONFIG_CRYPTO_SHA512=m |
937 | CONFIG_CRYPTO_WP512=m | ||
938 | CONFIG_CRYPTO_TGR192=m | 1062 | CONFIG_CRYPTO_TGR192=m |
939 | # CONFIG_CRYPTO_GF128MUL is not set | 1063 | CONFIG_CRYPTO_WP512=m |
940 | CONFIG_CRYPTO_ECB=m | 1064 | |
941 | CONFIG_CRYPTO_CBC=y | 1065 | # |
942 | # CONFIG_CRYPTO_PCBC is not set | 1066 | # Ciphers |
943 | # CONFIG_CRYPTO_LRW is not set | 1067 | # |
944 | # CONFIG_CRYPTO_XTS is not set | ||
945 | # CONFIG_CRYPTO_CRYPTD is not set | ||
946 | CONFIG_CRYPTO_DES=y | ||
947 | # CONFIG_CRYPTO_FCRYPT is not set | ||
948 | CONFIG_CRYPTO_BLOWFISH=m | ||
949 | CONFIG_CRYPTO_TWOFISH=m | ||
950 | CONFIG_CRYPTO_TWOFISH_COMMON=m | ||
951 | CONFIG_CRYPTO_SERPENT=m | ||
952 | CONFIG_CRYPTO_AES=m | 1068 | CONFIG_CRYPTO_AES=m |
1069 | CONFIG_CRYPTO_ANUBIS=m | ||
1070 | CONFIG_CRYPTO_ARC4=m | ||
1071 | CONFIG_CRYPTO_BLOWFISH=m | ||
1072 | # CONFIG_CRYPTO_CAMELLIA is not set | ||
953 | CONFIG_CRYPTO_CAST5=m | 1073 | CONFIG_CRYPTO_CAST5=m |
954 | CONFIG_CRYPTO_CAST6=m | 1074 | CONFIG_CRYPTO_CAST6=m |
955 | CONFIG_CRYPTO_TEA=m | 1075 | CONFIG_CRYPTO_DES=y |
956 | CONFIG_CRYPTO_ARC4=m | 1076 | # CONFIG_CRYPTO_FCRYPT is not set |
957 | CONFIG_CRYPTO_KHAZAD=m | 1077 | CONFIG_CRYPTO_KHAZAD=m |
958 | CONFIG_CRYPTO_ANUBIS=m | 1078 | # CONFIG_CRYPTO_SALSA20 is not set |
959 | # CONFIG_CRYPTO_SEED is not set | 1079 | # CONFIG_CRYPTO_SEED is not set |
1080 | CONFIG_CRYPTO_SERPENT=m | ||
1081 | CONFIG_CRYPTO_TEA=m | ||
1082 | CONFIG_CRYPTO_TWOFISH=m | ||
1083 | CONFIG_CRYPTO_TWOFISH_COMMON=m | ||
1084 | |||
1085 | # | ||
1086 | # Compression | ||
1087 | # | ||
960 | CONFIG_CRYPTO_DEFLATE=m | 1088 | CONFIG_CRYPTO_DEFLATE=m |
961 | CONFIG_CRYPTO_MICHAEL_MIC=m | 1089 | # CONFIG_CRYPTO_LZO is not set |
962 | CONFIG_CRYPTO_CRC32C=m | 1090 | |
963 | # CONFIG_CRYPTO_CAMELLIA is not set | 1091 | # |
964 | CONFIG_CRYPTO_TEST=m | 1092 | # Random Number Generation |
965 | # CONFIG_CRYPTO_AUTHENC is not set | 1093 | # |
1094 | # CONFIG_CRYPTO_ANSI_CPRNG is not set | ||
966 | # CONFIG_CRYPTO_HW is not set | 1095 | # CONFIG_CRYPTO_HW is not set |
967 | 1096 | ||
968 | # | 1097 | # |
969 | # Library routines | 1098 | # Library routines |
970 | # | 1099 | # |
971 | CONFIG_BITREVERSE=y | 1100 | CONFIG_BITREVERSE=y |
1101 | CONFIG_GENERIC_FIND_LAST_BIT=y | ||
972 | CONFIG_CRC_CCITT=m | 1102 | CONFIG_CRC_CCITT=m |
973 | # CONFIG_CRC16 is not set | 1103 | # CONFIG_CRC16 is not set |
974 | # CONFIG_CRC_ITU_T is not set | 1104 | # CONFIG_CRC_T10DIF is not set |
1105 | CONFIG_CRC_ITU_T=m | ||
975 | CONFIG_CRC32=y | 1106 | CONFIG_CRC32=y |
976 | # CONFIG_CRC7 is not set | 1107 | # CONFIG_CRC7 is not set |
977 | CONFIG_LIBCRC32C=m | 1108 | CONFIG_LIBCRC32C=m |
diff --git a/arch/parisc/configs/a500_defconfig b/arch/parisc/configs/a500_defconfig index ddacc72e38fb..f12e4b8349d9 100644 --- a/arch/parisc/configs/a500_defconfig +++ b/arch/parisc/configs/a500_defconfig | |||
@@ -1,7 +1,7 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.23 | 3 | # Linux kernel version: 2.6.29-rc8 |
4 | # Fri Oct 12 21:12:44 2007 | 4 | # Fri Mar 13 01:32:56 2009 |
5 | # | 5 | # |
6 | CONFIG_PARISC=y | 6 | CONFIG_PARISC=y |
7 | CONFIG_MMU=y | 7 | CONFIG_MMU=y |
@@ -34,18 +34,30 @@ CONFIG_SYSVIPC_SYSCTL=y | |||
34 | CONFIG_POSIX_MQUEUE=y | 34 | CONFIG_POSIX_MQUEUE=y |
35 | # CONFIG_BSD_PROCESS_ACCT is not set | 35 | # CONFIG_BSD_PROCESS_ACCT is not set |
36 | # CONFIG_TASKSTATS is not set | 36 | # CONFIG_TASKSTATS is not set |
37 | # CONFIG_USER_NS is not set | ||
38 | # CONFIG_AUDIT is not set | 37 | # CONFIG_AUDIT is not set |
38 | |||
39 | # | ||
40 | # RCU Subsystem | ||
41 | # | ||
42 | CONFIG_CLASSIC_RCU=y | ||
43 | # CONFIG_TREE_RCU is not set | ||
44 | # CONFIG_PREEMPT_RCU is not set | ||
45 | # CONFIG_TREE_RCU_TRACE is not set | ||
46 | # CONFIG_PREEMPT_RCU_TRACE is not set | ||
39 | CONFIG_IKCONFIG=y | 47 | CONFIG_IKCONFIG=y |
40 | CONFIG_IKCONFIG_PROC=y | 48 | CONFIG_IKCONFIG_PROC=y |
41 | CONFIG_LOG_BUF_SHIFT=16 | 49 | CONFIG_LOG_BUF_SHIFT=16 |
42 | # CONFIG_CPUSETS is not set | 50 | # CONFIG_GROUP_SCHED is not set |
51 | # CONFIG_CGROUPS is not set | ||
43 | CONFIG_SYSFS_DEPRECATED=y | 52 | CONFIG_SYSFS_DEPRECATED=y |
53 | CONFIG_SYSFS_DEPRECATED_V2=y | ||
44 | # CONFIG_RELAY is not set | 54 | # CONFIG_RELAY is not set |
55 | # CONFIG_NAMESPACES is not set | ||
45 | CONFIG_BLK_DEV_INITRD=y | 56 | CONFIG_BLK_DEV_INITRD=y |
46 | CONFIG_INITRAMFS_SOURCE="" | 57 | CONFIG_INITRAMFS_SOURCE="" |
47 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | 58 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set |
48 | CONFIG_SYSCTL=y | 59 | CONFIG_SYSCTL=y |
60 | CONFIG_ANON_INODES=y | ||
49 | CONFIG_EMBEDDED=y | 61 | CONFIG_EMBEDDED=y |
50 | CONFIG_SYSCTL_SYSCALL=y | 62 | CONFIG_SYSCTL_SYSCALL=y |
51 | CONFIG_KALLSYMS=y | 63 | CONFIG_KALLSYMS=y |
@@ -57,28 +69,40 @@ CONFIG_BUG=y | |||
57 | CONFIG_ELF_CORE=y | 69 | CONFIG_ELF_CORE=y |
58 | CONFIG_BASE_FULL=y | 70 | CONFIG_BASE_FULL=y |
59 | CONFIG_FUTEX=y | 71 | CONFIG_FUTEX=y |
60 | CONFIG_ANON_INODES=y | ||
61 | CONFIG_EPOLL=y | 72 | CONFIG_EPOLL=y |
62 | CONFIG_SIGNALFD=y | 73 | CONFIG_SIGNALFD=y |
74 | CONFIG_TIMERFD=y | ||
63 | CONFIG_EVENTFD=y | 75 | CONFIG_EVENTFD=y |
64 | CONFIG_SHMEM=y | 76 | CONFIG_SHMEM=y |
77 | CONFIG_AIO=y | ||
65 | CONFIG_VM_EVENT_COUNTERS=y | 78 | CONFIG_VM_EVENT_COUNTERS=y |
79 | CONFIG_PCI_QUIRKS=y | ||
80 | CONFIG_COMPAT_BRK=y | ||
66 | CONFIG_SLAB=y | 81 | CONFIG_SLAB=y |
67 | # CONFIG_SLUB is not set | 82 | # CONFIG_SLUB is not set |
68 | # CONFIG_SLOB is not set | 83 | # CONFIG_SLOB is not set |
84 | CONFIG_PROFILING=y | ||
85 | CONFIG_TRACEPOINTS=y | ||
86 | # CONFIG_MARKERS is not set | ||
87 | CONFIG_OPROFILE=m | ||
88 | CONFIG_HAVE_OPROFILE=y | ||
89 | CONFIG_USE_GENERIC_SMP_HELPERS=y | ||
90 | # CONFIG_HAVE_GENERIC_DMA_COHERENT is not set | ||
91 | CONFIG_SLABINFO=y | ||
69 | CONFIG_RT_MUTEXES=y | 92 | CONFIG_RT_MUTEXES=y |
70 | # CONFIG_TINY_SHMEM is not set | ||
71 | CONFIG_BASE_SMALL=0 | 93 | CONFIG_BASE_SMALL=0 |
72 | CONFIG_MODULES=y | 94 | CONFIG_MODULES=y |
95 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
73 | CONFIG_MODULE_UNLOAD=y | 96 | CONFIG_MODULE_UNLOAD=y |
74 | CONFIG_MODULE_FORCE_UNLOAD=y | 97 | CONFIG_MODULE_FORCE_UNLOAD=y |
75 | # CONFIG_MODVERSIONS is not set | 98 | # CONFIG_MODVERSIONS is not set |
76 | # CONFIG_MODULE_SRCVERSION_ALL is not set | 99 | # CONFIG_MODULE_SRCVERSION_ALL is not set |
77 | CONFIG_KMOD=y | 100 | CONFIG_INIT_ALL_POSSIBLE=y |
78 | CONFIG_STOP_MACHINE=y | 101 | CONFIG_STOP_MACHINE=y |
79 | CONFIG_BLOCK=y | 102 | CONFIG_BLOCK=y |
80 | # CONFIG_BLK_DEV_IO_TRACE is not set | 103 | # CONFIG_BLK_DEV_IO_TRACE is not set |
81 | # CONFIG_BLK_DEV_BSG is not set | 104 | # CONFIG_BLK_DEV_BSG is not set |
105 | # CONFIG_BLK_DEV_INTEGRITY is not set | ||
82 | CONFIG_BLOCK_COMPAT=y | 106 | CONFIG_BLOCK_COMPAT=y |
83 | 107 | ||
84 | # | 108 | # |
@@ -93,6 +117,7 @@ CONFIG_IOSCHED_CFQ=y | |||
93 | CONFIG_DEFAULT_CFQ=y | 117 | CONFIG_DEFAULT_CFQ=y |
94 | # CONFIG_DEFAULT_NOOP is not set | 118 | # CONFIG_DEFAULT_NOOP is not set |
95 | CONFIG_DEFAULT_IOSCHED="cfq" | 119 | CONFIG_DEFAULT_IOSCHED="cfq" |
120 | # CONFIG_FREEZER is not set | ||
96 | 121 | ||
97 | # | 122 | # |
98 | # Processor type and features | 123 | # Processor type and features |
@@ -118,12 +143,12 @@ CONFIG_NODES_SHIFT=3 | |||
118 | CONFIG_PREEMPT_NONE=y | 143 | CONFIG_PREEMPT_NONE=y |
119 | # CONFIG_PREEMPT_VOLUNTARY is not set | 144 | # CONFIG_PREEMPT_VOLUNTARY is not set |
120 | # CONFIG_PREEMPT is not set | 145 | # CONFIG_PREEMPT is not set |
121 | CONFIG_PREEMPT_BKL=y | ||
122 | # CONFIG_HZ_100 is not set | 146 | # CONFIG_HZ_100 is not set |
123 | CONFIG_HZ_250=y | 147 | CONFIG_HZ_250=y |
124 | # CONFIG_HZ_300 is not set | 148 | # CONFIG_HZ_300 is not set |
125 | # CONFIG_HZ_1000 is not set | 149 | # CONFIG_HZ_1000 is not set |
126 | CONFIG_HZ=250 | 150 | CONFIG_HZ=250 |
151 | # CONFIG_SCHED_HRTICK is not set | ||
127 | CONFIG_SELECT_MEMORY_MODEL=y | 152 | CONFIG_SELECT_MEMORY_MODEL=y |
128 | # CONFIG_FLATMEM_MANUAL is not set | 153 | # CONFIG_FLATMEM_MANUAL is not set |
129 | CONFIG_DISCONTIGMEM_MANUAL=y | 154 | CONFIG_DISCONTIGMEM_MANUAL=y |
@@ -131,11 +156,12 @@ CONFIG_DISCONTIGMEM_MANUAL=y | |||
131 | CONFIG_DISCONTIGMEM=y | 156 | CONFIG_DISCONTIGMEM=y |
132 | CONFIG_FLAT_NODE_MEM_MAP=y | 157 | CONFIG_FLAT_NODE_MEM_MAP=y |
133 | CONFIG_NEED_MULTIPLE_NODES=y | 158 | CONFIG_NEED_MULTIPLE_NODES=y |
134 | # CONFIG_SPARSEMEM_STATIC is not set | 159 | CONFIG_PAGEFLAGS_EXTENDED=y |
135 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 160 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
136 | CONFIG_RESOURCES_64BIT=y | 161 | CONFIG_PHYS_ADDR_T_64BIT=y |
137 | CONFIG_ZONE_DMA_FLAG=0 | 162 | CONFIG_ZONE_DMA_FLAG=0 |
138 | CONFIG_VIRT_TO_BUS=y | 163 | CONFIG_VIRT_TO_BUS=y |
164 | CONFIG_UNEVICTABLE_LRU=y | ||
139 | CONFIG_COMPAT=y | 165 | CONFIG_COMPAT=y |
140 | CONFIG_NR_CPUS=8 | 166 | CONFIG_NR_CPUS=8 |
141 | 167 | ||
@@ -145,14 +171,13 @@ CONFIG_NR_CPUS=8 | |||
145 | # CONFIG_GSC is not set | 171 | # CONFIG_GSC is not set |
146 | CONFIG_PCI=y | 172 | CONFIG_PCI=y |
147 | # CONFIG_ARCH_SUPPORTS_MSI is not set | 173 | # CONFIG_ARCH_SUPPORTS_MSI is not set |
174 | CONFIG_PCI_LEGACY=y | ||
148 | # CONFIG_PCI_DEBUG is not set | 175 | # CONFIG_PCI_DEBUG is not set |
176 | # CONFIG_PCI_STUB is not set | ||
149 | CONFIG_PCI_LBA=y | 177 | CONFIG_PCI_LBA=y |
150 | CONFIG_IOSAPIC=y | 178 | CONFIG_IOSAPIC=y |
151 | CONFIG_IOMMU_SBA=y | 179 | CONFIG_IOMMU_SBA=y |
152 | 180 | CONFIG_IOMMU_HELPER=y | |
153 | # | ||
154 | # PCCARD (PCMCIA/CardBus) support | ||
155 | # | ||
156 | CONFIG_PCCARD=m | 181 | CONFIG_PCCARD=m |
157 | # CONFIG_PCMCIA_DEBUG is not set | 182 | # CONFIG_PCMCIA_DEBUG is not set |
158 | CONFIG_PCMCIA=m | 183 | CONFIG_PCMCIA=m |
@@ -187,16 +212,15 @@ CONFIG_PDC_STABLE=y | |||
187 | # Executable file formats | 212 | # Executable file formats |
188 | # | 213 | # |
189 | CONFIG_BINFMT_ELF=y | 214 | CONFIG_BINFMT_ELF=y |
215 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
216 | # CONFIG_HAVE_AOUT is not set | ||
190 | # CONFIG_BINFMT_MISC is not set | 217 | # CONFIG_BINFMT_MISC is not set |
191 | |||
192 | # | ||
193 | # Networking | ||
194 | # | ||
195 | CONFIG_NET=y | 218 | CONFIG_NET=y |
196 | 219 | ||
197 | # | 220 | # |
198 | # Networking options | 221 | # Networking options |
199 | # | 222 | # |
223 | CONFIG_COMPAT_NET_DEV_OPS=y | ||
200 | CONFIG_PACKET=y | 224 | CONFIG_PACKET=y |
201 | CONFIG_PACKET_MMAP=y | 225 | CONFIG_PACKET_MMAP=y |
202 | CONFIG_UNIX=y | 226 | CONFIG_UNIX=y |
@@ -204,6 +228,8 @@ CONFIG_XFRM=y | |||
204 | CONFIG_XFRM_USER=m | 228 | CONFIG_XFRM_USER=m |
205 | # CONFIG_XFRM_SUB_POLICY is not set | 229 | # CONFIG_XFRM_SUB_POLICY is not set |
206 | # CONFIG_XFRM_MIGRATE is not set | 230 | # CONFIG_XFRM_MIGRATE is not set |
231 | # CONFIG_XFRM_STATISTICS is not set | ||
232 | CONFIG_XFRM_IPCOMP=m | ||
207 | CONFIG_NET_KEY=m | 233 | CONFIG_NET_KEY=m |
208 | # CONFIG_NET_KEY_MIGRATE is not set | 234 | # CONFIG_NET_KEY_MIGRATE is not set |
209 | CONFIG_INET=y | 235 | CONFIG_INET=y |
@@ -234,7 +260,6 @@ CONFIG_INET_TCP_DIAG=y | |||
234 | CONFIG_TCP_CONG_CUBIC=y | 260 | CONFIG_TCP_CONG_CUBIC=y |
235 | CONFIG_DEFAULT_TCP_CONG="cubic" | 261 | CONFIG_DEFAULT_TCP_CONG="cubic" |
236 | # CONFIG_TCP_MD5SIG is not set | 262 | # CONFIG_TCP_MD5SIG is not set |
237 | # CONFIG_IP_VS is not set | ||
238 | CONFIG_IPV6=m | 263 | CONFIG_IPV6=m |
239 | # CONFIG_IPV6_PRIVACY is not set | 264 | # CONFIG_IPV6_PRIVACY is not set |
240 | # CONFIG_IPV6_ROUTER_PREF is not set | 265 | # CONFIG_IPV6_ROUTER_PREF is not set |
@@ -250,66 +275,72 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m | |||
250 | CONFIG_INET6_XFRM_MODE_BEET=m | 275 | CONFIG_INET6_XFRM_MODE_BEET=m |
251 | # CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set | 276 | # CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set |
252 | CONFIG_IPV6_SIT=m | 277 | CONFIG_IPV6_SIT=m |
278 | CONFIG_IPV6_NDISC_NODETYPE=y | ||
253 | CONFIG_IPV6_TUNNEL=m | 279 | CONFIG_IPV6_TUNNEL=m |
254 | # CONFIG_IPV6_MULTIPLE_TABLES is not set | 280 | # CONFIG_IPV6_MULTIPLE_TABLES is not set |
281 | # CONFIG_IPV6_MROUTE is not set | ||
255 | # CONFIG_NETWORK_SECMARK is not set | 282 | # CONFIG_NETWORK_SECMARK is not set |
256 | CONFIG_NETFILTER=y | 283 | CONFIG_NETFILTER=y |
257 | # CONFIG_NETFILTER_DEBUG is not set | 284 | # CONFIG_NETFILTER_DEBUG is not set |
285 | CONFIG_NETFILTER_ADVANCED=y | ||
258 | 286 | ||
259 | # | 287 | # |
260 | # Core Netfilter Configuration | 288 | # Core Netfilter Configuration |
261 | # | 289 | # |
262 | # CONFIG_NETFILTER_NETLINK is not set | 290 | # CONFIG_NETFILTER_NETLINK_QUEUE is not set |
263 | # CONFIG_NF_CONNTRACK_ENABLED is not set | 291 | # CONFIG_NETFILTER_NETLINK_LOG is not set |
264 | # CONFIG_NF_CONNTRACK is not set | 292 | # CONFIG_NF_CONNTRACK is not set |
265 | CONFIG_NETFILTER_XTABLES=m | 293 | CONFIG_NETFILTER_XTABLES=m |
266 | # CONFIG_NETFILTER_XT_TARGET_CLASSIFY is not set | 294 | # CONFIG_NETFILTER_XT_TARGET_CLASSIFY is not set |
267 | # CONFIG_NETFILTER_XT_TARGET_DSCP is not set | 295 | # CONFIG_NETFILTER_XT_TARGET_DSCP is not set |
268 | # CONFIG_NETFILTER_XT_TARGET_MARK is not set | 296 | # CONFIG_NETFILTER_XT_TARGET_MARK is not set |
269 | # CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set | ||
270 | # CONFIG_NETFILTER_XT_TARGET_NFLOG is not set | 297 | # CONFIG_NETFILTER_XT_TARGET_NFLOG is not set |
298 | # CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set | ||
299 | # CONFIG_NETFILTER_XT_TARGET_RATEEST is not set | ||
271 | # CONFIG_NETFILTER_XT_TARGET_TRACE is not set | 300 | # CONFIG_NETFILTER_XT_TARGET_TRACE is not set |
272 | # CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set | 301 | # CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set |
302 | # CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP is not set | ||
273 | # CONFIG_NETFILTER_XT_MATCH_COMMENT is not set | 303 | # CONFIG_NETFILTER_XT_MATCH_COMMENT is not set |
274 | # CONFIG_NETFILTER_XT_MATCH_DCCP is not set | 304 | # CONFIG_NETFILTER_XT_MATCH_DCCP is not set |
275 | # CONFIG_NETFILTER_XT_MATCH_DSCP is not set | 305 | # CONFIG_NETFILTER_XT_MATCH_DSCP is not set |
276 | # CONFIG_NETFILTER_XT_MATCH_ESP is not set | 306 | # CONFIG_NETFILTER_XT_MATCH_ESP is not set |
307 | # CONFIG_NETFILTER_XT_MATCH_HASHLIMIT is not set | ||
308 | # CONFIG_NETFILTER_XT_MATCH_IPRANGE is not set | ||
277 | # CONFIG_NETFILTER_XT_MATCH_LENGTH is not set | 309 | # CONFIG_NETFILTER_XT_MATCH_LENGTH is not set |
278 | # CONFIG_NETFILTER_XT_MATCH_LIMIT is not set | 310 | # CONFIG_NETFILTER_XT_MATCH_LIMIT is not set |
279 | # CONFIG_NETFILTER_XT_MATCH_MAC is not set | 311 | # CONFIG_NETFILTER_XT_MATCH_MAC is not set |
280 | # CONFIG_NETFILTER_XT_MATCH_MARK is not set | 312 | # CONFIG_NETFILTER_XT_MATCH_MARK is not set |
281 | # CONFIG_NETFILTER_XT_MATCH_POLICY is not set | ||
282 | # CONFIG_NETFILTER_XT_MATCH_MULTIPORT is not set | 313 | # CONFIG_NETFILTER_XT_MATCH_MULTIPORT is not set |
314 | # CONFIG_NETFILTER_XT_MATCH_OWNER is not set | ||
315 | # CONFIG_NETFILTER_XT_MATCH_POLICY is not set | ||
283 | # CONFIG_NETFILTER_XT_MATCH_PKTTYPE is not set | 316 | # CONFIG_NETFILTER_XT_MATCH_PKTTYPE is not set |
284 | # CONFIG_NETFILTER_XT_MATCH_QUOTA is not set | 317 | # CONFIG_NETFILTER_XT_MATCH_QUOTA is not set |
318 | # CONFIG_NETFILTER_XT_MATCH_RATEEST is not set | ||
285 | # CONFIG_NETFILTER_XT_MATCH_REALM is not set | 319 | # CONFIG_NETFILTER_XT_MATCH_REALM is not set |
320 | # CONFIG_NETFILTER_XT_MATCH_RECENT is not set | ||
286 | # CONFIG_NETFILTER_XT_MATCH_SCTP is not set | 321 | # CONFIG_NETFILTER_XT_MATCH_SCTP is not set |
287 | # CONFIG_NETFILTER_XT_MATCH_STATISTIC is not set | 322 | # CONFIG_NETFILTER_XT_MATCH_STATISTIC is not set |
288 | # CONFIG_NETFILTER_XT_MATCH_STRING is not set | 323 | # CONFIG_NETFILTER_XT_MATCH_STRING is not set |
289 | # CONFIG_NETFILTER_XT_MATCH_TCPMSS is not set | 324 | # CONFIG_NETFILTER_XT_MATCH_TCPMSS is not set |
290 | # CONFIG_NETFILTER_XT_MATCH_TIME is not set | 325 | # CONFIG_NETFILTER_XT_MATCH_TIME is not set |
291 | # CONFIG_NETFILTER_XT_MATCH_U32 is not set | 326 | # CONFIG_NETFILTER_XT_MATCH_U32 is not set |
292 | # CONFIG_NETFILTER_XT_MATCH_HASHLIMIT is not set | 327 | # CONFIG_IP_VS is not set |
293 | 328 | ||
294 | # | 329 | # |
295 | # IP: Netfilter Configuration | 330 | # IP: Netfilter Configuration |
296 | # | 331 | # |
332 | # CONFIG_NF_DEFRAG_IPV4 is not set | ||
297 | CONFIG_IP_NF_QUEUE=m | 333 | CONFIG_IP_NF_QUEUE=m |
298 | CONFIG_IP_NF_IPTABLES=m | 334 | CONFIG_IP_NF_IPTABLES=m |
299 | CONFIG_IP_NF_MATCH_IPRANGE=m | 335 | # CONFIG_IP_NF_MATCH_ADDRTYPE is not set |
300 | CONFIG_IP_NF_MATCH_TOS=m | ||
301 | CONFIG_IP_NF_MATCH_RECENT=m | ||
302 | CONFIG_IP_NF_MATCH_ECN=m | ||
303 | # CONFIG_IP_NF_MATCH_AH is not set | 336 | # CONFIG_IP_NF_MATCH_AH is not set |
337 | CONFIG_IP_NF_MATCH_ECN=m | ||
304 | CONFIG_IP_NF_MATCH_TTL=m | 338 | CONFIG_IP_NF_MATCH_TTL=m |
305 | CONFIG_IP_NF_MATCH_OWNER=m | ||
306 | # CONFIG_IP_NF_MATCH_ADDRTYPE is not set | ||
307 | CONFIG_IP_NF_FILTER=m | 339 | CONFIG_IP_NF_FILTER=m |
308 | CONFIG_IP_NF_TARGET_REJECT=m | 340 | CONFIG_IP_NF_TARGET_REJECT=m |
309 | CONFIG_IP_NF_TARGET_LOG=m | 341 | CONFIG_IP_NF_TARGET_LOG=m |
310 | CONFIG_IP_NF_TARGET_ULOG=m | 342 | CONFIG_IP_NF_TARGET_ULOG=m |
311 | CONFIG_IP_NF_MANGLE=m | 343 | CONFIG_IP_NF_MANGLE=m |
312 | CONFIG_IP_NF_TARGET_TOS=m | ||
313 | CONFIG_IP_NF_TARGET_ECN=m | 344 | CONFIG_IP_NF_TARGET_ECN=m |
314 | # CONFIG_IP_NF_TARGET_TTL is not set | 345 | # CONFIG_IP_NF_TARGET_TTL is not set |
315 | CONFIG_IP_NF_RAW=m | 346 | CONFIG_IP_NF_RAW=m |
@@ -318,33 +349,30 @@ CONFIG_IP_NF_ARPFILTER=m | |||
318 | CONFIG_IP_NF_ARP_MANGLE=m | 349 | CONFIG_IP_NF_ARP_MANGLE=m |
319 | 350 | ||
320 | # | 351 | # |
321 | # IPv6: Netfilter Configuration (EXPERIMENTAL) | 352 | # IPv6: Netfilter Configuration |
322 | # | 353 | # |
323 | # CONFIG_IP6_NF_QUEUE is not set | 354 | # CONFIG_IP6_NF_QUEUE is not set |
324 | CONFIG_IP6_NF_IPTABLES=m | 355 | CONFIG_IP6_NF_IPTABLES=m |
325 | CONFIG_IP6_NF_MATCH_RT=m | 356 | # CONFIG_IP6_NF_MATCH_AH is not set |
326 | CONFIG_IP6_NF_MATCH_OPTS=m | 357 | # CONFIG_IP6_NF_MATCH_EUI64 is not set |
327 | CONFIG_IP6_NF_MATCH_FRAG=m | 358 | CONFIG_IP6_NF_MATCH_FRAG=m |
359 | CONFIG_IP6_NF_MATCH_OPTS=m | ||
328 | CONFIG_IP6_NF_MATCH_HL=m | 360 | CONFIG_IP6_NF_MATCH_HL=m |
329 | # CONFIG_IP6_NF_MATCH_OWNER is not set | ||
330 | CONFIG_IP6_NF_MATCH_IPV6HEADER=m | 361 | CONFIG_IP6_NF_MATCH_IPV6HEADER=m |
331 | # CONFIG_IP6_NF_MATCH_AH is not set | ||
332 | # CONFIG_IP6_NF_MATCH_MH is not set | 362 | # CONFIG_IP6_NF_MATCH_MH is not set |
333 | # CONFIG_IP6_NF_MATCH_EUI64 is not set | 363 | CONFIG_IP6_NF_MATCH_RT=m |
334 | CONFIG_IP6_NF_FILTER=m | ||
335 | CONFIG_IP6_NF_TARGET_LOG=m | 364 | CONFIG_IP6_NF_TARGET_LOG=m |
365 | CONFIG_IP6_NF_FILTER=m | ||
336 | CONFIG_IP6_NF_TARGET_REJECT=m | 366 | CONFIG_IP6_NF_TARGET_REJECT=m |
337 | CONFIG_IP6_NF_MANGLE=m | 367 | CONFIG_IP6_NF_MANGLE=m |
338 | # CONFIG_IP6_NF_TARGET_HL is not set | 368 | # CONFIG_IP6_NF_TARGET_HL is not set |
339 | CONFIG_IP6_NF_RAW=m | 369 | CONFIG_IP6_NF_RAW=m |
340 | CONFIG_IP_DCCP=m | 370 | CONFIG_IP_DCCP=m |
341 | CONFIG_INET_DCCP_DIAG=m | 371 | CONFIG_INET_DCCP_DIAG=m |
342 | CONFIG_IP_DCCP_ACKVEC=y | ||
343 | 372 | ||
344 | # | 373 | # |
345 | # DCCP CCIDs Configuration (EXPERIMENTAL) | 374 | # DCCP CCIDs Configuration (EXPERIMENTAL) |
346 | # | 375 | # |
347 | CONFIG_IP_DCCP_CCID2=m | ||
348 | # CONFIG_IP_DCCP_CCID2_DEBUG is not set | 376 | # CONFIG_IP_DCCP_CCID2_DEBUG is not set |
349 | # CONFIG_IP_DCCP_CCID3 is not set | 377 | # CONFIG_IP_DCCP_CCID3 is not set |
350 | 378 | ||
@@ -356,6 +384,7 @@ CONFIG_IP_DCCP_CCID2=m | |||
356 | # CONFIG_TIPC is not set | 384 | # CONFIG_TIPC is not set |
357 | # CONFIG_ATM is not set | 385 | # CONFIG_ATM is not set |
358 | # CONFIG_BRIDGE is not set | 386 | # CONFIG_BRIDGE is not set |
387 | # CONFIG_NET_DSA is not set | ||
359 | # CONFIG_VLAN_8021Q is not set | 388 | # CONFIG_VLAN_8021Q is not set |
360 | # CONFIG_DECNET is not set | 389 | # CONFIG_DECNET is not set |
361 | CONFIG_LLC=m | 390 | CONFIG_LLC=m |
@@ -366,28 +395,26 @@ CONFIG_LLC2=m | |||
366 | # CONFIG_LAPB is not set | 395 | # CONFIG_LAPB is not set |
367 | # CONFIG_ECONET is not set | 396 | # CONFIG_ECONET is not set |
368 | # CONFIG_WAN_ROUTER is not set | 397 | # CONFIG_WAN_ROUTER is not set |
369 | |||
370 | # | ||
371 | # QoS and/or fair queueing | ||
372 | # | ||
373 | # CONFIG_NET_SCHED is not set | 398 | # CONFIG_NET_SCHED is not set |
399 | # CONFIG_DCB is not set | ||
374 | 400 | ||
375 | # | 401 | # |
376 | # Network testing | 402 | # Network testing |
377 | # | 403 | # |
378 | CONFIG_NET_PKTGEN=m | 404 | CONFIG_NET_PKTGEN=m |
379 | # CONFIG_HAMRADIO is not set | 405 | # CONFIG_HAMRADIO is not set |
406 | # CONFIG_CAN is not set | ||
380 | # CONFIG_IRDA is not set | 407 | # CONFIG_IRDA is not set |
381 | # CONFIG_BT is not set | 408 | # CONFIG_BT is not set |
382 | # CONFIG_AF_RXRPC is not set | 409 | # CONFIG_AF_RXRPC is not set |
383 | 410 | # CONFIG_PHONET is not set | |
384 | # | 411 | CONFIG_WIRELESS=y |
385 | # Wireless | ||
386 | # | ||
387 | # CONFIG_CFG80211 is not set | 412 | # CONFIG_CFG80211 is not set |
413 | CONFIG_WIRELESS_OLD_REGULATORY=y | ||
388 | # CONFIG_WIRELESS_EXT is not set | 414 | # CONFIG_WIRELESS_EXT is not set |
415 | # CONFIG_LIB80211 is not set | ||
389 | # CONFIG_MAC80211 is not set | 416 | # CONFIG_MAC80211 is not set |
390 | # CONFIG_IEEE80211 is not set | 417 | # CONFIG_WIMAX is not set |
391 | # CONFIG_RFKILL is not set | 418 | # CONFIG_RFKILL is not set |
392 | # CONFIG_NET_9P is not set | 419 | # CONFIG_NET_9P is not set |
393 | 420 | ||
@@ -402,6 +429,8 @@ CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | |||
402 | # CONFIG_STANDALONE is not set | 429 | # CONFIG_STANDALONE is not set |
403 | # CONFIG_PREVENT_FIRMWARE_BUILD is not set | 430 | # CONFIG_PREVENT_FIRMWARE_BUILD is not set |
404 | CONFIG_FW_LOADER=y | 431 | CONFIG_FW_LOADER=y |
432 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
433 | CONFIG_EXTRA_FIRMWARE="" | ||
405 | # CONFIG_DEBUG_DRIVER is not set | 434 | # CONFIG_DEBUG_DRIVER is not set |
406 | # CONFIG_DEBUG_DEVRES is not set | 435 | # CONFIG_DEBUG_DEVRES is not set |
407 | # CONFIG_SYS_HYPERVISOR is not set | 436 | # CONFIG_SYS_HYPERVISOR is not set |
@@ -421,14 +450,23 @@ CONFIG_BLK_DEV_LOOP=y | |||
421 | CONFIG_BLK_DEV_RAM=y | 450 | CONFIG_BLK_DEV_RAM=y |
422 | CONFIG_BLK_DEV_RAM_COUNT=16 | 451 | CONFIG_BLK_DEV_RAM_COUNT=16 |
423 | CONFIG_BLK_DEV_RAM_SIZE=6144 | 452 | CONFIG_BLK_DEV_RAM_SIZE=6144 |
424 | CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 | 453 | # CONFIG_BLK_DEV_XIP is not set |
425 | # CONFIG_CDROM_PKTCDVD is not set | 454 | # CONFIG_CDROM_PKTCDVD is not set |
426 | # CONFIG_ATA_OVER_ETH is not set | 455 | # CONFIG_ATA_OVER_ETH is not set |
456 | # CONFIG_BLK_DEV_HD is not set | ||
427 | CONFIG_MISC_DEVICES=y | 457 | CONFIG_MISC_DEVICES=y |
428 | # CONFIG_PHANTOM is not set | 458 | # CONFIG_PHANTOM is not set |
429 | # CONFIG_EEPROM_93CX6 is not set | ||
430 | # CONFIG_SGI_IOC4 is not set | 459 | # CONFIG_SGI_IOC4 is not set |
431 | # CONFIG_TIFM_CORE is not set | 460 | # CONFIG_TIFM_CORE is not set |
461 | # CONFIG_ENCLOSURE_SERVICES is not set | ||
462 | # CONFIG_HP_ILO is not set | ||
463 | # CONFIG_C2PORT is not set | ||
464 | |||
465 | # | ||
466 | # EEPROM support | ||
467 | # | ||
468 | # CONFIG_EEPROM_93CX6 is not set | ||
469 | CONFIG_HAVE_IDE=y | ||
432 | # CONFIG_IDE is not set | 470 | # CONFIG_IDE is not set |
433 | 471 | ||
434 | # | 472 | # |
@@ -468,8 +506,10 @@ CONFIG_SCSI_SPI_ATTRS=y | |||
468 | CONFIG_SCSI_FC_ATTRS=m | 506 | CONFIG_SCSI_FC_ATTRS=m |
469 | CONFIG_SCSI_ISCSI_ATTRS=m | 507 | CONFIG_SCSI_ISCSI_ATTRS=m |
470 | # CONFIG_SCSI_SAS_LIBSAS is not set | 508 | # CONFIG_SCSI_SAS_LIBSAS is not set |
509 | # CONFIG_SCSI_SRP_ATTRS is not set | ||
471 | CONFIG_SCSI_LOWLEVEL=y | 510 | CONFIG_SCSI_LOWLEVEL=y |
472 | # CONFIG_ISCSI_TCP is not set | 511 | # CONFIG_ISCSI_TCP is not set |
512 | # CONFIG_SCSI_CXGB3_ISCSI is not set | ||
473 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set | 513 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set |
474 | # CONFIG_SCSI_3W_9XXX is not set | 514 | # CONFIG_SCSI_3W_9XXX is not set |
475 | # CONFIG_SCSI_ACARD is not set | 515 | # CONFIG_SCSI_ACARD is not set |
@@ -478,16 +518,21 @@ CONFIG_SCSI_LOWLEVEL=y | |||
478 | # CONFIG_SCSI_AIC7XXX_OLD is not set | 518 | # CONFIG_SCSI_AIC7XXX_OLD is not set |
479 | # CONFIG_SCSI_AIC79XX is not set | 519 | # CONFIG_SCSI_AIC79XX is not set |
480 | # CONFIG_SCSI_AIC94XX is not set | 520 | # CONFIG_SCSI_AIC94XX is not set |
521 | # CONFIG_SCSI_DPT_I2O is not set | ||
522 | # CONFIG_SCSI_ADVANSYS is not set | ||
481 | # CONFIG_SCSI_ARCMSR is not set | 523 | # CONFIG_SCSI_ARCMSR is not set |
482 | # CONFIG_MEGARAID_NEWGEN is not set | 524 | # CONFIG_MEGARAID_NEWGEN is not set |
483 | # CONFIG_MEGARAID_LEGACY is not set | 525 | # CONFIG_MEGARAID_LEGACY is not set |
484 | # CONFIG_MEGARAID_SAS is not set | 526 | # CONFIG_MEGARAID_SAS is not set |
485 | # CONFIG_SCSI_HPTIOP is not set | 527 | # CONFIG_SCSI_HPTIOP is not set |
528 | # CONFIG_LIBFC is not set | ||
529 | # CONFIG_FCOE is not set | ||
486 | # CONFIG_SCSI_DMX3191D is not set | 530 | # CONFIG_SCSI_DMX3191D is not set |
487 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | 531 | # CONFIG_SCSI_FUTURE_DOMAIN is not set |
488 | # CONFIG_SCSI_IPS is not set | 532 | # CONFIG_SCSI_IPS is not set |
489 | # CONFIG_SCSI_INITIO is not set | 533 | # CONFIG_SCSI_INITIO is not set |
490 | # CONFIG_SCSI_INIA100 is not set | 534 | # CONFIG_SCSI_INIA100 is not set |
535 | # CONFIG_SCSI_MVSAS is not set | ||
491 | # CONFIG_SCSI_STEX is not set | 536 | # CONFIG_SCSI_STEX is not set |
492 | CONFIG_SCSI_SYM53C8XX_2=y | 537 | CONFIG_SCSI_SYM53C8XX_2=y |
493 | CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 | 538 | CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 |
@@ -503,9 +548,11 @@ CONFIG_SCSI_QLOGIC_1280=m | |||
503 | CONFIG_SCSI_DEBUG=m | 548 | CONFIG_SCSI_DEBUG=m |
504 | # CONFIG_SCSI_SRP is not set | 549 | # CONFIG_SCSI_SRP is not set |
505 | # CONFIG_SCSI_LOWLEVEL_PCMCIA is not set | 550 | # CONFIG_SCSI_LOWLEVEL_PCMCIA is not set |
551 | # CONFIG_SCSI_DH is not set | ||
506 | # CONFIG_ATA is not set | 552 | # CONFIG_ATA is not set |
507 | CONFIG_MD=y | 553 | CONFIG_MD=y |
508 | CONFIG_BLK_DEV_MD=y | 554 | CONFIG_BLK_DEV_MD=y |
555 | CONFIG_MD_AUTODETECT=y | ||
509 | CONFIG_MD_LINEAR=y | 556 | CONFIG_MD_LINEAR=y |
510 | CONFIG_MD_RAID0=y | 557 | CONFIG_MD_RAID0=y |
511 | CONFIG_MD_RAID1=y | 558 | CONFIG_MD_RAID1=y |
@@ -514,10 +561,6 @@ CONFIG_MD_RAID1=y | |||
514 | # CONFIG_MD_MULTIPATH is not set | 561 | # CONFIG_MD_MULTIPATH is not set |
515 | # CONFIG_MD_FAULTY is not set | 562 | # CONFIG_MD_FAULTY is not set |
516 | # CONFIG_BLK_DEV_DM is not set | 563 | # CONFIG_BLK_DEV_DM is not set |
517 | |||
518 | # | ||
519 | # Fusion MPT device support | ||
520 | # | ||
521 | CONFIG_FUSION=y | 564 | CONFIG_FUSION=y |
522 | CONFIG_FUSION_SPI=m | 565 | CONFIG_FUSION_SPI=m |
523 | CONFIG_FUSION_FC=m | 566 | CONFIG_FUSION_FC=m |
@@ -529,20 +572,40 @@ CONFIG_FUSION_CTL=m | |||
529 | # | 572 | # |
530 | # IEEE 1394 (FireWire) support | 573 | # IEEE 1394 (FireWire) support |
531 | # | 574 | # |
575 | |||
576 | # | ||
577 | # Enable only one of the two stacks, unless you know what you are doing | ||
578 | # | ||
532 | # CONFIG_FIREWIRE is not set | 579 | # CONFIG_FIREWIRE is not set |
533 | # CONFIG_IEEE1394 is not set | 580 | # CONFIG_IEEE1394 is not set |
534 | # CONFIG_I2O is not set | 581 | # CONFIG_I2O is not set |
535 | CONFIG_NETDEVICES=y | 582 | CONFIG_NETDEVICES=y |
536 | # CONFIG_NETDEVICES_MULTIQUEUE is not set | ||
537 | CONFIG_DUMMY=m | 583 | CONFIG_DUMMY=m |
538 | CONFIG_BONDING=m | 584 | CONFIG_BONDING=m |
539 | # CONFIG_MACVLAN is not set | 585 | # CONFIG_MACVLAN is not set |
540 | # CONFIG_EQUALIZER is not set | 586 | # CONFIG_EQUALIZER is not set |
541 | CONFIG_TUN=m | 587 | CONFIG_TUN=m |
542 | # CONFIG_VETH is not set | 588 | # CONFIG_VETH is not set |
543 | # CONFIG_IP1000 is not set | ||
544 | # CONFIG_ARCNET is not set | 589 | # CONFIG_ARCNET is not set |
545 | # CONFIG_PHYLIB is not set | 590 | CONFIG_PHYLIB=m |
591 | |||
592 | # | ||
593 | # MII PHY device drivers | ||
594 | # | ||
595 | # CONFIG_MARVELL_PHY is not set | ||
596 | # CONFIG_DAVICOM_PHY is not set | ||
597 | # CONFIG_QSEMI_PHY is not set | ||
598 | # CONFIG_LXT_PHY is not set | ||
599 | # CONFIG_CICADA_PHY is not set | ||
600 | # CONFIG_VITESSE_PHY is not set | ||
601 | # CONFIG_SMSC_PHY is not set | ||
602 | # CONFIG_BROADCOM_PHY is not set | ||
603 | # CONFIG_ICPLUS_PHY is not set | ||
604 | # CONFIG_REALTEK_PHY is not set | ||
605 | # CONFIG_NATIONAL_PHY is not set | ||
606 | # CONFIG_STE10XP is not set | ||
607 | # CONFIG_LSI_ET1011C_PHY is not set | ||
608 | # CONFIG_MDIO_BITBANG is not set | ||
546 | CONFIG_NET_ETHERNET=y | 609 | CONFIG_NET_ETHERNET=y |
547 | CONFIG_MII=m | 610 | CONFIG_MII=m |
548 | # CONFIG_HAPPYMEAL is not set | 611 | # CONFIG_HAPPYMEAL is not set |
@@ -567,33 +630,38 @@ CONFIG_HP100=m | |||
567 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | 630 | # CONFIG_IBM_NEW_EMAC_RGMII is not set |
568 | # CONFIG_IBM_NEW_EMAC_TAH is not set | 631 | # CONFIG_IBM_NEW_EMAC_TAH is not set |
569 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | 632 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set |
633 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
634 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
635 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
570 | CONFIG_NET_PCI=y | 636 | CONFIG_NET_PCI=y |
571 | CONFIG_PCNET32=m | 637 | CONFIG_PCNET32=m |
572 | # CONFIG_PCNET32_NAPI is not set | ||
573 | # CONFIG_AMD8111_ETH is not set | 638 | # CONFIG_AMD8111_ETH is not set |
574 | # CONFIG_ADAPTEC_STARFIRE is not set | 639 | # CONFIG_ADAPTEC_STARFIRE is not set |
575 | # CONFIG_B44 is not set | 640 | # CONFIG_B44 is not set |
576 | # CONFIG_FORCEDETH is not set | 641 | # CONFIG_FORCEDETH is not set |
577 | # CONFIG_EEPRO100 is not set | ||
578 | CONFIG_E100=m | 642 | CONFIG_E100=m |
579 | # CONFIG_FEALNX is not set | 643 | # CONFIG_FEALNX is not set |
580 | # CONFIG_NATSEMI is not set | 644 | # CONFIG_NATSEMI is not set |
581 | # CONFIG_NE2K_PCI is not set | 645 | # CONFIG_NE2K_PCI is not set |
582 | # CONFIG_8139CP is not set | 646 | # CONFIG_8139CP is not set |
583 | # CONFIG_8139TOO is not set | 647 | # CONFIG_8139TOO is not set |
648 | # CONFIG_R6040 is not set | ||
584 | # CONFIG_SIS900 is not set | 649 | # CONFIG_SIS900 is not set |
585 | # CONFIG_EPIC100 is not set | 650 | # CONFIG_EPIC100 is not set |
651 | # CONFIG_SMSC9420 is not set | ||
586 | # CONFIG_SUNDANCE is not set | 652 | # CONFIG_SUNDANCE is not set |
653 | # CONFIG_TLAN is not set | ||
587 | # CONFIG_VIA_RHINE is not set | 654 | # CONFIG_VIA_RHINE is not set |
588 | # CONFIG_SC92031 is not set | 655 | # CONFIG_SC92031 is not set |
656 | # CONFIG_ATL2 is not set | ||
589 | CONFIG_NETDEV_1000=y | 657 | CONFIG_NETDEV_1000=y |
590 | CONFIG_ACENIC=m | 658 | CONFIG_ACENIC=m |
591 | CONFIG_ACENIC_OMIT_TIGON_I=y | 659 | CONFIG_ACENIC_OMIT_TIGON_I=y |
592 | # CONFIG_DL2K is not set | 660 | # CONFIG_DL2K is not set |
593 | CONFIG_E1000=m | 661 | CONFIG_E1000=m |
594 | CONFIG_E1000_NAPI=y | ||
595 | # CONFIG_E1000_DISABLE_PACKET_SPLIT is not set | ||
596 | # CONFIG_E1000E is not set | 662 | # CONFIG_E1000E is not set |
663 | # CONFIG_IP1000 is not set | ||
664 | # CONFIG_IGB is not set | ||
597 | # CONFIG_NS83820 is not set | 665 | # CONFIG_NS83820 is not set |
598 | # CONFIG_HAMACHI is not set | 666 | # CONFIG_HAMACHI is not set |
599 | # CONFIG_YELLOWFIN is not set | 667 | # CONFIG_YELLOWFIN is not set |
@@ -601,23 +669,31 @@ CONFIG_E1000_NAPI=y | |||
601 | # CONFIG_SIS190 is not set | 669 | # CONFIG_SIS190 is not set |
602 | # CONFIG_SKGE is not set | 670 | # CONFIG_SKGE is not set |
603 | # CONFIG_SKY2 is not set | 671 | # CONFIG_SKY2 is not set |
604 | # CONFIG_SK98LIN is not set | ||
605 | # CONFIG_VIA_VELOCITY is not set | 672 | # CONFIG_VIA_VELOCITY is not set |
606 | CONFIG_TIGON3=m | 673 | CONFIG_TIGON3=m |
607 | # CONFIG_BNX2 is not set | 674 | # CONFIG_BNX2 is not set |
608 | # CONFIG_QLA3XXX is not set | 675 | # CONFIG_QLA3XXX is not set |
609 | # CONFIG_ATL1 is not set | 676 | # CONFIG_ATL1 is not set |
677 | # CONFIG_ATL1E is not set | ||
678 | # CONFIG_ATL1C is not set | ||
679 | # CONFIG_JME is not set | ||
610 | CONFIG_NETDEV_10000=y | 680 | CONFIG_NETDEV_10000=y |
611 | # CONFIG_CHELSIO_T1 is not set | 681 | # CONFIG_CHELSIO_T1 is not set |
682 | CONFIG_CHELSIO_T3_DEPENDS=y | ||
612 | # CONFIG_CHELSIO_T3 is not set | 683 | # CONFIG_CHELSIO_T3 is not set |
684 | # CONFIG_ENIC is not set | ||
613 | # CONFIG_IXGBE is not set | 685 | # CONFIG_IXGBE is not set |
614 | # CONFIG_IXGB is not set | 686 | # CONFIG_IXGB is not set |
615 | # CONFIG_S2IO is not set | 687 | # CONFIG_S2IO is not set |
616 | # CONFIG_MYRI10GE is not set | 688 | # CONFIG_MYRI10GE is not set |
617 | # CONFIG_NETXEN_NIC is not set | 689 | # CONFIG_NETXEN_NIC is not set |
618 | # CONFIG_NIU is not set | 690 | # CONFIG_NIU is not set |
691 | # CONFIG_MLX4_EN is not set | ||
619 | # CONFIG_MLX4_CORE is not set | 692 | # CONFIG_MLX4_CORE is not set |
620 | # CONFIG_TEHUTI is not set | 693 | # CONFIG_TEHUTI is not set |
694 | # CONFIG_BNX2X is not set | ||
695 | # CONFIG_QLGE is not set | ||
696 | # CONFIG_SFC is not set | ||
621 | # CONFIG_TR is not set | 697 | # CONFIG_TR is not set |
622 | 698 | ||
623 | # | 699 | # |
@@ -625,6 +701,11 @@ CONFIG_NETDEV_10000=y | |||
625 | # | 701 | # |
626 | # CONFIG_WLAN_PRE80211 is not set | 702 | # CONFIG_WLAN_PRE80211 is not set |
627 | # CONFIG_WLAN_80211 is not set | 703 | # CONFIG_WLAN_80211 is not set |
704 | # CONFIG_IWLWIFI_LEDS is not set | ||
705 | |||
706 | # | ||
707 | # Enable WiMAX (Networking options) to see the WiMAX drivers | ||
708 | # | ||
628 | CONFIG_NET_PCMCIA=y | 709 | CONFIG_NET_PCMCIA=y |
629 | CONFIG_PCMCIA_3C589=m | 710 | CONFIG_PCMCIA_3C589=m |
630 | CONFIG_PCMCIA_3C574=m | 711 | CONFIG_PCMCIA_3C574=m |
@@ -650,7 +731,6 @@ CONFIG_PPP_BSDCOMP=m | |||
650 | # CONFIG_SLIP is not set | 731 | # CONFIG_SLIP is not set |
651 | CONFIG_SLHC=m | 732 | CONFIG_SLHC=m |
652 | # CONFIG_NET_FC is not set | 733 | # CONFIG_NET_FC is not set |
653 | # CONFIG_SHAPER is not set | ||
654 | # CONFIG_NETCONSOLE is not set | 734 | # CONFIG_NETCONSOLE is not set |
655 | # CONFIG_NETPOLL is not set | 735 | # CONFIG_NETPOLL is not set |
656 | # CONFIG_NET_POLL_CONTROLLER is not set | 736 | # CONFIG_NET_POLL_CONTROLLER is not set |
@@ -669,7 +749,6 @@ CONFIG_INPUT=y | |||
669 | # | 749 | # |
670 | # CONFIG_INPUT_MOUSEDEV is not set | 750 | # CONFIG_INPUT_MOUSEDEV is not set |
671 | # CONFIG_INPUT_JOYDEV is not set | 751 | # CONFIG_INPUT_JOYDEV is not set |
672 | # CONFIG_INPUT_TSDEV is not set | ||
673 | # CONFIG_INPUT_EVDEV is not set | 752 | # CONFIG_INPUT_EVDEV is not set |
674 | # CONFIG_INPUT_EVBUG is not set | 753 | # CONFIG_INPUT_EVBUG is not set |
675 | 754 | ||
@@ -693,10 +772,13 @@ CONFIG_INPUT=y | |||
693 | # Character devices | 772 | # Character devices |
694 | # | 773 | # |
695 | CONFIG_VT=y | 774 | CONFIG_VT=y |
775 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
696 | CONFIG_VT_CONSOLE=y | 776 | CONFIG_VT_CONSOLE=y |
697 | CONFIG_HW_CONSOLE=y | 777 | CONFIG_HW_CONSOLE=y |
698 | # CONFIG_VT_HW_CONSOLE_BINDING is not set | 778 | # CONFIG_VT_HW_CONSOLE_BINDING is not set |
779 | CONFIG_DEVKMEM=y | ||
699 | # CONFIG_SERIAL_NONSTANDARD is not set | 780 | # CONFIG_SERIAL_NONSTANDARD is not set |
781 | # CONFIG_NOZOMI is not set | ||
700 | 782 | ||
701 | # | 783 | # |
702 | # Serial drivers | 784 | # Serial drivers |
@@ -721,17 +803,12 @@ CONFIG_SERIAL_CORE=y | |||
721 | CONFIG_SERIAL_CORE_CONSOLE=y | 803 | CONFIG_SERIAL_CORE_CONSOLE=y |
722 | # CONFIG_SERIAL_JSM is not set | 804 | # CONFIG_SERIAL_JSM is not set |
723 | CONFIG_UNIX98_PTYS=y | 805 | CONFIG_UNIX98_PTYS=y |
806 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | ||
724 | # CONFIG_LEGACY_PTYS is not set | 807 | # CONFIG_LEGACY_PTYS is not set |
725 | # CONFIG_IPMI_HANDLER is not set | 808 | # CONFIG_IPMI_HANDLER is not set |
726 | # CONFIG_WATCHDOG is not set | ||
727 | # CONFIG_HW_RANDOM is not set | 809 | # CONFIG_HW_RANDOM is not set |
728 | CONFIG_GEN_RTC=y | ||
729 | CONFIG_GEN_RTC_X=y | ||
730 | # CONFIG_R3964 is not set | 810 | # CONFIG_R3964 is not set |
731 | # CONFIG_APPLICOM is not set | 811 | # CONFIG_APPLICOM is not set |
732 | CONFIG_AGP=y | ||
733 | CONFIG_AGP_PARISC=y | ||
734 | # CONFIG_DRM is not set | ||
735 | 812 | ||
736 | # | 813 | # |
737 | # PCMCIA character devices | 814 | # PCMCIA character devices |
@@ -739,51 +816,66 @@ CONFIG_AGP_PARISC=y | |||
739 | # CONFIG_SYNCLINK_CS is not set | 816 | # CONFIG_SYNCLINK_CS is not set |
740 | # CONFIG_CARDMAN_4000 is not set | 817 | # CONFIG_CARDMAN_4000 is not set |
741 | # CONFIG_CARDMAN_4040 is not set | 818 | # CONFIG_CARDMAN_4040 is not set |
819 | # CONFIG_IPWIRELESS is not set | ||
742 | CONFIG_RAW_DRIVER=y | 820 | CONFIG_RAW_DRIVER=y |
743 | CONFIG_MAX_RAW_DEVS=256 | 821 | CONFIG_MAX_RAW_DEVS=256 |
744 | # CONFIG_TCG_TPM is not set | 822 | # CONFIG_TCG_TPM is not set |
745 | CONFIG_DEVPORT=y | 823 | CONFIG_DEVPORT=y |
746 | # CONFIG_I2C is not set | 824 | # CONFIG_I2C is not set |
747 | |||
748 | # | ||
749 | # SPI support | ||
750 | # | ||
751 | # CONFIG_SPI is not set | 825 | # CONFIG_SPI is not set |
752 | # CONFIG_SPI_MASTER is not set | ||
753 | # CONFIG_W1 is not set | 826 | # CONFIG_W1 is not set |
754 | # CONFIG_POWER_SUPPLY is not set | 827 | # CONFIG_POWER_SUPPLY is not set |
755 | # CONFIG_HWMON is not set | 828 | # CONFIG_HWMON is not set |
829 | # CONFIG_THERMAL is not set | ||
830 | # CONFIG_THERMAL_HWMON is not set | ||
831 | # CONFIG_WATCHDOG is not set | ||
832 | CONFIG_SSB_POSSIBLE=y | ||
756 | 833 | ||
757 | # | 834 | # |
758 | # Sonics Silicon Backplane | 835 | # Sonics Silicon Backplane |
759 | # | 836 | # |
760 | CONFIG_SSB_POSSIBLE=y | ||
761 | # CONFIG_SSB is not set | 837 | # CONFIG_SSB is not set |
762 | 838 | ||
763 | # | 839 | # |
764 | # Multifunction device drivers | 840 | # Multifunction device drivers |
765 | # | 841 | # |
842 | # CONFIG_MFD_CORE is not set | ||
766 | # CONFIG_MFD_SM501 is not set | 843 | # CONFIG_MFD_SM501 is not set |
844 | # CONFIG_HTC_PASIC3 is not set | ||
845 | # CONFIG_MFD_TMIO is not set | ||
846 | # CONFIG_REGULATOR is not set | ||
767 | 847 | ||
768 | # | 848 | # |
769 | # Multimedia devices | 849 | # Multimedia devices |
770 | # | 850 | # |
851 | |||
852 | # | ||
853 | # Multimedia core support | ||
854 | # | ||
771 | # CONFIG_VIDEO_DEV is not set | 855 | # CONFIG_VIDEO_DEV is not set |
772 | # CONFIG_DVB_CORE is not set | 856 | # CONFIG_DVB_CORE is not set |
857 | # CONFIG_VIDEO_MEDIA is not set | ||
858 | |||
859 | # | ||
860 | # Multimedia drivers | ||
861 | # | ||
773 | # CONFIG_DAB is not set | 862 | # CONFIG_DAB is not set |
774 | 863 | ||
775 | # | 864 | # |
776 | # Graphics support | 865 | # Graphics support |
777 | # | 866 | # |
867 | CONFIG_AGP=y | ||
868 | CONFIG_AGP_PARISC=y | ||
869 | # CONFIG_DRM is not set | ||
870 | # CONFIG_VGASTATE is not set | ||
871 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | ||
872 | # CONFIG_FB is not set | ||
778 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | 873 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set |
779 | 874 | ||
780 | # | 875 | # |
781 | # Display device support | 876 | # Display device support |
782 | # | 877 | # |
783 | # CONFIG_DISPLAY_SUPPORT is not set | 878 | # CONFIG_DISPLAY_SUPPORT is not set |
784 | # CONFIG_VGASTATE is not set | ||
785 | # CONFIG_VIDEO_OUTPUT_CONTROL is not set | ||
786 | # CONFIG_FB is not set | ||
787 | 879 | ||
788 | # | 880 | # |
789 | # Console display driver support | 881 | # Console display driver support |
@@ -792,50 +884,83 @@ CONFIG_DUMMY_CONSOLE=y | |||
792 | CONFIG_DUMMY_CONSOLE_COLUMNS=160 | 884 | CONFIG_DUMMY_CONSOLE_COLUMNS=160 |
793 | CONFIG_DUMMY_CONSOLE_ROWS=64 | 885 | CONFIG_DUMMY_CONSOLE_ROWS=64 |
794 | # CONFIG_STI_CONSOLE is not set | 886 | # CONFIG_STI_CONSOLE is not set |
795 | |||
796 | # | ||
797 | # Sound | ||
798 | # | ||
799 | # CONFIG_SOUND is not set | 887 | # CONFIG_SOUND is not set |
800 | CONFIG_HID_SUPPORT=y | 888 | CONFIG_HID_SUPPORT=y |
801 | CONFIG_HID=y | 889 | CONFIG_HID=y |
802 | # CONFIG_HID_DEBUG is not set | 890 | # CONFIG_HID_DEBUG is not set |
891 | # CONFIG_HIDRAW is not set | ||
892 | # CONFIG_HID_PID is not set | ||
893 | |||
894 | # | ||
895 | # Special HID drivers | ||
896 | # | ||
897 | CONFIG_HID_COMPAT=y | ||
803 | CONFIG_USB_SUPPORT=y | 898 | CONFIG_USB_SUPPORT=y |
804 | CONFIG_USB_ARCH_HAS_HCD=y | 899 | CONFIG_USB_ARCH_HAS_HCD=y |
805 | CONFIG_USB_ARCH_HAS_OHCI=y | 900 | CONFIG_USB_ARCH_HAS_OHCI=y |
806 | CONFIG_USB_ARCH_HAS_EHCI=y | 901 | CONFIG_USB_ARCH_HAS_EHCI=y |
807 | # CONFIG_USB is not set | 902 | # CONFIG_USB is not set |
903 | # CONFIG_USB_OTG_WHITELIST is not set | ||
904 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set | ||
808 | 905 | ||
809 | # | 906 | # |
810 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 907 | # Enable Host or Gadget support to see Inventra options |
811 | # | 908 | # |
812 | 909 | ||
813 | # | 910 | # |
814 | # USB Gadget Support | 911 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed; |
815 | # | 912 | # |
816 | # CONFIG_USB_GADGET is not set | 913 | # CONFIG_USB_GADGET is not set |
914 | |||
915 | # | ||
916 | # OTG and related infrastructure | ||
917 | # | ||
918 | # CONFIG_UWB is not set | ||
817 | # CONFIG_MMC is not set | 919 | # CONFIG_MMC is not set |
920 | # CONFIG_MEMSTICK is not set | ||
818 | # CONFIG_NEW_LEDS is not set | 921 | # CONFIG_NEW_LEDS is not set |
922 | # CONFIG_ACCESSIBILITY is not set | ||
819 | # CONFIG_INFINIBAND is not set | 923 | # CONFIG_INFINIBAND is not set |
820 | # CONFIG_RTC_CLASS is not set | 924 | CONFIG_RTC_LIB=y |
925 | CONFIG_RTC_CLASS=y | ||
926 | CONFIG_RTC_HCTOSYS=y | ||
927 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
928 | # CONFIG_RTC_DEBUG is not set | ||
821 | 929 | ||
822 | # | 930 | # |
823 | # DMA Engine support | 931 | # RTC interfaces |
824 | # | 932 | # |
825 | # CONFIG_DMA_ENGINE is not set | 933 | CONFIG_RTC_INTF_SYSFS=y |
934 | CONFIG_RTC_INTF_PROC=y | ||
935 | CONFIG_RTC_INTF_DEV=y | ||
936 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
937 | # CONFIG_RTC_DRV_TEST is not set | ||
826 | 938 | ||
827 | # | 939 | # |
828 | # DMA Clients | 940 | # SPI RTC drivers |
829 | # | 941 | # |
830 | 942 | ||
831 | # | 943 | # |
832 | # DMA Devices | 944 | # Platform RTC drivers |
833 | # | 945 | # |
946 | # CONFIG_RTC_DRV_DS1286 is not set | ||
947 | # CONFIG_RTC_DRV_DS1511 is not set | ||
948 | # CONFIG_RTC_DRV_DS1553 is not set | ||
949 | # CONFIG_RTC_DRV_DS1742 is not set | ||
950 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
951 | # CONFIG_RTC_DRV_M48T86 is not set | ||
952 | # CONFIG_RTC_DRV_M48T35 is not set | ||
953 | # CONFIG_RTC_DRV_M48T59 is not set | ||
954 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
955 | # CONFIG_RTC_DRV_V3020 is not set | ||
834 | 956 | ||
835 | # | 957 | # |
836 | # Userspace I/O | 958 | # on-CPU RTC drivers |
837 | # | 959 | # |
960 | CONFIG_RTC_DRV_PARISC=y | ||
961 | # CONFIG_DMADEVICES is not set | ||
838 | # CONFIG_UIO is not set | 962 | # CONFIG_UIO is not set |
963 | # CONFIG_STAGING is not set | ||
839 | 964 | ||
840 | # | 965 | # |
841 | # File systems | 966 | # File systems |
@@ -845,7 +970,7 @@ CONFIG_EXT2_FS=y | |||
845 | # CONFIG_EXT2_FS_XIP is not set | 970 | # CONFIG_EXT2_FS_XIP is not set |
846 | CONFIG_EXT3_FS=y | 971 | CONFIG_EXT3_FS=y |
847 | # CONFIG_EXT3_FS_XATTR is not set | 972 | # CONFIG_EXT3_FS_XATTR is not set |
848 | # CONFIG_EXT4DEV_FS is not set | 973 | # CONFIG_EXT4_FS is not set |
849 | CONFIG_JBD=y | 974 | CONFIG_JBD=y |
850 | # CONFIG_JBD_DEBUG is not set | 975 | # CONFIG_JBD_DEBUG is not set |
851 | # CONFIG_REISERFS_FS is not set | 976 | # CONFIG_REISERFS_FS is not set |
@@ -855,19 +980,19 @@ CONFIG_JFS_FS=m | |||
855 | # CONFIG_JFS_DEBUG is not set | 980 | # CONFIG_JFS_DEBUG is not set |
856 | # CONFIG_JFS_STATISTICS is not set | 981 | # CONFIG_JFS_STATISTICS is not set |
857 | CONFIG_FS_POSIX_ACL=y | 982 | CONFIG_FS_POSIX_ACL=y |
983 | CONFIG_FILE_LOCKING=y | ||
858 | CONFIG_XFS_FS=m | 984 | CONFIG_XFS_FS=m |
859 | # CONFIG_XFS_QUOTA is not set | 985 | # CONFIG_XFS_QUOTA is not set |
860 | # CONFIG_XFS_SECURITY is not set | ||
861 | # CONFIG_XFS_POSIX_ACL is not set | 986 | # CONFIG_XFS_POSIX_ACL is not set |
862 | # CONFIG_XFS_RT is not set | 987 | # CONFIG_XFS_RT is not set |
988 | # CONFIG_XFS_DEBUG is not set | ||
863 | # CONFIG_GFS2_FS is not set | 989 | # CONFIG_GFS2_FS is not set |
864 | # CONFIG_OCFS2_FS is not set | 990 | # CONFIG_OCFS2_FS is not set |
865 | # CONFIG_MINIX_FS is not set | 991 | # CONFIG_BTRFS_FS is not set |
866 | # CONFIG_ROMFS_FS is not set | 992 | CONFIG_DNOTIFY=y |
867 | CONFIG_INOTIFY=y | 993 | CONFIG_INOTIFY=y |
868 | CONFIG_INOTIFY_USER=y | 994 | CONFIG_INOTIFY_USER=y |
869 | # CONFIG_QUOTA is not set | 995 | # CONFIG_QUOTA is not set |
870 | CONFIG_DNOTIFY=y | ||
871 | # CONFIG_AUTOFS_FS is not set | 996 | # CONFIG_AUTOFS_FS is not set |
872 | CONFIG_AUTOFS4_FS=y | 997 | CONFIG_AUTOFS4_FS=y |
873 | # CONFIG_FUSE_FS is not set | 998 | # CONFIG_FUSE_FS is not set |
@@ -897,16 +1022,13 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | |||
897 | CONFIG_PROC_FS=y | 1022 | CONFIG_PROC_FS=y |
898 | CONFIG_PROC_KCORE=y | 1023 | CONFIG_PROC_KCORE=y |
899 | CONFIG_PROC_SYSCTL=y | 1024 | CONFIG_PROC_SYSCTL=y |
1025 | CONFIG_PROC_PAGE_MONITOR=y | ||
900 | CONFIG_SYSFS=y | 1026 | CONFIG_SYSFS=y |
901 | CONFIG_TMPFS=y | 1027 | CONFIG_TMPFS=y |
902 | # CONFIG_TMPFS_POSIX_ACL is not set | 1028 | # CONFIG_TMPFS_POSIX_ACL is not set |
903 | # CONFIG_HUGETLB_PAGE is not set | 1029 | # CONFIG_HUGETLB_PAGE is not set |
904 | CONFIG_RAMFS=y | ||
905 | # CONFIG_CONFIGFS_FS is not set | 1030 | # CONFIG_CONFIGFS_FS is not set |
906 | 1031 | CONFIG_MISC_FILESYSTEMS=y | |
907 | # | ||
908 | # Miscellaneous filesystems | ||
909 | # | ||
910 | # CONFIG_ADFS_FS is not set | 1032 | # CONFIG_ADFS_FS is not set |
911 | # CONFIG_AFFS_FS is not set | 1033 | # CONFIG_AFFS_FS is not set |
912 | # CONFIG_ECRYPT_FS is not set | 1034 | # CONFIG_ECRYPT_FS is not set |
@@ -916,34 +1038,33 @@ CONFIG_RAMFS=y | |||
916 | # CONFIG_BFS_FS is not set | 1038 | # CONFIG_BFS_FS is not set |
917 | # CONFIG_EFS_FS is not set | 1039 | # CONFIG_EFS_FS is not set |
918 | # CONFIG_CRAMFS is not set | 1040 | # CONFIG_CRAMFS is not set |
1041 | # CONFIG_SQUASHFS is not set | ||
919 | # CONFIG_VXFS_FS is not set | 1042 | # CONFIG_VXFS_FS is not set |
1043 | # CONFIG_MINIX_FS is not set | ||
1044 | # CONFIG_OMFS_FS is not set | ||
920 | # CONFIG_HPFS_FS is not set | 1045 | # CONFIG_HPFS_FS is not set |
921 | # CONFIG_QNX4FS_FS is not set | 1046 | # CONFIG_QNX4FS_FS is not set |
1047 | # CONFIG_ROMFS_FS is not set | ||
922 | # CONFIG_SYSV_FS is not set | 1048 | # CONFIG_SYSV_FS is not set |
923 | CONFIG_UFS_FS=m | 1049 | CONFIG_UFS_FS=m |
924 | # CONFIG_UFS_FS_WRITE is not set | 1050 | # CONFIG_UFS_FS_WRITE is not set |
925 | # CONFIG_UFS_DEBUG is not set | 1051 | # CONFIG_UFS_DEBUG is not set |
926 | 1052 | CONFIG_NETWORK_FILESYSTEMS=y | |
927 | # | ||
928 | # Network File Systems | ||
929 | # | ||
930 | CONFIG_NFS_FS=m | 1053 | CONFIG_NFS_FS=m |
931 | CONFIG_NFS_V3=y | 1054 | CONFIG_NFS_V3=y |
932 | # CONFIG_NFS_V3_ACL is not set | 1055 | # CONFIG_NFS_V3_ACL is not set |
933 | CONFIG_NFS_V4=y | 1056 | CONFIG_NFS_V4=y |
934 | CONFIG_NFS_DIRECTIO=y | ||
935 | CONFIG_NFSD=m | 1057 | CONFIG_NFSD=m |
936 | CONFIG_NFSD_V3=y | 1058 | CONFIG_NFSD_V3=y |
937 | # CONFIG_NFSD_V3_ACL is not set | 1059 | # CONFIG_NFSD_V3_ACL is not set |
938 | CONFIG_NFSD_V4=y | 1060 | CONFIG_NFSD_V4=y |
939 | CONFIG_NFSD_TCP=y | ||
940 | CONFIG_LOCKD=m | 1061 | CONFIG_LOCKD=m |
941 | CONFIG_LOCKD_V4=y | 1062 | CONFIG_LOCKD_V4=y |
942 | CONFIG_EXPORTFS=m | 1063 | CONFIG_EXPORTFS=m |
943 | CONFIG_NFS_COMMON=y | 1064 | CONFIG_NFS_COMMON=y |
944 | CONFIG_SUNRPC=m | 1065 | CONFIG_SUNRPC=m |
945 | CONFIG_SUNRPC_GSS=m | 1066 | CONFIG_SUNRPC_GSS=m |
946 | # CONFIG_SUNRPC_BIND34 is not set | 1067 | # CONFIG_SUNRPC_REGISTER_V4 is not set |
947 | CONFIG_RPCSEC_GSS_KRB5=m | 1068 | CONFIG_RPCSEC_GSS_KRB5=m |
948 | CONFIG_RPCSEC_GSS_SPKM3=m | 1069 | CONFIG_RPCSEC_GSS_SPKM3=m |
949 | CONFIG_SMB_FS=m | 1070 | CONFIG_SMB_FS=m |
@@ -952,6 +1073,7 @@ CONFIG_SMB_NLS_REMOTE="cp437" | |||
952 | CONFIG_CIFS=m | 1073 | CONFIG_CIFS=m |
953 | # CONFIG_CIFS_STATS is not set | 1074 | # CONFIG_CIFS_STATS is not set |
954 | # CONFIG_CIFS_WEAK_PW_HASH is not set | 1075 | # CONFIG_CIFS_WEAK_PW_HASH is not set |
1076 | # CONFIG_CIFS_UPCALL is not set | ||
955 | # CONFIG_CIFS_XATTR is not set | 1077 | # CONFIG_CIFS_XATTR is not set |
956 | # CONFIG_CIFS_DEBUG2 is not set | 1078 | # CONFIG_CIFS_DEBUG2 is not set |
957 | # CONFIG_CIFS_EXPERIMENTAL is not set | 1079 | # CONFIG_CIFS_EXPERIMENTAL is not set |
@@ -964,10 +1086,6 @@ CONFIG_CIFS=m | |||
964 | # | 1086 | # |
965 | # CONFIG_PARTITION_ADVANCED is not set | 1087 | # CONFIG_PARTITION_ADVANCED is not set |
966 | CONFIG_MSDOS_PARTITION=y | 1088 | CONFIG_MSDOS_PARTITION=y |
967 | |||
968 | # | ||
969 | # Native Language Support | ||
970 | # | ||
971 | CONFIG_NLS=y | 1089 | CONFIG_NLS=y |
972 | CONFIG_NLS_DEFAULT="iso8859-1" | 1090 | CONFIG_NLS_DEFAULT="iso8859-1" |
973 | CONFIG_NLS_CODEPAGE_437=m | 1091 | CONFIG_NLS_CODEPAGE_437=m |
@@ -1008,33 +1126,28 @@ CONFIG_NLS_ISO8859_15=m | |||
1008 | # CONFIG_NLS_KOI8_R is not set | 1126 | # CONFIG_NLS_KOI8_R is not set |
1009 | # CONFIG_NLS_KOI8_U is not set | 1127 | # CONFIG_NLS_KOI8_U is not set |
1010 | CONFIG_NLS_UTF8=m | 1128 | CONFIG_NLS_UTF8=m |
1011 | |||
1012 | # | ||
1013 | # Distributed Lock Manager | ||
1014 | # | ||
1015 | # CONFIG_DLM is not set | 1129 | # CONFIG_DLM is not set |
1016 | 1130 | ||
1017 | # | 1131 | # |
1018 | # Profiling support | ||
1019 | # | ||
1020 | CONFIG_PROFILING=y | ||
1021 | CONFIG_OPROFILE=m | ||
1022 | |||
1023 | # | ||
1024 | # Kernel hacking | 1132 | # Kernel hacking |
1025 | # | 1133 | # |
1026 | # CONFIG_PRINTK_TIME is not set | 1134 | # CONFIG_PRINTK_TIME is not set |
1135 | CONFIG_ENABLE_WARN_DEPRECATED=y | ||
1027 | CONFIG_ENABLE_MUST_CHECK=y | 1136 | CONFIG_ENABLE_MUST_CHECK=y |
1137 | CONFIG_FRAME_WARN=2048 | ||
1028 | CONFIG_MAGIC_SYSRQ=y | 1138 | CONFIG_MAGIC_SYSRQ=y |
1029 | # CONFIG_UNUSED_SYMBOLS is not set | 1139 | # CONFIG_UNUSED_SYMBOLS is not set |
1030 | # CONFIG_DEBUG_FS is not set | 1140 | CONFIG_DEBUG_FS=y |
1031 | CONFIG_HEADERS_CHECK=y | 1141 | CONFIG_HEADERS_CHECK=y |
1032 | CONFIG_DEBUG_KERNEL=y | 1142 | CONFIG_DEBUG_KERNEL=y |
1033 | # CONFIG_DEBUG_SHIRQ is not set | 1143 | # CONFIG_DEBUG_SHIRQ is not set |
1034 | CONFIG_DETECT_SOFTLOCKUP=y | 1144 | CONFIG_DETECT_SOFTLOCKUP=y |
1145 | # CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set | ||
1146 | CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 | ||
1035 | CONFIG_SCHED_DEBUG=y | 1147 | CONFIG_SCHED_DEBUG=y |
1036 | # CONFIG_SCHEDSTATS is not set | 1148 | # CONFIG_SCHEDSTATS is not set |
1037 | # CONFIG_TIMER_STATS is not set | 1149 | # CONFIG_TIMER_STATS is not set |
1150 | # CONFIG_DEBUG_OBJECTS is not set | ||
1038 | # CONFIG_DEBUG_SLAB is not set | 1151 | # CONFIG_DEBUG_SLAB is not set |
1039 | # CONFIG_DEBUG_RT_MUTEXES is not set | 1152 | # CONFIG_DEBUG_RT_MUTEXES is not set |
1040 | # CONFIG_RT_MUTEX_TESTER is not set | 1153 | # CONFIG_RT_MUTEX_TESTER is not set |
@@ -1046,10 +1159,33 @@ CONFIG_SCHED_DEBUG=y | |||
1046 | # CONFIG_DEBUG_BUGVERBOSE is not set | 1159 | # CONFIG_DEBUG_BUGVERBOSE is not set |
1047 | # CONFIG_DEBUG_INFO is not set | 1160 | # CONFIG_DEBUG_INFO is not set |
1048 | # CONFIG_DEBUG_VM is not set | 1161 | # CONFIG_DEBUG_VM is not set |
1162 | # CONFIG_DEBUG_WRITECOUNT is not set | ||
1163 | # CONFIG_DEBUG_MEMORY_INIT is not set | ||
1049 | # CONFIG_DEBUG_LIST is not set | 1164 | # CONFIG_DEBUG_LIST is not set |
1050 | CONFIG_FORCED_INLINING=y | 1165 | # CONFIG_DEBUG_SG is not set |
1166 | # CONFIG_DEBUG_NOTIFIERS is not set | ||
1167 | # CONFIG_BOOT_PRINTK_DELAY is not set | ||
1051 | # CONFIG_RCU_TORTURE_TEST is not set | 1168 | # CONFIG_RCU_TORTURE_TEST is not set |
1169 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||
1170 | # CONFIG_BACKTRACE_SELF_TEST is not set | ||
1171 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | ||
1052 | # CONFIG_FAULT_INJECTION is not set | 1172 | # CONFIG_FAULT_INJECTION is not set |
1173 | # CONFIG_SYSCTL_SYSCALL_CHECK is not set | ||
1174 | CONFIG_NOP_TRACER=y | ||
1175 | CONFIG_RING_BUFFER=y | ||
1176 | CONFIG_TRACING=y | ||
1177 | |||
1178 | # | ||
1179 | # Tracers | ||
1180 | # | ||
1181 | # CONFIG_SCHED_TRACER is not set | ||
1182 | # CONFIG_CONTEXT_SWITCH_TRACER is not set | ||
1183 | # CONFIG_BOOT_TRACER is not set | ||
1184 | # CONFIG_TRACE_BRANCH_PROFILING is not set | ||
1185 | # CONFIG_FTRACE_STARTUP_TEST is not set | ||
1186 | # CONFIG_BUILD_DOCSRC is not set | ||
1187 | # CONFIG_DYNAMIC_PRINTK_DEBUG is not set | ||
1188 | # CONFIG_SAMPLES is not set | ||
1053 | # CONFIG_DEBUG_RODATA is not set | 1189 | # CONFIG_DEBUG_RODATA is not set |
1054 | 1190 | ||
1055 | # | 1191 | # |
@@ -1058,56 +1194,112 @@ CONFIG_FORCED_INLINING=y | |||
1058 | CONFIG_KEYS=y | 1194 | CONFIG_KEYS=y |
1059 | CONFIG_KEYS_DEBUG_PROC_KEYS=y | 1195 | CONFIG_KEYS_DEBUG_PROC_KEYS=y |
1060 | # CONFIG_SECURITY is not set | 1196 | # CONFIG_SECURITY is not set |
1197 | # CONFIG_SECURITYFS is not set | ||
1198 | # CONFIG_SECURITY_FILE_CAPABILITIES is not set | ||
1061 | CONFIG_CRYPTO=y | 1199 | CONFIG_CRYPTO=y |
1200 | |||
1201 | # | ||
1202 | # Crypto core or helper | ||
1203 | # | ||
1204 | # CONFIG_CRYPTO_FIPS is not set | ||
1062 | CONFIG_CRYPTO_ALGAPI=y | 1205 | CONFIG_CRYPTO_ALGAPI=y |
1206 | CONFIG_CRYPTO_ALGAPI2=y | ||
1207 | CONFIG_CRYPTO_AEAD=m | ||
1208 | CONFIG_CRYPTO_AEAD2=y | ||
1063 | CONFIG_CRYPTO_BLKCIPHER=m | 1209 | CONFIG_CRYPTO_BLKCIPHER=m |
1210 | CONFIG_CRYPTO_BLKCIPHER2=y | ||
1064 | CONFIG_CRYPTO_HASH=y | 1211 | CONFIG_CRYPTO_HASH=y |
1212 | CONFIG_CRYPTO_HASH2=y | ||
1213 | CONFIG_CRYPTO_RNG2=y | ||
1065 | CONFIG_CRYPTO_MANAGER=y | 1214 | CONFIG_CRYPTO_MANAGER=y |
1215 | CONFIG_CRYPTO_MANAGER2=y | ||
1216 | # CONFIG_CRYPTO_GF128MUL is not set | ||
1217 | CONFIG_CRYPTO_NULL=m | ||
1218 | # CONFIG_CRYPTO_CRYPTD is not set | ||
1219 | CONFIG_CRYPTO_AUTHENC=m | ||
1220 | CONFIG_CRYPTO_TEST=m | ||
1221 | |||
1222 | # | ||
1223 | # Authenticated Encryption with Associated Data | ||
1224 | # | ||
1225 | # CONFIG_CRYPTO_CCM is not set | ||
1226 | # CONFIG_CRYPTO_GCM is not set | ||
1227 | # CONFIG_CRYPTO_SEQIV is not set | ||
1228 | |||
1229 | # | ||
1230 | # Block modes | ||
1231 | # | ||
1232 | CONFIG_CRYPTO_CBC=m | ||
1233 | # CONFIG_CRYPTO_CTR is not set | ||
1234 | # CONFIG_CRYPTO_CTS is not set | ||
1235 | # CONFIG_CRYPTO_ECB is not set | ||
1236 | # CONFIG_CRYPTO_LRW is not set | ||
1237 | # CONFIG_CRYPTO_PCBC is not set | ||
1238 | # CONFIG_CRYPTO_XTS is not set | ||
1239 | |||
1240 | # | ||
1241 | # Hash modes | ||
1242 | # | ||
1066 | CONFIG_CRYPTO_HMAC=y | 1243 | CONFIG_CRYPTO_HMAC=y |
1067 | # CONFIG_CRYPTO_XCBC is not set | 1244 | # CONFIG_CRYPTO_XCBC is not set |
1068 | CONFIG_CRYPTO_NULL=m | 1245 | |
1246 | # | ||
1247 | # Digest | ||
1248 | # | ||
1249 | CONFIG_CRYPTO_CRC32C=m | ||
1069 | # CONFIG_CRYPTO_MD4 is not set | 1250 | # CONFIG_CRYPTO_MD4 is not set |
1070 | CONFIG_CRYPTO_MD5=y | 1251 | CONFIG_CRYPTO_MD5=y |
1252 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | ||
1253 | # CONFIG_CRYPTO_RMD128 is not set | ||
1254 | # CONFIG_CRYPTO_RMD160 is not set | ||
1255 | # CONFIG_CRYPTO_RMD256 is not set | ||
1256 | # CONFIG_CRYPTO_RMD320 is not set | ||
1071 | CONFIG_CRYPTO_SHA1=m | 1257 | CONFIG_CRYPTO_SHA1=m |
1072 | # CONFIG_CRYPTO_SHA256 is not set | 1258 | # CONFIG_CRYPTO_SHA256 is not set |
1073 | # CONFIG_CRYPTO_SHA512 is not set | 1259 | # CONFIG_CRYPTO_SHA512 is not set |
1074 | # CONFIG_CRYPTO_WP512 is not set | ||
1075 | # CONFIG_CRYPTO_TGR192 is not set | 1260 | # CONFIG_CRYPTO_TGR192 is not set |
1076 | # CONFIG_CRYPTO_GF128MUL is not set | 1261 | # CONFIG_CRYPTO_WP512 is not set |
1077 | # CONFIG_CRYPTO_ECB is not set | 1262 | |
1078 | CONFIG_CRYPTO_CBC=m | 1263 | # |
1079 | # CONFIG_CRYPTO_PCBC is not set | 1264 | # Ciphers |
1080 | # CONFIG_CRYPTO_LRW is not set | 1265 | # |
1081 | # CONFIG_CRYPTO_XTS is not set | ||
1082 | # CONFIG_CRYPTO_CRYPTD is not set | ||
1083 | CONFIG_CRYPTO_DES=m | ||
1084 | # CONFIG_CRYPTO_FCRYPT is not set | ||
1085 | CONFIG_CRYPTO_BLOWFISH=m | ||
1086 | # CONFIG_CRYPTO_TWOFISH is not set | ||
1087 | # CONFIG_CRYPTO_SERPENT is not set | ||
1088 | # CONFIG_CRYPTO_AES is not set | 1266 | # CONFIG_CRYPTO_AES is not set |
1267 | # CONFIG_CRYPTO_ANUBIS is not set | ||
1268 | # CONFIG_CRYPTO_ARC4 is not set | ||
1269 | CONFIG_CRYPTO_BLOWFISH=m | ||
1270 | # CONFIG_CRYPTO_CAMELLIA is not set | ||
1089 | CONFIG_CRYPTO_CAST5=m | 1271 | CONFIG_CRYPTO_CAST5=m |
1090 | # CONFIG_CRYPTO_CAST6 is not set | 1272 | # CONFIG_CRYPTO_CAST6 is not set |
1091 | # CONFIG_CRYPTO_TEA is not set | 1273 | CONFIG_CRYPTO_DES=m |
1092 | # CONFIG_CRYPTO_ARC4 is not set | 1274 | # CONFIG_CRYPTO_FCRYPT is not set |
1093 | # CONFIG_CRYPTO_KHAZAD is not set | 1275 | # CONFIG_CRYPTO_KHAZAD is not set |
1094 | # CONFIG_CRYPTO_ANUBIS is not set | 1276 | # CONFIG_CRYPTO_SALSA20 is not set |
1095 | # CONFIG_CRYPTO_SEED is not set | 1277 | # CONFIG_CRYPTO_SEED is not set |
1278 | # CONFIG_CRYPTO_SERPENT is not set | ||
1279 | # CONFIG_CRYPTO_TEA is not set | ||
1280 | # CONFIG_CRYPTO_TWOFISH is not set | ||
1281 | |||
1282 | # | ||
1283 | # Compression | ||
1284 | # | ||
1096 | CONFIG_CRYPTO_DEFLATE=m | 1285 | CONFIG_CRYPTO_DEFLATE=m |
1097 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | 1286 | # CONFIG_CRYPTO_LZO is not set |
1098 | CONFIG_CRYPTO_CRC32C=m | 1287 | |
1099 | # CONFIG_CRYPTO_CAMELLIA is not set | 1288 | # |
1100 | CONFIG_CRYPTO_TEST=m | 1289 | # Random Number Generation |
1101 | # CONFIG_CRYPTO_AUTHENC is not set | 1290 | # |
1291 | # CONFIG_CRYPTO_ANSI_CPRNG is not set | ||
1102 | # CONFIG_CRYPTO_HW is not set | 1292 | # CONFIG_CRYPTO_HW is not set |
1103 | 1293 | ||
1104 | # | 1294 | # |
1105 | # Library routines | 1295 | # Library routines |
1106 | # | 1296 | # |
1107 | CONFIG_BITREVERSE=y | 1297 | CONFIG_BITREVERSE=y |
1298 | CONFIG_GENERIC_FIND_LAST_BIT=y | ||
1108 | CONFIG_CRC_CCITT=m | 1299 | CONFIG_CRC_CCITT=m |
1109 | # CONFIG_CRC16 is not set | 1300 | # CONFIG_CRC16 is not set |
1110 | # CONFIG_CRC_ITU_T is not set | 1301 | # CONFIG_CRC_T10DIF is not set |
1302 | CONFIG_CRC_ITU_T=m | ||
1111 | CONFIG_CRC32=y | 1303 | CONFIG_CRC32=y |
1112 | # CONFIG_CRC7 is not set | 1304 | # CONFIG_CRC7 is not set |
1113 | CONFIG_LIBCRC32C=m | 1305 | CONFIG_LIBCRC32C=m |
diff --git a/arch/parisc/configs/b180_defconfig b/arch/parisc/configs/b180_defconfig index 1bf22c9a4614..98bb05ee6e8d 100644 --- a/arch/parisc/configs/b180_defconfig +++ b/arch/parisc/configs/b180_defconfig | |||
@@ -1,7 +1,7 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.23 | 3 | # Linux kernel version: 2.6.29-rc8 |
4 | # Fri Oct 12 21:16:46 2007 | 4 | # Fri Mar 13 01:32:57 2009 |
5 | # | 5 | # |
6 | CONFIG_PARISC=y | 6 | CONFIG_PARISC=y |
7 | CONFIG_MMU=y | 7 | CONFIG_MMU=y |
@@ -33,13 +33,29 @@ CONFIG_SYSVIPC_SYSCTL=y | |||
33 | # CONFIG_BSD_PROCESS_ACCT is not set | 33 | # CONFIG_BSD_PROCESS_ACCT is not set |
34 | # CONFIG_TASKSTATS is not set | 34 | # CONFIG_TASKSTATS is not set |
35 | # CONFIG_AUDIT is not set | 35 | # CONFIG_AUDIT is not set |
36 | |||
37 | # | ||
38 | # RCU Subsystem | ||
39 | # | ||
40 | CONFIG_CLASSIC_RCU=y | ||
41 | # CONFIG_TREE_RCU is not set | ||
42 | # CONFIG_PREEMPT_RCU is not set | ||
43 | # CONFIG_TREE_RCU_TRACE is not set | ||
44 | # CONFIG_PREEMPT_RCU_TRACE is not set | ||
36 | CONFIG_IKCONFIG=y | 45 | CONFIG_IKCONFIG=y |
37 | CONFIG_IKCONFIG_PROC=y | 46 | CONFIG_IKCONFIG_PROC=y |
38 | CONFIG_LOG_BUF_SHIFT=16 | 47 | CONFIG_LOG_BUF_SHIFT=16 |
48 | # CONFIG_CGROUPS is not set | ||
39 | CONFIG_SYSFS_DEPRECATED=y | 49 | CONFIG_SYSFS_DEPRECATED=y |
50 | CONFIG_SYSFS_DEPRECATED_V2=y | ||
40 | # CONFIG_RELAY is not set | 51 | # CONFIG_RELAY is not set |
52 | CONFIG_NAMESPACES=y | ||
53 | # CONFIG_UTS_NS is not set | ||
54 | # CONFIG_IPC_NS is not set | ||
41 | # CONFIG_BLK_DEV_INITRD is not set | 55 | # CONFIG_BLK_DEV_INITRD is not set |
56 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | ||
42 | CONFIG_SYSCTL=y | 57 | CONFIG_SYSCTL=y |
58 | CONFIG_ANON_INODES=y | ||
43 | # CONFIG_EMBEDDED is not set | 59 | # CONFIG_EMBEDDED is not set |
44 | CONFIG_SYSCTL_SYSCALL=y | 60 | CONFIG_SYSCTL_SYSCALL=y |
45 | CONFIG_KALLSYMS=y | 61 | CONFIG_KALLSYMS=y |
@@ -51,27 +67,34 @@ CONFIG_BUG=y | |||
51 | CONFIG_ELF_CORE=y | 67 | CONFIG_ELF_CORE=y |
52 | CONFIG_BASE_FULL=y | 68 | CONFIG_BASE_FULL=y |
53 | CONFIG_FUTEX=y | 69 | CONFIG_FUTEX=y |
54 | CONFIG_ANON_INODES=y | ||
55 | CONFIG_EPOLL=y | 70 | CONFIG_EPOLL=y |
56 | CONFIG_SIGNALFD=y | 71 | CONFIG_SIGNALFD=y |
72 | CONFIG_TIMERFD=y | ||
57 | CONFIG_EVENTFD=y | 73 | CONFIG_EVENTFD=y |
58 | CONFIG_SHMEM=y | 74 | CONFIG_SHMEM=y |
75 | CONFIG_AIO=y | ||
59 | CONFIG_VM_EVENT_COUNTERS=y | 76 | CONFIG_VM_EVENT_COUNTERS=y |
77 | CONFIG_PCI_QUIRKS=y | ||
78 | CONFIG_COMPAT_BRK=y | ||
60 | CONFIG_SLAB=y | 79 | CONFIG_SLAB=y |
61 | # CONFIG_SLUB is not set | 80 | # CONFIG_SLUB is not set |
62 | # CONFIG_SLOB is not set | 81 | # CONFIG_SLOB is not set |
82 | # CONFIG_PROFILING is not set | ||
83 | CONFIG_HAVE_OPROFILE=y | ||
84 | # CONFIG_HAVE_GENERIC_DMA_COHERENT is not set | ||
85 | CONFIG_SLABINFO=y | ||
63 | CONFIG_RT_MUTEXES=y | 86 | CONFIG_RT_MUTEXES=y |
64 | # CONFIG_TINY_SHMEM is not set | ||
65 | CONFIG_BASE_SMALL=0 | 87 | CONFIG_BASE_SMALL=0 |
66 | CONFIG_MODULES=y | 88 | CONFIG_MODULES=y |
89 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
67 | # CONFIG_MODULE_UNLOAD is not set | 90 | # CONFIG_MODULE_UNLOAD is not set |
68 | CONFIG_MODVERSIONS=y | 91 | CONFIG_MODVERSIONS=y |
69 | # CONFIG_MODULE_SRCVERSION_ALL is not set | 92 | # CONFIG_MODULE_SRCVERSION_ALL is not set |
70 | # CONFIG_KMOD is not set | 93 | CONFIG_INIT_ALL_POSSIBLE=y |
71 | CONFIG_BLOCK=y | 94 | CONFIG_BLOCK=y |
72 | # CONFIG_LBD is not set | 95 | # CONFIG_LBD is not set |
73 | # CONFIG_BLK_DEV_IO_TRACE is not set | 96 | # CONFIG_BLK_DEV_IO_TRACE is not set |
74 | # CONFIG_LSF is not set | 97 | # CONFIG_BLK_DEV_INTEGRITY is not set |
75 | 98 | ||
76 | # | 99 | # |
77 | # IO Schedulers | 100 | # IO Schedulers |
@@ -85,6 +108,7 @@ CONFIG_IOSCHED_CFQ=y | |||
85 | CONFIG_DEFAULT_CFQ=y | 108 | CONFIG_DEFAULT_CFQ=y |
86 | # CONFIG_DEFAULT_NOOP is not set | 109 | # CONFIG_DEFAULT_NOOP is not set |
87 | CONFIG_DEFAULT_IOSCHED="cfq" | 110 | CONFIG_DEFAULT_IOSCHED="cfq" |
111 | # CONFIG_FREEZER is not set | ||
88 | 112 | ||
89 | # | 113 | # |
90 | # Processor type and features | 114 | # Processor type and features |
@@ -108,13 +132,15 @@ CONFIG_HZ_250=y | |||
108 | # CONFIG_HZ_300 is not set | 132 | # CONFIG_HZ_300 is not set |
109 | # CONFIG_HZ_1000 is not set | 133 | # CONFIG_HZ_1000 is not set |
110 | CONFIG_HZ=250 | 134 | CONFIG_HZ=250 |
135 | # CONFIG_SCHED_HRTICK is not set | ||
111 | CONFIG_FLATMEM=y | 136 | CONFIG_FLATMEM=y |
112 | CONFIG_FLAT_NODE_MEM_MAP=y | 137 | CONFIG_FLAT_NODE_MEM_MAP=y |
113 | # CONFIG_SPARSEMEM_STATIC is not set | 138 | CONFIG_PAGEFLAGS_EXTENDED=y |
114 | CONFIG_SPLIT_PTLOCK_CPUS=4096 | 139 | CONFIG_SPLIT_PTLOCK_CPUS=4096 |
115 | # CONFIG_RESOURCES_64BIT is not set | 140 | # CONFIG_PHYS_ADDR_T_64BIT is not set |
116 | CONFIG_ZONE_DMA_FLAG=0 | 141 | CONFIG_ZONE_DMA_FLAG=0 |
117 | CONFIG_VIRT_TO_BUS=y | 142 | CONFIG_VIRT_TO_BUS=y |
143 | CONFIG_UNEVICTABLE_LRU=y | ||
118 | # CONFIG_HPUX is not set | 144 | # CONFIG_HPUX is not set |
119 | 145 | ||
120 | # | 146 | # |
@@ -130,14 +156,14 @@ CONFIG_EISA_NAMES=y | |||
130 | CONFIG_ISA=y | 156 | CONFIG_ISA=y |
131 | CONFIG_PCI=y | 157 | CONFIG_PCI=y |
132 | # CONFIG_ARCH_SUPPORTS_MSI is not set | 158 | # CONFIG_ARCH_SUPPORTS_MSI is not set |
159 | CONFIG_PCI_LEGACY=y | ||
133 | # CONFIG_PCI_DEBUG is not set | 160 | # CONFIG_PCI_DEBUG is not set |
161 | # CONFIG_PCI_STUB is not set | ||
134 | CONFIG_GSC_DINO=y | 162 | CONFIG_GSC_DINO=y |
135 | # CONFIG_PCI_LBA is not set | 163 | # CONFIG_PCI_LBA is not set |
136 | 164 | CONFIG_IOMMU_HELPER=y | |
137 | # | ||
138 | # PCCARD (PCMCIA/CardBus) support | ||
139 | # | ||
140 | # CONFIG_PCCARD is not set | 165 | # CONFIG_PCCARD is not set |
166 | # CONFIG_HOTPLUG_PCI is not set | ||
141 | 167 | ||
142 | # | 168 | # |
143 | # PA-RISC specific drivers | 169 | # PA-RISC specific drivers |
@@ -151,16 +177,15 @@ CONFIG_PDC_STABLE=y | |||
151 | # Executable file formats | 177 | # Executable file formats |
152 | # | 178 | # |
153 | CONFIG_BINFMT_ELF=y | 179 | CONFIG_BINFMT_ELF=y |
180 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
181 | # CONFIG_HAVE_AOUT is not set | ||
154 | # CONFIG_BINFMT_MISC is not set | 182 | # CONFIG_BINFMT_MISC is not set |
155 | |||
156 | # | ||
157 | # Networking | ||
158 | # | ||
159 | CONFIG_NET=y | 183 | CONFIG_NET=y |
160 | 184 | ||
161 | # | 185 | # |
162 | # Networking options | 186 | # Networking options |
163 | # | 187 | # |
188 | CONFIG_COMPAT_NET_DEV_OPS=y | ||
164 | CONFIG_PACKET=y | 189 | CONFIG_PACKET=y |
165 | CONFIG_PACKET_MMAP=y | 190 | CONFIG_PACKET_MMAP=y |
166 | CONFIG_UNIX=y | 191 | CONFIG_UNIX=y |
@@ -205,36 +230,37 @@ CONFIG_INET6_XFRM_MODE_TRANSPORT=y | |||
205 | CONFIG_INET6_XFRM_MODE_TUNNEL=y | 230 | CONFIG_INET6_XFRM_MODE_TUNNEL=y |
206 | CONFIG_INET6_XFRM_MODE_BEET=y | 231 | CONFIG_INET6_XFRM_MODE_BEET=y |
207 | CONFIG_IPV6_SIT=y | 232 | CONFIG_IPV6_SIT=y |
233 | CONFIG_IPV6_NDISC_NODETYPE=y | ||
208 | # CONFIG_IPV6_TUNNEL is not set | 234 | # CONFIG_IPV6_TUNNEL is not set |
209 | # CONFIG_NETLABEL is not set | 235 | # CONFIG_NETLABEL is not set |
210 | # CONFIG_NETWORK_SECMARK is not set | 236 | # CONFIG_NETWORK_SECMARK is not set |
211 | # CONFIG_NETFILTER is not set | 237 | # CONFIG_NETFILTER is not set |
238 | # CONFIG_ATM is not set | ||
212 | # CONFIG_BRIDGE is not set | 239 | # CONFIG_BRIDGE is not set |
213 | # CONFIG_VLAN_8021Q is not set | 240 | # CONFIG_VLAN_8021Q is not set |
214 | # CONFIG_DECNET is not set | 241 | # CONFIG_DECNET is not set |
215 | # CONFIG_LLC2 is not set | 242 | # CONFIG_LLC2 is not set |
216 | # CONFIG_IPX is not set | 243 | # CONFIG_IPX is not set |
217 | # CONFIG_ATALK is not set | 244 | # CONFIG_ATALK is not set |
218 | |||
219 | # | ||
220 | # QoS and/or fair queueing | ||
221 | # | ||
222 | # CONFIG_NET_SCHED is not set | 245 | # CONFIG_NET_SCHED is not set |
246 | # CONFIG_DCB is not set | ||
223 | 247 | ||
224 | # | 248 | # |
225 | # Network testing | 249 | # Network testing |
226 | # | 250 | # |
227 | # CONFIG_NET_PKTGEN is not set | 251 | # CONFIG_NET_PKTGEN is not set |
228 | # CONFIG_HAMRADIO is not set | 252 | # CONFIG_HAMRADIO is not set |
253 | # CONFIG_CAN is not set | ||
229 | # CONFIG_IRDA is not set | 254 | # CONFIG_IRDA is not set |
230 | # CONFIG_BT is not set | 255 | # CONFIG_BT is not set |
231 | 256 | # CONFIG_PHONET is not set | |
232 | # | 257 | CONFIG_WIRELESS=y |
233 | # Wireless | ||
234 | # | ||
235 | # CONFIG_CFG80211 is not set | 258 | # CONFIG_CFG80211 is not set |
259 | CONFIG_WIRELESS_OLD_REGULATORY=y | ||
236 | # CONFIG_WIRELESS_EXT is not set | 260 | # CONFIG_WIRELESS_EXT is not set |
237 | # CONFIG_IEEE80211 is not set | 261 | # CONFIG_LIB80211 is not set |
262 | # CONFIG_MAC80211 is not set | ||
263 | # CONFIG_WIMAX is not set | ||
238 | # CONFIG_RFKILL is not set | 264 | # CONFIG_RFKILL is not set |
239 | 265 | ||
240 | # | 266 | # |
@@ -247,7 +273,9 @@ CONFIG_IPV6_SIT=y | |||
247 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | 273 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" |
248 | CONFIG_STANDALONE=y | 274 | CONFIG_STANDALONE=y |
249 | # CONFIG_PREVENT_FIRMWARE_BUILD is not set | 275 | # CONFIG_PREVENT_FIRMWARE_BUILD is not set |
250 | # CONFIG_FW_LOADER is not set | 276 | CONFIG_FW_LOADER=y |
277 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
278 | CONFIG_EXTRA_FIRMWARE="" | ||
251 | # CONFIG_DEBUG_DRIVER is not set | 279 | # CONFIG_DEBUG_DRIVER is not set |
252 | # CONFIG_DEBUG_DEVRES is not set | 280 | # CONFIG_DEBUG_DEVRES is not set |
253 | # CONFIG_SYS_HYPERVISOR is not set | 281 | # CONFIG_SYS_HYPERVISOR is not set |
@@ -275,10 +303,18 @@ CONFIG_BLK_DEV_CRYPTOLOOP=y | |||
275 | CONFIG_CDROM_PKTCDVD=m | 303 | CONFIG_CDROM_PKTCDVD=m |
276 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 304 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
277 | CONFIG_ATA_OVER_ETH=y | 305 | CONFIG_ATA_OVER_ETH=y |
306 | # CONFIG_BLK_DEV_HD is not set | ||
278 | CONFIG_MISC_DEVICES=y | 307 | CONFIG_MISC_DEVICES=y |
279 | # CONFIG_PHANTOM is not set | 308 | # CONFIG_PHANTOM is not set |
280 | # CONFIG_EEPROM_93CX6 is not set | ||
281 | # CONFIG_SGI_IOC4 is not set | 309 | # CONFIG_SGI_IOC4 is not set |
310 | # CONFIG_ENCLOSURE_SERVICES is not set | ||
311 | # CONFIG_HP_ILO is not set | ||
312 | |||
313 | # | ||
314 | # EEPROM support | ||
315 | # | ||
316 | # CONFIG_EEPROM_93CX6 is not set | ||
317 | CONFIG_HAVE_IDE=y | ||
282 | # CONFIG_IDE is not set | 318 | # CONFIG_IDE is not set |
283 | 319 | ||
284 | # | 320 | # |
@@ -317,8 +353,10 @@ CONFIG_SCSI_SPI_ATTRS=y | |||
317 | # CONFIG_SCSI_FC_ATTRS is not set | 353 | # CONFIG_SCSI_FC_ATTRS is not set |
318 | # CONFIG_SCSI_ISCSI_ATTRS is not set | 354 | # CONFIG_SCSI_ISCSI_ATTRS is not set |
319 | # CONFIG_SCSI_SAS_LIBSAS is not set | 355 | # CONFIG_SCSI_SAS_LIBSAS is not set |
356 | # CONFIG_SCSI_SRP_ATTRS is not set | ||
320 | CONFIG_SCSI_LOWLEVEL=y | 357 | CONFIG_SCSI_LOWLEVEL=y |
321 | # CONFIG_ISCSI_TCP is not set | 358 | # CONFIG_ISCSI_TCP is not set |
359 | # CONFIG_SCSI_CXGB3_ISCSI is not set | ||
322 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set | 360 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set |
323 | # CONFIG_SCSI_3W_9XXX is not set | 361 | # CONFIG_SCSI_3W_9XXX is not set |
324 | # CONFIG_SCSI_ACARD is not set | 362 | # CONFIG_SCSI_ACARD is not set |
@@ -330,12 +368,15 @@ CONFIG_SCSI_LOWLEVEL=y | |||
330 | # CONFIG_SCSI_AIC79XX is not set | 368 | # CONFIG_SCSI_AIC79XX is not set |
331 | # CONFIG_SCSI_AIC94XX is not set | 369 | # CONFIG_SCSI_AIC94XX is not set |
332 | # CONFIG_SCSI_DPT_I2O is not set | 370 | # CONFIG_SCSI_DPT_I2O is not set |
371 | # CONFIG_SCSI_ADVANSYS is not set | ||
333 | # CONFIG_SCSI_IN2000 is not set | 372 | # CONFIG_SCSI_IN2000 is not set |
334 | # CONFIG_SCSI_ARCMSR is not set | 373 | # CONFIG_SCSI_ARCMSR is not set |
335 | # CONFIG_MEGARAID_NEWGEN is not set | 374 | # CONFIG_MEGARAID_NEWGEN is not set |
336 | # CONFIG_MEGARAID_LEGACY is not set | 375 | # CONFIG_MEGARAID_LEGACY is not set |
337 | # CONFIG_MEGARAID_SAS is not set | 376 | # CONFIG_MEGARAID_SAS is not set |
338 | # CONFIG_SCSI_HPTIOP is not set | 377 | # CONFIG_SCSI_HPTIOP is not set |
378 | # CONFIG_LIBFC is not set | ||
379 | # CONFIG_FCOE is not set | ||
339 | # CONFIG_SCSI_DMX3191D is not set | 380 | # CONFIG_SCSI_DMX3191D is not set |
340 | # CONFIG_SCSI_DTC3280 is not set | 381 | # CONFIG_SCSI_DTC3280 is not set |
341 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | 382 | # CONFIG_SCSI_FUTURE_DOMAIN is not set |
@@ -346,6 +387,7 @@ CONFIG_SCSI_LOWLEVEL=y | |||
346 | # CONFIG_SCSI_INIA100 is not set | 387 | # CONFIG_SCSI_INIA100 is not set |
347 | # CONFIG_SCSI_PPA is not set | 388 | # CONFIG_SCSI_PPA is not set |
348 | # CONFIG_SCSI_IMM is not set | 389 | # CONFIG_SCSI_IMM is not set |
390 | # CONFIG_SCSI_MVSAS is not set | ||
349 | # CONFIG_SCSI_NCR53C406A is not set | 391 | # CONFIG_SCSI_NCR53C406A is not set |
350 | CONFIG_SCSI_LASI700=y | 392 | CONFIG_SCSI_LASI700=y |
351 | CONFIG_53C700_LE_ON_BE=y | 393 | CONFIG_53C700_LE_ON_BE=y |
@@ -360,7 +402,6 @@ CONFIG_SCSI_NCR53C8XX_DEFAULT_TAGS=8 | |||
360 | CONFIG_SCSI_NCR53C8XX_MAX_TAGS=32 | 402 | CONFIG_SCSI_NCR53C8XX_MAX_TAGS=32 |
361 | CONFIG_SCSI_NCR53C8XX_SYNC=40 | 403 | CONFIG_SCSI_NCR53C8XX_SYNC=40 |
362 | # CONFIG_SCSI_PAS16 is not set | 404 | # CONFIG_SCSI_PAS16 is not set |
363 | # CONFIG_SCSI_PSI240I is not set | ||
364 | # CONFIG_SCSI_QLOGIC_FAS is not set | 405 | # CONFIG_SCSI_QLOGIC_FAS is not set |
365 | # CONFIG_SCSI_QLOGIC_1280 is not set | 406 | # CONFIG_SCSI_QLOGIC_1280 is not set |
366 | # CONFIG_SCSI_QLA_FC is not set | 407 | # CONFIG_SCSI_QLA_FC is not set |
@@ -373,9 +414,11 @@ CONFIG_SCSI_NCR53C8XX_SYNC=40 | |||
373 | # CONFIG_SCSI_NSP32 is not set | 414 | # CONFIG_SCSI_NSP32 is not set |
374 | # CONFIG_SCSI_DEBUG is not set | 415 | # CONFIG_SCSI_DEBUG is not set |
375 | # CONFIG_SCSI_SRP is not set | 416 | # CONFIG_SCSI_SRP is not set |
417 | # CONFIG_SCSI_DH is not set | ||
376 | # CONFIG_ATA is not set | 418 | # CONFIG_ATA is not set |
377 | CONFIG_MD=y | 419 | CONFIG_MD=y |
378 | CONFIG_BLK_DEV_MD=y | 420 | CONFIG_BLK_DEV_MD=y |
421 | CONFIG_MD_AUTODETECT=y | ||
379 | CONFIG_MD_LINEAR=y | 422 | CONFIG_MD_LINEAR=y |
380 | CONFIG_MD_RAID0=y | 423 | CONFIG_MD_RAID0=y |
381 | CONFIG_MD_RAID1=y | 424 | CONFIG_MD_RAID1=y |
@@ -383,26 +426,18 @@ CONFIG_MD_RAID1=y | |||
383 | # CONFIG_MD_MULTIPATH is not set | 426 | # CONFIG_MD_MULTIPATH is not set |
384 | # CONFIG_MD_FAULTY is not set | 427 | # CONFIG_MD_FAULTY is not set |
385 | # CONFIG_BLK_DEV_DM is not set | 428 | # CONFIG_BLK_DEV_DM is not set |
386 | |||
387 | # | ||
388 | # Fusion MPT device support | ||
389 | # | ||
390 | # CONFIG_FUSION is not set | 429 | # CONFIG_FUSION is not set |
391 | # CONFIG_FUSION_SPI is not set | ||
392 | # CONFIG_FUSION_FC is not set | ||
393 | # CONFIG_FUSION_SAS is not set | ||
394 | 430 | ||
395 | # | 431 | # |
396 | # IEEE 1394 (FireWire) support | 432 | # IEEE 1394 (FireWire) support |
397 | # | 433 | # |
398 | 434 | ||
399 | # | 435 | # |
400 | # An alternative FireWire stack is available with EXPERIMENTAL=y | 436 | # A new alternative FireWire stack is available with EXPERIMENTAL=y |
401 | # | 437 | # |
402 | # CONFIG_IEEE1394 is not set | 438 | # CONFIG_IEEE1394 is not set |
403 | # CONFIG_I2O is not set | 439 | # CONFIG_I2O is not set |
404 | CONFIG_NETDEVICES=y | 440 | CONFIG_NETDEVICES=y |
405 | # CONFIG_NETDEVICES_MULTIQUEUE is not set | ||
406 | # CONFIG_DUMMY is not set | 441 | # CONFIG_DUMMY is not set |
407 | # CONFIG_BONDING is not set | 442 | # CONFIG_BONDING is not set |
408 | # CONFIG_EQUALIZER is not set | 443 | # CONFIG_EQUALIZER is not set |
@@ -434,36 +469,49 @@ CONFIG_TULIP=y | |||
434 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | 469 | # CONFIG_IBM_NEW_EMAC_RGMII is not set |
435 | # CONFIG_IBM_NEW_EMAC_TAH is not set | 470 | # CONFIG_IBM_NEW_EMAC_TAH is not set |
436 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | 471 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set |
472 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
473 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
474 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
437 | # CONFIG_NET_PCI is not set | 475 | # CONFIG_NET_PCI is not set |
438 | # CONFIG_B44 is not set | 476 | # CONFIG_B44 is not set |
477 | # CONFIG_CS89x0 is not set | ||
439 | # CONFIG_NET_POCKET is not set | 478 | # CONFIG_NET_POCKET is not set |
479 | # CONFIG_ATL2 is not set | ||
440 | CONFIG_NETDEV_1000=y | 480 | CONFIG_NETDEV_1000=y |
441 | # CONFIG_ACENIC is not set | 481 | # CONFIG_ACENIC is not set |
442 | # CONFIG_DL2K is not set | 482 | # CONFIG_DL2K is not set |
443 | # CONFIG_E1000 is not set | 483 | # CONFIG_E1000 is not set |
444 | # CONFIG_E1000E is not set | 484 | # CONFIG_E1000E is not set |
485 | # CONFIG_IGB is not set | ||
445 | # CONFIG_NS83820 is not set | 486 | # CONFIG_NS83820 is not set |
446 | # CONFIG_HAMACHI is not set | 487 | # CONFIG_HAMACHI is not set |
447 | # CONFIG_R8169 is not set | 488 | # CONFIG_R8169 is not set |
448 | # CONFIG_SIS190 is not set | 489 | # CONFIG_SIS190 is not set |
449 | # CONFIG_SKGE is not set | 490 | # CONFIG_SKGE is not set |
450 | # CONFIG_SKY2 is not set | 491 | # CONFIG_SKY2 is not set |
451 | # CONFIG_SK98LIN is not set | ||
452 | # CONFIG_VIA_VELOCITY is not set | 492 | # CONFIG_VIA_VELOCITY is not set |
453 | # CONFIG_TIGON3 is not set | 493 | # CONFIG_TIGON3 is not set |
454 | # CONFIG_BNX2 is not set | 494 | # CONFIG_BNX2 is not set |
455 | # CONFIG_QLA3XXX is not set | 495 | # CONFIG_QLA3XXX is not set |
496 | # CONFIG_ATL1 is not set | ||
497 | # CONFIG_JME is not set | ||
456 | CONFIG_NETDEV_10000=y | 498 | CONFIG_NETDEV_10000=y |
457 | # CONFIG_CHELSIO_T1 is not set | 499 | # CONFIG_CHELSIO_T1 is not set |
500 | CONFIG_CHELSIO_T3_DEPENDS=y | ||
458 | # CONFIG_CHELSIO_T3 is not set | 501 | # CONFIG_CHELSIO_T3 is not set |
502 | # CONFIG_ENIC is not set | ||
459 | # CONFIG_IXGBE is not set | 503 | # CONFIG_IXGBE is not set |
460 | # CONFIG_IXGB is not set | 504 | # CONFIG_IXGB is not set |
461 | # CONFIG_S2IO is not set | 505 | # CONFIG_S2IO is not set |
462 | # CONFIG_MYRI10GE is not set | 506 | # CONFIG_MYRI10GE is not set |
463 | # CONFIG_NETXEN_NIC is not set | 507 | # CONFIG_NETXEN_NIC is not set |
464 | # CONFIG_NIU is not set | 508 | # CONFIG_NIU is not set |
509 | # CONFIG_MLX4_EN is not set | ||
465 | # CONFIG_MLX4_CORE is not set | 510 | # CONFIG_MLX4_CORE is not set |
466 | # CONFIG_TEHUTI is not set | 511 | # CONFIG_TEHUTI is not set |
512 | # CONFIG_BNX2X is not set | ||
513 | # CONFIG_QLGE is not set | ||
514 | # CONFIG_SFC is not set | ||
467 | # CONFIG_TR is not set | 515 | # CONFIG_TR is not set |
468 | 516 | ||
469 | # | 517 | # |
@@ -471,6 +519,11 @@ CONFIG_NETDEV_10000=y | |||
471 | # | 519 | # |
472 | # CONFIG_WLAN_PRE80211 is not set | 520 | # CONFIG_WLAN_PRE80211 is not set |
473 | # CONFIG_WLAN_80211 is not set | 521 | # CONFIG_WLAN_80211 is not set |
522 | # CONFIG_IWLWIFI_LEDS is not set | ||
523 | |||
524 | # | ||
525 | # Enable WiMAX (Networking options) to see the WiMAX drivers | ||
526 | # | ||
474 | # CONFIG_WAN is not set | 527 | # CONFIG_WAN is not set |
475 | # CONFIG_FDDI is not set | 528 | # CONFIG_FDDI is not set |
476 | # CONFIG_PLIP is not set | 529 | # CONFIG_PLIP is not set |
@@ -503,7 +556,6 @@ CONFIG_INPUT_MOUSEDEV_PSAUX=y | |||
503 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | 556 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 |
504 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | 557 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 |
505 | # CONFIG_INPUT_JOYDEV is not set | 558 | # CONFIG_INPUT_JOYDEV is not set |
506 | # CONFIG_INPUT_TSDEV is not set | ||
507 | CONFIG_INPUT_EVDEV=y | 559 | CONFIG_INPUT_EVDEV=y |
508 | # CONFIG_INPUT_EVBUG is not set | 560 | # CONFIG_INPUT_EVBUG is not set |
509 | 561 | ||
@@ -526,11 +578,12 @@ CONFIG_MOUSE_PS2=y | |||
526 | CONFIG_MOUSE_PS2_ALPS=y | 578 | CONFIG_MOUSE_PS2_ALPS=y |
527 | CONFIG_MOUSE_PS2_LOGIPS2PP=y | 579 | CONFIG_MOUSE_PS2_LOGIPS2PP=y |
528 | CONFIG_MOUSE_PS2_SYNAPTICS=y | 580 | CONFIG_MOUSE_PS2_SYNAPTICS=y |
529 | CONFIG_MOUSE_PS2_LIFEBOOK=y | ||
530 | CONFIG_MOUSE_PS2_TRACKPOINT=y | 581 | CONFIG_MOUSE_PS2_TRACKPOINT=y |
582 | # CONFIG_MOUSE_PS2_ELANTECH is not set | ||
531 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set | 583 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set |
532 | # CONFIG_MOUSE_SERIAL is not set | 584 | # CONFIG_MOUSE_SERIAL is not set |
533 | # CONFIG_MOUSE_APPLETOUCH is not set | 585 | # CONFIG_MOUSE_APPLETOUCH is not set |
586 | # CONFIG_MOUSE_BCM5974 is not set | ||
534 | # CONFIG_MOUSE_INPORT is not set | 587 | # CONFIG_MOUSE_INPORT is not set |
535 | # CONFIG_MOUSE_LOGIBM is not set | 588 | # CONFIG_MOUSE_LOGIBM is not set |
536 | # CONFIG_MOUSE_PC110PAD is not set | 589 | # CONFIG_MOUSE_PC110PAD is not set |
@@ -564,9 +617,11 @@ CONFIG_SERIO_LIBPS2=y | |||
564 | # Character devices | 617 | # Character devices |
565 | # | 618 | # |
566 | CONFIG_VT=y | 619 | CONFIG_VT=y |
620 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
567 | CONFIG_VT_CONSOLE=y | 621 | CONFIG_VT_CONSOLE=y |
568 | CONFIG_HW_CONSOLE=y | 622 | CONFIG_HW_CONSOLE=y |
569 | # CONFIG_VT_HW_CONSOLE_BINDING is not set | 623 | # CONFIG_VT_HW_CONSOLE_BINDING is not set |
624 | CONFIG_DEVKMEM=y | ||
570 | # CONFIG_SERIAL_NONSTANDARD is not set | 625 | # CONFIG_SERIAL_NONSTANDARD is not set |
571 | 626 | ||
572 | # | 627 | # |
@@ -598,75 +653,79 @@ CONFIG_SERIAL_CORE=y | |||
598 | CONFIG_SERIAL_CORE_CONSOLE=y | 653 | CONFIG_SERIAL_CORE_CONSOLE=y |
599 | # CONFIG_SERIAL_JSM is not set | 654 | # CONFIG_SERIAL_JSM is not set |
600 | CONFIG_UNIX98_PTYS=y | 655 | CONFIG_UNIX98_PTYS=y |
656 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | ||
601 | CONFIG_LEGACY_PTYS=y | 657 | CONFIG_LEGACY_PTYS=y |
602 | CONFIG_LEGACY_PTY_COUNT=256 | 658 | CONFIG_LEGACY_PTY_COUNT=256 |
603 | CONFIG_PRINTER=y | 659 | CONFIG_PRINTER=y |
604 | # CONFIG_LP_CONSOLE is not set | 660 | # CONFIG_LP_CONSOLE is not set |
605 | # CONFIG_PPDEV is not set | 661 | # CONFIG_PPDEV is not set |
606 | # CONFIG_TIPAR is not set | ||
607 | # CONFIG_IPMI_HANDLER is not set | 662 | # CONFIG_IPMI_HANDLER is not set |
608 | # CONFIG_WATCHDOG is not set | ||
609 | # CONFIG_HW_RANDOM is not set | 663 | # CONFIG_HW_RANDOM is not set |
610 | CONFIG_GEN_RTC=y | ||
611 | # CONFIG_GEN_RTC_X is not set | ||
612 | # CONFIG_DTLK is not set | 664 | # CONFIG_DTLK is not set |
613 | # CONFIG_R3964 is not set | 665 | # CONFIG_R3964 is not set |
614 | # CONFIG_APPLICOM is not set | 666 | # CONFIG_APPLICOM is not set |
615 | # CONFIG_AGP is not set | ||
616 | # CONFIG_DRM is not set | ||
617 | # CONFIG_RAW_DRIVER is not set | 667 | # CONFIG_RAW_DRIVER is not set |
618 | CONFIG_DEVPORT=y | 668 | CONFIG_DEVPORT=y |
619 | # CONFIG_I2C is not set | 669 | # CONFIG_I2C is not set |
620 | |||
621 | # | ||
622 | # SPI support | ||
623 | # | ||
624 | # CONFIG_SPI is not set | 670 | # CONFIG_SPI is not set |
625 | # CONFIG_SPI_MASTER is not set | ||
626 | # CONFIG_W1 is not set | 671 | # CONFIG_W1 is not set |
627 | # CONFIG_POWER_SUPPLY is not set | 672 | # CONFIG_POWER_SUPPLY is not set |
628 | # CONFIG_HWMON is not set | 673 | # CONFIG_HWMON is not set |
674 | # CONFIG_THERMAL is not set | ||
675 | # CONFIG_THERMAL_HWMON is not set | ||
676 | # CONFIG_WATCHDOG is not set | ||
677 | CONFIG_SSB_POSSIBLE=y | ||
629 | 678 | ||
630 | # | 679 | # |
631 | # Sonics Silicon Backplane | 680 | # Sonics Silicon Backplane |
632 | # | 681 | # |
633 | CONFIG_SSB_POSSIBLE=y | ||
634 | # CONFIG_SSB is not set | 682 | # CONFIG_SSB is not set |
635 | 683 | ||
636 | # | 684 | # |
637 | # Multifunction device drivers | 685 | # Multifunction device drivers |
638 | # | 686 | # |
687 | # CONFIG_MFD_CORE is not set | ||
639 | # CONFIG_MFD_SM501 is not set | 688 | # CONFIG_MFD_SM501 is not set |
689 | # CONFIG_HTC_PASIC3 is not set | ||
690 | # CONFIG_MFD_TMIO is not set | ||
691 | # CONFIG_REGULATOR is not set | ||
640 | 692 | ||
641 | # | 693 | # |
642 | # Multimedia devices | 694 | # Multimedia devices |
643 | # | 695 | # |
696 | |||
697 | # | ||
698 | # Multimedia core support | ||
699 | # | ||
644 | # CONFIG_VIDEO_DEV is not set | 700 | # CONFIG_VIDEO_DEV is not set |
645 | # CONFIG_DVB_CORE is not set | 701 | # CONFIG_DVB_CORE is not set |
646 | # CONFIG_DAB is not set | 702 | # CONFIG_VIDEO_MEDIA is not set |
647 | 703 | ||
648 | # | 704 | # |
649 | # Graphics support | 705 | # Multimedia drivers |
650 | # | 706 | # |
651 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | 707 | # CONFIG_DAB is not set |
652 | 708 | ||
653 | # | 709 | # |
654 | # Display device support | 710 | # Graphics support |
655 | # | 711 | # |
656 | # CONFIG_DISPLAY_SUPPORT is not set | 712 | # CONFIG_AGP is not set |
713 | # CONFIG_DRM is not set | ||
657 | # CONFIG_VGASTATE is not set | 714 | # CONFIG_VGASTATE is not set |
658 | CONFIG_VIDEO_OUTPUT_CONTROL=m | 715 | CONFIG_VIDEO_OUTPUT_CONTROL=m |
659 | CONFIG_FB=y | 716 | CONFIG_FB=y |
660 | # CONFIG_FIRMWARE_EDID is not set | 717 | # CONFIG_FIRMWARE_EDID is not set |
661 | # CONFIG_FB_DDC is not set | 718 | # CONFIG_FB_DDC is not set |
719 | # CONFIG_FB_BOOT_VESA_SUPPORT is not set | ||
662 | CONFIG_FB_CFB_FILLRECT=y | 720 | CONFIG_FB_CFB_FILLRECT=y |
663 | CONFIG_FB_CFB_COPYAREA=y | 721 | CONFIG_FB_CFB_COPYAREA=y |
664 | CONFIG_FB_CFB_IMAGEBLIT=y | 722 | CONFIG_FB_CFB_IMAGEBLIT=y |
723 | # CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set | ||
665 | # CONFIG_FB_SYS_FILLRECT is not set | 724 | # CONFIG_FB_SYS_FILLRECT is not set |
666 | # CONFIG_FB_SYS_COPYAREA is not set | 725 | # CONFIG_FB_SYS_COPYAREA is not set |
667 | # CONFIG_FB_SYS_IMAGEBLIT is not set | 726 | # CONFIG_FB_SYS_IMAGEBLIT is not set |
727 | # CONFIG_FB_FOREIGN_ENDIAN is not set | ||
668 | # CONFIG_FB_SYS_FOPS is not set | 728 | # CONFIG_FB_SYS_FOPS is not set |
669 | CONFIG_FB_DEFERRED_IO=y | ||
670 | # CONFIG_FB_SVGALIB is not set | 729 | # CONFIG_FB_SVGALIB is not set |
671 | # CONFIG_FB_MACMODES is not set | 730 | # CONFIG_FB_MACMODES is not set |
672 | # CONFIG_FB_BACKLIGHT is not set | 731 | # CONFIG_FB_BACKLIGHT is not set |
@@ -691,6 +750,7 @@ CONFIG_FB_STI=y | |||
691 | # CONFIG_FB_ATY is not set | 750 | # CONFIG_FB_ATY is not set |
692 | # CONFIG_FB_S3 is not set | 751 | # CONFIG_FB_S3 is not set |
693 | # CONFIG_FB_SIS is not set | 752 | # CONFIG_FB_SIS is not set |
753 | # CONFIG_FB_VIA is not set | ||
694 | # CONFIG_FB_NEOMAGIC is not set | 754 | # CONFIG_FB_NEOMAGIC is not set |
695 | # CONFIG_FB_KYRO is not set | 755 | # CONFIG_FB_KYRO is not set |
696 | # CONFIG_FB_3DFX is not set | 756 | # CONFIG_FB_3DFX is not set |
@@ -698,7 +758,16 @@ CONFIG_FB_STI=y | |||
698 | # CONFIG_FB_VT8623 is not set | 758 | # CONFIG_FB_VT8623 is not set |
699 | # CONFIG_FB_TRIDENT is not set | 759 | # CONFIG_FB_TRIDENT is not set |
700 | # CONFIG_FB_ARK is not set | 760 | # CONFIG_FB_ARK is not set |
761 | # CONFIG_FB_CARMINE is not set | ||
701 | # CONFIG_FB_VIRTUAL is not set | 762 | # CONFIG_FB_VIRTUAL is not set |
763 | # CONFIG_FB_METRONOME is not set | ||
764 | # CONFIG_FB_MB862XX is not set | ||
765 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
766 | |||
767 | # | ||
768 | # Display device support | ||
769 | # | ||
770 | # CONFIG_DISPLAY_SUPPORT is not set | ||
702 | 771 | ||
703 | # | 772 | # |
704 | # Console display driver support | 773 | # Console display driver support |
@@ -718,15 +787,8 @@ CONFIG_LOGO_LINUX_MONO=y | |||
718 | CONFIG_LOGO_LINUX_VGA16=y | 787 | CONFIG_LOGO_LINUX_VGA16=y |
719 | CONFIG_LOGO_LINUX_CLUT224=y | 788 | CONFIG_LOGO_LINUX_CLUT224=y |
720 | CONFIG_LOGO_PARISC_CLUT224=y | 789 | CONFIG_LOGO_PARISC_CLUT224=y |
721 | |||
722 | # | ||
723 | # Sound | ||
724 | # | ||
725 | CONFIG_SOUND=y | 790 | CONFIG_SOUND=y |
726 | 791 | CONFIG_SOUND_OSS_CORE=y | |
727 | # | ||
728 | # Advanced Linux Sound Architecture | ||
729 | # | ||
730 | CONFIG_SND=y | 792 | CONFIG_SND=y |
731 | CONFIG_SND_TIMER=y | 793 | CONFIG_SND_TIMER=y |
732 | CONFIG_SND_PCM=y | 794 | CONFIG_SND_PCM=y |
@@ -742,10 +804,7 @@ CONFIG_SND_SUPPORT_OLD_API=y | |||
742 | CONFIG_SND_VERBOSE_PROCFS=y | 804 | CONFIG_SND_VERBOSE_PROCFS=y |
743 | # CONFIG_SND_VERBOSE_PRINTK is not set | 805 | # CONFIG_SND_VERBOSE_PRINTK is not set |
744 | # CONFIG_SND_DEBUG is not set | 806 | # CONFIG_SND_DEBUG is not set |
745 | 807 | CONFIG_SND_DRIVERS=y | |
746 | # | ||
747 | # Generic devices | ||
748 | # | ||
749 | # CONFIG_SND_DUMMY is not set | 808 | # CONFIG_SND_DUMMY is not set |
750 | # CONFIG_SND_VIRMIDI is not set | 809 | # CONFIG_SND_VIRMIDI is not set |
751 | # CONFIG_SND_MTPAV is not set | 810 | # CONFIG_SND_MTPAV is not set |
@@ -753,10 +812,7 @@ CONFIG_SND_VERBOSE_PROCFS=y | |||
753 | # CONFIG_SND_SERIAL_U16550 is not set | 812 | # CONFIG_SND_SERIAL_U16550 is not set |
754 | # CONFIG_SND_MPU401 is not set | 813 | # CONFIG_SND_MPU401 is not set |
755 | # CONFIG_SND_PORTMAN2X4 is not set | 814 | # CONFIG_SND_PORTMAN2X4 is not set |
756 | 815 | CONFIG_SND_PCI=y | |
757 | # | ||
758 | # PCI devices | ||
759 | # | ||
760 | # CONFIG_SND_AD1889 is not set | 816 | # CONFIG_SND_AD1889 is not set |
761 | # CONFIG_SND_ALS300 is not set | 817 | # CONFIG_SND_ALS300 is not set |
762 | # CONFIG_SND_ALI5451 is not set | 818 | # CONFIG_SND_ALI5451 is not set |
@@ -765,9 +821,11 @@ CONFIG_SND_VERBOSE_PROCFS=y | |||
765 | # CONFIG_SND_AU8810 is not set | 821 | # CONFIG_SND_AU8810 is not set |
766 | # CONFIG_SND_AU8820 is not set | 822 | # CONFIG_SND_AU8820 is not set |
767 | # CONFIG_SND_AU8830 is not set | 823 | # CONFIG_SND_AU8830 is not set |
824 | # CONFIG_SND_AW2 is not set | ||
768 | # CONFIG_SND_BT87X is not set | 825 | # CONFIG_SND_BT87X is not set |
769 | # CONFIG_SND_CA0106 is not set | 826 | # CONFIG_SND_CA0106 is not set |
770 | # CONFIG_SND_CMIPCI is not set | 827 | # CONFIG_SND_CMIPCI is not set |
828 | # CONFIG_SND_OXYGEN is not set | ||
771 | # CONFIG_SND_CS4281 is not set | 829 | # CONFIG_SND_CS4281 is not set |
772 | # CONFIG_SND_CS46XX is not set | 830 | # CONFIG_SND_CS46XX is not set |
773 | # CONFIG_SND_DARLA20 is not set | 831 | # CONFIG_SND_DARLA20 is not set |
@@ -792,6 +850,7 @@ CONFIG_SND_VERBOSE_PROCFS=y | |||
792 | # CONFIG_SND_HDA_INTEL is not set | 850 | # CONFIG_SND_HDA_INTEL is not set |
793 | # CONFIG_SND_HDSP is not set | 851 | # CONFIG_SND_HDSP is not set |
794 | # CONFIG_SND_HDSPM is not set | 852 | # CONFIG_SND_HDSPM is not set |
853 | # CONFIG_SND_HIFIER is not set | ||
795 | # CONFIG_SND_ICE1712 is not set | 854 | # CONFIG_SND_ICE1712 is not set |
796 | # CONFIG_SND_ICE1724 is not set | 855 | # CONFIG_SND_ICE1724 is not set |
797 | # CONFIG_SND_INTEL8X0 is not set | 856 | # CONFIG_SND_INTEL8X0 is not set |
@@ -809,30 +868,23 @@ CONFIG_SND_VERBOSE_PROCFS=y | |||
809 | # CONFIG_SND_TRIDENT is not set | 868 | # CONFIG_SND_TRIDENT is not set |
810 | # CONFIG_SND_VIA82XX is not set | 869 | # CONFIG_SND_VIA82XX is not set |
811 | # CONFIG_SND_VIA82XX_MODEM is not set | 870 | # CONFIG_SND_VIA82XX_MODEM is not set |
871 | # CONFIG_SND_VIRTUOSO is not set | ||
812 | # CONFIG_SND_VX222 is not set | 872 | # CONFIG_SND_VX222 is not set |
813 | # CONFIG_SND_YMFPCI is not set | 873 | # CONFIG_SND_YMFPCI is not set |
814 | 874 | CONFIG_SND_GSC=y | |
815 | # | ||
816 | # GSC devices | ||
817 | # | ||
818 | CONFIG_SND_HARMONY=y | 875 | CONFIG_SND_HARMONY=y |
819 | |||
820 | # | ||
821 | # System on Chip audio support | ||
822 | # | ||
823 | # CONFIG_SND_SOC is not set | 876 | # CONFIG_SND_SOC is not set |
824 | |||
825 | # | ||
826 | # SoC Audio support for SuperH | ||
827 | # | ||
828 | |||
829 | # | ||
830 | # Open Sound System | ||
831 | # | ||
832 | # CONFIG_SOUND_PRIME is not set | 877 | # CONFIG_SOUND_PRIME is not set |
833 | CONFIG_HID_SUPPORT=y | 878 | CONFIG_HID_SUPPORT=y |
834 | CONFIG_HID=y | 879 | CONFIG_HID=y |
835 | CONFIG_HID_DEBUG=y | 880 | CONFIG_HID_DEBUG=y |
881 | # CONFIG_HIDRAW is not set | ||
882 | # CONFIG_HID_PID is not set | ||
883 | |||
884 | # | ||
885 | # Special HID drivers | ||
886 | # | ||
887 | CONFIG_HID_COMPAT=y | ||
836 | CONFIG_USB_SUPPORT=y | 888 | CONFIG_USB_SUPPORT=y |
837 | CONFIG_USB_ARCH_HAS_HCD=y | 889 | CONFIG_USB_ARCH_HAS_HCD=y |
838 | CONFIG_USB_ARCH_HAS_OHCI=y | 890 | CONFIG_USB_ARCH_HAS_OHCI=y |
@@ -840,36 +892,63 @@ CONFIG_USB_ARCH_HAS_EHCI=y | |||
840 | # CONFIG_USB is not set | 892 | # CONFIG_USB is not set |
841 | 893 | ||
842 | # | 894 | # |
843 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 895 | # Enable Host or Gadget support to see Inventra options |
844 | # | 896 | # |
845 | 897 | ||
846 | # | 898 | # |
847 | # USB Gadget Support | 899 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed; |
848 | # | 900 | # |
849 | # CONFIG_USB_GADGET is not set | 901 | # CONFIG_USB_GADGET is not set |
902 | |||
903 | # | ||
904 | # OTG and related infrastructure | ||
905 | # | ||
850 | # CONFIG_MMC is not set | 906 | # CONFIG_MMC is not set |
907 | # CONFIG_MEMSTICK is not set | ||
851 | # CONFIG_NEW_LEDS is not set | 908 | # CONFIG_NEW_LEDS is not set |
909 | # CONFIG_ACCESSIBILITY is not set | ||
852 | # CONFIG_INFINIBAND is not set | 910 | # CONFIG_INFINIBAND is not set |
853 | # CONFIG_RTC_CLASS is not set | 911 | CONFIG_RTC_LIB=y |
912 | CONFIG_RTC_CLASS=y | ||
913 | CONFIG_RTC_HCTOSYS=y | ||
914 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
915 | # CONFIG_RTC_DEBUG is not set | ||
854 | 916 | ||
855 | # | 917 | # |
856 | # DMA Engine support | 918 | # RTC interfaces |
857 | # | 919 | # |
858 | # CONFIG_DMA_ENGINE is not set | 920 | CONFIG_RTC_INTF_SYSFS=y |
921 | CONFIG_RTC_INTF_PROC=y | ||
922 | CONFIG_RTC_INTF_DEV=y | ||
923 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
924 | # CONFIG_RTC_DRV_TEST is not set | ||
859 | 925 | ||
860 | # | 926 | # |
861 | # DMA Clients | 927 | # SPI RTC drivers |
862 | # | 928 | # |
863 | 929 | ||
864 | # | 930 | # |
865 | # DMA Devices | 931 | # Platform RTC drivers |
866 | # | 932 | # |
867 | # CONFIG_AUXDISPLAY is not set | 933 | # CONFIG_RTC_DRV_DS1286 is not set |
934 | # CONFIG_RTC_DRV_DS1511 is not set | ||
935 | # CONFIG_RTC_DRV_DS1553 is not set | ||
936 | # CONFIG_RTC_DRV_DS1742 is not set | ||
937 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
938 | # CONFIG_RTC_DRV_M48T86 is not set | ||
939 | # CONFIG_RTC_DRV_M48T35 is not set | ||
940 | # CONFIG_RTC_DRV_M48T59 is not set | ||
941 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
942 | # CONFIG_RTC_DRV_V3020 is not set | ||
868 | 943 | ||
869 | # | 944 | # |
870 | # Userspace I/O | 945 | # on-CPU RTC drivers |
871 | # | 946 | # |
947 | CONFIG_RTC_DRV_PARISC=y | ||
948 | # CONFIG_DMADEVICES is not set | ||
949 | # CONFIG_AUXDISPLAY is not set | ||
872 | # CONFIG_UIO is not set | 950 | # CONFIG_UIO is not set |
951 | # CONFIG_STAGING is not set | ||
873 | 952 | ||
874 | # | 953 | # |
875 | # File systems | 954 | # File systems |
@@ -879,19 +958,18 @@ CONFIG_EXT2_FS=y | |||
879 | # CONFIG_EXT2_FS_XIP is not set | 958 | # CONFIG_EXT2_FS_XIP is not set |
880 | CONFIG_EXT3_FS=y | 959 | CONFIG_EXT3_FS=y |
881 | # CONFIG_EXT3_FS_XATTR is not set | 960 | # CONFIG_EXT3_FS_XATTR is not set |
961 | # CONFIG_EXT4_FS is not set | ||
882 | CONFIG_JBD=y | 962 | CONFIG_JBD=y |
883 | # CONFIG_JBD_DEBUG is not set | ||
884 | # CONFIG_REISERFS_FS is not set | 963 | # CONFIG_REISERFS_FS is not set |
885 | # CONFIG_JFS_FS is not set | 964 | # CONFIG_JFS_FS is not set |
886 | # CONFIG_FS_POSIX_ACL is not set | 965 | # CONFIG_FS_POSIX_ACL is not set |
966 | CONFIG_FILE_LOCKING=y | ||
887 | # CONFIG_XFS_FS is not set | 967 | # CONFIG_XFS_FS is not set |
888 | # CONFIG_OCFS2_FS is not set | 968 | # CONFIG_OCFS2_FS is not set |
889 | # CONFIG_MINIX_FS is not set | 969 | CONFIG_DNOTIFY=y |
890 | # CONFIG_ROMFS_FS is not set | ||
891 | CONFIG_INOTIFY=y | 970 | CONFIG_INOTIFY=y |
892 | CONFIG_INOTIFY_USER=y | 971 | CONFIG_INOTIFY_USER=y |
893 | # CONFIG_QUOTA is not set | 972 | # CONFIG_QUOTA is not set |
894 | CONFIG_DNOTIFY=y | ||
895 | # CONFIG_AUTOFS_FS is not set | 973 | # CONFIG_AUTOFS_FS is not set |
896 | CONFIG_AUTOFS4_FS=y | 974 | CONFIG_AUTOFS4_FS=y |
897 | # CONFIG_FUSE_FS is not set | 975 | # CONFIG_FUSE_FS is not set |
@@ -917,35 +995,32 @@ CONFIG_JOLIET=y | |||
917 | CONFIG_PROC_FS=y | 995 | CONFIG_PROC_FS=y |
918 | CONFIG_PROC_KCORE=y | 996 | CONFIG_PROC_KCORE=y |
919 | CONFIG_PROC_SYSCTL=y | 997 | CONFIG_PROC_SYSCTL=y |
998 | CONFIG_PROC_PAGE_MONITOR=y | ||
920 | CONFIG_SYSFS=y | 999 | CONFIG_SYSFS=y |
921 | CONFIG_TMPFS=y | 1000 | CONFIG_TMPFS=y |
922 | # CONFIG_TMPFS_POSIX_ACL is not set | 1001 | # CONFIG_TMPFS_POSIX_ACL is not set |
923 | # CONFIG_HUGETLB_PAGE is not set | 1002 | # CONFIG_HUGETLB_PAGE is not set |
924 | CONFIG_RAMFS=y | 1003 | # CONFIG_CONFIGFS_FS is not set |
925 | 1004 | CONFIG_MISC_FILESYSTEMS=y | |
926 | # | ||
927 | # Miscellaneous filesystems | ||
928 | # | ||
929 | # CONFIG_HFSPLUS_FS is not set | 1005 | # CONFIG_HFSPLUS_FS is not set |
930 | # CONFIG_CRAMFS is not set | 1006 | # CONFIG_CRAMFS is not set |
1007 | # CONFIG_SQUASHFS is not set | ||
931 | # CONFIG_VXFS_FS is not set | 1008 | # CONFIG_VXFS_FS is not set |
1009 | # CONFIG_MINIX_FS is not set | ||
1010 | # CONFIG_OMFS_FS is not set | ||
932 | # CONFIG_HPFS_FS is not set | 1011 | # CONFIG_HPFS_FS is not set |
933 | # CONFIG_QNX4FS_FS is not set | 1012 | # CONFIG_QNX4FS_FS is not set |
1013 | # CONFIG_ROMFS_FS is not set | ||
934 | # CONFIG_SYSV_FS is not set | 1014 | # CONFIG_SYSV_FS is not set |
935 | # CONFIG_UFS_FS is not set | 1015 | # CONFIG_UFS_FS is not set |
936 | 1016 | CONFIG_NETWORK_FILESYSTEMS=y | |
937 | # | ||
938 | # Network File Systems | ||
939 | # | ||
940 | CONFIG_NFS_FS=y | 1017 | CONFIG_NFS_FS=y |
941 | CONFIG_NFS_V3=y | 1018 | CONFIG_NFS_V3=y |
942 | # CONFIG_NFS_V3_ACL is not set | 1019 | # CONFIG_NFS_V3_ACL is not set |
943 | # CONFIG_NFS_DIRECTIO is not set | 1020 | CONFIG_ROOT_NFS=y |
944 | CONFIG_NFSD=y | 1021 | CONFIG_NFSD=y |
945 | CONFIG_NFSD_V3=y | 1022 | CONFIG_NFSD_V3=y |
946 | # CONFIG_NFSD_V3_ACL is not set | 1023 | # CONFIG_NFSD_V3_ACL is not set |
947 | CONFIG_NFSD_TCP=y | ||
948 | CONFIG_ROOT_NFS=y | ||
949 | CONFIG_LOCKD=y | 1024 | CONFIG_LOCKD=y |
950 | CONFIG_LOCKD_V4=y | 1025 | CONFIG_LOCKD_V4=y |
951 | CONFIG_EXPORTFS=y | 1026 | CONFIG_EXPORTFS=y |
@@ -962,10 +1037,6 @@ CONFIG_SMB_FS=y | |||
962 | # | 1037 | # |
963 | # CONFIG_PARTITION_ADVANCED is not set | 1038 | # CONFIG_PARTITION_ADVANCED is not set |
964 | CONFIG_MSDOS_PARTITION=y | 1039 | CONFIG_MSDOS_PARTITION=y |
965 | |||
966 | # | ||
967 | # Native Language Support | ||
968 | # | ||
969 | CONFIG_NLS=y | 1040 | CONFIG_NLS=y |
970 | CONFIG_NLS_DEFAULT="iso8859-1" | 1041 | CONFIG_NLS_DEFAULT="iso8859-1" |
971 | CONFIG_NLS_CODEPAGE_437=m | 1042 | CONFIG_NLS_CODEPAGE_437=m |
@@ -1011,7 +1082,9 @@ CONFIG_NLS_UTF8=m | |||
1011 | # Kernel hacking | 1082 | # Kernel hacking |
1012 | # | 1083 | # |
1013 | # CONFIG_PRINTK_TIME is not set | 1084 | # CONFIG_PRINTK_TIME is not set |
1085 | CONFIG_ENABLE_WARN_DEPRECATED=y | ||
1014 | CONFIG_ENABLE_MUST_CHECK=y | 1086 | CONFIG_ENABLE_MUST_CHECK=y |
1087 | CONFIG_FRAME_WARN=1024 | ||
1015 | CONFIG_MAGIC_SYSRQ=y | 1088 | CONFIG_MAGIC_SYSRQ=y |
1016 | # CONFIG_UNUSED_SYMBOLS is not set | 1089 | # CONFIG_UNUSED_SYMBOLS is not set |
1017 | # CONFIG_DEBUG_FS is not set | 1090 | # CONFIG_DEBUG_FS is not set |
@@ -1019,9 +1092,12 @@ CONFIG_HEADERS_CHECK=y | |||
1019 | CONFIG_DEBUG_KERNEL=y | 1092 | CONFIG_DEBUG_KERNEL=y |
1020 | # CONFIG_DEBUG_SHIRQ is not set | 1093 | # CONFIG_DEBUG_SHIRQ is not set |
1021 | CONFIG_DETECT_SOFTLOCKUP=y | 1094 | CONFIG_DETECT_SOFTLOCKUP=y |
1095 | # CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set | ||
1096 | CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 | ||
1022 | CONFIG_SCHED_DEBUG=y | 1097 | CONFIG_SCHED_DEBUG=y |
1023 | # CONFIG_SCHEDSTATS is not set | 1098 | # CONFIG_SCHEDSTATS is not set |
1024 | # CONFIG_TIMER_STATS is not set | 1099 | # CONFIG_TIMER_STATS is not set |
1100 | # CONFIG_DEBUG_OBJECTS is not set | ||
1025 | # CONFIG_DEBUG_SLAB is not set | 1101 | # CONFIG_DEBUG_SLAB is not set |
1026 | # CONFIG_DEBUG_RT_MUTEXES is not set | 1102 | # CONFIG_DEBUG_RT_MUTEXES is not set |
1027 | # CONFIG_RT_MUTEX_TESTER is not set | 1103 | # CONFIG_RT_MUTEX_TESTER is not set |
@@ -1033,10 +1109,29 @@ CONFIG_SCHED_DEBUG=y | |||
1033 | CONFIG_DEBUG_BUGVERBOSE=y | 1109 | CONFIG_DEBUG_BUGVERBOSE=y |
1034 | # CONFIG_DEBUG_INFO is not set | 1110 | # CONFIG_DEBUG_INFO is not set |
1035 | # CONFIG_DEBUG_VM is not set | 1111 | # CONFIG_DEBUG_VM is not set |
1112 | # CONFIG_DEBUG_WRITECOUNT is not set | ||
1113 | CONFIG_DEBUG_MEMORY_INIT=y | ||
1036 | # CONFIG_DEBUG_LIST is not set | 1114 | # CONFIG_DEBUG_LIST is not set |
1037 | CONFIG_FORCED_INLINING=y | 1115 | # CONFIG_DEBUG_SG is not set |
1116 | # CONFIG_DEBUG_NOTIFIERS is not set | ||
1117 | # CONFIG_BOOT_PRINTK_DELAY is not set | ||
1038 | # CONFIG_RCU_TORTURE_TEST is not set | 1118 | # CONFIG_RCU_TORTURE_TEST is not set |
1119 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||
1120 | # CONFIG_BACKTRACE_SELF_TEST is not set | ||
1121 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | ||
1039 | # CONFIG_FAULT_INJECTION is not set | 1122 | # CONFIG_FAULT_INJECTION is not set |
1123 | # CONFIG_SYSCTL_SYSCALL_CHECK is not set | ||
1124 | |||
1125 | # | ||
1126 | # Tracers | ||
1127 | # | ||
1128 | # CONFIG_SCHED_TRACER is not set | ||
1129 | # CONFIG_CONTEXT_SWITCH_TRACER is not set | ||
1130 | # CONFIG_BOOT_TRACER is not set | ||
1131 | # CONFIG_TRACE_BRANCH_PROFILING is not set | ||
1132 | # CONFIG_BUILD_DOCSRC is not set | ||
1133 | # CONFIG_DYNAMIC_PRINTK_DEBUG is not set | ||
1134 | # CONFIG_SAMPLES is not set | ||
1040 | # CONFIG_DEBUG_RODATA is not set | 1135 | # CONFIG_DEBUG_RODATA is not set |
1041 | 1136 | ||
1042 | # | 1137 | # |
@@ -1044,52 +1139,108 @@ CONFIG_FORCED_INLINING=y | |||
1044 | # | 1139 | # |
1045 | # CONFIG_KEYS is not set | 1140 | # CONFIG_KEYS is not set |
1046 | CONFIG_SECURITY=y | 1141 | CONFIG_SECURITY=y |
1142 | # CONFIG_SECURITYFS is not set | ||
1047 | # CONFIG_SECURITY_NETWORK is not set | 1143 | # CONFIG_SECURITY_NETWORK is not set |
1048 | CONFIG_SECURITY_CAPABILITIES=y | 1144 | # CONFIG_SECURITY_PATH is not set |
1145 | # CONFIG_SECURITY_FILE_CAPABILITIES is not set | ||
1146 | CONFIG_SECURITY_DEFAULT_MMAP_MIN_ADDR=0 | ||
1049 | CONFIG_CRYPTO=y | 1147 | CONFIG_CRYPTO=y |
1148 | |||
1149 | # | ||
1150 | # Crypto core or helper | ||
1151 | # | ||
1152 | # CONFIG_CRYPTO_FIPS is not set | ||
1050 | CONFIG_CRYPTO_ALGAPI=y | 1153 | CONFIG_CRYPTO_ALGAPI=y |
1154 | CONFIG_CRYPTO_ALGAPI2=y | ||
1155 | CONFIG_CRYPTO_AEAD2=y | ||
1051 | CONFIG_CRYPTO_BLKCIPHER=y | 1156 | CONFIG_CRYPTO_BLKCIPHER=y |
1157 | CONFIG_CRYPTO_BLKCIPHER2=y | ||
1158 | CONFIG_CRYPTO_HASH2=y | ||
1159 | CONFIG_CRYPTO_RNG2=y | ||
1052 | CONFIG_CRYPTO_MANAGER=y | 1160 | CONFIG_CRYPTO_MANAGER=y |
1053 | # CONFIG_CRYPTO_HMAC is not set | 1161 | CONFIG_CRYPTO_MANAGER2=y |
1054 | # CONFIG_CRYPTO_NULL is not set | 1162 | # CONFIG_CRYPTO_NULL is not set |
1163 | # CONFIG_CRYPTO_CRYPTD is not set | ||
1164 | # CONFIG_CRYPTO_AUTHENC is not set | ||
1165 | # CONFIG_CRYPTO_TEST is not set | ||
1166 | |||
1167 | # | ||
1168 | # Authenticated Encryption with Associated Data | ||
1169 | # | ||
1170 | # CONFIG_CRYPTO_CCM is not set | ||
1171 | # CONFIG_CRYPTO_GCM is not set | ||
1172 | # CONFIG_CRYPTO_SEQIV is not set | ||
1173 | |||
1174 | # | ||
1175 | # Block modes | ||
1176 | # | ||
1177 | CONFIG_CRYPTO_CBC=y | ||
1178 | # CONFIG_CRYPTO_CTR is not set | ||
1179 | # CONFIG_CRYPTO_CTS is not set | ||
1180 | # CONFIG_CRYPTO_ECB is not set | ||
1181 | # CONFIG_CRYPTO_PCBC is not set | ||
1182 | |||
1183 | # | ||
1184 | # Hash modes | ||
1185 | # | ||
1186 | # CONFIG_CRYPTO_HMAC is not set | ||
1187 | |||
1188 | # | ||
1189 | # Digest | ||
1190 | # | ||
1191 | # CONFIG_CRYPTO_CRC32C is not set | ||
1055 | # CONFIG_CRYPTO_MD4 is not set | 1192 | # CONFIG_CRYPTO_MD4 is not set |
1056 | # CONFIG_CRYPTO_MD5 is not set | 1193 | # CONFIG_CRYPTO_MD5 is not set |
1194 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | ||
1195 | # CONFIG_CRYPTO_RMD128 is not set | ||
1196 | # CONFIG_CRYPTO_RMD160 is not set | ||
1197 | # CONFIG_CRYPTO_RMD256 is not set | ||
1198 | # CONFIG_CRYPTO_RMD320 is not set | ||
1057 | # CONFIG_CRYPTO_SHA1 is not set | 1199 | # CONFIG_CRYPTO_SHA1 is not set |
1058 | # CONFIG_CRYPTO_SHA256 is not set | 1200 | # CONFIG_CRYPTO_SHA256 is not set |
1059 | # CONFIG_CRYPTO_SHA512 is not set | 1201 | # CONFIG_CRYPTO_SHA512 is not set |
1060 | # CONFIG_CRYPTO_WP512 is not set | ||
1061 | # CONFIG_CRYPTO_TGR192 is not set | 1202 | # CONFIG_CRYPTO_TGR192 is not set |
1062 | # CONFIG_CRYPTO_ECB is not set | 1203 | # CONFIG_CRYPTO_WP512 is not set |
1063 | CONFIG_CRYPTO_CBC=y | 1204 | |
1064 | # CONFIG_CRYPTO_PCBC is not set | 1205 | # |
1065 | # CONFIG_CRYPTO_CRYPTD is not set | 1206 | # Ciphers |
1066 | # CONFIG_CRYPTO_DES is not set | 1207 | # |
1067 | # CONFIG_CRYPTO_FCRYPT is not set | ||
1068 | # CONFIG_CRYPTO_BLOWFISH is not set | ||
1069 | # CONFIG_CRYPTO_TWOFISH is not set | ||
1070 | # CONFIG_CRYPTO_SERPENT is not set | ||
1071 | # CONFIG_CRYPTO_AES is not set | 1208 | # CONFIG_CRYPTO_AES is not set |
1209 | # CONFIG_CRYPTO_ANUBIS is not set | ||
1210 | # CONFIG_CRYPTO_ARC4 is not set | ||
1211 | # CONFIG_CRYPTO_BLOWFISH is not set | ||
1212 | # CONFIG_CRYPTO_CAMELLIA is not set | ||
1072 | # CONFIG_CRYPTO_CAST5 is not set | 1213 | # CONFIG_CRYPTO_CAST5 is not set |
1073 | # CONFIG_CRYPTO_CAST6 is not set | 1214 | # CONFIG_CRYPTO_CAST6 is not set |
1074 | # CONFIG_CRYPTO_TEA is not set | 1215 | # CONFIG_CRYPTO_DES is not set |
1075 | # CONFIG_CRYPTO_ARC4 is not set | 1216 | # CONFIG_CRYPTO_FCRYPT is not set |
1076 | # CONFIG_CRYPTO_KHAZAD is not set | 1217 | # CONFIG_CRYPTO_KHAZAD is not set |
1077 | # CONFIG_CRYPTO_ANUBIS is not set | ||
1078 | # CONFIG_CRYPTO_SEED is not set | 1218 | # CONFIG_CRYPTO_SEED is not set |
1219 | # CONFIG_CRYPTO_SERPENT is not set | ||
1220 | # CONFIG_CRYPTO_TEA is not set | ||
1221 | # CONFIG_CRYPTO_TWOFISH is not set | ||
1222 | |||
1223 | # | ||
1224 | # Compression | ||
1225 | # | ||
1079 | # CONFIG_CRYPTO_DEFLATE is not set | 1226 | # CONFIG_CRYPTO_DEFLATE is not set |
1080 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | 1227 | # CONFIG_CRYPTO_LZO is not set |
1081 | # CONFIG_CRYPTO_CRC32C is not set | 1228 | |
1082 | # CONFIG_CRYPTO_CAMELLIA is not set | 1229 | # |
1083 | # CONFIG_CRYPTO_TEST is not set | 1230 | # Random Number Generation |
1084 | # CONFIG_CRYPTO_AUTHENC is not set | 1231 | # |
1232 | # CONFIG_CRYPTO_ANSI_CPRNG is not set | ||
1085 | CONFIG_CRYPTO_HW=y | 1233 | CONFIG_CRYPTO_HW=y |
1234 | # CONFIG_CRYPTO_DEV_HIFN_795X is not set | ||
1086 | 1235 | ||
1087 | # | 1236 | # |
1088 | # Library routines | 1237 | # Library routines |
1089 | # | 1238 | # |
1090 | CONFIG_BITREVERSE=y | 1239 | CONFIG_BITREVERSE=y |
1240 | CONFIG_GENERIC_FIND_LAST_BIT=y | ||
1091 | # CONFIG_CRC_CCITT is not set | 1241 | # CONFIG_CRC_CCITT is not set |
1092 | # CONFIG_CRC16 is not set | 1242 | # CONFIG_CRC16 is not set |
1243 | # CONFIG_CRC_T10DIF is not set | ||
1093 | # CONFIG_CRC_ITU_T is not set | 1244 | # CONFIG_CRC_ITU_T is not set |
1094 | CONFIG_CRC32=y | 1245 | CONFIG_CRC32=y |
1095 | # CONFIG_CRC7 is not set | 1246 | # CONFIG_CRC7 is not set |
diff --git a/arch/parisc/configs/c3000_defconfig b/arch/parisc/configs/c3000_defconfig index c6def3c1d209..0aa8014f758c 100644 --- a/arch/parisc/configs/c3000_defconfig +++ b/arch/parisc/configs/c3000_defconfig | |||
@@ -1,7 +1,7 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.23 | 3 | # Linux kernel version: 2.6.29-rc8 |
4 | # Fri Oct 12 21:24:00 2007 | 4 | # Fri Mar 13 01:32:58 2009 |
5 | # | 5 | # |
6 | CONFIG_PARISC=y | 6 | CONFIG_PARISC=y |
7 | CONFIG_MMU=y | 7 | CONFIG_MMU=y |
@@ -33,16 +33,29 @@ CONFIG_SYSVIPC_SYSCTL=y | |||
33 | # CONFIG_POSIX_MQUEUE is not set | 33 | # CONFIG_POSIX_MQUEUE is not set |
34 | # CONFIG_BSD_PROCESS_ACCT is not set | 34 | # CONFIG_BSD_PROCESS_ACCT is not set |
35 | # CONFIG_TASKSTATS is not set | 35 | # CONFIG_TASKSTATS is not set |
36 | # CONFIG_USER_NS is not set | ||
37 | # CONFIG_AUDIT is not set | 36 | # CONFIG_AUDIT is not set |
37 | |||
38 | # | ||
39 | # RCU Subsystem | ||
40 | # | ||
41 | CONFIG_CLASSIC_RCU=y | ||
42 | # CONFIG_TREE_RCU is not set | ||
43 | # CONFIG_PREEMPT_RCU is not set | ||
44 | # CONFIG_TREE_RCU_TRACE is not set | ||
45 | # CONFIG_PREEMPT_RCU_TRACE is not set | ||
38 | CONFIG_IKCONFIG=y | 46 | CONFIG_IKCONFIG=y |
39 | CONFIG_IKCONFIG_PROC=y | 47 | CONFIG_IKCONFIG_PROC=y |
40 | CONFIG_LOG_BUF_SHIFT=16 | 48 | CONFIG_LOG_BUF_SHIFT=16 |
49 | # CONFIG_GROUP_SCHED is not set | ||
50 | # CONFIG_CGROUPS is not set | ||
41 | CONFIG_SYSFS_DEPRECATED=y | 51 | CONFIG_SYSFS_DEPRECATED=y |
52 | CONFIG_SYSFS_DEPRECATED_V2=y | ||
42 | # CONFIG_RELAY is not set | 53 | # CONFIG_RELAY is not set |
54 | # CONFIG_NAMESPACES is not set | ||
43 | # CONFIG_BLK_DEV_INITRD is not set | 55 | # CONFIG_BLK_DEV_INITRD is not set |
44 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | 56 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set |
45 | CONFIG_SYSCTL=y | 57 | CONFIG_SYSCTL=y |
58 | CONFIG_ANON_INODES=y | ||
46 | CONFIG_EMBEDDED=y | 59 | CONFIG_EMBEDDED=y |
47 | CONFIG_SYSCTL_SYSCALL=y | 60 | CONFIG_SYSCTL_SYSCALL=y |
48 | CONFIG_KALLSYMS=y | 61 | CONFIG_KALLSYMS=y |
@@ -54,29 +67,39 @@ CONFIG_BUG=y | |||
54 | CONFIG_ELF_CORE=y | 67 | CONFIG_ELF_CORE=y |
55 | CONFIG_BASE_FULL=y | 68 | CONFIG_BASE_FULL=y |
56 | CONFIG_FUTEX=y | 69 | CONFIG_FUTEX=y |
57 | CONFIG_ANON_INODES=y | ||
58 | CONFIG_EPOLL=y | 70 | CONFIG_EPOLL=y |
59 | CONFIG_SIGNALFD=y | 71 | CONFIG_SIGNALFD=y |
72 | CONFIG_TIMERFD=y | ||
60 | CONFIG_EVENTFD=y | 73 | CONFIG_EVENTFD=y |
61 | CONFIG_SHMEM=y | 74 | CONFIG_SHMEM=y |
75 | CONFIG_AIO=y | ||
62 | CONFIG_VM_EVENT_COUNTERS=y | 76 | CONFIG_VM_EVENT_COUNTERS=y |
77 | CONFIG_PCI_QUIRKS=y | ||
78 | CONFIG_COMPAT_BRK=y | ||
63 | CONFIG_SLAB=y | 79 | CONFIG_SLAB=y |
64 | # CONFIG_SLUB is not set | 80 | # CONFIG_SLUB is not set |
65 | # CONFIG_SLOB is not set | 81 | # CONFIG_SLOB is not set |
82 | CONFIG_PROFILING=y | ||
83 | CONFIG_TRACEPOINTS=y | ||
84 | # CONFIG_MARKERS is not set | ||
85 | CONFIG_OPROFILE=m | ||
86 | CONFIG_HAVE_OPROFILE=y | ||
87 | # CONFIG_HAVE_GENERIC_DMA_COHERENT is not set | ||
88 | CONFIG_SLABINFO=y | ||
66 | CONFIG_RT_MUTEXES=y | 89 | CONFIG_RT_MUTEXES=y |
67 | # CONFIG_TINY_SHMEM is not set | ||
68 | CONFIG_BASE_SMALL=0 | 90 | CONFIG_BASE_SMALL=0 |
69 | CONFIG_MODULES=y | 91 | CONFIG_MODULES=y |
92 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
70 | CONFIG_MODULE_UNLOAD=y | 93 | CONFIG_MODULE_UNLOAD=y |
71 | CONFIG_MODULE_FORCE_UNLOAD=y | 94 | CONFIG_MODULE_FORCE_UNLOAD=y |
72 | # CONFIG_MODVERSIONS is not set | 95 | # CONFIG_MODVERSIONS is not set |
73 | # CONFIG_MODULE_SRCVERSION_ALL is not set | 96 | # CONFIG_MODULE_SRCVERSION_ALL is not set |
74 | CONFIG_KMOD=y | 97 | CONFIG_INIT_ALL_POSSIBLE=y |
75 | CONFIG_BLOCK=y | 98 | CONFIG_BLOCK=y |
76 | # CONFIG_LBD is not set | 99 | # CONFIG_LBD is not set |
77 | # CONFIG_BLK_DEV_IO_TRACE is not set | 100 | # CONFIG_BLK_DEV_IO_TRACE is not set |
78 | # CONFIG_LSF is not set | ||
79 | # CONFIG_BLK_DEV_BSG is not set | 101 | # CONFIG_BLK_DEV_BSG is not set |
102 | # CONFIG_BLK_DEV_INTEGRITY is not set | ||
80 | 103 | ||
81 | # | 104 | # |
82 | # IO Schedulers | 105 | # IO Schedulers |
@@ -90,6 +113,7 @@ CONFIG_DEFAULT_AS=y | |||
90 | # CONFIG_DEFAULT_CFQ is not set | 113 | # CONFIG_DEFAULT_CFQ is not set |
91 | # CONFIG_DEFAULT_NOOP is not set | 114 | # CONFIG_DEFAULT_NOOP is not set |
92 | CONFIG_DEFAULT_IOSCHED="anticipatory" | 115 | CONFIG_DEFAULT_IOSCHED="anticipatory" |
116 | # CONFIG_FREEZER is not set | ||
93 | 117 | ||
94 | # | 118 | # |
95 | # Processor type and features | 119 | # Processor type and features |
@@ -115,17 +139,19 @@ CONFIG_HZ_250=y | |||
115 | # CONFIG_HZ_300 is not set | 139 | # CONFIG_HZ_300 is not set |
116 | # CONFIG_HZ_1000 is not set | 140 | # CONFIG_HZ_1000 is not set |
117 | CONFIG_HZ=250 | 141 | CONFIG_HZ=250 |
142 | # CONFIG_SCHED_HRTICK is not set | ||
118 | CONFIG_SELECT_MEMORY_MODEL=y | 143 | CONFIG_SELECT_MEMORY_MODEL=y |
119 | CONFIG_FLATMEM_MANUAL=y | 144 | CONFIG_FLATMEM_MANUAL=y |
120 | # CONFIG_DISCONTIGMEM_MANUAL is not set | 145 | # CONFIG_DISCONTIGMEM_MANUAL is not set |
121 | # CONFIG_SPARSEMEM_MANUAL is not set | 146 | # CONFIG_SPARSEMEM_MANUAL is not set |
122 | CONFIG_FLATMEM=y | 147 | CONFIG_FLATMEM=y |
123 | CONFIG_FLAT_NODE_MEM_MAP=y | 148 | CONFIG_FLAT_NODE_MEM_MAP=y |
124 | # CONFIG_SPARSEMEM_STATIC is not set | 149 | CONFIG_PAGEFLAGS_EXTENDED=y |
125 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 150 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
126 | # CONFIG_RESOURCES_64BIT is not set | 151 | # CONFIG_PHYS_ADDR_T_64BIT is not set |
127 | CONFIG_ZONE_DMA_FLAG=0 | 152 | CONFIG_ZONE_DMA_FLAG=0 |
128 | CONFIG_VIRT_TO_BUS=y | 153 | CONFIG_VIRT_TO_BUS=y |
154 | CONFIG_UNEVICTABLE_LRU=y | ||
129 | # CONFIG_HPUX is not set | 155 | # CONFIG_HPUX is not set |
130 | 156 | ||
131 | # | 157 | # |
@@ -134,14 +160,13 @@ CONFIG_VIRT_TO_BUS=y | |||
134 | # CONFIG_GSC is not set | 160 | # CONFIG_GSC is not set |
135 | CONFIG_PCI=y | 161 | CONFIG_PCI=y |
136 | # CONFIG_ARCH_SUPPORTS_MSI is not set | 162 | # CONFIG_ARCH_SUPPORTS_MSI is not set |
163 | CONFIG_PCI_LEGACY=y | ||
137 | # CONFIG_PCI_DEBUG is not set | 164 | # CONFIG_PCI_DEBUG is not set |
165 | # CONFIG_PCI_STUB is not set | ||
138 | CONFIG_PCI_LBA=y | 166 | CONFIG_PCI_LBA=y |
139 | CONFIG_IOSAPIC=y | 167 | CONFIG_IOSAPIC=y |
140 | CONFIG_IOMMU_SBA=y | 168 | CONFIG_IOMMU_SBA=y |
141 | 169 | CONFIG_IOMMU_HELPER=y | |
142 | # | ||
143 | # PCCARD (PCMCIA/CardBus) support | ||
144 | # | ||
145 | # CONFIG_PCCARD is not set | 170 | # CONFIG_PCCARD is not set |
146 | # CONFIG_HOTPLUG_PCI is not set | 171 | # CONFIG_HOTPLUG_PCI is not set |
147 | 172 | ||
@@ -158,16 +183,15 @@ CONFIG_PDC_STABLE=y | |||
158 | # Executable file formats | 183 | # Executable file formats |
159 | # | 184 | # |
160 | CONFIG_BINFMT_ELF=y | 185 | CONFIG_BINFMT_ELF=y |
186 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
187 | # CONFIG_HAVE_AOUT is not set | ||
161 | # CONFIG_BINFMT_MISC is not set | 188 | # CONFIG_BINFMT_MISC is not set |
162 | |||
163 | # | ||
164 | # Networking | ||
165 | # | ||
166 | CONFIG_NET=y | 189 | CONFIG_NET=y |
167 | 190 | ||
168 | # | 191 | # |
169 | # Networking options | 192 | # Networking options |
170 | # | 193 | # |
194 | CONFIG_COMPAT_NET_DEV_OPS=y | ||
171 | CONFIG_PACKET=y | 195 | CONFIG_PACKET=y |
172 | CONFIG_PACKET_MMAP=y | 196 | CONFIG_PACKET_MMAP=y |
173 | CONFIG_UNIX=y | 197 | CONFIG_UNIX=y |
@@ -175,6 +199,8 @@ CONFIG_XFRM=y | |||
175 | CONFIG_XFRM_USER=m | 199 | CONFIG_XFRM_USER=m |
176 | # CONFIG_XFRM_SUB_POLICY is not set | 200 | # CONFIG_XFRM_SUB_POLICY is not set |
177 | # CONFIG_XFRM_MIGRATE is not set | 201 | # CONFIG_XFRM_MIGRATE is not set |
202 | # CONFIG_XFRM_STATISTICS is not set | ||
203 | CONFIG_XFRM_IPCOMP=m | ||
178 | CONFIG_NET_KEY=m | 204 | CONFIG_NET_KEY=m |
179 | # CONFIG_NET_KEY_MIGRATE is not set | 205 | # CONFIG_NET_KEY_MIGRATE is not set |
180 | CONFIG_INET=y | 206 | CONFIG_INET=y |
@@ -204,7 +230,6 @@ CONFIG_INET_XFRM_MODE_BEET=y | |||
204 | CONFIG_TCP_CONG_CUBIC=y | 230 | CONFIG_TCP_CONG_CUBIC=y |
205 | CONFIG_DEFAULT_TCP_CONG="cubic" | 231 | CONFIG_DEFAULT_TCP_CONG="cubic" |
206 | # CONFIG_TCP_MD5SIG is not set | 232 | # CONFIG_TCP_MD5SIG is not set |
207 | # CONFIG_IP_VS is not set | ||
208 | CONFIG_IPV6=m | 233 | CONFIG_IPV6=m |
209 | # CONFIG_IPV6_PRIVACY is not set | 234 | # CONFIG_IPV6_PRIVACY is not set |
210 | # CONFIG_IPV6_ROUTER_PREF is not set | 235 | # CONFIG_IPV6_ROUTER_PREF is not set |
@@ -220,29 +245,34 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=m | |||
220 | CONFIG_INET6_XFRM_MODE_BEET=m | 245 | CONFIG_INET6_XFRM_MODE_BEET=m |
221 | # CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set | 246 | # CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set |
222 | CONFIG_IPV6_SIT=m | 247 | CONFIG_IPV6_SIT=m |
248 | CONFIG_IPV6_NDISC_NODETYPE=y | ||
223 | CONFIG_IPV6_TUNNEL=m | 249 | CONFIG_IPV6_TUNNEL=m |
224 | # CONFIG_IPV6_MULTIPLE_TABLES is not set | 250 | # CONFIG_IPV6_MULTIPLE_TABLES is not set |
251 | # CONFIG_IPV6_MROUTE is not set | ||
225 | # CONFIG_NETWORK_SECMARK is not set | 252 | # CONFIG_NETWORK_SECMARK is not set |
226 | CONFIG_NETFILTER=y | 253 | CONFIG_NETFILTER=y |
227 | CONFIG_NETFILTER_DEBUG=y | 254 | CONFIG_NETFILTER_DEBUG=y |
255 | CONFIG_NETFILTER_ADVANCED=y | ||
228 | 256 | ||
229 | # | 257 | # |
230 | # Core Netfilter Configuration | 258 | # Core Netfilter Configuration |
231 | # | 259 | # |
232 | # CONFIG_NETFILTER_NETLINK is not set | 260 | # CONFIG_NETFILTER_NETLINK_QUEUE is not set |
233 | # CONFIG_NF_CONNTRACK_ENABLED is not set | 261 | # CONFIG_NETFILTER_NETLINK_LOG is not set |
234 | # CONFIG_NF_CONNTRACK is not set | 262 | # CONFIG_NF_CONNTRACK is not set |
235 | # CONFIG_NETFILTER_XTABLES is not set | 263 | # CONFIG_NETFILTER_XTABLES is not set |
264 | # CONFIG_IP_VS is not set | ||
236 | 265 | ||
237 | # | 266 | # |
238 | # IP: Netfilter Configuration | 267 | # IP: Netfilter Configuration |
239 | # | 268 | # |
269 | # CONFIG_NF_DEFRAG_IPV4 is not set | ||
240 | CONFIG_IP_NF_QUEUE=m | 270 | CONFIG_IP_NF_QUEUE=m |
241 | # CONFIG_IP_NF_IPTABLES is not set | 271 | # CONFIG_IP_NF_IPTABLES is not set |
242 | # CONFIG_IP_NF_ARPTABLES is not set | 272 | # CONFIG_IP_NF_ARPTABLES is not set |
243 | 273 | ||
244 | # | 274 | # |
245 | # IPv6: Netfilter Configuration (EXPERIMENTAL) | 275 | # IPv6: Netfilter Configuration |
246 | # | 276 | # |
247 | # CONFIG_IP6_NF_QUEUE is not set | 277 | # CONFIG_IP6_NF_QUEUE is not set |
248 | # CONFIG_IP6_NF_IPTABLES is not set | 278 | # CONFIG_IP6_NF_IPTABLES is not set |
@@ -251,6 +281,7 @@ CONFIG_IP_NF_QUEUE=m | |||
251 | # CONFIG_TIPC is not set | 281 | # CONFIG_TIPC is not set |
252 | # CONFIG_ATM is not set | 282 | # CONFIG_ATM is not set |
253 | # CONFIG_BRIDGE is not set | 283 | # CONFIG_BRIDGE is not set |
284 | # CONFIG_NET_DSA is not set | ||
254 | # CONFIG_VLAN_8021Q is not set | 285 | # CONFIG_VLAN_8021Q is not set |
255 | # CONFIG_DECNET is not set | 286 | # CONFIG_DECNET is not set |
256 | # CONFIG_LLC2 is not set | 287 | # CONFIG_LLC2 is not set |
@@ -260,28 +291,26 @@ CONFIG_IP_NF_QUEUE=m | |||
260 | # CONFIG_LAPB is not set | 291 | # CONFIG_LAPB is not set |
261 | # CONFIG_ECONET is not set | 292 | # CONFIG_ECONET is not set |
262 | # CONFIG_WAN_ROUTER is not set | 293 | # CONFIG_WAN_ROUTER is not set |
263 | |||
264 | # | ||
265 | # QoS and/or fair queueing | ||
266 | # | ||
267 | # CONFIG_NET_SCHED is not set | 294 | # CONFIG_NET_SCHED is not set |
295 | # CONFIG_DCB is not set | ||
268 | 296 | ||
269 | # | 297 | # |
270 | # Network testing | 298 | # Network testing |
271 | # | 299 | # |
272 | CONFIG_NET_PKTGEN=m | 300 | CONFIG_NET_PKTGEN=m |
273 | # CONFIG_HAMRADIO is not set | 301 | # CONFIG_HAMRADIO is not set |
302 | # CONFIG_CAN is not set | ||
274 | # CONFIG_IRDA is not set | 303 | # CONFIG_IRDA is not set |
275 | # CONFIG_BT is not set | 304 | # CONFIG_BT is not set |
276 | # CONFIG_AF_RXRPC is not set | 305 | # CONFIG_AF_RXRPC is not set |
277 | 306 | # CONFIG_PHONET is not set | |
278 | # | 307 | CONFIG_WIRELESS=y |
279 | # Wireless | ||
280 | # | ||
281 | # CONFIG_CFG80211 is not set | 308 | # CONFIG_CFG80211 is not set |
309 | CONFIG_WIRELESS_OLD_REGULATORY=y | ||
282 | # CONFIG_WIRELESS_EXT is not set | 310 | # CONFIG_WIRELESS_EXT is not set |
311 | # CONFIG_LIB80211 is not set | ||
283 | # CONFIG_MAC80211 is not set | 312 | # CONFIG_MAC80211 is not set |
284 | # CONFIG_IEEE80211 is not set | 313 | # CONFIG_WIMAX is not set |
285 | # CONFIG_RFKILL is not set | 314 | # CONFIG_RFKILL is not set |
286 | # CONFIG_NET_9P is not set | 315 | # CONFIG_NET_9P is not set |
287 | 316 | ||
@@ -296,6 +325,8 @@ CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | |||
296 | # CONFIG_STANDALONE is not set | 325 | # CONFIG_STANDALONE is not set |
297 | # CONFIG_PREVENT_FIRMWARE_BUILD is not set | 326 | # CONFIG_PREVENT_FIRMWARE_BUILD is not set |
298 | CONFIG_FW_LOADER=y | 327 | CONFIG_FW_LOADER=y |
328 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
329 | CONFIG_EXTRA_FIRMWARE="" | ||
299 | # CONFIG_DEBUG_DRIVER is not set | 330 | # CONFIG_DEBUG_DRIVER is not set |
300 | # CONFIG_DEBUG_DEVRES is not set | 331 | # CONFIG_DEBUG_DEVRES is not set |
301 | # CONFIG_SYS_HYPERVISOR is not set | 332 | # CONFIG_SYS_HYPERVISOR is not set |
@@ -316,59 +347,62 @@ CONFIG_BLK_DEV_CRYPTOLOOP=m | |||
316 | # CONFIG_BLK_DEV_RAM is not set | 347 | # CONFIG_BLK_DEV_RAM is not set |
317 | # CONFIG_CDROM_PKTCDVD is not set | 348 | # CONFIG_CDROM_PKTCDVD is not set |
318 | # CONFIG_ATA_OVER_ETH is not set | 349 | # CONFIG_ATA_OVER_ETH is not set |
350 | # CONFIG_BLK_DEV_HD is not set | ||
319 | CONFIG_MISC_DEVICES=y | 351 | CONFIG_MISC_DEVICES=y |
320 | # CONFIG_PHANTOM is not set | 352 | # CONFIG_PHANTOM is not set |
321 | # CONFIG_EEPROM_93CX6 is not set | ||
322 | # CONFIG_SGI_IOC4 is not set | 353 | # CONFIG_SGI_IOC4 is not set |
323 | # CONFIG_TIFM_CORE is not set | 354 | # CONFIG_TIFM_CORE is not set |
355 | # CONFIG_ENCLOSURE_SERVICES is not set | ||
356 | # CONFIG_HP_ILO is not set | ||
357 | # CONFIG_C2PORT is not set | ||
358 | |||
359 | # | ||
360 | # EEPROM support | ||
361 | # | ||
362 | # CONFIG_EEPROM_93CX6 is not set | ||
363 | CONFIG_HAVE_IDE=y | ||
324 | CONFIG_IDE=y | 364 | CONFIG_IDE=y |
325 | CONFIG_IDE_MAX_HWIFS=4 | ||
326 | CONFIG_BLK_DEV_IDE=y | ||
327 | 365 | ||
328 | # | 366 | # |
329 | # Please see Documentation/ide.txt for help/info on IDE drives | 367 | # Please see Documentation/ide/ide.txt for help/info on IDE drives |
330 | # | 368 | # |
369 | CONFIG_IDE_ATAPI=y | ||
331 | # CONFIG_BLK_DEV_IDE_SATA is not set | 370 | # CONFIG_BLK_DEV_IDE_SATA is not set |
332 | CONFIG_BLK_DEV_IDEDISK=m | 371 | CONFIG_IDE_GD=y |
333 | # CONFIG_IDEDISK_MULTI_MODE is not set | 372 | CONFIG_IDE_GD_ATA=y |
373 | # CONFIG_IDE_GD_ATAPI is not set | ||
334 | CONFIG_BLK_DEV_IDECD=y | 374 | CONFIG_BLK_DEV_IDECD=y |
375 | CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y | ||
335 | # CONFIG_BLK_DEV_IDETAPE is not set | 376 | # CONFIG_BLK_DEV_IDETAPE is not set |
336 | # CONFIG_BLK_DEV_IDEFLOPPY is not set | ||
337 | CONFIG_BLK_DEV_IDESCSI=y | ||
338 | # CONFIG_IDE_TASK_IOCTL is not set | 377 | # CONFIG_IDE_TASK_IOCTL is not set |
339 | CONFIG_IDE_PROC_FS=y | 378 | CONFIG_IDE_PROC_FS=y |
340 | 379 | ||
341 | # | 380 | # |
342 | # IDE chipset support/bugfixes | 381 | # IDE chipset support/bugfixes |
343 | # | 382 | # |
344 | CONFIG_IDE_GENERIC=y | ||
345 | # CONFIG_BLK_DEV_PLATFORM is not set | 383 | # CONFIG_BLK_DEV_PLATFORM is not set |
384 | CONFIG_BLK_DEV_IDEDMA_SFF=y | ||
346 | 385 | ||
347 | # | 386 | # |
348 | # PCI IDE chipsets support | 387 | # PCI IDE chipsets support |
349 | # | 388 | # |
350 | CONFIG_BLK_DEV_IDEPCI=y | 389 | CONFIG_BLK_DEV_IDEPCI=y |
351 | CONFIG_IDEPCI_SHARE_IRQ=y | ||
352 | CONFIG_IDEPCI_PCIBUS_ORDER=y | 390 | CONFIG_IDEPCI_PCIBUS_ORDER=y |
353 | # CONFIG_BLK_DEV_OFFBOARD is not set | ||
354 | # CONFIG_BLK_DEV_GENERIC is not set | 391 | # CONFIG_BLK_DEV_GENERIC is not set |
355 | # CONFIG_BLK_DEV_OPTI621 is not set | 392 | # CONFIG_BLK_DEV_OPTI621 is not set |
356 | CONFIG_BLK_DEV_IDEDMA_PCI=y | 393 | CONFIG_BLK_DEV_IDEDMA_PCI=y |
357 | # CONFIG_BLK_DEV_IDEDMA_FORCED is not set | ||
358 | CONFIG_IDEDMA_ONLYDISK=y | ||
359 | # CONFIG_BLK_DEV_AEC62XX is not set | 394 | # CONFIG_BLK_DEV_AEC62XX is not set |
360 | # CONFIG_BLK_DEV_ALI15X3 is not set | 395 | # CONFIG_BLK_DEV_ALI15X3 is not set |
361 | # CONFIG_BLK_DEV_AMD74XX is not set | 396 | # CONFIG_BLK_DEV_AMD74XX is not set |
362 | # CONFIG_BLK_DEV_CMD64X is not set | 397 | # CONFIG_BLK_DEV_CMD64X is not set |
363 | # CONFIG_BLK_DEV_TRIFLEX is not set | 398 | # CONFIG_BLK_DEV_TRIFLEX is not set |
364 | # CONFIG_BLK_DEV_CY82C693 is not set | ||
365 | # CONFIG_BLK_DEV_CS5520 is not set | 399 | # CONFIG_BLK_DEV_CS5520 is not set |
366 | # CONFIG_BLK_DEV_CS5530 is not set | 400 | # CONFIG_BLK_DEV_CS5530 is not set |
367 | # CONFIG_BLK_DEV_HPT34X is not set | ||
368 | # CONFIG_BLK_DEV_HPT366 is not set | 401 | # CONFIG_BLK_DEV_HPT366 is not set |
369 | # CONFIG_BLK_DEV_JMICRON is not set | 402 | # CONFIG_BLK_DEV_JMICRON is not set |
370 | # CONFIG_BLK_DEV_SC1200 is not set | 403 | # CONFIG_BLK_DEV_SC1200 is not set |
371 | # CONFIG_BLK_DEV_PIIX is not set | 404 | # CONFIG_BLK_DEV_PIIX is not set |
405 | # CONFIG_BLK_DEV_IT8172 is not set | ||
372 | # CONFIG_BLK_DEV_IT8213 is not set | 406 | # CONFIG_BLK_DEV_IT8213 is not set |
373 | # CONFIG_BLK_DEV_IT821X is not set | 407 | # CONFIG_BLK_DEV_IT821X is not set |
374 | CONFIG_BLK_DEV_NS87415=y | 408 | CONFIG_BLK_DEV_NS87415=y |
@@ -380,10 +414,7 @@ CONFIG_BLK_DEV_SIIMAGE=m | |||
380 | # CONFIG_BLK_DEV_TRM290 is not set | 414 | # CONFIG_BLK_DEV_TRM290 is not set |
381 | # CONFIG_BLK_DEV_VIA82CXXX is not set | 415 | # CONFIG_BLK_DEV_VIA82CXXX is not set |
382 | # CONFIG_BLK_DEV_TC86C001 is not set | 416 | # CONFIG_BLK_DEV_TC86C001 is not set |
383 | # CONFIG_IDE_ARM is not set | ||
384 | CONFIG_BLK_DEV_IDEDMA=y | 417 | CONFIG_BLK_DEV_IDEDMA=y |
385 | # CONFIG_IDEDMA_IVB is not set | ||
386 | # CONFIG_BLK_DEV_HD is not set | ||
387 | 418 | ||
388 | # | 419 | # |
389 | # SCSI device support | 420 | # SCSI device support |
@@ -422,8 +453,10 @@ CONFIG_SCSI_SPI_ATTRS=y | |||
422 | # CONFIG_SCSI_FC_ATTRS is not set | 453 | # CONFIG_SCSI_FC_ATTRS is not set |
423 | CONFIG_SCSI_ISCSI_ATTRS=m | 454 | CONFIG_SCSI_ISCSI_ATTRS=m |
424 | # CONFIG_SCSI_SAS_LIBSAS is not set | 455 | # CONFIG_SCSI_SAS_LIBSAS is not set |
456 | # CONFIG_SCSI_SRP_ATTRS is not set | ||
425 | CONFIG_SCSI_LOWLEVEL=y | 457 | CONFIG_SCSI_LOWLEVEL=y |
426 | # CONFIG_ISCSI_TCP is not set | 458 | # CONFIG_ISCSI_TCP is not set |
459 | # CONFIG_SCSI_CXGB3_ISCSI is not set | ||
427 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set | 460 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set |
428 | # CONFIG_SCSI_3W_9XXX is not set | 461 | # CONFIG_SCSI_3W_9XXX is not set |
429 | # CONFIG_SCSI_ACARD is not set | 462 | # CONFIG_SCSI_ACARD is not set |
@@ -433,16 +466,20 @@ CONFIG_SCSI_LOWLEVEL=y | |||
433 | # CONFIG_SCSI_AIC79XX is not set | 466 | # CONFIG_SCSI_AIC79XX is not set |
434 | # CONFIG_SCSI_AIC94XX is not set | 467 | # CONFIG_SCSI_AIC94XX is not set |
435 | # CONFIG_SCSI_DPT_I2O is not set | 468 | # CONFIG_SCSI_DPT_I2O is not set |
469 | # CONFIG_SCSI_ADVANSYS is not set | ||
436 | # CONFIG_SCSI_ARCMSR is not set | 470 | # CONFIG_SCSI_ARCMSR is not set |
437 | # CONFIG_MEGARAID_NEWGEN is not set | 471 | # CONFIG_MEGARAID_NEWGEN is not set |
438 | # CONFIG_MEGARAID_LEGACY is not set | 472 | # CONFIG_MEGARAID_LEGACY is not set |
439 | # CONFIG_MEGARAID_SAS is not set | 473 | # CONFIG_MEGARAID_SAS is not set |
440 | # CONFIG_SCSI_HPTIOP is not set | 474 | # CONFIG_SCSI_HPTIOP is not set |
475 | # CONFIG_LIBFC is not set | ||
476 | # CONFIG_FCOE is not set | ||
441 | # CONFIG_SCSI_DMX3191D is not set | 477 | # CONFIG_SCSI_DMX3191D is not set |
442 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | 478 | # CONFIG_SCSI_FUTURE_DOMAIN is not set |
443 | # CONFIG_SCSI_IPS is not set | 479 | # CONFIG_SCSI_IPS is not set |
444 | # CONFIG_SCSI_INITIO is not set | 480 | # CONFIG_SCSI_INITIO is not set |
445 | # CONFIG_SCSI_INIA100 is not set | 481 | # CONFIG_SCSI_INIA100 is not set |
482 | # CONFIG_SCSI_MVSAS is not set | ||
446 | # CONFIG_SCSI_STEX is not set | 483 | # CONFIG_SCSI_STEX is not set |
447 | CONFIG_SCSI_SYM53C8XX_2=y | 484 | CONFIG_SCSI_SYM53C8XX_2=y |
448 | CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=0 | 485 | CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=0 |
@@ -458,9 +495,11 @@ CONFIG_SCSI_SYM53C8XX_MMIO=y | |||
458 | # CONFIG_SCSI_NSP32 is not set | 495 | # CONFIG_SCSI_NSP32 is not set |
459 | CONFIG_SCSI_DEBUG=m | 496 | CONFIG_SCSI_DEBUG=m |
460 | # CONFIG_SCSI_SRP is not set | 497 | # CONFIG_SCSI_SRP is not set |
498 | # CONFIG_SCSI_DH is not set | ||
461 | # CONFIG_ATA is not set | 499 | # CONFIG_ATA is not set |
462 | CONFIG_MD=y | 500 | CONFIG_MD=y |
463 | CONFIG_BLK_DEV_MD=y | 501 | CONFIG_BLK_DEV_MD=y |
502 | CONFIG_MD_AUTODETECT=y | ||
464 | CONFIG_MD_LINEAR=y | 503 | CONFIG_MD_LINEAR=y |
465 | CONFIG_MD_RAID0=y | 504 | CONFIG_MD_RAID0=y |
466 | CONFIG_MD_RAID1=y | 505 | CONFIG_MD_RAID1=y |
@@ -475,13 +514,8 @@ CONFIG_DM_SNAPSHOT=m | |||
475 | CONFIG_DM_MIRROR=m | 514 | CONFIG_DM_MIRROR=m |
476 | CONFIG_DM_ZERO=m | 515 | CONFIG_DM_ZERO=m |
477 | CONFIG_DM_MULTIPATH=m | 516 | CONFIG_DM_MULTIPATH=m |
478 | # CONFIG_DM_MULTIPATH_EMC is not set | ||
479 | # CONFIG_DM_MULTIPATH_RDAC is not set | ||
480 | # CONFIG_DM_DELAY is not set | 517 | # CONFIG_DM_DELAY is not set |
481 | 518 | # CONFIG_DM_UEVENT is not set | |
482 | # | ||
483 | # Fusion MPT device support | ||
484 | # | ||
485 | CONFIG_FUSION=y | 519 | CONFIG_FUSION=y |
486 | CONFIG_FUSION_SPI=m | 520 | CONFIG_FUSION_SPI=m |
487 | # CONFIG_FUSION_FC is not set | 521 | # CONFIG_FUSION_FC is not set |
@@ -493,20 +527,40 @@ CONFIG_FUSION_CTL=m | |||
493 | # | 527 | # |
494 | # IEEE 1394 (FireWire) support | 528 | # IEEE 1394 (FireWire) support |
495 | # | 529 | # |
530 | |||
531 | # | ||
532 | # Enable only one of the two stacks, unless you know what you are doing | ||
533 | # | ||
496 | # CONFIG_FIREWIRE is not set | 534 | # CONFIG_FIREWIRE is not set |
497 | # CONFIG_IEEE1394 is not set | 535 | # CONFIG_IEEE1394 is not set |
498 | # CONFIG_I2O is not set | 536 | # CONFIG_I2O is not set |
499 | CONFIG_NETDEVICES=y | 537 | CONFIG_NETDEVICES=y |
500 | # CONFIG_NETDEVICES_MULTIQUEUE is not set | ||
501 | CONFIG_DUMMY=m | 538 | CONFIG_DUMMY=m |
502 | CONFIG_BONDING=m | 539 | CONFIG_BONDING=m |
503 | # CONFIG_MACVLAN is not set | 540 | # CONFIG_MACVLAN is not set |
504 | # CONFIG_EQUALIZER is not set | 541 | # CONFIG_EQUALIZER is not set |
505 | CONFIG_TUN=m | 542 | CONFIG_TUN=m |
506 | # CONFIG_VETH is not set | 543 | # CONFIG_VETH is not set |
507 | # CONFIG_IP1000 is not set | ||
508 | # CONFIG_ARCNET is not set | 544 | # CONFIG_ARCNET is not set |
509 | # CONFIG_PHYLIB is not set | 545 | CONFIG_PHYLIB=m |
546 | |||
547 | # | ||
548 | # MII PHY device drivers | ||
549 | # | ||
550 | # CONFIG_MARVELL_PHY is not set | ||
551 | # CONFIG_DAVICOM_PHY is not set | ||
552 | # CONFIG_QSEMI_PHY is not set | ||
553 | # CONFIG_LXT_PHY is not set | ||
554 | # CONFIG_CICADA_PHY is not set | ||
555 | # CONFIG_VITESSE_PHY is not set | ||
556 | # CONFIG_SMSC_PHY is not set | ||
557 | # CONFIG_BROADCOM_PHY is not set | ||
558 | # CONFIG_ICPLUS_PHY is not set | ||
559 | # CONFIG_REALTEK_PHY is not set | ||
560 | # CONFIG_NATIONAL_PHY is not set | ||
561 | # CONFIG_STE10XP is not set | ||
562 | # CONFIG_LSI_ET1011C_PHY is not set | ||
563 | # CONFIG_MDIO_BITBANG is not set | ||
510 | CONFIG_NET_ETHERNET=y | 564 | CONFIG_NET_ETHERNET=y |
511 | CONFIG_MII=m | 565 | CONFIG_MII=m |
512 | # CONFIG_HAPPYMEAL is not set | 566 | # CONFIG_HAPPYMEAL is not set |
@@ -528,33 +582,38 @@ CONFIG_TULIP_MMIO=y | |||
528 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | 582 | # CONFIG_IBM_NEW_EMAC_RGMII is not set |
529 | # CONFIG_IBM_NEW_EMAC_TAH is not set | 583 | # CONFIG_IBM_NEW_EMAC_TAH is not set |
530 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | 584 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set |
585 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
586 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
587 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
531 | CONFIG_NET_PCI=y | 588 | CONFIG_NET_PCI=y |
532 | # CONFIG_PCNET32 is not set | 589 | # CONFIG_PCNET32 is not set |
533 | # CONFIG_AMD8111_ETH is not set | 590 | # CONFIG_AMD8111_ETH is not set |
534 | # CONFIG_ADAPTEC_STARFIRE is not set | 591 | # CONFIG_ADAPTEC_STARFIRE is not set |
535 | # CONFIG_B44 is not set | 592 | # CONFIG_B44 is not set |
536 | # CONFIG_FORCEDETH is not set | 593 | # CONFIG_FORCEDETH is not set |
537 | # CONFIG_EEPRO100 is not set | ||
538 | CONFIG_E100=m | 594 | CONFIG_E100=m |
539 | # CONFIG_FEALNX is not set | 595 | # CONFIG_FEALNX is not set |
540 | # CONFIG_NATSEMI is not set | 596 | # CONFIG_NATSEMI is not set |
541 | # CONFIG_NE2K_PCI is not set | 597 | # CONFIG_NE2K_PCI is not set |
542 | # CONFIG_8139CP is not set | 598 | # CONFIG_8139CP is not set |
543 | # CONFIG_8139TOO is not set | 599 | # CONFIG_8139TOO is not set |
600 | # CONFIG_R6040 is not set | ||
544 | # CONFIG_SIS900 is not set | 601 | # CONFIG_SIS900 is not set |
545 | # CONFIG_EPIC100 is not set | 602 | # CONFIG_EPIC100 is not set |
603 | # CONFIG_SMSC9420 is not set | ||
546 | # CONFIG_SUNDANCE is not set | 604 | # CONFIG_SUNDANCE is not set |
547 | # CONFIG_TLAN is not set | 605 | # CONFIG_TLAN is not set |
548 | # CONFIG_VIA_RHINE is not set | 606 | # CONFIG_VIA_RHINE is not set |
549 | # CONFIG_SC92031 is not set | 607 | # CONFIG_SC92031 is not set |
608 | # CONFIG_ATL2 is not set | ||
550 | CONFIG_NETDEV_1000=y | 609 | CONFIG_NETDEV_1000=y |
551 | CONFIG_ACENIC=m | 610 | CONFIG_ACENIC=m |
552 | # CONFIG_ACENIC_OMIT_TIGON_I is not set | 611 | # CONFIG_ACENIC_OMIT_TIGON_I is not set |
553 | # CONFIG_DL2K is not set | 612 | # CONFIG_DL2K is not set |
554 | CONFIG_E1000=m | 613 | CONFIG_E1000=m |
555 | # CONFIG_E1000_NAPI is not set | ||
556 | # CONFIG_E1000_DISABLE_PACKET_SPLIT is not set | ||
557 | # CONFIG_E1000E is not set | 614 | # CONFIG_E1000E is not set |
615 | # CONFIG_IP1000 is not set | ||
616 | # CONFIG_IGB is not set | ||
558 | # CONFIG_NS83820 is not set | 617 | # CONFIG_NS83820 is not set |
559 | # CONFIG_HAMACHI is not set | 618 | # CONFIG_HAMACHI is not set |
560 | # CONFIG_YELLOWFIN is not set | 619 | # CONFIG_YELLOWFIN is not set |
@@ -562,23 +621,31 @@ CONFIG_E1000=m | |||
562 | # CONFIG_SIS190 is not set | 621 | # CONFIG_SIS190 is not set |
563 | # CONFIG_SKGE is not set | 622 | # CONFIG_SKGE is not set |
564 | # CONFIG_SKY2 is not set | 623 | # CONFIG_SKY2 is not set |
565 | # CONFIG_SK98LIN is not set | ||
566 | # CONFIG_VIA_VELOCITY is not set | 624 | # CONFIG_VIA_VELOCITY is not set |
567 | CONFIG_TIGON3=m | 625 | CONFIG_TIGON3=m |
568 | # CONFIG_BNX2 is not set | 626 | # CONFIG_BNX2 is not set |
569 | # CONFIG_QLA3XXX is not set | 627 | # CONFIG_QLA3XXX is not set |
570 | # CONFIG_ATL1 is not set | 628 | # CONFIG_ATL1 is not set |
629 | # CONFIG_ATL1E is not set | ||
630 | # CONFIG_ATL1C is not set | ||
631 | # CONFIG_JME is not set | ||
571 | CONFIG_NETDEV_10000=y | 632 | CONFIG_NETDEV_10000=y |
572 | # CONFIG_CHELSIO_T1 is not set | 633 | # CONFIG_CHELSIO_T1 is not set |
634 | CONFIG_CHELSIO_T3_DEPENDS=y | ||
573 | # CONFIG_CHELSIO_T3 is not set | 635 | # CONFIG_CHELSIO_T3 is not set |
636 | # CONFIG_ENIC is not set | ||
574 | # CONFIG_IXGBE is not set | 637 | # CONFIG_IXGBE is not set |
575 | # CONFIG_IXGB is not set | 638 | # CONFIG_IXGB is not set |
576 | # CONFIG_S2IO is not set | 639 | # CONFIG_S2IO is not set |
577 | # CONFIG_MYRI10GE is not set | 640 | # CONFIG_MYRI10GE is not set |
578 | # CONFIG_NETXEN_NIC is not set | 641 | # CONFIG_NETXEN_NIC is not set |
579 | # CONFIG_NIU is not set | 642 | # CONFIG_NIU is not set |
643 | # CONFIG_MLX4_EN is not set | ||
580 | # CONFIG_MLX4_CORE is not set | 644 | # CONFIG_MLX4_CORE is not set |
581 | # CONFIG_TEHUTI is not set | 645 | # CONFIG_TEHUTI is not set |
646 | # CONFIG_BNX2X is not set | ||
647 | # CONFIG_QLGE is not set | ||
648 | # CONFIG_SFC is not set | ||
582 | # CONFIG_TR is not set | 649 | # CONFIG_TR is not set |
583 | 650 | ||
584 | # | 651 | # |
@@ -586,6 +653,11 @@ CONFIG_NETDEV_10000=y | |||
586 | # | 653 | # |
587 | # CONFIG_WLAN_PRE80211 is not set | 654 | # CONFIG_WLAN_PRE80211 is not set |
588 | # CONFIG_WLAN_80211 is not set | 655 | # CONFIG_WLAN_80211 is not set |
656 | # CONFIG_IWLWIFI_LEDS is not set | ||
657 | |||
658 | # | ||
659 | # Enable WiMAX (Networking options) to see the WiMAX drivers | ||
660 | # | ||
589 | 661 | ||
590 | # | 662 | # |
591 | # USB Network Adapters | 663 | # USB Network Adapters |
@@ -594,7 +666,6 @@ CONFIG_NETDEV_10000=y | |||
594 | # CONFIG_USB_KAWETH is not set | 666 | # CONFIG_USB_KAWETH is not set |
595 | # CONFIG_USB_PEGASUS is not set | 667 | # CONFIG_USB_PEGASUS is not set |
596 | # CONFIG_USB_RTL8150 is not set | 668 | # CONFIG_USB_RTL8150 is not set |
597 | # CONFIG_USB_USBNET_MII is not set | ||
598 | # CONFIG_USB_USBNET is not set | 669 | # CONFIG_USB_USBNET is not set |
599 | # CONFIG_WAN is not set | 670 | # CONFIG_WAN is not set |
600 | # CONFIG_FDDI is not set | 671 | # CONFIG_FDDI is not set |
@@ -612,7 +683,6 @@ CONFIG_PPPOE=m | |||
612 | # CONFIG_SLIP is not set | 683 | # CONFIG_SLIP is not set |
613 | CONFIG_SLHC=m | 684 | CONFIG_SLHC=m |
614 | # CONFIG_NET_FC is not set | 685 | # CONFIG_NET_FC is not set |
615 | # CONFIG_SHAPER is not set | ||
616 | # CONFIG_NETCONSOLE is not set | 686 | # CONFIG_NETCONSOLE is not set |
617 | # CONFIG_NETPOLL is not set | 687 | # CONFIG_NETPOLL is not set |
618 | # CONFIG_NET_POLL_CONTROLLER is not set | 688 | # CONFIG_NET_POLL_CONTROLLER is not set |
@@ -634,7 +704,6 @@ CONFIG_INPUT_MOUSEDEV=y | |||
634 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1600 | 704 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1600 |
635 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=1200 | 705 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=1200 |
636 | # CONFIG_INPUT_JOYDEV is not set | 706 | # CONFIG_INPUT_JOYDEV is not set |
637 | # CONFIG_INPUT_TSDEV is not set | ||
638 | # CONFIG_INPUT_EVDEV is not set | 707 | # CONFIG_INPUT_EVDEV is not set |
639 | # CONFIG_INPUT_EVBUG is not set | 708 | # CONFIG_INPUT_EVBUG is not set |
640 | 709 | ||
@@ -652,6 +721,7 @@ CONFIG_INPUT_MOUSE=y | |||
652 | # CONFIG_MOUSE_PS2 is not set | 721 | # CONFIG_MOUSE_PS2 is not set |
653 | # CONFIG_MOUSE_SERIAL is not set | 722 | # CONFIG_MOUSE_SERIAL is not set |
654 | # CONFIG_MOUSE_APPLETOUCH is not set | 723 | # CONFIG_MOUSE_APPLETOUCH is not set |
724 | # CONFIG_MOUSE_BCM5974 is not set | ||
655 | # CONFIG_MOUSE_VSXXXAA is not set | 725 | # CONFIG_MOUSE_VSXXXAA is not set |
656 | # CONFIG_INPUT_JOYSTICK is not set | 726 | # CONFIG_INPUT_JOYSTICK is not set |
657 | # CONFIG_INPUT_TABLET is not set | 727 | # CONFIG_INPUT_TABLET is not set |
@@ -672,10 +742,13 @@ CONFIG_SERIO_LIBPS2=m | |||
672 | # Character devices | 742 | # Character devices |
673 | # | 743 | # |
674 | CONFIG_VT=y | 744 | CONFIG_VT=y |
745 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
675 | CONFIG_VT_CONSOLE=y | 746 | CONFIG_VT_CONSOLE=y |
676 | CONFIG_HW_CONSOLE=y | 747 | CONFIG_HW_CONSOLE=y |
677 | # CONFIG_VT_HW_CONSOLE_BINDING is not set | 748 | # CONFIG_VT_HW_CONSOLE_BINDING is not set |
749 | CONFIG_DEVKMEM=y | ||
678 | # CONFIG_SERIAL_NONSTANDARD is not set | 750 | # CONFIG_SERIAL_NONSTANDARD is not set |
751 | # CONFIG_NOZOMI is not set | ||
679 | 752 | ||
680 | # | 753 | # |
681 | # Serial drivers | 754 | # Serial drivers |
@@ -699,72 +772,77 @@ CONFIG_SERIAL_CORE=y | |||
699 | CONFIG_SERIAL_CORE_CONSOLE=y | 772 | CONFIG_SERIAL_CORE_CONSOLE=y |
700 | # CONFIG_SERIAL_JSM is not set | 773 | # CONFIG_SERIAL_JSM is not set |
701 | CONFIG_UNIX98_PTYS=y | 774 | CONFIG_UNIX98_PTYS=y |
775 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | ||
702 | CONFIG_LEGACY_PTYS=y | 776 | CONFIG_LEGACY_PTYS=y |
703 | CONFIG_LEGACY_PTY_COUNT=256 | 777 | CONFIG_LEGACY_PTY_COUNT=256 |
704 | # CONFIG_IPMI_HANDLER is not set | 778 | # CONFIG_IPMI_HANDLER is not set |
705 | # CONFIG_WATCHDOG is not set | ||
706 | # CONFIG_HW_RANDOM is not set | 779 | # CONFIG_HW_RANDOM is not set |
707 | CONFIG_GEN_RTC=y | ||
708 | CONFIG_GEN_RTC_X=y | ||
709 | # CONFIG_R3964 is not set | 780 | # CONFIG_R3964 is not set |
710 | # CONFIG_APPLICOM is not set | 781 | # CONFIG_APPLICOM is not set |
711 | # CONFIG_AGP is not set | ||
712 | # CONFIG_DRM is not set | ||
713 | CONFIG_RAW_DRIVER=y | 782 | CONFIG_RAW_DRIVER=y |
714 | CONFIG_MAX_RAW_DEVS=256 | 783 | CONFIG_MAX_RAW_DEVS=256 |
715 | # CONFIG_TCG_TPM is not set | 784 | # CONFIG_TCG_TPM is not set |
716 | CONFIG_DEVPORT=y | 785 | CONFIG_DEVPORT=y |
717 | # CONFIG_I2C is not set | 786 | # CONFIG_I2C is not set |
718 | |||
719 | # | ||
720 | # SPI support | ||
721 | # | ||
722 | # CONFIG_SPI is not set | 787 | # CONFIG_SPI is not set |
723 | # CONFIG_SPI_MASTER is not set | ||
724 | # CONFIG_W1 is not set | 788 | # CONFIG_W1 is not set |
725 | # CONFIG_POWER_SUPPLY is not set | 789 | # CONFIG_POWER_SUPPLY is not set |
726 | # CONFIG_HWMON is not set | 790 | # CONFIG_HWMON is not set |
791 | # CONFIG_THERMAL is not set | ||
792 | # CONFIG_THERMAL_HWMON is not set | ||
793 | # CONFIG_WATCHDOG is not set | ||
794 | CONFIG_SSB_POSSIBLE=y | ||
727 | 795 | ||
728 | # | 796 | # |
729 | # Sonics Silicon Backplane | 797 | # Sonics Silicon Backplane |
730 | # | 798 | # |
731 | CONFIG_SSB_POSSIBLE=y | ||
732 | # CONFIG_SSB is not set | 799 | # CONFIG_SSB is not set |
733 | 800 | ||
734 | # | 801 | # |
735 | # Multifunction device drivers | 802 | # Multifunction device drivers |
736 | # | 803 | # |
804 | # CONFIG_MFD_CORE is not set | ||
737 | # CONFIG_MFD_SM501 is not set | 805 | # CONFIG_MFD_SM501 is not set |
806 | # CONFIG_HTC_PASIC3 is not set | ||
807 | # CONFIG_MFD_TMIO is not set | ||
808 | # CONFIG_REGULATOR is not set | ||
738 | 809 | ||
739 | # | 810 | # |
740 | # Multimedia devices | 811 | # Multimedia devices |
741 | # | 812 | # |
813 | |||
814 | # | ||
815 | # Multimedia core support | ||
816 | # | ||
742 | # CONFIG_VIDEO_DEV is not set | 817 | # CONFIG_VIDEO_DEV is not set |
743 | # CONFIG_DVB_CORE is not set | 818 | # CONFIG_DVB_CORE is not set |
744 | # CONFIG_DAB is not set | 819 | # CONFIG_VIDEO_MEDIA is not set |
745 | 820 | ||
746 | # | 821 | # |
747 | # Graphics support | 822 | # Multimedia drivers |
748 | # | 823 | # |
749 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | 824 | # CONFIG_DAB is not set |
750 | 825 | ||
751 | # | 826 | # |
752 | # Display device support | 827 | # Graphics support |
753 | # | 828 | # |
754 | # CONFIG_DISPLAY_SUPPORT is not set | 829 | # CONFIG_AGP is not set |
830 | # CONFIG_DRM is not set | ||
755 | # CONFIG_VGASTATE is not set | 831 | # CONFIG_VGASTATE is not set |
756 | CONFIG_VIDEO_OUTPUT_CONTROL=m | 832 | CONFIG_VIDEO_OUTPUT_CONTROL=m |
757 | CONFIG_FB=y | 833 | CONFIG_FB=y |
758 | # CONFIG_FIRMWARE_EDID is not set | 834 | # CONFIG_FIRMWARE_EDID is not set |
759 | # CONFIG_FB_DDC is not set | 835 | # CONFIG_FB_DDC is not set |
836 | # CONFIG_FB_BOOT_VESA_SUPPORT is not set | ||
760 | CONFIG_FB_CFB_FILLRECT=y | 837 | CONFIG_FB_CFB_FILLRECT=y |
761 | CONFIG_FB_CFB_COPYAREA=y | 838 | CONFIG_FB_CFB_COPYAREA=y |
762 | CONFIG_FB_CFB_IMAGEBLIT=y | 839 | CONFIG_FB_CFB_IMAGEBLIT=y |
840 | # CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set | ||
763 | # CONFIG_FB_SYS_FILLRECT is not set | 841 | # CONFIG_FB_SYS_FILLRECT is not set |
764 | # CONFIG_FB_SYS_COPYAREA is not set | 842 | # CONFIG_FB_SYS_COPYAREA is not set |
765 | # CONFIG_FB_SYS_IMAGEBLIT is not set | 843 | # CONFIG_FB_SYS_IMAGEBLIT is not set |
844 | # CONFIG_FB_FOREIGN_ENDIAN is not set | ||
766 | # CONFIG_FB_SYS_FOPS is not set | 845 | # CONFIG_FB_SYS_FOPS is not set |
767 | CONFIG_FB_DEFERRED_IO=y | ||
768 | # CONFIG_FB_SVGALIB is not set | 846 | # CONFIG_FB_SVGALIB is not set |
769 | # CONFIG_FB_MACMODES is not set | 847 | # CONFIG_FB_MACMODES is not set |
770 | # CONFIG_FB_BACKLIGHT is not set | 848 | # CONFIG_FB_BACKLIGHT is not set |
@@ -790,6 +868,7 @@ CONFIG_FB_STI=y | |||
790 | # CONFIG_FB_S3 is not set | 868 | # CONFIG_FB_S3 is not set |
791 | # CONFIG_FB_SAVAGE is not set | 869 | # CONFIG_FB_SAVAGE is not set |
792 | # CONFIG_FB_SIS is not set | 870 | # CONFIG_FB_SIS is not set |
871 | # CONFIG_FB_VIA is not set | ||
793 | # CONFIG_FB_NEOMAGIC is not set | 872 | # CONFIG_FB_NEOMAGIC is not set |
794 | # CONFIG_FB_KYRO is not set | 873 | # CONFIG_FB_KYRO is not set |
795 | # CONFIG_FB_3DFX is not set | 874 | # CONFIG_FB_3DFX is not set |
@@ -798,7 +877,16 @@ CONFIG_FB_STI=y | |||
798 | # CONFIG_FB_TRIDENT is not set | 877 | # CONFIG_FB_TRIDENT is not set |
799 | # CONFIG_FB_ARK is not set | 878 | # CONFIG_FB_ARK is not set |
800 | # CONFIG_FB_PM3 is not set | 879 | # CONFIG_FB_PM3 is not set |
880 | # CONFIG_FB_CARMINE is not set | ||
801 | # CONFIG_FB_VIRTUAL is not set | 881 | # CONFIG_FB_VIRTUAL is not set |
882 | # CONFIG_FB_METRONOME is not set | ||
883 | # CONFIG_FB_MB862XX is not set | ||
884 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
885 | |||
886 | # | ||
887 | # Display device support | ||
888 | # | ||
889 | # CONFIG_DISPLAY_SUPPORT is not set | ||
802 | 890 | ||
803 | # | 891 | # |
804 | # Console display driver support | 892 | # Console display driver support |
@@ -818,15 +906,8 @@ CONFIG_LOGO=y | |||
818 | # CONFIG_LOGO_LINUX_VGA16 is not set | 906 | # CONFIG_LOGO_LINUX_VGA16 is not set |
819 | # CONFIG_LOGO_LINUX_CLUT224 is not set | 907 | # CONFIG_LOGO_LINUX_CLUT224 is not set |
820 | CONFIG_LOGO_PARISC_CLUT224=y | 908 | CONFIG_LOGO_PARISC_CLUT224=y |
821 | |||
822 | # | ||
823 | # Sound | ||
824 | # | ||
825 | CONFIG_SOUND=y | 909 | CONFIG_SOUND=y |
826 | 910 | CONFIG_SOUND_OSS_CORE=y | |
827 | # | ||
828 | # Advanced Linux Sound Architecture | ||
829 | # | ||
830 | CONFIG_SND=y | 911 | CONFIG_SND=y |
831 | CONFIG_SND_TIMER=y | 912 | CONFIG_SND_TIMER=y |
832 | CONFIG_SND_PCM=y | 913 | CONFIG_SND_PCM=y |
@@ -842,20 +923,16 @@ CONFIG_SND_SUPPORT_OLD_API=y | |||
842 | CONFIG_SND_VERBOSE_PROCFS=y | 923 | CONFIG_SND_VERBOSE_PROCFS=y |
843 | # CONFIG_SND_VERBOSE_PRINTK is not set | 924 | # CONFIG_SND_VERBOSE_PRINTK is not set |
844 | # CONFIG_SND_DEBUG is not set | 925 | # CONFIG_SND_DEBUG is not set |
845 | 926 | CONFIG_SND_VMASTER=y | |
846 | # | ||
847 | # Generic devices | ||
848 | # | ||
849 | CONFIG_SND_AC97_CODEC=y | 927 | CONFIG_SND_AC97_CODEC=y |
928 | CONFIG_SND_DRIVERS=y | ||
850 | # CONFIG_SND_DUMMY is not set | 929 | # CONFIG_SND_DUMMY is not set |
851 | # CONFIG_SND_VIRMIDI is not set | 930 | # CONFIG_SND_VIRMIDI is not set |
852 | # CONFIG_SND_MTPAV is not set | 931 | # CONFIG_SND_MTPAV is not set |
853 | # CONFIG_SND_SERIAL_U16550 is not set | 932 | # CONFIG_SND_SERIAL_U16550 is not set |
854 | # CONFIG_SND_MPU401 is not set | 933 | # CONFIG_SND_MPU401 is not set |
855 | 934 | # CONFIG_SND_AC97_POWER_SAVE is not set | |
856 | # | 935 | CONFIG_SND_PCI=y |
857 | # PCI devices | ||
858 | # | ||
859 | CONFIG_SND_AD1889=y | 936 | CONFIG_SND_AD1889=y |
860 | # CONFIG_SND_ALS300 is not set | 937 | # CONFIG_SND_ALS300 is not set |
861 | # CONFIG_SND_ALI5451 is not set | 938 | # CONFIG_SND_ALI5451 is not set |
@@ -864,10 +941,12 @@ CONFIG_SND_AD1889=y | |||
864 | # CONFIG_SND_AU8810 is not set | 941 | # CONFIG_SND_AU8810 is not set |
865 | # CONFIG_SND_AU8820 is not set | 942 | # CONFIG_SND_AU8820 is not set |
866 | # CONFIG_SND_AU8830 is not set | 943 | # CONFIG_SND_AU8830 is not set |
944 | # CONFIG_SND_AW2 is not set | ||
867 | # CONFIG_SND_AZT3328 is not set | 945 | # CONFIG_SND_AZT3328 is not set |
868 | # CONFIG_SND_BT87X is not set | 946 | # CONFIG_SND_BT87X is not set |
869 | # CONFIG_SND_CA0106 is not set | 947 | # CONFIG_SND_CA0106 is not set |
870 | # CONFIG_SND_CMIPCI is not set | 948 | # CONFIG_SND_CMIPCI is not set |
949 | # CONFIG_SND_OXYGEN is not set | ||
871 | # CONFIG_SND_CS4281 is not set | 950 | # CONFIG_SND_CS4281 is not set |
872 | # CONFIG_SND_CS46XX is not set | 951 | # CONFIG_SND_CS46XX is not set |
873 | # CONFIG_SND_DARLA20 is not set | 952 | # CONFIG_SND_DARLA20 is not set |
@@ -892,6 +971,7 @@ CONFIG_SND_AD1889=y | |||
892 | # CONFIG_SND_HDA_INTEL is not set | 971 | # CONFIG_SND_HDA_INTEL is not set |
893 | # CONFIG_SND_HDSP is not set | 972 | # CONFIG_SND_HDSP is not set |
894 | # CONFIG_SND_HDSPM is not set | 973 | # CONFIG_SND_HDSPM is not set |
974 | # CONFIG_SND_HIFIER is not set | ||
895 | # CONFIG_SND_ICE1712 is not set | 975 | # CONFIG_SND_ICE1712 is not set |
896 | # CONFIG_SND_ICE1724 is not set | 976 | # CONFIG_SND_ICE1724 is not set |
897 | # CONFIG_SND_INTEL8X0 is not set | 977 | # CONFIG_SND_INTEL8X0 is not set |
@@ -909,47 +989,59 @@ CONFIG_SND_AD1889=y | |||
909 | # CONFIG_SND_TRIDENT is not set | 989 | # CONFIG_SND_TRIDENT is not set |
910 | # CONFIG_SND_VIA82XX is not set | 990 | # CONFIG_SND_VIA82XX is not set |
911 | # CONFIG_SND_VIA82XX_MODEM is not set | 991 | # CONFIG_SND_VIA82XX_MODEM is not set |
992 | # CONFIG_SND_VIRTUOSO is not set | ||
912 | # CONFIG_SND_VX222 is not set | 993 | # CONFIG_SND_VX222 is not set |
913 | # CONFIG_SND_YMFPCI is not set | 994 | # CONFIG_SND_YMFPCI is not set |
914 | # CONFIG_SND_AC97_POWER_SAVE is not set | 995 | CONFIG_SND_USB=y |
915 | |||
916 | # | ||
917 | # USB devices | ||
918 | # | ||
919 | # CONFIG_SND_USB_AUDIO is not set | 996 | # CONFIG_SND_USB_AUDIO is not set |
920 | # CONFIG_SND_USB_CAIAQ is not set | 997 | # CONFIG_SND_USB_CAIAQ is not set |
921 | |||
922 | # | ||
923 | # System on Chip audio support | ||
924 | # | ||
925 | # CONFIG_SND_SOC is not set | 998 | # CONFIG_SND_SOC is not set |
926 | |||
927 | # | ||
928 | # SoC Audio support for SuperH | ||
929 | # | ||
930 | |||
931 | # | ||
932 | # Open Sound System | ||
933 | # | ||
934 | # CONFIG_SOUND_PRIME is not set | 999 | # CONFIG_SOUND_PRIME is not set |
935 | CONFIG_AC97_BUS=y | 1000 | CONFIG_AC97_BUS=y |
936 | CONFIG_HID_SUPPORT=y | 1001 | CONFIG_HID_SUPPORT=y |
937 | CONFIG_HID=y | 1002 | CONFIG_HID=y |
938 | # CONFIG_HID_DEBUG is not set | 1003 | # CONFIG_HID_DEBUG is not set |
1004 | # CONFIG_HIDRAW is not set | ||
939 | 1005 | ||
940 | # | 1006 | # |
941 | # USB Input Devices | 1007 | # USB Input Devices |
942 | # | 1008 | # |
943 | CONFIG_USB_HID=y | 1009 | CONFIG_USB_HID=y |
944 | # CONFIG_USB_HIDINPUT_POWERBOOK is not set | 1010 | # CONFIG_HID_PID is not set |
945 | # CONFIG_HID_FF is not set | ||
946 | CONFIG_USB_HIDDEV=y | 1011 | CONFIG_USB_HIDDEV=y |
1012 | |||
1013 | # | ||
1014 | # Special HID drivers | ||
1015 | # | ||
1016 | CONFIG_HID_COMPAT=y | ||
1017 | # CONFIG_HID_A4TECH is not set | ||
1018 | # CONFIG_HID_APPLE is not set | ||
1019 | # CONFIG_HID_BELKIN is not set | ||
1020 | # CONFIG_HID_CHERRY is not set | ||
1021 | # CONFIG_HID_CHICONY is not set | ||
1022 | # CONFIG_HID_CYPRESS is not set | ||
1023 | # CONFIG_HID_EZKEY is not set | ||
1024 | # CONFIG_HID_GYRATION is not set | ||
1025 | # CONFIG_HID_LOGITECH is not set | ||
1026 | # CONFIG_HID_MICROSOFT is not set | ||
1027 | # CONFIG_HID_MONTEREY is not set | ||
1028 | # CONFIG_HID_NTRIG is not set | ||
1029 | # CONFIG_HID_PANTHERLORD is not set | ||
1030 | # CONFIG_HID_PETALYNX is not set | ||
1031 | # CONFIG_HID_SAMSUNG is not set | ||
1032 | # CONFIG_HID_SONY is not set | ||
1033 | # CONFIG_HID_SUNPLUS is not set | ||
1034 | # CONFIG_GREENASIA_FF is not set | ||
1035 | # CONFIG_HID_TOPSEED is not set | ||
1036 | # CONFIG_THRUSTMASTER_FF is not set | ||
1037 | # CONFIG_ZEROPLUS_FF is not set | ||
947 | CONFIG_USB_SUPPORT=y | 1038 | CONFIG_USB_SUPPORT=y |
948 | CONFIG_USB_ARCH_HAS_HCD=y | 1039 | CONFIG_USB_ARCH_HAS_HCD=y |
949 | CONFIG_USB_ARCH_HAS_OHCI=y | 1040 | CONFIG_USB_ARCH_HAS_OHCI=y |
950 | CONFIG_USB_ARCH_HAS_EHCI=y | 1041 | CONFIG_USB_ARCH_HAS_EHCI=y |
951 | CONFIG_USB=y | 1042 | CONFIG_USB=y |
952 | CONFIG_USB_DEBUG=y | 1043 | CONFIG_USB_DEBUG=y |
1044 | # CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set | ||
953 | 1045 | ||
954 | # | 1046 | # |
955 | # Miscellaneous USB options | 1047 | # Miscellaneous USB options |
@@ -958,12 +1050,20 @@ CONFIG_USB_DEVICEFS=y | |||
958 | CONFIG_USB_DEVICE_CLASS=y | 1050 | CONFIG_USB_DEVICE_CLASS=y |
959 | # CONFIG_USB_DYNAMIC_MINORS is not set | 1051 | # CONFIG_USB_DYNAMIC_MINORS is not set |
960 | # CONFIG_USB_OTG is not set | 1052 | # CONFIG_USB_OTG is not set |
1053 | # CONFIG_USB_OTG_WHITELIST is not set | ||
1054 | # CONFIG_USB_OTG_BLACKLIST_HUB is not set | ||
1055 | # CONFIG_USB_MON is not set | ||
1056 | # CONFIG_USB_WUSB is not set | ||
1057 | # CONFIG_USB_WUSB_CBAF is not set | ||
961 | 1058 | ||
962 | # | 1059 | # |
963 | # USB Host Controller Drivers | 1060 | # USB Host Controller Drivers |
964 | # | 1061 | # |
1062 | # CONFIG_USB_C67X00_HCD is not set | ||
965 | # CONFIG_USB_EHCI_HCD is not set | 1063 | # CONFIG_USB_EHCI_HCD is not set |
1064 | # CONFIG_USB_OXU210HP_HCD is not set | ||
966 | # CONFIG_USB_ISP116X_HCD is not set | 1065 | # CONFIG_USB_ISP116X_HCD is not set |
1066 | # CONFIG_USB_ISP1760_HCD is not set | ||
967 | CONFIG_USB_OHCI_HCD=y | 1067 | CONFIG_USB_OHCI_HCD=y |
968 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set | 1068 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set |
969 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set | 1069 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set |
@@ -971,32 +1071,37 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y | |||
971 | # CONFIG_USB_UHCI_HCD is not set | 1071 | # CONFIG_USB_UHCI_HCD is not set |
972 | # CONFIG_USB_SL811_HCD is not set | 1072 | # CONFIG_USB_SL811_HCD is not set |
973 | # CONFIG_USB_R8A66597_HCD is not set | 1073 | # CONFIG_USB_R8A66597_HCD is not set |
1074 | # CONFIG_USB_WHCI_HCD is not set | ||
1075 | # CONFIG_USB_HWA_HCD is not set | ||
974 | 1076 | ||
975 | # | 1077 | # |
976 | # USB Device Class drivers | 1078 | # USB Device Class drivers |
977 | # | 1079 | # |
978 | # CONFIG_USB_ACM is not set | 1080 | # CONFIG_USB_ACM is not set |
979 | CONFIG_USB_PRINTER=m | 1081 | CONFIG_USB_PRINTER=m |
1082 | # CONFIG_USB_WDM is not set | ||
1083 | # CONFIG_USB_TMC is not set | ||
980 | 1084 | ||
981 | # | 1085 | # |
982 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 1086 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed; |
983 | # | 1087 | # |
984 | 1088 | ||
985 | # | 1089 | # |
986 | # may also be needed; see USB_STORAGE Help for more information | 1090 | # see USB_STORAGE Help for more information |
987 | # | 1091 | # |
988 | CONFIG_USB_STORAGE=m | 1092 | CONFIG_USB_STORAGE=m |
989 | # CONFIG_USB_STORAGE_DEBUG is not set | 1093 | # CONFIG_USB_STORAGE_DEBUG is not set |
990 | # CONFIG_USB_STORAGE_DATAFAB is not set | 1094 | # CONFIG_USB_STORAGE_DATAFAB is not set |
991 | # CONFIG_USB_STORAGE_FREECOM is not set | 1095 | # CONFIG_USB_STORAGE_FREECOM is not set |
992 | # CONFIG_USB_STORAGE_ISD200 is not set | 1096 | # CONFIG_USB_STORAGE_ISD200 is not set |
993 | CONFIG_USB_STORAGE_DPCM=y | ||
994 | CONFIG_USB_STORAGE_USBAT=y | 1097 | CONFIG_USB_STORAGE_USBAT=y |
995 | CONFIG_USB_STORAGE_SDDR09=y | 1098 | CONFIG_USB_STORAGE_SDDR09=y |
996 | CONFIG_USB_STORAGE_SDDR55=y | 1099 | CONFIG_USB_STORAGE_SDDR55=y |
997 | CONFIG_USB_STORAGE_JUMPSHOT=y | 1100 | CONFIG_USB_STORAGE_JUMPSHOT=y |
998 | # CONFIG_USB_STORAGE_ALAUDA is not set | 1101 | # CONFIG_USB_STORAGE_ALAUDA is not set |
1102 | # CONFIG_USB_STORAGE_ONETOUCH is not set | ||
999 | # CONFIG_USB_STORAGE_KARMA is not set | 1103 | # CONFIG_USB_STORAGE_KARMA is not set |
1104 | # CONFIG_USB_STORAGE_CYPRESS_ATACB is not set | ||
1000 | # CONFIG_USB_LIBUSUAL is not set | 1105 | # CONFIG_USB_LIBUSUAL is not set |
1001 | 1106 | ||
1002 | # | 1107 | # |
@@ -1004,15 +1109,10 @@ CONFIG_USB_STORAGE_JUMPSHOT=y | |||
1004 | # | 1109 | # |
1005 | CONFIG_USB_MDC800=m | 1110 | CONFIG_USB_MDC800=m |
1006 | CONFIG_USB_MICROTEK=m | 1111 | CONFIG_USB_MICROTEK=m |
1007 | # CONFIG_USB_MON is not set | ||
1008 | 1112 | ||
1009 | # | 1113 | # |
1010 | # USB port drivers | 1114 | # USB port drivers |
1011 | # | 1115 | # |
1012 | |||
1013 | # | ||
1014 | # USB Serial Converter support | ||
1015 | # | ||
1016 | # CONFIG_USB_SERIAL is not set | 1116 | # CONFIG_USB_SERIAL is not set |
1017 | 1117 | ||
1018 | # | 1118 | # |
@@ -1021,7 +1121,7 @@ CONFIG_USB_MICROTEK=m | |||
1021 | # CONFIG_USB_EMI62 is not set | 1121 | # CONFIG_USB_EMI62 is not set |
1022 | # CONFIG_USB_EMI26 is not set | 1122 | # CONFIG_USB_EMI26 is not set |
1023 | # CONFIG_USB_ADUTUX is not set | 1123 | # CONFIG_USB_ADUTUX is not set |
1024 | # CONFIG_USB_AUERSWALD is not set | 1124 | # CONFIG_USB_SEVSEG is not set |
1025 | # CONFIG_USB_RIO500 is not set | 1125 | # CONFIG_USB_RIO500 is not set |
1026 | CONFIG_USB_LEGOTOWER=m | 1126 | CONFIG_USB_LEGOTOWER=m |
1027 | # CONFIG_USB_LCD is not set | 1127 | # CONFIG_USB_LCD is not set |
@@ -1037,37 +1137,59 @@ CONFIG_USB_LEGOTOWER=m | |||
1037 | # CONFIG_USB_TRANCEVIBRATOR is not set | 1137 | # CONFIG_USB_TRANCEVIBRATOR is not set |
1038 | # CONFIG_USB_IOWARRIOR is not set | 1138 | # CONFIG_USB_IOWARRIOR is not set |
1039 | # CONFIG_USB_TEST is not set | 1139 | # CONFIG_USB_TEST is not set |
1140 | # CONFIG_USB_ISIGHTFW is not set | ||
1141 | # CONFIG_USB_VST is not set | ||
1142 | # CONFIG_USB_GADGET is not set | ||
1040 | 1143 | ||
1041 | # | 1144 | # |
1042 | # USB DSL modem support | 1145 | # OTG and related infrastructure |
1043 | # | ||
1044 | |||
1045 | # | ||
1046 | # USB Gadget Support | ||
1047 | # | 1146 | # |
1048 | # CONFIG_USB_GADGET is not set | 1147 | # CONFIG_UWB is not set |
1049 | # CONFIG_MMC is not set | 1148 | # CONFIG_MMC is not set |
1149 | # CONFIG_MEMSTICK is not set | ||
1050 | # CONFIG_NEW_LEDS is not set | 1150 | # CONFIG_NEW_LEDS is not set |
1151 | # CONFIG_ACCESSIBILITY is not set | ||
1051 | # CONFIG_INFINIBAND is not set | 1152 | # CONFIG_INFINIBAND is not set |
1052 | # CONFIG_RTC_CLASS is not set | 1153 | CONFIG_RTC_LIB=y |
1154 | CONFIG_RTC_CLASS=y | ||
1155 | CONFIG_RTC_HCTOSYS=y | ||
1156 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
1157 | # CONFIG_RTC_DEBUG is not set | ||
1053 | 1158 | ||
1054 | # | 1159 | # |
1055 | # DMA Engine support | 1160 | # RTC interfaces |
1056 | # | 1161 | # |
1057 | # CONFIG_DMA_ENGINE is not set | 1162 | CONFIG_RTC_INTF_SYSFS=y |
1163 | CONFIG_RTC_INTF_PROC=y | ||
1164 | CONFIG_RTC_INTF_DEV=y | ||
1165 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
1166 | # CONFIG_RTC_DRV_TEST is not set | ||
1058 | 1167 | ||
1059 | # | 1168 | # |
1060 | # DMA Clients | 1169 | # SPI RTC drivers |
1061 | # | 1170 | # |
1062 | 1171 | ||
1063 | # | 1172 | # |
1064 | # DMA Devices | 1173 | # Platform RTC drivers |
1065 | # | 1174 | # |
1175 | # CONFIG_RTC_DRV_DS1286 is not set | ||
1176 | # CONFIG_RTC_DRV_DS1511 is not set | ||
1177 | # CONFIG_RTC_DRV_DS1553 is not set | ||
1178 | # CONFIG_RTC_DRV_DS1742 is not set | ||
1179 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
1180 | # CONFIG_RTC_DRV_M48T86 is not set | ||
1181 | # CONFIG_RTC_DRV_M48T35 is not set | ||
1182 | # CONFIG_RTC_DRV_M48T59 is not set | ||
1183 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
1184 | # CONFIG_RTC_DRV_V3020 is not set | ||
1066 | 1185 | ||
1067 | # | 1186 | # |
1068 | # Userspace I/O | 1187 | # on-CPU RTC drivers |
1069 | # | 1188 | # |
1189 | CONFIG_RTC_DRV_PARISC=y | ||
1190 | # CONFIG_DMADEVICES is not set | ||
1070 | # CONFIG_UIO is not set | 1191 | # CONFIG_UIO is not set |
1192 | # CONFIG_STAGING is not set | ||
1071 | 1193 | ||
1072 | # | 1194 | # |
1073 | # File systems | 1195 | # File systems |
@@ -1077,25 +1199,24 @@ CONFIG_EXT2_FS=y | |||
1077 | # CONFIG_EXT2_FS_XIP is not set | 1199 | # CONFIG_EXT2_FS_XIP is not set |
1078 | CONFIG_EXT3_FS=y | 1200 | CONFIG_EXT3_FS=y |
1079 | # CONFIG_EXT3_FS_XATTR is not set | 1201 | # CONFIG_EXT3_FS_XATTR is not set |
1080 | # CONFIG_EXT4DEV_FS is not set | 1202 | # CONFIG_EXT4_FS is not set |
1081 | CONFIG_JBD=y | 1203 | CONFIG_JBD=y |
1082 | # CONFIG_JBD_DEBUG is not set | 1204 | # CONFIG_JBD_DEBUG is not set |
1083 | # CONFIG_REISERFS_FS is not set | 1205 | # CONFIG_REISERFS_FS is not set |
1084 | # CONFIG_JFS_FS is not set | 1206 | # CONFIG_JFS_FS is not set |
1085 | # CONFIG_FS_POSIX_ACL is not set | 1207 | # CONFIG_FS_POSIX_ACL is not set |
1208 | CONFIG_FILE_LOCKING=y | ||
1086 | CONFIG_XFS_FS=m | 1209 | CONFIG_XFS_FS=m |
1087 | # CONFIG_XFS_QUOTA is not set | 1210 | # CONFIG_XFS_QUOTA is not set |
1088 | # CONFIG_XFS_SECURITY is not set | ||
1089 | # CONFIG_XFS_POSIX_ACL is not set | 1211 | # CONFIG_XFS_POSIX_ACL is not set |
1090 | # CONFIG_XFS_RT is not set | 1212 | # CONFIG_XFS_RT is not set |
1091 | # CONFIG_GFS2_FS is not set | 1213 | # CONFIG_XFS_DEBUG is not set |
1092 | # CONFIG_OCFS2_FS is not set | 1214 | # CONFIG_OCFS2_FS is not set |
1093 | # CONFIG_MINIX_FS is not set | 1215 | # CONFIG_BTRFS_FS is not set |
1094 | # CONFIG_ROMFS_FS is not set | 1216 | CONFIG_DNOTIFY=y |
1095 | CONFIG_INOTIFY=y | 1217 | CONFIG_INOTIFY=y |
1096 | CONFIG_INOTIFY_USER=y | 1218 | CONFIG_INOTIFY_USER=y |
1097 | # CONFIG_QUOTA is not set | 1219 | # CONFIG_QUOTA is not set |
1098 | CONFIG_DNOTIFY=y | ||
1099 | # CONFIG_AUTOFS_FS is not set | 1220 | # CONFIG_AUTOFS_FS is not set |
1100 | CONFIG_AUTOFS4_FS=y | 1221 | CONFIG_AUTOFS4_FS=y |
1101 | # CONFIG_FUSE_FS is not set | 1222 | # CONFIG_FUSE_FS is not set |
@@ -1124,16 +1245,13 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | |||
1124 | CONFIG_PROC_FS=y | 1245 | CONFIG_PROC_FS=y |
1125 | CONFIG_PROC_KCORE=y | 1246 | CONFIG_PROC_KCORE=y |
1126 | CONFIG_PROC_SYSCTL=y | 1247 | CONFIG_PROC_SYSCTL=y |
1248 | CONFIG_PROC_PAGE_MONITOR=y | ||
1127 | CONFIG_SYSFS=y | 1249 | CONFIG_SYSFS=y |
1128 | CONFIG_TMPFS=y | 1250 | CONFIG_TMPFS=y |
1129 | # CONFIG_TMPFS_POSIX_ACL is not set | 1251 | # CONFIG_TMPFS_POSIX_ACL is not set |
1130 | # CONFIG_HUGETLB_PAGE is not set | 1252 | # CONFIG_HUGETLB_PAGE is not set |
1131 | CONFIG_RAMFS=y | ||
1132 | # CONFIG_CONFIGFS_FS is not set | 1253 | # CONFIG_CONFIGFS_FS is not set |
1133 | 1254 | CONFIG_MISC_FILESYSTEMS=y | |
1134 | # | ||
1135 | # Miscellaneous filesystems | ||
1136 | # | ||
1137 | # CONFIG_ADFS_FS is not set | 1255 | # CONFIG_ADFS_FS is not set |
1138 | # CONFIG_AFFS_FS is not set | 1256 | # CONFIG_AFFS_FS is not set |
1139 | # CONFIG_HFS_FS is not set | 1257 | # CONFIG_HFS_FS is not set |
@@ -1142,32 +1260,31 @@ CONFIG_RAMFS=y | |||
1142 | # CONFIG_BFS_FS is not set | 1260 | # CONFIG_BFS_FS is not set |
1143 | # CONFIG_EFS_FS is not set | 1261 | # CONFIG_EFS_FS is not set |
1144 | # CONFIG_CRAMFS is not set | 1262 | # CONFIG_CRAMFS is not set |
1263 | # CONFIG_SQUASHFS is not set | ||
1145 | # CONFIG_VXFS_FS is not set | 1264 | # CONFIG_VXFS_FS is not set |
1265 | # CONFIG_MINIX_FS is not set | ||
1266 | # CONFIG_OMFS_FS is not set | ||
1146 | # CONFIG_HPFS_FS is not set | 1267 | # CONFIG_HPFS_FS is not set |
1147 | # CONFIG_QNX4FS_FS is not set | 1268 | # CONFIG_QNX4FS_FS is not set |
1269 | # CONFIG_ROMFS_FS is not set | ||
1148 | # CONFIG_SYSV_FS is not set | 1270 | # CONFIG_SYSV_FS is not set |
1149 | # CONFIG_UFS_FS is not set | 1271 | # CONFIG_UFS_FS is not set |
1150 | 1272 | CONFIG_NETWORK_FILESYSTEMS=y | |
1151 | # | ||
1152 | # Network File Systems | ||
1153 | # | ||
1154 | CONFIG_NFS_FS=y | 1273 | CONFIG_NFS_FS=y |
1155 | CONFIG_NFS_V3=y | 1274 | CONFIG_NFS_V3=y |
1156 | # CONFIG_NFS_V3_ACL is not set | 1275 | # CONFIG_NFS_V3_ACL is not set |
1157 | # CONFIG_NFS_V4 is not set | 1276 | # CONFIG_NFS_V4 is not set |
1158 | # CONFIG_NFS_DIRECTIO is not set | 1277 | CONFIG_ROOT_NFS=y |
1159 | CONFIG_NFSD=y | 1278 | CONFIG_NFSD=y |
1160 | CONFIG_NFSD_V3=y | 1279 | CONFIG_NFSD_V3=y |
1161 | # CONFIG_NFSD_V3_ACL is not set | 1280 | # CONFIG_NFSD_V3_ACL is not set |
1162 | # CONFIG_NFSD_V4 is not set | 1281 | # CONFIG_NFSD_V4 is not set |
1163 | # CONFIG_NFSD_TCP is not set | ||
1164 | CONFIG_ROOT_NFS=y | ||
1165 | CONFIG_LOCKD=y | 1282 | CONFIG_LOCKD=y |
1166 | CONFIG_LOCKD_V4=y | 1283 | CONFIG_LOCKD_V4=y |
1167 | CONFIG_EXPORTFS=y | 1284 | CONFIG_EXPORTFS=y |
1168 | CONFIG_NFS_COMMON=y | 1285 | CONFIG_NFS_COMMON=y |
1169 | CONFIG_SUNRPC=y | 1286 | CONFIG_SUNRPC=y |
1170 | # CONFIG_SUNRPC_BIND34 is not set | 1287 | # CONFIG_SUNRPC_REGISTER_V4 is not set |
1171 | # CONFIG_RPCSEC_GSS_KRB5 is not set | 1288 | # CONFIG_RPCSEC_GSS_KRB5 is not set |
1172 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | 1289 | # CONFIG_RPCSEC_GSS_SPKM3 is not set |
1173 | # CONFIG_SMB_FS is not set | 1290 | # CONFIG_SMB_FS is not set |
@@ -1181,10 +1298,6 @@ CONFIG_SUNRPC=y | |||
1181 | # | 1298 | # |
1182 | # CONFIG_PARTITION_ADVANCED is not set | 1299 | # CONFIG_PARTITION_ADVANCED is not set |
1183 | CONFIG_MSDOS_PARTITION=y | 1300 | CONFIG_MSDOS_PARTITION=y |
1184 | |||
1185 | # | ||
1186 | # Native Language Support | ||
1187 | # | ||
1188 | CONFIG_NLS=y | 1301 | CONFIG_NLS=y |
1189 | CONFIG_NLS_DEFAULT="iso8859-1" | 1302 | CONFIG_NLS_DEFAULT="iso8859-1" |
1190 | CONFIG_NLS_CODEPAGE_437=m | 1303 | CONFIG_NLS_CODEPAGE_437=m |
@@ -1225,33 +1338,28 @@ CONFIG_NLS_ISO8859_15=m | |||
1225 | # CONFIG_NLS_KOI8_R is not set | 1338 | # CONFIG_NLS_KOI8_R is not set |
1226 | # CONFIG_NLS_KOI8_U is not set | 1339 | # CONFIG_NLS_KOI8_U is not set |
1227 | CONFIG_NLS_UTF8=m | 1340 | CONFIG_NLS_UTF8=m |
1228 | |||
1229 | # | ||
1230 | # Distributed Lock Manager | ||
1231 | # | ||
1232 | # CONFIG_DLM is not set | 1341 | # CONFIG_DLM is not set |
1233 | 1342 | ||
1234 | # | 1343 | # |
1235 | # Profiling support | ||
1236 | # | ||
1237 | CONFIG_PROFILING=y | ||
1238 | CONFIG_OPROFILE=m | ||
1239 | |||
1240 | # | ||
1241 | # Kernel hacking | 1344 | # Kernel hacking |
1242 | # | 1345 | # |
1243 | # CONFIG_PRINTK_TIME is not set | 1346 | # CONFIG_PRINTK_TIME is not set |
1347 | CONFIG_ENABLE_WARN_DEPRECATED=y | ||
1244 | CONFIG_ENABLE_MUST_CHECK=y | 1348 | CONFIG_ENABLE_MUST_CHECK=y |
1349 | CONFIG_FRAME_WARN=1024 | ||
1245 | CONFIG_MAGIC_SYSRQ=y | 1350 | CONFIG_MAGIC_SYSRQ=y |
1246 | # CONFIG_UNUSED_SYMBOLS is not set | 1351 | # CONFIG_UNUSED_SYMBOLS is not set |
1247 | # CONFIG_DEBUG_FS is not set | 1352 | CONFIG_DEBUG_FS=y |
1248 | CONFIG_HEADERS_CHECK=y | 1353 | CONFIG_HEADERS_CHECK=y |
1249 | CONFIG_DEBUG_KERNEL=y | 1354 | CONFIG_DEBUG_KERNEL=y |
1250 | # CONFIG_DEBUG_SHIRQ is not set | 1355 | # CONFIG_DEBUG_SHIRQ is not set |
1251 | CONFIG_DETECT_SOFTLOCKUP=y | 1356 | CONFIG_DETECT_SOFTLOCKUP=y |
1357 | # CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set | ||
1358 | CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 | ||
1252 | CONFIG_SCHED_DEBUG=y | 1359 | CONFIG_SCHED_DEBUG=y |
1253 | # CONFIG_SCHEDSTATS is not set | 1360 | # CONFIG_SCHEDSTATS is not set |
1254 | # CONFIG_TIMER_STATS is not set | 1361 | # CONFIG_TIMER_STATS is not set |
1362 | # CONFIG_DEBUG_OBJECTS is not set | ||
1255 | # CONFIG_DEBUG_SLAB is not set | 1363 | # CONFIG_DEBUG_SLAB is not set |
1256 | # CONFIG_DEBUG_RT_MUTEXES is not set | 1364 | # CONFIG_DEBUG_RT_MUTEXES is not set |
1257 | # CONFIG_RT_MUTEX_TESTER is not set | 1365 | # CONFIG_RT_MUTEX_TESTER is not set |
@@ -1263,10 +1371,33 @@ CONFIG_DEBUG_MUTEXES=y | |||
1263 | # CONFIG_DEBUG_BUGVERBOSE is not set | 1371 | # CONFIG_DEBUG_BUGVERBOSE is not set |
1264 | # CONFIG_DEBUG_INFO is not set | 1372 | # CONFIG_DEBUG_INFO is not set |
1265 | # CONFIG_DEBUG_VM is not set | 1373 | # CONFIG_DEBUG_VM is not set |
1374 | # CONFIG_DEBUG_WRITECOUNT is not set | ||
1375 | # CONFIG_DEBUG_MEMORY_INIT is not set | ||
1266 | # CONFIG_DEBUG_LIST is not set | 1376 | # CONFIG_DEBUG_LIST is not set |
1267 | CONFIG_FORCED_INLINING=y | 1377 | # CONFIG_DEBUG_SG is not set |
1378 | # CONFIG_DEBUG_NOTIFIERS is not set | ||
1379 | # CONFIG_BOOT_PRINTK_DELAY is not set | ||
1268 | # CONFIG_RCU_TORTURE_TEST is not set | 1380 | # CONFIG_RCU_TORTURE_TEST is not set |
1381 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||
1382 | # CONFIG_BACKTRACE_SELF_TEST is not set | ||
1383 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | ||
1269 | # CONFIG_FAULT_INJECTION is not set | 1384 | # CONFIG_FAULT_INJECTION is not set |
1385 | # CONFIG_SYSCTL_SYSCALL_CHECK is not set | ||
1386 | CONFIG_NOP_TRACER=y | ||
1387 | CONFIG_RING_BUFFER=y | ||
1388 | CONFIG_TRACING=y | ||
1389 | |||
1390 | # | ||
1391 | # Tracers | ||
1392 | # | ||
1393 | # CONFIG_SCHED_TRACER is not set | ||
1394 | # CONFIG_CONTEXT_SWITCH_TRACER is not set | ||
1395 | # CONFIG_BOOT_TRACER is not set | ||
1396 | # CONFIG_TRACE_BRANCH_PROFILING is not set | ||
1397 | # CONFIG_FTRACE_STARTUP_TEST is not set | ||
1398 | # CONFIG_BUILD_DOCSRC is not set | ||
1399 | # CONFIG_DYNAMIC_PRINTK_DEBUG is not set | ||
1400 | # CONFIG_SAMPLES is not set | ||
1270 | CONFIG_DEBUG_RODATA=y | 1401 | CONFIG_DEBUG_RODATA=y |
1271 | 1402 | ||
1272 | # | 1403 | # |
@@ -1274,54 +1405,110 @@ CONFIG_DEBUG_RODATA=y | |||
1274 | # | 1405 | # |
1275 | # CONFIG_KEYS is not set | 1406 | # CONFIG_KEYS is not set |
1276 | # CONFIG_SECURITY is not set | 1407 | # CONFIG_SECURITY is not set |
1408 | # CONFIG_SECURITYFS is not set | ||
1409 | # CONFIG_SECURITY_FILE_CAPABILITIES is not set | ||
1277 | CONFIG_CRYPTO=y | 1410 | CONFIG_CRYPTO=y |
1411 | |||
1412 | # | ||
1413 | # Crypto core or helper | ||
1414 | # | ||
1415 | # CONFIG_CRYPTO_FIPS is not set | ||
1278 | CONFIG_CRYPTO_ALGAPI=m | 1416 | CONFIG_CRYPTO_ALGAPI=m |
1417 | CONFIG_CRYPTO_ALGAPI2=m | ||
1418 | CONFIG_CRYPTO_AEAD2=m | ||
1279 | CONFIG_CRYPTO_BLKCIPHER=m | 1419 | CONFIG_CRYPTO_BLKCIPHER=m |
1420 | CONFIG_CRYPTO_BLKCIPHER2=m | ||
1421 | CONFIG_CRYPTO_HASH=m | ||
1422 | CONFIG_CRYPTO_HASH2=m | ||
1423 | CONFIG_CRYPTO_RNG2=m | ||
1280 | CONFIG_CRYPTO_MANAGER=m | 1424 | CONFIG_CRYPTO_MANAGER=m |
1425 | CONFIG_CRYPTO_MANAGER2=m | ||
1426 | # CONFIG_CRYPTO_GF128MUL is not set | ||
1427 | CONFIG_CRYPTO_NULL=m | ||
1428 | # CONFIG_CRYPTO_CRYPTD is not set | ||
1429 | # CONFIG_CRYPTO_AUTHENC is not set | ||
1430 | CONFIG_CRYPTO_TEST=m | ||
1431 | |||
1432 | # | ||
1433 | # Authenticated Encryption with Associated Data | ||
1434 | # | ||
1435 | # CONFIG_CRYPTO_CCM is not set | ||
1436 | # CONFIG_CRYPTO_GCM is not set | ||
1437 | # CONFIG_CRYPTO_SEQIV is not set | ||
1438 | |||
1439 | # | ||
1440 | # Block modes | ||
1441 | # | ||
1442 | CONFIG_CRYPTO_CBC=m | ||
1443 | # CONFIG_CRYPTO_CTR is not set | ||
1444 | # CONFIG_CRYPTO_CTS is not set | ||
1445 | # CONFIG_CRYPTO_ECB is not set | ||
1446 | # CONFIG_CRYPTO_LRW is not set | ||
1447 | # CONFIG_CRYPTO_PCBC is not set | ||
1448 | # CONFIG_CRYPTO_XTS is not set | ||
1449 | |||
1450 | # | ||
1451 | # Hash modes | ||
1452 | # | ||
1281 | # CONFIG_CRYPTO_HMAC is not set | 1453 | # CONFIG_CRYPTO_HMAC is not set |
1282 | # CONFIG_CRYPTO_XCBC is not set | 1454 | # CONFIG_CRYPTO_XCBC is not set |
1283 | CONFIG_CRYPTO_NULL=m | 1455 | |
1456 | # | ||
1457 | # Digest | ||
1458 | # | ||
1459 | CONFIG_CRYPTO_CRC32C=m | ||
1284 | # CONFIG_CRYPTO_MD4 is not set | 1460 | # CONFIG_CRYPTO_MD4 is not set |
1285 | CONFIG_CRYPTO_MD5=m | 1461 | CONFIG_CRYPTO_MD5=m |
1462 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | ||
1463 | # CONFIG_CRYPTO_RMD128 is not set | ||
1464 | # CONFIG_CRYPTO_RMD160 is not set | ||
1465 | # CONFIG_CRYPTO_RMD256 is not set | ||
1466 | # CONFIG_CRYPTO_RMD320 is not set | ||
1286 | # CONFIG_CRYPTO_SHA1 is not set | 1467 | # CONFIG_CRYPTO_SHA1 is not set |
1287 | # CONFIG_CRYPTO_SHA256 is not set | 1468 | # CONFIG_CRYPTO_SHA256 is not set |
1288 | # CONFIG_CRYPTO_SHA512 is not set | 1469 | # CONFIG_CRYPTO_SHA512 is not set |
1289 | # CONFIG_CRYPTO_WP512 is not set | ||
1290 | # CONFIG_CRYPTO_TGR192 is not set | 1470 | # CONFIG_CRYPTO_TGR192 is not set |
1291 | # CONFIG_CRYPTO_GF128MUL is not set | 1471 | # CONFIG_CRYPTO_WP512 is not set |
1292 | # CONFIG_CRYPTO_ECB is not set | 1472 | |
1293 | CONFIG_CRYPTO_CBC=m | 1473 | # |
1294 | # CONFIG_CRYPTO_PCBC is not set | 1474 | # Ciphers |
1295 | # CONFIG_CRYPTO_LRW is not set | 1475 | # |
1296 | # CONFIG_CRYPTO_XTS is not set | ||
1297 | # CONFIG_CRYPTO_CRYPTD is not set | ||
1298 | CONFIG_CRYPTO_DES=m | ||
1299 | # CONFIG_CRYPTO_FCRYPT is not set | ||
1300 | CONFIG_CRYPTO_BLOWFISH=m | ||
1301 | # CONFIG_CRYPTO_TWOFISH is not set | ||
1302 | # CONFIG_CRYPTO_SERPENT is not set | ||
1303 | # CONFIG_CRYPTO_AES is not set | 1476 | # CONFIG_CRYPTO_AES is not set |
1477 | # CONFIG_CRYPTO_ANUBIS is not set | ||
1478 | # CONFIG_CRYPTO_ARC4 is not set | ||
1479 | CONFIG_CRYPTO_BLOWFISH=m | ||
1480 | # CONFIG_CRYPTO_CAMELLIA is not set | ||
1304 | # CONFIG_CRYPTO_CAST5 is not set | 1481 | # CONFIG_CRYPTO_CAST5 is not set |
1305 | # CONFIG_CRYPTO_CAST6 is not set | 1482 | # CONFIG_CRYPTO_CAST6 is not set |
1306 | # CONFIG_CRYPTO_TEA is not set | 1483 | CONFIG_CRYPTO_DES=m |
1307 | # CONFIG_CRYPTO_ARC4 is not set | 1484 | # CONFIG_CRYPTO_FCRYPT is not set |
1308 | # CONFIG_CRYPTO_KHAZAD is not set | 1485 | # CONFIG_CRYPTO_KHAZAD is not set |
1309 | # CONFIG_CRYPTO_ANUBIS is not set | 1486 | # CONFIG_CRYPTO_SALSA20 is not set |
1310 | # CONFIG_CRYPTO_SEED is not set | 1487 | # CONFIG_CRYPTO_SEED is not set |
1488 | # CONFIG_CRYPTO_SERPENT is not set | ||
1489 | # CONFIG_CRYPTO_TEA is not set | ||
1490 | # CONFIG_CRYPTO_TWOFISH is not set | ||
1491 | |||
1492 | # | ||
1493 | # Compression | ||
1494 | # | ||
1311 | CONFIG_CRYPTO_DEFLATE=m | 1495 | CONFIG_CRYPTO_DEFLATE=m |
1312 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | 1496 | # CONFIG_CRYPTO_LZO is not set |
1313 | CONFIG_CRYPTO_CRC32C=m | 1497 | |
1314 | # CONFIG_CRYPTO_CAMELLIA is not set | 1498 | # |
1315 | CONFIG_CRYPTO_TEST=m | 1499 | # Random Number Generation |
1316 | # CONFIG_CRYPTO_AUTHENC is not set | 1500 | # |
1501 | # CONFIG_CRYPTO_ANSI_CPRNG is not set | ||
1317 | # CONFIG_CRYPTO_HW is not set | 1502 | # CONFIG_CRYPTO_HW is not set |
1318 | 1503 | ||
1319 | # | 1504 | # |
1320 | # Library routines | 1505 | # Library routines |
1321 | # | 1506 | # |
1322 | CONFIG_BITREVERSE=y | 1507 | CONFIG_BITREVERSE=y |
1508 | CONFIG_GENERIC_FIND_LAST_BIT=y | ||
1323 | CONFIG_CRC_CCITT=m | 1509 | CONFIG_CRC_CCITT=m |
1324 | # CONFIG_CRC16 is not set | 1510 | # CONFIG_CRC16 is not set |
1511 | # CONFIG_CRC_T10DIF is not set | ||
1325 | # CONFIG_CRC_ITU_T is not set | 1512 | # CONFIG_CRC_ITU_T is not set |
1326 | CONFIG_CRC32=y | 1513 | CONFIG_CRC32=y |
1327 | # CONFIG_CRC7 is not set | 1514 | # CONFIG_CRC7 is not set |
diff --git a/arch/parisc/configs/default_defconfig b/arch/parisc/configs/default_defconfig index 448a757b06c6..283a96c1b5ea 100644 --- a/arch/parisc/configs/default_defconfig +++ b/arch/parisc/configs/default_defconfig | |||
@@ -1,7 +1,7 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.23 | 3 | # Linux kernel version: 2.6.29-rc8 |
4 | # Fri Oct 12 20:54:57 2007 | 4 | # Fri Mar 13 01:32:59 2009 |
5 | # | 5 | # |
6 | CONFIG_PARISC=y | 6 | CONFIG_PARISC=y |
7 | CONFIG_MMU=y | 7 | CONFIG_MMU=y |
@@ -33,17 +33,35 @@ CONFIG_SYSVIPC_SYSCTL=y | |||
33 | CONFIG_POSIX_MQUEUE=y | 33 | CONFIG_POSIX_MQUEUE=y |
34 | # CONFIG_BSD_PROCESS_ACCT is not set | 34 | # CONFIG_BSD_PROCESS_ACCT is not set |
35 | # CONFIG_TASKSTATS is not set | 35 | # CONFIG_TASKSTATS is not set |
36 | # CONFIG_USER_NS is not set | ||
37 | # CONFIG_AUDIT is not set | 36 | # CONFIG_AUDIT is not set |
37 | |||
38 | # | ||
39 | # RCU Subsystem | ||
40 | # | ||
41 | CONFIG_CLASSIC_RCU=y | ||
42 | # CONFIG_TREE_RCU is not set | ||
43 | # CONFIG_PREEMPT_RCU is not set | ||
44 | # CONFIG_TREE_RCU_TRACE is not set | ||
45 | # CONFIG_PREEMPT_RCU_TRACE is not set | ||
38 | CONFIG_IKCONFIG=y | 46 | CONFIG_IKCONFIG=y |
39 | CONFIG_IKCONFIG_PROC=y | 47 | CONFIG_IKCONFIG_PROC=y |
40 | CONFIG_LOG_BUF_SHIFT=16 | 48 | CONFIG_LOG_BUF_SHIFT=16 |
49 | # CONFIG_GROUP_SCHED is not set | ||
50 | # CONFIG_CGROUPS is not set | ||
41 | CONFIG_SYSFS_DEPRECATED=y | 51 | CONFIG_SYSFS_DEPRECATED=y |
52 | CONFIG_SYSFS_DEPRECATED_V2=y | ||
42 | # CONFIG_RELAY is not set | 53 | # CONFIG_RELAY is not set |
54 | CONFIG_NAMESPACES=y | ||
55 | # CONFIG_UTS_NS is not set | ||
56 | # CONFIG_IPC_NS is not set | ||
57 | # CONFIG_USER_NS is not set | ||
58 | # CONFIG_PID_NS is not set | ||
59 | # CONFIG_NET_NS is not set | ||
43 | CONFIG_BLK_DEV_INITRD=y | 60 | CONFIG_BLK_DEV_INITRD=y |
44 | CONFIG_INITRAMFS_SOURCE="" | 61 | CONFIG_INITRAMFS_SOURCE="" |
45 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | 62 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y |
46 | CONFIG_SYSCTL=y | 63 | CONFIG_SYSCTL=y |
64 | CONFIG_ANON_INODES=y | ||
47 | # CONFIG_EMBEDDED is not set | 65 | # CONFIG_EMBEDDED is not set |
48 | CONFIG_SYSCTL_SYSCALL=y | 66 | CONFIG_SYSCTL_SYSCALL=y |
49 | CONFIG_KALLSYMS=y | 67 | CONFIG_KALLSYMS=y |
@@ -55,29 +73,39 @@ CONFIG_BUG=y | |||
55 | CONFIG_ELF_CORE=y | 73 | CONFIG_ELF_CORE=y |
56 | CONFIG_BASE_FULL=y | 74 | CONFIG_BASE_FULL=y |
57 | CONFIG_FUTEX=y | 75 | CONFIG_FUTEX=y |
58 | CONFIG_ANON_INODES=y | ||
59 | CONFIG_EPOLL=y | 76 | CONFIG_EPOLL=y |
60 | CONFIG_SIGNALFD=y | 77 | CONFIG_SIGNALFD=y |
78 | CONFIG_TIMERFD=y | ||
61 | CONFIG_EVENTFD=y | 79 | CONFIG_EVENTFD=y |
62 | CONFIG_SHMEM=y | 80 | CONFIG_SHMEM=y |
81 | CONFIG_AIO=y | ||
63 | CONFIG_VM_EVENT_COUNTERS=y | 82 | CONFIG_VM_EVENT_COUNTERS=y |
83 | CONFIG_PCI_QUIRKS=y | ||
84 | CONFIG_COMPAT_BRK=y | ||
64 | CONFIG_SLAB=y | 85 | CONFIG_SLAB=y |
65 | # CONFIG_SLUB is not set | 86 | # CONFIG_SLUB is not set |
66 | # CONFIG_SLOB is not set | 87 | # CONFIG_SLOB is not set |
88 | CONFIG_PROFILING=y | ||
89 | CONFIG_TRACEPOINTS=y | ||
90 | # CONFIG_MARKERS is not set | ||
91 | CONFIG_OPROFILE=m | ||
92 | CONFIG_HAVE_OPROFILE=y | ||
93 | # CONFIG_HAVE_GENERIC_DMA_COHERENT is not set | ||
94 | CONFIG_SLABINFO=y | ||
67 | CONFIG_RT_MUTEXES=y | 95 | CONFIG_RT_MUTEXES=y |
68 | # CONFIG_TINY_SHMEM is not set | ||
69 | CONFIG_BASE_SMALL=0 | 96 | CONFIG_BASE_SMALL=0 |
70 | CONFIG_MODULES=y | 97 | CONFIG_MODULES=y |
98 | # CONFIG_MODULE_FORCE_LOAD is not set | ||
71 | CONFIG_MODULE_UNLOAD=y | 99 | CONFIG_MODULE_UNLOAD=y |
72 | CONFIG_MODULE_FORCE_UNLOAD=y | 100 | CONFIG_MODULE_FORCE_UNLOAD=y |
73 | # CONFIG_MODVERSIONS is not set | 101 | # CONFIG_MODVERSIONS is not set |
74 | # CONFIG_MODULE_SRCVERSION_ALL is not set | 102 | # CONFIG_MODULE_SRCVERSION_ALL is not set |
75 | CONFIG_KMOD=y | 103 | CONFIG_INIT_ALL_POSSIBLE=y |
76 | CONFIG_BLOCK=y | 104 | CONFIG_BLOCK=y |
77 | # CONFIG_LBD is not set | 105 | # CONFIG_LBD is not set |
78 | # CONFIG_BLK_DEV_IO_TRACE is not set | 106 | # CONFIG_BLK_DEV_IO_TRACE is not set |
79 | # CONFIG_LSF is not set | ||
80 | # CONFIG_BLK_DEV_BSG is not set | 107 | # CONFIG_BLK_DEV_BSG is not set |
108 | # CONFIG_BLK_DEV_INTEGRITY is not set | ||
81 | 109 | ||
82 | # | 110 | # |
83 | # IO Schedulers | 111 | # IO Schedulers |
@@ -91,6 +119,7 @@ CONFIG_DEFAULT_AS=y | |||
91 | # CONFIG_DEFAULT_CFQ is not set | 119 | # CONFIG_DEFAULT_CFQ is not set |
92 | # CONFIG_DEFAULT_NOOP is not set | 120 | # CONFIG_DEFAULT_NOOP is not set |
93 | CONFIG_DEFAULT_IOSCHED="anticipatory" | 121 | CONFIG_DEFAULT_IOSCHED="anticipatory" |
122 | # CONFIG_FREEZER is not set | ||
94 | 123 | ||
95 | # | 124 | # |
96 | # Processor type and features | 125 | # Processor type and features |
@@ -114,17 +143,19 @@ CONFIG_HZ_250=y | |||
114 | # CONFIG_HZ_300 is not set | 143 | # CONFIG_HZ_300 is not set |
115 | # CONFIG_HZ_1000 is not set | 144 | # CONFIG_HZ_1000 is not set |
116 | CONFIG_HZ=250 | 145 | CONFIG_HZ=250 |
146 | # CONFIG_SCHED_HRTICK is not set | ||
117 | CONFIG_SELECT_MEMORY_MODEL=y | 147 | CONFIG_SELECT_MEMORY_MODEL=y |
118 | CONFIG_FLATMEM_MANUAL=y | 148 | CONFIG_FLATMEM_MANUAL=y |
119 | # CONFIG_DISCONTIGMEM_MANUAL is not set | 149 | # CONFIG_DISCONTIGMEM_MANUAL is not set |
120 | # CONFIG_SPARSEMEM_MANUAL is not set | 150 | # CONFIG_SPARSEMEM_MANUAL is not set |
121 | CONFIG_FLATMEM=y | 151 | CONFIG_FLATMEM=y |
122 | CONFIG_FLAT_NODE_MEM_MAP=y | 152 | CONFIG_FLAT_NODE_MEM_MAP=y |
123 | # CONFIG_SPARSEMEM_STATIC is not set | 153 | CONFIG_PAGEFLAGS_EXTENDED=y |
124 | CONFIG_SPLIT_PTLOCK_CPUS=4096 | 154 | CONFIG_SPLIT_PTLOCK_CPUS=4096 |
125 | # CONFIG_RESOURCES_64BIT is not set | 155 | # CONFIG_PHYS_ADDR_T_64BIT is not set |
126 | CONFIG_ZONE_DMA_FLAG=0 | 156 | CONFIG_ZONE_DMA_FLAG=0 |
127 | CONFIG_VIRT_TO_BUS=y | 157 | CONFIG_VIRT_TO_BUS=y |
158 | CONFIG_UNEVICTABLE_LRU=y | ||
128 | # CONFIG_HPUX is not set | 159 | # CONFIG_HPUX is not set |
129 | 160 | ||
130 | # | 161 | # |
@@ -140,15 +171,14 @@ CONFIG_EISA_NAMES=y | |||
140 | # CONFIG_ISA is not set | 171 | # CONFIG_ISA is not set |
141 | CONFIG_PCI=y | 172 | CONFIG_PCI=y |
142 | # CONFIG_ARCH_SUPPORTS_MSI is not set | 173 | # CONFIG_ARCH_SUPPORTS_MSI is not set |
174 | CONFIG_PCI_LEGACY=y | ||
143 | # CONFIG_PCI_DEBUG is not set | 175 | # CONFIG_PCI_DEBUG is not set |
176 | # CONFIG_PCI_STUB is not set | ||
144 | CONFIG_GSC_DINO=y | 177 | CONFIG_GSC_DINO=y |
145 | CONFIG_PCI_LBA=y | 178 | CONFIG_PCI_LBA=y |
146 | CONFIG_IOSAPIC=y | 179 | CONFIG_IOSAPIC=y |
147 | CONFIG_IOMMU_SBA=y | 180 | CONFIG_IOMMU_SBA=y |
148 | 181 | CONFIG_IOMMU_HELPER=y | |
149 | # | ||
150 | # PCCARD (PCMCIA/CardBus) support | ||
151 | # | ||
152 | CONFIG_PCCARD=y | 182 | CONFIG_PCCARD=y |
153 | # CONFIG_PCMCIA_DEBUG is not set | 183 | # CONFIG_PCMCIA_DEBUG is not set |
154 | CONFIG_PCMCIA=y | 184 | CONFIG_PCMCIA=y |
@@ -183,16 +213,15 @@ CONFIG_PDC_STABLE=y | |||
183 | # Executable file formats | 213 | # Executable file formats |
184 | # | 214 | # |
185 | CONFIG_BINFMT_ELF=y | 215 | CONFIG_BINFMT_ELF=y |
216 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
217 | # CONFIG_HAVE_AOUT is not set | ||
186 | CONFIG_BINFMT_MISC=m | 218 | CONFIG_BINFMT_MISC=m |
187 | |||
188 | # | ||
189 | # Networking | ||
190 | # | ||
191 | CONFIG_NET=y | 219 | CONFIG_NET=y |
192 | 220 | ||
193 | # | 221 | # |
194 | # Networking options | 222 | # Networking options |
195 | # | 223 | # |
224 | CONFIG_COMPAT_NET_DEV_OPS=y | ||
196 | CONFIG_PACKET=y | 225 | CONFIG_PACKET=y |
197 | CONFIG_PACKET_MMAP=y | 226 | CONFIG_PACKET_MMAP=y |
198 | CONFIG_UNIX=y | 227 | CONFIG_UNIX=y |
@@ -200,6 +229,8 @@ CONFIG_XFRM=y | |||
200 | CONFIG_XFRM_USER=m | 229 | CONFIG_XFRM_USER=m |
201 | # CONFIG_XFRM_SUB_POLICY is not set | 230 | # CONFIG_XFRM_SUB_POLICY is not set |
202 | # CONFIG_XFRM_MIGRATE is not set | 231 | # CONFIG_XFRM_MIGRATE is not set |
232 | # CONFIG_XFRM_STATISTICS is not set | ||
233 | CONFIG_XFRM_IPCOMP=y | ||
203 | CONFIG_NET_KEY=m | 234 | CONFIG_NET_KEY=m |
204 | # CONFIG_NET_KEY_MIGRATE is not set | 235 | # CONFIG_NET_KEY_MIGRATE is not set |
205 | CONFIG_INET=y | 236 | CONFIG_INET=y |
@@ -245,8 +276,10 @@ CONFIG_INET6_XFRM_MODE_TUNNEL=y | |||
245 | CONFIG_INET6_XFRM_MODE_BEET=y | 276 | CONFIG_INET6_XFRM_MODE_BEET=y |
246 | # CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set | 277 | # CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set |
247 | CONFIG_IPV6_SIT=y | 278 | CONFIG_IPV6_SIT=y |
279 | CONFIG_IPV6_NDISC_NODETYPE=y | ||
248 | # CONFIG_IPV6_TUNNEL is not set | 280 | # CONFIG_IPV6_TUNNEL is not set |
249 | # CONFIG_IPV6_MULTIPLE_TABLES is not set | 281 | # CONFIG_IPV6_MULTIPLE_TABLES is not set |
282 | # CONFIG_IPV6_MROUTE is not set | ||
250 | # CONFIG_NETWORK_SECMARK is not set | 283 | # CONFIG_NETWORK_SECMARK is not set |
251 | # CONFIG_NETFILTER is not set | 284 | # CONFIG_NETFILTER is not set |
252 | # CONFIG_IP_DCCP is not set | 285 | # CONFIG_IP_DCCP is not set |
@@ -254,6 +287,7 @@ CONFIG_IPV6_SIT=y | |||
254 | # CONFIG_TIPC is not set | 287 | # CONFIG_TIPC is not set |
255 | # CONFIG_ATM is not set | 288 | # CONFIG_ATM is not set |
256 | # CONFIG_BRIDGE is not set | 289 | # CONFIG_BRIDGE is not set |
290 | # CONFIG_NET_DSA is not set | ||
257 | # CONFIG_VLAN_8021Q is not set | 291 | # CONFIG_VLAN_8021Q is not set |
258 | # CONFIG_DECNET is not set | 292 | # CONFIG_DECNET is not set |
259 | CONFIG_LLC=m | 293 | CONFIG_LLC=m |
@@ -264,28 +298,26 @@ CONFIG_LLC2=m | |||
264 | # CONFIG_LAPB is not set | 298 | # CONFIG_LAPB is not set |
265 | # CONFIG_ECONET is not set | 299 | # CONFIG_ECONET is not set |
266 | # CONFIG_WAN_ROUTER is not set | 300 | # CONFIG_WAN_ROUTER is not set |
267 | |||
268 | # | ||
269 | # QoS and/or fair queueing | ||
270 | # | ||
271 | # CONFIG_NET_SCHED is not set | 301 | # CONFIG_NET_SCHED is not set |
302 | # CONFIG_DCB is not set | ||
272 | 303 | ||
273 | # | 304 | # |
274 | # Network testing | 305 | # Network testing |
275 | # | 306 | # |
276 | # CONFIG_NET_PKTGEN is not set | 307 | # CONFIG_NET_PKTGEN is not set |
277 | # CONFIG_HAMRADIO is not set | 308 | # CONFIG_HAMRADIO is not set |
309 | # CONFIG_CAN is not set | ||
278 | # CONFIG_IRDA is not set | 310 | # CONFIG_IRDA is not set |
279 | # CONFIG_BT is not set | 311 | # CONFIG_BT is not set |
280 | # CONFIG_AF_RXRPC is not set | 312 | # CONFIG_AF_RXRPC is not set |
281 | 313 | # CONFIG_PHONET is not set | |
282 | # | 314 | CONFIG_WIRELESS=y |
283 | # Wireless | ||
284 | # | ||
285 | # CONFIG_CFG80211 is not set | 315 | # CONFIG_CFG80211 is not set |
316 | CONFIG_WIRELESS_OLD_REGULATORY=y | ||
286 | # CONFIG_WIRELESS_EXT is not set | 317 | # CONFIG_WIRELESS_EXT is not set |
318 | # CONFIG_LIB80211 is not set | ||
287 | # CONFIG_MAC80211 is not set | 319 | # CONFIG_MAC80211 is not set |
288 | # CONFIG_IEEE80211 is not set | 320 | # CONFIG_WIMAX is not set |
289 | # CONFIG_RFKILL is not set | 321 | # CONFIG_RFKILL is not set |
290 | # CONFIG_NET_9P is not set | 322 | # CONFIG_NET_9P is not set |
291 | 323 | ||
@@ -300,6 +332,8 @@ CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | |||
300 | # CONFIG_STANDALONE is not set | 332 | # CONFIG_STANDALONE is not set |
301 | # CONFIG_PREVENT_FIRMWARE_BUILD is not set | 333 | # CONFIG_PREVENT_FIRMWARE_BUILD is not set |
302 | CONFIG_FW_LOADER=y | 334 | CONFIG_FW_LOADER=y |
335 | CONFIG_FIRMWARE_IN_KERNEL=y | ||
336 | CONFIG_EXTRA_FIRMWARE="" | ||
303 | # CONFIG_DEBUG_DRIVER is not set | 337 | # CONFIG_DEBUG_DRIVER is not set |
304 | # CONFIG_DEBUG_DEVRES is not set | 338 | # CONFIG_DEBUG_DEVRES is not set |
305 | # CONFIG_SYS_HYPERVISOR is not set | 339 | # CONFIG_SYS_HYPERVISOR is not set |
@@ -330,63 +364,68 @@ CONFIG_BLK_DEV_CRYPTOLOOP=y | |||
330 | CONFIG_BLK_DEV_RAM=y | 364 | CONFIG_BLK_DEV_RAM=y |
331 | CONFIG_BLK_DEV_RAM_COUNT=16 | 365 | CONFIG_BLK_DEV_RAM_COUNT=16 |
332 | CONFIG_BLK_DEV_RAM_SIZE=6144 | 366 | CONFIG_BLK_DEV_RAM_SIZE=6144 |
333 | CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 | 367 | # CONFIG_BLK_DEV_XIP is not set |
334 | # CONFIG_CDROM_PKTCDVD is not set | 368 | # CONFIG_CDROM_PKTCDVD is not set |
335 | # CONFIG_ATA_OVER_ETH is not set | 369 | # CONFIG_ATA_OVER_ETH is not set |
370 | # CONFIG_BLK_DEV_HD is not set | ||
336 | CONFIG_MISC_DEVICES=y | 371 | CONFIG_MISC_DEVICES=y |
337 | # CONFIG_PHANTOM is not set | 372 | # CONFIG_PHANTOM is not set |
338 | # CONFIG_EEPROM_93CX6 is not set | ||
339 | # CONFIG_SGI_IOC4 is not set | 373 | # CONFIG_SGI_IOC4 is not set |
340 | # CONFIG_TIFM_CORE is not set | 374 | # CONFIG_TIFM_CORE is not set |
375 | # CONFIG_ENCLOSURE_SERVICES is not set | ||
376 | # CONFIG_HP_ILO is not set | ||
377 | # CONFIG_C2PORT is not set | ||
378 | |||
379 | # | ||
380 | # EEPROM support | ||
381 | # | ||
382 | # CONFIG_EEPROM_93CX6 is not set | ||
383 | CONFIG_HAVE_IDE=y | ||
341 | CONFIG_IDE=y | 384 | CONFIG_IDE=y |
342 | CONFIG_BLK_DEV_IDE=y | ||
343 | 385 | ||
344 | # | 386 | # |
345 | # Please see Documentation/ide.txt for help/info on IDE drives | 387 | # Please see Documentation/ide/ide.txt for help/info on IDE drives |
346 | # | 388 | # |
389 | CONFIG_IDE_ATAPI=y | ||
347 | # CONFIG_BLK_DEV_IDE_SATA is not set | 390 | # CONFIG_BLK_DEV_IDE_SATA is not set |
348 | CONFIG_BLK_DEV_IDEDISK=y | 391 | CONFIG_IDE_GD=y |
349 | CONFIG_IDEDISK_MULTI_MODE=y | 392 | CONFIG_IDE_GD_ATA=y |
393 | # CONFIG_IDE_GD_ATAPI is not set | ||
350 | CONFIG_BLK_DEV_IDECS=y | 394 | CONFIG_BLK_DEV_IDECS=y |
351 | # CONFIG_BLK_DEV_DELKIN is not set | 395 | # CONFIG_BLK_DEV_DELKIN is not set |
352 | CONFIG_BLK_DEV_IDECD=y | 396 | CONFIG_BLK_DEV_IDECD=y |
397 | CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y | ||
353 | # CONFIG_BLK_DEV_IDETAPE is not set | 398 | # CONFIG_BLK_DEV_IDETAPE is not set |
354 | # CONFIG_BLK_DEV_IDEFLOPPY is not set | ||
355 | CONFIG_BLK_DEV_IDESCSI=y | ||
356 | # CONFIG_IDE_TASK_IOCTL is not set | 399 | # CONFIG_IDE_TASK_IOCTL is not set |
357 | CONFIG_IDE_PROC_FS=y | 400 | CONFIG_IDE_PROC_FS=y |
358 | 401 | ||
359 | # | 402 | # |
360 | # IDE chipset support/bugfixes | 403 | # IDE chipset support/bugfixes |
361 | # | 404 | # |
362 | CONFIG_IDE_GENERIC=y | ||
363 | # CONFIG_BLK_DEV_PLATFORM is not set | 405 | # CONFIG_BLK_DEV_PLATFORM is not set |
406 | CONFIG_BLK_DEV_IDEDMA_SFF=y | ||
364 | 407 | ||
365 | # | 408 | # |
366 | # PCI IDE chipsets support | 409 | # PCI IDE chipsets support |
367 | # | 410 | # |
368 | CONFIG_BLK_DEV_IDEPCI=y | 411 | CONFIG_BLK_DEV_IDEPCI=y |
369 | CONFIG_IDEPCI_SHARE_IRQ=y | ||
370 | CONFIG_IDEPCI_PCIBUS_ORDER=y | 412 | CONFIG_IDEPCI_PCIBUS_ORDER=y |
371 | # CONFIG_BLK_DEV_OFFBOARD is not set | 413 | # CONFIG_BLK_DEV_OFFBOARD is not set |
372 | CONFIG_BLK_DEV_GENERIC=y | 414 | CONFIG_BLK_DEV_GENERIC=y |
373 | # CONFIG_BLK_DEV_OPTI621 is not set | 415 | # CONFIG_BLK_DEV_OPTI621 is not set |
374 | CONFIG_BLK_DEV_IDEDMA_PCI=y | 416 | CONFIG_BLK_DEV_IDEDMA_PCI=y |
375 | # CONFIG_BLK_DEV_IDEDMA_FORCED is not set | ||
376 | CONFIG_IDEDMA_ONLYDISK=y | ||
377 | # CONFIG_BLK_DEV_AEC62XX is not set | 417 | # CONFIG_BLK_DEV_AEC62XX is not set |
378 | # CONFIG_BLK_DEV_ALI15X3 is not set | 418 | # CONFIG_BLK_DEV_ALI15X3 is not set |
379 | # CONFIG_BLK_DEV_AMD74XX is not set | 419 | # CONFIG_BLK_DEV_AMD74XX is not set |
380 | # CONFIG_BLK_DEV_CMD64X is not set | 420 | # CONFIG_BLK_DEV_CMD64X is not set |
381 | # CONFIG_BLK_DEV_TRIFLEX is not set | 421 | # CONFIG_BLK_DEV_TRIFLEX is not set |
382 | # CONFIG_BLK_DEV_CY82C693 is not set | ||
383 | # CONFIG_BLK_DEV_CS5520 is not set | 422 | # CONFIG_BLK_DEV_CS5520 is not set |
384 | # CONFIG_BLK_DEV_CS5530 is not set | 423 | # CONFIG_BLK_DEV_CS5530 is not set |
385 | # CONFIG_BLK_DEV_HPT34X is not set | ||
386 | # CONFIG_BLK_DEV_HPT366 is not set | 424 | # CONFIG_BLK_DEV_HPT366 is not set |
387 | # CONFIG_BLK_DEV_JMICRON is not set | 425 | # CONFIG_BLK_DEV_JMICRON is not set |
388 | # CONFIG_BLK_DEV_SC1200 is not set | 426 | # CONFIG_BLK_DEV_SC1200 is not set |
389 | # CONFIG_BLK_DEV_PIIX is not set | 427 | # CONFIG_BLK_DEV_PIIX is not set |
428 | # CONFIG_BLK_DEV_IT8172 is not set | ||
390 | # CONFIG_BLK_DEV_IT8213 is not set | 429 | # CONFIG_BLK_DEV_IT8213 is not set |
391 | # CONFIG_BLK_DEV_IT821X is not set | 430 | # CONFIG_BLK_DEV_IT821X is not set |
392 | CONFIG_BLK_DEV_NS87415=y | 431 | CONFIG_BLK_DEV_NS87415=y |
@@ -398,10 +437,7 @@ CONFIG_BLK_DEV_NS87415=y | |||
398 | # CONFIG_BLK_DEV_TRM290 is not set | 437 | # CONFIG_BLK_DEV_TRM290 is not set |
399 | # CONFIG_BLK_DEV_VIA82CXXX is not set | 438 | # CONFIG_BLK_DEV_VIA82CXXX is not set |
400 | # CONFIG_BLK_DEV_TC86C001 is not set | 439 | # CONFIG_BLK_DEV_TC86C001 is not set |
401 | # CONFIG_IDE_ARM is not set | ||
402 | CONFIG_BLK_DEV_IDEDMA=y | 440 | CONFIG_BLK_DEV_IDEDMA=y |
403 | # CONFIG_IDEDMA_IVB is not set | ||
404 | # CONFIG_BLK_DEV_HD is not set | ||
405 | 441 | ||
406 | # | 442 | # |
407 | # SCSI device support | 443 | # SCSI device support |
@@ -440,8 +476,10 @@ CONFIG_SCSI_SPI_ATTRS=y | |||
440 | # CONFIG_SCSI_FC_ATTRS is not set | 476 | # CONFIG_SCSI_FC_ATTRS is not set |
441 | # CONFIG_SCSI_ISCSI_ATTRS is not set | 477 | # CONFIG_SCSI_ISCSI_ATTRS is not set |
442 | # CONFIG_SCSI_SAS_LIBSAS is not set | 478 | # CONFIG_SCSI_SAS_LIBSAS is not set |
479 | # CONFIG_SCSI_SRP_ATTRS is not set | ||
443 | CONFIG_SCSI_LOWLEVEL=y | 480 | CONFIG_SCSI_LOWLEVEL=y |
444 | # CONFIG_ISCSI_TCP is not set | 481 | # CONFIG_ISCSI_TCP is not set |
482 | # CONFIG_SCSI_CXGB3_ISCSI is not set | ||
445 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set | 483 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set |
446 | # CONFIG_SCSI_3W_9XXX is not set | 484 | # CONFIG_SCSI_3W_9XXX is not set |
447 | # CONFIG_SCSI_ACARD is not set | 485 | # CONFIG_SCSI_ACARD is not set |
@@ -452,11 +490,14 @@ CONFIG_SCSI_LOWLEVEL=y | |||
452 | # CONFIG_SCSI_AIC79XX is not set | 490 | # CONFIG_SCSI_AIC79XX is not set |
453 | # CONFIG_SCSI_AIC94XX is not set | 491 | # CONFIG_SCSI_AIC94XX is not set |
454 | # CONFIG_SCSI_DPT_I2O is not set | 492 | # CONFIG_SCSI_DPT_I2O is not set |
493 | # CONFIG_SCSI_ADVANSYS is not set | ||
455 | # CONFIG_SCSI_ARCMSR is not set | 494 | # CONFIG_SCSI_ARCMSR is not set |
456 | # CONFIG_MEGARAID_NEWGEN is not set | 495 | # CONFIG_MEGARAID_NEWGEN is not set |
457 | # CONFIG_MEGARAID_LEGACY is not set | 496 | # CONFIG_MEGARAID_LEGACY is not set |
458 | # CONFIG_MEGARAID_SAS is not set | 497 | # CONFIG_MEGARAID_SAS is not set |
459 | # CONFIG_SCSI_HPTIOP is not set | 498 | # CONFIG_SCSI_HPTIOP is not set |
499 | # CONFIG_LIBFC is not set | ||
500 | # CONFIG_FCOE is not set | ||
460 | # CONFIG_SCSI_DMX3191D is not set | 501 | # CONFIG_SCSI_DMX3191D is not set |
461 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | 502 | # CONFIG_SCSI_FUTURE_DOMAIN is not set |
462 | # CONFIG_SCSI_IPS is not set | 503 | # CONFIG_SCSI_IPS is not set |
@@ -464,6 +505,7 @@ CONFIG_SCSI_LOWLEVEL=y | |||
464 | # CONFIG_SCSI_INIA100 is not set | 505 | # CONFIG_SCSI_INIA100 is not set |
465 | # CONFIG_SCSI_PPA is not set | 506 | # CONFIG_SCSI_PPA is not set |
466 | # CONFIG_SCSI_IMM is not set | 507 | # CONFIG_SCSI_IMM is not set |
508 | # CONFIG_SCSI_MVSAS is not set | ||
467 | CONFIG_SCSI_LASI700=y | 509 | CONFIG_SCSI_LASI700=y |
468 | CONFIG_53C700_LE_ON_BE=y | 510 | CONFIG_53C700_LE_ON_BE=y |
469 | # CONFIG_SCSI_STEX is not set | 511 | # CONFIG_SCSI_STEX is not set |
@@ -487,9 +529,11 @@ CONFIG_SCSI_NCR53C8XX_SYNC=20 | |||
487 | # CONFIG_SCSI_DEBUG is not set | 529 | # CONFIG_SCSI_DEBUG is not set |
488 | # CONFIG_SCSI_SRP is not set | 530 | # CONFIG_SCSI_SRP is not set |
489 | # CONFIG_SCSI_LOWLEVEL_PCMCIA is not set | 531 | # CONFIG_SCSI_LOWLEVEL_PCMCIA is not set |
532 | # CONFIG_SCSI_DH is not set | ||
490 | # CONFIG_ATA is not set | 533 | # CONFIG_ATA is not set |
491 | CONFIG_MD=y | 534 | CONFIG_MD=y |
492 | CONFIG_BLK_DEV_MD=y | 535 | CONFIG_BLK_DEV_MD=y |
536 | CONFIG_MD_AUTODETECT=y | ||
493 | CONFIG_MD_LINEAR=y | 537 | CONFIG_MD_LINEAR=y |
494 | CONFIG_MD_RAID0=y | 538 | CONFIG_MD_RAID0=y |
495 | CONFIG_MD_RAID1=y | 539 | CONFIG_MD_RAID1=y |
@@ -505,32 +549,47 @@ CONFIG_BLK_DEV_DM=y | |||
505 | # CONFIG_DM_ZERO is not set | 549 | # CONFIG_DM_ZERO is not set |
506 | # CONFIG_DM_MULTIPATH is not set | 550 | # CONFIG_DM_MULTIPATH is not set |
507 | # CONFIG_DM_DELAY is not set | 551 | # CONFIG_DM_DELAY is not set |
552 | # CONFIG_DM_UEVENT is not set | ||
553 | # CONFIG_FUSION is not set | ||
508 | 554 | ||
509 | # | 555 | # |
510 | # Fusion MPT device support | 556 | # IEEE 1394 (FireWire) support |
511 | # | 557 | # |
512 | # CONFIG_FUSION is not set | ||
513 | # CONFIG_FUSION_SPI is not set | ||
514 | # CONFIG_FUSION_FC is not set | ||
515 | # CONFIG_FUSION_SAS is not set | ||
516 | 558 | ||
517 | # | 559 | # |
518 | # IEEE 1394 (FireWire) support | 560 | # Enable only one of the two stacks, unless you know what you are doing |
519 | # | 561 | # |
520 | # CONFIG_FIREWIRE is not set | 562 | # CONFIG_FIREWIRE is not set |
521 | # CONFIG_IEEE1394 is not set | 563 | # CONFIG_IEEE1394 is not set |
522 | # CONFIG_I2O is not set | 564 | # CONFIG_I2O is not set |
523 | CONFIG_NETDEVICES=y | 565 | CONFIG_NETDEVICES=y |
524 | # CONFIG_NETDEVICES_MULTIQUEUE is not set | ||
525 | CONFIG_DUMMY=m | 566 | CONFIG_DUMMY=m |
526 | CONFIG_BONDING=m | 567 | CONFIG_BONDING=m |
527 | # CONFIG_MACVLAN is not set | 568 | # CONFIG_MACVLAN is not set |
528 | # CONFIG_EQUALIZER is not set | 569 | # CONFIG_EQUALIZER is not set |
529 | CONFIG_TUN=m | 570 | CONFIG_TUN=m |
530 | # CONFIG_VETH is not set | 571 | # CONFIG_VETH is not set |
531 | # CONFIG_IP1000 is not set | ||
532 | # CONFIG_ARCNET is not set | 572 | # CONFIG_ARCNET is not set |
533 | # CONFIG_PHYLIB is not set | 573 | CONFIG_PHYLIB=y |
574 | |||
575 | # | ||
576 | # MII PHY device drivers | ||
577 | # | ||
578 | # CONFIG_MARVELL_PHY is not set | ||
579 | # CONFIG_DAVICOM_PHY is not set | ||
580 | # CONFIG_QSEMI_PHY is not set | ||
581 | # CONFIG_LXT_PHY is not set | ||
582 | # CONFIG_CICADA_PHY is not set | ||
583 | # CONFIG_VITESSE_PHY is not set | ||
584 | # CONFIG_SMSC_PHY is not set | ||
585 | # CONFIG_BROADCOM_PHY is not set | ||
586 | # CONFIG_ICPLUS_PHY is not set | ||
587 | # CONFIG_REALTEK_PHY is not set | ||
588 | # CONFIG_NATIONAL_PHY is not set | ||
589 | # CONFIG_STE10XP is not set | ||
590 | # CONFIG_LSI_ET1011C_PHY is not set | ||
591 | # CONFIG_FIXED_PHY is not set | ||
592 | # CONFIG_MDIO_BITBANG is not set | ||
534 | CONFIG_NET_ETHERNET=y | 593 | CONFIG_NET_ETHERNET=y |
535 | CONFIG_MII=m | 594 | CONFIG_MII=m |
536 | CONFIG_LASI_82596=y | 595 | CONFIG_LASI_82596=y |
@@ -550,13 +609,15 @@ CONFIG_TULIP=y | |||
550 | # CONFIG_DM9102 is not set | 609 | # CONFIG_DM9102 is not set |
551 | # CONFIG_ULI526X is not set | 610 | # CONFIG_ULI526X is not set |
552 | # CONFIG_PCMCIA_XIRCOM is not set | 611 | # CONFIG_PCMCIA_XIRCOM is not set |
553 | # CONFIG_PCMCIA_XIRTULIP is not set | ||
554 | # CONFIG_DEPCA is not set | 612 | # CONFIG_DEPCA is not set |
555 | # CONFIG_HP100 is not set | 613 | # CONFIG_HP100 is not set |
556 | # CONFIG_IBM_NEW_EMAC_ZMII is not set | 614 | # CONFIG_IBM_NEW_EMAC_ZMII is not set |
557 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | 615 | # CONFIG_IBM_NEW_EMAC_RGMII is not set |
558 | # CONFIG_IBM_NEW_EMAC_TAH is not set | 616 | # CONFIG_IBM_NEW_EMAC_TAH is not set |
559 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | 617 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set |
618 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
619 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
620 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
560 | CONFIG_NET_PCI=y | 621 | CONFIG_NET_PCI=y |
561 | # CONFIG_PCNET32 is not set | 622 | # CONFIG_PCNET32 is not set |
562 | # CONFIG_AMD8111_ETH is not set | 623 | # CONFIG_AMD8111_ETH is not set |
@@ -564,7 +625,7 @@ CONFIG_NET_PCI=y | |||
564 | # CONFIG_AC3200 is not set | 625 | # CONFIG_AC3200 is not set |
565 | # CONFIG_B44 is not set | 626 | # CONFIG_B44 is not set |
566 | # CONFIG_FORCEDETH is not set | 627 | # CONFIG_FORCEDETH is not set |
567 | # CONFIG_EEPRO100 is not set | 628 | # CONFIG_CS89x0 is not set |
568 | # CONFIG_E100 is not set | 629 | # CONFIG_E100 is not set |
569 | # CONFIG_LNE390 is not set | 630 | # CONFIG_LNE390 is not set |
570 | # CONFIG_FEALNX is not set | 631 | # CONFIG_FEALNX is not set |
@@ -574,19 +635,24 @@ CONFIG_NET_PCI=y | |||
574 | # CONFIG_ES3210 is not set | 635 | # CONFIG_ES3210 is not set |
575 | # CONFIG_8139CP is not set | 636 | # CONFIG_8139CP is not set |
576 | # CONFIG_8139TOO is not set | 637 | # CONFIG_8139TOO is not set |
638 | # CONFIG_R6040 is not set | ||
577 | # CONFIG_SIS900 is not set | 639 | # CONFIG_SIS900 is not set |
578 | # CONFIG_EPIC100 is not set | 640 | # CONFIG_EPIC100 is not set |
641 | # CONFIG_SMSC9420 is not set | ||
579 | # CONFIG_SUNDANCE is not set | 642 | # CONFIG_SUNDANCE is not set |
580 | # CONFIG_TLAN is not set | 643 | # CONFIG_TLAN is not set |
581 | # CONFIG_VIA_RHINE is not set | 644 | # CONFIG_VIA_RHINE is not set |
582 | # CONFIG_SC92031 is not set | 645 | # CONFIG_SC92031 is not set |
583 | # CONFIG_NET_POCKET is not set | 646 | # CONFIG_NET_POCKET is not set |
647 | # CONFIG_ATL2 is not set | ||
584 | CONFIG_NETDEV_1000=y | 648 | CONFIG_NETDEV_1000=y |
585 | CONFIG_ACENIC=y | 649 | CONFIG_ACENIC=y |
586 | # CONFIG_ACENIC_OMIT_TIGON_I is not set | 650 | # CONFIG_ACENIC_OMIT_TIGON_I is not set |
587 | # CONFIG_DL2K is not set | 651 | # CONFIG_DL2K is not set |
588 | # CONFIG_E1000 is not set | 652 | # CONFIG_E1000 is not set |
589 | # CONFIG_E1000E is not set | 653 | # CONFIG_E1000E is not set |
654 | # CONFIG_IP1000 is not set | ||
655 | # CONFIG_IGB is not set | ||
590 | # CONFIG_NS83820 is not set | 656 | # CONFIG_NS83820 is not set |
591 | # CONFIG_HAMACHI is not set | 657 | # CONFIG_HAMACHI is not set |
592 | # CONFIG_YELLOWFIN is not set | 658 | # CONFIG_YELLOWFIN is not set |
@@ -594,23 +660,31 @@ CONFIG_ACENIC=y | |||
594 | # CONFIG_SIS190 is not set | 660 | # CONFIG_SIS190 is not set |
595 | # CONFIG_SKGE is not set | 661 | # CONFIG_SKGE is not set |
596 | # CONFIG_SKY2 is not set | 662 | # CONFIG_SKY2 is not set |
597 | # CONFIG_SK98LIN is not set | ||
598 | # CONFIG_VIA_VELOCITY is not set | 663 | # CONFIG_VIA_VELOCITY is not set |
599 | CONFIG_TIGON3=y | 664 | CONFIG_TIGON3=y |
600 | # CONFIG_BNX2 is not set | 665 | # CONFIG_BNX2 is not set |
601 | # CONFIG_QLA3XXX is not set | 666 | # CONFIG_QLA3XXX is not set |
602 | # CONFIG_ATL1 is not set | 667 | # CONFIG_ATL1 is not set |
668 | # CONFIG_ATL1E is not set | ||
669 | # CONFIG_ATL1C is not set | ||
670 | # CONFIG_JME is not set | ||
603 | CONFIG_NETDEV_10000=y | 671 | CONFIG_NETDEV_10000=y |
604 | # CONFIG_CHELSIO_T1 is not set | 672 | # CONFIG_CHELSIO_T1 is not set |
673 | CONFIG_CHELSIO_T3_DEPENDS=y | ||
605 | # CONFIG_CHELSIO_T3 is not set | 674 | # CONFIG_CHELSIO_T3 is not set |
675 | # CONFIG_ENIC is not set | ||
606 | # CONFIG_IXGBE is not set | 676 | # CONFIG_IXGBE is not set |
607 | # CONFIG_IXGB is not set | 677 | # CONFIG_IXGB is not set |
608 | # CONFIG_S2IO is not set | 678 | # CONFIG_S2IO is not set |
609 | # CONFIG_MYRI10GE is not set | 679 | # CONFIG_MYRI10GE is not set |
610 | # CONFIG_NETXEN_NIC is not set | 680 | # CONFIG_NETXEN_NIC is not set |
611 | # CONFIG_NIU is not set | 681 | # CONFIG_NIU is not set |
682 | # CONFIG_MLX4_EN is not set | ||
612 | # CONFIG_MLX4_CORE is not set | 683 | # CONFIG_MLX4_CORE is not set |
613 | # CONFIG_TEHUTI is not set | 684 | # CONFIG_TEHUTI is not set |
685 | # CONFIG_BNX2X is not set | ||
686 | # CONFIG_QLGE is not set | ||
687 | # CONFIG_SFC is not set | ||
614 | # CONFIG_TR is not set | 688 | # CONFIG_TR is not set |
615 | 689 | ||
616 | # | 690 | # |
@@ -618,6 +692,11 @@ CONFIG_NETDEV_10000=y | |||
618 | # | 692 | # |
619 | # CONFIG_WLAN_PRE80211 is not set | 693 | # CONFIG_WLAN_PRE80211 is not set |
620 | # CONFIG_WLAN_80211 is not set | 694 | # CONFIG_WLAN_80211 is not set |
695 | # CONFIG_IWLWIFI_LEDS is not set | ||
696 | |||
697 | # | ||
698 | # Enable WiMAX (Networking options) to see the WiMAX drivers | ||
699 | # | ||
621 | 700 | ||
622 | # | 701 | # |
623 | # USB Network Adapters | 702 | # USB Network Adapters |
@@ -626,7 +705,6 @@ CONFIG_NETDEV_10000=y | |||
626 | # CONFIG_USB_KAWETH is not set | 705 | # CONFIG_USB_KAWETH is not set |
627 | # CONFIG_USB_PEGASUS is not set | 706 | # CONFIG_USB_PEGASUS is not set |
628 | # CONFIG_USB_RTL8150 is not set | 707 | # CONFIG_USB_RTL8150 is not set |
629 | # CONFIG_USB_USBNET_MII is not set | ||
630 | # CONFIG_USB_USBNET is not set | 708 | # CONFIG_USB_USBNET is not set |
631 | CONFIG_NET_PCMCIA=y | 709 | CONFIG_NET_PCMCIA=y |
632 | # CONFIG_PCMCIA_3C589 is not set | 710 | # CONFIG_PCMCIA_3C589 is not set |
@@ -654,7 +732,6 @@ CONFIG_PPPOE=m | |||
654 | # CONFIG_SLIP is not set | 732 | # CONFIG_SLIP is not set |
655 | CONFIG_SLHC=m | 733 | CONFIG_SLHC=m |
656 | # CONFIG_NET_FC is not set | 734 | # CONFIG_NET_FC is not set |
657 | # CONFIG_SHAPER is not set | ||
658 | # CONFIG_NETCONSOLE is not set | 735 | # CONFIG_NETCONSOLE is not set |
659 | # CONFIG_NETPOLL is not set | 736 | # CONFIG_NETPOLL is not set |
660 | # CONFIG_NET_POLL_CONTROLLER is not set | 737 | # CONFIG_NET_POLL_CONTROLLER is not set |
@@ -676,7 +753,6 @@ CONFIG_INPUT_MOUSEDEV_PSAUX=y | |||
676 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | 753 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 |
677 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | 754 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 |
678 | # CONFIG_INPUT_JOYDEV is not set | 755 | # CONFIG_INPUT_JOYDEV is not set |
679 | # CONFIG_INPUT_TSDEV is not set | ||
680 | # CONFIG_INPUT_EVDEV is not set | 756 | # CONFIG_INPUT_EVDEV is not set |
681 | # CONFIG_INPUT_EVBUG is not set | 757 | # CONFIG_INPUT_EVBUG is not set |
682 | 758 | ||
@@ -699,11 +775,12 @@ CONFIG_MOUSE_PS2=y | |||
699 | CONFIG_MOUSE_PS2_ALPS=y | 775 | CONFIG_MOUSE_PS2_ALPS=y |
700 | CONFIG_MOUSE_PS2_LOGIPS2PP=y | 776 | CONFIG_MOUSE_PS2_LOGIPS2PP=y |
701 | CONFIG_MOUSE_PS2_SYNAPTICS=y | 777 | CONFIG_MOUSE_PS2_SYNAPTICS=y |
702 | CONFIG_MOUSE_PS2_LIFEBOOK=y | ||
703 | CONFIG_MOUSE_PS2_TRACKPOINT=y | 778 | CONFIG_MOUSE_PS2_TRACKPOINT=y |
779 | # CONFIG_MOUSE_PS2_ELANTECH is not set | ||
704 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set | 780 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set |
705 | CONFIG_MOUSE_SERIAL=y | 781 | CONFIG_MOUSE_SERIAL=y |
706 | # CONFIG_MOUSE_APPLETOUCH is not set | 782 | # CONFIG_MOUSE_APPLETOUCH is not set |
783 | # CONFIG_MOUSE_BCM5974 is not set | ||
707 | # CONFIG_MOUSE_VSXXXAA is not set | 784 | # CONFIG_MOUSE_VSXXXAA is not set |
708 | CONFIG_MOUSE_HIL=y | 785 | CONFIG_MOUSE_HIL=y |
709 | # CONFIG_INPUT_JOYSTICK is not set | 786 | # CONFIG_INPUT_JOYSTICK is not set |
@@ -729,10 +806,13 @@ CONFIG_SERIO_LIBPS2=y | |||
729 | # Character devices | 806 | # Character devices |
730 | # | 807 | # |
731 | CONFIG_VT=y | 808 | CONFIG_VT=y |
809 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
732 | CONFIG_VT_CONSOLE=y | 810 | CONFIG_VT_CONSOLE=y |
733 | CONFIG_HW_CONSOLE=y | 811 | CONFIG_HW_CONSOLE=y |
734 | # CONFIG_VT_HW_CONSOLE_BINDING is not set | 812 | # CONFIG_VT_HW_CONSOLE_BINDING is not set |
813 | CONFIG_DEVKMEM=y | ||
735 | # CONFIG_SERIAL_NONSTANDARD is not set | 814 | # CONFIG_SERIAL_NONSTANDARD is not set |
815 | # CONFIG_NOZOMI is not set | ||
736 | 816 | ||
737 | # | 817 | # |
738 | # Serial drivers | 818 | # Serial drivers |
@@ -759,21 +839,16 @@ CONFIG_SERIAL_CORE=y | |||
759 | CONFIG_SERIAL_CORE_CONSOLE=y | 839 | CONFIG_SERIAL_CORE_CONSOLE=y |
760 | # CONFIG_SERIAL_JSM is not set | 840 | # CONFIG_SERIAL_JSM is not set |
761 | CONFIG_UNIX98_PTYS=y | 841 | CONFIG_UNIX98_PTYS=y |
842 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | ||
762 | CONFIG_LEGACY_PTYS=y | 843 | CONFIG_LEGACY_PTYS=y |
763 | CONFIG_LEGACY_PTY_COUNT=64 | 844 | CONFIG_LEGACY_PTY_COUNT=64 |
764 | CONFIG_PRINTER=m | 845 | CONFIG_PRINTER=m |
765 | # CONFIG_LP_CONSOLE is not set | 846 | # CONFIG_LP_CONSOLE is not set |
766 | CONFIG_PPDEV=m | 847 | CONFIG_PPDEV=m |
767 | # CONFIG_TIPAR is not set | ||
768 | # CONFIG_IPMI_HANDLER is not set | 848 | # CONFIG_IPMI_HANDLER is not set |
769 | # CONFIG_WATCHDOG is not set | ||
770 | # CONFIG_HW_RANDOM is not set | 849 | # CONFIG_HW_RANDOM is not set |
771 | CONFIG_GEN_RTC=y | ||
772 | CONFIG_GEN_RTC_X=y | ||
773 | # CONFIG_R3964 is not set | 850 | # CONFIG_R3964 is not set |
774 | # CONFIG_APPLICOM is not set | 851 | # CONFIG_APPLICOM is not set |
775 | # CONFIG_AGP is not set | ||
776 | # CONFIG_DRM is not set | ||
777 | 852 | ||
778 | # | 853 | # |
779 | # PCMCIA character devices | 854 | # PCMCIA character devices |
@@ -781,60 +856,70 @@ CONFIG_GEN_RTC_X=y | |||
781 | # CONFIG_SYNCLINK_CS is not set | 856 | # CONFIG_SYNCLINK_CS is not set |
782 | # CONFIG_CARDMAN_4000 is not set | 857 | # CONFIG_CARDMAN_4000 is not set |
783 | # CONFIG_CARDMAN_4040 is not set | 858 | # CONFIG_CARDMAN_4040 is not set |
859 | # CONFIG_IPWIRELESS is not set | ||
784 | # CONFIG_RAW_DRIVER is not set | 860 | # CONFIG_RAW_DRIVER is not set |
785 | # CONFIG_TCG_TPM is not set | 861 | # CONFIG_TCG_TPM is not set |
786 | CONFIG_DEVPORT=y | 862 | CONFIG_DEVPORT=y |
787 | # CONFIG_I2C is not set | 863 | # CONFIG_I2C is not set |
788 | |||
789 | # | ||
790 | # SPI support | ||
791 | # | ||
792 | # CONFIG_SPI is not set | 864 | # CONFIG_SPI is not set |
793 | # CONFIG_SPI_MASTER is not set | ||
794 | # CONFIG_W1 is not set | 865 | # CONFIG_W1 is not set |
795 | # CONFIG_POWER_SUPPLY is not set | 866 | # CONFIG_POWER_SUPPLY is not set |
796 | # CONFIG_HWMON is not set | 867 | # CONFIG_HWMON is not set |
868 | # CONFIG_THERMAL is not set | ||
869 | # CONFIG_THERMAL_HWMON is not set | ||
870 | # CONFIG_WATCHDOG is not set | ||
871 | CONFIG_SSB_POSSIBLE=y | ||
797 | 872 | ||
798 | # | 873 | # |
799 | # Sonics Silicon Backplane | 874 | # Sonics Silicon Backplane |
800 | # | 875 | # |
801 | CONFIG_SSB_POSSIBLE=y | ||
802 | # CONFIG_SSB is not set | 876 | # CONFIG_SSB is not set |
803 | 877 | ||
804 | # | 878 | # |
805 | # Multifunction device drivers | 879 | # Multifunction device drivers |
806 | # | 880 | # |
881 | # CONFIG_MFD_CORE is not set | ||
807 | # CONFIG_MFD_SM501 is not set | 882 | # CONFIG_MFD_SM501 is not set |
883 | # CONFIG_HTC_PASIC3 is not set | ||
884 | # CONFIG_MFD_TMIO is not set | ||
885 | # CONFIG_REGULATOR is not set | ||
808 | 886 | ||
809 | # | 887 | # |
810 | # Multimedia devices | 888 | # Multimedia devices |
811 | # | 889 | # |
890 | |||
891 | # | ||
892 | # Multimedia core support | ||
893 | # | ||
812 | # CONFIG_VIDEO_DEV is not set | 894 | # CONFIG_VIDEO_DEV is not set |
813 | # CONFIG_DVB_CORE is not set | 895 | # CONFIG_DVB_CORE is not set |
814 | # CONFIG_DAB is not set | 896 | # CONFIG_VIDEO_MEDIA is not set |
815 | 897 | ||
816 | # | 898 | # |
817 | # Graphics support | 899 | # Multimedia drivers |
818 | # | 900 | # |
819 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | 901 | # CONFIG_DAB is not set |
820 | 902 | ||
821 | # | 903 | # |
822 | # Display device support | 904 | # Graphics support |
823 | # | 905 | # |
824 | # CONFIG_DISPLAY_SUPPORT is not set | 906 | # CONFIG_AGP is not set |
907 | # CONFIG_DRM is not set | ||
825 | # CONFIG_VGASTATE is not set | 908 | # CONFIG_VGASTATE is not set |
826 | CONFIG_VIDEO_OUTPUT_CONTROL=m | 909 | CONFIG_VIDEO_OUTPUT_CONTROL=m |
827 | CONFIG_FB=y | 910 | CONFIG_FB=y |
828 | # CONFIG_FIRMWARE_EDID is not set | 911 | # CONFIG_FIRMWARE_EDID is not set |
829 | # CONFIG_FB_DDC is not set | 912 | # CONFIG_FB_DDC is not set |
913 | # CONFIG_FB_BOOT_VESA_SUPPORT is not set | ||
830 | CONFIG_FB_CFB_FILLRECT=y | 914 | CONFIG_FB_CFB_FILLRECT=y |
831 | CONFIG_FB_CFB_COPYAREA=y | 915 | CONFIG_FB_CFB_COPYAREA=y |
832 | CONFIG_FB_CFB_IMAGEBLIT=y | 916 | CONFIG_FB_CFB_IMAGEBLIT=y |
917 | # CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set | ||
833 | # CONFIG_FB_SYS_FILLRECT is not set | 918 | # CONFIG_FB_SYS_FILLRECT is not set |
834 | # CONFIG_FB_SYS_COPYAREA is not set | 919 | # CONFIG_FB_SYS_COPYAREA is not set |
835 | # CONFIG_FB_SYS_IMAGEBLIT is not set | 920 | # CONFIG_FB_SYS_IMAGEBLIT is not set |
921 | # CONFIG_FB_FOREIGN_ENDIAN is not set | ||
836 | # CONFIG_FB_SYS_FOPS is not set | 922 | # CONFIG_FB_SYS_FOPS is not set |
837 | CONFIG_FB_DEFERRED_IO=y | ||
838 | # CONFIG_FB_SVGALIB is not set | 923 | # CONFIG_FB_SVGALIB is not set |
839 | # CONFIG_FB_MACMODES is not set | 924 | # CONFIG_FB_MACMODES is not set |
840 | # CONFIG_FB_BACKLIGHT is not set | 925 | # CONFIG_FB_BACKLIGHT is not set |
@@ -860,6 +945,7 @@ CONFIG_FB_STI=y | |||
860 | # CONFIG_FB_S3 is not set | 945 | # CONFIG_FB_S3 is not set |
861 | # CONFIG_FB_SAVAGE is not set | 946 | # CONFIG_FB_SAVAGE is not set |
862 | # CONFIG_FB_SIS is not set | 947 | # CONFIG_FB_SIS is not set |
948 | # CONFIG_FB_VIA is not set | ||
863 | # CONFIG_FB_NEOMAGIC is not set | 949 | # CONFIG_FB_NEOMAGIC is not set |
864 | # CONFIG_FB_KYRO is not set | 950 | # CONFIG_FB_KYRO is not set |
865 | # CONFIG_FB_3DFX is not set | 951 | # CONFIG_FB_3DFX is not set |
@@ -868,7 +954,16 @@ CONFIG_FB_STI=y | |||
868 | # CONFIG_FB_TRIDENT is not set | 954 | # CONFIG_FB_TRIDENT is not set |
869 | # CONFIG_FB_ARK is not set | 955 | # CONFIG_FB_ARK is not set |
870 | # CONFIG_FB_PM3 is not set | 956 | # CONFIG_FB_PM3 is not set |
957 | # CONFIG_FB_CARMINE is not set | ||
871 | # CONFIG_FB_VIRTUAL is not set | 958 | # CONFIG_FB_VIRTUAL is not set |
959 | # CONFIG_FB_METRONOME is not set | ||
960 | # CONFIG_FB_MB862XX is not set | ||
961 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
962 | |||
963 | # | ||
964 | # Display device support | ||
965 | # | ||
966 | # CONFIG_DISPLAY_SUPPORT is not set | ||
872 | 967 | ||
873 | # | 968 | # |
874 | # Console display driver support | 969 | # Console display driver support |
@@ -896,15 +991,8 @@ CONFIG_LOGO=y | |||
896 | # CONFIG_LOGO_LINUX_VGA16 is not set | 991 | # CONFIG_LOGO_LINUX_VGA16 is not set |
897 | # CONFIG_LOGO_LINUX_CLUT224 is not set | 992 | # CONFIG_LOGO_LINUX_CLUT224 is not set |
898 | CONFIG_LOGO_PARISC_CLUT224=y | 993 | CONFIG_LOGO_PARISC_CLUT224=y |
899 | |||
900 | # | ||
901 | # Sound | ||
902 | # | ||
903 | CONFIG_SOUND=y | 994 | CONFIG_SOUND=y |
904 | 995 | CONFIG_SOUND_OSS_CORE=y | |
905 | # | ||
906 | # Advanced Linux Sound Architecture | ||
907 | # | ||
908 | CONFIG_SND=y | 996 | CONFIG_SND=y |
909 | CONFIG_SND_TIMER=y | 997 | CONFIG_SND_TIMER=y |
910 | CONFIG_SND_PCM=y | 998 | CONFIG_SND_PCM=y |
@@ -920,11 +1008,9 @@ CONFIG_SND_SUPPORT_OLD_API=y | |||
920 | CONFIG_SND_VERBOSE_PROCFS=y | 1008 | CONFIG_SND_VERBOSE_PROCFS=y |
921 | # CONFIG_SND_VERBOSE_PRINTK is not set | 1009 | # CONFIG_SND_VERBOSE_PRINTK is not set |
922 | # CONFIG_SND_DEBUG is not set | 1010 | # CONFIG_SND_DEBUG is not set |
923 | 1011 | CONFIG_SND_VMASTER=y | |
924 | # | ||
925 | # Generic devices | ||
926 | # | ||
927 | CONFIG_SND_AC97_CODEC=y | 1012 | CONFIG_SND_AC97_CODEC=y |
1013 | CONFIG_SND_DRIVERS=y | ||
928 | # CONFIG_SND_DUMMY is not set | 1014 | # CONFIG_SND_DUMMY is not set |
929 | # CONFIG_SND_VIRMIDI is not set | 1015 | # CONFIG_SND_VIRMIDI is not set |
930 | # CONFIG_SND_MTPAV is not set | 1016 | # CONFIG_SND_MTPAV is not set |
@@ -932,10 +1018,8 @@ CONFIG_SND_AC97_CODEC=y | |||
932 | # CONFIG_SND_SERIAL_U16550 is not set | 1018 | # CONFIG_SND_SERIAL_U16550 is not set |
933 | # CONFIG_SND_MPU401 is not set | 1019 | # CONFIG_SND_MPU401 is not set |
934 | # CONFIG_SND_PORTMAN2X4 is not set | 1020 | # CONFIG_SND_PORTMAN2X4 is not set |
935 | 1021 | # CONFIG_SND_AC97_POWER_SAVE is not set | |
936 | # | 1022 | CONFIG_SND_PCI=y |
937 | # PCI devices | ||
938 | # | ||
939 | CONFIG_SND_AD1889=y | 1023 | CONFIG_SND_AD1889=y |
940 | # CONFIG_SND_ALS300 is not set | 1024 | # CONFIG_SND_ALS300 is not set |
941 | # CONFIG_SND_ALI5451 is not set | 1025 | # CONFIG_SND_ALI5451 is not set |
@@ -944,10 +1028,12 @@ CONFIG_SND_AD1889=y | |||
944 | # CONFIG_SND_AU8810 is not set | 1028 | # CONFIG_SND_AU8810 is not set |
945 | # CONFIG_SND_AU8820 is not set | 1029 | # CONFIG_SND_AU8820 is not set |
946 | # CONFIG_SND_AU8830 is not set | 1030 | # CONFIG_SND_AU8830 is not set |
1031 | # CONFIG_SND_AW2 is not set | ||
947 | # CONFIG_SND_AZT3328 is not set | 1032 | # CONFIG_SND_AZT3328 is not set |
948 | # CONFIG_SND_BT87X is not set | 1033 | # CONFIG_SND_BT87X is not set |
949 | # CONFIG_SND_CA0106 is not set | 1034 | # CONFIG_SND_CA0106 is not set |
950 | # CONFIG_SND_CMIPCI is not set | 1035 | # CONFIG_SND_CMIPCI is not set |
1036 | # CONFIG_SND_OXYGEN is not set | ||
951 | # CONFIG_SND_CS4281 is not set | 1037 | # CONFIG_SND_CS4281 is not set |
952 | # CONFIG_SND_CS46XX is not set | 1038 | # CONFIG_SND_CS46XX is not set |
953 | # CONFIG_SND_DARLA20 is not set | 1039 | # CONFIG_SND_DARLA20 is not set |
@@ -972,6 +1058,7 @@ CONFIG_SND_AD1889=y | |||
972 | # CONFIG_SND_HDA_INTEL is not set | 1058 | # CONFIG_SND_HDA_INTEL is not set |
973 | # CONFIG_SND_HDSP is not set | 1059 | # CONFIG_SND_HDSP is not set |
974 | # CONFIG_SND_HDSPM is not set | 1060 | # CONFIG_SND_HDSPM is not set |
1061 | # CONFIG_SND_HIFIER is not set | ||
975 | # CONFIG_SND_ICE1712 is not set | 1062 | # CONFIG_SND_ICE1712 is not set |
976 | # CONFIG_SND_ICE1724 is not set | 1063 | # CONFIG_SND_ICE1724 is not set |
977 | # CONFIG_SND_INTEL8X0 is not set | 1064 | # CONFIG_SND_INTEL8X0 is not set |
@@ -989,58 +1076,67 @@ CONFIG_SND_AD1889=y | |||
989 | # CONFIG_SND_TRIDENT is not set | 1076 | # CONFIG_SND_TRIDENT is not set |
990 | # CONFIG_SND_VIA82XX is not set | 1077 | # CONFIG_SND_VIA82XX is not set |
991 | # CONFIG_SND_VIA82XX_MODEM is not set | 1078 | # CONFIG_SND_VIA82XX_MODEM is not set |
1079 | # CONFIG_SND_VIRTUOSO is not set | ||
992 | # CONFIG_SND_VX222 is not set | 1080 | # CONFIG_SND_VX222 is not set |
993 | # CONFIG_SND_YMFPCI is not set | 1081 | # CONFIG_SND_YMFPCI is not set |
994 | # CONFIG_SND_AC97_POWER_SAVE is not set | 1082 | CONFIG_SND_USB=y |
995 | |||
996 | # | ||
997 | # USB devices | ||
998 | # | ||
999 | # CONFIG_SND_USB_AUDIO is not set | 1083 | # CONFIG_SND_USB_AUDIO is not set |
1000 | # CONFIG_SND_USB_CAIAQ is not set | 1084 | # CONFIG_SND_USB_CAIAQ is not set |
1001 | 1085 | CONFIG_SND_PCMCIA=y | |
1002 | # | ||
1003 | # PCMCIA devices | ||
1004 | # | ||
1005 | # CONFIG_SND_VXPOCKET is not set | 1086 | # CONFIG_SND_VXPOCKET is not set |
1006 | # CONFIG_SND_PDAUDIOCF is not set | 1087 | # CONFIG_SND_PDAUDIOCF is not set |
1007 | 1088 | CONFIG_SND_GSC=y | |
1008 | # | ||
1009 | # GSC devices | ||
1010 | # | ||
1011 | CONFIG_SND_HARMONY=y | 1089 | CONFIG_SND_HARMONY=y |
1012 | |||
1013 | # | ||
1014 | # System on Chip audio support | ||
1015 | # | ||
1016 | # CONFIG_SND_SOC is not set | 1090 | # CONFIG_SND_SOC is not set |
1017 | |||
1018 | # | ||
1019 | # SoC Audio support for SuperH | ||
1020 | # | ||
1021 | |||
1022 | # | ||
1023 | # Open Sound System | ||
1024 | # | ||
1025 | # CONFIG_SOUND_PRIME is not set | 1091 | # CONFIG_SOUND_PRIME is not set |
1026 | CONFIG_AC97_BUS=y | 1092 | CONFIG_AC97_BUS=y |
1027 | CONFIG_HID_SUPPORT=y | 1093 | CONFIG_HID_SUPPORT=y |
1028 | CONFIG_HID=y | 1094 | CONFIG_HID=y |
1029 | CONFIG_HID_DEBUG=y | 1095 | CONFIG_HID_DEBUG=y |
1096 | # CONFIG_HIDRAW is not set | ||
1030 | 1097 | ||
1031 | # | 1098 | # |
1032 | # USB Input Devices | 1099 | # USB Input Devices |
1033 | # | 1100 | # |
1034 | CONFIG_USB_HID=y | 1101 | CONFIG_USB_HID=y |
1035 | # CONFIG_USB_HIDINPUT_POWERBOOK is not set | 1102 | # CONFIG_HID_PID is not set |
1036 | # CONFIG_HID_FF is not set | ||
1037 | # CONFIG_USB_HIDDEV is not set | 1103 | # CONFIG_USB_HIDDEV is not set |
1104 | |||
1105 | # | ||
1106 | # Special HID drivers | ||
1107 | # | ||
1108 | CONFIG_HID_COMPAT=y | ||
1109 | CONFIG_HID_A4TECH=y | ||
1110 | CONFIG_HID_APPLE=y | ||
1111 | CONFIG_HID_BELKIN=y | ||
1112 | CONFIG_HID_CHERRY=y | ||
1113 | CONFIG_HID_CHICONY=y | ||
1114 | CONFIG_HID_CYPRESS=y | ||
1115 | CONFIG_HID_EZKEY=y | ||
1116 | CONFIG_HID_GYRATION=y | ||
1117 | CONFIG_HID_LOGITECH=y | ||
1118 | # CONFIG_LOGITECH_FF is not set | ||
1119 | # CONFIG_LOGIRUMBLEPAD2_FF is not set | ||
1120 | CONFIG_HID_MICROSOFT=y | ||
1121 | CONFIG_HID_MONTEREY=y | ||
1122 | CONFIG_HID_NTRIG=y | ||
1123 | CONFIG_HID_PANTHERLORD=y | ||
1124 | # CONFIG_PANTHERLORD_FF is not set | ||
1125 | CONFIG_HID_PETALYNX=y | ||
1126 | CONFIG_HID_SAMSUNG=y | ||
1127 | CONFIG_HID_SONY=y | ||
1128 | CONFIG_HID_SUNPLUS=y | ||
1129 | # CONFIG_GREENASIA_FF is not set | ||
1130 | CONFIG_HID_TOPSEED=y | ||
1131 | # CONFIG_THRUSTMASTER_FF is not set | ||
1132 | # CONFIG_ZEROPLUS_FF is not set | ||
1038 | CONFIG_USB_SUPPORT=y | 1133 | CONFIG_USB_SUPPORT=y |
1039 | CONFIG_USB_ARCH_HAS_HCD=y | 1134 | CONFIG_USB_ARCH_HAS_HCD=y |
1040 | CONFIG_USB_ARCH_HAS_OHCI=y | 1135 | CONFIG_USB_ARCH_HAS_OHCI=y |
1041 | CONFIG_USB_ARCH_HAS_EHCI=y | 1136 | CONFIG_USB_ARCH_HAS_EHCI=y |
1042 | CONFIG_USB=y | 1137 | CONFIG_USB=y |
1043 | # CONFIG_USB_DEBUG is not set | 1138 | # CONFIG_USB_DEBUG is not set |
1139 | # CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set | ||
1044 | 1140 | ||
1045 | # | 1141 | # |
1046 | # Miscellaneous USB options | 1142 | # Miscellaneous USB options |
@@ -1049,12 +1145,18 @@ CONFIG_USB_DEVICEFS=y | |||
1049 | CONFIG_USB_DEVICE_CLASS=y | 1145 | CONFIG_USB_DEVICE_CLASS=y |
1050 | # CONFIG_USB_DYNAMIC_MINORS is not set | 1146 | # CONFIG_USB_DYNAMIC_MINORS is not set |
1051 | # CONFIG_USB_OTG is not set | 1147 | # CONFIG_USB_OTG is not set |
1148 | CONFIG_USB_MON=y | ||
1149 | # CONFIG_USB_WUSB is not set | ||
1150 | # CONFIG_USB_WUSB_CBAF is not set | ||
1052 | 1151 | ||
1053 | # | 1152 | # |
1054 | # USB Host Controller Drivers | 1153 | # USB Host Controller Drivers |
1055 | # | 1154 | # |
1155 | # CONFIG_USB_C67X00_HCD is not set | ||
1056 | # CONFIG_USB_EHCI_HCD is not set | 1156 | # CONFIG_USB_EHCI_HCD is not set |
1157 | # CONFIG_USB_OXU210HP_HCD is not set | ||
1057 | # CONFIG_USB_ISP116X_HCD is not set | 1158 | # CONFIG_USB_ISP116X_HCD is not set |
1159 | # CONFIG_USB_ISP1760_HCD is not set | ||
1058 | CONFIG_USB_OHCI_HCD=y | 1160 | CONFIG_USB_OHCI_HCD=y |
1059 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set | 1161 | # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set |
1060 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set | 1162 | # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set |
@@ -1062,19 +1164,23 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y | |||
1062 | CONFIG_USB_UHCI_HCD=y | 1164 | CONFIG_USB_UHCI_HCD=y |
1063 | # CONFIG_USB_SL811_HCD is not set | 1165 | # CONFIG_USB_SL811_HCD is not set |
1064 | # CONFIG_USB_R8A66597_HCD is not set | 1166 | # CONFIG_USB_R8A66597_HCD is not set |
1167 | # CONFIG_USB_WHCI_HCD is not set | ||
1168 | # CONFIG_USB_HWA_HCD is not set | ||
1065 | 1169 | ||
1066 | # | 1170 | # |
1067 | # USB Device Class drivers | 1171 | # USB Device Class drivers |
1068 | # | 1172 | # |
1069 | # CONFIG_USB_ACM is not set | 1173 | # CONFIG_USB_ACM is not set |
1070 | # CONFIG_USB_PRINTER is not set | 1174 | # CONFIG_USB_PRINTER is not set |
1175 | # CONFIG_USB_WDM is not set | ||
1176 | # CONFIG_USB_TMC is not set | ||
1071 | 1177 | ||
1072 | # | 1178 | # |
1073 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 1179 | # NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed; |
1074 | # | 1180 | # |
1075 | 1181 | ||
1076 | # | 1182 | # |
1077 | # may also be needed; see USB_STORAGE Help for more information | 1183 | # see USB_STORAGE Help for more information |
1078 | # | 1184 | # |
1079 | # CONFIG_USB_STORAGE is not set | 1185 | # CONFIG_USB_STORAGE is not set |
1080 | # CONFIG_USB_LIBUSUAL is not set | 1186 | # CONFIG_USB_LIBUSUAL is not set |
@@ -1084,16 +1190,11 @@ CONFIG_USB_UHCI_HCD=y | |||
1084 | # | 1190 | # |
1085 | # CONFIG_USB_MDC800 is not set | 1191 | # CONFIG_USB_MDC800 is not set |
1086 | # CONFIG_USB_MICROTEK is not set | 1192 | # CONFIG_USB_MICROTEK is not set |
1087 | CONFIG_USB_MON=y | ||
1088 | 1193 | ||
1089 | # | 1194 | # |
1090 | # USB port drivers | 1195 | # USB port drivers |
1091 | # | 1196 | # |
1092 | # CONFIG_USB_USS720 is not set | 1197 | # CONFIG_USB_USS720 is not set |
1093 | |||
1094 | # | ||
1095 | # USB Serial Converter support | ||
1096 | # | ||
1097 | # CONFIG_USB_SERIAL is not set | 1198 | # CONFIG_USB_SERIAL is not set |
1098 | 1199 | ||
1099 | # | 1200 | # |
@@ -1102,7 +1203,7 @@ CONFIG_USB_MON=y | |||
1102 | # CONFIG_USB_EMI62 is not set | 1203 | # CONFIG_USB_EMI62 is not set |
1103 | # CONFIG_USB_EMI26 is not set | 1204 | # CONFIG_USB_EMI26 is not set |
1104 | # CONFIG_USB_ADUTUX is not set | 1205 | # CONFIG_USB_ADUTUX is not set |
1105 | # CONFIG_USB_AUERSWALD is not set | 1206 | # CONFIG_USB_SEVSEG is not set |
1106 | # CONFIG_USB_RIO500 is not set | 1207 | # CONFIG_USB_RIO500 is not set |
1107 | # CONFIG_USB_LEGOTOWER is not set | 1208 | # CONFIG_USB_LEGOTOWER is not set |
1108 | # CONFIG_USB_LCD is not set | 1209 | # CONFIG_USB_LCD is not set |
@@ -1118,38 +1219,60 @@ CONFIG_USB_MON=y | |||
1118 | # CONFIG_USB_TRANCEVIBRATOR is not set | 1219 | # CONFIG_USB_TRANCEVIBRATOR is not set |
1119 | # CONFIG_USB_IOWARRIOR is not set | 1220 | # CONFIG_USB_IOWARRIOR is not set |
1120 | # CONFIG_USB_TEST is not set | 1221 | # CONFIG_USB_TEST is not set |
1222 | # CONFIG_USB_ISIGHTFW is not set | ||
1223 | # CONFIG_USB_VST is not set | ||
1224 | # CONFIG_USB_GADGET is not set | ||
1121 | 1225 | ||
1122 | # | 1226 | # |
1123 | # USB DSL modem support | 1227 | # OTG and related infrastructure |
1124 | # | ||
1125 | |||
1126 | # | ||
1127 | # USB Gadget Support | ||
1128 | # | 1228 | # |
1129 | # CONFIG_USB_GADGET is not set | 1229 | # CONFIG_UWB is not set |
1130 | # CONFIG_MMC is not set | 1230 | # CONFIG_MMC is not set |
1231 | # CONFIG_MEMSTICK is not set | ||
1131 | # CONFIG_NEW_LEDS is not set | 1232 | # CONFIG_NEW_LEDS is not set |
1233 | # CONFIG_ACCESSIBILITY is not set | ||
1132 | # CONFIG_INFINIBAND is not set | 1234 | # CONFIG_INFINIBAND is not set |
1133 | # CONFIG_RTC_CLASS is not set | 1235 | CONFIG_RTC_LIB=y |
1236 | CONFIG_RTC_CLASS=y | ||
1237 | CONFIG_RTC_HCTOSYS=y | ||
1238 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
1239 | # CONFIG_RTC_DEBUG is not set | ||
1134 | 1240 | ||
1135 | # | 1241 | # |
1136 | # DMA Engine support | 1242 | # RTC interfaces |
1137 | # | 1243 | # |
1138 | # CONFIG_DMA_ENGINE is not set | 1244 | CONFIG_RTC_INTF_SYSFS=y |
1245 | CONFIG_RTC_INTF_PROC=y | ||
1246 | CONFIG_RTC_INTF_DEV=y | ||
1247 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
1248 | # CONFIG_RTC_DRV_TEST is not set | ||
1139 | 1249 | ||
1140 | # | 1250 | # |
1141 | # DMA Clients | 1251 | # SPI RTC drivers |
1142 | # | 1252 | # |
1143 | 1253 | ||
1144 | # | 1254 | # |
1145 | # DMA Devices | 1255 | # Platform RTC drivers |
1146 | # | 1256 | # |
1147 | # CONFIG_AUXDISPLAY is not set | 1257 | # CONFIG_RTC_DRV_DS1286 is not set |
1258 | # CONFIG_RTC_DRV_DS1511 is not set | ||
1259 | # CONFIG_RTC_DRV_DS1553 is not set | ||
1260 | # CONFIG_RTC_DRV_DS1742 is not set | ||
1261 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
1262 | # CONFIG_RTC_DRV_M48T86 is not set | ||
1263 | # CONFIG_RTC_DRV_M48T35 is not set | ||
1264 | # CONFIG_RTC_DRV_M48T59 is not set | ||
1265 | # CONFIG_RTC_DRV_BQ4802 is not set | ||
1266 | # CONFIG_RTC_DRV_V3020 is not set | ||
1148 | 1267 | ||
1149 | # | 1268 | # |
1150 | # Userspace I/O | 1269 | # on-CPU RTC drivers |
1151 | # | 1270 | # |
1271 | CONFIG_RTC_DRV_PARISC=y | ||
1272 | # CONFIG_DMADEVICES is not set | ||
1273 | # CONFIG_AUXDISPLAY is not set | ||
1152 | # CONFIG_UIO is not set | 1274 | # CONFIG_UIO is not set |
1275 | # CONFIG_STAGING is not set | ||
1153 | 1276 | ||
1154 | # | 1277 | # |
1155 | # File systems | 1278 | # File systems |
@@ -1159,21 +1282,20 @@ CONFIG_EXT2_FS=y | |||
1159 | # CONFIG_EXT2_FS_XIP is not set | 1282 | # CONFIG_EXT2_FS_XIP is not set |
1160 | CONFIG_EXT3_FS=y | 1283 | CONFIG_EXT3_FS=y |
1161 | # CONFIG_EXT3_FS_XATTR is not set | 1284 | # CONFIG_EXT3_FS_XATTR is not set |
1162 | # CONFIG_EXT4DEV_FS is not set | 1285 | # CONFIG_EXT4_FS is not set |
1163 | CONFIG_JBD=y | 1286 | CONFIG_JBD=y |
1164 | # CONFIG_JBD_DEBUG is not set | 1287 | # CONFIG_JBD_DEBUG is not set |
1165 | # CONFIG_REISERFS_FS is not set | 1288 | # CONFIG_REISERFS_FS is not set |
1166 | # CONFIG_JFS_FS is not set | 1289 | # CONFIG_JFS_FS is not set |
1167 | CONFIG_FS_POSIX_ACL=y | 1290 | CONFIG_FS_POSIX_ACL=y |
1291 | CONFIG_FILE_LOCKING=y | ||
1168 | # CONFIG_XFS_FS is not set | 1292 | # CONFIG_XFS_FS is not set |
1169 | # CONFIG_GFS2_FS is not set | ||
1170 | # CONFIG_OCFS2_FS is not set | 1293 | # CONFIG_OCFS2_FS is not set |
1171 | # CONFIG_MINIX_FS is not set | 1294 | # CONFIG_BTRFS_FS is not set |
1172 | # CONFIG_ROMFS_FS is not set | 1295 | CONFIG_DNOTIFY=y |
1173 | CONFIG_INOTIFY=y | 1296 | CONFIG_INOTIFY=y |
1174 | CONFIG_INOTIFY_USER=y | 1297 | CONFIG_INOTIFY_USER=y |
1175 | # CONFIG_QUOTA is not set | 1298 | # CONFIG_QUOTA is not set |
1176 | CONFIG_DNOTIFY=y | ||
1177 | CONFIG_AUTOFS_FS=y | 1299 | CONFIG_AUTOFS_FS=y |
1178 | # CONFIG_AUTOFS4_FS is not set | 1300 | # CONFIG_AUTOFS4_FS is not set |
1179 | # CONFIG_FUSE_FS is not set | 1301 | # CONFIG_FUSE_FS is not set |
@@ -1202,16 +1324,13 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" | |||
1202 | CONFIG_PROC_FS=y | 1324 | CONFIG_PROC_FS=y |
1203 | CONFIG_PROC_KCORE=y | 1325 | CONFIG_PROC_KCORE=y |
1204 | CONFIG_PROC_SYSCTL=y | 1326 | CONFIG_PROC_SYSCTL=y |
1327 | CONFIG_PROC_PAGE_MONITOR=y | ||
1205 | CONFIG_SYSFS=y | 1328 | CONFIG_SYSFS=y |
1206 | CONFIG_TMPFS=y | 1329 | CONFIG_TMPFS=y |
1207 | # CONFIG_TMPFS_POSIX_ACL is not set | 1330 | # CONFIG_TMPFS_POSIX_ACL is not set |
1208 | # CONFIG_HUGETLB_PAGE is not set | 1331 | # CONFIG_HUGETLB_PAGE is not set |
1209 | CONFIG_RAMFS=y | ||
1210 | # CONFIG_CONFIGFS_FS is not set | 1332 | # CONFIG_CONFIGFS_FS is not set |
1211 | 1333 | CONFIG_MISC_FILESYSTEMS=y | |
1212 | # | ||
1213 | # Miscellaneous filesystems | ||
1214 | # | ||
1215 | # CONFIG_ADFS_FS is not set | 1334 | # CONFIG_ADFS_FS is not set |
1216 | # CONFIG_AFFS_FS is not set | 1335 | # CONFIG_AFFS_FS is not set |
1217 | # CONFIG_ECRYPT_FS is not set | 1336 | # CONFIG_ECRYPT_FS is not set |
@@ -1221,33 +1340,32 @@ CONFIG_RAMFS=y | |||
1221 | # CONFIG_BFS_FS is not set | 1340 | # CONFIG_BFS_FS is not set |
1222 | # CONFIG_EFS_FS is not set | 1341 | # CONFIG_EFS_FS is not set |
1223 | # CONFIG_CRAMFS is not set | 1342 | # CONFIG_CRAMFS is not set |
1343 | # CONFIG_SQUASHFS is not set | ||
1224 | # CONFIG_VXFS_FS is not set | 1344 | # CONFIG_VXFS_FS is not set |
1345 | # CONFIG_MINIX_FS is not set | ||
1346 | # CONFIG_OMFS_FS is not set | ||
1225 | # CONFIG_HPFS_FS is not set | 1347 | # CONFIG_HPFS_FS is not set |
1226 | # CONFIG_QNX4FS_FS is not set | 1348 | # CONFIG_QNX4FS_FS is not set |
1349 | # CONFIG_ROMFS_FS is not set | ||
1227 | # CONFIG_SYSV_FS is not set | 1350 | # CONFIG_SYSV_FS is not set |
1228 | # CONFIG_UFS_FS is not set | 1351 | # CONFIG_UFS_FS is not set |
1229 | 1352 | CONFIG_NETWORK_FILESYSTEMS=y | |
1230 | # | ||
1231 | # Network File Systems | ||
1232 | # | ||
1233 | CONFIG_NFS_FS=y | 1353 | CONFIG_NFS_FS=y |
1234 | CONFIG_NFS_V3=y | 1354 | CONFIG_NFS_V3=y |
1235 | # CONFIG_NFS_V3_ACL is not set | 1355 | # CONFIG_NFS_V3_ACL is not set |
1236 | # CONFIG_NFS_V4 is not set | 1356 | # CONFIG_NFS_V4 is not set |
1237 | # CONFIG_NFS_DIRECTIO is not set | 1357 | CONFIG_ROOT_NFS=y |
1238 | CONFIG_NFSD=y | 1358 | CONFIG_NFSD=y |
1239 | CONFIG_NFSD_V3=y | 1359 | CONFIG_NFSD_V3=y |
1240 | # CONFIG_NFSD_V3_ACL is not set | 1360 | # CONFIG_NFSD_V3_ACL is not set |
1241 | CONFIG_NFSD_V4=y | 1361 | CONFIG_NFSD_V4=y |
1242 | CONFIG_NFSD_TCP=y | ||
1243 | CONFIG_ROOT_NFS=y | ||
1244 | CONFIG_LOCKD=y | 1362 | CONFIG_LOCKD=y |
1245 | CONFIG_LOCKD_V4=y | 1363 | CONFIG_LOCKD_V4=y |
1246 | CONFIG_EXPORTFS=y | 1364 | CONFIG_EXPORTFS=y |
1247 | CONFIG_NFS_COMMON=y | 1365 | CONFIG_NFS_COMMON=y |
1248 | CONFIG_SUNRPC=y | 1366 | CONFIG_SUNRPC=y |
1249 | CONFIG_SUNRPC_GSS=y | 1367 | CONFIG_SUNRPC_GSS=y |
1250 | # CONFIG_SUNRPC_BIND34 is not set | 1368 | # CONFIG_SUNRPC_REGISTER_V4 is not set |
1251 | CONFIG_RPCSEC_GSS_KRB5=y | 1369 | CONFIG_RPCSEC_GSS_KRB5=y |
1252 | CONFIG_RPCSEC_GSS_SPKM3=m | 1370 | CONFIG_RPCSEC_GSS_SPKM3=m |
1253 | CONFIG_SMB_FS=m | 1371 | CONFIG_SMB_FS=m |
@@ -1256,6 +1374,7 @@ CONFIG_SMB_NLS_REMOTE="cp437" | |||
1256 | CONFIG_CIFS=m | 1374 | CONFIG_CIFS=m |
1257 | # CONFIG_CIFS_STATS is not set | 1375 | # CONFIG_CIFS_STATS is not set |
1258 | # CONFIG_CIFS_WEAK_PW_HASH is not set | 1376 | # CONFIG_CIFS_WEAK_PW_HASH is not set |
1377 | # CONFIG_CIFS_UPCALL is not set | ||
1259 | # CONFIG_CIFS_XATTR is not set | 1378 | # CONFIG_CIFS_XATTR is not set |
1260 | # CONFIG_CIFS_DEBUG2 is not set | 1379 | # CONFIG_CIFS_DEBUG2 is not set |
1261 | # CONFIG_CIFS_EXPERIMENTAL is not set | 1380 | # CONFIG_CIFS_EXPERIMENTAL is not set |
@@ -1268,10 +1387,6 @@ CONFIG_CIFS=m | |||
1268 | # | 1387 | # |
1269 | # CONFIG_PARTITION_ADVANCED is not set | 1388 | # CONFIG_PARTITION_ADVANCED is not set |
1270 | CONFIG_MSDOS_PARTITION=y | 1389 | CONFIG_MSDOS_PARTITION=y |
1271 | |||
1272 | # | ||
1273 | # Native Language Support | ||
1274 | # | ||
1275 | CONFIG_NLS=y | 1390 | CONFIG_NLS=y |
1276 | CONFIG_NLS_DEFAULT="iso8859-1" | 1391 | CONFIG_NLS_DEFAULT="iso8859-1" |
1277 | CONFIG_NLS_CODEPAGE_437=y | 1392 | CONFIG_NLS_CODEPAGE_437=y |
@@ -1312,33 +1427,28 @@ CONFIG_NLS_ISO8859_15=m | |||
1312 | CONFIG_NLS_KOI8_R=m | 1427 | CONFIG_NLS_KOI8_R=m |
1313 | CONFIG_NLS_KOI8_U=m | 1428 | CONFIG_NLS_KOI8_U=m |
1314 | CONFIG_NLS_UTF8=y | 1429 | CONFIG_NLS_UTF8=y |
1315 | |||
1316 | # | ||
1317 | # Distributed Lock Manager | ||
1318 | # | ||
1319 | # CONFIG_DLM is not set | 1430 | # CONFIG_DLM is not set |
1320 | 1431 | ||
1321 | # | 1432 | # |
1322 | # Profiling support | ||
1323 | # | ||
1324 | CONFIG_PROFILING=y | ||
1325 | CONFIG_OPROFILE=m | ||
1326 | |||
1327 | # | ||
1328 | # Kernel hacking | 1433 | # Kernel hacking |
1329 | # | 1434 | # |
1330 | # CONFIG_PRINTK_TIME is not set | 1435 | # CONFIG_PRINTK_TIME is not set |
1436 | CONFIG_ENABLE_WARN_DEPRECATED=y | ||
1331 | CONFIG_ENABLE_MUST_CHECK=y | 1437 | CONFIG_ENABLE_MUST_CHECK=y |
1438 | CONFIG_FRAME_WARN=1024 | ||
1332 | CONFIG_MAGIC_SYSRQ=y | 1439 | CONFIG_MAGIC_SYSRQ=y |
1333 | # CONFIG_UNUSED_SYMBOLS is not set | 1440 | # CONFIG_UNUSED_SYMBOLS is not set |
1334 | # CONFIG_DEBUG_FS is not set | 1441 | CONFIG_DEBUG_FS=y |
1335 | CONFIG_HEADERS_CHECK=y | 1442 | CONFIG_HEADERS_CHECK=y |
1336 | CONFIG_DEBUG_KERNEL=y | 1443 | CONFIG_DEBUG_KERNEL=y |
1337 | # CONFIG_DEBUG_SHIRQ is not set | 1444 | # CONFIG_DEBUG_SHIRQ is not set |
1338 | CONFIG_DETECT_SOFTLOCKUP=y | 1445 | CONFIG_DETECT_SOFTLOCKUP=y |
1446 | # CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set | ||
1447 | CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 | ||
1339 | CONFIG_SCHED_DEBUG=y | 1448 | CONFIG_SCHED_DEBUG=y |
1340 | # CONFIG_SCHEDSTATS is not set | 1449 | # CONFIG_SCHEDSTATS is not set |
1341 | # CONFIG_TIMER_STATS is not set | 1450 | # CONFIG_TIMER_STATS is not set |
1451 | # CONFIG_DEBUG_OBJECTS is not set | ||
1342 | # CONFIG_DEBUG_SLAB is not set | 1452 | # CONFIG_DEBUG_SLAB is not set |
1343 | # CONFIG_DEBUG_RT_MUTEXES is not set | 1453 | # CONFIG_DEBUG_RT_MUTEXES is not set |
1344 | # CONFIG_RT_MUTEX_TESTER is not set | 1454 | # CONFIG_RT_MUTEX_TESTER is not set |
@@ -1350,10 +1460,33 @@ CONFIG_DEBUG_MUTEXES=y | |||
1350 | CONFIG_DEBUG_BUGVERBOSE=y | 1460 | CONFIG_DEBUG_BUGVERBOSE=y |
1351 | # CONFIG_DEBUG_INFO is not set | 1461 | # CONFIG_DEBUG_INFO is not set |
1352 | # CONFIG_DEBUG_VM is not set | 1462 | # CONFIG_DEBUG_VM is not set |
1463 | # CONFIG_DEBUG_WRITECOUNT is not set | ||
1464 | CONFIG_DEBUG_MEMORY_INIT=y | ||
1353 | # CONFIG_DEBUG_LIST is not set | 1465 | # CONFIG_DEBUG_LIST is not set |
1354 | CONFIG_FORCED_INLINING=y | 1466 | # CONFIG_DEBUG_SG is not set |
1467 | # CONFIG_DEBUG_NOTIFIERS is not set | ||
1468 | # CONFIG_BOOT_PRINTK_DELAY is not set | ||
1355 | # CONFIG_RCU_TORTURE_TEST is not set | 1469 | # CONFIG_RCU_TORTURE_TEST is not set |
1470 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||
1471 | # CONFIG_BACKTRACE_SELF_TEST is not set | ||
1472 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | ||
1356 | # CONFIG_FAULT_INJECTION is not set | 1473 | # CONFIG_FAULT_INJECTION is not set |
1474 | # CONFIG_SYSCTL_SYSCALL_CHECK is not set | ||
1475 | CONFIG_NOP_TRACER=y | ||
1476 | CONFIG_RING_BUFFER=y | ||
1477 | CONFIG_TRACING=y | ||
1478 | |||
1479 | # | ||
1480 | # Tracers | ||
1481 | # | ||
1482 | # CONFIG_SCHED_TRACER is not set | ||
1483 | # CONFIG_CONTEXT_SWITCH_TRACER is not set | ||
1484 | # CONFIG_BOOT_TRACER is not set | ||
1485 | # CONFIG_TRACE_BRANCH_PROFILING is not set | ||
1486 | # CONFIG_FTRACE_STARTUP_TEST is not set | ||
1487 | # CONFIG_BUILD_DOCSRC is not set | ||
1488 | # CONFIG_DYNAMIC_PRINTK_DEBUG is not set | ||
1489 | # CONFIG_SAMPLES is not set | ||
1357 | # CONFIG_DEBUG_RODATA is not set | 1490 | # CONFIG_DEBUG_RODATA is not set |
1358 | 1491 | ||
1359 | # | 1492 | # |
@@ -1362,56 +1495,112 @@ CONFIG_FORCED_INLINING=y | |||
1362 | CONFIG_KEYS=y | 1495 | CONFIG_KEYS=y |
1363 | CONFIG_KEYS_DEBUG_PROC_KEYS=y | 1496 | CONFIG_KEYS_DEBUG_PROC_KEYS=y |
1364 | # CONFIG_SECURITY is not set | 1497 | # CONFIG_SECURITY is not set |
1498 | # CONFIG_SECURITYFS is not set | ||
1499 | # CONFIG_SECURITY_FILE_CAPABILITIES is not set | ||
1365 | CONFIG_CRYPTO=y | 1500 | CONFIG_CRYPTO=y |
1501 | |||
1502 | # | ||
1503 | # Crypto core or helper | ||
1504 | # | ||
1505 | # CONFIG_CRYPTO_FIPS is not set | ||
1366 | CONFIG_CRYPTO_ALGAPI=y | 1506 | CONFIG_CRYPTO_ALGAPI=y |
1507 | CONFIG_CRYPTO_ALGAPI2=y | ||
1508 | CONFIG_CRYPTO_AEAD=y | ||
1509 | CONFIG_CRYPTO_AEAD2=y | ||
1367 | CONFIG_CRYPTO_BLKCIPHER=y | 1510 | CONFIG_CRYPTO_BLKCIPHER=y |
1511 | CONFIG_CRYPTO_BLKCIPHER2=y | ||
1368 | CONFIG_CRYPTO_HASH=y | 1512 | CONFIG_CRYPTO_HASH=y |
1513 | CONFIG_CRYPTO_HASH2=y | ||
1514 | CONFIG_CRYPTO_RNG2=y | ||
1369 | CONFIG_CRYPTO_MANAGER=y | 1515 | CONFIG_CRYPTO_MANAGER=y |
1516 | CONFIG_CRYPTO_MANAGER2=y | ||
1517 | # CONFIG_CRYPTO_GF128MUL is not set | ||
1518 | CONFIG_CRYPTO_NULL=m | ||
1519 | # CONFIG_CRYPTO_CRYPTD is not set | ||
1520 | CONFIG_CRYPTO_AUTHENC=y | ||
1521 | CONFIG_CRYPTO_TEST=m | ||
1522 | |||
1523 | # | ||
1524 | # Authenticated Encryption with Associated Data | ||
1525 | # | ||
1526 | # CONFIG_CRYPTO_CCM is not set | ||
1527 | # CONFIG_CRYPTO_GCM is not set | ||
1528 | # CONFIG_CRYPTO_SEQIV is not set | ||
1529 | |||
1530 | # | ||
1531 | # Block modes | ||
1532 | # | ||
1533 | CONFIG_CRYPTO_CBC=y | ||
1534 | # CONFIG_CRYPTO_CTR is not set | ||
1535 | # CONFIG_CRYPTO_CTS is not set | ||
1536 | # CONFIG_CRYPTO_ECB is not set | ||
1537 | # CONFIG_CRYPTO_LRW is not set | ||
1538 | # CONFIG_CRYPTO_PCBC is not set | ||
1539 | # CONFIG_CRYPTO_XTS is not set | ||
1540 | |||
1541 | # | ||
1542 | # Hash modes | ||
1543 | # | ||
1370 | CONFIG_CRYPTO_HMAC=y | 1544 | CONFIG_CRYPTO_HMAC=y |
1371 | # CONFIG_CRYPTO_XCBC is not set | 1545 | # CONFIG_CRYPTO_XCBC is not set |
1372 | CONFIG_CRYPTO_NULL=m | 1546 | |
1547 | # | ||
1548 | # Digest | ||
1549 | # | ||
1550 | CONFIG_CRYPTO_CRC32C=m | ||
1373 | CONFIG_CRYPTO_MD4=m | 1551 | CONFIG_CRYPTO_MD4=m |
1374 | CONFIG_CRYPTO_MD5=y | 1552 | CONFIG_CRYPTO_MD5=y |
1553 | CONFIG_CRYPTO_MICHAEL_MIC=m | ||
1554 | # CONFIG_CRYPTO_RMD128 is not set | ||
1555 | # CONFIG_CRYPTO_RMD160 is not set | ||
1556 | # CONFIG_CRYPTO_RMD256 is not set | ||
1557 | # CONFIG_CRYPTO_RMD320 is not set | ||
1375 | CONFIG_CRYPTO_SHA1=y | 1558 | CONFIG_CRYPTO_SHA1=y |
1376 | CONFIG_CRYPTO_SHA256=m | 1559 | CONFIG_CRYPTO_SHA256=m |
1377 | CONFIG_CRYPTO_SHA512=m | 1560 | CONFIG_CRYPTO_SHA512=m |
1378 | CONFIG_CRYPTO_WP512=m | ||
1379 | CONFIG_CRYPTO_TGR192=m | 1561 | CONFIG_CRYPTO_TGR192=m |
1380 | # CONFIG_CRYPTO_GF128MUL is not set | 1562 | CONFIG_CRYPTO_WP512=m |
1381 | # CONFIG_CRYPTO_ECB is not set | 1563 | |
1382 | CONFIG_CRYPTO_CBC=y | 1564 | # |
1383 | # CONFIG_CRYPTO_PCBC is not set | 1565 | # Ciphers |
1384 | # CONFIG_CRYPTO_LRW is not set | 1566 | # |
1385 | # CONFIG_CRYPTO_XTS is not set | ||
1386 | # CONFIG_CRYPTO_CRYPTD is not set | ||
1387 | CONFIG_CRYPTO_DES=y | ||
1388 | # CONFIG_CRYPTO_FCRYPT is not set | ||
1389 | CONFIG_CRYPTO_BLOWFISH=m | ||
1390 | CONFIG_CRYPTO_TWOFISH=m | ||
1391 | CONFIG_CRYPTO_TWOFISH_COMMON=m | ||
1392 | CONFIG_CRYPTO_SERPENT=m | ||
1393 | CONFIG_CRYPTO_AES=m | 1567 | CONFIG_CRYPTO_AES=m |
1568 | CONFIG_CRYPTO_ANUBIS=m | ||
1569 | CONFIG_CRYPTO_ARC4=m | ||
1570 | CONFIG_CRYPTO_BLOWFISH=m | ||
1571 | # CONFIG_CRYPTO_CAMELLIA is not set | ||
1394 | CONFIG_CRYPTO_CAST5=m | 1572 | CONFIG_CRYPTO_CAST5=m |
1395 | CONFIG_CRYPTO_CAST6=m | 1573 | CONFIG_CRYPTO_CAST6=m |
1396 | CONFIG_CRYPTO_TEA=m | 1574 | CONFIG_CRYPTO_DES=y |
1397 | CONFIG_CRYPTO_ARC4=m | 1575 | # CONFIG_CRYPTO_FCRYPT is not set |
1398 | CONFIG_CRYPTO_KHAZAD=m | 1576 | CONFIG_CRYPTO_KHAZAD=m |
1399 | CONFIG_CRYPTO_ANUBIS=m | 1577 | # CONFIG_CRYPTO_SALSA20 is not set |
1400 | # CONFIG_CRYPTO_SEED is not set | 1578 | # CONFIG_CRYPTO_SEED is not set |
1579 | CONFIG_CRYPTO_SERPENT=m | ||
1580 | CONFIG_CRYPTO_TEA=m | ||
1581 | CONFIG_CRYPTO_TWOFISH=m | ||
1582 | CONFIG_CRYPTO_TWOFISH_COMMON=m | ||
1583 | |||
1584 | # | ||
1585 | # Compression | ||
1586 | # | ||
1401 | CONFIG_CRYPTO_DEFLATE=y | 1587 | CONFIG_CRYPTO_DEFLATE=y |
1402 | CONFIG_CRYPTO_MICHAEL_MIC=m | 1588 | # CONFIG_CRYPTO_LZO is not set |
1403 | CONFIG_CRYPTO_CRC32C=m | 1589 | |
1404 | # CONFIG_CRYPTO_CAMELLIA is not set | 1590 | # |
1405 | CONFIG_CRYPTO_TEST=m | 1591 | # Random Number Generation |
1406 | # CONFIG_CRYPTO_AUTHENC is not set | 1592 | # |
1593 | # CONFIG_CRYPTO_ANSI_CPRNG is not set | ||
1407 | # CONFIG_CRYPTO_HW is not set | 1594 | # CONFIG_CRYPTO_HW is not set |
1408 | 1595 | ||
1409 | # | 1596 | # |
1410 | # Library routines | 1597 | # Library routines |
1411 | # | 1598 | # |
1412 | CONFIG_BITREVERSE=y | 1599 | CONFIG_BITREVERSE=y |
1600 | CONFIG_GENERIC_FIND_LAST_BIT=y | ||
1413 | CONFIG_CRC_CCITT=m | 1601 | CONFIG_CRC_CCITT=m |
1414 | # CONFIG_CRC16 is not set | 1602 | # CONFIG_CRC16 is not set |
1603 | # CONFIG_CRC_T10DIF is not set | ||
1415 | # CONFIG_CRC_ITU_T is not set | 1604 | # CONFIG_CRC_ITU_T is not set |
1416 | CONFIG_CRC32=y | 1605 | CONFIG_CRC32=y |
1417 | # CONFIG_CRC7 is not set | 1606 | # CONFIG_CRC7 is not set |
diff --git a/arch/parisc/hpux/fs.c b/arch/parisc/hpux/fs.c index bd9a4db3bd4c..5cbe9f9e5d9e 100644 --- a/arch/parisc/hpux/fs.c +++ b/arch/parisc/hpux/fs.c | |||
@@ -137,7 +137,6 @@ int hpux_getdents(unsigned int fd, struct hpux_dirent __user *dirent, unsigned i | |||
137 | error = count - buf.count; | 137 | error = count - buf.count; |
138 | } | 138 | } |
139 | 139 | ||
140 | out_putf: | ||
141 | fput(file); | 140 | fput(file); |
142 | out: | 141 | out: |
143 | return error; | 142 | return error; |
diff --git a/arch/parisc/include/asm/assembly.h b/arch/parisc/include/asm/assembly.h index ffb208840ecc..89fb40005e3f 100644 --- a/arch/parisc/include/asm/assembly.h +++ b/arch/parisc/include/asm/assembly.h | |||
@@ -79,6 +79,7 @@ | |||
79 | 79 | ||
80 | #include <asm/asm-offsets.h> | 80 | #include <asm/asm-offsets.h> |
81 | #include <asm/page.h> | 81 | #include <asm/page.h> |
82 | #include <asm/types.h> | ||
82 | 83 | ||
83 | #include <asm/asmregs.h> | 84 | #include <asm/asmregs.h> |
84 | 85 | ||
@@ -129,27 +130,27 @@ | |||
129 | 130 | ||
130 | /* Shift Left - note the r and t can NOT be the same! */ | 131 | /* Shift Left - note the r and t can NOT be the same! */ |
131 | .macro shl r, sa, t | 132 | .macro shl r, sa, t |
132 | dep,z \r, 31-\sa, 32-\sa, \t | 133 | dep,z \r, 31-(\sa), 32-(\sa), \t |
133 | .endm | 134 | .endm |
134 | 135 | ||
135 | /* The PA 2.0 shift left */ | 136 | /* The PA 2.0 shift left */ |
136 | .macro shlw r, sa, t | 137 | .macro shlw r, sa, t |
137 | depw,z \r, 31-\sa, 32-\sa, \t | 138 | depw,z \r, 31-(\sa), 32-(\sa), \t |
138 | .endm | 139 | .endm |
139 | 140 | ||
140 | /* And the PA 2.0W shift left */ | 141 | /* And the PA 2.0W shift left */ |
141 | .macro shld r, sa, t | 142 | .macro shld r, sa, t |
142 | depd,z \r, 63-\sa, 64-\sa, \t | 143 | depd,z \r, 63-(\sa), 64-(\sa), \t |
143 | .endm | 144 | .endm |
144 | 145 | ||
145 | /* Shift Right - note the r and t can NOT be the same! */ | 146 | /* Shift Right - note the r and t can NOT be the same! */ |
146 | .macro shr r, sa, t | 147 | .macro shr r, sa, t |
147 | extru \r, 31-\sa, 32-\sa, \t | 148 | extru \r, 31-(\sa), 32-(\sa), \t |
148 | .endm | 149 | .endm |
149 | 150 | ||
150 | /* pa20w version of shift right */ | 151 | /* pa20w version of shift right */ |
151 | .macro shrd r, sa, t | 152 | .macro shrd r, sa, t |
152 | extrd,u \r, 63-\sa, 64-\sa, \t | 153 | extrd,u \r, 63-(\sa), 64-(\sa), \t |
153 | .endm | 154 | .endm |
154 | 155 | ||
155 | /* load 32-bit 'value' into 'reg' compensating for the ldil | 156 | /* load 32-bit 'value' into 'reg' compensating for the ldil |
diff --git a/arch/parisc/include/asm/io.h b/arch/parisc/include/asm/io.h index d3031d1f9d03..1f6d2ae7aba5 100644 --- a/arch/parisc/include/asm/io.h +++ b/arch/parisc/include/asm/io.h | |||
@@ -174,15 +174,48 @@ static inline void __raw_writeq(unsigned long long b, volatile void __iomem *add | |||
174 | *(volatile unsigned long long __force *) addr = b; | 174 | *(volatile unsigned long long __force *) addr = b; |
175 | } | 175 | } |
176 | 176 | ||
177 | /* readb can never be const, so use __fswab instead of le*_to_cpu */ | 177 | static inline unsigned char readb(const volatile void __iomem *addr) |
178 | #define readb(addr) __raw_readb(addr) | 178 | { |
179 | #define readw(addr) le16_to_cpu(__raw_readw(addr)) | 179 | return __raw_readb(addr); |
180 | #define readl(addr) le32_to_cpu(__raw_readl(addr)) | 180 | } |
181 | #define readq(addr) le64_to_cpu(__raw_readq(addr)) | 181 | static inline unsigned short readw(const volatile void __iomem *addr) |
182 | #define writeb(b, addr) __raw_writeb(b, addr) | 182 | { |
183 | #define writew(b, addr) __raw_writew(cpu_to_le16(b), addr) | 183 | return le16_to_cpu(__raw_readw(addr)); |
184 | #define writel(b, addr) __raw_writel(cpu_to_le32(b), addr) | 184 | } |
185 | #define writeq(b, addr) __raw_writeq(cpu_to_le64(b), addr) | 185 | static inline unsigned int readl(const volatile void __iomem *addr) |
186 | { | ||
187 | return le32_to_cpu(__raw_readl(addr)); | ||
188 | } | ||
189 | static inline unsigned long long readq(const volatile void __iomem *addr) | ||
190 | { | ||
191 | return le64_to_cpu(__raw_readq(addr)); | ||
192 | } | ||
193 | |||
194 | static inline void writeb(unsigned char b, volatile void __iomem *addr) | ||
195 | { | ||
196 | __raw_writeb(b, addr); | ||
197 | } | ||
198 | static inline void writew(unsigned short w, volatile void __iomem *addr) | ||
199 | { | ||
200 | __raw_writew(cpu_to_le16(w), addr); | ||
201 | } | ||
202 | static inline void writel(unsigned int l, volatile void __iomem *addr) | ||
203 | { | ||
204 | __raw_writel(cpu_to_le32(l), addr); | ||
205 | } | ||
206 | static inline void writeq(unsigned long long q, volatile void __iomem *addr) | ||
207 | { | ||
208 | __raw_writeq(cpu_to_le64(q), addr); | ||
209 | } | ||
210 | |||
211 | #define readb readb | ||
212 | #define readw readw | ||
213 | #define readl readl | ||
214 | #define readq readq | ||
215 | #define writeb writeb | ||
216 | #define writew writew | ||
217 | #define writel writel | ||
218 | #define writeq writeq | ||
186 | 219 | ||
187 | #define readb_relaxed(addr) readb(addr) | 220 | #define readb_relaxed(addr) readb(addr) |
188 | #define readw_relaxed(addr) readw(addr) | 221 | #define readw_relaxed(addr) readw(addr) |
diff --git a/arch/parisc/include/asm/irq.h b/arch/parisc/include/asm/irq.h index 399c81981ed5..dfa26b67f919 100644 --- a/arch/parisc/include/asm/irq.h +++ b/arch/parisc/include/asm/irq.h | |||
@@ -49,7 +49,7 @@ extern unsigned long txn_alloc_addr(unsigned int); | |||
49 | extern unsigned long txn_affinity_addr(unsigned int irq, int cpu); | 49 | extern unsigned long txn_affinity_addr(unsigned int irq, int cpu); |
50 | 50 | ||
51 | extern int cpu_claim_irq(unsigned int irq, struct irq_chip *, void *); | 51 | extern int cpu_claim_irq(unsigned int irq, struct irq_chip *, void *); |
52 | extern int cpu_check_affinity(unsigned int irq, cpumask_t *dest); | 52 | extern int cpu_check_affinity(unsigned int irq, const struct cpumask *dest); |
53 | 53 | ||
54 | /* soft power switch support (power.c) */ | 54 | /* soft power switch support (power.c) */ |
55 | extern struct tasklet_struct power_tasklet; | 55 | extern struct tasklet_struct power_tasklet; |
diff --git a/arch/parisc/include/asm/uaccess.h b/arch/parisc/include/asm/uaccess.h index 1c6dbb6f6e56..cd4c0b2a8e70 100644 --- a/arch/parisc/include/asm/uaccess.h +++ b/arch/parisc/include/asm/uaccess.h | |||
@@ -241,6 +241,7 @@ unsigned long copy_in_user(void __user *dst, const void __user *src, unsigned lo | |||
241 | #define __copy_to_user_inatomic __copy_to_user | 241 | #define __copy_to_user_inatomic __copy_to_user |
242 | #define __copy_from_user_inatomic __copy_from_user | 242 | #define __copy_from_user_inatomic __copy_from_user |
243 | 243 | ||
244 | struct pt_regs; | ||
244 | int fixup_exception(struct pt_regs *regs); | 245 | int fixup_exception(struct pt_regs *regs); |
245 | 246 | ||
246 | #endif /* __PARISC_UACCESS_H */ | 247 | #endif /* __PARISC_UACCESS_H */ |
diff --git a/arch/parisc/kernel/cache.c b/arch/parisc/kernel/cache.c index 5259d8c20676..837530ea32e7 100644 --- a/arch/parisc/kernel/cache.c +++ b/arch/parisc/kernel/cache.c | |||
@@ -551,10 +551,7 @@ void flush_cache_range(struct vm_area_struct *vma, | |||
551 | { | 551 | { |
552 | int sr3; | 552 | int sr3; |
553 | 553 | ||
554 | if (!vma->vm_mm->context) { | 554 | BUG_ON(!vma->vm_mm->context); |
555 | BUG(); | ||
556 | return; | ||
557 | } | ||
558 | 555 | ||
559 | sr3 = mfsp(3); | 556 | sr3 = mfsp(3); |
560 | if (vma->vm_mm->context == sr3) { | 557 | if (vma->vm_mm->context == sr3) { |
diff --git a/arch/parisc/kernel/entry.S b/arch/parisc/kernel/entry.S index d1fa4edd2d80..0db9fdcb7709 100644 --- a/arch/parisc/kernel/entry.S +++ b/arch/parisc/kernel/entry.S | |||
@@ -368,7 +368,7 @@ | |||
368 | * abstractions for the macros */ | 368 | * abstractions for the macros */ |
369 | .macro EXTR reg1,start,length,reg2 | 369 | .macro EXTR reg1,start,length,reg2 |
370 | #ifdef CONFIG_64BIT | 370 | #ifdef CONFIG_64BIT |
371 | extrd,u \reg1,32+\start,\length,\reg2 | 371 | extrd,u \reg1,32+(\start),\length,\reg2 |
372 | #else | 372 | #else |
373 | extrw,u \reg1,\start,\length,\reg2 | 373 | extrw,u \reg1,\start,\length,\reg2 |
374 | #endif | 374 | #endif |
@@ -376,7 +376,7 @@ | |||
376 | 376 | ||
377 | .macro DEP reg1,start,length,reg2 | 377 | .macro DEP reg1,start,length,reg2 |
378 | #ifdef CONFIG_64BIT | 378 | #ifdef CONFIG_64BIT |
379 | depd \reg1,32+\start,\length,\reg2 | 379 | depd \reg1,32+(\start),\length,\reg2 |
380 | #else | 380 | #else |
381 | depw \reg1,\start,\length,\reg2 | 381 | depw \reg1,\start,\length,\reg2 |
382 | #endif | 382 | #endif |
@@ -384,7 +384,7 @@ | |||
384 | 384 | ||
385 | .macro DEPI val,start,length,reg | 385 | .macro DEPI val,start,length,reg |
386 | #ifdef CONFIG_64BIT | 386 | #ifdef CONFIG_64BIT |
387 | depdi \val,32+\start,\length,\reg | 387 | depdi \val,32+(\start),\length,\reg |
388 | #else | 388 | #else |
389 | depwi \val,\start,\length,\reg | 389 | depwi \val,\start,\length,\reg |
390 | #endif | 390 | #endif |
diff --git a/arch/parisc/kernel/firmware.c b/arch/parisc/kernel/firmware.c index 03f26bd75bd8..f6d241238a78 100644 --- a/arch/parisc/kernel/firmware.c +++ b/arch/parisc/kernel/firmware.c | |||
@@ -151,7 +151,7 @@ static void convert_to_wide(unsigned long *addr) | |||
151 | } | 151 | } |
152 | 152 | ||
153 | #ifdef CONFIG_64BIT | 153 | #ifdef CONFIG_64BIT |
154 | void __init set_firmware_width_unlocked(void) | 154 | void __cpuinit set_firmware_width_unlocked(void) |
155 | { | 155 | { |
156 | int ret; | 156 | int ret; |
157 | 157 | ||
@@ -168,7 +168,7 @@ void __init set_firmware_width_unlocked(void) | |||
168 | * This function must be called before any pdc_* function that uses the | 168 | * This function must be called before any pdc_* function that uses the |
169 | * convert_to_wide function. | 169 | * convert_to_wide function. |
170 | */ | 170 | */ |
171 | void __init set_firmware_width(void) | 171 | void __cpuinit set_firmware_width(void) |
172 | { | 172 | { |
173 | unsigned long flags; | 173 | unsigned long flags; |
174 | spin_lock_irqsave(&pdc_lock, flags); | 174 | spin_lock_irqsave(&pdc_lock, flags); |
@@ -176,11 +176,11 @@ void __init set_firmware_width(void) | |||
176 | spin_unlock_irqrestore(&pdc_lock, flags); | 176 | spin_unlock_irqrestore(&pdc_lock, flags); |
177 | } | 177 | } |
178 | #else | 178 | #else |
179 | void __init set_firmware_width_unlocked(void) { | 179 | void __cpuinit set_firmware_width_unlocked(void) { |
180 | return; | 180 | return; |
181 | } | 181 | } |
182 | 182 | ||
183 | void __init set_firmware_width(void) { | 183 | void __cpuinit set_firmware_width(void) { |
184 | return; | 184 | return; |
185 | } | 185 | } |
186 | #endif /*CONFIG_64BIT*/ | 186 | #endif /*CONFIG_64BIT*/ |
@@ -302,7 +302,7 @@ int pdc_chassis_warn(unsigned long *warn) | |||
302 | return retval; | 302 | return retval; |
303 | } | 303 | } |
304 | 304 | ||
305 | int __init pdc_coproc_cfg_unlocked(struct pdc_coproc_cfg *pdc_coproc_info) | 305 | int __cpuinit pdc_coproc_cfg_unlocked(struct pdc_coproc_cfg *pdc_coproc_info) |
306 | { | 306 | { |
307 | int ret; | 307 | int ret; |
308 | 308 | ||
@@ -323,7 +323,7 @@ int __init pdc_coproc_cfg_unlocked(struct pdc_coproc_cfg *pdc_coproc_info) | |||
323 | * This PDC call returns the presence and status of all the coprocessors | 323 | * This PDC call returns the presence and status of all the coprocessors |
324 | * attached to the processor. | 324 | * attached to the processor. |
325 | */ | 325 | */ |
326 | int __init pdc_coproc_cfg(struct pdc_coproc_cfg *pdc_coproc_info) | 326 | int __cpuinit pdc_coproc_cfg(struct pdc_coproc_cfg *pdc_coproc_info) |
327 | { | 327 | { |
328 | int ret; | 328 | int ret; |
329 | unsigned long flags; | 329 | unsigned long flags; |
diff --git a/arch/parisc/kernel/irq.c b/arch/parisc/kernel/irq.c index ac2c822928c7..29e70e16ede8 100644 --- a/arch/parisc/kernel/irq.c +++ b/arch/parisc/kernel/irq.c | |||
@@ -112,7 +112,7 @@ void cpu_end_irq(unsigned int irq) | |||
112 | } | 112 | } |
113 | 113 | ||
114 | #ifdef CONFIG_SMP | 114 | #ifdef CONFIG_SMP |
115 | int cpu_check_affinity(unsigned int irq, cpumask_t *dest) | 115 | int cpu_check_affinity(unsigned int irq, const struct cpumask *dest) |
116 | { | 116 | { |
117 | int cpu_dest; | 117 | int cpu_dest; |
118 | 118 | ||
@@ -120,23 +120,25 @@ int cpu_check_affinity(unsigned int irq, cpumask_t *dest) | |||
120 | if (CHECK_IRQ_PER_CPU(irq)) { | 120 | if (CHECK_IRQ_PER_CPU(irq)) { |
121 | /* Bad linux design decision. The mask has already | 121 | /* Bad linux design decision. The mask has already |
122 | * been set; we must reset it */ | 122 | * been set; we must reset it */ |
123 | irq_desc[irq].affinity = CPU_MASK_ALL; | 123 | cpumask_setall(&irq_desc[irq].affinity); |
124 | return -EINVAL; | 124 | return -EINVAL; |
125 | } | 125 | } |
126 | 126 | ||
127 | /* whatever mask they set, we just allow one CPU */ | 127 | /* whatever mask they set, we just allow one CPU */ |
128 | cpu_dest = first_cpu(*dest); | 128 | cpu_dest = first_cpu(*dest); |
129 | *dest = cpumask_of_cpu(cpu_dest); | ||
130 | 129 | ||
131 | return 0; | 130 | return cpu_dest; |
132 | } | 131 | } |
133 | 132 | ||
134 | static void cpu_set_affinity_irq(unsigned int irq, const struct cpumask *dest) | 133 | static void cpu_set_affinity_irq(unsigned int irq, const struct cpumask *dest) |
135 | { | 134 | { |
136 | if (cpu_check_affinity(irq, dest)) | 135 | int cpu_dest; |
136 | |||
137 | cpu_dest = cpu_check_affinity(irq, dest); | ||
138 | if (cpu_dest < 0) | ||
137 | return; | 139 | return; |
138 | 140 | ||
139 | irq_desc[irq].affinity = *dest; | 141 | cpumask_copy(&irq_desc[irq].affinity, &cpumask_of_cpu(cpu_dest)); |
140 | } | 142 | } |
141 | #endif | 143 | #endif |
142 | 144 | ||
@@ -295,7 +297,7 @@ int txn_alloc_irq(unsigned int bits_wide) | |||
295 | unsigned long txn_affinity_addr(unsigned int irq, int cpu) | 297 | unsigned long txn_affinity_addr(unsigned int irq, int cpu) |
296 | { | 298 | { |
297 | #ifdef CONFIG_SMP | 299 | #ifdef CONFIG_SMP |
298 | irq_desc[irq].affinity = cpumask_of_cpu(cpu); | 300 | cpumask_copy(&irq_desc[irq].affinity, cpumask_of(cpu)); |
299 | #endif | 301 | #endif |
300 | 302 | ||
301 | return per_cpu(cpu_data, cpu).txn_addr; | 303 | return per_cpu(cpu_data, cpu).txn_addr; |
@@ -352,7 +354,7 @@ void do_cpu_irq_mask(struct pt_regs *regs) | |||
352 | irq = eirr_to_irq(eirr_val); | 354 | irq = eirr_to_irq(eirr_val); |
353 | 355 | ||
354 | #ifdef CONFIG_SMP | 356 | #ifdef CONFIG_SMP |
355 | dest = irq_desc[irq].affinity; | 357 | cpumask_copy(&dest, &irq_desc[irq].affinity); |
356 | if (CHECK_IRQ_PER_CPU(irq_desc[irq].status) && | 358 | if (CHECK_IRQ_PER_CPU(irq_desc[irq].status) && |
357 | !cpu_isset(smp_processor_id(), dest)) { | 359 | !cpu_isset(smp_processor_id(), dest)) { |
358 | int cpu = first_cpu(dest); | 360 | int cpu = first_cpu(dest); |
diff --git a/arch/parisc/kernel/pci-dma.c b/arch/parisc/kernel/pci-dma.c index df47895db828..7d927eac932b 100644 --- a/arch/parisc/kernel/pci-dma.c +++ b/arch/parisc/kernel/pci-dma.c | |||
@@ -447,10 +447,7 @@ static void pa11_dma_free_consistent (struct device *dev, size_t size, void *vad | |||
447 | 447 | ||
448 | static dma_addr_t pa11_dma_map_single(struct device *dev, void *addr, size_t size, enum dma_data_direction direction) | 448 | static dma_addr_t pa11_dma_map_single(struct device *dev, void *addr, size_t size, enum dma_data_direction direction) |
449 | { | 449 | { |
450 | if (direction == DMA_NONE) { | 450 | BUG_ON(direction == DMA_NONE); |
451 | printk(KERN_ERR "pa11_dma_map_single(PCI_DMA_NONE) called by %p\n", __builtin_return_address(0)); | ||
452 | BUG(); | ||
453 | } | ||
454 | 451 | ||
455 | flush_kernel_dcache_range((unsigned long) addr, size); | 452 | flush_kernel_dcache_range((unsigned long) addr, size); |
456 | return virt_to_phys(addr); | 453 | return virt_to_phys(addr); |
@@ -458,10 +455,7 @@ static dma_addr_t pa11_dma_map_single(struct device *dev, void *addr, size_t siz | |||
458 | 455 | ||
459 | static void pa11_dma_unmap_single(struct device *dev, dma_addr_t dma_handle, size_t size, enum dma_data_direction direction) | 456 | static void pa11_dma_unmap_single(struct device *dev, dma_addr_t dma_handle, size_t size, enum dma_data_direction direction) |
460 | { | 457 | { |
461 | if (direction == DMA_NONE) { | 458 | BUG_ON(direction == DMA_NONE); |
462 | printk(KERN_ERR "pa11_dma_unmap_single(PCI_DMA_NONE) called by %p\n", __builtin_return_address(0)); | ||
463 | BUG(); | ||
464 | } | ||
465 | 459 | ||
466 | if (direction == DMA_TO_DEVICE) | 460 | if (direction == DMA_TO_DEVICE) |
467 | return; | 461 | return; |
@@ -480,8 +474,7 @@ static int pa11_dma_map_sg(struct device *dev, struct scatterlist *sglist, int n | |||
480 | { | 474 | { |
481 | int i; | 475 | int i; |
482 | 476 | ||
483 | if (direction == DMA_NONE) | 477 | BUG_ON(direction == DMA_NONE); |
484 | BUG(); | ||
485 | 478 | ||
486 | for (i = 0; i < nents; i++, sglist++ ) { | 479 | for (i = 0; i < nents; i++, sglist++ ) { |
487 | unsigned long vaddr = sg_virt_addr(sglist); | 480 | unsigned long vaddr = sg_virt_addr(sglist); |
@@ -496,8 +489,7 @@ static void pa11_dma_unmap_sg(struct device *dev, struct scatterlist *sglist, in | |||
496 | { | 489 | { |
497 | int i; | 490 | int i; |
498 | 491 | ||
499 | if (direction == DMA_NONE) | 492 | BUG_ON(direction == DMA_NONE); |
500 | BUG(); | ||
501 | 493 | ||
502 | if (direction == DMA_TO_DEVICE) | 494 | if (direction == DMA_TO_DEVICE) |
503 | return; | 495 | return; |
@@ -511,16 +503,14 @@ static void pa11_dma_unmap_sg(struct device *dev, struct scatterlist *sglist, in | |||
511 | 503 | ||
512 | static void pa11_dma_sync_single_for_cpu(struct device *dev, dma_addr_t dma_handle, unsigned long offset, size_t size, enum dma_data_direction direction) | 504 | static void pa11_dma_sync_single_for_cpu(struct device *dev, dma_addr_t dma_handle, unsigned long offset, size_t size, enum dma_data_direction direction) |
513 | { | 505 | { |
514 | if (direction == DMA_NONE) | 506 | BUG_ON(direction == DMA_NONE); |
515 | BUG(); | ||
516 | 507 | ||
517 | flush_kernel_dcache_range((unsigned long) phys_to_virt(dma_handle) + offset, size); | 508 | flush_kernel_dcache_range((unsigned long) phys_to_virt(dma_handle) + offset, size); |
518 | } | 509 | } |
519 | 510 | ||
520 | static void pa11_dma_sync_single_for_device(struct device *dev, dma_addr_t dma_handle, unsigned long offset, size_t size, enum dma_data_direction direction) | 511 | static void pa11_dma_sync_single_for_device(struct device *dev, dma_addr_t dma_handle, unsigned long offset, size_t size, enum dma_data_direction direction) |
521 | { | 512 | { |
522 | if (direction == DMA_NONE) | 513 | BUG_ON(direction == DMA_NONE); |
523 | BUG(); | ||
524 | 514 | ||
525 | flush_kernel_dcache_range((unsigned long) phys_to_virt(dma_handle) + offset, size); | 515 | flush_kernel_dcache_range((unsigned long) phys_to_virt(dma_handle) + offset, size); |
526 | } | 516 | } |
diff --git a/arch/parisc/mm/init.c b/arch/parisc/mm/init.c index 7c155c254e72..9d704d9831d1 100644 --- a/arch/parisc/mm/init.c +++ b/arch/parisc/mm/init.c | |||
@@ -304,10 +304,8 @@ static void __init setup_bootmem(void) | |||
304 | */ | 304 | */ |
305 | max_low_pfn = max_pfn; | 305 | max_low_pfn = max_pfn; |
306 | 306 | ||
307 | if ((bootmap_pfn - bootmap_start_pfn) != bootmap_pages) { | 307 | /* bootmap sizing messed up? */ |
308 | printk(KERN_WARNING "WARNING! bootmap sizing is messed up!\n"); | 308 | BUG_ON((bootmap_pfn - bootmap_start_pfn) != bootmap_pages); |
309 | BUG(); | ||
310 | } | ||
311 | 309 | ||
312 | /* reserve PAGE0 pdc memory, kernel text/data/bss & bootmap */ | 310 | /* reserve PAGE0 pdc memory, kernel text/data/bss & bootmap */ |
313 | 311 | ||
diff --git a/arch/powerpc/configs/40x/virtex_defconfig b/arch/powerpc/configs/40x/virtex_defconfig index b6888384dd74..f5698f962e58 100644 --- a/arch/powerpc/configs/40x/virtex_defconfig +++ b/arch/powerpc/configs/40x/virtex_defconfig | |||
@@ -686,7 +686,7 @@ CONFIG_SERIAL_UARTLITE_CONSOLE=y | |||
686 | CONFIG_SERIAL_CORE=y | 686 | CONFIG_SERIAL_CORE=y |
687 | CONFIG_SERIAL_CORE_CONSOLE=y | 687 | CONFIG_SERIAL_CORE_CONSOLE=y |
688 | # CONFIG_SERIAL_JSM is not set | 688 | # CONFIG_SERIAL_JSM is not set |
689 | # CONFIG_SERIAL_OF_PLATFORM is not set | 689 | CONFIG_SERIAL_OF_PLATFORM=y |
690 | # CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set | 690 | # CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set |
691 | CONFIG_UNIX98_PTYS=y | 691 | CONFIG_UNIX98_PTYS=y |
692 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | 692 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set |
diff --git a/arch/powerpc/configs/44x/virtex5_defconfig b/arch/powerpc/configs/44x/virtex5_defconfig index 15aab1ca6384..1bf0a63614b1 100644 --- a/arch/powerpc/configs/44x/virtex5_defconfig +++ b/arch/powerpc/configs/44x/virtex5_defconfig | |||
@@ -691,7 +691,7 @@ CONFIG_SERIAL_UARTLITE_CONSOLE=y | |||
691 | CONFIG_SERIAL_CORE=y | 691 | CONFIG_SERIAL_CORE=y |
692 | CONFIG_SERIAL_CORE_CONSOLE=y | 692 | CONFIG_SERIAL_CORE_CONSOLE=y |
693 | # CONFIG_SERIAL_JSM is not set | 693 | # CONFIG_SERIAL_JSM is not set |
694 | # CONFIG_SERIAL_OF_PLATFORM is not set | 694 | CONFIG_SERIAL_OF_PLATFORM=y |
695 | # CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set | 695 | # CONFIG_SERIAL_OF_PLATFORM_NWPSERIAL is not set |
696 | CONFIG_UNIX98_PTYS=y | 696 | CONFIG_UNIX98_PTYS=y |
697 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set | 697 | # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set |
diff --git a/arch/powerpc/configs/linkstation_defconfig b/arch/powerpc/configs/linkstation_defconfig index aa5855a156de..15900dcf0bfa 100644 --- a/arch/powerpc/configs/linkstation_defconfig +++ b/arch/powerpc/configs/linkstation_defconfig | |||
@@ -1,7 +1,7 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.29-rc2 | 3 | # Linux kernel version: 2.6.29-rc6 |
4 | # Mon Jan 26 15:35:29 2009 | 4 | # Fri Mar 6 00:07:38 2009 |
5 | # | 5 | # |
6 | # CONFIG_PPC64 is not set | 6 | # CONFIG_PPC64 is not set |
7 | 7 | ||
@@ -71,6 +71,15 @@ CONFIG_POSIX_MQUEUE=y | |||
71 | # CONFIG_BSD_PROCESS_ACCT is not set | 71 | # CONFIG_BSD_PROCESS_ACCT is not set |
72 | # CONFIG_TASKSTATS is not set | 72 | # CONFIG_TASKSTATS is not set |
73 | # CONFIG_AUDIT is not set | 73 | # CONFIG_AUDIT is not set |
74 | |||
75 | # | ||
76 | # RCU Subsystem | ||
77 | # | ||
78 | CONFIG_CLASSIC_RCU=y | ||
79 | # CONFIG_TREE_RCU is not set | ||
80 | # CONFIG_PREEMPT_RCU is not set | ||
81 | # CONFIG_TREE_RCU_TRACE is not set | ||
82 | # CONFIG_PREEMPT_RCU_TRACE is not set | ||
74 | CONFIG_IKCONFIG=y | 83 | CONFIG_IKCONFIG=y |
75 | CONFIG_IKCONFIG_PROC=y | 84 | CONFIG_IKCONFIG_PROC=y |
76 | CONFIG_LOG_BUF_SHIFT=14 | 85 | CONFIG_LOG_BUF_SHIFT=14 |
@@ -88,6 +97,7 @@ CONFIG_NAMESPACES=y | |||
88 | # CONFIG_IPC_NS is not set | 97 | # CONFIG_IPC_NS is not set |
89 | # CONFIG_USER_NS is not set | 98 | # CONFIG_USER_NS is not set |
90 | # CONFIG_PID_NS is not set | 99 | # CONFIG_PID_NS is not set |
100 | # CONFIG_NET_NS is not set | ||
91 | CONFIG_BLK_DEV_INITRD=y | 101 | CONFIG_BLK_DEV_INITRD=y |
92 | CONFIG_INITRAMFS_SOURCE="" | 102 | CONFIG_INITRAMFS_SOURCE="" |
93 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | 103 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y |
@@ -153,11 +163,6 @@ CONFIG_DEFAULT_AS=y | |||
153 | # CONFIG_DEFAULT_CFQ is not set | 163 | # CONFIG_DEFAULT_CFQ is not set |
154 | # CONFIG_DEFAULT_NOOP is not set | 164 | # CONFIG_DEFAULT_NOOP is not set |
155 | CONFIG_DEFAULT_IOSCHED="anticipatory" | 165 | CONFIG_DEFAULT_IOSCHED="anticipatory" |
156 | CONFIG_CLASSIC_RCU=y | ||
157 | # CONFIG_TREE_RCU is not set | ||
158 | # CONFIG_PREEMPT_RCU is not set | ||
159 | # CONFIG_TREE_RCU_TRACE is not set | ||
160 | # CONFIG_PREEMPT_RCU_TRACE is not set | ||
161 | # CONFIG_FREEZER is not set | 166 | # CONFIG_FREEZER is not set |
162 | 167 | ||
163 | # | 168 | # |
@@ -294,7 +299,6 @@ CONFIG_NET=y | |||
294 | # | 299 | # |
295 | # Networking options | 300 | # Networking options |
296 | # | 301 | # |
297 | # CONFIG_NET_NS is not set | ||
298 | CONFIG_COMPAT_NET_DEV_OPS=y | 302 | CONFIG_COMPAT_NET_DEV_OPS=y |
299 | CONFIG_PACKET=y | 303 | CONFIG_PACKET=y |
300 | CONFIG_PACKET_MMAP=y | 304 | CONFIG_PACKET_MMAP=y |
@@ -508,8 +512,8 @@ CONFIG_MTD_CONCAT=y | |||
508 | CONFIG_MTD_PARTITIONS=y | 512 | CONFIG_MTD_PARTITIONS=y |
509 | # CONFIG_MTD_TESTS is not set | 513 | # CONFIG_MTD_TESTS is not set |
510 | # CONFIG_MTD_REDBOOT_PARTS is not set | 514 | # CONFIG_MTD_REDBOOT_PARTS is not set |
511 | # CONFIG_MTD_CMDLINE_PARTS is not set | 515 | CONFIG_MTD_CMDLINE_PARTS=y |
512 | # CONFIG_MTD_OF_PARTS is not set | 516 | CONFIG_MTD_OF_PARTS=y |
513 | # CONFIG_MTD_AR7_PARTS is not set | 517 | # CONFIG_MTD_AR7_PARTS is not set |
514 | 518 | ||
515 | # | 519 | # |
@@ -587,7 +591,6 @@ CONFIG_MTD_PHYSMAP=y | |||
587 | # LPDDR flash memory drivers | 591 | # LPDDR flash memory drivers |
588 | # | 592 | # |
589 | # CONFIG_MTD_LPDDR is not set | 593 | # CONFIG_MTD_LPDDR is not set |
590 | # CONFIG_MTD_QINFO_PROBE is not set | ||
591 | 594 | ||
592 | # | 595 | # |
593 | # UBI - Unsorted block images | 596 | # UBI - Unsorted block images |
@@ -617,13 +620,19 @@ CONFIG_BLK_DEV_RAM_SIZE=8192 | |||
617 | # CONFIG_BLK_DEV_HD is not set | 620 | # CONFIG_BLK_DEV_HD is not set |
618 | CONFIG_MISC_DEVICES=y | 621 | CONFIG_MISC_DEVICES=y |
619 | # CONFIG_PHANTOM is not set | 622 | # CONFIG_PHANTOM is not set |
620 | # CONFIG_EEPROM_93CX6 is not set | ||
621 | # CONFIG_SGI_IOC4 is not set | 623 | # CONFIG_SGI_IOC4 is not set |
622 | # CONFIG_TIFM_CORE is not set | 624 | # CONFIG_TIFM_CORE is not set |
623 | # CONFIG_ICS932S401 is not set | 625 | # CONFIG_ICS932S401 is not set |
624 | # CONFIG_ENCLOSURE_SERVICES is not set | 626 | # CONFIG_ENCLOSURE_SERVICES is not set |
625 | # CONFIG_HP_ILO is not set | 627 | # CONFIG_HP_ILO is not set |
626 | # CONFIG_C2PORT is not set | 628 | # CONFIG_C2PORT is not set |
629 | |||
630 | # | ||
631 | # EEPROM support | ||
632 | # | ||
633 | # CONFIG_EEPROM_AT24 is not set | ||
634 | CONFIG_EEPROM_LEGACY=m | ||
635 | # CONFIG_EEPROM_93CX6 is not set | ||
627 | CONFIG_HAVE_IDE=y | 636 | CONFIG_HAVE_IDE=y |
628 | # CONFIG_IDE is not set | 637 | # CONFIG_IDE is not set |
629 | 638 | ||
@@ -839,6 +848,7 @@ CONFIG_R8169=y | |||
839 | # CONFIG_QLA3XXX is not set | 848 | # CONFIG_QLA3XXX is not set |
840 | # CONFIG_ATL1 is not set | 849 | # CONFIG_ATL1 is not set |
841 | # CONFIG_ATL1E is not set | 850 | # CONFIG_ATL1E is not set |
851 | # CONFIG_ATL1C is not set | ||
842 | # CONFIG_JME is not set | 852 | # CONFIG_JME is not set |
843 | CONFIG_NETDEV_10000=y | 853 | CONFIG_NETDEV_10000=y |
844 | # CONFIG_CHELSIO_T1 is not set | 854 | # CONFIG_CHELSIO_T1 is not set |
@@ -1037,8 +1047,6 @@ CONFIG_I2C_MPC=y | |||
1037 | # Miscellaneous I2C Chip support | 1047 | # Miscellaneous I2C Chip support |
1038 | # | 1048 | # |
1039 | # CONFIG_DS1682 is not set | 1049 | # CONFIG_DS1682 is not set |
1040 | # CONFIG_EEPROM_AT24 is not set | ||
1041 | CONFIG_EEPROM_LEGACY=m | ||
1042 | # CONFIG_SENSORS_PCF8574 is not set | 1050 | # CONFIG_SENSORS_PCF8574 is not set |
1043 | # CONFIG_PCF8575 is not set | 1051 | # CONFIG_PCF8575 is not set |
1044 | # CONFIG_SENSORS_PCA9539 is not set | 1052 | # CONFIG_SENSORS_PCA9539 is not set |
diff --git a/arch/powerpc/configs/storcenter_defconfig b/arch/powerpc/configs/storcenter_defconfig index 86512c8790d1..94903465ea12 100644 --- a/arch/powerpc/configs/storcenter_defconfig +++ b/arch/powerpc/configs/storcenter_defconfig | |||
@@ -1,7 +1,7 @@ | |||
1 | # | 1 | # |
2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
3 | # Linux kernel version: 2.6.29-rc2 | 3 | # Linux kernel version: 2.6.29-rc6 |
4 | # Mon Jan 26 15:35:46 2009 | 4 | # Fri Mar 6 00:09:08 2009 |
5 | # | 5 | # |
6 | # CONFIG_PPC64 is not set | 6 | # CONFIG_PPC64 is not set |
7 | 7 | ||
@@ -71,6 +71,15 @@ CONFIG_SYSVIPC_SYSCTL=y | |||
71 | # CONFIG_BSD_PROCESS_ACCT is not set | 71 | # CONFIG_BSD_PROCESS_ACCT is not set |
72 | # CONFIG_TASKSTATS is not set | 72 | # CONFIG_TASKSTATS is not set |
73 | # CONFIG_AUDIT is not set | 73 | # CONFIG_AUDIT is not set |
74 | |||
75 | # | ||
76 | # RCU Subsystem | ||
77 | # | ||
78 | CONFIG_CLASSIC_RCU=y | ||
79 | # CONFIG_TREE_RCU is not set | ||
80 | # CONFIG_PREEMPT_RCU is not set | ||
81 | # CONFIG_TREE_RCU_TRACE is not set | ||
82 | # CONFIG_PREEMPT_RCU_TRACE is not set | ||
74 | # CONFIG_IKCONFIG is not set | 83 | # CONFIG_IKCONFIG is not set |
75 | CONFIG_LOG_BUF_SHIFT=14 | 84 | CONFIG_LOG_BUF_SHIFT=14 |
76 | CONFIG_GROUP_SCHED=y | 85 | CONFIG_GROUP_SCHED=y |
@@ -144,11 +153,6 @@ CONFIG_IOSCHED_CFQ=y | |||
144 | CONFIG_DEFAULT_CFQ=y | 153 | CONFIG_DEFAULT_CFQ=y |
145 | # CONFIG_DEFAULT_NOOP is not set | 154 | # CONFIG_DEFAULT_NOOP is not set |
146 | CONFIG_DEFAULT_IOSCHED="cfq" | 155 | CONFIG_DEFAULT_IOSCHED="cfq" |
147 | CONFIG_CLASSIC_RCU=y | ||
148 | # CONFIG_TREE_RCU is not set | ||
149 | # CONFIG_PREEMPT_RCU is not set | ||
150 | # CONFIG_TREE_RCU_TRACE is not set | ||
151 | # CONFIG_PREEMPT_RCU_TRACE is not set | ||
152 | # CONFIG_FREEZER is not set | 156 | # CONFIG_FREEZER is not set |
153 | 157 | ||
154 | # | 158 | # |
@@ -377,8 +381,8 @@ CONFIG_MTD=y | |||
377 | CONFIG_MTD_PARTITIONS=y | 381 | CONFIG_MTD_PARTITIONS=y |
378 | # CONFIG_MTD_TESTS is not set | 382 | # CONFIG_MTD_TESTS is not set |
379 | # CONFIG_MTD_REDBOOT_PARTS is not set | 383 | # CONFIG_MTD_REDBOOT_PARTS is not set |
380 | # CONFIG_MTD_CMDLINE_PARTS is not set | 384 | CONFIG_MTD_CMDLINE_PARTS=y |
381 | # CONFIG_MTD_OF_PARTS is not set | 385 | CONFIG_MTD_OF_PARTS=y |
382 | # CONFIG_MTD_AR7_PARTS is not set | 386 | # CONFIG_MTD_AR7_PARTS is not set |
383 | 387 | ||
384 | # | 388 | # |
@@ -452,7 +456,6 @@ CONFIG_MTD_PHYSMAP=y | |||
452 | # LPDDR flash memory drivers | 456 | # LPDDR flash memory drivers |
453 | # | 457 | # |
454 | # CONFIG_MTD_LPDDR is not set | 458 | # CONFIG_MTD_LPDDR is not set |
455 | # CONFIG_MTD_QINFO_PROBE is not set | ||
456 | 459 | ||
457 | # | 460 | # |
458 | # UBI - Unsorted block images | 461 | # UBI - Unsorted block images |
@@ -478,13 +481,19 @@ CONFIG_BLK_DEV=y | |||
478 | # CONFIG_BLK_DEV_HD is not set | 481 | # CONFIG_BLK_DEV_HD is not set |
479 | CONFIG_MISC_DEVICES=y | 482 | CONFIG_MISC_DEVICES=y |
480 | # CONFIG_PHANTOM is not set | 483 | # CONFIG_PHANTOM is not set |
481 | # CONFIG_EEPROM_93CX6 is not set | ||
482 | # CONFIG_SGI_IOC4 is not set | 484 | # CONFIG_SGI_IOC4 is not set |
483 | # CONFIG_TIFM_CORE is not set | 485 | # CONFIG_TIFM_CORE is not set |
484 | # CONFIG_ICS932S401 is not set | 486 | # CONFIG_ICS932S401 is not set |
485 | # CONFIG_ENCLOSURE_SERVICES is not set | 487 | # CONFIG_ENCLOSURE_SERVICES is not set |
486 | # CONFIG_HP_ILO is not set | 488 | # CONFIG_HP_ILO is not set |
487 | # CONFIG_C2PORT is not set | 489 | # CONFIG_C2PORT is not set |
490 | |||
491 | # | ||
492 | # EEPROM support | ||
493 | # | ||
494 | # CONFIG_EEPROM_AT24 is not set | ||
495 | # CONFIG_EEPROM_LEGACY is not set | ||
496 | # CONFIG_EEPROM_93CX6 is not set | ||
488 | CONFIG_HAVE_IDE=y | 497 | CONFIG_HAVE_IDE=y |
489 | CONFIG_IDE=y | 498 | CONFIG_IDE=y |
490 | 499 | ||
@@ -677,6 +686,7 @@ CONFIG_R8169=y | |||
677 | # CONFIG_QLA3XXX is not set | 686 | # CONFIG_QLA3XXX is not set |
678 | # CONFIG_ATL1 is not set | 687 | # CONFIG_ATL1 is not set |
679 | # CONFIG_ATL1E is not set | 688 | # CONFIG_ATL1E is not set |
689 | # CONFIG_ATL1C is not set | ||
680 | # CONFIG_JME is not set | 690 | # CONFIG_JME is not set |
681 | # CONFIG_NETDEV_10000 is not set | 691 | # CONFIG_NETDEV_10000 is not set |
682 | # CONFIG_TR is not set | 692 | # CONFIG_TR is not set |
@@ -818,8 +828,6 @@ CONFIG_I2C_MPC=y | |||
818 | # Miscellaneous I2C Chip support | 828 | # Miscellaneous I2C Chip support |
819 | # | 829 | # |
820 | # CONFIG_DS1682 is not set | 830 | # CONFIG_DS1682 is not set |
821 | # CONFIG_EEPROM_AT24 is not set | ||
822 | # CONFIG_EEPROM_LEGACY is not set | ||
823 | # CONFIG_SENSORS_PCF8574 is not set | 831 | # CONFIG_SENSORS_PCF8574 is not set |
824 | # CONFIG_PCF8575 is not set | 832 | # CONFIG_PCF8575 is not set |
825 | # CONFIG_SENSORS_PCA9539 is not set | 833 | # CONFIG_SENSORS_PCA9539 is not set |
@@ -1159,6 +1167,7 @@ CONFIG_JFFS2_RTIME=y | |||
1159 | # CONFIG_SYSV_FS is not set | 1167 | # CONFIG_SYSV_FS is not set |
1160 | # CONFIG_UFS_FS is not set | 1168 | # CONFIG_UFS_FS is not set |
1161 | # CONFIG_NETWORK_FILESYSTEMS is not set | 1169 | # CONFIG_NETWORK_FILESYSTEMS is not set |
1170 | CONFIG_EXPORTFS=m | ||
1162 | 1171 | ||
1163 | # | 1172 | # |
1164 | # Partition Types | 1173 | # Partition Types |
diff --git a/arch/powerpc/platforms/embedded6xx/linkstation.c b/arch/powerpc/platforms/embedded6xx/linkstation.c index 2ca7be65c2d2..244f997de791 100644 --- a/arch/powerpc/platforms/embedded6xx/linkstation.c +++ b/arch/powerpc/platforms/embedded6xx/linkstation.c | |||
@@ -12,7 +12,6 @@ | |||
12 | 12 | ||
13 | #include <linux/kernel.h> | 13 | #include <linux/kernel.h> |
14 | #include <linux/initrd.h> | 14 | #include <linux/initrd.h> |
15 | #include <linux/mtd/physmap.h> | ||
16 | #include <linux/of_platform.h> | 15 | #include <linux/of_platform.h> |
17 | 16 | ||
18 | #include <asm/time.h> | 17 | #include <asm/time.h> |
@@ -22,39 +21,6 @@ | |||
22 | 21 | ||
23 | #include "mpc10x.h" | 22 | #include "mpc10x.h" |
24 | 23 | ||
25 | static struct mtd_partition linkstation_physmap_partitions[] = { | ||
26 | { | ||
27 | .name = "mtd_firmimg", | ||
28 | .offset = 0x000000, | ||
29 | .size = 0x300000, | ||
30 | }, | ||
31 | { | ||
32 | .name = "mtd_bootcode", | ||
33 | .offset = 0x300000, | ||
34 | .size = 0x070000, | ||
35 | }, | ||
36 | { | ||
37 | .name = "mtd_status", | ||
38 | .offset = 0x370000, | ||
39 | .size = 0x010000, | ||
40 | }, | ||
41 | { | ||
42 | .name = "mtd_conf", | ||
43 | .offset = 0x380000, | ||
44 | .size = 0x080000, | ||
45 | }, | ||
46 | { | ||
47 | .name = "mtd_allflash", | ||
48 | .offset = 0x000000, | ||
49 | .size = 0x400000, | ||
50 | }, | ||
51 | { | ||
52 | .name = "mtd_data", | ||
53 | .offset = 0x310000, | ||
54 | .size = 0x0f0000, | ||
55 | }, | ||
56 | }; | ||
57 | |||
58 | static __initdata struct of_device_id of_bus_ids[] = { | 24 | static __initdata struct of_device_id of_bus_ids[] = { |
59 | { .type = "soc", }, | 25 | { .type = "soc", }, |
60 | { .compatible = "simple-bus", }, | 26 | { .compatible = "simple-bus", }, |
@@ -99,10 +65,6 @@ static int __init linkstation_add_bridge(struct device_node *dev) | |||
99 | static void __init linkstation_setup_arch(void) | 65 | static void __init linkstation_setup_arch(void) |
100 | { | 66 | { |
101 | struct device_node *np; | 67 | struct device_node *np; |
102 | #ifdef CONFIG_MTD_PHYSMAP | ||
103 | physmap_set_partitions(linkstation_physmap_partitions, | ||
104 | ARRAY_SIZE(linkstation_physmap_partitions)); | ||
105 | #endif | ||
106 | 68 | ||
107 | /* Lookup PCI host bridges */ | 69 | /* Lookup PCI host bridges */ |
108 | for_each_compatible_node(np, "pci", "mpc10x-pci") | 70 | for_each_compatible_node(np, "pci", "mpc10x-pci") |
diff --git a/arch/powerpc/platforms/embedded6xx/storcenter.c b/arch/powerpc/platforms/embedded6xx/storcenter.c index 8864e4884980..613070e9ddbe 100644 --- a/arch/powerpc/platforms/embedded6xx/storcenter.c +++ b/arch/powerpc/platforms/embedded6xx/storcenter.c | |||
@@ -14,7 +14,6 @@ | |||
14 | #include <linux/kernel.h> | 14 | #include <linux/kernel.h> |
15 | #include <linux/pci.h> | 15 | #include <linux/pci.h> |
16 | #include <linux/initrd.h> | 16 | #include <linux/initrd.h> |
17 | #include <linux/mtd/physmap.h> | ||
18 | #include <linux/of_platform.h> | 17 | #include <linux/of_platform.h> |
19 | 18 | ||
20 | #include <asm/system.h> | 19 | #include <asm/system.h> |
@@ -26,32 +25,6 @@ | |||
26 | #include "mpc10x.h" | 25 | #include "mpc10x.h" |
27 | 26 | ||
28 | 27 | ||
29 | #ifdef CONFIG_MTD_PHYSMAP | ||
30 | static struct mtd_partition storcenter_physmap_partitions[] = { | ||
31 | { | ||
32 | .name = "kernel", | ||
33 | .offset = 0x000000, | ||
34 | .size = 0x170000, | ||
35 | }, | ||
36 | { | ||
37 | .name = "rootfs", | ||
38 | .offset = 0x170000, | ||
39 | .size = 0x590000, | ||
40 | }, | ||
41 | { | ||
42 | .name = "uboot", | ||
43 | .offset = 0x700000, | ||
44 | .size = 0x040000, | ||
45 | }, | ||
46 | { | ||
47 | .name = "config", | ||
48 | .offset = 0x740000, | ||
49 | .size = 0x0c0000, | ||
50 | }, | ||
51 | }; | ||
52 | #endif | ||
53 | |||
54 | |||
55 | static __initdata struct of_device_id storcenter_of_bus[] = { | 28 | static __initdata struct of_device_id storcenter_of_bus[] = { |
56 | { .name = "soc", }, | 29 | { .name = "soc", }, |
57 | {}, | 30 | {}, |
@@ -96,11 +69,6 @@ static void __init storcenter_setup_arch(void) | |||
96 | { | 69 | { |
97 | struct device_node *np; | 70 | struct device_node *np; |
98 | 71 | ||
99 | #ifdef CONFIG_MTD_PHYSMAP | ||
100 | physmap_set_partitions(storcenter_physmap_partitions, | ||
101 | ARRAY_SIZE(storcenter_physmap_partitions)); | ||
102 | #endif | ||
103 | |||
104 | /* Lookup PCI host bridges */ | 72 | /* Lookup PCI host bridges */ |
105 | for_each_compatible_node(np, "pci", "mpc10x-pci") | 73 | for_each_compatible_node(np, "pci", "mpc10x-pci") |
106 | storcenter_add_bridge(np); | 74 | storcenter_add_bridge(np); |
diff --git a/arch/sh/boards/board-ap325rxa.c b/arch/sh/boards/board-ap325rxa.c index 72da416f6162..15b6d450fbf0 100644 --- a/arch/sh/boards/board-ap325rxa.c +++ b/arch/sh/boards/board-ap325rxa.c | |||
@@ -22,6 +22,7 @@ | |||
22 | #include <linux/gpio.h> | 22 | #include <linux/gpio.h> |
23 | #include <linux/spi/spi.h> | 23 | #include <linux/spi/spi.h> |
24 | #include <linux/spi/spi_gpio.h> | 24 | #include <linux/spi/spi_gpio.h> |
25 | #include <media/soc_camera.h> | ||
25 | #include <media/soc_camera_platform.h> | 26 | #include <media/soc_camera_platform.h> |
26 | #include <media/sh_mobile_ceu.h> | 27 | #include <media/sh_mobile_ceu.h> |
27 | #include <video/sh_mobile_lcdc.h> | 28 | #include <video/sh_mobile_lcdc.h> |
diff --git a/arch/sparc/kernel/irq_64.c b/arch/sparc/kernel/irq_64.c index e289376198eb..1c378d8e90c5 100644 --- a/arch/sparc/kernel/irq_64.c +++ b/arch/sparc/kernel/irq_64.c | |||
@@ -323,17 +323,25 @@ static void sun4u_set_affinity(unsigned int virt_irq, | |||
323 | sun4u_irq_enable(virt_irq); | 323 | sun4u_irq_enable(virt_irq); |
324 | } | 324 | } |
325 | 325 | ||
326 | /* Don't do anything. The desc->status check for IRQ_DISABLED in | ||
327 | * handler_irq() will skip the handler call and that will leave the | ||
328 | * interrupt in the sent state. The next ->enable() call will hit the | ||
329 | * ICLR register to reset the state machine. | ||
330 | * | ||
331 | * This scheme is necessary, instead of clearing the Valid bit in the | ||
332 | * IMAP register, to handle the case of IMAP registers being shared by | ||
333 | * multiple INOs (and thus ICLR registers). Since we use a different | ||
334 | * virtual IRQ for each shared IMAP instance, the generic code thinks | ||
335 | * there is only one user so it prematurely calls ->disable() on | ||
336 | * free_irq(). | ||
337 | * | ||
338 | * We have to provide an explicit ->disable() method instead of using | ||
339 | * NULL to get the default. The reason is that if the generic code | ||
340 | * sees that, it also hooks up a default ->shutdown method which | ||
341 | * invokes ->mask() which we do not want. See irq_chip_set_defaults(). | ||
342 | */ | ||
326 | static void sun4u_irq_disable(unsigned int virt_irq) | 343 | static void sun4u_irq_disable(unsigned int virt_irq) |
327 | { | 344 | { |
328 | struct irq_handler_data *data = get_irq_chip_data(virt_irq); | ||
329 | |||
330 | if (likely(data)) { | ||
331 | unsigned long imap = data->imap; | ||
332 | unsigned long tmp = upa_readq(imap); | ||
333 | |||
334 | tmp &= ~IMAP_VALID; | ||
335 | upa_writeq(tmp, imap); | ||
336 | } | ||
337 | } | 345 | } |
338 | 346 | ||
339 | static void sun4u_irq_eoi(unsigned int virt_irq) | 347 | static void sun4u_irq_eoi(unsigned int virt_irq) |
@@ -746,7 +754,8 @@ void handler_irq(int irq, struct pt_regs *regs) | |||
746 | 754 | ||
747 | desc = irq_desc + virt_irq; | 755 | desc = irq_desc + virt_irq; |
748 | 756 | ||
749 | desc->handle_irq(virt_irq, desc); | 757 | if (!(desc->status & IRQ_DISABLED)) |
758 | desc->handle_irq(virt_irq, desc); | ||
750 | 759 | ||
751 | bucket_pa = next_pa; | 760 | bucket_pa = next_pa; |
752 | } | 761 | } |
diff --git a/arch/um/kernel/ptrace.c b/arch/um/kernel/ptrace.c index 15e8b7c4de13..8e3d69e4fcb5 100644 --- a/arch/um/kernel/ptrace.c +++ b/arch/um/kernel/ptrace.c | |||
@@ -64,6 +64,11 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
64 | ret = poke_user(child, addr, data); | 64 | ret = poke_user(child, addr, data); |
65 | break; | 65 | break; |
66 | 66 | ||
67 | case PTRACE_SYSEMU: | ||
68 | case PTRACE_SYSEMU_SINGLESTEP: | ||
69 | ret = -EIO; | ||
70 | break; | ||
71 | |||
67 | /* continue and stop at next (return from) syscall */ | 72 | /* continue and stop at next (return from) syscall */ |
68 | case PTRACE_SYSCALL: | 73 | case PTRACE_SYSCALL: |
69 | /* restart after signal. */ | 74 | /* restart after signal. */ |
diff --git a/arch/um/os-Linux/user_syms.c b/arch/um/os-Linux/user_syms.c index 74f49bb9b125..89b48a116a89 100644 --- a/arch/um/os-Linux/user_syms.c +++ b/arch/um/os-Linux/user_syms.c | |||
@@ -14,7 +14,6 @@ | |||
14 | #undef memset | 14 | #undef memset |
15 | 15 | ||
16 | extern size_t strlen(const char *); | 16 | extern size_t strlen(const char *); |
17 | extern void *memcpy(void *, const void *, size_t); | ||
18 | extern void *memmove(void *, const void *, size_t); | 17 | extern void *memmove(void *, const void *, size_t); |
19 | extern void *memset(void *, int, size_t); | 18 | extern void *memset(void *, int, size_t); |
20 | extern int printf(const char *, ...); | 19 | extern int printf(const char *, ...); |
@@ -24,7 +23,11 @@ extern int printf(const char *, ...); | |||
24 | EXPORT_SYMBOL(strstr); | 23 | EXPORT_SYMBOL(strstr); |
25 | #endif | 24 | #endif |
26 | 25 | ||
26 | #ifndef __x86_64__ | ||
27 | extern void *memcpy(void *, const void *, size_t); | ||
27 | EXPORT_SYMBOL(memcpy); | 28 | EXPORT_SYMBOL(memcpy); |
29 | #endif | ||
30 | |||
28 | EXPORT_SYMBOL(memmove); | 31 | EXPORT_SYMBOL(memmove); |
29 | EXPORT_SYMBOL(memset); | 32 | EXPORT_SYMBOL(memset); |
30 | EXPORT_SYMBOL(printf); | 33 | EXPORT_SYMBOL(printf); |
diff --git a/arch/x86/include/asm/efi.h b/arch/x86/include/asm/efi.h index ca5ffb2856b6..edc90f23e708 100644 --- a/arch/x86/include/asm/efi.h +++ b/arch/x86/include/asm/efi.h | |||
@@ -37,8 +37,6 @@ extern unsigned long asmlinkage efi_call_phys(void *, ...); | |||
37 | 37 | ||
38 | #else /* !CONFIG_X86_32 */ | 38 | #else /* !CONFIG_X86_32 */ |
39 | 39 | ||
40 | #define MAX_EFI_IO_PAGES 100 | ||
41 | |||
42 | extern u64 efi_call0(void *fp); | 40 | extern u64 efi_call0(void *fp); |
43 | extern u64 efi_call1(void *fp, u64 arg1); | 41 | extern u64 efi_call1(void *fp, u64 arg1); |
44 | extern u64 efi_call2(void *fp, u64 arg1, u64 arg2); | 42 | extern u64 efi_call2(void *fp, u64 arg1, u64 arg2); |
diff --git a/arch/x86/include/asm/fixmap_64.h b/arch/x86/include/asm/fixmap_64.h index 00a30ab9b1a5..8be740977db8 100644 --- a/arch/x86/include/asm/fixmap_64.h +++ b/arch/x86/include/asm/fixmap_64.h | |||
@@ -16,7 +16,6 @@ | |||
16 | #include <asm/apicdef.h> | 16 | #include <asm/apicdef.h> |
17 | #include <asm/page.h> | 17 | #include <asm/page.h> |
18 | #include <asm/vsyscall.h> | 18 | #include <asm/vsyscall.h> |
19 | #include <asm/efi.h> | ||
20 | 19 | ||
21 | /* | 20 | /* |
22 | * Here we define all the compile-time 'special' virtual | 21 | * Here we define all the compile-time 'special' virtual |
@@ -43,9 +42,6 @@ enum fixed_addresses { | |||
43 | FIX_APIC_BASE, /* local (CPU) APIC) -- required for SMP or not */ | 42 | FIX_APIC_BASE, /* local (CPU) APIC) -- required for SMP or not */ |
44 | FIX_IO_APIC_BASE_0, | 43 | FIX_IO_APIC_BASE_0, |
45 | FIX_IO_APIC_BASE_END = FIX_IO_APIC_BASE_0 + MAX_IO_APICS - 1, | 44 | FIX_IO_APIC_BASE_END = FIX_IO_APIC_BASE_0 + MAX_IO_APICS - 1, |
46 | FIX_EFI_IO_MAP_LAST_PAGE, | ||
47 | FIX_EFI_IO_MAP_FIRST_PAGE = FIX_EFI_IO_MAP_LAST_PAGE | ||
48 | + MAX_EFI_IO_PAGES - 1, | ||
49 | #ifdef CONFIG_PARAVIRT | 45 | #ifdef CONFIG_PARAVIRT |
50 | FIX_PARAVIRT_BOOTMAP, | 46 | FIX_PARAVIRT_BOOTMAP, |
51 | #endif | 47 | #endif |
diff --git a/arch/x86/include/asm/i387.h b/arch/x86/include/asm/i387.h index 48f0004db8c9..71c9e5183982 100644 --- a/arch/x86/include/asm/i387.h +++ b/arch/x86/include/asm/i387.h | |||
@@ -172,7 +172,13 @@ static inline void __save_init_fpu(struct task_struct *tsk) | |||
172 | 172 | ||
173 | #else /* CONFIG_X86_32 */ | 173 | #else /* CONFIG_X86_32 */ |
174 | 174 | ||
175 | extern void finit(void); | 175 | #ifdef CONFIG_MATH_EMULATION |
176 | extern void finit_task(struct task_struct *tsk); | ||
177 | #else | ||
178 | static inline void finit_task(struct task_struct *tsk) | ||
179 | { | ||
180 | } | ||
181 | #endif | ||
176 | 182 | ||
177 | static inline void tolerant_fwait(void) | 183 | static inline void tolerant_fwait(void) |
178 | { | 184 | { |
diff --git a/arch/x86/kernel/cpu/cpufreq/p4-clockmod.c b/arch/x86/kernel/cpu/cpufreq/p4-clockmod.c index b585e04cbc9e..3178c3acd97e 100644 --- a/arch/x86/kernel/cpu/cpufreq/p4-clockmod.c +++ b/arch/x86/kernel/cpu/cpufreq/p4-clockmod.c | |||
@@ -277,7 +277,6 @@ static struct cpufreq_driver p4clockmod_driver = { | |||
277 | .name = "p4-clockmod", | 277 | .name = "p4-clockmod", |
278 | .owner = THIS_MODULE, | 278 | .owner = THIS_MODULE, |
279 | .attr = p4clockmod_attr, | 279 | .attr = p4clockmod_attr, |
280 | .hide_interface = 1, | ||
281 | }; | 280 | }; |
282 | 281 | ||
283 | 282 | ||
diff --git a/arch/x86/kernel/ds.c b/arch/x86/kernel/ds.c index 169a120587be..87b67e3a765a 100644 --- a/arch/x86/kernel/ds.c +++ b/arch/x86/kernel/ds.c | |||
@@ -729,7 +729,7 @@ struct pebs_tracer *ds_request_pebs(struct task_struct *task, | |||
729 | 729 | ||
730 | spin_unlock_irqrestore(&ds_lock, irq); | 730 | spin_unlock_irqrestore(&ds_lock, irq); |
731 | 731 | ||
732 | ds_write_config(tracer->ds.context, &tracer->trace.ds, ds_bts); | 732 | ds_write_config(tracer->ds.context, &tracer->trace.ds, ds_pebs); |
733 | ds_resume_pebs(tracer); | 733 | ds_resume_pebs(tracer); |
734 | 734 | ||
735 | return tracer; | 735 | return tracer; |
@@ -1029,5 +1029,4 @@ void ds_copy_thread(struct task_struct *tsk, struct task_struct *father) | |||
1029 | 1029 | ||
1030 | void ds_exit_thread(struct task_struct *tsk) | 1030 | void ds_exit_thread(struct task_struct *tsk) |
1031 | { | 1031 | { |
1032 | WARN_ON(tsk->thread.ds_ctx); | ||
1033 | } | 1032 | } |
diff --git a/arch/x86/kernel/efi.c b/arch/x86/kernel/efi.c index 1119d247fe11..eb1ef3b67dd5 100644 --- a/arch/x86/kernel/efi.c +++ b/arch/x86/kernel/efi.c | |||
@@ -467,7 +467,7 @@ void __init efi_enter_virtual_mode(void) | |||
467 | efi_memory_desc_t *md; | 467 | efi_memory_desc_t *md; |
468 | efi_status_t status; | 468 | efi_status_t status; |
469 | unsigned long size; | 469 | unsigned long size; |
470 | u64 end, systab, addr, npages; | 470 | u64 end, systab, addr, npages, end_pfn; |
471 | void *p, *va; | 471 | void *p, *va; |
472 | 472 | ||
473 | efi.systab = NULL; | 473 | efi.systab = NULL; |
@@ -479,7 +479,10 @@ void __init efi_enter_virtual_mode(void) | |||
479 | size = md->num_pages << EFI_PAGE_SHIFT; | 479 | size = md->num_pages << EFI_PAGE_SHIFT; |
480 | end = md->phys_addr + size; | 480 | end = md->phys_addr + size; |
481 | 481 | ||
482 | if (PFN_UP(end) <= max_low_pfn_mapped) | 482 | end_pfn = PFN_UP(end); |
483 | if (end_pfn <= max_low_pfn_mapped | ||
484 | || (end_pfn > (1UL << (32 - PAGE_SHIFT)) | ||
485 | && end_pfn <= max_pfn_mapped)) | ||
483 | va = __va(md->phys_addr); | 486 | va = __va(md->phys_addr); |
484 | else | 487 | else |
485 | va = efi_ioremap(md->phys_addr, size); | 488 | va = efi_ioremap(md->phys_addr, size); |
diff --git a/arch/x86/kernel/efi_64.c b/arch/x86/kernel/efi_64.c index 652c5287215f..cb783b92c50c 100644 --- a/arch/x86/kernel/efi_64.c +++ b/arch/x86/kernel/efi_64.c | |||
@@ -99,24 +99,11 @@ void __init efi_call_phys_epilog(void) | |||
99 | 99 | ||
100 | void __iomem *__init efi_ioremap(unsigned long phys_addr, unsigned long size) | 100 | void __iomem *__init efi_ioremap(unsigned long phys_addr, unsigned long size) |
101 | { | 101 | { |
102 | static unsigned pages_mapped __initdata; | 102 | unsigned long last_map_pfn; |
103 | unsigned i, pages; | ||
104 | unsigned long offset; | ||
105 | 103 | ||
106 | pages = PFN_UP(phys_addr + size) - PFN_DOWN(phys_addr); | 104 | last_map_pfn = init_memory_mapping(phys_addr, phys_addr + size); |
107 | offset = phys_addr & ~PAGE_MASK; | 105 | if ((last_map_pfn << PAGE_SHIFT) < phys_addr + size) |
108 | phys_addr &= PAGE_MASK; | ||
109 | |||
110 | if (pages_mapped + pages > MAX_EFI_IO_PAGES) | ||
111 | return NULL; | 106 | return NULL; |
112 | 107 | ||
113 | for (i = 0; i < pages; i++) { | 108 | return (void __iomem *)__va(phys_addr); |
114 | __set_fixmap(FIX_EFI_IO_MAP_FIRST_PAGE - pages_mapped, | ||
115 | phys_addr, PAGE_KERNEL); | ||
116 | phys_addr += PAGE_SIZE; | ||
117 | pages_mapped++; | ||
118 | } | ||
119 | |||
120 | return (void __iomem *)__fix_to_virt(FIX_EFI_IO_MAP_FIRST_PAGE - \ | ||
121 | (pages_mapped - pages)) + offset; | ||
122 | } | 109 | } |
diff --git a/arch/x86/kernel/i387.c b/arch/x86/kernel/i387.c index b0f61f0dcd0a..f2f8540a7f3d 100644 --- a/arch/x86/kernel/i387.c +++ b/arch/x86/kernel/i387.c | |||
@@ -136,7 +136,7 @@ int init_fpu(struct task_struct *tsk) | |||
136 | #ifdef CONFIG_X86_32 | 136 | #ifdef CONFIG_X86_32 |
137 | if (!HAVE_HWFP) { | 137 | if (!HAVE_HWFP) { |
138 | memset(tsk->thread.xstate, 0, xstate_size); | 138 | memset(tsk->thread.xstate, 0, xstate_size); |
139 | finit(); | 139 | finit_task(tsk); |
140 | set_stopped_child_used_math(tsk); | 140 | set_stopped_child_used_math(tsk); |
141 | return 0; | 141 | return 0; |
142 | } | 142 | } |
diff --git a/arch/x86/kernel/kprobes.c b/arch/x86/kernel/kprobes.c index e948b28a5a9a..4558dd3918cf 100644 --- a/arch/x86/kernel/kprobes.c +++ b/arch/x86/kernel/kprobes.c | |||
@@ -193,6 +193,9 @@ static int __kprobes can_boost(kprobe_opcode_t *opcodes) | |||
193 | kprobe_opcode_t opcode; | 193 | kprobe_opcode_t opcode; |
194 | kprobe_opcode_t *orig_opcodes = opcodes; | 194 | kprobe_opcode_t *orig_opcodes = opcodes; |
195 | 195 | ||
196 | if (search_exception_tables(opcodes)) | ||
197 | return 0; /* Page fault may occur on this address. */ | ||
198 | |||
196 | retry: | 199 | retry: |
197 | if (opcodes - orig_opcodes > MAX_INSN_SIZE - 1) | 200 | if (opcodes - orig_opcodes > MAX_INSN_SIZE - 1) |
198 | return 0; | 201 | return 0; |
diff --git a/arch/x86/kernel/reboot.c b/arch/x86/kernel/reboot.c index 2b46eb41643b..4526b3a75ed2 100644 --- a/arch/x86/kernel/reboot.c +++ b/arch/x86/kernel/reboot.c | |||
@@ -217,6 +217,14 @@ static struct dmi_system_id __initdata reboot_dmi_table[] = { | |||
217 | DMI_MATCH(DMI_PRODUCT_NAME, "HP Compaq"), | 217 | DMI_MATCH(DMI_PRODUCT_NAME, "HP Compaq"), |
218 | }, | 218 | }, |
219 | }, | 219 | }, |
220 | { /* Handle problems with rebooting on Dell XPS710 */ | ||
221 | .callback = set_bios_reboot, | ||
222 | .ident = "Dell XPS710", | ||
223 | .matches = { | ||
224 | DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), | ||
225 | DMI_MATCH(DMI_PRODUCT_NAME, "Dell XPS710"), | ||
226 | }, | ||
227 | }, | ||
220 | { } | 228 | { } |
221 | }; | 229 | }; |
222 | 230 | ||
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c index c461f6d69074..6a8811a69324 100644 --- a/arch/x86/kernel/setup.c +++ b/arch/x86/kernel/setup.c | |||
@@ -770,6 +770,9 @@ void __init setup_arch(char **cmdline_p) | |||
770 | 770 | ||
771 | finish_e820_parsing(); | 771 | finish_e820_parsing(); |
772 | 772 | ||
773 | if (efi_enabled) | ||
774 | efi_init(); | ||
775 | |||
773 | dmi_scan_machine(); | 776 | dmi_scan_machine(); |
774 | 777 | ||
775 | dmi_check_system(bad_bios_dmi_table); | 778 | dmi_check_system(bad_bios_dmi_table); |
@@ -789,8 +792,6 @@ void __init setup_arch(char **cmdline_p) | |||
789 | insert_resource(&iomem_resource, &data_resource); | 792 | insert_resource(&iomem_resource, &data_resource); |
790 | insert_resource(&iomem_resource, &bss_resource); | 793 | insert_resource(&iomem_resource, &bss_resource); |
791 | 794 | ||
792 | if (efi_enabled) | ||
793 | efi_init(); | ||
794 | 795 | ||
795 | #ifdef CONFIG_X86_32 | 796 | #ifdef CONFIG_X86_32 |
796 | if (ppro_with_ram_bug()) { | 797 | if (ppro_with_ram_bug()) { |
diff --git a/arch/x86/kernel/tsc.c b/arch/x86/kernel/tsc.c index 599e58168631..d5cebb52d45b 100644 --- a/arch/x86/kernel/tsc.c +++ b/arch/x86/kernel/tsc.c | |||
@@ -273,30 +273,43 @@ static unsigned long pit_calibrate_tsc(u32 latch, unsigned long ms, int loopmin) | |||
273 | * use the TSC value at the transitions to calculate a pretty | 273 | * use the TSC value at the transitions to calculate a pretty |
274 | * good value for the TSC frequencty. | 274 | * good value for the TSC frequencty. |
275 | */ | 275 | */ |
276 | static inline int pit_expect_msb(unsigned char val) | 276 | static inline int pit_expect_msb(unsigned char val, u64 *tscp, unsigned long *deltap) |
277 | { | 277 | { |
278 | int count = 0; | 278 | int count; |
279 | u64 tsc = 0; | ||
279 | 280 | ||
280 | for (count = 0; count < 50000; count++) { | 281 | for (count = 0; count < 50000; count++) { |
281 | /* Ignore LSB */ | 282 | /* Ignore LSB */ |
282 | inb(0x42); | 283 | inb(0x42); |
283 | if (inb(0x42) != val) | 284 | if (inb(0x42) != val) |
284 | break; | 285 | break; |
286 | tsc = get_cycles(); | ||
285 | } | 287 | } |
286 | return count > 50; | 288 | *deltap = get_cycles() - tsc; |
289 | *tscp = tsc; | ||
290 | |||
291 | /* | ||
292 | * We require _some_ success, but the quality control | ||
293 | * will be based on the error terms on the TSC values. | ||
294 | */ | ||
295 | return count > 5; | ||
287 | } | 296 | } |
288 | 297 | ||
289 | /* | 298 | /* |
290 | * How many MSB values do we want to see? We aim for a | 299 | * How many MSB values do we want to see? We aim for |
291 | * 15ms calibration, which assuming a 2us counter read | 300 | * a maximum error rate of 500ppm (in practice the |
292 | * error should give us roughly 150 ppm precision for | 301 | * real error is much smaller), but refuse to spend |
293 | * the calibration. | 302 | * more than 25ms on it. |
294 | */ | 303 | */ |
295 | #define QUICK_PIT_MS 15 | 304 | #define MAX_QUICK_PIT_MS 25 |
296 | #define QUICK_PIT_ITERATIONS (QUICK_PIT_MS * PIT_TICK_RATE / 1000 / 256) | 305 | #define MAX_QUICK_PIT_ITERATIONS (MAX_QUICK_PIT_MS * PIT_TICK_RATE / 1000 / 256) |
297 | 306 | ||
298 | static unsigned long quick_pit_calibrate(void) | 307 | static unsigned long quick_pit_calibrate(void) |
299 | { | 308 | { |
309 | int i; | ||
310 | u64 tsc, delta; | ||
311 | unsigned long d1, d2; | ||
312 | |||
300 | /* Set the Gate high, disable speaker */ | 313 | /* Set the Gate high, disable speaker */ |
301 | outb((inb(0x61) & ~0x02) | 0x01, 0x61); | 314 | outb((inb(0x61) & ~0x02) | 0x01, 0x61); |
302 | 315 | ||
@@ -315,45 +328,52 @@ static unsigned long quick_pit_calibrate(void) | |||
315 | outb(0xff, 0x42); | 328 | outb(0xff, 0x42); |
316 | outb(0xff, 0x42); | 329 | outb(0xff, 0x42); |
317 | 330 | ||
318 | if (pit_expect_msb(0xff)) { | 331 | /* |
319 | int i; | 332 | * The PIT starts counting at the next edge, so we |
320 | u64 t1, t2, delta; | 333 | * need to delay for a microsecond. The easiest way |
321 | unsigned char expect = 0xfe; | 334 | * to do that is to just read back the 16-bit counter |
322 | 335 | * once from the PIT. | |
323 | t1 = get_cycles(); | 336 | */ |
324 | for (i = 0; i < QUICK_PIT_ITERATIONS; i++, expect--) { | 337 | inb(0x42); |
325 | if (!pit_expect_msb(expect)) | 338 | inb(0x42); |
326 | goto failed; | 339 | |
340 | if (pit_expect_msb(0xff, &tsc, &d1)) { | ||
341 | for (i = 1; i <= MAX_QUICK_PIT_ITERATIONS; i++) { | ||
342 | if (!pit_expect_msb(0xff-i, &delta, &d2)) | ||
343 | break; | ||
344 | |||
345 | /* | ||
346 | * Iterate until the error is less than 500 ppm | ||
347 | */ | ||
348 | delta -= tsc; | ||
349 | if (d1+d2 < delta >> 11) | ||
350 | goto success; | ||
327 | } | 351 | } |
328 | t2 = get_cycles(); | ||
329 | |||
330 | /* | ||
331 | * Make sure we can rely on the second TSC timestamp: | ||
332 | */ | ||
333 | if (!pit_expect_msb(expect)) | ||
334 | goto failed; | ||
335 | |||
336 | /* | ||
337 | * Ok, if we get here, then we've seen the | ||
338 | * MSB of the PIT decrement QUICK_PIT_ITERATIONS | ||
339 | * times, and each MSB had many hits, so we never | ||
340 | * had any sudden jumps. | ||
341 | * | ||
342 | * As a result, we can depend on there not being | ||
343 | * any odd delays anywhere, and the TSC reads are | ||
344 | * reliable. | ||
345 | * | ||
346 | * kHz = ticks / time-in-seconds / 1000; | ||
347 | * kHz = (t2 - t1) / (QPI * 256 / PIT_TICK_RATE) / 1000 | ||
348 | * kHz = ((t2 - t1) * PIT_TICK_RATE) / (QPI * 256 * 1000) | ||
349 | */ | ||
350 | delta = (t2 - t1)*PIT_TICK_RATE; | ||
351 | do_div(delta, QUICK_PIT_ITERATIONS*256*1000); | ||
352 | printk("Fast TSC calibration using PIT\n"); | ||
353 | return delta; | ||
354 | } | 352 | } |
355 | failed: | 353 | printk("Fast TSC calibration failed\n"); |
356 | return 0; | 354 | return 0; |
355 | |||
356 | success: | ||
357 | /* | ||
358 | * Ok, if we get here, then we've seen the | ||
359 | * MSB of the PIT decrement 'i' times, and the | ||
360 | * error has shrunk to less than 500 ppm. | ||
361 | * | ||
362 | * As a result, we can depend on there not being | ||
363 | * any odd delays anywhere, and the TSC reads are | ||
364 | * reliable (within the error). We also adjust the | ||
365 | * delta to the middle of the error bars, just | ||
366 | * because it looks nicer. | ||
367 | * | ||
368 | * kHz = ticks / time-in-seconds / 1000; | ||
369 | * kHz = (t2 - t1) / (I * 256 / PIT_TICK_RATE) / 1000 | ||
370 | * kHz = ((t2 - t1) * PIT_TICK_RATE) / (I * 256 * 1000) | ||
371 | */ | ||
372 | delta += (long)(d2 - d1)/2; | ||
373 | delta *= PIT_TICK_RATE; | ||
374 | do_div(delta, i*256*1000); | ||
375 | printk("Fast TSC calibration using PIT\n"); | ||
376 | return delta; | ||
357 | } | 377 | } |
358 | 378 | ||
359 | /** | 379 | /** |
diff --git a/arch/x86/lguest/boot.c b/arch/x86/lguest/boot.c index 92f1c6f3e19d..960a8d9c049c 100644 --- a/arch/x86/lguest/boot.c +++ b/arch/x86/lguest/boot.c | |||
@@ -343,6 +343,11 @@ static void lguest_cpuid(unsigned int *ax, unsigned int *bx, | |||
343 | * flush_tlb_user() for both user and kernel mappings unless | 343 | * flush_tlb_user() for both user and kernel mappings unless |
344 | * the Page Global Enable (PGE) feature bit is set. */ | 344 | * the Page Global Enable (PGE) feature bit is set. */ |
345 | *dx |= 0x00002000; | 345 | *dx |= 0x00002000; |
346 | /* We also lie, and say we're family id 5. 6 or greater | ||
347 | * leads to a rdmsr in early_init_intel which we can't handle. | ||
348 | * Family ID is returned as bits 8-12 in ax. */ | ||
349 | *ax &= 0xFFFFF0FF; | ||
350 | *ax |= 0x00000500; | ||
346 | break; | 351 | break; |
347 | case 0x80000000: | 352 | case 0x80000000: |
348 | /* Futureproof this a little: if they ask how much extended | 353 | /* Futureproof this a little: if they ask how much extended |
@@ -589,19 +594,21 @@ static void __init lguest_init_IRQ(void) | |||
589 | /* Some systems map "vectors" to interrupts weirdly. Lguest has | 594 | /* Some systems map "vectors" to interrupts weirdly. Lguest has |
590 | * a straightforward 1 to 1 mapping, so force that here. */ | 595 | * a straightforward 1 to 1 mapping, so force that here. */ |
591 | __get_cpu_var(vector_irq)[vector] = i; | 596 | __get_cpu_var(vector_irq)[vector] = i; |
592 | if (vector != SYSCALL_VECTOR) { | 597 | if (vector != SYSCALL_VECTOR) |
593 | set_intr_gate(vector, | 598 | set_intr_gate(vector, interrupt[i]); |
594 | interrupt[vector-FIRST_EXTERNAL_VECTOR]); | ||
595 | set_irq_chip_and_handler_name(i, &lguest_irq_controller, | ||
596 | handle_level_irq, | ||
597 | "level"); | ||
598 | } | ||
599 | } | 599 | } |
600 | /* This call is required to set up for 4k stacks, where we have | 600 | /* This call is required to set up for 4k stacks, where we have |
601 | * separate stacks for hard and soft interrupts. */ | 601 | * separate stacks for hard and soft interrupts. */ |
602 | irq_ctx_init(smp_processor_id()); | 602 | irq_ctx_init(smp_processor_id()); |
603 | } | 603 | } |
604 | 604 | ||
605 | void lguest_setup_irq(unsigned int irq) | ||
606 | { | ||
607 | irq_to_desc_alloc_cpu(irq, 0); | ||
608 | set_irq_chip_and_handler_name(irq, &lguest_irq_controller, | ||
609 | handle_level_irq, "level"); | ||
610 | } | ||
611 | |||
605 | /* | 612 | /* |
606 | * Time. | 613 | * Time. |
607 | * | 614 | * |
diff --git a/arch/x86/math-emu/fpu_aux.c b/arch/x86/math-emu/fpu_aux.c index 491e737ce547..aa0987088774 100644 --- a/arch/x86/math-emu/fpu_aux.c +++ b/arch/x86/math-emu/fpu_aux.c | |||
@@ -30,20 +30,29 @@ static void fclex(void) | |||
30 | } | 30 | } |
31 | 31 | ||
32 | /* Needs to be externally visible */ | 32 | /* Needs to be externally visible */ |
33 | void finit(void) | 33 | void finit_task(struct task_struct *tsk) |
34 | { | 34 | { |
35 | control_word = 0x037f; | 35 | struct i387_soft_struct *soft = &tsk->thread.xstate->soft; |
36 | partial_status = 0; | 36 | struct address *oaddr, *iaddr; |
37 | top = 0; /* We don't keep top in the status word internally. */ | 37 | soft->cwd = 0x037f; |
38 | fpu_tag_word = 0xffff; | 38 | soft->swd = 0; |
39 | soft->ftop = 0; /* We don't keep top in the status word internally. */ | ||
40 | soft->twd = 0xffff; | ||
39 | /* The behaviour is different from that detailed in | 41 | /* The behaviour is different from that detailed in |
40 | Section 15.1.6 of the Intel manual */ | 42 | Section 15.1.6 of the Intel manual */ |
41 | operand_address.offset = 0; | 43 | oaddr = (struct address *)&soft->foo; |
42 | operand_address.selector = 0; | 44 | oaddr->offset = 0; |
43 | instruction_address.offset = 0; | 45 | oaddr->selector = 0; |
44 | instruction_address.selector = 0; | 46 | iaddr = (struct address *)&soft->fip; |
45 | instruction_address.opcode = 0; | 47 | iaddr->offset = 0; |
46 | no_ip_update = 1; | 48 | iaddr->selector = 0; |
49 | iaddr->opcode = 0; | ||
50 | soft->no_update = 1; | ||
51 | } | ||
52 | |||
53 | void finit(void) | ||
54 | { | ||
55 | finit_task(current); | ||
47 | } | 56 | } |
48 | 57 | ||
49 | /* | 58 | /* |
diff --git a/arch/x86/mm/kmmio.c b/arch/x86/mm/kmmio.c index 9f205030d9aa..6a518dd08a36 100644 --- a/arch/x86/mm/kmmio.c +++ b/arch/x86/mm/kmmio.c | |||
@@ -451,23 +451,24 @@ static void rcu_free_kmmio_fault_pages(struct rcu_head *head) | |||
451 | 451 | ||
452 | static void remove_kmmio_fault_pages(struct rcu_head *head) | 452 | static void remove_kmmio_fault_pages(struct rcu_head *head) |
453 | { | 453 | { |
454 | struct kmmio_delayed_release *dr = container_of( | 454 | struct kmmio_delayed_release *dr = |
455 | head, | 455 | container_of(head, struct kmmio_delayed_release, rcu); |
456 | struct kmmio_delayed_release, | ||
457 | rcu); | ||
458 | struct kmmio_fault_page *p = dr->release_list; | 456 | struct kmmio_fault_page *p = dr->release_list; |
459 | struct kmmio_fault_page **prevp = &dr->release_list; | 457 | struct kmmio_fault_page **prevp = &dr->release_list; |
460 | unsigned long flags; | 458 | unsigned long flags; |
459 | |||
461 | spin_lock_irqsave(&kmmio_lock, flags); | 460 | spin_lock_irqsave(&kmmio_lock, flags); |
462 | while (p) { | 461 | while (p) { |
463 | if (!p->count) | 462 | if (!p->count) { |
464 | list_del_rcu(&p->list); | 463 | list_del_rcu(&p->list); |
465 | else | 464 | prevp = &p->release_next; |
465 | } else { | ||
466 | *prevp = p->release_next; | 466 | *prevp = p->release_next; |
467 | prevp = &p->release_next; | 467 | } |
468 | p = p->release_next; | 468 | p = p->release_next; |
469 | } | 469 | } |
470 | spin_unlock_irqrestore(&kmmio_lock, flags); | 470 | spin_unlock_irqrestore(&kmmio_lock, flags); |
471 | |||
471 | /* This is the real RCU destroy call. */ | 472 | /* This is the real RCU destroy call. */ |
472 | call_rcu(&dr->rcu, rcu_free_kmmio_fault_pages); | 473 | call_rcu(&dr->rcu, rcu_free_kmmio_fault_pages); |
473 | } | 474 | } |
diff --git a/arch/x86/mm/pageattr.c b/arch/x86/mm/pageattr.c index 7be47d1a97e4..7233bd7e357b 100644 --- a/arch/x86/mm/pageattr.c +++ b/arch/x86/mm/pageattr.c | |||
@@ -515,6 +515,17 @@ static int split_large_page(pte_t *kpte, unsigned long address) | |||
515 | * primary protection behavior: | 515 | * primary protection behavior: |
516 | */ | 516 | */ |
517 | __set_pmd_pte(kpte, address, mk_pte(base, __pgprot(_KERNPG_TABLE))); | 517 | __set_pmd_pte(kpte, address, mk_pte(base, __pgprot(_KERNPG_TABLE))); |
518 | |||
519 | /* | ||
520 | * Intel Atom errata AAH41 workaround. | ||
521 | * | ||
522 | * The real fix should be in hw or in a microcode update, but | ||
523 | * we also probabilistically try to reduce the window of having | ||
524 | * a large TLB mixed with 4K TLBs while instruction fetches are | ||
525 | * going on. | ||
526 | */ | ||
527 | __flush_tlb_all(); | ||
528 | |||
518 | base = NULL; | 529 | base = NULL; |
519 | 530 | ||
520 | out_unlock: | 531 | out_unlock: |
diff --git a/arch/xtensa/Kconfig b/arch/xtensa/Kconfig index 6c873dceb177..981200830432 100644 --- a/arch/xtensa/Kconfig +++ b/arch/xtensa/Kconfig | |||
@@ -103,9 +103,6 @@ config MATH_EMULATION | |||
103 | help | 103 | help |
104 | Can we use information of configuration file? | 104 | Can we use information of configuration file? |
105 | 105 | ||
106 | config HIGHMEM | ||
107 | bool "High memory support" | ||
108 | |||
109 | endmenu | 106 | endmenu |
110 | 107 | ||
111 | menu "Platform options" | 108 | menu "Platform options" |
diff --git a/arch/xtensa/kernel/setup.c b/arch/xtensa/kernel/setup.c index 9606d2bd1dd9..4ec1633c2941 100644 --- a/arch/xtensa/kernel/setup.c +++ b/arch/xtensa/kernel/setup.c | |||
@@ -44,6 +44,8 @@ | |||
44 | #include <asm/setup.h> | 44 | #include <asm/setup.h> |
45 | #include <asm/param.h> | 45 | #include <asm/param.h> |
46 | 46 | ||
47 | #include <platform/hardware.h> | ||
48 | |||
47 | #if defined(CONFIG_VGA_CONSOLE) || defined(CONFIG_DUMMY_CONSOLE) | 49 | #if defined(CONFIG_VGA_CONSOLE) || defined(CONFIG_DUMMY_CONSOLE) |
48 | struct screen_info screen_info = { 0, 24, 0, 0, 0, 80, 0, 0, 0, 24, 1, 16}; | 50 | struct screen_info screen_info = { 0, 24, 0, 0, 0, 80, 0, 0, 0, 24, 1, 16}; |
49 | #endif | 51 | #endif |
diff --git a/arch/xtensa/kernel/traps.c b/arch/xtensa/kernel/traps.c index c7a021d9f696..c44f830b6c7a 100644 --- a/arch/xtensa/kernel/traps.c +++ b/arch/xtensa/kernel/traps.c | |||
@@ -30,6 +30,7 @@ | |||
30 | #include <linux/stringify.h> | 30 | #include <linux/stringify.h> |
31 | #include <linux/kallsyms.h> | 31 | #include <linux/kallsyms.h> |
32 | #include <linux/delay.h> | 32 | #include <linux/delay.h> |
33 | #include <linux/hardirq.h> | ||
33 | 34 | ||
34 | #include <asm/ptrace.h> | 35 | #include <asm/ptrace.h> |
35 | #include <asm/timex.h> | 36 | #include <asm/timex.h> |
diff --git a/arch/xtensa/mm/fault.c b/arch/xtensa/mm/fault.c index 33f366be323f..bdd860d93f72 100644 --- a/arch/xtensa/mm/fault.c +++ b/arch/xtensa/mm/fault.c | |||
@@ -14,6 +14,7 @@ | |||
14 | 14 | ||
15 | #include <linux/mm.h> | 15 | #include <linux/mm.h> |
16 | #include <linux/module.h> | 16 | #include <linux/module.h> |
17 | #include <linux/hardirq.h> | ||
17 | #include <asm/mmu_context.h> | 18 | #include <asm/mmu_context.h> |
18 | #include <asm/cacheflush.h> | 19 | #include <asm/cacheflush.h> |
19 | #include <asm/hardirq.h> | 20 | #include <asm/hardirq.h> |
diff --git a/arch/xtensa/platforms/iss/console.c b/arch/xtensa/platforms/iss/console.c index efed8897bef3..25d46c84eb08 100644 --- a/arch/xtensa/platforms/iss/console.c +++ b/arch/xtensa/platforms/iss/console.c | |||
@@ -140,16 +140,14 @@ static void rs_poll(unsigned long priv) | |||
140 | } | 140 | } |
141 | 141 | ||
142 | 142 | ||
143 | static void rs_put_char(struct tty_struct *tty, unsigned char ch) | 143 | static int rs_put_char(struct tty_struct *tty, unsigned char ch) |
144 | { | 144 | { |
145 | char buf[2]; | 145 | char buf[2]; |
146 | 146 | ||
147 | if (!tty) | ||
148 | return; | ||
149 | |||
150 | buf[0] = ch; | 147 | buf[0] = ch; |
151 | buf[1] = '\0'; /* Is this NULL necessary? */ | 148 | buf[1] = '\0'; /* Is this NULL necessary? */ |
152 | __simc (SYS_write, 1, (unsigned long) buf, 1, 0, 0); | 149 | __simc (SYS_write, 1, (unsigned long) buf, 1, 0, 0); |
150 | return 1; | ||
153 | } | 151 | } |
154 | 152 | ||
155 | static void rs_flush_chars(struct tty_struct *tty) | 153 | static void rs_flush_chars(struct tty_struct *tty) |
diff --git a/block/blk-merge.c b/block/blk-merge.c index a104593e70c3..5a244f05360f 100644 --- a/block/blk-merge.c +++ b/block/blk-merge.c | |||
@@ -39,14 +39,13 @@ void blk_recalc_rq_sectors(struct request *rq, int nsect) | |||
39 | } | 39 | } |
40 | 40 | ||
41 | static unsigned int __blk_recalc_rq_segments(struct request_queue *q, | 41 | static unsigned int __blk_recalc_rq_segments(struct request_queue *q, |
42 | struct bio *bio, | 42 | struct bio *bio) |
43 | unsigned int *seg_size_ptr) | ||
44 | { | 43 | { |
45 | unsigned int phys_size; | 44 | unsigned int phys_size; |
46 | struct bio_vec *bv, *bvprv = NULL; | 45 | struct bio_vec *bv, *bvprv = NULL; |
47 | int cluster, i, high, highprv = 1; | 46 | int cluster, i, high, highprv = 1; |
48 | unsigned int seg_size, nr_phys_segs; | 47 | unsigned int seg_size, nr_phys_segs; |
49 | struct bio *fbio; | 48 | struct bio *fbio, *bbio; |
50 | 49 | ||
51 | if (!bio) | 50 | if (!bio) |
52 | return 0; | 51 | return 0; |
@@ -87,26 +86,20 @@ new_segment: | |||
87 | seg_size = bv->bv_len; | 86 | seg_size = bv->bv_len; |
88 | highprv = high; | 87 | highprv = high; |
89 | } | 88 | } |
89 | bbio = bio; | ||
90 | } | 90 | } |
91 | 91 | ||
92 | if (seg_size_ptr) | 92 | if (nr_phys_segs == 1 && seg_size > fbio->bi_seg_front_size) |
93 | *seg_size_ptr = seg_size; | 93 | fbio->bi_seg_front_size = seg_size; |
94 | if (seg_size > bbio->bi_seg_back_size) | ||
95 | bbio->bi_seg_back_size = seg_size; | ||
94 | 96 | ||
95 | return nr_phys_segs; | 97 | return nr_phys_segs; |
96 | } | 98 | } |
97 | 99 | ||
98 | void blk_recalc_rq_segments(struct request *rq) | 100 | void blk_recalc_rq_segments(struct request *rq) |
99 | { | 101 | { |
100 | unsigned int seg_size = 0, phys_segs; | 102 | rq->nr_phys_segments = __blk_recalc_rq_segments(rq->q, rq->bio); |
101 | |||
102 | phys_segs = __blk_recalc_rq_segments(rq->q, rq->bio, &seg_size); | ||
103 | |||
104 | if (phys_segs == 1 && seg_size > rq->bio->bi_seg_front_size) | ||
105 | rq->bio->bi_seg_front_size = seg_size; | ||
106 | if (seg_size > rq->biotail->bi_seg_back_size) | ||
107 | rq->biotail->bi_seg_back_size = seg_size; | ||
108 | |||
109 | rq->nr_phys_segments = phys_segs; | ||
110 | } | 103 | } |
111 | 104 | ||
112 | void blk_recount_segments(struct request_queue *q, struct bio *bio) | 105 | void blk_recount_segments(struct request_queue *q, struct bio *bio) |
@@ -114,7 +107,7 @@ void blk_recount_segments(struct request_queue *q, struct bio *bio) | |||
114 | struct bio *nxt = bio->bi_next; | 107 | struct bio *nxt = bio->bi_next; |
115 | 108 | ||
116 | bio->bi_next = NULL; | 109 | bio->bi_next = NULL; |
117 | bio->bi_phys_segments = __blk_recalc_rq_segments(q, bio, NULL); | 110 | bio->bi_phys_segments = __blk_recalc_rq_segments(q, bio); |
118 | bio->bi_next = nxt; | 111 | bio->bi_next = nxt; |
119 | bio->bi_flags |= (1 << BIO_SEG_VALID); | 112 | bio->bi_flags |= (1 << BIO_SEG_VALID); |
120 | } | 113 | } |
diff --git a/drivers/acpi/bus.c b/drivers/acpi/bus.c index 765fd1c56cd6..bee64b73c919 100644 --- a/drivers/acpi/bus.c +++ b/drivers/acpi/bus.c | |||
@@ -758,8 +758,7 @@ static int __init acpi_bus_init(void) | |||
758 | acpi_status status = AE_OK; | 758 | acpi_status status = AE_OK; |
759 | extern acpi_status acpi_os_initialize1(void); | 759 | extern acpi_status acpi_os_initialize1(void); |
760 | 760 | ||
761 | 761 | acpi_os_initialize1(); | |
762 | status = acpi_os_initialize1(); | ||
763 | 762 | ||
764 | status = | 763 | status = |
765 | acpi_enable_subsystem(ACPI_NO_HARDWARE_INIT | ACPI_NO_ACPI_ENABLE); | 764 | acpi_enable_subsystem(ACPI_NO_HARDWARE_INIT | ACPI_NO_ACPI_ENABLE); |
@@ -769,12 +768,6 @@ static int __init acpi_bus_init(void) | |||
769 | goto error1; | 768 | goto error1; |
770 | } | 769 | } |
771 | 770 | ||
772 | if (ACPI_FAILURE(status)) { | ||
773 | printk(KERN_ERR PREFIX | ||
774 | "Unable to initialize ACPI OS objects\n"); | ||
775 | goto error1; | ||
776 | } | ||
777 | |||
778 | /* | 771 | /* |
779 | * ACPI 2.0 requires the EC driver to be loaded and work before | 772 | * ACPI 2.0 requires the EC driver to be loaded and work before |
780 | * the EC device is found in the namespace (i.e. before acpi_initialize_objects() | 773 | * the EC device is found in the namespace (i.e. before acpi_initialize_objects() |
diff --git a/drivers/acpi/numa.c b/drivers/acpi/numa.c index c5e292aab0e3..3a0d8ef25c75 100644 --- a/drivers/acpi/numa.c +++ b/drivers/acpi/numa.c | |||
@@ -277,7 +277,7 @@ int acpi_get_node(acpi_handle *handle) | |||
277 | int pxm, node = -1; | 277 | int pxm, node = -1; |
278 | 278 | ||
279 | pxm = acpi_get_pxm(handle); | 279 | pxm = acpi_get_pxm(handle); |
280 | if (pxm >= 0) | 280 | if (pxm >= 0 && pxm < MAX_PXM_DOMAINS) |
281 | node = acpi_map_pxm_to_node(pxm); | 281 | node = acpi_map_pxm_to_node(pxm); |
282 | 282 | ||
283 | return node; | 283 | return node; |
diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c index b3193ec0a2ef..1e35f342957c 100644 --- a/drivers/acpi/osl.c +++ b/drivers/acpi/osl.c | |||
@@ -1317,54 +1317,6 @@ acpi_os_validate_interface (char *interface) | |||
1317 | return AE_SUPPORT; | 1317 | return AE_SUPPORT; |
1318 | } | 1318 | } |
1319 | 1319 | ||
1320 | #ifdef CONFIG_X86 | ||
1321 | |||
1322 | struct aml_port_desc { | ||
1323 | uint start; | ||
1324 | uint end; | ||
1325 | char* name; | ||
1326 | char warned; | ||
1327 | }; | ||
1328 | |||
1329 | static struct aml_port_desc aml_invalid_port_list[] = { | ||
1330 | {0x20, 0x21, "PIC0", 0}, | ||
1331 | {0xA0, 0xA1, "PIC1", 0}, | ||
1332 | {0x4D0, 0x4D1, "ELCR", 0} | ||
1333 | }; | ||
1334 | |||
1335 | /* | ||
1336 | * valid_aml_io_address() | ||
1337 | * | ||
1338 | * if valid, return true | ||
1339 | * else invalid, warn once, return false | ||
1340 | */ | ||
1341 | static bool valid_aml_io_address(uint address, uint length) | ||
1342 | { | ||
1343 | int i; | ||
1344 | int entries = sizeof(aml_invalid_port_list) / sizeof(struct aml_port_desc); | ||
1345 | |||
1346 | for (i = 0; i < entries; ++i) { | ||
1347 | if ((address >= aml_invalid_port_list[i].start && | ||
1348 | address <= aml_invalid_port_list[i].end) || | ||
1349 | (address + length >= aml_invalid_port_list[i].start && | ||
1350 | address + length <= aml_invalid_port_list[i].end)) | ||
1351 | { | ||
1352 | if (!aml_invalid_port_list[i].warned) | ||
1353 | { | ||
1354 | printk(KERN_ERR "ACPI: Denied BIOS AML access" | ||
1355 | " to invalid port 0x%x+0x%x (%s)\n", | ||
1356 | address, length, | ||
1357 | aml_invalid_port_list[i].name); | ||
1358 | aml_invalid_port_list[i].warned = 1; | ||
1359 | } | ||
1360 | return false; /* invalid */ | ||
1361 | } | ||
1362 | } | ||
1363 | return true; /* valid */ | ||
1364 | } | ||
1365 | #else | ||
1366 | static inline bool valid_aml_io_address(uint address, uint length) { return true; } | ||
1367 | #endif | ||
1368 | /****************************************************************************** | 1320 | /****************************************************************************** |
1369 | * | 1321 | * |
1370 | * FUNCTION: acpi_os_validate_address | 1322 | * FUNCTION: acpi_os_validate_address |
@@ -1394,8 +1346,6 @@ acpi_os_validate_address ( | |||
1394 | 1346 | ||
1395 | switch (space_id) { | 1347 | switch (space_id) { |
1396 | case ACPI_ADR_SPACE_SYSTEM_IO: | 1348 | case ACPI_ADR_SPACE_SYSTEM_IO: |
1397 | if (!valid_aml_io_address(address, length)) | ||
1398 | return AE_AML_ILLEGAL_ADDRESS; | ||
1399 | case ACPI_ADR_SPACE_SYSTEM_MEMORY: | 1349 | case ACPI_ADR_SPACE_SYSTEM_MEMORY: |
1400 | /* Only interference checks against SystemIO and SytemMemory | 1350 | /* Only interference checks against SystemIO and SytemMemory |
1401 | are needed */ | 1351 | are needed */ |
diff --git a/drivers/acpi/sleep.c b/drivers/acpi/sleep.c index 519266654f06..00456fccfa38 100644 --- a/drivers/acpi/sleep.c +++ b/drivers/acpi/sleep.c | |||
@@ -378,6 +378,22 @@ static struct dmi_system_id __initdata acpisleep_dmi_table[] = { | |||
378 | DMI_MATCH(DMI_PRODUCT_NAME, "Macmini1,1"), | 378 | DMI_MATCH(DMI_PRODUCT_NAME, "Macmini1,1"), |
379 | }, | 379 | }, |
380 | }, | 380 | }, |
381 | { | ||
382 | .callback = init_old_suspend_ordering, | ||
383 | .ident = "Asus Pundit P1-AH2 (M2N8L motherboard)", | ||
384 | .matches = { | ||
385 | DMI_MATCH(DMI_BOARD_VENDOR, "ASUSTek Computer INC."), | ||
386 | DMI_MATCH(DMI_BOARD_NAME, "M2N8L"), | ||
387 | }, | ||
388 | }, | ||
389 | { | ||
390 | .callback = init_set_sci_en_on_resume, | ||
391 | .ident = "Toshiba Satellite L300", | ||
392 | .matches = { | ||
393 | DMI_MATCH(DMI_SYS_VENDOR, "TOSHIBA"), | ||
394 | DMI_MATCH(DMI_PRODUCT_NAME, "Satellite L300"), | ||
395 | }, | ||
396 | }, | ||
381 | {}, | 397 | {}, |
382 | }; | 398 | }; |
383 | #endif /* CONFIG_SUSPEND */ | 399 | #endif /* CONFIG_SUSPEND */ |
diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c index a603bbf9b1b7..66e012cd3271 100644 --- a/drivers/ata/ahci.c +++ b/drivers/ata/ahci.c | |||
@@ -582,18 +582,18 @@ static const struct pci_device_id ahci_pci_tbl[] = { | |||
582 | { PCI_VDEVICE(NVIDIA, 0x0abd), board_ahci }, /* MCP79 */ | 582 | { PCI_VDEVICE(NVIDIA, 0x0abd), board_ahci }, /* MCP79 */ |
583 | { PCI_VDEVICE(NVIDIA, 0x0abe), board_ahci }, /* MCP79 */ | 583 | { PCI_VDEVICE(NVIDIA, 0x0abe), board_ahci }, /* MCP79 */ |
584 | { PCI_VDEVICE(NVIDIA, 0x0abf), board_ahci }, /* MCP79 */ | 584 | { PCI_VDEVICE(NVIDIA, 0x0abf), board_ahci }, /* MCP79 */ |
585 | { PCI_VDEVICE(NVIDIA, 0x0bc8), board_ahci }, /* MCP7B */ | 585 | { PCI_VDEVICE(NVIDIA, 0x0d84), board_ahci }, /* MCP89 */ |
586 | { PCI_VDEVICE(NVIDIA, 0x0bc9), board_ahci }, /* MCP7B */ | 586 | { PCI_VDEVICE(NVIDIA, 0x0d85), board_ahci }, /* MCP89 */ |
587 | { PCI_VDEVICE(NVIDIA, 0x0bca), board_ahci }, /* MCP7B */ | 587 | { PCI_VDEVICE(NVIDIA, 0x0d86), board_ahci }, /* MCP89 */ |
588 | { PCI_VDEVICE(NVIDIA, 0x0bcb), board_ahci }, /* MCP7B */ | 588 | { PCI_VDEVICE(NVIDIA, 0x0d87), board_ahci }, /* MCP89 */ |
589 | { PCI_VDEVICE(NVIDIA, 0x0bcc), board_ahci }, /* MCP7B */ | 589 | { PCI_VDEVICE(NVIDIA, 0x0d88), board_ahci }, /* MCP89 */ |
590 | { PCI_VDEVICE(NVIDIA, 0x0bcd), board_ahci }, /* MCP7B */ | 590 | { PCI_VDEVICE(NVIDIA, 0x0d89), board_ahci }, /* MCP89 */ |
591 | { PCI_VDEVICE(NVIDIA, 0x0bce), board_ahci }, /* MCP7B */ | 591 | { PCI_VDEVICE(NVIDIA, 0x0d8a), board_ahci }, /* MCP89 */ |
592 | { PCI_VDEVICE(NVIDIA, 0x0bcf), board_ahci }, /* MCP7B */ | 592 | { PCI_VDEVICE(NVIDIA, 0x0d8b), board_ahci }, /* MCP89 */ |
593 | { PCI_VDEVICE(NVIDIA, 0x0bc4), board_ahci }, /* MCP7B */ | 593 | { PCI_VDEVICE(NVIDIA, 0x0d8c), board_ahci }, /* MCP89 */ |
594 | { PCI_VDEVICE(NVIDIA, 0x0bc5), board_ahci }, /* MCP7B */ | 594 | { PCI_VDEVICE(NVIDIA, 0x0d8d), board_ahci }, /* MCP89 */ |
595 | { PCI_VDEVICE(NVIDIA, 0x0bc6), board_ahci }, /* MCP7B */ | 595 | { PCI_VDEVICE(NVIDIA, 0x0d8e), board_ahci }, /* MCP89 */ |
596 | { PCI_VDEVICE(NVIDIA, 0x0bc7), board_ahci }, /* MCP7B */ | 596 | { PCI_VDEVICE(NVIDIA, 0x0d8f), board_ahci }, /* MCP89 */ |
597 | 597 | ||
598 | /* SiS */ | 598 | /* SiS */ |
599 | { PCI_VDEVICE(SI, 0x1184), board_ahci }, /* SiS 966 */ | 599 | { PCI_VDEVICE(SI, 0x1184), board_ahci }, /* SiS 966 */ |
diff --git a/drivers/ata/ata_piix.c b/drivers/ata/ata_piix.c index 54961c0b2c73..ef8b30d577bd 100644 --- a/drivers/ata/ata_piix.c +++ b/drivers/ata/ata_piix.c | |||
@@ -1289,6 +1289,39 @@ static const int *__devinit piix_init_sata_map(struct pci_dev *pdev, | |||
1289 | return map; | 1289 | return map; |
1290 | } | 1290 | } |
1291 | 1291 | ||
1292 | static bool piix_no_sidpr(struct ata_host *host) | ||
1293 | { | ||
1294 | struct pci_dev *pdev = to_pci_dev(host->dev); | ||
1295 | |||
1296 | /* | ||
1297 | * Samsung DB-P70 only has three ATA ports exposed and | ||
1298 | * curiously the unconnected first port reports link online | ||
1299 | * while not responding to SRST protocol causing excessive | ||
1300 | * detection delay. | ||
1301 | * | ||
1302 | * Unfortunately, the system doesn't carry enough DMI | ||
1303 | * information to identify the machine but does have subsystem | ||
1304 | * vendor and device set. As it's unclear whether the | ||
1305 | * subsystem vendor/device is used only for this specific | ||
1306 | * board, the port can't be disabled solely with the | ||
1307 | * information; however, turning off SIDPR access works around | ||
1308 | * the problem. Turn it off. | ||
1309 | * | ||
1310 | * This problem is reported in bnc#441240. | ||
1311 | * | ||
1312 | * https://bugzilla.novell.com/show_bug.cgi?id=441420 | ||
1313 | */ | ||
1314 | if (pdev->vendor == PCI_VENDOR_ID_INTEL && pdev->device == 0x2920 && | ||
1315 | pdev->subsystem_vendor == PCI_VENDOR_ID_SAMSUNG && | ||
1316 | pdev->subsystem_device == 0xb049) { | ||
1317 | dev_printk(KERN_WARNING, host->dev, | ||
1318 | "Samsung DB-P70 detected, disabling SIDPR\n"); | ||
1319 | return true; | ||
1320 | } | ||
1321 | |||
1322 | return false; | ||
1323 | } | ||
1324 | |||
1292 | static int __devinit piix_init_sidpr(struct ata_host *host) | 1325 | static int __devinit piix_init_sidpr(struct ata_host *host) |
1293 | { | 1326 | { |
1294 | struct pci_dev *pdev = to_pci_dev(host->dev); | 1327 | struct pci_dev *pdev = to_pci_dev(host->dev); |
@@ -1302,6 +1335,10 @@ static int __devinit piix_init_sidpr(struct ata_host *host) | |||
1302 | if (hpriv->map[i] == IDE) | 1335 | if (hpriv->map[i] == IDE) |
1303 | return 0; | 1336 | return 0; |
1304 | 1337 | ||
1338 | /* is it blacklisted? */ | ||
1339 | if (piix_no_sidpr(host)) | ||
1340 | return 0; | ||
1341 | |||
1305 | if (!(host->ports[0]->flags & PIIX_FLAG_SIDPR)) | 1342 | if (!(host->ports[0]->flags & PIIX_FLAG_SIDPR)) |
1306 | return 0; | 1343 | return 0; |
1307 | 1344 | ||
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c index 9fbf0595f3d4..060bcd601f57 100644 --- a/drivers/ata/libata-core.c +++ b/drivers/ata/libata-core.c | |||
@@ -1322,14 +1322,16 @@ static u64 ata_id_n_sectors(const u16 *id) | |||
1322 | { | 1322 | { |
1323 | if (ata_id_has_lba(id)) { | 1323 | if (ata_id_has_lba(id)) { |
1324 | if (ata_id_has_lba48(id)) | 1324 | if (ata_id_has_lba48(id)) |
1325 | return ata_id_u64(id, 100); | 1325 | return ata_id_u64(id, ATA_ID_LBA_CAPACITY_2); |
1326 | else | 1326 | else |
1327 | return ata_id_u32(id, 60); | 1327 | return ata_id_u32(id, ATA_ID_LBA_CAPACITY); |
1328 | } else { | 1328 | } else { |
1329 | if (ata_id_current_chs_valid(id)) | 1329 | if (ata_id_current_chs_valid(id)) |
1330 | return ata_id_u32(id, 57); | 1330 | return id[ATA_ID_CUR_CYLS] * id[ATA_ID_CUR_HEADS] * |
1331 | id[ATA_ID_CUR_SECTORS]; | ||
1331 | else | 1332 | else |
1332 | return id[1] * id[3] * id[6]; | 1333 | return id[ATA_ID_CYLS] * id[ATA_ID_HEADS] * |
1334 | id[ATA_ID_SECTORS]; | ||
1333 | } | 1335 | } |
1334 | } | 1336 | } |
1335 | 1337 | ||
@@ -4612,7 +4614,7 @@ void ata_sg_clean(struct ata_queued_cmd *qc) | |||
4612 | VPRINTK("unmapping %u sg elements\n", qc->n_elem); | 4614 | VPRINTK("unmapping %u sg elements\n", qc->n_elem); |
4613 | 4615 | ||
4614 | if (qc->n_elem) | 4616 | if (qc->n_elem) |
4615 | dma_unmap_sg(ap->dev, sg, qc->n_elem, dir); | 4617 | dma_unmap_sg(ap->dev, sg, qc->orig_n_elem, dir); |
4616 | 4618 | ||
4617 | qc->flags &= ~ATA_QCFLAG_DMAMAP; | 4619 | qc->flags &= ~ATA_QCFLAG_DMAMAP; |
4618 | qc->sg = NULL; | 4620 | qc->sg = NULL; |
@@ -4727,7 +4729,7 @@ static int ata_sg_setup(struct ata_queued_cmd *qc) | |||
4727 | return -1; | 4729 | return -1; |
4728 | 4730 | ||
4729 | DPRINTK("%d sg elements mapped\n", n_elem); | 4731 | DPRINTK("%d sg elements mapped\n", n_elem); |
4730 | 4732 | qc->orig_n_elem = qc->n_elem; | |
4731 | qc->n_elem = n_elem; | 4733 | qc->n_elem = n_elem; |
4732 | qc->flags |= ATA_QCFLAG_DMAMAP; | 4734 | qc->flags |= ATA_QCFLAG_DMAMAP; |
4733 | 4735 | ||
diff --git a/drivers/ata/libata-eh.c b/drivers/ata/libata-eh.c index ce2ef0475339..ea890911d4fa 100644 --- a/drivers/ata/libata-eh.c +++ b/drivers/ata/libata-eh.c | |||
@@ -2423,11 +2423,14 @@ int ata_eh_reset(struct ata_link *link, int classify, | |||
2423 | } | 2423 | } |
2424 | 2424 | ||
2425 | /* prereset() might have cleared ATA_EH_RESET. If so, | 2425 | /* prereset() might have cleared ATA_EH_RESET. If so, |
2426 | * bang classes and return. | 2426 | * bang classes, thaw and return. |
2427 | */ | 2427 | */ |
2428 | if (reset && !(ehc->i.action & ATA_EH_RESET)) { | 2428 | if (reset && !(ehc->i.action & ATA_EH_RESET)) { |
2429 | ata_for_each_dev(dev, link, ALL) | 2429 | ata_for_each_dev(dev, link, ALL) |
2430 | classes[dev->devno] = ATA_DEV_NONE; | 2430 | classes[dev->devno] = ATA_DEV_NONE; |
2431 | if ((ap->pflags & ATA_PFLAG_FROZEN) && | ||
2432 | ata_is_host_link(link)) | ||
2433 | ata_eh_thaw_port(ap); | ||
2431 | rc = 0; | 2434 | rc = 0; |
2432 | goto out; | 2435 | goto out; |
2433 | } | 2436 | } |
@@ -2901,7 +2904,7 @@ static int atapi_eh_clear_ua(struct ata_device *dev) | |||
2901 | int i; | 2904 | int i; |
2902 | 2905 | ||
2903 | for (i = 0; i < ATA_EH_UA_TRIES; i++) { | 2906 | for (i = 0; i < ATA_EH_UA_TRIES; i++) { |
2904 | u8 sense_buffer[SCSI_SENSE_BUFFERSIZE]; | 2907 | u8 *sense_buffer = dev->link->ap->sector_buf; |
2905 | u8 sense_key = 0; | 2908 | u8 sense_key = 0; |
2906 | unsigned int err_mask; | 2909 | unsigned int err_mask; |
2907 | 2910 | ||
diff --git a/drivers/ata/libata-sff.c b/drivers/ata/libata-sff.c index 714cb046b594..f93dc029dfde 100644 --- a/drivers/ata/libata-sff.c +++ b/drivers/ata/libata-sff.c | |||
@@ -2066,6 +2066,7 @@ static int ata_bus_softreset(struct ata_port *ap, unsigned int devmask, | |||
2066 | iowrite8(ap->ctl | ATA_SRST, ioaddr->ctl_addr); | 2066 | iowrite8(ap->ctl | ATA_SRST, ioaddr->ctl_addr); |
2067 | udelay(20); /* FIXME: flush */ | 2067 | udelay(20); /* FIXME: flush */ |
2068 | iowrite8(ap->ctl, ioaddr->ctl_addr); | 2068 | iowrite8(ap->ctl, ioaddr->ctl_addr); |
2069 | ap->last_ctl = ap->ctl; | ||
2069 | 2070 | ||
2070 | /* wait the port to become ready */ | 2071 | /* wait the port to become ready */ |
2071 | return ata_sff_wait_after_reset(&ap->link, devmask, deadline); | 2072 | return ata_sff_wait_after_reset(&ap->link, devmask, deadline); |
@@ -2190,8 +2191,10 @@ void ata_sff_postreset(struct ata_link *link, unsigned int *classes) | |||
2190 | } | 2191 | } |
2191 | 2192 | ||
2192 | /* set up device control */ | 2193 | /* set up device control */ |
2193 | if (ap->ioaddr.ctl_addr) | 2194 | if (ap->ioaddr.ctl_addr) { |
2194 | iowrite8(ap->ctl, ap->ioaddr.ctl_addr); | 2195 | iowrite8(ap->ctl, ap->ioaddr.ctl_addr); |
2196 | ap->last_ctl = ap->ctl; | ||
2197 | } | ||
2195 | } | 2198 | } |
2196 | EXPORT_SYMBOL_GPL(ata_sff_postreset); | 2199 | EXPORT_SYMBOL_GPL(ata_sff_postreset); |
2197 | 2200 | ||
@@ -2534,6 +2537,7 @@ void ata_bus_reset(struct ata_port *ap) | |||
2534 | if (ap->flags & (ATA_FLAG_SATA_RESET | ATA_FLAG_SRST)) { | 2537 | if (ap->flags & (ATA_FLAG_SATA_RESET | ATA_FLAG_SRST)) { |
2535 | /* set up device control for ATA_FLAG_SATA_RESET */ | 2538 | /* set up device control for ATA_FLAG_SATA_RESET */ |
2536 | iowrite8(ap->ctl, ioaddr->ctl_addr); | 2539 | iowrite8(ap->ctl, ioaddr->ctl_addr); |
2540 | ap->last_ctl = ap->ctl; | ||
2537 | } | 2541 | } |
2538 | 2542 | ||
2539 | DPRINTK("EXIT\n"); | 2543 | DPRINTK("EXIT\n"); |
diff --git a/drivers/ata/sata_mv.c b/drivers/ata/sata_mv.c index 7007edd2d451..74b1080d116d 100644 --- a/drivers/ata/sata_mv.c +++ b/drivers/ata/sata_mv.c | |||
@@ -2218,12 +2218,13 @@ static irqreturn_t mv_interrupt(int irq, void *dev_instance) | |||
2218 | else | 2218 | else |
2219 | handled = mv_host_intr(host, pending_irqs); | 2219 | handled = mv_host_intr(host, pending_irqs); |
2220 | } | 2220 | } |
2221 | spin_unlock(&host->lock); | ||
2222 | 2221 | ||
2223 | /* for MSI: unmask; interrupt cause bits will retrigger now */ | 2222 | /* for MSI: unmask; interrupt cause bits will retrigger now */ |
2224 | if (using_msi) | 2223 | if (using_msi) |
2225 | writel(hpriv->main_irq_mask, hpriv->main_irq_mask_addr); | 2224 | writel(hpriv->main_irq_mask, hpriv->main_irq_mask_addr); |
2226 | 2225 | ||
2226 | spin_unlock(&host->lock); | ||
2227 | |||
2227 | return IRQ_RETVAL(handled); | 2228 | return IRQ_RETVAL(handled); |
2228 | } | 2229 | } |
2229 | 2230 | ||
diff --git a/drivers/ata/sata_nv.c b/drivers/ata/sata_nv.c index 55a8eed3f3a3..f65b53785a8f 100644 --- a/drivers/ata/sata_nv.c +++ b/drivers/ata/sata_nv.c | |||
@@ -2523,7 +2523,7 @@ static void __exit nv_exit(void) | |||
2523 | module_init(nv_init); | 2523 | module_init(nv_init); |
2524 | module_exit(nv_exit); | 2524 | module_exit(nv_exit); |
2525 | module_param_named(adma, adma_enabled, bool, 0444); | 2525 | module_param_named(adma, adma_enabled, bool, 0444); |
2526 | MODULE_PARM_DESC(adma, "Enable use of ADMA (Default: true)"); | 2526 | MODULE_PARM_DESC(adma, "Enable use of ADMA (Default: false)"); |
2527 | module_param_named(swncq, swncq_enabled, bool, 0444); | 2527 | module_param_named(swncq, swncq_enabled, bool, 0444); |
2528 | MODULE_PARM_DESC(swncq, "Enable use of SWNCQ (Default: true)"); | 2528 | MODULE_PARM_DESC(swncq, "Enable use of SWNCQ (Default: true)"); |
2529 | 2529 | ||
diff --git a/drivers/base/node.c b/drivers/base/node.c index 43fa90b837ee..f8f578a71b25 100644 --- a/drivers/base/node.c +++ b/drivers/base/node.c | |||
@@ -303,7 +303,7 @@ int unregister_mem_sect_under_nodes(struct memory_block *mem_blk) | |||
303 | sect_start_pfn = section_nr_to_pfn(mem_blk->phys_index); | 303 | sect_start_pfn = section_nr_to_pfn(mem_blk->phys_index); |
304 | sect_end_pfn = sect_start_pfn + PAGES_PER_SECTION - 1; | 304 | sect_end_pfn = sect_start_pfn + PAGES_PER_SECTION - 1; |
305 | for (pfn = sect_start_pfn; pfn <= sect_end_pfn; pfn++) { | 305 | for (pfn = sect_start_pfn; pfn <= sect_end_pfn; pfn++) { |
306 | unsigned int nid; | 306 | int nid; |
307 | 307 | ||
308 | nid = get_nid_for_pfn(pfn); | 308 | nid = get_nid_for_pfn(pfn); |
309 | if (nid < 0) | 309 | if (nid < 0) |
diff --git a/drivers/block/aoe/aoedev.c b/drivers/block/aoe/aoedev.c index cc250577d405..eeea477d9601 100644 --- a/drivers/block/aoe/aoedev.c +++ b/drivers/block/aoe/aoedev.c | |||
@@ -173,7 +173,7 @@ skbfree(struct sk_buff *skb) | |||
173 | return; | 173 | return; |
174 | while (atomic_read(&skb_shinfo(skb)->dataref) != 1 && i-- > 0) | 174 | while (atomic_read(&skb_shinfo(skb)->dataref) != 1 && i-- > 0) |
175 | msleep(Sms); | 175 | msleep(Sms); |
176 | if (i <= 0) { | 176 | if (i < 0) { |
177 | printk(KERN_ERR | 177 | printk(KERN_ERR |
178 | "aoe: %s holds ref: %s\n", | 178 | "aoe: %s holds ref: %s\n", |
179 | skb->dev ? skb->dev->name : "netif", | 179 | skb->dev ? skb->dev->name : "netif", |
diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c index b5a061114630..4f9b6d792017 100644 --- a/drivers/block/cciss.c +++ b/drivers/block/cciss.c | |||
@@ -3606,11 +3606,9 @@ static int __devinit cciss_init_one(struct pci_dev *pdev, | |||
3606 | if (cciss_hard_reset_controller(pdev) || cciss_reset_msi(pdev)) | 3606 | if (cciss_hard_reset_controller(pdev) || cciss_reset_msi(pdev)) |
3607 | return -ENODEV; | 3607 | return -ENODEV; |
3608 | 3608 | ||
3609 | /* Some devices (notably the HP Smart Array 5i Controller) | 3609 | /* Now try to get the controller to respond to a no-op. Some |
3610 | need a little pause here */ | 3610 | devices (notably the HP Smart Array 5i Controller) need |
3611 | schedule_timeout_uninterruptible(30*HZ); | 3611 | up to 30 seconds to respond. */ |
3612 | |||
3613 | /* Now try to get the controller to respond to a no-op */ | ||
3614 | for (i=0; i<30; i++) { | 3612 | for (i=0; i<30; i++) { |
3615 | if (cciss_noop(pdev) == 0) | 3613 | if (cciss_noop(pdev) == 0) |
3616 | break; | 3614 | break; |
diff --git a/drivers/block/loop.c b/drivers/block/loop.c index edbaac6c0573..bf0345577672 100644 --- a/drivers/block/loop.c +++ b/drivers/block/loop.c | |||
@@ -392,8 +392,7 @@ lo_splice_actor(struct pipe_inode_info *pipe, struct pipe_buffer *buf, | |||
392 | struct loop_device *lo = p->lo; | 392 | struct loop_device *lo = p->lo; |
393 | struct page *page = buf->page; | 393 | struct page *page = buf->page; |
394 | sector_t IV; | 394 | sector_t IV; |
395 | size_t size; | 395 | int size, ret; |
396 | int ret; | ||
397 | 396 | ||
398 | ret = buf->ops->confirm(pipe, buf); | 397 | ret = buf->ops->confirm(pipe, buf); |
399 | if (unlikely(ret)) | 398 | if (unlikely(ret)) |
diff --git a/drivers/block/xen-blkfront.c b/drivers/block/xen-blkfront.c index b6c8ce254359..8f905089b72b 100644 --- a/drivers/block/xen-blkfront.c +++ b/drivers/block/xen-blkfront.c | |||
@@ -977,6 +977,8 @@ static void backend_changed(struct xenbus_device *dev, | |||
977 | break; | 977 | break; |
978 | 978 | ||
979 | case XenbusStateClosing: | 979 | case XenbusStateClosing: |
980 | if (info->gd == NULL) | ||
981 | xenbus_dev_fatal(dev, -ENODEV, "gd is NULL"); | ||
980 | bd = bdget_disk(info->gd, 0); | 982 | bd = bdget_disk(info->gd, 0); |
981 | if (bd == NULL) | 983 | if (bd == NULL) |
982 | xenbus_dev_fatal(dev, -ENODEV, "bdget failed"); | 984 | xenbus_dev_fatal(dev, -ENODEV, "bdget failed"); |
diff --git a/drivers/block/xsysace.c b/drivers/block/xsysace.c index 381d686fc1a3..119be3442f28 100644 --- a/drivers/block/xsysace.c +++ b/drivers/block/xsysace.c | |||
@@ -489,6 +489,28 @@ static void ace_fsm_dostate(struct ace_device *ace) | |||
489 | ace->fsm_state, ace->id_req_count); | 489 | ace->fsm_state, ace->id_req_count); |
490 | #endif | 490 | #endif |
491 | 491 | ||
492 | /* Verify that there is actually a CF in the slot. If not, then | ||
493 | * bail out back to the idle state and wake up all the waiters */ | ||
494 | status = ace_in32(ace, ACE_STATUS); | ||
495 | if ((status & ACE_STATUS_CFDETECT) == 0) { | ||
496 | ace->fsm_state = ACE_FSM_STATE_IDLE; | ||
497 | ace->media_change = 1; | ||
498 | set_capacity(ace->gd, 0); | ||
499 | dev_info(ace->dev, "No CF in slot\n"); | ||
500 | |||
501 | /* Drop all pending requests */ | ||
502 | while ((req = elv_next_request(ace->queue)) != NULL) | ||
503 | end_request(req, 0); | ||
504 | |||
505 | /* Drop back to IDLE state and notify waiters */ | ||
506 | ace->fsm_state = ACE_FSM_STATE_IDLE; | ||
507 | ace->id_result = -EIO; | ||
508 | while (ace->id_req_count) { | ||
509 | complete(&ace->id_completion); | ||
510 | ace->id_req_count--; | ||
511 | } | ||
512 | } | ||
513 | |||
492 | switch (ace->fsm_state) { | 514 | switch (ace->fsm_state) { |
493 | case ACE_FSM_STATE_IDLE: | 515 | case ACE_FSM_STATE_IDLE: |
494 | /* See if there is anything to do */ | 516 | /* See if there is anything to do */ |
diff --git a/drivers/char/agp/amd64-agp.c b/drivers/char/agp/amd64-agp.c index 52f4361eb6e4..d765afda9c2a 100644 --- a/drivers/char/agp/amd64-agp.c +++ b/drivers/char/agp/amd64-agp.c | |||
@@ -271,15 +271,15 @@ static __devinit int fix_northbridge(struct pci_dev *nb, struct pci_dev *agp, | |||
271 | nb_order = (nb_order >> 1) & 7; | 271 | nb_order = (nb_order >> 1) & 7; |
272 | pci_read_config_dword(nb, AMD64_GARTAPERTUREBASE, &nb_base); | 272 | pci_read_config_dword(nb, AMD64_GARTAPERTUREBASE, &nb_base); |
273 | nb_aper = nb_base << 25; | 273 | nb_aper = nb_base << 25; |
274 | if (agp_aperture_valid(nb_aper, (32*1024*1024)<<nb_order)) { | ||
275 | return 0; | ||
276 | } | ||
277 | 274 | ||
278 | /* Northbridge seems to contain crap. Try the AGP bridge. */ | 275 | /* Northbridge seems to contain crap. Try the AGP bridge. */ |
279 | 276 | ||
280 | pci_read_config_word(agp, cap+0x14, &apsize); | 277 | pci_read_config_word(agp, cap+0x14, &apsize); |
281 | if (apsize == 0xffff) | 278 | if (apsize == 0xffff) { |
279 | if (agp_aperture_valid(nb_aper, (32*1024*1024)<<nb_order)) | ||
280 | return 0; | ||
282 | return -1; | 281 | return -1; |
282 | } | ||
283 | 283 | ||
284 | apsize &= 0xfff; | 284 | apsize &= 0xfff; |
285 | /* Some BIOS use weird encodings not in the AGPv3 table. */ | 285 | /* Some BIOS use weird encodings not in the AGPv3 table. */ |
@@ -301,6 +301,11 @@ static __devinit int fix_northbridge(struct pci_dev *nb, struct pci_dev *agp, | |||
301 | order = nb_order; | 301 | order = nb_order; |
302 | } | 302 | } |
303 | 303 | ||
304 | if (nb_order >= order) { | ||
305 | if (agp_aperture_valid(nb_aper, (32*1024*1024)<<nb_order)) | ||
306 | return 0; | ||
307 | } | ||
308 | |||
304 | dev_info(&agp->dev, "aperture from AGP @ %Lx size %u MB\n", | 309 | dev_info(&agp->dev, "aperture from AGP @ %Lx size %u MB\n", |
305 | aper, 32 << order); | 310 | aper, 32 << order); |
306 | if (order < 0 || !agp_aperture_valid(aper, (32*1024*1024)<<order)) | 311 | if (order < 0 || !agp_aperture_valid(aper, (32*1024*1024)<<order)) |
diff --git a/drivers/char/agp/intel-agp.c b/drivers/char/agp/intel-agp.c index c7714185f831..4373adb2119a 100644 --- a/drivers/char/agp/intel-agp.c +++ b/drivers/char/agp/intel-agp.c | |||
@@ -633,13 +633,15 @@ static void intel_i830_init_gtt_entries(void) | |||
633 | break; | 633 | break; |
634 | } | 634 | } |
635 | } | 635 | } |
636 | if (gtt_entries > 0) | 636 | if (gtt_entries > 0) { |
637 | dev_info(&agp_bridge->dev->dev, "detected %dK %s memory\n", | 637 | dev_info(&agp_bridge->dev->dev, "detected %dK %s memory\n", |
638 | gtt_entries / KB(1), local ? "local" : "stolen"); | 638 | gtt_entries / KB(1), local ? "local" : "stolen"); |
639 | else | 639 | gtt_entries /= KB(4); |
640 | } else { | ||
640 | dev_info(&agp_bridge->dev->dev, | 641 | dev_info(&agp_bridge->dev->dev, |
641 | "no pre-allocated video memory detected\n"); | 642 | "no pre-allocated video memory detected\n"); |
642 | gtt_entries /= KB(4); | 643 | gtt_entries = 0; |
644 | } | ||
643 | 645 | ||
644 | intel_private.gtt_entries = gtt_entries; | 646 | intel_private.gtt_entries = gtt_entries; |
645 | } | 647 | } |
diff --git a/drivers/char/agp/parisc-agp.c b/drivers/char/agp/parisc-agp.c index db60539bf67a..699e3422ad93 100644 --- a/drivers/char/agp/parisc-agp.c +++ b/drivers/char/agp/parisc-agp.c | |||
@@ -359,9 +359,16 @@ fail: | |||
359 | return error; | 359 | return error; |
360 | } | 360 | } |
361 | 361 | ||
362 | static struct device *next_device(struct klist_iter *i) { | 362 | static int |
363 | struct klist_node * n = klist_next(i); | 363 | find_quicksilver(struct device *dev, void *data) |
364 | return n ? container_of(n, struct device, knode_parent) : NULL; | 364 | { |
365 | struct parisc_device **lba = data; | ||
366 | struct parisc_device *padev = to_parisc_device(dev); | ||
367 | |||
368 | if (IS_QUICKSILVER(padev)) | ||
369 | *lba = padev; | ||
370 | |||
371 | return 0; | ||
365 | } | 372 | } |
366 | 373 | ||
367 | static int | 374 | static int |
@@ -372,8 +379,6 @@ parisc_agp_init(void) | |||
372 | int err = -1; | 379 | int err = -1; |
373 | struct parisc_device *sba = NULL, *lba = NULL; | 380 | struct parisc_device *sba = NULL, *lba = NULL; |
374 | struct lba_device *lbadev = NULL; | 381 | struct lba_device *lbadev = NULL; |
375 | struct device *dev = NULL; | ||
376 | struct klist_iter i; | ||
377 | 382 | ||
378 | if (!sba_list) | 383 | if (!sba_list) |
379 | goto out; | 384 | goto out; |
@@ -386,13 +391,7 @@ parisc_agp_init(void) | |||
386 | } | 391 | } |
387 | 392 | ||
388 | /* Now search our Pluto for our precious AGP device... */ | 393 | /* Now search our Pluto for our precious AGP device... */ |
389 | klist_iter_init(&sba->dev.klist_children, &i); | 394 | device_for_each_child(&sba->dev, &lba, find_quicksilver); |
390 | while ((dev = next_device(&i))) { | ||
391 | struct parisc_device *padev = to_parisc_device(dev); | ||
392 | if (IS_QUICKSILVER(padev)) | ||
393 | lba = padev; | ||
394 | } | ||
395 | klist_iter_exit(&i); | ||
396 | 395 | ||
397 | if (!lba) { | 396 | if (!lba) { |
398 | printk(KERN_INFO DRVPFX "No AGP devices found.\n"); | 397 | printk(KERN_INFO DRVPFX "No AGP devices found.\n"); |
diff --git a/drivers/char/hvcs.c b/drivers/char/hvcs.c index 6e6eb445d374..c76bccf5354d 100644 --- a/drivers/char/hvcs.c +++ b/drivers/char/hvcs.c | |||
@@ -1139,15 +1139,6 @@ static int hvcs_open(struct tty_struct *tty, struct file *filp) | |||
1139 | hvcsd->tty = tty; | 1139 | hvcsd->tty = tty; |
1140 | tty->driver_data = hvcsd; | 1140 | tty->driver_data = hvcsd; |
1141 | 1141 | ||
1142 | /* | ||
1143 | * Set this driver to low latency so that we actually have a chance at | ||
1144 | * catching a throttled TTY after we flip_buffer_push. Otherwise the | ||
1145 | * flush_to_async may not execute until after the kernel_thread has | ||
1146 | * yielded and resumed the next flip_buffer_push resulting in data | ||
1147 | * loss. | ||
1148 | */ | ||
1149 | tty->low_latency = 1; | ||
1150 | |||
1151 | memset(&hvcsd->buffer[0], 0x00, HVCS_BUFF_LEN); | 1142 | memset(&hvcsd->buffer[0], 0x00, HVCS_BUFF_LEN); |
1152 | 1143 | ||
1153 | /* | 1144 | /* |
diff --git a/drivers/char/hvsi.c b/drivers/char/hvsi.c index 406f8742a260..2989056a9e39 100644 --- a/drivers/char/hvsi.c +++ b/drivers/char/hvsi.c | |||
@@ -810,7 +810,6 @@ static int hvsi_open(struct tty_struct *tty, struct file *filp) | |||
810 | hp = &hvsi_ports[line]; | 810 | hp = &hvsi_ports[line]; |
811 | 811 | ||
812 | tty->driver_data = hp; | 812 | tty->driver_data = hp; |
813 | tty->low_latency = 1; /* avoid throttle/tty_flip_buffer_push race */ | ||
814 | 813 | ||
815 | mb(); | 814 | mb(); |
816 | if (hp->state == HVSI_FSP_DIED) | 815 | if (hp->state == HVSI_FSP_DIED) |
diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c index b55cb67435bd..d6daf3c507d3 100644 --- a/drivers/cpufreq/cpufreq.c +++ b/drivers/cpufreq/cpufreq.c | |||
@@ -754,11 +754,6 @@ static struct kobj_type ktype_cpufreq = { | |||
754 | .release = cpufreq_sysfs_release, | 754 | .release = cpufreq_sysfs_release, |
755 | }; | 755 | }; |
756 | 756 | ||
757 | static struct kobj_type ktype_empty_cpufreq = { | ||
758 | .sysfs_ops = &sysfs_ops, | ||
759 | .release = cpufreq_sysfs_release, | ||
760 | }; | ||
761 | |||
762 | 757 | ||
763 | /** | 758 | /** |
764 | * cpufreq_add_dev - add a CPU device | 759 | * cpufreq_add_dev - add a CPU device |
@@ -892,36 +887,26 @@ static int cpufreq_add_dev(struct sys_device *sys_dev) | |||
892 | memcpy(&new_policy, policy, sizeof(struct cpufreq_policy)); | 887 | memcpy(&new_policy, policy, sizeof(struct cpufreq_policy)); |
893 | 888 | ||
894 | /* prepare interface data */ | 889 | /* prepare interface data */ |
895 | if (!cpufreq_driver->hide_interface) { | 890 | ret = kobject_init_and_add(&policy->kobj, &ktype_cpufreq, &sys_dev->kobj, |
896 | ret = kobject_init_and_add(&policy->kobj, &ktype_cpufreq, | 891 | "cpufreq"); |
897 | &sys_dev->kobj, "cpufreq"); | 892 | if (ret) |
893 | goto err_out_driver_exit; | ||
894 | |||
895 | /* set up files for this cpu device */ | ||
896 | drv_attr = cpufreq_driver->attr; | ||
897 | while ((drv_attr) && (*drv_attr)) { | ||
898 | ret = sysfs_create_file(&policy->kobj, &((*drv_attr)->attr)); | ||
898 | if (ret) | 899 | if (ret) |
899 | goto err_out_driver_exit; | 900 | goto err_out_driver_exit; |
900 | 901 | drv_attr++; | |
901 | /* set up files for this cpu device */ | 902 | } |
902 | drv_attr = cpufreq_driver->attr; | 903 | if (cpufreq_driver->get) { |
903 | while ((drv_attr) && (*drv_attr)) { | 904 | ret = sysfs_create_file(&policy->kobj, &cpuinfo_cur_freq.attr); |
904 | ret = sysfs_create_file(&policy->kobj, | 905 | if (ret) |
905 | &((*drv_attr)->attr)); | 906 | goto err_out_driver_exit; |
906 | if (ret) | 907 | } |
907 | goto err_out_driver_exit; | 908 | if (cpufreq_driver->target) { |
908 | drv_attr++; | 909 | ret = sysfs_create_file(&policy->kobj, &scaling_cur_freq.attr); |
909 | } | ||
910 | if (cpufreq_driver->get) { | ||
911 | ret = sysfs_create_file(&policy->kobj, | ||
912 | &cpuinfo_cur_freq.attr); | ||
913 | if (ret) | ||
914 | goto err_out_driver_exit; | ||
915 | } | ||
916 | if (cpufreq_driver->target) { | ||
917 | ret = sysfs_create_file(&policy->kobj, | ||
918 | &scaling_cur_freq.attr); | ||
919 | if (ret) | ||
920 | goto err_out_driver_exit; | ||
921 | } | ||
922 | } else { | ||
923 | ret = kobject_init_and_add(&policy->kobj, &ktype_empty_cpufreq, | ||
924 | &sys_dev->kobj, "cpufreq"); | ||
925 | if (ret) | 910 | if (ret) |
926 | goto err_out_driver_exit; | 911 | goto err_out_driver_exit; |
927 | } | 912 | } |
diff --git a/drivers/dca/dca-core.c b/drivers/dca/dca-core.c index 33bd75347518..25b743abfb59 100644 --- a/drivers/dca/dca-core.c +++ b/drivers/dca/dca-core.c | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright(c) 2007 Intel Corporation. All rights reserved. | 2 | * Copyright(c) 2007 - 2009 Intel Corporation. All rights reserved. |
3 | * | 3 | * |
4 | * This program is free software; you can redistribute it and/or modify it | 4 | * This program is free software; you can redistribute it and/or modify it |
5 | * under the terms of the GNU General Public License as published by the Free | 5 | * under the terms of the GNU General Public License as published by the Free |
diff --git a/drivers/dma/dmatest.c b/drivers/dma/dmatest.c index 732fa1ec36ab..e190d8b30700 100644 --- a/drivers/dma/dmatest.c +++ b/drivers/dma/dmatest.c | |||
@@ -430,13 +430,15 @@ late_initcall(dmatest_init); | |||
430 | static void __exit dmatest_exit(void) | 430 | static void __exit dmatest_exit(void) |
431 | { | 431 | { |
432 | struct dmatest_chan *dtc, *_dtc; | 432 | struct dmatest_chan *dtc, *_dtc; |
433 | struct dma_chan *chan; | ||
433 | 434 | ||
434 | list_for_each_entry_safe(dtc, _dtc, &dmatest_channels, node) { | 435 | list_for_each_entry_safe(dtc, _dtc, &dmatest_channels, node) { |
435 | list_del(&dtc->node); | 436 | list_del(&dtc->node); |
437 | chan = dtc->chan; | ||
436 | dmatest_cleanup_channel(dtc); | 438 | dmatest_cleanup_channel(dtc); |
437 | pr_debug("dmatest: dropped channel %s\n", | 439 | pr_debug("dmatest: dropped channel %s\n", |
438 | dma_chan_name(dtc->chan)); | 440 | dma_chan_name(chan)); |
439 | dma_release_channel(dtc->chan); | 441 | dma_release_channel(chan); |
440 | } | 442 | } |
441 | } | 443 | } |
442 | module_exit(dmatest_exit); | 444 | module_exit(dmatest_exit); |
diff --git a/drivers/dma/fsldma.c b/drivers/dma/fsldma.c index 70126a606239..86d6da47f558 100644 --- a/drivers/dma/fsldma.c +++ b/drivers/dma/fsldma.c | |||
@@ -158,7 +158,8 @@ static void dma_start(struct fsl_dma_chan *fsl_chan) | |||
158 | 158 | ||
159 | static void dma_halt(struct fsl_dma_chan *fsl_chan) | 159 | static void dma_halt(struct fsl_dma_chan *fsl_chan) |
160 | { | 160 | { |
161 | int i = 0; | 161 | int i; |
162 | |||
162 | DMA_OUT(fsl_chan, &fsl_chan->reg_base->mr, | 163 | DMA_OUT(fsl_chan, &fsl_chan->reg_base->mr, |
163 | DMA_IN(fsl_chan, &fsl_chan->reg_base->mr, 32) | FSL_DMA_MR_CA, | 164 | DMA_IN(fsl_chan, &fsl_chan->reg_base->mr, 32) | FSL_DMA_MR_CA, |
164 | 32); | 165 | 32); |
@@ -166,8 +167,11 @@ static void dma_halt(struct fsl_dma_chan *fsl_chan) | |||
166 | DMA_IN(fsl_chan, &fsl_chan->reg_base->mr, 32) & ~(FSL_DMA_MR_CS | 167 | DMA_IN(fsl_chan, &fsl_chan->reg_base->mr, 32) & ~(FSL_DMA_MR_CS |
167 | | FSL_DMA_MR_EMS_EN | FSL_DMA_MR_CA), 32); | 168 | | FSL_DMA_MR_EMS_EN | FSL_DMA_MR_CA), 32); |
168 | 169 | ||
169 | while (!dma_is_idle(fsl_chan) && (i++ < 100)) | 170 | for (i = 0; i < 100; i++) { |
171 | if (dma_is_idle(fsl_chan)) | ||
172 | break; | ||
170 | udelay(10); | 173 | udelay(10); |
174 | } | ||
171 | if (i >= 100 && !dma_is_idle(fsl_chan)) | 175 | if (i >= 100 && !dma_is_idle(fsl_chan)) |
172 | dev_err(fsl_chan->dev, "DMA halt timeout!\n"); | 176 | dev_err(fsl_chan->dev, "DMA halt timeout!\n"); |
173 | } | 177 | } |
diff --git a/drivers/dma/ioat.c b/drivers/dma/ioat.c index 4105d6575b64..ed83dd9df192 100644 --- a/drivers/dma/ioat.c +++ b/drivers/dma/ioat.c | |||
@@ -1,6 +1,6 @@ | |||
1 | /* | 1 | /* |
2 | * Intel I/OAT DMA Linux driver | 2 | * Intel I/OAT DMA Linux driver |
3 | * Copyright(c) 2007 Intel Corporation. | 3 | * Copyright(c) 2007 - 2009 Intel Corporation. |
4 | * | 4 | * |
5 | * This program is free software; you can redistribute it and/or modify it | 5 | * This program is free software; you can redistribute it and/or modify it |
6 | * under the terms and conditions of the GNU General Public License, | 6 | * under the terms and conditions of the GNU General Public License, |
diff --git a/drivers/dma/ioat_dca.c b/drivers/dma/ioat_dca.c index 6cf622da0286..c012a1e15043 100644 --- a/drivers/dma/ioat_dca.c +++ b/drivers/dma/ioat_dca.c | |||
@@ -1,6 +1,6 @@ | |||
1 | /* | 1 | /* |
2 | * Intel I/OAT DMA Linux driver | 2 | * Intel I/OAT DMA Linux driver |
3 | * Copyright(c) 2007 Intel Corporation. | 3 | * Copyright(c) 2007 - 2009 Intel Corporation. |
4 | * | 4 | * |
5 | * This program is free software; you can redistribute it and/or modify it | 5 | * This program is free software; you can redistribute it and/or modify it |
6 | * under the terms and conditions of the GNU General Public License, | 6 | * under the terms and conditions of the GNU General Public License, |
@@ -49,6 +49,23 @@ | |||
49 | 49 | ||
50 | #define DCA_TAG_MAP_MASK 0xDF | 50 | #define DCA_TAG_MAP_MASK 0xDF |
51 | 51 | ||
52 | /* expected tag map bytes for I/OAT ver.2 */ | ||
53 | #define DCA2_TAG_MAP_BYTE0 0x80 | ||
54 | #define DCA2_TAG_MAP_BYTE1 0x0 | ||
55 | #define DCA2_TAG_MAP_BYTE2 0x81 | ||
56 | #define DCA2_TAG_MAP_BYTE3 0x82 | ||
57 | #define DCA2_TAG_MAP_BYTE4 0x82 | ||
58 | |||
59 | /* verify if tag map matches expected values */ | ||
60 | static inline int dca2_tag_map_valid(u8 *tag_map) | ||
61 | { | ||
62 | return ((tag_map[0] == DCA2_TAG_MAP_BYTE0) && | ||
63 | (tag_map[1] == DCA2_TAG_MAP_BYTE1) && | ||
64 | (tag_map[2] == DCA2_TAG_MAP_BYTE2) && | ||
65 | (tag_map[3] == DCA2_TAG_MAP_BYTE3) && | ||
66 | (tag_map[4] == DCA2_TAG_MAP_BYTE4)); | ||
67 | } | ||
68 | |||
52 | /* | 69 | /* |
53 | * "Legacy" DCA systems do not implement the DCA register set in the | 70 | * "Legacy" DCA systems do not implement the DCA register set in the |
54 | * I/OAT device. Software needs direct support for their tag mappings. | 71 | * I/OAT device. Software needs direct support for their tag mappings. |
@@ -452,6 +469,13 @@ struct dca_provider *ioat2_dca_init(struct pci_dev *pdev, void __iomem *iobase) | |||
452 | ioatdca->tag_map[i] = 0; | 469 | ioatdca->tag_map[i] = 0; |
453 | } | 470 | } |
454 | 471 | ||
472 | if (!dca2_tag_map_valid(ioatdca->tag_map)) { | ||
473 | dev_err(&pdev->dev, "APICID_TAG_MAP set incorrectly by BIOS, " | ||
474 | "disabling DCA\n"); | ||
475 | free_dca_provider(dca); | ||
476 | return NULL; | ||
477 | } | ||
478 | |||
455 | err = register_dca_provider(dca, &pdev->dev); | 479 | err = register_dca_provider(dca, &pdev->dev); |
456 | if (err) { | 480 | if (err) { |
457 | free_dca_provider(dca); | 481 | free_dca_provider(dca); |
diff --git a/drivers/dma/ioat_dma.c b/drivers/dma/ioat_dma.c index b3759c4b6536..5905cd36bcd2 100644 --- a/drivers/dma/ioat_dma.c +++ b/drivers/dma/ioat_dma.c | |||
@@ -1,6 +1,6 @@ | |||
1 | /* | 1 | /* |
2 | * Intel I/OAT DMA Linux driver | 2 | * Intel I/OAT DMA Linux driver |
3 | * Copyright(c) 2004 - 2007 Intel Corporation. | 3 | * Copyright(c) 2004 - 2009 Intel Corporation. |
4 | * | 4 | * |
5 | * This program is free software; you can redistribute it and/or modify it | 5 | * This program is free software; you can redistribute it and/or modify it |
6 | * under the terms and conditions of the GNU General Public License, | 6 | * under the terms and conditions of the GNU General Public License, |
@@ -189,11 +189,13 @@ static int ioat_dma_enumerate_channels(struct ioatdma_device *device) | |||
189 | ioat_chan->xfercap = xfercap; | 189 | ioat_chan->xfercap = xfercap; |
190 | ioat_chan->desccount = 0; | 190 | ioat_chan->desccount = 0; |
191 | INIT_DELAYED_WORK(&ioat_chan->work, ioat_dma_chan_reset_part2); | 191 | INIT_DELAYED_WORK(&ioat_chan->work, ioat_dma_chan_reset_part2); |
192 | if (ioat_chan->device->version != IOAT_VER_1_2) { | 192 | if (ioat_chan->device->version == IOAT_VER_2_0) |
193 | writel(IOAT_DCACTRL_CMPL_WRITE_ENABLE | 193 | writel(IOAT_DCACTRL_CMPL_WRITE_ENABLE | |
194 | | IOAT_DMA_DCA_ANY_CPU, | 194 | IOAT_DMA_DCA_ANY_CPU, |
195 | ioat_chan->reg_base + IOAT_DCACTRL_OFFSET); | 195 | ioat_chan->reg_base + IOAT_DCACTRL_OFFSET); |
196 | } | 196 | else if (ioat_chan->device->version == IOAT_VER_3_0) |
197 | writel(IOAT_DMA_DCA_ANY_CPU, | ||
198 | ioat_chan->reg_base + IOAT_DCACTRL_OFFSET); | ||
197 | spin_lock_init(&ioat_chan->cleanup_lock); | 199 | spin_lock_init(&ioat_chan->cleanup_lock); |
198 | spin_lock_init(&ioat_chan->desc_lock); | 200 | spin_lock_init(&ioat_chan->desc_lock); |
199 | INIT_LIST_HEAD(&ioat_chan->free_desc); | 201 | INIT_LIST_HEAD(&ioat_chan->free_desc); |
@@ -1169,9 +1171,8 @@ static void ioat_dma_memcpy_cleanup(struct ioat_dma_chan *ioat_chan) | |||
1169 | * up if the client is done with the descriptor | 1171 | * up if the client is done with the descriptor |
1170 | */ | 1172 | */ |
1171 | if (async_tx_test_ack(&desc->async_tx)) { | 1173 | if (async_tx_test_ack(&desc->async_tx)) { |
1172 | list_del(&desc->node); | 1174 | list_move_tail(&desc->node, |
1173 | list_add_tail(&desc->node, | 1175 | &ioat_chan->free_desc); |
1174 | &ioat_chan->free_desc); | ||
1175 | } else | 1176 | } else |
1176 | desc->async_tx.cookie = 0; | 1177 | desc->async_tx.cookie = 0; |
1177 | } else { | 1178 | } else { |
@@ -1362,6 +1363,7 @@ static int ioat_dma_self_test(struct ioatdma_device *device) | |||
1362 | dma_cookie_t cookie; | 1363 | dma_cookie_t cookie; |
1363 | int err = 0; | 1364 | int err = 0; |
1364 | struct completion cmp; | 1365 | struct completion cmp; |
1366 | unsigned long tmo; | ||
1365 | 1367 | ||
1366 | src = kzalloc(sizeof(u8) * IOAT_TEST_SIZE, GFP_KERNEL); | 1368 | src = kzalloc(sizeof(u8) * IOAT_TEST_SIZE, GFP_KERNEL); |
1367 | if (!src) | 1369 | if (!src) |
@@ -1413,9 +1415,10 @@ static int ioat_dma_self_test(struct ioatdma_device *device) | |||
1413 | } | 1415 | } |
1414 | device->common.device_issue_pending(dma_chan); | 1416 | device->common.device_issue_pending(dma_chan); |
1415 | 1417 | ||
1416 | wait_for_completion_timeout(&cmp, msecs_to_jiffies(3000)); | 1418 | tmo = wait_for_completion_timeout(&cmp, msecs_to_jiffies(3000)); |
1417 | 1419 | ||
1418 | if (device->common.device_is_tx_complete(dma_chan, cookie, NULL, NULL) | 1420 | if (tmo == 0 || |
1421 | device->common.device_is_tx_complete(dma_chan, cookie, NULL, NULL) | ||
1419 | != DMA_SUCCESS) { | 1422 | != DMA_SUCCESS) { |
1420 | dev_err(&device->pdev->dev, | 1423 | dev_err(&device->pdev->dev, |
1421 | "Self-test copy timed out, disabling\n"); | 1424 | "Self-test copy timed out, disabling\n"); |
@@ -1657,6 +1660,13 @@ struct ioatdma_device *ioat_dma_probe(struct pci_dev *pdev, | |||
1657 | " %d channels, device version 0x%02x, driver version %s\n", | 1660 | " %d channels, device version 0x%02x, driver version %s\n", |
1658 | device->common.chancnt, device->version, IOAT_DMA_VERSION); | 1661 | device->common.chancnt, device->version, IOAT_DMA_VERSION); |
1659 | 1662 | ||
1663 | if (!device->common.chancnt) { | ||
1664 | dev_err(&device->pdev->dev, | ||
1665 | "Intel(R) I/OAT DMA Engine problem found: " | ||
1666 | "zero channels detected\n"); | ||
1667 | goto err_setup_interrupts; | ||
1668 | } | ||
1669 | |||
1660 | err = ioat_dma_setup_interrupts(device); | 1670 | err = ioat_dma_setup_interrupts(device); |
1661 | if (err) | 1671 | if (err) |
1662 | goto err_setup_interrupts; | 1672 | goto err_setup_interrupts; |
@@ -1696,6 +1706,9 @@ void ioat_dma_remove(struct ioatdma_device *device) | |||
1696 | struct dma_chan *chan, *_chan; | 1706 | struct dma_chan *chan, *_chan; |
1697 | struct ioat_dma_chan *ioat_chan; | 1707 | struct ioat_dma_chan *ioat_chan; |
1698 | 1708 | ||
1709 | if (device->version != IOAT_VER_3_0) | ||
1710 | cancel_delayed_work(&device->work); | ||
1711 | |||
1699 | ioat_dma_remove_interrupts(device); | 1712 | ioat_dma_remove_interrupts(device); |
1700 | 1713 | ||
1701 | dma_async_device_unregister(&device->common); | 1714 | dma_async_device_unregister(&device->common); |
@@ -1707,10 +1720,6 @@ void ioat_dma_remove(struct ioatdma_device *device) | |||
1707 | pci_release_regions(device->pdev); | 1720 | pci_release_regions(device->pdev); |
1708 | pci_disable_device(device->pdev); | 1721 | pci_disable_device(device->pdev); |
1709 | 1722 | ||
1710 | if (device->version != IOAT_VER_3_0) { | ||
1711 | cancel_delayed_work(&device->work); | ||
1712 | } | ||
1713 | |||
1714 | list_for_each_entry_safe(chan, _chan, | 1723 | list_for_each_entry_safe(chan, _chan, |
1715 | &device->common.channels, device_node) { | 1724 | &device->common.channels, device_node) { |
1716 | ioat_chan = to_ioat_chan(chan); | 1725 | ioat_chan = to_ioat_chan(chan); |
diff --git a/drivers/dma/ioatdma.h b/drivers/dma/ioatdma.h index a3306d0e1372..a52ff4bd4601 100644 --- a/drivers/dma/ioatdma.h +++ b/drivers/dma/ioatdma.h | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright(c) 2004 - 2007 Intel Corporation. All rights reserved. | 2 | * Copyright(c) 2004 - 2009 Intel Corporation. All rights reserved. |
3 | * | 3 | * |
4 | * This program is free software; you can redistribute it and/or modify it | 4 | * This program is free software; you can redistribute it and/or modify it |
5 | * under the terms of the GNU General Public License as published by the Free | 5 | * under the terms of the GNU General Public License as published by the Free |
@@ -29,7 +29,7 @@ | |||
29 | #include <linux/pci_ids.h> | 29 | #include <linux/pci_ids.h> |
30 | #include <net/tcp.h> | 30 | #include <net/tcp.h> |
31 | 31 | ||
32 | #define IOAT_DMA_VERSION "3.30" | 32 | #define IOAT_DMA_VERSION "3.64" |
33 | 33 | ||
34 | enum ioat_interrupt { | 34 | enum ioat_interrupt { |
35 | none = 0, | 35 | none = 0, |
@@ -135,12 +135,14 @@ static inline void ioat_set_tcp_copy_break(struct ioatdma_device *dev) | |||
135 | #ifdef CONFIG_NET_DMA | 135 | #ifdef CONFIG_NET_DMA |
136 | switch (dev->version) { | 136 | switch (dev->version) { |
137 | case IOAT_VER_1_2: | 137 | case IOAT_VER_1_2: |
138 | case IOAT_VER_3_0: | ||
139 | sysctl_tcp_dma_copybreak = 4096; | 138 | sysctl_tcp_dma_copybreak = 4096; |
140 | break; | 139 | break; |
141 | case IOAT_VER_2_0: | 140 | case IOAT_VER_2_0: |
142 | sysctl_tcp_dma_copybreak = 2048; | 141 | sysctl_tcp_dma_copybreak = 2048; |
143 | break; | 142 | break; |
143 | case IOAT_VER_3_0: | ||
144 | sysctl_tcp_dma_copybreak = 262144; | ||
145 | break; | ||
144 | } | 146 | } |
145 | #endif | 147 | #endif |
146 | } | 148 | } |
diff --git a/drivers/dma/ioatdma_hw.h b/drivers/dma/ioatdma_hw.h index f1ae2c776f74..afa57eef86c9 100644 --- a/drivers/dma/ioatdma_hw.h +++ b/drivers/dma/ioatdma_hw.h | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright(c) 2004 - 2007 Intel Corporation. All rights reserved. | 2 | * Copyright(c) 2004 - 2009 Intel Corporation. All rights reserved. |
3 | * | 3 | * |
4 | * This program is free software; you can redistribute it and/or modify it | 4 | * This program is free software; you can redistribute it and/or modify it |
5 | * under the terms of the GNU General Public License as published by the Free | 5 | * under the terms of the GNU General Public License as published by the Free |
diff --git a/drivers/dma/ioatdma_registers.h b/drivers/dma/ioatdma_registers.h index 827cb503cac6..49bc277424f8 100644 --- a/drivers/dma/ioatdma_registers.h +++ b/drivers/dma/ioatdma_registers.h | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright(c) 2004 - 2007 Intel Corporation. All rights reserved. | 2 | * Copyright(c) 2004 - 2009 Intel Corporation. All rights reserved. |
3 | * | 3 | * |
4 | * This program is free software; you can redistribute it and/or modify it | 4 | * This program is free software; you can redistribute it and/or modify it |
5 | * under the terms of the GNU General Public License as published by the Free | 5 | * under the terms of the GNU General Public License as published by the Free |
diff --git a/drivers/dma/iop-adma.c b/drivers/dma/iop-adma.c index 647374acba94..16adbe61cfb2 100644 --- a/drivers/dma/iop-adma.c +++ b/drivers/dma/iop-adma.c | |||
@@ -928,19 +928,19 @@ iop_adma_xor_zero_sum_self_test(struct iop_adma_device *device) | |||
928 | 928 | ||
929 | for (src_idx = 0; src_idx < IOP_ADMA_NUM_SRC_TEST; src_idx++) { | 929 | for (src_idx = 0; src_idx < IOP_ADMA_NUM_SRC_TEST; src_idx++) { |
930 | xor_srcs[src_idx] = alloc_page(GFP_KERNEL); | 930 | xor_srcs[src_idx] = alloc_page(GFP_KERNEL); |
931 | if (!xor_srcs[src_idx]) | 931 | if (!xor_srcs[src_idx]) { |
932 | while (src_idx--) { | 932 | while (src_idx--) |
933 | __free_page(xor_srcs[src_idx]); | 933 | __free_page(xor_srcs[src_idx]); |
934 | return -ENOMEM; | 934 | return -ENOMEM; |
935 | } | 935 | } |
936 | } | 936 | } |
937 | 937 | ||
938 | dest = alloc_page(GFP_KERNEL); | 938 | dest = alloc_page(GFP_KERNEL); |
939 | if (!dest) | 939 | if (!dest) { |
940 | while (src_idx--) { | 940 | while (src_idx--) |
941 | __free_page(xor_srcs[src_idx]); | 941 | __free_page(xor_srcs[src_idx]); |
942 | return -ENOMEM; | 942 | return -ENOMEM; |
943 | } | 943 | } |
944 | 944 | ||
945 | /* Fill in src buffers */ | 945 | /* Fill in src buffers */ |
946 | for (src_idx = 0; src_idx < IOP_ADMA_NUM_SRC_TEST; src_idx++) { | 946 | for (src_idx = 0; src_idx < IOP_ADMA_NUM_SRC_TEST; src_idx++) { |
diff --git a/drivers/dma/ipu/ipu_idmac.c b/drivers/dma/ipu/ipu_idmac.c index 1f154d08e98f..ae50a9d1a4e6 100644 --- a/drivers/dma/ipu/ipu_idmac.c +++ b/drivers/dma/ipu/ipu_idmac.c | |||
@@ -729,7 +729,7 @@ static int ipu_init_channel_buffer(struct idmac_channel *ichan, | |||
729 | 729 | ||
730 | ichan->status = IPU_CHANNEL_READY; | 730 | ichan->status = IPU_CHANNEL_READY; |
731 | 731 | ||
732 | spin_unlock_irqrestore(ipu->lock, flags); | 732 | spin_unlock_irqrestore(&ipu->lock, flags); |
733 | 733 | ||
734 | return 0; | 734 | return 0; |
735 | } | 735 | } |
diff --git a/drivers/dma/mv_xor.c b/drivers/dma/mv_xor.c index 5d5d5b31867f..cb7f26fb9f18 100644 --- a/drivers/dma/mv_xor.c +++ b/drivers/dma/mv_xor.c | |||
@@ -1019,19 +1019,19 @@ mv_xor_xor_self_test(struct mv_xor_device *device) | |||
1019 | 1019 | ||
1020 | for (src_idx = 0; src_idx < MV_XOR_NUM_SRC_TEST; src_idx++) { | 1020 | for (src_idx = 0; src_idx < MV_XOR_NUM_SRC_TEST; src_idx++) { |
1021 | xor_srcs[src_idx] = alloc_page(GFP_KERNEL); | 1021 | xor_srcs[src_idx] = alloc_page(GFP_KERNEL); |
1022 | if (!xor_srcs[src_idx]) | 1022 | if (!xor_srcs[src_idx]) { |
1023 | while (src_idx--) { | 1023 | while (src_idx--) |
1024 | __free_page(xor_srcs[src_idx]); | 1024 | __free_page(xor_srcs[src_idx]); |
1025 | return -ENOMEM; | 1025 | return -ENOMEM; |
1026 | } | 1026 | } |
1027 | } | 1027 | } |
1028 | 1028 | ||
1029 | dest = alloc_page(GFP_KERNEL); | 1029 | dest = alloc_page(GFP_KERNEL); |
1030 | if (!dest) | 1030 | if (!dest) { |
1031 | while (src_idx--) { | 1031 | while (src_idx--) |
1032 | __free_page(xor_srcs[src_idx]); | 1032 | __free_page(xor_srcs[src_idx]); |
1033 | return -ENOMEM; | 1033 | return -ENOMEM; |
1034 | } | 1034 | } |
1035 | 1035 | ||
1036 | /* Fill in src buffers */ | 1036 | /* Fill in src buffers */ |
1037 | for (src_idx = 0; src_idx < MV_XOR_NUM_SRC_TEST; src_idx++) { | 1037 | for (src_idx = 0; src_idx < MV_XOR_NUM_SRC_TEST; src_idx++) { |
diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c index 6dab63bdc4c1..6d21b9e48b89 100644 --- a/drivers/gpu/drm/i915/i915_dma.c +++ b/drivers/gpu/drm/i915/i915_dma.c | |||
@@ -1105,7 +1105,7 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags) | |||
1105 | 1024 * 1024, | 1105 | 1024 * 1024, |
1106 | MTRR_TYPE_WRCOMB, 1); | 1106 | MTRR_TYPE_WRCOMB, 1); |
1107 | if (dev_priv->mm.gtt_mtrr < 0) { | 1107 | if (dev_priv->mm.gtt_mtrr < 0) { |
1108 | DRM_INFO("MTRR allocation failed\n. Graphics " | 1108 | DRM_INFO("MTRR allocation failed. Graphics " |
1109 | "performance may suffer.\n"); | 1109 | "performance may suffer.\n"); |
1110 | } | 1110 | } |
1111 | 1111 | ||
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index 17fa40858d26..d6cc9861e0a1 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h | |||
@@ -279,7 +279,6 @@ typedef struct drm_i915_private { | |||
279 | u8 saveAR_INDEX; | 279 | u8 saveAR_INDEX; |
280 | u8 saveAR[21]; | 280 | u8 saveAR[21]; |
281 | u8 saveDACMASK; | 281 | u8 saveDACMASK; |
282 | u8 saveDACDATA[256*3]; /* 256 3-byte colors */ | ||
283 | u8 saveCR[37]; | 282 | u8 saveCR[37]; |
284 | 283 | ||
285 | struct { | 284 | struct { |
@@ -457,6 +456,12 @@ struct drm_i915_gem_object { | |||
457 | 456 | ||
458 | /** for phy allocated objects */ | 457 | /** for phy allocated objects */ |
459 | struct drm_i915_gem_phys_object *phys_obj; | 458 | struct drm_i915_gem_phys_object *phys_obj; |
459 | |||
460 | /** | ||
461 | * Used for checking the object doesn't appear more than once | ||
462 | * in an execbuffer object list. | ||
463 | */ | ||
464 | int in_execbuffer; | ||
460 | }; | 465 | }; |
461 | 466 | ||
462 | /** | 467 | /** |
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c index 85685bfd12da..37427e4016cb 100644 --- a/drivers/gpu/drm/i915/i915_gem.c +++ b/drivers/gpu/drm/i915/i915_gem.c | |||
@@ -1476,7 +1476,7 @@ static void i915_write_fence_reg(struct drm_i915_fence_reg *reg) | |||
1476 | struct drm_i915_gem_object *obj_priv = obj->driver_private; | 1476 | struct drm_i915_gem_object *obj_priv = obj->driver_private; |
1477 | int regnum = obj_priv->fence_reg; | 1477 | int regnum = obj_priv->fence_reg; |
1478 | int tile_width; | 1478 | int tile_width; |
1479 | uint32_t val; | 1479 | uint32_t fence_reg, val; |
1480 | uint32_t pitch_val; | 1480 | uint32_t pitch_val; |
1481 | 1481 | ||
1482 | if ((obj_priv->gtt_offset & ~I915_FENCE_START_MASK) || | 1482 | if ((obj_priv->gtt_offset & ~I915_FENCE_START_MASK) || |
@@ -1503,7 +1503,11 @@ static void i915_write_fence_reg(struct drm_i915_fence_reg *reg) | |||
1503 | val |= pitch_val << I830_FENCE_PITCH_SHIFT; | 1503 | val |= pitch_val << I830_FENCE_PITCH_SHIFT; |
1504 | val |= I830_FENCE_REG_VALID; | 1504 | val |= I830_FENCE_REG_VALID; |
1505 | 1505 | ||
1506 | I915_WRITE(FENCE_REG_830_0 + (regnum * 4), val); | 1506 | if (regnum < 8) |
1507 | fence_reg = FENCE_REG_830_0 + (regnum * 4); | ||
1508 | else | ||
1509 | fence_reg = FENCE_REG_945_8 + ((regnum - 8) * 4); | ||
1510 | I915_WRITE(fence_reg, val); | ||
1507 | } | 1511 | } |
1508 | 1512 | ||
1509 | static void i830_write_fence_reg(struct drm_i915_fence_reg *reg) | 1513 | static void i830_write_fence_reg(struct drm_i915_fence_reg *reg) |
@@ -1557,7 +1561,8 @@ i915_gem_object_get_fence_reg(struct drm_gem_object *obj, bool write) | |||
1557 | struct drm_i915_private *dev_priv = dev->dev_private; | 1561 | struct drm_i915_private *dev_priv = dev->dev_private; |
1558 | struct drm_i915_gem_object *obj_priv = obj->driver_private; | 1562 | struct drm_i915_gem_object *obj_priv = obj->driver_private; |
1559 | struct drm_i915_fence_reg *reg = NULL; | 1563 | struct drm_i915_fence_reg *reg = NULL; |
1560 | int i, ret; | 1564 | struct drm_i915_gem_object *old_obj_priv = NULL; |
1565 | int i, ret, avail; | ||
1561 | 1566 | ||
1562 | switch (obj_priv->tiling_mode) { | 1567 | switch (obj_priv->tiling_mode) { |
1563 | case I915_TILING_NONE: | 1568 | case I915_TILING_NONE: |
@@ -1580,25 +1585,46 @@ i915_gem_object_get_fence_reg(struct drm_gem_object *obj, bool write) | |||
1580 | } | 1585 | } |
1581 | 1586 | ||
1582 | /* First try to find a free reg */ | 1587 | /* First try to find a free reg */ |
1588 | try_again: | ||
1589 | avail = 0; | ||
1583 | for (i = dev_priv->fence_reg_start; i < dev_priv->num_fence_regs; i++) { | 1590 | for (i = dev_priv->fence_reg_start; i < dev_priv->num_fence_regs; i++) { |
1584 | reg = &dev_priv->fence_regs[i]; | 1591 | reg = &dev_priv->fence_regs[i]; |
1585 | if (!reg->obj) | 1592 | if (!reg->obj) |
1586 | break; | 1593 | break; |
1594 | |||
1595 | old_obj_priv = reg->obj->driver_private; | ||
1596 | if (!old_obj_priv->pin_count) | ||
1597 | avail++; | ||
1587 | } | 1598 | } |
1588 | 1599 | ||
1589 | /* None available, try to steal one or wait for a user to finish */ | 1600 | /* None available, try to steal one or wait for a user to finish */ |
1590 | if (i == dev_priv->num_fence_regs) { | 1601 | if (i == dev_priv->num_fence_regs) { |
1591 | struct drm_i915_gem_object *old_obj_priv = NULL; | 1602 | uint32_t seqno = dev_priv->mm.next_gem_seqno; |
1592 | loff_t offset; | 1603 | loff_t offset; |
1593 | 1604 | ||
1594 | try_again: | 1605 | if (avail == 0) |
1595 | /* Could try to use LRU here instead... */ | 1606 | return -ENOMEM; |
1607 | |||
1596 | for (i = dev_priv->fence_reg_start; | 1608 | for (i = dev_priv->fence_reg_start; |
1597 | i < dev_priv->num_fence_regs; i++) { | 1609 | i < dev_priv->num_fence_regs; i++) { |
1610 | uint32_t this_seqno; | ||
1611 | |||
1598 | reg = &dev_priv->fence_regs[i]; | 1612 | reg = &dev_priv->fence_regs[i]; |
1599 | old_obj_priv = reg->obj->driver_private; | 1613 | old_obj_priv = reg->obj->driver_private; |
1600 | if (!old_obj_priv->pin_count) | 1614 | |
1615 | if (old_obj_priv->pin_count) | ||
1616 | continue; | ||
1617 | |||
1618 | /* i915 uses fences for GPU access to tiled buffers */ | ||
1619 | if (IS_I965G(dev) || !old_obj_priv->active) | ||
1601 | break; | 1620 | break; |
1621 | |||
1622 | /* find the seqno of the first available fence */ | ||
1623 | this_seqno = old_obj_priv->last_rendering_seqno; | ||
1624 | if (this_seqno != 0 && | ||
1625 | reg->obj->write_domain == 0 && | ||
1626 | i915_seqno_passed(seqno, this_seqno)) | ||
1627 | seqno = this_seqno; | ||
1602 | } | 1628 | } |
1603 | 1629 | ||
1604 | /* | 1630 | /* |
@@ -1606,15 +1632,25 @@ try_again: | |||
1606 | * objects to finish before trying again. | 1632 | * objects to finish before trying again. |
1607 | */ | 1633 | */ |
1608 | if (i == dev_priv->num_fence_regs) { | 1634 | if (i == dev_priv->num_fence_regs) { |
1609 | ret = i915_gem_object_set_to_gtt_domain(reg->obj, 0); | 1635 | if (seqno == dev_priv->mm.next_gem_seqno) { |
1610 | if (ret) { | 1636 | i915_gem_flush(dev, |
1611 | WARN(ret != -ERESTARTSYS, | 1637 | I915_GEM_GPU_DOMAINS, |
1612 | "switch to GTT domain failed: %d\n", ret); | 1638 | I915_GEM_GPU_DOMAINS); |
1613 | return ret; | 1639 | seqno = i915_add_request(dev, |
1640 | I915_GEM_GPU_DOMAINS); | ||
1641 | if (seqno == 0) | ||
1642 | return -ENOMEM; | ||
1614 | } | 1643 | } |
1644 | |||
1645 | ret = i915_wait_request(dev, seqno); | ||
1646 | if (ret) | ||
1647 | return ret; | ||
1615 | goto try_again; | 1648 | goto try_again; |
1616 | } | 1649 | } |
1617 | 1650 | ||
1651 | BUG_ON(old_obj_priv->active || | ||
1652 | (reg->obj->write_domain & I915_GEM_GPU_DOMAINS)); | ||
1653 | |||
1618 | /* | 1654 | /* |
1619 | * Zap this virtual mapping so we can set up a fence again | 1655 | * Zap this virtual mapping so we can set up a fence again |
1620 | * for this object next time we need it. | 1656 | * for this object next time we need it. |
@@ -1655,8 +1691,17 @@ i915_gem_clear_fence_reg(struct drm_gem_object *obj) | |||
1655 | 1691 | ||
1656 | if (IS_I965G(dev)) | 1692 | if (IS_I965G(dev)) |
1657 | I915_WRITE64(FENCE_REG_965_0 + (obj_priv->fence_reg * 8), 0); | 1693 | I915_WRITE64(FENCE_REG_965_0 + (obj_priv->fence_reg * 8), 0); |
1658 | else | 1694 | else { |
1659 | I915_WRITE(FENCE_REG_830_0 + (obj_priv->fence_reg * 4), 0); | 1695 | uint32_t fence_reg; |
1696 | |||
1697 | if (obj_priv->fence_reg < 8) | ||
1698 | fence_reg = FENCE_REG_830_0 + obj_priv->fence_reg * 4; | ||
1699 | else | ||
1700 | fence_reg = FENCE_REG_945_8 + (obj_priv->fence_reg - | ||
1701 | 8) * 4; | ||
1702 | |||
1703 | I915_WRITE(fence_reg, 0); | ||
1704 | } | ||
1660 | 1705 | ||
1661 | dev_priv->fence_regs[obj_priv->fence_reg].obj = NULL; | 1706 | dev_priv->fence_regs[obj_priv->fence_reg].obj = NULL; |
1662 | obj_priv->fence_reg = I915_FENCE_REG_NONE; | 1707 | obj_priv->fence_reg = I915_FENCE_REG_NONE; |
@@ -2469,6 +2514,7 @@ i915_gem_execbuffer(struct drm_device *dev, void *data, | |||
2469 | struct drm_i915_gem_exec_object *exec_list = NULL; | 2514 | struct drm_i915_gem_exec_object *exec_list = NULL; |
2470 | struct drm_gem_object **object_list = NULL; | 2515 | struct drm_gem_object **object_list = NULL; |
2471 | struct drm_gem_object *batch_obj; | 2516 | struct drm_gem_object *batch_obj; |
2517 | struct drm_i915_gem_object *obj_priv; | ||
2472 | int ret, i, pinned = 0; | 2518 | int ret, i, pinned = 0; |
2473 | uint64_t exec_offset; | 2519 | uint64_t exec_offset; |
2474 | uint32_t seqno, flush_domains; | 2520 | uint32_t seqno, flush_domains; |
@@ -2533,6 +2579,15 @@ i915_gem_execbuffer(struct drm_device *dev, void *data, | |||
2533 | ret = -EBADF; | 2579 | ret = -EBADF; |
2534 | goto err; | 2580 | goto err; |
2535 | } | 2581 | } |
2582 | |||
2583 | obj_priv = object_list[i]->driver_private; | ||
2584 | if (obj_priv->in_execbuffer) { | ||
2585 | DRM_ERROR("Object %p appears more than once in object list\n", | ||
2586 | object_list[i]); | ||
2587 | ret = -EBADF; | ||
2588 | goto err; | ||
2589 | } | ||
2590 | obj_priv->in_execbuffer = true; | ||
2536 | } | 2591 | } |
2537 | 2592 | ||
2538 | /* Pin and relocate */ | 2593 | /* Pin and relocate */ |
@@ -2674,8 +2729,13 @@ err: | |||
2674 | for (i = 0; i < pinned; i++) | 2729 | for (i = 0; i < pinned; i++) |
2675 | i915_gem_object_unpin(object_list[i]); | 2730 | i915_gem_object_unpin(object_list[i]); |
2676 | 2731 | ||
2677 | for (i = 0; i < args->buffer_count; i++) | 2732 | for (i = 0; i < args->buffer_count; i++) { |
2733 | if (object_list[i]) { | ||
2734 | obj_priv = object_list[i]->driver_private; | ||
2735 | obj_priv->in_execbuffer = false; | ||
2736 | } | ||
2678 | drm_gem_object_unreference(object_list[i]); | 2737 | drm_gem_object_unreference(object_list[i]); |
2738 | } | ||
2679 | 2739 | ||
2680 | mutex_unlock(&dev->struct_mutex); | 2740 | mutex_unlock(&dev->struct_mutex); |
2681 | 2741 | ||
@@ -2712,17 +2772,24 @@ i915_gem_object_pin(struct drm_gem_object *obj, uint32_t alignment) | |||
2712 | ret = i915_gem_object_bind_to_gtt(obj, alignment); | 2772 | ret = i915_gem_object_bind_to_gtt(obj, alignment); |
2713 | if (ret != 0) { | 2773 | if (ret != 0) { |
2714 | if (ret != -EBUSY && ret != -ERESTARTSYS) | 2774 | if (ret != -EBUSY && ret != -ERESTARTSYS) |
2715 | DRM_ERROR("Failure to bind: %d", ret); | 2775 | DRM_ERROR("Failure to bind: %d\n", ret); |
2776 | return ret; | ||
2777 | } | ||
2778 | } | ||
2779 | /* | ||
2780 | * Pre-965 chips need a fence register set up in order to | ||
2781 | * properly handle tiled surfaces. | ||
2782 | */ | ||
2783 | if (!IS_I965G(dev) && | ||
2784 | obj_priv->fence_reg == I915_FENCE_REG_NONE && | ||
2785 | obj_priv->tiling_mode != I915_TILING_NONE) { | ||
2786 | ret = i915_gem_object_get_fence_reg(obj, true); | ||
2787 | if (ret != 0) { | ||
2788 | if (ret != -EBUSY && ret != -ERESTARTSYS) | ||
2789 | DRM_ERROR("Failure to install fence: %d\n", | ||
2790 | ret); | ||
2716 | return ret; | 2791 | return ret; |
2717 | } | 2792 | } |
2718 | /* | ||
2719 | * Pre-965 chips need a fence register set up in order to | ||
2720 | * properly handle tiled surfaces. | ||
2721 | */ | ||
2722 | if (!IS_I965G(dev) && | ||
2723 | obj_priv->fence_reg == I915_FENCE_REG_NONE && | ||
2724 | obj_priv->tiling_mode != I915_TILING_NONE) | ||
2725 | i915_gem_object_get_fence_reg(obj, true); | ||
2726 | } | 2793 | } |
2727 | obj_priv->pin_count++; | 2794 | obj_priv->pin_count++; |
2728 | 2795 | ||
diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h index 9d6539a868b3..90600d899413 100644 --- a/drivers/gpu/drm/i915/i915_reg.h +++ b/drivers/gpu/drm/i915/i915_reg.h | |||
@@ -184,6 +184,7 @@ | |||
184 | * Fence registers | 184 | * Fence registers |
185 | */ | 185 | */ |
186 | #define FENCE_REG_830_0 0x2000 | 186 | #define FENCE_REG_830_0 0x2000 |
187 | #define FENCE_REG_945_8 0x3000 | ||
187 | #define I830_FENCE_START_MASK 0x07f80000 | 188 | #define I830_FENCE_START_MASK 0x07f80000 |
188 | #define I830_FENCE_TILING_Y_SHIFT 12 | 189 | #define I830_FENCE_TILING_Y_SHIFT 12 |
189 | #define I830_FENCE_SIZE_BITS(size) ((ffs((size) >> 19) - 1) << 8) | 190 | #define I830_FENCE_SIZE_BITS(size) ((ffs((size) >> 19) - 1) << 8) |
diff --git a/drivers/gpu/drm/i915/i915_suspend.c b/drivers/gpu/drm/i915/i915_suspend.c index 5d84027ee8f3..d669cc2b42c0 100644 --- a/drivers/gpu/drm/i915/i915_suspend.c +++ b/drivers/gpu/drm/i915/i915_suspend.c | |||
@@ -119,11 +119,6 @@ static void i915_save_vga(struct drm_device *dev) | |||
119 | 119 | ||
120 | /* VGA color palette registers */ | 120 | /* VGA color palette registers */ |
121 | dev_priv->saveDACMASK = I915_READ8(VGA_DACMASK); | 121 | dev_priv->saveDACMASK = I915_READ8(VGA_DACMASK); |
122 | /* DACCRX automatically increments during read */ | ||
123 | I915_WRITE8(VGA_DACRX, 0); | ||
124 | /* Read 3 bytes of color data from each index */ | ||
125 | for (i = 0; i < 256 * 3; i++) | ||
126 | dev_priv->saveDACDATA[i] = I915_READ8(VGA_DACDATA); | ||
127 | 122 | ||
128 | /* MSR bits */ | 123 | /* MSR bits */ |
129 | dev_priv->saveMSR = I915_READ8(VGA_MSR_READ); | 124 | dev_priv->saveMSR = I915_READ8(VGA_MSR_READ); |
@@ -225,12 +220,6 @@ static void i915_restore_vga(struct drm_device *dev) | |||
225 | 220 | ||
226 | /* VGA color palette registers */ | 221 | /* VGA color palette registers */ |
227 | I915_WRITE8(VGA_DACMASK, dev_priv->saveDACMASK); | 222 | I915_WRITE8(VGA_DACMASK, dev_priv->saveDACMASK); |
228 | /* DACCRX automatically increments during read */ | ||
229 | I915_WRITE8(VGA_DACWX, 0); | ||
230 | /* Read 3 bytes of color data from each index */ | ||
231 | for (i = 0; i < 256 * 3; i++) | ||
232 | I915_WRITE8(VGA_DACDATA, dev_priv->saveDACDATA[i]); | ||
233 | |||
234 | } | 223 | } |
235 | 224 | ||
236 | int i915_save_state(struct drm_device *dev) | 225 | int i915_save_state(struct drm_device *dev) |
diff --git a/drivers/hwmon/Kconfig b/drivers/hwmon/Kconfig index b84bf066879b..b4eea0292c1a 100644 --- a/drivers/hwmon/Kconfig +++ b/drivers/hwmon/Kconfig | |||
@@ -543,8 +543,8 @@ config SENSORS_LM90 | |||
543 | help | 543 | help |
544 | If you say yes here you get support for National Semiconductor LM90, | 544 | If you say yes here you get support for National Semiconductor LM90, |
545 | LM86, LM89 and LM99, Analog Devices ADM1032 and ADT7461, and Maxim | 545 | LM86, LM89 and LM99, Analog Devices ADM1032 and ADT7461, and Maxim |
546 | MAX6646, MAX6647, MAX6649, MAX6657, MAX6658, MAX6659, MAX6680 and | 546 | MAX6646, MAX6647, MAX6648, MAX6649, MAX6657, MAX6658, MAX6659, |
547 | MAX6681 sensor chips. | 547 | MAX6680, MAX6681 and MAX6692 sensor chips. |
548 | 548 | ||
549 | This driver can also be built as a module. If so, the module | 549 | This driver can also be built as a module. If so, the module |
550 | will be called lm90. | 550 | will be called lm90. |
diff --git a/drivers/hwmon/abituguru3.c b/drivers/hwmon/abituguru3.c index e52b38806d03..ad2b3431b725 100644 --- a/drivers/hwmon/abituguru3.c +++ b/drivers/hwmon/abituguru3.c | |||
@@ -760,8 +760,11 @@ static int abituguru3_read_increment_offset(struct abituguru3_data *data, | |||
760 | 760 | ||
761 | for (i = 0; i < offset_count; i++) | 761 | for (i = 0; i < offset_count; i++) |
762 | if ((x = abituguru3_read(data, bank, offset + i, count, | 762 | if ((x = abituguru3_read(data, bank, offset + i, count, |
763 | buf + i * count)) != count) | 763 | buf + i * count)) != count) { |
764 | return i * count + (i && (x < 0)) ? 0 : x; | 764 | if (x < 0) |
765 | return x; | ||
766 | return i * count + x; | ||
767 | } | ||
765 | 768 | ||
766 | return i * count; | 769 | return i * count; |
767 | } | 770 | } |
diff --git a/drivers/hwmon/f75375s.c b/drivers/hwmon/f75375s.c index 1692de369969..18a1ba888165 100644 --- a/drivers/hwmon/f75375s.c +++ b/drivers/hwmon/f75375s.c | |||
@@ -617,7 +617,7 @@ static void f75375_init(struct i2c_client *client, struct f75375_data *data, | |||
617 | static int f75375_probe(struct i2c_client *client, | 617 | static int f75375_probe(struct i2c_client *client, |
618 | const struct i2c_device_id *id) | 618 | const struct i2c_device_id *id) |
619 | { | 619 | { |
620 | struct f75375_data *data = i2c_get_clientdata(client); | 620 | struct f75375_data *data; |
621 | struct f75375s_platform_data *f75375s_pdata = client->dev.platform_data; | 621 | struct f75375s_platform_data *f75375s_pdata = client->dev.platform_data; |
622 | int err; | 622 | int err; |
623 | 623 | ||
diff --git a/drivers/hwmon/it87.c b/drivers/hwmon/it87.c index 95a99c590da2..9157247fed8e 100644 --- a/drivers/hwmon/it87.c +++ b/drivers/hwmon/it87.c | |||
@@ -213,7 +213,7 @@ static inline u16 FAN16_TO_REG(long rpm) | |||
213 | 213 | ||
214 | #define TEMP_TO_REG(val) (SENSORS_LIMIT(((val)<0?(((val)-500)/1000):\ | 214 | #define TEMP_TO_REG(val) (SENSORS_LIMIT(((val)<0?(((val)-500)/1000):\ |
215 | ((val)+500)/1000),-128,127)) | 215 | ((val)+500)/1000),-128,127)) |
216 | #define TEMP_FROM_REG(val) (((val)>0x80?(val)-0x100:(val))*1000) | 216 | #define TEMP_FROM_REG(val) ((val) * 1000) |
217 | 217 | ||
218 | #define PWM_TO_REG(val) ((val) >> 1) | 218 | #define PWM_TO_REG(val) ((val) >> 1) |
219 | #define PWM_FROM_REG(val) (((val)&0x7f) << 1) | 219 | #define PWM_FROM_REG(val) (((val)&0x7f) << 1) |
@@ -267,9 +267,9 @@ struct it87_data { | |||
267 | u8 has_fan; /* Bitfield, fans enabled */ | 267 | u8 has_fan; /* Bitfield, fans enabled */ |
268 | u16 fan[5]; /* Register values, possibly combined */ | 268 | u16 fan[5]; /* Register values, possibly combined */ |
269 | u16 fan_min[5]; /* Register values, possibly combined */ | 269 | u16 fan_min[5]; /* Register values, possibly combined */ |
270 | u8 temp[3]; /* Register value */ | 270 | s8 temp[3]; /* Register value */ |
271 | u8 temp_high[3]; /* Register value */ | 271 | s8 temp_high[3]; /* Register value */ |
272 | u8 temp_low[3]; /* Register value */ | 272 | s8 temp_low[3]; /* Register value */ |
273 | u8 sensor; /* Register value */ | 273 | u8 sensor; /* Register value */ |
274 | u8 fan_div[3]; /* Register encoding, shifted right */ | 274 | u8 fan_div[3]; /* Register encoding, shifted right */ |
275 | u8 vid; /* Register encoding, combined */ | 275 | u8 vid; /* Register encoding, combined */ |
diff --git a/drivers/hwmon/lm85.c b/drivers/hwmon/lm85.c index cfc1ee90f5a3..b251d8674b41 100644 --- a/drivers/hwmon/lm85.c +++ b/drivers/hwmon/lm85.c | |||
@@ -72,6 +72,7 @@ I2C_CLIENT_INSMOD_7(lm85b, lm85c, adm1027, adt7463, adt7468, emc6d100, | |||
72 | #define LM85_COMPANY_SMSC 0x5c | 72 | #define LM85_COMPANY_SMSC 0x5c |
73 | #define LM85_VERSTEP_VMASK 0xf0 | 73 | #define LM85_VERSTEP_VMASK 0xf0 |
74 | #define LM85_VERSTEP_GENERIC 0x60 | 74 | #define LM85_VERSTEP_GENERIC 0x60 |
75 | #define LM85_VERSTEP_GENERIC2 0x70 | ||
75 | #define LM85_VERSTEP_LM85C 0x60 | 76 | #define LM85_VERSTEP_LM85C 0x60 |
76 | #define LM85_VERSTEP_LM85B 0x62 | 77 | #define LM85_VERSTEP_LM85B 0x62 |
77 | #define LM85_VERSTEP_ADM1027 0x60 | 78 | #define LM85_VERSTEP_ADM1027 0x60 |
@@ -334,6 +335,7 @@ static struct lm85_data *lm85_update_device(struct device *dev); | |||
334 | static const struct i2c_device_id lm85_id[] = { | 335 | static const struct i2c_device_id lm85_id[] = { |
335 | { "adm1027", adm1027 }, | 336 | { "adm1027", adm1027 }, |
336 | { "adt7463", adt7463 }, | 337 | { "adt7463", adt7463 }, |
338 | { "adt7468", adt7468 }, | ||
337 | { "lm85", any_chip }, | 339 | { "lm85", any_chip }, |
338 | { "lm85b", lm85b }, | 340 | { "lm85b", lm85b }, |
339 | { "lm85c", lm85c }, | 341 | { "lm85c", lm85c }, |
@@ -408,7 +410,8 @@ static ssize_t show_vid_reg(struct device *dev, struct device_attribute *attr, | |||
408 | struct lm85_data *data = lm85_update_device(dev); | 410 | struct lm85_data *data = lm85_update_device(dev); |
409 | int vid; | 411 | int vid; |
410 | 412 | ||
411 | if (data->type == adt7463 && (data->vid & 0x80)) { | 413 | if ((data->type == adt7463 || data->type == adt7468) && |
414 | (data->vid & 0x80)) { | ||
412 | /* 6-pin VID (VRM 10) */ | 415 | /* 6-pin VID (VRM 10) */ |
413 | vid = vid_from_reg(data->vid & 0x3f, data->vrm); | 416 | vid = vid_from_reg(data->vid & 0x3f, data->vrm); |
414 | } else { | 417 | } else { |
@@ -1153,7 +1156,8 @@ static int lm85_detect(struct i2c_client *client, int kind, | |||
1153 | address, company, verstep); | 1156 | address, company, verstep); |
1154 | 1157 | ||
1155 | /* All supported chips have the version in common */ | 1158 | /* All supported chips have the version in common */ |
1156 | if ((verstep & LM85_VERSTEP_VMASK) != LM85_VERSTEP_GENERIC) { | 1159 | if ((verstep & LM85_VERSTEP_VMASK) != LM85_VERSTEP_GENERIC && |
1160 | (verstep & LM85_VERSTEP_VMASK) != LM85_VERSTEP_GENERIC2) { | ||
1157 | dev_dbg(&adapter->dev, "Autodetection failed: " | 1161 | dev_dbg(&adapter->dev, "Autodetection failed: " |
1158 | "unsupported version\n"); | 1162 | "unsupported version\n"); |
1159 | return -ENODEV; | 1163 | return -ENODEV; |
diff --git a/drivers/hwmon/lm90.c b/drivers/hwmon/lm90.c index 96a701866726..1aff7575799d 100644 --- a/drivers/hwmon/lm90.c +++ b/drivers/hwmon/lm90.c | |||
@@ -32,10 +32,10 @@ | |||
32 | * supported by this driver. These chips lack the remote temperature | 32 | * supported by this driver. These chips lack the remote temperature |
33 | * offset feature. | 33 | * offset feature. |
34 | * | 34 | * |
35 | * This driver also supports the MAX6646, MAX6647 and MAX6649 chips | 35 | * This driver also supports the MAX6646, MAX6647, MAX6648, MAX6649 and |
36 | * made by Maxim. These are again similar to the LM86, but they use | 36 | * MAX6692 chips made by Maxim. These are again similar to the LM86, |
37 | * unsigned temperature values and can report temperatures from 0 to | 37 | * but they use unsigned temperature values and can report temperatures |
38 | * 145 degrees. | 38 | * from 0 to 145 degrees. |
39 | * | 39 | * |
40 | * This driver also supports the MAX6680 and MAX6681, two other sensor | 40 | * This driver also supports the MAX6680 and MAX6681, two other sensor |
41 | * chips made by Maxim. These are quite similar to the other Maxim | 41 | * chips made by Maxim. These are quite similar to the other Maxim |
diff --git a/drivers/ide/Kconfig b/drivers/ide/Kconfig index e072903b12f0..5ea3bfad172a 100644 --- a/drivers/ide/Kconfig +++ b/drivers/ide/Kconfig | |||
@@ -721,6 +721,11 @@ config BLK_DEV_IDE_TX4939 | |||
721 | depends on SOC_TX4939 | 721 | depends on SOC_TX4939 |
722 | select BLK_DEV_IDEDMA_SFF | 722 | select BLK_DEV_IDEDMA_SFF |
723 | 723 | ||
724 | config BLK_DEV_IDE_AT91 | ||
725 | tristate "Atmel AT91 (SAM9, CAP9, AT572D940HF) IDE support" | ||
726 | depends on ARM && ARCH_AT91 && !ARCH_AT91RM9200 && !ARCH_AT91X40 | ||
727 | select IDE_TIMINGS | ||
728 | |||
724 | config IDE_ARM | 729 | config IDE_ARM |
725 | tristate "ARM IDE support" | 730 | tristate "ARM IDE support" |
726 | depends on ARM && (ARCH_RPC || ARCH_SHARK) | 731 | depends on ARM && (ARCH_RPC || ARCH_SHARK) |
diff --git a/drivers/ide/Makefile b/drivers/ide/Makefile index d0e3d7d5b467..1c326d94aa6d 100644 --- a/drivers/ide/Makefile +++ b/drivers/ide/Makefile | |||
@@ -116,3 +116,4 @@ obj-$(CONFIG_BLK_DEV_IDE_AU1XXX) += au1xxx-ide.o | |||
116 | 116 | ||
117 | obj-$(CONFIG_BLK_DEV_IDE_TX4938) += tx4938ide.o | 117 | obj-$(CONFIG_BLK_DEV_IDE_TX4938) += tx4938ide.o |
118 | obj-$(CONFIG_BLK_DEV_IDE_TX4939) += tx4939ide.o | 118 | obj-$(CONFIG_BLK_DEV_IDE_TX4939) += tx4939ide.o |
119 | obj-$(CONFIG_BLK_DEV_IDE_AT91) += at91_ide.o | ||
diff --git a/drivers/ide/at91_ide.c b/drivers/ide/at91_ide.c new file mode 100644 index 000000000000..1bb50f46388d --- /dev/null +++ b/drivers/ide/at91_ide.c | |||
@@ -0,0 +1,467 @@ | |||
1 | /* | ||
2 | * IDE host driver for AT91 (SAM9, CAP9, AT572D940HF) Static Memory Controller | ||
3 | * with Compact Flash True IDE logic | ||
4 | * | ||
5 | * Copyright (c) 2008, 2009 Kelvatek Ltd. | ||
6 | * | ||
7 | * This program is free software; you can redistribute it and/or modify | ||
8 | * it under the terms of the GNU General Public License as published by | ||
9 | * the Free Software Foundation; either version 2 of the License, or | ||
10 | * (at your option) any later version. | ||
11 | * | ||
12 | * This program is distributed in the hope that it will be useful, | ||
13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
15 | * GNU General Public License for more details. | ||
16 | * | ||
17 | * You should have received a copy of the GNU General Public License | ||
18 | * along with this program; if not, write to the Free Software | ||
19 | * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | ||
20 | * | ||
21 | */ | ||
22 | |||
23 | #include <linux/version.h> | ||
24 | #include <linux/kernel.h> | ||
25 | #include <linux/module.h> | ||
26 | #include <linux/clk.h> | ||
27 | #include <linux/err.h> | ||
28 | #include <linux/ide.h> | ||
29 | #include <linux/platform_device.h> | ||
30 | |||
31 | #include <mach/board.h> | ||
32 | #include <mach/gpio.h> | ||
33 | #include <mach/at91sam9263.h> | ||
34 | #include <mach/at91sam9_smc.h> | ||
35 | #include <mach/at91sam9263_matrix.h> | ||
36 | |||
37 | #define DRV_NAME "at91_ide" | ||
38 | |||
39 | #define perr(fmt, args...) pr_err(DRV_NAME ": " fmt, ##args) | ||
40 | #define pdbg(fmt, args...) pr_debug("%s " fmt, __func__, ##args) | ||
41 | |||
42 | /* | ||
43 | * Access to IDE device is possible through EBI Static Memory Controller | ||
44 | * with Compact Flash logic. For details see EBI and SMC datasheet sections | ||
45 | * of any microcontroller from AT91SAM9 family. | ||
46 | * | ||
47 | * Within SMC chip select address space, lines A[23:21] distinguish Compact | ||
48 | * Flash modes (I/O, common memory, attribute memory, True IDE). IDE modes are: | ||
49 | * 0x00c0000 - True IDE | ||
50 | * 0x00e0000 - Alternate True IDE (Alt Status Register) | ||
51 | * | ||
52 | * On True IDE mode Task File and Data Register are mapped at the same address. | ||
53 | * To distinguish access between these two different bus data width is used: | ||
54 | * 8Bit for Task File, 16Bit for Data I/O. | ||
55 | * | ||
56 | * After initialization we do 8/16 bit flipping (changes in SMC MODE register) | ||
57 | * only inside IDE callback routines which are serialized by IDE layer, | ||
58 | * so no additional locking needed. | ||
59 | */ | ||
60 | |||
61 | #define TASK_FILE 0x00c00000 | ||
62 | #define ALT_MODE 0x00e00000 | ||
63 | #define REGS_SIZE 8 | ||
64 | |||
65 | #define enter_16bit(cs, mode) do { \ | ||
66 | mode = at91_sys_read(AT91_SMC_MODE(cs)); \ | ||
67 | at91_sys_write(AT91_SMC_MODE(cs), mode | AT91_SMC_DBW_16); \ | ||
68 | } while (0) | ||
69 | |||
70 | #define leave_16bit(cs, mode) at91_sys_write(AT91_SMC_MODE(cs), mode); | ||
71 | |||
72 | static void set_smc_timings(const u8 chipselect, const u16 cycle, | ||
73 | const u16 setup, const u16 pulse, | ||
74 | const u16 data_float, int use_iordy) | ||
75 | { | ||
76 | unsigned long mode = AT91_SMC_READMODE | AT91_SMC_WRITEMODE | | ||
77 | AT91_SMC_BAT_SELECT; | ||
78 | |||
79 | /* disable or enable waiting for IORDY signal */ | ||
80 | if (use_iordy) | ||
81 | mode |= AT91_SMC_EXNWMODE_READY; | ||
82 | |||
83 | /* add data float cycles if needed */ | ||
84 | if (data_float) | ||
85 | mode |= AT91_SMC_TDF_(data_float); | ||
86 | |||
87 | at91_sys_write(AT91_SMC_MODE(chipselect), mode); | ||
88 | |||
89 | /* setup timings in SMC */ | ||
90 | at91_sys_write(AT91_SMC_SETUP(chipselect), AT91_SMC_NWESETUP_(setup) | | ||
91 | AT91_SMC_NCS_WRSETUP_(0) | | ||
92 | AT91_SMC_NRDSETUP_(setup) | | ||
93 | AT91_SMC_NCS_RDSETUP_(0)); | ||
94 | at91_sys_write(AT91_SMC_PULSE(chipselect), AT91_SMC_NWEPULSE_(pulse) | | ||
95 | AT91_SMC_NCS_WRPULSE_(cycle) | | ||
96 | AT91_SMC_NRDPULSE_(pulse) | | ||
97 | AT91_SMC_NCS_RDPULSE_(cycle)); | ||
98 | at91_sys_write(AT91_SMC_CYCLE(chipselect), AT91_SMC_NWECYCLE_(cycle) | | ||
99 | AT91_SMC_NRDCYCLE_(cycle)); | ||
100 | } | ||
101 | |||
102 | static unsigned int calc_mck_cycles(unsigned int ns, unsigned int mck_hz) | ||
103 | { | ||
104 | u64 tmp = ns; | ||
105 | |||
106 | tmp *= mck_hz; | ||
107 | tmp += 1000*1000*1000 - 1; /* round up */ | ||
108 | do_div(tmp, 1000*1000*1000); | ||
109 | return (unsigned int) tmp; | ||
110 | } | ||
111 | |||
112 | static void apply_timings(const u8 chipselect, const u8 pio, | ||
113 | const struct ide_timing *timing, int use_iordy) | ||
114 | { | ||
115 | unsigned int t0, t1, t2, t6z; | ||
116 | unsigned int cycle, setup, pulse, data_float; | ||
117 | unsigned int mck_hz; | ||
118 | struct clk *mck; | ||
119 | |||
120 | /* see table 22 of Compact Flash standard 4.1 for the meaning, | ||
121 | * we do not stretch active (t2) time, so setup (t1) + hold time (th) | ||
122 | * assure at least minimal recovery (t2i) time */ | ||
123 | t0 = timing->cyc8b; | ||
124 | t1 = timing->setup; | ||
125 | t2 = timing->act8b; | ||
126 | t6z = (pio < 5) ? 30 : 20; | ||
127 | |||
128 | pdbg("t0=%u t1=%u t2=%u t6z=%u\n", t0, t1, t2, t6z); | ||
129 | |||
130 | mck = clk_get(NULL, "mck"); | ||
131 | BUG_ON(IS_ERR(mck)); | ||
132 | mck_hz = clk_get_rate(mck); | ||
133 | pdbg("mck_hz=%u\n", mck_hz); | ||
134 | |||
135 | cycle = calc_mck_cycles(t0, mck_hz); | ||
136 | setup = calc_mck_cycles(t1, mck_hz); | ||
137 | pulse = calc_mck_cycles(t2, mck_hz); | ||
138 | data_float = calc_mck_cycles(t6z, mck_hz); | ||
139 | |||
140 | pdbg("cycle=%u setup=%u pulse=%u data_float=%u\n", | ||
141 | cycle, setup, pulse, data_float); | ||
142 | |||
143 | set_smc_timings(chipselect, cycle, setup, pulse, data_float, use_iordy); | ||
144 | } | ||
145 | |||
146 | static void at91_ide_input_data(ide_drive_t *drive, struct request *rq, | ||
147 | void *buf, unsigned int len) | ||
148 | { | ||
149 | ide_hwif_t *hwif = drive->hwif; | ||
150 | struct ide_io_ports *io_ports = &hwif->io_ports; | ||
151 | u8 chipselect = hwif->select_data; | ||
152 | unsigned long mode; | ||
153 | |||
154 | pdbg("cs %u buf %p len %d\n", chipselect, buf, len); | ||
155 | |||
156 | len++; | ||
157 | |||
158 | enter_16bit(chipselect, mode); | ||
159 | __ide_mm_insw((void __iomem *) io_ports->data_addr, buf, len / 2); | ||
160 | leave_16bit(chipselect, mode); | ||
161 | } | ||
162 | |||
163 | static void at91_ide_output_data(ide_drive_t *drive, struct request *rq, | ||
164 | void *buf, unsigned int len) | ||
165 | { | ||
166 | ide_hwif_t *hwif = drive->hwif; | ||
167 | struct ide_io_ports *io_ports = &hwif->io_ports; | ||
168 | u8 chipselect = hwif->select_data; | ||
169 | unsigned long mode; | ||
170 | |||
171 | pdbg("cs %u buf %p len %d\n", chipselect, buf, len); | ||
172 | |||
173 | enter_16bit(chipselect, mode); | ||
174 | __ide_mm_outsw((void __iomem *) io_ports->data_addr, buf, len / 2); | ||
175 | leave_16bit(chipselect, mode); | ||
176 | } | ||
177 | |||
178 | static u8 ide_mm_inb(unsigned long port) | ||
179 | { | ||
180 | return readb((void __iomem *) port); | ||
181 | } | ||
182 | |||
183 | static void ide_mm_outb(u8 value, unsigned long port) | ||
184 | { | ||
185 | writeb(value, (void __iomem *) port); | ||
186 | } | ||
187 | |||
188 | static void at91_ide_tf_load(ide_drive_t *drive, ide_task_t *task) | ||
189 | { | ||
190 | ide_hwif_t *hwif = drive->hwif; | ||
191 | struct ide_io_ports *io_ports = &hwif->io_ports; | ||
192 | struct ide_taskfile *tf = &task->tf; | ||
193 | u8 HIHI = (task->tf_flags & IDE_TFLAG_LBA48) ? 0xE0 : 0xEF; | ||
194 | |||
195 | if (task->tf_flags & IDE_TFLAG_FLAGGED) | ||
196 | HIHI = 0xFF; | ||
197 | |||
198 | if (task->tf_flags & IDE_TFLAG_OUT_DATA) { | ||
199 | u16 data = (tf->hob_data << 8) | tf->data; | ||
200 | |||
201 | at91_ide_output_data(drive, NULL, &data, 2); | ||
202 | } | ||
203 | |||
204 | if (task->tf_flags & IDE_TFLAG_OUT_HOB_FEATURE) | ||
205 | ide_mm_outb(tf->hob_feature, io_ports->feature_addr); | ||
206 | if (task->tf_flags & IDE_TFLAG_OUT_HOB_NSECT) | ||
207 | ide_mm_outb(tf->hob_nsect, io_ports->nsect_addr); | ||
208 | if (task->tf_flags & IDE_TFLAG_OUT_HOB_LBAL) | ||
209 | ide_mm_outb(tf->hob_lbal, io_ports->lbal_addr); | ||
210 | if (task->tf_flags & IDE_TFLAG_OUT_HOB_LBAM) | ||
211 | ide_mm_outb(tf->hob_lbam, io_ports->lbam_addr); | ||
212 | if (task->tf_flags & IDE_TFLAG_OUT_HOB_LBAH) | ||
213 | ide_mm_outb(tf->hob_lbah, io_ports->lbah_addr); | ||
214 | |||
215 | if (task->tf_flags & IDE_TFLAG_OUT_FEATURE) | ||
216 | ide_mm_outb(tf->feature, io_ports->feature_addr); | ||
217 | if (task->tf_flags & IDE_TFLAG_OUT_NSECT) | ||
218 | ide_mm_outb(tf->nsect, io_ports->nsect_addr); | ||
219 | if (task->tf_flags & IDE_TFLAG_OUT_LBAL) | ||
220 | ide_mm_outb(tf->lbal, io_ports->lbal_addr); | ||
221 | if (task->tf_flags & IDE_TFLAG_OUT_LBAM) | ||
222 | ide_mm_outb(tf->lbam, io_ports->lbam_addr); | ||
223 | if (task->tf_flags & IDE_TFLAG_OUT_LBAH) | ||
224 | ide_mm_outb(tf->lbah, io_ports->lbah_addr); | ||
225 | |||
226 | if (task->tf_flags & IDE_TFLAG_OUT_DEVICE) | ||
227 | ide_mm_outb((tf->device & HIHI) | drive->select, io_ports->device_addr); | ||
228 | } | ||
229 | |||
230 | static void at91_ide_tf_read(ide_drive_t *drive, ide_task_t *task) | ||
231 | { | ||
232 | ide_hwif_t *hwif = drive->hwif; | ||
233 | struct ide_io_ports *io_ports = &hwif->io_ports; | ||
234 | struct ide_taskfile *tf = &task->tf; | ||
235 | |||
236 | if (task->tf_flags & IDE_TFLAG_IN_DATA) { | ||
237 | u16 data; | ||
238 | |||
239 | at91_ide_input_data(drive, NULL, &data, 2); | ||
240 | tf->data = data & 0xff; | ||
241 | tf->hob_data = (data >> 8) & 0xff; | ||
242 | } | ||
243 | |||
244 | /* be sure we're looking at the low order bits */ | ||
245 | ide_mm_outb(ATA_DEVCTL_OBS & ~0x80, io_ports->ctl_addr); | ||
246 | |||
247 | if (task->tf_flags & IDE_TFLAG_IN_FEATURE) | ||
248 | tf->feature = ide_mm_inb(io_ports->feature_addr); | ||
249 | if (task->tf_flags & IDE_TFLAG_IN_NSECT) | ||
250 | tf->nsect = ide_mm_inb(io_ports->nsect_addr); | ||
251 | if (task->tf_flags & IDE_TFLAG_IN_LBAL) | ||
252 | tf->lbal = ide_mm_inb(io_ports->lbal_addr); | ||
253 | if (task->tf_flags & IDE_TFLAG_IN_LBAM) | ||
254 | tf->lbam = ide_mm_inb(io_ports->lbam_addr); | ||
255 | if (task->tf_flags & IDE_TFLAG_IN_LBAH) | ||
256 | tf->lbah = ide_mm_inb(io_ports->lbah_addr); | ||
257 | if (task->tf_flags & IDE_TFLAG_IN_DEVICE) | ||
258 | tf->device = ide_mm_inb(io_ports->device_addr); | ||
259 | |||
260 | if (task->tf_flags & IDE_TFLAG_LBA48) { | ||
261 | ide_mm_outb(ATA_DEVCTL_OBS | 0x80, io_ports->ctl_addr); | ||
262 | |||
263 | if (task->tf_flags & IDE_TFLAG_IN_HOB_FEATURE) | ||
264 | tf->hob_feature = ide_mm_inb(io_ports->feature_addr); | ||
265 | if (task->tf_flags & IDE_TFLAG_IN_HOB_NSECT) | ||
266 | tf->hob_nsect = ide_mm_inb(io_ports->nsect_addr); | ||
267 | if (task->tf_flags & IDE_TFLAG_IN_HOB_LBAL) | ||
268 | tf->hob_lbal = ide_mm_inb(io_ports->lbal_addr); | ||
269 | if (task->tf_flags & IDE_TFLAG_IN_HOB_LBAM) | ||
270 | tf->hob_lbam = ide_mm_inb(io_ports->lbam_addr); | ||
271 | if (task->tf_flags & IDE_TFLAG_IN_HOB_LBAH) | ||
272 | tf->hob_lbah = ide_mm_inb(io_ports->lbah_addr); | ||
273 | } | ||
274 | } | ||
275 | |||
276 | static void at91_ide_set_pio_mode(ide_drive_t *drive, const u8 pio) | ||
277 | { | ||
278 | struct ide_timing *timing; | ||
279 | u8 chipselect = drive->hwif->select_data; | ||
280 | int use_iordy = 0; | ||
281 | |||
282 | pdbg("chipselect %u pio %u\n", chipselect, pio); | ||
283 | |||
284 | timing = ide_timing_find_mode(XFER_PIO_0 + pio); | ||
285 | BUG_ON(!timing); | ||
286 | |||
287 | if ((pio > 2 || ata_id_has_iordy(drive->id)) && | ||
288 | !(ata_id_is_cfa(drive->id) && pio > 4)) | ||
289 | use_iordy = 1; | ||
290 | |||
291 | apply_timings(chipselect, pio, timing, use_iordy); | ||
292 | } | ||
293 | |||
294 | static const struct ide_tp_ops at91_ide_tp_ops = { | ||
295 | .exec_command = ide_exec_command, | ||
296 | .read_status = ide_read_status, | ||
297 | .read_altstatus = ide_read_altstatus, | ||
298 | .set_irq = ide_set_irq, | ||
299 | |||
300 | .tf_load = at91_ide_tf_load, | ||
301 | .tf_read = at91_ide_tf_read, | ||
302 | |||
303 | .input_data = at91_ide_input_data, | ||
304 | .output_data = at91_ide_output_data, | ||
305 | }; | ||
306 | |||
307 | static const struct ide_port_ops at91_ide_port_ops = { | ||
308 | .set_pio_mode = at91_ide_set_pio_mode, | ||
309 | }; | ||
310 | |||
311 | static const struct ide_port_info at91_ide_port_info __initdata = { | ||
312 | .port_ops = &at91_ide_port_ops, | ||
313 | .tp_ops = &at91_ide_tp_ops, | ||
314 | .host_flags = IDE_HFLAG_MMIO | IDE_HFLAG_NO_DMA | IDE_HFLAG_SINGLE | | ||
315 | IDE_HFLAG_NO_IO_32BIT | IDE_HFLAG_UNMASK_IRQS, | ||
316 | .pio_mask = ATA_PIO5, | ||
317 | }; | ||
318 | |||
319 | /* | ||
320 | * If interrupt is delivered through GPIO, IRQ are triggered on falling | ||
321 | * and rising edge of signal. Whereas IDE device request interrupt on high | ||
322 | * level (rising edge in our case). This mean we have fake interrupts, so | ||
323 | * we need to check interrupt pin and exit instantly from ISR when line | ||
324 | * is on low level. | ||
325 | */ | ||
326 | |||
327 | irqreturn_t at91_irq_handler(int irq, void *dev_id) | ||
328 | { | ||
329 | int ntries = 8; | ||
330 | int pin_val1, pin_val2; | ||
331 | |||
332 | /* additional deglitch, line can be noisy in badly designed PCB */ | ||
333 | do { | ||
334 | pin_val1 = at91_get_gpio_value(irq); | ||
335 | pin_val2 = at91_get_gpio_value(irq); | ||
336 | } while (pin_val1 != pin_val2 && --ntries > 0); | ||
337 | |||
338 | if (pin_val1 == 0 || ntries <= 0) | ||
339 | return IRQ_HANDLED; | ||
340 | |||
341 | return ide_intr(irq, dev_id); | ||
342 | } | ||
343 | |||
344 | static int __init at91_ide_probe(struct platform_device *pdev) | ||
345 | { | ||
346 | int ret; | ||
347 | hw_regs_t hw; | ||
348 | hw_regs_t *hws[] = { &hw, NULL, NULL, NULL }; | ||
349 | struct ide_host *host; | ||
350 | struct resource *res; | ||
351 | unsigned long tf_base = 0, ctl_base = 0; | ||
352 | struct at91_cf_data *board = pdev->dev.platform_data; | ||
353 | |||
354 | if (!board) | ||
355 | return -ENODEV; | ||
356 | |||
357 | if (board->det_pin && at91_get_gpio_value(board->det_pin) != 0) { | ||
358 | perr("no device detected\n"); | ||
359 | return -ENODEV; | ||
360 | } | ||
361 | |||
362 | res = platform_get_resource(pdev, IORESOURCE_MEM, 0); | ||
363 | if (!res) { | ||
364 | perr("can't get memory resource\n"); | ||
365 | return -ENODEV; | ||
366 | } | ||
367 | |||
368 | if (!devm_request_mem_region(&pdev->dev, res->start + TASK_FILE, | ||
369 | REGS_SIZE, "ide") || | ||
370 | !devm_request_mem_region(&pdev->dev, res->start + ALT_MODE, | ||
371 | REGS_SIZE, "alt")) { | ||
372 | perr("memory resources in use\n"); | ||
373 | return -EBUSY; | ||
374 | } | ||
375 | |||
376 | pdbg("chipselect %u irq %u res %08lx\n", board->chipselect, | ||
377 | board->irq_pin, (unsigned long) res->start); | ||
378 | |||
379 | tf_base = (unsigned long) devm_ioremap(&pdev->dev, res->start + TASK_FILE, | ||
380 | REGS_SIZE); | ||
381 | ctl_base = (unsigned long) devm_ioremap(&pdev->dev, res->start + ALT_MODE, | ||
382 | REGS_SIZE); | ||
383 | if (!tf_base || !ctl_base) { | ||
384 | perr("can't map memory regions\n"); | ||
385 | return -EBUSY; | ||
386 | } | ||
387 | |||
388 | memset(&hw, 0, sizeof(hw)); | ||
389 | |||
390 | if (board->flags & AT91_IDE_SWAP_A0_A2) { | ||
391 | /* workaround for stupid hardware bug */ | ||
392 | hw.io_ports.data_addr = tf_base + 0; | ||
393 | hw.io_ports.error_addr = tf_base + 4; | ||
394 | hw.io_ports.nsect_addr = tf_base + 2; | ||
395 | hw.io_ports.lbal_addr = tf_base + 6; | ||
396 | hw.io_ports.lbam_addr = tf_base + 1; | ||
397 | hw.io_ports.lbah_addr = tf_base + 5; | ||
398 | hw.io_ports.device_addr = tf_base + 3; | ||
399 | hw.io_ports.command_addr = tf_base + 7; | ||
400 | hw.io_ports.ctl_addr = ctl_base + 3; | ||
401 | } else | ||
402 | ide_std_init_ports(&hw, tf_base, ctl_base + 6); | ||
403 | |||
404 | hw.irq = board->irq_pin; | ||
405 | hw.chipset = ide_generic; | ||
406 | hw.dev = &pdev->dev; | ||
407 | |||
408 | host = ide_host_alloc(&at91_ide_port_info, hws); | ||
409 | if (!host) { | ||
410 | perr("failed to allocate ide host\n"); | ||
411 | return -ENOMEM; | ||
412 | } | ||
413 | |||
414 | /* setup Static Memory Controller - PIO 0 as default */ | ||
415 | apply_timings(board->chipselect, 0, ide_timing_find_mode(XFER_PIO_0), 0); | ||
416 | |||
417 | /* with GPIO interrupt we have to do quirks in handler */ | ||
418 | if (board->irq_pin >= PIN_BASE) | ||
419 | host->irq_handler = at91_irq_handler; | ||
420 | |||
421 | host->ports[0]->select_data = board->chipselect; | ||
422 | |||
423 | ret = ide_host_register(host, &at91_ide_port_info, hws); | ||
424 | if (ret) { | ||
425 | perr("failed to register ide host\n"); | ||
426 | goto err_free_host; | ||
427 | } | ||
428 | platform_set_drvdata(pdev, host); | ||
429 | return 0; | ||
430 | |||
431 | err_free_host: | ||
432 | ide_host_free(host); | ||
433 | return ret; | ||
434 | } | ||
435 | |||
436 | static int __exit at91_ide_remove(struct platform_device *pdev) | ||
437 | { | ||
438 | struct ide_host *host = platform_get_drvdata(pdev); | ||
439 | |||
440 | ide_host_remove(host); | ||
441 | return 0; | ||
442 | } | ||
443 | |||
444 | static struct platform_driver at91_ide_driver = { | ||
445 | .driver = { | ||
446 | .name = DRV_NAME, | ||
447 | .owner = THIS_MODULE, | ||
448 | }, | ||
449 | .remove = __exit_p(at91_ide_remove), | ||
450 | }; | ||
451 | |||
452 | static int __init at91_ide_init(void) | ||
453 | { | ||
454 | return platform_driver_probe(&at91_ide_driver, at91_ide_probe); | ||
455 | } | ||
456 | |||
457 | static void __exit at91_ide_exit(void) | ||
458 | { | ||
459 | platform_driver_unregister(&at91_ide_driver); | ||
460 | } | ||
461 | |||
462 | module_init(at91_ide_init); | ||
463 | module_exit(at91_ide_exit); | ||
464 | |||
465 | MODULE_LICENSE("GPL"); | ||
466 | MODULE_AUTHOR("Stanislaw Gruszka <stf_xl@wp.pl>"); | ||
467 | |||
diff --git a/drivers/ide/ide-atapi.c b/drivers/ide/ide-atapi.c index e96c01260598..e9d042dba0e0 100644 --- a/drivers/ide/ide-atapi.c +++ b/drivers/ide/ide-atapi.c | |||
@@ -140,6 +140,12 @@ static void ide_queue_pc_head(ide_drive_t *drive, struct gendisk *disk, | |||
140 | rq->cmd_flags |= REQ_PREEMPT; | 140 | rq->cmd_flags |= REQ_PREEMPT; |
141 | rq->buffer = (char *)pc; | 141 | rq->buffer = (char *)pc; |
142 | rq->rq_disk = disk; | 142 | rq->rq_disk = disk; |
143 | |||
144 | if (pc->req_xfer) { | ||
145 | rq->data = pc->buf; | ||
146 | rq->data_len = pc->req_xfer; | ||
147 | } | ||
148 | |||
143 | memcpy(rq->cmd, pc->c, 12); | 149 | memcpy(rq->cmd, pc->c, 12); |
144 | if (drive->media == ide_tape) | 150 | if (drive->media == ide_tape) |
145 | rq->cmd[13] = REQ_IDETAPE_PC1; | 151 | rq->cmd[13] = REQ_IDETAPE_PC1; |
@@ -159,6 +165,12 @@ int ide_queue_pc_tail(ide_drive_t *drive, struct gendisk *disk, | |||
159 | rq = blk_get_request(drive->queue, READ, __GFP_WAIT); | 165 | rq = blk_get_request(drive->queue, READ, __GFP_WAIT); |
160 | rq->cmd_type = REQ_TYPE_SPECIAL; | 166 | rq->cmd_type = REQ_TYPE_SPECIAL; |
161 | rq->buffer = (char *)pc; | 167 | rq->buffer = (char *)pc; |
168 | |||
169 | if (pc->req_xfer) { | ||
170 | rq->data = pc->buf; | ||
171 | rq->data_len = pc->req_xfer; | ||
172 | } | ||
173 | |||
162 | memcpy(rq->cmd, pc->c, 12); | 174 | memcpy(rq->cmd, pc->c, 12); |
163 | if (drive->media == ide_tape) | 175 | if (drive->media == ide_tape) |
164 | rq->cmd[13] = REQ_IDETAPE_PC1; | 176 | rq->cmd[13] = REQ_IDETAPE_PC1; |
diff --git a/drivers/ide/ide-disk_proc.c b/drivers/ide/ide-disk_proc.c index 1146f4204c6e..1f86dcbd2b1c 100644 --- a/drivers/ide/ide-disk_proc.c +++ b/drivers/ide/ide-disk_proc.c | |||
@@ -125,5 +125,5 @@ const struct ide_proc_devset ide_disk_settings[] = { | |||
125 | IDE_PROC_DEVSET(multcount, 0, 16), | 125 | IDE_PROC_DEVSET(multcount, 0, 16), |
126 | IDE_PROC_DEVSET(nowerr, 0, 1), | 126 | IDE_PROC_DEVSET(nowerr, 0, 1), |
127 | IDE_PROC_DEVSET(wcache, 0, 1), | 127 | IDE_PROC_DEVSET(wcache, 0, 1), |
128 | { 0 }, | 128 | { NULL }, |
129 | }; | 129 | }; |
diff --git a/drivers/ide/ide-dma.c b/drivers/ide/ide-dma.c index 72ebab0bc755..059c90bb5ad2 100644 --- a/drivers/ide/ide-dma.c +++ b/drivers/ide/ide-dma.c | |||
@@ -128,6 +128,7 @@ int ide_build_sglist(ide_drive_t *drive, struct request *rq) | |||
128 | { | 128 | { |
129 | ide_hwif_t *hwif = drive->hwif; | 129 | ide_hwif_t *hwif = drive->hwif; |
130 | struct scatterlist *sg = hwif->sg_table; | 130 | struct scatterlist *sg = hwif->sg_table; |
131 | int i; | ||
131 | 132 | ||
132 | ide_map_sg(drive, rq); | 133 | ide_map_sg(drive, rq); |
133 | 134 | ||
@@ -136,8 +137,13 @@ int ide_build_sglist(ide_drive_t *drive, struct request *rq) | |||
136 | else | 137 | else |
137 | hwif->sg_dma_direction = DMA_TO_DEVICE; | 138 | hwif->sg_dma_direction = DMA_TO_DEVICE; |
138 | 139 | ||
139 | return dma_map_sg(hwif->dev, sg, hwif->sg_nents, | 140 | i = dma_map_sg(hwif->dev, sg, hwif->sg_nents, hwif->sg_dma_direction); |
140 | hwif->sg_dma_direction); | 141 | if (i) { |
142 | hwif->orig_sg_nents = hwif->sg_nents; | ||
143 | hwif->sg_nents = i; | ||
144 | } | ||
145 | |||
146 | return i; | ||
141 | } | 147 | } |
142 | EXPORT_SYMBOL_GPL(ide_build_sglist); | 148 | EXPORT_SYMBOL_GPL(ide_build_sglist); |
143 | 149 | ||
@@ -156,7 +162,7 @@ void ide_destroy_dmatable(ide_drive_t *drive) | |||
156 | { | 162 | { |
157 | ide_hwif_t *hwif = drive->hwif; | 163 | ide_hwif_t *hwif = drive->hwif; |
158 | 164 | ||
159 | dma_unmap_sg(hwif->dev, hwif->sg_table, hwif->sg_nents, | 165 | dma_unmap_sg(hwif->dev, hwif->sg_table, hwif->orig_sg_nents, |
160 | hwif->sg_dma_direction); | 166 | hwif->sg_dma_direction); |
161 | } | 167 | } |
162 | EXPORT_SYMBOL_GPL(ide_destroy_dmatable); | 168 | EXPORT_SYMBOL_GPL(ide_destroy_dmatable); |
diff --git a/drivers/ide/ide-floppy.c b/drivers/ide/ide-floppy.c index 3eab1c6c9b31..317ec62c33d4 100644 --- a/drivers/ide/ide-floppy.c +++ b/drivers/ide/ide-floppy.c | |||
@@ -327,8 +327,10 @@ static ide_startstop_t ide_floppy_do_request(ide_drive_t *drive, | |||
327 | return ide_stopped; | 327 | return ide_stopped; |
328 | } | 328 | } |
329 | 329 | ||
330 | ide_init_sg_cmd(drive, rq); | 330 | if (blk_fs_request(rq) || pc->req_xfer) { |
331 | ide_map_sg(drive, rq); | 331 | ide_init_sg_cmd(drive, rq); |
332 | ide_map_sg(drive, rq); | ||
333 | } | ||
332 | 334 | ||
333 | pc->sg = hwif->sg_table; | 335 | pc->sg = hwif->sg_table; |
334 | pc->sg_cnt = hwif->sg_nents; | 336 | pc->sg_cnt = hwif->sg_nents; |
diff --git a/drivers/ide/ide-floppy_proc.c b/drivers/ide/ide-floppy_proc.c index 3ec762cb60ab..fcd4d8153df5 100644 --- a/drivers/ide/ide-floppy_proc.c +++ b/drivers/ide/ide-floppy_proc.c | |||
@@ -29,5 +29,5 @@ const struct ide_proc_devset ide_floppy_settings[] = { | |||
29 | IDE_PROC_DEVSET(bios_head, 0, 255), | 29 | IDE_PROC_DEVSET(bios_head, 0, 255), |
30 | IDE_PROC_DEVSET(bios_sect, 0, 63), | 30 | IDE_PROC_DEVSET(bios_sect, 0, 63), |
31 | IDE_PROC_DEVSET(ticks, 0, 255), | 31 | IDE_PROC_DEVSET(ticks, 0, 255), |
32 | { 0 }, | 32 | { NULL }, |
33 | }; | 33 | }; |
diff --git a/drivers/ide/ide-io.c b/drivers/ide/ide-io.c index 9ee51adf567f..a9a6c208288a 100644 --- a/drivers/ide/ide-io.c +++ b/drivers/ide/ide-io.c | |||
@@ -908,7 +908,7 @@ void ide_timer_expiry (unsigned long data) | |||
908 | ide_drive_t *uninitialized_var(drive); | 908 | ide_drive_t *uninitialized_var(drive); |
909 | ide_handler_t *handler; | 909 | ide_handler_t *handler; |
910 | unsigned long flags; | 910 | unsigned long flags; |
911 | unsigned long wait = -1; | 911 | int wait = -1; |
912 | int plug_device = 0; | 912 | int plug_device = 0; |
913 | 913 | ||
914 | spin_lock_irqsave(&hwif->lock, flags); | 914 | spin_lock_irqsave(&hwif->lock, flags); |
@@ -1162,6 +1162,7 @@ out_early: | |||
1162 | 1162 | ||
1163 | return irq_ret; | 1163 | return irq_ret; |
1164 | } | 1164 | } |
1165 | EXPORT_SYMBOL_GPL(ide_intr); | ||
1165 | 1166 | ||
1166 | /** | 1167 | /** |
1167 | * ide_do_drive_cmd - issue IDE special command | 1168 | * ide_do_drive_cmd - issue IDE special command |
diff --git a/drivers/ide/ide-iops.c b/drivers/ide/ide-iops.c index 753b92ebe0ae..b1892bd95c6f 100644 --- a/drivers/ide/ide-iops.c +++ b/drivers/ide/ide-iops.c | |||
@@ -315,6 +315,8 @@ void ide_output_data(ide_drive_t *drive, struct request *rq, void *buf, | |||
315 | u8 io_32bit = drive->io_32bit; | 315 | u8 io_32bit = drive->io_32bit; |
316 | u8 mmio = (hwif->host_flags & IDE_HFLAG_MMIO) ? 1 : 0; | 316 | u8 mmio = (hwif->host_flags & IDE_HFLAG_MMIO) ? 1 : 0; |
317 | 317 | ||
318 | len++; | ||
319 | |||
318 | if (io_32bit) { | 320 | if (io_32bit) { |
319 | unsigned long uninitialized_var(flags); | 321 | unsigned long uninitialized_var(flags); |
320 | 322 | ||
diff --git a/drivers/ide/ide-probe.c b/drivers/ide/ide-probe.c index ce0818a993f6..ee8e3e7cad51 100644 --- a/drivers/ide/ide-probe.c +++ b/drivers/ide/ide-probe.c | |||
@@ -950,6 +950,7 @@ static int ide_port_setup_devices(ide_hwif_t *hwif) | |||
950 | static int init_irq (ide_hwif_t *hwif) | 950 | static int init_irq (ide_hwif_t *hwif) |
951 | { | 951 | { |
952 | struct ide_io_ports *io_ports = &hwif->io_ports; | 952 | struct ide_io_ports *io_ports = &hwif->io_ports; |
953 | irq_handler_t irq_handler; | ||
953 | int sa = 0; | 954 | int sa = 0; |
954 | 955 | ||
955 | mutex_lock(&ide_cfg_mtx); | 956 | mutex_lock(&ide_cfg_mtx); |
@@ -959,6 +960,10 @@ static int init_irq (ide_hwif_t *hwif) | |||
959 | hwif->timer.function = &ide_timer_expiry; | 960 | hwif->timer.function = &ide_timer_expiry; |
960 | hwif->timer.data = (unsigned long)hwif; | 961 | hwif->timer.data = (unsigned long)hwif; |
961 | 962 | ||
963 | irq_handler = hwif->host->irq_handler; | ||
964 | if (irq_handler == NULL) | ||
965 | irq_handler = ide_intr; | ||
966 | |||
962 | #if defined(__mc68000__) | 967 | #if defined(__mc68000__) |
963 | sa = IRQF_SHARED; | 968 | sa = IRQF_SHARED; |
964 | #endif /* __mc68000__ */ | 969 | #endif /* __mc68000__ */ |
@@ -969,7 +974,7 @@ static int init_irq (ide_hwif_t *hwif) | |||
969 | if (io_ports->ctl_addr) | 974 | if (io_ports->ctl_addr) |
970 | hwif->tp_ops->set_irq(hwif, 1); | 975 | hwif->tp_ops->set_irq(hwif, 1); |
971 | 976 | ||
972 | if (request_irq(hwif->irq, &ide_intr, sa, hwif->name, hwif)) | 977 | if (request_irq(hwif->irq, irq_handler, sa, hwif->name, hwif)) |
973 | goto out_up; | 978 | goto out_up; |
974 | 979 | ||
975 | if (!hwif->rqsize) { | 980 | if (!hwif->rqsize) { |
diff --git a/drivers/ide/ide-proc.c b/drivers/ide/ide-proc.c index 1d8978b3314a..a7b9287ee0d4 100644 --- a/drivers/ide/ide-proc.c +++ b/drivers/ide/ide-proc.c | |||
@@ -231,7 +231,7 @@ static const struct ide_proc_devset ide_generic_settings[] = { | |||
231 | IDE_PROC_DEVSET(pio_mode, 0, 255), | 231 | IDE_PROC_DEVSET(pio_mode, 0, 255), |
232 | IDE_PROC_DEVSET(unmaskirq, 0, 1), | 232 | IDE_PROC_DEVSET(unmaskirq, 0, 1), |
233 | IDE_PROC_DEVSET(using_dma, 0, 1), | 233 | IDE_PROC_DEVSET(using_dma, 0, 1), |
234 | { 0 }, | 234 | { NULL }, |
235 | }; | 235 | }; |
236 | 236 | ||
237 | static void proc_ide_settings_warn(void) | 237 | static void proc_ide_settings_warn(void) |
diff --git a/drivers/ide/ide-tape.c b/drivers/ide/ide-tape.c index bb450a7608c2..4e6181c7bbda 100644 --- a/drivers/ide/ide-tape.c +++ b/drivers/ide/ide-tape.c | |||
@@ -2166,7 +2166,7 @@ static const struct ide_proc_devset idetape_settings[] = { | |||
2166 | __IDE_PROC_DEVSET(speed, 0, 0xffff, NULL, NULL), | 2166 | __IDE_PROC_DEVSET(speed, 0, 0xffff, NULL, NULL), |
2167 | __IDE_PROC_DEVSET(tdsc, IDETAPE_DSC_RW_MIN, IDETAPE_DSC_RW_MAX, | 2167 | __IDE_PROC_DEVSET(tdsc, IDETAPE_DSC_RW_MIN, IDETAPE_DSC_RW_MAX, |
2168 | mulf_tdsc, divf_tdsc), | 2168 | mulf_tdsc, divf_tdsc), |
2169 | { 0 }, | 2169 | { NULL }, |
2170 | }; | 2170 | }; |
2171 | #endif | 2171 | #endif |
2172 | 2172 | ||
diff --git a/drivers/infiniband/hw/nes/nes_cm.c b/drivers/infiniband/hw/nes/nes_cm.c index a01b4488208b..4a65b96db2c8 100644 --- a/drivers/infiniband/hw/nes/nes_cm.c +++ b/drivers/infiniband/hw/nes/nes_cm.c | |||
@@ -2490,12 +2490,14 @@ static int nes_disconnect(struct nes_qp *nesqp, int abrupt) | |||
2490 | int ret = 0; | 2490 | int ret = 0; |
2491 | struct nes_vnic *nesvnic; | 2491 | struct nes_vnic *nesvnic; |
2492 | struct nes_device *nesdev; | 2492 | struct nes_device *nesdev; |
2493 | struct nes_ib_device *nesibdev; | ||
2493 | 2494 | ||
2494 | nesvnic = to_nesvnic(nesqp->ibqp.device); | 2495 | nesvnic = to_nesvnic(nesqp->ibqp.device); |
2495 | if (!nesvnic) | 2496 | if (!nesvnic) |
2496 | return -EINVAL; | 2497 | return -EINVAL; |
2497 | 2498 | ||
2498 | nesdev = nesvnic->nesdev; | 2499 | nesdev = nesvnic->nesdev; |
2500 | nesibdev = nesvnic->nesibdev; | ||
2499 | 2501 | ||
2500 | nes_debug(NES_DBG_CM, "netdev refcnt = %u.\n", | 2502 | nes_debug(NES_DBG_CM, "netdev refcnt = %u.\n", |
2501 | atomic_read(&nesvnic->netdev->refcnt)); | 2503 | atomic_read(&nesvnic->netdev->refcnt)); |
@@ -2507,6 +2509,8 @@ static int nes_disconnect(struct nes_qp *nesqp, int abrupt) | |||
2507 | } else { | 2509 | } else { |
2508 | /* Need to free the Last Streaming Mode Message */ | 2510 | /* Need to free the Last Streaming Mode Message */ |
2509 | if (nesqp->ietf_frame) { | 2511 | if (nesqp->ietf_frame) { |
2512 | if (nesqp->lsmm_mr) | ||
2513 | nesibdev->ibdev.dereg_mr(nesqp->lsmm_mr); | ||
2510 | pci_free_consistent(nesdev->pcidev, | 2514 | pci_free_consistent(nesdev->pcidev, |
2511 | nesqp->private_data_len+sizeof(struct ietf_mpa_frame), | 2515 | nesqp->private_data_len+sizeof(struct ietf_mpa_frame), |
2512 | nesqp->ietf_frame, nesqp->ietf_frame_pbase); | 2516 | nesqp->ietf_frame, nesqp->ietf_frame_pbase); |
@@ -2543,6 +2547,12 @@ int nes_accept(struct iw_cm_id *cm_id, struct iw_cm_conn_param *conn_param) | |||
2543 | u32 crc_value; | 2547 | u32 crc_value; |
2544 | int ret; | 2548 | int ret; |
2545 | int passive_state; | 2549 | int passive_state; |
2550 | struct nes_ib_device *nesibdev; | ||
2551 | struct ib_mr *ibmr = NULL; | ||
2552 | struct ib_phys_buf ibphysbuf; | ||
2553 | struct nes_pd *nespd; | ||
2554 | |||
2555 | |||
2546 | 2556 | ||
2547 | ibqp = nes_get_qp(cm_id->device, conn_param->qpn); | 2557 | ibqp = nes_get_qp(cm_id->device, conn_param->qpn); |
2548 | if (!ibqp) | 2558 | if (!ibqp) |
@@ -2601,6 +2611,26 @@ int nes_accept(struct iw_cm_id *cm_id, struct iw_cm_conn_param *conn_param) | |||
2601 | if (cm_id->remote_addr.sin_addr.s_addr != | 2611 | if (cm_id->remote_addr.sin_addr.s_addr != |
2602 | cm_id->local_addr.sin_addr.s_addr) { | 2612 | cm_id->local_addr.sin_addr.s_addr) { |
2603 | u64temp = (unsigned long)nesqp; | 2613 | u64temp = (unsigned long)nesqp; |
2614 | nesibdev = nesvnic->nesibdev; | ||
2615 | nespd = nesqp->nespd; | ||
2616 | ibphysbuf.addr = nesqp->ietf_frame_pbase; | ||
2617 | ibphysbuf.size = conn_param->private_data_len + | ||
2618 | sizeof(struct ietf_mpa_frame); | ||
2619 | ibmr = nesibdev->ibdev.reg_phys_mr((struct ib_pd *)nespd, | ||
2620 | &ibphysbuf, 1, | ||
2621 | IB_ACCESS_LOCAL_WRITE, | ||
2622 | (u64 *)&nesqp->ietf_frame); | ||
2623 | if (!ibmr) { | ||
2624 | nes_debug(NES_DBG_CM, "Unable to register memory region" | ||
2625 | "for lSMM for cm_node = %p \n", | ||
2626 | cm_node); | ||
2627 | return -ENOMEM; | ||
2628 | } | ||
2629 | |||
2630 | ibmr->pd = &nespd->ibpd; | ||
2631 | ibmr->device = nespd->ibpd.device; | ||
2632 | nesqp->lsmm_mr = ibmr; | ||
2633 | |||
2604 | u64temp |= NES_SW_CONTEXT_ALIGN>>1; | 2634 | u64temp |= NES_SW_CONTEXT_ALIGN>>1; |
2605 | set_wqe_64bit_value(wqe->wqe_words, | 2635 | set_wqe_64bit_value(wqe->wqe_words, |
2606 | NES_IWARP_SQ_WQE_COMP_CTX_LOW_IDX, | 2636 | NES_IWARP_SQ_WQE_COMP_CTX_LOW_IDX, |
@@ -2611,14 +2641,13 @@ int nes_accept(struct iw_cm_id *cm_id, struct iw_cm_conn_param *conn_param) | |||
2611 | wqe->wqe_words[NES_IWARP_SQ_WQE_TOTAL_PAYLOAD_IDX] = | 2641 | wqe->wqe_words[NES_IWARP_SQ_WQE_TOTAL_PAYLOAD_IDX] = |
2612 | cpu_to_le32(conn_param->private_data_len + | 2642 | cpu_to_le32(conn_param->private_data_len + |
2613 | sizeof(struct ietf_mpa_frame)); | 2643 | sizeof(struct ietf_mpa_frame)); |
2614 | wqe->wqe_words[NES_IWARP_SQ_WQE_FRAG0_LOW_IDX] = | 2644 | set_wqe_64bit_value(wqe->wqe_words, |
2615 | cpu_to_le32((u32)nesqp->ietf_frame_pbase); | 2645 | NES_IWARP_SQ_WQE_FRAG0_LOW_IDX, |
2616 | wqe->wqe_words[NES_IWARP_SQ_WQE_FRAG0_HIGH_IDX] = | 2646 | (u64)nesqp->ietf_frame); |
2617 | cpu_to_le32((u32)((u64)nesqp->ietf_frame_pbase >> 32)); | ||
2618 | wqe->wqe_words[NES_IWARP_SQ_WQE_LENGTH0_IDX] = | 2647 | wqe->wqe_words[NES_IWARP_SQ_WQE_LENGTH0_IDX] = |
2619 | cpu_to_le32(conn_param->private_data_len + | 2648 | cpu_to_le32(conn_param->private_data_len + |
2620 | sizeof(struct ietf_mpa_frame)); | 2649 | sizeof(struct ietf_mpa_frame)); |
2621 | wqe->wqe_words[NES_IWARP_SQ_WQE_STAG0_IDX] = 0; | 2650 | wqe->wqe_words[NES_IWARP_SQ_WQE_STAG0_IDX] = ibmr->lkey; |
2622 | 2651 | ||
2623 | nesqp->nesqp_context->ird_ord_sizes |= | 2652 | nesqp->nesqp_context->ird_ord_sizes |= |
2624 | cpu_to_le32(NES_QPCONTEXT_ORDIRD_LSMM_PRESENT | | 2653 | cpu_to_le32(NES_QPCONTEXT_ORDIRD_LSMM_PRESENT | |
diff --git a/drivers/infiniband/hw/nes/nes_verbs.c b/drivers/infiniband/hw/nes/nes_verbs.c index 4fdb72454f94..d93a6562817c 100644 --- a/drivers/infiniband/hw/nes/nes_verbs.c +++ b/drivers/infiniband/hw/nes/nes_verbs.c | |||
@@ -1360,8 +1360,10 @@ static struct ib_qp *nes_create_qp(struct ib_pd *ibpd, | |||
1360 | NES_QPCONTEXT_MISC_RQ_SIZE_SHIFT); | 1360 | NES_QPCONTEXT_MISC_RQ_SIZE_SHIFT); |
1361 | nesqp->nesqp_context->misc |= cpu_to_le32((u32)nesqp->hwqp.sq_encoded_size << | 1361 | nesqp->nesqp_context->misc |= cpu_to_le32((u32)nesqp->hwqp.sq_encoded_size << |
1362 | NES_QPCONTEXT_MISC_SQ_SIZE_SHIFT); | 1362 | NES_QPCONTEXT_MISC_SQ_SIZE_SHIFT); |
1363 | if (!udata) { | ||
1363 | nesqp->nesqp_context->misc |= cpu_to_le32(NES_QPCONTEXT_MISC_PRIV_EN); | 1364 | nesqp->nesqp_context->misc |= cpu_to_le32(NES_QPCONTEXT_MISC_PRIV_EN); |
1364 | nesqp->nesqp_context->misc |= cpu_to_le32(NES_QPCONTEXT_MISC_FAST_REGISTER_EN); | 1365 | nesqp->nesqp_context->misc |= cpu_to_le32(NES_QPCONTEXT_MISC_FAST_REGISTER_EN); |
1366 | } | ||
1365 | nesqp->nesqp_context->cqs = cpu_to_le32(nesqp->nesscq->hw_cq.cq_number + | 1367 | nesqp->nesqp_context->cqs = cpu_to_le32(nesqp->nesscq->hw_cq.cq_number + |
1366 | ((u32)nesqp->nesrcq->hw_cq.cq_number << 16)); | 1368 | ((u32)nesqp->nesrcq->hw_cq.cq_number << 16)); |
1367 | u64temp = (u64)nesqp->hwqp.sq_pbase; | 1369 | u64temp = (u64)nesqp->hwqp.sq_pbase; |
diff --git a/drivers/infiniband/hw/nes/nes_verbs.h b/drivers/infiniband/hw/nes/nes_verbs.h index 6c6b4da5184f..ae0ca9bc83bd 100644 --- a/drivers/infiniband/hw/nes/nes_verbs.h +++ b/drivers/infiniband/hw/nes/nes_verbs.h | |||
@@ -134,6 +134,7 @@ struct nes_qp { | |||
134 | struct ietf_mpa_frame *ietf_frame; | 134 | struct ietf_mpa_frame *ietf_frame; |
135 | dma_addr_t ietf_frame_pbase; | 135 | dma_addr_t ietf_frame_pbase; |
136 | wait_queue_head_t state_waitq; | 136 | wait_queue_head_t state_waitq; |
137 | struct ib_mr *lsmm_mr; | ||
137 | unsigned long socket; | 138 | unsigned long socket; |
138 | struct nes_hw_qp hwqp; | 139 | struct nes_hw_qp hwqp; |
139 | struct work_struct work; | 140 | struct work_struct work; |
diff --git a/drivers/lguest/lguest_device.c b/drivers/lguest/lguest_device.c index b4d44e571d76..8132533d71f9 100644 --- a/drivers/lguest/lguest_device.c +++ b/drivers/lguest/lguest_device.c | |||
@@ -212,6 +212,9 @@ static void lg_notify(struct virtqueue *vq) | |||
212 | hcall(LHCALL_NOTIFY, lvq->config.pfn << PAGE_SHIFT, 0, 0); | 212 | hcall(LHCALL_NOTIFY, lvq->config.pfn << PAGE_SHIFT, 0, 0); |
213 | } | 213 | } |
214 | 214 | ||
215 | /* An extern declaration inside a C file is bad form. Don't do it. */ | ||
216 | extern void lguest_setup_irq(unsigned int irq); | ||
217 | |||
215 | /* This routine finds the first virtqueue described in the configuration of | 218 | /* This routine finds the first virtqueue described in the configuration of |
216 | * this device and sets it up. | 219 | * this device and sets it up. |
217 | * | 220 | * |
@@ -266,6 +269,9 @@ static struct virtqueue *lg_find_vq(struct virtio_device *vdev, | |||
266 | goto unmap; | 269 | goto unmap; |
267 | } | 270 | } |
268 | 271 | ||
272 | /* Make sure the interrupt is allocated. */ | ||
273 | lguest_setup_irq(lvq->config.irq); | ||
274 | |||
269 | /* Tell the interrupt for this virtqueue to go to the virtio_ring | 275 | /* Tell the interrupt for this virtqueue to go to the virtio_ring |
270 | * interrupt handler. */ | 276 | * interrupt handler. */ |
271 | /* FIXME: We used to have a flag for the Host to tell us we could use | 277 | /* FIXME: We used to have a flag for the Host to tell us we could use |
diff --git a/drivers/md/dm-crypt.c b/drivers/md/dm-crypt.c index 35bda49796fb..bfefd079a955 100644 --- a/drivers/md/dm-crypt.c +++ b/drivers/md/dm-crypt.c | |||
@@ -60,6 +60,7 @@ struct dm_crypt_io { | |||
60 | }; | 60 | }; |
61 | 61 | ||
62 | struct dm_crypt_request { | 62 | struct dm_crypt_request { |
63 | struct convert_context *ctx; | ||
63 | struct scatterlist sg_in; | 64 | struct scatterlist sg_in; |
64 | struct scatterlist sg_out; | 65 | struct scatterlist sg_out; |
65 | }; | 66 | }; |
@@ -335,6 +336,18 @@ static void crypt_convert_init(struct crypt_config *cc, | |||
335 | init_completion(&ctx->restart); | 336 | init_completion(&ctx->restart); |
336 | } | 337 | } |
337 | 338 | ||
339 | static struct dm_crypt_request *dmreq_of_req(struct crypt_config *cc, | ||
340 | struct ablkcipher_request *req) | ||
341 | { | ||
342 | return (struct dm_crypt_request *)((char *)req + cc->dmreq_start); | ||
343 | } | ||
344 | |||
345 | static struct ablkcipher_request *req_of_dmreq(struct crypt_config *cc, | ||
346 | struct dm_crypt_request *dmreq) | ||
347 | { | ||
348 | return (struct ablkcipher_request *)((char *)dmreq - cc->dmreq_start); | ||
349 | } | ||
350 | |||
338 | static int crypt_convert_block(struct crypt_config *cc, | 351 | static int crypt_convert_block(struct crypt_config *cc, |
339 | struct convert_context *ctx, | 352 | struct convert_context *ctx, |
340 | struct ablkcipher_request *req) | 353 | struct ablkcipher_request *req) |
@@ -345,10 +358,11 @@ static int crypt_convert_block(struct crypt_config *cc, | |||
345 | u8 *iv; | 358 | u8 *iv; |
346 | int r = 0; | 359 | int r = 0; |
347 | 360 | ||
348 | dmreq = (struct dm_crypt_request *)((char *)req + cc->dmreq_start); | 361 | dmreq = dmreq_of_req(cc, req); |
349 | iv = (u8 *)ALIGN((unsigned long)(dmreq + 1), | 362 | iv = (u8 *)ALIGN((unsigned long)(dmreq + 1), |
350 | crypto_ablkcipher_alignmask(cc->tfm) + 1); | 363 | crypto_ablkcipher_alignmask(cc->tfm) + 1); |
351 | 364 | ||
365 | dmreq->ctx = ctx; | ||
352 | sg_init_table(&dmreq->sg_in, 1); | 366 | sg_init_table(&dmreq->sg_in, 1); |
353 | sg_set_page(&dmreq->sg_in, bv_in->bv_page, 1 << SECTOR_SHIFT, | 367 | sg_set_page(&dmreq->sg_in, bv_in->bv_page, 1 << SECTOR_SHIFT, |
354 | bv_in->bv_offset + ctx->offset_in); | 368 | bv_in->bv_offset + ctx->offset_in); |
@@ -395,8 +409,9 @@ static void crypt_alloc_req(struct crypt_config *cc, | |||
395 | cc->req = mempool_alloc(cc->req_pool, GFP_NOIO); | 409 | cc->req = mempool_alloc(cc->req_pool, GFP_NOIO); |
396 | ablkcipher_request_set_tfm(cc->req, cc->tfm); | 410 | ablkcipher_request_set_tfm(cc->req, cc->tfm); |
397 | ablkcipher_request_set_callback(cc->req, CRYPTO_TFM_REQ_MAY_BACKLOG | | 411 | ablkcipher_request_set_callback(cc->req, CRYPTO_TFM_REQ_MAY_BACKLOG | |
398 | CRYPTO_TFM_REQ_MAY_SLEEP, | 412 | CRYPTO_TFM_REQ_MAY_SLEEP, |
399 | kcryptd_async_done, ctx); | 413 | kcryptd_async_done, |
414 | dmreq_of_req(cc, cc->req)); | ||
400 | } | 415 | } |
401 | 416 | ||
402 | /* | 417 | /* |
@@ -553,19 +568,22 @@ static void crypt_inc_pending(struct dm_crypt_io *io) | |||
553 | static void crypt_dec_pending(struct dm_crypt_io *io) | 568 | static void crypt_dec_pending(struct dm_crypt_io *io) |
554 | { | 569 | { |
555 | struct crypt_config *cc = io->target->private; | 570 | struct crypt_config *cc = io->target->private; |
571 | struct bio *base_bio = io->base_bio; | ||
572 | struct dm_crypt_io *base_io = io->base_io; | ||
573 | int error = io->error; | ||
556 | 574 | ||
557 | if (!atomic_dec_and_test(&io->pending)) | 575 | if (!atomic_dec_and_test(&io->pending)) |
558 | return; | 576 | return; |
559 | 577 | ||
560 | if (likely(!io->base_io)) | 578 | mempool_free(io, cc->io_pool); |
561 | bio_endio(io->base_bio, io->error); | 579 | |
580 | if (likely(!base_io)) | ||
581 | bio_endio(base_bio, error); | ||
562 | else { | 582 | else { |
563 | if (io->error && !io->base_io->error) | 583 | if (error && !base_io->error) |
564 | io->base_io->error = io->error; | 584 | base_io->error = error; |
565 | crypt_dec_pending(io->base_io); | 585 | crypt_dec_pending(base_io); |
566 | } | 586 | } |
567 | |||
568 | mempool_free(io, cc->io_pool); | ||
569 | } | 587 | } |
570 | 588 | ||
571 | /* | 589 | /* |
@@ -821,7 +839,8 @@ static void kcryptd_crypt_read_convert(struct dm_crypt_io *io) | |||
821 | static void kcryptd_async_done(struct crypto_async_request *async_req, | 839 | static void kcryptd_async_done(struct crypto_async_request *async_req, |
822 | int error) | 840 | int error) |
823 | { | 841 | { |
824 | struct convert_context *ctx = async_req->data; | 842 | struct dm_crypt_request *dmreq = async_req->data; |
843 | struct convert_context *ctx = dmreq->ctx; | ||
825 | struct dm_crypt_io *io = container_of(ctx, struct dm_crypt_io, ctx); | 844 | struct dm_crypt_io *io = container_of(ctx, struct dm_crypt_io, ctx); |
826 | struct crypt_config *cc = io->target->private; | 845 | struct crypt_config *cc = io->target->private; |
827 | 846 | ||
@@ -830,7 +849,7 @@ static void kcryptd_async_done(struct crypto_async_request *async_req, | |||
830 | return; | 849 | return; |
831 | } | 850 | } |
832 | 851 | ||
833 | mempool_free(ablkcipher_request_cast(async_req), cc->req_pool); | 852 | mempool_free(req_of_dmreq(cc, dmreq), cc->req_pool); |
834 | 853 | ||
835 | if (!atomic_dec_and_test(&ctx->pending)) | 854 | if (!atomic_dec_and_test(&ctx->pending)) |
836 | return; | 855 | return; |
diff --git a/drivers/md/dm-io.c b/drivers/md/dm-io.c index f14813be4eff..36e2b5e46a6b 100644 --- a/drivers/md/dm-io.c +++ b/drivers/md/dm-io.c | |||
@@ -292,6 +292,8 @@ static void do_region(int rw, unsigned region, struct dm_io_region *where, | |||
292 | (PAGE_SIZE >> SECTOR_SHIFT)); | 292 | (PAGE_SIZE >> SECTOR_SHIFT)); |
293 | num_bvecs = 1 + min_t(int, bio_get_nr_vecs(where->bdev), | 293 | num_bvecs = 1 + min_t(int, bio_get_nr_vecs(where->bdev), |
294 | num_bvecs); | 294 | num_bvecs); |
295 | if (unlikely(num_bvecs > BIO_MAX_PAGES)) | ||
296 | num_bvecs = BIO_MAX_PAGES; | ||
295 | bio = bio_alloc_bioset(GFP_NOIO, num_bvecs, io->client->bios); | 297 | bio = bio_alloc_bioset(GFP_NOIO, num_bvecs, io->client->bios); |
296 | bio->bi_sector = where->sector + (where->count - remaining); | 298 | bio->bi_sector = where->sector + (where->count - remaining); |
297 | bio->bi_bdev = where->bdev; | 299 | bio->bi_bdev = where->bdev; |
diff --git a/drivers/md/dm-ioctl.c b/drivers/md/dm-ioctl.c index 54d0588fc1f6..f01096549a93 100644 --- a/drivers/md/dm-ioctl.c +++ b/drivers/md/dm-ioctl.c | |||
@@ -704,7 +704,8 @@ static int dev_rename(struct dm_ioctl *param, size_t param_size) | |||
704 | char *new_name = (char *) param + param->data_start; | 704 | char *new_name = (char *) param + param->data_start; |
705 | 705 | ||
706 | if (new_name < param->data || | 706 | if (new_name < param->data || |
707 | invalid_str(new_name, (void *) param + param_size)) { | 707 | invalid_str(new_name, (void *) param + param_size) || |
708 | strlen(new_name) > DM_NAME_LEN - 1) { | ||
708 | DMWARN("Invalid new logical volume name supplied."); | 709 | DMWARN("Invalid new logical volume name supplied."); |
709 | return -EINVAL; | 710 | return -EINVAL; |
710 | } | 711 | } |
@@ -1063,7 +1064,7 @@ static int table_load(struct dm_ioctl *param, size_t param_size) | |||
1063 | 1064 | ||
1064 | r = populate_table(t, param, param_size); | 1065 | r = populate_table(t, param, param_size); |
1065 | if (r) { | 1066 | if (r) { |
1066 | dm_table_put(t); | 1067 | dm_table_destroy(t); |
1067 | goto out; | 1068 | goto out; |
1068 | } | 1069 | } |
1069 | 1070 | ||
@@ -1071,7 +1072,7 @@ static int table_load(struct dm_ioctl *param, size_t param_size) | |||
1071 | hc = dm_get_mdptr(md); | 1072 | hc = dm_get_mdptr(md); |
1072 | if (!hc || hc->md != md) { | 1073 | if (!hc || hc->md != md) { |
1073 | DMWARN("device has been removed from the dev hash table."); | 1074 | DMWARN("device has been removed from the dev hash table."); |
1074 | dm_table_put(t); | 1075 | dm_table_destroy(t); |
1075 | up_write(&_hash_lock); | 1076 | up_write(&_hash_lock); |
1076 | r = -ENXIO; | 1077 | r = -ENXIO; |
1077 | goto out; | 1078 | goto out; |
diff --git a/drivers/md/dm.c b/drivers/md/dm.c index 51ba1db4b3e7..8d40f27cce89 100644 --- a/drivers/md/dm.c +++ b/drivers/md/dm.c | |||
@@ -525,9 +525,12 @@ static int __noflush_suspending(struct mapped_device *md) | |||
525 | static void dec_pending(struct dm_io *io, int error) | 525 | static void dec_pending(struct dm_io *io, int error) |
526 | { | 526 | { |
527 | unsigned long flags; | 527 | unsigned long flags; |
528 | int io_error; | ||
529 | struct bio *bio; | ||
530 | struct mapped_device *md = io->md; | ||
528 | 531 | ||
529 | /* Push-back supersedes any I/O errors */ | 532 | /* Push-back supersedes any I/O errors */ |
530 | if (error && !(io->error > 0 && __noflush_suspending(io->md))) | 533 | if (error && !(io->error > 0 && __noflush_suspending(md))) |
531 | io->error = error; | 534 | io->error = error; |
532 | 535 | ||
533 | if (atomic_dec_and_test(&io->io_count)) { | 536 | if (atomic_dec_and_test(&io->io_count)) { |
@@ -537,24 +540,27 @@ static void dec_pending(struct dm_io *io, int error) | |||
537 | * This must be handled before the sleeper on | 540 | * This must be handled before the sleeper on |
538 | * suspend queue merges the pushback list. | 541 | * suspend queue merges the pushback list. |
539 | */ | 542 | */ |
540 | spin_lock_irqsave(&io->md->pushback_lock, flags); | 543 | spin_lock_irqsave(&md->pushback_lock, flags); |
541 | if (__noflush_suspending(io->md)) | 544 | if (__noflush_suspending(md)) |
542 | bio_list_add(&io->md->pushback, io->bio); | 545 | bio_list_add(&md->pushback, io->bio); |
543 | else | 546 | else |
544 | /* noflush suspend was interrupted. */ | 547 | /* noflush suspend was interrupted. */ |
545 | io->error = -EIO; | 548 | io->error = -EIO; |
546 | spin_unlock_irqrestore(&io->md->pushback_lock, flags); | 549 | spin_unlock_irqrestore(&md->pushback_lock, flags); |
547 | } | 550 | } |
548 | 551 | ||
549 | end_io_acct(io); | 552 | end_io_acct(io); |
550 | 553 | ||
551 | if (io->error != DM_ENDIO_REQUEUE) { | 554 | io_error = io->error; |
552 | trace_block_bio_complete(io->md->queue, io->bio); | 555 | bio = io->bio; |
553 | 556 | ||
554 | bio_endio(io->bio, io->error); | 557 | free_io(md, io); |
555 | } | 558 | |
559 | if (io_error != DM_ENDIO_REQUEUE) { | ||
560 | trace_block_bio_complete(md->queue, bio); | ||
556 | 561 | ||
557 | free_io(io->md, io); | 562 | bio_endio(bio, io_error); |
563 | } | ||
558 | } | 564 | } |
559 | } | 565 | } |
560 | 566 | ||
@@ -562,6 +568,7 @@ static void clone_endio(struct bio *bio, int error) | |||
562 | { | 568 | { |
563 | int r = 0; | 569 | int r = 0; |
564 | struct dm_target_io *tio = bio->bi_private; | 570 | struct dm_target_io *tio = bio->bi_private; |
571 | struct dm_io *io = tio->io; | ||
565 | struct mapped_device *md = tio->io->md; | 572 | struct mapped_device *md = tio->io->md; |
566 | dm_endio_fn endio = tio->ti->type->end_io; | 573 | dm_endio_fn endio = tio->ti->type->end_io; |
567 | 574 | ||
@@ -585,15 +592,14 @@ static void clone_endio(struct bio *bio, int error) | |||
585 | } | 592 | } |
586 | } | 593 | } |
587 | 594 | ||
588 | dec_pending(tio->io, error); | ||
589 | |||
590 | /* | 595 | /* |
591 | * Store md for cleanup instead of tio which is about to get freed. | 596 | * Store md for cleanup instead of tio which is about to get freed. |
592 | */ | 597 | */ |
593 | bio->bi_private = md->bs; | 598 | bio->bi_private = md->bs; |
594 | 599 | ||
595 | bio_put(bio); | ||
596 | free_tio(md, tio); | 600 | free_tio(md, tio); |
601 | bio_put(bio); | ||
602 | dec_pending(io, error); | ||
597 | } | 603 | } |
598 | 604 | ||
599 | static sector_t max_io_len(struct mapped_device *md, | 605 | static sector_t max_io_len(struct mapped_device *md, |
diff --git a/drivers/md/md.c b/drivers/md/md.c index 03b4cd0a6344..a307f87eb90e 100644 --- a/drivers/md/md.c +++ b/drivers/md/md.c | |||
@@ -214,12 +214,7 @@ static inline mddev_t *mddev_get(mddev_t *mddev) | |||
214 | return mddev; | 214 | return mddev; |
215 | } | 215 | } |
216 | 216 | ||
217 | static void mddev_delayed_delete(struct work_struct *ws) | 217 | static void mddev_delayed_delete(struct work_struct *ws); |
218 | { | ||
219 | mddev_t *mddev = container_of(ws, mddev_t, del_work); | ||
220 | kobject_del(&mddev->kobj); | ||
221 | kobject_put(&mddev->kobj); | ||
222 | } | ||
223 | 218 | ||
224 | static void mddev_put(mddev_t *mddev) | 219 | static void mddev_put(mddev_t *mddev) |
225 | { | 220 | { |
@@ -3542,6 +3537,21 @@ static struct kobj_type md_ktype = { | |||
3542 | 3537 | ||
3543 | int mdp_major = 0; | 3538 | int mdp_major = 0; |
3544 | 3539 | ||
3540 | static void mddev_delayed_delete(struct work_struct *ws) | ||
3541 | { | ||
3542 | mddev_t *mddev = container_of(ws, mddev_t, del_work); | ||
3543 | |||
3544 | if (mddev->private == &md_redundancy_group) { | ||
3545 | sysfs_remove_group(&mddev->kobj, &md_redundancy_group); | ||
3546 | if (mddev->sysfs_action) | ||
3547 | sysfs_put(mddev->sysfs_action); | ||
3548 | mddev->sysfs_action = NULL; | ||
3549 | mddev->private = NULL; | ||
3550 | } | ||
3551 | kobject_del(&mddev->kobj); | ||
3552 | kobject_put(&mddev->kobj); | ||
3553 | } | ||
3554 | |||
3545 | static int md_alloc(dev_t dev, char *name) | 3555 | static int md_alloc(dev_t dev, char *name) |
3546 | { | 3556 | { |
3547 | static DEFINE_MUTEX(disks_mutex); | 3557 | static DEFINE_MUTEX(disks_mutex); |
@@ -4033,13 +4043,9 @@ static int do_md_stop(mddev_t * mddev, int mode, int is_open) | |||
4033 | mddev->queue->merge_bvec_fn = NULL; | 4043 | mddev->queue->merge_bvec_fn = NULL; |
4034 | mddev->queue->unplug_fn = NULL; | 4044 | mddev->queue->unplug_fn = NULL; |
4035 | mddev->queue->backing_dev_info.congested_fn = NULL; | 4045 | mddev->queue->backing_dev_info.congested_fn = NULL; |
4036 | if (mddev->pers->sync_request) { | ||
4037 | sysfs_remove_group(&mddev->kobj, &md_redundancy_group); | ||
4038 | if (mddev->sysfs_action) | ||
4039 | sysfs_put(mddev->sysfs_action); | ||
4040 | mddev->sysfs_action = NULL; | ||
4041 | } | ||
4042 | module_put(mddev->pers->owner); | 4046 | module_put(mddev->pers->owner); |
4047 | if (mddev->pers->sync_request) | ||
4048 | mddev->private = &md_redundancy_group; | ||
4043 | mddev->pers = NULL; | 4049 | mddev->pers = NULL; |
4044 | /* tell userspace to handle 'inactive' */ | 4050 | /* tell userspace to handle 'inactive' */ |
4045 | sysfs_notify_dirent(mddev->sysfs_state); | 4051 | sysfs_notify_dirent(mddev->sysfs_state); |
diff --git a/drivers/media/dvb/bt8xx/dst.c b/drivers/media/dvb/bt8xx/dst.c index 29e8f1546ab6..fec1d77fa855 100644 --- a/drivers/media/dvb/bt8xx/dst.c +++ b/drivers/media/dvb/bt8xx/dst.c | |||
@@ -1683,7 +1683,7 @@ static int dst_tune_frontend(struct dvb_frontend* fe, | |||
1683 | 1683 | ||
1684 | static int dst_get_tuning_algo(struct dvb_frontend *fe) | 1684 | static int dst_get_tuning_algo(struct dvb_frontend *fe) |
1685 | { | 1685 | { |
1686 | return dst_algo; | 1686 | return dst_algo ? DVBFE_ALGO_HW : DVBFE_ALGO_SW; |
1687 | } | 1687 | } |
1688 | 1688 | ||
1689 | static int dst_get_frontend(struct dvb_frontend *fe, struct dvb_frontend_parameters *p) | 1689 | static int dst_get_frontend(struct dvb_frontend *fe, struct dvb_frontend_parameters *p) |
diff --git a/drivers/media/dvb/dvb-core/dvb_frontend.c b/drivers/media/dvb/dvb-core/dvb_frontend.c index 843407785083..8dcb3fbf7acd 100644 --- a/drivers/media/dvb/dvb-core/dvb_frontend.c +++ b/drivers/media/dvb/dvb-core/dvb_frontend.c | |||
@@ -1290,9 +1290,6 @@ static int dtv_property_process_set(struct dvb_frontend *fe, | |||
1290 | dprintk("%s() Finalised property cache\n", __func__); | 1290 | dprintk("%s() Finalised property cache\n", __func__); |
1291 | dtv_property_cache_submit(fe); | 1291 | dtv_property_cache_submit(fe); |
1292 | 1292 | ||
1293 | /* Request the search algorithm to search */ | ||
1294 | fepriv->algo_status |= DVBFE_ALGO_SEARCH_AGAIN; | ||
1295 | |||
1296 | r |= dvb_frontend_ioctl_legacy(inode, file, FE_SET_FRONTEND, | 1293 | r |= dvb_frontend_ioctl_legacy(inode, file, FE_SET_FRONTEND, |
1297 | &fepriv->parameters); | 1294 | &fepriv->parameters); |
1298 | break; | 1295 | break; |
@@ -1717,6 +1714,10 @@ static int dvb_frontend_ioctl_legacy(struct inode *inode, struct file *file, | |||
1717 | fepriv->min_delay = (dvb_override_tune_delay * HZ) / 1000; | 1714 | fepriv->min_delay = (dvb_override_tune_delay * HZ) / 1000; |
1718 | 1715 | ||
1719 | fepriv->state = FESTATE_RETUNE; | 1716 | fepriv->state = FESTATE_RETUNE; |
1717 | |||
1718 | /* Request the search algorithm to search */ | ||
1719 | fepriv->algo_status |= DVBFE_ALGO_SEARCH_AGAIN; | ||
1720 | |||
1720 | dvb_frontend_wakeup(fe); | 1721 | dvb_frontend_wakeup(fe); |
1721 | dvb_frontend_add_event(fe, 0); | 1722 | dvb_frontend_add_event(fe, 0); |
1722 | fepriv->status = 0; | 1723 | fepriv->status = 0; |
diff --git a/drivers/media/dvb/frontends/stb0899_algo.c b/drivers/media/dvb/frontends/stb0899_algo.c index a67d1775a43c..2da55ec20392 100644 --- a/drivers/media/dvb/frontends/stb0899_algo.c +++ b/drivers/media/dvb/frontends/stb0899_algo.c | |||
@@ -156,7 +156,7 @@ static void stb0899_first_subrange(struct stb0899_state *state) | |||
156 | } | 156 | } |
157 | 157 | ||
158 | if (range > 0) | 158 | if (range > 0) |
159 | internal->sub_range = MIN(internal->srch_range, range); | 159 | internal->sub_range = min(internal->srch_range, range); |
160 | else | 160 | else |
161 | internal->sub_range = 0; | 161 | internal->sub_range = 0; |
162 | 162 | ||
@@ -185,7 +185,7 @@ static enum stb0899_status stb0899_check_tmg(struct stb0899_state *state) | |||
185 | timing = stb0899_read_reg(state, STB0899_RTF); | 185 | timing = stb0899_read_reg(state, STB0899_RTF); |
186 | 186 | ||
187 | if (lock >= 42) { | 187 | if (lock >= 42) { |
188 | if ((lock > 48) && (ABS(timing) >= 110)) { | 188 | if ((lock > 48) && (abs(timing) >= 110)) { |
189 | internal->status = ANALOGCARRIER; | 189 | internal->status = ANALOGCARRIER; |
190 | dprintk(state->verbose, FE_DEBUG, 1, "-->ANALOG Carrier !"); | 190 | dprintk(state->verbose, FE_DEBUG, 1, "-->ANALOG Carrier !"); |
191 | } else { | 191 | } else { |
@@ -222,7 +222,7 @@ static enum stb0899_status stb0899_search_tmg(struct stb0899_state *state) | |||
222 | index++; | 222 | index++; |
223 | derot_freq += index * internal->direction * derot_step; /* next derot zig zag position */ | 223 | derot_freq += index * internal->direction * derot_step; /* next derot zig zag position */ |
224 | 224 | ||
225 | if (ABS(derot_freq) > derot_limit) | 225 | if (abs(derot_freq) > derot_limit) |
226 | next_loop--; | 226 | next_loop--; |
227 | 227 | ||
228 | if (next_loop) { | 228 | if (next_loop) { |
@@ -298,7 +298,7 @@ static enum stb0899_status stb0899_search_carrier(struct stb0899_state *state) | |||
298 | last_derot_freq = derot_freq; | 298 | last_derot_freq = derot_freq; |
299 | derot_freq += index * internal->direction * internal->derot_step; /* next zig zag derotator position */ | 299 | derot_freq += index * internal->direction * internal->derot_step; /* next zig zag derotator position */ |
300 | 300 | ||
301 | if(ABS(derot_freq) > derot_limit) | 301 | if(abs(derot_freq) > derot_limit) |
302 | next_loop--; | 302 | next_loop--; |
303 | 303 | ||
304 | if (next_loop) { | 304 | if (next_loop) { |
@@ -400,7 +400,7 @@ static enum stb0899_status stb0899_search_data(struct stb0899_state *state) | |||
400 | if ((internal->status != CARRIEROK) || (stb0899_check_data(state) != DATAOK)) { | 400 | if ((internal->status != CARRIEROK) || (stb0899_check_data(state) != DATAOK)) { |
401 | 401 | ||
402 | derot_freq += index * internal->direction * derot_step; /* next zig zag derotator position */ | 402 | derot_freq += index * internal->direction * derot_step; /* next zig zag derotator position */ |
403 | if (ABS(derot_freq) > derot_limit) | 403 | if (abs(derot_freq) > derot_limit) |
404 | next_loop--; | 404 | next_loop--; |
405 | 405 | ||
406 | if (next_loop) { | 406 | if (next_loop) { |
@@ -467,7 +467,7 @@ static void next_sub_range(struct stb0899_state *state) | |||
467 | 467 | ||
468 | if (internal->sub_dir > 0) { | 468 | if (internal->sub_dir > 0) { |
469 | old_sub_range = internal->sub_range; | 469 | old_sub_range = internal->sub_range; |
470 | internal->sub_range = MIN((internal->srch_range / 2) - | 470 | internal->sub_range = min((internal->srch_range / 2) - |
471 | (internal->tuner_offst + internal->sub_range / 2), | 471 | (internal->tuner_offst + internal->sub_range / 2), |
472 | internal->sub_range); | 472 | internal->sub_range); |
473 | 473 | ||
@@ -771,7 +771,7 @@ static long Log2Int(int number) | |||
771 | int i; | 771 | int i; |
772 | 772 | ||
773 | i = 0; | 773 | i = 0; |
774 | while ((1 << i) <= ABS(number)) | 774 | while ((1 << i) <= abs(number)) |
775 | i++; | 775 | i++; |
776 | 776 | ||
777 | if (number == 0) | 777 | if (number == 0) |
diff --git a/drivers/media/dvb/frontends/stb0899_drv.c b/drivers/media/dvb/frontends/stb0899_drv.c index 10613acf18f5..a04c782fff8d 100644 --- a/drivers/media/dvb/frontends/stb0899_drv.c +++ b/drivers/media/dvb/frontends/stb0899_drv.c | |||
@@ -794,7 +794,7 @@ static int stb0899_send_diseqc_burst(struct dvb_frontend *fe, fe_sec_mini_cmd_t | |||
794 | reg = stb0899_read_reg(state, STB0899_DISCNTRL1); | 794 | reg = stb0899_read_reg(state, STB0899_DISCNTRL1); |
795 | old_state = reg; | 795 | old_state = reg; |
796 | /* set to burst mode */ | 796 | /* set to burst mode */ |
797 | STB0899_SETFIELD_VAL(DISEQCMODE, reg, 0x02); | 797 | STB0899_SETFIELD_VAL(DISEQCMODE, reg, 0x03); |
798 | STB0899_SETFIELD_VAL(DISPRECHARGE, reg, 0x01); | 798 | STB0899_SETFIELD_VAL(DISPRECHARGE, reg, 0x01); |
799 | stb0899_write_reg(state, STB0899_DISCNTRL1, reg); | 799 | stb0899_write_reg(state, STB0899_DISCNTRL1, reg); |
800 | switch (burst) { | 800 | switch (burst) { |
diff --git a/drivers/media/dvb/frontends/stb0899_priv.h b/drivers/media/dvb/frontends/stb0899_priv.h index 24619e3689db..82395b912815 100644 --- a/drivers/media/dvb/frontends/stb0899_priv.h +++ b/drivers/media/dvb/frontends/stb0899_priv.h | |||
@@ -59,10 +59,6 @@ | |||
59 | #define MAKEWORD32(a, b, c, d) (((a) << 24) | ((b) << 16) | ((c) << 8) | (d)) | 59 | #define MAKEWORD32(a, b, c, d) (((a) << 24) | ((b) << 16) | ((c) << 8) | (d)) |
60 | #define MAKEWORD16(a, b) (((a) << 8) | (b)) | 60 | #define MAKEWORD16(a, b) (((a) << 8) | (b)) |
61 | 61 | ||
62 | #define MIN(x, y) ((x) <= (y) ? (x) : (y)) | ||
63 | #define MAX(x, y) ((x) >= (y) ? (x) : (y)) | ||
64 | #define ABS(x) ((x) >= 0 ? (x) : -(x)) | ||
65 | |||
66 | #define LSB(x) ((x & 0xff)) | 62 | #define LSB(x) ((x & 0xff)) |
67 | #define MSB(y) ((y >> 8) & 0xff) | 63 | #define MSB(y) ((y >> 8) & 0xff) |
68 | 64 | ||
@@ -168,10 +164,10 @@ struct stb0899_internal { | |||
168 | u32 freq; /* Demod internal Frequency */ | 164 | u32 freq; /* Demod internal Frequency */ |
169 | u32 srate; /* Demod internal Symbol rate */ | 165 | u32 srate; /* Demod internal Symbol rate */ |
170 | enum stb0899_fec fecrate; /* Demod internal FEC rate */ | 166 | enum stb0899_fec fecrate; /* Demod internal FEC rate */ |
171 | u32 srch_range; /* Demod internal Search Range */ | 167 | s32 srch_range; /* Demod internal Search Range */ |
172 | u32 sub_range; /* Demod current sub range (Hz) */ | 168 | s32 sub_range; /* Demod current sub range (Hz) */ |
173 | u32 tuner_step; /* Tuner step (Hz) */ | 169 | s32 tuner_step; /* Tuner step (Hz) */ |
174 | u32 tuner_offst; /* Relative offset to carrier (Hz) */ | 170 | s32 tuner_offst; /* Relative offset to carrier (Hz) */ |
175 | u32 tuner_bw; /* Current bandwidth of the tuner (Hz) */ | 171 | u32 tuner_bw; /* Current bandwidth of the tuner (Hz) */ |
176 | 172 | ||
177 | s32 mclk; /* Masterclock Divider factor (binary) */ | 173 | s32 mclk; /* Masterclock Divider factor (binary) */ |
diff --git a/drivers/media/dvb/frontends/stb6100.c b/drivers/media/dvb/frontends/stb6100.c index ff39275ab49c..1ed5a7db4c5e 100644 --- a/drivers/media/dvb/frontends/stb6100.c +++ b/drivers/media/dvb/frontends/stb6100.c | |||
@@ -427,11 +427,11 @@ static int stb6100_init(struct dvb_frontend *fe) | |||
427 | status->refclock = 27000000; /* Hz */ | 427 | status->refclock = 27000000; /* Hz */ |
428 | status->iqsense = 1; | 428 | status->iqsense = 1; |
429 | status->bandwidth = 36000; /* kHz */ | 429 | status->bandwidth = 36000; /* kHz */ |
430 | state->bandwidth = status->bandwidth * 1000; /* MHz */ | 430 | state->bandwidth = status->bandwidth * 1000; /* Hz */ |
431 | state->reference = status->refclock / 1000; /* kHz */ | 431 | state->reference = status->refclock / 1000; /* kHz */ |
432 | 432 | ||
433 | /* Set default bandwidth. */ | 433 | /* Set default bandwidth. */ |
434 | return stb6100_set_bandwidth(fe, status->bandwidth); | 434 | return stb6100_set_bandwidth(fe, state->bandwidth); |
435 | } | 435 | } |
436 | 436 | ||
437 | static int stb6100_get_state(struct dvb_frontend *fe, | 437 | static int stb6100_get_state(struct dvb_frontend *fe, |
diff --git a/drivers/media/dvb/frontends/zl10353.c b/drivers/media/dvb/frontends/zl10353.c index 170720b02815..b150ed306696 100644 --- a/drivers/media/dvb/frontends/zl10353.c +++ b/drivers/media/dvb/frontends/zl10353.c | |||
@@ -590,7 +590,7 @@ static int zl10353_i2c_gate_ctrl(struct dvb_frontend* fe, int enable) | |||
590 | struct zl10353_state *state = fe->demodulator_priv; | 590 | struct zl10353_state *state = fe->demodulator_priv; |
591 | u8 val = 0x0a; | 591 | u8 val = 0x0a; |
592 | 592 | ||
593 | if (state->config.no_tuner) { | 593 | if (state->config.disable_i2c_gate_ctrl) { |
594 | /* No tuner attached to the internal I2C bus */ | 594 | /* No tuner attached to the internal I2C bus */ |
595 | /* If set enable I2C bridge, the main I2C bus stopped hardly */ | 595 | /* If set enable I2C bridge, the main I2C bus stopped hardly */ |
596 | return 0; | 596 | return 0; |
diff --git a/drivers/media/dvb/frontends/zl10353.h b/drivers/media/dvb/frontends/zl10353.h index fdbb88ff75fe..2287bac46243 100644 --- a/drivers/media/dvb/frontends/zl10353.h +++ b/drivers/media/dvb/frontends/zl10353.h | |||
@@ -38,6 +38,9 @@ struct zl10353_config | |||
38 | 38 | ||
39 | /* set if parallel ts output is required */ | 39 | /* set if parallel ts output is required */ |
40 | int parallel_ts; | 40 | int parallel_ts; |
41 | |||
42 | /* set if i2c_gate_ctrl disable is required */ | ||
43 | u8 disable_i2c_gate_ctrl:1; | ||
41 | }; | 44 | }; |
42 | 45 | ||
43 | #if defined(CONFIG_DVB_ZL10353) || (defined(CONFIG_DVB_ZL10353_MODULE) && defined(MODULE)) | 46 | #if defined(CONFIG_DVB_ZL10353) || (defined(CONFIG_DVB_ZL10353_MODULE) && defined(MODULE)) |
diff --git a/drivers/media/video/gspca/m5602/m5602_s5k4aa.c b/drivers/media/video/gspca/m5602/m5602_s5k4aa.c index e564a61a72d7..48892b5715d5 100644 --- a/drivers/media/video/gspca/m5602/m5602_s5k4aa.c +++ b/drivers/media/video/gspca/m5602/m5602_s5k4aa.c | |||
@@ -102,7 +102,11 @@ int s5k4aa_probe(struct sd *sd) | |||
102 | } | 102 | } |
103 | 103 | ||
104 | /* Test some registers, but we don't know their exact meaning yet */ | 104 | /* Test some registers, but we don't know their exact meaning yet */ |
105 | if (m5602_read_sensor(sd, 0x00, prod_id, sizeof(prod_id))) | 105 | if (m5602_read_sensor(sd, 0x00, prod_id, 2)) |
106 | return -ENODEV; | ||
107 | if (m5602_read_sensor(sd, 0x02, prod_id+2, 2)) | ||
108 | return -ENODEV; | ||
109 | if (m5602_read_sensor(sd, 0x04, prod_id+4, 2)) | ||
106 | return -ENODEV; | 110 | return -ENODEV; |
107 | 111 | ||
108 | if (memcmp(prod_id, expected_prod_id, sizeof(prod_id))) | 112 | if (memcmp(prod_id, expected_prod_id, sizeof(prod_id))) |
diff --git a/drivers/media/video/saa7134/saa7134-dvb.c b/drivers/media/video/saa7134/saa7134-dvb.c index 0776ecf56d27..b5370b3e1a3d 100644 --- a/drivers/media/video/saa7134/saa7134-dvb.c +++ b/drivers/media/video/saa7134/saa7134-dvb.c | |||
@@ -860,6 +860,7 @@ static struct zl10353_config behold_h6_config = { | |||
860 | .demod_address = 0x1e>>1, | 860 | .demod_address = 0x1e>>1, |
861 | .no_tuner = 1, | 861 | .no_tuner = 1, |
862 | .parallel_ts = 1, | 862 | .parallel_ts = 1, |
863 | .disable_i2c_gate_ctrl = 1, | ||
863 | }; | 864 | }; |
864 | 865 | ||
865 | /* ================================================================== | 866 | /* ================================================================== |
diff --git a/drivers/media/video/tvaudio.c b/drivers/media/video/tvaudio.c index 5aeccb301cea..076ed5bf48b1 100644 --- a/drivers/media/video/tvaudio.c +++ b/drivers/media/video/tvaudio.c | |||
@@ -54,7 +54,7 @@ MODULE_LICENSE("GPL"); | |||
54 | /* ---------------------------------------------------------------------- */ | 54 | /* ---------------------------------------------------------------------- */ |
55 | /* our structs */ | 55 | /* our structs */ |
56 | 56 | ||
57 | #define MAXREGS 64 | 57 | #define MAXREGS 256 |
58 | 58 | ||
59 | struct CHIPSTATE; | 59 | struct CHIPSTATE; |
60 | typedef int (*getvalue)(int); | 60 | typedef int (*getvalue)(int); |
diff --git a/drivers/media/video/zoran/Kconfig b/drivers/media/video/zoran/Kconfig index 4ea5fa71de89..8666e19f31a7 100644 --- a/drivers/media/video/zoran/Kconfig +++ b/drivers/media/video/zoran/Kconfig | |||
@@ -68,6 +68,7 @@ config VIDEO_ZORAN_AVS6EYES | |||
68 | tristate "AverMedia 6 Eyes support (EXPERIMENTAL)" | 68 | tristate "AverMedia 6 Eyes support (EXPERIMENTAL)" |
69 | depends on VIDEO_ZORAN_ZR36060 && EXPERIMENTAL && VIDEO_V4L1 | 69 | depends on VIDEO_ZORAN_ZR36060 && EXPERIMENTAL && VIDEO_V4L1 |
70 | select VIDEO_BT856 if VIDEO_HELPER_CHIPS_AUTO | 70 | select VIDEO_BT856 if VIDEO_HELPER_CHIPS_AUTO |
71 | select VIDEO_BT866 if VIDEO_HELPER_CHIPS_AUTO | ||
71 | select VIDEO_KS0127 if VIDEO_HELPER_CHIPS_AUTO | 72 | select VIDEO_KS0127 if VIDEO_HELPER_CHIPS_AUTO |
72 | help | 73 | help |
73 | Support for the AverMedia 6 Eyes video surveillance card. | 74 | Support for the AverMedia 6 Eyes video surveillance card. |
diff --git a/drivers/mfd/wm8350-core.c b/drivers/mfd/wm8350-core.c index 84d5ea1ec171..b457a05b28d9 100644 --- a/drivers/mfd/wm8350-core.c +++ b/drivers/mfd/wm8350-core.c | |||
@@ -1383,6 +1383,11 @@ int wm8350_device_init(struct wm8350 *wm8350, int irq, | |||
1383 | wm8350->power.rev_g_coeff = 1; | 1383 | wm8350->power.rev_g_coeff = 1; |
1384 | break; | 1384 | break; |
1385 | 1385 | ||
1386 | case 1: | ||
1387 | dev_info(wm8350->dev, "WM8351 Rev B\n"); | ||
1388 | wm8350->power.rev_g_coeff = 1; | ||
1389 | break; | ||
1390 | |||
1386 | default: | 1391 | default: |
1387 | dev_err(wm8350->dev, "Unknown WM8351 CHIP_REV\n"); | 1392 | dev_err(wm8350->dev, "Unknown WM8351 CHIP_REV\n"); |
1388 | ret = -ENODEV; | 1393 | ret = -ENODEV; |
diff --git a/drivers/mmc/core/mmc_ops.c b/drivers/mmc/core/mmc_ops.c index 9c50e6f1c236..34ce2703d29a 100644 --- a/drivers/mmc/core/mmc_ops.c +++ b/drivers/mmc/core/mmc_ops.c | |||
@@ -248,12 +248,15 @@ mmc_send_cxd_data(struct mmc_card *card, struct mmc_host *host, | |||
248 | 248 | ||
249 | sg_init_one(&sg, data_buf, len); | 249 | sg_init_one(&sg, data_buf, len); |
250 | 250 | ||
251 | /* | 251 | if (opcode == MMC_SEND_CSD || opcode == MMC_SEND_CID) { |
252 | * The spec states that CSR and CID accesses have a timeout | 252 | /* |
253 | * of 64 clock cycles. | 253 | * The spec states that CSR and CID accesses have a timeout |
254 | */ | 254 | * of 64 clock cycles. |
255 | data.timeout_ns = 0; | 255 | */ |
256 | data.timeout_clks = 64; | 256 | data.timeout_ns = 0; |
257 | data.timeout_clks = 64; | ||
258 | } else | ||
259 | mmc_set_data_timeout(&data, card); | ||
257 | 260 | ||
258 | mmc_wait_for_req(host, &mrq); | 261 | mmc_wait_for_req(host, &mrq); |
259 | 262 | ||
diff --git a/drivers/mmc/host/s3cmci.c b/drivers/mmc/host/s3cmci.c index f4a67c65d301..2db166b7096f 100644 --- a/drivers/mmc/host/s3cmci.c +++ b/drivers/mmc/host/s3cmci.c | |||
@@ -793,8 +793,7 @@ static void s3cmci_dma_setup(struct s3cmci_host *host, | |||
793 | host->mem->start + host->sdidata); | 793 | host->mem->start + host->sdidata); |
794 | 794 | ||
795 | if (!setup_ok) { | 795 | if (!setup_ok) { |
796 | s3c2410_dma_config(host->dma, 4, | 796 | s3c2410_dma_config(host->dma, 4, 0); |
797 | (S3C2410_DCON_HWTRIG | S3C2410_DCON_CH0_SDI)); | ||
798 | s3c2410_dma_set_buffdone_fn(host->dma, | 797 | s3c2410_dma_set_buffdone_fn(host->dma, |
799 | s3cmci_dma_done_callback); | 798 | s3cmci_dma_done_callback); |
800 | s3c2410_dma_setflags(host->dma, S3C2410_DMAF_AUTOSTART); | 799 | s3c2410_dma_setflags(host->dma, S3C2410_DMAF_AUTOSTART); |
diff --git a/drivers/mtd/devices/mtd_dataflash.c b/drivers/mtd/devices/mtd_dataflash.c index d44f741ae229..6d9f810565c8 100644 --- a/drivers/mtd/devices/mtd_dataflash.c +++ b/drivers/mtd/devices/mtd_dataflash.c | |||
@@ -821,7 +821,8 @@ static struct flash_info *__devinit jedec_probe(struct spi_device *spi) | |||
821 | if (!(info->flags & IS_POW2PS)) | 821 | if (!(info->flags & IS_POW2PS)) |
822 | return info; | 822 | return info; |
823 | } | 823 | } |
824 | } | 824 | } else |
825 | return info; | ||
825 | } | 826 | } |
826 | } | 827 | } |
827 | 828 | ||
diff --git a/drivers/mtd/maps/physmap.c b/drivers/mtd/maps/physmap.c index 4b122e7ab4b3..229718222db7 100644 --- a/drivers/mtd/maps/physmap.c +++ b/drivers/mtd/maps/physmap.c | |||
@@ -46,16 +46,19 @@ static int physmap_flash_remove(struct platform_device *dev) | |||
46 | 46 | ||
47 | physmap_data = dev->dev.platform_data; | 47 | physmap_data = dev->dev.platform_data; |
48 | 48 | ||
49 | if (info->cmtd) { | ||
49 | #ifdef CONFIG_MTD_PARTITIONS | 50 | #ifdef CONFIG_MTD_PARTITIONS |
50 | if (info->nr_parts) { | 51 | if (info->nr_parts || physmap_data->nr_parts) |
51 | del_mtd_partitions(info->cmtd); | 52 | del_mtd_partitions(info->cmtd); |
52 | kfree(info->parts); | 53 | else |
53 | } else if (physmap_data->nr_parts) | 54 | del_mtd_device(info->cmtd); |
54 | del_mtd_partitions(info->cmtd); | ||
55 | else | ||
56 | del_mtd_device(info->cmtd); | ||
57 | #else | 55 | #else |
58 | del_mtd_device(info->cmtd); | 56 | del_mtd_device(info->cmtd); |
57 | #endif | ||
58 | } | ||
59 | #ifdef CONFIG_MTD_PARTITIONS | ||
60 | if (info->nr_parts) | ||
61 | kfree(info->parts); | ||
59 | #endif | 62 | #endif |
60 | 63 | ||
61 | #ifdef CONFIG_MTD_CONCAT | 64 | #ifdef CONFIG_MTD_CONCAT |
diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig index a2f185fd7072..435e2e3a82c8 100644 --- a/drivers/net/Kconfig +++ b/drivers/net/Kconfig | |||
@@ -1040,6 +1040,17 @@ config NI65 | |||
1040 | To compile this driver as a module, choose M here. The module | 1040 | To compile this driver as a module, choose M here. The module |
1041 | will be called ni65. | 1041 | will be called ni65. |
1042 | 1042 | ||
1043 | config DNET | ||
1044 | tristate "Dave ethernet support (DNET)" | ||
1045 | depends on NET_ETHERNET | ||
1046 | select PHYLIB | ||
1047 | help | ||
1048 | The Dave ethernet interface (DNET) is found on Qong Board FPGA. | ||
1049 | Say Y to include support for the DNET chip. | ||
1050 | |||
1051 | To compile this driver as a module, choose M here: the module | ||
1052 | will be called dnet. | ||
1053 | |||
1043 | source "drivers/net/tulip/Kconfig" | 1054 | source "drivers/net/tulip/Kconfig" |
1044 | 1055 | ||
1045 | config AT1700 | 1056 | config AT1700 |
@@ -2619,6 +2630,8 @@ config QLGE | |||
2619 | 2630 | ||
2620 | source "drivers/net/sfc/Kconfig" | 2631 | source "drivers/net/sfc/Kconfig" |
2621 | 2632 | ||
2633 | source "drivers/net/benet/Kconfig" | ||
2634 | |||
2622 | endif # NETDEV_10000 | 2635 | endif # NETDEV_10000 |
2623 | 2636 | ||
2624 | source "drivers/net/tokenring/Kconfig" | 2637 | source "drivers/net/tokenring/Kconfig" |
diff --git a/drivers/net/Makefile b/drivers/net/Makefile index aca8492db654..471baaff229f 100644 --- a/drivers/net/Makefile +++ b/drivers/net/Makefile | |||
@@ -22,6 +22,7 @@ obj-$(CONFIG_GIANFAR) += gianfar_driver.o | |||
22 | obj-$(CONFIG_TEHUTI) += tehuti.o | 22 | obj-$(CONFIG_TEHUTI) += tehuti.o |
23 | obj-$(CONFIG_ENIC) += enic/ | 23 | obj-$(CONFIG_ENIC) += enic/ |
24 | obj-$(CONFIG_JME) += jme.o | 24 | obj-$(CONFIG_JME) += jme.o |
25 | obj-$(CONFIG_BE2NET) += benet/ | ||
25 | 26 | ||
26 | gianfar_driver-objs := gianfar.o \ | 27 | gianfar_driver-objs := gianfar.o \ |
27 | gianfar_ethtool.o \ | 28 | gianfar_ethtool.o \ |
@@ -231,6 +232,7 @@ obj-$(CONFIG_ENC28J60) += enc28j60.o | |||
231 | 232 | ||
232 | obj-$(CONFIG_XTENSA_XT2000_SONIC) += xtsonic.o | 233 | obj-$(CONFIG_XTENSA_XT2000_SONIC) += xtsonic.o |
233 | 234 | ||
235 | obj-$(CONFIG_DNET) += dnet.o | ||
234 | obj-$(CONFIG_MACB) += macb.o | 236 | obj-$(CONFIG_MACB) += macb.o |
235 | 237 | ||
236 | obj-$(CONFIG_ARM) += arm/ | 238 | obj-$(CONFIG_ARM) += arm/ |
diff --git a/drivers/net/arm/ks8695net.c b/drivers/net/arm/ks8695net.c index 1cf2f949c0b4..f3a127434897 100644 --- a/drivers/net/arm/ks8695net.c +++ b/drivers/net/arm/ks8695net.c | |||
@@ -560,7 +560,7 @@ ks8695_reset(struct ks8695_priv *ksp) | |||
560 | msleep(1); | 560 | msleep(1); |
561 | } | 561 | } |
562 | 562 | ||
563 | if (reset_timeout == 0) { | 563 | if (reset_timeout < 0) { |
564 | dev_crit(ksp->dev, | 564 | dev_crit(ksp->dev, |
565 | "Timeout waiting for DMA engines to reset\n"); | 565 | "Timeout waiting for DMA engines to reset\n"); |
566 | /* And blithely carry on */ | 566 | /* And blithely carry on */ |
diff --git a/drivers/net/benet/Kconfig b/drivers/net/benet/Kconfig new file mode 100644 index 000000000000..c6934f179c09 --- /dev/null +++ b/drivers/net/benet/Kconfig | |||
@@ -0,0 +1,7 @@ | |||
1 | config BE2NET | ||
2 | tristate "ServerEngines' 10Gbps NIC - BladeEngine 2" | ||
3 | depends on PCI && INET | ||
4 | select INET_LRO | ||
5 | help | ||
6 | This driver implements the NIC functionality for ServerEngines' | ||
7 | 10Gbps network adapter - BladeEngine 2. | ||
diff --git a/drivers/net/benet/Makefile b/drivers/net/benet/Makefile new file mode 100644 index 000000000000..a60cd8051135 --- /dev/null +++ b/drivers/net/benet/Makefile | |||
@@ -0,0 +1,7 @@ | |||
1 | # | ||
2 | # Makefile to build the network driver for ServerEngine's BladeEngine. | ||
3 | # | ||
4 | |||
5 | obj-$(CONFIG_BE2NET) += be2net.o | ||
6 | |||
7 | be2net-y := be_main.o be_cmds.o be_ethtool.o | ||
diff --git a/drivers/net/benet/be.h b/drivers/net/benet/be.h new file mode 100644 index 000000000000..63d593d53153 --- /dev/null +++ b/drivers/net/benet/be.h | |||
@@ -0,0 +1,327 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2005 - 2009 ServerEngines | ||
3 | * All rights reserved. | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or | ||
6 | * modify it under the terms of the GNU General Public License version 2 | ||
7 | * as published by the Free Software Foundation. The full GNU General | ||
8 | * Public License is included in this distribution in the file called COPYING. | ||
9 | * | ||
10 | * Contact Information: | ||
11 | * linux-drivers@serverengines.com | ||
12 | * | ||
13 | * ServerEngines | ||
14 | * 209 N. Fair Oaks Ave | ||
15 | * Sunnyvale, CA 94085 | ||
16 | */ | ||
17 | |||
18 | #ifndef BE_H | ||
19 | #define BE_H | ||
20 | |||
21 | #include <linux/pci.h> | ||
22 | #include <linux/etherdevice.h> | ||
23 | #include <linux/version.h> | ||
24 | #include <linux/delay.h> | ||
25 | #include <net/tcp.h> | ||
26 | #include <net/ip.h> | ||
27 | #include <net/ipv6.h> | ||
28 | #include <linux/if_vlan.h> | ||
29 | #include <linux/workqueue.h> | ||
30 | #include <linux/interrupt.h> | ||
31 | #include <linux/inet_lro.h> | ||
32 | |||
33 | #include "be_hw.h" | ||
34 | |||
35 | #define DRV_VER "2.0.348" | ||
36 | #define DRV_NAME "be2net" | ||
37 | #define BE_NAME "ServerEngines BladeEngine2 10Gbps NIC" | ||
38 | #define DRV_DESC BE_NAME "Driver" | ||
39 | |||
40 | /* Number of bytes of an RX frame that are copied to skb->data */ | ||
41 | #define BE_HDR_LEN 64 | ||
42 | #define BE_MAX_JUMBO_FRAME_SIZE 9018 | ||
43 | #define BE_MIN_MTU 256 | ||
44 | |||
45 | #define BE_NUM_VLANS_SUPPORTED 64 | ||
46 | #define BE_MAX_EQD 96 | ||
47 | #define BE_MAX_TX_FRAG_COUNT 30 | ||
48 | |||
49 | #define EVNT_Q_LEN 1024 | ||
50 | #define TX_Q_LEN 2048 | ||
51 | #define TX_CQ_LEN 1024 | ||
52 | #define RX_Q_LEN 1024 /* Does not support any other value */ | ||
53 | #define RX_CQ_LEN 1024 | ||
54 | #define MCC_Q_LEN 64 /* total size not to exceed 8 pages */ | ||
55 | #define MCC_CQ_LEN 256 | ||
56 | |||
57 | #define BE_NAPI_WEIGHT 64 | ||
58 | #define MAX_RX_POST BE_NAPI_WEIGHT /* Frags posted at a time */ | ||
59 | #define RX_FRAGS_REFILL_WM (RX_Q_LEN - MAX_RX_POST) | ||
60 | |||
61 | #define BE_MAX_LRO_DESCRIPTORS 16 | ||
62 | #define BE_MAX_FRAGS_PER_FRAME 16 | ||
63 | |||
64 | struct be_dma_mem { | ||
65 | void *va; | ||
66 | dma_addr_t dma; | ||
67 | u32 size; | ||
68 | }; | ||
69 | |||
70 | struct be_queue_info { | ||
71 | struct be_dma_mem dma_mem; | ||
72 | u16 len; | ||
73 | u16 entry_size; /* Size of an element in the queue */ | ||
74 | u16 id; | ||
75 | u16 tail, head; | ||
76 | bool created; | ||
77 | atomic_t used; /* Number of valid elements in the queue */ | ||
78 | }; | ||
79 | |||
80 | struct be_ctrl_info { | ||
81 | u8 __iomem *csr; | ||
82 | u8 __iomem *db; /* Door Bell */ | ||
83 | u8 __iomem *pcicfg; /* PCI config space */ | ||
84 | int pci_func; | ||
85 | |||
86 | /* Mbox used for cmd request/response */ | ||
87 | spinlock_t cmd_lock; /* For serializing cmds to BE card */ | ||
88 | struct be_dma_mem mbox_mem; | ||
89 | /* Mbox mem is adjusted to align to 16 bytes. The allocated addr | ||
90 | * is stored for freeing purpose */ | ||
91 | struct be_dma_mem mbox_mem_alloced; | ||
92 | }; | ||
93 | |||
94 | #include "be_cmds.h" | ||
95 | |||
96 | struct be_drvr_stats { | ||
97 | u32 be_tx_reqs; /* number of TX requests initiated */ | ||
98 | u32 be_tx_stops; /* number of times TX Q was stopped */ | ||
99 | u32 be_fwd_reqs; /* number of send reqs through forwarding i/f */ | ||
100 | u32 be_tx_wrbs; /* number of tx WRBs used */ | ||
101 | u32 be_tx_events; /* number of tx completion events */ | ||
102 | u32 be_tx_compl; /* number of tx completion entries processed */ | ||
103 | u64 be_tx_jiffies; | ||
104 | ulong be_tx_bytes; | ||
105 | ulong be_tx_bytes_prev; | ||
106 | u32 be_tx_rate; | ||
107 | |||
108 | u32 cache_barrier[16]; | ||
109 | |||
110 | u32 be_ethrx_post_fail;/* number of ethrx buffer alloc failures */ | ||
111 | u32 be_polls; /* number of times NAPI called poll function */ | ||
112 | u32 be_rx_events; /* number of ucast rx completion events */ | ||
113 | u32 be_rx_compl; /* number of rx completion entries processed */ | ||
114 | u32 be_lro_hgram_data[8]; /* histogram of LRO data packets */ | ||
115 | u32 be_lro_hgram_ack[8]; /* histogram of LRO ACKs */ | ||
116 | u64 be_rx_jiffies; | ||
117 | ulong be_rx_bytes; | ||
118 | ulong be_rx_bytes_prev; | ||
119 | u32 be_rx_rate; | ||
120 | /* number of non ether type II frames dropped where | ||
121 | * frame len > length field of Mac Hdr */ | ||
122 | u32 be_802_3_dropped_frames; | ||
123 | /* number of non ether type II frames malformed where | ||
124 | * in frame len < length field of Mac Hdr */ | ||
125 | u32 be_802_3_malformed_frames; | ||
126 | u32 be_rxcp_err; /* Num rx completion entries w/ err set. */ | ||
127 | ulong rx_fps_jiffies; /* jiffies at last FPS calc */ | ||
128 | u32 be_rx_frags; | ||
129 | u32 be_prev_rx_frags; | ||
130 | u32 be_rx_fps; /* Rx frags per second */ | ||
131 | }; | ||
132 | |||
133 | struct be_stats_obj { | ||
134 | struct be_drvr_stats drvr_stats; | ||
135 | struct net_device_stats net_stats; | ||
136 | struct be_dma_mem cmd; | ||
137 | }; | ||
138 | |||
139 | struct be_eq_obj { | ||
140 | struct be_queue_info q; | ||
141 | char desc[32]; | ||
142 | |||
143 | /* Adaptive interrupt coalescing (AIC) info */ | ||
144 | bool enable_aic; | ||
145 | u16 min_eqd; /* in usecs */ | ||
146 | u16 max_eqd; /* in usecs */ | ||
147 | u16 cur_eqd; /* in usecs */ | ||
148 | |||
149 | struct napi_struct napi; | ||
150 | }; | ||
151 | |||
152 | struct be_tx_obj { | ||
153 | struct be_queue_info q; | ||
154 | struct be_queue_info cq; | ||
155 | /* Remember the skbs that were transmitted */ | ||
156 | struct sk_buff *sent_skb_list[TX_Q_LEN]; | ||
157 | }; | ||
158 | |||
159 | /* Struct to remember the pages posted for rx frags */ | ||
160 | struct be_rx_page_info { | ||
161 | struct page *page; | ||
162 | dma_addr_t bus; | ||
163 | u16 page_offset; | ||
164 | bool last_page_user; | ||
165 | }; | ||
166 | |||
167 | struct be_rx_obj { | ||
168 | struct be_queue_info q; | ||
169 | struct be_queue_info cq; | ||
170 | struct be_rx_page_info page_info_tbl[RX_Q_LEN]; | ||
171 | struct net_lro_mgr lro_mgr; | ||
172 | struct net_lro_desc lro_desc[BE_MAX_LRO_DESCRIPTORS]; | ||
173 | }; | ||
174 | |||
175 | #define BE_NUM_MSIX_VECTORS 2 /* 1 each for Tx and Rx */ | ||
176 | struct be_adapter { | ||
177 | struct pci_dev *pdev; | ||
178 | struct net_device *netdev; | ||
179 | |||
180 | /* Mbox, pci config, csr address information */ | ||
181 | struct be_ctrl_info ctrl; | ||
182 | |||
183 | struct msix_entry msix_entries[BE_NUM_MSIX_VECTORS]; | ||
184 | bool msix_enabled; | ||
185 | bool isr_registered; | ||
186 | |||
187 | /* TX Rings */ | ||
188 | struct be_eq_obj tx_eq; | ||
189 | struct be_tx_obj tx_obj; | ||
190 | |||
191 | u32 cache_line_break[8]; | ||
192 | |||
193 | /* Rx rings */ | ||
194 | struct be_eq_obj rx_eq; | ||
195 | struct be_rx_obj rx_obj; | ||
196 | u32 big_page_size; /* Compounded page size shared by rx wrbs */ | ||
197 | |||
198 | struct vlan_group *vlan_grp; | ||
199 | u16 num_vlans; | ||
200 | u8 vlan_tag[VLAN_GROUP_ARRAY_LEN]; | ||
201 | |||
202 | struct be_stats_obj stats; | ||
203 | /* Work queue used to perform periodic tasks like getting statistics */ | ||
204 | struct delayed_work work; | ||
205 | |||
206 | /* Ethtool knobs and info */ | ||
207 | bool rx_csum; /* BE card must perform rx-checksumming */ | ||
208 | u32 max_rx_coal; | ||
209 | char fw_ver[FW_VER_LEN]; | ||
210 | u32 if_handle; /* Used to configure filtering */ | ||
211 | u32 pmac_id; /* MAC addr handle used by BE card */ | ||
212 | |||
213 | struct be_link_info link; | ||
214 | u32 port_num; | ||
215 | }; | ||
216 | |||
217 | extern struct ethtool_ops be_ethtool_ops; | ||
218 | |||
219 | #define drvr_stats(adapter) (&adapter->stats.drvr_stats) | ||
220 | |||
221 | #define BE_SET_NETDEV_OPS(netdev, ops) (netdev->netdev_ops = ops) | ||
222 | |||
223 | static inline u32 MODULO(u16 val, u16 limit) | ||
224 | { | ||
225 | BUG_ON(limit & (limit - 1)); | ||
226 | return val & (limit - 1); | ||
227 | } | ||
228 | |||
229 | static inline void index_adv(u16 *index, u16 val, u16 limit) | ||
230 | { | ||
231 | *index = MODULO((*index + val), limit); | ||
232 | } | ||
233 | |||
234 | static inline void index_inc(u16 *index, u16 limit) | ||
235 | { | ||
236 | *index = MODULO((*index + 1), limit); | ||
237 | } | ||
238 | |||
239 | #define PAGE_SHIFT_4K 12 | ||
240 | #define PAGE_SIZE_4K (1 << PAGE_SHIFT_4K) | ||
241 | |||
242 | /* Returns number of pages spanned by the data starting at the given addr */ | ||
243 | #define PAGES_4K_SPANNED(_address, size) \ | ||
244 | ((u32)((((size_t)(_address) & (PAGE_SIZE_4K - 1)) + \ | ||
245 | (size) + (PAGE_SIZE_4K - 1)) >> PAGE_SHIFT_4K)) | ||
246 | |||
247 | /* Byte offset into the page corresponding to given address */ | ||
248 | #define OFFSET_IN_PAGE(addr) \ | ||
249 | ((size_t)(addr) & (PAGE_SIZE_4K-1)) | ||
250 | |||
251 | /* Returns bit offset within a DWORD of a bitfield */ | ||
252 | #define AMAP_BIT_OFFSET(_struct, field) \ | ||
253 | (((size_t)&(((_struct *)0)->field))%32) | ||
254 | |||
255 | /* Returns the bit mask of the field that is NOT shifted into location. */ | ||
256 | static inline u32 amap_mask(u32 bitsize) | ||
257 | { | ||
258 | return (bitsize == 32 ? 0xFFFFFFFF : (1 << bitsize) - 1); | ||
259 | } | ||
260 | |||
261 | static inline void | ||
262 | amap_set(void *ptr, u32 dw_offset, u32 mask, u32 offset, u32 value) | ||
263 | { | ||
264 | u32 *dw = (u32 *) ptr + dw_offset; | ||
265 | *dw &= ~(mask << offset); | ||
266 | *dw |= (mask & value) << offset; | ||
267 | } | ||
268 | |||
269 | #define AMAP_SET_BITS(_struct, field, ptr, val) \ | ||
270 | amap_set(ptr, \ | ||
271 | offsetof(_struct, field)/32, \ | ||
272 | amap_mask(sizeof(((_struct *)0)->field)), \ | ||
273 | AMAP_BIT_OFFSET(_struct, field), \ | ||
274 | val) | ||
275 | |||
276 | static inline u32 amap_get(void *ptr, u32 dw_offset, u32 mask, u32 offset) | ||
277 | { | ||
278 | u32 *dw = (u32 *) ptr; | ||
279 | return mask & (*(dw + dw_offset) >> offset); | ||
280 | } | ||
281 | |||
282 | #define AMAP_GET_BITS(_struct, field, ptr) \ | ||
283 | amap_get(ptr, \ | ||
284 | offsetof(_struct, field)/32, \ | ||
285 | amap_mask(sizeof(((_struct *)0)->field)), \ | ||
286 | AMAP_BIT_OFFSET(_struct, field)) | ||
287 | |||
288 | #define be_dws_cpu_to_le(wrb, len) swap_dws(wrb, len) | ||
289 | #define be_dws_le_to_cpu(wrb, len) swap_dws(wrb, len) | ||
290 | static inline void swap_dws(void *wrb, int len) | ||
291 | { | ||
292 | #ifdef __BIG_ENDIAN | ||
293 | u32 *dw = wrb; | ||
294 | BUG_ON(len % 4); | ||
295 | do { | ||
296 | *dw = cpu_to_le32(*dw); | ||
297 | dw++; | ||
298 | len -= 4; | ||
299 | } while (len); | ||
300 | #endif /* __BIG_ENDIAN */ | ||
301 | } | ||
302 | |||
303 | static inline u8 is_tcp_pkt(struct sk_buff *skb) | ||
304 | { | ||
305 | u8 val = 0; | ||
306 | |||
307 | if (ip_hdr(skb)->version == 4) | ||
308 | val = (ip_hdr(skb)->protocol == IPPROTO_TCP); | ||
309 | else if (ip_hdr(skb)->version == 6) | ||
310 | val = (ipv6_hdr(skb)->nexthdr == NEXTHDR_TCP); | ||
311 | |||
312 | return val; | ||
313 | } | ||
314 | |||
315 | static inline u8 is_udp_pkt(struct sk_buff *skb) | ||
316 | { | ||
317 | u8 val = 0; | ||
318 | |||
319 | if (ip_hdr(skb)->version == 4) | ||
320 | val = (ip_hdr(skb)->protocol == IPPROTO_UDP); | ||
321 | else if (ip_hdr(skb)->version == 6) | ||
322 | val = (ipv6_hdr(skb)->nexthdr == NEXTHDR_UDP); | ||
323 | |||
324 | return val; | ||
325 | } | ||
326 | |||
327 | #endif /* BE_H */ | ||
diff --git a/drivers/net/benet/be_cmds.c b/drivers/net/benet/be_cmds.c new file mode 100644 index 000000000000..d444aed962bc --- /dev/null +++ b/drivers/net/benet/be_cmds.c | |||
@@ -0,0 +1,861 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2005 - 2009 ServerEngines | ||
3 | * All rights reserved. | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or | ||
6 | * modify it under the terms of the GNU General Public License version 2 | ||
7 | * as published by the Free Software Foundation. The full GNU General | ||
8 | * Public License is included in this distribution in the file called COPYING. | ||
9 | * | ||
10 | * Contact Information: | ||
11 | * linux-drivers@serverengines.com | ||
12 | * | ||
13 | * ServerEngines | ||
14 | * 209 N. Fair Oaks Ave | ||
15 | * Sunnyvale, CA 94085 | ||
16 | */ | ||
17 | |||
18 | #include "be.h" | ||
19 | |||
20 | static int be_mbox_db_ready_wait(void __iomem *db) | ||
21 | { | ||
22 | int cnt = 0, wait = 5; | ||
23 | u32 ready; | ||
24 | |||
25 | do { | ||
26 | ready = ioread32(db) & MPU_MAILBOX_DB_RDY_MASK; | ||
27 | if (ready) | ||
28 | break; | ||
29 | |||
30 | if (cnt > 200000) { | ||
31 | printk(KERN_WARNING DRV_NAME | ||
32 | ": mbox_db poll timed out\n"); | ||
33 | return -1; | ||
34 | } | ||
35 | |||
36 | if (cnt > 50) | ||
37 | wait = 200; | ||
38 | cnt += wait; | ||
39 | udelay(wait); | ||
40 | } while (true); | ||
41 | |||
42 | return 0; | ||
43 | } | ||
44 | |||
45 | /* | ||
46 | * Insert the mailbox address into the doorbell in two steps | ||
47 | */ | ||
48 | static int be_mbox_db_ring(struct be_ctrl_info *ctrl) | ||
49 | { | ||
50 | int status; | ||
51 | u16 compl_status, extd_status; | ||
52 | u32 val = 0; | ||
53 | void __iomem *db = ctrl->db + MPU_MAILBOX_DB_OFFSET; | ||
54 | struct be_dma_mem *mbox_mem = &ctrl->mbox_mem; | ||
55 | struct be_mcc_mailbox *mbox = mbox_mem->va; | ||
56 | struct be_mcc_cq_entry *cqe = &mbox->cqe; | ||
57 | |||
58 | memset(cqe, 0, sizeof(*cqe)); | ||
59 | |||
60 | val &= ~MPU_MAILBOX_DB_RDY_MASK; | ||
61 | val |= MPU_MAILBOX_DB_HI_MASK; | ||
62 | /* at bits 2 - 31 place mbox dma addr msb bits 34 - 63 */ | ||
63 | val |= (upper_32_bits(mbox_mem->dma) >> 2) << 2; | ||
64 | iowrite32(val, db); | ||
65 | |||
66 | /* wait for ready to be set */ | ||
67 | status = be_mbox_db_ready_wait(db); | ||
68 | if (status != 0) | ||
69 | return status; | ||
70 | |||
71 | val = 0; | ||
72 | val &= ~MPU_MAILBOX_DB_RDY_MASK; | ||
73 | val &= ~MPU_MAILBOX_DB_HI_MASK; | ||
74 | /* at bits 2 - 31 place mbox dma addr lsb bits 4 - 33 */ | ||
75 | val |= (u32)(mbox_mem->dma >> 4) << 2; | ||
76 | iowrite32(val, db); | ||
77 | |||
78 | status = be_mbox_db_ready_wait(db); | ||
79 | if (status != 0) | ||
80 | return status; | ||
81 | |||
82 | /* compl entry has been made now */ | ||
83 | be_dws_le_to_cpu(cqe, sizeof(*cqe)); | ||
84 | if (!(cqe->flags & CQE_FLAGS_VALID_MASK)) { | ||
85 | printk(KERN_WARNING DRV_NAME ": ERROR invalid mbox compl\n"); | ||
86 | return -1; | ||
87 | } | ||
88 | |||
89 | compl_status = (cqe->status >> CQE_STATUS_COMPL_SHIFT) & | ||
90 | CQE_STATUS_COMPL_MASK; | ||
91 | if (compl_status != MCC_STATUS_SUCCESS) { | ||
92 | extd_status = (cqe->status >> CQE_STATUS_EXTD_SHIFT) & | ||
93 | CQE_STATUS_EXTD_MASK; | ||
94 | printk(KERN_WARNING DRV_NAME | ||
95 | ": ERROR in cmd compl. status(compl/extd)=%d/%d\n", | ||
96 | compl_status, extd_status); | ||
97 | } | ||
98 | |||
99 | return compl_status; | ||
100 | } | ||
101 | |||
102 | static int be_POST_stage_get(struct be_ctrl_info *ctrl, u16 *stage) | ||
103 | { | ||
104 | u32 sem = ioread32(ctrl->csr + MPU_EP_SEMAPHORE_OFFSET); | ||
105 | |||
106 | *stage = sem & EP_SEMAPHORE_POST_STAGE_MASK; | ||
107 | if ((sem >> EP_SEMAPHORE_POST_ERR_SHIFT) & EP_SEMAPHORE_POST_ERR_MASK) | ||
108 | return -1; | ||
109 | else | ||
110 | return 0; | ||
111 | } | ||
112 | |||
113 | static int be_POST_stage_poll(struct be_ctrl_info *ctrl, u16 poll_stage) | ||
114 | { | ||
115 | u16 stage, cnt, error; | ||
116 | for (cnt = 0; cnt < 5000; cnt++) { | ||
117 | error = be_POST_stage_get(ctrl, &stage); | ||
118 | if (error) | ||
119 | return -1; | ||
120 | |||
121 | if (stage == poll_stage) | ||
122 | break; | ||
123 | udelay(1000); | ||
124 | } | ||
125 | if (stage != poll_stage) | ||
126 | return -1; | ||
127 | return 0; | ||
128 | } | ||
129 | |||
130 | |||
131 | int be_cmd_POST(struct be_ctrl_info *ctrl) | ||
132 | { | ||
133 | u16 stage, error; | ||
134 | |||
135 | error = be_POST_stage_get(ctrl, &stage); | ||
136 | if (error) | ||
137 | goto err; | ||
138 | |||
139 | if (stage == POST_STAGE_ARMFW_RDY) | ||
140 | return 0; | ||
141 | |||
142 | if (stage != POST_STAGE_AWAITING_HOST_RDY) | ||
143 | goto err; | ||
144 | |||
145 | /* On awaiting host rdy, reset and again poll on awaiting host rdy */ | ||
146 | iowrite32(POST_STAGE_BE_RESET, ctrl->csr + MPU_EP_SEMAPHORE_OFFSET); | ||
147 | error = be_POST_stage_poll(ctrl, POST_STAGE_AWAITING_HOST_RDY); | ||
148 | if (error) | ||
149 | goto err; | ||
150 | |||
151 | /* Now kickoff POST and poll on armfw ready */ | ||
152 | iowrite32(POST_STAGE_HOST_RDY, ctrl->csr + MPU_EP_SEMAPHORE_OFFSET); | ||
153 | error = be_POST_stage_poll(ctrl, POST_STAGE_ARMFW_RDY); | ||
154 | if (error) | ||
155 | goto err; | ||
156 | |||
157 | return 0; | ||
158 | err: | ||
159 | printk(KERN_WARNING DRV_NAME ": ERROR, stage=%d\n", stage); | ||
160 | return -1; | ||
161 | } | ||
162 | |||
163 | static inline void *embedded_payload(struct be_mcc_wrb *wrb) | ||
164 | { | ||
165 | return wrb->payload.embedded_payload; | ||
166 | } | ||
167 | |||
168 | static inline struct be_sge *nonembedded_sgl(struct be_mcc_wrb *wrb) | ||
169 | { | ||
170 | return &wrb->payload.sgl[0]; | ||
171 | } | ||
172 | |||
173 | /* Don't touch the hdr after it's prepared */ | ||
174 | static void be_wrb_hdr_prepare(struct be_mcc_wrb *wrb, int payload_len, | ||
175 | bool embedded, u8 sge_cnt) | ||
176 | { | ||
177 | if (embedded) | ||
178 | wrb->embedded |= MCC_WRB_EMBEDDED_MASK; | ||
179 | else | ||
180 | wrb->embedded |= (sge_cnt & MCC_WRB_SGE_CNT_MASK) << | ||
181 | MCC_WRB_SGE_CNT_SHIFT; | ||
182 | wrb->payload_length = payload_len; | ||
183 | be_dws_cpu_to_le(wrb, 20); | ||
184 | } | ||
185 | |||
186 | /* Don't touch the hdr after it's prepared */ | ||
187 | static void be_cmd_hdr_prepare(struct be_cmd_req_hdr *req_hdr, | ||
188 | u8 subsystem, u8 opcode, int cmd_len) | ||
189 | { | ||
190 | req_hdr->opcode = opcode; | ||
191 | req_hdr->subsystem = subsystem; | ||
192 | req_hdr->request_length = cpu_to_le32(cmd_len - sizeof(*req_hdr)); | ||
193 | } | ||
194 | |||
195 | static void be_cmd_page_addrs_prepare(struct phys_addr *pages, u32 max_pages, | ||
196 | struct be_dma_mem *mem) | ||
197 | { | ||
198 | int i, buf_pages = min(PAGES_4K_SPANNED(mem->va, mem->size), max_pages); | ||
199 | u64 dma = (u64)mem->dma; | ||
200 | |||
201 | for (i = 0; i < buf_pages; i++) { | ||
202 | pages[i].lo = cpu_to_le32(dma & 0xFFFFFFFF); | ||
203 | pages[i].hi = cpu_to_le32(upper_32_bits(dma)); | ||
204 | dma += PAGE_SIZE_4K; | ||
205 | } | ||
206 | } | ||
207 | |||
208 | /* Converts interrupt delay in microseconds to multiplier value */ | ||
209 | static u32 eq_delay_to_mult(u32 usec_delay) | ||
210 | { | ||
211 | #define MAX_INTR_RATE 651042 | ||
212 | const u32 round = 10; | ||
213 | u32 multiplier; | ||
214 | |||
215 | if (usec_delay == 0) | ||
216 | multiplier = 0; | ||
217 | else { | ||
218 | u32 interrupt_rate = 1000000 / usec_delay; | ||
219 | /* Max delay, corresponding to the lowest interrupt rate */ | ||
220 | if (interrupt_rate == 0) | ||
221 | multiplier = 1023; | ||
222 | else { | ||
223 | multiplier = (MAX_INTR_RATE - interrupt_rate) * round; | ||
224 | multiplier /= interrupt_rate; | ||
225 | /* Round the multiplier to the closest value.*/ | ||
226 | multiplier = (multiplier + round/2) / round; | ||
227 | multiplier = min(multiplier, (u32)1023); | ||
228 | } | ||
229 | } | ||
230 | return multiplier; | ||
231 | } | ||
232 | |||
233 | static inline struct be_mcc_wrb *wrb_from_mbox(struct be_dma_mem *mbox_mem) | ||
234 | { | ||
235 | return &((struct be_mcc_mailbox *)(mbox_mem->va))->wrb; | ||
236 | } | ||
237 | |||
238 | int be_cmd_eq_create(struct be_ctrl_info *ctrl, | ||
239 | struct be_queue_info *eq, int eq_delay) | ||
240 | { | ||
241 | struct be_mcc_wrb *wrb = wrb_from_mbox(&ctrl->mbox_mem); | ||
242 | struct be_cmd_req_eq_create *req = embedded_payload(wrb); | ||
243 | struct be_cmd_resp_eq_create *resp = embedded_payload(wrb); | ||
244 | struct be_dma_mem *q_mem = &eq->dma_mem; | ||
245 | int status; | ||
246 | |||
247 | spin_lock(&ctrl->cmd_lock); | ||
248 | memset(wrb, 0, sizeof(*wrb)); | ||
249 | |||
250 | be_wrb_hdr_prepare(wrb, sizeof(*req), true, 0); | ||
251 | |||
252 | be_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_COMMON, | ||
253 | OPCODE_COMMON_EQ_CREATE, sizeof(*req)); | ||
254 | |||
255 | req->num_pages = cpu_to_le16(PAGES_4K_SPANNED(q_mem->va, q_mem->size)); | ||
256 | |||
257 | AMAP_SET_BITS(struct amap_eq_context, func, req->context, | ||
258 | ctrl->pci_func); | ||
259 | AMAP_SET_BITS(struct amap_eq_context, valid, req->context, 1); | ||
260 | /* 4byte eqe*/ | ||
261 | AMAP_SET_BITS(struct amap_eq_context, size, req->context, 0); | ||
262 | AMAP_SET_BITS(struct amap_eq_context, count, req->context, | ||
263 | __ilog2_u32(eq->len/256)); | ||
264 | AMAP_SET_BITS(struct amap_eq_context, delaymult, req->context, | ||
265 | eq_delay_to_mult(eq_delay)); | ||
266 | be_dws_cpu_to_le(req->context, sizeof(req->context)); | ||
267 | |||
268 | be_cmd_page_addrs_prepare(req->pages, ARRAY_SIZE(req->pages), q_mem); | ||
269 | |||
270 | status = be_mbox_db_ring(ctrl); | ||
271 | if (!status) { | ||
272 | eq->id = le16_to_cpu(resp->eq_id); | ||
273 | eq->created = true; | ||
274 | } | ||
275 | spin_unlock(&ctrl->cmd_lock); | ||
276 | return status; | ||
277 | } | ||
278 | |||
279 | int be_cmd_mac_addr_query(struct be_ctrl_info *ctrl, u8 *mac_addr, | ||
280 | u8 type, bool permanent, u32 if_handle) | ||
281 | { | ||
282 | struct be_mcc_wrb *wrb = wrb_from_mbox(&ctrl->mbox_mem); | ||
283 | struct be_cmd_req_mac_query *req = embedded_payload(wrb); | ||
284 | struct be_cmd_resp_mac_query *resp = embedded_payload(wrb); | ||
285 | int status; | ||
286 | |||
287 | spin_lock(&ctrl->cmd_lock); | ||
288 | memset(wrb, 0, sizeof(*wrb)); | ||
289 | |||
290 | be_wrb_hdr_prepare(wrb, sizeof(*req), true, 0); | ||
291 | |||
292 | be_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_COMMON, | ||
293 | OPCODE_COMMON_NTWK_MAC_QUERY, sizeof(*req)); | ||
294 | |||
295 | req->type = type; | ||
296 | if (permanent) { | ||
297 | req->permanent = 1; | ||
298 | } else { | ||
299 | req->if_id = cpu_to_le16((u16)if_handle); | ||
300 | req->permanent = 0; | ||
301 | } | ||
302 | |||
303 | status = be_mbox_db_ring(ctrl); | ||
304 | if (!status) | ||
305 | memcpy(mac_addr, resp->mac.addr, ETH_ALEN); | ||
306 | |||
307 | spin_unlock(&ctrl->cmd_lock); | ||
308 | return status; | ||
309 | } | ||
310 | |||
311 | int be_cmd_pmac_add(struct be_ctrl_info *ctrl, u8 *mac_addr, | ||
312 | u32 if_id, u32 *pmac_id) | ||
313 | { | ||
314 | struct be_mcc_wrb *wrb = wrb_from_mbox(&ctrl->mbox_mem); | ||
315 | struct be_cmd_req_pmac_add *req = embedded_payload(wrb); | ||
316 | int status; | ||
317 | |||
318 | spin_lock(&ctrl->cmd_lock); | ||
319 | memset(wrb, 0, sizeof(*wrb)); | ||
320 | |||
321 | be_wrb_hdr_prepare(wrb, sizeof(*req), true, 0); | ||
322 | |||
323 | be_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_COMMON, | ||
324 | OPCODE_COMMON_NTWK_PMAC_ADD, sizeof(*req)); | ||
325 | |||
326 | req->if_id = cpu_to_le32(if_id); | ||
327 | memcpy(req->mac_address, mac_addr, ETH_ALEN); | ||
328 | |||
329 | status = be_mbox_db_ring(ctrl); | ||
330 | if (!status) { | ||
331 | struct be_cmd_resp_pmac_add *resp = embedded_payload(wrb); | ||
332 | *pmac_id = le32_to_cpu(resp->pmac_id); | ||
333 | } | ||
334 | |||
335 | spin_unlock(&ctrl->cmd_lock); | ||
336 | return status; | ||
337 | } | ||
338 | |||
339 | int be_cmd_pmac_del(struct be_ctrl_info *ctrl, u32 if_id, u32 pmac_id) | ||
340 | { | ||
341 | struct be_mcc_wrb *wrb = wrb_from_mbox(&ctrl->mbox_mem); | ||
342 | struct be_cmd_req_pmac_del *req = embedded_payload(wrb); | ||
343 | int status; | ||
344 | |||
345 | spin_lock(&ctrl->cmd_lock); | ||
346 | memset(wrb, 0, sizeof(*wrb)); | ||
347 | |||
348 | be_wrb_hdr_prepare(wrb, sizeof(*req), true, 0); | ||
349 | |||
350 | be_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_COMMON, | ||
351 | OPCODE_COMMON_NTWK_PMAC_DEL, sizeof(*req)); | ||
352 | |||
353 | req->if_id = cpu_to_le32(if_id); | ||
354 | req->pmac_id = cpu_to_le32(pmac_id); | ||
355 | |||
356 | status = be_mbox_db_ring(ctrl); | ||
357 | spin_unlock(&ctrl->cmd_lock); | ||
358 | |||
359 | return status; | ||
360 | } | ||
361 | |||
362 | int be_cmd_cq_create(struct be_ctrl_info *ctrl, | ||
363 | struct be_queue_info *cq, struct be_queue_info *eq, | ||
364 | bool sol_evts, bool no_delay, int coalesce_wm) | ||
365 | { | ||
366 | struct be_mcc_wrb *wrb = wrb_from_mbox(&ctrl->mbox_mem); | ||
367 | struct be_cmd_req_cq_create *req = embedded_payload(wrb); | ||
368 | struct be_cmd_resp_cq_create *resp = embedded_payload(wrb); | ||
369 | struct be_dma_mem *q_mem = &cq->dma_mem; | ||
370 | void *ctxt = &req->context; | ||
371 | int status; | ||
372 | |||
373 | spin_lock(&ctrl->cmd_lock); | ||
374 | memset(wrb, 0, sizeof(*wrb)); | ||
375 | |||
376 | be_wrb_hdr_prepare(wrb, sizeof(*req), true, 0); | ||
377 | |||
378 | be_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_COMMON, | ||
379 | OPCODE_COMMON_CQ_CREATE, sizeof(*req)); | ||
380 | |||
381 | req->num_pages = cpu_to_le16(PAGES_4K_SPANNED(q_mem->va, q_mem->size)); | ||
382 | |||
383 | AMAP_SET_BITS(struct amap_cq_context, coalescwm, ctxt, coalesce_wm); | ||
384 | AMAP_SET_BITS(struct amap_cq_context, nodelay, ctxt, no_delay); | ||
385 | AMAP_SET_BITS(struct amap_cq_context, count, ctxt, | ||
386 | __ilog2_u32(cq->len/256)); | ||
387 | AMAP_SET_BITS(struct amap_cq_context, valid, ctxt, 1); | ||
388 | AMAP_SET_BITS(struct amap_cq_context, solevent, ctxt, sol_evts); | ||
389 | AMAP_SET_BITS(struct amap_cq_context, eventable, ctxt, 1); | ||
390 | AMAP_SET_BITS(struct amap_cq_context, eqid, ctxt, eq->id); | ||
391 | AMAP_SET_BITS(struct amap_cq_context, armed, ctxt, 0); | ||
392 | AMAP_SET_BITS(struct amap_cq_context, func, ctxt, ctrl->pci_func); | ||
393 | be_dws_cpu_to_le(ctxt, sizeof(req->context)); | ||
394 | |||
395 | be_cmd_page_addrs_prepare(req->pages, ARRAY_SIZE(req->pages), q_mem); | ||
396 | |||
397 | status = be_mbox_db_ring(ctrl); | ||
398 | if (!status) { | ||
399 | cq->id = le16_to_cpu(resp->cq_id); | ||
400 | cq->created = true; | ||
401 | } | ||
402 | spin_unlock(&ctrl->cmd_lock); | ||
403 | |||
404 | return status; | ||
405 | } | ||
406 | |||
407 | int be_cmd_txq_create(struct be_ctrl_info *ctrl, | ||
408 | struct be_queue_info *txq, | ||
409 | struct be_queue_info *cq) | ||
410 | { | ||
411 | struct be_mcc_wrb *wrb = wrb_from_mbox(&ctrl->mbox_mem); | ||
412 | struct be_cmd_req_eth_tx_create *req = embedded_payload(wrb); | ||
413 | struct be_dma_mem *q_mem = &txq->dma_mem; | ||
414 | void *ctxt = &req->context; | ||
415 | int status; | ||
416 | u32 len_encoded; | ||
417 | |||
418 | spin_lock(&ctrl->cmd_lock); | ||
419 | memset(wrb, 0, sizeof(*wrb)); | ||
420 | |||
421 | be_wrb_hdr_prepare(wrb, sizeof(*req), true, 0); | ||
422 | |||
423 | be_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_ETH, OPCODE_ETH_TX_CREATE, | ||
424 | sizeof(*req)); | ||
425 | |||
426 | req->num_pages = PAGES_4K_SPANNED(q_mem->va, q_mem->size); | ||
427 | req->ulp_num = BE_ULP1_NUM; | ||
428 | req->type = BE_ETH_TX_RING_TYPE_STANDARD; | ||
429 | |||
430 | len_encoded = fls(txq->len); /* log2(len) + 1 */ | ||
431 | if (len_encoded == 16) | ||
432 | len_encoded = 0; | ||
433 | AMAP_SET_BITS(struct amap_tx_context, tx_ring_size, ctxt, len_encoded); | ||
434 | AMAP_SET_BITS(struct amap_tx_context, pci_func_id, ctxt, | ||
435 | ctrl->pci_func); | ||
436 | AMAP_SET_BITS(struct amap_tx_context, ctx_valid, ctxt, 1); | ||
437 | AMAP_SET_BITS(struct amap_tx_context, cq_id_send, ctxt, cq->id); | ||
438 | |||
439 | be_dws_cpu_to_le(ctxt, sizeof(req->context)); | ||
440 | |||
441 | be_cmd_page_addrs_prepare(req->pages, ARRAY_SIZE(req->pages), q_mem); | ||
442 | |||
443 | status = be_mbox_db_ring(ctrl); | ||
444 | if (!status) { | ||
445 | struct be_cmd_resp_eth_tx_create *resp = embedded_payload(wrb); | ||
446 | txq->id = le16_to_cpu(resp->cid); | ||
447 | txq->created = true; | ||
448 | } | ||
449 | spin_unlock(&ctrl->cmd_lock); | ||
450 | |||
451 | return status; | ||
452 | } | ||
453 | |||
454 | int be_cmd_rxq_create(struct be_ctrl_info *ctrl, | ||
455 | struct be_queue_info *rxq, u16 cq_id, u16 frag_size, | ||
456 | u16 max_frame_size, u32 if_id, u32 rss) | ||
457 | { | ||
458 | struct be_mcc_wrb *wrb = wrb_from_mbox(&ctrl->mbox_mem); | ||
459 | struct be_cmd_req_eth_rx_create *req = embedded_payload(wrb); | ||
460 | struct be_dma_mem *q_mem = &rxq->dma_mem; | ||
461 | int status; | ||
462 | |||
463 | spin_lock(&ctrl->cmd_lock); | ||
464 | memset(wrb, 0, sizeof(*wrb)); | ||
465 | |||
466 | be_wrb_hdr_prepare(wrb, sizeof(*req), true, 0); | ||
467 | |||
468 | be_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_ETH, OPCODE_ETH_RX_CREATE, | ||
469 | sizeof(*req)); | ||
470 | |||
471 | req->cq_id = cpu_to_le16(cq_id); | ||
472 | req->frag_size = fls(frag_size) - 1; | ||
473 | req->num_pages = 2; | ||
474 | be_cmd_page_addrs_prepare(req->pages, ARRAY_SIZE(req->pages), q_mem); | ||
475 | req->interface_id = cpu_to_le32(if_id); | ||
476 | req->max_frame_size = cpu_to_le16(max_frame_size); | ||
477 | req->rss_queue = cpu_to_le32(rss); | ||
478 | |||
479 | status = be_mbox_db_ring(ctrl); | ||
480 | if (!status) { | ||
481 | struct be_cmd_resp_eth_rx_create *resp = embedded_payload(wrb); | ||
482 | rxq->id = le16_to_cpu(resp->id); | ||
483 | rxq->created = true; | ||
484 | } | ||
485 | spin_unlock(&ctrl->cmd_lock); | ||
486 | |||
487 | return status; | ||
488 | } | ||
489 | |||
490 | /* Generic destroyer function for all types of queues */ | ||
491 | int be_cmd_q_destroy(struct be_ctrl_info *ctrl, struct be_queue_info *q, | ||
492 | int queue_type) | ||
493 | { | ||
494 | struct be_mcc_wrb *wrb = wrb_from_mbox(&ctrl->mbox_mem); | ||
495 | struct be_cmd_req_q_destroy *req = embedded_payload(wrb); | ||
496 | u8 subsys = 0, opcode = 0; | ||
497 | int status; | ||
498 | |||
499 | spin_lock(&ctrl->cmd_lock); | ||
500 | |||
501 | memset(wrb, 0, sizeof(*wrb)); | ||
502 | be_wrb_hdr_prepare(wrb, sizeof(*req), true, 0); | ||
503 | |||
504 | switch (queue_type) { | ||
505 | case QTYPE_EQ: | ||
506 | subsys = CMD_SUBSYSTEM_COMMON; | ||
507 | opcode = OPCODE_COMMON_EQ_DESTROY; | ||
508 | break; | ||
509 | case QTYPE_CQ: | ||
510 | subsys = CMD_SUBSYSTEM_COMMON; | ||
511 | opcode = OPCODE_COMMON_CQ_DESTROY; | ||
512 | break; | ||
513 | case QTYPE_TXQ: | ||
514 | subsys = CMD_SUBSYSTEM_ETH; | ||
515 | opcode = OPCODE_ETH_TX_DESTROY; | ||
516 | break; | ||
517 | case QTYPE_RXQ: | ||
518 | subsys = CMD_SUBSYSTEM_ETH; | ||
519 | opcode = OPCODE_ETH_RX_DESTROY; | ||
520 | break; | ||
521 | default: | ||
522 | printk(KERN_WARNING DRV_NAME ":bad Q type in Q destroy cmd\n"); | ||
523 | status = -1; | ||
524 | goto err; | ||
525 | } | ||
526 | be_cmd_hdr_prepare(&req->hdr, subsys, opcode, sizeof(*req)); | ||
527 | req->id = cpu_to_le16(q->id); | ||
528 | |||
529 | status = be_mbox_db_ring(ctrl); | ||
530 | err: | ||
531 | spin_unlock(&ctrl->cmd_lock); | ||
532 | |||
533 | return status; | ||
534 | } | ||
535 | |||
536 | /* Create an rx filtering policy configuration on an i/f */ | ||
537 | int be_cmd_if_create(struct be_ctrl_info *ctrl, u32 flags, u8 *mac, | ||
538 | bool pmac_invalid, u32 *if_handle, u32 *pmac_id) | ||
539 | { | ||
540 | struct be_mcc_wrb *wrb = wrb_from_mbox(&ctrl->mbox_mem); | ||
541 | struct be_cmd_req_if_create *req = embedded_payload(wrb); | ||
542 | int status; | ||
543 | |||
544 | spin_lock(&ctrl->cmd_lock); | ||
545 | memset(wrb, 0, sizeof(*wrb)); | ||
546 | |||
547 | be_wrb_hdr_prepare(wrb, sizeof(*req), true, 0); | ||
548 | |||
549 | be_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_COMMON, | ||
550 | OPCODE_COMMON_NTWK_INTERFACE_CREATE, sizeof(*req)); | ||
551 | |||
552 | req->capability_flags = cpu_to_le32(flags); | ||
553 | req->enable_flags = cpu_to_le32(flags); | ||
554 | if (!pmac_invalid) | ||
555 | memcpy(req->mac_addr, mac, ETH_ALEN); | ||
556 | |||
557 | status = be_mbox_db_ring(ctrl); | ||
558 | if (!status) { | ||
559 | struct be_cmd_resp_if_create *resp = embedded_payload(wrb); | ||
560 | *if_handle = le32_to_cpu(resp->interface_id); | ||
561 | if (!pmac_invalid) | ||
562 | *pmac_id = le32_to_cpu(resp->pmac_id); | ||
563 | } | ||
564 | |||
565 | spin_unlock(&ctrl->cmd_lock); | ||
566 | return status; | ||
567 | } | ||
568 | |||
569 | int be_cmd_if_destroy(struct be_ctrl_info *ctrl, u32 interface_id) | ||
570 | { | ||
571 | struct be_mcc_wrb *wrb = wrb_from_mbox(&ctrl->mbox_mem); | ||
572 | struct be_cmd_req_if_destroy *req = embedded_payload(wrb); | ||
573 | int status; | ||
574 | |||
575 | spin_lock(&ctrl->cmd_lock); | ||
576 | memset(wrb, 0, sizeof(*wrb)); | ||
577 | |||
578 | be_wrb_hdr_prepare(wrb, sizeof(*req), true, 0); | ||
579 | |||
580 | be_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_COMMON, | ||
581 | OPCODE_COMMON_NTWK_INTERFACE_DESTROY, sizeof(*req)); | ||
582 | |||
583 | req->interface_id = cpu_to_le32(interface_id); | ||
584 | status = be_mbox_db_ring(ctrl); | ||
585 | |||
586 | spin_unlock(&ctrl->cmd_lock); | ||
587 | |||
588 | return status; | ||
589 | } | ||
590 | |||
591 | /* Get stats is a non embedded command: the request is not embedded inside | ||
592 | * WRB but is a separate dma memory block | ||
593 | */ | ||
594 | int be_cmd_get_stats(struct be_ctrl_info *ctrl, struct be_dma_mem *nonemb_cmd) | ||
595 | { | ||
596 | struct be_mcc_wrb *wrb = wrb_from_mbox(&ctrl->mbox_mem); | ||
597 | struct be_cmd_req_get_stats *req = nonemb_cmd->va; | ||
598 | struct be_sge *sge = nonembedded_sgl(wrb); | ||
599 | int status; | ||
600 | |||
601 | spin_lock(&ctrl->cmd_lock); | ||
602 | memset(wrb, 0, sizeof(*wrb)); | ||
603 | |||
604 | memset(req, 0, sizeof(*req)); | ||
605 | |||
606 | be_wrb_hdr_prepare(wrb, sizeof(*req), false, 1); | ||
607 | |||
608 | be_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_ETH, | ||
609 | OPCODE_ETH_GET_STATISTICS, sizeof(*req)); | ||
610 | sge->pa_hi = cpu_to_le32(upper_32_bits(nonemb_cmd->dma)); | ||
611 | sge->pa_lo = cpu_to_le32(nonemb_cmd->dma & 0xFFFFFFFF); | ||
612 | sge->len = cpu_to_le32(nonemb_cmd->size); | ||
613 | |||
614 | status = be_mbox_db_ring(ctrl); | ||
615 | if (!status) { | ||
616 | struct be_cmd_resp_get_stats *resp = nonemb_cmd->va; | ||
617 | be_dws_le_to_cpu(&resp->hw_stats, sizeof(resp->hw_stats)); | ||
618 | } | ||
619 | |||
620 | spin_unlock(&ctrl->cmd_lock); | ||
621 | return status; | ||
622 | } | ||
623 | |||
624 | int be_cmd_link_status_query(struct be_ctrl_info *ctrl, | ||
625 | struct be_link_info *link) | ||
626 | { | ||
627 | struct be_mcc_wrb *wrb = wrb_from_mbox(&ctrl->mbox_mem); | ||
628 | struct be_cmd_req_link_status *req = embedded_payload(wrb); | ||
629 | int status; | ||
630 | |||
631 | spin_lock(&ctrl->cmd_lock); | ||
632 | memset(wrb, 0, sizeof(*wrb)); | ||
633 | |||
634 | be_wrb_hdr_prepare(wrb, sizeof(*req), true, 0); | ||
635 | |||
636 | be_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_COMMON, | ||
637 | OPCODE_COMMON_NTWK_LINK_STATUS_QUERY, sizeof(*req)); | ||
638 | |||
639 | status = be_mbox_db_ring(ctrl); | ||
640 | if (!status) { | ||
641 | struct be_cmd_resp_link_status *resp = embedded_payload(wrb); | ||
642 | link->speed = resp->mac_speed; | ||
643 | link->duplex = resp->mac_duplex; | ||
644 | link->fault = resp->mac_fault; | ||
645 | } else { | ||
646 | link->speed = PHY_LINK_SPEED_ZERO; | ||
647 | } | ||
648 | |||
649 | spin_unlock(&ctrl->cmd_lock); | ||
650 | return status; | ||
651 | } | ||
652 | |||
653 | int be_cmd_get_fw_ver(struct be_ctrl_info *ctrl, char *fw_ver) | ||
654 | { | ||
655 | struct be_mcc_wrb *wrb = wrb_from_mbox(&ctrl->mbox_mem); | ||
656 | struct be_cmd_req_get_fw_version *req = embedded_payload(wrb); | ||
657 | int status; | ||
658 | |||
659 | spin_lock(&ctrl->cmd_lock); | ||
660 | memset(wrb, 0, sizeof(*wrb)); | ||
661 | |||
662 | be_wrb_hdr_prepare(wrb, sizeof(*req), true, 0); | ||
663 | |||
664 | be_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_COMMON, | ||
665 | OPCODE_COMMON_GET_FW_VERSION, sizeof(*req)); | ||
666 | |||
667 | status = be_mbox_db_ring(ctrl); | ||
668 | if (!status) { | ||
669 | struct be_cmd_resp_get_fw_version *resp = embedded_payload(wrb); | ||
670 | strncpy(fw_ver, resp->firmware_version_string, FW_VER_LEN); | ||
671 | } | ||
672 | |||
673 | spin_unlock(&ctrl->cmd_lock); | ||
674 | return status; | ||
675 | } | ||
676 | |||
677 | /* set the EQ delay interval of an EQ to specified value */ | ||
678 | int be_cmd_modify_eqd(struct be_ctrl_info *ctrl, u32 eq_id, u32 eqd) | ||
679 | { | ||
680 | struct be_mcc_wrb *wrb = wrb_from_mbox(&ctrl->mbox_mem); | ||
681 | struct be_cmd_req_modify_eq_delay *req = embedded_payload(wrb); | ||
682 | int status; | ||
683 | |||
684 | spin_lock(&ctrl->cmd_lock); | ||
685 | memset(wrb, 0, sizeof(*wrb)); | ||
686 | |||
687 | be_wrb_hdr_prepare(wrb, sizeof(*req), true, 0); | ||
688 | |||
689 | be_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_COMMON, | ||
690 | OPCODE_COMMON_MODIFY_EQ_DELAY, sizeof(*req)); | ||
691 | |||
692 | req->num_eq = cpu_to_le32(1); | ||
693 | req->delay[0].eq_id = cpu_to_le32(eq_id); | ||
694 | req->delay[0].phase = 0; | ||
695 | req->delay[0].delay_multiplier = cpu_to_le32(eqd); | ||
696 | |||
697 | status = be_mbox_db_ring(ctrl); | ||
698 | |||
699 | spin_unlock(&ctrl->cmd_lock); | ||
700 | return status; | ||
701 | } | ||
702 | |||
703 | int be_cmd_vlan_config(struct be_ctrl_info *ctrl, u32 if_id, u16 *vtag_array, | ||
704 | u32 num, bool untagged, bool promiscuous) | ||
705 | { | ||
706 | struct be_mcc_wrb *wrb = wrb_from_mbox(&ctrl->mbox_mem); | ||
707 | struct be_cmd_req_vlan_config *req = embedded_payload(wrb); | ||
708 | int status; | ||
709 | |||
710 | spin_lock(&ctrl->cmd_lock); | ||
711 | memset(wrb, 0, sizeof(*wrb)); | ||
712 | |||
713 | be_wrb_hdr_prepare(wrb, sizeof(*req), true, 0); | ||
714 | |||
715 | be_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_COMMON, | ||
716 | OPCODE_COMMON_NTWK_VLAN_CONFIG, sizeof(*req)); | ||
717 | |||
718 | req->interface_id = if_id; | ||
719 | req->promiscuous = promiscuous; | ||
720 | req->untagged = untagged; | ||
721 | req->num_vlan = num; | ||
722 | if (!promiscuous) { | ||
723 | memcpy(req->normal_vlan, vtag_array, | ||
724 | req->num_vlan * sizeof(vtag_array[0])); | ||
725 | } | ||
726 | |||
727 | status = be_mbox_db_ring(ctrl); | ||
728 | |||
729 | spin_unlock(&ctrl->cmd_lock); | ||
730 | return status; | ||
731 | } | ||
732 | |||
733 | int be_cmd_promiscuous_config(struct be_ctrl_info *ctrl, u8 port_num, bool en) | ||
734 | { | ||
735 | struct be_mcc_wrb *wrb = wrb_from_mbox(&ctrl->mbox_mem); | ||
736 | struct be_cmd_req_promiscuous_config *req = embedded_payload(wrb); | ||
737 | int status; | ||
738 | |||
739 | spin_lock(&ctrl->cmd_lock); | ||
740 | memset(wrb, 0, sizeof(*wrb)); | ||
741 | |||
742 | be_wrb_hdr_prepare(wrb, sizeof(*req), true, 0); | ||
743 | |||
744 | be_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_ETH, | ||
745 | OPCODE_ETH_PROMISCUOUS, sizeof(*req)); | ||
746 | |||
747 | if (port_num) | ||
748 | req->port1_promiscuous = en; | ||
749 | else | ||
750 | req->port0_promiscuous = en; | ||
751 | |||
752 | status = be_mbox_db_ring(ctrl); | ||
753 | |||
754 | spin_unlock(&ctrl->cmd_lock); | ||
755 | return status; | ||
756 | } | ||
757 | |||
758 | int be_cmd_mcast_mac_set(struct be_ctrl_info *ctrl, u32 if_id, u8 *mac_table, | ||
759 | u32 num, bool promiscuous) | ||
760 | { | ||
761 | struct be_mcc_wrb *wrb = wrb_from_mbox(&ctrl->mbox_mem); | ||
762 | struct be_cmd_req_mcast_mac_config *req = embedded_payload(wrb); | ||
763 | int status; | ||
764 | |||
765 | spin_lock(&ctrl->cmd_lock); | ||
766 | memset(wrb, 0, sizeof(*wrb)); | ||
767 | |||
768 | be_wrb_hdr_prepare(wrb, sizeof(*req), true, 0); | ||
769 | |||
770 | be_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_COMMON, | ||
771 | OPCODE_COMMON_NTWK_MULTICAST_SET, sizeof(*req)); | ||
772 | |||
773 | req->interface_id = if_id; | ||
774 | req->promiscuous = promiscuous; | ||
775 | if (!promiscuous) { | ||
776 | req->num_mac = cpu_to_le16(num); | ||
777 | if (num) | ||
778 | memcpy(req->mac, mac_table, ETH_ALEN * num); | ||
779 | } | ||
780 | |||
781 | status = be_mbox_db_ring(ctrl); | ||
782 | |||
783 | spin_unlock(&ctrl->cmd_lock); | ||
784 | return status; | ||
785 | } | ||
786 | |||
787 | int be_cmd_set_flow_control(struct be_ctrl_info *ctrl, u32 tx_fc, u32 rx_fc) | ||
788 | { | ||
789 | struct be_mcc_wrb *wrb = wrb_from_mbox(&ctrl->mbox_mem); | ||
790 | struct be_cmd_req_set_flow_control *req = embedded_payload(wrb); | ||
791 | int status; | ||
792 | |||
793 | spin_lock(&ctrl->cmd_lock); | ||
794 | |||
795 | memset(wrb, 0, sizeof(*wrb)); | ||
796 | |||
797 | be_wrb_hdr_prepare(wrb, sizeof(*req), true, 0); | ||
798 | |||
799 | be_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_COMMON, | ||
800 | OPCODE_COMMON_SET_FLOW_CONTROL, sizeof(*req)); | ||
801 | |||
802 | req->tx_flow_control = cpu_to_le16((u16)tx_fc); | ||
803 | req->rx_flow_control = cpu_to_le16((u16)rx_fc); | ||
804 | |||
805 | status = be_mbox_db_ring(ctrl); | ||
806 | |||
807 | spin_unlock(&ctrl->cmd_lock); | ||
808 | return status; | ||
809 | } | ||
810 | |||
811 | int be_cmd_get_flow_control(struct be_ctrl_info *ctrl, u32 *tx_fc, u32 *rx_fc) | ||
812 | { | ||
813 | struct be_mcc_wrb *wrb = wrb_from_mbox(&ctrl->mbox_mem); | ||
814 | struct be_cmd_req_get_flow_control *req = embedded_payload(wrb); | ||
815 | int status; | ||
816 | |||
817 | spin_lock(&ctrl->cmd_lock); | ||
818 | |||
819 | memset(wrb, 0, sizeof(*wrb)); | ||
820 | |||
821 | be_wrb_hdr_prepare(wrb, sizeof(*req), true, 0); | ||
822 | |||
823 | be_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_COMMON, | ||
824 | OPCODE_COMMON_GET_FLOW_CONTROL, sizeof(*req)); | ||
825 | |||
826 | status = be_mbox_db_ring(ctrl); | ||
827 | if (!status) { | ||
828 | struct be_cmd_resp_get_flow_control *resp = | ||
829 | embedded_payload(wrb); | ||
830 | *tx_fc = le16_to_cpu(resp->tx_flow_control); | ||
831 | *rx_fc = le16_to_cpu(resp->rx_flow_control); | ||
832 | } | ||
833 | |||
834 | spin_unlock(&ctrl->cmd_lock); | ||
835 | return status; | ||
836 | } | ||
837 | |||
838 | int be_cmd_query_fw_cfg(struct be_ctrl_info *ctrl, u32 *port_num) | ||
839 | { | ||
840 | struct be_mcc_wrb *wrb = wrb_from_mbox(&ctrl->mbox_mem); | ||
841 | struct be_cmd_req_query_fw_cfg *req = embedded_payload(wrb); | ||
842 | int status; | ||
843 | |||
844 | spin_lock(&ctrl->cmd_lock); | ||
845 | |||
846 | memset(wrb, 0, sizeof(*wrb)); | ||
847 | |||
848 | be_wrb_hdr_prepare(wrb, sizeof(*req), true, 0); | ||
849 | |||
850 | be_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_COMMON, | ||
851 | OPCODE_COMMON_QUERY_FIRMWARE_CONFIG, sizeof(*req)); | ||
852 | |||
853 | status = be_mbox_db_ring(ctrl); | ||
854 | if (!status) { | ||
855 | struct be_cmd_resp_query_fw_cfg *resp = embedded_payload(wrb); | ||
856 | *port_num = le32_to_cpu(resp->phys_port); | ||
857 | } | ||
858 | |||
859 | spin_unlock(&ctrl->cmd_lock); | ||
860 | return status; | ||
861 | } | ||
diff --git a/drivers/net/benet/be_cmds.h b/drivers/net/benet/be_cmds.h new file mode 100644 index 000000000000..e499e2d5b8c3 --- /dev/null +++ b/drivers/net/benet/be_cmds.h | |||
@@ -0,0 +1,688 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2005 - 2009 ServerEngines | ||
3 | * All rights reserved. | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or | ||
6 | * modify it under the terms of the GNU General Public License version 2 | ||
7 | * as published by the Free Software Foundation. The full GNU General | ||
8 | * Public License is included in this distribution in the file called COPYING. | ||
9 | * | ||
10 | * Contact Information: | ||
11 | * linux-drivers@serverengines.com | ||
12 | * | ||
13 | * ServerEngines | ||
14 | * 209 N. Fair Oaks Ave | ||
15 | * Sunnyvale, CA 94085 | ||
16 | */ | ||
17 | |||
18 | /* | ||
19 | * The driver sends configuration and managements command requests to the | ||
20 | * firmware in the BE. These requests are communicated to the processor | ||
21 | * using Work Request Blocks (WRBs) submitted to the MCC-WRB ring or via one | ||
22 | * WRB inside a MAILBOX. | ||
23 | * The commands are serviced by the ARM processor in the BladeEngine's MPU. | ||
24 | */ | ||
25 | |||
26 | struct be_sge { | ||
27 | u32 pa_lo; | ||
28 | u32 pa_hi; | ||
29 | u32 len; | ||
30 | }; | ||
31 | |||
32 | #define MCC_WRB_EMBEDDED_MASK 1 /* bit 0 of dword 0*/ | ||
33 | #define MCC_WRB_SGE_CNT_SHIFT 3 /* bits 3 - 7 of dword 0 */ | ||
34 | #define MCC_WRB_SGE_CNT_MASK 0x1F /* bits 3 - 7 of dword 0 */ | ||
35 | struct be_mcc_wrb { | ||
36 | u32 embedded; /* dword 0 */ | ||
37 | u32 payload_length; /* dword 1 */ | ||
38 | u32 tag0; /* dword 2 */ | ||
39 | u32 tag1; /* dword 3 */ | ||
40 | u32 rsvd; /* dword 4 */ | ||
41 | union { | ||
42 | u8 embedded_payload[236]; /* used by embedded cmds */ | ||
43 | struct be_sge sgl[19]; /* used by non-embedded cmds */ | ||
44 | } payload; | ||
45 | }; | ||
46 | |||
47 | #define CQE_FLAGS_VALID_MASK (1 << 31) | ||
48 | #define CQE_FLAGS_ASYNC_MASK (1 << 30) | ||
49 | #define CQE_FLAGS_COMPLETED_MASK (1 << 28) | ||
50 | #define CQE_FLAGS_CONSUMED_MASK (1 << 27) | ||
51 | |||
52 | /* Completion Status */ | ||
53 | enum { | ||
54 | MCC_STATUS_SUCCESS = 0x0, | ||
55 | /* The client does not have sufficient privileges to execute the command */ | ||
56 | MCC_STATUS_INSUFFICIENT_PRIVILEGES = 0x1, | ||
57 | /* A parameter in the command was invalid. */ | ||
58 | MCC_STATUS_INVALID_PARAMETER = 0x2, | ||
59 | /* There are insufficient chip resources to execute the command */ | ||
60 | MCC_STATUS_INSUFFICIENT_RESOURCES = 0x3, | ||
61 | /* The command is completing because the queue was getting flushed */ | ||
62 | MCC_STATUS_QUEUE_FLUSHING = 0x4, | ||
63 | /* The command is completing with a DMA error */ | ||
64 | MCC_STATUS_DMA_FAILED = 0x5 | ||
65 | }; | ||
66 | |||
67 | #define CQE_STATUS_COMPL_MASK 0xFFFF | ||
68 | #define CQE_STATUS_COMPL_SHIFT 0 /* bits 0 - 15 */ | ||
69 | #define CQE_STATUS_EXTD_MASK 0xFFFF | ||
70 | #define CQE_STATUS_EXTD_SHIFT 0 /* bits 0 - 15 */ | ||
71 | |||
72 | struct be_mcc_cq_entry { | ||
73 | u32 status; /* dword 0 */ | ||
74 | u32 tag0; /* dword 1 */ | ||
75 | u32 tag1; /* dword 2 */ | ||
76 | u32 flags; /* dword 3 */ | ||
77 | }; | ||
78 | |||
79 | struct be_mcc_mailbox { | ||
80 | struct be_mcc_wrb wrb; | ||
81 | struct be_mcc_cq_entry cqe; | ||
82 | }; | ||
83 | |||
84 | #define CMD_SUBSYSTEM_COMMON 0x1 | ||
85 | #define CMD_SUBSYSTEM_ETH 0x3 | ||
86 | |||
87 | #define OPCODE_COMMON_NTWK_MAC_QUERY 1 | ||
88 | #define OPCODE_COMMON_NTWK_MAC_SET 2 | ||
89 | #define OPCODE_COMMON_NTWK_MULTICAST_SET 3 | ||
90 | #define OPCODE_COMMON_NTWK_VLAN_CONFIG 4 | ||
91 | #define OPCODE_COMMON_NTWK_LINK_STATUS_QUERY 5 | ||
92 | #define OPCODE_COMMON_CQ_CREATE 12 | ||
93 | #define OPCODE_COMMON_EQ_CREATE 13 | ||
94 | #define OPCODE_COMMON_MCC_CREATE 21 | ||
95 | #define OPCODE_COMMON_NTWK_RX_FILTER 34 | ||
96 | #define OPCODE_COMMON_GET_FW_VERSION 35 | ||
97 | #define OPCODE_COMMON_SET_FLOW_CONTROL 36 | ||
98 | #define OPCODE_COMMON_GET_FLOW_CONTROL 37 | ||
99 | #define OPCODE_COMMON_SET_FRAME_SIZE 39 | ||
100 | #define OPCODE_COMMON_MODIFY_EQ_DELAY 41 | ||
101 | #define OPCODE_COMMON_FIRMWARE_CONFIG 42 | ||
102 | #define OPCODE_COMMON_NTWK_INTERFACE_CREATE 50 | ||
103 | #define OPCODE_COMMON_NTWK_INTERFACE_DESTROY 51 | ||
104 | #define OPCODE_COMMON_CQ_DESTROY 54 | ||
105 | #define OPCODE_COMMON_EQ_DESTROY 55 | ||
106 | #define OPCODE_COMMON_QUERY_FIRMWARE_CONFIG 58 | ||
107 | #define OPCODE_COMMON_NTWK_PMAC_ADD 59 | ||
108 | #define OPCODE_COMMON_NTWK_PMAC_DEL 60 | ||
109 | |||
110 | #define OPCODE_ETH_ACPI_CONFIG 2 | ||
111 | #define OPCODE_ETH_PROMISCUOUS 3 | ||
112 | #define OPCODE_ETH_GET_STATISTICS 4 | ||
113 | #define OPCODE_ETH_TX_CREATE 7 | ||
114 | #define OPCODE_ETH_RX_CREATE 8 | ||
115 | #define OPCODE_ETH_TX_DESTROY 9 | ||
116 | #define OPCODE_ETH_RX_DESTROY 10 | ||
117 | |||
118 | struct be_cmd_req_hdr { | ||
119 | u8 opcode; /* dword 0 */ | ||
120 | u8 subsystem; /* dword 0 */ | ||
121 | u8 port_number; /* dword 0 */ | ||
122 | u8 domain; /* dword 0 */ | ||
123 | u32 timeout; /* dword 1 */ | ||
124 | u32 request_length; /* dword 2 */ | ||
125 | u32 rsvd; /* dword 3 */ | ||
126 | }; | ||
127 | |||
128 | #define RESP_HDR_INFO_OPCODE_SHIFT 0 /* bits 0 - 7 */ | ||
129 | #define RESP_HDR_INFO_SUBSYS_SHIFT 8 /* bits 8 - 15 */ | ||
130 | struct be_cmd_resp_hdr { | ||
131 | u32 info; /* dword 0 */ | ||
132 | u32 status; /* dword 1 */ | ||
133 | u32 response_length; /* dword 2 */ | ||
134 | u32 actual_resp_len; /* dword 3 */ | ||
135 | }; | ||
136 | |||
137 | struct phys_addr { | ||
138 | u32 lo; | ||
139 | u32 hi; | ||
140 | }; | ||
141 | |||
142 | /************************** | ||
143 | * BE Command definitions * | ||
144 | **************************/ | ||
145 | |||
146 | /* Pseudo amap definition in which each bit of the actual structure is defined | ||
147 | * as a byte: used to calculate offset/shift/mask of each field */ | ||
148 | struct amap_eq_context { | ||
149 | u8 cidx[13]; /* dword 0*/ | ||
150 | u8 rsvd0[3]; /* dword 0*/ | ||
151 | u8 epidx[13]; /* dword 0*/ | ||
152 | u8 valid; /* dword 0*/ | ||
153 | u8 rsvd1; /* dword 0*/ | ||
154 | u8 size; /* dword 0*/ | ||
155 | u8 pidx[13]; /* dword 1*/ | ||
156 | u8 rsvd2[3]; /* dword 1*/ | ||
157 | u8 pd[10]; /* dword 1*/ | ||
158 | u8 count[3]; /* dword 1*/ | ||
159 | u8 solevent; /* dword 1*/ | ||
160 | u8 stalled; /* dword 1*/ | ||
161 | u8 armed; /* dword 1*/ | ||
162 | u8 rsvd3[4]; /* dword 2*/ | ||
163 | u8 func[8]; /* dword 2*/ | ||
164 | u8 rsvd4; /* dword 2*/ | ||
165 | u8 delaymult[10]; /* dword 2*/ | ||
166 | u8 rsvd5[2]; /* dword 2*/ | ||
167 | u8 phase[2]; /* dword 2*/ | ||
168 | u8 nodelay; /* dword 2*/ | ||
169 | u8 rsvd6[4]; /* dword 2*/ | ||
170 | u8 rsvd7[32]; /* dword 3*/ | ||
171 | } __packed; | ||
172 | |||
173 | struct be_cmd_req_eq_create { | ||
174 | struct be_cmd_req_hdr hdr; | ||
175 | u16 num_pages; /* sword */ | ||
176 | u16 rsvd0; /* sword */ | ||
177 | u8 context[sizeof(struct amap_eq_context) / 8]; | ||
178 | struct phys_addr pages[8]; | ||
179 | } __packed; | ||
180 | |||
181 | struct be_cmd_resp_eq_create { | ||
182 | struct be_cmd_resp_hdr resp_hdr; | ||
183 | u16 eq_id; /* sword */ | ||
184 | u16 rsvd0; /* sword */ | ||
185 | } __packed; | ||
186 | |||
187 | /******************** Mac query ***************************/ | ||
188 | enum { | ||
189 | MAC_ADDRESS_TYPE_STORAGE = 0x0, | ||
190 | MAC_ADDRESS_TYPE_NETWORK = 0x1, | ||
191 | MAC_ADDRESS_TYPE_PD = 0x2, | ||
192 | MAC_ADDRESS_TYPE_MANAGEMENT = 0x3 | ||
193 | }; | ||
194 | |||
195 | struct mac_addr { | ||
196 | u16 size_of_struct; | ||
197 | u8 addr[ETH_ALEN]; | ||
198 | } __packed; | ||
199 | |||
200 | struct be_cmd_req_mac_query { | ||
201 | struct be_cmd_req_hdr hdr; | ||
202 | u8 type; | ||
203 | u8 permanent; | ||
204 | u16 if_id; | ||
205 | } __packed; | ||
206 | |||
207 | struct be_cmd_resp_mac_query { | ||
208 | struct be_cmd_resp_hdr hdr; | ||
209 | struct mac_addr mac; | ||
210 | }; | ||
211 | |||
212 | /******************** PMac Add ***************************/ | ||
213 | struct be_cmd_req_pmac_add { | ||
214 | struct be_cmd_req_hdr hdr; | ||
215 | u32 if_id; | ||
216 | u8 mac_address[ETH_ALEN]; | ||
217 | u8 rsvd0[2]; | ||
218 | } __packed; | ||
219 | |||
220 | struct be_cmd_resp_pmac_add { | ||
221 | struct be_cmd_resp_hdr hdr; | ||
222 | u32 pmac_id; | ||
223 | }; | ||
224 | |||
225 | /******************** PMac Del ***************************/ | ||
226 | struct be_cmd_req_pmac_del { | ||
227 | struct be_cmd_req_hdr hdr; | ||
228 | u32 if_id; | ||
229 | u32 pmac_id; | ||
230 | }; | ||
231 | |||
232 | /******************** Create CQ ***************************/ | ||
233 | /* Pseudo amap definition in which each bit of the actual structure is defined | ||
234 | * as a byte: used to calculate offset/shift/mask of each field */ | ||
235 | struct amap_cq_context { | ||
236 | u8 cidx[11]; /* dword 0*/ | ||
237 | u8 rsvd0; /* dword 0*/ | ||
238 | u8 coalescwm[2]; /* dword 0*/ | ||
239 | u8 nodelay; /* dword 0*/ | ||
240 | u8 epidx[11]; /* dword 0*/ | ||
241 | u8 rsvd1; /* dword 0*/ | ||
242 | u8 count[2]; /* dword 0*/ | ||
243 | u8 valid; /* dword 0*/ | ||
244 | u8 solevent; /* dword 0*/ | ||
245 | u8 eventable; /* dword 0*/ | ||
246 | u8 pidx[11]; /* dword 1*/ | ||
247 | u8 rsvd2; /* dword 1*/ | ||
248 | u8 pd[10]; /* dword 1*/ | ||
249 | u8 eqid[8]; /* dword 1*/ | ||
250 | u8 stalled; /* dword 1*/ | ||
251 | u8 armed; /* dword 1*/ | ||
252 | u8 rsvd3[4]; /* dword 2*/ | ||
253 | u8 func[8]; /* dword 2*/ | ||
254 | u8 rsvd4[20]; /* dword 2*/ | ||
255 | u8 rsvd5[32]; /* dword 3*/ | ||
256 | } __packed; | ||
257 | |||
258 | struct be_cmd_req_cq_create { | ||
259 | struct be_cmd_req_hdr hdr; | ||
260 | u16 num_pages; | ||
261 | u16 rsvd0; | ||
262 | u8 context[sizeof(struct amap_cq_context) / 8]; | ||
263 | struct phys_addr pages[8]; | ||
264 | } __packed; | ||
265 | |||
266 | struct be_cmd_resp_cq_create { | ||
267 | struct be_cmd_resp_hdr hdr; | ||
268 | u16 cq_id; | ||
269 | u16 rsvd0; | ||
270 | } __packed; | ||
271 | |||
272 | /******************** Create TxQ ***************************/ | ||
273 | #define BE_ETH_TX_RING_TYPE_STANDARD 2 | ||
274 | #define BE_ULP1_NUM 1 | ||
275 | |||
276 | /* Pseudo amap definition in which each bit of the actual structure is defined | ||
277 | * as a byte: used to calculate offset/shift/mask of each field */ | ||
278 | struct amap_tx_context { | ||
279 | u8 rsvd0[16]; /* dword 0 */ | ||
280 | u8 tx_ring_size[4]; /* dword 0 */ | ||
281 | u8 rsvd1[26]; /* dword 0 */ | ||
282 | u8 pci_func_id[8]; /* dword 1 */ | ||
283 | u8 rsvd2[9]; /* dword 1 */ | ||
284 | u8 ctx_valid; /* dword 1 */ | ||
285 | u8 cq_id_send[16]; /* dword 2 */ | ||
286 | u8 rsvd3[16]; /* dword 2 */ | ||
287 | u8 rsvd4[32]; /* dword 3 */ | ||
288 | u8 rsvd5[32]; /* dword 4 */ | ||
289 | u8 rsvd6[32]; /* dword 5 */ | ||
290 | u8 rsvd7[32]; /* dword 6 */ | ||
291 | u8 rsvd8[32]; /* dword 7 */ | ||
292 | u8 rsvd9[32]; /* dword 8 */ | ||
293 | u8 rsvd10[32]; /* dword 9 */ | ||
294 | u8 rsvd11[32]; /* dword 10 */ | ||
295 | u8 rsvd12[32]; /* dword 11 */ | ||
296 | u8 rsvd13[32]; /* dword 12 */ | ||
297 | u8 rsvd14[32]; /* dword 13 */ | ||
298 | u8 rsvd15[32]; /* dword 14 */ | ||
299 | u8 rsvd16[32]; /* dword 15 */ | ||
300 | } __packed; | ||
301 | |||
302 | struct be_cmd_req_eth_tx_create { | ||
303 | struct be_cmd_req_hdr hdr; | ||
304 | u8 num_pages; | ||
305 | u8 ulp_num; | ||
306 | u8 type; | ||
307 | u8 bound_port; | ||
308 | u8 context[sizeof(struct amap_tx_context) / 8]; | ||
309 | struct phys_addr pages[8]; | ||
310 | } __packed; | ||
311 | |||
312 | struct be_cmd_resp_eth_tx_create { | ||
313 | struct be_cmd_resp_hdr hdr; | ||
314 | u16 cid; | ||
315 | u16 rsvd0; | ||
316 | } __packed; | ||
317 | |||
318 | /******************** Create RxQ ***************************/ | ||
319 | struct be_cmd_req_eth_rx_create { | ||
320 | struct be_cmd_req_hdr hdr; | ||
321 | u16 cq_id; | ||
322 | u8 frag_size; | ||
323 | u8 num_pages; | ||
324 | struct phys_addr pages[2]; | ||
325 | u32 interface_id; | ||
326 | u16 max_frame_size; | ||
327 | u16 rsvd0; | ||
328 | u32 rss_queue; | ||
329 | } __packed; | ||
330 | |||
331 | struct be_cmd_resp_eth_rx_create { | ||
332 | struct be_cmd_resp_hdr hdr; | ||
333 | u16 id; | ||
334 | u8 cpu_id; | ||
335 | u8 rsvd0; | ||
336 | } __packed; | ||
337 | |||
338 | /******************** Q Destroy ***************************/ | ||
339 | /* Type of Queue to be destroyed */ | ||
340 | enum { | ||
341 | QTYPE_EQ = 1, | ||
342 | QTYPE_CQ, | ||
343 | QTYPE_TXQ, | ||
344 | QTYPE_RXQ | ||
345 | }; | ||
346 | |||
347 | struct be_cmd_req_q_destroy { | ||
348 | struct be_cmd_req_hdr hdr; | ||
349 | u16 id; | ||
350 | u16 bypass_flush; /* valid only for rx q destroy */ | ||
351 | } __packed; | ||
352 | |||
353 | /************ I/f Create (it's actually I/f Config Create)**********/ | ||
354 | |||
355 | /* Capability flags for the i/f */ | ||
356 | enum be_if_flags { | ||
357 | BE_IF_FLAGS_RSS = 0x4, | ||
358 | BE_IF_FLAGS_PROMISCUOUS = 0x8, | ||
359 | BE_IF_FLAGS_BROADCAST = 0x10, | ||
360 | BE_IF_FLAGS_UNTAGGED = 0x20, | ||
361 | BE_IF_FLAGS_ULP = 0x40, | ||
362 | BE_IF_FLAGS_VLAN_PROMISCUOUS = 0x80, | ||
363 | BE_IF_FLAGS_VLAN = 0x100, | ||
364 | BE_IF_FLAGS_MCAST_PROMISCUOUS = 0x200, | ||
365 | BE_IF_FLAGS_PASS_L2_ERRORS = 0x400, | ||
366 | BE_IF_FLAGS_PASS_L3L4_ERRORS = 0x800 | ||
367 | }; | ||
368 | |||
369 | /* An RX interface is an object with one or more MAC addresses and | ||
370 | * filtering capabilities. */ | ||
371 | struct be_cmd_req_if_create { | ||
372 | struct be_cmd_req_hdr hdr; | ||
373 | u32 version; /* ignore currntly */ | ||
374 | u32 capability_flags; | ||
375 | u32 enable_flags; | ||
376 | u8 mac_addr[ETH_ALEN]; | ||
377 | u8 rsvd0; | ||
378 | u8 pmac_invalid; /* if set, don't attach the mac addr to the i/f */ | ||
379 | u32 vlan_tag; /* not used currently */ | ||
380 | } __packed; | ||
381 | |||
382 | struct be_cmd_resp_if_create { | ||
383 | struct be_cmd_resp_hdr hdr; | ||
384 | u32 interface_id; | ||
385 | u32 pmac_id; | ||
386 | }; | ||
387 | |||
388 | /****** I/f Destroy(it's actually I/f Config Destroy )**********/ | ||
389 | struct be_cmd_req_if_destroy { | ||
390 | struct be_cmd_req_hdr hdr; | ||
391 | u32 interface_id; | ||
392 | }; | ||
393 | |||
394 | /*************** HW Stats Get **********************************/ | ||
395 | struct be_port_rxf_stats { | ||
396 | u32 rx_bytes_lsd; /* dword 0*/ | ||
397 | u32 rx_bytes_msd; /* dword 1*/ | ||
398 | u32 rx_total_frames; /* dword 2*/ | ||
399 | u32 rx_unicast_frames; /* dword 3*/ | ||
400 | u32 rx_multicast_frames; /* dword 4*/ | ||
401 | u32 rx_broadcast_frames; /* dword 5*/ | ||
402 | u32 rx_crc_errors; /* dword 6*/ | ||
403 | u32 rx_alignment_symbol_errors; /* dword 7*/ | ||
404 | u32 rx_pause_frames; /* dword 8*/ | ||
405 | u32 rx_control_frames; /* dword 9*/ | ||
406 | u32 rx_in_range_errors; /* dword 10*/ | ||
407 | u32 rx_out_range_errors; /* dword 11*/ | ||
408 | u32 rx_frame_too_long; /* dword 12*/ | ||
409 | u32 rx_address_match_errors; /* dword 13*/ | ||
410 | u32 rx_vlan_mismatch; /* dword 14*/ | ||
411 | u32 rx_dropped_too_small; /* dword 15*/ | ||
412 | u32 rx_dropped_too_short; /* dword 16*/ | ||
413 | u32 rx_dropped_header_too_small; /* dword 17*/ | ||
414 | u32 rx_dropped_tcp_length; /* dword 18*/ | ||
415 | u32 rx_dropped_runt; /* dword 19*/ | ||
416 | u32 rx_64_byte_packets; /* dword 20*/ | ||
417 | u32 rx_65_127_byte_packets; /* dword 21*/ | ||
418 | u32 rx_128_256_byte_packets; /* dword 22*/ | ||
419 | u32 rx_256_511_byte_packets; /* dword 23*/ | ||
420 | u32 rx_512_1023_byte_packets; /* dword 24*/ | ||
421 | u32 rx_1024_1518_byte_packets; /* dword 25*/ | ||
422 | u32 rx_1519_2047_byte_packets; /* dword 26*/ | ||
423 | u32 rx_2048_4095_byte_packets; /* dword 27*/ | ||
424 | u32 rx_4096_8191_byte_packets; /* dword 28*/ | ||
425 | u32 rx_8192_9216_byte_packets; /* dword 29*/ | ||
426 | u32 rx_ip_checksum_errs; /* dword 30*/ | ||
427 | u32 rx_tcp_checksum_errs; /* dword 31*/ | ||
428 | u32 rx_udp_checksum_errs; /* dword 32*/ | ||
429 | u32 rx_non_rss_packets; /* dword 33*/ | ||
430 | u32 rx_ipv4_packets; /* dword 34*/ | ||
431 | u32 rx_ipv6_packets; /* dword 35*/ | ||
432 | u32 rx_ipv4_bytes_lsd; /* dword 36*/ | ||
433 | u32 rx_ipv4_bytes_msd; /* dword 37*/ | ||
434 | u32 rx_ipv6_bytes_lsd; /* dword 38*/ | ||
435 | u32 rx_ipv6_bytes_msd; /* dword 39*/ | ||
436 | u32 rx_chute1_packets; /* dword 40*/ | ||
437 | u32 rx_chute2_packets; /* dword 41*/ | ||
438 | u32 rx_chute3_packets; /* dword 42*/ | ||
439 | u32 rx_management_packets; /* dword 43*/ | ||
440 | u32 rx_switched_unicast_packets; /* dword 44*/ | ||
441 | u32 rx_switched_multicast_packets; /* dword 45*/ | ||
442 | u32 rx_switched_broadcast_packets; /* dword 46*/ | ||
443 | u32 tx_bytes_lsd; /* dword 47*/ | ||
444 | u32 tx_bytes_msd; /* dword 48*/ | ||
445 | u32 tx_unicastframes; /* dword 49*/ | ||
446 | u32 tx_multicastframes; /* dword 50*/ | ||
447 | u32 tx_broadcastframes; /* dword 51*/ | ||
448 | u32 tx_pauseframes; /* dword 52*/ | ||
449 | u32 tx_controlframes; /* dword 53*/ | ||
450 | u32 tx_64_byte_packets; /* dword 54*/ | ||
451 | u32 tx_65_127_byte_packets; /* dword 55*/ | ||
452 | u32 tx_128_256_byte_packets; /* dword 56*/ | ||
453 | u32 tx_256_511_byte_packets; /* dword 57*/ | ||
454 | u32 tx_512_1023_byte_packets; /* dword 58*/ | ||
455 | u32 tx_1024_1518_byte_packets; /* dword 59*/ | ||
456 | u32 tx_1519_2047_byte_packets; /* dword 60*/ | ||
457 | u32 tx_2048_4095_byte_packets; /* dword 61*/ | ||
458 | u32 tx_4096_8191_byte_packets; /* dword 62*/ | ||
459 | u32 tx_8192_9216_byte_packets; /* dword 63*/ | ||
460 | u32 rx_fifo_overflow; /* dword 64*/ | ||
461 | u32 rx_input_fifo_overflow; /* dword 65*/ | ||
462 | }; | ||
463 | |||
464 | struct be_rxf_stats { | ||
465 | struct be_port_rxf_stats port[2]; | ||
466 | u32 rx_drops_no_pbuf; /* dword 132*/ | ||
467 | u32 rx_drops_no_txpb; /* dword 133*/ | ||
468 | u32 rx_drops_no_erx_descr; /* dword 134*/ | ||
469 | u32 rx_drops_no_tpre_descr; /* dword 135*/ | ||
470 | u32 management_rx_port_packets; /* dword 136*/ | ||
471 | u32 management_rx_port_bytes; /* dword 137*/ | ||
472 | u32 management_rx_port_pause_frames; /* dword 138*/ | ||
473 | u32 management_rx_port_errors; /* dword 139*/ | ||
474 | u32 management_tx_port_packets; /* dword 140*/ | ||
475 | u32 management_tx_port_bytes; /* dword 141*/ | ||
476 | u32 management_tx_port_pause; /* dword 142*/ | ||
477 | u32 management_rx_port_rxfifo_overflow; /* dword 143*/ | ||
478 | u32 rx_drops_too_many_frags; /* dword 144*/ | ||
479 | u32 rx_drops_invalid_ring; /* dword 145*/ | ||
480 | u32 forwarded_packets; /* dword 146*/ | ||
481 | u32 rx_drops_mtu; /* dword 147*/ | ||
482 | u32 rsvd0[15]; | ||
483 | }; | ||
484 | |||
485 | struct be_erx_stats { | ||
486 | u32 rx_drops_no_fragments[44]; /* dwordS 0 to 43*/ | ||
487 | u32 debug_wdma_sent_hold; /* dword 44*/ | ||
488 | u32 debug_wdma_pbfree_sent_hold; /* dword 45*/ | ||
489 | u32 debug_wdma_zerobyte_pbfree_sent_hold; /* dword 46*/ | ||
490 | u32 debug_pmem_pbuf_dealloc; /* dword 47*/ | ||
491 | }; | ||
492 | |||
493 | struct be_hw_stats { | ||
494 | struct be_rxf_stats rxf; | ||
495 | u32 rsvd[48]; | ||
496 | struct be_erx_stats erx; | ||
497 | }; | ||
498 | |||
499 | struct be_cmd_req_get_stats { | ||
500 | struct be_cmd_req_hdr hdr; | ||
501 | u8 rsvd[sizeof(struct be_hw_stats)]; | ||
502 | }; | ||
503 | |||
504 | struct be_cmd_resp_get_stats { | ||
505 | struct be_cmd_resp_hdr hdr; | ||
506 | struct be_hw_stats hw_stats; | ||
507 | }; | ||
508 | |||
509 | struct be_cmd_req_vlan_config { | ||
510 | struct be_cmd_req_hdr hdr; | ||
511 | u8 interface_id; | ||
512 | u8 promiscuous; | ||
513 | u8 untagged; | ||
514 | u8 num_vlan; | ||
515 | u16 normal_vlan[64]; | ||
516 | } __packed; | ||
517 | |||
518 | struct be_cmd_req_promiscuous_config { | ||
519 | struct be_cmd_req_hdr hdr; | ||
520 | u8 port0_promiscuous; | ||
521 | u8 port1_promiscuous; | ||
522 | u16 rsvd0; | ||
523 | } __packed; | ||
524 | |||
525 | struct macaddr { | ||
526 | u8 byte[ETH_ALEN]; | ||
527 | }; | ||
528 | |||
529 | struct be_cmd_req_mcast_mac_config { | ||
530 | struct be_cmd_req_hdr hdr; | ||
531 | u16 num_mac; | ||
532 | u8 promiscuous; | ||
533 | u8 interface_id; | ||
534 | struct macaddr mac[32]; | ||
535 | } __packed; | ||
536 | |||
537 | static inline struct be_hw_stats * | ||
538 | hw_stats_from_cmd(struct be_cmd_resp_get_stats *cmd) | ||
539 | { | ||
540 | return &cmd->hw_stats; | ||
541 | } | ||
542 | |||
543 | /******************** Link Status Query *******************/ | ||
544 | struct be_cmd_req_link_status { | ||
545 | struct be_cmd_req_hdr hdr; | ||
546 | u32 rsvd; | ||
547 | }; | ||
548 | |||
549 | struct be_link_info { | ||
550 | u8 duplex; | ||
551 | u8 speed; | ||
552 | u8 fault; | ||
553 | }; | ||
554 | |||
555 | enum { | ||
556 | PHY_LINK_DUPLEX_NONE = 0x0, | ||
557 | PHY_LINK_DUPLEX_HALF = 0x1, | ||
558 | PHY_LINK_DUPLEX_FULL = 0x2 | ||
559 | }; | ||
560 | |||
561 | enum { | ||
562 | PHY_LINK_SPEED_ZERO = 0x0, /* => No link */ | ||
563 | PHY_LINK_SPEED_10MBPS = 0x1, | ||
564 | PHY_LINK_SPEED_100MBPS = 0x2, | ||
565 | PHY_LINK_SPEED_1GBPS = 0x3, | ||
566 | PHY_LINK_SPEED_10GBPS = 0x4 | ||
567 | }; | ||
568 | |||
569 | struct be_cmd_resp_link_status { | ||
570 | struct be_cmd_resp_hdr hdr; | ||
571 | u8 physical_port; | ||
572 | u8 mac_duplex; | ||
573 | u8 mac_speed; | ||
574 | u8 mac_fault; | ||
575 | u8 mgmt_mac_duplex; | ||
576 | u8 mgmt_mac_speed; | ||
577 | u16 rsvd0; | ||
578 | } __packed; | ||
579 | |||
580 | /******************** Get FW Version *******************/ | ||
581 | #define FW_VER_LEN 32 | ||
582 | struct be_cmd_req_get_fw_version { | ||
583 | struct be_cmd_req_hdr hdr; | ||
584 | u8 rsvd0[FW_VER_LEN]; | ||
585 | u8 rsvd1[FW_VER_LEN]; | ||
586 | } __packed; | ||
587 | |||
588 | struct be_cmd_resp_get_fw_version { | ||
589 | struct be_cmd_resp_hdr hdr; | ||
590 | u8 firmware_version_string[FW_VER_LEN]; | ||
591 | u8 fw_on_flash_version_string[FW_VER_LEN]; | ||
592 | } __packed; | ||
593 | |||
594 | /******************** Set Flow Contrl *******************/ | ||
595 | struct be_cmd_req_set_flow_control { | ||
596 | struct be_cmd_req_hdr hdr; | ||
597 | u16 tx_flow_control; | ||
598 | u16 rx_flow_control; | ||
599 | } __packed; | ||
600 | |||
601 | /******************** Get Flow Contrl *******************/ | ||
602 | struct be_cmd_req_get_flow_control { | ||
603 | struct be_cmd_req_hdr hdr; | ||
604 | u32 rsvd; | ||
605 | }; | ||
606 | |||
607 | struct be_cmd_resp_get_flow_control { | ||
608 | struct be_cmd_resp_hdr hdr; | ||
609 | u16 tx_flow_control; | ||
610 | u16 rx_flow_control; | ||
611 | } __packed; | ||
612 | |||
613 | /******************** Modify EQ Delay *******************/ | ||
614 | struct be_cmd_req_modify_eq_delay { | ||
615 | struct be_cmd_req_hdr hdr; | ||
616 | u32 num_eq; | ||
617 | struct { | ||
618 | u32 eq_id; | ||
619 | u32 phase; | ||
620 | u32 delay_multiplier; | ||
621 | } delay[8]; | ||
622 | } __packed; | ||
623 | |||
624 | struct be_cmd_resp_modify_eq_delay { | ||
625 | struct be_cmd_resp_hdr hdr; | ||
626 | u32 rsvd0; | ||
627 | } __packed; | ||
628 | |||
629 | /******************** Get FW Config *******************/ | ||
630 | struct be_cmd_req_query_fw_cfg { | ||
631 | struct be_cmd_req_hdr hdr; | ||
632 | u32 rsvd[30]; | ||
633 | }; | ||
634 | |||
635 | struct be_cmd_resp_query_fw_cfg { | ||
636 | struct be_cmd_resp_hdr hdr; | ||
637 | u32 be_config_number; | ||
638 | u32 asic_revision; | ||
639 | u32 phys_port; | ||
640 | u32 function_mode; | ||
641 | u32 rsvd[26]; | ||
642 | }; | ||
643 | |||
644 | extern int be_pci_fnum_get(struct be_ctrl_info *ctrl); | ||
645 | extern int be_cmd_POST(struct be_ctrl_info *ctrl); | ||
646 | extern int be_cmd_mac_addr_query(struct be_ctrl_info *ctrl, u8 *mac_addr, | ||
647 | u8 type, bool permanent, u32 if_handle); | ||
648 | extern int be_cmd_pmac_add(struct be_ctrl_info *ctrl, u8 *mac_addr, | ||
649 | u32 if_id, u32 *pmac_id); | ||
650 | extern int be_cmd_pmac_del(struct be_ctrl_info *ctrl, u32 if_id, u32 pmac_id); | ||
651 | extern int be_cmd_if_create(struct be_ctrl_info *ctrl, u32 if_flags, u8 *mac, | ||
652 | bool pmac_invalid, u32 *if_handle, u32 *pmac_id); | ||
653 | extern int be_cmd_if_destroy(struct be_ctrl_info *ctrl, u32 if_handle); | ||
654 | extern int be_cmd_eq_create(struct be_ctrl_info *ctrl, | ||
655 | struct be_queue_info *eq, int eq_delay); | ||
656 | extern int be_cmd_cq_create(struct be_ctrl_info *ctrl, | ||
657 | struct be_queue_info *cq, struct be_queue_info *eq, | ||
658 | bool sol_evts, bool no_delay, | ||
659 | int num_cqe_dma_coalesce); | ||
660 | extern int be_cmd_txq_create(struct be_ctrl_info *ctrl, | ||
661 | struct be_queue_info *txq, | ||
662 | struct be_queue_info *cq); | ||
663 | extern int be_cmd_rxq_create(struct be_ctrl_info *ctrl, | ||
664 | struct be_queue_info *rxq, u16 cq_id, | ||
665 | u16 frag_size, u16 max_frame_size, u32 if_id, | ||
666 | u32 rss); | ||
667 | extern int be_cmd_q_destroy(struct be_ctrl_info *ctrl, struct be_queue_info *q, | ||
668 | int type); | ||
669 | extern int be_cmd_link_status_query(struct be_ctrl_info *ctrl, | ||
670 | struct be_link_info *link); | ||
671 | extern int be_cmd_reset(struct be_ctrl_info *ctrl); | ||
672 | extern int be_cmd_get_stats(struct be_ctrl_info *ctrl, | ||
673 | struct be_dma_mem *nonemb_cmd); | ||
674 | extern int be_cmd_get_fw_ver(struct be_ctrl_info *ctrl, char *fw_ver); | ||
675 | |||
676 | extern int be_cmd_modify_eqd(struct be_ctrl_info *ctrl, u32 eq_id, u32 eqd); | ||
677 | extern int be_cmd_vlan_config(struct be_ctrl_info *ctrl, u32 if_id, | ||
678 | u16 *vtag_array, u32 num, bool untagged, | ||
679 | bool promiscuous); | ||
680 | extern int be_cmd_promiscuous_config(struct be_ctrl_info *ctrl, | ||
681 | u8 port_num, bool en); | ||
682 | extern int be_cmd_mcast_mac_set(struct be_ctrl_info *ctrl, u32 if_id, | ||
683 | u8 *mac_table, u32 num, bool promiscuous); | ||
684 | extern int be_cmd_set_flow_control(struct be_ctrl_info *ctrl, | ||
685 | u32 tx_fc, u32 rx_fc); | ||
686 | extern int be_cmd_get_flow_control(struct be_ctrl_info *ctrl, | ||
687 | u32 *tx_fc, u32 *rx_fc); | ||
688 | extern int be_cmd_query_fw_cfg(struct be_ctrl_info *ctrl, u32 *port_num); | ||
diff --git a/drivers/net/benet/be_ethtool.c b/drivers/net/benet/be_ethtool.c new file mode 100644 index 000000000000..04f4b73fa8d8 --- /dev/null +++ b/drivers/net/benet/be_ethtool.c | |||
@@ -0,0 +1,362 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2005 - 2009 ServerEngines | ||
3 | * All rights reserved. | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or | ||
6 | * modify it under the terms of the GNU General Public License version 2 | ||
7 | * as published by the Free Software Foundation. The full GNU General | ||
8 | * Public License is included in this distribution in the file called COPYING. | ||
9 | * | ||
10 | * Contact Information: | ||
11 | * linux-drivers@serverengines.com | ||
12 | * | ||
13 | * ServerEngines | ||
14 | * 209 N. Fair Oaks Ave | ||
15 | * Sunnyvale, CA 94085 | ||
16 | */ | ||
17 | |||
18 | #include "be.h" | ||
19 | #include <linux/ethtool.h> | ||
20 | |||
21 | struct be_ethtool_stat { | ||
22 | char desc[ETH_GSTRING_LEN]; | ||
23 | int type; | ||
24 | int size; | ||
25 | int offset; | ||
26 | }; | ||
27 | |||
28 | enum {NETSTAT, PORTSTAT, MISCSTAT, DRVSTAT, ERXSTAT}; | ||
29 | #define FIELDINFO(_struct, field) FIELD_SIZEOF(_struct, field), \ | ||
30 | offsetof(_struct, field) | ||
31 | #define NETSTAT_INFO(field) #field, NETSTAT,\ | ||
32 | FIELDINFO(struct net_device_stats,\ | ||
33 | field) | ||
34 | #define DRVSTAT_INFO(field) #field, DRVSTAT,\ | ||
35 | FIELDINFO(struct be_drvr_stats, field) | ||
36 | #define MISCSTAT_INFO(field) #field, MISCSTAT,\ | ||
37 | FIELDINFO(struct be_rxf_stats, field) | ||
38 | #define PORTSTAT_INFO(field) #field, PORTSTAT,\ | ||
39 | FIELDINFO(struct be_port_rxf_stats, \ | ||
40 | field) | ||
41 | #define ERXSTAT_INFO(field) #field, ERXSTAT,\ | ||
42 | FIELDINFO(struct be_erx_stats, field) | ||
43 | |||
44 | static const struct be_ethtool_stat et_stats[] = { | ||
45 | {NETSTAT_INFO(rx_packets)}, | ||
46 | {NETSTAT_INFO(tx_packets)}, | ||
47 | {NETSTAT_INFO(rx_bytes)}, | ||
48 | {NETSTAT_INFO(tx_bytes)}, | ||
49 | {NETSTAT_INFO(rx_errors)}, | ||
50 | {NETSTAT_INFO(tx_errors)}, | ||
51 | {NETSTAT_INFO(rx_dropped)}, | ||
52 | {NETSTAT_INFO(tx_dropped)}, | ||
53 | {DRVSTAT_INFO(be_tx_reqs)}, | ||
54 | {DRVSTAT_INFO(be_tx_stops)}, | ||
55 | {DRVSTAT_INFO(be_fwd_reqs)}, | ||
56 | {DRVSTAT_INFO(be_tx_wrbs)}, | ||
57 | {DRVSTAT_INFO(be_polls)}, | ||
58 | {DRVSTAT_INFO(be_tx_events)}, | ||
59 | {DRVSTAT_INFO(be_rx_events)}, | ||
60 | {DRVSTAT_INFO(be_tx_compl)}, | ||
61 | {DRVSTAT_INFO(be_rx_compl)}, | ||
62 | {DRVSTAT_INFO(be_ethrx_post_fail)}, | ||
63 | {DRVSTAT_INFO(be_802_3_dropped_frames)}, | ||
64 | {DRVSTAT_INFO(be_802_3_malformed_frames)}, | ||
65 | {DRVSTAT_INFO(be_tx_rate)}, | ||
66 | {DRVSTAT_INFO(be_rx_rate)}, | ||
67 | {PORTSTAT_INFO(rx_unicast_frames)}, | ||
68 | {PORTSTAT_INFO(rx_multicast_frames)}, | ||
69 | {PORTSTAT_INFO(rx_broadcast_frames)}, | ||
70 | {PORTSTAT_INFO(rx_crc_errors)}, | ||
71 | {PORTSTAT_INFO(rx_alignment_symbol_errors)}, | ||
72 | {PORTSTAT_INFO(rx_pause_frames)}, | ||
73 | {PORTSTAT_INFO(rx_control_frames)}, | ||
74 | {PORTSTAT_INFO(rx_in_range_errors)}, | ||
75 | {PORTSTAT_INFO(rx_out_range_errors)}, | ||
76 | {PORTSTAT_INFO(rx_frame_too_long)}, | ||
77 | {PORTSTAT_INFO(rx_address_match_errors)}, | ||
78 | {PORTSTAT_INFO(rx_vlan_mismatch)}, | ||
79 | {PORTSTAT_INFO(rx_dropped_too_small)}, | ||
80 | {PORTSTAT_INFO(rx_dropped_too_short)}, | ||
81 | {PORTSTAT_INFO(rx_dropped_header_too_small)}, | ||
82 | {PORTSTAT_INFO(rx_dropped_tcp_length)}, | ||
83 | {PORTSTAT_INFO(rx_dropped_runt)}, | ||
84 | {PORTSTAT_INFO(rx_fifo_overflow)}, | ||
85 | {PORTSTAT_INFO(rx_input_fifo_overflow)}, | ||
86 | {PORTSTAT_INFO(rx_ip_checksum_errs)}, | ||
87 | {PORTSTAT_INFO(rx_tcp_checksum_errs)}, | ||
88 | {PORTSTAT_INFO(rx_udp_checksum_errs)}, | ||
89 | {PORTSTAT_INFO(rx_non_rss_packets)}, | ||
90 | {PORTSTAT_INFO(rx_ipv4_packets)}, | ||
91 | {PORTSTAT_INFO(rx_ipv6_packets)}, | ||
92 | {PORTSTAT_INFO(tx_unicastframes)}, | ||
93 | {PORTSTAT_INFO(tx_multicastframes)}, | ||
94 | {PORTSTAT_INFO(tx_broadcastframes)}, | ||
95 | {PORTSTAT_INFO(tx_pauseframes)}, | ||
96 | {PORTSTAT_INFO(tx_controlframes)}, | ||
97 | {MISCSTAT_INFO(rx_drops_no_pbuf)}, | ||
98 | {MISCSTAT_INFO(rx_drops_no_txpb)}, | ||
99 | {MISCSTAT_INFO(rx_drops_no_erx_descr)}, | ||
100 | {MISCSTAT_INFO(rx_drops_no_tpre_descr)}, | ||
101 | {MISCSTAT_INFO(rx_drops_too_many_frags)}, | ||
102 | {MISCSTAT_INFO(rx_drops_invalid_ring)}, | ||
103 | {MISCSTAT_INFO(forwarded_packets)}, | ||
104 | {MISCSTAT_INFO(rx_drops_mtu)}, | ||
105 | {ERXSTAT_INFO(rx_drops_no_fragments)}, | ||
106 | }; | ||
107 | #define ETHTOOL_STATS_NUM ARRAY_SIZE(et_stats) | ||
108 | |||
109 | static void | ||
110 | be_get_drvinfo(struct net_device *netdev, struct ethtool_drvinfo *drvinfo) | ||
111 | { | ||
112 | struct be_adapter *adapter = netdev_priv(netdev); | ||
113 | |||
114 | strcpy(drvinfo->driver, DRV_NAME); | ||
115 | strcpy(drvinfo->version, DRV_VER); | ||
116 | strncpy(drvinfo->fw_version, adapter->fw_ver, FW_VER_LEN); | ||
117 | strcpy(drvinfo->bus_info, pci_name(adapter->pdev)); | ||
118 | drvinfo->testinfo_len = 0; | ||
119 | drvinfo->regdump_len = 0; | ||
120 | drvinfo->eedump_len = 0; | ||
121 | } | ||
122 | |||
123 | static int | ||
124 | be_get_coalesce(struct net_device *netdev, struct ethtool_coalesce *coalesce) | ||
125 | { | ||
126 | struct be_adapter *adapter = netdev_priv(netdev); | ||
127 | struct be_eq_obj *rx_eq = &adapter->rx_eq; | ||
128 | struct be_eq_obj *tx_eq = &adapter->tx_eq; | ||
129 | |||
130 | coalesce->rx_max_coalesced_frames = adapter->max_rx_coal; | ||
131 | |||
132 | coalesce->rx_coalesce_usecs = rx_eq->cur_eqd; | ||
133 | coalesce->rx_coalesce_usecs_high = rx_eq->max_eqd; | ||
134 | coalesce->rx_coalesce_usecs_low = rx_eq->min_eqd; | ||
135 | |||
136 | coalesce->tx_coalesce_usecs = tx_eq->cur_eqd; | ||
137 | coalesce->tx_coalesce_usecs_high = tx_eq->max_eqd; | ||
138 | coalesce->tx_coalesce_usecs_low = tx_eq->min_eqd; | ||
139 | |||
140 | coalesce->use_adaptive_rx_coalesce = rx_eq->enable_aic; | ||
141 | coalesce->use_adaptive_tx_coalesce = tx_eq->enable_aic; | ||
142 | |||
143 | return 0; | ||
144 | } | ||
145 | |||
146 | /* | ||
147 | * This routine is used to set interrup coalescing delay *as well as* | ||
148 | * the number of pkts to coalesce for LRO. | ||
149 | */ | ||
150 | static int | ||
151 | be_set_coalesce(struct net_device *netdev, struct ethtool_coalesce *coalesce) | ||
152 | { | ||
153 | struct be_adapter *adapter = netdev_priv(netdev); | ||
154 | struct be_ctrl_info *ctrl = &adapter->ctrl; | ||
155 | struct be_eq_obj *rx_eq = &adapter->rx_eq; | ||
156 | struct be_eq_obj *tx_eq = &adapter->tx_eq; | ||
157 | u32 tx_max, tx_min, tx_cur; | ||
158 | u32 rx_max, rx_min, rx_cur; | ||
159 | int status = 0; | ||
160 | |||
161 | if (coalesce->use_adaptive_tx_coalesce == 1) | ||
162 | return -EINVAL; | ||
163 | |||
164 | adapter->max_rx_coal = coalesce->rx_max_coalesced_frames; | ||
165 | if (adapter->max_rx_coal > MAX_SKB_FRAGS) | ||
166 | adapter->max_rx_coal = MAX_SKB_FRAGS - 1; | ||
167 | |||
168 | /* if AIC is being turned on now, start with an EQD of 0 */ | ||
169 | if (rx_eq->enable_aic == 0 && | ||
170 | coalesce->use_adaptive_rx_coalesce == 1) { | ||
171 | rx_eq->cur_eqd = 0; | ||
172 | } | ||
173 | rx_eq->enable_aic = coalesce->use_adaptive_rx_coalesce; | ||
174 | |||
175 | rx_max = coalesce->rx_coalesce_usecs_high; | ||
176 | rx_min = coalesce->rx_coalesce_usecs_low; | ||
177 | rx_cur = coalesce->rx_coalesce_usecs; | ||
178 | |||
179 | tx_max = coalesce->tx_coalesce_usecs_high; | ||
180 | tx_min = coalesce->tx_coalesce_usecs_low; | ||
181 | tx_cur = coalesce->tx_coalesce_usecs; | ||
182 | |||
183 | if (tx_cur > BE_MAX_EQD) | ||
184 | tx_cur = BE_MAX_EQD; | ||
185 | if (tx_eq->cur_eqd != tx_cur) { | ||
186 | status = be_cmd_modify_eqd(ctrl, tx_eq->q.id, tx_cur); | ||
187 | if (!status) | ||
188 | tx_eq->cur_eqd = tx_cur; | ||
189 | } | ||
190 | |||
191 | if (rx_eq->enable_aic) { | ||
192 | if (rx_max > BE_MAX_EQD) | ||
193 | rx_max = BE_MAX_EQD; | ||
194 | if (rx_min > rx_max) | ||
195 | rx_min = rx_max; | ||
196 | rx_eq->max_eqd = rx_max; | ||
197 | rx_eq->min_eqd = rx_min; | ||
198 | if (rx_eq->cur_eqd > rx_max) | ||
199 | rx_eq->cur_eqd = rx_max; | ||
200 | if (rx_eq->cur_eqd < rx_min) | ||
201 | rx_eq->cur_eqd = rx_min; | ||
202 | } else { | ||
203 | if (rx_cur > BE_MAX_EQD) | ||
204 | rx_cur = BE_MAX_EQD; | ||
205 | if (rx_eq->cur_eqd != rx_cur) { | ||
206 | status = be_cmd_modify_eqd(ctrl, rx_eq->q.id, rx_cur); | ||
207 | if (!status) | ||
208 | rx_eq->cur_eqd = rx_cur; | ||
209 | } | ||
210 | } | ||
211 | return 0; | ||
212 | } | ||
213 | |||
214 | static u32 be_get_rx_csum(struct net_device *netdev) | ||
215 | { | ||
216 | struct be_adapter *adapter = netdev_priv(netdev); | ||
217 | |||
218 | return adapter->rx_csum; | ||
219 | } | ||
220 | |||
221 | static int be_set_rx_csum(struct net_device *netdev, uint32_t data) | ||
222 | { | ||
223 | struct be_adapter *adapter = netdev_priv(netdev); | ||
224 | |||
225 | if (data) | ||
226 | adapter->rx_csum = true; | ||
227 | else | ||
228 | adapter->rx_csum = false; | ||
229 | |||
230 | return 0; | ||
231 | } | ||
232 | |||
233 | static void | ||
234 | be_get_ethtool_stats(struct net_device *netdev, | ||
235 | struct ethtool_stats *stats, uint64_t *data) | ||
236 | { | ||
237 | struct be_adapter *adapter = netdev_priv(netdev); | ||
238 | struct be_drvr_stats *drvr_stats = &adapter->stats.drvr_stats; | ||
239 | struct be_hw_stats *hw_stats = hw_stats_from_cmd(adapter->stats.cmd.va); | ||
240 | struct be_rxf_stats *rxf_stats = &hw_stats->rxf; | ||
241 | struct be_port_rxf_stats *port_stats = | ||
242 | &rxf_stats->port[adapter->port_num]; | ||
243 | struct net_device_stats *net_stats = &adapter->stats.net_stats; | ||
244 | struct be_erx_stats *erx_stats = &hw_stats->erx; | ||
245 | void *p = NULL; | ||
246 | int i; | ||
247 | |||
248 | for (i = 0; i < ETHTOOL_STATS_NUM; i++) { | ||
249 | switch (et_stats[i].type) { | ||
250 | case NETSTAT: | ||
251 | p = net_stats; | ||
252 | break; | ||
253 | case DRVSTAT: | ||
254 | p = drvr_stats; | ||
255 | break; | ||
256 | case PORTSTAT: | ||
257 | p = port_stats; | ||
258 | break; | ||
259 | case MISCSTAT: | ||
260 | p = rxf_stats; | ||
261 | break; | ||
262 | case ERXSTAT: /* Currently only one ERX stat is provided */ | ||
263 | p = (u32 *)erx_stats + adapter->rx_obj.q.id; | ||
264 | break; | ||
265 | } | ||
266 | |||
267 | p = (u8 *)p + et_stats[i].offset; | ||
268 | data[i] = (et_stats[i].size == sizeof(u64)) ? | ||
269 | *(u64 *)p: *(u32 *)p; | ||
270 | } | ||
271 | |||
272 | return; | ||
273 | } | ||
274 | |||
275 | static void | ||
276 | be_get_stat_strings(struct net_device *netdev, uint32_t stringset, | ||
277 | uint8_t *data) | ||
278 | { | ||
279 | int i; | ||
280 | switch (stringset) { | ||
281 | case ETH_SS_STATS: | ||
282 | for (i = 0; i < ETHTOOL_STATS_NUM; i++) { | ||
283 | memcpy(data, et_stats[i].desc, ETH_GSTRING_LEN); | ||
284 | data += ETH_GSTRING_LEN; | ||
285 | } | ||
286 | break; | ||
287 | } | ||
288 | } | ||
289 | |||
290 | static int be_get_stats_count(struct net_device *netdev) | ||
291 | { | ||
292 | return ETHTOOL_STATS_NUM; | ||
293 | } | ||
294 | |||
295 | static int be_get_settings(struct net_device *netdev, struct ethtool_cmd *ecmd) | ||
296 | { | ||
297 | ecmd->speed = SPEED_10000; | ||
298 | ecmd->duplex = DUPLEX_FULL; | ||
299 | ecmd->autoneg = AUTONEG_DISABLE; | ||
300 | return 0; | ||
301 | } | ||
302 | |||
303 | static void | ||
304 | be_get_ringparam(struct net_device *netdev, struct ethtool_ringparam *ring) | ||
305 | { | ||
306 | struct be_adapter *adapter = netdev_priv(netdev); | ||
307 | |||
308 | ring->rx_max_pending = adapter->rx_obj.q.len; | ||
309 | ring->tx_max_pending = adapter->tx_obj.q.len; | ||
310 | |||
311 | ring->rx_pending = atomic_read(&adapter->rx_obj.q.used); | ||
312 | ring->tx_pending = atomic_read(&adapter->tx_obj.q.used); | ||
313 | } | ||
314 | |||
315 | static void | ||
316 | be_get_pauseparam(struct net_device *netdev, struct ethtool_pauseparam *ecmd) | ||
317 | { | ||
318 | struct be_adapter *adapter = netdev_priv(netdev); | ||
319 | |||
320 | be_cmd_get_flow_control(&adapter->ctrl, &ecmd->tx_pause, | ||
321 | &ecmd->rx_pause); | ||
322 | ecmd->autoneg = AUTONEG_ENABLE; | ||
323 | } | ||
324 | |||
325 | static int | ||
326 | be_set_pauseparam(struct net_device *netdev, struct ethtool_pauseparam *ecmd) | ||
327 | { | ||
328 | struct be_adapter *adapter = netdev_priv(netdev); | ||
329 | int status; | ||
330 | |||
331 | if (ecmd->autoneg != AUTONEG_ENABLE) | ||
332 | return -EINVAL; | ||
333 | |||
334 | status = be_cmd_set_flow_control(&adapter->ctrl, ecmd->tx_pause, | ||
335 | ecmd->rx_pause); | ||
336 | if (!status) | ||
337 | dev_warn(&adapter->pdev->dev, "Pause param set failed.\n"); | ||
338 | |||
339 | return status; | ||
340 | } | ||
341 | |||
342 | struct ethtool_ops be_ethtool_ops = { | ||
343 | .get_settings = be_get_settings, | ||
344 | .get_drvinfo = be_get_drvinfo, | ||
345 | .get_link = ethtool_op_get_link, | ||
346 | .get_coalesce = be_get_coalesce, | ||
347 | .set_coalesce = be_set_coalesce, | ||
348 | .get_ringparam = be_get_ringparam, | ||
349 | .get_pauseparam = be_get_pauseparam, | ||
350 | .set_pauseparam = be_set_pauseparam, | ||
351 | .get_rx_csum = be_get_rx_csum, | ||
352 | .set_rx_csum = be_set_rx_csum, | ||
353 | .get_tx_csum = ethtool_op_get_tx_csum, | ||
354 | .set_tx_csum = ethtool_op_set_tx_csum, | ||
355 | .get_sg = ethtool_op_get_sg, | ||
356 | .set_sg = ethtool_op_set_sg, | ||
357 | .get_tso = ethtool_op_get_tso, | ||
358 | .set_tso = ethtool_op_set_tso, | ||
359 | .get_strings = be_get_stat_strings, | ||
360 | .get_stats_count = be_get_stats_count, | ||
361 | .get_ethtool_stats = be_get_ethtool_stats, | ||
362 | }; | ||
diff --git a/drivers/net/benet/be_hw.h b/drivers/net/benet/be_hw.h new file mode 100644 index 000000000000..b132aa4893ca --- /dev/null +++ b/drivers/net/benet/be_hw.h | |||
@@ -0,0 +1,211 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2005 - 2009 ServerEngines | ||
3 | * All rights reserved. | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or | ||
6 | * modify it under the terms of the GNU General Public License version 2 | ||
7 | * as published by the Free Software Foundation. The full GNU General | ||
8 | * Public License is included in this distribution in the file called COPYING. | ||
9 | * | ||
10 | * Contact Information: | ||
11 | * linux-drivers@serverengines.com | ||
12 | * | ||
13 | * ServerEngines | ||
14 | * 209 N. Fair Oaks Ave | ||
15 | * Sunnyvale, CA 94085 | ||
16 | */ | ||
17 | |||
18 | /********* Mailbox door bell *************/ | ||
19 | /* Used for driver communication with the FW. | ||
20 | * The software must write this register twice to post any command. First, | ||
21 | * it writes the register with hi=1 and the upper bits of the physical address | ||
22 | * for the MAILBOX structure. Software must poll the ready bit until this | ||
23 | * is acknowledged. Then, sotware writes the register with hi=0 with the lower | ||
24 | * bits in the address. It must poll the ready bit until the command is | ||
25 | * complete. Upon completion, the MAILBOX will contain a valid completion | ||
26 | * queue entry. | ||
27 | */ | ||
28 | #define MPU_MAILBOX_DB_OFFSET 0x160 | ||
29 | #define MPU_MAILBOX_DB_RDY_MASK 0x1 /* bit 0 */ | ||
30 | #define MPU_MAILBOX_DB_HI_MASK 0x2 /* bit 1 */ | ||
31 | |||
32 | #define MPU_EP_CONTROL 0 | ||
33 | |||
34 | /********** MPU semphore ******************/ | ||
35 | #define MPU_EP_SEMAPHORE_OFFSET 0xac | ||
36 | #define EP_SEMAPHORE_POST_STAGE_MASK 0x0000FFFF | ||
37 | #define EP_SEMAPHORE_POST_ERR_MASK 0x1 | ||
38 | #define EP_SEMAPHORE_POST_ERR_SHIFT 31 | ||
39 | /* MPU semphore POST stage values */ | ||
40 | #define POST_STAGE_AWAITING_HOST_RDY 0x1 /* FW awaiting goahead from host */ | ||
41 | #define POST_STAGE_HOST_RDY 0x2 /* Host has given go-ahed to FW */ | ||
42 | #define POST_STAGE_BE_RESET 0x3 /* Host wants to reset chip */ | ||
43 | #define POST_STAGE_ARMFW_RDY 0xc000 /* FW is done with POST */ | ||
44 | |||
45 | /********* Memory BAR register ************/ | ||
46 | #define PCICFG_MEMBAR_CTRL_INT_CTRL_OFFSET 0xfc | ||
47 | /* Host Interrupt Enable, if set interrupts are enabled although "PCI Interrupt | ||
48 | * Disable" may still globally block interrupts in addition to individual | ||
49 | * interrupt masks; a mechanism for the device driver to block all interrupts | ||
50 | * atomically without having to arbitrate for the PCI Interrupt Disable bit | ||
51 | * with the OS. | ||
52 | */ | ||
53 | #define MEMBAR_CTRL_INT_CTRL_HOSTINTR_MASK (1 << 29) /* bit 29 */ | ||
54 | /* PCI physical function number */ | ||
55 | #define MEMBAR_CTRL_INT_CTRL_PFUNC_MASK 0x7 /* bits 26 - 28 */ | ||
56 | #define MEMBAR_CTRL_INT_CTRL_PFUNC_SHIFT 26 | ||
57 | |||
58 | /********* Event Q door bell *************/ | ||
59 | #define DB_EQ_OFFSET DB_CQ_OFFSET | ||
60 | #define DB_EQ_RING_ID_MASK 0x1FF /* bits 0 - 8 */ | ||
61 | /* Clear the interrupt for this eq */ | ||
62 | #define DB_EQ_CLR_SHIFT (9) /* bit 9 */ | ||
63 | /* Must be 1 */ | ||
64 | #define DB_EQ_EVNT_SHIFT (10) /* bit 10 */ | ||
65 | /* Number of event entries processed */ | ||
66 | #define DB_EQ_NUM_POPPED_SHIFT (16) /* bits 16 - 28 */ | ||
67 | /* Rearm bit */ | ||
68 | #define DB_EQ_REARM_SHIFT (29) /* bit 29 */ | ||
69 | |||
70 | /********* Compl Q door bell *************/ | ||
71 | #define DB_CQ_OFFSET 0x120 | ||
72 | #define DB_CQ_RING_ID_MASK 0x3FF /* bits 0 - 9 */ | ||
73 | /* Number of event entries processed */ | ||
74 | #define DB_CQ_NUM_POPPED_SHIFT (16) /* bits 16 - 28 */ | ||
75 | /* Rearm bit */ | ||
76 | #define DB_CQ_REARM_SHIFT (29) /* bit 29 */ | ||
77 | |||
78 | /********** TX ULP door bell *************/ | ||
79 | #define DB_TXULP1_OFFSET 0x60 | ||
80 | #define DB_TXULP_RING_ID_MASK 0x7FF /* bits 0 - 10 */ | ||
81 | /* Number of tx entries posted */ | ||
82 | #define DB_TXULP_NUM_POSTED_SHIFT (16) /* bits 16 - 29 */ | ||
83 | #define DB_TXULP_NUM_POSTED_MASK 0x3FFF /* bits 16 - 29 */ | ||
84 | |||
85 | /********** RQ(erx) door bell ************/ | ||
86 | #define DB_RQ_OFFSET 0x100 | ||
87 | #define DB_RQ_RING_ID_MASK 0x3FF /* bits 0 - 9 */ | ||
88 | /* Number of rx frags posted */ | ||
89 | #define DB_RQ_NUM_POSTED_SHIFT (24) /* bits 24 - 31 */ | ||
90 | |||
91 | /* | ||
92 | * BE descriptors: host memory data structures whose formats | ||
93 | * are hardwired in BE silicon. | ||
94 | */ | ||
95 | /* Event Queue Descriptor */ | ||
96 | #define EQ_ENTRY_VALID_MASK 0x1 /* bit 0 */ | ||
97 | #define EQ_ENTRY_RES_ID_MASK 0xFFFF /* bits 16 - 31 */ | ||
98 | #define EQ_ENTRY_RES_ID_SHIFT 16 | ||
99 | struct be_eq_entry { | ||
100 | u32 evt; | ||
101 | }; | ||
102 | |||
103 | /* TX Queue Descriptor */ | ||
104 | #define ETH_WRB_FRAG_LEN_MASK 0xFFFF | ||
105 | struct be_eth_wrb { | ||
106 | u32 frag_pa_hi; /* dword 0 */ | ||
107 | u32 frag_pa_lo; /* dword 1 */ | ||
108 | u32 rsvd0; /* dword 2 */ | ||
109 | u32 frag_len; /* dword 3: bits 0 - 15 */ | ||
110 | } __packed; | ||
111 | |||
112 | /* Pseudo amap definition for eth_hdr_wrb in which each bit of the | ||
113 | * actual structure is defined as a byte : used to calculate | ||
114 | * offset/shift/mask of each field */ | ||
115 | struct amap_eth_hdr_wrb { | ||
116 | u8 rsvd0[32]; /* dword 0 */ | ||
117 | u8 rsvd1[32]; /* dword 1 */ | ||
118 | u8 complete; /* dword 2 */ | ||
119 | u8 event; | ||
120 | u8 crc; | ||
121 | u8 forward; | ||
122 | u8 ipsec; | ||
123 | u8 mgmt; | ||
124 | u8 ipcs; | ||
125 | u8 udpcs; | ||
126 | u8 tcpcs; | ||
127 | u8 lso; | ||
128 | u8 vlan; | ||
129 | u8 gso[2]; | ||
130 | u8 num_wrb[5]; | ||
131 | u8 lso_mss[14]; | ||
132 | u8 len[16]; /* dword 3 */ | ||
133 | u8 vlan_tag[16]; | ||
134 | } __packed; | ||
135 | |||
136 | struct be_eth_hdr_wrb { | ||
137 | u32 dw[4]; | ||
138 | }; | ||
139 | |||
140 | /* TX Compl Queue Descriptor */ | ||
141 | |||
142 | /* Pseudo amap definition for eth_tx_compl in which each bit of the | ||
143 | * actual structure is defined as a byte: used to calculate | ||
144 | * offset/shift/mask of each field */ | ||
145 | struct amap_eth_tx_compl { | ||
146 | u8 wrb_index[16]; /* dword 0 */ | ||
147 | u8 ct[2]; /* dword 0 */ | ||
148 | u8 port[2]; /* dword 0 */ | ||
149 | u8 rsvd0[8]; /* dword 0 */ | ||
150 | u8 status[4]; /* dword 0 */ | ||
151 | u8 user_bytes[16]; /* dword 1 */ | ||
152 | u8 nwh_bytes[8]; /* dword 1 */ | ||
153 | u8 lso; /* dword 1 */ | ||
154 | u8 cast_enc[2]; /* dword 1 */ | ||
155 | u8 rsvd1[5]; /* dword 1 */ | ||
156 | u8 rsvd2[32]; /* dword 2 */ | ||
157 | u8 pkts[16]; /* dword 3 */ | ||
158 | u8 ringid[11]; /* dword 3 */ | ||
159 | u8 hash_val[4]; /* dword 3 */ | ||
160 | u8 valid; /* dword 3 */ | ||
161 | } __packed; | ||
162 | |||
163 | struct be_eth_tx_compl { | ||
164 | u32 dw[4]; | ||
165 | }; | ||
166 | |||
167 | /* RX Queue Descriptor */ | ||
168 | struct be_eth_rx_d { | ||
169 | u32 fragpa_hi; | ||
170 | u32 fragpa_lo; | ||
171 | }; | ||
172 | |||
173 | /* RX Compl Queue Descriptor */ | ||
174 | |||
175 | /* Pseudo amap definition for eth_rx_compl in which each bit of the | ||
176 | * actual structure is defined as a byte: used to calculate | ||
177 | * offset/shift/mask of each field */ | ||
178 | struct amap_eth_rx_compl { | ||
179 | u8 vlan_tag[16]; /* dword 0 */ | ||
180 | u8 pktsize[14]; /* dword 0 */ | ||
181 | u8 port; /* dword 0 */ | ||
182 | u8 ip_opt; /* dword 0 */ | ||
183 | u8 err; /* dword 1 */ | ||
184 | u8 rsshp; /* dword 1 */ | ||
185 | u8 ipf; /* dword 1 */ | ||
186 | u8 tcpf; /* dword 1 */ | ||
187 | u8 udpf; /* dword 1 */ | ||
188 | u8 ipcksm; /* dword 1 */ | ||
189 | u8 l4_cksm; /* dword 1 */ | ||
190 | u8 ip_version; /* dword 1 */ | ||
191 | u8 macdst[6]; /* dword 1 */ | ||
192 | u8 vtp; /* dword 1 */ | ||
193 | u8 rsvd0; /* dword 1 */ | ||
194 | u8 fragndx[10]; /* dword 1 */ | ||
195 | u8 ct[2]; /* dword 1 */ | ||
196 | u8 sw; /* dword 1 */ | ||
197 | u8 numfrags[3]; /* dword 1 */ | ||
198 | u8 rss_flush; /* dword 2 */ | ||
199 | u8 cast_enc[2]; /* dword 2 */ | ||
200 | u8 qnq; /* dword 2 */ | ||
201 | u8 rss_bank; /* dword 2 */ | ||
202 | u8 rsvd1[23]; /* dword 2 */ | ||
203 | u8 lro_pkt; /* dword 2 */ | ||
204 | u8 rsvd2[2]; /* dword 2 */ | ||
205 | u8 valid; /* dword 2 */ | ||
206 | u8 rsshash[32]; /* dword 3 */ | ||
207 | } __packed; | ||
208 | |||
209 | struct be_eth_rx_compl { | ||
210 | u32 dw[4]; | ||
211 | }; | ||
diff --git a/drivers/net/benet/be_main.c b/drivers/net/benet/be_main.c new file mode 100644 index 000000000000..897a63de5bdb --- /dev/null +++ b/drivers/net/benet/be_main.c | |||
@@ -0,0 +1,1903 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2005 - 2009 ServerEngines | ||
3 | * All rights reserved. | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or | ||
6 | * modify it under the terms of the GNU General Public License version 2 | ||
7 | * as published by the Free Software Foundation. The full GNU General | ||
8 | * Public License is included in this distribution in the file called COPYING. | ||
9 | * | ||
10 | * Contact Information: | ||
11 | * linux-drivers@serverengines.com | ||
12 | * | ||
13 | * ServerEngines | ||
14 | * 209 N. Fair Oaks Ave | ||
15 | * Sunnyvale, CA 94085 | ||
16 | */ | ||
17 | |||
18 | #include "be.h" | ||
19 | |||
20 | MODULE_VERSION(DRV_VER); | ||
21 | MODULE_DEVICE_TABLE(pci, be_dev_ids); | ||
22 | MODULE_DESCRIPTION(DRV_DESC " " DRV_VER); | ||
23 | MODULE_AUTHOR("ServerEngines Corporation"); | ||
24 | MODULE_LICENSE("GPL"); | ||
25 | |||
26 | static unsigned int rx_frag_size = 2048; | ||
27 | module_param(rx_frag_size, uint, S_IRUGO); | ||
28 | MODULE_PARM_DESC(rx_frag_size, "Size of a fragment that holds rcvd data."); | ||
29 | |||
30 | #define BE_VENDOR_ID 0x19a2 | ||
31 | #define BE2_DEVICE_ID_1 0x0211 | ||
32 | static DEFINE_PCI_DEVICE_TABLE(be_dev_ids) = { | ||
33 | { PCI_DEVICE(BE_VENDOR_ID, BE2_DEVICE_ID_1) }, | ||
34 | { 0 } | ||
35 | }; | ||
36 | MODULE_DEVICE_TABLE(pci, be_dev_ids); | ||
37 | |||
38 | static void be_queue_free(struct be_adapter *adapter, struct be_queue_info *q) | ||
39 | { | ||
40 | struct be_dma_mem *mem = &q->dma_mem; | ||
41 | if (mem->va) | ||
42 | pci_free_consistent(adapter->pdev, mem->size, | ||
43 | mem->va, mem->dma); | ||
44 | } | ||
45 | |||
46 | static int be_queue_alloc(struct be_adapter *adapter, struct be_queue_info *q, | ||
47 | u16 len, u16 entry_size) | ||
48 | { | ||
49 | struct be_dma_mem *mem = &q->dma_mem; | ||
50 | |||
51 | memset(q, 0, sizeof(*q)); | ||
52 | q->len = len; | ||
53 | q->entry_size = entry_size; | ||
54 | mem->size = len * entry_size; | ||
55 | mem->va = pci_alloc_consistent(adapter->pdev, mem->size, &mem->dma); | ||
56 | if (!mem->va) | ||
57 | return -1; | ||
58 | memset(mem->va, 0, mem->size); | ||
59 | return 0; | ||
60 | } | ||
61 | |||
62 | static inline void *queue_head_node(struct be_queue_info *q) | ||
63 | { | ||
64 | return q->dma_mem.va + q->head * q->entry_size; | ||
65 | } | ||
66 | |||
67 | static inline void *queue_tail_node(struct be_queue_info *q) | ||
68 | { | ||
69 | return q->dma_mem.va + q->tail * q->entry_size; | ||
70 | } | ||
71 | |||
72 | static inline void queue_head_inc(struct be_queue_info *q) | ||
73 | { | ||
74 | index_inc(&q->head, q->len); | ||
75 | } | ||
76 | |||
77 | static inline void queue_tail_inc(struct be_queue_info *q) | ||
78 | { | ||
79 | index_inc(&q->tail, q->len); | ||
80 | } | ||
81 | |||
82 | static void be_intr_set(struct be_ctrl_info *ctrl, bool enable) | ||
83 | { | ||
84 | u8 __iomem *addr = ctrl->pcicfg + PCICFG_MEMBAR_CTRL_INT_CTRL_OFFSET; | ||
85 | u32 reg = ioread32(addr); | ||
86 | u32 enabled = reg & MEMBAR_CTRL_INT_CTRL_HOSTINTR_MASK; | ||
87 | if (!enabled && enable) { | ||
88 | reg |= MEMBAR_CTRL_INT_CTRL_HOSTINTR_MASK; | ||
89 | } else if (enabled && !enable) { | ||
90 | reg &= ~MEMBAR_CTRL_INT_CTRL_HOSTINTR_MASK; | ||
91 | } else { | ||
92 | printk(KERN_WARNING DRV_NAME | ||
93 | ": bad value in membar_int_ctrl reg=0x%x\n", reg); | ||
94 | return; | ||
95 | } | ||
96 | iowrite32(reg, addr); | ||
97 | } | ||
98 | |||
99 | static void be_rxq_notify(struct be_ctrl_info *ctrl, u16 qid, u16 posted) | ||
100 | { | ||
101 | u32 val = 0; | ||
102 | val |= qid & DB_RQ_RING_ID_MASK; | ||
103 | val |= posted << DB_RQ_NUM_POSTED_SHIFT; | ||
104 | iowrite32(val, ctrl->db + DB_RQ_OFFSET); | ||
105 | } | ||
106 | |||
107 | static void be_txq_notify(struct be_ctrl_info *ctrl, u16 qid, u16 posted) | ||
108 | { | ||
109 | u32 val = 0; | ||
110 | val |= qid & DB_TXULP_RING_ID_MASK; | ||
111 | val |= (posted & DB_TXULP_NUM_POSTED_MASK) << DB_TXULP_NUM_POSTED_SHIFT; | ||
112 | iowrite32(val, ctrl->db + DB_TXULP1_OFFSET); | ||
113 | } | ||
114 | |||
115 | static void be_eq_notify(struct be_ctrl_info *ctrl, u16 qid, | ||
116 | bool arm, bool clear_int, u16 num_popped) | ||
117 | { | ||
118 | u32 val = 0; | ||
119 | val |= qid & DB_EQ_RING_ID_MASK; | ||
120 | if (arm) | ||
121 | val |= 1 << DB_EQ_REARM_SHIFT; | ||
122 | if (clear_int) | ||
123 | val |= 1 << DB_EQ_CLR_SHIFT; | ||
124 | val |= 1 << DB_EQ_EVNT_SHIFT; | ||
125 | val |= num_popped << DB_EQ_NUM_POPPED_SHIFT; | ||
126 | iowrite32(val, ctrl->db + DB_EQ_OFFSET); | ||
127 | } | ||
128 | |||
129 | static void be_cq_notify(struct be_ctrl_info *ctrl, u16 qid, | ||
130 | bool arm, u16 num_popped) | ||
131 | { | ||
132 | u32 val = 0; | ||
133 | val |= qid & DB_CQ_RING_ID_MASK; | ||
134 | if (arm) | ||
135 | val |= 1 << DB_CQ_REARM_SHIFT; | ||
136 | val |= num_popped << DB_CQ_NUM_POPPED_SHIFT; | ||
137 | iowrite32(val, ctrl->db + DB_CQ_OFFSET); | ||
138 | } | ||
139 | |||
140 | |||
141 | static int be_mac_addr_set(struct net_device *netdev, void *p) | ||
142 | { | ||
143 | struct be_adapter *adapter = netdev_priv(netdev); | ||
144 | struct sockaddr *addr = p; | ||
145 | int status = 0; | ||
146 | |||
147 | if (netif_running(netdev)) { | ||
148 | status = be_cmd_pmac_del(&adapter->ctrl, adapter->if_handle, | ||
149 | adapter->pmac_id); | ||
150 | if (status) | ||
151 | return status; | ||
152 | |||
153 | status = be_cmd_pmac_add(&adapter->ctrl, (u8 *)addr->sa_data, | ||
154 | adapter->if_handle, &adapter->pmac_id); | ||
155 | } | ||
156 | |||
157 | if (!status) | ||
158 | memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len); | ||
159 | |||
160 | return status; | ||
161 | } | ||
162 | |||
163 | static void netdev_stats_update(struct be_adapter *adapter) | ||
164 | { | ||
165 | struct be_hw_stats *hw_stats = hw_stats_from_cmd(adapter->stats.cmd.va); | ||
166 | struct be_rxf_stats *rxf_stats = &hw_stats->rxf; | ||
167 | struct be_port_rxf_stats *port_stats = | ||
168 | &rxf_stats->port[adapter->port_num]; | ||
169 | struct net_device_stats *dev_stats = &adapter->stats.net_stats; | ||
170 | |||
171 | dev_stats->rx_packets = port_stats->rx_total_frames; | ||
172 | dev_stats->tx_packets = port_stats->tx_unicastframes + | ||
173 | port_stats->tx_multicastframes + port_stats->tx_broadcastframes; | ||
174 | dev_stats->rx_bytes = (u64) port_stats->rx_bytes_msd << 32 | | ||
175 | (u64) port_stats->rx_bytes_lsd; | ||
176 | dev_stats->tx_bytes = (u64) port_stats->tx_bytes_msd << 32 | | ||
177 | (u64) port_stats->tx_bytes_lsd; | ||
178 | |||
179 | /* bad pkts received */ | ||
180 | dev_stats->rx_errors = port_stats->rx_crc_errors + | ||
181 | port_stats->rx_alignment_symbol_errors + | ||
182 | port_stats->rx_in_range_errors + | ||
183 | port_stats->rx_out_range_errors + port_stats->rx_frame_too_long; | ||
184 | |||
185 | /* packet transmit problems */ | ||
186 | dev_stats->tx_errors = 0; | ||
187 | |||
188 | /* no space in linux buffers */ | ||
189 | dev_stats->rx_dropped = 0; | ||
190 | |||
191 | /* no space available in linux */ | ||
192 | dev_stats->tx_dropped = 0; | ||
193 | |||
194 | dev_stats->multicast = port_stats->tx_multicastframes; | ||
195 | dev_stats->collisions = 0; | ||
196 | |||
197 | /* detailed rx errors */ | ||
198 | dev_stats->rx_length_errors = port_stats->rx_in_range_errors + | ||
199 | port_stats->rx_out_range_errors + port_stats->rx_frame_too_long; | ||
200 | /* receive ring buffer overflow */ | ||
201 | dev_stats->rx_over_errors = 0; | ||
202 | dev_stats->rx_crc_errors = port_stats->rx_crc_errors; | ||
203 | |||
204 | /* frame alignment errors */ | ||
205 | dev_stats->rx_frame_errors = port_stats->rx_alignment_symbol_errors; | ||
206 | /* receiver fifo overrun */ | ||
207 | /* drops_no_pbuf is no per i/f, it's per BE card */ | ||
208 | dev_stats->rx_fifo_errors = port_stats->rx_fifo_overflow + | ||
209 | port_stats->rx_input_fifo_overflow + | ||
210 | rxf_stats->rx_drops_no_pbuf; | ||
211 | /* receiver missed packetd */ | ||
212 | dev_stats->rx_missed_errors = 0; | ||
213 | /* detailed tx_errors */ | ||
214 | dev_stats->tx_aborted_errors = 0; | ||
215 | dev_stats->tx_carrier_errors = 0; | ||
216 | dev_stats->tx_fifo_errors = 0; | ||
217 | dev_stats->tx_heartbeat_errors = 0; | ||
218 | dev_stats->tx_window_errors = 0; | ||
219 | } | ||
220 | |||
221 | static void be_link_status_update(struct be_adapter *adapter) | ||
222 | { | ||
223 | struct be_link_info *prev = &adapter->link; | ||
224 | struct be_link_info now = { 0 }; | ||
225 | struct net_device *netdev = adapter->netdev; | ||
226 | |||
227 | be_cmd_link_status_query(&adapter->ctrl, &now); | ||
228 | |||
229 | /* If link came up or went down */ | ||
230 | if (now.speed != prev->speed && (now.speed == PHY_LINK_SPEED_ZERO || | ||
231 | prev->speed == PHY_LINK_SPEED_ZERO)) { | ||
232 | if (now.speed == PHY_LINK_SPEED_ZERO) { | ||
233 | netif_stop_queue(netdev); | ||
234 | netif_carrier_off(netdev); | ||
235 | printk(KERN_INFO "%s: Link down\n", netdev->name); | ||
236 | } else { | ||
237 | netif_start_queue(netdev); | ||
238 | netif_carrier_on(netdev); | ||
239 | printk(KERN_INFO "%s: Link up\n", netdev->name); | ||
240 | } | ||
241 | } | ||
242 | *prev = now; | ||
243 | } | ||
244 | |||
245 | /* Update the EQ delay n BE based on the RX frags consumed / sec */ | ||
246 | static void be_rx_eqd_update(struct be_adapter *adapter) | ||
247 | { | ||
248 | u32 eqd; | ||
249 | struct be_ctrl_info *ctrl = &adapter->ctrl; | ||
250 | struct be_eq_obj *rx_eq = &adapter->rx_eq; | ||
251 | struct be_drvr_stats *stats = &adapter->stats.drvr_stats; | ||
252 | |||
253 | /* Update once a second */ | ||
254 | if (((jiffies - stats->rx_fps_jiffies) < HZ) || rx_eq->enable_aic == 0) | ||
255 | return; | ||
256 | |||
257 | stats->be_rx_fps = (stats->be_rx_frags - stats->be_prev_rx_frags) / | ||
258 | ((jiffies - stats->rx_fps_jiffies) / HZ); | ||
259 | |||
260 | stats->rx_fps_jiffies = jiffies; | ||
261 | stats->be_prev_rx_frags = stats->be_rx_frags; | ||
262 | eqd = stats->be_rx_fps / 110000; | ||
263 | eqd = eqd << 3; | ||
264 | if (eqd > rx_eq->max_eqd) | ||
265 | eqd = rx_eq->max_eqd; | ||
266 | if (eqd < rx_eq->min_eqd) | ||
267 | eqd = rx_eq->min_eqd; | ||
268 | if (eqd < 10) | ||
269 | eqd = 0; | ||
270 | if (eqd != rx_eq->cur_eqd) | ||
271 | be_cmd_modify_eqd(ctrl, rx_eq->q.id, eqd); | ||
272 | |||
273 | rx_eq->cur_eqd = eqd; | ||
274 | } | ||
275 | |||
276 | static void be_worker(struct work_struct *work) | ||
277 | { | ||
278 | struct be_adapter *adapter = | ||
279 | container_of(work, struct be_adapter, work.work); | ||
280 | int status; | ||
281 | |||
282 | /* Check link */ | ||
283 | be_link_status_update(adapter); | ||
284 | |||
285 | /* Get Stats */ | ||
286 | status = be_cmd_get_stats(&adapter->ctrl, &adapter->stats.cmd); | ||
287 | if (!status) | ||
288 | netdev_stats_update(adapter); | ||
289 | |||
290 | /* Set EQ delay */ | ||
291 | be_rx_eqd_update(adapter); | ||
292 | |||
293 | schedule_delayed_work(&adapter->work, msecs_to_jiffies(1000)); | ||
294 | } | ||
295 | |||
296 | static struct net_device_stats *be_get_stats(struct net_device *dev) | ||
297 | { | ||
298 | struct be_adapter *adapter = netdev_priv(dev); | ||
299 | |||
300 | return &adapter->stats.net_stats; | ||
301 | } | ||
302 | |||
303 | static void be_tx_stats_update(struct be_adapter *adapter, | ||
304 | u32 wrb_cnt, u32 copied, bool stopped) | ||
305 | { | ||
306 | struct be_drvr_stats *stats = &adapter->stats.drvr_stats; | ||
307 | stats->be_tx_reqs++; | ||
308 | stats->be_tx_wrbs += wrb_cnt; | ||
309 | stats->be_tx_bytes += copied; | ||
310 | if (stopped) | ||
311 | stats->be_tx_stops++; | ||
312 | |||
313 | /* Update tx rate once in two seconds */ | ||
314 | if ((jiffies - stats->be_tx_jiffies) > 2 * HZ) { | ||
315 | u32 r; | ||
316 | r = (stats->be_tx_bytes - stats->be_tx_bytes_prev) / | ||
317 | ((u32) (jiffies - stats->be_tx_jiffies) / HZ); | ||
318 | r = (r / 1000000); /* M bytes/s */ | ||
319 | stats->be_tx_rate = (r * 8); /* M bits/s */ | ||
320 | stats->be_tx_jiffies = jiffies; | ||
321 | stats->be_tx_bytes_prev = stats->be_tx_bytes; | ||
322 | } | ||
323 | } | ||
324 | |||
325 | /* Determine number of WRB entries needed to xmit data in an skb */ | ||
326 | static u32 wrb_cnt_for_skb(struct sk_buff *skb, bool *dummy) | ||
327 | { | ||
328 | int cnt = 0; | ||
329 | while (skb) { | ||
330 | if (skb->len > skb->data_len) | ||
331 | cnt++; | ||
332 | cnt += skb_shinfo(skb)->nr_frags; | ||
333 | skb = skb_shinfo(skb)->frag_list; | ||
334 | } | ||
335 | /* to account for hdr wrb */ | ||
336 | cnt++; | ||
337 | if (cnt & 1) { | ||
338 | /* add a dummy to make it an even num */ | ||
339 | cnt++; | ||
340 | *dummy = true; | ||
341 | } else | ||
342 | *dummy = false; | ||
343 | BUG_ON(cnt > BE_MAX_TX_FRAG_COUNT); | ||
344 | return cnt; | ||
345 | } | ||
346 | |||
347 | static inline void wrb_fill(struct be_eth_wrb *wrb, u64 addr, int len) | ||
348 | { | ||
349 | wrb->frag_pa_hi = upper_32_bits(addr); | ||
350 | wrb->frag_pa_lo = addr & 0xFFFFFFFF; | ||
351 | wrb->frag_len = len & ETH_WRB_FRAG_LEN_MASK; | ||
352 | } | ||
353 | |||
354 | static void wrb_fill_hdr(struct be_eth_hdr_wrb *hdr, struct sk_buff *skb, | ||
355 | bool vlan, u32 wrb_cnt, u32 len) | ||
356 | { | ||
357 | memset(hdr, 0, sizeof(*hdr)); | ||
358 | |||
359 | AMAP_SET_BITS(struct amap_eth_hdr_wrb, crc, hdr, 1); | ||
360 | |||
361 | if (skb_shinfo(skb)->gso_segs > 1 && skb_shinfo(skb)->gso_size) { | ||
362 | AMAP_SET_BITS(struct amap_eth_hdr_wrb, lso, hdr, 1); | ||
363 | AMAP_SET_BITS(struct amap_eth_hdr_wrb, lso_mss, | ||
364 | hdr, skb_shinfo(skb)->gso_size); | ||
365 | } else if (skb->ip_summed == CHECKSUM_PARTIAL) { | ||
366 | if (is_tcp_pkt(skb)) | ||
367 | AMAP_SET_BITS(struct amap_eth_hdr_wrb, tcpcs, hdr, 1); | ||
368 | else if (is_udp_pkt(skb)) | ||
369 | AMAP_SET_BITS(struct amap_eth_hdr_wrb, udpcs, hdr, 1); | ||
370 | } | ||
371 | |||
372 | if (vlan && vlan_tx_tag_present(skb)) { | ||
373 | AMAP_SET_BITS(struct amap_eth_hdr_wrb, vlan, hdr, 1); | ||
374 | AMAP_SET_BITS(struct amap_eth_hdr_wrb, vlan_tag, | ||
375 | hdr, vlan_tx_tag_get(skb)); | ||
376 | } | ||
377 | |||
378 | AMAP_SET_BITS(struct amap_eth_hdr_wrb, event, hdr, 1); | ||
379 | AMAP_SET_BITS(struct amap_eth_hdr_wrb, complete, hdr, 1); | ||
380 | AMAP_SET_BITS(struct amap_eth_hdr_wrb, num_wrb, hdr, wrb_cnt); | ||
381 | AMAP_SET_BITS(struct amap_eth_hdr_wrb, len, hdr, len); | ||
382 | } | ||
383 | |||
384 | |||
385 | static int make_tx_wrbs(struct be_adapter *adapter, | ||
386 | struct sk_buff *skb, u32 wrb_cnt, bool dummy_wrb) | ||
387 | { | ||
388 | u64 busaddr; | ||
389 | u32 i, copied = 0; | ||
390 | struct pci_dev *pdev = adapter->pdev; | ||
391 | struct sk_buff *first_skb = skb; | ||
392 | struct be_queue_info *txq = &adapter->tx_obj.q; | ||
393 | struct be_eth_wrb *wrb; | ||
394 | struct be_eth_hdr_wrb *hdr; | ||
395 | |||
396 | atomic_add(wrb_cnt, &txq->used); | ||
397 | hdr = queue_head_node(txq); | ||
398 | queue_head_inc(txq); | ||
399 | |||
400 | while (skb) { | ||
401 | if (skb->len > skb->data_len) { | ||
402 | int len = skb->len - skb->data_len; | ||
403 | busaddr = pci_map_single(pdev, skb->data, len, | ||
404 | PCI_DMA_TODEVICE); | ||
405 | wrb = queue_head_node(txq); | ||
406 | wrb_fill(wrb, busaddr, len); | ||
407 | be_dws_cpu_to_le(wrb, sizeof(*wrb)); | ||
408 | queue_head_inc(txq); | ||
409 | copied += len; | ||
410 | } | ||
411 | |||
412 | for (i = 0; i < skb_shinfo(skb)->nr_frags; i++) { | ||
413 | struct skb_frag_struct *frag = | ||
414 | &skb_shinfo(skb)->frags[i]; | ||
415 | busaddr = pci_map_page(pdev, frag->page, | ||
416 | frag->page_offset, | ||
417 | frag->size, PCI_DMA_TODEVICE); | ||
418 | wrb = queue_head_node(txq); | ||
419 | wrb_fill(wrb, busaddr, frag->size); | ||
420 | be_dws_cpu_to_le(wrb, sizeof(*wrb)); | ||
421 | queue_head_inc(txq); | ||
422 | copied += frag->size; | ||
423 | } | ||
424 | skb = skb_shinfo(skb)->frag_list; | ||
425 | } | ||
426 | |||
427 | if (dummy_wrb) { | ||
428 | wrb = queue_head_node(txq); | ||
429 | wrb_fill(wrb, 0, 0); | ||
430 | be_dws_cpu_to_le(wrb, sizeof(*wrb)); | ||
431 | queue_head_inc(txq); | ||
432 | } | ||
433 | |||
434 | wrb_fill_hdr(hdr, first_skb, adapter->vlan_grp ? true : false, | ||
435 | wrb_cnt, copied); | ||
436 | be_dws_cpu_to_le(hdr, sizeof(*hdr)); | ||
437 | |||
438 | return copied; | ||
439 | } | ||
440 | |||
441 | static int be_xmit(struct sk_buff *skb, struct net_device *netdev) | ||
442 | { | ||
443 | struct be_adapter *adapter = netdev_priv(netdev); | ||
444 | struct be_tx_obj *tx_obj = &adapter->tx_obj; | ||
445 | struct be_queue_info *txq = &tx_obj->q; | ||
446 | u32 wrb_cnt = 0, copied = 0; | ||
447 | u32 start = txq->head; | ||
448 | bool dummy_wrb, stopped = false; | ||
449 | |||
450 | wrb_cnt = wrb_cnt_for_skb(skb, &dummy_wrb); | ||
451 | |||
452 | copied = make_tx_wrbs(adapter, skb, wrb_cnt, dummy_wrb); | ||
453 | |||
454 | /* record the sent skb in the sent_skb table */ | ||
455 | BUG_ON(tx_obj->sent_skb_list[start]); | ||
456 | tx_obj->sent_skb_list[start] = skb; | ||
457 | |||
458 | /* Ensure that txq has space for the next skb; Else stop the queue | ||
459 | * *BEFORE* ringing the tx doorbell, so that we serialze the | ||
460 | * tx compls of the current transmit which'll wake up the queue | ||
461 | */ | ||
462 | if ((BE_MAX_TX_FRAG_COUNT + atomic_read(&txq->used)) >= txq->len) { | ||
463 | netif_stop_queue(netdev); | ||
464 | stopped = true; | ||
465 | } | ||
466 | |||
467 | be_txq_notify(&adapter->ctrl, txq->id, wrb_cnt); | ||
468 | |||
469 | netdev->trans_start = jiffies; | ||
470 | |||
471 | be_tx_stats_update(adapter, wrb_cnt, copied, stopped); | ||
472 | return NETDEV_TX_OK; | ||
473 | } | ||
474 | |||
475 | static int be_change_mtu(struct net_device *netdev, int new_mtu) | ||
476 | { | ||
477 | struct be_adapter *adapter = netdev_priv(netdev); | ||
478 | if (new_mtu < BE_MIN_MTU || | ||
479 | new_mtu > BE_MAX_JUMBO_FRAME_SIZE) { | ||
480 | dev_info(&adapter->pdev->dev, | ||
481 | "MTU must be between %d and %d bytes\n", | ||
482 | BE_MIN_MTU, BE_MAX_JUMBO_FRAME_SIZE); | ||
483 | return -EINVAL; | ||
484 | } | ||
485 | dev_info(&adapter->pdev->dev, "MTU changed from %d to %d bytes\n", | ||
486 | netdev->mtu, new_mtu); | ||
487 | netdev->mtu = new_mtu; | ||
488 | return 0; | ||
489 | } | ||
490 | |||
491 | /* | ||
492 | * if there are BE_NUM_VLANS_SUPPORTED or lesser number of VLANS configured, | ||
493 | * program them in BE. If more than BE_NUM_VLANS_SUPPORTED are configured, | ||
494 | * set the BE in promiscuous VLAN mode. | ||
495 | */ | ||
496 | static void be_vids_config(struct net_device *netdev) | ||
497 | { | ||
498 | struct be_adapter *adapter = netdev_priv(netdev); | ||
499 | u16 vtag[BE_NUM_VLANS_SUPPORTED]; | ||
500 | u16 ntags = 0, i; | ||
501 | |||
502 | if (adapter->num_vlans <= BE_NUM_VLANS_SUPPORTED) { | ||
503 | /* Construct VLAN Table to give to HW */ | ||
504 | for (i = 0; i < VLAN_GROUP_ARRAY_LEN; i++) { | ||
505 | if (adapter->vlan_tag[i]) { | ||
506 | vtag[ntags] = cpu_to_le16(i); | ||
507 | ntags++; | ||
508 | } | ||
509 | } | ||
510 | be_cmd_vlan_config(&adapter->ctrl, adapter->if_handle, | ||
511 | vtag, ntags, 1, 0); | ||
512 | } else { | ||
513 | be_cmd_vlan_config(&adapter->ctrl, adapter->if_handle, | ||
514 | NULL, 0, 1, 1); | ||
515 | } | ||
516 | } | ||
517 | |||
518 | static void be_vlan_register(struct net_device *netdev, struct vlan_group *grp) | ||
519 | { | ||
520 | struct be_adapter *adapter = netdev_priv(netdev); | ||
521 | struct be_eq_obj *rx_eq = &adapter->rx_eq; | ||
522 | struct be_eq_obj *tx_eq = &adapter->tx_eq; | ||
523 | struct be_ctrl_info *ctrl = &adapter->ctrl; | ||
524 | |||
525 | be_eq_notify(ctrl, rx_eq->q.id, false, false, 0); | ||
526 | be_eq_notify(ctrl, tx_eq->q.id, false, false, 0); | ||
527 | adapter->vlan_grp = grp; | ||
528 | be_eq_notify(ctrl, rx_eq->q.id, true, false, 0); | ||
529 | be_eq_notify(ctrl, tx_eq->q.id, true, false, 0); | ||
530 | } | ||
531 | |||
532 | static void be_vlan_add_vid(struct net_device *netdev, u16 vid) | ||
533 | { | ||
534 | struct be_adapter *adapter = netdev_priv(netdev); | ||
535 | |||
536 | adapter->num_vlans++; | ||
537 | adapter->vlan_tag[vid] = 1; | ||
538 | |||
539 | be_vids_config(netdev); | ||
540 | } | ||
541 | |||
542 | static void be_vlan_rem_vid(struct net_device *netdev, u16 vid) | ||
543 | { | ||
544 | struct be_adapter *adapter = netdev_priv(netdev); | ||
545 | |||
546 | adapter->num_vlans--; | ||
547 | adapter->vlan_tag[vid] = 0; | ||
548 | |||
549 | vlan_group_set_device(adapter->vlan_grp, vid, NULL); | ||
550 | be_vids_config(netdev); | ||
551 | } | ||
552 | |||
553 | static void be_set_multicast_filter(struct net_device *netdev) | ||
554 | { | ||
555 | struct be_adapter *adapter = netdev_priv(netdev); | ||
556 | struct dev_mc_list *mc_ptr; | ||
557 | u8 mac_addr[32][ETH_ALEN]; | ||
558 | int i = 0; | ||
559 | |||
560 | if (netdev->flags & IFF_ALLMULTI) { | ||
561 | /* set BE in Multicast promiscuous */ | ||
562 | be_cmd_mcast_mac_set(&adapter->ctrl, | ||
563 | adapter->if_handle, NULL, 0, true); | ||
564 | return; | ||
565 | } | ||
566 | |||
567 | for (mc_ptr = netdev->mc_list; mc_ptr; mc_ptr = mc_ptr->next) { | ||
568 | memcpy(&mac_addr[i][0], mc_ptr->dmi_addr, ETH_ALEN); | ||
569 | if (++i >= 32) { | ||
570 | be_cmd_mcast_mac_set(&adapter->ctrl, | ||
571 | adapter->if_handle, &mac_addr[0][0], i, false); | ||
572 | i = 0; | ||
573 | } | ||
574 | |||
575 | } | ||
576 | |||
577 | if (i) { | ||
578 | /* reset the promiscuous mode also. */ | ||
579 | be_cmd_mcast_mac_set(&adapter->ctrl, | ||
580 | adapter->if_handle, &mac_addr[0][0], i, false); | ||
581 | } | ||
582 | } | ||
583 | |||
584 | static void be_set_multicast_list(struct net_device *netdev) | ||
585 | { | ||
586 | struct be_adapter *adapter = netdev_priv(netdev); | ||
587 | |||
588 | if (netdev->flags & IFF_PROMISC) { | ||
589 | be_cmd_promiscuous_config(&adapter->ctrl, adapter->port_num, 1); | ||
590 | } else { | ||
591 | be_cmd_promiscuous_config(&adapter->ctrl, adapter->port_num, 0); | ||
592 | be_set_multicast_filter(netdev); | ||
593 | } | ||
594 | } | ||
595 | |||
596 | static void be_rx_rate_update(struct be_adapter *adapter, u32 pktsize, | ||
597 | u16 numfrags) | ||
598 | { | ||
599 | struct be_drvr_stats *stats = &adapter->stats.drvr_stats; | ||
600 | u32 rate; | ||
601 | |||
602 | stats->be_rx_compl++; | ||
603 | stats->be_rx_frags += numfrags; | ||
604 | stats->be_rx_bytes += pktsize; | ||
605 | |||
606 | /* Update the rate once in two seconds */ | ||
607 | if ((jiffies - stats->be_rx_jiffies) < 2 * HZ) | ||
608 | return; | ||
609 | |||
610 | rate = (stats->be_rx_bytes - stats->be_rx_bytes_prev) / | ||
611 | ((u32) (jiffies - stats->be_rx_jiffies) / HZ); | ||
612 | rate = (rate / 1000000); /* MB/Sec */ | ||
613 | stats->be_rx_rate = (rate * 8); /* Mega Bits/Sec */ | ||
614 | stats->be_rx_jiffies = jiffies; | ||
615 | stats->be_rx_bytes_prev = stats->be_rx_bytes; | ||
616 | } | ||
617 | |||
618 | static struct be_rx_page_info * | ||
619 | get_rx_page_info(struct be_adapter *adapter, u16 frag_idx) | ||
620 | { | ||
621 | struct be_rx_page_info *rx_page_info; | ||
622 | struct be_queue_info *rxq = &adapter->rx_obj.q; | ||
623 | |||
624 | rx_page_info = &adapter->rx_obj.page_info_tbl[frag_idx]; | ||
625 | BUG_ON(!rx_page_info->page); | ||
626 | |||
627 | if (rx_page_info->last_page_user) | ||
628 | pci_unmap_page(adapter->pdev, pci_unmap_addr(rx_page_info, bus), | ||
629 | adapter->big_page_size, PCI_DMA_FROMDEVICE); | ||
630 | |||
631 | atomic_dec(&rxq->used); | ||
632 | return rx_page_info; | ||
633 | } | ||
634 | |||
635 | /* Throwaway the data in the Rx completion */ | ||
636 | static void be_rx_compl_discard(struct be_adapter *adapter, | ||
637 | struct be_eth_rx_compl *rxcp) | ||
638 | { | ||
639 | struct be_queue_info *rxq = &adapter->rx_obj.q; | ||
640 | struct be_rx_page_info *page_info; | ||
641 | u16 rxq_idx, i, num_rcvd; | ||
642 | |||
643 | rxq_idx = AMAP_GET_BITS(struct amap_eth_rx_compl, fragndx, rxcp); | ||
644 | num_rcvd = AMAP_GET_BITS(struct amap_eth_rx_compl, numfrags, rxcp); | ||
645 | |||
646 | for (i = 0; i < num_rcvd; i++) { | ||
647 | page_info = get_rx_page_info(adapter, rxq_idx); | ||
648 | put_page(page_info->page); | ||
649 | memset(page_info, 0, sizeof(*page_info)); | ||
650 | index_inc(&rxq_idx, rxq->len); | ||
651 | } | ||
652 | } | ||
653 | |||
654 | /* | ||
655 | * skb_fill_rx_data forms a complete skb for an ether frame | ||
656 | * indicated by rxcp. | ||
657 | */ | ||
658 | static void skb_fill_rx_data(struct be_adapter *adapter, | ||
659 | struct sk_buff *skb, struct be_eth_rx_compl *rxcp) | ||
660 | { | ||
661 | struct be_queue_info *rxq = &adapter->rx_obj.q; | ||
662 | struct be_rx_page_info *page_info; | ||
663 | u16 rxq_idx, i, num_rcvd; | ||
664 | u32 pktsize, hdr_len, curr_frag_len; | ||
665 | u8 *start; | ||
666 | |||
667 | rxq_idx = AMAP_GET_BITS(struct amap_eth_rx_compl, fragndx, rxcp); | ||
668 | pktsize = AMAP_GET_BITS(struct amap_eth_rx_compl, pktsize, rxcp); | ||
669 | num_rcvd = AMAP_GET_BITS(struct amap_eth_rx_compl, numfrags, rxcp); | ||
670 | |||
671 | page_info = get_rx_page_info(adapter, rxq_idx); | ||
672 | |||
673 | start = page_address(page_info->page) + page_info->page_offset; | ||
674 | prefetch(start); | ||
675 | |||
676 | /* Copy data in the first descriptor of this completion */ | ||
677 | curr_frag_len = min(pktsize, rx_frag_size); | ||
678 | |||
679 | /* Copy the header portion into skb_data */ | ||
680 | hdr_len = min((u32)BE_HDR_LEN, curr_frag_len); | ||
681 | memcpy(skb->data, start, hdr_len); | ||
682 | skb->len = curr_frag_len; | ||
683 | if (curr_frag_len <= BE_HDR_LEN) { /* tiny packet */ | ||
684 | /* Complete packet has now been moved to data */ | ||
685 | put_page(page_info->page); | ||
686 | skb->data_len = 0; | ||
687 | skb->tail += curr_frag_len; | ||
688 | } else { | ||
689 | skb_shinfo(skb)->nr_frags = 1; | ||
690 | skb_shinfo(skb)->frags[0].page = page_info->page; | ||
691 | skb_shinfo(skb)->frags[0].page_offset = | ||
692 | page_info->page_offset + hdr_len; | ||
693 | skb_shinfo(skb)->frags[0].size = curr_frag_len - hdr_len; | ||
694 | skb->data_len = curr_frag_len - hdr_len; | ||
695 | skb->tail += hdr_len; | ||
696 | } | ||
697 | memset(page_info, 0, sizeof(*page_info)); | ||
698 | |||
699 | if (pktsize <= rx_frag_size) { | ||
700 | BUG_ON(num_rcvd != 1); | ||
701 | return; | ||
702 | } | ||
703 | |||
704 | /* More frags present for this completion */ | ||
705 | pktsize -= curr_frag_len; /* account for above copied frag */ | ||
706 | for (i = 1; i < num_rcvd; i++) { | ||
707 | index_inc(&rxq_idx, rxq->len); | ||
708 | page_info = get_rx_page_info(adapter, rxq_idx); | ||
709 | |||
710 | curr_frag_len = min(pktsize, rx_frag_size); | ||
711 | |||
712 | skb_shinfo(skb)->frags[i].page = page_info->page; | ||
713 | skb_shinfo(skb)->frags[i].page_offset = page_info->page_offset; | ||
714 | skb_shinfo(skb)->frags[i].size = curr_frag_len; | ||
715 | skb->len += curr_frag_len; | ||
716 | skb->data_len += curr_frag_len; | ||
717 | skb_shinfo(skb)->nr_frags++; | ||
718 | pktsize -= curr_frag_len; | ||
719 | |||
720 | memset(page_info, 0, sizeof(*page_info)); | ||
721 | } | ||
722 | |||
723 | be_rx_rate_update(adapter, pktsize, num_rcvd); | ||
724 | return; | ||
725 | } | ||
726 | |||
727 | /* Process the RX completion indicated by rxcp when LRO is disabled */ | ||
728 | static void be_rx_compl_process(struct be_adapter *adapter, | ||
729 | struct be_eth_rx_compl *rxcp) | ||
730 | { | ||
731 | struct sk_buff *skb; | ||
732 | u32 vtp, vid; | ||
733 | int l4_cksm; | ||
734 | |||
735 | l4_cksm = AMAP_GET_BITS(struct amap_eth_rx_compl, l4_cksm, rxcp); | ||
736 | vtp = AMAP_GET_BITS(struct amap_eth_rx_compl, vtp, rxcp); | ||
737 | |||
738 | skb = netdev_alloc_skb(adapter->netdev, BE_HDR_LEN + NET_IP_ALIGN); | ||
739 | if (!skb) { | ||
740 | if (net_ratelimit()) | ||
741 | dev_warn(&adapter->pdev->dev, "skb alloc failed\n"); | ||
742 | be_rx_compl_discard(adapter, rxcp); | ||
743 | return; | ||
744 | } | ||
745 | |||
746 | skb_reserve(skb, NET_IP_ALIGN); | ||
747 | |||
748 | skb_fill_rx_data(adapter, skb, rxcp); | ||
749 | |||
750 | if (l4_cksm && adapter->rx_csum) | ||
751 | skb->ip_summed = CHECKSUM_UNNECESSARY; | ||
752 | else | ||
753 | skb->ip_summed = CHECKSUM_NONE; | ||
754 | |||
755 | skb->truesize = skb->len + sizeof(struct sk_buff); | ||
756 | skb->protocol = eth_type_trans(skb, adapter->netdev); | ||
757 | skb->dev = adapter->netdev; | ||
758 | |||
759 | if (vtp) { | ||
760 | if (!adapter->vlan_grp || adapter->num_vlans == 0) { | ||
761 | kfree_skb(skb); | ||
762 | return; | ||
763 | } | ||
764 | vid = AMAP_GET_BITS(struct amap_eth_rx_compl, vlan_tag, rxcp); | ||
765 | vid = be16_to_cpu(vid); | ||
766 | vlan_hwaccel_receive_skb(skb, adapter->vlan_grp, vid); | ||
767 | } else { | ||
768 | netif_receive_skb(skb); | ||
769 | } | ||
770 | |||
771 | adapter->netdev->last_rx = jiffies; | ||
772 | |||
773 | return; | ||
774 | } | ||
775 | |||
776 | /* Process the RX completion indicated by rxcp when LRO is enabled */ | ||
777 | static void be_rx_compl_process_lro(struct be_adapter *adapter, | ||
778 | struct be_eth_rx_compl *rxcp) | ||
779 | { | ||
780 | struct be_rx_page_info *page_info; | ||
781 | struct skb_frag_struct rx_frags[BE_MAX_FRAGS_PER_FRAME]; | ||
782 | struct be_queue_info *rxq = &adapter->rx_obj.q; | ||
783 | u32 num_rcvd, pkt_size, remaining, vlanf, curr_frag_len; | ||
784 | u16 i, rxq_idx = 0, vid; | ||
785 | |||
786 | num_rcvd = AMAP_GET_BITS(struct amap_eth_rx_compl, numfrags, rxcp); | ||
787 | pkt_size = AMAP_GET_BITS(struct amap_eth_rx_compl, pktsize, rxcp); | ||
788 | vlanf = AMAP_GET_BITS(struct amap_eth_rx_compl, vtp, rxcp); | ||
789 | rxq_idx = AMAP_GET_BITS(struct amap_eth_rx_compl, fragndx, rxcp); | ||
790 | |||
791 | remaining = pkt_size; | ||
792 | for (i = 0; i < num_rcvd; i++) { | ||
793 | page_info = get_rx_page_info(adapter, rxq_idx); | ||
794 | |||
795 | curr_frag_len = min(remaining, rx_frag_size); | ||
796 | |||
797 | rx_frags[i].page = page_info->page; | ||
798 | rx_frags[i].page_offset = page_info->page_offset; | ||
799 | rx_frags[i].size = curr_frag_len; | ||
800 | remaining -= curr_frag_len; | ||
801 | |||
802 | index_inc(&rxq_idx, rxq->len); | ||
803 | |||
804 | memset(page_info, 0, sizeof(*page_info)); | ||
805 | } | ||
806 | |||
807 | if (likely(!vlanf)) { | ||
808 | lro_receive_frags(&adapter->rx_obj.lro_mgr, rx_frags, pkt_size, | ||
809 | pkt_size, NULL, 0); | ||
810 | } else { | ||
811 | vid = AMAP_GET_BITS(struct amap_eth_rx_compl, vlan_tag, rxcp); | ||
812 | vid = be16_to_cpu(vid); | ||
813 | |||
814 | if (!adapter->vlan_grp || adapter->num_vlans == 0) | ||
815 | return; | ||
816 | |||
817 | lro_vlan_hwaccel_receive_frags(&adapter->rx_obj.lro_mgr, | ||
818 | rx_frags, pkt_size, pkt_size, adapter->vlan_grp, | ||
819 | vid, NULL, 0); | ||
820 | } | ||
821 | |||
822 | be_rx_rate_update(adapter, pkt_size, num_rcvd); | ||
823 | return; | ||
824 | } | ||
825 | |||
826 | static struct be_eth_rx_compl *be_rx_compl_get(struct be_adapter *adapter) | ||
827 | { | ||
828 | struct be_eth_rx_compl *rxcp = queue_tail_node(&adapter->rx_obj.cq); | ||
829 | |||
830 | if (rxcp->dw[offsetof(struct amap_eth_rx_compl, valid) / 32] == 0) | ||
831 | return NULL; | ||
832 | |||
833 | be_dws_le_to_cpu(rxcp, sizeof(*rxcp)); | ||
834 | |||
835 | rxcp->dw[offsetof(struct amap_eth_rx_compl, valid) / 32] = 0; | ||
836 | |||
837 | queue_tail_inc(&adapter->rx_obj.cq); | ||
838 | return rxcp; | ||
839 | } | ||
840 | |||
841 | static inline struct page *be_alloc_pages(u32 size) | ||
842 | { | ||
843 | gfp_t alloc_flags = GFP_ATOMIC; | ||
844 | u32 order = get_order(size); | ||
845 | if (order > 0) | ||
846 | alloc_flags |= __GFP_COMP; | ||
847 | return alloc_pages(alloc_flags, order); | ||
848 | } | ||
849 | |||
850 | /* | ||
851 | * Allocate a page, split it to fragments of size rx_frag_size and post as | ||
852 | * receive buffers to BE | ||
853 | */ | ||
854 | static void be_post_rx_frags(struct be_adapter *adapter) | ||
855 | { | ||
856 | struct be_rx_page_info *page_info_tbl = adapter->rx_obj.page_info_tbl; | ||
857 | struct be_rx_page_info *page_info = NULL; | ||
858 | struct be_queue_info *rxq = &adapter->rx_obj.q; | ||
859 | struct page *pagep = NULL; | ||
860 | struct be_eth_rx_d *rxd; | ||
861 | u64 page_dmaaddr = 0, frag_dmaaddr; | ||
862 | u32 posted, page_offset = 0; | ||
863 | |||
864 | |||
865 | page_info = &page_info_tbl[rxq->head]; | ||
866 | for (posted = 0; posted < MAX_RX_POST && !page_info->page; posted++) { | ||
867 | if (!pagep) { | ||
868 | pagep = be_alloc_pages(adapter->big_page_size); | ||
869 | if (unlikely(!pagep)) { | ||
870 | drvr_stats(adapter)->be_ethrx_post_fail++; | ||
871 | break; | ||
872 | } | ||
873 | page_dmaaddr = pci_map_page(adapter->pdev, pagep, 0, | ||
874 | adapter->big_page_size, | ||
875 | PCI_DMA_FROMDEVICE); | ||
876 | page_info->page_offset = 0; | ||
877 | } else { | ||
878 | get_page(pagep); | ||
879 | page_info->page_offset = page_offset + rx_frag_size; | ||
880 | } | ||
881 | page_offset = page_info->page_offset; | ||
882 | page_info->page = pagep; | ||
883 | pci_unmap_addr_set(page_info, bus, page_dmaaddr); | ||
884 | frag_dmaaddr = page_dmaaddr + page_info->page_offset; | ||
885 | |||
886 | rxd = queue_head_node(rxq); | ||
887 | rxd->fragpa_lo = cpu_to_le32(frag_dmaaddr & 0xFFFFFFFF); | ||
888 | rxd->fragpa_hi = cpu_to_le32(upper_32_bits(frag_dmaaddr)); | ||
889 | queue_head_inc(rxq); | ||
890 | |||
891 | /* Any space left in the current big page for another frag? */ | ||
892 | if ((page_offset + rx_frag_size + rx_frag_size) > | ||
893 | adapter->big_page_size) { | ||
894 | pagep = NULL; | ||
895 | page_info->last_page_user = true; | ||
896 | } | ||
897 | page_info = &page_info_tbl[rxq->head]; | ||
898 | } | ||
899 | if (pagep) | ||
900 | page_info->last_page_user = true; | ||
901 | |||
902 | if (posted) { | ||
903 | be_rxq_notify(&adapter->ctrl, rxq->id, posted); | ||
904 | atomic_add(posted, &rxq->used); | ||
905 | } | ||
906 | |||
907 | return; | ||
908 | } | ||
909 | |||
910 | static struct be_eth_tx_compl * | ||
911 | be_tx_compl_get(struct be_adapter *adapter) | ||
912 | { | ||
913 | struct be_queue_info *tx_cq = &adapter->tx_obj.cq; | ||
914 | struct be_eth_tx_compl *txcp = queue_tail_node(tx_cq); | ||
915 | |||
916 | if (txcp->dw[offsetof(struct amap_eth_tx_compl, valid) / 32] == 0) | ||
917 | return NULL; | ||
918 | |||
919 | be_dws_le_to_cpu(txcp, sizeof(*txcp)); | ||
920 | |||
921 | txcp->dw[offsetof(struct amap_eth_tx_compl, valid) / 32] = 0; | ||
922 | |||
923 | queue_tail_inc(tx_cq); | ||
924 | return txcp; | ||
925 | } | ||
926 | |||
927 | static void be_tx_compl_process(struct be_adapter *adapter, u16 last_index) | ||
928 | { | ||
929 | struct be_queue_info *txq = &adapter->tx_obj.q; | ||
930 | struct be_eth_wrb *wrb; | ||
931 | struct sk_buff **sent_skbs = adapter->tx_obj.sent_skb_list; | ||
932 | struct sk_buff *sent_skb; | ||
933 | u64 busaddr; | ||
934 | u16 cur_index, num_wrbs = 0; | ||
935 | |||
936 | cur_index = txq->tail; | ||
937 | sent_skb = sent_skbs[cur_index]; | ||
938 | BUG_ON(!sent_skb); | ||
939 | sent_skbs[cur_index] = NULL; | ||
940 | |||
941 | do { | ||
942 | cur_index = txq->tail; | ||
943 | wrb = queue_tail_node(txq); | ||
944 | be_dws_le_to_cpu(wrb, sizeof(*wrb)); | ||
945 | busaddr = ((u64)wrb->frag_pa_hi << 32) | (u64)wrb->frag_pa_lo; | ||
946 | if (busaddr != 0) { | ||
947 | pci_unmap_single(adapter->pdev, busaddr, | ||
948 | wrb->frag_len, PCI_DMA_TODEVICE); | ||
949 | } | ||
950 | num_wrbs++; | ||
951 | queue_tail_inc(txq); | ||
952 | } while (cur_index != last_index); | ||
953 | |||
954 | atomic_sub(num_wrbs, &txq->used); | ||
955 | |||
956 | kfree_skb(sent_skb); | ||
957 | } | ||
958 | |||
959 | static void be_rx_q_clean(struct be_adapter *adapter) | ||
960 | { | ||
961 | struct be_rx_page_info *page_info; | ||
962 | struct be_queue_info *rxq = &adapter->rx_obj.q; | ||
963 | struct be_queue_info *rx_cq = &adapter->rx_obj.cq; | ||
964 | struct be_eth_rx_compl *rxcp; | ||
965 | u16 tail; | ||
966 | |||
967 | /* First cleanup pending rx completions */ | ||
968 | while ((rxcp = be_rx_compl_get(adapter)) != NULL) { | ||
969 | be_rx_compl_discard(adapter, rxcp); | ||
970 | be_cq_notify(&adapter->ctrl, rx_cq->id, true, 1); | ||
971 | } | ||
972 | |||
973 | /* Then free posted rx buffer that were not used */ | ||
974 | tail = (rxq->head + rxq->len - atomic_read(&rxq->used)) % rxq->len; | ||
975 | for (; tail != rxq->head; index_inc(&tail, rxq->len)) { | ||
976 | page_info = get_rx_page_info(adapter, tail); | ||
977 | put_page(page_info->page); | ||
978 | memset(page_info, 0, sizeof(*page_info)); | ||
979 | } | ||
980 | BUG_ON(atomic_read(&rxq->used)); | ||
981 | } | ||
982 | |||
983 | static void be_tx_q_clean(struct be_adapter *adapter) | ||
984 | { | ||
985 | struct sk_buff **sent_skbs = adapter->tx_obj.sent_skb_list; | ||
986 | struct sk_buff *sent_skb; | ||
987 | struct be_queue_info *txq = &adapter->tx_obj.q; | ||
988 | u16 last_index; | ||
989 | bool dummy_wrb; | ||
990 | |||
991 | while (atomic_read(&txq->used)) { | ||
992 | sent_skb = sent_skbs[txq->tail]; | ||
993 | last_index = txq->tail; | ||
994 | index_adv(&last_index, | ||
995 | wrb_cnt_for_skb(sent_skb, &dummy_wrb) - 1, txq->len); | ||
996 | be_tx_compl_process(adapter, last_index); | ||
997 | } | ||
998 | } | ||
999 | |||
1000 | static void be_tx_queues_destroy(struct be_adapter *adapter) | ||
1001 | { | ||
1002 | struct be_queue_info *q; | ||
1003 | |||
1004 | q = &adapter->tx_obj.q; | ||
1005 | if (q->created) | ||
1006 | be_cmd_q_destroy(&adapter->ctrl, q, QTYPE_TXQ); | ||
1007 | be_queue_free(adapter, q); | ||
1008 | |||
1009 | q = &adapter->tx_obj.cq; | ||
1010 | if (q->created) | ||
1011 | be_cmd_q_destroy(&adapter->ctrl, q, QTYPE_CQ); | ||
1012 | be_queue_free(adapter, q); | ||
1013 | |||
1014 | /* No more tx completions can be rcvd now; clean up if there are | ||
1015 | * any pending completions or pending tx requests */ | ||
1016 | be_tx_q_clean(adapter); | ||
1017 | |||
1018 | q = &adapter->tx_eq.q; | ||
1019 | if (q->created) | ||
1020 | be_cmd_q_destroy(&adapter->ctrl, q, QTYPE_EQ); | ||
1021 | be_queue_free(adapter, q); | ||
1022 | } | ||
1023 | |||
1024 | static int be_tx_queues_create(struct be_adapter *adapter) | ||
1025 | { | ||
1026 | struct be_queue_info *eq, *q, *cq; | ||
1027 | |||
1028 | adapter->tx_eq.max_eqd = 0; | ||
1029 | adapter->tx_eq.min_eqd = 0; | ||
1030 | adapter->tx_eq.cur_eqd = 96; | ||
1031 | adapter->tx_eq.enable_aic = false; | ||
1032 | /* Alloc Tx Event queue */ | ||
1033 | eq = &adapter->tx_eq.q; | ||
1034 | if (be_queue_alloc(adapter, eq, EVNT_Q_LEN, sizeof(struct be_eq_entry))) | ||
1035 | return -1; | ||
1036 | |||
1037 | /* Ask BE to create Tx Event queue */ | ||
1038 | if (be_cmd_eq_create(&adapter->ctrl, eq, adapter->tx_eq.cur_eqd)) | ||
1039 | goto tx_eq_free; | ||
1040 | /* Alloc TX eth compl queue */ | ||
1041 | cq = &adapter->tx_obj.cq; | ||
1042 | if (be_queue_alloc(adapter, cq, TX_CQ_LEN, | ||
1043 | sizeof(struct be_eth_tx_compl))) | ||
1044 | goto tx_eq_destroy; | ||
1045 | |||
1046 | /* Ask BE to create Tx eth compl queue */ | ||
1047 | if (be_cmd_cq_create(&adapter->ctrl, cq, eq, false, false, 3)) | ||
1048 | goto tx_cq_free; | ||
1049 | |||
1050 | /* Alloc TX eth queue */ | ||
1051 | q = &adapter->tx_obj.q; | ||
1052 | if (be_queue_alloc(adapter, q, TX_Q_LEN, sizeof(struct be_eth_wrb))) | ||
1053 | goto tx_cq_destroy; | ||
1054 | |||
1055 | /* Ask BE to create Tx eth queue */ | ||
1056 | if (be_cmd_txq_create(&adapter->ctrl, q, cq)) | ||
1057 | goto tx_q_free; | ||
1058 | return 0; | ||
1059 | |||
1060 | tx_q_free: | ||
1061 | be_queue_free(adapter, q); | ||
1062 | tx_cq_destroy: | ||
1063 | be_cmd_q_destroy(&adapter->ctrl, cq, QTYPE_CQ); | ||
1064 | tx_cq_free: | ||
1065 | be_queue_free(adapter, cq); | ||
1066 | tx_eq_destroy: | ||
1067 | be_cmd_q_destroy(&adapter->ctrl, eq, QTYPE_EQ); | ||
1068 | tx_eq_free: | ||
1069 | be_queue_free(adapter, eq); | ||
1070 | return -1; | ||
1071 | } | ||
1072 | |||
1073 | static void be_rx_queues_destroy(struct be_adapter *adapter) | ||
1074 | { | ||
1075 | struct be_queue_info *q; | ||
1076 | |||
1077 | q = &adapter->rx_obj.q; | ||
1078 | if (q->created) { | ||
1079 | be_cmd_q_destroy(&adapter->ctrl, q, QTYPE_RXQ); | ||
1080 | be_rx_q_clean(adapter); | ||
1081 | } | ||
1082 | be_queue_free(adapter, q); | ||
1083 | |||
1084 | q = &adapter->rx_obj.cq; | ||
1085 | if (q->created) | ||
1086 | be_cmd_q_destroy(&adapter->ctrl, q, QTYPE_CQ); | ||
1087 | be_queue_free(adapter, q); | ||
1088 | |||
1089 | q = &adapter->rx_eq.q; | ||
1090 | if (q->created) | ||
1091 | be_cmd_q_destroy(&adapter->ctrl, q, QTYPE_EQ); | ||
1092 | be_queue_free(adapter, q); | ||
1093 | } | ||
1094 | |||
1095 | static int be_rx_queues_create(struct be_adapter *adapter) | ||
1096 | { | ||
1097 | struct be_queue_info *eq, *q, *cq; | ||
1098 | int rc; | ||
1099 | |||
1100 | adapter->max_rx_coal = BE_MAX_FRAGS_PER_FRAME; | ||
1101 | adapter->big_page_size = (1 << get_order(rx_frag_size)) * PAGE_SIZE; | ||
1102 | adapter->rx_eq.max_eqd = BE_MAX_EQD; | ||
1103 | adapter->rx_eq.min_eqd = 0; | ||
1104 | adapter->rx_eq.cur_eqd = 0; | ||
1105 | adapter->rx_eq.enable_aic = true; | ||
1106 | |||
1107 | /* Alloc Rx Event queue */ | ||
1108 | eq = &adapter->rx_eq.q; | ||
1109 | rc = be_queue_alloc(adapter, eq, EVNT_Q_LEN, | ||
1110 | sizeof(struct be_eq_entry)); | ||
1111 | if (rc) | ||
1112 | return rc; | ||
1113 | |||
1114 | /* Ask BE to create Rx Event queue */ | ||
1115 | rc = be_cmd_eq_create(&adapter->ctrl, eq, adapter->rx_eq.cur_eqd); | ||
1116 | if (rc) | ||
1117 | goto rx_eq_free; | ||
1118 | |||
1119 | /* Alloc RX eth compl queue */ | ||
1120 | cq = &adapter->rx_obj.cq; | ||
1121 | rc = be_queue_alloc(adapter, cq, RX_CQ_LEN, | ||
1122 | sizeof(struct be_eth_rx_compl)); | ||
1123 | if (rc) | ||
1124 | goto rx_eq_destroy; | ||
1125 | |||
1126 | /* Ask BE to create Rx eth compl queue */ | ||
1127 | rc = be_cmd_cq_create(&adapter->ctrl, cq, eq, false, false, 3); | ||
1128 | if (rc) | ||
1129 | goto rx_cq_free; | ||
1130 | |||
1131 | /* Alloc RX eth queue */ | ||
1132 | q = &adapter->rx_obj.q; | ||
1133 | rc = be_queue_alloc(adapter, q, RX_Q_LEN, sizeof(struct be_eth_rx_d)); | ||
1134 | if (rc) | ||
1135 | goto rx_cq_destroy; | ||
1136 | |||
1137 | /* Ask BE to create Rx eth queue */ | ||
1138 | rc = be_cmd_rxq_create(&adapter->ctrl, q, cq->id, rx_frag_size, | ||
1139 | BE_MAX_JUMBO_FRAME_SIZE, adapter->if_handle, false); | ||
1140 | if (rc) | ||
1141 | goto rx_q_free; | ||
1142 | |||
1143 | return 0; | ||
1144 | rx_q_free: | ||
1145 | be_queue_free(adapter, q); | ||
1146 | rx_cq_destroy: | ||
1147 | be_cmd_q_destroy(&adapter->ctrl, cq, QTYPE_CQ); | ||
1148 | rx_cq_free: | ||
1149 | be_queue_free(adapter, cq); | ||
1150 | rx_eq_destroy: | ||
1151 | be_cmd_q_destroy(&adapter->ctrl, eq, QTYPE_EQ); | ||
1152 | rx_eq_free: | ||
1153 | be_queue_free(adapter, eq); | ||
1154 | return rc; | ||
1155 | } | ||
1156 | static bool event_get(struct be_eq_obj *eq_obj, u16 *rid) | ||
1157 | { | ||
1158 | struct be_eq_entry *entry = queue_tail_node(&eq_obj->q); | ||
1159 | u32 evt = entry->evt; | ||
1160 | |||
1161 | if (!evt) | ||
1162 | return false; | ||
1163 | |||
1164 | evt = le32_to_cpu(evt); | ||
1165 | *rid = (evt >> EQ_ENTRY_RES_ID_SHIFT) & EQ_ENTRY_RES_ID_MASK; | ||
1166 | entry->evt = 0; | ||
1167 | queue_tail_inc(&eq_obj->q); | ||
1168 | return true; | ||
1169 | } | ||
1170 | |||
1171 | static int event_handle(struct be_ctrl_info *ctrl, | ||
1172 | struct be_eq_obj *eq_obj) | ||
1173 | { | ||
1174 | u16 rid = 0, num = 0; | ||
1175 | |||
1176 | while (event_get(eq_obj, &rid)) | ||
1177 | num++; | ||
1178 | |||
1179 | /* We can see an interrupt and no event */ | ||
1180 | be_eq_notify(ctrl, eq_obj->q.id, true, true, num); | ||
1181 | if (num) | ||
1182 | napi_schedule(&eq_obj->napi); | ||
1183 | |||
1184 | return num; | ||
1185 | } | ||
1186 | |||
1187 | static irqreturn_t be_intx(int irq, void *dev) | ||
1188 | { | ||
1189 | struct be_adapter *adapter = dev; | ||
1190 | struct be_ctrl_info *ctrl = &adapter->ctrl; | ||
1191 | int rx, tx; | ||
1192 | |||
1193 | tx = event_handle(ctrl, &adapter->tx_eq); | ||
1194 | rx = event_handle(ctrl, &adapter->rx_eq); | ||
1195 | |||
1196 | if (rx || tx) | ||
1197 | return IRQ_HANDLED; | ||
1198 | else | ||
1199 | return IRQ_NONE; | ||
1200 | } | ||
1201 | |||
1202 | static irqreturn_t be_msix_rx(int irq, void *dev) | ||
1203 | { | ||
1204 | struct be_adapter *adapter = dev; | ||
1205 | |||
1206 | event_handle(&adapter->ctrl, &adapter->rx_eq); | ||
1207 | |||
1208 | return IRQ_HANDLED; | ||
1209 | } | ||
1210 | |||
1211 | static irqreturn_t be_msix_tx(int irq, void *dev) | ||
1212 | { | ||
1213 | struct be_adapter *adapter = dev; | ||
1214 | |||
1215 | event_handle(&adapter->ctrl, &adapter->tx_eq); | ||
1216 | |||
1217 | return IRQ_HANDLED; | ||
1218 | } | ||
1219 | |||
1220 | static inline bool do_lro(struct be_adapter *adapter, | ||
1221 | struct be_eth_rx_compl *rxcp) | ||
1222 | { | ||
1223 | int err = AMAP_GET_BITS(struct amap_eth_rx_compl, err, rxcp); | ||
1224 | int tcp_frame = AMAP_GET_BITS(struct amap_eth_rx_compl, tcpf, rxcp); | ||
1225 | |||
1226 | if (err) | ||
1227 | drvr_stats(adapter)->be_rxcp_err++; | ||
1228 | |||
1229 | return (!tcp_frame || err || (adapter->max_rx_coal <= 1)) ? | ||
1230 | false : true; | ||
1231 | } | ||
1232 | |||
1233 | int be_poll_rx(struct napi_struct *napi, int budget) | ||
1234 | { | ||
1235 | struct be_eq_obj *rx_eq = container_of(napi, struct be_eq_obj, napi); | ||
1236 | struct be_adapter *adapter = | ||
1237 | container_of(rx_eq, struct be_adapter, rx_eq); | ||
1238 | struct be_queue_info *rx_cq = &adapter->rx_obj.cq; | ||
1239 | struct be_eth_rx_compl *rxcp; | ||
1240 | u32 work_done; | ||
1241 | |||
1242 | for (work_done = 0; work_done < budget; work_done++) { | ||
1243 | rxcp = be_rx_compl_get(adapter); | ||
1244 | if (!rxcp) | ||
1245 | break; | ||
1246 | |||
1247 | if (do_lro(adapter, rxcp)) | ||
1248 | be_rx_compl_process_lro(adapter, rxcp); | ||
1249 | else | ||
1250 | be_rx_compl_process(adapter, rxcp); | ||
1251 | } | ||
1252 | |||
1253 | lro_flush_all(&adapter->rx_obj.lro_mgr); | ||
1254 | |||
1255 | /* Refill the queue */ | ||
1256 | if (atomic_read(&adapter->rx_obj.q.used) < RX_FRAGS_REFILL_WM) | ||
1257 | be_post_rx_frags(adapter); | ||
1258 | |||
1259 | /* All consumed */ | ||
1260 | if (work_done < budget) { | ||
1261 | napi_complete(napi); | ||
1262 | be_cq_notify(&adapter->ctrl, rx_cq->id, true, work_done); | ||
1263 | } else { | ||
1264 | /* More to be consumed; continue with interrupts disabled */ | ||
1265 | be_cq_notify(&adapter->ctrl, rx_cq->id, false, work_done); | ||
1266 | } | ||
1267 | return work_done; | ||
1268 | } | ||
1269 | |||
1270 | /* For TX we don't honour budget; consume everything */ | ||
1271 | int be_poll_tx(struct napi_struct *napi, int budget) | ||
1272 | { | ||
1273 | struct be_eq_obj *tx_eq = container_of(napi, struct be_eq_obj, napi); | ||
1274 | struct be_adapter *adapter = | ||
1275 | container_of(tx_eq, struct be_adapter, tx_eq); | ||
1276 | struct be_tx_obj *tx_obj = &adapter->tx_obj; | ||
1277 | struct be_queue_info *tx_cq = &tx_obj->cq; | ||
1278 | struct be_queue_info *txq = &tx_obj->q; | ||
1279 | struct be_eth_tx_compl *txcp; | ||
1280 | u32 num_cmpl = 0; | ||
1281 | u16 end_idx; | ||
1282 | |||
1283 | while ((txcp = be_tx_compl_get(adapter))) { | ||
1284 | end_idx = AMAP_GET_BITS(struct amap_eth_tx_compl, | ||
1285 | wrb_index, txcp); | ||
1286 | be_tx_compl_process(adapter, end_idx); | ||
1287 | num_cmpl++; | ||
1288 | } | ||
1289 | |||
1290 | /* As Tx wrbs have been freed up, wake up netdev queue if | ||
1291 | * it was stopped due to lack of tx wrbs. | ||
1292 | */ | ||
1293 | if (netif_queue_stopped(adapter->netdev) && | ||
1294 | atomic_read(&txq->used) < txq->len / 2) { | ||
1295 | netif_wake_queue(adapter->netdev); | ||
1296 | } | ||
1297 | |||
1298 | napi_complete(napi); | ||
1299 | |||
1300 | be_cq_notify(&adapter->ctrl, tx_cq->id, true, num_cmpl); | ||
1301 | |||
1302 | drvr_stats(adapter)->be_tx_events++; | ||
1303 | drvr_stats(adapter)->be_tx_compl += num_cmpl; | ||
1304 | |||
1305 | return 1; | ||
1306 | } | ||
1307 | |||
1308 | static void be_msix_enable(struct be_adapter *adapter) | ||
1309 | { | ||
1310 | int i, status; | ||
1311 | |||
1312 | for (i = 0; i < BE_NUM_MSIX_VECTORS; i++) | ||
1313 | adapter->msix_entries[i].entry = i; | ||
1314 | |||
1315 | status = pci_enable_msix(adapter->pdev, adapter->msix_entries, | ||
1316 | BE_NUM_MSIX_VECTORS); | ||
1317 | if (status == 0) | ||
1318 | adapter->msix_enabled = true; | ||
1319 | return; | ||
1320 | } | ||
1321 | |||
1322 | static inline int be_msix_vec_get(struct be_adapter *adapter, u32 eq_id) | ||
1323 | { | ||
1324 | return adapter->msix_entries[eq_id - | ||
1325 | 8 * adapter->ctrl.pci_func].vector; | ||
1326 | } | ||
1327 | |||
1328 | static int be_msix_register(struct be_adapter *adapter) | ||
1329 | { | ||
1330 | struct net_device *netdev = adapter->netdev; | ||
1331 | struct be_eq_obj *tx_eq = &adapter->tx_eq; | ||
1332 | struct be_eq_obj *rx_eq = &adapter->rx_eq; | ||
1333 | int status, vec; | ||
1334 | |||
1335 | sprintf(tx_eq->desc, "%s-tx", netdev->name); | ||
1336 | vec = be_msix_vec_get(adapter, tx_eq->q.id); | ||
1337 | status = request_irq(vec, be_msix_tx, 0, tx_eq->desc, adapter); | ||
1338 | if (status) | ||
1339 | goto err; | ||
1340 | |||
1341 | sprintf(rx_eq->desc, "%s-rx", netdev->name); | ||
1342 | vec = be_msix_vec_get(adapter, rx_eq->q.id); | ||
1343 | status = request_irq(vec, be_msix_rx, 0, rx_eq->desc, adapter); | ||
1344 | if (status) { /* Free TX IRQ */ | ||
1345 | vec = be_msix_vec_get(adapter, tx_eq->q.id); | ||
1346 | free_irq(vec, adapter); | ||
1347 | goto err; | ||
1348 | } | ||
1349 | return 0; | ||
1350 | err: | ||
1351 | dev_warn(&adapter->pdev->dev, | ||
1352 | "MSIX Request IRQ failed - err %d\n", status); | ||
1353 | pci_disable_msix(adapter->pdev); | ||
1354 | adapter->msix_enabled = false; | ||
1355 | return status; | ||
1356 | } | ||
1357 | |||
1358 | static int be_irq_register(struct be_adapter *adapter) | ||
1359 | { | ||
1360 | struct net_device *netdev = adapter->netdev; | ||
1361 | int status; | ||
1362 | |||
1363 | if (adapter->msix_enabled) { | ||
1364 | status = be_msix_register(adapter); | ||
1365 | if (status == 0) | ||
1366 | goto done; | ||
1367 | } | ||
1368 | |||
1369 | /* INTx */ | ||
1370 | netdev->irq = adapter->pdev->irq; | ||
1371 | status = request_irq(netdev->irq, be_intx, IRQF_SHARED, netdev->name, | ||
1372 | adapter); | ||
1373 | if (status) { | ||
1374 | dev_err(&adapter->pdev->dev, | ||
1375 | "INTx request IRQ failed - err %d\n", status); | ||
1376 | return status; | ||
1377 | } | ||
1378 | done: | ||
1379 | adapter->isr_registered = true; | ||
1380 | return 0; | ||
1381 | } | ||
1382 | |||
1383 | static void be_irq_unregister(struct be_adapter *adapter) | ||
1384 | { | ||
1385 | struct net_device *netdev = adapter->netdev; | ||
1386 | int vec; | ||
1387 | |||
1388 | if (!adapter->isr_registered) | ||
1389 | return; | ||
1390 | |||
1391 | /* INTx */ | ||
1392 | if (!adapter->msix_enabled) { | ||
1393 | free_irq(netdev->irq, adapter); | ||
1394 | goto done; | ||
1395 | } | ||
1396 | |||
1397 | /* MSIx */ | ||
1398 | vec = be_msix_vec_get(adapter, adapter->tx_eq.q.id); | ||
1399 | free_irq(vec, adapter); | ||
1400 | vec = be_msix_vec_get(adapter, adapter->rx_eq.q.id); | ||
1401 | free_irq(vec, adapter); | ||
1402 | done: | ||
1403 | adapter->isr_registered = false; | ||
1404 | return; | ||
1405 | } | ||
1406 | |||
1407 | static int be_open(struct net_device *netdev) | ||
1408 | { | ||
1409 | struct be_adapter *adapter = netdev_priv(netdev); | ||
1410 | struct be_ctrl_info *ctrl = &adapter->ctrl; | ||
1411 | struct be_eq_obj *rx_eq = &adapter->rx_eq; | ||
1412 | struct be_eq_obj *tx_eq = &adapter->tx_eq; | ||
1413 | u32 if_flags; | ||
1414 | int status; | ||
1415 | |||
1416 | if_flags = BE_IF_FLAGS_BROADCAST | BE_IF_FLAGS_PROMISCUOUS | | ||
1417 | BE_IF_FLAGS_MCAST_PROMISCUOUS | BE_IF_FLAGS_UNTAGGED | | ||
1418 | BE_IF_FLAGS_PASS_L3L4_ERRORS; | ||
1419 | status = be_cmd_if_create(ctrl, if_flags, netdev->dev_addr, | ||
1420 | false/* pmac_invalid */, &adapter->if_handle, | ||
1421 | &adapter->pmac_id); | ||
1422 | if (status != 0) | ||
1423 | goto do_none; | ||
1424 | |||
1425 | status = be_cmd_set_flow_control(ctrl, true, true); | ||
1426 | if (status != 0) | ||
1427 | goto if_destroy; | ||
1428 | |||
1429 | status = be_tx_queues_create(adapter); | ||
1430 | if (status != 0) | ||
1431 | goto if_destroy; | ||
1432 | |||
1433 | status = be_rx_queues_create(adapter); | ||
1434 | if (status != 0) | ||
1435 | goto tx_qs_destroy; | ||
1436 | |||
1437 | /* First time posting */ | ||
1438 | be_post_rx_frags(adapter); | ||
1439 | |||
1440 | napi_enable(&rx_eq->napi); | ||
1441 | napi_enable(&tx_eq->napi); | ||
1442 | |||
1443 | be_irq_register(adapter); | ||
1444 | |||
1445 | be_intr_set(ctrl, true); | ||
1446 | |||
1447 | /* The evt queues are created in the unarmed state; arm them */ | ||
1448 | be_eq_notify(ctrl, rx_eq->q.id, true, false, 0); | ||
1449 | be_eq_notify(ctrl, tx_eq->q.id, true, false, 0); | ||
1450 | |||
1451 | /* The compl queues are created in the unarmed state; arm them */ | ||
1452 | be_cq_notify(ctrl, adapter->rx_obj.cq.id, true, 0); | ||
1453 | be_cq_notify(ctrl, adapter->tx_obj.cq.id, true, 0); | ||
1454 | |||
1455 | be_link_status_update(adapter); | ||
1456 | |||
1457 | schedule_delayed_work(&adapter->work, msecs_to_jiffies(100)); | ||
1458 | return 0; | ||
1459 | |||
1460 | tx_qs_destroy: | ||
1461 | be_tx_queues_destroy(adapter); | ||
1462 | if_destroy: | ||
1463 | be_cmd_if_destroy(ctrl, adapter->if_handle); | ||
1464 | do_none: | ||
1465 | return status; | ||
1466 | } | ||
1467 | |||
1468 | static int be_close(struct net_device *netdev) | ||
1469 | { | ||
1470 | struct be_adapter *adapter = netdev_priv(netdev); | ||
1471 | struct be_ctrl_info *ctrl = &adapter->ctrl; | ||
1472 | struct be_eq_obj *rx_eq = &adapter->rx_eq; | ||
1473 | struct be_eq_obj *tx_eq = &adapter->tx_eq; | ||
1474 | int vec; | ||
1475 | |||
1476 | cancel_delayed_work(&adapter->work); | ||
1477 | |||
1478 | netif_stop_queue(netdev); | ||
1479 | netif_carrier_off(netdev); | ||
1480 | adapter->link.speed = PHY_LINK_SPEED_ZERO; | ||
1481 | |||
1482 | be_intr_set(ctrl, false); | ||
1483 | |||
1484 | if (adapter->msix_enabled) { | ||
1485 | vec = be_msix_vec_get(adapter, tx_eq->q.id); | ||
1486 | synchronize_irq(vec); | ||
1487 | vec = be_msix_vec_get(adapter, rx_eq->q.id); | ||
1488 | synchronize_irq(vec); | ||
1489 | } else { | ||
1490 | synchronize_irq(netdev->irq); | ||
1491 | } | ||
1492 | be_irq_unregister(adapter); | ||
1493 | |||
1494 | napi_disable(&rx_eq->napi); | ||
1495 | napi_disable(&tx_eq->napi); | ||
1496 | |||
1497 | be_rx_queues_destroy(adapter); | ||
1498 | be_tx_queues_destroy(adapter); | ||
1499 | |||
1500 | be_cmd_if_destroy(ctrl, adapter->if_handle); | ||
1501 | return 0; | ||
1502 | } | ||
1503 | |||
1504 | static int be_get_frag_header(struct skb_frag_struct *frag, void **mac_hdr, | ||
1505 | void **ip_hdr, void **tcpudp_hdr, | ||
1506 | u64 *hdr_flags, void *priv) | ||
1507 | { | ||
1508 | struct ethhdr *eh; | ||
1509 | struct vlan_ethhdr *veh; | ||
1510 | struct iphdr *iph; | ||
1511 | u8 *va = page_address(frag->page) + frag->page_offset; | ||
1512 | unsigned long ll_hlen; | ||
1513 | |||
1514 | prefetch(va); | ||
1515 | eh = (struct ethhdr *)va; | ||
1516 | *mac_hdr = eh; | ||
1517 | ll_hlen = ETH_HLEN; | ||
1518 | if (eh->h_proto != htons(ETH_P_IP)) { | ||
1519 | if (eh->h_proto == htons(ETH_P_8021Q)) { | ||
1520 | veh = (struct vlan_ethhdr *)va; | ||
1521 | if (veh->h_vlan_encapsulated_proto != htons(ETH_P_IP)) | ||
1522 | return -1; | ||
1523 | |||
1524 | ll_hlen += VLAN_HLEN; | ||
1525 | } else { | ||
1526 | return -1; | ||
1527 | } | ||
1528 | } | ||
1529 | *hdr_flags = LRO_IPV4; | ||
1530 | iph = (struct iphdr *)(va + ll_hlen); | ||
1531 | *ip_hdr = iph; | ||
1532 | if (iph->protocol != IPPROTO_TCP) | ||
1533 | return -1; | ||
1534 | *hdr_flags |= LRO_TCP; | ||
1535 | *tcpudp_hdr = (u8 *) (*ip_hdr) + (iph->ihl << 2); | ||
1536 | |||
1537 | return 0; | ||
1538 | } | ||
1539 | |||
1540 | static void be_lro_init(struct be_adapter *adapter, struct net_device *netdev) | ||
1541 | { | ||
1542 | struct net_lro_mgr *lro_mgr; | ||
1543 | |||
1544 | lro_mgr = &adapter->rx_obj.lro_mgr; | ||
1545 | lro_mgr->dev = netdev; | ||
1546 | lro_mgr->features = LRO_F_NAPI; | ||
1547 | lro_mgr->ip_summed = CHECKSUM_UNNECESSARY; | ||
1548 | lro_mgr->ip_summed_aggr = CHECKSUM_UNNECESSARY; | ||
1549 | lro_mgr->max_desc = BE_MAX_LRO_DESCRIPTORS; | ||
1550 | lro_mgr->lro_arr = adapter->rx_obj.lro_desc; | ||
1551 | lro_mgr->get_frag_header = be_get_frag_header; | ||
1552 | lro_mgr->max_aggr = BE_MAX_FRAGS_PER_FRAME; | ||
1553 | } | ||
1554 | |||
1555 | static struct net_device_ops be_netdev_ops = { | ||
1556 | .ndo_open = be_open, | ||
1557 | .ndo_stop = be_close, | ||
1558 | .ndo_start_xmit = be_xmit, | ||
1559 | .ndo_get_stats = be_get_stats, | ||
1560 | .ndo_set_rx_mode = be_set_multicast_list, | ||
1561 | .ndo_set_mac_address = be_mac_addr_set, | ||
1562 | .ndo_change_mtu = be_change_mtu, | ||
1563 | .ndo_validate_addr = eth_validate_addr, | ||
1564 | .ndo_vlan_rx_register = be_vlan_register, | ||
1565 | .ndo_vlan_rx_add_vid = be_vlan_add_vid, | ||
1566 | .ndo_vlan_rx_kill_vid = be_vlan_rem_vid, | ||
1567 | }; | ||
1568 | |||
1569 | static void be_netdev_init(struct net_device *netdev) | ||
1570 | { | ||
1571 | struct be_adapter *adapter = netdev_priv(netdev); | ||
1572 | |||
1573 | netdev->features |= NETIF_F_SG | NETIF_F_HW_VLAN_RX | NETIF_F_TSO | | ||
1574 | NETIF_F_HW_VLAN_TX | NETIF_F_HW_VLAN_FILTER | NETIF_F_IP_CSUM | | ||
1575 | NETIF_F_IPV6_CSUM | NETIF_F_TSO6; | ||
1576 | |||
1577 | netdev->flags |= IFF_MULTICAST; | ||
1578 | |||
1579 | BE_SET_NETDEV_OPS(netdev, &be_netdev_ops); | ||
1580 | |||
1581 | SET_ETHTOOL_OPS(netdev, &be_ethtool_ops); | ||
1582 | |||
1583 | be_lro_init(adapter, netdev); | ||
1584 | |||
1585 | netif_napi_add(netdev, &adapter->rx_eq.napi, be_poll_rx, | ||
1586 | BE_NAPI_WEIGHT); | ||
1587 | netif_napi_add(netdev, &adapter->tx_eq.napi, be_poll_tx, | ||
1588 | BE_NAPI_WEIGHT); | ||
1589 | |||
1590 | netif_carrier_off(netdev); | ||
1591 | netif_stop_queue(netdev); | ||
1592 | } | ||
1593 | |||
1594 | static void be_unmap_pci_bars(struct be_adapter *adapter) | ||
1595 | { | ||
1596 | struct be_ctrl_info *ctrl = &adapter->ctrl; | ||
1597 | if (ctrl->csr) | ||
1598 | iounmap(ctrl->csr); | ||
1599 | if (ctrl->db) | ||
1600 | iounmap(ctrl->db); | ||
1601 | if (ctrl->pcicfg) | ||
1602 | iounmap(ctrl->pcicfg); | ||
1603 | } | ||
1604 | |||
1605 | static int be_map_pci_bars(struct be_adapter *adapter) | ||
1606 | { | ||
1607 | u8 __iomem *addr; | ||
1608 | |||
1609 | addr = ioremap_nocache(pci_resource_start(adapter->pdev, 2), | ||
1610 | pci_resource_len(adapter->pdev, 2)); | ||
1611 | if (addr == NULL) | ||
1612 | return -ENOMEM; | ||
1613 | adapter->ctrl.csr = addr; | ||
1614 | |||
1615 | addr = ioremap_nocache(pci_resource_start(adapter->pdev, 4), | ||
1616 | 128 * 1024); | ||
1617 | if (addr == NULL) | ||
1618 | goto pci_map_err; | ||
1619 | adapter->ctrl.db = addr; | ||
1620 | |||
1621 | addr = ioremap_nocache(pci_resource_start(adapter->pdev, 1), | ||
1622 | pci_resource_len(adapter->pdev, 1)); | ||
1623 | if (addr == NULL) | ||
1624 | goto pci_map_err; | ||
1625 | adapter->ctrl.pcicfg = addr; | ||
1626 | |||
1627 | return 0; | ||
1628 | pci_map_err: | ||
1629 | be_unmap_pci_bars(adapter); | ||
1630 | return -ENOMEM; | ||
1631 | } | ||
1632 | |||
1633 | |||
1634 | static void be_ctrl_cleanup(struct be_adapter *adapter) | ||
1635 | { | ||
1636 | struct be_dma_mem *mem = &adapter->ctrl.mbox_mem_alloced; | ||
1637 | |||
1638 | be_unmap_pci_bars(adapter); | ||
1639 | |||
1640 | if (mem->va) | ||
1641 | pci_free_consistent(adapter->pdev, mem->size, | ||
1642 | mem->va, mem->dma); | ||
1643 | } | ||
1644 | |||
1645 | /* Initialize the mbox required to send cmds to BE */ | ||
1646 | static int be_ctrl_init(struct be_adapter *adapter) | ||
1647 | { | ||
1648 | struct be_ctrl_info *ctrl = &adapter->ctrl; | ||
1649 | struct be_dma_mem *mbox_mem_alloc = &ctrl->mbox_mem_alloced; | ||
1650 | struct be_dma_mem *mbox_mem_align = &ctrl->mbox_mem; | ||
1651 | int status; | ||
1652 | u32 val; | ||
1653 | |||
1654 | status = be_map_pci_bars(adapter); | ||
1655 | if (status) | ||
1656 | return status; | ||
1657 | |||
1658 | mbox_mem_alloc->size = sizeof(struct be_mcc_mailbox) + 16; | ||
1659 | mbox_mem_alloc->va = pci_alloc_consistent(adapter->pdev, | ||
1660 | mbox_mem_alloc->size, &mbox_mem_alloc->dma); | ||
1661 | if (!mbox_mem_alloc->va) { | ||
1662 | be_unmap_pci_bars(adapter); | ||
1663 | return -1; | ||
1664 | } | ||
1665 | mbox_mem_align->size = sizeof(struct be_mcc_mailbox); | ||
1666 | mbox_mem_align->va = PTR_ALIGN(mbox_mem_alloc->va, 16); | ||
1667 | mbox_mem_align->dma = PTR_ALIGN(mbox_mem_alloc->dma, 16); | ||
1668 | memset(mbox_mem_align->va, 0, sizeof(struct be_mcc_mailbox)); | ||
1669 | spin_lock_init(&ctrl->cmd_lock); | ||
1670 | |||
1671 | val = ioread32(ctrl->pcicfg + PCICFG_MEMBAR_CTRL_INT_CTRL_OFFSET); | ||
1672 | ctrl->pci_func = (val >> MEMBAR_CTRL_INT_CTRL_PFUNC_SHIFT) & | ||
1673 | MEMBAR_CTRL_INT_CTRL_PFUNC_MASK; | ||
1674 | return 0; | ||
1675 | } | ||
1676 | |||
1677 | static void be_stats_cleanup(struct be_adapter *adapter) | ||
1678 | { | ||
1679 | struct be_stats_obj *stats = &adapter->stats; | ||
1680 | struct be_dma_mem *cmd = &stats->cmd; | ||
1681 | |||
1682 | if (cmd->va) | ||
1683 | pci_free_consistent(adapter->pdev, cmd->size, | ||
1684 | cmd->va, cmd->dma); | ||
1685 | } | ||
1686 | |||
1687 | static int be_stats_init(struct be_adapter *adapter) | ||
1688 | { | ||
1689 | struct be_stats_obj *stats = &adapter->stats; | ||
1690 | struct be_dma_mem *cmd = &stats->cmd; | ||
1691 | |||
1692 | cmd->size = sizeof(struct be_cmd_req_get_stats); | ||
1693 | cmd->va = pci_alloc_consistent(adapter->pdev, cmd->size, &cmd->dma); | ||
1694 | if (cmd->va == NULL) | ||
1695 | return -1; | ||
1696 | return 0; | ||
1697 | } | ||
1698 | |||
1699 | static void __devexit be_remove(struct pci_dev *pdev) | ||
1700 | { | ||
1701 | struct be_adapter *adapter = pci_get_drvdata(pdev); | ||
1702 | if (!adapter) | ||
1703 | return; | ||
1704 | |||
1705 | unregister_netdev(adapter->netdev); | ||
1706 | |||
1707 | be_stats_cleanup(adapter); | ||
1708 | |||
1709 | be_ctrl_cleanup(adapter); | ||
1710 | |||
1711 | if (adapter->msix_enabled) { | ||
1712 | pci_disable_msix(adapter->pdev); | ||
1713 | adapter->msix_enabled = false; | ||
1714 | } | ||
1715 | |||
1716 | pci_set_drvdata(pdev, NULL); | ||
1717 | pci_release_regions(pdev); | ||
1718 | pci_disable_device(pdev); | ||
1719 | |||
1720 | free_netdev(adapter->netdev); | ||
1721 | } | ||
1722 | |||
1723 | static int be_hw_up(struct be_adapter *adapter) | ||
1724 | { | ||
1725 | struct be_ctrl_info *ctrl = &adapter->ctrl; | ||
1726 | int status; | ||
1727 | |||
1728 | status = be_cmd_POST(ctrl); | ||
1729 | if (status) | ||
1730 | return status; | ||
1731 | |||
1732 | status = be_cmd_get_fw_ver(ctrl, adapter->fw_ver); | ||
1733 | if (status) | ||
1734 | return status; | ||
1735 | |||
1736 | status = be_cmd_query_fw_cfg(ctrl, &adapter->port_num); | ||
1737 | return status; | ||
1738 | } | ||
1739 | |||
1740 | static int __devinit be_probe(struct pci_dev *pdev, | ||
1741 | const struct pci_device_id *pdev_id) | ||
1742 | { | ||
1743 | int status = 0; | ||
1744 | struct be_adapter *adapter; | ||
1745 | struct net_device *netdev; | ||
1746 | struct be_ctrl_info *ctrl; | ||
1747 | u8 mac[ETH_ALEN]; | ||
1748 | |||
1749 | status = pci_enable_device(pdev); | ||
1750 | if (status) | ||
1751 | goto do_none; | ||
1752 | |||
1753 | status = pci_request_regions(pdev, DRV_NAME); | ||
1754 | if (status) | ||
1755 | goto disable_dev; | ||
1756 | pci_set_master(pdev); | ||
1757 | |||
1758 | netdev = alloc_etherdev(sizeof(struct be_adapter)); | ||
1759 | if (netdev == NULL) { | ||
1760 | status = -ENOMEM; | ||
1761 | goto rel_reg; | ||
1762 | } | ||
1763 | adapter = netdev_priv(netdev); | ||
1764 | adapter->pdev = pdev; | ||
1765 | pci_set_drvdata(pdev, adapter); | ||
1766 | adapter->netdev = netdev; | ||
1767 | |||
1768 | be_msix_enable(adapter); | ||
1769 | |||
1770 | status = pci_set_dma_mask(pdev, DMA_64BIT_MASK); | ||
1771 | if (!status) { | ||
1772 | netdev->features |= NETIF_F_HIGHDMA; | ||
1773 | } else { | ||
1774 | status = pci_set_dma_mask(pdev, DMA_32BIT_MASK); | ||
1775 | if (status) { | ||
1776 | dev_err(&pdev->dev, "Could not set PCI DMA Mask\n"); | ||
1777 | goto free_netdev; | ||
1778 | } | ||
1779 | } | ||
1780 | |||
1781 | ctrl = &adapter->ctrl; | ||
1782 | status = be_ctrl_init(adapter); | ||
1783 | if (status) | ||
1784 | goto free_netdev; | ||
1785 | |||
1786 | status = be_stats_init(adapter); | ||
1787 | if (status) | ||
1788 | goto ctrl_clean; | ||
1789 | |||
1790 | status = be_hw_up(adapter); | ||
1791 | if (status) | ||
1792 | goto stats_clean; | ||
1793 | |||
1794 | status = be_cmd_mac_addr_query(ctrl, mac, MAC_ADDRESS_TYPE_NETWORK, | ||
1795 | true /* permanent */, 0); | ||
1796 | if (status) | ||
1797 | goto stats_clean; | ||
1798 | memcpy(netdev->dev_addr, mac, ETH_ALEN); | ||
1799 | |||
1800 | INIT_DELAYED_WORK(&adapter->work, be_worker); | ||
1801 | be_netdev_init(netdev); | ||
1802 | SET_NETDEV_DEV(netdev, &adapter->pdev->dev); | ||
1803 | |||
1804 | status = register_netdev(netdev); | ||
1805 | if (status != 0) | ||
1806 | goto stats_clean; | ||
1807 | |||
1808 | dev_info(&pdev->dev, BE_NAME " port %d\n", adapter->port_num); | ||
1809 | return 0; | ||
1810 | |||
1811 | stats_clean: | ||
1812 | be_stats_cleanup(adapter); | ||
1813 | ctrl_clean: | ||
1814 | be_ctrl_cleanup(adapter); | ||
1815 | free_netdev: | ||
1816 | free_netdev(adapter->netdev); | ||
1817 | rel_reg: | ||
1818 | pci_release_regions(pdev); | ||
1819 | disable_dev: | ||
1820 | pci_disable_device(pdev); | ||
1821 | do_none: | ||
1822 | dev_warn(&pdev->dev, BE_NAME " initialization failed\n"); | ||
1823 | return status; | ||
1824 | } | ||
1825 | |||
1826 | static int be_suspend(struct pci_dev *pdev, pm_message_t state) | ||
1827 | { | ||
1828 | struct be_adapter *adapter = pci_get_drvdata(pdev); | ||
1829 | struct net_device *netdev = adapter->netdev; | ||
1830 | |||
1831 | netif_device_detach(netdev); | ||
1832 | if (netif_running(netdev)) { | ||
1833 | rtnl_lock(); | ||
1834 | be_close(netdev); | ||
1835 | rtnl_unlock(); | ||
1836 | } | ||
1837 | |||
1838 | pci_save_state(pdev); | ||
1839 | pci_disable_device(pdev); | ||
1840 | pci_set_power_state(pdev, pci_choose_state(pdev, state)); | ||
1841 | return 0; | ||
1842 | } | ||
1843 | |||
1844 | static int be_resume(struct pci_dev *pdev) | ||
1845 | { | ||
1846 | int status = 0; | ||
1847 | struct be_adapter *adapter = pci_get_drvdata(pdev); | ||
1848 | struct net_device *netdev = adapter->netdev; | ||
1849 | |||
1850 | netif_device_detach(netdev); | ||
1851 | |||
1852 | status = pci_enable_device(pdev); | ||
1853 | if (status) | ||
1854 | return status; | ||
1855 | |||
1856 | pci_set_power_state(pdev, 0); | ||
1857 | pci_restore_state(pdev); | ||
1858 | |||
1859 | be_vids_config(netdev); | ||
1860 | |||
1861 | if (netif_running(netdev)) { | ||
1862 | rtnl_lock(); | ||
1863 | be_open(netdev); | ||
1864 | rtnl_unlock(); | ||
1865 | } | ||
1866 | netif_device_attach(netdev); | ||
1867 | return 0; | ||
1868 | } | ||
1869 | |||
1870 | static struct pci_driver be_driver = { | ||
1871 | .name = DRV_NAME, | ||
1872 | .id_table = be_dev_ids, | ||
1873 | .probe = be_probe, | ||
1874 | .remove = be_remove, | ||
1875 | .suspend = be_suspend, | ||
1876 | .resume = be_resume | ||
1877 | }; | ||
1878 | |||
1879 | static int __init be_init_module(void) | ||
1880 | { | ||
1881 | if (rx_frag_size != 8192 && rx_frag_size != 4096 | ||
1882 | && rx_frag_size != 2048) { | ||
1883 | printk(KERN_WARNING DRV_NAME | ||
1884 | " : Module param rx_frag_size must be 2048/4096/8192." | ||
1885 | " Using 2048\n"); | ||
1886 | rx_frag_size = 2048; | ||
1887 | } | ||
1888 | /* Ensure rx_frag_size is aligned to chache line */ | ||
1889 | if (SKB_DATA_ALIGN(rx_frag_size) != rx_frag_size) { | ||
1890 | printk(KERN_WARNING DRV_NAME | ||
1891 | " : Bad module param rx_frag_size. Using 2048\n"); | ||
1892 | rx_frag_size = 2048; | ||
1893 | } | ||
1894 | |||
1895 | return pci_register_driver(&be_driver); | ||
1896 | } | ||
1897 | module_init(be_init_module); | ||
1898 | |||
1899 | static void __exit be_exit_module(void) | ||
1900 | { | ||
1901 | pci_unregister_driver(&be_driver); | ||
1902 | } | ||
1903 | module_exit(be_exit_module); | ||
diff --git a/drivers/net/bnx2x.h b/drivers/net/bnx2x.h index 15a5cf0f676b..3cf2b92eef3b 100644 --- a/drivers/net/bnx2x.h +++ b/drivers/net/bnx2x.h | |||
@@ -152,7 +152,7 @@ struct sw_rx_page { | |||
152 | #define PAGES_PER_SGE (1 << PAGES_PER_SGE_SHIFT) | 152 | #define PAGES_PER_SGE (1 << PAGES_PER_SGE_SHIFT) |
153 | #define SGE_PAGE_SIZE PAGE_SIZE | 153 | #define SGE_PAGE_SIZE PAGE_SIZE |
154 | #define SGE_PAGE_SHIFT PAGE_SHIFT | 154 | #define SGE_PAGE_SHIFT PAGE_SHIFT |
155 | #define SGE_PAGE_ALIGN(addr) PAGE_ALIGN(addr) | 155 | #define SGE_PAGE_ALIGN(addr) PAGE_ALIGN((typeof(PAGE_SIZE))addr) |
156 | 156 | ||
157 | #define BCM_RX_ETH_PAYLOAD_ALIGN 64 | 157 | #define BCM_RX_ETH_PAYLOAD_ALIGN 64 |
158 | 158 | ||
diff --git a/drivers/net/bnx2x_init.h b/drivers/net/bnx2x_init.h index a6c0b3abba29..3b0c2499ef17 100644 --- a/drivers/net/bnx2x_init.h +++ b/drivers/net/bnx2x_init.h | |||
@@ -150,7 +150,6 @@ static void bnx2x_init_ind_wr(struct bnx2x *bp, u32 addr, const u32 *data, | |||
150 | 150 | ||
151 | static void bnx2x_write_big_buf(struct bnx2x *bp, u32 addr, u32 len) | 151 | static void bnx2x_write_big_buf(struct bnx2x *bp, u32 addr, u32 len) |
152 | { | 152 | { |
153 | #ifdef USE_DMAE | ||
154 | int offset = 0; | 153 | int offset = 0; |
155 | 154 | ||
156 | if (bp->dmae_ready) { | 155 | if (bp->dmae_ready) { |
@@ -164,9 +163,6 @@ static void bnx2x_write_big_buf(struct bnx2x *bp, u32 addr, u32 len) | |||
164 | addr + offset, len); | 163 | addr + offset, len); |
165 | } else | 164 | } else |
166 | bnx2x_init_str_wr(bp, addr, bp->gunzip_buf, len); | 165 | bnx2x_init_str_wr(bp, addr, bp->gunzip_buf, len); |
167 | #else | ||
168 | bnx2x_init_str_wr(bp, addr, bp->gunzip_buf, len); | ||
169 | #endif | ||
170 | } | 166 | } |
171 | 167 | ||
172 | static void bnx2x_init_fill(struct bnx2x *bp, u32 addr, int fill, u32 len) | 168 | static void bnx2x_init_fill(struct bnx2x *bp, u32 addr, int fill, u32 len) |
diff --git a/drivers/net/bnx2x_main.c b/drivers/net/bnx2x_main.c index d3e7775a9ccf..2e346a5e98cf 100644 --- a/drivers/net/bnx2x_main.c +++ b/drivers/net/bnx2x_main.c | |||
@@ -57,7 +57,7 @@ | |||
57 | #include "bnx2x.h" | 57 | #include "bnx2x.h" |
58 | #include "bnx2x_init.h" | 58 | #include "bnx2x_init.h" |
59 | 59 | ||
60 | #define DRV_MODULE_VERSION "1.45.26" | 60 | #define DRV_MODULE_VERSION "1.45.27" |
61 | #define DRV_MODULE_RELDATE "2009/01/26" | 61 | #define DRV_MODULE_RELDATE "2009/01/26" |
62 | #define BNX2X_BC_VER 0x040200 | 62 | #define BNX2X_BC_VER 0x040200 |
63 | 63 | ||
@@ -4035,10 +4035,10 @@ static void bnx2x_zero_sb(struct bnx2x *bp, int sb_id) | |||
4035 | { | 4035 | { |
4036 | int port = BP_PORT(bp); | 4036 | int port = BP_PORT(bp); |
4037 | 4037 | ||
4038 | bnx2x_init_fill(bp, BAR_USTRORM_INTMEM + | 4038 | bnx2x_init_fill(bp, USTORM_INTMEM_ADDR + |
4039 | USTORM_SB_HOST_STATUS_BLOCK_OFFSET(port, sb_id), 0, | 4039 | USTORM_SB_HOST_STATUS_BLOCK_OFFSET(port, sb_id), 0, |
4040 | sizeof(struct ustorm_status_block)/4); | 4040 | sizeof(struct ustorm_status_block)/4); |
4041 | bnx2x_init_fill(bp, BAR_CSTRORM_INTMEM + | 4041 | bnx2x_init_fill(bp, CSTORM_INTMEM_ADDR + |
4042 | CSTORM_SB_HOST_STATUS_BLOCK_OFFSET(port, sb_id), 0, | 4042 | CSTORM_SB_HOST_STATUS_BLOCK_OFFSET(port, sb_id), 0, |
4043 | sizeof(struct cstorm_status_block)/4); | 4043 | sizeof(struct cstorm_status_block)/4); |
4044 | } | 4044 | } |
@@ -4092,18 +4092,18 @@ static void bnx2x_zero_def_sb(struct bnx2x *bp) | |||
4092 | { | 4092 | { |
4093 | int func = BP_FUNC(bp); | 4093 | int func = BP_FUNC(bp); |
4094 | 4094 | ||
4095 | bnx2x_init_fill(bp, BAR_USTRORM_INTMEM + | 4095 | bnx2x_init_fill(bp, TSTORM_INTMEM_ADDR + |
4096 | TSTORM_DEF_SB_HOST_STATUS_BLOCK_OFFSET(func), 0, | ||
4097 | sizeof(struct tstorm_def_status_block)/4); | ||
4098 | bnx2x_init_fill(bp, USTORM_INTMEM_ADDR + | ||
4096 | USTORM_DEF_SB_HOST_STATUS_BLOCK_OFFSET(func), 0, | 4099 | USTORM_DEF_SB_HOST_STATUS_BLOCK_OFFSET(func), 0, |
4097 | sizeof(struct ustorm_def_status_block)/4); | 4100 | sizeof(struct ustorm_def_status_block)/4); |
4098 | bnx2x_init_fill(bp, BAR_CSTRORM_INTMEM + | 4101 | bnx2x_init_fill(bp, CSTORM_INTMEM_ADDR + |
4099 | CSTORM_DEF_SB_HOST_STATUS_BLOCK_OFFSET(func), 0, | 4102 | CSTORM_DEF_SB_HOST_STATUS_BLOCK_OFFSET(func), 0, |
4100 | sizeof(struct cstorm_def_status_block)/4); | 4103 | sizeof(struct cstorm_def_status_block)/4); |
4101 | bnx2x_init_fill(bp, BAR_XSTRORM_INTMEM + | 4104 | bnx2x_init_fill(bp, XSTORM_INTMEM_ADDR + |
4102 | XSTORM_DEF_SB_HOST_STATUS_BLOCK_OFFSET(func), 0, | 4105 | XSTORM_DEF_SB_HOST_STATUS_BLOCK_OFFSET(func), 0, |
4103 | sizeof(struct xstorm_def_status_block)/4); | 4106 | sizeof(struct xstorm_def_status_block)/4); |
4104 | bnx2x_init_fill(bp, BAR_TSTRORM_INTMEM + | ||
4105 | TSTORM_DEF_SB_HOST_STATUS_BLOCK_OFFSET(func), 0, | ||
4106 | sizeof(struct tstorm_def_status_block)/4); | ||
4107 | } | 4107 | } |
4108 | 4108 | ||
4109 | static void bnx2x_init_def_sb(struct bnx2x *bp, | 4109 | static void bnx2x_init_def_sb(struct bnx2x *bp, |
@@ -4518,7 +4518,8 @@ static void bnx2x_init_context(struct bnx2x *bp) | |||
4518 | (USTORM_ETH_ST_CONTEXT_CONFIG_ENABLE_TPA | | 4518 | (USTORM_ETH_ST_CONTEXT_CONFIG_ENABLE_TPA | |
4519 | USTORM_ETH_ST_CONTEXT_CONFIG_ENABLE_SGE_RING); | 4519 | USTORM_ETH_ST_CONTEXT_CONFIG_ENABLE_SGE_RING); |
4520 | context->ustorm_st_context.common.sge_buff_size = | 4520 | context->ustorm_st_context.common.sge_buff_size = |
4521 | (u16)(BCM_PAGE_SIZE*PAGES_PER_SGE); | 4521 | (u16)min((u32)SGE_PAGE_SIZE*PAGES_PER_SGE, |
4522 | (u32)0xffff); | ||
4522 | context->ustorm_st_context.common.sge_page_base_hi = | 4523 | context->ustorm_st_context.common.sge_page_base_hi = |
4523 | U64_HI(fp->rx_sge_mapping); | 4524 | U64_HI(fp->rx_sge_mapping); |
4524 | context->ustorm_st_context.common.sge_page_base_lo = | 4525 | context->ustorm_st_context.common.sge_page_base_lo = |
diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c index 9fb388388fb7..e0578fe8c0db 100644 --- a/drivers/net/bonding/bond_main.c +++ b/drivers/net/bonding/bond_main.c | |||
@@ -4113,7 +4113,7 @@ static int bond_neigh_setup(struct net_device *dev, struct neigh_parms *parms) | |||
4113 | const struct net_device_ops *slave_ops | 4113 | const struct net_device_ops *slave_ops |
4114 | = slave->dev->netdev_ops; | 4114 | = slave->dev->netdev_ops; |
4115 | if (slave_ops->ndo_neigh_setup) | 4115 | if (slave_ops->ndo_neigh_setup) |
4116 | return slave_ops->ndo_neigh_setup(dev, parms); | 4116 | return slave_ops->ndo_neigh_setup(slave->dev, parms); |
4117 | } | 4117 | } |
4118 | return 0; | 4118 | return 0; |
4119 | } | 4119 | } |
diff --git a/drivers/net/dnet.c b/drivers/net/dnet.c new file mode 100644 index 000000000000..5c347f70cb67 --- /dev/null +++ b/drivers/net/dnet.c | |||
@@ -0,0 +1,994 @@ | |||
1 | /* | ||
2 | * Dave DNET Ethernet Controller driver | ||
3 | * | ||
4 | * Copyright (C) 2008 Dave S.r.l. <www.dave.eu> | ||
5 | * Copyright (C) 2009 Ilya Yanok, Emcraft Systems Ltd, <yanok@emcraft.com> | ||
6 | * | ||
7 | * This program is free software; you can redistribute it and/or modify | ||
8 | * it under the terms of the GNU General Public License version 2 as | ||
9 | * published by the Free Software Foundation. | ||
10 | */ | ||
11 | #include <linux/version.h> | ||
12 | #include <linux/module.h> | ||
13 | #include <linux/moduleparam.h> | ||
14 | #include <linux/kernel.h> | ||
15 | #include <linux/types.h> | ||
16 | #include <linux/slab.h> | ||
17 | #include <linux/delay.h> | ||
18 | #include <linux/init.h> | ||
19 | #include <linux/netdevice.h> | ||
20 | #include <linux/etherdevice.h> | ||
21 | #include <linux/dma-mapping.h> | ||
22 | #include <linux/platform_device.h> | ||
23 | #include <linux/phy.h> | ||
24 | #include <linux/platform_device.h> | ||
25 | |||
26 | #include "dnet.h" | ||
27 | |||
28 | #undef DEBUG | ||
29 | |||
30 | /* function for reading internal MAC register */ | ||
31 | u16 dnet_readw_mac(struct dnet *bp, u16 reg) | ||
32 | { | ||
33 | u16 data_read; | ||
34 | |||
35 | /* issue a read */ | ||
36 | dnet_writel(bp, reg, MACREG_ADDR); | ||
37 | |||
38 | /* since a read/write op to the MAC is very slow, | ||
39 | * we must wait before reading the data */ | ||
40 | ndelay(500); | ||
41 | |||
42 | /* read data read from the MAC register */ | ||
43 | data_read = dnet_readl(bp, MACREG_DATA); | ||
44 | |||
45 | /* all done */ | ||
46 | return data_read; | ||
47 | } | ||
48 | |||
49 | /* function for writing internal MAC register */ | ||
50 | void dnet_writew_mac(struct dnet *bp, u16 reg, u16 val) | ||
51 | { | ||
52 | /* load data to write */ | ||
53 | dnet_writel(bp, val, MACREG_DATA); | ||
54 | |||
55 | /* issue a write */ | ||
56 | dnet_writel(bp, reg | DNET_INTERNAL_WRITE, MACREG_ADDR); | ||
57 | |||
58 | /* since a read/write op to the MAC is very slow, | ||
59 | * we must wait before exiting */ | ||
60 | ndelay(500); | ||
61 | } | ||
62 | |||
63 | static void __dnet_set_hwaddr(struct dnet *bp) | ||
64 | { | ||
65 | u16 tmp; | ||
66 | |||
67 | tmp = cpu_to_be16(*((u16 *) bp->dev->dev_addr)); | ||
68 | dnet_writew_mac(bp, DNET_INTERNAL_MAC_ADDR_0_REG, tmp); | ||
69 | tmp = cpu_to_be16(*((u16 *) (bp->dev->dev_addr + 2))); | ||
70 | dnet_writew_mac(bp, DNET_INTERNAL_MAC_ADDR_1_REG, tmp); | ||
71 | tmp = cpu_to_be16(*((u16 *) (bp->dev->dev_addr + 4))); | ||
72 | dnet_writew_mac(bp, DNET_INTERNAL_MAC_ADDR_2_REG, tmp); | ||
73 | } | ||
74 | |||
75 | static void __devinit dnet_get_hwaddr(struct dnet *bp) | ||
76 | { | ||
77 | u16 tmp; | ||
78 | u8 addr[6]; | ||
79 | |||
80 | /* | ||
81 | * from MAC docs: | ||
82 | * "Note that the MAC address is stored in the registers in Hexadecimal | ||
83 | * form. For example, to set the MAC Address to: AC-DE-48-00-00-80 | ||
84 | * would require writing 0xAC (octet 0) to address 0x0B (high byte of | ||
85 | * Mac_addr[15:0]), 0xDE (octet 1) to address 0x0A (Low byte of | ||
86 | * Mac_addr[15:0]), 0x48 (octet 2) to address 0x0D (high byte of | ||
87 | * Mac_addr[15:0]), 0x00 (octet 3) to address 0x0C (Low byte of | ||
88 | * Mac_addr[15:0]), 0x00 (octet 4) to address 0x0F (high byte of | ||
89 | * Mac_addr[15:0]), and 0x80 (octet 5) to address * 0x0E (Low byte of | ||
90 | * Mac_addr[15:0]). | ||
91 | */ | ||
92 | tmp = dnet_readw_mac(bp, DNET_INTERNAL_MAC_ADDR_0_REG); | ||
93 | *((u16 *) addr) = be16_to_cpu(tmp); | ||
94 | tmp = dnet_readw_mac(bp, DNET_INTERNAL_MAC_ADDR_1_REG); | ||
95 | *((u16 *) (addr + 2)) = be16_to_cpu(tmp); | ||
96 | tmp = dnet_readw_mac(bp, DNET_INTERNAL_MAC_ADDR_2_REG); | ||
97 | *((u16 *) (addr + 4)) = be16_to_cpu(tmp); | ||
98 | |||
99 | if (is_valid_ether_addr(addr)) | ||
100 | memcpy(bp->dev->dev_addr, addr, sizeof(addr)); | ||
101 | } | ||
102 | |||
103 | static int dnet_mdio_read(struct mii_bus *bus, int mii_id, int regnum) | ||
104 | { | ||
105 | struct dnet *bp = bus->priv; | ||
106 | u16 value; | ||
107 | |||
108 | while (!(dnet_readw_mac(bp, DNET_INTERNAL_GMII_MNG_CTL_REG) | ||
109 | & DNET_INTERNAL_GMII_MNG_CMD_FIN)) | ||
110 | cpu_relax(); | ||
111 | |||
112 | /* only 5 bits allowed for phy-addr and reg_offset */ | ||
113 | mii_id &= 0x1f; | ||
114 | regnum &= 0x1f; | ||
115 | |||
116 | /* prepare reg_value for a read */ | ||
117 | value = (mii_id << 8); | ||
118 | value |= regnum; | ||
119 | |||
120 | /* write control word */ | ||
121 | dnet_writew_mac(bp, DNET_INTERNAL_GMII_MNG_CTL_REG, value); | ||
122 | |||
123 | /* wait for end of transfer */ | ||
124 | while (!(dnet_readw_mac(bp, DNET_INTERNAL_GMII_MNG_CTL_REG) | ||
125 | & DNET_INTERNAL_GMII_MNG_CMD_FIN)) | ||
126 | cpu_relax(); | ||
127 | |||
128 | value = dnet_readw_mac(bp, DNET_INTERNAL_GMII_MNG_DAT_REG); | ||
129 | |||
130 | pr_debug("mdio_read %02x:%02x <- %04x\n", mii_id, regnum, value); | ||
131 | |||
132 | return value; | ||
133 | } | ||
134 | |||
135 | static int dnet_mdio_write(struct mii_bus *bus, int mii_id, int regnum, | ||
136 | u16 value) | ||
137 | { | ||
138 | struct dnet *bp = bus->priv; | ||
139 | u16 tmp; | ||
140 | |||
141 | pr_debug("mdio_write %02x:%02x <- %04x\n", mii_id, regnum, value); | ||
142 | |||
143 | while (!(dnet_readw_mac(bp, DNET_INTERNAL_GMII_MNG_CTL_REG) | ||
144 | & DNET_INTERNAL_GMII_MNG_CMD_FIN)) | ||
145 | cpu_relax(); | ||
146 | |||
147 | /* prepare for a write operation */ | ||
148 | tmp = (1 << 13); | ||
149 | |||
150 | /* only 5 bits allowed for phy-addr and reg_offset */ | ||
151 | mii_id &= 0x1f; | ||
152 | regnum &= 0x1f; | ||
153 | |||
154 | /* only 16 bits on data */ | ||
155 | value &= 0xffff; | ||
156 | |||
157 | /* prepare reg_value for a write */ | ||
158 | tmp |= (mii_id << 8); | ||
159 | tmp |= regnum; | ||
160 | |||
161 | /* write data to write first */ | ||
162 | dnet_writew_mac(bp, DNET_INTERNAL_GMII_MNG_DAT_REG, value); | ||
163 | |||
164 | /* write control word */ | ||
165 | dnet_writew_mac(bp, DNET_INTERNAL_GMII_MNG_CTL_REG, tmp); | ||
166 | |||
167 | while (!(dnet_readw_mac(bp, DNET_INTERNAL_GMII_MNG_CTL_REG) | ||
168 | & DNET_INTERNAL_GMII_MNG_CMD_FIN)) | ||
169 | cpu_relax(); | ||
170 | |||
171 | return 0; | ||
172 | } | ||
173 | |||
174 | static int dnet_mdio_reset(struct mii_bus *bus) | ||
175 | { | ||
176 | return 0; | ||
177 | } | ||
178 | |||
179 | static void dnet_handle_link_change(struct net_device *dev) | ||
180 | { | ||
181 | struct dnet *bp = netdev_priv(dev); | ||
182 | struct phy_device *phydev = bp->phy_dev; | ||
183 | unsigned long flags; | ||
184 | u32 mode_reg, ctl_reg; | ||
185 | |||
186 | int status_change = 0; | ||
187 | |||
188 | spin_lock_irqsave(&bp->lock, flags); | ||
189 | |||
190 | mode_reg = dnet_readw_mac(bp, DNET_INTERNAL_MODE_REG); | ||
191 | ctl_reg = dnet_readw_mac(bp, DNET_INTERNAL_RXTX_CONTROL_REG); | ||
192 | |||
193 | if (phydev->link) { | ||
194 | if (bp->duplex != phydev->duplex) { | ||
195 | if (phydev->duplex) | ||
196 | ctl_reg &= | ||
197 | ~(DNET_INTERNAL_RXTX_CONTROL_ENABLEHALFDUP); | ||
198 | else | ||
199 | ctl_reg |= | ||
200 | DNET_INTERNAL_RXTX_CONTROL_ENABLEHALFDUP; | ||
201 | |||
202 | bp->duplex = phydev->duplex; | ||
203 | status_change = 1; | ||
204 | } | ||
205 | |||
206 | if (bp->speed != phydev->speed) { | ||
207 | status_change = 1; | ||
208 | switch (phydev->speed) { | ||
209 | case 1000: | ||
210 | mode_reg |= DNET_INTERNAL_MODE_GBITEN; | ||
211 | break; | ||
212 | case 100: | ||
213 | case 10: | ||
214 | mode_reg &= ~DNET_INTERNAL_MODE_GBITEN; | ||
215 | break; | ||
216 | default: | ||
217 | printk(KERN_WARNING | ||
218 | "%s: Ack! Speed (%d) is not " | ||
219 | "10/100/1000!\n", dev->name, | ||
220 | phydev->speed); | ||
221 | break; | ||
222 | } | ||
223 | bp->speed = phydev->speed; | ||
224 | } | ||
225 | } | ||
226 | |||
227 | if (phydev->link != bp->link) { | ||
228 | if (phydev->link) { | ||
229 | mode_reg |= | ||
230 | (DNET_INTERNAL_MODE_RXEN | DNET_INTERNAL_MODE_TXEN); | ||
231 | } else { | ||
232 | mode_reg &= | ||
233 | ~(DNET_INTERNAL_MODE_RXEN | | ||
234 | DNET_INTERNAL_MODE_TXEN); | ||
235 | bp->speed = 0; | ||
236 | bp->duplex = -1; | ||
237 | } | ||
238 | bp->link = phydev->link; | ||
239 | |||
240 | status_change = 1; | ||
241 | } | ||
242 | |||
243 | if (status_change) { | ||
244 | dnet_writew_mac(bp, DNET_INTERNAL_RXTX_CONTROL_REG, ctl_reg); | ||
245 | dnet_writew_mac(bp, DNET_INTERNAL_MODE_REG, mode_reg); | ||
246 | } | ||
247 | |||
248 | spin_unlock_irqrestore(&bp->lock, flags); | ||
249 | |||
250 | if (status_change) { | ||
251 | if (phydev->link) | ||
252 | printk(KERN_INFO "%s: link up (%d/%s)\n", | ||
253 | dev->name, phydev->speed, | ||
254 | DUPLEX_FULL == phydev->duplex ? "Full" : "Half"); | ||
255 | else | ||
256 | printk(KERN_INFO "%s: link down\n", dev->name); | ||
257 | } | ||
258 | } | ||
259 | |||
260 | static int dnet_mii_probe(struct net_device *dev) | ||
261 | { | ||
262 | struct dnet *bp = netdev_priv(dev); | ||
263 | struct phy_device *phydev = NULL; | ||
264 | int phy_addr; | ||
265 | |||
266 | /* find the first phy */ | ||
267 | for (phy_addr = 0; phy_addr < PHY_MAX_ADDR; phy_addr++) { | ||
268 | if (bp->mii_bus->phy_map[phy_addr]) { | ||
269 | phydev = bp->mii_bus->phy_map[phy_addr]; | ||
270 | break; | ||
271 | } | ||
272 | } | ||
273 | |||
274 | if (!phydev) { | ||
275 | printk(KERN_ERR "%s: no PHY found\n", dev->name); | ||
276 | return -ENODEV; | ||
277 | } | ||
278 | |||
279 | /* TODO : add pin_irq */ | ||
280 | |||
281 | /* attach the mac to the phy */ | ||
282 | if (bp->capabilities & DNET_HAS_RMII) { | ||
283 | phydev = phy_connect(dev, phydev->dev.bus_id, | ||
284 | &dnet_handle_link_change, 0, | ||
285 | PHY_INTERFACE_MODE_RMII); | ||
286 | } else { | ||
287 | phydev = phy_connect(dev, phydev->dev.bus_id, | ||
288 | &dnet_handle_link_change, 0, | ||
289 | PHY_INTERFACE_MODE_MII); | ||
290 | } | ||
291 | |||
292 | if (IS_ERR(phydev)) { | ||
293 | printk(KERN_ERR "%s: Could not attach to PHY\n", dev->name); | ||
294 | return PTR_ERR(phydev); | ||
295 | } | ||
296 | |||
297 | /* mask with MAC supported features */ | ||
298 | if (bp->capabilities & DNET_HAS_GIGABIT) | ||
299 | phydev->supported &= PHY_GBIT_FEATURES; | ||
300 | else | ||
301 | phydev->supported &= PHY_BASIC_FEATURES; | ||
302 | |||
303 | phydev->supported |= SUPPORTED_Asym_Pause | SUPPORTED_Pause; | ||
304 | |||
305 | phydev->advertising = phydev->supported; | ||
306 | |||
307 | bp->link = 0; | ||
308 | bp->speed = 0; | ||
309 | bp->duplex = -1; | ||
310 | bp->phy_dev = phydev; | ||
311 | |||
312 | return 0; | ||
313 | } | ||
314 | |||
315 | static int dnet_mii_init(struct dnet *bp) | ||
316 | { | ||
317 | int err, i; | ||
318 | |||
319 | bp->mii_bus = mdiobus_alloc(); | ||
320 | if (bp->mii_bus == NULL) | ||
321 | return -ENOMEM; | ||
322 | |||
323 | bp->mii_bus->name = "dnet_mii_bus"; | ||
324 | bp->mii_bus->read = &dnet_mdio_read; | ||
325 | bp->mii_bus->write = &dnet_mdio_write; | ||
326 | bp->mii_bus->reset = &dnet_mdio_reset; | ||
327 | |||
328 | snprintf(bp->mii_bus->id, MII_BUS_ID_SIZE, "%x", 0); | ||
329 | |||
330 | bp->mii_bus->priv = bp; | ||
331 | |||
332 | bp->mii_bus->irq = kmalloc(sizeof(int) * PHY_MAX_ADDR, GFP_KERNEL); | ||
333 | if (!bp->mii_bus->irq) { | ||
334 | err = -ENOMEM; | ||
335 | goto err_out; | ||
336 | } | ||
337 | |||
338 | for (i = 0; i < PHY_MAX_ADDR; i++) | ||
339 | bp->mii_bus->irq[i] = PHY_POLL; | ||
340 | |||
341 | platform_set_drvdata(bp->dev, bp->mii_bus); | ||
342 | |||
343 | if (mdiobus_register(bp->mii_bus)) { | ||
344 | err = -ENXIO; | ||
345 | goto err_out_free_mdio_irq; | ||
346 | } | ||
347 | |||
348 | if (dnet_mii_probe(bp->dev) != 0) { | ||
349 | err = -ENXIO; | ||
350 | goto err_out_unregister_bus; | ||
351 | } | ||
352 | |||
353 | return 0; | ||
354 | |||
355 | err_out_unregister_bus: | ||
356 | mdiobus_unregister(bp->mii_bus); | ||
357 | err_out_free_mdio_irq: | ||
358 | kfree(bp->mii_bus->irq); | ||
359 | err_out: | ||
360 | mdiobus_free(bp->mii_bus); | ||
361 | return err; | ||
362 | } | ||
363 | |||
364 | /* For Neptune board: LINK1000 as Link LED and TX as activity LED */ | ||
365 | int dnet_phy_marvell_fixup(struct phy_device *phydev) | ||
366 | { | ||
367 | return phy_write(phydev, 0x18, 0x4148); | ||
368 | } | ||
369 | |||
370 | static void dnet_update_stats(struct dnet *bp) | ||
371 | { | ||
372 | u32 __iomem *reg = bp->regs + DNET_RX_PKT_IGNR_CNT; | ||
373 | u32 *p = &bp->hw_stats.rx_pkt_ignr; | ||
374 | u32 *end = &bp->hw_stats.rx_byte + 1; | ||
375 | |||
376 | WARN_ON((unsigned long)(end - p - 1) != | ||
377 | (DNET_RX_BYTE_CNT - DNET_RX_PKT_IGNR_CNT) / 4); | ||
378 | |||
379 | for (; p < end; p++, reg++) | ||
380 | *p += readl(reg); | ||
381 | |||
382 | reg = bp->regs + DNET_TX_UNICAST_CNT; | ||
383 | p = &bp->hw_stats.tx_unicast; | ||
384 | end = &bp->hw_stats.tx_byte + 1; | ||
385 | |||
386 | WARN_ON((unsigned long)(end - p - 1) != | ||
387 | (DNET_TX_BYTE_CNT - DNET_TX_UNICAST_CNT) / 4); | ||
388 | |||
389 | for (; p < end; p++, reg++) | ||
390 | *p += readl(reg); | ||
391 | } | ||
392 | |||
393 | static int dnet_poll(struct napi_struct *napi, int budget) | ||
394 | { | ||
395 | struct dnet *bp = container_of(napi, struct dnet, napi); | ||
396 | struct net_device *dev = bp->dev; | ||
397 | int npackets = 0; | ||
398 | unsigned int pkt_len; | ||
399 | struct sk_buff *skb; | ||
400 | unsigned int *data_ptr; | ||
401 | u32 int_enable; | ||
402 | u32 cmd_word; | ||
403 | int i; | ||
404 | |||
405 | while (npackets < budget) { | ||
406 | /* | ||
407 | * break out of while loop if there are no more | ||
408 | * packets waiting | ||
409 | */ | ||
410 | if (!(dnet_readl(bp, RX_FIFO_WCNT) >> 16)) { | ||
411 | napi_complete(napi); | ||
412 | int_enable = dnet_readl(bp, INTR_ENB); | ||
413 | int_enable |= DNET_INTR_SRC_RX_CMDFIFOAF; | ||
414 | dnet_writel(bp, int_enable, INTR_ENB); | ||
415 | return 0; | ||
416 | } | ||
417 | |||
418 | cmd_word = dnet_readl(bp, RX_LEN_FIFO); | ||
419 | pkt_len = cmd_word & 0xFFFF; | ||
420 | |||
421 | if (cmd_word & 0xDF180000) | ||
422 | printk(KERN_ERR "%s packet receive error %x\n", | ||
423 | __func__, cmd_word); | ||
424 | |||
425 | skb = dev_alloc_skb(pkt_len + 5); | ||
426 | if (skb != NULL) { | ||
427 | /* Align IP on 16 byte boundaries */ | ||
428 | skb_reserve(skb, 2); | ||
429 | /* | ||
430 | * 'skb_put()' points to the start of sk_buff | ||
431 | * data area. | ||
432 | */ | ||
433 | data_ptr = (unsigned int *)skb_put(skb, pkt_len); | ||
434 | for (i = 0; i < (pkt_len + 3) >> 2; i++) | ||
435 | *data_ptr++ = dnet_readl(bp, RX_DATA_FIFO); | ||
436 | skb->protocol = eth_type_trans(skb, dev); | ||
437 | netif_receive_skb(skb); | ||
438 | npackets++; | ||
439 | } else | ||
440 | printk(KERN_NOTICE | ||
441 | "%s: No memory to allocate a sk_buff of " | ||
442 | "size %u.\n", dev->name, pkt_len); | ||
443 | } | ||
444 | |||
445 | budget -= npackets; | ||
446 | |||
447 | if (npackets < budget) { | ||
448 | /* We processed all packets available. Tell NAPI it can | ||
449 | * stop polling then re-enable rx interrupts */ | ||
450 | napi_complete(napi); | ||
451 | int_enable = dnet_readl(bp, INTR_ENB); | ||
452 | int_enable |= DNET_INTR_SRC_RX_CMDFIFOAF; | ||
453 | dnet_writel(bp, int_enable, INTR_ENB); | ||
454 | return 0; | ||
455 | } | ||
456 | |||
457 | /* There are still packets waiting */ | ||
458 | return 1; | ||
459 | } | ||
460 | |||
461 | static irqreturn_t dnet_interrupt(int irq, void *dev_id) | ||
462 | { | ||
463 | struct net_device *dev = dev_id; | ||
464 | struct dnet *bp = netdev_priv(dev); | ||
465 | u32 int_src, int_enable, int_current; | ||
466 | unsigned long flags; | ||
467 | unsigned int handled = 0; | ||
468 | |||
469 | spin_lock_irqsave(&bp->lock, flags); | ||
470 | |||
471 | /* read and clear the DNET irq (clear on read) */ | ||
472 | int_src = dnet_readl(bp, INTR_SRC); | ||
473 | int_enable = dnet_readl(bp, INTR_ENB); | ||
474 | int_current = int_src & int_enable; | ||
475 | |||
476 | /* restart the queue if we had stopped it for TX fifo almost full */ | ||
477 | if (int_current & DNET_INTR_SRC_TX_FIFOAE) { | ||
478 | int_enable = dnet_readl(bp, INTR_ENB); | ||
479 | int_enable &= ~DNET_INTR_ENB_TX_FIFOAE; | ||
480 | dnet_writel(bp, int_enable, INTR_ENB); | ||
481 | netif_wake_queue(dev); | ||
482 | handled = 1; | ||
483 | } | ||
484 | |||
485 | /* RX FIFO error checking */ | ||
486 | if (int_current & | ||
487 | (DNET_INTR_SRC_RX_CMDFIFOFF | DNET_INTR_SRC_RX_DATAFIFOFF)) { | ||
488 | printk(KERN_ERR "%s: RX fifo error %x, irq %x\n", __func__, | ||
489 | dnet_readl(bp, RX_STATUS), int_current); | ||
490 | /* we can only flush the RX FIFOs */ | ||
491 | dnet_writel(bp, DNET_SYS_CTL_RXFIFOFLUSH, SYS_CTL); | ||
492 | ndelay(500); | ||
493 | dnet_writel(bp, 0, SYS_CTL); | ||
494 | handled = 1; | ||
495 | } | ||
496 | |||
497 | /* TX FIFO error checking */ | ||
498 | if (int_current & | ||
499 | (DNET_INTR_SRC_TX_FIFOFULL | DNET_INTR_SRC_TX_DISCFRM)) { | ||
500 | printk(KERN_ERR "%s: TX fifo error %x, irq %x\n", __func__, | ||
501 | dnet_readl(bp, TX_STATUS), int_current); | ||
502 | /* we can only flush the TX FIFOs */ | ||
503 | dnet_writel(bp, DNET_SYS_CTL_TXFIFOFLUSH, SYS_CTL); | ||
504 | ndelay(500); | ||
505 | dnet_writel(bp, 0, SYS_CTL); | ||
506 | handled = 1; | ||
507 | } | ||
508 | |||
509 | if (int_current & DNET_INTR_SRC_RX_CMDFIFOAF) { | ||
510 | if (napi_schedule_prep(&bp->napi)) { | ||
511 | /* | ||
512 | * There's no point taking any more interrupts | ||
513 | * until we have processed the buffers | ||
514 | */ | ||
515 | /* Disable Rx interrupts and schedule NAPI poll */ | ||
516 | int_enable = dnet_readl(bp, INTR_ENB); | ||
517 | int_enable &= ~DNET_INTR_SRC_RX_CMDFIFOAF; | ||
518 | dnet_writel(bp, int_enable, INTR_ENB); | ||
519 | __napi_schedule(&bp->napi); | ||
520 | } | ||
521 | handled = 1; | ||
522 | } | ||
523 | |||
524 | if (!handled) | ||
525 | pr_debug("%s: irq %x remains\n", __func__, int_current); | ||
526 | |||
527 | spin_unlock_irqrestore(&bp->lock, flags); | ||
528 | |||
529 | return IRQ_RETVAL(handled); | ||
530 | } | ||
531 | |||
532 | #ifdef DEBUG | ||
533 | static inline void dnet_print_skb(struct sk_buff *skb) | ||
534 | { | ||
535 | int k; | ||
536 | printk(KERN_DEBUG PFX "data:"); | ||
537 | for (k = 0; k < skb->len; k++) | ||
538 | printk(" %02x", (unsigned int)skb->data[k]); | ||
539 | printk("\n"); | ||
540 | } | ||
541 | #else | ||
542 | #define dnet_print_skb(skb) do {} while (0) | ||
543 | #endif | ||
544 | |||
545 | static int dnet_start_xmit(struct sk_buff *skb, struct net_device *dev) | ||
546 | { | ||
547 | |||
548 | struct dnet *bp = netdev_priv(dev); | ||
549 | u32 tx_status, irq_enable; | ||
550 | unsigned int len, i, tx_cmd, wrsz; | ||
551 | unsigned long flags; | ||
552 | unsigned int *bufp; | ||
553 | |||
554 | tx_status = dnet_readl(bp, TX_STATUS); | ||
555 | |||
556 | pr_debug("start_xmit: len %u head %p data %p\n", | ||
557 | skb->len, skb->head, skb->data); | ||
558 | dnet_print_skb(skb); | ||
559 | |||
560 | /* frame size (words) */ | ||
561 | len = (skb->len + 3) >> 2; | ||
562 | |||
563 | spin_lock_irqsave(&bp->lock, flags); | ||
564 | |||
565 | tx_status = dnet_readl(bp, TX_STATUS); | ||
566 | |||
567 | bufp = (unsigned int *)(((unsigned long) skb->data) & ~0x3UL); | ||
568 | wrsz = (u32) skb->len + 3; | ||
569 | wrsz += ((unsigned long) skb->data) & 0x3; | ||
570 | wrsz >>= 2; | ||
571 | tx_cmd = ((((unsigned long)(skb->data)) & 0x03) << 16) | (u32) skb->len; | ||
572 | |||
573 | /* check if there is enough room for the current frame */ | ||
574 | if (wrsz < (DNET_FIFO_SIZE - dnet_readl(bp, TX_FIFO_WCNT))) { | ||
575 | for (i = 0; i < wrsz; i++) | ||
576 | dnet_writel(bp, *bufp++, TX_DATA_FIFO); | ||
577 | |||
578 | /* | ||
579 | * inform MAC that a packet's written and ready to be | ||
580 | * shipped out | ||
581 | */ | ||
582 | dnet_writel(bp, tx_cmd, TX_LEN_FIFO); | ||
583 | } | ||
584 | |||
585 | if (dnet_readl(bp, TX_FIFO_WCNT) > DNET_FIFO_TX_DATA_AF_TH) { | ||
586 | netif_stop_queue(dev); | ||
587 | tx_status = dnet_readl(bp, INTR_SRC); | ||
588 | irq_enable = dnet_readl(bp, INTR_ENB); | ||
589 | irq_enable |= DNET_INTR_ENB_TX_FIFOAE; | ||
590 | dnet_writel(bp, irq_enable, INTR_ENB); | ||
591 | } | ||
592 | |||
593 | /* free the buffer */ | ||
594 | dev_kfree_skb(skb); | ||
595 | |||
596 | spin_unlock_irqrestore(&bp->lock, flags); | ||
597 | |||
598 | dev->trans_start = jiffies; | ||
599 | |||
600 | return 0; | ||
601 | } | ||
602 | |||
603 | static void dnet_reset_hw(struct dnet *bp) | ||
604 | { | ||
605 | /* put ts_mac in IDLE state i.e. disable rx/tx */ | ||
606 | dnet_writew_mac(bp, DNET_INTERNAL_MODE_REG, DNET_INTERNAL_MODE_FCEN); | ||
607 | |||
608 | /* | ||
609 | * RX FIFO almost full threshold: only cmd FIFO almost full is | ||
610 | * implemented for RX side | ||
611 | */ | ||
612 | dnet_writel(bp, DNET_FIFO_RX_CMD_AF_TH, RX_FIFO_TH); | ||
613 | /* | ||
614 | * TX FIFO almost empty threshold: only data FIFO almost empty | ||
615 | * is implemented for TX side | ||
616 | */ | ||
617 | dnet_writel(bp, DNET_FIFO_TX_DATA_AE_TH, TX_FIFO_TH); | ||
618 | |||
619 | /* flush rx/tx fifos */ | ||
620 | dnet_writel(bp, DNET_SYS_CTL_RXFIFOFLUSH | DNET_SYS_CTL_TXFIFOFLUSH, | ||
621 | SYS_CTL); | ||
622 | msleep(1); | ||
623 | dnet_writel(bp, 0, SYS_CTL); | ||
624 | } | ||
625 | |||
626 | static void dnet_init_hw(struct dnet *bp) | ||
627 | { | ||
628 | u32 config; | ||
629 | |||
630 | dnet_reset_hw(bp); | ||
631 | __dnet_set_hwaddr(bp); | ||
632 | |||
633 | config = dnet_readw_mac(bp, DNET_INTERNAL_RXTX_CONTROL_REG); | ||
634 | |||
635 | if (bp->dev->flags & IFF_PROMISC) | ||
636 | /* Copy All Frames */ | ||
637 | config |= DNET_INTERNAL_RXTX_CONTROL_ENPROMISC; | ||
638 | if (!(bp->dev->flags & IFF_BROADCAST)) | ||
639 | /* No BroadCast */ | ||
640 | config |= DNET_INTERNAL_RXTX_CONTROL_RXMULTICAST; | ||
641 | |||
642 | config |= DNET_INTERNAL_RXTX_CONTROL_RXPAUSE | | ||
643 | DNET_INTERNAL_RXTX_CONTROL_RXBROADCAST | | ||
644 | DNET_INTERNAL_RXTX_CONTROL_DROPCONTROL | | ||
645 | DNET_INTERNAL_RXTX_CONTROL_DISCFXFCS; | ||
646 | |||
647 | dnet_writew_mac(bp, DNET_INTERNAL_RXTX_CONTROL_REG, config); | ||
648 | |||
649 | /* clear irq before enabling them */ | ||
650 | config = dnet_readl(bp, INTR_SRC); | ||
651 | |||
652 | /* enable RX/TX interrupt, recv packet ready interrupt */ | ||
653 | dnet_writel(bp, DNET_INTR_ENB_GLOBAL_ENABLE | DNET_INTR_ENB_RX_SUMMARY | | ||
654 | DNET_INTR_ENB_TX_SUMMARY | DNET_INTR_ENB_RX_FIFOERR | | ||
655 | DNET_INTR_ENB_RX_ERROR | DNET_INTR_ENB_RX_FIFOFULL | | ||
656 | DNET_INTR_ENB_TX_FIFOFULL | DNET_INTR_ENB_TX_DISCFRM | | ||
657 | DNET_INTR_ENB_RX_PKTRDY, INTR_ENB); | ||
658 | } | ||
659 | |||
660 | static int dnet_open(struct net_device *dev) | ||
661 | { | ||
662 | struct dnet *bp = netdev_priv(dev); | ||
663 | |||
664 | /* if the phy is not yet register, retry later */ | ||
665 | if (!bp->phy_dev) | ||
666 | return -EAGAIN; | ||
667 | |||
668 | if (!is_valid_ether_addr(dev->dev_addr)) | ||
669 | return -EADDRNOTAVAIL; | ||
670 | |||
671 | napi_enable(&bp->napi); | ||
672 | dnet_init_hw(bp); | ||
673 | |||
674 | phy_start_aneg(bp->phy_dev); | ||
675 | |||
676 | /* schedule a link state check */ | ||
677 | phy_start(bp->phy_dev); | ||
678 | |||
679 | netif_start_queue(dev); | ||
680 | |||
681 | return 0; | ||
682 | } | ||
683 | |||
684 | static int dnet_close(struct net_device *dev) | ||
685 | { | ||
686 | struct dnet *bp = netdev_priv(dev); | ||
687 | |||
688 | netif_stop_queue(dev); | ||
689 | napi_disable(&bp->napi); | ||
690 | |||
691 | if (bp->phy_dev) | ||
692 | phy_stop(bp->phy_dev); | ||
693 | |||
694 | dnet_reset_hw(bp); | ||
695 | netif_carrier_off(dev); | ||
696 | |||
697 | return 0; | ||
698 | } | ||
699 | |||
700 | static inline void dnet_print_pretty_hwstats(struct dnet_stats *hwstat) | ||
701 | { | ||
702 | pr_debug("%s\n", __func__); | ||
703 | pr_debug("----------------------------- RX statistics " | ||
704 | "-------------------------------\n"); | ||
705 | pr_debug("RX_PKT_IGNR_CNT %-8x\n", hwstat->rx_pkt_ignr); | ||
706 | pr_debug("RX_LEN_CHK_ERR_CNT %-8x\n", hwstat->rx_len_chk_err); | ||
707 | pr_debug("RX_LNG_FRM_CNT %-8x\n", hwstat->rx_lng_frm); | ||
708 | pr_debug("RX_SHRT_FRM_CNT %-8x\n", hwstat->rx_shrt_frm); | ||
709 | pr_debug("RX_IPG_VIOL_CNT %-8x\n", hwstat->rx_ipg_viol); | ||
710 | pr_debug("RX_CRC_ERR_CNT %-8x\n", hwstat->rx_crc_err); | ||
711 | pr_debug("RX_OK_PKT_CNT %-8x\n", hwstat->rx_ok_pkt); | ||
712 | pr_debug("RX_CTL_FRM_CNT %-8x\n", hwstat->rx_ctl_frm); | ||
713 | pr_debug("RX_PAUSE_FRM_CNT %-8x\n", hwstat->rx_pause_frm); | ||
714 | pr_debug("RX_MULTICAST_CNT %-8x\n", hwstat->rx_multicast); | ||
715 | pr_debug("RX_BROADCAST_CNT %-8x\n", hwstat->rx_broadcast); | ||
716 | pr_debug("RX_VLAN_TAG_CNT %-8x\n", hwstat->rx_vlan_tag); | ||
717 | pr_debug("RX_PRE_SHRINK_CNT %-8x\n", hwstat->rx_pre_shrink); | ||
718 | pr_debug("RX_DRIB_NIB_CNT %-8x\n", hwstat->rx_drib_nib); | ||
719 | pr_debug("RX_UNSUP_OPCD_CNT %-8x\n", hwstat->rx_unsup_opcd); | ||
720 | pr_debug("RX_BYTE_CNT %-8x\n", hwstat->rx_byte); | ||
721 | pr_debug("----------------------------- TX statistics " | ||
722 | "-------------------------------\n"); | ||
723 | pr_debug("TX_UNICAST_CNT %-8x\n", hwstat->tx_unicast); | ||
724 | pr_debug("TX_PAUSE_FRM_CNT %-8x\n", hwstat->tx_pause_frm); | ||
725 | pr_debug("TX_MULTICAST_CNT %-8x\n", hwstat->tx_multicast); | ||
726 | pr_debug("TX_BRDCAST_CNT %-8x\n", hwstat->tx_brdcast); | ||
727 | pr_debug("TX_VLAN_TAG_CNT %-8x\n", hwstat->tx_vlan_tag); | ||
728 | pr_debug("TX_BAD_FCS_CNT %-8x\n", hwstat->tx_bad_fcs); | ||
729 | pr_debug("TX_JUMBO_CNT %-8x\n", hwstat->tx_jumbo); | ||
730 | pr_debug("TX_BYTE_CNT %-8x\n", hwstat->tx_byte); | ||
731 | } | ||
732 | |||
733 | static struct net_device_stats *dnet_get_stats(struct net_device *dev) | ||
734 | { | ||
735 | |||
736 | struct dnet *bp = netdev_priv(dev); | ||
737 | struct net_device_stats *nstat = &dev->stats; | ||
738 | struct dnet_stats *hwstat = &bp->hw_stats; | ||
739 | |||
740 | /* read stats from hardware */ | ||
741 | dnet_update_stats(bp); | ||
742 | |||
743 | /* Convert HW stats into netdevice stats */ | ||
744 | nstat->rx_errors = (hwstat->rx_len_chk_err + | ||
745 | hwstat->rx_lng_frm + hwstat->rx_shrt_frm + | ||
746 | /* ignore IGP violation error | ||
747 | hwstat->rx_ipg_viol + */ | ||
748 | hwstat->rx_crc_err + | ||
749 | hwstat->rx_pre_shrink + | ||
750 | hwstat->rx_drib_nib + hwstat->rx_unsup_opcd); | ||
751 | nstat->tx_errors = hwstat->tx_bad_fcs; | ||
752 | nstat->rx_length_errors = (hwstat->rx_len_chk_err + | ||
753 | hwstat->rx_lng_frm + | ||
754 | hwstat->rx_shrt_frm + hwstat->rx_pre_shrink); | ||
755 | nstat->rx_crc_errors = hwstat->rx_crc_err; | ||
756 | nstat->rx_frame_errors = hwstat->rx_pre_shrink + hwstat->rx_drib_nib; | ||
757 | nstat->rx_packets = hwstat->rx_ok_pkt; | ||
758 | nstat->tx_packets = (hwstat->tx_unicast + | ||
759 | hwstat->tx_multicast + hwstat->tx_brdcast); | ||
760 | nstat->rx_bytes = hwstat->rx_byte; | ||
761 | nstat->tx_bytes = hwstat->tx_byte; | ||
762 | nstat->multicast = hwstat->rx_multicast; | ||
763 | nstat->rx_missed_errors = hwstat->rx_pkt_ignr; | ||
764 | |||
765 | dnet_print_pretty_hwstats(hwstat); | ||
766 | |||
767 | return nstat; | ||
768 | } | ||
769 | |||
770 | static int dnet_get_settings(struct net_device *dev, struct ethtool_cmd *cmd) | ||
771 | { | ||
772 | struct dnet *bp = netdev_priv(dev); | ||
773 | struct phy_device *phydev = bp->phy_dev; | ||
774 | |||
775 | if (!phydev) | ||
776 | return -ENODEV; | ||
777 | |||
778 | return phy_ethtool_gset(phydev, cmd); | ||
779 | } | ||
780 | |||
781 | static int dnet_set_settings(struct net_device *dev, struct ethtool_cmd *cmd) | ||
782 | { | ||
783 | struct dnet *bp = netdev_priv(dev); | ||
784 | struct phy_device *phydev = bp->phy_dev; | ||
785 | |||
786 | if (!phydev) | ||
787 | return -ENODEV; | ||
788 | |||
789 | return phy_ethtool_sset(phydev, cmd); | ||
790 | } | ||
791 | |||
792 | static int dnet_ioctl(struct net_device *dev, struct ifreq *rq, int cmd) | ||
793 | { | ||
794 | struct dnet *bp = netdev_priv(dev); | ||
795 | struct phy_device *phydev = bp->phy_dev; | ||
796 | |||
797 | if (!netif_running(dev)) | ||
798 | return -EINVAL; | ||
799 | |||
800 | if (!phydev) | ||
801 | return -ENODEV; | ||
802 | |||
803 | return phy_mii_ioctl(phydev, if_mii(rq), cmd); | ||
804 | } | ||
805 | |||
806 | static void dnet_get_drvinfo(struct net_device *dev, | ||
807 | struct ethtool_drvinfo *info) | ||
808 | { | ||
809 | strcpy(info->driver, DRV_NAME); | ||
810 | strcpy(info->version, DRV_VERSION); | ||
811 | strcpy(info->bus_info, "0"); | ||
812 | } | ||
813 | |||
814 | static const struct ethtool_ops dnet_ethtool_ops = { | ||
815 | .get_settings = dnet_get_settings, | ||
816 | .set_settings = dnet_set_settings, | ||
817 | .get_drvinfo = dnet_get_drvinfo, | ||
818 | .get_link = ethtool_op_get_link, | ||
819 | }; | ||
820 | |||
821 | static const struct net_device_ops dnet_netdev_ops = { | ||
822 | .ndo_open = dnet_open, | ||
823 | .ndo_stop = dnet_close, | ||
824 | .ndo_get_stats = dnet_get_stats, | ||
825 | .ndo_start_xmit = dnet_start_xmit, | ||
826 | .ndo_do_ioctl = dnet_ioctl, | ||
827 | .ndo_set_mac_address = eth_mac_addr, | ||
828 | .ndo_validate_addr = eth_validate_addr, | ||
829 | .ndo_change_mtu = eth_change_mtu, | ||
830 | }; | ||
831 | |||
832 | static int __devinit dnet_probe(struct platform_device *pdev) | ||
833 | { | ||
834 | struct resource *res; | ||
835 | struct net_device *dev; | ||
836 | struct dnet *bp; | ||
837 | struct phy_device *phydev; | ||
838 | int err = -ENXIO; | ||
839 | unsigned int mem_base, mem_size, irq; | ||
840 | |||
841 | res = platform_get_resource(pdev, IORESOURCE_MEM, 0); | ||
842 | if (!res) { | ||
843 | dev_err(&pdev->dev, "no mmio resource defined\n"); | ||
844 | goto err_out; | ||
845 | } | ||
846 | mem_base = res->start; | ||
847 | mem_size = resource_size(res); | ||
848 | irq = platform_get_irq(pdev, 0); | ||
849 | |||
850 | if (!request_mem_region(mem_base, mem_size, DRV_NAME)) { | ||
851 | dev_err(&pdev->dev, "no memory region available\n"); | ||
852 | err = -EBUSY; | ||
853 | goto err_out; | ||
854 | } | ||
855 | |||
856 | err = -ENOMEM; | ||
857 | dev = alloc_etherdev(sizeof(*bp)); | ||
858 | if (!dev) { | ||
859 | dev_err(&pdev->dev, "etherdev alloc failed, aborting.\n"); | ||
860 | goto err_out; | ||
861 | } | ||
862 | |||
863 | /* TODO: Actually, we have some interesting features... */ | ||
864 | dev->features |= 0; | ||
865 | |||
866 | bp = netdev_priv(dev); | ||
867 | bp->dev = dev; | ||
868 | |||
869 | SET_NETDEV_DEV(dev, &pdev->dev); | ||
870 | |||
871 | spin_lock_init(&bp->lock); | ||
872 | |||
873 | bp->regs = ioremap(mem_base, mem_size); | ||
874 | if (!bp->regs) { | ||
875 | dev_err(&pdev->dev, "failed to map registers, aborting.\n"); | ||
876 | err = -ENOMEM; | ||
877 | goto err_out_free_dev; | ||
878 | } | ||
879 | |||
880 | dev->irq = irq; | ||
881 | err = request_irq(dev->irq, dnet_interrupt, 0, DRV_NAME, dev); | ||
882 | if (err) { | ||
883 | dev_err(&pdev->dev, "Unable to request IRQ %d (error %d)\n", | ||
884 | irq, err); | ||
885 | goto err_out_iounmap; | ||
886 | } | ||
887 | |||
888 | dev->netdev_ops = &dnet_netdev_ops; | ||
889 | netif_napi_add(dev, &bp->napi, dnet_poll, 64); | ||
890 | dev->ethtool_ops = &dnet_ethtool_ops; | ||
891 | |||
892 | dev->base_addr = (unsigned long)bp->regs; | ||
893 | |||
894 | bp->capabilities = dnet_readl(bp, VERCAPS) & DNET_CAPS_MASK; | ||
895 | |||
896 | dnet_get_hwaddr(bp); | ||
897 | |||
898 | if (!is_valid_ether_addr(dev->dev_addr)) { | ||
899 | /* choose a random ethernet address */ | ||
900 | random_ether_addr(dev->dev_addr); | ||
901 | __dnet_set_hwaddr(bp); | ||
902 | } | ||
903 | |||
904 | err = register_netdev(dev); | ||
905 | if (err) { | ||
906 | dev_err(&pdev->dev, "Cannot register net device, aborting.\n"); | ||
907 | goto err_out_free_irq; | ||
908 | } | ||
909 | |||
910 | /* register the PHY board fixup (for Marvell 88E1111) */ | ||
911 | err = phy_register_fixup_for_uid(0x01410cc0, 0xfffffff0, | ||
912 | dnet_phy_marvell_fixup); | ||
913 | /* we can live without it, so just issue a warning */ | ||
914 | if (err) | ||
915 | dev_warn(&pdev->dev, "Cannot register PHY board fixup.\n"); | ||
916 | |||
917 | if (dnet_mii_init(bp) != 0) | ||
918 | goto err_out_unregister_netdev; | ||
919 | |||
920 | dev_info(&pdev->dev, "Dave DNET at 0x%p (0x%08x) irq %d %pM\n", | ||
921 | bp->regs, mem_base, dev->irq, dev->dev_addr); | ||
922 | dev_info(&pdev->dev, "has %smdio, %sirq, %sgigabit, %sdma \n", | ||
923 | (bp->capabilities & DNET_HAS_MDIO) ? "" : "no ", | ||
924 | (bp->capabilities & DNET_HAS_IRQ) ? "" : "no ", | ||
925 | (bp->capabilities & DNET_HAS_GIGABIT) ? "" : "no ", | ||
926 | (bp->capabilities & DNET_HAS_DMA) ? "" : "no "); | ||
927 | phydev = bp->phy_dev; | ||
928 | dev_info(&pdev->dev, "attached PHY driver [%s] " | ||
929 | "(mii_bus:phy_addr=%s, irq=%d)\n", | ||
930 | phydev->drv->name, phydev->dev.bus_id, phydev->irq); | ||
931 | |||
932 | return 0; | ||
933 | |||
934 | err_out_unregister_netdev: | ||
935 | unregister_netdev(dev); | ||
936 | err_out_free_irq: | ||
937 | free_irq(dev->irq, dev); | ||
938 | err_out_iounmap: | ||
939 | iounmap(bp->regs); | ||
940 | err_out_free_dev: | ||
941 | free_netdev(dev); | ||
942 | err_out: | ||
943 | return err; | ||
944 | } | ||
945 | |||
946 | static int __devexit dnet_remove(struct platform_device *pdev) | ||
947 | { | ||
948 | |||
949 | struct net_device *dev; | ||
950 | struct dnet *bp; | ||
951 | |||
952 | dev = platform_get_drvdata(pdev); | ||
953 | |||
954 | if (dev) { | ||
955 | bp = netdev_priv(dev); | ||
956 | if (bp->phy_dev) | ||
957 | phy_disconnect(bp->phy_dev); | ||
958 | mdiobus_unregister(bp->mii_bus); | ||
959 | kfree(bp->mii_bus->irq); | ||
960 | mdiobus_free(bp->mii_bus); | ||
961 | unregister_netdev(dev); | ||
962 | free_irq(dev->irq, dev); | ||
963 | iounmap(bp->regs); | ||
964 | free_netdev(dev); | ||
965 | } | ||
966 | |||
967 | return 0; | ||
968 | } | ||
969 | |||
970 | static struct platform_driver dnet_driver = { | ||
971 | .probe = dnet_probe, | ||
972 | .remove = __devexit_p(dnet_remove), | ||
973 | .driver = { | ||
974 | .name = "dnet", | ||
975 | }, | ||
976 | }; | ||
977 | |||
978 | static int __init dnet_init(void) | ||
979 | { | ||
980 | return platform_driver_register(&dnet_driver); | ||
981 | } | ||
982 | |||
983 | static void __exit dnet_exit(void) | ||
984 | { | ||
985 | platform_driver_unregister(&dnet_driver); | ||
986 | } | ||
987 | |||
988 | module_init(dnet_init); | ||
989 | module_exit(dnet_exit); | ||
990 | |||
991 | MODULE_LICENSE("GPL"); | ||
992 | MODULE_DESCRIPTION("Dave DNET Ethernet driver"); | ||
993 | MODULE_AUTHOR("Ilya Yanok <yanok@emcraft.com>, " | ||
994 | "Matteo Vit <matteo.vit@dave.eu>"); | ||
diff --git a/drivers/net/dnet.h b/drivers/net/dnet.h new file mode 100644 index 000000000000..37f5b30fa78b --- /dev/null +++ b/drivers/net/dnet.h | |||
@@ -0,0 +1,225 @@ | |||
1 | /* | ||
2 | * Dave DNET Ethernet Controller driver | ||
3 | * | ||
4 | * Copyright (C) 2008 Dave S.r.l. <www.dave.eu> | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License version 2 as | ||
8 | * published by the Free Software Foundation. | ||
9 | */ | ||
10 | #ifndef _DNET_H | ||
11 | #define _DNET_H | ||
12 | |||
13 | #define DRV_NAME "dnet" | ||
14 | #define DRV_VERSION "0.9.1" | ||
15 | #define PFX DRV_NAME ": " | ||
16 | |||
17 | /* Register access macros */ | ||
18 | #define dnet_writel(port, value, reg) \ | ||
19 | writel((value), (port)->regs + DNET_##reg) | ||
20 | #define dnet_readl(port, reg) readl((port)->regs + DNET_##reg) | ||
21 | |||
22 | /* ALL DNET FIFO REGISTERS */ | ||
23 | #define DNET_RX_LEN_FIFO 0x000 /* RX_LEN_FIFO */ | ||
24 | #define DNET_RX_DATA_FIFO 0x004 /* RX_DATA_FIFO */ | ||
25 | #define DNET_TX_LEN_FIFO 0x008 /* TX_LEN_FIFO */ | ||
26 | #define DNET_TX_DATA_FIFO 0x00C /* TX_DATA_FIFO */ | ||
27 | |||
28 | /* ALL DNET CONTROL/STATUS REGISTERS OFFSETS */ | ||
29 | #define DNET_VERCAPS 0x100 /* VERCAPS */ | ||
30 | #define DNET_INTR_SRC 0x104 /* INTR_SRC */ | ||
31 | #define DNET_INTR_ENB 0x108 /* INTR_ENB */ | ||
32 | #define DNET_RX_STATUS 0x10C /* RX_STATUS */ | ||
33 | #define DNET_TX_STATUS 0x110 /* TX_STATUS */ | ||
34 | #define DNET_RX_FRAMES_CNT 0x114 /* RX_FRAMES_CNT */ | ||
35 | #define DNET_TX_FRAMES_CNT 0x118 /* TX_FRAMES_CNT */ | ||
36 | #define DNET_RX_FIFO_TH 0x11C /* RX_FIFO_TH */ | ||
37 | #define DNET_TX_FIFO_TH 0x120 /* TX_FIFO_TH */ | ||
38 | #define DNET_SYS_CTL 0x124 /* SYS_CTL */ | ||
39 | #define DNET_PAUSE_TMR 0x128 /* PAUSE_TMR */ | ||
40 | #define DNET_RX_FIFO_WCNT 0x12C /* RX_FIFO_WCNT */ | ||
41 | #define DNET_TX_FIFO_WCNT 0x130 /* TX_FIFO_WCNT */ | ||
42 | |||
43 | /* ALL DNET MAC REGISTERS */ | ||
44 | #define DNET_MACREG_DATA 0x200 /* Mac-Reg Data */ | ||
45 | #define DNET_MACREG_ADDR 0x204 /* Mac-Reg Addr */ | ||
46 | |||
47 | /* ALL DNET RX STATISTICS COUNTERS */ | ||
48 | #define DNET_RX_PKT_IGNR_CNT 0x300 | ||
49 | #define DNET_RX_LEN_CHK_ERR_CNT 0x304 | ||
50 | #define DNET_RX_LNG_FRM_CNT 0x308 | ||
51 | #define DNET_RX_SHRT_FRM_CNT 0x30C | ||
52 | #define DNET_RX_IPG_VIOL_CNT 0x310 | ||
53 | #define DNET_RX_CRC_ERR_CNT 0x314 | ||
54 | #define DNET_RX_OK_PKT_CNT 0x318 | ||
55 | #define DNET_RX_CTL_FRM_CNT 0x31C | ||
56 | #define DNET_RX_PAUSE_FRM_CNT 0x320 | ||
57 | #define DNET_RX_MULTICAST_CNT 0x324 | ||
58 | #define DNET_RX_BROADCAST_CNT 0x328 | ||
59 | #define DNET_RX_VLAN_TAG_CNT 0x32C | ||
60 | #define DNET_RX_PRE_SHRINK_CNT 0x330 | ||
61 | #define DNET_RX_DRIB_NIB_CNT 0x334 | ||
62 | #define DNET_RX_UNSUP_OPCD_CNT 0x338 | ||
63 | #define DNET_RX_BYTE_CNT 0x33C | ||
64 | |||
65 | /* DNET TX STATISTICS COUNTERS */ | ||
66 | #define DNET_TX_UNICAST_CNT 0x400 | ||
67 | #define DNET_TX_PAUSE_FRM_CNT 0x404 | ||
68 | #define DNET_TX_MULTICAST_CNT 0x408 | ||
69 | #define DNET_TX_BRDCAST_CNT 0x40C | ||
70 | #define DNET_TX_VLAN_TAG_CNT 0x410 | ||
71 | #define DNET_TX_BAD_FCS_CNT 0x414 | ||
72 | #define DNET_TX_JUMBO_CNT 0x418 | ||
73 | #define DNET_TX_BYTE_CNT 0x41C | ||
74 | |||
75 | /* SOME INTERNAL MAC-CORE REGISTER */ | ||
76 | #define DNET_INTERNAL_MODE_REG 0x0 | ||
77 | #define DNET_INTERNAL_RXTX_CONTROL_REG 0x2 | ||
78 | #define DNET_INTERNAL_MAX_PKT_SIZE_REG 0x4 | ||
79 | #define DNET_INTERNAL_IGP_REG 0x8 | ||
80 | #define DNET_INTERNAL_MAC_ADDR_0_REG 0xa | ||
81 | #define DNET_INTERNAL_MAC_ADDR_1_REG 0xc | ||
82 | #define DNET_INTERNAL_MAC_ADDR_2_REG 0xe | ||
83 | #define DNET_INTERNAL_TX_RX_STS_REG 0x12 | ||
84 | #define DNET_INTERNAL_GMII_MNG_CTL_REG 0x14 | ||
85 | #define DNET_INTERNAL_GMII_MNG_DAT_REG 0x16 | ||
86 | |||
87 | #define DNET_INTERNAL_GMII_MNG_CMD_FIN (1 << 14) | ||
88 | |||
89 | #define DNET_INTERNAL_WRITE (1 << 31) | ||
90 | |||
91 | /* MAC-CORE REGISTER FIELDS */ | ||
92 | |||
93 | /* MAC-CORE MODE REGISTER FIELDS */ | ||
94 | #define DNET_INTERNAL_MODE_GBITEN (1 << 0) | ||
95 | #define DNET_INTERNAL_MODE_FCEN (1 << 1) | ||
96 | #define DNET_INTERNAL_MODE_RXEN (1 << 2) | ||
97 | #define DNET_INTERNAL_MODE_TXEN (1 << 3) | ||
98 | |||
99 | /* MAC-CORE RXTX CONTROL REGISTER FIELDS */ | ||
100 | #define DNET_INTERNAL_RXTX_CONTROL_RXSHORTFRAME (1 << 8) | ||
101 | #define DNET_INTERNAL_RXTX_CONTROL_RXBROADCAST (1 << 7) | ||
102 | #define DNET_INTERNAL_RXTX_CONTROL_RXMULTICAST (1 << 4) | ||
103 | #define DNET_INTERNAL_RXTX_CONTROL_RXPAUSE (1 << 3) | ||
104 | #define DNET_INTERNAL_RXTX_CONTROL_DISTXFCS (1 << 2) | ||
105 | #define DNET_INTERNAL_RXTX_CONTROL_DISCFXFCS (1 << 1) | ||
106 | #define DNET_INTERNAL_RXTX_CONTROL_ENPROMISC (1 << 0) | ||
107 | #define DNET_INTERNAL_RXTX_CONTROL_DROPCONTROL (1 << 6) | ||
108 | #define DNET_INTERNAL_RXTX_CONTROL_ENABLEHALFDUP (1 << 5) | ||
109 | |||
110 | /* SYSTEM CONTROL REGISTER FIELDS */ | ||
111 | #define DNET_SYS_CTL_IGNORENEXTPKT (1 << 0) | ||
112 | #define DNET_SYS_CTL_SENDPAUSE (1 << 2) | ||
113 | #define DNET_SYS_CTL_RXFIFOFLUSH (1 << 3) | ||
114 | #define DNET_SYS_CTL_TXFIFOFLUSH (1 << 4) | ||
115 | |||
116 | /* TX STATUS REGISTER FIELDS */ | ||
117 | #define DNET_TX_STATUS_FIFO_ALMOST_EMPTY (1 << 2) | ||
118 | #define DNET_TX_STATUS_FIFO_ALMOST_FULL (1 << 1) | ||
119 | |||
120 | /* INTERRUPT SOURCE REGISTER FIELDS */ | ||
121 | #define DNET_INTR_SRC_TX_PKTSENT (1 << 0) | ||
122 | #define DNET_INTR_SRC_TX_FIFOAF (1 << 1) | ||
123 | #define DNET_INTR_SRC_TX_FIFOAE (1 << 2) | ||
124 | #define DNET_INTR_SRC_TX_DISCFRM (1 << 3) | ||
125 | #define DNET_INTR_SRC_TX_FIFOFULL (1 << 4) | ||
126 | #define DNET_INTR_SRC_RX_CMDFIFOAF (1 << 8) | ||
127 | #define DNET_INTR_SRC_RX_CMDFIFOFF (1 << 9) | ||
128 | #define DNET_INTR_SRC_RX_DATAFIFOFF (1 << 10) | ||
129 | #define DNET_INTR_SRC_TX_SUMMARY (1 << 16) | ||
130 | #define DNET_INTR_SRC_RX_SUMMARY (1 << 17) | ||
131 | #define DNET_INTR_SRC_PHY (1 << 19) | ||
132 | |||
133 | /* INTERRUPT ENABLE REGISTER FIELDS */ | ||
134 | #define DNET_INTR_ENB_TX_PKTSENT (1 << 0) | ||
135 | #define DNET_INTR_ENB_TX_FIFOAF (1 << 1) | ||
136 | #define DNET_INTR_ENB_TX_FIFOAE (1 << 2) | ||
137 | #define DNET_INTR_ENB_TX_DISCFRM (1 << 3) | ||
138 | #define DNET_INTR_ENB_TX_FIFOFULL (1 << 4) | ||
139 | #define DNET_INTR_ENB_RX_PKTRDY (1 << 8) | ||
140 | #define DNET_INTR_ENB_RX_FIFOAF (1 << 9) | ||
141 | #define DNET_INTR_ENB_RX_FIFOERR (1 << 10) | ||
142 | #define DNET_INTR_ENB_RX_ERROR (1 << 11) | ||
143 | #define DNET_INTR_ENB_RX_FIFOFULL (1 << 12) | ||
144 | #define DNET_INTR_ENB_RX_FIFOAE (1 << 13) | ||
145 | #define DNET_INTR_ENB_TX_SUMMARY (1 << 16) | ||
146 | #define DNET_INTR_ENB_RX_SUMMARY (1 << 17) | ||
147 | #define DNET_INTR_ENB_GLOBAL_ENABLE (1 << 18) | ||
148 | |||
149 | /* default values: | ||
150 | * almost empty = less than one full sized ethernet frame (no jumbo) inside | ||
151 | * the fifo almost full = can write less than one full sized ethernet frame | ||
152 | * (no jumbo) inside the fifo | ||
153 | */ | ||
154 | #define DNET_CFG_TX_FIFO_FULL_THRES 25 | ||
155 | #define DNET_CFG_RX_FIFO_FULL_THRES 20 | ||
156 | |||
157 | /* | ||
158 | * Capabilities. Used by the driver to know the capabilities that the ethernet | ||
159 | * controller inside the FPGA have. | ||
160 | */ | ||
161 | |||
162 | #define DNET_HAS_MDIO (1 << 0) | ||
163 | #define DNET_HAS_IRQ (1 << 1) | ||
164 | #define DNET_HAS_GIGABIT (1 << 2) | ||
165 | #define DNET_HAS_DMA (1 << 3) | ||
166 | |||
167 | #define DNET_HAS_MII (1 << 4) /* or GMII */ | ||
168 | #define DNET_HAS_RMII (1 << 5) /* or RGMII */ | ||
169 | |||
170 | #define DNET_CAPS_MASK 0xFFFF | ||
171 | |||
172 | #define DNET_FIFO_SIZE 1024 /* 1K x 32 bit */ | ||
173 | #define DNET_FIFO_TX_DATA_AF_TH (DNET_FIFO_SIZE - 384) /* 384 = 1536 / 4 */ | ||
174 | #define DNET_FIFO_TX_DATA_AE_TH 384 | ||
175 | |||
176 | #define DNET_FIFO_RX_CMD_AF_TH (1 << 16) /* just one frame inside the FIFO */ | ||
177 | |||
178 | /* | ||
179 | * Hardware-collected statistics. | ||
180 | */ | ||
181 | struct dnet_stats { | ||
182 | u32 rx_pkt_ignr; | ||
183 | u32 rx_len_chk_err; | ||
184 | u32 rx_lng_frm; | ||
185 | u32 rx_shrt_frm; | ||
186 | u32 rx_ipg_viol; | ||
187 | u32 rx_crc_err; | ||
188 | u32 rx_ok_pkt; | ||
189 | u32 rx_ctl_frm; | ||
190 | u32 rx_pause_frm; | ||
191 | u32 rx_multicast; | ||
192 | u32 rx_broadcast; | ||
193 | u32 rx_vlan_tag; | ||
194 | u32 rx_pre_shrink; | ||
195 | u32 rx_drib_nib; | ||
196 | u32 rx_unsup_opcd; | ||
197 | u32 rx_byte; | ||
198 | u32 tx_unicast; | ||
199 | u32 tx_pause_frm; | ||
200 | u32 tx_multicast; | ||
201 | u32 tx_brdcast; | ||
202 | u32 tx_vlan_tag; | ||
203 | u32 tx_bad_fcs; | ||
204 | u32 tx_jumbo; | ||
205 | u32 tx_byte; | ||
206 | }; | ||
207 | |||
208 | struct dnet { | ||
209 | void __iomem *regs; | ||
210 | spinlock_t lock; | ||
211 | struct platform_device *pdev; | ||
212 | struct net_device *dev; | ||
213 | struct dnet_stats hw_stats; | ||
214 | unsigned int capabilities; /* read from FPGA */ | ||
215 | struct napi_struct napi; | ||
216 | |||
217 | /* PHY stuff */ | ||
218 | struct mii_bus *mii_bus; | ||
219 | struct phy_device *phy_dev; | ||
220 | unsigned int link; | ||
221 | unsigned int speed; | ||
222 | unsigned int duplex; | ||
223 | }; | ||
224 | |||
225 | #endif /* _DNET_H */ | ||
diff --git a/drivers/net/ibm_newemac/core.c b/drivers/net/ibm_newemac/core.c index 87a706694fb3..6fd7aa61736e 100644 --- a/drivers/net/ibm_newemac/core.c +++ b/drivers/net/ibm_newemac/core.c | |||
@@ -2594,6 +2594,9 @@ static int __devinit emac_init_config(struct emac_instance *dev) | |||
2594 | if (of_device_is_compatible(np, "ibm,emac-460ex") || | 2594 | if (of_device_is_compatible(np, "ibm,emac-460ex") || |
2595 | of_device_is_compatible(np, "ibm,emac-460gt")) | 2595 | of_device_is_compatible(np, "ibm,emac-460gt")) |
2596 | dev->features |= EMAC_FTR_460EX_PHY_CLK_FIX; | 2596 | dev->features |= EMAC_FTR_460EX_PHY_CLK_FIX; |
2597 | if (of_device_is_compatible(np, "ibm,emac-405ex") || | ||
2598 | of_device_is_compatible(np, "ibm,emac-405exr")) | ||
2599 | dev->features |= EMAC_FTR_440EP_PHY_CLK_FIX; | ||
2597 | } else if (of_device_is_compatible(np, "ibm,emac4")) { | 2600 | } else if (of_device_is_compatible(np, "ibm,emac4")) { |
2598 | dev->features |= EMAC_FTR_EMAC4; | 2601 | dev->features |= EMAC_FTR_EMAC4; |
2599 | if (of_device_is_compatible(np, "ibm,emac-440gx")) | 2602 | if (of_device_is_compatible(np, "ibm,emac-440gx")) |
diff --git a/drivers/net/igb/igb_main.c b/drivers/net/igb/igb_main.c index a50db5398fa5..9dd13ad12ce4 100644 --- a/drivers/net/igb/igb_main.c +++ b/drivers/net/igb/igb_main.c | |||
@@ -1023,11 +1023,10 @@ static int __devinit igb_probe(struct pci_dev *pdev, | |||
1023 | struct net_device *netdev; | 1023 | struct net_device *netdev; |
1024 | struct igb_adapter *adapter; | 1024 | struct igb_adapter *adapter; |
1025 | struct e1000_hw *hw; | 1025 | struct e1000_hw *hw; |
1026 | struct pci_dev *us_dev; | ||
1027 | const struct e1000_info *ei = igb_info_tbl[ent->driver_data]; | 1026 | const struct e1000_info *ei = igb_info_tbl[ent->driver_data]; |
1028 | unsigned long mmio_start, mmio_len; | 1027 | unsigned long mmio_start, mmio_len; |
1029 | int i, err, pci_using_dac, pos; | 1028 | int i, err, pci_using_dac; |
1030 | u16 eeprom_data = 0, state = 0; | 1029 | u16 eeprom_data = 0; |
1031 | u16 eeprom_apme_mask = IGB_EEPROM_APME; | 1030 | u16 eeprom_apme_mask = IGB_EEPROM_APME; |
1032 | u32 part_num; | 1031 | u32 part_num; |
1033 | int bars, need_ioport; | 1032 | int bars, need_ioport; |
@@ -1062,27 +1061,6 @@ static int __devinit igb_probe(struct pci_dev *pdev, | |||
1062 | } | 1061 | } |
1063 | } | 1062 | } |
1064 | 1063 | ||
1065 | /* 82575 requires that the pci-e link partner disable the L0s state */ | ||
1066 | switch (pdev->device) { | ||
1067 | case E1000_DEV_ID_82575EB_COPPER: | ||
1068 | case E1000_DEV_ID_82575EB_FIBER_SERDES: | ||
1069 | case E1000_DEV_ID_82575GB_QUAD_COPPER: | ||
1070 | us_dev = pdev->bus->self; | ||
1071 | pos = pci_find_capability(us_dev, PCI_CAP_ID_EXP); | ||
1072 | if (pos) { | ||
1073 | pci_read_config_word(us_dev, pos + PCI_EXP_LNKCTL, | ||
1074 | &state); | ||
1075 | state &= ~PCIE_LINK_STATE_L0S; | ||
1076 | pci_write_config_word(us_dev, pos + PCI_EXP_LNKCTL, | ||
1077 | state); | ||
1078 | dev_info(&pdev->dev, | ||
1079 | "Disabling ASPM L0s upstream switch port %s\n", | ||
1080 | pci_name(us_dev)); | ||
1081 | } | ||
1082 | default: | ||
1083 | break; | ||
1084 | } | ||
1085 | |||
1086 | err = pci_request_selected_regions(pdev, bars, igb_driver_name); | 1064 | err = pci_request_selected_regions(pdev, bars, igb_driver_name); |
1087 | if (err) | 1065 | if (err) |
1088 | goto err_pci_reg; | 1066 | goto err_pci_reg; |
diff --git a/drivers/net/ixgbe/ixgbe_main.c b/drivers/net/ixgbe/ixgbe_main.c index d2f4d5f508b7..5d364a96e35d 100644 --- a/drivers/net/ixgbe/ixgbe_main.c +++ b/drivers/net/ixgbe/ixgbe_main.c | |||
@@ -3973,6 +3973,7 @@ static const struct net_device_ops ixgbe_netdev_ops = { | |||
3973 | .ndo_stop = ixgbe_close, | 3973 | .ndo_stop = ixgbe_close, |
3974 | .ndo_start_xmit = ixgbe_xmit_frame, | 3974 | .ndo_start_xmit = ixgbe_xmit_frame, |
3975 | .ndo_get_stats = ixgbe_get_stats, | 3975 | .ndo_get_stats = ixgbe_get_stats, |
3976 | .ndo_set_rx_mode = ixgbe_set_rx_mode, | ||
3976 | .ndo_set_multicast_list = ixgbe_set_rx_mode, | 3977 | .ndo_set_multicast_list = ixgbe_set_rx_mode, |
3977 | .ndo_validate_addr = eth_validate_addr, | 3978 | .ndo_validate_addr = eth_validate_addr, |
3978 | .ndo_set_mac_address = ixgbe_set_mac, | 3979 | .ndo_set_mac_address = ixgbe_set_mac, |
diff --git a/drivers/net/jme.c b/drivers/net/jme.c index 08b34051c646..a6e1a35a13cb 100644 --- a/drivers/net/jme.c +++ b/drivers/net/jme.c | |||
@@ -957,13 +957,14 @@ jme_process_receive(struct jme_adapter *jme, int limit) | |||
957 | goto out_inc; | 957 | goto out_inc; |
958 | 958 | ||
959 | i = atomic_read(&rxring->next_to_clean); | 959 | i = atomic_read(&rxring->next_to_clean); |
960 | while (limit-- > 0) { | 960 | while (limit > 0) { |
961 | rxdesc = rxring->desc; | 961 | rxdesc = rxring->desc; |
962 | rxdesc += i; | 962 | rxdesc += i; |
963 | 963 | ||
964 | if ((rxdesc->descwb.flags & cpu_to_le16(RXWBFLAG_OWN)) || | 964 | if ((rxdesc->descwb.flags & cpu_to_le16(RXWBFLAG_OWN)) || |
965 | !(rxdesc->descwb.desccnt & RXWBDCNT_WBCPL)) | 965 | !(rxdesc->descwb.desccnt & RXWBDCNT_WBCPL)) |
966 | goto out; | 966 | goto out; |
967 | --limit; | ||
967 | 968 | ||
968 | desccnt = rxdesc->descwb.desccnt & RXWBDCNT_DCNT; | 969 | desccnt = rxdesc->descwb.desccnt & RXWBDCNT_DCNT; |
969 | 970 | ||
diff --git a/drivers/net/mv643xx_eth.c b/drivers/net/mv643xx_eth.c index 13f11f402a99..b0bc3bc18e9c 100644 --- a/drivers/net/mv643xx_eth.c +++ b/drivers/net/mv643xx_eth.c | |||
@@ -2030,11 +2030,6 @@ static void port_start(struct mv643xx_eth_private *mp) | |||
2030 | } | 2030 | } |
2031 | 2031 | ||
2032 | /* | 2032 | /* |
2033 | * Add configured unicast address to address filter table. | ||
2034 | */ | ||
2035 | mv643xx_eth_program_unicast_filter(mp->dev); | ||
2036 | |||
2037 | /* | ||
2038 | * Receive all unmatched unicast, TCP, UDP, BPDU and broadcast | 2033 | * Receive all unmatched unicast, TCP, UDP, BPDU and broadcast |
2039 | * frames to RX queue #0, and include the pseudo-header when | 2034 | * frames to RX queue #0, and include the pseudo-header when |
2040 | * calculating receive checksums. | 2035 | * calculating receive checksums. |
@@ -2047,6 +2042,11 @@ static void port_start(struct mv643xx_eth_private *mp) | |||
2047 | wrlp(mp, PORT_CONFIG_EXT, 0x00000000); | 2042 | wrlp(mp, PORT_CONFIG_EXT, 0x00000000); |
2048 | 2043 | ||
2049 | /* | 2044 | /* |
2045 | * Add configured unicast addresses to address filter table. | ||
2046 | */ | ||
2047 | mv643xx_eth_program_unicast_filter(mp->dev); | ||
2048 | |||
2049 | /* | ||
2050 | * Enable the receive queues. | 2050 | * Enable the receive queues. |
2051 | */ | 2051 | */ |
2052 | for (i = 0; i < mp->rxq_count; i++) { | 2052 | for (i = 0; i < mp->rxq_count; i++) { |
diff --git a/drivers/net/netxen/netxen_nic.h b/drivers/net/netxen/netxen_nic.h index f4dd9acb6877..1ff066b2281a 100644 --- a/drivers/net/netxen/netxen_nic.h +++ b/drivers/net/netxen/netxen_nic.h | |||
@@ -1595,7 +1595,6 @@ dma_watchdog_wakeup(struct netxen_adapter *adapter) | |||
1595 | } | 1595 | } |
1596 | 1596 | ||
1597 | 1597 | ||
1598 | int netxen_is_flash_supported(struct netxen_adapter *adapter); | ||
1599 | int netxen_get_flash_mac_addr(struct netxen_adapter *adapter, __le64 *mac); | 1598 | int netxen_get_flash_mac_addr(struct netxen_adapter *adapter, __le64 *mac); |
1600 | int netxen_p3_get_mac_addr(struct netxen_adapter *adapter, __le64 *mac); | 1599 | int netxen_p3_get_mac_addr(struct netxen_adapter *adapter, __le64 *mac); |
1601 | extern void netxen_change_ringparam(struct netxen_adapter *adapter); | 1600 | extern void netxen_change_ringparam(struct netxen_adapter *adapter); |
diff --git a/drivers/net/netxen/netxen_nic_hw.c b/drivers/net/netxen/netxen_nic_hw.c index 821cff68b3f3..7fea77088108 100644 --- a/drivers/net/netxen/netxen_nic_hw.c +++ b/drivers/net/netxen/netxen_nic_hw.c | |||
@@ -706,28 +706,6 @@ int netxen_nic_change_mtu(struct net_device *netdev, int mtu) | |||
706 | return rc; | 706 | return rc; |
707 | } | 707 | } |
708 | 708 | ||
709 | int netxen_is_flash_supported(struct netxen_adapter *adapter) | ||
710 | { | ||
711 | const int locs[] = { 0, 0x4, 0x100, 0x4000, 0x4128 }; | ||
712 | int addr, val01, val02, i, j; | ||
713 | |||
714 | /* if the flash size less than 4Mb, make huge war cry and die */ | ||
715 | for (j = 1; j < 4; j++) { | ||
716 | addr = j * NETXEN_NIC_WINDOW_MARGIN; | ||
717 | for (i = 0; i < ARRAY_SIZE(locs); i++) { | ||
718 | if (netxen_rom_fast_read(adapter, locs[i], &val01) == 0 | ||
719 | && netxen_rom_fast_read(adapter, (addr + locs[i]), | ||
720 | &val02) == 0) { | ||
721 | if (val01 == val02) | ||
722 | return -1; | ||
723 | } else | ||
724 | return -1; | ||
725 | } | ||
726 | } | ||
727 | |||
728 | return 0; | ||
729 | } | ||
730 | |||
731 | static int netxen_get_flash_block(struct netxen_adapter *adapter, int base, | 709 | static int netxen_get_flash_block(struct netxen_adapter *adapter, int base, |
732 | int size, __le32 * buf) | 710 | int size, __le32 * buf) |
733 | { | 711 | { |
diff --git a/drivers/net/netxen/netxen_nic_main.c b/drivers/net/netxen/netxen_nic_main.c index 13087782ac40..c172b6e24a96 100644 --- a/drivers/net/netxen/netxen_nic_main.c +++ b/drivers/net/netxen/netxen_nic_main.c | |||
@@ -405,9 +405,6 @@ netxen_read_mac_addr(struct netxen_adapter *adapter) | |||
405 | struct net_device *netdev = adapter->netdev; | 405 | struct net_device *netdev = adapter->netdev; |
406 | struct pci_dev *pdev = adapter->pdev; | 406 | struct pci_dev *pdev = adapter->pdev; |
407 | 407 | ||
408 | if (netxen_is_flash_supported(adapter) != 0) | ||
409 | return -EIO; | ||
410 | |||
411 | if (NX_IS_REVISION_P3(adapter->ahw.revision_id)) { | 408 | if (NX_IS_REVISION_P3(adapter->ahw.revision_id)) { |
412 | if (netxen_p3_get_mac_addr(adapter, &mac_addr) != 0) | 409 | if (netxen_p3_get_mac_addr(adapter, &mac_addr) != 0) |
413 | return -EIO; | 410 | return -EIO; |
diff --git a/drivers/net/pcmcia/3c574_cs.c b/drivers/net/pcmcia/3c574_cs.c index e5cb6b1f0ebd..2404a838b1fe 100644 --- a/drivers/net/pcmcia/3c574_cs.c +++ b/drivers/net/pcmcia/3c574_cs.c | |||
@@ -1035,7 +1035,8 @@ static int el3_rx(struct net_device *dev, int worklimit) | |||
1035 | DEBUG(3, "%s: in rx_packet(), status %4.4x, rx_status %4.4x.\n", | 1035 | DEBUG(3, "%s: in rx_packet(), status %4.4x, rx_status %4.4x.\n", |
1036 | dev->name, inw(ioaddr+EL3_STATUS), inw(ioaddr+RxStatus)); | 1036 | dev->name, inw(ioaddr+EL3_STATUS), inw(ioaddr+RxStatus)); |
1037 | while (!((rx_status = inw(ioaddr + RxStatus)) & 0x8000) && | 1037 | while (!((rx_status = inw(ioaddr + RxStatus)) & 0x8000) && |
1038 | (--worklimit >= 0)) { | 1038 | worklimit > 0) { |
1039 | worklimit--; | ||
1039 | if (rx_status & 0x4000) { /* Error, update stats. */ | 1040 | if (rx_status & 0x4000) { /* Error, update stats. */ |
1040 | short error = rx_status & 0x3800; | 1041 | short error = rx_status & 0x3800; |
1041 | dev->stats.rx_errors++; | 1042 | dev->stats.rx_errors++; |
diff --git a/drivers/net/pcmcia/3c589_cs.c b/drivers/net/pcmcia/3c589_cs.c index 73ecc657999d..1e01b8a6dbf3 100644 --- a/drivers/net/pcmcia/3c589_cs.c +++ b/drivers/net/pcmcia/3c589_cs.c | |||
@@ -857,7 +857,8 @@ static int el3_rx(struct net_device *dev) | |||
857 | DEBUG(3, "%s: in rx_packet(), status %4.4x, rx_status %4.4x.\n", | 857 | DEBUG(3, "%s: in rx_packet(), status %4.4x, rx_status %4.4x.\n", |
858 | dev->name, inw(ioaddr+EL3_STATUS), inw(ioaddr+RX_STATUS)); | 858 | dev->name, inw(ioaddr+EL3_STATUS), inw(ioaddr+RX_STATUS)); |
859 | while (!((rx_status = inw(ioaddr + RX_STATUS)) & 0x8000) && | 859 | while (!((rx_status = inw(ioaddr + RX_STATUS)) & 0x8000) && |
860 | (--worklimit >= 0)) { | 860 | worklimit > 0) { |
861 | worklimit--; | ||
861 | if (rx_status & 0x4000) { /* Error, update stats. */ | 862 | if (rx_status & 0x4000) { /* Error, update stats. */ |
862 | short error = rx_status & 0x3800; | 863 | short error = rx_status & 0x3800; |
863 | dev->stats.rx_errors++; | 864 | dev->stats.rx_errors++; |
diff --git a/drivers/net/qlge/qlge.h b/drivers/net/qlge/qlge.h index e6fdce9206cc..aff9c5fec738 100644 --- a/drivers/net/qlge/qlge.h +++ b/drivers/net/qlge/qlge.h | |||
@@ -927,6 +927,7 @@ struct ib_mac_iocb_rsp { | |||
927 | u8 flags1; | 927 | u8 flags1; |
928 | #define IB_MAC_IOCB_RSP_OI 0x01 /* Overide intr delay */ | 928 | #define IB_MAC_IOCB_RSP_OI 0x01 /* Overide intr delay */ |
929 | #define IB_MAC_IOCB_RSP_I 0x02 /* Disble Intr Generation */ | 929 | #define IB_MAC_IOCB_RSP_I 0x02 /* Disble Intr Generation */ |
930 | #define IB_MAC_CSUM_ERR_MASK 0x1c /* A mask to use for csum errs */ | ||
930 | #define IB_MAC_IOCB_RSP_TE 0x04 /* Checksum error */ | 931 | #define IB_MAC_IOCB_RSP_TE 0x04 /* Checksum error */ |
931 | #define IB_MAC_IOCB_RSP_NU 0x08 /* No checksum rcvd */ | 932 | #define IB_MAC_IOCB_RSP_NU 0x08 /* No checksum rcvd */ |
932 | #define IB_MAC_IOCB_RSP_IE 0x10 /* IPv4 checksum error */ | 933 | #define IB_MAC_IOCB_RSP_IE 0x10 /* IPv4 checksum error */ |
diff --git a/drivers/net/qlge/qlge_main.c b/drivers/net/qlge/qlge_main.c index 8ea72dc60f79..91191f761fba 100644 --- a/drivers/net/qlge/qlge_main.c +++ b/drivers/net/qlge/qlge_main.c | |||
@@ -1436,18 +1436,32 @@ static void ql_process_mac_rx_intr(struct ql_adapter *qdev, | |||
1436 | if (ib_mac_rsp->flags2 & IB_MAC_IOCB_RSP_P) { | 1436 | if (ib_mac_rsp->flags2 & IB_MAC_IOCB_RSP_P) { |
1437 | QPRINTK(qdev, RX_STATUS, DEBUG, "Promiscuous Packet.\n"); | 1437 | QPRINTK(qdev, RX_STATUS, DEBUG, "Promiscuous Packet.\n"); |
1438 | } | 1438 | } |
1439 | if (ib_mac_rsp->flags1 & (IB_MAC_IOCB_RSP_IE | IB_MAC_IOCB_RSP_TE)) { | 1439 | |
1440 | QPRINTK(qdev, RX_STATUS, ERR, | 1440 | skb->protocol = eth_type_trans(skb, ndev); |
1441 | "Bad checksum for this %s packet.\n", | 1441 | skb->ip_summed = CHECKSUM_NONE; |
1442 | ((ib_mac_rsp-> | 1442 | |
1443 | flags2 & IB_MAC_IOCB_RSP_T) ? "TCP" : "UDP")); | 1443 | /* If rx checksum is on, and there are no |
1444 | skb->ip_summed = CHECKSUM_NONE; | 1444 | * csum or frame errors. |
1445 | } else if (qdev->rx_csum && | 1445 | */ |
1446 | ((ib_mac_rsp->flags2 & IB_MAC_IOCB_RSP_T) || | 1446 | if (qdev->rx_csum && |
1447 | ((ib_mac_rsp->flags2 & IB_MAC_IOCB_RSP_U) && | 1447 | !(ib_mac_rsp->flags2 & IB_MAC_IOCB_RSP_ERR_MASK) && |
1448 | !(ib_mac_rsp->flags1 & IB_MAC_IOCB_RSP_NU)))) { | 1448 | !(ib_mac_rsp->flags1 & IB_MAC_CSUM_ERR_MASK)) { |
1449 | QPRINTK(qdev, RX_STATUS, DEBUG, "RX checksum done!\n"); | 1449 | /* TCP frame. */ |
1450 | skb->ip_summed = CHECKSUM_UNNECESSARY; | 1450 | if (ib_mac_rsp->flags2 & IB_MAC_IOCB_RSP_T) { |
1451 | QPRINTK(qdev, RX_STATUS, DEBUG, | ||
1452 | "TCP checksum done!\n"); | ||
1453 | skb->ip_summed = CHECKSUM_UNNECESSARY; | ||
1454 | } else if ((ib_mac_rsp->flags2 & IB_MAC_IOCB_RSP_U) && | ||
1455 | (ib_mac_rsp->flags3 & IB_MAC_IOCB_RSP_V4)) { | ||
1456 | /* Unfragmented ipv4 UDP frame. */ | ||
1457 | struct iphdr *iph = (struct iphdr *) skb->data; | ||
1458 | if (!(iph->frag_off & | ||
1459 | cpu_to_be16(IP_MF|IP_OFFSET))) { | ||
1460 | skb->ip_summed = CHECKSUM_UNNECESSARY; | ||
1461 | QPRINTK(qdev, RX_STATUS, DEBUG, | ||
1462 | "TCP checksum done!\n"); | ||
1463 | } | ||
1464 | } | ||
1451 | } | 1465 | } |
1452 | qdev->stats.rx_packets++; | 1466 | qdev->stats.rx_packets++; |
1453 | qdev->stats.rx_bytes += skb->len; | 1467 | qdev->stats.rx_bytes += skb->len; |
@@ -1927,6 +1941,9 @@ static int qlge_send(struct sk_buff *skb, struct net_device *ndev) | |||
1927 | 1941 | ||
1928 | tx_ring = &qdev->tx_ring[tx_ring_idx]; | 1942 | tx_ring = &qdev->tx_ring[tx_ring_idx]; |
1929 | 1943 | ||
1944 | if (skb_padto(skb, ETH_ZLEN)) | ||
1945 | return NETDEV_TX_OK; | ||
1946 | |||
1930 | if (unlikely(atomic_read(&tx_ring->tx_count) < 2)) { | 1947 | if (unlikely(atomic_read(&tx_ring->tx_count) < 2)) { |
1931 | QPRINTK(qdev, TX_QUEUED, INFO, | 1948 | QPRINTK(qdev, TX_QUEUED, INFO, |
1932 | "%s: shutting down tx queue %d du to lack of resources.\n", | 1949 | "%s: shutting down tx queue %d du to lack of resources.\n", |
@@ -2970,9 +2987,9 @@ static int ql_adapter_initialize(struct ql_adapter *qdev) | |||
2970 | mask = value << 16; | 2987 | mask = value << 16; |
2971 | ql_write32(qdev, SYS, mask | value); | 2988 | ql_write32(qdev, SYS, mask | value); |
2972 | 2989 | ||
2973 | /* Set the default queue. */ | 2990 | /* Set the default queue, and VLAN behavior. */ |
2974 | value = NIC_RCV_CFG_DFQ; | 2991 | value = NIC_RCV_CFG_DFQ | NIC_RCV_CFG_RV; |
2975 | mask = NIC_RCV_CFG_DFQ_MASK; | 2992 | mask = NIC_RCV_CFG_DFQ_MASK | (NIC_RCV_CFG_RV << 16); |
2976 | ql_write32(qdev, NIC_RCV_CFG, (mask | value)); | 2993 | ql_write32(qdev, NIC_RCV_CFG, (mask | value)); |
2977 | 2994 | ||
2978 | /* Set the MPI interrupt to enabled. */ | 2995 | /* Set the MPI interrupt to enabled. */ |
@@ -3149,6 +3166,11 @@ static int ql_adapter_down(struct ql_adapter *qdev) | |||
3149 | 3166 | ||
3150 | ql_tx_ring_clean(qdev); | 3167 | ql_tx_ring_clean(qdev); |
3151 | 3168 | ||
3169 | /* Call netif_napi_del() from common point. | ||
3170 | */ | ||
3171 | for (i = qdev->rss_ring_first_cq_id; i < qdev->rx_ring_count; i++) | ||
3172 | netif_napi_del(&qdev->rx_ring[i].napi); | ||
3173 | |||
3152 | spin_lock(&qdev->hw_lock); | 3174 | spin_lock(&qdev->hw_lock); |
3153 | status = ql_adapter_reset(qdev); | 3175 | status = ql_adapter_reset(qdev); |
3154 | if (status) | 3176 | if (status) |
@@ -3853,7 +3875,7 @@ static int qlge_suspend(struct pci_dev *pdev, pm_message_t state) | |||
3853 | { | 3875 | { |
3854 | struct net_device *ndev = pci_get_drvdata(pdev); | 3876 | struct net_device *ndev = pci_get_drvdata(pdev); |
3855 | struct ql_adapter *qdev = netdev_priv(ndev); | 3877 | struct ql_adapter *qdev = netdev_priv(ndev); |
3856 | int err, i; | 3878 | int err; |
3857 | 3879 | ||
3858 | netif_device_detach(ndev); | 3880 | netif_device_detach(ndev); |
3859 | 3881 | ||
@@ -3863,9 +3885,6 @@ static int qlge_suspend(struct pci_dev *pdev, pm_message_t state) | |||
3863 | return err; | 3885 | return err; |
3864 | } | 3886 | } |
3865 | 3887 | ||
3866 | for (i = qdev->rss_ring_first_cq_id; i < qdev->rx_ring_count; i++) | ||
3867 | netif_napi_del(&qdev->rx_ring[i].napi); | ||
3868 | |||
3869 | err = pci_save_state(pdev); | 3888 | err = pci_save_state(pdev); |
3870 | if (err) | 3889 | if (err) |
3871 | return err; | 3890 | return err; |
diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c index b3473401c83a..43fedb9ecedb 100644 --- a/drivers/net/r8169.c +++ b/drivers/net/r8169.c | |||
@@ -81,9 +81,9 @@ static const int multicast_filter_limit = 32; | |||
81 | #define RTL8169_TX_TIMEOUT (6*HZ) | 81 | #define RTL8169_TX_TIMEOUT (6*HZ) |
82 | #define RTL8169_PHY_TIMEOUT (10*HZ) | 82 | #define RTL8169_PHY_TIMEOUT (10*HZ) |
83 | 83 | ||
84 | #define RTL_EEPROM_SIG 0x8129 | 84 | #define RTL_EEPROM_SIG cpu_to_le32(0x8129) |
85 | #define RTL_EEPROM_SIG_MASK cpu_to_le32(0xffff) | ||
85 | #define RTL_EEPROM_SIG_ADDR 0x0000 | 86 | #define RTL_EEPROM_SIG_ADDR 0x0000 |
86 | #define RTL_EEPROM_MAC_ADDR 0x0007 | ||
87 | 87 | ||
88 | /* write/read MMIO register */ | 88 | /* write/read MMIO register */ |
89 | #define RTL_W8(reg, val8) writeb ((val8), ioaddr + (reg)) | 89 | #define RTL_W8(reg, val8) writeb ((val8), ioaddr + (reg)) |
@@ -293,11 +293,6 @@ enum rtl_register_content { | |||
293 | /* Cfg9346Bits */ | 293 | /* Cfg9346Bits */ |
294 | Cfg9346_Lock = 0x00, | 294 | Cfg9346_Lock = 0x00, |
295 | Cfg9346_Unlock = 0xc0, | 295 | Cfg9346_Unlock = 0xc0, |
296 | Cfg9346_Program = 0x80, /* Programming mode */ | ||
297 | Cfg9346_EECS = 0x08, /* Chip select */ | ||
298 | Cfg9346_EESK = 0x04, /* Serial data clock */ | ||
299 | Cfg9346_EEDI = 0x02, /* Data input */ | ||
300 | Cfg9346_EEDO = 0x01, /* Data output */ | ||
301 | 296 | ||
302 | /* rx_mode_bits */ | 297 | /* rx_mode_bits */ |
303 | AcceptErr = 0x20, | 298 | AcceptErr = 0x20, |
@@ -310,7 +305,6 @@ enum rtl_register_content { | |||
310 | /* RxConfigBits */ | 305 | /* RxConfigBits */ |
311 | RxCfgFIFOShift = 13, | 306 | RxCfgFIFOShift = 13, |
312 | RxCfgDMAShift = 8, | 307 | RxCfgDMAShift = 8, |
313 | RxCfg9356SEL = 6, /* EEPROM type: 0 = 9346, 1 = 9356 */ | ||
314 | 308 | ||
315 | /* TxConfigBits */ | 309 | /* TxConfigBits */ |
316 | TxInterFrameGapShift = 24, | 310 | TxInterFrameGapShift = 24, |
@@ -1969,108 +1963,6 @@ static const struct net_device_ops rtl8169_netdev_ops = { | |||
1969 | 1963 | ||
1970 | }; | 1964 | }; |
1971 | 1965 | ||
1972 | /* Delay between EEPROM clock transitions. Force out buffered PCI writes. */ | ||
1973 | #define RTL_EEPROM_DELAY() RTL_R8(Cfg9346) | ||
1974 | #define RTL_EEPROM_READ_CMD 6 | ||
1975 | |||
1976 | /* read 16bit word stored in EEPROM. EEPROM is addressed by words. */ | ||
1977 | static u16 rtl_eeprom_read(void __iomem *ioaddr, int addr) | ||
1978 | { | ||
1979 | u16 result = 0; | ||
1980 | int cmd, cmd_len, i; | ||
1981 | |||
1982 | /* check for EEPROM address size (in bits) */ | ||
1983 | if (RTL_R32(RxConfig) & (1 << RxCfg9356SEL)) { | ||
1984 | /* EEPROM is 93C56 */ | ||
1985 | cmd_len = 3 + 8; /* 3 bits for command id and 8 for address */ | ||
1986 | cmd = (RTL_EEPROM_READ_CMD << 8) | (addr & 0xff); | ||
1987 | } else { | ||
1988 | /* EEPROM is 93C46 */ | ||
1989 | cmd_len = 3 + 6; /* 3 bits for command id and 6 for address */ | ||
1990 | cmd = (RTL_EEPROM_READ_CMD << 6) | (addr & 0x3f); | ||
1991 | } | ||
1992 | |||
1993 | /* enter programming mode */ | ||
1994 | RTL_W8(Cfg9346, Cfg9346_Program | Cfg9346_EECS); | ||
1995 | RTL_EEPROM_DELAY(); | ||
1996 | |||
1997 | /* write command and requested address */ | ||
1998 | while (cmd_len--) { | ||
1999 | u8 x = Cfg9346_Program | Cfg9346_EECS; | ||
2000 | |||
2001 | x |= (cmd & (1 << cmd_len)) ? Cfg9346_EEDI : 0; | ||
2002 | |||
2003 | /* write a bit */ | ||
2004 | RTL_W8(Cfg9346, x); | ||
2005 | RTL_EEPROM_DELAY(); | ||
2006 | |||
2007 | /* raise clock */ | ||
2008 | RTL_W8(Cfg9346, x | Cfg9346_EESK); | ||
2009 | RTL_EEPROM_DELAY(); | ||
2010 | } | ||
2011 | |||
2012 | /* lower clock */ | ||
2013 | RTL_W8(Cfg9346, Cfg9346_Program | Cfg9346_EECS); | ||
2014 | RTL_EEPROM_DELAY(); | ||
2015 | |||
2016 | /* read back 16bit value */ | ||
2017 | for (i = 16; i > 0; i--) { | ||
2018 | /* raise clock */ | ||
2019 | RTL_W8(Cfg9346, Cfg9346_Program | Cfg9346_EECS | Cfg9346_EESK); | ||
2020 | RTL_EEPROM_DELAY(); | ||
2021 | |||
2022 | result <<= 1; | ||
2023 | result |= (RTL_R8(Cfg9346) & Cfg9346_EEDO) ? 1 : 0; | ||
2024 | |||
2025 | /* lower clock */ | ||
2026 | RTL_W8(Cfg9346, Cfg9346_Program | Cfg9346_EECS); | ||
2027 | RTL_EEPROM_DELAY(); | ||
2028 | } | ||
2029 | |||
2030 | RTL_W8(Cfg9346, Cfg9346_Program); | ||
2031 | /* leave programming mode */ | ||
2032 | RTL_W8(Cfg9346, Cfg9346_Lock); | ||
2033 | |||
2034 | return result; | ||
2035 | } | ||
2036 | |||
2037 | static void rtl_init_mac_address(struct rtl8169_private *tp, | ||
2038 | void __iomem *ioaddr) | ||
2039 | { | ||
2040 | struct pci_dev *pdev = tp->pci_dev; | ||
2041 | u16 x; | ||
2042 | u8 mac[8]; | ||
2043 | |||
2044 | /* read EEPROM signature */ | ||
2045 | x = rtl_eeprom_read(ioaddr, RTL_EEPROM_SIG_ADDR); | ||
2046 | |||
2047 | if (x != RTL_EEPROM_SIG) { | ||
2048 | dev_info(&pdev->dev, "Missing EEPROM signature: %04x\n", x); | ||
2049 | return; | ||
2050 | } | ||
2051 | |||
2052 | /* read MAC address */ | ||
2053 | x = rtl_eeprom_read(ioaddr, RTL_EEPROM_MAC_ADDR); | ||
2054 | mac[0] = x & 0xff; | ||
2055 | mac[1] = x >> 8; | ||
2056 | x = rtl_eeprom_read(ioaddr, RTL_EEPROM_MAC_ADDR + 1); | ||
2057 | mac[2] = x & 0xff; | ||
2058 | mac[3] = x >> 8; | ||
2059 | x = rtl_eeprom_read(ioaddr, RTL_EEPROM_MAC_ADDR + 2); | ||
2060 | mac[4] = x & 0xff; | ||
2061 | mac[5] = x >> 8; | ||
2062 | |||
2063 | if (netif_msg_probe(tp)) { | ||
2064 | DECLARE_MAC_BUF(buf); | ||
2065 | |||
2066 | dev_info(&pdev->dev, "MAC address found in EEPROM: %s\n", | ||
2067 | print_mac(buf, mac)); | ||
2068 | } | ||
2069 | |||
2070 | if (is_valid_ether_addr(mac)) | ||
2071 | rtl_rar_set(tp, mac); | ||
2072 | } | ||
2073 | |||
2074 | static int __devinit | 1966 | static int __devinit |
2075 | rtl8169_init_one(struct pci_dev *pdev, const struct pci_device_id *ent) | 1967 | rtl8169_init_one(struct pci_dev *pdev, const struct pci_device_id *ent) |
2076 | { | 1968 | { |
@@ -2249,8 +2141,6 @@ rtl8169_init_one(struct pci_dev *pdev, const struct pci_device_id *ent) | |||
2249 | 2141 | ||
2250 | tp->mmio_addr = ioaddr; | 2142 | tp->mmio_addr = ioaddr; |
2251 | 2143 | ||
2252 | rtl_init_mac_address(tp, ioaddr); | ||
2253 | |||
2254 | /* Get MAC address */ | 2144 | /* Get MAC address */ |
2255 | for (i = 0; i < MAC_ADDR_LEN; i++) | 2145 | for (i = 0; i < MAC_ADDR_LEN; i++) |
2256 | dev->dev_addr[i] = RTL_R8(MAC0 + i); | 2146 | dev->dev_addr[i] = RTL_R8(MAC0 + i); |
@@ -3363,13 +3253,6 @@ static int rtl8169_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
3363 | opts1 |= FirstFrag; | 3253 | opts1 |= FirstFrag; |
3364 | } else { | 3254 | } else { |
3365 | len = skb->len; | 3255 | len = skb->len; |
3366 | |||
3367 | if (unlikely(len < ETH_ZLEN)) { | ||
3368 | if (skb_padto(skb, ETH_ZLEN)) | ||
3369 | goto err_update_stats; | ||
3370 | len = ETH_ZLEN; | ||
3371 | } | ||
3372 | |||
3373 | opts1 |= FirstFrag | LastFrag; | 3256 | opts1 |= FirstFrag | LastFrag; |
3374 | tp->tx_skb[entry].skb = skb; | 3257 | tp->tx_skb[entry].skb = skb; |
3375 | } | 3258 | } |
@@ -3407,7 +3290,6 @@ out: | |||
3407 | err_stop: | 3290 | err_stop: |
3408 | netif_stop_queue(dev); | 3291 | netif_stop_queue(dev); |
3409 | ret = NETDEV_TX_BUSY; | 3292 | ret = NETDEV_TX_BUSY; |
3410 | err_update_stats: | ||
3411 | dev->stats.tx_dropped++; | 3293 | dev->stats.tx_dropped++; |
3412 | goto out; | 3294 | goto out; |
3413 | } | 3295 | } |
diff --git a/drivers/net/smc911x.h b/drivers/net/smc911x.h index 870b4c33f108..a45952e72018 100644 --- a/drivers/net/smc911x.h +++ b/drivers/net/smc911x.h | |||
@@ -42,6 +42,16 @@ | |||
42 | #define SMC_USE_16BIT 0 | 42 | #define SMC_USE_16BIT 0 |
43 | #define SMC_USE_32BIT 1 | 43 | #define SMC_USE_32BIT 1 |
44 | #define SMC_IRQ_SENSE IRQF_TRIGGER_LOW | 44 | #define SMC_IRQ_SENSE IRQF_TRIGGER_LOW |
45 | #elif defined(CONFIG_ARCH_OMAP34XX) | ||
46 | #define SMC_USE_16BIT 0 | ||
47 | #define SMC_USE_32BIT 1 | ||
48 | #define SMC_IRQ_SENSE IRQF_TRIGGER_LOW | ||
49 | #define SMC_MEM_RESERVED 1 | ||
50 | #elif defined(CONFIG_ARCH_OMAP24XX) | ||
51 | #define SMC_USE_16BIT 0 | ||
52 | #define SMC_USE_32BIT 1 | ||
53 | #define SMC_IRQ_SENSE IRQF_TRIGGER_LOW | ||
54 | #define SMC_MEM_RESERVED 1 | ||
45 | #else | 55 | #else |
46 | /* | 56 | /* |
47 | * Default configuration | 57 | * Default configuration |
@@ -675,6 +685,7 @@ smc_pxa_dma_outsl(struct smc911x_local *lp, u_long physaddr, | |||
675 | #define CHIP_9116 0x0116 | 685 | #define CHIP_9116 0x0116 |
676 | #define CHIP_9117 0x0117 | 686 | #define CHIP_9117 0x0117 |
677 | #define CHIP_9118 0x0118 | 687 | #define CHIP_9118 0x0118 |
688 | #define CHIP_9211 0x9211 | ||
678 | #define CHIP_9215 0x115A | 689 | #define CHIP_9215 0x115A |
679 | #define CHIP_9217 0x117A | 690 | #define CHIP_9217 0x117A |
680 | #define CHIP_9218 0x118A | 691 | #define CHIP_9218 0x118A |
@@ -689,6 +700,7 @@ static const struct chip_id chip_ids[] = { | |||
689 | { CHIP_9116, "LAN9116" }, | 700 | { CHIP_9116, "LAN9116" }, |
690 | { CHIP_9117, "LAN9117" }, | 701 | { CHIP_9117, "LAN9117" }, |
691 | { CHIP_9118, "LAN9118" }, | 702 | { CHIP_9118, "LAN9118" }, |
703 | { CHIP_9211, "LAN9211" }, | ||
692 | { CHIP_9215, "LAN9215" }, | 704 | { CHIP_9215, "LAN9215" }, |
693 | { CHIP_9217, "LAN9217" }, | 705 | { CHIP_9217, "LAN9217" }, |
694 | { CHIP_9218, "LAN9218" }, | 706 | { CHIP_9218, "LAN9218" }, |
diff --git a/drivers/net/sungem.c b/drivers/net/sungem.c index 8d64b1da0465..0fcb7503363d 100644 --- a/drivers/net/sungem.c +++ b/drivers/net/sungem.c | |||
@@ -1229,7 +1229,7 @@ static void gem_reset(struct gem *gp) | |||
1229 | break; | 1229 | break; |
1230 | } while (val & (GREG_SWRST_TXRST | GREG_SWRST_RXRST)); | 1230 | } while (val & (GREG_SWRST_TXRST | GREG_SWRST_RXRST)); |
1231 | 1231 | ||
1232 | if (limit <= 0) | 1232 | if (limit < 0) |
1233 | printk(KERN_ERR "%s: SW reset is ghetto.\n", gp->dev->name); | 1233 | printk(KERN_ERR "%s: SW reset is ghetto.\n", gp->dev->name); |
1234 | 1234 | ||
1235 | if (gp->phy_type == phy_serialink || gp->phy_type == phy_serdes) | 1235 | if (gp->phy_type == phy_serialink || gp->phy_type == phy_serdes) |
diff --git a/drivers/net/sunhme.c b/drivers/net/sunhme.c index d4fb4acdbebd..4e9bd380a5c2 100644 --- a/drivers/net/sunhme.c +++ b/drivers/net/sunhme.c | |||
@@ -2649,8 +2649,6 @@ static int __devinit happy_meal_sbus_probe_one(struct of_device *op, int is_qfe) | |||
2649 | int err = -ENODEV; | 2649 | int err = -ENODEV; |
2650 | 2650 | ||
2651 | sbus_dp = to_of_device(op->dev.parent)->node; | 2651 | sbus_dp = to_of_device(op->dev.parent)->node; |
2652 | if (is_qfe) | ||
2653 | sbus_dp = to_of_device(op->dev.parent->parent)->node; | ||
2654 | 2652 | ||
2655 | /* We can match PCI devices too, do not accept those here. */ | 2653 | /* We can match PCI devices too, do not accept those here. */ |
2656 | if (strcmp(sbus_dp->name, "sbus")) | 2654 | if (strcmp(sbus_dp->name, "sbus")) |
diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c index b080f9493d83..dabdf59f8016 100644 --- a/drivers/net/tg3.c +++ b/drivers/net/tg3.c | |||
@@ -1473,7 +1473,8 @@ static void tg3_phy_toggle_apd(struct tg3 *tp, bool enable) | |||
1473 | { | 1473 | { |
1474 | u32 reg; | 1474 | u32 reg; |
1475 | 1475 | ||
1476 | if (!(tp->tg3_flags2 & TG3_FLG2_5705_PLUS)) | 1476 | if (!(tp->tg3_flags2 & TG3_FLG2_5705_PLUS) || |
1477 | GET_ASIC_REV(tp->pci_chip_rev_id) == ASIC_REV_5906) | ||
1477 | return; | 1478 | return; |
1478 | 1479 | ||
1479 | reg = MII_TG3_MISC_SHDW_WREN | | 1480 | reg = MII_TG3_MISC_SHDW_WREN | |
diff --git a/drivers/net/tokenring/tmspci.c b/drivers/net/tokenring/tmspci.c index 5f601773c260..e2150b3c83d9 100644 --- a/drivers/net/tokenring/tmspci.c +++ b/drivers/net/tokenring/tmspci.c | |||
@@ -121,11 +121,6 @@ static int __devinit tms_pci_attach(struct pci_dev *pdev, const struct pci_devic | |||
121 | goto err_out_trdev; | 121 | goto err_out_trdev; |
122 | } | 122 | } |
123 | 123 | ||
124 | ret = request_irq(pdev->irq, tms380tr_interrupt, IRQF_SHARED, | ||
125 | dev->name, dev); | ||
126 | if (ret) | ||
127 | goto err_out_region; | ||
128 | |||
129 | dev->base_addr = pci_ioaddr; | 124 | dev->base_addr = pci_ioaddr; |
130 | dev->irq = pci_irq_line; | 125 | dev->irq = pci_irq_line; |
131 | dev->dma = 0; | 126 | dev->dma = 0; |
@@ -142,7 +137,7 @@ static int __devinit tms_pci_attach(struct pci_dev *pdev, const struct pci_devic | |||
142 | ret = tmsdev_init(dev, &pdev->dev); | 137 | ret = tmsdev_init(dev, &pdev->dev); |
143 | if (ret) { | 138 | if (ret) { |
144 | printk("%s: unable to get memory for dev->priv.\n", dev->name); | 139 | printk("%s: unable to get memory for dev->priv.\n", dev->name); |
145 | goto err_out_irq; | 140 | goto err_out_region; |
146 | } | 141 | } |
147 | 142 | ||
148 | tp = netdev_priv(dev); | 143 | tp = netdev_priv(dev); |
@@ -157,6 +152,11 @@ static int __devinit tms_pci_attach(struct pci_dev *pdev, const struct pci_devic | |||
157 | 152 | ||
158 | tp->tmspriv = cardinfo; | 153 | tp->tmspriv = cardinfo; |
159 | 154 | ||
155 | ret = request_irq(pdev->irq, tms380tr_interrupt, IRQF_SHARED, | ||
156 | dev->name, dev); | ||
157 | if (ret) | ||
158 | goto err_out_tmsdev; | ||
159 | |||
160 | dev->open = tms380tr_open; | 160 | dev->open = tms380tr_open; |
161 | dev->stop = tms380tr_close; | 161 | dev->stop = tms380tr_close; |
162 | pci_set_drvdata(pdev, dev); | 162 | pci_set_drvdata(pdev, dev); |
@@ -164,15 +164,15 @@ static int __devinit tms_pci_attach(struct pci_dev *pdev, const struct pci_devic | |||
164 | 164 | ||
165 | ret = register_netdev(dev); | 165 | ret = register_netdev(dev); |
166 | if (ret) | 166 | if (ret) |
167 | goto err_out_tmsdev; | 167 | goto err_out_irq; |
168 | 168 | ||
169 | return 0; | 169 | return 0; |
170 | 170 | ||
171 | err_out_irq: | ||
172 | free_irq(pdev->irq, dev); | ||
171 | err_out_tmsdev: | 173 | err_out_tmsdev: |
172 | pci_set_drvdata(pdev, NULL); | 174 | pci_set_drvdata(pdev, NULL); |
173 | tmsdev_term(dev); | 175 | tmsdev_term(dev); |
174 | err_out_irq: | ||
175 | free_irq(pdev->irq, dev); | ||
176 | err_out_region: | 176 | err_out_region: |
177 | release_region(pci_ioaddr, TMS_PCI_IO_EXTENT); | 177 | release_region(pci_ioaddr, TMS_PCI_IO_EXTENT); |
178 | err_out_trdev: | 178 | err_out_trdev: |
diff --git a/drivers/net/ucc_geth_mii.c b/drivers/net/ucc_geth_mii.c index 54635911305c..0ada4edd56eb 100644 --- a/drivers/net/ucc_geth_mii.c +++ b/drivers/net/ucc_geth_mii.c | |||
@@ -107,7 +107,7 @@ int uec_mdio_read(struct mii_bus *bus, int mii_id, int regnum) | |||
107 | static int uec_mdio_reset(struct mii_bus *bus) | 107 | static int uec_mdio_reset(struct mii_bus *bus) |
108 | { | 108 | { |
109 | struct ucc_mii_mng __iomem *regs = (void __iomem *)bus->priv; | 109 | struct ucc_mii_mng __iomem *regs = (void __iomem *)bus->priv; |
110 | unsigned int timeout = PHY_INIT_TIMEOUT; | 110 | int timeout = PHY_INIT_TIMEOUT; |
111 | 111 | ||
112 | mutex_lock(&bus->mdio_lock); | 112 | mutex_lock(&bus->mdio_lock); |
113 | 113 | ||
@@ -123,7 +123,7 @@ static int uec_mdio_reset(struct mii_bus *bus) | |||
123 | 123 | ||
124 | mutex_unlock(&bus->mdio_lock); | 124 | mutex_unlock(&bus->mdio_lock); |
125 | 125 | ||
126 | if (timeout <= 0) { | 126 | if (timeout < 0) { |
127 | printk(KERN_ERR "%s: The MII Bus is stuck!\n", bus->name); | 127 | printk(KERN_ERR "%s: The MII Bus is stuck!\n", bus->name); |
128 | return -EBUSY; | 128 | return -EBUSY; |
129 | } | 129 | } |
diff --git a/drivers/net/usb/dm9601.c b/drivers/net/usb/dm9601.c index 5b67bbf1987e..81682c6defa0 100644 --- a/drivers/net/usb/dm9601.c +++ b/drivers/net/usb/dm9601.c | |||
@@ -635,6 +635,10 @@ static const struct usb_device_id products[] = { | |||
635 | USB_DEVICE(0x0a47, 0x9601), /* Hirose USB-100 */ | 635 | USB_DEVICE(0x0a47, 0x9601), /* Hirose USB-100 */ |
636 | .driver_info = (unsigned long)&dm9601_info, | 636 | .driver_info = (unsigned long)&dm9601_info, |
637 | }, | 637 | }, |
638 | { | ||
639 | USB_DEVICE(0x0fe6, 0x8101), /* DM9601 USB to Fast Ethernet Adapter */ | ||
640 | .driver_info = (unsigned long)&dm9601_info, | ||
641 | }, | ||
638 | {}, // END | 642 | {}, // END |
639 | }; | 643 | }; |
640 | 644 | ||
diff --git a/drivers/net/via-velocity.c b/drivers/net/via-velocity.c index c5691fdb7079..fb53ef872df3 100644 --- a/drivers/net/via-velocity.c +++ b/drivers/net/via-velocity.c | |||
@@ -1838,17 +1838,19 @@ static void velocity_free_tx_buf(struct velocity_info *vptr, struct velocity_td_ | |||
1838 | { | 1838 | { |
1839 | struct sk_buff *skb = tdinfo->skb; | 1839 | struct sk_buff *skb = tdinfo->skb; |
1840 | int i; | 1840 | int i; |
1841 | int pktlen; | ||
1841 | 1842 | ||
1842 | /* | 1843 | /* |
1843 | * Don't unmap the pre-allocated tx_bufs | 1844 | * Don't unmap the pre-allocated tx_bufs |
1844 | */ | 1845 | */ |
1845 | if (tdinfo->skb_dma) { | 1846 | if (tdinfo->skb_dma) { |
1846 | 1847 | ||
1848 | pktlen = (skb->len > ETH_ZLEN ? : ETH_ZLEN); | ||
1847 | for (i = 0; i < tdinfo->nskb_dma; i++) { | 1849 | for (i = 0; i < tdinfo->nskb_dma; i++) { |
1848 | #ifdef VELOCITY_ZERO_COPY_SUPPORT | 1850 | #ifdef VELOCITY_ZERO_COPY_SUPPORT |
1849 | pci_unmap_single(vptr->pdev, tdinfo->skb_dma[i], le16_to_cpu(td->tdesc1.len), PCI_DMA_TODEVICE); | 1851 | pci_unmap_single(vptr->pdev, tdinfo->skb_dma[i], le16_to_cpu(td->tdesc1.len), PCI_DMA_TODEVICE); |
1850 | #else | 1852 | #else |
1851 | pci_unmap_single(vptr->pdev, tdinfo->skb_dma[i], skb->len, PCI_DMA_TODEVICE); | 1853 | pci_unmap_single(vptr->pdev, tdinfo->skb_dma[i], pktlen, PCI_DMA_TODEVICE); |
1852 | #endif | 1854 | #endif |
1853 | tdinfo->skb_dma[i] = 0; | 1855 | tdinfo->skb_dma[i] = 0; |
1854 | } | 1856 | } |
@@ -2080,17 +2082,14 @@ static int velocity_xmit(struct sk_buff *skb, struct net_device *dev) | |||
2080 | struct tx_desc *td_ptr; | 2082 | struct tx_desc *td_ptr; |
2081 | struct velocity_td_info *tdinfo; | 2083 | struct velocity_td_info *tdinfo; |
2082 | unsigned long flags; | 2084 | unsigned long flags; |
2083 | int pktlen = skb->len; | 2085 | int pktlen; |
2084 | __le16 len; | 2086 | __le16 len; |
2085 | int index; | 2087 | int index; |
2086 | 2088 | ||
2087 | 2089 | ||
2088 | 2090 | if (skb_padto(skb, ETH_ZLEN)) | |
2089 | if (skb->len < ETH_ZLEN) { | 2091 | goto out; |
2090 | if (skb_padto(skb, ETH_ZLEN)) | 2092 | pktlen = max_t(unsigned int, skb->len, ETH_ZLEN); |
2091 | goto out; | ||
2092 | pktlen = ETH_ZLEN; | ||
2093 | } | ||
2094 | 2093 | ||
2095 | len = cpu_to_le16(pktlen); | 2094 | len = cpu_to_le16(pktlen); |
2096 | 2095 | ||
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn.c b/drivers/net/wireless/iwlwifi/iwl-agn.c index 36bafeb353ce..129e2d330abb 100644 --- a/drivers/net/wireless/iwlwifi/iwl-agn.c +++ b/drivers/net/wireless/iwlwifi/iwl-agn.c | |||
@@ -3868,7 +3868,7 @@ static int iwl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent) | |||
3868 | } | 3868 | } |
3869 | err = iwl_eeprom_check_version(priv); | 3869 | err = iwl_eeprom_check_version(priv); |
3870 | if (err) | 3870 | if (err) |
3871 | goto out_iounmap; | 3871 | goto out_free_eeprom; |
3872 | 3872 | ||
3873 | /* extract MAC Address */ | 3873 | /* extract MAC Address */ |
3874 | iwl_eeprom_get_mac(priv, priv->mac_addr); | 3874 | iwl_eeprom_get_mac(priv, priv->mac_addr); |
@@ -3945,6 +3945,8 @@ static int iwl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent) | |||
3945 | return 0; | 3945 | return 0; |
3946 | 3946 | ||
3947 | out_remove_sysfs: | 3947 | out_remove_sysfs: |
3948 | destroy_workqueue(priv->workqueue); | ||
3949 | priv->workqueue = NULL; | ||
3948 | sysfs_remove_group(&pdev->dev.kobj, &iwl_attribute_group); | 3950 | sysfs_remove_group(&pdev->dev.kobj, &iwl_attribute_group); |
3949 | out_uninit_drv: | 3951 | out_uninit_drv: |
3950 | iwl_uninit_drv(priv); | 3952 | iwl_uninit_drv(priv); |
@@ -3953,8 +3955,8 @@ static int iwl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent) | |||
3953 | out_iounmap: | 3955 | out_iounmap: |
3954 | pci_iounmap(pdev, priv->hw_base); | 3956 | pci_iounmap(pdev, priv->hw_base); |
3955 | out_pci_release_regions: | 3957 | out_pci_release_regions: |
3956 | pci_release_regions(pdev); | ||
3957 | pci_set_drvdata(pdev, NULL); | 3958 | pci_set_drvdata(pdev, NULL); |
3959 | pci_release_regions(pdev); | ||
3958 | out_pci_disable_device: | 3960 | out_pci_disable_device: |
3959 | pci_disable_device(pdev); | 3961 | pci_disable_device(pdev); |
3960 | out_ieee80211_free_hw: | 3962 | out_ieee80211_free_hw: |
diff --git a/drivers/net/wireless/iwlwifi/iwl3945-base.c b/drivers/net/wireless/iwlwifi/iwl3945-base.c index 93be74a1f139..57dd34e256d8 100644 --- a/drivers/net/wireless/iwlwifi/iwl3945-base.c +++ b/drivers/net/wireless/iwlwifi/iwl3945-base.c | |||
@@ -7911,7 +7911,7 @@ static int iwl3945_pci_probe(struct pci_dev *pdev, const struct pci_device_id *e | |||
7911 | CSR_GP_CNTRL_REG_FLAG_MAC_CLOCK_READY, 25000); | 7911 | CSR_GP_CNTRL_REG_FLAG_MAC_CLOCK_READY, 25000); |
7912 | if (err < 0) { | 7912 | if (err < 0) { |
7913 | IWL_DEBUG_INFO("Failed to init the card\n"); | 7913 | IWL_DEBUG_INFO("Failed to init the card\n"); |
7914 | goto out_remove_sysfs; | 7914 | goto out_iounmap; |
7915 | } | 7915 | } |
7916 | 7916 | ||
7917 | /*********************** | 7917 | /*********************** |
@@ -7921,7 +7921,7 @@ static int iwl3945_pci_probe(struct pci_dev *pdev, const struct pci_device_id *e | |||
7921 | err = iwl3945_eeprom_init(priv); | 7921 | err = iwl3945_eeprom_init(priv); |
7922 | if (err) { | 7922 | if (err) { |
7923 | IWL_ERROR("Unable to init EEPROM\n"); | 7923 | IWL_ERROR("Unable to init EEPROM\n"); |
7924 | goto out_remove_sysfs; | 7924 | goto out_iounmap; |
7925 | } | 7925 | } |
7926 | /* MAC Address location in EEPROM same for 3945/4965 */ | 7926 | /* MAC Address location in EEPROM same for 3945/4965 */ |
7927 | get_eeprom_mac(priv, priv->mac_addr); | 7927 | get_eeprom_mac(priv, priv->mac_addr); |
@@ -7975,7 +7975,7 @@ static int iwl3945_pci_probe(struct pci_dev *pdev, const struct pci_device_id *e | |||
7975 | err = iwl3945_init_channel_map(priv); | 7975 | err = iwl3945_init_channel_map(priv); |
7976 | if (err) { | 7976 | if (err) { |
7977 | IWL_ERROR("initializing regulatory failed: %d\n", err); | 7977 | IWL_ERROR("initializing regulatory failed: %d\n", err); |
7978 | goto out_release_irq; | 7978 | goto out_unset_hw_setting; |
7979 | } | 7979 | } |
7980 | 7980 | ||
7981 | err = iwl3945_init_geos(priv); | 7981 | err = iwl3945_init_geos(priv); |
@@ -8045,25 +8045,22 @@ static int iwl3945_pci_probe(struct pci_dev *pdev, const struct pci_device_id *e | |||
8045 | return 0; | 8045 | return 0; |
8046 | 8046 | ||
8047 | out_remove_sysfs: | 8047 | out_remove_sysfs: |
8048 | destroy_workqueue(priv->workqueue); | ||
8049 | priv->workqueue = NULL; | ||
8048 | sysfs_remove_group(&pdev->dev.kobj, &iwl3945_attribute_group); | 8050 | sysfs_remove_group(&pdev->dev.kobj, &iwl3945_attribute_group); |
8049 | out_free_geos: | 8051 | out_free_geos: |
8050 | iwl3945_free_geos(priv); | 8052 | iwl3945_free_geos(priv); |
8051 | out_free_channel_map: | 8053 | out_free_channel_map: |
8052 | iwl3945_free_channel_map(priv); | 8054 | iwl3945_free_channel_map(priv); |
8053 | 8055 | out_unset_hw_setting: | |
8054 | |||
8055 | out_release_irq: | ||
8056 | destroy_workqueue(priv->workqueue); | ||
8057 | priv->workqueue = NULL; | ||
8058 | iwl3945_unset_hw_setting(priv); | 8056 | iwl3945_unset_hw_setting(priv); |
8059 | |||
8060 | out_iounmap: | 8057 | out_iounmap: |
8061 | pci_iounmap(pdev, priv->hw_base); | 8058 | pci_iounmap(pdev, priv->hw_base); |
8062 | out_pci_release_regions: | 8059 | out_pci_release_regions: |
8063 | pci_release_regions(pdev); | 8060 | pci_release_regions(pdev); |
8064 | out_pci_disable_device: | 8061 | out_pci_disable_device: |
8065 | pci_disable_device(pdev); | ||
8066 | pci_set_drvdata(pdev, NULL); | 8062 | pci_set_drvdata(pdev, NULL); |
8063 | pci_disable_device(pdev); | ||
8067 | out_ieee80211_free_hw: | 8064 | out_ieee80211_free_hw: |
8068 | ieee80211_free_hw(priv->hw); | 8065 | ieee80211_free_hw(priv->hw); |
8069 | out: | 8066 | out: |
diff --git a/drivers/net/wireless/p54/p54common.c b/drivers/net/wireless/p54/p54common.c index 34561e6e816b..f170106bf0ae 100644 --- a/drivers/net/wireless/p54/p54common.c +++ b/drivers/net/wireless/p54/p54common.c | |||
@@ -710,10 +710,11 @@ static struct sk_buff *p54_find_tx_entry(struct ieee80211_hw *dev, | |||
710 | __le32 req_id) | 710 | __le32 req_id) |
711 | { | 711 | { |
712 | struct p54_common *priv = dev->priv; | 712 | struct p54_common *priv = dev->priv; |
713 | struct sk_buff *entry = priv->tx_queue.next; | 713 | struct sk_buff *entry; |
714 | unsigned long flags; | 714 | unsigned long flags; |
715 | 715 | ||
716 | spin_lock_irqsave(&priv->tx_queue.lock, flags); | 716 | spin_lock_irqsave(&priv->tx_queue.lock, flags); |
717 | entry = priv->tx_queue.next; | ||
717 | while (entry != (struct sk_buff *)&priv->tx_queue) { | 718 | while (entry != (struct sk_buff *)&priv->tx_queue) { |
718 | struct p54_hdr *hdr = (struct p54_hdr *) entry->data; | 719 | struct p54_hdr *hdr = (struct p54_hdr *) entry->data; |
719 | 720 | ||
@@ -732,7 +733,7 @@ static void p54_rx_frame_sent(struct ieee80211_hw *dev, struct sk_buff *skb) | |||
732 | struct p54_common *priv = dev->priv; | 733 | struct p54_common *priv = dev->priv; |
733 | struct p54_hdr *hdr = (struct p54_hdr *) skb->data; | 734 | struct p54_hdr *hdr = (struct p54_hdr *) skb->data; |
734 | struct p54_frame_sent *payload = (struct p54_frame_sent *) hdr->data; | 735 | struct p54_frame_sent *payload = (struct p54_frame_sent *) hdr->data; |
735 | struct sk_buff *entry = (struct sk_buff *) priv->tx_queue.next; | 736 | struct sk_buff *entry; |
736 | u32 addr = le32_to_cpu(hdr->req_id) - priv->headroom; | 737 | u32 addr = le32_to_cpu(hdr->req_id) - priv->headroom; |
737 | struct memrecord *range = NULL; | 738 | struct memrecord *range = NULL; |
738 | u32 freed = 0; | 739 | u32 freed = 0; |
@@ -741,6 +742,7 @@ static void p54_rx_frame_sent(struct ieee80211_hw *dev, struct sk_buff *skb) | |||
741 | int count, idx; | 742 | int count, idx; |
742 | 743 | ||
743 | spin_lock_irqsave(&priv->tx_queue.lock, flags); | 744 | spin_lock_irqsave(&priv->tx_queue.lock, flags); |
745 | entry = (struct sk_buff *) priv->tx_queue.next; | ||
744 | while (entry != (struct sk_buff *)&priv->tx_queue) { | 746 | while (entry != (struct sk_buff *)&priv->tx_queue) { |
745 | struct ieee80211_tx_info *info = IEEE80211_SKB_CB(entry); | 747 | struct ieee80211_tx_info *info = IEEE80211_SKB_CB(entry); |
746 | struct p54_hdr *entry_hdr; | 748 | struct p54_hdr *entry_hdr; |
@@ -976,7 +978,7 @@ static int p54_assign_address(struct ieee80211_hw *dev, struct sk_buff *skb, | |||
976 | struct p54_hdr *data, u32 len) | 978 | struct p54_hdr *data, u32 len) |
977 | { | 979 | { |
978 | struct p54_common *priv = dev->priv; | 980 | struct p54_common *priv = dev->priv; |
979 | struct sk_buff *entry = priv->tx_queue.next; | 981 | struct sk_buff *entry; |
980 | struct sk_buff *target_skb = NULL; | 982 | struct sk_buff *target_skb = NULL; |
981 | struct ieee80211_tx_info *info; | 983 | struct ieee80211_tx_info *info; |
982 | struct memrecord *range; | 984 | struct memrecord *range; |
@@ -1014,6 +1016,7 @@ static int p54_assign_address(struct ieee80211_hw *dev, struct sk_buff *skb, | |||
1014 | } | 1016 | } |
1015 | } | 1017 | } |
1016 | 1018 | ||
1019 | entry = priv->tx_queue.next; | ||
1017 | while (left--) { | 1020 | while (left--) { |
1018 | u32 hole_size; | 1021 | u32 hole_size; |
1019 | info = IEEE80211_SKB_CB(entry); | 1022 | info = IEEE80211_SKB_CB(entry); |
diff --git a/drivers/net/wireless/rt2x00/rt2500usb.c b/drivers/net/wireless/rt2x00/rt2500usb.c index af6b5847be5c..3e2ac2bbb12f 100644 --- a/drivers/net/wireless/rt2x00/rt2500usb.c +++ b/drivers/net/wireless/rt2x00/rt2500usb.c | |||
@@ -1952,6 +1952,8 @@ static struct usb_device_id rt2500usb_device_table[] = { | |||
1952 | { USB_DEVICE(0x13b1, 0x000d), USB_DEVICE_DATA(&rt2500usb_ops) }, | 1952 | { USB_DEVICE(0x13b1, 0x000d), USB_DEVICE_DATA(&rt2500usb_ops) }, |
1953 | { USB_DEVICE(0x13b1, 0x0011), USB_DEVICE_DATA(&rt2500usb_ops) }, | 1953 | { USB_DEVICE(0x13b1, 0x0011), USB_DEVICE_DATA(&rt2500usb_ops) }, |
1954 | { USB_DEVICE(0x13b1, 0x001a), USB_DEVICE_DATA(&rt2500usb_ops) }, | 1954 | { USB_DEVICE(0x13b1, 0x001a), USB_DEVICE_DATA(&rt2500usb_ops) }, |
1955 | /* CNet */ | ||
1956 | { USB_DEVICE(0x1371, 0x9022), USB_DEVICE_DATA(&rt2500usb_ops) }, | ||
1955 | /* Conceptronic */ | 1957 | /* Conceptronic */ |
1956 | { USB_DEVICE(0x14b2, 0x3c02), USB_DEVICE_DATA(&rt2500usb_ops) }, | 1958 | { USB_DEVICE(0x14b2, 0x3c02), USB_DEVICE_DATA(&rt2500usb_ops) }, |
1957 | /* D-LINK */ | 1959 | /* D-LINK */ |
@@ -1976,14 +1978,20 @@ static struct usb_device_id rt2500usb_device_table[] = { | |||
1976 | { USB_DEVICE(0x148f, 0x2570), USB_DEVICE_DATA(&rt2500usb_ops) }, | 1978 | { USB_DEVICE(0x148f, 0x2570), USB_DEVICE_DATA(&rt2500usb_ops) }, |
1977 | { USB_DEVICE(0x148f, 0x2573), USB_DEVICE_DATA(&rt2500usb_ops) }, | 1979 | { USB_DEVICE(0x148f, 0x2573), USB_DEVICE_DATA(&rt2500usb_ops) }, |
1978 | { USB_DEVICE(0x148f, 0x9020), USB_DEVICE_DATA(&rt2500usb_ops) }, | 1980 | { USB_DEVICE(0x148f, 0x9020), USB_DEVICE_DATA(&rt2500usb_ops) }, |
1981 | /* Sagem */ | ||
1982 | { USB_DEVICE(0x079b, 0x004b), USB_DEVICE_DATA(&rt2500usb_ops) }, | ||
1979 | /* Siemens */ | 1983 | /* Siemens */ |
1980 | { USB_DEVICE(0x0681, 0x3c06), USB_DEVICE_DATA(&rt2500usb_ops) }, | 1984 | { USB_DEVICE(0x0681, 0x3c06), USB_DEVICE_DATA(&rt2500usb_ops) }, |
1981 | /* SMC */ | 1985 | /* SMC */ |
1982 | { USB_DEVICE(0x0707, 0xee13), USB_DEVICE_DATA(&rt2500usb_ops) }, | 1986 | { USB_DEVICE(0x0707, 0xee13), USB_DEVICE_DATA(&rt2500usb_ops) }, |
1983 | /* Spairon */ | 1987 | /* Spairon */ |
1984 | { USB_DEVICE(0x114b, 0x0110), USB_DEVICE_DATA(&rt2500usb_ops) }, | 1988 | { USB_DEVICE(0x114b, 0x0110), USB_DEVICE_DATA(&rt2500usb_ops) }, |
1989 | /* SURECOM */ | ||
1990 | { USB_DEVICE(0x0769, 0x11f3), USB_DEVICE_DATA(&rt2500usb_ops) }, | ||
1985 | /* Trust */ | 1991 | /* Trust */ |
1986 | { USB_DEVICE(0x0eb0, 0x9020), USB_DEVICE_DATA(&rt2500usb_ops) }, | 1992 | { USB_DEVICE(0x0eb0, 0x9020), USB_DEVICE_DATA(&rt2500usb_ops) }, |
1993 | /* VTech */ | ||
1994 | { USB_DEVICE(0x0f88, 0x3012), USB_DEVICE_DATA(&rt2500usb_ops) }, | ||
1987 | /* Zinwell */ | 1995 | /* Zinwell */ |
1988 | { USB_DEVICE(0x5a57, 0x0260), USB_DEVICE_DATA(&rt2500usb_ops) }, | 1996 | { USB_DEVICE(0x5a57, 0x0260), USB_DEVICE_DATA(&rt2500usb_ops) }, |
1989 | { 0, } | 1997 | { 0, } |
diff --git a/drivers/net/wireless/rt2x00/rt73usb.c b/drivers/net/wireless/rt2x00/rt73usb.c index 96a8d69f8790..cefee1b26cd8 100644 --- a/drivers/net/wireless/rt2x00/rt73usb.c +++ b/drivers/net/wireless/rt2x00/rt73usb.c | |||
@@ -2281,7 +2281,18 @@ static const struct rt2x00_ops rt73usb_ops = { | |||
2281 | */ | 2281 | */ |
2282 | static struct usb_device_id rt73usb_device_table[] = { | 2282 | static struct usb_device_id rt73usb_device_table[] = { |
2283 | /* AboCom */ | 2283 | /* AboCom */ |
2284 | { USB_DEVICE(0x07b8, 0xb21b), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2285 | { USB_DEVICE(0x07b8, 0xb21c), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2284 | { USB_DEVICE(0x07b8, 0xb21d), USB_DEVICE_DATA(&rt73usb_ops) }, | 2286 | { USB_DEVICE(0x07b8, 0xb21d), USB_DEVICE_DATA(&rt73usb_ops) }, |
2287 | { USB_DEVICE(0x07b8, 0xb21e), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2288 | { USB_DEVICE(0x07b8, 0xb21f), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2289 | /* AL */ | ||
2290 | { USB_DEVICE(0x14b2, 0x3c10), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2291 | /* Amigo */ | ||
2292 | { USB_DEVICE(0x148f, 0x9021), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2293 | { USB_DEVICE(0x0eb0, 0x9021), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2294 | /* AMIT */ | ||
2295 | { USB_DEVICE(0x18c5, 0x0002), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2285 | /* Askey */ | 2296 | /* Askey */ |
2286 | { USB_DEVICE(0x1690, 0x0722), USB_DEVICE_DATA(&rt73usb_ops) }, | 2297 | { USB_DEVICE(0x1690, 0x0722), USB_DEVICE_DATA(&rt73usb_ops) }, |
2287 | /* ASUS */ | 2298 | /* ASUS */ |
@@ -2294,7 +2305,9 @@ static struct usb_device_id rt73usb_device_table[] = { | |||
2294 | { USB_DEVICE(0x050d, 0x905c), USB_DEVICE_DATA(&rt73usb_ops) }, | 2305 | { USB_DEVICE(0x050d, 0x905c), USB_DEVICE_DATA(&rt73usb_ops) }, |
2295 | /* Billionton */ | 2306 | /* Billionton */ |
2296 | { USB_DEVICE(0x1631, 0xc019), USB_DEVICE_DATA(&rt73usb_ops) }, | 2307 | { USB_DEVICE(0x1631, 0xc019), USB_DEVICE_DATA(&rt73usb_ops) }, |
2308 | { USB_DEVICE(0x08dd, 0x0120), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2297 | /* Buffalo */ | 2309 | /* Buffalo */ |
2310 | { USB_DEVICE(0x0411, 0x00d8), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2298 | { USB_DEVICE(0x0411, 0x00f4), USB_DEVICE_DATA(&rt73usb_ops) }, | 2311 | { USB_DEVICE(0x0411, 0x00f4), USB_DEVICE_DATA(&rt73usb_ops) }, |
2299 | /* CNet */ | 2312 | /* CNet */ |
2300 | { USB_DEVICE(0x1371, 0x9022), USB_DEVICE_DATA(&rt73usb_ops) }, | 2313 | { USB_DEVICE(0x1371, 0x9022), USB_DEVICE_DATA(&rt73usb_ops) }, |
@@ -2308,6 +2321,11 @@ static struct usb_device_id rt73usb_device_table[] = { | |||
2308 | { USB_DEVICE(0x07d1, 0x3c04), USB_DEVICE_DATA(&rt73usb_ops) }, | 2321 | { USB_DEVICE(0x07d1, 0x3c04), USB_DEVICE_DATA(&rt73usb_ops) }, |
2309 | { USB_DEVICE(0x07d1, 0x3c06), USB_DEVICE_DATA(&rt73usb_ops) }, | 2322 | { USB_DEVICE(0x07d1, 0x3c06), USB_DEVICE_DATA(&rt73usb_ops) }, |
2310 | { USB_DEVICE(0x07d1, 0x3c07), USB_DEVICE_DATA(&rt73usb_ops) }, | 2323 | { USB_DEVICE(0x07d1, 0x3c07), USB_DEVICE_DATA(&rt73usb_ops) }, |
2324 | /* Edimax */ | ||
2325 | { USB_DEVICE(0x7392, 0x7318), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2326 | { USB_DEVICE(0x7392, 0x7618), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2327 | /* EnGenius */ | ||
2328 | { USB_DEVICE(0x1740, 0x3701), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2311 | /* Gemtek */ | 2329 | /* Gemtek */ |
2312 | { USB_DEVICE(0x15a9, 0x0004), USB_DEVICE_DATA(&rt73usb_ops) }, | 2330 | { USB_DEVICE(0x15a9, 0x0004), USB_DEVICE_DATA(&rt73usb_ops) }, |
2313 | /* Gigabyte */ | 2331 | /* Gigabyte */ |
@@ -2328,22 +2346,34 @@ static struct usb_device_id rt73usb_device_table[] = { | |||
2328 | { USB_DEVICE(0x0db0, 0xa861), USB_DEVICE_DATA(&rt73usb_ops) }, | 2346 | { USB_DEVICE(0x0db0, 0xa861), USB_DEVICE_DATA(&rt73usb_ops) }, |
2329 | { USB_DEVICE(0x0db0, 0xa874), USB_DEVICE_DATA(&rt73usb_ops) }, | 2347 | { USB_DEVICE(0x0db0, 0xa874), USB_DEVICE_DATA(&rt73usb_ops) }, |
2330 | /* Ralink */ | 2348 | /* Ralink */ |
2349 | { USB_DEVICE(0x04bb, 0x093d), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2331 | { USB_DEVICE(0x148f, 0x2573), USB_DEVICE_DATA(&rt73usb_ops) }, | 2350 | { USB_DEVICE(0x148f, 0x2573), USB_DEVICE_DATA(&rt73usb_ops) }, |
2332 | { USB_DEVICE(0x148f, 0x2671), USB_DEVICE_DATA(&rt73usb_ops) }, | 2351 | { USB_DEVICE(0x148f, 0x2671), USB_DEVICE_DATA(&rt73usb_ops) }, |
2333 | /* Qcom */ | 2352 | /* Qcom */ |
2334 | { USB_DEVICE(0x18e8, 0x6196), USB_DEVICE_DATA(&rt73usb_ops) }, | 2353 | { USB_DEVICE(0x18e8, 0x6196), USB_DEVICE_DATA(&rt73usb_ops) }, |
2335 | { USB_DEVICE(0x18e8, 0x6229), USB_DEVICE_DATA(&rt73usb_ops) }, | 2354 | { USB_DEVICE(0x18e8, 0x6229), USB_DEVICE_DATA(&rt73usb_ops) }, |
2336 | { USB_DEVICE(0x18e8, 0x6238), USB_DEVICE_DATA(&rt73usb_ops) }, | 2355 | { USB_DEVICE(0x18e8, 0x6238), USB_DEVICE_DATA(&rt73usb_ops) }, |
2356 | /* Samsung */ | ||
2357 | { USB_DEVICE(0x04e8, 0x4471), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2337 | /* Senao */ | 2358 | /* Senao */ |
2338 | { USB_DEVICE(0x1740, 0x7100), USB_DEVICE_DATA(&rt73usb_ops) }, | 2359 | { USB_DEVICE(0x1740, 0x7100), USB_DEVICE_DATA(&rt73usb_ops) }, |
2339 | /* Sitecom */ | 2360 | /* Sitecom */ |
2340 | { USB_DEVICE(0x0df6, 0x9712), USB_DEVICE_DATA(&rt73usb_ops) }, | 2361 | { USB_DEVICE(0x0df6, 0x0024), USB_DEVICE_DATA(&rt73usb_ops) }, |
2362 | { USB_DEVICE(0x0df6, 0x0027), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2363 | { USB_DEVICE(0x0df6, 0x002f), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2341 | { USB_DEVICE(0x0df6, 0x90ac), USB_DEVICE_DATA(&rt73usb_ops) }, | 2364 | { USB_DEVICE(0x0df6, 0x90ac), USB_DEVICE_DATA(&rt73usb_ops) }, |
2365 | { USB_DEVICE(0x0df6, 0x9712), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2342 | /* Surecom */ | 2366 | /* Surecom */ |
2343 | { USB_DEVICE(0x0769, 0x31f3), USB_DEVICE_DATA(&rt73usb_ops) }, | 2367 | { USB_DEVICE(0x0769, 0x31f3), USB_DEVICE_DATA(&rt73usb_ops) }, |
2368 | /* Philips */ | ||
2369 | { USB_DEVICE(0x0471, 0x200a), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2344 | /* Planex */ | 2370 | /* Planex */ |
2345 | { USB_DEVICE(0x2019, 0xab01), USB_DEVICE_DATA(&rt73usb_ops) }, | 2371 | { USB_DEVICE(0x2019, 0xab01), USB_DEVICE_DATA(&rt73usb_ops) }, |
2346 | { USB_DEVICE(0x2019, 0xab50), USB_DEVICE_DATA(&rt73usb_ops) }, | 2372 | { USB_DEVICE(0x2019, 0xab50), USB_DEVICE_DATA(&rt73usb_ops) }, |
2373 | /* Zcom */ | ||
2374 | { USB_DEVICE(0x0cde, 0x001c), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2375 | /* ZyXEL */ | ||
2376 | { USB_DEVICE(0x0586, 0x3415), USB_DEVICE_DATA(&rt73usb_ops) }, | ||
2347 | { 0, } | 2377 | { 0, } |
2348 | }; | 2378 | }; |
2349 | 2379 | ||
diff --git a/drivers/parisc/dino.c b/drivers/parisc/dino.c index d539d9df88e7..bb5a1c9597cb 100644 --- a/drivers/parisc/dino.c +++ b/drivers/parisc/dino.c | |||
@@ -479,7 +479,7 @@ dino_card_setup(struct pci_bus *bus, void __iomem *base_addr) | |||
479 | res = &dino_dev->hba.lmmio_space; | 479 | res = &dino_dev->hba.lmmio_space; |
480 | res->flags = IORESOURCE_MEM; | 480 | res->flags = IORESOURCE_MEM; |
481 | size = scnprintf(name, sizeof(name), "Dino LMMIO (%s)", | 481 | size = scnprintf(name, sizeof(name), "Dino LMMIO (%s)", |
482 | bus->bridge->bus_id); | 482 | dev_name(bus->bridge)); |
483 | res->name = kmalloc(size+1, GFP_KERNEL); | 483 | res->name = kmalloc(size+1, GFP_KERNEL); |
484 | if(res->name) | 484 | if(res->name) |
485 | strcpy((char *)res->name, name); | 485 | strcpy((char *)res->name, name); |
@@ -493,7 +493,7 @@ dino_card_setup(struct pci_bus *bus, void __iomem *base_addr) | |||
493 | struct list_head *ln, *tmp_ln; | 493 | struct list_head *ln, *tmp_ln; |
494 | 494 | ||
495 | printk(KERN_ERR "Dino: cannot attach bus %s\n", | 495 | printk(KERN_ERR "Dino: cannot attach bus %s\n", |
496 | bus->bridge->bus_id); | 496 | dev_name(bus->bridge)); |
497 | /* kill the bus, we can't do anything with it */ | 497 | /* kill the bus, we can't do anything with it */ |
498 | list_for_each_safe(ln, tmp_ln, &bus->devices) { | 498 | list_for_each_safe(ln, tmp_ln, &bus->devices) { |
499 | struct pci_dev *dev = pci_dev_b(ln); | 499 | struct pci_dev *dev = pci_dev_b(ln); |
@@ -587,7 +587,7 @@ dino_fixup_bus(struct pci_bus *bus) | |||
587 | bus->resource[i+1] = &res[i]; | 587 | bus->resource[i+1] = &res[i]; |
588 | } | 588 | } |
589 | 589 | ||
590 | } else if(bus->self) { | 590 | } else if (bus->parent) { |
591 | int i; | 591 | int i; |
592 | 592 | ||
593 | pci_read_bridge_bases(bus); | 593 | pci_read_bridge_bases(bus); |
@@ -611,12 +611,12 @@ dino_fixup_bus(struct pci_bus *bus) | |||
611 | } | 611 | } |
612 | 612 | ||
613 | DBG("DEBUG %s assigning %d [0x%lx,0x%lx]\n", | 613 | DBG("DEBUG %s assigning %d [0x%lx,0x%lx]\n", |
614 | bus->self->dev.bus_id, i, | 614 | dev_name(&bus->self->dev), i, |
615 | bus->self->resource[i].start, | 615 | bus->self->resource[i].start, |
616 | bus->self->resource[i].end); | 616 | bus->self->resource[i].end); |
617 | pci_assign_resource(bus->self, i); | 617 | pci_assign_resource(bus->self, i); |
618 | DBG("DEBUG %s after assign %d [0x%lx,0x%lx]\n", | 618 | DBG("DEBUG %s after assign %d [0x%lx,0x%lx]\n", |
619 | bus->self->dev.bus_id, i, | 619 | dev_name(&bus->self->dev), i, |
620 | bus->self->resource[i].start, | 620 | bus->self->resource[i].start, |
621 | bus->self->resource[i].end); | 621 | bus->self->resource[i].end); |
622 | } | 622 | } |
@@ -1026,7 +1026,8 @@ static int __init dino_probe(struct parisc_device *dev) | |||
1026 | dino_current_bus = bus->subordinate + 1; | 1026 | dino_current_bus = bus->subordinate + 1; |
1027 | pci_bus_assign_resources(bus); | 1027 | pci_bus_assign_resources(bus); |
1028 | } else { | 1028 | } else { |
1029 | printk(KERN_ERR "ERROR: failed to scan PCI bus on %s (probably duplicate bus number %d)\n", dev->dev.bus_id, dino_current_bus); | 1029 | printk(KERN_ERR "ERROR: failed to scan PCI bus on %s (probably duplicate bus number %d)\n", |
1030 | dev_name(&dev->dev), dino_current_bus); | ||
1030 | /* increment the bus number in case of duplicates */ | 1031 | /* increment the bus number in case of duplicates */ |
1031 | dino_current_bus++; | 1032 | dino_current_bus++; |
1032 | } | 1033 | } |
diff --git a/drivers/parisc/gsc.c b/drivers/parisc/gsc.c index e76db9e4d504..d33632917696 100644 --- a/drivers/parisc/gsc.c +++ b/drivers/parisc/gsc.c | |||
@@ -186,29 +186,34 @@ void gsc_asic_assign_irq(struct gsc_asic *asic, int local_irq, int *irqp) | |||
186 | *irqp = irq; | 186 | *irqp = irq; |
187 | } | 187 | } |
188 | 188 | ||
189 | static struct device *next_device(struct klist_iter *i) | 189 | struct gsc_fixup_struct { |
190 | void (*choose_irq)(struct parisc_device *, void *); | ||
191 | void *ctrl; | ||
192 | }; | ||
193 | |||
194 | static int gsc_fixup_irqs_callback(struct device *dev, void *data) | ||
190 | { | 195 | { |
191 | struct klist_node * n = klist_next(i); | 196 | struct parisc_device *padev = to_parisc_device(dev); |
192 | return n ? container_of(n, struct device, knode_parent) : NULL; | 197 | struct gsc_fixup_struct *gf = data; |
198 | |||
199 | /* work-around for 715/64 and others which have parent | ||
200 | at path [5] and children at path [5/0/x] */ | ||
201 | if (padev->id.hw_type == HPHW_FAULTY) | ||
202 | gsc_fixup_irqs(padev, gf->ctrl, gf->choose_irq); | ||
203 | gf->choose_irq(padev, gf->ctrl); | ||
204 | |||
205 | return 0; | ||
193 | } | 206 | } |
194 | 207 | ||
195 | void gsc_fixup_irqs(struct parisc_device *parent, void *ctrl, | 208 | void gsc_fixup_irqs(struct parisc_device *parent, void *ctrl, |
196 | void (*choose_irq)(struct parisc_device *, void *)) | 209 | void (*choose_irq)(struct parisc_device *, void *)) |
197 | { | 210 | { |
198 | struct device *dev; | 211 | struct gsc_fixup_struct data = { |
199 | struct klist_iter i; | 212 | .choose_irq = choose_irq, |
200 | 213 | .ctrl = ctrl, | |
201 | klist_iter_init(&parent->dev.klist_children, &i); | 214 | }; |
202 | while ((dev = next_device(&i))) { | 215 | |
203 | struct parisc_device *padev = to_parisc_device(dev); | 216 | device_for_each_child(&parent->dev, &data, gsc_fixup_irqs_callback); |
204 | |||
205 | /* work-around for 715/64 and others which have parent | ||
206 | at path [5] and children at path [5/0/x] */ | ||
207 | if (padev->id.hw_type == HPHW_FAULTY) | ||
208 | return gsc_fixup_irqs(padev, ctrl, choose_irq); | ||
209 | choose_irq(padev, ctrl); | ||
210 | } | ||
211 | klist_iter_exit(&i); | ||
212 | } | 217 | } |
213 | 218 | ||
214 | int gsc_common_setup(struct parisc_device *parent, struct gsc_asic *gsc_asic) | 219 | int gsc_common_setup(struct parisc_device *parent, struct gsc_asic *gsc_asic) |
diff --git a/drivers/parisc/iosapic.c b/drivers/parisc/iosapic.c index 0797659ee016..501aaf1f253f 100644 --- a/drivers/parisc/iosapic.c +++ b/drivers/parisc/iosapic.c | |||
@@ -487,7 +487,7 @@ iosapic_xlate_pin(struct iosapic_info *isi, struct pci_dev *pcidev) | |||
487 | } | 487 | } |
488 | 488 | ||
489 | /* Check if pcidev behind a PPB */ | 489 | /* Check if pcidev behind a PPB */ |
490 | if (NULL != pcidev->bus->self) { | 490 | if (pcidev->bus->parent) { |
491 | /* Convert pcidev INTR_PIN into something we | 491 | /* Convert pcidev INTR_PIN into something we |
492 | ** can lookup in the IRT. | 492 | ** can lookup in the IRT. |
493 | */ | 493 | */ |
@@ -523,10 +523,9 @@ iosapic_xlate_pin(struct iosapic_info *isi, struct pci_dev *pcidev) | |||
523 | #endif /* PCI_BRIDGE_FUNCS */ | 523 | #endif /* PCI_BRIDGE_FUNCS */ |
524 | 524 | ||
525 | /* | 525 | /* |
526 | ** Locate the host slot the PPB nearest the Host bus | 526 | * Locate the host slot of the PPB. |
527 | ** adapter. | 527 | */ |
528 | */ | 528 | while (p->parent->parent) |
529 | while (NULL != p->parent->self) | ||
530 | p = p->parent; | 529 | p = p->parent; |
531 | 530 | ||
532 | intr_slot = PCI_SLOT(p->self->devfn); | 531 | intr_slot = PCI_SLOT(p->self->devfn); |
@@ -709,11 +708,14 @@ static void iosapic_set_affinity_irq(unsigned int irq, | |||
709 | struct vector_info *vi = iosapic_get_vector(irq); | 708 | struct vector_info *vi = iosapic_get_vector(irq); |
710 | u32 d0, d1, dummy_d0; | 709 | u32 d0, d1, dummy_d0; |
711 | unsigned long flags; | 710 | unsigned long flags; |
711 | int dest_cpu; | ||
712 | 712 | ||
713 | if (cpu_check_affinity(irq, dest)) | 713 | dest_cpu = cpu_check_affinity(irq, dest); |
714 | if (dest_cpu < 0) | ||
714 | return; | 715 | return; |
715 | 716 | ||
716 | vi->txn_addr = txn_affinity_addr(irq, cpumask_first(dest)); | 717 | irq_desc[irq].affinity = cpumask_of_cpu(dest_cpu); |
718 | vi->txn_addr = txn_affinity_addr(irq, dest_cpu); | ||
717 | 719 | ||
718 | spin_lock_irqsave(&iosapic_lock, flags); | 720 | spin_lock_irqsave(&iosapic_lock, flags); |
719 | /* d1 contains the destination CPU, so only want to set that | 721 | /* d1 contains the destination CPU, so only want to set that |
diff --git a/drivers/parisc/lba_pci.c b/drivers/parisc/lba_pci.c index d8233de8c75d..59fbbf128365 100644 --- a/drivers/parisc/lba_pci.c +++ b/drivers/parisc/lba_pci.c | |||
@@ -644,7 +644,7 @@ lba_fixup_bus(struct pci_bus *bus) | |||
644 | ** Properly Setup MMIO resources for this bus. | 644 | ** Properly Setup MMIO resources for this bus. |
645 | ** pci_alloc_primary_bus() mangles this. | 645 | ** pci_alloc_primary_bus() mangles this. |
646 | */ | 646 | */ |
647 | if (bus->self) { | 647 | if (bus->parent) { |
648 | int i; | 648 | int i; |
649 | /* PCI-PCI Bridge */ | 649 | /* PCI-PCI Bridge */ |
650 | pci_read_bridge_bases(bus); | 650 | pci_read_bridge_bases(bus); |
@@ -802,7 +802,7 @@ lba_fixup_bus(struct pci_bus *bus) | |||
802 | ** Can't fixup here anyway....garr... | 802 | ** Can't fixup here anyway....garr... |
803 | */ | 803 | */ |
804 | if (fbb_enable) { | 804 | if (fbb_enable) { |
805 | if (bus->self) { | 805 | if (bus->parent) { |
806 | u8 control; | 806 | u8 control; |
807 | /* enable on PPB */ | 807 | /* enable on PPB */ |
808 | (void) pci_read_config_byte(bus->self, PCI_BRIDGE_CONTROL, &control); | 808 | (void) pci_read_config_byte(bus->self, PCI_BRIDGE_CONTROL, &control); |
diff --git a/drivers/parisc/sba_iommu.c b/drivers/parisc/sba_iommu.c index a70cf16ee1ad..e5999c4cedc8 100644 --- a/drivers/parisc/sba_iommu.c +++ b/drivers/parisc/sba_iommu.c | |||
@@ -1206,30 +1206,48 @@ sba_alloc_pdir(unsigned int pdir_size) | |||
1206 | return (void *) pdir_base; | 1206 | return (void *) pdir_base; |
1207 | } | 1207 | } |
1208 | 1208 | ||
1209 | static struct device *next_device(struct klist_iter *i) | 1209 | struct ibase_data_struct { |
1210 | struct ioc *ioc; | ||
1211 | int ioc_num; | ||
1212 | }; | ||
1213 | |||
1214 | static int setup_ibase_imask_callback(struct device *dev, void *data) | ||
1210 | { | 1215 | { |
1211 | struct klist_node * n = klist_next(i); | 1216 | /* lba_set_iregs() is in drivers/parisc/lba_pci.c */ |
1212 | return n ? container_of(n, struct device, knode_parent) : NULL; | 1217 | extern void lba_set_iregs(struct parisc_device *, u32, u32); |
1218 | struct parisc_device *lba = to_parisc_device(dev); | ||
1219 | struct ibase_data_struct *ibd = data; | ||
1220 | int rope_num = (lba->hpa.start >> 13) & 0xf; | ||
1221 | if (rope_num >> 3 == ibd->ioc_num) | ||
1222 | lba_set_iregs(lba, ibd->ioc->ibase, ibd->ioc->imask); | ||
1223 | return 0; | ||
1213 | } | 1224 | } |
1214 | 1225 | ||
1215 | /* setup Mercury or Elroy IBASE/IMASK registers. */ | 1226 | /* setup Mercury or Elroy IBASE/IMASK registers. */ |
1216 | static void | 1227 | static void |
1217 | setup_ibase_imask(struct parisc_device *sba, struct ioc *ioc, int ioc_num) | 1228 | setup_ibase_imask(struct parisc_device *sba, struct ioc *ioc, int ioc_num) |
1218 | { | 1229 | { |
1219 | /* lba_set_iregs() is in drivers/parisc/lba_pci.c */ | 1230 | struct ibase_data_struct ibase_data = { |
1220 | extern void lba_set_iregs(struct parisc_device *, u32, u32); | 1231 | .ioc = ioc, |
1221 | struct device *dev; | 1232 | .ioc_num = ioc_num, |
1222 | struct klist_iter i; | 1233 | }; |
1223 | 1234 | ||
1224 | klist_iter_init(&sba->dev.klist_children, &i); | 1235 | device_for_each_child(&sba->dev, &ibase_data, |
1225 | while ((dev = next_device(&i))) { | 1236 | setup_ibase_imask_callback); |
1226 | struct parisc_device *lba = to_parisc_device(dev); | 1237 | } |
1227 | int rope_num = (lba->hpa.start >> 13) & 0xf; | 1238 | |
1228 | if (rope_num >> 3 == ioc_num) | 1239 | #ifdef SBA_AGP_SUPPORT |
1229 | lba_set_iregs(lba, ioc->ibase, ioc->imask); | 1240 | static int |
1230 | } | 1241 | sba_ioc_find_quicksilver(struct device *dev, void *data) |
1231 | klist_iter_exit(&i); | 1242 | { |
1243 | int *agp_found = data; | ||
1244 | struct parisc_device *lba = to_parisc_device(dev); | ||
1245 | |||
1246 | if (IS_QUICKSILVER(lba)) | ||
1247 | *agp_found = 1; | ||
1248 | return 0; | ||
1232 | } | 1249 | } |
1250 | #endif | ||
1233 | 1251 | ||
1234 | static void | 1252 | static void |
1235 | sba_ioc_init_pluto(struct parisc_device *sba, struct ioc *ioc, int ioc_num) | 1253 | sba_ioc_init_pluto(struct parisc_device *sba, struct ioc *ioc, int ioc_num) |
@@ -1332,9 +1350,6 @@ sba_ioc_init_pluto(struct parisc_device *sba, struct ioc *ioc, int ioc_num) | |||
1332 | WRITE_REG(ioc->ibase | 31, ioc->ioc_hpa + IOC_PCOM); | 1350 | WRITE_REG(ioc->ibase | 31, ioc->ioc_hpa + IOC_PCOM); |
1333 | 1351 | ||
1334 | #ifdef SBA_AGP_SUPPORT | 1352 | #ifdef SBA_AGP_SUPPORT |
1335 | { | ||
1336 | struct klist_iter i; | ||
1337 | struct device *dev = NULL; | ||
1338 | 1353 | ||
1339 | /* | 1354 | /* |
1340 | ** If an AGP device is present, only use half of the IOV space | 1355 | ** If an AGP device is present, only use half of the IOV space |
@@ -1344,13 +1359,7 @@ sba_ioc_init_pluto(struct parisc_device *sba, struct ioc *ioc, int ioc_num) | |||
1344 | ** We program the next pdir index after we stop w/ a key for | 1359 | ** We program the next pdir index after we stop w/ a key for |
1345 | ** the GART code to handshake on. | 1360 | ** the GART code to handshake on. |
1346 | */ | 1361 | */ |
1347 | klist_iter_init(&sba->dev.klist_children, &i); | 1362 | device_for_each_child(&sba->dev, &agp_found, sba_ioc_find_quicksilver); |
1348 | while ((dev = next_device(&i))) { | ||
1349 | struct parisc_device *lba = to_parisc_device(dev); | ||
1350 | if (IS_QUICKSILVER(lba)) | ||
1351 | agp_found = 1; | ||
1352 | } | ||
1353 | klist_iter_exit(&i); | ||
1354 | 1363 | ||
1355 | if (agp_found && sba_reserve_agpgart) { | 1364 | if (agp_found && sba_reserve_agpgart) { |
1356 | printk(KERN_INFO "%s: reserving %dMb of IOVA space for agpgart\n", | 1365 | printk(KERN_INFO "%s: reserving %dMb of IOVA space for agpgart\n", |
@@ -1358,9 +1367,7 @@ sba_ioc_init_pluto(struct parisc_device *sba, struct ioc *ioc, int ioc_num) | |||
1358 | ioc->pdir_size /= 2; | 1367 | ioc->pdir_size /= 2; |
1359 | ioc->pdir_base[PDIR_INDEX(iova_space_size/2)] = SBA_AGPGART_COOKIE; | 1368 | ioc->pdir_base[PDIR_INDEX(iova_space_size/2)] = SBA_AGPGART_COOKIE; |
1360 | } | 1369 | } |
1361 | } | ||
1362 | #endif /*SBA_AGP_SUPPORT*/ | 1370 | #endif /*SBA_AGP_SUPPORT*/ |
1363 | |||
1364 | } | 1371 | } |
1365 | 1372 | ||
1366 | static void | 1373 | static void |
diff --git a/drivers/pci/hotplug/Kconfig b/drivers/pci/hotplug/Kconfig index eacfb13998bb..9aa4fe100a0d 100644 --- a/drivers/pci/hotplug/Kconfig +++ b/drivers/pci/hotplug/Kconfig | |||
@@ -143,7 +143,7 @@ config HOTPLUG_PCI_SHPC | |||
143 | 143 | ||
144 | config HOTPLUG_PCI_RPA | 144 | config HOTPLUG_PCI_RPA |
145 | tristate "RPA PCI Hotplug driver" | 145 | tristate "RPA PCI Hotplug driver" |
146 | depends on PPC_PSERIES && PPC64 && !HOTPLUG_PCI_FAKE | 146 | depends on PPC_PSERIES && EEH && !HOTPLUG_PCI_FAKE |
147 | help | 147 | help |
148 | Say Y here if you have a RPA system that supports PCI Hotplug. | 148 | Say Y here if you have a RPA system that supports PCI Hotplug. |
149 | 149 | ||
diff --git a/drivers/pci/pcie/aer/aerdrv_core.c b/drivers/pci/pcie/aer/aerdrv_core.c index d0c973685868..382575007382 100644 --- a/drivers/pci/pcie/aer/aerdrv_core.c +++ b/drivers/pci/pcie/aer/aerdrv_core.c | |||
@@ -133,6 +133,9 @@ static void set_downstream_devices_error_reporting(struct pci_dev *dev, | |||
133 | bool enable) | 133 | bool enable) |
134 | { | 134 | { |
135 | set_device_error_reporting(dev, &enable); | 135 | set_device_error_reporting(dev, &enable); |
136 | |||
137 | if (!dev->subordinate) | ||
138 | return; | ||
136 | pci_walk_bus(dev->subordinate, set_device_error_reporting, &enable); | 139 | pci_walk_bus(dev->subordinate, set_device_error_reporting, &enable); |
137 | } | 140 | } |
138 | 141 | ||
diff --git a/drivers/pci/pcie/portdrv_pci.c b/drivers/pci/pcie/portdrv_pci.c index 248b4db91552..5ea566e20b37 100644 --- a/drivers/pci/pcie/portdrv_pci.c +++ b/drivers/pci/pcie/portdrv_pci.c | |||
@@ -103,6 +103,7 @@ static int __devinit pcie_portdrv_probe (struct pci_dev *dev, | |||
103 | static void pcie_portdrv_remove (struct pci_dev *dev) | 103 | static void pcie_portdrv_remove (struct pci_dev *dev) |
104 | { | 104 | { |
105 | pcie_port_device_remove(dev); | 105 | pcie_port_device_remove(dev); |
106 | pci_disable_device(dev); | ||
106 | kfree(pci_get_drvdata(dev)); | 107 | kfree(pci_get_drvdata(dev)); |
107 | } | 108 | } |
108 | 109 | ||
diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c index f20d55368edb..92b9efe9bcaf 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c | |||
@@ -23,6 +23,7 @@ | |||
23 | #include <linux/acpi.h> | 23 | #include <linux/acpi.h> |
24 | #include <linux/kallsyms.h> | 24 | #include <linux/kallsyms.h> |
25 | #include <linux/dmi.h> | 25 | #include <linux/dmi.h> |
26 | #include <linux/pci-aspm.h> | ||
26 | #include "pci.h" | 27 | #include "pci.h" |
27 | 28 | ||
28 | int isa_dma_bridge_buggy; | 29 | int isa_dma_bridge_buggy; |
@@ -1749,6 +1750,30 @@ static void __devinit quirk_e100_interrupt(struct pci_dev *dev) | |||
1749 | } | 1750 | } |
1750 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, PCI_ANY_ID, quirk_e100_interrupt); | 1751 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, PCI_ANY_ID, quirk_e100_interrupt); |
1751 | 1752 | ||
1753 | /* | ||
1754 | * The 82575 and 82598 may experience data corruption issues when transitioning | ||
1755 | * out of L0S. To prevent this we need to disable L0S on the pci-e link | ||
1756 | */ | ||
1757 | static void __devinit quirk_disable_aspm_l0s(struct pci_dev *dev) | ||
1758 | { | ||
1759 | dev_info(&dev->dev, "Disabling L0s\n"); | ||
1760 | pci_disable_link_state(dev, PCIE_LINK_STATE_L0S); | ||
1761 | } | ||
1762 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x10a7, quirk_disable_aspm_l0s); | ||
1763 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x10a9, quirk_disable_aspm_l0s); | ||
1764 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x10b6, quirk_disable_aspm_l0s); | ||
1765 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x10c6, quirk_disable_aspm_l0s); | ||
1766 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x10c7, quirk_disable_aspm_l0s); | ||
1767 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x10c8, quirk_disable_aspm_l0s); | ||
1768 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x10d6, quirk_disable_aspm_l0s); | ||
1769 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x10db, quirk_disable_aspm_l0s); | ||
1770 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x10dd, quirk_disable_aspm_l0s); | ||
1771 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x10e1, quirk_disable_aspm_l0s); | ||
1772 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x10ec, quirk_disable_aspm_l0s); | ||
1773 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x10f1, quirk_disable_aspm_l0s); | ||
1774 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x10f4, quirk_disable_aspm_l0s); | ||
1775 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x1508, quirk_disable_aspm_l0s); | ||
1776 | |||
1752 | static void __devinit fixup_rev1_53c810(struct pci_dev* dev) | 1777 | static void __devinit fixup_rev1_53c810(struct pci_dev* dev) |
1753 | { | 1778 | { |
1754 | /* rev 1 ncr53c810 chips don't set the class at all which means | 1779 | /* rev 1 ncr53c810 chips don't set the class at all which means |
@@ -2097,7 +2122,7 @@ static void __devinit ht_disable_msi_mapping(struct pci_dev *dev) | |||
2097 | 2122 | ||
2098 | if (pci_read_config_byte(dev, pos + HT_MSI_FLAGS, | 2123 | if (pci_read_config_byte(dev, pos + HT_MSI_FLAGS, |
2099 | &flags) == 0) { | 2124 | &flags) == 0) { |
2100 | dev_info(&dev->dev, "Enabling HT MSI Mapping\n"); | 2125 | dev_info(&dev->dev, "Disabling HT MSI Mapping\n"); |
2101 | 2126 | ||
2102 | pci_write_config_byte(dev, pos + HT_MSI_FLAGS, | 2127 | pci_write_config_byte(dev, pos + HT_MSI_FLAGS, |
2103 | flags & ~HT_MSI_FLAGS_ENABLE); | 2128 | flags & ~HT_MSI_FLAGS_ENABLE); |
@@ -2141,6 +2166,10 @@ static void __devinit nv_msi_ht_cap_quirk(struct pci_dev *dev) | |||
2141 | int pos; | 2166 | int pos; |
2142 | int found; | 2167 | int found; |
2143 | 2168 | ||
2169 | /* Enabling HT MSI mapping on this device breaks MCP51 */ | ||
2170 | if (dev->device == 0x270) | ||
2171 | return; | ||
2172 | |||
2144 | /* check if there is HT MSI cap or enabled on this device */ | 2173 | /* check if there is HT MSI cap or enabled on this device */ |
2145 | found = ht_check_msi_mapping(dev); | 2174 | found = ht_check_msi_mapping(dev); |
2146 | 2175 | ||
diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig index b3866ad50227..3608081bc3e0 100644 --- a/drivers/platform/x86/Kconfig +++ b/drivers/platform/x86/Kconfig | |||
@@ -15,8 +15,7 @@ menuconfig X86_PLATFORM_DEVICES | |||
15 | if X86_PLATFORM_DEVICES | 15 | if X86_PLATFORM_DEVICES |
16 | 16 | ||
17 | config ACER_WMI | 17 | config ACER_WMI |
18 | tristate "Acer WMI Laptop Extras (EXPERIMENTAL)" | 18 | tristate "Acer WMI Laptop Extras" |
19 | depends on EXPERIMENTAL | ||
20 | depends on ACPI | 19 | depends on ACPI |
21 | depends on LEDS_CLASS | 20 | depends on LEDS_CLASS |
22 | depends on NEW_LEDS | 21 | depends on NEW_LEDS |
@@ -39,9 +38,9 @@ config ASUS_LAPTOP | |||
39 | tristate "Asus Laptop Extras (EXPERIMENTAL)" | 38 | tristate "Asus Laptop Extras (EXPERIMENTAL)" |
40 | depends on ACPI | 39 | depends on ACPI |
41 | depends on EXPERIMENTAL && !ACPI_ASUS | 40 | depends on EXPERIMENTAL && !ACPI_ASUS |
42 | depends on LEDS_CLASS | 41 | select LEDS_CLASS |
43 | depends on NEW_LEDS | 42 | select NEW_LEDS |
44 | depends on BACKLIGHT_CLASS_DEVICE | 43 | select BACKLIGHT_CLASS_DEVICE |
45 | depends on INPUT | 44 | depends on INPUT |
46 | ---help--- | 45 | ---help--- |
47 | This is the new Linux driver for Asus laptops. It may also support some | 46 | This is the new Linux driver for Asus laptops. It may also support some |
@@ -185,11 +184,11 @@ config SONYPI_COMPAT | |||
185 | config THINKPAD_ACPI | 184 | config THINKPAD_ACPI |
186 | tristate "ThinkPad ACPI Laptop Extras" | 185 | tristate "ThinkPad ACPI Laptop Extras" |
187 | depends on ACPI | 186 | depends on ACPI |
187 | depends on INPUT | ||
188 | select BACKLIGHT_LCD_SUPPORT | 188 | select BACKLIGHT_LCD_SUPPORT |
189 | select BACKLIGHT_CLASS_DEVICE | 189 | select BACKLIGHT_CLASS_DEVICE |
190 | select HWMON | 190 | select HWMON |
191 | select NVRAM | 191 | select NVRAM |
192 | select INPUT | ||
193 | select NEW_LEDS | 192 | select NEW_LEDS |
194 | select LEDS_CLASS | 193 | select LEDS_CLASS |
195 | select NET | 194 | select NET |
@@ -315,9 +314,8 @@ config EEEPC_LAPTOP | |||
315 | 314 | ||
316 | 315 | ||
317 | config ACPI_WMI | 316 | config ACPI_WMI |
318 | tristate "WMI (EXPERIMENTAL)" | 317 | tristate "WMI" |
319 | depends on ACPI | 318 | depends on ACPI |
320 | depends on EXPERIMENTAL | ||
321 | help | 319 | help |
322 | This driver adds support for the ACPI-WMI (Windows Management | 320 | This driver adds support for the ACPI-WMI (Windows Management |
323 | Instrumentation) mapper device (PNP0C14) found on some systems. | 321 | Instrumentation) mapper device (PNP0C14) found on some systems. |
diff --git a/drivers/platform/x86/acer-wmi.c b/drivers/platform/x86/acer-wmi.c index 94c9f911824e..a6a42e8c060b 100644 --- a/drivers/platform/x86/acer-wmi.c +++ b/drivers/platform/x86/acer-wmi.c | |||
@@ -1026,7 +1026,7 @@ static void acer_rfkill_exit(void) | |||
1026 | kfree(wireless_rfkill->data); | 1026 | kfree(wireless_rfkill->data); |
1027 | rfkill_unregister(wireless_rfkill); | 1027 | rfkill_unregister(wireless_rfkill); |
1028 | if (has_cap(ACER_CAP_BLUETOOTH)) { | 1028 | if (has_cap(ACER_CAP_BLUETOOTH)) { |
1029 | kfree(wireless_rfkill->data); | 1029 | kfree(bluetooth_rfkill->data); |
1030 | rfkill_unregister(bluetooth_rfkill); | 1030 | rfkill_unregister(bluetooth_rfkill); |
1031 | } | 1031 | } |
1032 | return; | 1032 | return; |
@@ -1297,7 +1297,7 @@ static int __init acer_wmi_init(void) | |||
1297 | 1297 | ||
1298 | set_quirks(); | 1298 | set_quirks(); |
1299 | 1299 | ||
1300 | if (!acpi_video_backlight_support() && has_cap(ACER_CAP_BRIGHTNESS)) { | 1300 | if (acpi_video_backlight_support() && has_cap(ACER_CAP_BRIGHTNESS)) { |
1301 | interface->capability &= ~ACER_CAP_BRIGHTNESS; | 1301 | interface->capability &= ~ACER_CAP_BRIGHTNESS; |
1302 | printk(ACER_INFO "Brightness must be controlled by " | 1302 | printk(ACER_INFO "Brightness must be controlled by " |
1303 | "generic video driver\n"); | 1303 | "generic video driver\n"); |
diff --git a/drivers/platform/x86/asus-laptop.c b/drivers/platform/x86/asus-laptop.c index 56af6cf385b0..eeafc6c0160d 100644 --- a/drivers/platform/x86/asus-laptop.c +++ b/drivers/platform/x86/asus-laptop.c | |||
@@ -815,6 +815,7 @@ static int asus_setkeycode(struct input_dev *dev, int scancode, int keycode) | |||
815 | static void asus_hotk_notify(acpi_handle handle, u32 event, void *data) | 815 | static void asus_hotk_notify(acpi_handle handle, u32 event, void *data) |
816 | { | 816 | { |
817 | static struct key_entry *key; | 817 | static struct key_entry *key; |
818 | u16 count; | ||
818 | 819 | ||
819 | /* TODO Find a better way to handle events count. */ | 820 | /* TODO Find a better way to handle events count. */ |
820 | if (!hotk) | 821 | if (!hotk) |
@@ -832,9 +833,11 @@ static void asus_hotk_notify(acpi_handle handle, u32 event, void *data) | |||
832 | lcd_blank(FB_BLANK_POWERDOWN); | 833 | lcd_blank(FB_BLANK_POWERDOWN); |
833 | } | 834 | } |
834 | 835 | ||
836 | count = hotk->event_count[event % 128]++; | ||
837 | acpi_bus_generate_proc_event(hotk->device, event, count); | ||
835 | acpi_bus_generate_netlink_event(hotk->device->pnp.device_class, | 838 | acpi_bus_generate_netlink_event(hotk->device->pnp.device_class, |
836 | dev_name(&hotk->device->dev), event, | 839 | dev_name(&hotk->device->dev), event, |
837 | hotk->event_count[event % 128]++); | 840 | count); |
838 | 841 | ||
839 | if (hotk->inputdev) { | 842 | if (hotk->inputdev) { |
840 | key = asus_get_entry_by_scancode(event); | 843 | key = asus_get_entry_by_scancode(event); |
diff --git a/drivers/platform/x86/eeepc-laptop.c b/drivers/platform/x86/eeepc-laptop.c index 786ed8661cb0..6f54fd1757cd 100644 --- a/drivers/platform/x86/eeepc-laptop.c +++ b/drivers/platform/x86/eeepc-laptop.c | |||
@@ -557,13 +557,17 @@ static void eeepc_rfkill_notify(acpi_handle handle, u32 event, void *data) | |||
557 | static void eeepc_hotk_notify(acpi_handle handle, u32 event, void *data) | 557 | static void eeepc_hotk_notify(acpi_handle handle, u32 event, void *data) |
558 | { | 558 | { |
559 | static struct key_entry *key; | 559 | static struct key_entry *key; |
560 | u16 count; | ||
561 | |||
560 | if (!ehotk) | 562 | if (!ehotk) |
561 | return; | 563 | return; |
562 | if (event >= NOTIFY_BRN_MIN && event <= NOTIFY_BRN_MAX) | 564 | if (event >= NOTIFY_BRN_MIN && event <= NOTIFY_BRN_MAX) |
563 | notify_brn(); | 565 | notify_brn(); |
566 | count = ehotk->event_count[event % 128]++; | ||
567 | acpi_bus_generate_proc_event(ehotk->device, event, count); | ||
564 | acpi_bus_generate_netlink_event(ehotk->device->pnp.device_class, | 568 | acpi_bus_generate_netlink_event(ehotk->device->pnp.device_class, |
565 | dev_name(&ehotk->device->dev), event, | 569 | dev_name(&ehotk->device->dev), event, |
566 | ehotk->event_count[event % 128]++); | 570 | count); |
567 | if (ehotk->inputdev) { | 571 | if (ehotk->inputdev) { |
568 | key = eepc_get_entry_by_scancode(event); | 572 | key = eepc_get_entry_by_scancode(event); |
569 | if (key) { | 573 | if (key) { |
diff --git a/drivers/platform/x86/thinkpad_acpi.c b/drivers/platform/x86/thinkpad_acpi.c index bcbc05107ba8..d2433204a40c 100644 --- a/drivers/platform/x86/thinkpad_acpi.c +++ b/drivers/platform/x86/thinkpad_acpi.c | |||
@@ -7532,7 +7532,7 @@ MODULE_ALIAS(TPACPI_DRVR_SHORTNAME); | |||
7532 | * if it is not there yet. | 7532 | * if it is not there yet. |
7533 | */ | 7533 | */ |
7534 | #define IBM_BIOS_MODULE_ALIAS(__type) \ | 7534 | #define IBM_BIOS_MODULE_ALIAS(__type) \ |
7535 | MODULE_ALIAS("dmi:bvnIBM:bvr" __type "ET??WW") | 7535 | MODULE_ALIAS("dmi:bvnIBM:bvr" __type "ET??WW*") |
7536 | 7536 | ||
7537 | /* Non-ancient thinkpads */ | 7537 | /* Non-ancient thinkpads */ |
7538 | MODULE_ALIAS("dmi:bvnIBM:*:svnIBM:*:pvrThinkPad*:rvnIBM:*"); | 7538 | MODULE_ALIAS("dmi:bvnIBM:*:svnIBM:*:pvrThinkPad*:rvnIBM:*"); |
@@ -7541,9 +7541,9 @@ MODULE_ALIAS("dmi:bvnLENOVO:*:svnLENOVO:*:pvrThinkPad*:rvnLENOVO:*"); | |||
7541 | /* Ancient thinkpad BIOSes have to be identified by | 7541 | /* Ancient thinkpad BIOSes have to be identified by |
7542 | * BIOS type or model number, and there are far less | 7542 | * BIOS type or model number, and there are far less |
7543 | * BIOS types than model numbers... */ | 7543 | * BIOS types than model numbers... */ |
7544 | IBM_BIOS_MODULE_ALIAS("I[B,D,H,I,M,N,O,T,W,V,Y,Z]"); | 7544 | IBM_BIOS_MODULE_ALIAS("I[BDHIMNOTWVYZ]"); |
7545 | IBM_BIOS_MODULE_ALIAS("1[0,3,6,8,A-G,I,K,M-P,S,T]"); | 7545 | IBM_BIOS_MODULE_ALIAS("1[0368A-GIKM-PST]"); |
7546 | IBM_BIOS_MODULE_ALIAS("K[U,X-Z]"); | 7546 | IBM_BIOS_MODULE_ALIAS("K[UX-Z]"); |
7547 | 7547 | ||
7548 | MODULE_AUTHOR("Borislav Deianov, Henrique de Moraes Holschuh"); | 7548 | MODULE_AUTHOR("Borislav Deianov, Henrique de Moraes Holschuh"); |
7549 | MODULE_DESCRIPTION(TPACPI_DESC); | 7549 | MODULE_DESCRIPTION(TPACPI_DESC); |
diff --git a/drivers/platform/x86/wmi.c b/drivers/platform/x86/wmi.c index 8a8b377712c9..2f269e117b8f 100644 --- a/drivers/platform/x86/wmi.c +++ b/drivers/platform/x86/wmi.c | |||
@@ -708,7 +708,7 @@ static int __init acpi_wmi_add(struct acpi_device *device) | |||
708 | 708 | ||
709 | static int __init acpi_wmi_init(void) | 709 | static int __init acpi_wmi_init(void) |
710 | { | 710 | { |
711 | acpi_status result; | 711 | int result; |
712 | 712 | ||
713 | INIT_LIST_HEAD(&wmi_blocks.list); | 713 | INIT_LIST_HEAD(&wmi_blocks.list); |
714 | 714 | ||
diff --git a/drivers/power/ds2760_battery.c b/drivers/power/ds2760_battery.c index 1d768928e0bb..a52d4a11652d 100644 --- a/drivers/power/ds2760_battery.c +++ b/drivers/power/ds2760_battery.c | |||
@@ -180,10 +180,13 @@ static int ds2760_battery_read_status(struct ds2760_device_info *di) | |||
180 | di->empty_uAh = battery_interpolate(scale, di->temp_C / 10); | 180 | di->empty_uAh = battery_interpolate(scale, di->temp_C / 10); |
181 | di->empty_uAh *= 1000; /* convert to µAh */ | 181 | di->empty_uAh *= 1000; /* convert to µAh */ |
182 | 182 | ||
183 | /* From Maxim Application Note 131: remaining capacity = | 183 | if (di->full_active_uAh == di->empty_uAh) |
184 | * ((ICA - Empty Value) / (Full Value - Empty Value)) x 100% */ | 184 | di->rem_capacity = 0; |
185 | di->rem_capacity = ((di->accum_current_uAh - di->empty_uAh) * 100L) / | 185 | else |
186 | (di->full_active_uAh - di->empty_uAh); | 186 | /* From Maxim Application Note 131: remaining capacity = |
187 | * ((ICA - Empty Value) / (Full Value - Empty Value)) x 100% */ | ||
188 | di->rem_capacity = ((di->accum_current_uAh - di->empty_uAh) * 100L) / | ||
189 | (di->full_active_uAh - di->empty_uAh); | ||
187 | 190 | ||
188 | if (di->rem_capacity < 0) | 191 | if (di->rem_capacity < 0) |
189 | di->rem_capacity = 0; | 192 | di->rem_capacity = 0; |
diff --git a/drivers/sbus/char/bbc_i2c.c b/drivers/sbus/char/bbc_i2c.c index f08e169ba1b5..7e30e5f6e032 100644 --- a/drivers/sbus/char/bbc_i2c.c +++ b/drivers/sbus/char/bbc_i2c.c | |||
@@ -129,7 +129,7 @@ static int wait_for_pin(struct bbc_i2c_bus *bp, u8 *status) | |||
129 | bp->waiting = 1; | 129 | bp->waiting = 1; |
130 | add_wait_queue(&bp->wq, &wait); | 130 | add_wait_queue(&bp->wq, &wait); |
131 | while (limit-- > 0) { | 131 | while (limit-- > 0) { |
132 | unsigned long val; | 132 | long val; |
133 | 133 | ||
134 | val = wait_event_interruptible_timeout( | 134 | val = wait_event_interruptible_timeout( |
135 | bp->wq, | 135 | bp->wq, |
diff --git a/drivers/sbus/char/jsflash.c b/drivers/sbus/char/jsflash.c index a9a9893a5f95..e6d1fc8c54f1 100644 --- a/drivers/sbus/char/jsflash.c +++ b/drivers/sbus/char/jsflash.c | |||
@@ -38,9 +38,6 @@ | |||
38 | #include <linux/string.h> | 38 | #include <linux/string.h> |
39 | #include <linux/genhd.h> | 39 | #include <linux/genhd.h> |
40 | #include <linux/blkdev.h> | 40 | #include <linux/blkdev.h> |
41 | |||
42 | #define MAJOR_NR JSFD_MAJOR | ||
43 | |||
44 | #include <asm/uaccess.h> | 41 | #include <asm/uaccess.h> |
45 | #include <asm/pgtable.h> | 42 | #include <asm/pgtable.h> |
46 | #include <asm/io.h> | 43 | #include <asm/io.h> |
diff --git a/drivers/scsi/fcoe/fc_transport_fcoe.c b/drivers/scsi/fcoe/fc_transport_fcoe.c index bf7fe6fc0820..8862758006c0 100644 --- a/drivers/scsi/fcoe/fc_transport_fcoe.c +++ b/drivers/scsi/fcoe/fc_transport_fcoe.c | |||
@@ -33,19 +33,19 @@ static LIST_HEAD(fcoe_transports); | |||
33 | static DEFINE_MUTEX(fcoe_transports_lock); | 33 | static DEFINE_MUTEX(fcoe_transports_lock); |
34 | 34 | ||
35 | /** | 35 | /** |
36 | * fcoe_transport_default - returns ptr to the default transport fcoe_sw | 36 | * fcoe_transport_default() - Returns ptr to the default transport fcoe_sw |
37 | **/ | 37 | */ |
38 | struct fcoe_transport *fcoe_transport_default(void) | 38 | struct fcoe_transport *fcoe_transport_default(void) |
39 | { | 39 | { |
40 | return &fcoe_sw_transport; | 40 | return &fcoe_sw_transport; |
41 | } | 41 | } |
42 | 42 | ||
43 | /** | 43 | /** |
44 | * fcoe_transport_to_pcidev - get the pci dev from a netdev | 44 | * fcoe_transport_to_pcidev() - get the pci dev from a netdev |
45 | * @netdev: the netdev that pci dev will be retrived from | 45 | * @netdev: the netdev that pci dev will be retrived from |
46 | * | 46 | * |
47 | * Returns: NULL or the corrsponding pci_dev | 47 | * Returns: NULL or the corrsponding pci_dev |
48 | **/ | 48 | */ |
49 | struct pci_dev *fcoe_transport_pcidev(const struct net_device *netdev) | 49 | struct pci_dev *fcoe_transport_pcidev(const struct net_device *netdev) |
50 | { | 50 | { |
51 | if (!netdev->dev.parent) | 51 | if (!netdev->dev.parent) |
@@ -54,18 +54,17 @@ struct pci_dev *fcoe_transport_pcidev(const struct net_device *netdev) | |||
54 | } | 54 | } |
55 | 55 | ||
56 | /** | 56 | /** |
57 | * fcoe_transport_device_lookup - find out netdev is managed by the | 57 | * fcoe_transport_device_lookup() - Lookup a transport |
58 | * transport | ||
59 | * assign a transport to a device | ||
60 | * @netdev: the netdev the transport to be attached to | 58 | * @netdev: the netdev the transport to be attached to |
61 | * | 59 | * |
62 | * This will look for existing offload driver, if not found, it falls back to | 60 | * This will look for existing offload driver, if not found, it falls back to |
63 | * the default sw hba (fcoe_sw) as its fcoe transport. | 61 | * the default sw hba (fcoe_sw) as its fcoe transport. |
64 | * | 62 | * |
65 | * Returns: 0 for success | 63 | * Returns: 0 for success |
66 | **/ | 64 | */ |
67 | static struct fcoe_transport_internal *fcoe_transport_device_lookup( | 65 | static struct fcoe_transport_internal * |
68 | struct fcoe_transport *t, struct net_device *netdev) | 66 | fcoe_transport_device_lookup(struct fcoe_transport *t, |
67 | struct net_device *netdev) | ||
69 | { | 68 | { |
70 | struct fcoe_transport_internal *ti; | 69 | struct fcoe_transport_internal *ti; |
71 | 70 | ||
@@ -81,14 +80,14 @@ static struct fcoe_transport_internal *fcoe_transport_device_lookup( | |||
81 | return NULL; | 80 | return NULL; |
82 | } | 81 | } |
83 | /** | 82 | /** |
84 | * fcoe_transport_device_add - assign a transport to a device | 83 | * fcoe_transport_device_add() - Assign a transport to a device |
85 | * @netdev: the netdev the transport to be attached to | 84 | * @netdev: the netdev the transport to be attached to |
86 | * | 85 | * |
87 | * This will look for existing offload driver, if not found, it falls back to | 86 | * This will look for existing offload driver, if not found, it falls back to |
88 | * the default sw hba (fcoe_sw) as its fcoe transport. | 87 | * the default sw hba (fcoe_sw) as its fcoe transport. |
89 | * | 88 | * |
90 | * Returns: 0 for success | 89 | * Returns: 0 for success |
91 | **/ | 90 | */ |
92 | static int fcoe_transport_device_add(struct fcoe_transport *t, | 91 | static int fcoe_transport_device_add(struct fcoe_transport *t, |
93 | struct net_device *netdev) | 92 | struct net_device *netdev) |
94 | { | 93 | { |
@@ -123,14 +122,14 @@ static int fcoe_transport_device_add(struct fcoe_transport *t, | |||
123 | } | 122 | } |
124 | 123 | ||
125 | /** | 124 | /** |
126 | * fcoe_transport_device_remove - remove a device from its transport | 125 | * fcoe_transport_device_remove() - Remove a device from its transport |
127 | * @netdev: the netdev the transport to be attached to | 126 | * @netdev: the netdev the transport to be attached to |
128 | * | 127 | * |
129 | * this removes the device from the transport so the given transport will | 128 | * This removes the device from the transport so the given transport will |
130 | * not manage this device any more | 129 | * not manage this device any more |
131 | * | 130 | * |
132 | * Returns: 0 for success | 131 | * Returns: 0 for success |
133 | **/ | 132 | */ |
134 | static int fcoe_transport_device_remove(struct fcoe_transport *t, | 133 | static int fcoe_transport_device_remove(struct fcoe_transport *t, |
135 | struct net_device *netdev) | 134 | struct net_device *netdev) |
136 | { | 135 | { |
@@ -155,13 +154,13 @@ static int fcoe_transport_device_remove(struct fcoe_transport *t, | |||
155 | } | 154 | } |
156 | 155 | ||
157 | /** | 156 | /** |
158 | * fcoe_transport_device_remove_all - remove all from transport devlist | 157 | * fcoe_transport_device_remove_all() - Remove all from transport devlist |
159 | * | 158 | * |
160 | * this removes the device from the transport so the given transport will | 159 | * This removes the device from the transport so the given transport will |
161 | * not manage this device any more | 160 | * not manage this device any more |
162 | * | 161 | * |
163 | * Returns: 0 for success | 162 | * Returns: 0 for success |
164 | **/ | 163 | */ |
165 | static void fcoe_transport_device_remove_all(struct fcoe_transport *t) | 164 | static void fcoe_transport_device_remove_all(struct fcoe_transport *t) |
166 | { | 165 | { |
167 | struct fcoe_transport_internal *ti, *tmp; | 166 | struct fcoe_transport_internal *ti, *tmp; |
@@ -175,18 +174,18 @@ static void fcoe_transport_device_remove_all(struct fcoe_transport *t) | |||
175 | } | 174 | } |
176 | 175 | ||
177 | /** | 176 | /** |
178 | * fcoe_transport_match - use the bus device match function to match the hw | 177 | * fcoe_transport_match() - Use the bus device match function to match the hw |
179 | * @t: the fcoe transport | 178 | * @t: The fcoe transport to check |
180 | * @netdev: | 179 | * @netdev: The netdev to match against |
181 | * | 180 | * |
182 | * This function is used to check if the givne transport wants to manage the | 181 | * This function is used to check if the given transport wants to manage the |
183 | * input netdev. if the transports implements the match function, it will be | 182 | * input netdev. if the transports implements the match function, it will be |
184 | * called, o.w. we just compare the pci vendor and device id. | 183 | * called, o.w. we just compare the pci vendor and device id. |
185 | * | 184 | * |
186 | * Returns: true for match up | 185 | * Returns: true for match up |
187 | **/ | 186 | */ |
188 | static bool fcoe_transport_match(struct fcoe_transport *t, | 187 | static bool fcoe_transport_match(struct fcoe_transport *t, |
189 | struct net_device *netdev) | 188 | struct net_device *netdev) |
190 | { | 189 | { |
191 | /* match transport by vendor and device id */ | 190 | /* match transport by vendor and device id */ |
192 | struct pci_dev *pci; | 191 | struct pci_dev *pci; |
@@ -210,17 +209,17 @@ static bool fcoe_transport_match(struct fcoe_transport *t, | |||
210 | } | 209 | } |
211 | 210 | ||
212 | /** | 211 | /** |
213 | * fcoe_transport_lookup - check if the transport is already registered | 212 | * fcoe_transport_lookup() - Check if the transport is already registered |
214 | * @t: the transport to be looked up | 213 | * @t: the transport to be looked up |
215 | * | 214 | * |
216 | * This compares the parent device (pci) vendor and device id | 215 | * This compares the parent device (pci) vendor and device id |
217 | * | 216 | * |
218 | * Returns: NULL if not found | 217 | * Returns: NULL if not found |
219 | * | 218 | * |
220 | * TODO - return default sw transport if no other transport is found | 219 | * TODO: return default sw transport if no other transport is found |
221 | **/ | 220 | */ |
222 | static struct fcoe_transport *fcoe_transport_lookup( | 221 | static struct fcoe_transport * |
223 | struct net_device *netdev) | 222 | fcoe_transport_lookup(struct net_device *netdev) |
224 | { | 223 | { |
225 | struct fcoe_transport *t; | 224 | struct fcoe_transport *t; |
226 | 225 | ||
@@ -239,11 +238,11 @@ static struct fcoe_transport *fcoe_transport_lookup( | |||
239 | } | 238 | } |
240 | 239 | ||
241 | /** | 240 | /** |
242 | * fcoe_transport_register - adds a fcoe transport to the fcoe transports list | 241 | * fcoe_transport_register() - Adds a fcoe transport to the fcoe transports list |
243 | * @t: ptr to the fcoe transport to be added | 242 | * @t: ptr to the fcoe transport to be added |
244 | * | 243 | * |
245 | * Returns: 0 for success | 244 | * Returns: 0 for success |
246 | **/ | 245 | */ |
247 | int fcoe_transport_register(struct fcoe_transport *t) | 246 | int fcoe_transport_register(struct fcoe_transport *t) |
248 | { | 247 | { |
249 | struct fcoe_transport *tt; | 248 | struct fcoe_transport *tt; |
@@ -259,9 +258,6 @@ int fcoe_transport_register(struct fcoe_transport *t) | |||
259 | list_add_tail(&t->list, &fcoe_transports); | 258 | list_add_tail(&t->list, &fcoe_transports); |
260 | mutex_unlock(&fcoe_transports_lock); | 259 | mutex_unlock(&fcoe_transports_lock); |
261 | 260 | ||
262 | mutex_init(&t->devlock); | ||
263 | INIT_LIST_HEAD(&t->devlist); | ||
264 | |||
265 | printk(KERN_DEBUG "fcoe_transport_register:%s\n", t->name); | 261 | printk(KERN_DEBUG "fcoe_transport_register:%s\n", t->name); |
266 | 262 | ||
267 | return 0; | 263 | return 0; |
@@ -269,11 +265,11 @@ int fcoe_transport_register(struct fcoe_transport *t) | |||
269 | EXPORT_SYMBOL_GPL(fcoe_transport_register); | 265 | EXPORT_SYMBOL_GPL(fcoe_transport_register); |
270 | 266 | ||
271 | /** | 267 | /** |
272 | * fcoe_transport_unregister - remove the tranport fro the fcoe transports list | 268 | * fcoe_transport_unregister() - Remove the tranport fro the fcoe transports list |
273 | * @t: ptr to the fcoe transport to be removed | 269 | * @t: ptr to the fcoe transport to be removed |
274 | * | 270 | * |
275 | * Returns: 0 for success | 271 | * Returns: 0 for success |
276 | **/ | 272 | */ |
277 | int fcoe_transport_unregister(struct fcoe_transport *t) | 273 | int fcoe_transport_unregister(struct fcoe_transport *t) |
278 | { | 274 | { |
279 | struct fcoe_transport *tt, *tmp; | 275 | struct fcoe_transport *tt, *tmp; |
@@ -294,8 +290,8 @@ int fcoe_transport_unregister(struct fcoe_transport *t) | |||
294 | } | 290 | } |
295 | EXPORT_SYMBOL_GPL(fcoe_transport_unregister); | 291 | EXPORT_SYMBOL_GPL(fcoe_transport_unregister); |
296 | 292 | ||
297 | /* | 293 | /** |
298 | * fcoe_load_transport_driver - load an offload driver by alias name | 294 | * fcoe_load_transport_driver() - Load an offload driver by alias name |
299 | * @netdev: the target net device | 295 | * @netdev: the target net device |
300 | * | 296 | * |
301 | * Requests for an offload driver module as the fcoe transport, if fails, it | 297 | * Requests for an offload driver module as the fcoe transport, if fails, it |
@@ -307,7 +303,7 @@ EXPORT_SYMBOL_GPL(fcoe_transport_unregister); | |||
307 | * 3. pure hw fcoe hba may not have netdev | 303 | * 3. pure hw fcoe hba may not have netdev |
308 | * | 304 | * |
309 | * Returns: 0 for success | 305 | * Returns: 0 for success |
310 | **/ | 306 | */ |
311 | int fcoe_load_transport_driver(struct net_device *netdev) | 307 | int fcoe_load_transport_driver(struct net_device *netdev) |
312 | { | 308 | { |
313 | struct pci_dev *pci; | 309 | struct pci_dev *pci; |
@@ -335,14 +331,14 @@ int fcoe_load_transport_driver(struct net_device *netdev) | |||
335 | EXPORT_SYMBOL_GPL(fcoe_load_transport_driver); | 331 | EXPORT_SYMBOL_GPL(fcoe_load_transport_driver); |
336 | 332 | ||
337 | /** | 333 | /** |
338 | * fcoe_transport_attach - load transport to fcoe | 334 | * fcoe_transport_attach() - Load transport to fcoe |
339 | * @netdev: the netdev the transport to be attached to | 335 | * @netdev: the netdev the transport to be attached to |
340 | * | 336 | * |
341 | * This will look for existing offload driver, if not found, it falls back to | 337 | * This will look for existing offload driver, if not found, it falls back to |
342 | * the default sw hba (fcoe_sw) as its fcoe transport. | 338 | * the default sw hba (fcoe_sw) as its fcoe transport. |
343 | * | 339 | * |
344 | * Returns: 0 for success | 340 | * Returns: 0 for success |
345 | **/ | 341 | */ |
346 | int fcoe_transport_attach(struct net_device *netdev) | 342 | int fcoe_transport_attach(struct net_device *netdev) |
347 | { | 343 | { |
348 | struct fcoe_transport *t; | 344 | struct fcoe_transport *t; |
@@ -373,11 +369,11 @@ int fcoe_transport_attach(struct net_device *netdev) | |||
373 | EXPORT_SYMBOL_GPL(fcoe_transport_attach); | 369 | EXPORT_SYMBOL_GPL(fcoe_transport_attach); |
374 | 370 | ||
375 | /** | 371 | /** |
376 | * fcoe_transport_release - unload transport from fcoe | 372 | * fcoe_transport_release() - Unload transport from fcoe |
377 | * @netdev: the net device on which fcoe is to be released | 373 | * @netdev: the net device on which fcoe is to be released |
378 | * | 374 | * |
379 | * Returns: 0 for success | 375 | * Returns: 0 for success |
380 | **/ | 376 | */ |
381 | int fcoe_transport_release(struct net_device *netdev) | 377 | int fcoe_transport_release(struct net_device *netdev) |
382 | { | 378 | { |
383 | struct fcoe_transport *t; | 379 | struct fcoe_transport *t; |
@@ -410,12 +406,12 @@ int fcoe_transport_release(struct net_device *netdev) | |||
410 | EXPORT_SYMBOL_GPL(fcoe_transport_release); | 406 | EXPORT_SYMBOL_GPL(fcoe_transport_release); |
411 | 407 | ||
412 | /** | 408 | /** |
413 | * fcoe_transport_init - initializes fcoe transport layer | 409 | * fcoe_transport_init() - Initializes fcoe transport layer |
414 | * | 410 | * |
415 | * This prepares for the fcoe transport layer | 411 | * This prepares for the fcoe transport layer |
416 | * | 412 | * |
417 | * Returns: none | 413 | * Returns: none |
418 | **/ | 414 | */ |
419 | int __init fcoe_transport_init(void) | 415 | int __init fcoe_transport_init(void) |
420 | { | 416 | { |
421 | INIT_LIST_HEAD(&fcoe_transports); | 417 | INIT_LIST_HEAD(&fcoe_transports); |
@@ -424,12 +420,13 @@ int __init fcoe_transport_init(void) | |||
424 | } | 420 | } |
425 | 421 | ||
426 | /** | 422 | /** |
427 | * fcoe_transport_exit - cleans up the fcoe transport layer | 423 | * fcoe_transport_exit() - Cleans up the fcoe transport layer |
424 | * | ||
428 | * This cleans up the fcoe transport layer. removing any transport on the list, | 425 | * This cleans up the fcoe transport layer. removing any transport on the list, |
429 | * note that the transport destroy func is not called here. | 426 | * note that the transport destroy func is not called here. |
430 | * | 427 | * |
431 | * Returns: none | 428 | * Returns: none |
432 | **/ | 429 | */ |
433 | int __exit fcoe_transport_exit(void) | 430 | int __exit fcoe_transport_exit(void) |
434 | { | 431 | { |
435 | struct fcoe_transport *t, *tmp; | 432 | struct fcoe_transport *t, *tmp; |
diff --git a/drivers/scsi/fcoe/fcoe_sw.c b/drivers/scsi/fcoe/fcoe_sw.c index dc4cd5e25760..da210eba1941 100644 --- a/drivers/scsi/fcoe/fcoe_sw.c +++ b/drivers/scsi/fcoe/fcoe_sw.c | |||
@@ -104,19 +104,19 @@ static struct scsi_host_template fcoe_sw_shost_template = { | |||
104 | .max_sectors = 0xffff, | 104 | .max_sectors = 0xffff, |
105 | }; | 105 | }; |
106 | 106 | ||
107 | /* | 107 | /** |
108 | * fcoe_sw_lport_config - sets up the fc_lport | 108 | * fcoe_sw_lport_config() - sets up the fc_lport |
109 | * @lp: ptr to the fc_lport | 109 | * @lp: ptr to the fc_lport |
110 | * @shost: ptr to the parent scsi host | 110 | * @shost: ptr to the parent scsi host |
111 | * | 111 | * |
112 | * Returns: 0 for success | 112 | * Returns: 0 for success |
113 | * | ||
114 | */ | 113 | */ |
115 | static int fcoe_sw_lport_config(struct fc_lport *lp) | 114 | static int fcoe_sw_lport_config(struct fc_lport *lp) |
116 | { | 115 | { |
117 | int i = 0; | 116 | int i = 0; |
118 | 117 | ||
119 | lp->link_status = 0; | 118 | lp->link_up = 0; |
119 | lp->qfull = 0; | ||
120 | lp->max_retry_count = 3; | 120 | lp->max_retry_count = 3; |
121 | lp->e_d_tov = 2 * 1000; /* FC-FS default */ | 121 | lp->e_d_tov = 2 * 1000; /* FC-FS default */ |
122 | lp->r_a_tov = 2 * 2 * 1000; | 122 | lp->r_a_tov = 2 * 2 * 1000; |
@@ -136,16 +136,14 @@ static int fcoe_sw_lport_config(struct fc_lport *lp) | |||
136 | return 0; | 136 | return 0; |
137 | } | 137 | } |
138 | 138 | ||
139 | /* | 139 | /** |
140 | * fcoe_sw_netdev_config - sets up fcoe_softc for lport and network | 140 | * fcoe_sw_netdev_config() - Set up netdev for SW FCoE |
141 | * related properties | ||
142 | * @lp : ptr to the fc_lport | 141 | * @lp : ptr to the fc_lport |
143 | * @netdev : ptr to the associated netdevice struct | 142 | * @netdev : ptr to the associated netdevice struct |
144 | * | 143 | * |
145 | * Must be called after fcoe_sw_lport_config() as it will use lport mutex | 144 | * Must be called after fcoe_sw_lport_config() as it will use lport mutex |
146 | * | 145 | * |
147 | * Returns : 0 for success | 146 | * Returns : 0 for success |
148 | * | ||
149 | */ | 147 | */ |
150 | static int fcoe_sw_netdev_config(struct fc_lport *lp, struct net_device *netdev) | 148 | static int fcoe_sw_netdev_config(struct fc_lport *lp, struct net_device *netdev) |
151 | { | 149 | { |
@@ -181,9 +179,8 @@ static int fcoe_sw_netdev_config(struct fc_lport *lp, struct net_device *netdev) | |||
181 | if (fc_set_mfs(lp, mfs)) | 179 | if (fc_set_mfs(lp, mfs)) |
182 | return -EINVAL; | 180 | return -EINVAL; |
183 | 181 | ||
184 | lp->link_status = ~FC_PAUSE & ~FC_LINK_UP; | ||
185 | if (!fcoe_link_ok(lp)) | 182 | if (!fcoe_link_ok(lp)) |
186 | lp->link_status |= FC_LINK_UP; | 183 | lp->link_up = 1; |
187 | 184 | ||
188 | /* offload features support */ | 185 | /* offload features support */ |
189 | if (fc->real_dev->features & NETIF_F_SG) | 186 | if (fc->real_dev->features & NETIF_F_SG) |
@@ -191,6 +188,7 @@ static int fcoe_sw_netdev_config(struct fc_lport *lp, struct net_device *netdev) | |||
191 | 188 | ||
192 | 189 | ||
193 | skb_queue_head_init(&fc->fcoe_pending_queue); | 190 | skb_queue_head_init(&fc->fcoe_pending_queue); |
191 | fc->fcoe_pending_queue_active = 0; | ||
194 | 192 | ||
195 | /* setup Source Mac Address */ | 193 | /* setup Source Mac Address */ |
196 | memcpy(fc->ctl_src_addr, fc->real_dev->dev_addr, | 194 | memcpy(fc->ctl_src_addr, fc->real_dev->dev_addr, |
@@ -224,16 +222,15 @@ static int fcoe_sw_netdev_config(struct fc_lport *lp, struct net_device *netdev) | |||
224 | return 0; | 222 | return 0; |
225 | } | 223 | } |
226 | 224 | ||
227 | /* | 225 | /** |
228 | * fcoe_sw_shost_config - sets up fc_lport->host | 226 | * fcoe_sw_shost_config() - Sets up fc_lport->host |
229 | * @lp : ptr to the fc_lport | 227 | * @lp : ptr to the fc_lport |
230 | * @shost : ptr to the associated scsi host | 228 | * @shost : ptr to the associated scsi host |
231 | * @dev : device associated to scsi host | 229 | * @dev : device associated to scsi host |
232 | * | 230 | * |
233 | * Must be called after fcoe_sw_lport_config) and fcoe_sw_netdev_config() | 231 | * Must be called after fcoe_sw_lport_config() and fcoe_sw_netdev_config() |
234 | * | 232 | * |
235 | * Returns : 0 for success | 233 | * Returns : 0 for success |
236 | * | ||
237 | */ | 234 | */ |
238 | static int fcoe_sw_shost_config(struct fc_lport *lp, struct Scsi_Host *shost, | 235 | static int fcoe_sw_shost_config(struct fc_lport *lp, struct Scsi_Host *shost, |
239 | struct device *dev) | 236 | struct device *dev) |
@@ -261,8 +258,8 @@ static int fcoe_sw_shost_config(struct fc_lport *lp, struct Scsi_Host *shost, | |||
261 | return 0; | 258 | return 0; |
262 | } | 259 | } |
263 | 260 | ||
264 | /* | 261 | /** |
265 | * fcoe_sw_em_config - allocates em for this lport | 262 | * fcoe_sw_em_config() - allocates em for this lport |
266 | * @lp: the port that em is to allocated for | 263 | * @lp: the port that em is to allocated for |
267 | * | 264 | * |
268 | * Returns : 0 on success | 265 | * Returns : 0 on success |
@@ -279,8 +276,8 @@ static inline int fcoe_sw_em_config(struct fc_lport *lp) | |||
279 | return 0; | 276 | return 0; |
280 | } | 277 | } |
281 | 278 | ||
282 | /* | 279 | /** |
283 | * fcoe_sw_destroy - FCoE software HBA tear-down function | 280 | * fcoe_sw_destroy() - FCoE software HBA tear-down function |
284 | * @netdev: ptr to the associated net_device | 281 | * @netdev: ptr to the associated net_device |
285 | * | 282 | * |
286 | * Returns: 0 if link is OK for use by FCoE. | 283 | * Returns: 0 if link is OK for use by FCoE. |
@@ -301,7 +298,7 @@ static int fcoe_sw_destroy(struct net_device *netdev) | |||
301 | if (!lp) | 298 | if (!lp) |
302 | return -ENODEV; | 299 | return -ENODEV; |
303 | 300 | ||
304 | fc = fcoe_softc(lp); | 301 | fc = lport_priv(lp); |
305 | 302 | ||
306 | /* Logout of the fabric */ | 303 | /* Logout of the fabric */ |
307 | fc_fabric_logoff(lp); | 304 | fc_fabric_logoff(lp); |
@@ -353,8 +350,8 @@ static struct libfc_function_template fcoe_sw_libfc_fcn_templ = { | |||
353 | .frame_send = fcoe_xmit, | 350 | .frame_send = fcoe_xmit, |
354 | }; | 351 | }; |
355 | 352 | ||
356 | /* | 353 | /** |
357 | * fcoe_sw_create - this function creates the fcoe interface | 354 | * fcoe_sw_create() - this function creates the fcoe interface |
358 | * @netdev: pointer the associated netdevice | 355 | * @netdev: pointer the associated netdevice |
359 | * | 356 | * |
360 | * Creates fc_lport struct and scsi_host for lport, configures lport | 357 | * Creates fc_lport struct and scsi_host for lport, configures lport |
@@ -440,8 +437,8 @@ out_host_put: | |||
440 | return rc; | 437 | return rc; |
441 | } | 438 | } |
442 | 439 | ||
443 | /* | 440 | /** |
444 | * fcoe_sw_match - the fcoe sw transport match function | 441 | * fcoe_sw_match() - The FCoE SW transport match function |
445 | * | 442 | * |
446 | * Returns : false always | 443 | * Returns : false always |
447 | */ | 444 | */ |
@@ -461,8 +458,8 @@ struct fcoe_transport fcoe_sw_transport = { | |||
461 | .device = 0xffff, | 458 | .device = 0xffff, |
462 | }; | 459 | }; |
463 | 460 | ||
464 | /* | 461 | /** |
465 | * fcoe_sw_init - registers fcoe_sw_transport | 462 | * fcoe_sw_init() - Registers fcoe_sw_transport |
466 | * | 463 | * |
467 | * Returns : 0 on success | 464 | * Returns : 0 on success |
468 | */ | 465 | */ |
@@ -471,17 +468,22 @@ int __init fcoe_sw_init(void) | |||
471 | /* attach to scsi transport */ | 468 | /* attach to scsi transport */ |
472 | scsi_transport_fcoe_sw = | 469 | scsi_transport_fcoe_sw = |
473 | fc_attach_transport(&fcoe_sw_transport_function); | 470 | fc_attach_transport(&fcoe_sw_transport_function); |
471 | |||
474 | if (!scsi_transport_fcoe_sw) { | 472 | if (!scsi_transport_fcoe_sw) { |
475 | printk(KERN_ERR "fcoe_sw_init:fc_attach_transport() failed\n"); | 473 | printk(KERN_ERR "fcoe_sw_init:fc_attach_transport() failed\n"); |
476 | return -ENODEV; | 474 | return -ENODEV; |
477 | } | 475 | } |
476 | |||
477 | mutex_init(&fcoe_sw_transport.devlock); | ||
478 | INIT_LIST_HEAD(&fcoe_sw_transport.devlist); | ||
479 | |||
478 | /* register sw transport */ | 480 | /* register sw transport */ |
479 | fcoe_transport_register(&fcoe_sw_transport); | 481 | fcoe_transport_register(&fcoe_sw_transport); |
480 | return 0; | 482 | return 0; |
481 | } | 483 | } |
482 | 484 | ||
483 | /* | 485 | /** |
484 | * fcoe_sw_exit - unregisters fcoe_sw_transport | 486 | * fcoe_sw_exit() - Unregisters fcoe_sw_transport |
485 | * | 487 | * |
486 | * Returns : 0 on success | 488 | * Returns : 0 on success |
487 | */ | 489 | */ |
diff --git a/drivers/scsi/fcoe/libfcoe.c b/drivers/scsi/fcoe/libfcoe.c index e419f486cdb3..5548bf3bb58b 100644 --- a/drivers/scsi/fcoe/libfcoe.c +++ b/drivers/scsi/fcoe/libfcoe.c | |||
@@ -49,6 +49,7 @@ | |||
49 | static int debug_fcoe; | 49 | static int debug_fcoe; |
50 | 50 | ||
51 | #define FCOE_MAX_QUEUE_DEPTH 256 | 51 | #define FCOE_MAX_QUEUE_DEPTH 256 |
52 | #define FCOE_LOW_QUEUE_DEPTH 32 | ||
52 | 53 | ||
53 | /* destination address mode */ | 54 | /* destination address mode */ |
54 | #define FCOE_GW_ADDR_MODE 0x00 | 55 | #define FCOE_GW_ADDR_MODE 0x00 |
@@ -69,8 +70,6 @@ struct fcoe_percpu_s *fcoe_percpu[NR_CPUS]; | |||
69 | 70 | ||
70 | /* Function Prototyes */ | 71 | /* Function Prototyes */ |
71 | static int fcoe_check_wait_queue(struct fc_lport *); | 72 | static int fcoe_check_wait_queue(struct fc_lport *); |
72 | static void fcoe_insert_wait_queue_head(struct fc_lport *, struct sk_buff *); | ||
73 | static void fcoe_insert_wait_queue(struct fc_lport *, struct sk_buff *); | ||
74 | static void fcoe_recv_flogi(struct fcoe_softc *, struct fc_frame *, u8 *); | 73 | static void fcoe_recv_flogi(struct fcoe_softc *, struct fc_frame *, u8 *); |
75 | #ifdef CONFIG_HOTPLUG_CPU | 74 | #ifdef CONFIG_HOTPLUG_CPU |
76 | static int fcoe_cpu_callback(struct notifier_block *, ulong, void *); | 75 | static int fcoe_cpu_callback(struct notifier_block *, ulong, void *); |
@@ -91,13 +90,13 @@ static struct notifier_block fcoe_cpu_notifier = { | |||
91 | }; | 90 | }; |
92 | 91 | ||
93 | /** | 92 | /** |
94 | * fcoe_create_percpu_data - creates the associated cpu data | 93 | * fcoe_create_percpu_data() - creates the associated cpu data |
95 | * @cpu: index for the cpu where fcoe cpu data will be created | 94 | * @cpu: index for the cpu where fcoe cpu data will be created |
96 | * | 95 | * |
97 | * create percpu stats block, from cpu add notifier | 96 | * create percpu stats block, from cpu add notifier |
98 | * | 97 | * |
99 | * Returns: none | 98 | * Returns: none |
100 | **/ | 99 | */ |
101 | static void fcoe_create_percpu_data(int cpu) | 100 | static void fcoe_create_percpu_data(int cpu) |
102 | { | 101 | { |
103 | struct fc_lport *lp; | 102 | struct fc_lport *lp; |
@@ -115,13 +114,13 @@ static void fcoe_create_percpu_data(int cpu) | |||
115 | } | 114 | } |
116 | 115 | ||
117 | /** | 116 | /** |
118 | * fcoe_destroy_percpu_data - destroys the associated cpu data | 117 | * fcoe_destroy_percpu_data() - destroys the associated cpu data |
119 | * @cpu: index for the cpu where fcoe cpu data will destroyed | 118 | * @cpu: index for the cpu where fcoe cpu data will destroyed |
120 | * | 119 | * |
121 | * destroy percpu stats block called by cpu add/remove notifier | 120 | * destroy percpu stats block called by cpu add/remove notifier |
122 | * | 121 | * |
123 | * Retuns: none | 122 | * Retuns: none |
124 | **/ | 123 | */ |
125 | static void fcoe_destroy_percpu_data(int cpu) | 124 | static void fcoe_destroy_percpu_data(int cpu) |
126 | { | 125 | { |
127 | struct fc_lport *lp; | 126 | struct fc_lport *lp; |
@@ -137,7 +136,7 @@ static void fcoe_destroy_percpu_data(int cpu) | |||
137 | } | 136 | } |
138 | 137 | ||
139 | /** | 138 | /** |
140 | * fcoe_cpu_callback - fcoe cpu hotplug event callback | 139 | * fcoe_cpu_callback() - fcoe cpu hotplug event callback |
141 | * @nfb: callback data block | 140 | * @nfb: callback data block |
142 | * @action: event triggering the callback | 141 | * @action: event triggering the callback |
143 | * @hcpu: index for the cpu of this event | 142 | * @hcpu: index for the cpu of this event |
@@ -145,7 +144,7 @@ static void fcoe_destroy_percpu_data(int cpu) | |||
145 | * this creates or destroys per cpu data for fcoe | 144 | * this creates or destroys per cpu data for fcoe |
146 | * | 145 | * |
147 | * Returns NOTIFY_OK always. | 146 | * Returns NOTIFY_OK always. |
148 | **/ | 147 | */ |
149 | static int fcoe_cpu_callback(struct notifier_block *nfb, unsigned long action, | 148 | static int fcoe_cpu_callback(struct notifier_block *nfb, unsigned long action, |
150 | void *hcpu) | 149 | void *hcpu) |
151 | { | 150 | { |
@@ -166,7 +165,7 @@ static int fcoe_cpu_callback(struct notifier_block *nfb, unsigned long action, | |||
166 | #endif /* CONFIG_HOTPLUG_CPU */ | 165 | #endif /* CONFIG_HOTPLUG_CPU */ |
167 | 166 | ||
168 | /** | 167 | /** |
169 | * fcoe_rcv - this is the fcoe receive function called by NET_RX_SOFTIRQ | 168 | * fcoe_rcv() - this is the fcoe receive function called by NET_RX_SOFTIRQ |
170 | * @skb: the receive skb | 169 | * @skb: the receive skb |
171 | * @dev: associated net device | 170 | * @dev: associated net device |
172 | * @ptype: context | 171 | * @ptype: context |
@@ -175,7 +174,7 @@ static int fcoe_cpu_callback(struct notifier_block *nfb, unsigned long action, | |||
175 | * this function will receive the packet and build fc frame and pass it up | 174 | * this function will receive the packet and build fc frame and pass it up |
176 | * | 175 | * |
177 | * Returns: 0 for success | 176 | * Returns: 0 for success |
178 | **/ | 177 | */ |
179 | int fcoe_rcv(struct sk_buff *skb, struct net_device *dev, | 178 | int fcoe_rcv(struct sk_buff *skb, struct net_device *dev, |
180 | struct packet_type *ptype, struct net_device *olddev) | 179 | struct packet_type *ptype, struct net_device *olddev) |
181 | { | 180 | { |
@@ -265,11 +264,11 @@ err2: | |||
265 | EXPORT_SYMBOL_GPL(fcoe_rcv); | 264 | EXPORT_SYMBOL_GPL(fcoe_rcv); |
266 | 265 | ||
267 | /** | 266 | /** |
268 | * fcoe_start_io - pass to netdev to start xmit for fcoe | 267 | * fcoe_start_io() - pass to netdev to start xmit for fcoe |
269 | * @skb: the skb to be xmitted | 268 | * @skb: the skb to be xmitted |
270 | * | 269 | * |
271 | * Returns: 0 for success | 270 | * Returns: 0 for success |
272 | **/ | 271 | */ |
273 | static inline int fcoe_start_io(struct sk_buff *skb) | 272 | static inline int fcoe_start_io(struct sk_buff *skb) |
274 | { | 273 | { |
275 | int rc; | 274 | int rc; |
@@ -283,12 +282,12 @@ static inline int fcoe_start_io(struct sk_buff *skb) | |||
283 | } | 282 | } |
284 | 283 | ||
285 | /** | 284 | /** |
286 | * fcoe_get_paged_crc_eof - in case we need alloc a page for crc_eof | 285 | * fcoe_get_paged_crc_eof() - in case we need alloc a page for crc_eof |
287 | * @skb: the skb to be xmitted | 286 | * @skb: the skb to be xmitted |
288 | * @tlen: total len | 287 | * @tlen: total len |
289 | * | 288 | * |
290 | * Returns: 0 for success | 289 | * Returns: 0 for success |
291 | **/ | 290 | */ |
292 | static int fcoe_get_paged_crc_eof(struct sk_buff *skb, int tlen) | 291 | static int fcoe_get_paged_crc_eof(struct sk_buff *skb, int tlen) |
293 | { | 292 | { |
294 | struct fcoe_percpu_s *fps; | 293 | struct fcoe_percpu_s *fps; |
@@ -326,13 +325,12 @@ static int fcoe_get_paged_crc_eof(struct sk_buff *skb, int tlen) | |||
326 | } | 325 | } |
327 | 326 | ||
328 | /** | 327 | /** |
329 | * fcoe_fc_crc - calculates FC CRC in this fcoe skb | 328 | * fcoe_fc_crc() - calculates FC CRC in this fcoe skb |
330 | * @fp: the fc_frame containg data to be checksummed | 329 | * @fp: the fc_frame containg data to be checksummed |
331 | * | 330 | * |
332 | * This uses crc32() to calculate the crc for fc frame | 331 | * This uses crc32() to calculate the crc for fc frame |
333 | * Return : 32 bit crc | 332 | * Return : 32 bit crc |
334 | * | 333 | */ |
335 | **/ | ||
336 | u32 fcoe_fc_crc(struct fc_frame *fp) | 334 | u32 fcoe_fc_crc(struct fc_frame *fp) |
337 | { | 335 | { |
338 | struct sk_buff *skb = fp_skb(fp); | 336 | struct sk_buff *skb = fp_skb(fp); |
@@ -363,13 +361,12 @@ u32 fcoe_fc_crc(struct fc_frame *fp) | |||
363 | EXPORT_SYMBOL_GPL(fcoe_fc_crc); | 361 | EXPORT_SYMBOL_GPL(fcoe_fc_crc); |
364 | 362 | ||
365 | /** | 363 | /** |
366 | * fcoe_xmit - FCoE frame transmit function | 364 | * fcoe_xmit() - FCoE frame transmit function |
367 | * @lp: the associated local port | 365 | * @lp: the associated local port |
368 | * @fp: the fc_frame to be transmitted | 366 | * @fp: the fc_frame to be transmitted |
369 | * | 367 | * |
370 | * Return : 0 for success | 368 | * Return : 0 for success |
371 | * | 369 | */ |
372 | **/ | ||
373 | int fcoe_xmit(struct fc_lport *lp, struct fc_frame *fp) | 370 | int fcoe_xmit(struct fc_lport *lp, struct fc_frame *fp) |
374 | { | 371 | { |
375 | int wlen, rc = 0; | 372 | int wlen, rc = 0; |
@@ -389,7 +386,7 @@ int fcoe_xmit(struct fc_lport *lp, struct fc_frame *fp) | |||
389 | 386 | ||
390 | WARN_ON((fr_len(fp) % sizeof(u32)) != 0); | 387 | WARN_ON((fr_len(fp) % sizeof(u32)) != 0); |
391 | 388 | ||
392 | fc = fcoe_softc(lp); | 389 | fc = lport_priv(lp); |
393 | /* | 390 | /* |
394 | * if it is a flogi then we need to learn gw-addr | 391 | * if it is a flogi then we need to learn gw-addr |
395 | * and my own fcid | 392 | * and my own fcid |
@@ -439,7 +436,7 @@ int fcoe_xmit(struct fc_lport *lp, struct fc_frame *fp) | |||
439 | if (skb_is_nonlinear(skb)) { | 436 | if (skb_is_nonlinear(skb)) { |
440 | skb_frag_t *frag; | 437 | skb_frag_t *frag; |
441 | if (fcoe_get_paged_crc_eof(skb, tlen)) { | 438 | if (fcoe_get_paged_crc_eof(skb, tlen)) { |
442 | kfree(skb); | 439 | kfree_skb(skb); |
443 | return -ENOMEM; | 440 | return -ENOMEM; |
444 | } | 441 | } |
445 | frag = &skb_shinfo(skb)->frags[skb_shinfo(skb)->nr_frags - 1]; | 442 | frag = &skb_shinfo(skb)->frags[skb_shinfo(skb)->nr_frags - 1]; |
@@ -502,21 +499,22 @@ int fcoe_xmit(struct fc_lport *lp, struct fc_frame *fp) | |||
502 | rc = fcoe_start_io(skb); | 499 | rc = fcoe_start_io(skb); |
503 | 500 | ||
504 | if (rc) { | 501 | if (rc) { |
505 | fcoe_insert_wait_queue(lp, skb); | 502 | spin_lock_bh(&fc->fcoe_pending_queue.lock); |
503 | __skb_queue_tail(&fc->fcoe_pending_queue, skb); | ||
504 | spin_unlock_bh(&fc->fcoe_pending_queue.lock); | ||
506 | if (fc->fcoe_pending_queue.qlen > FCOE_MAX_QUEUE_DEPTH) | 505 | if (fc->fcoe_pending_queue.qlen > FCOE_MAX_QUEUE_DEPTH) |
507 | fc_pause(lp); | 506 | lp->qfull = 1; |
508 | } | 507 | } |
509 | 508 | ||
510 | return 0; | 509 | return 0; |
511 | } | 510 | } |
512 | EXPORT_SYMBOL_GPL(fcoe_xmit); | 511 | EXPORT_SYMBOL_GPL(fcoe_xmit); |
513 | 512 | ||
514 | /* | 513 | /** |
515 | * fcoe_percpu_receive_thread - recv thread per cpu | 514 | * fcoe_percpu_receive_thread() - recv thread per cpu |
516 | * @arg: ptr to the fcoe per cpu struct | 515 | * @arg: ptr to the fcoe per cpu struct |
517 | * | 516 | * |
518 | * Return: 0 for success | 517 | * Return: 0 for success |
519 | * | ||
520 | */ | 518 | */ |
521 | int fcoe_percpu_receive_thread(void *arg) | 519 | int fcoe_percpu_receive_thread(void *arg) |
522 | { | 520 | { |
@@ -533,7 +531,7 @@ int fcoe_percpu_receive_thread(void *arg) | |||
533 | struct fcoe_softc *fc; | 531 | struct fcoe_softc *fc; |
534 | struct fcoe_hdr *hp; | 532 | struct fcoe_hdr *hp; |
535 | 533 | ||
536 | set_user_nice(current, 19); | 534 | set_user_nice(current, -20); |
537 | 535 | ||
538 | while (!kthread_should_stop()) { | 536 | while (!kthread_should_stop()) { |
539 | 537 | ||
@@ -658,7 +656,7 @@ int fcoe_percpu_receive_thread(void *arg) | |||
658 | } | 656 | } |
659 | 657 | ||
660 | /** | 658 | /** |
661 | * fcoe_recv_flogi - flogi receive function | 659 | * fcoe_recv_flogi() - flogi receive function |
662 | * @fc: associated fcoe_softc | 660 | * @fc: associated fcoe_softc |
663 | * @fp: the recieved frame | 661 | * @fp: the recieved frame |
664 | * @sa: the source address of this flogi | 662 | * @sa: the source address of this flogi |
@@ -667,7 +665,7 @@ int fcoe_percpu_receive_thread(void *arg) | |||
667 | * mac address for the initiator, eitehr OUI based or GW based. | 665 | * mac address for the initiator, eitehr OUI based or GW based. |
668 | * | 666 | * |
669 | * Returns: none | 667 | * Returns: none |
670 | **/ | 668 | */ |
671 | static void fcoe_recv_flogi(struct fcoe_softc *fc, struct fc_frame *fp, u8 *sa) | 669 | static void fcoe_recv_flogi(struct fcoe_softc *fc, struct fc_frame *fp, u8 *sa) |
672 | { | 670 | { |
673 | struct fc_frame_header *fh; | 671 | struct fc_frame_header *fh; |
@@ -715,32 +713,23 @@ static void fcoe_recv_flogi(struct fcoe_softc *fc, struct fc_frame *fp, u8 *sa) | |||
715 | } | 713 | } |
716 | 714 | ||
717 | /** | 715 | /** |
718 | * fcoe_watchdog - fcoe timer callback | 716 | * fcoe_watchdog() - fcoe timer callback |
719 | * @vp: | 717 | * @vp: |
720 | * | 718 | * |
721 | * This checks the pending queue length for fcoe and put fcoe to be paused state | 719 | * This checks the pending queue length for fcoe and set lport qfull |
722 | * if the FCOE_MAX_QUEUE_DEPTH is reached. This is done for all fc_lport on the | 720 | * if the FCOE_MAX_QUEUE_DEPTH is reached. This is done for all fc_lport on the |
723 | * fcoe_hostlist. | 721 | * fcoe_hostlist. |
724 | * | 722 | * |
725 | * Returns: 0 for success | 723 | * Returns: 0 for success |
726 | **/ | 724 | */ |
727 | void fcoe_watchdog(ulong vp) | 725 | void fcoe_watchdog(ulong vp) |
728 | { | 726 | { |
729 | struct fc_lport *lp; | ||
730 | struct fcoe_softc *fc; | 727 | struct fcoe_softc *fc; |
731 | int paused = 0; | ||
732 | 728 | ||
733 | read_lock(&fcoe_hostlist_lock); | 729 | read_lock(&fcoe_hostlist_lock); |
734 | list_for_each_entry(fc, &fcoe_hostlist, list) { | 730 | list_for_each_entry(fc, &fcoe_hostlist, list) { |
735 | lp = fc->lp; | 731 | if (fc->lp) |
736 | if (lp) { | 732 | fcoe_check_wait_queue(fc->lp); |
737 | if (fc->fcoe_pending_queue.qlen > FCOE_MAX_QUEUE_DEPTH) | ||
738 | paused = 1; | ||
739 | if (fcoe_check_wait_queue(lp) < FCOE_MAX_QUEUE_DEPTH) { | ||
740 | if (paused) | ||
741 | fc_unpause(lp); | ||
742 | } | ||
743 | } | ||
744 | } | 733 | } |
745 | read_unlock(&fcoe_hostlist_lock); | 734 | read_unlock(&fcoe_hostlist_lock); |
746 | 735 | ||
@@ -750,96 +739,64 @@ void fcoe_watchdog(ulong vp) | |||
750 | 739 | ||
751 | 740 | ||
752 | /** | 741 | /** |
753 | * fcoe_check_wait_queue - put the skb into fcoe pending xmit queue | 742 | * fcoe_check_wait_queue() - put the skb into fcoe pending xmit queue |
754 | * @lp: the fc_port for this skb | 743 | * @lp: the fc_port for this skb |
755 | * @skb: the associated skb to be xmitted | 744 | * @skb: the associated skb to be xmitted |
756 | * | 745 | * |
757 | * This empties the wait_queue, dequeue the head of the wait_queue queue | 746 | * This empties the wait_queue, dequeue the head of the wait_queue queue |
758 | * and calls fcoe_start_io() for each packet, if all skb have been | 747 | * and calls fcoe_start_io() for each packet, if all skb have been |
759 | * transmitted, return 0 if a error occurs, then restore wait_queue and | 748 | * transmitted, return qlen or -1 if a error occurs, then restore |
760 | * try again later. | 749 | * wait_queue and try again later. |
761 | * | 750 | * |
762 | * The wait_queue is used when the skb transmit fails. skb will go | 751 | * The wait_queue is used when the skb transmit fails. skb will go |
763 | * in the wait_queue which will be emptied by the time function OR | 752 | * in the wait_queue which will be emptied by the time function OR |
764 | * by the next skb transmit. | 753 | * by the next skb transmit. |
765 | * | 754 | * |
766 | * Returns: 0 for success | 755 | * Returns: 0 for success |
767 | **/ | 756 | */ |
768 | static int fcoe_check_wait_queue(struct fc_lport *lp) | 757 | static int fcoe_check_wait_queue(struct fc_lport *lp) |
769 | { | 758 | { |
770 | int rc, unpause = 0; | 759 | struct fcoe_softc *fc = lport_priv(lp); |
771 | int paused = 0; | ||
772 | struct sk_buff *skb; | 760 | struct sk_buff *skb; |
773 | struct fcoe_softc *fc; | 761 | int rc = -1; |
774 | 762 | ||
775 | fc = fcoe_softc(lp); | ||
776 | spin_lock_bh(&fc->fcoe_pending_queue.lock); | 763 | spin_lock_bh(&fc->fcoe_pending_queue.lock); |
764 | if (fc->fcoe_pending_queue_active) | ||
765 | goto out; | ||
766 | fc->fcoe_pending_queue_active = 1; | ||
777 | 767 | ||
778 | /* | 768 | while (fc->fcoe_pending_queue.qlen) { |
779 | * is this interface paused? | 769 | /* keep qlen > 0 until fcoe_start_io succeeds */ |
780 | */ | 770 | fc->fcoe_pending_queue.qlen++; |
781 | if (fc->fcoe_pending_queue.qlen > FCOE_MAX_QUEUE_DEPTH) | 771 | skb = __skb_dequeue(&fc->fcoe_pending_queue); |
782 | paused = 1; | ||
783 | if (fc->fcoe_pending_queue.qlen) { | ||
784 | while ((skb = __skb_dequeue(&fc->fcoe_pending_queue)) != NULL) { | ||
785 | spin_unlock_bh(&fc->fcoe_pending_queue.lock); | ||
786 | rc = fcoe_start_io(skb); | ||
787 | if (rc) { | ||
788 | fcoe_insert_wait_queue_head(lp, skb); | ||
789 | return rc; | ||
790 | } | ||
791 | spin_lock_bh(&fc->fcoe_pending_queue.lock); | ||
792 | } | ||
793 | if (fc->fcoe_pending_queue.qlen < FCOE_MAX_QUEUE_DEPTH) | ||
794 | unpause = 1; | ||
795 | } | ||
796 | spin_unlock_bh(&fc->fcoe_pending_queue.lock); | ||
797 | if ((unpause) && (paused)) | ||
798 | fc_unpause(lp); | ||
799 | return fc->fcoe_pending_queue.qlen; | ||
800 | } | ||
801 | |||
802 | /** | ||
803 | * fcoe_insert_wait_queue_head - puts skb to fcoe pending queue head | ||
804 | * @lp: the fc_port for this skb | ||
805 | * @skb: the associated skb to be xmitted | ||
806 | * | ||
807 | * Returns: none | ||
808 | **/ | ||
809 | static void fcoe_insert_wait_queue_head(struct fc_lport *lp, | ||
810 | struct sk_buff *skb) | ||
811 | { | ||
812 | struct fcoe_softc *fc; | ||
813 | 772 | ||
814 | fc = fcoe_softc(lp); | 773 | spin_unlock_bh(&fc->fcoe_pending_queue.lock); |
815 | spin_lock_bh(&fc->fcoe_pending_queue.lock); | 774 | rc = fcoe_start_io(skb); |
816 | __skb_queue_head(&fc->fcoe_pending_queue, skb); | 775 | spin_lock_bh(&fc->fcoe_pending_queue.lock); |
817 | spin_unlock_bh(&fc->fcoe_pending_queue.lock); | ||
818 | } | ||
819 | 776 | ||
820 | /** | 777 | if (rc) { |
821 | * fcoe_insert_wait_queue - put the skb into fcoe pending queue tail | 778 | __skb_queue_head(&fc->fcoe_pending_queue, skb); |
822 | * @lp: the fc_port for this skb | 779 | /* undo temporary increment above */ |
823 | * @skb: the associated skb to be xmitted | 780 | fc->fcoe_pending_queue.qlen--; |
824 | * | 781 | break; |
825 | * Returns: none | 782 | } |
826 | **/ | 783 | /* undo temporary increment above */ |
827 | static void fcoe_insert_wait_queue(struct fc_lport *lp, | 784 | fc->fcoe_pending_queue.qlen--; |
828 | struct sk_buff *skb) | 785 | } |
829 | { | ||
830 | struct fcoe_softc *fc; | ||
831 | 786 | ||
832 | fc = fcoe_softc(lp); | 787 | if (fc->fcoe_pending_queue.qlen < FCOE_LOW_QUEUE_DEPTH) |
833 | spin_lock_bh(&fc->fcoe_pending_queue.lock); | 788 | lp->qfull = 0; |
834 | __skb_queue_tail(&fc->fcoe_pending_queue, skb); | 789 | fc->fcoe_pending_queue_active = 0; |
790 | rc = fc->fcoe_pending_queue.qlen; | ||
791 | out: | ||
835 | spin_unlock_bh(&fc->fcoe_pending_queue.lock); | 792 | spin_unlock_bh(&fc->fcoe_pending_queue.lock); |
793 | return rc; | ||
836 | } | 794 | } |
837 | 795 | ||
838 | /** | 796 | /** |
839 | * fcoe_dev_setup - setup link change notification interface | 797 | * fcoe_dev_setup() - setup link change notification interface |
840 | * | 798 | */ |
841 | **/ | 799 | static void fcoe_dev_setup() |
842 | static void fcoe_dev_setup(void) | ||
843 | { | 800 | { |
844 | /* | 801 | /* |
845 | * here setup a interface specific wd time to | 802 | * here setup a interface specific wd time to |
@@ -849,15 +806,15 @@ static void fcoe_dev_setup(void) | |||
849 | } | 806 | } |
850 | 807 | ||
851 | /** | 808 | /** |
852 | * fcoe_dev_setup - cleanup link change notification interface | 809 | * fcoe_dev_setup() - cleanup link change notification interface |
853 | **/ | 810 | */ |
854 | static void fcoe_dev_cleanup(void) | 811 | static void fcoe_dev_cleanup(void) |
855 | { | 812 | { |
856 | unregister_netdevice_notifier(&fcoe_notifier); | 813 | unregister_netdevice_notifier(&fcoe_notifier); |
857 | } | 814 | } |
858 | 815 | ||
859 | /** | 816 | /** |
860 | * fcoe_device_notification - netdev event notification callback | 817 | * fcoe_device_notification() - netdev event notification callback |
861 | * @notifier: context of the notification | 818 | * @notifier: context of the notification |
862 | * @event: type of event | 819 | * @event: type of event |
863 | * @ptr: fixed array for output parsed ifname | 820 | * @ptr: fixed array for output parsed ifname |
@@ -865,7 +822,7 @@ static void fcoe_dev_cleanup(void) | |||
865 | * This function is called by the ethernet driver in case of link change event | 822 | * This function is called by the ethernet driver in case of link change event |
866 | * | 823 | * |
867 | * Returns: 0 for success | 824 | * Returns: 0 for success |
868 | **/ | 825 | */ |
869 | static int fcoe_device_notification(struct notifier_block *notifier, | 826 | static int fcoe_device_notification(struct notifier_block *notifier, |
870 | ulong event, void *ptr) | 827 | ulong event, void *ptr) |
871 | { | 828 | { |
@@ -873,7 +830,7 @@ static int fcoe_device_notification(struct notifier_block *notifier, | |||
873 | struct net_device *real_dev = ptr; | 830 | struct net_device *real_dev = ptr; |
874 | struct fcoe_softc *fc; | 831 | struct fcoe_softc *fc; |
875 | struct fcoe_dev_stats *stats; | 832 | struct fcoe_dev_stats *stats; |
876 | u16 new_status; | 833 | u32 new_link_up; |
877 | u32 mfs; | 834 | u32 mfs; |
878 | int rc = NOTIFY_OK; | 835 | int rc = NOTIFY_OK; |
879 | 836 | ||
@@ -890,17 +847,15 @@ static int fcoe_device_notification(struct notifier_block *notifier, | |||
890 | goto out; | 847 | goto out; |
891 | } | 848 | } |
892 | 849 | ||
893 | new_status = lp->link_status; | 850 | new_link_up = lp->link_up; |
894 | switch (event) { | 851 | switch (event) { |
895 | case NETDEV_DOWN: | 852 | case NETDEV_DOWN: |
896 | case NETDEV_GOING_DOWN: | 853 | case NETDEV_GOING_DOWN: |
897 | new_status &= ~FC_LINK_UP; | 854 | new_link_up = 0; |
898 | break; | 855 | break; |
899 | case NETDEV_UP: | 856 | case NETDEV_UP: |
900 | case NETDEV_CHANGE: | 857 | case NETDEV_CHANGE: |
901 | new_status &= ~FC_LINK_UP; | 858 | new_link_up = !fcoe_link_ok(lp); |
902 | if (!fcoe_link_ok(lp)) | ||
903 | new_status |= FC_LINK_UP; | ||
904 | break; | 859 | break; |
905 | case NETDEV_CHANGEMTU: | 860 | case NETDEV_CHANGEMTU: |
906 | mfs = fc->real_dev->mtu - | 861 | mfs = fc->real_dev->mtu - |
@@ -908,17 +863,15 @@ static int fcoe_device_notification(struct notifier_block *notifier, | |||
908 | sizeof(struct fcoe_crc_eof)); | 863 | sizeof(struct fcoe_crc_eof)); |
909 | if (mfs >= FC_MIN_MAX_FRAME) | 864 | if (mfs >= FC_MIN_MAX_FRAME) |
910 | fc_set_mfs(lp, mfs); | 865 | fc_set_mfs(lp, mfs); |
911 | new_status &= ~FC_LINK_UP; | 866 | new_link_up = !fcoe_link_ok(lp); |
912 | if (!fcoe_link_ok(lp)) | ||
913 | new_status |= FC_LINK_UP; | ||
914 | break; | 867 | break; |
915 | case NETDEV_REGISTER: | 868 | case NETDEV_REGISTER: |
916 | break; | 869 | break; |
917 | default: | 870 | default: |
918 | FC_DBG("unknown event %ld call", event); | 871 | FC_DBG("unknown event %ld call", event); |
919 | } | 872 | } |
920 | if (lp->link_status != new_status) { | 873 | if (lp->link_up != new_link_up) { |
921 | if ((new_status & FC_LINK_UP) == FC_LINK_UP) | 874 | if (new_link_up) |
922 | fc_linkup(lp); | 875 | fc_linkup(lp); |
923 | else { | 876 | else { |
924 | stats = lp->dev_stats[smp_processor_id()]; | 877 | stats = lp->dev_stats[smp_processor_id()]; |
@@ -933,12 +886,12 @@ out: | |||
933 | } | 886 | } |
934 | 887 | ||
935 | /** | 888 | /** |
936 | * fcoe_if_to_netdev - parse a name buffer to get netdev | 889 | * fcoe_if_to_netdev() - parse a name buffer to get netdev |
937 | * @ifname: fixed array for output parsed ifname | 890 | * @ifname: fixed array for output parsed ifname |
938 | * @buffer: incoming buffer to be copied | 891 | * @buffer: incoming buffer to be copied |
939 | * | 892 | * |
940 | * Returns: NULL or ptr to netdeive | 893 | * Returns: NULL or ptr to netdeive |
941 | **/ | 894 | */ |
942 | static struct net_device *fcoe_if_to_netdev(const char *buffer) | 895 | static struct net_device *fcoe_if_to_netdev(const char *buffer) |
943 | { | 896 | { |
944 | char *cp; | 897 | char *cp; |
@@ -955,13 +908,13 @@ static struct net_device *fcoe_if_to_netdev(const char *buffer) | |||
955 | } | 908 | } |
956 | 909 | ||
957 | /** | 910 | /** |
958 | * fcoe_netdev_to_module_owner - finds out the nic drive moddule of the netdev | 911 | * fcoe_netdev_to_module_owner() - finds out the nic drive moddule of the netdev |
959 | * @netdev: the target netdev | 912 | * @netdev: the target netdev |
960 | * | 913 | * |
961 | * Returns: ptr to the struct module, NULL for failure | 914 | * Returns: ptr to the struct module, NULL for failure |
962 | **/ | 915 | */ |
963 | static struct module *fcoe_netdev_to_module_owner( | 916 | static struct module * |
964 | const struct net_device *netdev) | 917 | fcoe_netdev_to_module_owner(const struct net_device *netdev) |
965 | { | 918 | { |
966 | struct device *dev; | 919 | struct device *dev; |
967 | 920 | ||
@@ -979,12 +932,14 @@ static struct module *fcoe_netdev_to_module_owner( | |||
979 | } | 932 | } |
980 | 933 | ||
981 | /** | 934 | /** |
982 | * fcoe_ethdrv_get - holds the nic driver module by try_module_get() for | 935 | * fcoe_ethdrv_get() - Hold the Ethernet driver |
983 | * the corresponding netdev. | ||
984 | * @netdev: the target netdev | 936 | * @netdev: the target netdev |
985 | * | 937 | * |
938 | * Holds the Ethernet driver module by try_module_get() for | ||
939 | * the corresponding netdev. | ||
940 | * | ||
986 | * Returns: 0 for succsss | 941 | * Returns: 0 for succsss |
987 | **/ | 942 | */ |
988 | static int fcoe_ethdrv_get(const struct net_device *netdev) | 943 | static int fcoe_ethdrv_get(const struct net_device *netdev) |
989 | { | 944 | { |
990 | struct module *owner; | 945 | struct module *owner; |
@@ -999,12 +954,14 @@ static int fcoe_ethdrv_get(const struct net_device *netdev) | |||
999 | } | 954 | } |
1000 | 955 | ||
1001 | /** | 956 | /** |
1002 | * fcoe_ethdrv_get - releases the nic driver module by module_put for | 957 | * fcoe_ethdrv_put() - Release the Ethernet driver |
1003 | * the corresponding netdev. | ||
1004 | * @netdev: the target netdev | 958 | * @netdev: the target netdev |
1005 | * | 959 | * |
960 | * Releases the Ethernet driver module by module_put for | ||
961 | * the corresponding netdev. | ||
962 | * | ||
1006 | * Returns: 0 for succsss | 963 | * Returns: 0 for succsss |
1007 | **/ | 964 | */ |
1008 | static int fcoe_ethdrv_put(const struct net_device *netdev) | 965 | static int fcoe_ethdrv_put(const struct net_device *netdev) |
1009 | { | 966 | { |
1010 | struct module *owner; | 967 | struct module *owner; |
@@ -1020,12 +977,12 @@ static int fcoe_ethdrv_put(const struct net_device *netdev) | |||
1020 | } | 977 | } |
1021 | 978 | ||
1022 | /** | 979 | /** |
1023 | * fcoe_destroy- handles the destroy from sysfs | 980 | * fcoe_destroy() - handles the destroy from sysfs |
1024 | * @buffer: expcted to be a eth if name | 981 | * @buffer: expcted to be a eth if name |
1025 | * @kp: associated kernel param | 982 | * @kp: associated kernel param |
1026 | * | 983 | * |
1027 | * Returns: 0 for success | 984 | * Returns: 0 for success |
1028 | **/ | 985 | */ |
1029 | static int fcoe_destroy(const char *buffer, struct kernel_param *kp) | 986 | static int fcoe_destroy(const char *buffer, struct kernel_param *kp) |
1030 | { | 987 | { |
1031 | int rc; | 988 | int rc; |
@@ -1058,12 +1015,12 @@ out_nodev: | |||
1058 | } | 1015 | } |
1059 | 1016 | ||
1060 | /** | 1017 | /** |
1061 | * fcoe_create - handles the create call from sysfs | 1018 | * fcoe_create() - Handles the create call from sysfs |
1062 | * @buffer: expcted to be a eth if name | 1019 | * @buffer: expcted to be a eth if name |
1063 | * @kp: associated kernel param | 1020 | * @kp: associated kernel param |
1064 | * | 1021 | * |
1065 | * Returns: 0 for success | 1022 | * Returns: 0 for success |
1066 | **/ | 1023 | */ |
1067 | static int fcoe_create(const char *buffer, struct kernel_param *kp) | 1024 | static int fcoe_create(const char *buffer, struct kernel_param *kp) |
1068 | { | 1025 | { |
1069 | int rc; | 1026 | int rc; |
@@ -1104,8 +1061,8 @@ module_param_call(destroy, fcoe_destroy, NULL, NULL, S_IWUSR); | |||
1104 | __MODULE_PARM_TYPE(destroy, "string"); | 1061 | __MODULE_PARM_TYPE(destroy, "string"); |
1105 | MODULE_PARM_DESC(destroy, "Destroy fcoe port"); | 1062 | MODULE_PARM_DESC(destroy, "Destroy fcoe port"); |
1106 | 1063 | ||
1107 | /* | 1064 | /** |
1108 | * fcoe_link_ok - check if link is ok for the fc_lport | 1065 | * fcoe_link_ok() - Check if link is ok for the fc_lport |
1109 | * @lp: ptr to the fc_lport | 1066 | * @lp: ptr to the fc_lport |
1110 | * | 1067 | * |
1111 | * Any permanently-disqualifying conditions have been previously checked. | 1068 | * Any permanently-disqualifying conditions have been previously checked. |
@@ -1120,7 +1077,7 @@ MODULE_PARM_DESC(destroy, "Destroy fcoe port"); | |||
1120 | */ | 1077 | */ |
1121 | int fcoe_link_ok(struct fc_lport *lp) | 1078 | int fcoe_link_ok(struct fc_lport *lp) |
1122 | { | 1079 | { |
1123 | struct fcoe_softc *fc = fcoe_softc(lp); | 1080 | struct fcoe_softc *fc = lport_priv(lp); |
1124 | struct net_device *dev = fc->real_dev; | 1081 | struct net_device *dev = fc->real_dev; |
1125 | struct ethtool_cmd ecmd = { ETHTOOL_GSET }; | 1082 | struct ethtool_cmd ecmd = { ETHTOOL_GSET }; |
1126 | int rc = 0; | 1083 | int rc = 0; |
@@ -1149,9 +1106,8 @@ int fcoe_link_ok(struct fc_lport *lp) | |||
1149 | } | 1106 | } |
1150 | EXPORT_SYMBOL_GPL(fcoe_link_ok); | 1107 | EXPORT_SYMBOL_GPL(fcoe_link_ok); |
1151 | 1108 | ||
1152 | /* | 1109 | /** |
1153 | * fcoe_percpu_clean - frees skb of the corresponding lport from the per | 1110 | * fcoe_percpu_clean() - Clear the pending skbs for an lport |
1154 | * cpu queue. | ||
1155 | * @lp: the fc_lport | 1111 | * @lp: the fc_lport |
1156 | */ | 1112 | */ |
1157 | void fcoe_percpu_clean(struct fc_lport *lp) | 1113 | void fcoe_percpu_clean(struct fc_lport *lp) |
@@ -1185,11 +1141,11 @@ void fcoe_percpu_clean(struct fc_lport *lp) | |||
1185 | EXPORT_SYMBOL_GPL(fcoe_percpu_clean); | 1141 | EXPORT_SYMBOL_GPL(fcoe_percpu_clean); |
1186 | 1142 | ||
1187 | /** | 1143 | /** |
1188 | * fcoe_clean_pending_queue - dequeue skb and free it | 1144 | * fcoe_clean_pending_queue() - Dequeue a skb and free it |
1189 | * @lp: the corresponding fc_lport | 1145 | * @lp: the corresponding fc_lport |
1190 | * | 1146 | * |
1191 | * Returns: none | 1147 | * Returns: none |
1192 | **/ | 1148 | */ |
1193 | void fcoe_clean_pending_queue(struct fc_lport *lp) | 1149 | void fcoe_clean_pending_queue(struct fc_lport *lp) |
1194 | { | 1150 | { |
1195 | struct fcoe_softc *fc = lport_priv(lp); | 1151 | struct fcoe_softc *fc = lport_priv(lp); |
@@ -1206,21 +1162,21 @@ void fcoe_clean_pending_queue(struct fc_lport *lp) | |||
1206 | EXPORT_SYMBOL_GPL(fcoe_clean_pending_queue); | 1162 | EXPORT_SYMBOL_GPL(fcoe_clean_pending_queue); |
1207 | 1163 | ||
1208 | /** | 1164 | /** |
1209 | * libfc_host_alloc - allocate a Scsi_Host with room for the fc_lport | 1165 | * libfc_host_alloc() - Allocate a Scsi_Host with room for the fc_lport |
1210 | * @sht: ptr to the scsi host templ | 1166 | * @sht: ptr to the scsi host templ |
1211 | * @priv_size: size of private data after fc_lport | 1167 | * @priv_size: size of private data after fc_lport |
1212 | * | 1168 | * |
1213 | * Returns: ptr to Scsi_Host | 1169 | * Returns: ptr to Scsi_Host |
1214 | * TODO - to libfc? | 1170 | * TODO: to libfc? |
1215 | */ | 1171 | */ |
1216 | static inline struct Scsi_Host *libfc_host_alloc( | 1172 | static inline struct Scsi_Host * |
1217 | struct scsi_host_template *sht, int priv_size) | 1173 | libfc_host_alloc(struct scsi_host_template *sht, int priv_size) |
1218 | { | 1174 | { |
1219 | return scsi_host_alloc(sht, sizeof(struct fc_lport) + priv_size); | 1175 | return scsi_host_alloc(sht, sizeof(struct fc_lport) + priv_size); |
1220 | } | 1176 | } |
1221 | 1177 | ||
1222 | /** | 1178 | /** |
1223 | * fcoe_host_alloc - allocate a Scsi_Host with room for the fcoe_softc | 1179 | * fcoe_host_alloc() - Allocate a Scsi_Host with room for the fcoe_softc |
1224 | * @sht: ptr to the scsi host templ | 1180 | * @sht: ptr to the scsi host templ |
1225 | * @priv_size: size of private data after fc_lport | 1181 | * @priv_size: size of private data after fc_lport |
1226 | * | 1182 | * |
@@ -1232,8 +1188,8 @@ struct Scsi_Host *fcoe_host_alloc(struct scsi_host_template *sht, int priv_size) | |||
1232 | } | 1188 | } |
1233 | EXPORT_SYMBOL_GPL(fcoe_host_alloc); | 1189 | EXPORT_SYMBOL_GPL(fcoe_host_alloc); |
1234 | 1190 | ||
1235 | /* | 1191 | /** |
1236 | * fcoe_reset - resets the fcoe | 1192 | * fcoe_reset() - Resets the fcoe |
1237 | * @shost: shost the reset is from | 1193 | * @shost: shost the reset is from |
1238 | * | 1194 | * |
1239 | * Returns: always 0 | 1195 | * Returns: always 0 |
@@ -1246,8 +1202,8 @@ int fcoe_reset(struct Scsi_Host *shost) | |||
1246 | } | 1202 | } |
1247 | EXPORT_SYMBOL_GPL(fcoe_reset); | 1203 | EXPORT_SYMBOL_GPL(fcoe_reset); |
1248 | 1204 | ||
1249 | /* | 1205 | /** |
1250 | * fcoe_wwn_from_mac - converts 48-bit IEEE MAC address to 64-bit FC WWN. | 1206 | * fcoe_wwn_from_mac() - Converts 48-bit IEEE MAC address to 64-bit FC WWN. |
1251 | * @mac: mac address | 1207 | * @mac: mac address |
1252 | * @scheme: check port | 1208 | * @scheme: check port |
1253 | * @port: port indicator for converting | 1209 | * @port: port indicator for converting |
@@ -1286,14 +1242,15 @@ u64 fcoe_wwn_from_mac(unsigned char mac[MAX_ADDR_LEN], | |||
1286 | return wwn; | 1242 | return wwn; |
1287 | } | 1243 | } |
1288 | EXPORT_SYMBOL_GPL(fcoe_wwn_from_mac); | 1244 | EXPORT_SYMBOL_GPL(fcoe_wwn_from_mac); |
1289 | /* | 1245 | |
1290 | * fcoe_hostlist_lookup_softc - find the corresponding lport by a given device | 1246 | /** |
1247 | * fcoe_hostlist_lookup_softc() - find the corresponding lport by a given device | ||
1291 | * @device: this is currently ptr to net_device | 1248 | * @device: this is currently ptr to net_device |
1292 | * | 1249 | * |
1293 | * Returns: NULL or the located fcoe_softc | 1250 | * Returns: NULL or the located fcoe_softc |
1294 | */ | 1251 | */ |
1295 | static struct fcoe_softc *fcoe_hostlist_lookup_softc( | 1252 | static struct fcoe_softc * |
1296 | const struct net_device *dev) | 1253 | fcoe_hostlist_lookup_softc(const struct net_device *dev) |
1297 | { | 1254 | { |
1298 | struct fcoe_softc *fc; | 1255 | struct fcoe_softc *fc; |
1299 | 1256 | ||
@@ -1308,8 +1265,8 @@ static struct fcoe_softc *fcoe_hostlist_lookup_softc( | |||
1308 | return NULL; | 1265 | return NULL; |
1309 | } | 1266 | } |
1310 | 1267 | ||
1311 | /* | 1268 | /** |
1312 | * fcoe_hostlist_lookup - find the corresponding lport by netdev | 1269 | * fcoe_hostlist_lookup() - Find the corresponding lport by netdev |
1313 | * @netdev: ptr to net_device | 1270 | * @netdev: ptr to net_device |
1314 | * | 1271 | * |
1315 | * Returns: 0 for success | 1272 | * Returns: 0 for success |
@@ -1324,8 +1281,8 @@ struct fc_lport *fcoe_hostlist_lookup(const struct net_device *netdev) | |||
1324 | } | 1281 | } |
1325 | EXPORT_SYMBOL_GPL(fcoe_hostlist_lookup); | 1282 | EXPORT_SYMBOL_GPL(fcoe_hostlist_lookup); |
1326 | 1283 | ||
1327 | /* | 1284 | /** |
1328 | * fcoe_hostlist_add - add a lport to lports list | 1285 | * fcoe_hostlist_add() - Add a lport to lports list |
1329 | * @lp: ptr to the fc_lport to badded | 1286 | * @lp: ptr to the fc_lport to badded |
1330 | * | 1287 | * |
1331 | * Returns: 0 for success | 1288 | * Returns: 0 for success |
@@ -1336,7 +1293,7 @@ int fcoe_hostlist_add(const struct fc_lport *lp) | |||
1336 | 1293 | ||
1337 | fc = fcoe_hostlist_lookup_softc(fcoe_netdev(lp)); | 1294 | fc = fcoe_hostlist_lookup_softc(fcoe_netdev(lp)); |
1338 | if (!fc) { | 1295 | if (!fc) { |
1339 | fc = fcoe_softc(lp); | 1296 | fc = lport_priv(lp); |
1340 | write_lock_bh(&fcoe_hostlist_lock); | 1297 | write_lock_bh(&fcoe_hostlist_lock); |
1341 | list_add_tail(&fc->list, &fcoe_hostlist); | 1298 | list_add_tail(&fc->list, &fcoe_hostlist); |
1342 | write_unlock_bh(&fcoe_hostlist_lock); | 1299 | write_unlock_bh(&fcoe_hostlist_lock); |
@@ -1345,8 +1302,8 @@ int fcoe_hostlist_add(const struct fc_lport *lp) | |||
1345 | } | 1302 | } |
1346 | EXPORT_SYMBOL_GPL(fcoe_hostlist_add); | 1303 | EXPORT_SYMBOL_GPL(fcoe_hostlist_add); |
1347 | 1304 | ||
1348 | /* | 1305 | /** |
1349 | * fcoe_hostlist_remove - remove a lport from lports list | 1306 | * fcoe_hostlist_remove() - remove a lport from lports list |
1350 | * @lp: ptr to the fc_lport to badded | 1307 | * @lp: ptr to the fc_lport to badded |
1351 | * | 1308 | * |
1352 | * Returns: 0 for success | 1309 | * Returns: 0 for success |
@@ -1366,12 +1323,12 @@ int fcoe_hostlist_remove(const struct fc_lport *lp) | |||
1366 | EXPORT_SYMBOL_GPL(fcoe_hostlist_remove); | 1323 | EXPORT_SYMBOL_GPL(fcoe_hostlist_remove); |
1367 | 1324 | ||
1368 | /** | 1325 | /** |
1369 | * fcoe_libfc_config - sets up libfc related properties for lport | 1326 | * fcoe_libfc_config() - sets up libfc related properties for lport |
1370 | * @lp: ptr to the fc_lport | 1327 | * @lp: ptr to the fc_lport |
1371 | * @tt: libfc function template | 1328 | * @tt: libfc function template |
1372 | * | 1329 | * |
1373 | * Returns : 0 for success | 1330 | * Returns : 0 for success |
1374 | **/ | 1331 | */ |
1375 | int fcoe_libfc_config(struct fc_lport *lp, struct libfc_function_template *tt) | 1332 | int fcoe_libfc_config(struct fc_lport *lp, struct libfc_function_template *tt) |
1376 | { | 1333 | { |
1377 | /* Set the function pointers set by the LLDD */ | 1334 | /* Set the function pointers set by the LLDD */ |
@@ -1389,14 +1346,14 @@ int fcoe_libfc_config(struct fc_lport *lp, struct libfc_function_template *tt) | |||
1389 | EXPORT_SYMBOL_GPL(fcoe_libfc_config); | 1346 | EXPORT_SYMBOL_GPL(fcoe_libfc_config); |
1390 | 1347 | ||
1391 | /** | 1348 | /** |
1392 | * fcoe_init - fcoe module loading initialization | 1349 | * fcoe_init() - fcoe module loading initialization |
1393 | * | 1350 | * |
1394 | * Initialization routine | 1351 | * Initialization routine |
1395 | * 1. Will create fc transport software structure | 1352 | * 1. Will create fc transport software structure |
1396 | * 2. initialize the link list of port information structure | 1353 | * 2. initialize the link list of port information structure |
1397 | * | 1354 | * |
1398 | * Returns 0 on success, negative on failure | 1355 | * Returns 0 on success, negative on failure |
1399 | **/ | 1356 | */ |
1400 | static int __init fcoe_init(void) | 1357 | static int __init fcoe_init(void) |
1401 | { | 1358 | { |
1402 | int cpu; | 1359 | int cpu; |
@@ -1433,7 +1390,6 @@ static int __init fcoe_init(void) | |||
1433 | } else { | 1390 | } else { |
1434 | fcoe_percpu[cpu] = NULL; | 1391 | fcoe_percpu[cpu] = NULL; |
1435 | kfree(p); | 1392 | kfree(p); |
1436 | |||
1437 | } | 1393 | } |
1438 | } | 1394 | } |
1439 | } | 1395 | } |
@@ -1443,11 +1399,9 @@ static int __init fcoe_init(void) | |||
1443 | */ | 1399 | */ |
1444 | fcoe_dev_setup(); | 1400 | fcoe_dev_setup(); |
1445 | 1401 | ||
1446 | init_timer(&fcoe_timer); | 1402 | setup_timer(&fcoe_timer, fcoe_watchdog, 0); |
1447 | fcoe_timer.data = 0; | 1403 | |
1448 | fcoe_timer.function = fcoe_watchdog; | 1404 | mod_timer(&fcoe_timer, jiffies + (10 * HZ)); |
1449 | fcoe_timer.expires = (jiffies + (10 * HZ)); | ||
1450 | add_timer(&fcoe_timer); | ||
1451 | 1405 | ||
1452 | /* initiatlize the fcoe transport */ | 1406 | /* initiatlize the fcoe transport */ |
1453 | fcoe_transport_init(); | 1407 | fcoe_transport_init(); |
@@ -1459,10 +1413,10 @@ static int __init fcoe_init(void) | |||
1459 | module_init(fcoe_init); | 1413 | module_init(fcoe_init); |
1460 | 1414 | ||
1461 | /** | 1415 | /** |
1462 | * fcoe_exit - fcoe module unloading cleanup | 1416 | * fcoe_exit() - fcoe module unloading cleanup |
1463 | * | 1417 | * |
1464 | * Returns 0 on success, negative on failure | 1418 | * Returns 0 on success, negative on failure |
1465 | **/ | 1419 | */ |
1466 | static void __exit fcoe_exit(void) | 1420 | static void __exit fcoe_exit(void) |
1467 | { | 1421 | { |
1468 | u32 idx; | 1422 | u32 idx; |
@@ -1483,7 +1437,7 @@ static void __exit fcoe_exit(void) | |||
1483 | */ | 1437 | */ |
1484 | del_timer_sync(&fcoe_timer); | 1438 | del_timer_sync(&fcoe_timer); |
1485 | 1439 | ||
1486 | /* releases the assocaited fcoe transport for each lport */ | 1440 | /* releases the associated fcoe transport for each lport */ |
1487 | list_for_each_entry_safe(fc, tmp, &fcoe_hostlist, list) | 1441 | list_for_each_entry_safe(fc, tmp, &fcoe_hostlist, list) |
1488 | fcoe_transport_release(fc->real_dev); | 1442 | fcoe_transport_release(fc->real_dev); |
1489 | 1443 | ||
diff --git a/drivers/scsi/lasi700.c b/drivers/scsi/lasi700.c index 4a4e6954ec79..f23c4ca9a2ee 100644 --- a/drivers/scsi/lasi700.c +++ b/drivers/scsi/lasi700.c | |||
@@ -103,7 +103,7 @@ lasi700_probe(struct parisc_device *dev) | |||
103 | 103 | ||
104 | hostdata = kzalloc(sizeof(*hostdata), GFP_KERNEL); | 104 | hostdata = kzalloc(sizeof(*hostdata), GFP_KERNEL); |
105 | if (!hostdata) { | 105 | if (!hostdata) { |
106 | dev_printk(KERN_ERR, dev, "Failed to allocate host data\n"); | 106 | dev_printk(KERN_ERR, &dev->dev, "Failed to allocate host data\n"); |
107 | return -ENOMEM; | 107 | return -ENOMEM; |
108 | } | 108 | } |
109 | 109 | ||
diff --git a/drivers/scsi/libfc/fc_disc.c b/drivers/scsi/libfc/fc_disc.c index dd1564c9e04a..e57556ea5b48 100644 --- a/drivers/scsi/libfc/fc_disc.c +++ b/drivers/scsi/libfc/fc_disc.c | |||
@@ -64,7 +64,7 @@ static void fc_disc_single(struct fc_disc *, struct fc_disc_port *); | |||
64 | static void fc_disc_restart(struct fc_disc *); | 64 | static void fc_disc_restart(struct fc_disc *); |
65 | 65 | ||
66 | /** | 66 | /** |
67 | * fc_disc_lookup_rport - lookup a remote port by port_id | 67 | * fc_disc_lookup_rport() - lookup a remote port by port_id |
68 | * @lport: Fibre Channel host port instance | 68 | * @lport: Fibre Channel host port instance |
69 | * @port_id: remote port port_id to match | 69 | * @port_id: remote port port_id to match |
70 | */ | 70 | */ |
@@ -92,7 +92,7 @@ struct fc_rport *fc_disc_lookup_rport(const struct fc_lport *lport, | |||
92 | } | 92 | } |
93 | 93 | ||
94 | /** | 94 | /** |
95 | * fc_disc_stop_rports - delete all the remote ports associated with the lport | 95 | * fc_disc_stop_rports() - delete all the remote ports associated with the lport |
96 | * @disc: The discovery job to stop rports on | 96 | * @disc: The discovery job to stop rports on |
97 | * | 97 | * |
98 | * Locking Note: This function expects that the lport mutex is locked before | 98 | * Locking Note: This function expects that the lport mutex is locked before |
@@ -117,7 +117,7 @@ void fc_disc_stop_rports(struct fc_disc *disc) | |||
117 | } | 117 | } |
118 | 118 | ||
119 | /** | 119 | /** |
120 | * fc_disc_rport_callback - Event handler for rport events | 120 | * fc_disc_rport_callback() - Event handler for rport events |
121 | * @lport: The lport which is receiving the event | 121 | * @lport: The lport which is receiving the event |
122 | * @rport: The rport which the event has occured on | 122 | * @rport: The rport which the event has occured on |
123 | * @event: The event that occured | 123 | * @event: The event that occured |
@@ -151,7 +151,7 @@ static void fc_disc_rport_callback(struct fc_lport *lport, | |||
151 | } | 151 | } |
152 | 152 | ||
153 | /** | 153 | /** |
154 | * fc_disc_recv_rscn_req - Handle Registered State Change Notification (RSCN) | 154 | * fc_disc_recv_rscn_req() - Handle Registered State Change Notification (RSCN) |
155 | * @sp: Current sequence of the RSCN exchange | 155 | * @sp: Current sequence of the RSCN exchange |
156 | * @fp: RSCN Frame | 156 | * @fp: RSCN Frame |
157 | * @lport: Fibre Channel host port instance | 157 | * @lport: Fibre Channel host port instance |
@@ -246,7 +246,7 @@ static void fc_disc_recv_rscn_req(struct fc_seq *sp, struct fc_frame *fp, | |||
246 | list_del(&dp->peers); | 246 | list_del(&dp->peers); |
247 | rport = lport->tt.rport_lookup(lport, dp->ids.port_id); | 247 | rport = lport->tt.rport_lookup(lport, dp->ids.port_id); |
248 | if (rport) { | 248 | if (rport) { |
249 | rdata = RPORT_TO_PRIV(rport); | 249 | rdata = rport->dd_data; |
250 | list_del(&rdata->peers); | 250 | list_del(&rdata->peers); |
251 | lport->tt.rport_logoff(rport); | 251 | lport->tt.rport_logoff(rport); |
252 | } | 252 | } |
@@ -265,7 +265,7 @@ reject: | |||
265 | } | 265 | } |
266 | 266 | ||
267 | /** | 267 | /** |
268 | * fc_disc_recv_req - Handle incoming requests | 268 | * fc_disc_recv_req() - Handle incoming requests |
269 | * @sp: Current sequence of the request exchange | 269 | * @sp: Current sequence of the request exchange |
270 | * @fp: The frame | 270 | * @fp: The frame |
271 | * @lport: The FC local port | 271 | * @lport: The FC local port |
@@ -294,7 +294,7 @@ static void fc_disc_recv_req(struct fc_seq *sp, struct fc_frame *fp, | |||
294 | } | 294 | } |
295 | 295 | ||
296 | /** | 296 | /** |
297 | * fc_disc_restart - Restart discovery | 297 | * fc_disc_restart() - Restart discovery |
298 | * @lport: FC discovery context | 298 | * @lport: FC discovery context |
299 | * | 299 | * |
300 | * Locking Note: This function expects that the disc mutex | 300 | * Locking Note: This function expects that the disc mutex |
@@ -322,7 +322,7 @@ static void fc_disc_restart(struct fc_disc *disc) | |||
322 | } | 322 | } |
323 | 323 | ||
324 | /** | 324 | /** |
325 | * fc_disc_start - Fibre Channel Target discovery | 325 | * fc_disc_start() - Fibre Channel Target discovery |
326 | * @lport: FC local port | 326 | * @lport: FC local port |
327 | * | 327 | * |
328 | * Returns non-zero if discovery cannot be started. | 328 | * Returns non-zero if discovery cannot be started. |
@@ -383,7 +383,7 @@ static struct fc_rport_operations fc_disc_rport_ops = { | |||
383 | }; | 383 | }; |
384 | 384 | ||
385 | /** | 385 | /** |
386 | * fc_disc_new_target - Handle new target found by discovery | 386 | * fc_disc_new_target() - Handle new target found by discovery |
387 | * @lport: FC local port | 387 | * @lport: FC local port |
388 | * @rport: The previous FC remote port (NULL if new remote port) | 388 | * @rport: The previous FC remote port (NULL if new remote port) |
389 | * @ids: Identifiers for the new FC remote port | 389 | * @ids: Identifiers for the new FC remote port |
@@ -396,7 +396,7 @@ static int fc_disc_new_target(struct fc_disc *disc, | |||
396 | struct fc_rport_identifiers *ids) | 396 | struct fc_rport_identifiers *ids) |
397 | { | 397 | { |
398 | struct fc_lport *lport = disc->lport; | 398 | struct fc_lport *lport = disc->lport; |
399 | struct fc_rport_libfc_priv *rp; | 399 | struct fc_rport_libfc_priv *rdata; |
400 | int error = 0; | 400 | int error = 0; |
401 | 401 | ||
402 | if (rport && ids->port_name) { | 402 | if (rport && ids->port_name) { |
@@ -430,15 +430,15 @@ static int fc_disc_new_target(struct fc_disc *disc, | |||
430 | dp.ids.port_name = ids->port_name; | 430 | dp.ids.port_name = ids->port_name; |
431 | dp.ids.node_name = ids->node_name; | 431 | dp.ids.node_name = ids->node_name; |
432 | dp.ids.roles = ids->roles; | 432 | dp.ids.roles = ids->roles; |
433 | rport = fc_rport_rogue_create(&dp); | 433 | rport = lport->tt.rport_create(&dp); |
434 | } | 434 | } |
435 | if (!rport) | 435 | if (!rport) |
436 | error = -ENOMEM; | 436 | error = -ENOMEM; |
437 | } | 437 | } |
438 | if (rport) { | 438 | if (rport) { |
439 | rp = rport->dd_data; | 439 | rdata = rport->dd_data; |
440 | rp->ops = &fc_disc_rport_ops; | 440 | rdata->ops = &fc_disc_rport_ops; |
441 | rp->rp_state = RPORT_ST_INIT; | 441 | rdata->rp_state = RPORT_ST_INIT; |
442 | lport->tt.rport_login(rport); | 442 | lport->tt.rport_login(rport); |
443 | } | 443 | } |
444 | } | 444 | } |
@@ -446,20 +446,20 @@ static int fc_disc_new_target(struct fc_disc *disc, | |||
446 | } | 446 | } |
447 | 447 | ||
448 | /** | 448 | /** |
449 | * fc_disc_del_target - Delete a target | 449 | * fc_disc_del_target() - Delete a target |
450 | * @disc: FC discovery context | 450 | * @disc: FC discovery context |
451 | * @rport: The remote port to be removed | 451 | * @rport: The remote port to be removed |
452 | */ | 452 | */ |
453 | static void fc_disc_del_target(struct fc_disc *disc, struct fc_rport *rport) | 453 | static void fc_disc_del_target(struct fc_disc *disc, struct fc_rport *rport) |
454 | { | 454 | { |
455 | struct fc_lport *lport = disc->lport; | 455 | struct fc_lport *lport = disc->lport; |
456 | struct fc_rport_libfc_priv *rdata = RPORT_TO_PRIV(rport); | 456 | struct fc_rport_libfc_priv *rdata = rport->dd_data; |
457 | list_del(&rdata->peers); | 457 | list_del(&rdata->peers); |
458 | lport->tt.rport_logoff(rport); | 458 | lport->tt.rport_logoff(rport); |
459 | } | 459 | } |
460 | 460 | ||
461 | /** | 461 | /** |
462 | * fc_disc_done - Discovery has been completed | 462 | * fc_disc_done() - Discovery has been completed |
463 | * @disc: FC discovery context | 463 | * @disc: FC discovery context |
464 | */ | 464 | */ |
465 | static void fc_disc_done(struct fc_disc *disc) | 465 | static void fc_disc_done(struct fc_disc *disc) |
@@ -479,7 +479,7 @@ static void fc_disc_done(struct fc_disc *disc) | |||
479 | } | 479 | } |
480 | 480 | ||
481 | /** | 481 | /** |
482 | * fc_disc_error - Handle error on dNS request | 482 | * fc_disc_error() - Handle error on dNS request |
483 | * @disc: FC discovery context | 483 | * @disc: FC discovery context |
484 | * @fp: The frame pointer | 484 | * @fp: The frame pointer |
485 | */ | 485 | */ |
@@ -519,7 +519,7 @@ static void fc_disc_error(struct fc_disc *disc, struct fc_frame *fp) | |||
519 | } | 519 | } |
520 | 520 | ||
521 | /** | 521 | /** |
522 | * fc_disc_gpn_ft_req - Send Get Port Names by FC-4 type (GPN_FT) request | 522 | * fc_disc_gpn_ft_req() - Send Get Port Names by FC-4 type (GPN_FT) request |
523 | * @lport: FC discovery context | 523 | * @lport: FC discovery context |
524 | * | 524 | * |
525 | * Locking Note: This function expects that the disc_mutex is locked | 525 | * Locking Note: This function expects that the disc_mutex is locked |
@@ -553,7 +553,7 @@ err: | |||
553 | } | 553 | } |
554 | 554 | ||
555 | /** | 555 | /** |
556 | * fc_disc_gpn_ft_parse - Parse the list of IDs and names resulting from a request | 556 | * fc_disc_gpn_ft_parse() - Parse the list of IDs and names resulting from a request |
557 | * @lport: Fibre Channel host port instance | 557 | * @lport: Fibre Channel host port instance |
558 | * @buf: GPN_FT response buffer | 558 | * @buf: GPN_FT response buffer |
559 | * @len: size of response buffer | 559 | * @len: size of response buffer |
@@ -617,7 +617,7 @@ static int fc_disc_gpn_ft_parse(struct fc_disc *disc, void *buf, size_t len) | |||
617 | 617 | ||
618 | if ((dp.ids.port_id != fc_host_port_id(lport->host)) && | 618 | if ((dp.ids.port_id != fc_host_port_id(lport->host)) && |
619 | (dp.ids.port_name != lport->wwpn)) { | 619 | (dp.ids.port_name != lport->wwpn)) { |
620 | rport = fc_rport_rogue_create(&dp); | 620 | rport = lport->tt.rport_create(&dp); |
621 | if (rport) { | 621 | if (rport) { |
622 | rdata = rport->dd_data; | 622 | rdata = rport->dd_data; |
623 | rdata->ops = &fc_disc_rport_ops; | 623 | rdata->ops = &fc_disc_rport_ops; |
@@ -658,7 +658,10 @@ static int fc_disc_gpn_ft_parse(struct fc_disc *disc, void *buf, size_t len) | |||
658 | return error; | 658 | return error; |
659 | } | 659 | } |
660 | 660 | ||
661 | /* | 661 | /** |
662 | * fc_disc_timeout() - Retry handler for the disc component | ||
663 | * @work: Structure holding disc obj that needs retry discovery | ||
664 | * | ||
662 | * Handle retry of memory allocation for remote ports. | 665 | * Handle retry of memory allocation for remote ports. |
663 | */ | 666 | */ |
664 | static void fc_disc_timeout(struct work_struct *work) | 667 | static void fc_disc_timeout(struct work_struct *work) |
@@ -673,7 +676,7 @@ static void fc_disc_timeout(struct work_struct *work) | |||
673 | } | 676 | } |
674 | 677 | ||
675 | /** | 678 | /** |
676 | * fc_disc_gpn_ft_resp - Handle a response frame from Get Port Names (GPN_FT) | 679 | * fc_disc_gpn_ft_resp() - Handle a response frame from Get Port Names (GPN_FT) |
677 | * @sp: Current sequence of GPN_FT exchange | 680 | * @sp: Current sequence of GPN_FT exchange |
678 | * @fp: response frame | 681 | * @fp: response frame |
679 | * @lp_arg: Fibre Channel host port instance | 682 | * @lp_arg: Fibre Channel host port instance |
@@ -712,9 +715,7 @@ static void fc_disc_gpn_ft_resp(struct fc_seq *sp, struct fc_frame *fp, | |||
712 | fr_len(fp)); | 715 | fr_len(fp)); |
713 | } else if (ntohs(cp->ct_cmd) == FC_FS_ACC) { | 716 | } else if (ntohs(cp->ct_cmd) == FC_FS_ACC) { |
714 | 717 | ||
715 | /* | 718 | /* Accepted, parse the response. */ |
716 | * Accepted. Parse response. | ||
717 | */ | ||
718 | buf = cp + 1; | 719 | buf = cp + 1; |
719 | len -= sizeof(*cp); | 720 | len -= sizeof(*cp); |
720 | } else if (ntohs(cp->ct_cmd) == FC_FS_RJT) { | 721 | } else if (ntohs(cp->ct_cmd) == FC_FS_RJT) { |
@@ -746,7 +747,7 @@ static void fc_disc_gpn_ft_resp(struct fc_seq *sp, struct fc_frame *fp, | |||
746 | } | 747 | } |
747 | 748 | ||
748 | /** | 749 | /** |
749 | * fc_disc_single - Discover the directory information for a single target | 750 | * fc_disc_single() - Discover the directory information for a single target |
750 | * @lport: FC local port | 751 | * @lport: FC local port |
751 | * @dp: The port to rediscover | 752 | * @dp: The port to rediscover |
752 | * | 753 | * |
@@ -769,7 +770,7 @@ static void fc_disc_single(struct fc_disc *disc, struct fc_disc_port *dp) | |||
769 | if (rport) | 770 | if (rport) |
770 | fc_disc_del_target(disc, rport); | 771 | fc_disc_del_target(disc, rport); |
771 | 772 | ||
772 | new_rport = fc_rport_rogue_create(dp); | 773 | new_rport = lport->tt.rport_create(dp); |
773 | if (new_rport) { | 774 | if (new_rport) { |
774 | rdata = new_rport->dd_data; | 775 | rdata = new_rport->dd_data; |
775 | rdata->ops = &fc_disc_rport_ops; | 776 | rdata->ops = &fc_disc_rport_ops; |
@@ -782,7 +783,7 @@ out: | |||
782 | } | 783 | } |
783 | 784 | ||
784 | /** | 785 | /** |
785 | * fc_disc_stop - Stop discovery for a given lport | 786 | * fc_disc_stop() - Stop discovery for a given lport |
786 | * @lport: The lport that discovery should stop for | 787 | * @lport: The lport that discovery should stop for |
787 | */ | 788 | */ |
788 | void fc_disc_stop(struct fc_lport *lport) | 789 | void fc_disc_stop(struct fc_lport *lport) |
@@ -796,7 +797,7 @@ void fc_disc_stop(struct fc_lport *lport) | |||
796 | } | 797 | } |
797 | 798 | ||
798 | /** | 799 | /** |
799 | * fc_disc_stop_final - Stop discovery for a given lport | 800 | * fc_disc_stop_final() - Stop discovery for a given lport |
800 | * @lport: The lport that discovery should stop for | 801 | * @lport: The lport that discovery should stop for |
801 | * | 802 | * |
802 | * This function will block until discovery has been | 803 | * This function will block until discovery has been |
@@ -809,7 +810,7 @@ void fc_disc_stop_final(struct fc_lport *lport) | |||
809 | } | 810 | } |
810 | 811 | ||
811 | /** | 812 | /** |
812 | * fc_disc_init - Initialize the discovery block | 813 | * fc_disc_init() - Initialize the discovery block |
813 | * @lport: FC local port | 814 | * @lport: FC local port |
814 | */ | 815 | */ |
815 | int fc_disc_init(struct fc_lport *lport) | 816 | int fc_disc_init(struct fc_lport *lport) |
diff --git a/drivers/scsi/libfc/fc_exch.c b/drivers/scsi/libfc/fc_exch.c index 66db08a5f27f..505825b6124d 100644 --- a/drivers/scsi/libfc/fc_exch.c +++ b/drivers/scsi/libfc/fc_exch.c | |||
@@ -32,8 +32,6 @@ | |||
32 | #include <scsi/libfc.h> | 32 | #include <scsi/libfc.h> |
33 | #include <scsi/fc_encode.h> | 33 | #include <scsi/fc_encode.h> |
34 | 34 | ||
35 | #define FC_DEF_R_A_TOV (10 * 1000) /* resource allocation timeout */ | ||
36 | |||
37 | /* | 35 | /* |
38 | * fc_exch_debug can be set in debugger or at compile time to get more logs. | 36 | * fc_exch_debug can be set in debugger or at compile time to get more logs. |
39 | */ | 37 | */ |
@@ -627,7 +625,6 @@ static struct fc_exch *fc_exch_resp(struct fc_exch_mgr *mp, struct fc_frame *fp) | |||
627 | { | 625 | { |
628 | struct fc_exch *ep; | 626 | struct fc_exch *ep; |
629 | struct fc_frame_header *fh; | 627 | struct fc_frame_header *fh; |
630 | u16 rxid; | ||
631 | 628 | ||
632 | ep = mp->lp->tt.exch_get(mp->lp, fp); | 629 | ep = mp->lp->tt.exch_get(mp->lp, fp); |
633 | if (ep) { | 630 | if (ep) { |
@@ -654,18 +651,6 @@ static struct fc_exch *fc_exch_resp(struct fc_exch_mgr *mp, struct fc_frame *fp) | |||
654 | if ((ntoh24(fh->fh_f_ctl) & FC_FC_SEQ_INIT) == 0) | 651 | if ((ntoh24(fh->fh_f_ctl) & FC_FC_SEQ_INIT) == 0) |
655 | ep->esb_stat &= ~ESB_ST_SEQ_INIT; | 652 | ep->esb_stat &= ~ESB_ST_SEQ_INIT; |
656 | 653 | ||
657 | /* | ||
658 | * Set the responder ID in the frame header. | ||
659 | * The old one should've been 0xffff. | ||
660 | * If it isn't, don't assign one. | ||
661 | * Incoming basic link service frames may specify | ||
662 | * a referenced RX_ID. | ||
663 | */ | ||
664 | if (fh->fh_type != FC_TYPE_BLS) { | ||
665 | rxid = ntohs(fh->fh_rx_id); | ||
666 | WARN_ON(rxid != FC_XID_UNKNOWN); | ||
667 | fh->fh_rx_id = htons(ep->rxid); | ||
668 | } | ||
669 | fc_exch_hold(ep); /* hold for caller */ | 654 | fc_exch_hold(ep); /* hold for caller */ |
670 | spin_unlock_bh(&ep->ex_lock); /* lock from exch_get */ | 655 | spin_unlock_bh(&ep->ex_lock); /* lock from exch_get */ |
671 | } | 656 | } |
@@ -677,8 +662,8 @@ static struct fc_exch *fc_exch_resp(struct fc_exch_mgr *mp, struct fc_frame *fp) | |||
677 | * If fc_pf_rjt_reason is FC_RJT_NONE then this function will have a hold | 662 | * If fc_pf_rjt_reason is FC_RJT_NONE then this function will have a hold |
678 | * on the ep that should be released by the caller. | 663 | * on the ep that should be released by the caller. |
679 | */ | 664 | */ |
680 | static enum fc_pf_rjt_reason | 665 | static enum fc_pf_rjt_reason fc_seq_lookup_recip(struct fc_exch_mgr *mp, |
681 | fc_seq_lookup_recip(struct fc_exch_mgr *mp, struct fc_frame *fp) | 666 | struct fc_frame *fp) |
682 | { | 667 | { |
683 | struct fc_frame_header *fh = fc_frame_header_get(fp); | 668 | struct fc_frame_header *fh = fc_frame_header_get(fp); |
684 | struct fc_exch *ep = NULL; | 669 | struct fc_exch *ep = NULL; |
@@ -996,9 +981,9 @@ static void fc_seq_send_ack(struct fc_seq *sp, const struct fc_frame *rx_fp) | |||
996 | * Send BLS Reject. | 981 | * Send BLS Reject. |
997 | * This is for rejecting BA_ABTS only. | 982 | * This is for rejecting BA_ABTS only. |
998 | */ | 983 | */ |
999 | static void | 984 | static void fc_exch_send_ba_rjt(struct fc_frame *rx_fp, |
1000 | fc_exch_send_ba_rjt(struct fc_frame *rx_fp, enum fc_ba_rjt_reason reason, | 985 | enum fc_ba_rjt_reason reason, |
1001 | enum fc_ba_rjt_explan explan) | 986 | enum fc_ba_rjt_explan explan) |
1002 | { | 987 | { |
1003 | struct fc_frame *fp; | 988 | struct fc_frame *fp; |
1004 | struct fc_frame_header *rx_fh; | 989 | struct fc_frame_header *rx_fh; |
@@ -1096,7 +1081,7 @@ static void fc_exch_recv_abts(struct fc_exch *ep, struct fc_frame *rx_fp) | |||
1096 | ap->ba_high_seq_cnt = fh->fh_seq_cnt; | 1081 | ap->ba_high_seq_cnt = fh->fh_seq_cnt; |
1097 | ap->ba_low_seq_cnt = htons(sp->cnt); | 1082 | ap->ba_low_seq_cnt = htons(sp->cnt); |
1098 | } | 1083 | } |
1099 | sp = fc_seq_start_next(sp); | 1084 | sp = fc_seq_start_next_locked(sp); |
1100 | spin_unlock_bh(&ep->ex_lock); | 1085 | spin_unlock_bh(&ep->ex_lock); |
1101 | fc_seq_send_last(sp, fp, FC_RCTL_BA_ACC, FC_TYPE_BLS); | 1086 | fc_seq_send_last(sp, fp, FC_RCTL_BA_ACC, FC_TYPE_BLS); |
1102 | fc_frame_free(rx_fp); | 1087 | fc_frame_free(rx_fp); |
@@ -1480,10 +1465,11 @@ static void fc_exch_reset(struct fc_exch *ep) | |||
1480 | * If sid is non-zero, reset only exchanges we source from that FID. | 1465 | * If sid is non-zero, reset only exchanges we source from that FID. |
1481 | * If did is non-zero, reset only exchanges destined to that FID. | 1466 | * If did is non-zero, reset only exchanges destined to that FID. |
1482 | */ | 1467 | */ |
1483 | void fc_exch_mgr_reset(struct fc_exch_mgr *mp, u32 sid, u32 did) | 1468 | void fc_exch_mgr_reset(struct fc_lport *lp, u32 sid, u32 did) |
1484 | { | 1469 | { |
1485 | struct fc_exch *ep; | 1470 | struct fc_exch *ep; |
1486 | struct fc_exch *next; | 1471 | struct fc_exch *next; |
1472 | struct fc_exch_mgr *mp = lp->emp; | ||
1487 | 1473 | ||
1488 | spin_lock_bh(&mp->em_lock); | 1474 | spin_lock_bh(&mp->em_lock); |
1489 | restart: | 1475 | restart: |
@@ -1607,7 +1593,7 @@ static void fc_exch_rrq_resp(struct fc_seq *sp, struct fc_frame *fp, void *arg) | |||
1607 | if (IS_ERR(fp)) { | 1593 | if (IS_ERR(fp)) { |
1608 | int err = PTR_ERR(fp); | 1594 | int err = PTR_ERR(fp); |
1609 | 1595 | ||
1610 | if (err == -FC_EX_CLOSED) | 1596 | if (err == -FC_EX_CLOSED || err == -FC_EX_TIMEOUT) |
1611 | goto cleanup; | 1597 | goto cleanup; |
1612 | FC_DBG("Cannot process RRQ, because of frame error %d\n", err); | 1598 | FC_DBG("Cannot process RRQ, because of frame error %d\n", err); |
1613 | return; | 1599 | return; |
diff --git a/drivers/scsi/libfc/fc_fcp.c b/drivers/scsi/libfc/fc_fcp.c index 404e63ff46b8..2a631d7dbcec 100644 --- a/drivers/scsi/libfc/fc_fcp.c +++ b/drivers/scsi/libfc/fc_fcp.c | |||
@@ -161,7 +161,7 @@ static struct fc_fcp_pkt *fc_fcp_pkt_alloc(struct fc_lport *lp, gfp_t gfp) | |||
161 | } | 161 | } |
162 | 162 | ||
163 | /** | 163 | /** |
164 | * fc_fcp_pkt_release - release hold on scsi_pkt packet | 164 | * fc_fcp_pkt_release() - release hold on scsi_pkt packet |
165 | * @fsp: fcp packet struct | 165 | * @fsp: fcp packet struct |
166 | * | 166 | * |
167 | * This is used by upper layer scsi driver. | 167 | * This is used by upper layer scsi driver. |
@@ -183,8 +183,7 @@ static void fc_fcp_pkt_hold(struct fc_fcp_pkt *fsp) | |||
183 | } | 183 | } |
184 | 184 | ||
185 | /** | 185 | /** |
186 | * fc_fcp_pkt_destory - release hold on scsi_pkt packet | 186 | * fc_fcp_pkt_destory() - release hold on scsi_pkt packet |
187 | * | ||
188 | * @seq: exchange sequence | 187 | * @seq: exchange sequence |
189 | * @fsp: fcp packet struct | 188 | * @fsp: fcp packet struct |
190 | * | 189 | * |
@@ -199,7 +198,7 @@ static void fc_fcp_pkt_destroy(struct fc_seq *seq, void *fsp) | |||
199 | } | 198 | } |
200 | 199 | ||
201 | /** | 200 | /** |
202 | * fc_fcp_lock_pkt - lock a packet and get a ref to it. | 201 | * fc_fcp_lock_pkt() - lock a packet and get a ref to it. |
203 | * @fsp: fcp packet | 202 | * @fsp: fcp packet |
204 | * | 203 | * |
205 | * We should only return error if we return a command to scsi-ml before | 204 | * We should only return error if we return a command to scsi-ml before |
@@ -291,9 +290,7 @@ static void fc_fcp_recv_data(struct fc_fcp_pkt *fsp, struct fc_frame *fp) | |||
291 | buf = fc_frame_payload_get(fp, 0); | 290 | buf = fc_frame_payload_get(fp, 0); |
292 | 291 | ||
293 | if (offset + len > fsp->data_len) { | 292 | if (offset + len > fsp->data_len) { |
294 | /* | 293 | /* this should never happen */ |
295 | * this should never happen | ||
296 | */ | ||
297 | if ((fr_flags(fp) & FCPHF_CRC_UNCHECKED) && | 294 | if ((fr_flags(fp) & FCPHF_CRC_UNCHECKED) && |
298 | fc_frame_crc_check(fp)) | 295 | fc_frame_crc_check(fp)) |
299 | goto crc_err; | 296 | goto crc_err; |
@@ -387,8 +384,8 @@ crc_err: | |||
387 | fc_fcp_complete_locked(fsp); | 384 | fc_fcp_complete_locked(fsp); |
388 | } | 385 | } |
389 | 386 | ||
390 | /* | 387 | /** |
391 | * fc_fcp_send_data - Send SCSI data to target. | 388 | * fc_fcp_send_data() - Send SCSI data to target. |
392 | * @fsp: ptr to fc_fcp_pkt | 389 | * @fsp: ptr to fc_fcp_pkt |
393 | * @sp: ptr to this sequence | 390 | * @sp: ptr to this sequence |
394 | * @offset: starting offset for this data request | 391 | * @offset: starting offset for this data request |
@@ -610,8 +607,8 @@ static void fc_fcp_abts_resp(struct fc_fcp_pkt *fsp, struct fc_frame *fp) | |||
610 | } | 607 | } |
611 | } | 608 | } |
612 | 609 | ||
613 | /* | 610 | /** |
614 | * fc_fcp_reduce_can_queue - drop can_queue | 611 | * fc_fcp_reduce_can_queue() - drop can_queue |
615 | * @lp: lport to drop queueing for | 612 | * @lp: lport to drop queueing for |
616 | * | 613 | * |
617 | * If we are getting memory allocation failures, then we may | 614 | * If we are getting memory allocation failures, then we may |
@@ -642,9 +639,11 @@ done: | |||
642 | spin_unlock_irqrestore(lp->host->host_lock, flags); | 639 | spin_unlock_irqrestore(lp->host->host_lock, flags); |
643 | } | 640 | } |
644 | 641 | ||
645 | /* | 642 | /** |
646 | * exch mgr calls this routine to process scsi | 643 | * fc_fcp_recv() - Reveive FCP frames |
647 | * exchanges. | 644 | * @seq: The sequence the frame is on |
645 | * @fp: The FC frame | ||
646 | * @arg: The related FCP packet | ||
648 | * | 647 | * |
649 | * Return : None | 648 | * Return : None |
650 | * Context : called from Soft IRQ context | 649 | * Context : called from Soft IRQ context |
@@ -832,7 +831,7 @@ err: | |||
832 | } | 831 | } |
833 | 832 | ||
834 | /** | 833 | /** |
835 | * fc_fcp_complete_locked - complete processing of a fcp packet | 834 | * fc_fcp_complete_locked() - complete processing of a fcp packet |
836 | * @fsp: fcp packet | 835 | * @fsp: fcp packet |
837 | * | 836 | * |
838 | * This function may sleep if a timer is pending. The packet lock must be | 837 | * This function may sleep if a timer is pending. The packet lock must be |
@@ -900,7 +899,7 @@ static void fc_fcp_cleanup_cmd(struct fc_fcp_pkt *fsp, int error) | |||
900 | } | 899 | } |
901 | 900 | ||
902 | /** | 901 | /** |
903 | * fc_fcp_cleanup_each_cmd - run fn on each active command | 902 | * fc_fcp_cleanup_each_cmd() - Cleanup active commads |
904 | * @lp: logical port | 903 | * @lp: logical port |
905 | * @id: target id | 904 | * @id: target id |
906 | * @lun: lun | 905 | * @lun: lun |
@@ -952,7 +951,7 @@ static void fc_fcp_abort_io(struct fc_lport *lp) | |||
952 | } | 951 | } |
953 | 952 | ||
954 | /** | 953 | /** |
955 | * fc_fcp_pkt_send - send a fcp packet to the lower level. | 954 | * fc_fcp_pkt_send() - send a fcp packet to the lower level. |
956 | * @lp: fc lport | 955 | * @lp: fc lport |
957 | * @fsp: fc packet. | 956 | * @fsp: fc packet. |
958 | * | 957 | * |
@@ -1621,7 +1620,7 @@ out: | |||
1621 | static inline int fc_fcp_lport_queue_ready(struct fc_lport *lp) | 1620 | static inline int fc_fcp_lport_queue_ready(struct fc_lport *lp) |
1622 | { | 1621 | { |
1623 | /* lock ? */ | 1622 | /* lock ? */ |
1624 | return (lp->state == LPORT_ST_READY) && (lp->link_status & FC_LINK_UP); | 1623 | return (lp->state == LPORT_ST_READY) && lp->link_up && !lp->qfull; |
1625 | } | 1624 | } |
1626 | 1625 | ||
1627 | /** | 1626 | /** |
@@ -1727,7 +1726,7 @@ out: | |||
1727 | EXPORT_SYMBOL(fc_queuecommand); | 1726 | EXPORT_SYMBOL(fc_queuecommand); |
1728 | 1727 | ||
1729 | /** | 1728 | /** |
1730 | * fc_io_compl - Handle responses for completed commands | 1729 | * fc_io_compl() - Handle responses for completed commands |
1731 | * @fsp: scsi packet | 1730 | * @fsp: scsi packet |
1732 | * | 1731 | * |
1733 | * Translates a error to a Linux SCSI error. | 1732 | * Translates a error to a Linux SCSI error. |
@@ -1810,12 +1809,12 @@ static void fc_io_compl(struct fc_fcp_pkt *fsp) | |||
1810 | sc_cmd->result = DID_ERROR << 16; | 1809 | sc_cmd->result = DID_ERROR << 16; |
1811 | break; | 1810 | break; |
1812 | case FC_DATA_UNDRUN: | 1811 | case FC_DATA_UNDRUN: |
1813 | if (fsp->cdb_status == 0) { | 1812 | if ((fsp->cdb_status == 0) && !(fsp->req_flags & FC_SRB_READ)) { |
1814 | /* | 1813 | /* |
1815 | * scsi status is good but transport level | 1814 | * scsi status is good but transport level |
1816 | * underrun. for read it should be an error?? | 1815 | * underrun. |
1817 | */ | 1816 | */ |
1818 | sc_cmd->result = (DID_OK << 16) | fsp->cdb_status; | 1817 | sc_cmd->result = DID_OK << 16; |
1819 | } else { | 1818 | } else { |
1820 | /* | 1819 | /* |
1821 | * scsi got underrun, this is an error | 1820 | * scsi got underrun, this is an error |
@@ -1857,7 +1856,7 @@ static void fc_io_compl(struct fc_fcp_pkt *fsp) | |||
1857 | } | 1856 | } |
1858 | 1857 | ||
1859 | /** | 1858 | /** |
1860 | * fc_fcp_complete - complete processing of a fcp packet | 1859 | * fc_fcp_complete() - complete processing of a fcp packet |
1861 | * @fsp: fcp packet | 1860 | * @fsp: fcp packet |
1862 | * | 1861 | * |
1863 | * This function may sleep if a fsp timer is pending. | 1862 | * This function may sleep if a fsp timer is pending. |
@@ -1874,9 +1873,10 @@ void fc_fcp_complete(struct fc_fcp_pkt *fsp) | |||
1874 | EXPORT_SYMBOL(fc_fcp_complete); | 1873 | EXPORT_SYMBOL(fc_fcp_complete); |
1875 | 1874 | ||
1876 | /** | 1875 | /** |
1877 | * fc_eh_abort - Abort a command...from scsi host template | 1876 | * fc_eh_abort() - Abort a command |
1878 | * @sc_cmd: scsi command to abort | 1877 | * @sc_cmd: scsi command to abort |
1879 | * | 1878 | * |
1879 | * From scsi host template. | ||
1880 | * send ABTS to the target device and wait for the response | 1880 | * send ABTS to the target device and wait for the response |
1881 | * sc_cmd is the pointer to the command to be aborted. | 1881 | * sc_cmd is the pointer to the command to be aborted. |
1882 | */ | 1882 | */ |
@@ -1890,7 +1890,7 @@ int fc_eh_abort(struct scsi_cmnd *sc_cmd) | |||
1890 | lp = shost_priv(sc_cmd->device->host); | 1890 | lp = shost_priv(sc_cmd->device->host); |
1891 | if (lp->state != LPORT_ST_READY) | 1891 | if (lp->state != LPORT_ST_READY) |
1892 | return rc; | 1892 | return rc; |
1893 | else if (!(lp->link_status & FC_LINK_UP)) | 1893 | else if (!lp->link_up) |
1894 | return rc; | 1894 | return rc; |
1895 | 1895 | ||
1896 | spin_lock_irqsave(lp->host->host_lock, flags); | 1896 | spin_lock_irqsave(lp->host->host_lock, flags); |
@@ -1920,7 +1920,7 @@ release_pkt: | |||
1920 | EXPORT_SYMBOL(fc_eh_abort); | 1920 | EXPORT_SYMBOL(fc_eh_abort); |
1921 | 1921 | ||
1922 | /** | 1922 | /** |
1923 | * fc_eh_device_reset: Reset a single LUN | 1923 | * fc_eh_device_reset() Reset a single LUN |
1924 | * @sc_cmd: scsi command | 1924 | * @sc_cmd: scsi command |
1925 | * | 1925 | * |
1926 | * Set from scsi host template to send tm cmd to the target and wait for the | 1926 | * Set from scsi host template to send tm cmd to the target and wait for the |
@@ -1973,7 +1973,7 @@ out: | |||
1973 | EXPORT_SYMBOL(fc_eh_device_reset); | 1973 | EXPORT_SYMBOL(fc_eh_device_reset); |
1974 | 1974 | ||
1975 | /** | 1975 | /** |
1976 | * fc_eh_host_reset - The reset function will reset the ports on the host. | 1976 | * fc_eh_host_reset() - The reset function will reset the ports on the host. |
1977 | * @sc_cmd: scsi command | 1977 | * @sc_cmd: scsi command |
1978 | */ | 1978 | */ |
1979 | int fc_eh_host_reset(struct scsi_cmnd *sc_cmd) | 1979 | int fc_eh_host_reset(struct scsi_cmnd *sc_cmd) |
@@ -1999,7 +1999,7 @@ int fc_eh_host_reset(struct scsi_cmnd *sc_cmd) | |||
1999 | EXPORT_SYMBOL(fc_eh_host_reset); | 1999 | EXPORT_SYMBOL(fc_eh_host_reset); |
2000 | 2000 | ||
2001 | /** | 2001 | /** |
2002 | * fc_slave_alloc - configure queue depth | 2002 | * fc_slave_alloc() - configure queue depth |
2003 | * @sdev: scsi device | 2003 | * @sdev: scsi device |
2004 | * | 2004 | * |
2005 | * Configures queue depth based on host's cmd_per_len. If not set | 2005 | * Configures queue depth based on host's cmd_per_len. If not set |
diff --git a/drivers/scsi/libfc/fc_lport.c b/drivers/scsi/libfc/fc_lport.c index 0b9bdb1fb807..2ae50a1188e6 100644 --- a/drivers/scsi/libfc/fc_lport.c +++ b/drivers/scsi/libfc/fc_lport.c | |||
@@ -139,7 +139,7 @@ static int fc_frame_drop(struct fc_lport *lport, struct fc_frame *fp) | |||
139 | } | 139 | } |
140 | 140 | ||
141 | /** | 141 | /** |
142 | * fc_lport_rport_callback - Event handler for rport events | 142 | * fc_lport_rport_callback() - Event handler for rport events |
143 | * @lport: The lport which is receiving the event | 143 | * @lport: The lport which is receiving the event |
144 | * @rport: The rport which the event has occured on | 144 | * @rport: The rport which the event has occured on |
145 | * @event: The event that occured | 145 | * @event: The event that occured |
@@ -195,7 +195,7 @@ static void fc_lport_rport_callback(struct fc_lport *lport, | |||
195 | } | 195 | } |
196 | 196 | ||
197 | /** | 197 | /** |
198 | * fc_lport_state - Return a string which represents the lport's state | 198 | * fc_lport_state() - Return a string which represents the lport's state |
199 | * @lport: The lport whose state is to converted to a string | 199 | * @lport: The lport whose state is to converted to a string |
200 | */ | 200 | */ |
201 | static const char *fc_lport_state(struct fc_lport *lport) | 201 | static const char *fc_lport_state(struct fc_lport *lport) |
@@ -209,7 +209,7 @@ static const char *fc_lport_state(struct fc_lport *lport) | |||
209 | } | 209 | } |
210 | 210 | ||
211 | /** | 211 | /** |
212 | * fc_lport_ptp_setup - Create an rport for point-to-point mode | 212 | * fc_lport_ptp_setup() - Create an rport for point-to-point mode |
213 | * @lport: The lport to attach the ptp rport to | 213 | * @lport: The lport to attach the ptp rport to |
214 | * @fid: The FID of the ptp rport | 214 | * @fid: The FID of the ptp rport |
215 | * @remote_wwpn: The WWPN of the ptp rport | 215 | * @remote_wwpn: The WWPN of the ptp rport |
@@ -232,7 +232,7 @@ static void fc_lport_ptp_setup(struct fc_lport *lport, | |||
232 | lport->ptp_rp = NULL; | 232 | lport->ptp_rp = NULL; |
233 | } | 233 | } |
234 | 234 | ||
235 | lport->ptp_rp = fc_rport_rogue_create(&dp); | 235 | lport->ptp_rp = lport->tt.rport_create(&dp); |
236 | 236 | ||
237 | lport->tt.rport_login(lport->ptp_rp); | 237 | lport->tt.rport_login(lport->ptp_rp); |
238 | 238 | ||
@@ -250,7 +250,7 @@ void fc_get_host_port_state(struct Scsi_Host *shost) | |||
250 | { | 250 | { |
251 | struct fc_lport *lp = shost_priv(shost); | 251 | struct fc_lport *lp = shost_priv(shost); |
252 | 252 | ||
253 | if ((lp->link_status & FC_LINK_UP) == FC_LINK_UP) | 253 | if (lp->link_up) |
254 | fc_host_port_state(shost) = FC_PORTSTATE_ONLINE; | 254 | fc_host_port_state(shost) = FC_PORTSTATE_ONLINE; |
255 | else | 255 | else |
256 | fc_host_port_state(shost) = FC_PORTSTATE_OFFLINE; | 256 | fc_host_port_state(shost) = FC_PORTSTATE_OFFLINE; |
@@ -351,7 +351,7 @@ static void fc_lport_add_fc4_type(struct fc_lport *lport, enum fc_fh_type type) | |||
351 | } | 351 | } |
352 | 352 | ||
353 | /** | 353 | /** |
354 | * fc_lport_recv_rlir_req - Handle received Registered Link Incident Report. | 354 | * fc_lport_recv_rlir_req() - Handle received Registered Link Incident Report. |
355 | * @lport: Fibre Channel local port recieving the RLIR | 355 | * @lport: Fibre Channel local port recieving the RLIR |
356 | * @sp: current sequence in the RLIR exchange | 356 | * @sp: current sequence in the RLIR exchange |
357 | * @fp: RLIR request frame | 357 | * @fp: RLIR request frame |
@@ -370,7 +370,7 @@ static void fc_lport_recv_rlir_req(struct fc_seq *sp, struct fc_frame *fp, | |||
370 | } | 370 | } |
371 | 371 | ||
372 | /** | 372 | /** |
373 | * fc_lport_recv_echo_req - Handle received ECHO request | 373 | * fc_lport_recv_echo_req() - Handle received ECHO request |
374 | * @lport: Fibre Channel local port recieving the ECHO | 374 | * @lport: Fibre Channel local port recieving the ECHO |
375 | * @sp: current sequence in the ECHO exchange | 375 | * @sp: current sequence in the ECHO exchange |
376 | * @fp: ECHO request frame | 376 | * @fp: ECHO request frame |
@@ -412,7 +412,7 @@ static void fc_lport_recv_echo_req(struct fc_seq *sp, struct fc_frame *in_fp, | |||
412 | } | 412 | } |
413 | 413 | ||
414 | /** | 414 | /** |
415 | * fc_lport_recv_echo_req - Handle received Request Node ID data request | 415 | * fc_lport_recv_echo_req() - Handle received Request Node ID data request |
416 | * @lport: Fibre Channel local port recieving the RNID | 416 | * @lport: Fibre Channel local port recieving the RNID |
417 | * @sp: current sequence in the RNID exchange | 417 | * @sp: current sequence in the RNID exchange |
418 | * @fp: RNID request frame | 418 | * @fp: RNID request frame |
@@ -479,7 +479,7 @@ static void fc_lport_recv_rnid_req(struct fc_seq *sp, struct fc_frame *in_fp, | |||
479 | } | 479 | } |
480 | 480 | ||
481 | /** | 481 | /** |
482 | * fc_lport_recv_adisc_req - Handle received Address Discovery Request | 482 | * fc_lport_recv_adisc_req() - Handle received Address Discovery Request |
483 | * @lport: Fibre Channel local port recieving the ADISC | 483 | * @lport: Fibre Channel local port recieving the ADISC |
484 | * @sp: current sequence in the ADISC exchange | 484 | * @sp: current sequence in the ADISC exchange |
485 | * @fp: ADISC request frame | 485 | * @fp: ADISC request frame |
@@ -529,7 +529,7 @@ static void fc_lport_recv_adisc_req(struct fc_seq *sp, struct fc_frame *in_fp, | |||
529 | } | 529 | } |
530 | 530 | ||
531 | /** | 531 | /** |
532 | * fc_lport_recv_logo_req - Handle received fabric LOGO request | 532 | * fc_lport_recv_logo_req() - Handle received fabric LOGO request |
533 | * @lport: Fibre Channel local port recieving the LOGO | 533 | * @lport: Fibre Channel local port recieving the LOGO |
534 | * @sp: current sequence in the LOGO exchange | 534 | * @sp: current sequence in the LOGO exchange |
535 | * @fp: LOGO request frame | 535 | * @fp: LOGO request frame |
@@ -546,7 +546,7 @@ static void fc_lport_recv_logo_req(struct fc_seq *sp, struct fc_frame *fp, | |||
546 | } | 546 | } |
547 | 547 | ||
548 | /** | 548 | /** |
549 | * fc_fabric_login - Start the lport state machine | 549 | * fc_fabric_login() - Start the lport state machine |
550 | * @lport: The lport that should log into the fabric | 550 | * @lport: The lport that should log into the fabric |
551 | * | 551 | * |
552 | * Locking Note: This function should not be called | 552 | * Locking Note: This function should not be called |
@@ -568,7 +568,7 @@ int fc_fabric_login(struct fc_lport *lport) | |||
568 | EXPORT_SYMBOL(fc_fabric_login); | 568 | EXPORT_SYMBOL(fc_fabric_login); |
569 | 569 | ||
570 | /** | 570 | /** |
571 | * fc_linkup - Handler for transport linkup events | 571 | * fc_linkup() - Handler for transport linkup events |
572 | * @lport: The lport whose link is up | 572 | * @lport: The lport whose link is up |
573 | */ | 573 | */ |
574 | void fc_linkup(struct fc_lport *lport) | 574 | void fc_linkup(struct fc_lport *lport) |
@@ -577,8 +577,8 @@ void fc_linkup(struct fc_lport *lport) | |||
577 | fc_host_port_id(lport->host)); | 577 | fc_host_port_id(lport->host)); |
578 | 578 | ||
579 | mutex_lock(&lport->lp_mutex); | 579 | mutex_lock(&lport->lp_mutex); |
580 | if ((lport->link_status & FC_LINK_UP) != FC_LINK_UP) { | 580 | if (!lport->link_up) { |
581 | lport->link_status |= FC_LINK_UP; | 581 | lport->link_up = 1; |
582 | 582 | ||
583 | if (lport->state == LPORT_ST_RESET) | 583 | if (lport->state == LPORT_ST_RESET) |
584 | fc_lport_enter_flogi(lport); | 584 | fc_lport_enter_flogi(lport); |
@@ -588,7 +588,7 @@ void fc_linkup(struct fc_lport *lport) | |||
588 | EXPORT_SYMBOL(fc_linkup); | 588 | EXPORT_SYMBOL(fc_linkup); |
589 | 589 | ||
590 | /** | 590 | /** |
591 | * fc_linkdown - Handler for transport linkdown events | 591 | * fc_linkdown() - Handler for transport linkdown events |
592 | * @lport: The lport whose link is down | 592 | * @lport: The lport whose link is down |
593 | */ | 593 | */ |
594 | void fc_linkdown(struct fc_lport *lport) | 594 | void fc_linkdown(struct fc_lport *lport) |
@@ -597,8 +597,8 @@ void fc_linkdown(struct fc_lport *lport) | |||
597 | FC_DEBUG_LPORT("Link is down for port (%6x)\n", | 597 | FC_DEBUG_LPORT("Link is down for port (%6x)\n", |
598 | fc_host_port_id(lport->host)); | 598 | fc_host_port_id(lport->host)); |
599 | 599 | ||
600 | if ((lport->link_status & FC_LINK_UP) == FC_LINK_UP) { | 600 | if (lport->link_up) { |
601 | lport->link_status &= ~(FC_LINK_UP); | 601 | lport->link_up = 0; |
602 | fc_lport_enter_reset(lport); | 602 | fc_lport_enter_reset(lport); |
603 | lport->tt.fcp_cleanup(lport); | 603 | lport->tt.fcp_cleanup(lport); |
604 | } | 604 | } |
@@ -607,48 +607,25 @@ void fc_linkdown(struct fc_lport *lport) | |||
607 | EXPORT_SYMBOL(fc_linkdown); | 607 | EXPORT_SYMBOL(fc_linkdown); |
608 | 608 | ||
609 | /** | 609 | /** |
610 | * fc_pause - Pause the flow of frames | 610 | * fc_fabric_logoff() - Logout of the fabric |
611 | * @lport: The lport to be paused | ||
612 | */ | ||
613 | void fc_pause(struct fc_lport *lport) | ||
614 | { | ||
615 | mutex_lock(&lport->lp_mutex); | ||
616 | lport->link_status |= FC_PAUSE; | ||
617 | mutex_unlock(&lport->lp_mutex); | ||
618 | } | ||
619 | EXPORT_SYMBOL(fc_pause); | ||
620 | |||
621 | /** | ||
622 | * fc_unpause - Unpause the flow of frames | ||
623 | * @lport: The lport to be unpaused | ||
624 | */ | ||
625 | void fc_unpause(struct fc_lport *lport) | ||
626 | { | ||
627 | mutex_lock(&lport->lp_mutex); | ||
628 | lport->link_status &= ~(FC_PAUSE); | ||
629 | mutex_unlock(&lport->lp_mutex); | ||
630 | } | ||
631 | EXPORT_SYMBOL(fc_unpause); | ||
632 | |||
633 | /** | ||
634 | * fc_fabric_logoff - Logout of the fabric | ||
635 | * @lport: fc_lport pointer to logoff the fabric | 611 | * @lport: fc_lport pointer to logoff the fabric |
636 | * | 612 | * |
637 | * Return value: | 613 | * Return value: |
638 | * 0 for success, -1 for failure | 614 | * 0 for success, -1 for failure |
639 | **/ | 615 | */ |
640 | int fc_fabric_logoff(struct fc_lport *lport) | 616 | int fc_fabric_logoff(struct fc_lport *lport) |
641 | { | 617 | { |
642 | lport->tt.disc_stop_final(lport); | 618 | lport->tt.disc_stop_final(lport); |
643 | mutex_lock(&lport->lp_mutex); | 619 | mutex_lock(&lport->lp_mutex); |
644 | fc_lport_enter_logo(lport); | 620 | fc_lport_enter_logo(lport); |
645 | mutex_unlock(&lport->lp_mutex); | 621 | mutex_unlock(&lport->lp_mutex); |
622 | cancel_delayed_work_sync(&lport->retry_work); | ||
646 | return 0; | 623 | return 0; |
647 | } | 624 | } |
648 | EXPORT_SYMBOL(fc_fabric_logoff); | 625 | EXPORT_SYMBOL(fc_fabric_logoff); |
649 | 626 | ||
650 | /** | 627 | /** |
651 | * fc_lport_destroy - unregister a fc_lport | 628 | * fc_lport_destroy() - unregister a fc_lport |
652 | * @lport: fc_lport pointer to unregister | 629 | * @lport: fc_lport pointer to unregister |
653 | * | 630 | * |
654 | * Return value: | 631 | * Return value: |
@@ -658,26 +635,25 @@ EXPORT_SYMBOL(fc_fabric_logoff); | |||
658 | * clean-up all the allocated memory | 635 | * clean-up all the allocated memory |
659 | * and free up other system resources. | 636 | * and free up other system resources. |
660 | * | 637 | * |
661 | **/ | 638 | */ |
662 | int fc_lport_destroy(struct fc_lport *lport) | 639 | int fc_lport_destroy(struct fc_lport *lport) |
663 | { | 640 | { |
664 | lport->tt.frame_send = fc_frame_drop; | 641 | lport->tt.frame_send = fc_frame_drop; |
665 | lport->tt.fcp_abort_io(lport); | 642 | lport->tt.fcp_abort_io(lport); |
666 | lport->tt.exch_mgr_reset(lport->emp, 0, 0); | 643 | lport->tt.exch_mgr_reset(lport, 0, 0); |
667 | return 0; | 644 | return 0; |
668 | } | 645 | } |
669 | EXPORT_SYMBOL(fc_lport_destroy); | 646 | EXPORT_SYMBOL(fc_lport_destroy); |
670 | 647 | ||
671 | /** | 648 | /** |
672 | * fc_set_mfs - sets up the mfs for the corresponding fc_lport | 649 | * fc_set_mfs() - sets up the mfs for the corresponding fc_lport |
673 | * @lport: fc_lport pointer to unregister | 650 | * @lport: fc_lport pointer to unregister |
674 | * @mfs: the new mfs for fc_lport | 651 | * @mfs: the new mfs for fc_lport |
675 | * | 652 | * |
676 | * Set mfs for the given fc_lport to the new mfs. | 653 | * Set mfs for the given fc_lport to the new mfs. |
677 | * | 654 | * |
678 | * Return: 0 for success | 655 | * Return: 0 for success |
679 | * | 656 | */ |
680 | **/ | ||
681 | int fc_set_mfs(struct fc_lport *lport, u32 mfs) | 657 | int fc_set_mfs(struct fc_lport *lport, u32 mfs) |
682 | { | 658 | { |
683 | unsigned int old_mfs; | 659 | unsigned int old_mfs; |
@@ -706,7 +682,7 @@ int fc_set_mfs(struct fc_lport *lport, u32 mfs) | |||
706 | EXPORT_SYMBOL(fc_set_mfs); | 682 | EXPORT_SYMBOL(fc_set_mfs); |
707 | 683 | ||
708 | /** | 684 | /** |
709 | * fc_lport_disc_callback - Callback for discovery events | 685 | * fc_lport_disc_callback() - Callback for discovery events |
710 | * @lport: FC local port | 686 | * @lport: FC local port |
711 | * @event: The discovery event | 687 | * @event: The discovery event |
712 | */ | 688 | */ |
@@ -731,7 +707,7 @@ void fc_lport_disc_callback(struct fc_lport *lport, enum fc_disc_event event) | |||
731 | } | 707 | } |
732 | 708 | ||
733 | /** | 709 | /** |
734 | * fc_rport_enter_ready - Enter the ready state and start discovery | 710 | * fc_rport_enter_ready() - Enter the ready state and start discovery |
735 | * @lport: Fibre Channel local port that is ready | 711 | * @lport: Fibre Channel local port that is ready |
736 | * | 712 | * |
737 | * Locking Note: The lport lock is expected to be held before calling | 713 | * Locking Note: The lport lock is expected to be held before calling |
@@ -748,7 +724,7 @@ static void fc_lport_enter_ready(struct fc_lport *lport) | |||
748 | } | 724 | } |
749 | 725 | ||
750 | /** | 726 | /** |
751 | * fc_lport_recv_flogi_req - Receive a FLOGI request | 727 | * fc_lport_recv_flogi_req() - Receive a FLOGI request |
752 | * @sp_in: The sequence the FLOGI is on | 728 | * @sp_in: The sequence the FLOGI is on |
753 | * @rx_fp: The frame the FLOGI is in | 729 | * @rx_fp: The frame the FLOGI is in |
754 | * @lport: The lport that recieved the request | 730 | * @lport: The lport that recieved the request |
@@ -838,7 +814,7 @@ out: | |||
838 | } | 814 | } |
839 | 815 | ||
840 | /** | 816 | /** |
841 | * fc_lport_recv_req - The generic lport request handler | 817 | * fc_lport_recv_req() - The generic lport request handler |
842 | * @lport: The lport that received the request | 818 | * @lport: The lport that received the request |
843 | * @sp: The sequence the request is on | 819 | * @sp: The sequence the request is on |
844 | * @fp: The frame the request is in | 820 | * @fp: The frame the request is in |
@@ -934,7 +910,7 @@ static void fc_lport_recv_req(struct fc_lport *lport, struct fc_seq *sp, | |||
934 | } | 910 | } |
935 | 911 | ||
936 | /** | 912 | /** |
937 | * fc_lport_reset - Reset an lport | 913 | * fc_lport_reset() - Reset an lport |
938 | * @lport: The lport which should be reset | 914 | * @lport: The lport which should be reset |
939 | * | 915 | * |
940 | * Locking Note: This functions should not be called with the | 916 | * Locking Note: This functions should not be called with the |
@@ -942,6 +918,7 @@ static void fc_lport_recv_req(struct fc_lport *lport, struct fc_seq *sp, | |||
942 | */ | 918 | */ |
943 | int fc_lport_reset(struct fc_lport *lport) | 919 | int fc_lport_reset(struct fc_lport *lport) |
944 | { | 920 | { |
921 | cancel_delayed_work_sync(&lport->retry_work); | ||
945 | mutex_lock(&lport->lp_mutex); | 922 | mutex_lock(&lport->lp_mutex); |
946 | fc_lport_enter_reset(lport); | 923 | fc_lport_enter_reset(lport); |
947 | mutex_unlock(&lport->lp_mutex); | 924 | mutex_unlock(&lport->lp_mutex); |
@@ -950,7 +927,7 @@ int fc_lport_reset(struct fc_lport *lport) | |||
950 | EXPORT_SYMBOL(fc_lport_reset); | 927 | EXPORT_SYMBOL(fc_lport_reset); |
951 | 928 | ||
952 | /** | 929 | /** |
953 | * fc_rport_enter_reset - Reset the local port | 930 | * fc_rport_enter_reset() - Reset the local port |
954 | * @lport: Fibre Channel local port to be reset | 931 | * @lport: Fibre Channel local port to be reset |
955 | * | 932 | * |
956 | * Locking Note: The lport lock is expected to be held before calling | 933 | * Locking Note: The lport lock is expected to be held before calling |
@@ -973,16 +950,16 @@ static void fc_lport_enter_reset(struct fc_lport *lport) | |||
973 | 950 | ||
974 | lport->tt.disc_stop(lport); | 951 | lport->tt.disc_stop(lport); |
975 | 952 | ||
976 | lport->tt.exch_mgr_reset(lport->emp, 0, 0); | 953 | lport->tt.exch_mgr_reset(lport, 0, 0); |
977 | fc_host_fabric_name(lport->host) = 0; | 954 | fc_host_fabric_name(lport->host) = 0; |
978 | fc_host_port_id(lport->host) = 0; | 955 | fc_host_port_id(lport->host) = 0; |
979 | 956 | ||
980 | if ((lport->link_status & FC_LINK_UP) == FC_LINK_UP) | 957 | if (lport->link_up) |
981 | fc_lport_enter_flogi(lport); | 958 | fc_lport_enter_flogi(lport); |
982 | } | 959 | } |
983 | 960 | ||
984 | /** | 961 | /** |
985 | * fc_lport_error - Handler for any errors | 962 | * fc_lport_error() - Handler for any errors |
986 | * @lport: The fc_lport object | 963 | * @lport: The fc_lport object |
987 | * @fp: The frame pointer | 964 | * @fp: The frame pointer |
988 | * | 965 | * |
@@ -1029,8 +1006,8 @@ static void fc_lport_error(struct fc_lport *lport, struct fc_frame *fp) | |||
1029 | } | 1006 | } |
1030 | 1007 | ||
1031 | /** | 1008 | /** |
1032 | * fc_lport_rft_id_resp - Handle response to Register Fibre | 1009 | * fc_lport_rft_id_resp() - Handle response to Register Fibre |
1033 | * Channel Types by ID (RPN_ID) request | 1010 | * Channel Types by ID (RPN_ID) request |
1034 | * @sp: current sequence in RPN_ID exchange | 1011 | * @sp: current sequence in RPN_ID exchange |
1035 | * @fp: response frame | 1012 | * @fp: response frame |
1036 | * @lp_arg: Fibre Channel host port instance | 1013 | * @lp_arg: Fibre Channel host port instance |
@@ -1053,17 +1030,17 @@ static void fc_lport_rft_id_resp(struct fc_seq *sp, struct fc_frame *fp, | |||
1053 | 1030 | ||
1054 | FC_DEBUG_LPORT("Received a RFT_ID response\n"); | 1031 | FC_DEBUG_LPORT("Received a RFT_ID response\n"); |
1055 | 1032 | ||
1033 | if (IS_ERR(fp)) { | ||
1034 | fc_lport_error(lport, fp); | ||
1035 | goto err; | ||
1036 | } | ||
1037 | |||
1056 | if (lport->state != LPORT_ST_RFT_ID) { | 1038 | if (lport->state != LPORT_ST_RFT_ID) { |
1057 | FC_DBG("Received a RFT_ID response, but in state %s\n", | 1039 | FC_DBG("Received a RFT_ID response, but in state %s\n", |
1058 | fc_lport_state(lport)); | 1040 | fc_lport_state(lport)); |
1059 | goto out; | 1041 | goto out; |
1060 | } | 1042 | } |
1061 | 1043 | ||
1062 | if (IS_ERR(fp)) { | ||
1063 | fc_lport_error(lport, fp); | ||
1064 | goto err; | ||
1065 | } | ||
1066 | |||
1067 | fh = fc_frame_header_get(fp); | 1044 | fh = fc_frame_header_get(fp); |
1068 | ct = fc_frame_payload_get(fp, sizeof(*ct)); | 1045 | ct = fc_frame_payload_get(fp, sizeof(*ct)); |
1069 | 1046 | ||
@@ -1081,8 +1058,8 @@ err: | |||
1081 | } | 1058 | } |
1082 | 1059 | ||
1083 | /** | 1060 | /** |
1084 | * fc_lport_rpn_id_resp - Handle response to Register Port | 1061 | * fc_lport_rpn_id_resp() - Handle response to Register Port |
1085 | * Name by ID (RPN_ID) request | 1062 | * Name by ID (RPN_ID) request |
1086 | * @sp: current sequence in RPN_ID exchange | 1063 | * @sp: current sequence in RPN_ID exchange |
1087 | * @fp: response frame | 1064 | * @fp: response frame |
1088 | * @lp_arg: Fibre Channel host port instance | 1065 | * @lp_arg: Fibre Channel host port instance |
@@ -1105,17 +1082,17 @@ static void fc_lport_rpn_id_resp(struct fc_seq *sp, struct fc_frame *fp, | |||
1105 | 1082 | ||
1106 | FC_DEBUG_LPORT("Received a RPN_ID response\n"); | 1083 | FC_DEBUG_LPORT("Received a RPN_ID response\n"); |
1107 | 1084 | ||
1085 | if (IS_ERR(fp)) { | ||
1086 | fc_lport_error(lport, fp); | ||
1087 | goto err; | ||
1088 | } | ||
1089 | |||
1108 | if (lport->state != LPORT_ST_RPN_ID) { | 1090 | if (lport->state != LPORT_ST_RPN_ID) { |
1109 | FC_DBG("Received a RPN_ID response, but in state %s\n", | 1091 | FC_DBG("Received a RPN_ID response, but in state %s\n", |
1110 | fc_lport_state(lport)); | 1092 | fc_lport_state(lport)); |
1111 | goto out; | 1093 | goto out; |
1112 | } | 1094 | } |
1113 | 1095 | ||
1114 | if (IS_ERR(fp)) { | ||
1115 | fc_lport_error(lport, fp); | ||
1116 | goto err; | ||
1117 | } | ||
1118 | |||
1119 | fh = fc_frame_header_get(fp); | 1096 | fh = fc_frame_header_get(fp); |
1120 | ct = fc_frame_payload_get(fp, sizeof(*ct)); | 1097 | ct = fc_frame_payload_get(fp, sizeof(*ct)); |
1121 | if (fh && ct && fh->fh_type == FC_TYPE_CT && | 1098 | if (fh && ct && fh->fh_type == FC_TYPE_CT && |
@@ -1133,7 +1110,7 @@ err: | |||
1133 | } | 1110 | } |
1134 | 1111 | ||
1135 | /** | 1112 | /** |
1136 | * fc_lport_scr_resp - Handle response to State Change Register (SCR) request | 1113 | * fc_lport_scr_resp() - Handle response to State Change Register (SCR) request |
1137 | * @sp: current sequence in SCR exchange | 1114 | * @sp: current sequence in SCR exchange |
1138 | * @fp: response frame | 1115 | * @fp: response frame |
1139 | * @lp_arg: Fibre Channel lport port instance that sent the registration request | 1116 | * @lp_arg: Fibre Channel lport port instance that sent the registration request |
@@ -1155,17 +1132,17 @@ static void fc_lport_scr_resp(struct fc_seq *sp, struct fc_frame *fp, | |||
1155 | 1132 | ||
1156 | FC_DEBUG_LPORT("Received a SCR response\n"); | 1133 | FC_DEBUG_LPORT("Received a SCR response\n"); |
1157 | 1134 | ||
1135 | if (IS_ERR(fp)) { | ||
1136 | fc_lport_error(lport, fp); | ||
1137 | goto err; | ||
1138 | } | ||
1139 | |||
1158 | if (lport->state != LPORT_ST_SCR) { | 1140 | if (lport->state != LPORT_ST_SCR) { |
1159 | FC_DBG("Received a SCR response, but in state %s\n", | 1141 | FC_DBG("Received a SCR response, but in state %s\n", |
1160 | fc_lport_state(lport)); | 1142 | fc_lport_state(lport)); |
1161 | goto out; | 1143 | goto out; |
1162 | } | 1144 | } |
1163 | 1145 | ||
1164 | if (IS_ERR(fp)) { | ||
1165 | fc_lport_error(lport, fp); | ||
1166 | goto err; | ||
1167 | } | ||
1168 | |||
1169 | op = fc_frame_payload_op(fp); | 1146 | op = fc_frame_payload_op(fp); |
1170 | if (op == ELS_LS_ACC) | 1147 | if (op == ELS_LS_ACC) |
1171 | fc_lport_enter_ready(lport); | 1148 | fc_lport_enter_ready(lport); |
@@ -1179,7 +1156,7 @@ err: | |||
1179 | } | 1156 | } |
1180 | 1157 | ||
1181 | /** | 1158 | /** |
1182 | * fc_lport_enter_scr - Send a State Change Register (SCR) request | 1159 | * fc_lport_enter_scr() - Send a State Change Register (SCR) request |
1183 | * @lport: Fibre Channel local port to register for state changes | 1160 | * @lport: Fibre Channel local port to register for state changes |
1184 | * | 1161 | * |
1185 | * Locking Note: The lport lock is expected to be held before calling | 1162 | * Locking Note: The lport lock is expected to be held before calling |
@@ -1206,7 +1183,7 @@ static void fc_lport_enter_scr(struct fc_lport *lport) | |||
1206 | } | 1183 | } |
1207 | 1184 | ||
1208 | /** | 1185 | /** |
1209 | * fc_lport_enter_rft_id - Register FC4-types with the name server | 1186 | * fc_lport_enter_rft_id() - Register FC4-types with the name server |
1210 | * @lport: Fibre Channel local port to register | 1187 | * @lport: Fibre Channel local port to register |
1211 | * | 1188 | * |
1212 | * Locking Note: The lport lock is expected to be held before calling | 1189 | * Locking Note: The lport lock is expected to be held before calling |
@@ -1248,7 +1225,7 @@ static void fc_lport_enter_rft_id(struct fc_lport *lport) | |||
1248 | } | 1225 | } |
1249 | 1226 | ||
1250 | /** | 1227 | /** |
1251 | * fc_rport_enter_rft_id - Register port name with the name server | 1228 | * fc_rport_enter_rft_id() - Register port name with the name server |
1252 | * @lport: Fibre Channel local port to register | 1229 | * @lport: Fibre Channel local port to register |
1253 | * | 1230 | * |
1254 | * Locking Note: The lport lock is expected to be held before calling | 1231 | * Locking Note: The lport lock is expected to be held before calling |
@@ -1281,7 +1258,7 @@ static struct fc_rport_operations fc_lport_rport_ops = { | |||
1281 | }; | 1258 | }; |
1282 | 1259 | ||
1283 | /** | 1260 | /** |
1284 | * fc_rport_enter_dns - Create a rport to the name server | 1261 | * fc_rport_enter_dns() - Create a rport to the name server |
1285 | * @lport: Fibre Channel local port requesting a rport for the name server | 1262 | * @lport: Fibre Channel local port requesting a rport for the name server |
1286 | * | 1263 | * |
1287 | * Locking Note: The lport lock is expected to be held before calling | 1264 | * Locking Note: The lport lock is expected to be held before calling |
@@ -1304,7 +1281,7 @@ static void fc_lport_enter_dns(struct fc_lport *lport) | |||
1304 | 1281 | ||
1305 | fc_lport_state_enter(lport, LPORT_ST_DNS); | 1282 | fc_lport_state_enter(lport, LPORT_ST_DNS); |
1306 | 1283 | ||
1307 | rport = fc_rport_rogue_create(&dp); | 1284 | rport = lport->tt.rport_create(&dp); |
1308 | if (!rport) | 1285 | if (!rport) |
1309 | goto err; | 1286 | goto err; |
1310 | 1287 | ||
@@ -1318,7 +1295,7 @@ err: | |||
1318 | } | 1295 | } |
1319 | 1296 | ||
1320 | /** | 1297 | /** |
1321 | * fc_lport_timeout - Handler for the retry_work timer. | 1298 | * fc_lport_timeout() - Handler for the retry_work timer. |
1322 | * @work: The work struct of the fc_lport | 1299 | * @work: The work struct of the fc_lport |
1323 | */ | 1300 | */ |
1324 | static void fc_lport_timeout(struct work_struct *work) | 1301 | static void fc_lport_timeout(struct work_struct *work) |
@@ -1359,7 +1336,7 @@ static void fc_lport_timeout(struct work_struct *work) | |||
1359 | } | 1336 | } |
1360 | 1337 | ||
1361 | /** | 1338 | /** |
1362 | * fc_lport_logo_resp - Handle response to LOGO request | 1339 | * fc_lport_logo_resp() - Handle response to LOGO request |
1363 | * @sp: current sequence in LOGO exchange | 1340 | * @sp: current sequence in LOGO exchange |
1364 | * @fp: response frame | 1341 | * @fp: response frame |
1365 | * @lp_arg: Fibre Channel lport port instance that sent the LOGO request | 1342 | * @lp_arg: Fibre Channel lport port instance that sent the LOGO request |
@@ -1381,17 +1358,17 @@ static void fc_lport_logo_resp(struct fc_seq *sp, struct fc_frame *fp, | |||
1381 | 1358 | ||
1382 | FC_DEBUG_LPORT("Received a LOGO response\n"); | 1359 | FC_DEBUG_LPORT("Received a LOGO response\n"); |
1383 | 1360 | ||
1361 | if (IS_ERR(fp)) { | ||
1362 | fc_lport_error(lport, fp); | ||
1363 | goto err; | ||
1364 | } | ||
1365 | |||
1384 | if (lport->state != LPORT_ST_LOGO) { | 1366 | if (lport->state != LPORT_ST_LOGO) { |
1385 | FC_DBG("Received a LOGO response, but in state %s\n", | 1367 | FC_DBG("Received a LOGO response, but in state %s\n", |
1386 | fc_lport_state(lport)); | 1368 | fc_lport_state(lport)); |
1387 | goto out; | 1369 | goto out; |
1388 | } | 1370 | } |
1389 | 1371 | ||
1390 | if (IS_ERR(fp)) { | ||
1391 | fc_lport_error(lport, fp); | ||
1392 | goto err; | ||
1393 | } | ||
1394 | |||
1395 | op = fc_frame_payload_op(fp); | 1372 | op = fc_frame_payload_op(fp); |
1396 | if (op == ELS_LS_ACC) | 1373 | if (op == ELS_LS_ACC) |
1397 | fc_lport_enter_reset(lport); | 1374 | fc_lport_enter_reset(lport); |
@@ -1405,7 +1382,7 @@ err: | |||
1405 | } | 1382 | } |
1406 | 1383 | ||
1407 | /** | 1384 | /** |
1408 | * fc_rport_enter_logo - Logout of the fabric | 1385 | * fc_rport_enter_logo() - Logout of the fabric |
1409 | * @lport: Fibre Channel local port to be logged out | 1386 | * @lport: Fibre Channel local port to be logged out |
1410 | * | 1387 | * |
1411 | * Locking Note: The lport lock is expected to be held before calling | 1388 | * Locking Note: The lport lock is expected to be held before calling |
@@ -1437,7 +1414,7 @@ static void fc_lport_enter_logo(struct fc_lport *lport) | |||
1437 | } | 1414 | } |
1438 | 1415 | ||
1439 | /** | 1416 | /** |
1440 | * fc_lport_flogi_resp - Handle response to FLOGI request | 1417 | * fc_lport_flogi_resp() - Handle response to FLOGI request |
1441 | * @sp: current sequence in FLOGI exchange | 1418 | * @sp: current sequence in FLOGI exchange |
1442 | * @fp: response frame | 1419 | * @fp: response frame |
1443 | * @lp_arg: Fibre Channel lport port instance that sent the FLOGI request | 1420 | * @lp_arg: Fibre Channel lport port instance that sent the FLOGI request |
@@ -1465,17 +1442,17 @@ static void fc_lport_flogi_resp(struct fc_seq *sp, struct fc_frame *fp, | |||
1465 | 1442 | ||
1466 | FC_DEBUG_LPORT("Received a FLOGI response\n"); | 1443 | FC_DEBUG_LPORT("Received a FLOGI response\n"); |
1467 | 1444 | ||
1445 | if (IS_ERR(fp)) { | ||
1446 | fc_lport_error(lport, fp); | ||
1447 | goto err; | ||
1448 | } | ||
1449 | |||
1468 | if (lport->state != LPORT_ST_FLOGI) { | 1450 | if (lport->state != LPORT_ST_FLOGI) { |
1469 | FC_DBG("Received a FLOGI response, but in state %s\n", | 1451 | FC_DBG("Received a FLOGI response, but in state %s\n", |
1470 | fc_lport_state(lport)); | 1452 | fc_lport_state(lport)); |
1471 | goto out; | 1453 | goto out; |
1472 | } | 1454 | } |
1473 | 1455 | ||
1474 | if (IS_ERR(fp)) { | ||
1475 | fc_lport_error(lport, fp); | ||
1476 | goto err; | ||
1477 | } | ||
1478 | |||
1479 | fh = fc_frame_header_get(fp); | 1456 | fh = fc_frame_header_get(fp); |
1480 | did = ntoh24(fh->fh_d_id); | 1457 | did = ntoh24(fh->fh_d_id); |
1481 | if (fc_frame_payload_op(fp) == ELS_LS_ACC && did != 0) { | 1458 | if (fc_frame_payload_op(fp) == ELS_LS_ACC && did != 0) { |
@@ -1532,7 +1509,7 @@ err: | |||
1532 | } | 1509 | } |
1533 | 1510 | ||
1534 | /** | 1511 | /** |
1535 | * fc_rport_enter_flogi - Send a FLOGI request to the fabric manager | 1512 | * fc_rport_enter_flogi() - Send a FLOGI request to the fabric manager |
1536 | * @lport: Fibre Channel local port to be logged in to the fabric | 1513 | * @lport: Fibre Channel local port to be logged in to the fabric |
1537 | * | 1514 | * |
1538 | * Locking Note: The lport lock is expected to be held before calling | 1515 | * Locking Note: The lport lock is expected to be held before calling |
diff --git a/drivers/scsi/libfc/fc_rport.c b/drivers/scsi/libfc/fc_rport.c index e780d8caf70e..dae65133a833 100644 --- a/drivers/scsi/libfc/fc_rport.c +++ b/drivers/scsi/libfc/fc_rport.c | |||
@@ -81,6 +81,7 @@ static void fc_rport_recv_logo_req(struct fc_rport *, | |||
81 | struct fc_seq *, struct fc_frame *); | 81 | struct fc_seq *, struct fc_frame *); |
82 | static void fc_rport_timeout(struct work_struct *); | 82 | static void fc_rport_timeout(struct work_struct *); |
83 | static void fc_rport_error(struct fc_rport *, struct fc_frame *); | 83 | static void fc_rport_error(struct fc_rport *, struct fc_frame *); |
84 | static void fc_rport_error_retry(struct fc_rport *, struct fc_frame *); | ||
84 | static void fc_rport_work(struct work_struct *); | 85 | static void fc_rport_work(struct work_struct *); |
85 | 86 | ||
86 | static const char *fc_rport_state_names[] = { | 87 | static const char *fc_rport_state_names[] = { |
@@ -145,7 +146,7 @@ struct fc_rport *fc_rport_rogue_create(struct fc_disc_port *dp) | |||
145 | } | 146 | } |
146 | 147 | ||
147 | /** | 148 | /** |
148 | * fc_rport_state - return a string for the state the rport is in | 149 | * fc_rport_state() - return a string for the state the rport is in |
149 | * @rport: The rport whose state we want to get a string for | 150 | * @rport: The rport whose state we want to get a string for |
150 | */ | 151 | */ |
151 | static const char *fc_rport_state(struct fc_rport *rport) | 152 | static const char *fc_rport_state(struct fc_rport *rport) |
@@ -160,7 +161,7 @@ static const char *fc_rport_state(struct fc_rport *rport) | |||
160 | } | 161 | } |
161 | 162 | ||
162 | /** | 163 | /** |
163 | * fc_set_rport_loss_tmo - Set the remote port loss timeout in seconds. | 164 | * fc_set_rport_loss_tmo() - Set the remote port loss timeout in seconds. |
164 | * @rport: Pointer to Fibre Channel remote port structure | 165 | * @rport: Pointer to Fibre Channel remote port structure |
165 | * @timeout: timeout in seconds | 166 | * @timeout: timeout in seconds |
166 | */ | 167 | */ |
@@ -174,12 +175,12 @@ void fc_set_rport_loss_tmo(struct fc_rport *rport, u32 timeout) | |||
174 | EXPORT_SYMBOL(fc_set_rport_loss_tmo); | 175 | EXPORT_SYMBOL(fc_set_rport_loss_tmo); |
175 | 176 | ||
176 | /** | 177 | /** |
177 | * fc_plogi_get_maxframe - Get max payload from the common service parameters | 178 | * fc_plogi_get_maxframe() - Get max payload from the common service parameters |
178 | * @flp: FLOGI payload structure | 179 | * @flp: FLOGI payload structure |
179 | * @maxval: upper limit, may be less than what is in the service parameters | 180 | * @maxval: upper limit, may be less than what is in the service parameters |
180 | */ | 181 | */ |
181 | static unsigned int | 182 | static unsigned int fc_plogi_get_maxframe(struct fc_els_flogi *flp, |
182 | fc_plogi_get_maxframe(struct fc_els_flogi *flp, unsigned int maxval) | 183 | unsigned int maxval) |
183 | { | 184 | { |
184 | unsigned int mfs; | 185 | unsigned int mfs; |
185 | 186 | ||
@@ -197,7 +198,7 @@ fc_plogi_get_maxframe(struct fc_els_flogi *flp, unsigned int maxval) | |||
197 | } | 198 | } |
198 | 199 | ||
199 | /** | 200 | /** |
200 | * fc_rport_state_enter - Change the rport's state | 201 | * fc_rport_state_enter() - Change the rport's state |
201 | * @rport: The rport whose state should change | 202 | * @rport: The rport whose state should change |
202 | * @new: The new state of the rport | 203 | * @new: The new state of the rport |
203 | * | 204 | * |
@@ -214,6 +215,7 @@ static void fc_rport_state_enter(struct fc_rport *rport, | |||
214 | 215 | ||
215 | static void fc_rport_work(struct work_struct *work) | 216 | static void fc_rport_work(struct work_struct *work) |
216 | { | 217 | { |
218 | u32 port_id; | ||
217 | struct fc_rport_libfc_priv *rdata = | 219 | struct fc_rport_libfc_priv *rdata = |
218 | container_of(work, struct fc_rport_libfc_priv, event_work); | 220 | container_of(work, struct fc_rport_libfc_priv, event_work); |
219 | enum fc_rport_event event; | 221 | enum fc_rport_event event; |
@@ -279,14 +281,18 @@ static void fc_rport_work(struct work_struct *work) | |||
279 | rport_ops->event_callback(lport, rport, event); | 281 | rport_ops->event_callback(lport, rport, event); |
280 | if (trans_state == FC_PORTSTATE_ROGUE) | 282 | if (trans_state == FC_PORTSTATE_ROGUE) |
281 | put_device(&rport->dev); | 283 | put_device(&rport->dev); |
282 | else | 284 | else { |
285 | port_id = rport->port_id; | ||
283 | fc_remote_port_delete(rport); | 286 | fc_remote_port_delete(rport); |
287 | lport->tt.exch_mgr_reset(lport, 0, port_id); | ||
288 | lport->tt.exch_mgr_reset(lport, port_id, 0); | ||
289 | } | ||
284 | } else | 290 | } else |
285 | mutex_unlock(&rdata->rp_mutex); | 291 | mutex_unlock(&rdata->rp_mutex); |
286 | } | 292 | } |
287 | 293 | ||
288 | /** | 294 | /** |
289 | * fc_rport_login - Start the remote port login state machine | 295 | * fc_rport_login() - Start the remote port login state machine |
290 | * @rport: Fibre Channel remote port | 296 | * @rport: Fibre Channel remote port |
291 | * | 297 | * |
292 | * Locking Note: Called without the rport lock held. This | 298 | * Locking Note: Called without the rport lock held. This |
@@ -309,7 +315,7 @@ int fc_rport_login(struct fc_rport *rport) | |||
309 | } | 315 | } |
310 | 316 | ||
311 | /** | 317 | /** |
312 | * fc_rport_logoff - Logoff and remove an rport | 318 | * fc_rport_logoff() - Logoff and remove an rport |
313 | * @rport: Fibre Channel remote port to be removed | 319 | * @rport: Fibre Channel remote port to be removed |
314 | * | 320 | * |
315 | * Locking Note: Called without the rport lock held. This | 321 | * Locking Note: Called without the rport lock held. This |
@@ -347,7 +353,7 @@ int fc_rport_logoff(struct fc_rport *rport) | |||
347 | } | 353 | } |
348 | 354 | ||
349 | /** | 355 | /** |
350 | * fc_rport_enter_ready - The rport is ready | 356 | * fc_rport_enter_ready() - The rport is ready |
351 | * @rport: Fibre Channel remote port that is ready | 357 | * @rport: Fibre Channel remote port that is ready |
352 | * | 358 | * |
353 | * Locking Note: The rport lock is expected to be held before calling | 359 | * Locking Note: The rport lock is expected to be held before calling |
@@ -366,7 +372,7 @@ static void fc_rport_enter_ready(struct fc_rport *rport) | |||
366 | } | 372 | } |
367 | 373 | ||
368 | /** | 374 | /** |
369 | * fc_rport_timeout - Handler for the retry_work timer. | 375 | * fc_rport_timeout() - Handler for the retry_work timer. |
370 | * @work: The work struct of the fc_rport_libfc_priv | 376 | * @work: The work struct of the fc_rport_libfc_priv |
371 | * | 377 | * |
372 | * Locking Note: Called without the rport lock held. This | 378 | * Locking Note: Called without the rport lock held. This |
@@ -405,59 +411,75 @@ static void fc_rport_timeout(struct work_struct *work) | |||
405 | } | 411 | } |
406 | 412 | ||
407 | /** | 413 | /** |
408 | * fc_rport_error - Handler for any errors | 414 | * fc_rport_error() - Error handler, called once retries have been exhausted |
409 | * @rport: The fc_rport object | 415 | * @rport: The fc_rport object |
410 | * @fp: The frame pointer | 416 | * @fp: The frame pointer |
411 | * | 417 | * |
412 | * If the error was caused by a resource allocation failure | ||
413 | * then wait for half a second and retry, otherwise retry | ||
414 | * immediately. | ||
415 | * | ||
416 | * Locking Note: The rport lock is expected to be held before | 418 | * Locking Note: The rport lock is expected to be held before |
417 | * calling this routine | 419 | * calling this routine |
418 | */ | 420 | */ |
419 | static void fc_rport_error(struct fc_rport *rport, struct fc_frame *fp) | 421 | static void fc_rport_error(struct fc_rport *rport, struct fc_frame *fp) |
420 | { | 422 | { |
421 | struct fc_rport_libfc_priv *rdata = rport->dd_data; | 423 | struct fc_rport_libfc_priv *rdata = rport->dd_data; |
422 | unsigned long delay = 0; | ||
423 | 424 | ||
424 | FC_DEBUG_RPORT("Error %ld in state %s, retries %d\n", | 425 | FC_DEBUG_RPORT("Error %ld in state %s, retries %d\n", |
425 | PTR_ERR(fp), fc_rport_state(rport), rdata->retries); | 426 | PTR_ERR(fp), fc_rport_state(rport), rdata->retries); |
426 | 427 | ||
427 | if (!fp || PTR_ERR(fp) == -FC_EX_TIMEOUT) { | 428 | switch (rdata->rp_state) { |
428 | /* | 429 | case RPORT_ST_PLOGI: |
429 | * Memory allocation failure, or the exchange timed out. | 430 | case RPORT_ST_PRLI: |
430 | * Retry after delay | 431 | case RPORT_ST_LOGO: |
431 | */ | 432 | rdata->event = RPORT_EV_FAILED; |
432 | if (rdata->retries < rdata->local_port->max_retry_count) { | 433 | queue_work(rport_event_queue, |
433 | rdata->retries++; | 434 | &rdata->event_work); |
434 | if (!fp) | 435 | break; |
435 | delay = msecs_to_jiffies(500); | 436 | case RPORT_ST_RTV: |
436 | get_device(&rport->dev); | 437 | fc_rport_enter_ready(rport); |
437 | schedule_delayed_work(&rdata->retry_work, delay); | 438 | break; |
438 | } else { | 439 | case RPORT_ST_NONE: |
439 | switch (rdata->rp_state) { | 440 | case RPORT_ST_READY: |
440 | case RPORT_ST_PLOGI: | 441 | case RPORT_ST_INIT: |
441 | case RPORT_ST_PRLI: | 442 | break; |
442 | case RPORT_ST_LOGO: | ||
443 | rdata->event = RPORT_EV_FAILED; | ||
444 | queue_work(rport_event_queue, | ||
445 | &rdata->event_work); | ||
446 | break; | ||
447 | case RPORT_ST_RTV: | ||
448 | fc_rport_enter_ready(rport); | ||
449 | break; | ||
450 | case RPORT_ST_NONE: | ||
451 | case RPORT_ST_READY: | ||
452 | case RPORT_ST_INIT: | ||
453 | break; | ||
454 | } | ||
455 | } | ||
456 | } | 443 | } |
457 | } | 444 | } |
458 | 445 | ||
459 | /** | 446 | /** |
460 | * fc_rport_plogi_recv_resp - Handle incoming ELS PLOGI response | 447 | * fc_rport_error_retry() - Error handler when retries are desired |
448 | * @rport: The fc_rport object | ||
449 | * @fp: The frame pointer | ||
450 | * | ||
451 | * If the error was an exchange timeout retry immediately, | ||
452 | * otherwise wait for E_D_TOV. | ||
453 | * | ||
454 | * Locking Note: The rport lock is expected to be held before | ||
455 | * calling this routine | ||
456 | */ | ||
457 | static void fc_rport_error_retry(struct fc_rport *rport, struct fc_frame *fp) | ||
458 | { | ||
459 | struct fc_rport_libfc_priv *rdata = rport->dd_data; | ||
460 | unsigned long delay = FC_DEF_E_D_TOV; | ||
461 | |||
462 | /* make sure this isn't an FC_EX_CLOSED error, never retry those */ | ||
463 | if (PTR_ERR(fp) == -FC_EX_CLOSED) | ||
464 | return fc_rport_error(rport, fp); | ||
465 | |||
466 | if (rdata->retries < rdata->local_port->max_retry_count) { | ||
467 | FC_DEBUG_RPORT("Error %ld in state %s, retrying\n", | ||
468 | PTR_ERR(fp), fc_rport_state(rport)); | ||
469 | rdata->retries++; | ||
470 | /* no additional delay on exchange timeouts */ | ||
471 | if (PTR_ERR(fp) == -FC_EX_TIMEOUT) | ||
472 | delay = 0; | ||
473 | get_device(&rport->dev); | ||
474 | schedule_delayed_work(&rdata->retry_work, delay); | ||
475 | return; | ||
476 | } | ||
477 | |||
478 | return fc_rport_error(rport, fp); | ||
479 | } | ||
480 | |||
481 | /** | ||
482 | * fc_rport_plogi_recv_resp() - Handle incoming ELS PLOGI response | ||
461 | * @sp: current sequence in the PLOGI exchange | 483 | * @sp: current sequence in the PLOGI exchange |
462 | * @fp: response frame | 484 | * @fp: response frame |
463 | * @rp_arg: Fibre Channel remote port | 485 | * @rp_arg: Fibre Channel remote port |
@@ -483,17 +505,17 @@ static void fc_rport_plogi_resp(struct fc_seq *sp, struct fc_frame *fp, | |||
483 | FC_DEBUG_RPORT("Received a PLOGI response from port (%6x)\n", | 505 | FC_DEBUG_RPORT("Received a PLOGI response from port (%6x)\n", |
484 | rport->port_id); | 506 | rport->port_id); |
485 | 507 | ||
508 | if (IS_ERR(fp)) { | ||
509 | fc_rport_error_retry(rport, fp); | ||
510 | goto err; | ||
511 | } | ||
512 | |||
486 | if (rdata->rp_state != RPORT_ST_PLOGI) { | 513 | if (rdata->rp_state != RPORT_ST_PLOGI) { |
487 | FC_DBG("Received a PLOGI response, but in state %s\n", | 514 | FC_DBG("Received a PLOGI response, but in state %s\n", |
488 | fc_rport_state(rport)); | 515 | fc_rport_state(rport)); |
489 | goto out; | 516 | goto out; |
490 | } | 517 | } |
491 | 518 | ||
492 | if (IS_ERR(fp)) { | ||
493 | fc_rport_error(rport, fp); | ||
494 | goto err; | ||
495 | } | ||
496 | |||
497 | op = fc_frame_payload_op(fp); | 519 | op = fc_frame_payload_op(fp); |
498 | if (op == ELS_LS_ACC && | 520 | if (op == ELS_LS_ACC && |
499 | (plp = fc_frame_payload_get(fp, sizeof(*plp))) != NULL) { | 521 | (plp = fc_frame_payload_get(fp, sizeof(*plp))) != NULL) { |
@@ -522,7 +544,7 @@ static void fc_rport_plogi_resp(struct fc_seq *sp, struct fc_frame *fp, | |||
522 | else | 544 | else |
523 | fc_rport_enter_prli(rport); | 545 | fc_rport_enter_prli(rport); |
524 | } else | 546 | } else |
525 | fc_rport_error(rport, fp); | 547 | fc_rport_error_retry(rport, fp); |
526 | 548 | ||
527 | out: | 549 | out: |
528 | fc_frame_free(fp); | 550 | fc_frame_free(fp); |
@@ -532,7 +554,7 @@ err: | |||
532 | } | 554 | } |
533 | 555 | ||
534 | /** | 556 | /** |
535 | * fc_rport_enter_plogi - Send Port Login (PLOGI) request to peer | 557 | * fc_rport_enter_plogi() - Send Port Login (PLOGI) request to peer |
536 | * @rport: Fibre Channel remote port to send PLOGI to | 558 | * @rport: Fibre Channel remote port to send PLOGI to |
537 | * | 559 | * |
538 | * Locking Note: The rport lock is expected to be held before calling | 560 | * Locking Note: The rport lock is expected to be held before calling |
@@ -552,20 +574,20 @@ static void fc_rport_enter_plogi(struct fc_rport *rport) | |||
552 | rport->maxframe_size = FC_MIN_MAX_PAYLOAD; | 574 | rport->maxframe_size = FC_MIN_MAX_PAYLOAD; |
553 | fp = fc_frame_alloc(lport, sizeof(struct fc_els_flogi)); | 575 | fp = fc_frame_alloc(lport, sizeof(struct fc_els_flogi)); |
554 | if (!fp) { | 576 | if (!fp) { |
555 | fc_rport_error(rport, fp); | 577 | fc_rport_error_retry(rport, fp); |
556 | return; | 578 | return; |
557 | } | 579 | } |
558 | rdata->e_d_tov = lport->e_d_tov; | 580 | rdata->e_d_tov = lport->e_d_tov; |
559 | 581 | ||
560 | if (!lport->tt.elsct_send(lport, rport, fp, ELS_PLOGI, | 582 | if (!lport->tt.elsct_send(lport, rport, fp, ELS_PLOGI, |
561 | fc_rport_plogi_resp, rport, lport->e_d_tov)) | 583 | fc_rport_plogi_resp, rport, lport->e_d_tov)) |
562 | fc_rport_error(rport, fp); | 584 | fc_rport_error_retry(rport, fp); |
563 | else | 585 | else |
564 | get_device(&rport->dev); | 586 | get_device(&rport->dev); |
565 | } | 587 | } |
566 | 588 | ||
567 | /** | 589 | /** |
568 | * fc_rport_prli_resp - Process Login (PRLI) response handler | 590 | * fc_rport_prli_resp() - Process Login (PRLI) response handler |
569 | * @sp: current sequence in the PRLI exchange | 591 | * @sp: current sequence in the PRLI exchange |
570 | * @fp: response frame | 592 | * @fp: response frame |
571 | * @rp_arg: Fibre Channel remote port | 593 | * @rp_arg: Fibre Channel remote port |
@@ -592,17 +614,17 @@ static void fc_rport_prli_resp(struct fc_seq *sp, struct fc_frame *fp, | |||
592 | FC_DEBUG_RPORT("Received a PRLI response from port (%6x)\n", | 614 | FC_DEBUG_RPORT("Received a PRLI response from port (%6x)\n", |
593 | rport->port_id); | 615 | rport->port_id); |
594 | 616 | ||
617 | if (IS_ERR(fp)) { | ||
618 | fc_rport_error_retry(rport, fp); | ||
619 | goto err; | ||
620 | } | ||
621 | |||
595 | if (rdata->rp_state != RPORT_ST_PRLI) { | 622 | if (rdata->rp_state != RPORT_ST_PRLI) { |
596 | FC_DBG("Received a PRLI response, but in state %s\n", | 623 | FC_DBG("Received a PRLI response, but in state %s\n", |
597 | fc_rport_state(rport)); | 624 | fc_rport_state(rport)); |
598 | goto out; | 625 | goto out; |
599 | } | 626 | } |
600 | 627 | ||
601 | if (IS_ERR(fp)) { | ||
602 | fc_rport_error(rport, fp); | ||
603 | goto err; | ||
604 | } | ||
605 | |||
606 | op = fc_frame_payload_op(fp); | 628 | op = fc_frame_payload_op(fp); |
607 | if (op == ELS_LS_ACC) { | 629 | if (op == ELS_LS_ACC) { |
608 | pp = fc_frame_payload_get(fp, sizeof(*pp)); | 630 | pp = fc_frame_payload_get(fp, sizeof(*pp)); |
@@ -635,7 +657,7 @@ err: | |||
635 | } | 657 | } |
636 | 658 | ||
637 | /** | 659 | /** |
638 | * fc_rport_logo_resp - Logout (LOGO) response handler | 660 | * fc_rport_logo_resp() - Logout (LOGO) response handler |
639 | * @sp: current sequence in the LOGO exchange | 661 | * @sp: current sequence in the LOGO exchange |
640 | * @fp: response frame | 662 | * @fp: response frame |
641 | * @rp_arg: Fibre Channel remote port | 663 | * @rp_arg: Fibre Channel remote port |
@@ -657,7 +679,7 @@ static void fc_rport_logo_resp(struct fc_seq *sp, struct fc_frame *fp, | |||
657 | rport->port_id); | 679 | rport->port_id); |
658 | 680 | ||
659 | if (IS_ERR(fp)) { | 681 | if (IS_ERR(fp)) { |
660 | fc_rport_error(rport, fp); | 682 | fc_rport_error_retry(rport, fp); |
661 | goto err; | 683 | goto err; |
662 | } | 684 | } |
663 | 685 | ||
@@ -684,7 +706,7 @@ err: | |||
684 | } | 706 | } |
685 | 707 | ||
686 | /** | 708 | /** |
687 | * fc_rport_enter_prli - Send Process Login (PRLI) request to peer | 709 | * fc_rport_enter_prli() - Send Process Login (PRLI) request to peer |
688 | * @rport: Fibre Channel remote port to send PRLI to | 710 | * @rport: Fibre Channel remote port to send PRLI to |
689 | * | 711 | * |
690 | * Locking Note: The rport lock is expected to be held before calling | 712 | * Locking Note: The rport lock is expected to be held before calling |
@@ -707,19 +729,19 @@ static void fc_rport_enter_prli(struct fc_rport *rport) | |||
707 | 729 | ||
708 | fp = fc_frame_alloc(lport, sizeof(*pp)); | 730 | fp = fc_frame_alloc(lport, sizeof(*pp)); |
709 | if (!fp) { | 731 | if (!fp) { |
710 | fc_rport_error(rport, fp); | 732 | fc_rport_error_retry(rport, fp); |
711 | return; | 733 | return; |
712 | } | 734 | } |
713 | 735 | ||
714 | if (!lport->tt.elsct_send(lport, rport, fp, ELS_PRLI, | 736 | if (!lport->tt.elsct_send(lport, rport, fp, ELS_PRLI, |
715 | fc_rport_prli_resp, rport, lport->e_d_tov)) | 737 | fc_rport_prli_resp, rport, lport->e_d_tov)) |
716 | fc_rport_error(rport, fp); | 738 | fc_rport_error_retry(rport, fp); |
717 | else | 739 | else |
718 | get_device(&rport->dev); | 740 | get_device(&rport->dev); |
719 | } | 741 | } |
720 | 742 | ||
721 | /** | 743 | /** |
722 | * fc_rport_els_rtv_resp - Request Timeout Value response handler | 744 | * fc_rport_els_rtv_resp() - Request Timeout Value response handler |
723 | * @sp: current sequence in the RTV exchange | 745 | * @sp: current sequence in the RTV exchange |
724 | * @fp: response frame | 746 | * @fp: response frame |
725 | * @rp_arg: Fibre Channel remote port | 747 | * @rp_arg: Fibre Channel remote port |
@@ -742,17 +764,17 @@ static void fc_rport_rtv_resp(struct fc_seq *sp, struct fc_frame *fp, | |||
742 | FC_DEBUG_RPORT("Received a RTV response from port (%6x)\n", | 764 | FC_DEBUG_RPORT("Received a RTV response from port (%6x)\n", |
743 | rport->port_id); | 765 | rport->port_id); |
744 | 766 | ||
767 | if (IS_ERR(fp)) { | ||
768 | fc_rport_error(rport, fp); | ||
769 | goto err; | ||
770 | } | ||
771 | |||
745 | if (rdata->rp_state != RPORT_ST_RTV) { | 772 | if (rdata->rp_state != RPORT_ST_RTV) { |
746 | FC_DBG("Received a RTV response, but in state %s\n", | 773 | FC_DBG("Received a RTV response, but in state %s\n", |
747 | fc_rport_state(rport)); | 774 | fc_rport_state(rport)); |
748 | goto out; | 775 | goto out; |
749 | } | 776 | } |
750 | 777 | ||
751 | if (IS_ERR(fp)) { | ||
752 | fc_rport_error(rport, fp); | ||
753 | goto err; | ||
754 | } | ||
755 | |||
756 | op = fc_frame_payload_op(fp); | 778 | op = fc_frame_payload_op(fp); |
757 | if (op == ELS_LS_ACC) { | 779 | if (op == ELS_LS_ACC) { |
758 | struct fc_els_rtv_acc *rtv; | 780 | struct fc_els_rtv_acc *rtv; |
@@ -785,7 +807,7 @@ err: | |||
785 | } | 807 | } |
786 | 808 | ||
787 | /** | 809 | /** |
788 | * fc_rport_enter_rtv - Send Request Timeout Value (RTV) request to peer | 810 | * fc_rport_enter_rtv() - Send Request Timeout Value (RTV) request to peer |
789 | * @rport: Fibre Channel remote port to send RTV to | 811 | * @rport: Fibre Channel remote port to send RTV to |
790 | * | 812 | * |
791 | * Locking Note: The rport lock is expected to be held before calling | 813 | * Locking Note: The rport lock is expected to be held before calling |
@@ -804,19 +826,19 @@ static void fc_rport_enter_rtv(struct fc_rport *rport) | |||
804 | 826 | ||
805 | fp = fc_frame_alloc(lport, sizeof(struct fc_els_rtv)); | 827 | fp = fc_frame_alloc(lport, sizeof(struct fc_els_rtv)); |
806 | if (!fp) { | 828 | if (!fp) { |
807 | fc_rport_error(rport, fp); | 829 | fc_rport_error_retry(rport, fp); |
808 | return; | 830 | return; |
809 | } | 831 | } |
810 | 832 | ||
811 | if (!lport->tt.elsct_send(lport, rport, fp, ELS_RTV, | 833 | if (!lport->tt.elsct_send(lport, rport, fp, ELS_RTV, |
812 | fc_rport_rtv_resp, rport, lport->e_d_tov)) | 834 | fc_rport_rtv_resp, rport, lport->e_d_tov)) |
813 | fc_rport_error(rport, fp); | 835 | fc_rport_error_retry(rport, fp); |
814 | else | 836 | else |
815 | get_device(&rport->dev); | 837 | get_device(&rport->dev); |
816 | } | 838 | } |
817 | 839 | ||
818 | /** | 840 | /** |
819 | * fc_rport_enter_logo - Send Logout (LOGO) request to peer | 841 | * fc_rport_enter_logo() - Send Logout (LOGO) request to peer |
820 | * @rport: Fibre Channel remote port to send LOGO to | 842 | * @rport: Fibre Channel remote port to send LOGO to |
821 | * | 843 | * |
822 | * Locking Note: The rport lock is expected to be held before calling | 844 | * Locking Note: The rport lock is expected to be held before calling |
@@ -835,20 +857,20 @@ static void fc_rport_enter_logo(struct fc_rport *rport) | |||
835 | 857 | ||
836 | fp = fc_frame_alloc(lport, sizeof(struct fc_els_logo)); | 858 | fp = fc_frame_alloc(lport, sizeof(struct fc_els_logo)); |
837 | if (!fp) { | 859 | if (!fp) { |
838 | fc_rport_error(rport, fp); | 860 | fc_rport_error_retry(rport, fp); |
839 | return; | 861 | return; |
840 | } | 862 | } |
841 | 863 | ||
842 | if (!lport->tt.elsct_send(lport, rport, fp, ELS_LOGO, | 864 | if (!lport->tt.elsct_send(lport, rport, fp, ELS_LOGO, |
843 | fc_rport_logo_resp, rport, lport->e_d_tov)) | 865 | fc_rport_logo_resp, rport, lport->e_d_tov)) |
844 | fc_rport_error(rport, fp); | 866 | fc_rport_error_retry(rport, fp); |
845 | else | 867 | else |
846 | get_device(&rport->dev); | 868 | get_device(&rport->dev); |
847 | } | 869 | } |
848 | 870 | ||
849 | 871 | ||
850 | /** | 872 | /** |
851 | * fc_rport_recv_req - Receive a request from a rport | 873 | * fc_rport_recv_req() - Receive a request from a rport |
852 | * @sp: current sequence in the PLOGI exchange | 874 | * @sp: current sequence in the PLOGI exchange |
853 | * @fp: response frame | 875 | * @fp: response frame |
854 | * @rp_arg: Fibre Channel remote port | 876 | * @rp_arg: Fibre Channel remote port |
@@ -909,7 +931,7 @@ void fc_rport_recv_req(struct fc_seq *sp, struct fc_frame *fp, | |||
909 | } | 931 | } |
910 | 932 | ||
911 | /** | 933 | /** |
912 | * fc_rport_recv_plogi_req - Handle incoming Port Login (PLOGI) request | 934 | * fc_rport_recv_plogi_req() - Handle incoming Port Login (PLOGI) request |
913 | * @rport: Fibre Channel remote port that initiated PLOGI | 935 | * @rport: Fibre Channel remote port that initiated PLOGI |
914 | * @sp: current sequence in the PLOGI exchange | 936 | * @sp: current sequence in the PLOGI exchange |
915 | * @fp: PLOGI request frame | 937 | * @fp: PLOGI request frame |
@@ -1031,7 +1053,7 @@ static void fc_rport_recv_plogi_req(struct fc_rport *rport, | |||
1031 | } | 1053 | } |
1032 | 1054 | ||
1033 | /** | 1055 | /** |
1034 | * fc_rport_recv_prli_req - Handle incoming Process Login (PRLI) request | 1056 | * fc_rport_recv_prli_req() - Handle incoming Process Login (PRLI) request |
1035 | * @rport: Fibre Channel remote port that initiated PRLI | 1057 | * @rport: Fibre Channel remote port that initiated PRLI |
1036 | * @sp: current sequence in the PRLI exchange | 1058 | * @sp: current sequence in the PRLI exchange |
1037 | * @fp: PRLI request frame | 1059 | * @fp: PRLI request frame |
@@ -1182,7 +1204,7 @@ static void fc_rport_recv_prli_req(struct fc_rport *rport, | |||
1182 | } | 1204 | } |
1183 | 1205 | ||
1184 | /** | 1206 | /** |
1185 | * fc_rport_recv_prlo_req - Handle incoming Process Logout (PRLO) request | 1207 | * fc_rport_recv_prlo_req() - Handle incoming Process Logout (PRLO) request |
1186 | * @rport: Fibre Channel remote port that initiated PRLO | 1208 | * @rport: Fibre Channel remote port that initiated PRLO |
1187 | * @sp: current sequence in the PRLO exchange | 1209 | * @sp: current sequence in the PRLO exchange |
1188 | * @fp: PRLO request frame | 1210 | * @fp: PRLO request frame |
@@ -1213,7 +1235,7 @@ static void fc_rport_recv_prlo_req(struct fc_rport *rport, struct fc_seq *sp, | |||
1213 | } | 1235 | } |
1214 | 1236 | ||
1215 | /** | 1237 | /** |
1216 | * fc_rport_recv_logo_req - Handle incoming Logout (LOGO) request | 1238 | * fc_rport_recv_logo_req() - Handle incoming Logout (LOGO) request |
1217 | * @rport: Fibre Channel remote port that initiated LOGO | 1239 | * @rport: Fibre Channel remote port that initiated LOGO |
1218 | * @sp: current sequence in the LOGO exchange | 1240 | * @sp: current sequence in the LOGO exchange |
1219 | * @fp: LOGO request frame | 1241 | * @fp: LOGO request frame |
@@ -1249,6 +1271,9 @@ static void fc_rport_flush_queue(void) | |||
1249 | 1271 | ||
1250 | int fc_rport_init(struct fc_lport *lport) | 1272 | int fc_rport_init(struct fc_lport *lport) |
1251 | { | 1273 | { |
1274 | if (!lport->tt.rport_create) | ||
1275 | lport->tt.rport_create = fc_rport_rogue_create; | ||
1276 | |||
1252 | if (!lport->tt.rport_login) | 1277 | if (!lport->tt.rport_login) |
1253 | lport->tt.rport_login = fc_rport_login; | 1278 | lport->tt.rport_login = fc_rport_login; |
1254 | 1279 | ||
@@ -1285,7 +1310,7 @@ void fc_rport_terminate_io(struct fc_rport *rport) | |||
1285 | struct fc_rport_libfc_priv *rdata = rport->dd_data; | 1310 | struct fc_rport_libfc_priv *rdata = rport->dd_data; |
1286 | struct fc_lport *lport = rdata->local_port; | 1311 | struct fc_lport *lport = rdata->local_port; |
1287 | 1312 | ||
1288 | lport->tt.exch_mgr_reset(lport->emp, 0, rport->port_id); | 1313 | lport->tt.exch_mgr_reset(lport, 0, rport->port_id); |
1289 | lport->tt.exch_mgr_reset(lport->emp, rport->port_id, 0); | 1314 | lport->tt.exch_mgr_reset(lport, rport->port_id, 0); |
1290 | } | 1315 | } |
1291 | EXPORT_SYMBOL(fc_rport_terminate_io); | 1316 | EXPORT_SYMBOL(fc_rport_terminate_io); |
diff --git a/drivers/scsi/qla2xxx/qla_attr.c b/drivers/scsi/qla2xxx/qla_attr.c index f4c57227ec18..ee9d40152430 100644 --- a/drivers/scsi/qla2xxx/qla_attr.c +++ b/drivers/scsi/qla2xxx/qla_attr.c | |||
@@ -244,12 +244,6 @@ qla2x00_sysfs_write_optrom_ctl(struct kobject *kobj, | |||
244 | if (ha->optrom_state != QLA_SWAITING) | 244 | if (ha->optrom_state != QLA_SWAITING) |
245 | break; | 245 | break; |
246 | 246 | ||
247 | if (start & 0xfff) { | ||
248 | qla_printk(KERN_WARNING, ha, | ||
249 | "Invalid start region 0x%x/0x%x.\n", start, size); | ||
250 | return -EINVAL; | ||
251 | } | ||
252 | |||
253 | ha->optrom_region_start = start; | 247 | ha->optrom_region_start = start; |
254 | ha->optrom_region_size = start + size > ha->optrom_size ? | 248 | ha->optrom_region_size = start + size > ha->optrom_size ? |
255 | ha->optrom_size - start : size; | 249 | ha->optrom_size - start : size; |
@@ -303,8 +297,7 @@ qla2x00_sysfs_write_optrom_ctl(struct kobject *kobj, | |||
303 | else if (start == (ha->flt_region_boot * 4) || | 297 | else if (start == (ha->flt_region_boot * 4) || |
304 | start == (ha->flt_region_fw * 4)) | 298 | start == (ha->flt_region_fw * 4)) |
305 | valid = 1; | 299 | valid = 1; |
306 | else if ((IS_QLA25XX(ha) || IS_QLA81XX(ha)) && | 300 | else if (IS_QLA25XX(ha) || IS_QLA81XX(ha)) |
307 | start == (ha->flt_region_vpd_nvram * 4)) | ||
308 | valid = 1; | 301 | valid = 1; |
309 | if (!valid) { | 302 | if (!valid) { |
310 | qla_printk(KERN_WARNING, ha, | 303 | qla_printk(KERN_WARNING, ha, |
diff --git a/drivers/scsi/qla2xxx/qla_init.c b/drivers/scsi/qla2xxx/qla_init.c index 986501759ad4..87f9abc71460 100644 --- a/drivers/scsi/qla2xxx/qla_init.c +++ b/drivers/scsi/qla2xxx/qla_init.c | |||
@@ -1308,8 +1308,12 @@ qla2x00_init_rings(scsi_qla_host_t *vha) | |||
1308 | 1308 | ||
1309 | DEBUG(printk("scsi(%ld): Issue init firmware.\n", vha->host_no)); | 1309 | DEBUG(printk("scsi(%ld): Issue init firmware.\n", vha->host_no)); |
1310 | 1310 | ||
1311 | if (ha->flags.npiv_supported) | 1311 | if (ha->flags.npiv_supported) { |
1312 | if (ha->operating_mode == LOOP) | ||
1313 | ha->max_npiv_vports = MIN_MULTI_ID_FABRIC - 1; | ||
1312 | mid_init_cb->count = cpu_to_le16(ha->max_npiv_vports); | 1314 | mid_init_cb->count = cpu_to_le16(ha->max_npiv_vports); |
1315 | } | ||
1316 | |||
1313 | 1317 | ||
1314 | mid_init_cb->options = __constant_cpu_to_le16(BIT_1); | 1318 | mid_init_cb->options = __constant_cpu_to_le16(BIT_1); |
1315 | 1319 | ||
@@ -2610,6 +2614,7 @@ qla2x00_find_all_fabric_devs(scsi_qla_host_t *vha, | |||
2610 | port_id_t wrap, nxt_d_id; | 2614 | port_id_t wrap, nxt_d_id; |
2611 | struct qla_hw_data *ha = vha->hw; | 2615 | struct qla_hw_data *ha = vha->hw; |
2612 | struct scsi_qla_host *vp, *base_vha = pci_get_drvdata(ha->pdev); | 2616 | struct scsi_qla_host *vp, *base_vha = pci_get_drvdata(ha->pdev); |
2617 | struct scsi_qla_host *tvp; | ||
2613 | 2618 | ||
2614 | rval = QLA_SUCCESS; | 2619 | rval = QLA_SUCCESS; |
2615 | 2620 | ||
@@ -2709,7 +2714,7 @@ qla2x00_find_all_fabric_devs(scsi_qla_host_t *vha, | |||
2709 | /* Bypass virtual ports of the same host. */ | 2714 | /* Bypass virtual ports of the same host. */ |
2710 | found = 0; | 2715 | found = 0; |
2711 | if (ha->num_vhosts) { | 2716 | if (ha->num_vhosts) { |
2712 | list_for_each_entry(vp, &ha->vp_list, list) { | 2717 | list_for_each_entry_safe(vp, tvp, &ha->vp_list, list) { |
2713 | if (new_fcport->d_id.b24 == vp->d_id.b24) { | 2718 | if (new_fcport->d_id.b24 == vp->d_id.b24) { |
2714 | found = 1; | 2719 | found = 1; |
2715 | break; | 2720 | break; |
@@ -2832,6 +2837,7 @@ qla2x00_find_new_loop_id(scsi_qla_host_t *vha, fc_port_t *dev) | |||
2832 | uint16_t first_loop_id; | 2837 | uint16_t first_loop_id; |
2833 | struct qla_hw_data *ha = vha->hw; | 2838 | struct qla_hw_data *ha = vha->hw; |
2834 | struct scsi_qla_host *vp; | 2839 | struct scsi_qla_host *vp; |
2840 | struct scsi_qla_host *tvp; | ||
2835 | 2841 | ||
2836 | rval = QLA_SUCCESS; | 2842 | rval = QLA_SUCCESS; |
2837 | 2843 | ||
@@ -2856,7 +2862,7 @@ qla2x00_find_new_loop_id(scsi_qla_host_t *vha, fc_port_t *dev) | |||
2856 | /* Check for loop ID being already in use. */ | 2862 | /* Check for loop ID being already in use. */ |
2857 | found = 0; | 2863 | found = 0; |
2858 | fcport = NULL; | 2864 | fcport = NULL; |
2859 | list_for_each_entry(vp, &ha->vp_list, list) { | 2865 | list_for_each_entry_safe(vp, tvp, &ha->vp_list, list) { |
2860 | list_for_each_entry(fcport, &vp->vp_fcports, list) { | 2866 | list_for_each_entry(fcport, &vp->vp_fcports, list) { |
2861 | if (fcport->loop_id == dev->loop_id && | 2867 | if (fcport->loop_id == dev->loop_id && |
2862 | fcport != dev) { | 2868 | fcport != dev) { |
@@ -3291,6 +3297,7 @@ qla2x00_abort_isp(scsi_qla_host_t *vha) | |||
3291 | uint8_t status = 0; | 3297 | uint8_t status = 0; |
3292 | struct qla_hw_data *ha = vha->hw; | 3298 | struct qla_hw_data *ha = vha->hw; |
3293 | struct scsi_qla_host *vp; | 3299 | struct scsi_qla_host *vp; |
3300 | struct scsi_qla_host *tvp; | ||
3294 | struct req_que *req = ha->req_q_map[0]; | 3301 | struct req_que *req = ha->req_q_map[0]; |
3295 | 3302 | ||
3296 | if (vha->flags.online) { | 3303 | if (vha->flags.online) { |
@@ -3306,7 +3313,7 @@ qla2x00_abort_isp(scsi_qla_host_t *vha) | |||
3306 | if (atomic_read(&vha->loop_state) != LOOP_DOWN) { | 3313 | if (atomic_read(&vha->loop_state) != LOOP_DOWN) { |
3307 | atomic_set(&vha->loop_state, LOOP_DOWN); | 3314 | atomic_set(&vha->loop_state, LOOP_DOWN); |
3308 | qla2x00_mark_all_devices_lost(vha, 0); | 3315 | qla2x00_mark_all_devices_lost(vha, 0); |
3309 | list_for_each_entry(vp, &ha->vp_list, list) | 3316 | list_for_each_entry_safe(vp, tvp, &ha->vp_list, list) |
3310 | qla2x00_mark_all_devices_lost(vp, 0); | 3317 | qla2x00_mark_all_devices_lost(vp, 0); |
3311 | } else { | 3318 | } else { |
3312 | if (!atomic_read(&vha->loop_down_timer)) | 3319 | if (!atomic_read(&vha->loop_down_timer)) |
@@ -3403,7 +3410,7 @@ qla2x00_abort_isp(scsi_qla_host_t *vha) | |||
3403 | DEBUG(printk(KERN_INFO | 3410 | DEBUG(printk(KERN_INFO |
3404 | "qla2x00_abort_isp(%ld): succeeded.\n", | 3411 | "qla2x00_abort_isp(%ld): succeeded.\n", |
3405 | vha->host_no)); | 3412 | vha->host_no)); |
3406 | list_for_each_entry(vp, &ha->vp_list, list) { | 3413 | list_for_each_entry_safe(vp, tvp, &ha->vp_list, list) { |
3407 | if (vp->vp_idx) | 3414 | if (vp->vp_idx) |
3408 | qla2x00_vp_abort_isp(vp); | 3415 | qla2x00_vp_abort_isp(vp); |
3409 | } | 3416 | } |
@@ -3428,7 +3435,7 @@ qla2x00_abort_isp(scsi_qla_host_t *vha) | |||
3428 | static int | 3435 | static int |
3429 | qla2x00_restart_isp(scsi_qla_host_t *vha) | 3436 | qla2x00_restart_isp(scsi_qla_host_t *vha) |
3430 | { | 3437 | { |
3431 | uint8_t status = 0; | 3438 | int status = 0; |
3432 | uint32_t wait_time; | 3439 | uint32_t wait_time; |
3433 | struct qla_hw_data *ha = vha->hw; | 3440 | struct qla_hw_data *ha = vha->hw; |
3434 | struct req_que *req = ha->req_q_map[0]; | 3441 | struct req_que *req = ha->req_q_map[0]; |
diff --git a/drivers/scsi/qla2xxx/qla_mbx.c b/drivers/scsi/qla2xxx/qla_mbx.c index 4c7504cb3990..4aab7acf7525 100644 --- a/drivers/scsi/qla2xxx/qla_mbx.c +++ b/drivers/scsi/qla2xxx/qla_mbx.c | |||
@@ -2685,6 +2685,7 @@ qla24xx_report_id_acquisition(scsi_qla_host_t *vha, | |||
2685 | uint16_t stat = le16_to_cpu(rptid_entry->vp_idx); | 2685 | uint16_t stat = le16_to_cpu(rptid_entry->vp_idx); |
2686 | struct qla_hw_data *ha = vha->hw; | 2686 | struct qla_hw_data *ha = vha->hw; |
2687 | scsi_qla_host_t *vp; | 2687 | scsi_qla_host_t *vp; |
2688 | scsi_qla_host_t *tvp; | ||
2688 | 2689 | ||
2689 | if (rptid_entry->entry_status != 0) | 2690 | if (rptid_entry->entry_status != 0) |
2690 | return; | 2691 | return; |
@@ -2710,7 +2711,7 @@ qla24xx_report_id_acquisition(scsi_qla_host_t *vha, | |||
2710 | if (MSB(stat) == 1) | 2711 | if (MSB(stat) == 1) |
2711 | return; | 2712 | return; |
2712 | 2713 | ||
2713 | list_for_each_entry(vp, &ha->vp_list, list) | 2714 | list_for_each_entry_safe(vp, tvp, &ha->vp_list, list) |
2714 | if (vp_idx == vp->vp_idx) | 2715 | if (vp_idx == vp->vp_idx) |
2715 | break; | 2716 | break; |
2716 | if (!vp) | 2717 | if (!vp) |
diff --git a/drivers/scsi/qla2xxx/qla_mid.c b/drivers/scsi/qla2xxx/qla_mid.c index 3f23932210c4..785c61279e6e 100644 --- a/drivers/scsi/qla2xxx/qla_mid.c +++ b/drivers/scsi/qla2xxx/qla_mid.c | |||
@@ -69,9 +69,10 @@ static scsi_qla_host_t * | |||
69 | qla24xx_find_vhost_by_name(struct qla_hw_data *ha, uint8_t *port_name) | 69 | qla24xx_find_vhost_by_name(struct qla_hw_data *ha, uint8_t *port_name) |
70 | { | 70 | { |
71 | scsi_qla_host_t *vha; | 71 | scsi_qla_host_t *vha; |
72 | struct scsi_qla_host *tvha; | ||
72 | 73 | ||
73 | /* Locate matching device in database. */ | 74 | /* Locate matching device in database. */ |
74 | list_for_each_entry(vha, &ha->vp_list, list) { | 75 | list_for_each_entry_safe(vha, tvha, &ha->vp_list, list) { |
75 | if (!memcmp(port_name, vha->port_name, WWN_SIZE)) | 76 | if (!memcmp(port_name, vha->port_name, WWN_SIZE)) |
76 | return vha; | 77 | return vha; |
77 | } | 78 | } |
@@ -194,11 +195,11 @@ qla24xx_configure_vp(scsi_qla_host_t *vha) | |||
194 | void | 195 | void |
195 | qla2x00_alert_all_vps(struct rsp_que *rsp, uint16_t *mb) | 196 | qla2x00_alert_all_vps(struct rsp_que *rsp, uint16_t *mb) |
196 | { | 197 | { |
197 | scsi_qla_host_t *vha; | 198 | scsi_qla_host_t *vha, *tvha; |
198 | struct qla_hw_data *ha = rsp->hw; | 199 | struct qla_hw_data *ha = rsp->hw; |
199 | int i = 0; | 200 | int i = 0; |
200 | 201 | ||
201 | list_for_each_entry(vha, &ha->vp_list, list) { | 202 | list_for_each_entry_safe(vha, tvha, &ha->vp_list, list) { |
202 | if (vha->vp_idx) { | 203 | if (vha->vp_idx) { |
203 | switch (mb[0]) { | 204 | switch (mb[0]) { |
204 | case MBA_LIP_OCCURRED: | 205 | case MBA_LIP_OCCURRED: |
@@ -300,6 +301,7 @@ qla2x00_do_dpc_all_vps(scsi_qla_host_t *vha) | |||
300 | int ret; | 301 | int ret; |
301 | struct qla_hw_data *ha = vha->hw; | 302 | struct qla_hw_data *ha = vha->hw; |
302 | scsi_qla_host_t *vp; | 303 | scsi_qla_host_t *vp; |
304 | struct scsi_qla_host *tvp; | ||
303 | 305 | ||
304 | if (vha->vp_idx) | 306 | if (vha->vp_idx) |
305 | return; | 307 | return; |
@@ -308,7 +310,7 @@ qla2x00_do_dpc_all_vps(scsi_qla_host_t *vha) | |||
308 | 310 | ||
309 | clear_bit(VP_DPC_NEEDED, &vha->dpc_flags); | 311 | clear_bit(VP_DPC_NEEDED, &vha->dpc_flags); |
310 | 312 | ||
311 | list_for_each_entry(vp, &ha->vp_list, list) { | 313 | list_for_each_entry_safe(vp, tvp, &ha->vp_list, list) { |
312 | if (vp->vp_idx) | 314 | if (vp->vp_idx) |
313 | ret = qla2x00_do_dpc_vp(vp); | 315 | ret = qla2x00_do_dpc_vp(vp); |
314 | } | 316 | } |
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c index 2f5f72531e23..3ddfa889e949 100644 --- a/drivers/scsi/qla2xxx/qla_os.c +++ b/drivers/scsi/qla2xxx/qla_os.c | |||
@@ -2222,10 +2222,6 @@ qla2x00_mem_alloc(struct qla_hw_data *ha, uint16_t req_len, uint16_t rsp_len, | |||
2222 | { | 2222 | { |
2223 | char name[16]; | 2223 | char name[16]; |
2224 | 2224 | ||
2225 | ha->init_cb_size = sizeof(init_cb_t); | ||
2226 | if (IS_QLA2XXX_MIDTYPE(ha)) | ||
2227 | ha->init_cb_size = sizeof(struct mid_init_cb_24xx); | ||
2228 | |||
2229 | ha->init_cb = dma_alloc_coherent(&ha->pdev->dev, ha->init_cb_size, | 2225 | ha->init_cb = dma_alloc_coherent(&ha->pdev->dev, ha->init_cb_size, |
2230 | &ha->init_cb_dma, GFP_KERNEL); | 2226 | &ha->init_cb_dma, GFP_KERNEL); |
2231 | if (!ha->init_cb) | 2227 | if (!ha->init_cb) |
@@ -2568,7 +2564,7 @@ qla2x00_do_work(struct scsi_qla_host *vha) | |||
2568 | void qla2x00_relogin(struct scsi_qla_host *vha) | 2564 | void qla2x00_relogin(struct scsi_qla_host *vha) |
2569 | { | 2565 | { |
2570 | fc_port_t *fcport; | 2566 | fc_port_t *fcport; |
2571 | uint8_t status; | 2567 | int status; |
2572 | uint16_t next_loopid = 0; | 2568 | uint16_t next_loopid = 0; |
2573 | struct qla_hw_data *ha = vha->hw; | 2569 | struct qla_hw_data *ha = vha->hw; |
2574 | 2570 | ||
diff --git a/drivers/scsi/qla2xxx/qla_version.h b/drivers/scsi/qla2xxx/qla_version.h index 79f7053da99b..a772eab2f0ea 100644 --- a/drivers/scsi/qla2xxx/qla_version.h +++ b/drivers/scsi/qla2xxx/qla_version.h | |||
@@ -7,7 +7,7 @@ | |||
7 | /* | 7 | /* |
8 | * Driver version | 8 | * Driver version |
9 | */ | 9 | */ |
10 | #define QLA2XXX_VERSION "8.03.00-k3" | 10 | #define QLA2XXX_VERSION "8.03.00-k4" |
11 | 11 | ||
12 | #define QLA_DRIVER_MAJOR_VER 8 | 12 | #define QLA_DRIVER_MAJOR_VER 8 |
13 | #define QLA_DRIVER_MINOR_VER 3 | 13 | #define QLA_DRIVER_MINOR_VER 3 |
diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c index 55310dbc10a6..4970ae4a62d6 100644 --- a/drivers/scsi/sd.c +++ b/drivers/scsi/sd.c | |||
@@ -1167,23 +1167,19 @@ sd_spinup_disk(struct scsi_disk *sdkp) | |||
1167 | /* | 1167 | /* |
1168 | * The device does not want the automatic start to be issued. | 1168 | * The device does not want the automatic start to be issued. |
1169 | */ | 1169 | */ |
1170 | if (sdkp->device->no_start_on_add) { | 1170 | if (sdkp->device->no_start_on_add) |
1171 | break; | 1171 | break; |
1172 | } | ||
1173 | |||
1174 | /* | ||
1175 | * If manual intervention is required, or this is an | ||
1176 | * absent USB storage device, a spinup is meaningless. | ||
1177 | */ | ||
1178 | if (sense_valid && | ||
1179 | sshdr.sense_key == NOT_READY && | ||
1180 | sshdr.asc == 4 && sshdr.ascq == 3) { | ||
1181 | break; /* manual intervention required */ | ||
1182 | 1172 | ||
1183 | /* | 1173 | if (sense_valid && sshdr.sense_key == NOT_READY) { |
1184 | * Issue command to spin up drive when not ready | 1174 | if (sshdr.asc == 4 && sshdr.ascq == 3) |
1185 | */ | 1175 | break; /* manual intervention required */ |
1186 | } else if (sense_valid && sshdr.sense_key == NOT_READY) { | 1176 | if (sshdr.asc == 4 && sshdr.ascq == 0xb) |
1177 | break; /* standby */ | ||
1178 | if (sshdr.asc == 4 && sshdr.ascq == 0xc) | ||
1179 | break; /* unavailable */ | ||
1180 | /* | ||
1181 | * Issue command to spin up drive when not ready | ||
1182 | */ | ||
1187 | if (!spintime) { | 1183 | if (!spintime) { |
1188 | sd_printk(KERN_NOTICE, sdkp, "Spinning up disk..."); | 1184 | sd_printk(KERN_NOTICE, sdkp, "Spinning up disk..."); |
1189 | cmd[0] = START_STOP; | 1185 | cmd[0] = START_STOP; |
diff --git a/drivers/scsi/zalon.c b/drivers/scsi/zalon.c index a8d61a62522e..97f3158fa7b5 100644 --- a/drivers/scsi/zalon.c +++ b/drivers/scsi/zalon.c | |||
@@ -137,7 +137,7 @@ zalon_probe(struct parisc_device *dev) | |||
137 | goto fail; | 137 | goto fail; |
138 | 138 | ||
139 | if (request_irq(dev->irq, ncr53c8xx_intr, IRQF_SHARED, "zalon", host)) { | 139 | if (request_irq(dev->irq, ncr53c8xx_intr, IRQF_SHARED, "zalon", host)) { |
140 | dev_printk(KERN_ERR, dev, "irq problem with %d, detaching\n ", | 140 | dev_printk(KERN_ERR, &dev->dev, "irq problem with %d, detaching\n ", |
141 | dev->irq); | 141 | dev->irq); |
142 | goto fail; | 142 | goto fail; |
143 | } | 143 | } |
diff --git a/drivers/video/aty/aty128fb.c b/drivers/video/aty/aty128fb.c index 2181ce4d7ebd..35e8eb02b9e9 100644 --- a/drivers/video/aty/aty128fb.c +++ b/drivers/video/aty/aty128fb.c | |||
@@ -1853,13 +1853,14 @@ static void aty128_bl_exit(struct backlight_device *bd) | |||
1853 | * Initialisation | 1853 | * Initialisation |
1854 | */ | 1854 | */ |
1855 | 1855 | ||
1856 | #ifdef CONFIG_PPC_PMAC | 1856 | #ifdef CONFIG_PPC_PMAC__disabled |
1857 | static void aty128_early_resume(void *data) | 1857 | static void aty128_early_resume(void *data) |
1858 | { | 1858 | { |
1859 | struct aty128fb_par *par = data; | 1859 | struct aty128fb_par *par = data; |
1860 | 1860 | ||
1861 | if (try_acquire_console_sem()) | 1861 | if (try_acquire_console_sem()) |
1862 | return; | 1862 | return; |
1863 | pci_restore_state(par->pdev); | ||
1863 | aty128_do_resume(par->pdev); | 1864 | aty128_do_resume(par->pdev); |
1864 | release_console_sem(); | 1865 | release_console_sem(); |
1865 | } | 1866 | } |
@@ -1907,7 +1908,14 @@ static int __devinit aty128_init(struct pci_dev *pdev, const struct pci_device_i | |||
1907 | /* Indicate sleep capability */ | 1908 | /* Indicate sleep capability */ |
1908 | if (par->chip_gen == rage_M3) { | 1909 | if (par->chip_gen == rage_M3) { |
1909 | pmac_call_feature(PMAC_FTR_DEVICE_CAN_WAKE, NULL, 0, 1); | 1910 | pmac_call_feature(PMAC_FTR_DEVICE_CAN_WAKE, NULL, 0, 1); |
1911 | #if 0 /* Disable the early video resume hack for now as it's causing problems, among | ||
1912 | * others we now rely on the PCI core restoring the config space for us, which | ||
1913 | * isn't the case with that hack, and that code path causes various things to | ||
1914 | * be called with interrupts off while they shouldn't. I'm leaving the code in | ||
1915 | * as it can be useful for debugging purposes | ||
1916 | */ | ||
1910 | pmac_set_early_video_resume(aty128_early_resume, par); | 1917 | pmac_set_early_video_resume(aty128_early_resume, par); |
1918 | #endif | ||
1911 | } | 1919 | } |
1912 | 1920 | ||
1913 | /* Find default mode */ | 1921 | /* Find default mode */ |
diff --git a/drivers/video/aty/radeon_pm.c b/drivers/video/aty/radeon_pm.c index ca5f0dc28546..81603f85e17e 100644 --- a/drivers/video/aty/radeon_pm.c +++ b/drivers/video/aty/radeon_pm.c | |||
@@ -2762,12 +2762,13 @@ int radeonfb_pci_resume(struct pci_dev *pdev) | |||
2762 | return rc; | 2762 | return rc; |
2763 | } | 2763 | } |
2764 | 2764 | ||
2765 | #ifdef CONFIG_PPC_OF | 2765 | #ifdef CONFIG_PPC_OF__disabled |
2766 | static void radeonfb_early_resume(void *data) | 2766 | static void radeonfb_early_resume(void *data) |
2767 | { | 2767 | { |
2768 | struct radeonfb_info *rinfo = data; | 2768 | struct radeonfb_info *rinfo = data; |
2769 | 2769 | ||
2770 | rinfo->no_schedule = 1; | 2770 | rinfo->no_schedule = 1; |
2771 | pci_restore_state(rinfo->pdev); | ||
2771 | radeonfb_pci_resume(rinfo->pdev); | 2772 | radeonfb_pci_resume(rinfo->pdev); |
2772 | rinfo->no_schedule = 0; | 2773 | rinfo->no_schedule = 0; |
2773 | } | 2774 | } |
@@ -2834,7 +2835,14 @@ void radeonfb_pm_init(struct radeonfb_info *rinfo, int dynclk, int ignore_devlis | |||
2834 | */ | 2835 | */ |
2835 | if (rinfo->pm_mode != radeon_pm_none) { | 2836 | if (rinfo->pm_mode != radeon_pm_none) { |
2836 | pmac_call_feature(PMAC_FTR_DEVICE_CAN_WAKE, rinfo->of_node, 0, 1); | 2837 | pmac_call_feature(PMAC_FTR_DEVICE_CAN_WAKE, rinfo->of_node, 0, 1); |
2838 | #if 0 /* Disable the early video resume hack for now as it's causing problems, among | ||
2839 | * others we now rely on the PCI core restoring the config space for us, which | ||
2840 | * isn't the case with that hack, and that code path causes various things to | ||
2841 | * be called with interrupts off while they shouldn't. I'm leaving the code in | ||
2842 | * as it can be useful for debugging purposes | ||
2843 | */ | ||
2837 | pmac_set_early_video_resume(radeonfb_early_resume, rinfo); | 2844 | pmac_set_early_video_resume(radeonfb_early_resume, rinfo); |
2845 | #endif | ||
2838 | } | 2846 | } |
2839 | 2847 | ||
2840 | #if 0 | 2848 | #if 0 |
diff --git a/drivers/video/i810/i810_main.c b/drivers/video/i810/i810_main.c index a24e680d2b9c..2e940199fc89 100644 --- a/drivers/video/i810/i810_main.c +++ b/drivers/video/i810/i810_main.c | |||
@@ -993,6 +993,7 @@ static int i810_check_params(struct fb_var_screeninfo *var, | |||
993 | struct i810fb_par *par = info->par; | 993 | struct i810fb_par *par = info->par; |
994 | int line_length, vidmem, mode_valid = 0, retval = 0; | 994 | int line_length, vidmem, mode_valid = 0, retval = 0; |
995 | u32 vyres = var->yres_virtual, vxres = var->xres_virtual; | 995 | u32 vyres = var->yres_virtual, vxres = var->xres_virtual; |
996 | |||
996 | /* | 997 | /* |
997 | * Memory limit | 998 | * Memory limit |
998 | */ | 999 | */ |
@@ -1002,12 +1003,12 @@ static int i810_check_params(struct fb_var_screeninfo *var, | |||
1002 | if (vidmem > par->fb.size) { | 1003 | if (vidmem > par->fb.size) { |
1003 | vyres = par->fb.size/line_length; | 1004 | vyres = par->fb.size/line_length; |
1004 | if (vyres < var->yres) { | 1005 | if (vyres < var->yres) { |
1005 | vyres = yres; | 1006 | vyres = info->var.yres; |
1006 | vxres = par->fb.size/vyres; | 1007 | vxres = par->fb.size/vyres; |
1007 | vxres /= var->bits_per_pixel >> 3; | 1008 | vxres /= var->bits_per_pixel >> 3; |
1008 | line_length = get_line_length(par, vxres, | 1009 | line_length = get_line_length(par, vxres, |
1009 | var->bits_per_pixel); | 1010 | var->bits_per_pixel); |
1010 | vidmem = line_length * yres; | 1011 | vidmem = line_length * info->var.yres; |
1011 | if (vxres < var->xres) { | 1012 | if (vxres < var->xres) { |
1012 | printk("i810fb: required video memory, " | 1013 | printk("i810fb: required video memory, " |
1013 | "%d bytes, for %dx%d-%d (virtual) " | 1014 | "%d bytes, for %dx%d-%d (virtual) " |
diff --git a/drivers/video/logo/logo_linux_clut224.ppm b/drivers/video/logo/logo_linux_clut224.ppm index 3c14e43b82fe..de93ff3fc1ad 100644 --- a/drivers/video/logo/logo_linux_clut224.ppm +++ b/drivers/video/logo/logo_linux_clut224.ppm | |||
@@ -1,1604 +1,2828 @@ | |||
1 | P3 | 1 | P3 |
2 | # Standard 224-color Linux logo | 2 | 145 113 |
3 | 80 80 | ||
4 | 255 | 3 | 255 |
5 | 0 0 0 0 0 0 0 0 0 0 0 0 | 4 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
6 | 0 0 0 0 0 0 0 0 0 0 0 0 | 5 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
7 | 0 0 0 0 0 0 0 0 0 0 0 0 | 6 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
8 | 0 0 0 0 0 0 0 0 0 0 0 0 | 7 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
9 | 0 0 0 0 0 0 0 0 0 0 0 0 | 8 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
10 | 0 0 0 0 0 0 0 0 0 0 0 0 | 9 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
11 | 0 0 0 0 0 0 0 0 0 0 0 0 | 10 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
12 | 0 0 0 0 0 0 0 0 0 0 0 0 | 11 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
13 | 0 0 0 0 0 0 0 0 0 0 0 0 | 12 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
14 | 6 6 6 6 6 6 10 10 10 10 10 10 | 13 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
15 | 10 10 10 6 6 6 6 6 6 6 6 6 | 14 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
16 | 0 0 0 0 0 0 0 0 0 0 0 0 | 15 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
17 | 0 0 0 0 0 0 0 0 0 0 0 0 | 16 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
18 | 0 0 0 0 0 0 0 0 0 0 0 0 | 17 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
19 | 0 0 0 0 0 0 0 0 0 0 0 0 | 18 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
20 | 0 0 0 0 0 0 0 0 0 0 0 0 | 19 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
21 | 0 0 0 0 0 0 0 0 0 0 0 0 | 20 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
22 | 0 0 0 0 0 0 0 0 0 0 0 0 | 21 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
23 | 0 0 0 0 0 0 0 0 0 0 0 0 | 22 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
24 | 0 0 0 0 0 0 0 0 0 0 0 0 | 23 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
25 | 0 0 0 0 0 0 0 0 0 0 0 0 | 24 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
26 | 0 0 0 0 0 0 0 0 0 0 0 0 | 25 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
27 | 0 0 0 0 0 0 0 0 0 0 0 0 | 26 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
28 | 0 0 0 0 0 0 0 0 0 0 0 0 | 27 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
29 | 0 0 0 0 0 0 0 0 0 0 0 0 | 28 | 0 0 0 |
30 | 0 0 0 0 0 0 0 0 0 0 0 0 | 29 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
31 | 0 0 0 0 0 0 0 0 0 0 0 0 | 30 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
32 | 0 0 0 0 0 0 0 0 0 0 0 0 | 31 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
33 | 0 0 0 6 6 6 10 10 10 14 14 14 | 32 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
34 | 22 22 22 26 26 26 30 30 30 34 34 34 | 33 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
35 | 30 30 30 30 30 30 26 26 26 18 18 18 | 34 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
36 | 14 14 14 10 10 10 6 6 6 0 0 0 | 35 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
37 | 0 0 0 0 0 0 0 0 0 0 0 0 | 36 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
38 | 0 0 0 0 0 0 0 0 0 0 0 0 | 37 | 0 0 0 0 0 0 0 0 0 0 0 0 3 4 4 6 7 7 |
39 | 0 0 0 0 0 0 0 0 0 0 0 0 | 38 | 8 10 10 8 10 10 6 8 8 6 7 7 3 4 4 2 2 2 |
40 | 0 0 0 0 0 0 0 0 0 0 0 0 | 39 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
41 | 0 0 0 0 0 0 0 0 0 0 0 0 | 40 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
42 | 0 0 0 0 0 0 0 0 0 0 0 0 | 41 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
43 | 0 0 0 0 0 0 0 0 0 0 0 0 | 42 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
44 | 0 0 0 0 0 0 0 0 0 0 0 0 | 43 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
45 | 0 0 0 0 0 0 0 0 0 0 0 0 | 44 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
46 | 0 0 0 0 0 1 0 0 1 0 0 0 | 45 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
47 | 0 0 0 0 0 0 0 0 0 0 0 0 | 46 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
48 | 0 0 0 0 0 0 0 0 0 0 0 0 | 47 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
49 | 0 0 0 0 0 0 0 0 0 0 0 0 | 48 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
50 | 0 0 0 0 0 0 0 0 0 0 0 0 | 49 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
51 | 0 0 0 0 0 0 0 0 0 0 0 0 | 50 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
52 | 0 0 0 0 0 0 0 0 0 0 0 0 | 51 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
53 | 6 6 6 14 14 14 26 26 26 42 42 42 | 52 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
54 | 54 54 54 66 66 66 78 78 78 78 78 78 | 53 | 0 0 0 |
55 | 78 78 78 74 74 74 66 66 66 54 54 54 | 54 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
56 | 42 42 42 26 26 26 18 18 18 10 10 10 | 55 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
57 | 6 6 6 0 0 0 0 0 0 0 0 0 | 56 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
58 | 0 0 0 0 0 0 0 0 0 0 0 0 | 57 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
59 | 0 0 0 0 0 0 0 0 0 0 0 0 | 58 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
60 | 0 0 0 0 0 0 0 0 0 0 0 0 | 59 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
61 | 0 0 0 0 0 0 0 0 0 0 0 0 | 60 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
62 | 0 0 0 0 0 0 0 0 0 0 0 0 | 61 | 0 0 0 0 0 0 0 0 0 0 0 0 4 5 5 17 18 17 |
63 | 0 0 0 0 0 0 0 0 0 0 0 0 | 62 | 27 29 28 35 37 36 40 43 41 43 45 43 40 43 41 37 39 37 |
64 | 0 0 0 0 0 0 0 0 0 0 0 0 | 63 | 32 34 33 27 30 29 23 25 24 17 21 21 15 18 18 12 15 15 |
65 | 0 0 0 0 0 0 0 0 0 0 0 0 | 64 | 11 13 13 8 10 10 6 7 7 3 4 4 1 1 1 0 0 0 |
66 | 0 0 1 0 0 0 0 0 0 0 0 0 | 65 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
67 | 0 0 0 0 0 0 0 0 0 0 0 0 | 66 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
68 | 0 0 0 0 0 0 0 0 0 0 0 0 | 67 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
69 | 0 0 0 0 0 0 0 0 0 0 0 0 | 68 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
70 | 0 0 0 0 0 0 0 0 0 0 0 0 | 69 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
71 | 0 0 0 0 0 0 0 0 0 0 0 0 | 70 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
72 | 0 0 0 0 0 0 0 0 0 10 10 10 | 71 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
73 | 22 22 22 42 42 42 66 66 66 86 86 86 | 72 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
74 | 66 66 66 38 38 38 38 38 38 22 22 22 | 73 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
75 | 26 26 26 34 34 34 54 54 54 66 66 66 | 74 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
76 | 86 86 86 70 70 70 46 46 46 26 26 26 | 75 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
77 | 14 14 14 6 6 6 0 0 0 0 0 0 | 76 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
78 | 0 0 0 0 0 0 0 0 0 0 0 0 | 77 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
79 | 0 0 0 0 0 0 0 0 0 0 0 0 | 78 | 0 0 0 |
80 | 0 0 0 0 0 0 0 0 0 0 0 0 | 79 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
81 | 0 0 0 0 0 0 0 0 0 0 0 0 | 80 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
82 | 0 0 0 0 0 0 0 0 0 0 0 0 | 81 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
83 | 0 0 0 0 0 0 0 0 0 0 0 0 | 82 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
84 | 0 0 0 0 0 0 0 0 0 0 0 0 | 83 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
85 | 0 0 0 0 0 0 0 0 0 0 0 0 | 84 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
86 | 0 0 1 0 0 1 0 0 1 0 0 0 | 85 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
87 | 0 0 0 0 0 0 0 0 0 0 0 0 | 86 | 0 0 0 13 13 13 32 34 33 49 51 48 60 60 56 58 59 55 |
88 | 0 0 0 0 0 0 0 0 0 0 0 0 | 87 | 55 57 54 55 56 53 49 51 48 43 45 43 39 40 39 33 37 35 |
89 | 0 0 0 0 0 0 0 0 0 0 0 0 | 88 | 28 31 30 23 27 26 20 23 23 17 20 20 14 17 17 13 16 16 |
90 | 0 0 0 0 0 0 0 0 0 0 0 0 | 89 | 11 14 14 10 13 13 10 12 12 9 11 11 8 10 10 6 7 7 |
91 | 0 0 0 0 0 0 0 0 0 0 0 0 | 90 | 2 3 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
92 | 0 0 0 0 0 0 10 10 10 26 26 26 | 91 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
93 | 50 50 50 82 82 82 58 58 58 6 6 6 | 92 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
94 | 2 2 6 2 2 6 2 2 6 2 2 6 | 93 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
95 | 2 2 6 2 2 6 2 2 6 2 2 6 | 94 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
96 | 6 6 6 54 54 54 86 86 86 66 66 66 | 95 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
97 | 38 38 38 18 18 18 6 6 6 0 0 0 | 96 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
98 | 0 0 0 0 0 0 0 0 0 0 0 0 | 97 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
99 | 0 0 0 0 0 0 0 0 0 0 0 0 | 98 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
100 | 0 0 0 0 0 0 0 0 0 0 0 0 | 99 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
101 | 0 0 0 0 0 0 0 0 0 0 0 0 | 100 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
102 | 0 0 0 0 0 0 0 0 0 0 0 0 | 101 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
103 | 0 0 0 0 0 0 0 0 0 0 0 0 | 102 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
104 | 0 0 0 0 0 0 0 0 0 0 0 0 | 103 | 0 0 0 |
105 | 0 0 0 0 0 0 0 0 0 0 0 0 | 104 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
106 | 0 0 0 0 0 0 0 0 0 0 0 0 | 105 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
107 | 0 0 0 0 0 0 0 0 0 0 0 0 | 106 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
108 | 0 0 0 0 0 0 0 0 0 0 0 0 | 107 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
109 | 0 0 0 0 0 0 0 0 0 0 0 0 | 108 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
110 | 0 0 0 0 0 0 0 0 0 0 0 0 | 109 | 0 0 0 0 0 0 0 0 0 0 0 0 6 7 7 12 15 15 |
111 | 0 0 0 0 0 0 0 0 0 0 0 0 | 110 | 12 15 15 8 9 9 2 3 3 0 0 0 1 1 1 25 27 26 |
112 | 0 0 0 6 6 6 22 22 22 50 50 50 | 111 | 55 56 53 68 70 65 65 66 61 65 66 61 63 64 60 63 64 60 |
113 | 78 78 78 34 34 34 2 2 6 2 2 6 | 112 | 58 59 55 51 52 50 47 48 46 41 42 42 35 37 36 30 32 31 |
114 | 2 2 6 2 2 6 2 2 6 2 2 6 | 113 | 26 28 27 20 24 24 18 22 22 16 19 19 14 17 17 13 16 16 |
115 | 2 2 6 2 2 6 2 2 6 2 2 6 | 114 | 12 15 15 11 14 14 10 13 13 10 12 12 9 11 11 8 10 10 |
116 | 2 2 6 2 2 6 6 6 6 70 70 70 | 115 | 8 9 9 6 8 8 3 3 3 0 0 0 0 0 0 0 0 0 |
117 | 78 78 78 46 46 46 22 22 22 6 6 6 | 116 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
118 | 0 0 0 0 0 0 0 0 0 0 0 0 | 117 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
119 | 0 0 0 0 0 0 0 0 0 0 0 0 | 118 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
120 | 0 0 0 0 0 0 0 0 0 0 0 0 | 119 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
121 | 0 0 0 0 0 0 0 0 0 0 0 0 | 120 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
122 | 0 0 0 0 0 0 0 0 0 0 0 0 | 121 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
123 | 0 0 0 0 0 0 0 0 0 0 0 0 | 122 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
124 | 0 0 0 0 0 0 0 0 0 0 0 0 | 123 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
125 | 0 0 0 0 0 0 0 0 0 0 0 0 | 124 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
126 | 0 0 1 0 0 1 0 0 1 0 0 0 | 125 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
127 | 0 0 0 0 0 0 0 0 0 0 0 0 | 126 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
128 | 0 0 0 0 0 0 0 0 0 0 0 0 | 127 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
129 | 0 0 0 0 0 0 0 0 0 0 0 0 | 128 | 0 0 0 |
130 | 0 0 0 0 0 0 0 0 0 0 0 0 | 129 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
131 | 0 0 0 0 0 0 0 0 0 0 0 0 | 130 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
132 | 6 6 6 18 18 18 42 42 42 82 82 82 | 131 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
133 | 26 26 26 2 2 6 2 2 6 2 2 6 | 132 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
134 | 2 2 6 2 2 6 2 2 6 2 2 6 | 133 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
135 | 2 2 6 2 2 6 2 2 6 14 14 14 | 134 | 0 0 0 0 0 0 0 0 0 6 7 7 20 24 24 23 27 26 |
136 | 46 46 46 34 34 34 6 6 6 2 2 6 | 135 | 23 27 26 18 22 22 11 13 13 23 24 24 61 63 57 72 73 67 |
137 | 42 42 42 78 78 78 42 42 42 18 18 18 | 136 | 72 73 67 68 70 65 68 70 65 68 70 65 63 64 60 58 59 55 |
138 | 6 6 6 0 0 0 0 0 0 0 0 0 | 137 | 55 56 53 47 48 46 41 42 42 35 37 36 30 32 31 26 28 27 |
139 | 0 0 0 0 0 0 0 0 0 0 0 0 | 138 | 20 24 24 18 22 22 16 20 20 15 19 19 14 17 17 13 16 16 |
140 | 0 0 0 0 0 0 0 0 0 0 0 0 | 139 | 12 15 15 12 15 15 11 14 14 10 13 13 10 12 12 9 11 11 |
141 | 0 0 0 0 0 0 0 0 0 0 0 0 | 140 | 8 10 10 8 9 9 7 9 9 6 7 7 1 2 2 0 0 0 |
142 | 0 0 0 0 0 0 0 0 0 0 0 0 | 141 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
143 | 0 0 0 0 0 0 0 0 0 0 0 0 | 142 | 0 0 0 0 0 0 1 1 1 4 5 5 5 6 5 4 5 5 |
144 | 0 0 0 0 0 0 0 0 0 0 0 0 | 143 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
145 | 0 0 0 0 0 0 0 0 0 0 0 0 | 144 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
146 | 0 0 1 0 0 0 0 0 1 0 0 0 | 145 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
147 | 0 0 0 0 0 0 0 0 0 0 0 0 | 146 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
148 | 0 0 0 0 0 0 0 0 0 0 0 0 | 147 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
149 | 0 0 0 0 0 0 0 0 0 0 0 0 | 148 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
150 | 0 0 0 0 0 0 0 0 0 0 0 0 | 149 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
151 | 0 0 0 0 0 0 0 0 0 0 0 0 | 150 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
152 | 10 10 10 30 30 30 66 66 66 58 58 58 | 151 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
153 | 2 2 6 2 2 6 2 2 6 2 2 6 | 152 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
154 | 2 2 6 2 2 6 2 2 6 2 2 6 | 153 | 0 0 0 |
155 | 2 2 6 2 2 6 2 2 6 26 26 26 | 154 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
156 | 86 86 86 101 101 101 46 46 46 10 10 10 | 155 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
157 | 2 2 6 58 58 58 70 70 70 34 34 34 | 156 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
158 | 10 10 10 0 0 0 0 0 0 0 0 0 | 157 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
159 | 0 0 0 0 0 0 0 0 0 0 0 0 | 158 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
160 | 0 0 0 0 0 0 0 0 0 0 0 0 | 159 | 0 0 0 0 0 0 0 0 0 15 19 19 40 41 39 53 55 47 |
161 | 0 0 0 0 0 0 0 0 0 0 0 0 | 160 | 33 36 34 27 30 29 51 52 50 72 73 67 72 73 67 72 73 67 |
162 | 0 0 0 0 0 0 0 0 0 0 0 0 | 161 | 72 73 67 68 70 65 68 70 65 63 64 60 58 59 55 51 52 50 |
163 | 0 0 0 0 0 0 0 0 0 0 0 0 | 162 | 47 48 46 40 43 41 33 37 35 30 32 31 26 28 27 20 24 24 |
164 | 0 0 0 0 0 0 0 0 0 0 0 0 | 163 | 18 22 22 17 21 21 16 19 19 14 18 18 14 17 17 13 17 17 |
165 | 0 0 0 0 0 0 0 0 0 0 0 0 | 164 | 13 16 16 12 15 15 12 15 15 11 14 14 10 13 13 10 12 12 |
166 | 0 0 1 0 0 1 0 0 1 0 0 0 | 165 | 9 11 11 8 10 10 8 9 9 7 9 9 6 8 8 3 4 4 |
167 | 0 0 0 0 0 0 0 0 0 0 0 0 | 166 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
168 | 0 0 0 0 0 0 0 0 0 0 0 0 | 167 | 2 2 2 6 8 8 10 12 12 10 12 12 10 12 12 10 12 12 |
169 | 0 0 0 0 0 0 0 0 0 0 0 0 | 168 | 6 8 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
170 | 0 0 0 0 0 0 0 0 0 0 0 0 | 169 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
171 | 0 0 0 0 0 0 0 0 0 0 0 0 | 170 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
172 | 14 14 14 42 42 42 86 86 86 10 10 10 | 171 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
173 | 2 2 6 2 2 6 2 2 6 2 2 6 | 172 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
174 | 2 2 6 2 2 6 2 2 6 2 2 6 | 173 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
175 | 2 2 6 2 2 6 2 2 6 30 30 30 | 174 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
176 | 94 94 94 94 94 94 58 58 58 26 26 26 | 175 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
177 | 2 2 6 6 6 6 78 78 78 54 54 54 | 176 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
178 | 22 22 22 6 6 6 0 0 0 0 0 0 | 177 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
179 | 0 0 0 0 0 0 0 0 0 0 0 0 | 178 | 0 0 0 |
180 | 0 0 0 0 0 0 0 0 0 0 0 0 | 179 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
181 | 0 0 0 0 0 0 0 0 0 0 0 0 | 180 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
182 | 0 0 0 0 0 0 0 0 0 0 0 0 | 181 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
183 | 0 0 0 0 0 0 0 0 0 0 0 0 | 182 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
184 | 0 0 0 0 0 0 0 0 0 0 0 0 | 183 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
185 | 0 0 0 0 0 0 0 0 0 0 0 0 | 184 | 0 0 0 0 0 0 0 0 0 20 23 23 71 71 57 131 127 93 |
186 | 0 0 0 0 0 0 0 0 0 0 0 0 | 185 | 115 113 82 63 64 60 72 73 67 72 73 67 72 73 67 72 73 67 |
187 | 0 0 0 0 0 0 0 0 0 0 0 0 | 186 | 68 70 65 65 66 61 61 63 57 55 57 54 49 51 48 43 45 43 |
188 | 0 0 0 0 0 0 0 0 0 0 0 0 | 187 | 39 40 39 33 36 34 28 31 30 23 27 26 20 24 24 20 23 23 |
189 | 0 0 0 0 0 0 0 0 0 0 0 0 | 188 | 17 21 21 16 20 20 15 19 19 15 18 18 14 18 18 14 17 17 |
190 | 0 0 0 0 0 0 0 0 0 0 0 0 | 189 | 13 17 17 13 16 16 12 15 15 12 15 15 11 14 14 10 13 13 |
191 | 0 0 0 0 0 0 0 0 0 6 6 6 | 190 | 10 12 12 9 11 11 8 10 10 7 9 9 7 9 9 6 8 8 |
192 | 22 22 22 62 62 62 62 62 62 2 2 6 | 191 | 4 5 5 0 0 0 0 0 0 0 0 0 1 1 1 6 7 7 |
193 | 2 2 6 2 2 6 2 2 6 2 2 6 | 192 | 10 12 12 10 12 12 10 12 12 10 12 12 10 12 12 10 12 12 |
194 | 2 2 6 2 2 6 2 2 6 2 2 6 | 193 | 10 12 12 3 4 4 0 0 0 0 0 0 0 0 0 0 0 0 |
195 | 2 2 6 2 2 6 2 2 6 26 26 26 | 194 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
196 | 54 54 54 38 38 38 18 18 18 10 10 10 | 195 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
197 | 2 2 6 2 2 6 34 34 34 82 82 82 | 196 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
198 | 38 38 38 14 14 14 0 0 0 0 0 0 | 197 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
199 | 0 0 0 0 0 0 0 0 0 0 0 0 | 198 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
200 | 0 0 0 0 0 0 0 0 0 0 0 0 | 199 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
201 | 0 0 0 0 0 0 0 0 0 0 0 0 | 200 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
202 | 0 0 0 0 0 0 0 0 0 0 0 0 | 201 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
203 | 0 0 0 0 0 0 0 0 0 0 0 0 | 202 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
204 | 0 0 0 0 0 0 0 0 0 0 0 0 | 203 | 0 0 0 |
205 | 0 0 0 0 0 0 0 0 0 0 0 0 | 204 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
206 | 0 0 0 0 0 1 0 0 1 0 0 0 | 205 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
207 | 0 0 0 0 0 0 0 0 0 0 0 0 | 206 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
208 | 0 0 0 0 0 0 0 0 0 0 0 0 | 207 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
209 | 0 0 0 0 0 0 0 0 0 0 0 0 | 208 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
210 | 0 0 0 0 0 0 0 0 0 0 0 0 | 209 | 0 0 0 0 0 0 0 0 0 18 22 22 71 71 57 144 139 99 |
211 | 0 0 0 0 0 0 0 0 0 6 6 6 | 210 | 84 83 72 68 70 65 72 73 67 72 73 67 68 70 65 65 66 61 |
212 | 30 30 30 78 78 78 30 30 30 2 2 6 | 211 | 63 64 60 55 57 54 51 52 50 47 48 46 40 43 41 35 37 36 |
213 | 2 2 6 2 2 6 2 2 6 2 2 6 | 212 | 30 32 31 27 29 28 23 27 26 20 24 24 18 22 22 17 21 21 |
214 | 2 2 6 2 2 6 2 2 6 2 2 6 | 213 | 16 20 20 15 19 19 15 19 19 15 19 19 15 18 18 14 18 18 |
215 | 2 2 6 2 2 6 2 2 6 10 10 10 | 214 | 14 17 17 13 17 17 13 16 16 12 15 15 12 15 15 11 14 14 |
216 | 10 10 10 2 2 6 2 2 6 2 2 6 | 215 | 10 13 13 9 12 12 9 11 11 8 10 10 7 9 9 6 8 8 |
217 | 2 2 6 2 2 6 2 2 6 78 78 78 | 216 | 6 8 8 3 4 4 0 0 0 2 2 2 8 10 10 10 12 12 |
218 | 50 50 50 18 18 18 6 6 6 0 0 0 | 217 | 10 12 12 10 12 12 11 13 13 36 38 35 61 61 53 48 49 45 |
219 | 0 0 0 0 0 0 0 0 0 0 0 0 | 218 | 10 12 12 7 9 9 0 0 0 0 0 0 0 0 0 0 0 0 |
220 | 0 0 0 0 0 0 0 0 0 0 0 0 | 219 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
221 | 0 0 0 0 0 0 0 0 0 0 0 0 | 220 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
222 | 0 0 0 0 0 0 0 0 0 0 0 0 | 221 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
223 | 0 0 0 0 0 0 0 0 0 0 0 0 | 222 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
224 | 0 0 0 0 0 0 0 0 0 0 0 0 | 223 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
225 | 0 0 0 0 0 0 0 0 0 0 0 0 | 224 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
226 | 0 0 1 0 0 0 0 0 0 0 0 0 | 225 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
227 | 0 0 0 0 0 0 0 0 0 0 0 0 | 226 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
228 | 0 0 0 0 0 0 0 0 0 0 0 0 | 227 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
229 | 0 0 0 0 0 0 0 0 0 0 0 0 | 228 | 0 0 0 |
230 | 0 0 0 0 0 0 0 0 0 0 0 0 | 229 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
231 | 0 0 0 0 0 0 0 0 0 10 10 10 | 230 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
232 | 38 38 38 86 86 86 14 14 14 2 2 6 | 231 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
233 | 2 2 6 2 2 6 2 2 6 2 2 6 | 232 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
234 | 2 2 6 2 2 6 2 2 6 2 2 6 | 233 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
235 | 2 2 6 2 2 6 2 2 6 2 2 6 | 234 | 0 0 0 0 0 0 0 0 0 15 19 19 61 61 53 84 83 72 |
236 | 2 2 6 2 2 6 2 2 6 2 2 6 | 235 | 68 70 65 72 73 67 68 70 65 68 70 65 63 64 60 58 59 55 |
237 | 2 2 6 2 2 6 2 2 6 54 54 54 | 236 | 51 52 50 47 48 46 41 42 42 37 39 37 32 35 33 28 31 30 |
238 | 66 66 66 26 26 26 6 6 6 0 0 0 | 237 | 23 27 26 20 24 24 20 23 23 18 22 22 17 21 21 17 21 21 |
239 | 0 0 0 0 0 0 0 0 0 0 0 0 | 238 | 17 21 21 17 21 21 17 20 20 16 20 20 16 20 20 16 19 19 |
240 | 0 0 0 0 0 0 0 0 0 0 0 0 | 239 | 15 18 18 14 18 18 13 17 17 13 16 16 12 15 15 12 15 15 |
241 | 0 0 0 0 0 0 0 0 0 0 0 0 | 240 | 11 14 14 10 13 13 9 12 12 9 11 11 8 10 10 7 9 9 |
242 | 0 0 0 0 0 0 0 0 0 0 0 0 | 241 | 6 8 8 6 8 8 5 6 5 9 11 11 10 12 12 10 12 12 |
243 | 0 0 0 0 0 0 0 0 0 0 0 0 | 242 | 19 20 18 82 81 62 149 145 103 160 154 106 142 137 94 96 95 69 |
244 | 0 0 0 0 0 0 0 0 0 0 0 0 | 243 | 10 12 12 10 12 12 1 1 1 0 0 0 0 0 0 0 0 0 |
245 | 0 0 0 0 0 0 0 0 0 0 0 0 | 244 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
246 | 0 0 0 0 0 1 0 0 1 0 0 0 | 245 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
247 | 0 0 0 0 0 0 0 0 0 0 0 0 | 246 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
248 | 0 0 0 0 0 0 0 0 0 0 0 0 | 247 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
249 | 0 0 0 0 0 0 0 0 0 0 0 0 | 248 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
250 | 0 0 0 0 0 0 0 0 0 0 0 0 | 249 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
251 | 0 0 0 0 0 0 0 0 0 14 14 14 | 250 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
252 | 42 42 42 82 82 82 2 2 6 2 2 6 | 251 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
253 | 2 2 6 6 6 6 10 10 10 2 2 6 | 252 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
254 | 2 2 6 2 2 6 2 2 6 2 2 6 | 253 | 0 0 0 |
255 | 2 2 6 2 2 6 2 2 6 6 6 6 | 254 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
256 | 14 14 14 10 10 10 2 2 6 2 2 6 | 255 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
257 | 2 2 6 2 2 6 2 2 6 18 18 18 | 256 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
258 | 82 82 82 34 34 34 10 10 10 0 0 0 | 257 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
259 | 0 0 0 0 0 0 0 0 0 0 0 0 | 258 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
260 | 0 0 0 0 0 0 0 0 0 0 0 0 | 259 | 0 0 0 0 0 0 0 0 0 10 12 12 44 46 43 68 70 65 |
261 | 0 0 0 0 0 0 0 0 0 0 0 0 | 260 | 72 73 67 68 70 65 68 70 65 63 64 60 55 57 54 49 51 48 |
262 | 0 0 0 0 0 0 0 0 0 0 0 0 | 261 | 43 45 43 39 40 39 33 37 35 30 32 31 26 28 27 23 27 26 |
263 | 0 0 0 0 0 0 0 0 0 0 0 0 | 262 | 20 24 24 18 22 22 18 22 22 18 22 22 18 22 22 20 23 23 |
264 | 0 0 0 0 0 0 0 0 0 0 0 0 | 263 | 20 24 24 23 25 24 23 25 24 22 24 23 20 23 23 18 22 22 |
265 | 0 0 0 0 0 0 0 0 0 0 0 0 | 264 | 17 20 20 15 19 19 15 18 18 14 17 17 13 16 16 12 15 15 |
266 | 0 0 1 0 0 0 0 0 0 0 0 0 | 265 | 11 14 14 11 13 13 10 12 12 9 11 11 8 10 10 8 9 9 |
267 | 0 0 0 0 0 0 0 0 0 0 0 0 | 266 | 7 9 9 7 9 9 10 12 12 10 12 12 10 12 12 71 71 57 |
268 | 0 0 0 0 0 0 0 0 0 0 0 0 | 267 | 164 159 111 186 182 128 186 182 128 171 165 117 151 147 98 96 95 69 |
269 | 0 0 0 0 0 0 0 0 0 0 0 0 | 268 | 10 12 12 10 12 12 3 3 3 0 0 0 0 0 0 0 0 0 |
270 | 0 0 0 0 0 0 0 0 0 0 0 0 | 269 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
271 | 0 0 0 0 0 0 0 0 0 14 14 14 | 270 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
272 | 46 46 46 86 86 86 2 2 6 2 2 6 | 271 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
273 | 6 6 6 6 6 6 22 22 22 34 34 34 | 272 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
274 | 6 6 6 2 2 6 2 2 6 2 2 6 | 273 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
275 | 2 2 6 2 2 6 18 18 18 34 34 34 | 274 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
276 | 10 10 10 50 50 50 22 22 22 2 2 6 | 275 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
277 | 2 2 6 2 2 6 2 2 6 10 10 10 | 276 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
278 | 86 86 86 42 42 42 14 14 14 0 0 0 | 277 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
279 | 0 0 0 0 0 0 0 0 0 0 0 0 | 278 | 0 0 0 |
280 | 0 0 0 0 0 0 0 0 0 0 0 0 | 279 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
281 | 0 0 0 0 0 0 0 0 0 0 0 0 | 280 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
282 | 0 0 0 0 0 0 0 0 0 0 0 0 | 281 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
283 | 0 0 0 0 0 0 0 0 0 0 0 0 | 282 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
284 | 0 0 0 0 0 0 0 0 0 0 0 0 | 283 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
285 | 0 0 0 0 0 0 0 0 0 0 0 0 | 284 | 0 0 0 0 0 0 0 0 0 8 10 10 63 64 60 68 70 65 |
286 | 0 0 1 0 0 1 0 0 1 0 0 0 | 285 | 72 73 67 68 70 65 63 64 60 55 57 54 47 48 46 40 43 41 |
287 | 0 0 0 0 0 0 0 0 0 0 0 0 | 286 | 33 37 35 30 32 31 27 29 28 23 27 26 20 24 24 20 23 23 |
288 | 0 0 0 0 0 0 0 0 0 0 0 0 | 287 | 18 22 22 18 22 22 20 23 22 21 25 23 23 27 26 27 29 28 |
289 | 0 0 0 0 0 0 0 0 0 0 0 0 | 288 | 28 31 30 31 33 31 31 33 31 31 33 31 28 31 30 26 28 27 |
290 | 0 0 0 0 0 0 0 0 0 0 0 0 | 289 | 23 25 24 20 23 22 16 20 20 15 18 18 14 17 17 13 16 16 |
291 | 0 0 0 0 0 0 0 0 0 14 14 14 | 290 | 12 15 15 11 14 14 10 13 13 10 12 12 9 11 11 8 10 10 |
292 | 46 46 46 86 86 86 2 2 6 2 2 6 | 291 | 10 12 12 10 13 13 10 12 12 12 14 14 96 95 69 165 161 109 |
293 | 38 38 38 116 116 116 94 94 94 22 22 22 | 292 | 186 182 128 192 187 134 192 187 134 176 171 126 160 154 106 103 101 77 |
294 | 22 22 22 2 2 6 2 2 6 2 2 6 | 293 | 10 12 12 10 12 12 5 6 5 0 0 0 0 0 0 0 0 0 |
295 | 14 14 14 86 86 86 138 138 138 162 162 162 | 294 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
296 | 154 154 154 38 38 38 26 26 26 6 6 6 | 295 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
297 | 2 2 6 2 2 6 2 2 6 2 2 6 | 296 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
298 | 86 86 86 46 46 46 14 14 14 0 0 0 | 297 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
299 | 0 0 0 0 0 0 0 0 0 0 0 0 | 298 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
300 | 0 0 0 0 0 0 0 0 0 0 0 0 | 299 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
301 | 0 0 0 0 0 0 0 0 0 0 0 0 | 300 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
302 | 0 0 0 0 0 0 0 0 0 0 0 0 | 301 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
303 | 0 0 0 0 0 0 0 0 0 0 0 0 | 302 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
304 | 0 0 0 0 0 0 0 0 0 0 0 0 | 303 | 0 0 0 |
305 | 0 0 0 0 0 0 0 0 0 0 0 0 | 304 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
306 | 0 0 0 0 0 0 0 0 0 0 0 0 | 305 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
307 | 0 0 0 0 0 0 0 0 0 0 0 0 | 306 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
308 | 0 0 0 0 0 0 0 0 0 0 0 0 | 307 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
309 | 0 0 0 0 0 0 0 0 0 0 0 0 | 308 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
310 | 0 0 0 0 0 0 0 0 0 0 0 0 | 309 | 0 0 0 0 0 0 0 0 0 35 37 36 68 70 65 72 73 67 |
311 | 0 0 0 0 0 0 0 0 0 14 14 14 | 310 | 68 70 65 65 66 61 58 59 55 49 51 48 40 43 41 33 37 35 |
312 | 46 46 46 86 86 86 2 2 6 14 14 14 | 311 | 28 31 30 23 27 26 20 24 24 20 23 23 18 22 22 18 22 22 |
313 | 134 134 134 198 198 198 195 195 195 116 116 116 | 312 | 18 22 22 20 23 23 23 27 26 27 30 29 32 35 33 37 39 37 |
314 | 10 10 10 2 2 6 2 2 6 6 6 6 | 313 | 40 43 41 44 46 43 46 47 43 44 46 43 40 43 41 36 38 35 |
315 | 101 98 89 187 187 187 210 210 210 218 218 218 | 314 | 31 33 31 27 29 28 22 24 23 17 21 21 15 18 18 14 17 17 |
316 | 214 214 214 134 134 134 14 14 14 6 6 6 | 315 | 13 16 16 12 15 15 11 14 14 11 14 14 11 13 13 13 16 16 |
317 | 2 2 6 2 2 6 2 2 6 2 2 6 | 316 | 13 16 16 11 14 14 10 12 12 79 78 62 142 137 94 164 159 111 |
318 | 86 86 86 50 50 50 18 18 18 6 6 6 | 317 | 178 174 128 192 187 134 192 187 134 176 171 126 160 154 106 96 95 69 |
319 | 0 0 0 0 0 0 0 0 0 0 0 0 | 318 | 10 12 12 10 12 12 6 7 7 0 0 0 0 0 0 0 0 0 |
320 | 0 0 0 0 0 0 0 0 0 0 0 0 | 319 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
321 | 0 0 0 0 0 0 0 0 0 0 0 0 | 320 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
322 | 0 0 0 0 0 0 0 0 0 0 0 0 | 321 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
323 | 0 0 0 0 0 0 0 0 0 0 0 0 | 322 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
324 | 0 0 0 0 0 0 0 0 0 0 0 0 | 323 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
325 | 0 0 0 0 0 0 0 0 1 0 0 0 | 324 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
326 | 0 0 1 0 0 1 0 0 1 0 0 0 | 325 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
327 | 0 0 0 0 0 0 0 0 0 0 0 0 | 326 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
328 | 0 0 0 0 0 0 0 0 0 0 0 0 | 327 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
329 | 0 0 0 0 0 0 0 0 0 0 0 0 | 328 | 0 0 0 |
330 | 0 0 0 0 0 0 0 0 0 0 0 0 | 329 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
331 | 0 0 0 0 0 0 0 0 0 14 14 14 | 330 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
332 | 46 46 46 86 86 86 2 2 6 54 54 54 | 331 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
333 | 218 218 218 195 195 195 226 226 226 246 246 246 | 332 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
334 | 58 58 58 2 2 6 2 2 6 30 30 30 | 333 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
335 | 210 210 210 253 253 253 174 174 174 123 123 123 | 334 | 0 0 0 0 0 0 0 0 0 55 57 54 68 70 65 72 73 67 |
336 | 221 221 221 234 234 234 74 74 74 2 2 6 | 335 | 68 70 65 63 64 60 55 56 53 43 45 43 35 37 36 28 31 30 |
337 | 2 2 6 2 2 6 2 2 6 2 2 6 | 336 | 23 27 26 20 24 24 18 22 22 17 21 21 17 21 21 17 21 21 |
338 | 70 70 70 58 58 58 22 22 22 6 6 6 | 337 | 20 24 24 25 27 26 31 33 31 38 39 37 46 47 43 53 55 47 |
339 | 0 0 0 0 0 0 0 0 0 0 0 0 | 338 | 61 61 53 66 65 55 66 65 55 66 65 55 61 61 53 53 55 47 |
340 | 0 0 0 0 0 0 0 0 0 0 0 0 | 339 | 46 47 43 37 39 37 30 33 30 24 26 24 17 21 21 15 18 18 |
341 | 0 0 0 0 0 0 0 0 0 0 0 0 | 340 | 13 17 17 12 15 15 12 15 15 13 16 16 14 18 18 14 18 18 |
342 | 0 0 0 0 0 0 0 0 0 0 0 0 | 341 | 14 17 17 12 15 15 30 31 28 118 116 76 134 131 96 160 154 106 |
343 | 0 0 0 0 0 0 0 0 0 0 0 0 | 342 | 174 170 121 178 174 128 178 174 128 171 165 117 151 147 98 96 95 69 |
344 | 0 0 0 0 0 0 0 0 0 0 0 0 | 343 | 10 12 12 10 12 12 6 8 8 0 0 0 0 0 0 0 0 0 |
345 | 0 0 0 0 0 0 0 0 0 0 0 0 | 344 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
346 | 0 0 0 0 0 0 0 0 0 0 0 0 | 345 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
347 | 0 0 0 0 0 0 0 0 0 0 0 0 | 346 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
348 | 0 0 0 0 0 0 0 0 0 0 0 0 | 347 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
349 | 0 0 0 0 0 0 0 0 0 0 0 0 | 348 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
350 | 0 0 0 0 0 0 0 0 0 0 0 0 | 349 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
351 | 0 0 0 0 0 0 0 0 0 14 14 14 | 350 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
352 | 46 46 46 82 82 82 2 2 6 106 106 106 | 351 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
353 | 170 170 170 26 26 26 86 86 86 226 226 226 | 352 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
354 | 123 123 123 10 10 10 14 14 14 46 46 46 | 353 | 0 0 0 |
355 | 231 231 231 190 190 190 6 6 6 70 70 70 | 354 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
356 | 90 90 90 238 238 238 158 158 158 2 2 6 | 355 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
357 | 2 2 6 2 2 6 2 2 6 2 2 6 | 356 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
358 | 70 70 70 58 58 58 22 22 22 6 6 6 | 357 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
359 | 0 0 0 0 0 0 0 0 0 0 0 0 | 358 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
360 | 0 0 0 0 0 0 0 0 0 0 0 0 | 359 | 0 0 0 0 0 0 0 0 0 63 64 60 68 70 65 68 70 65 |
361 | 0 0 0 0 0 0 0 0 0 0 0 0 | 360 | 65 66 61 58 59 55 49 51 48 39 40 39 30 32 31 23 27 26 |
362 | 0 0 0 0 0 0 0 0 0 0 0 0 | 361 | 20 24 24 18 22 22 17 21 21 16 20 20 17 21 21 20 23 23 |
363 | 0 0 0 0 0 0 0 0 0 0 0 0 | 362 | 25 27 26 32 35 33 43 44 41 53 55 47 66 65 55 75 75 61 |
364 | 0 0 0 0 0 0 0 0 0 0 0 0 | 363 | 82 81 62 84 83 72 87 86 72 87 86 72 82 81 62 75 75 61 |
365 | 0 0 0 0 0 0 0 0 1 0 0 0 | 364 | 66 65 55 53 55 47 40 41 39 31 33 31 23 25 24 17 20 20 |
366 | 0 0 1 0 0 1 0 0 1 0 0 0 | 365 | 14 18 18 13 16 16 12 15 15 12 15 15 13 17 17 14 18 18 |
367 | 0 0 0 0 0 0 0 0 0 0 0 0 | 366 | 14 18 18 13 16 16 46 47 43 96 95 69 125 122 87 142 137 94 |
368 | 0 0 0 0 0 0 0 0 0 0 0 0 | 367 | 160 154 106 165 161 109 164 159 111 155 149 109 142 137 94 75 75 61 |
369 | 0 0 0 0 0 0 0 0 0 0 0 0 | 368 | 10 12 12 10 12 12 6 8 8 0 0 0 0 0 0 0 0 0 |
370 | 0 0 0 0 0 0 0 0 0 0 0 0 | 369 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
371 | 0 0 0 0 0 0 0 0 0 14 14 14 | 370 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
372 | 42 42 42 86 86 86 6 6 6 116 116 116 | 371 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
373 | 106 106 106 6 6 6 70 70 70 149 149 149 | 372 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
374 | 128 128 128 18 18 18 38 38 38 54 54 54 | 373 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
375 | 221 221 221 106 106 106 2 2 6 14 14 14 | 374 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
376 | 46 46 46 190 190 190 198 198 198 2 2 6 | 375 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
377 | 2 2 6 2 2 6 2 2 6 2 2 6 | 376 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
378 | 74 74 74 62 62 62 22 22 22 6 6 6 | 377 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
379 | 0 0 0 0 0 0 0 0 0 0 0 0 | 378 | 0 0 0 |
380 | 0 0 0 0 0 0 0 0 0 0 0 0 | 379 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
381 | 0 0 0 0 0 0 0 0 0 0 0 0 | 380 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
382 | 0 0 0 0 0 0 0 0 0 0 0 0 | 381 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
383 | 0 0 0 0 0 0 0 0 0 0 0 0 | 382 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
384 | 0 0 0 0 0 0 0 0 0 0 0 0 | 383 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
385 | 0 0 0 0 0 0 0 0 1 0 0 0 | 384 | 0 0 0 0 0 0 0 0 0 60 60 56 68 70 65 68 70 65 |
386 | 0 0 1 0 0 0 0 0 1 0 0 0 | 385 | 63 64 60 55 57 54 46 47 45 35 37 36 27 30 29 23 25 24 |
387 | 0 0 0 0 0 0 0 0 0 0 0 0 | 386 | 18 22 22 17 21 21 16 20 20 17 21 21 18 22 22 23 27 26 |
388 | 0 0 0 0 0 0 0 0 0 0 0 0 | 387 | 31 33 31 43 44 41 55 56 53 71 71 57 84 83 72 92 91 72 |
389 | 0 0 0 0 0 0 0 0 0 0 0 0 | 388 | 103 101 77 92 91 72 82 81 62 82 81 62 87 86 72 92 91 72 |
390 | 0 0 0 0 0 0 0 0 0 0 0 0 | 389 | 84 83 72 71 71 57 55 56 53 43 44 41 30 33 30 22 24 23 |
391 | 0 0 0 0 0 0 0 0 0 14 14 14 | 390 | 16 19 19 14 17 17 12 15 15 12 15 15 13 16 16 14 18 18 |
392 | 42 42 42 94 94 94 14 14 14 101 101 101 | 391 | 14 18 18 14 17 17 43 44 41 82 81 62 118 116 76 125 122 87 |
393 | 128 128 128 2 2 6 18 18 18 116 116 116 | 392 | 142 137 94 144 139 99 144 139 99 134 131 96 118 116 76 53 55 47 |
394 | 118 98 46 121 92 8 121 92 8 98 78 10 | 393 | 10 12 12 10 12 12 6 8 8 0 0 0 0 0 0 0 0 0 |
395 | 162 162 162 106 106 106 2 2 6 2 2 6 | 394 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
396 | 2 2 6 195 195 195 195 195 195 6 6 6 | 395 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
397 | 2 2 6 2 2 6 2 2 6 2 2 6 | 396 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
398 | 74 74 74 62 62 62 22 22 22 6 6 6 | 397 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
399 | 0 0 0 0 0 0 0 0 0 0 0 0 | 398 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
400 | 0 0 0 0 0 0 0 0 0 0 0 0 | 399 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
401 | 0 0 0 0 0 0 0 0 0 0 0 0 | 400 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
402 | 0 0 0 0 0 0 0 0 0 0 0 0 | 401 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
403 | 0 0 0 0 0 0 0 0 0 0 0 0 | 402 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
404 | 0 0 0 0 0 0 0 0 0 0 0 0 | 403 | 0 0 0 |
405 | 0 0 0 0 0 0 0 0 1 0 0 1 | 404 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
406 | 0 0 1 0 0 0 0 0 1 0 0 0 | 405 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
407 | 0 0 0 0 0 0 0 0 0 0 0 0 | 406 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
408 | 0 0 0 0 0 0 0 0 0 0 0 0 | 407 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
409 | 0 0 0 0 0 0 0 0 0 0 0 0 | 408 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
410 | 0 0 0 0 0 0 0 0 0 0 0 0 | 409 | 0 0 0 0 0 0 0 0 0 47 48 46 63 64 60 63 64 60 |
411 | 0 0 0 0 0 0 0 0 0 10 10 10 | 410 | 55 57 54 49 51 48 40 43 41 32 34 33 26 28 27 20 24 24 |
412 | 38 38 38 90 90 90 14 14 14 58 58 58 | 411 | 18 22 22 16 20 20 16 20 20 17 21 21 20 24 24 28 31 30 |
413 | 210 210 210 26 26 26 54 38 6 154 114 10 | 412 | 40 41 39 53 55 47 75 75 61 90 89 73 87 86 72 48 49 45 |
414 | 226 170 11 236 186 11 225 175 15 184 144 12 | 413 | 14 14 13 2 2 2 1 2 2 1 1 1 1 1 1 2 2 2 |
415 | 215 174 15 175 146 61 37 26 9 2 2 6 | 414 | 19 20 18 43 44 41 66 65 55 53 55 47 38 39 37 26 28 27 |
416 | 70 70 70 246 246 246 138 138 138 2 2 6 | 415 | 18 22 22 14 18 18 13 16 16 12 15 15 12 15 15 13 17 17 |
417 | 2 2 6 2 2 6 2 2 6 2 2 6 | 416 | 14 18 18 14 18 18 30 31 28 66 65 55 96 95 69 103 101 77 |
418 | 70 70 70 66 66 66 26 26 26 6 6 6 | 417 | 118 116 76 118 116 76 118 116 76 118 116 76 103 101 77 36 38 35 |
419 | 0 0 0 0 0 0 0 0 0 0 0 0 | 418 | 10 12 12 10 12 12 6 7 7 0 0 0 0 0 0 0 0 0 |
420 | 0 0 0 0 0 0 0 0 0 0 0 0 | 419 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
421 | 0 0 0 0 0 0 0 0 0 0 0 0 | 420 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
422 | 0 0 0 0 0 0 0 0 0 0 0 0 | 421 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
423 | 0 0 0 0 0 0 0 0 0 0 0 0 | 422 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
424 | 0 0 0 0 0 0 0 0 0 0 0 0 | 423 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
425 | 0 0 0 0 0 0 0 0 0 0 0 0 | 424 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
426 | 0 0 0 0 0 0 0 0 0 0 0 0 | 425 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
427 | 0 0 0 0 0 0 0 0 0 0 0 0 | 426 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
428 | 0 0 0 0 0 0 0 0 0 0 0 0 | 427 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
429 | 0 0 0 0 0 0 0 0 0 0 0 0 | 428 | 0 0 0 |
430 | 0 0 0 0 0 0 0 0 0 0 0 0 | 429 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
431 | 0 0 0 0 0 0 0 0 0 10 10 10 | 430 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
432 | 38 38 38 86 86 86 14 14 14 10 10 10 | 431 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
433 | 195 195 195 188 164 115 192 133 9 225 175 15 | 432 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
434 | 239 182 13 234 190 10 232 195 16 232 200 30 | 433 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
435 | 245 207 45 241 208 19 232 195 16 184 144 12 | 434 | 0 0 0 0 0 0 0 0 0 28 31 30 55 57 54 51 52 50 |
436 | 218 194 134 211 206 186 42 42 42 2 2 6 | 435 | 49 51 48 41 42 42 35 37 36 28 31 30 23 27 26 20 23 23 |
437 | 2 2 6 2 2 6 2 2 6 2 2 6 | 436 | 17 21 21 16 20 20 16 20 20 18 22 22 23 27 26 33 36 34 |
438 | 50 50 50 74 74 74 30 30 30 6 6 6 | 437 | 48 49 45 71 71 57 82 81 62 43 44 41 8 9 9 6 7 7 |
439 | 0 0 0 0 0 0 0 0 0 0 0 0 | 438 | 6 7 7 6 7 7 6 7 7 5 6 5 4 5 5 3 4 4 |
440 | 0 0 0 0 0 0 0 0 0 0 0 0 | 439 | 2 3 3 1 2 2 4 5 4 36 38 35 48 49 45 32 35 33 |
441 | 0 0 0 0 0 0 0 0 0 0 0 0 | 440 | 21 25 23 16 19 19 13 17 17 12 15 15 12 15 15 13 16 16 |
442 | 0 0 0 0 0 0 0 0 0 0 0 0 | 441 | 14 18 18 14 18 18 16 18 16 36 38 35 61 61 53 82 81 62 |
443 | 0 0 0 0 0 0 0 0 0 0 0 0 | 442 | 96 95 69 96 95 69 96 95 69 96 95 69 79 78 62 19 20 18 |
444 | 0 0 0 0 0 0 0 0 0 0 0 0 | 443 | 10 12 12 10 12 12 4 5 5 0 0 0 0 0 0 0 0 0 |
445 | 0 0 0 0 0 0 0 0 0 0 0 0 | 444 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
446 | 0 0 0 0 0 0 0 0 0 0 0 0 | 445 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
447 | 0 0 0 0 0 0 0 0 0 0 0 0 | 446 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
448 | 0 0 0 0 0 0 0 0 0 0 0 0 | 447 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
449 | 0 0 0 0 0 0 0 0 0 0 0 0 | 448 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
450 | 0 0 0 0 0 0 0 0 0 0 0 0 | 449 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
451 | 0 0 0 0 0 0 0 0 0 10 10 10 | 450 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
452 | 34 34 34 86 86 86 14 14 14 2 2 6 | 451 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
453 | 121 87 25 192 133 9 219 162 10 239 182 13 | 452 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
454 | 236 186 11 232 195 16 241 208 19 244 214 54 | 453 | 0 0 0 |
455 | 246 218 60 246 218 38 246 215 20 241 208 19 | 454 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
456 | 241 208 19 226 184 13 121 87 25 2 2 6 | 455 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
457 | 2 2 6 2 2 6 2 2 6 2 2 6 | 456 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
458 | 50 50 50 82 82 82 34 34 34 10 10 10 | 457 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
459 | 0 0 0 0 0 0 0 0 0 0 0 0 | 458 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
460 | 0 0 0 0 0 0 0 0 0 0 0 0 | 459 | 0 0 0 0 0 0 0 0 0 13 13 13 46 47 45 43 45 43 |
461 | 0 0 0 0 0 0 0 0 0 0 0 0 | 460 | 40 43 41 35 37 36 30 32 31 23 27 26 20 24 24 18 22 22 |
462 | 0 0 0 0 0 0 0 0 0 0 0 0 | 461 | 17 21 21 16 20 20 17 21 21 20 23 23 27 30 29 40 41 39 |
463 | 0 0 0 0 0 0 0 0 0 0 0 0 | 462 | 61 61 53 53 55 47 16 17 16 9 11 11 10 12 12 10 12 12 |
464 | 0 0 0 0 0 0 0 0 0 0 0 0 | 463 | 10 12 12 10 12 12 10 12 12 9 11 11 8 10 10 8 9 9 |
465 | 0 0 0 0 0 0 0 0 0 0 0 0 | 464 | 6 8 8 5 6 5 4 5 5 2 3 3 19 20 18 38 39 37 |
466 | 0 0 0 0 0 0 0 0 0 0 0 0 | 465 | 26 28 27 17 21 21 14 17 17 13 16 16 12 15 15 12 15 15 |
467 | 0 0 0 0 0 0 0 0 0 0 0 0 | 466 | 13 17 17 14 18 18 12 15 15 13 12 7 30 31 28 46 47 43 |
468 | 0 0 0 0 0 0 0 0 0 0 0 0 | 467 | 53 55 47 66 65 55 66 65 55 53 55 47 36 38 35 10 12 12 |
469 | 0 0 0 0 0 0 0 0 0 0 0 0 | 468 | 10 12 12 10 12 12 2 3 3 0 0 0 0 0 0 0 0 0 |
470 | 0 0 0 0 0 0 0 0 0 0 0 0 | 469 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
471 | 0 0 0 0 0 0 0 0 0 10 10 10 | 470 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
472 | 34 34 34 82 82 82 30 30 30 61 42 6 | 471 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
473 | 180 123 7 206 145 10 230 174 11 239 182 13 | 472 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
474 | 234 190 10 238 202 15 241 208 19 246 218 74 | 473 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
475 | 246 218 38 246 215 20 246 215 20 246 215 20 | 474 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
476 | 226 184 13 215 174 15 184 144 12 6 6 6 | 475 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
477 | 2 2 6 2 2 6 2 2 6 2 2 6 | 476 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
478 | 26 26 26 94 94 94 42 42 42 14 14 14 | 477 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
479 | 0 0 0 0 0 0 0 0 0 0 0 0 | 478 | 0 0 0 |
480 | 0 0 0 0 0 0 0 0 0 0 0 0 | 479 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
481 | 0 0 0 0 0 0 0 0 0 0 0 0 | 480 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
482 | 0 0 0 0 0 0 0 0 0 0 0 0 | 481 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
483 | 0 0 0 0 0 0 0 0 0 0 0 0 | 482 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
484 | 0 0 0 0 0 0 0 0 0 0 0 0 | 483 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
485 | 0 0 0 0 0 0 0 0 0 0 0 0 | 484 | 0 0 0 0 0 0 0 0 0 1 1 1 33 37 35 35 37 36 |
486 | 0 0 0 0 0 0 0 0 0 0 0 0 | 485 | 32 35 33 28 31 30 23 27 26 20 24 24 18 22 22 17 21 21 |
487 | 0 0 0 0 0 0 0 0 0 0 0 0 | 486 | 16 20 20 16 20 20 17 21 21 21 25 23 31 33 31 44 46 43 |
488 | 0 0 0 0 0 0 0 0 0 0 0 0 | 487 | 31 33 31 11 13 13 12 14 14 12 15 15 13 16 16 14 17 17 |
489 | 0 0 0 0 0 0 0 0 0 0 0 0 | 488 | 14 17 17 14 17 17 14 17 17 13 16 16 12 15 15 12 14 14 |
490 | 0 0 0 0 0 0 0 0 0 0 0 0 | 489 | 11 13 13 9 11 11 8 10 10 6 8 8 4 5 5 17 18 17 |
491 | 0 0 0 0 0 0 0 0 0 10 10 10 | 490 | 30 33 30 20 23 22 15 18 18 13 16 16 12 15 15 12 14 14 |
492 | 30 30 30 78 78 78 50 50 50 104 69 6 | 491 | 13 16 16 14 17 17 14 18 18 11 12 11 7 7 5 16 17 12 |
493 | 192 133 9 216 158 10 236 178 12 236 186 11 | 492 | 21 22 20 30 31 28 25 27 25 21 22 20 14 14 13 10 12 12 |
494 | 232 195 16 241 208 19 244 214 54 245 215 43 | 493 | 10 12 12 9 11 11 0 0 0 0 0 0 0 0 0 0 0 0 |
495 | 246 215 20 246 215 20 241 208 19 198 155 10 | 494 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
496 | 200 144 11 216 158 10 156 118 10 2 2 6 | 495 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
497 | 2 2 6 2 2 6 2 2 6 2 2 6 | 496 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
498 | 6 6 6 90 90 90 54 54 54 18 18 18 | 497 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
499 | 6 6 6 0 0 0 0 0 0 0 0 0 | 498 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
500 | 0 0 0 0 0 0 0 0 0 0 0 0 | 499 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
501 | 0 0 0 0 0 0 0 0 0 0 0 0 | 500 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
502 | 0 0 0 0 0 0 0 0 0 0 0 0 | 501 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
503 | 0 0 0 0 0 0 0 0 0 0 0 0 | 502 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
504 | 0 0 0 0 0 0 0 0 0 0 0 0 | 503 | 0 0 0 |
505 | 0 0 0 0 0 0 0 0 0 0 0 0 | 504 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
506 | 0 0 0 0 0 0 0 0 0 0 0 0 | 505 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
507 | 0 0 0 0 0 0 0 0 0 0 0 0 | 506 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
508 | 0 0 0 0 0 0 0 0 0 0 0 0 | 507 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
509 | 0 0 0 0 0 0 0 0 0 0 0 0 | 508 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
510 | 0 0 0 0 0 0 0 0 0 0 0 0 | 509 | 0 0 0 0 0 0 0 0 0 0 0 0 18 22 22 27 30 29 |
511 | 0 0 0 0 0 0 0 0 0 10 10 10 | 510 | 27 29 28 40 41 39 53 55 47 53 55 47 53 55 47 46 47 43 |
512 | 30 30 30 78 78 78 46 46 46 22 22 22 | 511 | 25 27 25 16 20 20 17 21 21 23 25 24 31 33 31 20 20 20 |
513 | 137 92 6 210 162 10 239 182 13 238 190 10 | 512 | 12 15 15 14 17 17 15 19 19 16 20 20 17 21 21 18 22 22 |
514 | 238 202 15 241 208 19 246 215 20 246 215 20 | 513 | 18 22 22 18 22 22 18 22 22 17 21 21 17 21 21 16 19 19 |
515 | 241 208 19 203 166 17 185 133 11 210 150 10 | 514 | 15 18 18 13 16 16 12 15 15 10 12 12 8 10 10 6 8 8 |
516 | 216 158 10 210 150 10 102 78 10 2 2 6 | 515 | 21 22 21 22 24 23 15 19 19 13 17 17 13 16 16 12 15 15 |
517 | 6 6 6 54 54 54 14 14 14 2 2 6 | 516 | 12 15 15 13 17 17 14 18 18 14 18 18 13 15 14 10 9 6 |
518 | 2 2 6 62 62 62 74 74 74 30 30 30 | 517 | 7 7 5 7 7 5 7 7 5 9 11 11 10 12 12 10 12 12 |
519 | 10 10 10 0 0 0 0 0 0 0 0 0 | 518 | 10 12 12 6 7 7 0 0 0 0 0 0 0 0 0 0 0 0 |
520 | 0 0 0 0 0 0 0 0 0 0 0 0 | 519 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
521 | 0 0 0 0 0 0 0 0 0 0 0 0 | 520 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
522 | 0 0 0 0 0 0 0 0 0 0 0 0 | 521 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
523 | 0 0 0 0 0 0 0 0 0 0 0 0 | 522 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
524 | 0 0 0 0 0 0 0 0 0 0 0 0 | 523 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
525 | 0 0 0 0 0 0 0 0 0 0 0 0 | 524 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
526 | 0 0 0 0 0 0 0 0 0 0 0 0 | 525 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
527 | 0 0 0 0 0 0 0 0 0 0 0 0 | 526 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
528 | 0 0 0 0 0 0 0 0 0 0 0 0 | 527 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
529 | 0 0 0 0 0 0 0 0 0 0 0 0 | 528 | 0 0 0 |
530 | 0 0 0 0 0 0 0 0 0 0 0 0 | 529 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
531 | 0 0 0 0 0 0 0 0 0 10 10 10 | 530 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
532 | 34 34 34 78 78 78 50 50 50 6 6 6 | 531 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
533 | 94 70 30 139 102 15 190 146 13 226 184 13 | 532 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
534 | 232 200 30 232 195 16 215 174 15 190 146 13 | 533 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
535 | 168 122 10 192 133 9 210 150 10 213 154 11 | 534 | 0 0 0 0 0 0 0 0 0 0 0 0 16 17 12 82 81 62 |
536 | 202 150 34 182 157 106 101 98 89 2 2 6 | 535 | 118 116 76 118 116 76 161 156 96 161 156 96 161 156 96 118 116 76 |
537 | 2 2 6 78 78 78 116 116 116 58 58 58 | 536 | 118 116 76 96 95 69 53 55 47 22 24 23 14 17 17 13 16 16 |
538 | 2 2 6 22 22 22 90 90 90 46 46 46 | 537 | 15 19 19 17 21 21 18 22 22 20 24 24 20 24 24 23 27 26 |
539 | 18 18 18 6 6 6 0 0 0 0 0 0 | 538 | 23 27 26 23 27 26 23 27 26 23 27 26 23 27 26 20 24 24 |
540 | 0 0 0 0 0 0 0 0 0 0 0 0 | 539 | 20 23 23 17 21 21 16 19 19 14 17 17 12 15 15 10 12 12 |
541 | 0 0 0 0 0 0 0 0 0 0 0 0 | 540 | 9 11 11 20 23 22 16 19 19 14 17 17 13 16 16 12 15 15 |
542 | 0 0 0 0 0 0 0 0 0 0 0 0 | 541 | 11 14 14 13 16 16 14 17 17 14 18 18 14 17 17 12 15 15 |
543 | 0 0 0 0 0 0 0 0 0 0 0 0 | 542 | 10 12 12 10 12 12 10 12 12 10 12 12 10 12 12 10 12 12 |
544 | 0 0 0 0 0 0 0 0 0 0 0 0 | 543 | 9 11 11 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 |
545 | 0 0 0 0 0 0 0 0 0 0 0 0 | 544 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
546 | 0 0 0 0 0 0 0 0 0 0 0 0 | 545 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
547 | 0 0 0 0 0 0 0 0 0 0 0 0 | 546 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
548 | 0 0 0 0 0 0 0 0 0 0 0 0 | 547 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
549 | 0 0 0 0 0 0 0 0 0 0 0 0 | 548 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
550 | 0 0 0 0 0 0 0 0 0 0 0 0 | 549 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
551 | 0 0 0 0 0 0 0 0 0 10 10 10 | 550 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
552 | 38 38 38 86 86 86 50 50 50 6 6 6 | 551 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
553 | 128 128 128 174 154 114 156 107 11 168 122 10 | 552 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
554 | 198 155 10 184 144 12 197 138 11 200 144 11 | 553 | 0 0 0 |
555 | 206 145 10 206 145 10 197 138 11 188 164 115 | 554 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
556 | 195 195 195 198 198 198 174 174 174 14 14 14 | 555 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
557 | 2 2 6 22 22 22 116 116 116 116 116 116 | 556 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
558 | 22 22 22 2 2 6 74 74 74 70 70 70 | 557 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
559 | 30 30 30 10 10 10 0 0 0 0 0 0 | 558 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
560 | 0 0 0 0 0 0 0 0 0 0 0 0 | 559 | 0 0 0 0 0 0 0 0 0 0 0 0 53 55 47 161 156 96 |
561 | 0 0 0 0 0 0 0 0 0 0 0 0 | 560 | 161 156 96 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
562 | 0 0 0 0 0 0 0 0 0 0 0 0 | 561 | 230 229 82 161 156 96 118 116 76 96 95 69 21 22 20 16 19 19 |
563 | 0 0 0 0 0 0 0 0 0 0 0 0 | 562 | 18 22 22 20 24 24 23 27 26 23 27 26 26 28 27 27 30 29 |
564 | 0 0 0 0 0 0 0 0 0 0 0 0 | 563 | 27 30 29 18 22 22 12 14 14 8 10 10 9 11 11 17 21 21 |
565 | 0 0 0 0 0 0 0 0 0 0 0 0 | 564 | 23 27 26 23 27 26 20 24 24 18 22 22 16 20 20 14 17 17 |
566 | 0 0 0 0 0 0 0 0 0 0 0 0 | 565 | 12 14 14 14 17 17 16 20 20 14 17 17 13 17 17 13 16 16 |
567 | 0 0 0 0 0 0 0 0 0 0 0 0 | 566 | 12 15 15 12 15 15 13 17 17 14 18 18 14 17 17 13 16 16 |
568 | 0 0 0 0 0 0 0 0 0 0 0 0 | 567 | 11 13 13 10 12 12 10 12 12 10 12 12 10 12 12 10 12 12 |
569 | 0 0 0 0 0 0 0 0 0 0 0 0 | 568 | 4 5 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
570 | 0 0 0 0 0 0 0 0 0 0 0 0 | 569 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
571 | 0 0 0 0 0 0 6 6 6 18 18 18 | 570 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
572 | 50 50 50 101 101 101 26 26 26 10 10 10 | 571 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
573 | 138 138 138 190 190 190 174 154 114 156 107 11 | 572 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
574 | 197 138 11 200 144 11 197 138 11 192 133 9 | 573 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
575 | 180 123 7 190 142 34 190 178 144 187 187 187 | 574 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
576 | 202 202 202 221 221 221 214 214 214 66 66 66 | 575 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
577 | 2 2 6 2 2 6 50 50 50 62 62 62 | 576 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
578 | 6 6 6 2 2 6 10 10 10 90 90 90 | 577 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
579 | 50 50 50 18 18 18 6 6 6 0 0 0 | 578 | 0 0 0 |
580 | 0 0 0 0 0 0 0 0 0 0 0 0 | 579 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
581 | 0 0 0 0 0 0 0 0 0 0 0 0 | 580 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
582 | 0 0 0 0 0 0 0 0 0 0 0 0 | 581 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
583 | 0 0 0 0 0 0 0 0 0 0 0 0 | 582 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
584 | 0 0 0 0 0 0 0 0 0 0 0 0 | 583 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
585 | 0 0 0 0 0 0 0 0 0 0 0 0 | 584 | 0 0 0 0 0 0 0 0 0 13 12 7 118 116 76 230 229 82 |
586 | 0 0 0 0 0 0 0 0 0 0 0 0 | 585 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
587 | 0 0 0 0 0 0 0 0 0 0 0 0 | 586 | 230 229 82 230 229 82 230 229 82 161 156 96 118 116 76 30 31 28 |
588 | 0 0 0 0 0 0 0 0 0 0 0 0 | 587 | 20 24 24 23 27 26 27 30 29 28 31 30 30 32 31 23 27 26 |
589 | 0 0 0 0 0 0 0 0 0 0 0 0 | 588 | 16 19 19 17 21 21 12 15 15 9 11 11 10 12 12 9 11 11 |
590 | 0 0 0 0 0 0 0 0 0 0 0 0 | 589 | 20 24 24 28 31 30 26 28 27 23 27 26 20 24 24 17 21 21 |
591 | 0 0 0 0 0 0 10 10 10 34 34 34 | 590 | 15 19 19 13 16 16 16 19 19 14 18 18 14 17 17 13 16 16 |
592 | 74 74 74 74 74 74 2 2 6 6 6 6 | 591 | 12 15 15 11 14 14 13 16 16 14 17 17 14 18 18 14 17 17 |
593 | 144 144 144 198 198 198 190 190 190 178 166 146 | 592 | 12 15 15 10 12 12 10 12 12 10 12 12 10 12 12 8 9 9 |
594 | 154 121 60 156 107 11 156 107 11 168 124 44 | 593 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
595 | 174 154 114 187 187 187 190 190 190 210 210 210 | 594 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
596 | 246 246 246 253 253 253 253 253 253 182 182 182 | 595 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
597 | 6 6 6 2 2 6 2 2 6 2 2 6 | 596 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
598 | 2 2 6 2 2 6 2 2 6 62 62 62 | 597 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
599 | 74 74 74 34 34 34 14 14 14 0 0 0 | 598 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
600 | 0 0 0 0 0 0 0 0 0 0 0 0 | 599 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
601 | 0 0 0 0 0 0 0 0 0 0 0 0 | 600 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
602 | 0 0 0 0 0 0 0 0 0 0 0 0 | 601 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
603 | 0 0 0 0 0 0 0 0 0 0 0 0 | 602 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
604 | 0 0 0 0 0 0 0 0 0 0 0 0 | 603 | 0 0 0 |
605 | 0 0 0 0 0 0 0 0 0 0 0 0 | 604 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
606 | 0 0 0 0 0 0 0 0 0 0 0 0 | 605 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
607 | 0 0 0 0 0 0 0 0 0 0 0 0 | 606 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
608 | 0 0 0 0 0 0 0 0 0 0 0 0 | 607 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
609 | 0 0 0 0 0 0 0 0 0 0 0 0 | 608 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
610 | 0 0 0 0 0 0 0 0 0 0 0 0 | 609 | 0 0 0 0 0 0 0 0 0 82 81 62 161 156 96 230 229 82 |
611 | 0 0 0 10 10 10 22 22 22 54 54 54 | 610 | 230 229 82 233 233 100 230 229 82 230 229 82 230 229 82 230 229 82 |
612 | 94 94 94 18 18 18 2 2 6 46 46 46 | 611 | 230 229 82 230 229 82 230 229 82 230 229 82 161 156 96 118 116 76 |
613 | 234 234 234 221 221 221 190 190 190 190 190 190 | 612 | 27 29 28 27 30 29 30 32 31 30 32 31 23 27 26 20 24 24 |
614 | 190 190 190 187 187 187 187 187 187 190 190 190 | 613 | 26 28 27 17 21 21 6 7 7 72 73 67 145 141 105 15 15 15 |
615 | 190 190 190 195 195 195 214 214 214 242 242 242 | 614 | 14 17 17 33 37 35 30 32 31 28 31 30 26 28 27 23 27 26 |
616 | 253 253 253 253 253 253 253 253 253 253 253 253 | 615 | 20 23 23 16 20 20 15 19 19 14 18 18 14 17 17 13 16 16 |
617 | 82 82 82 2 2 6 2 2 6 2 2 6 | 616 | 12 15 15 11 14 14 12 15 15 13 17 17 14 18 18 14 17 17 |
618 | 2 2 6 2 2 6 2 2 6 14 14 14 | 617 | 13 16 16 11 13 13 10 12 12 10 12 12 9 11 11 1 1 1 |
619 | 86 86 86 54 54 54 22 22 22 6 6 6 | 618 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
620 | 0 0 0 0 0 0 0 0 0 0 0 0 | 619 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
621 | 0 0 0 0 0 0 0 0 0 0 0 0 | 620 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
622 | 0 0 0 0 0 0 0 0 0 0 0 0 | 621 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
623 | 0 0 0 0 0 0 0 0 0 0 0 0 | 622 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
624 | 0 0 0 0 0 0 0 0 0 0 0 0 | 623 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
625 | 0 0 0 0 0 0 0 0 0 0 0 0 | 624 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
626 | 0 0 0 0 0 0 0 0 0 0 0 0 | 625 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
627 | 0 0 0 0 0 0 0 0 0 0 0 0 | 626 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
628 | 0 0 0 0 0 0 0 0 0 0 0 0 | 627 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
629 | 0 0 0 0 0 0 0 0 0 0 0 0 | 628 | 0 0 0 |
630 | 0 0 0 0 0 0 0 0 0 0 0 0 | 629 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
631 | 6 6 6 18 18 18 46 46 46 90 90 90 | 630 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
632 | 46 46 46 18 18 18 6 6 6 182 182 182 | 631 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
633 | 253 253 253 246 246 246 206 206 206 190 190 190 | 632 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
634 | 190 190 190 190 190 190 190 190 190 190 190 190 | 633 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
635 | 206 206 206 231 231 231 250 250 250 253 253 253 | 634 | 0 0 0 0 0 0 16 17 12 161 156 96 230 229 82 230 229 82 |
636 | 253 253 253 253 253 253 253 253 253 253 253 253 | 635 | 243 242 120 235 234 117 230 229 82 230 229 82 230 229 82 230 229 82 |
637 | 202 202 202 14 14 14 2 2 6 2 2 6 | 636 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 161 156 96 |
638 | 2 2 6 2 2 6 2 2 6 2 2 6 | 637 | 82 81 62 28 31 30 28 31 30 27 30 29 28 31 30 30 32 31 |
639 | 42 42 42 86 86 86 42 42 42 18 18 18 | 638 | 33 37 35 13 16 16 3 3 3 105 104 92 210 208 158 12 14 14 |
640 | 6 6 6 0 0 0 0 0 0 0 0 0 | 639 | 17 21 21 33 37 35 33 37 35 32 35 33 30 32 31 27 30 29 |
641 | 0 0 0 0 0 0 0 0 0 0 0 0 | 640 | 23 27 26 20 23 23 17 20 20 15 18 18 14 18 18 13 17 17 |
642 | 0 0 0 0 0 0 0 0 0 0 0 0 | 641 | 13 16 16 12 15 15 11 14 14 13 16 16 14 17 17 14 18 18 |
643 | 0 0 0 0 0 0 0 0 0 0 0 0 | 642 | 13 17 17 12 15 15 10 12 12 10 12 12 3 4 4 0 0 0 |
644 | 0 0 0 0 0 0 0 0 0 0 0 0 | 643 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
645 | 0 0 0 0 0 0 0 0 0 0 0 0 | 644 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
646 | 0 0 0 0 0 0 0 0 0 0 0 0 | 645 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
647 | 0 0 0 0 0 0 0 0 0 0 0 0 | 646 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
648 | 0 0 0 0 0 0 0 0 0 0 0 0 | 647 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
649 | 0 0 0 0 0 0 0 0 0 0 0 0 | 648 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
650 | 0 0 0 0 0 0 0 0 0 6 6 6 | 649 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
651 | 14 14 14 38 38 38 74 74 74 66 66 66 | 650 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
652 | 2 2 6 6 6 6 90 90 90 250 250 250 | 651 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
653 | 253 253 253 253 253 253 238 238 238 198 198 198 | 652 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
654 | 190 190 190 190 190 190 195 195 195 221 221 221 | 653 | 0 0 0 |
655 | 246 246 246 253 253 253 253 253 253 253 253 253 | 654 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
656 | 253 253 253 253 253 253 253 253 253 253 253 253 | 655 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
657 | 253 253 253 82 82 82 2 2 6 2 2 6 | 656 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
658 | 2 2 6 2 2 6 2 2 6 2 2 6 | 657 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
659 | 2 2 6 78 78 78 70 70 70 34 34 34 | 658 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
660 | 14 14 14 6 6 6 0 0 0 0 0 0 | 659 | 0 0 0 0 0 0 96 95 69 230 229 82 230 229 82 244 244 132 |
661 | 0 0 0 0 0 0 0 0 0 0 0 0 | 660 | 241 241 143 243 242 120 230 229 82 230 229 82 230 229 82 230 229 82 |
662 | 0 0 0 0 0 0 0 0 0 0 0 0 | 661 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
663 | 0 0 0 0 0 0 0 0 0 0 0 0 | 662 | 161 156 96 46 47 43 32 35 33 33 37 35 33 37 35 33 37 35 |
664 | 0 0 0 0 0 0 0 0 0 0 0 0 | 663 | 40 43 41 23 27 26 1 1 1 2 2 2 24 26 24 14 17 17 |
665 | 0 0 0 0 0 0 0 0 0 0 0 0 | 664 | 23 27 26 33 37 35 33 37 35 33 37 35 33 37 35 30 32 31 |
666 | 0 0 0 0 0 0 0 0 0 0 0 0 | 665 | 27 30 29 23 27 26 20 23 23 15 18 18 14 18 18 14 17 17 |
667 | 0 0 0 0 0 0 0 0 0 0 0 0 | 666 | 13 16 16 12 15 15 11 14 14 12 15 15 13 17 17 14 17 17 |
668 | 0 0 0 0 0 0 0 0 0 0 0 0 | 667 | 14 17 17 13 16 16 11 13 13 6 8 8 0 0 0 0 0 0 |
669 | 0 0 0 0 0 0 0 0 0 0 0 0 | 668 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
670 | 0 0 0 0 0 0 0 0 0 14 14 14 | 669 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
671 | 34 34 34 66 66 66 78 78 78 6 6 6 | 670 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
672 | 2 2 6 18 18 18 218 218 218 253 253 253 | 671 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
673 | 253 253 253 253 253 253 253 253 253 246 246 246 | 672 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
674 | 226 226 226 231 231 231 246 246 246 253 253 253 | 673 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
675 | 253 253 253 253 253 253 253 253 253 253 253 253 | 674 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
676 | 253 253 253 253 253 253 253 253 253 253 253 253 | 675 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
677 | 253 253 253 178 178 178 2 2 6 2 2 6 | 676 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
678 | 2 2 6 2 2 6 2 2 6 2 2 6 | 677 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
679 | 2 2 6 18 18 18 90 90 90 62 62 62 | 678 | 0 0 0 |
680 | 30 30 30 10 10 10 0 0 0 0 0 0 | 679 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
681 | 0 0 0 0 0 0 0 0 0 0 0 0 | 680 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
682 | 0 0 0 0 0 0 0 0 0 0 0 0 | 681 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
683 | 0 0 0 0 0 0 0 0 0 0 0 0 | 682 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
684 | 0 0 0 0 0 0 0 0 0 0 0 0 | 683 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
685 | 0 0 0 0 0 0 0 0 0 0 0 0 | 684 | 0 0 0 16 17 12 161 156 96 230 229 82 235 234 117 239 239 170 |
686 | 0 0 0 0 0 0 0 0 0 0 0 0 | 685 | 239 239 170 236 236 101 230 229 82 230 229 82 230 229 82 230 229 82 |
687 | 0 0 0 0 0 0 0 0 0 0 0 0 | 686 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
688 | 0 0 0 0 0 0 0 0 0 0 0 0 | 687 | 230 229 82 118 116 76 33 37 35 33 37 35 37 39 37 37 39 37 |
689 | 0 0 0 0 0 0 0 0 0 0 0 0 | 688 | 43 45 43 49 51 48 20 24 24 8 10 10 17 20 20 35 37 36 |
690 | 0 0 0 0 0 0 10 10 10 26 26 26 | 689 | 33 37 35 40 43 41 37 39 37 35 37 36 33 37 35 33 37 35 |
691 | 58 58 58 90 90 90 18 18 18 2 2 6 | 690 | 30 32 31 27 30 29 23 27 26 15 19 19 14 18 18 14 17 17 |
692 | 2 2 6 110 110 110 253 253 253 253 253 253 | 691 | 13 17 17 13 16 16 12 15 15 11 14 14 13 16 16 14 17 17 |
693 | 253 253 253 253 253 253 253 253 253 253 253 253 | 692 | 14 17 17 13 17 17 11 14 14 4 5 5 0 0 0 0 0 0 |
694 | 250 250 250 253 253 253 253 253 253 253 253 253 | 693 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
695 | 253 253 253 253 253 253 253 253 253 253 253 253 | 694 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
696 | 253 253 253 253 253 253 253 253 253 253 253 253 | 695 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
697 | 253 253 253 231 231 231 18 18 18 2 2 6 | 696 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
698 | 2 2 6 2 2 6 2 2 6 2 2 6 | 697 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
699 | 2 2 6 2 2 6 18 18 18 94 94 94 | 698 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
700 | 54 54 54 26 26 26 10 10 10 0 0 0 | 699 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
701 | 0 0 0 0 0 0 0 0 0 0 0 0 | 700 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
702 | 0 0 0 0 0 0 0 0 0 0 0 0 | 701 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
703 | 0 0 0 0 0 0 0 0 0 0 0 0 | 702 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
704 | 0 0 0 0 0 0 0 0 0 0 0 0 | 703 | 0 0 0 |
705 | 0 0 0 0 0 0 0 0 0 0 0 0 | 704 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
706 | 0 0 0 0 0 0 0 0 0 0 0 0 | 705 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
707 | 0 0 0 0 0 0 0 0 0 0 0 0 | 706 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
708 | 0 0 0 0 0 0 0 0 0 0 0 0 | 707 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
709 | 0 0 0 0 0 0 0 0 0 0 0 0 | 708 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
710 | 0 0 0 6 6 6 22 22 22 50 50 50 | 709 | 0 0 0 96 95 69 230 229 82 230 229 82 239 239 170 251 251 187 |
711 | 90 90 90 26 26 26 2 2 6 2 2 6 | 710 | 241 241 143 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
712 | 14 14 14 195 195 195 250 250 250 253 253 253 | 711 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
713 | 253 253 253 253 253 253 253 253 253 253 253 253 | 712 | 230 229 82 161 156 96 36 38 35 33 37 35 33 37 35 33 37 35 |
714 | 253 253 253 253 253 253 253 253 253 253 253 253 | 713 | 37 39 37 47 48 46 55 57 54 55 57 54 49 51 48 43 45 43 |
715 | 253 253 253 253 253 253 253 253 253 253 253 253 | 714 | 43 45 43 43 45 43 40 43 41 40 43 41 37 39 37 33 37 35 |
716 | 253 253 253 253 253 253 253 253 253 253 253 253 | 715 | 33 37 35 28 31 30 26 28 27 16 20 20 15 18 18 14 18 18 |
717 | 250 250 250 242 242 242 54 54 54 2 2 6 | 716 | 14 17 17 13 16 16 12 15 15 11 14 14 12 15 15 13 17 17 |
718 | 2 2 6 2 2 6 2 2 6 2 2 6 | 717 | 14 17 17 14 17 17 8 10 10 5 7 7 0 0 0 0 0 0 |
719 | 2 2 6 2 2 6 2 2 6 38 38 38 | 718 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
720 | 86 86 86 50 50 50 22 22 22 6 6 6 | 719 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
721 | 0 0 0 0 0 0 0 0 0 0 0 0 | 720 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
722 | 0 0 0 0 0 0 0 0 0 0 0 0 | 721 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
723 | 0 0 0 0 0 0 0 0 0 0 0 0 | 722 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
724 | 0 0 0 0 0 0 0 0 0 0 0 0 | 723 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
725 | 0 0 0 0 0 0 0 0 0 0 0 0 | 724 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
726 | 0 0 0 0 0 0 0 0 0 0 0 0 | 725 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
727 | 0 0 0 0 0 0 0 0 0 0 0 0 | 726 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
728 | 0 0 0 0 0 0 0 0 0 0 0 0 | 727 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
729 | 0 0 0 0 0 0 0 0 0 0 0 0 | 728 | 0 0 0 |
730 | 6 6 6 14 14 14 38 38 38 82 82 82 | 729 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
731 | 34 34 34 2 2 6 2 2 6 2 2 6 | 730 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
732 | 42 42 42 195 195 195 246 246 246 253 253 253 | 731 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
733 | 253 253 253 253 253 253 253 253 253 250 250 250 | 732 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
734 | 242 242 242 242 242 242 250 250 250 253 253 253 | 733 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
735 | 253 253 253 253 253 253 253 253 253 253 253 253 | 734 | 16 17 12 230 229 82 230 229 82 243 242 120 251 251 187 251 251 187 |
736 | 253 253 253 250 250 250 246 246 246 238 238 238 | 735 | 246 246 123 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
737 | 226 226 226 231 231 231 101 101 101 6 6 6 | 736 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
738 | 2 2 6 2 2 6 2 2 6 2 2 6 | 737 | 230 229 82 230 229 82 66 65 55 30 32 31 32 35 33 33 37 35 |
739 | 2 2 6 2 2 6 2 2 6 2 2 6 | 738 | 33 37 35 37 39 37 40 43 41 47 48 46 49 51 48 51 52 50 |
740 | 38 38 38 82 82 82 42 42 42 14 14 14 | 739 | 55 57 54 55 57 54 51 52 50 47 48 46 43 45 43 39 40 39 |
741 | 6 6 6 0 0 0 0 0 0 0 0 0 | 740 | 33 37 35 30 32 31 26 28 27 17 21 21 15 19 19 14 18 18 |
742 | 0 0 0 0 0 0 0 0 0 0 0 0 | 741 | 14 17 17 13 16 16 12 15 15 12 14 14 11 14 14 13 16 16 |
743 | 0 0 0 0 0 0 0 0 0 0 0 0 | 742 | 14 17 17 12 15 15 7 9 9 6 8 8 1 1 1 0 0 0 |
744 | 0 0 0 0 0 0 0 0 0 0 0 0 | 743 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
745 | 0 0 0 0 0 0 0 0 0 0 0 0 | 744 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
746 | 0 0 0 0 0 0 0 0 0 0 0 0 | 745 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
747 | 0 0 0 0 0 0 0 0 0 0 0 0 | 746 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
748 | 0 0 0 0 0 0 0 0 0 0 0 0 | 747 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
749 | 0 0 0 0 0 0 0 0 0 0 0 0 | 748 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
750 | 10 10 10 26 26 26 62 62 62 66 66 66 | 749 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
751 | 2 2 6 2 2 6 2 2 6 6 6 6 | 750 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
752 | 70 70 70 170 170 170 206 206 206 234 234 234 | 751 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
753 | 246 246 246 250 250 250 250 250 250 238 238 238 | 752 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
754 | 226 226 226 231 231 231 238 238 238 250 250 250 | 753 | 0 0 0 |
755 | 250 250 250 250 250 250 246 246 246 231 231 231 | 754 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
756 | 214 214 214 206 206 206 202 202 202 202 202 202 | 755 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
757 | 198 198 198 202 202 202 182 182 182 18 18 18 | 756 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
758 | 2 2 6 2 2 6 2 2 6 2 2 6 | 757 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
759 | 2 2 6 2 2 6 2 2 6 2 2 6 | 758 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
760 | 2 2 6 62 62 62 66 66 66 30 30 30 | 759 | 96 95 69 230 229 82 230 229 82 239 239 170 251 251 187 239 239 170 |
761 | 10 10 10 0 0 0 0 0 0 0 0 0 | 760 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
762 | 0 0 0 0 0 0 0 0 0 0 0 0 | 761 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
763 | 0 0 0 0 0 0 0 0 0 0 0 0 | 762 | 230 229 82 230 229 82 96 95 69 27 30 29 28 31 30 30 32 31 |
764 | 0 0 0 0 0 0 0 0 0 0 0 0 | 763 | 33 37 35 40 43 41 46 47 45 55 57 54 63 64 60 72 73 67 |
765 | 0 0 0 0 0 0 0 0 0 0 0 0 | 764 | 72 73 67 72 73 67 72 73 67 65 66 61 55 57 54 47 48 46 |
766 | 0 0 0 0 0 0 0 0 0 0 0 0 | 765 | 39 40 39 32 35 33 27 30 29 17 21 21 15 19 19 15 18 18 |
767 | 0 0 0 0 0 0 0 0 0 0 0 0 | 766 | 14 18 18 13 17 17 13 16 16 12 15 15 11 14 14 12 14 14 |
768 | 0 0 0 0 0 0 0 0 0 0 0 0 | 767 | 13 16 16 9 11 11 7 9 9 9 11 11 66 65 55 115 113 82 |
769 | 0 0 0 0 0 0 0 0 0 0 0 0 | 768 | 21 22 20 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
770 | 14 14 14 42 42 42 82 82 82 18 18 18 | 769 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
771 | 2 2 6 2 2 6 2 2 6 10 10 10 | 770 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
772 | 94 94 94 182 182 182 218 218 218 242 242 242 | 771 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
773 | 250 250 250 253 253 253 253 253 253 250 250 250 | 772 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
774 | 234 234 234 253 253 253 253 253 253 253 253 253 | 773 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
775 | 253 253 253 253 253 253 253 253 253 246 246 246 | 774 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
776 | 238 238 238 226 226 226 210 210 210 202 202 202 | 775 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
777 | 195 195 195 195 195 195 210 210 210 158 158 158 | 776 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
778 | 6 6 6 14 14 14 50 50 50 14 14 14 | 777 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
779 | 2 2 6 2 2 6 2 2 6 2 2 6 | 778 | 0 0 0 |
780 | 2 2 6 6 6 6 86 86 86 46 46 46 | 779 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
781 | 18 18 18 6 6 6 0 0 0 0 0 0 | 780 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
782 | 0 0 0 0 0 0 0 0 0 0 0 0 | 781 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
783 | 0 0 0 0 0 0 0 0 0 0 0 0 | 782 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
784 | 0 0 0 0 0 0 0 0 0 0 0 0 | 783 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 13 12 7 |
785 | 0 0 0 0 0 0 0 0 0 0 0 0 | 784 | 230 229 82 230 229 82 236 236 101 251 251 187 251 251 187 246 246 123 |
786 | 0 0 0 0 0 0 0 0 0 0 0 0 | 785 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
787 | 0 0 0 0 0 0 0 0 0 0 0 0 | 786 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
788 | 0 0 0 0 0 0 0 0 0 0 0 0 | 787 | 230 229 82 230 229 82 118 116 76 23 27 26 26 28 27 32 35 33 |
789 | 0 0 0 0 0 0 0 0 0 6 6 6 | 788 | 51 52 50 90 89 73 110 109 94 145 141 105 168 163 120 177 172 135 |
790 | 22 22 22 54 54 54 70 70 70 2 2 6 | 789 | 177 172 135 188 184 146 188 184 146 181 176 137 194 191 148 188 184 146 |
791 | 2 2 6 10 10 10 2 2 6 22 22 22 | 790 | 184 179 149 188 184 146 188 184 146 156 151 111 177 172 135 181 176 137 |
792 | 166 166 166 231 231 231 250 250 250 253 253 253 | 791 | 177 172 135 168 163 120 168 163 120 158 153 112 156 151 111 158 153 112 |
793 | 253 253 253 253 253 253 253 253 253 250 250 250 | 792 | 156 151 111 158 153 112 177 172 135 188 184 146 188 184 146 194 189 146 |
794 | 242 242 242 253 253 253 253 253 253 253 253 253 | 793 | 36 38 35 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
795 | 253 253 253 253 253 253 253 253 253 253 253 253 | 794 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
796 | 253 253 253 253 253 253 253 253 253 246 246 246 | 795 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
797 | 231 231 231 206 206 206 198 198 198 226 226 226 | 796 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
798 | 94 94 94 2 2 6 6 6 6 38 38 38 | 797 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
799 | 30 30 30 2 2 6 2 2 6 2 2 6 | 798 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
800 | 2 2 6 2 2 6 62 62 62 66 66 66 | 799 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
801 | 26 26 26 10 10 10 0 0 0 0 0 0 | 800 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
802 | 0 0 0 0 0 0 0 0 0 0 0 0 | 801 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
803 | 0 0 0 0 0 0 0 0 0 0 0 0 | 802 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
804 | 0 0 0 0 0 0 0 0 0 0 0 0 | 803 | 0 0 0 |
805 | 0 0 0 0 0 0 0 0 0 0 0 0 | 804 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
806 | 0 0 0 0 0 0 0 0 0 0 0 0 | 805 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
807 | 0 0 0 0 0 0 0 0 0 0 0 0 | 806 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
808 | 0 0 0 0 0 0 0 0 0 0 0 0 | 807 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
809 | 0 0 0 0 0 0 0 0 0 10 10 10 | 808 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 82 81 62 |
810 | 30 30 30 74 74 74 50 50 50 2 2 6 | 809 | 230 229 82 230 229 82 244 244 132 251 251 187 244 244 132 230 229 82 |
811 | 26 26 26 26 26 26 2 2 6 106 106 106 | 810 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
812 | 238 238 238 253 253 253 253 253 253 253 253 253 | 811 | 230 229 82 230 229 82 230 229 82 230 229 82 161 156 96 82 81 62 |
813 | 253 253 253 253 253 253 253 253 253 253 253 253 | 812 | 96 95 69 230 229 82 181 178 103 110 109 94 156 151 111 188 184 146 |
814 | 253 253 253 253 253 253 253 253 253 253 253 253 | 813 | 188 184 146 197 193 154 188 184 146 184 181 136 188 184 146 168 163 120 |
815 | 253 253 253 253 253 253 253 253 253 253 253 253 | 814 | 168 163 120 178 174 128 156 151 111 158 153 112 174 170 121 156 151 111 |
816 | 253 253 253 253 253 253 253 253 253 253 253 253 | 815 | 156 151 111 158 153 112 156 151 111 168 163 120 178 174 128 181 176 137 |
817 | 253 253 253 246 246 246 218 218 218 202 202 202 | 816 | 176 171 126 178 174 128 184 181 136 176 171 126 178 174 128 184 181 136 |
818 | 210 210 210 14 14 14 2 2 6 2 2 6 | 817 | 176 171 126 178 174 128 184 181 136 164 159 111 155 149 109 96 95 69 |
819 | 30 30 30 22 22 22 2 2 6 2 2 6 | 818 | 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
820 | 2 2 6 2 2 6 18 18 18 86 86 86 | 819 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
821 | 42 42 42 14 14 14 0 0 0 0 0 0 | 820 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
822 | 0 0 0 0 0 0 0 0 0 0 0 0 | 821 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
823 | 0 0 0 0 0 0 0 0 0 0 0 0 | 822 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
824 | 0 0 0 0 0 0 0 0 0 0 0 0 | 823 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
825 | 0 0 0 0 0 0 0 0 0 0 0 0 | 824 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
826 | 0 0 0 0 0 0 0 0 0 0 0 0 | 825 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
827 | 0 0 0 0 0 0 0 0 0 0 0 0 | 826 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
828 | 0 0 0 0 0 0 0 0 0 0 0 0 | 827 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
829 | 0 0 0 0 0 0 0 0 0 14 14 14 | 828 | 0 0 0 |
830 | 42 42 42 90 90 90 22 22 22 2 2 6 | 829 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
831 | 42 42 42 2 2 6 18 18 18 218 218 218 | 830 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
832 | 253 253 253 253 253 253 253 253 253 253 253 253 | 831 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
833 | 253 253 253 253 253 253 253 253 253 253 253 253 | 832 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
834 | 253 253 253 253 253 253 253 253 253 253 253 253 | 833 | 0 0 0 0 0 0 0 0 0 0 0 0 2 2 1 161 156 96 |
835 | 253 253 253 253 253 253 253 253 253 253 253 253 | 834 | 230 229 82 230 229 82 244 244 132 244 244 132 236 236 101 230 229 82 |
836 | 253 253 253 253 253 253 253 253 253 253 253 253 | 835 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
837 | 253 253 253 253 253 253 250 250 250 221 221 221 | 836 | 230 229 82 230 229 82 230 229 82 230 229 82 46 47 43 82 81 62 |
838 | 218 218 218 101 101 101 2 2 6 14 14 14 | 837 | 158 153 112 197 193 154 194 189 146 184 181 136 188 184 146 168 163 120 |
839 | 18 18 18 38 38 38 10 10 10 2 2 6 | 838 | 156 151 111 137 133 100 131 127 93 137 133 100 137 133 100 158 153 112 |
840 | 2 2 6 2 2 6 2 2 6 78 78 78 | 839 | 121 119 87 137 133 100 156 151 111 145 141 105 99 98 80 84 83 72 |
841 | 58 58 58 22 22 22 6 6 6 0 0 0 | 840 | 63 64 60 52 53 49 40 43 41 33 36 34 36 38 35 36 38 35 |
842 | 0 0 0 0 0 0 0 0 0 0 0 0 | 841 | 38 39 37 43 44 41 43 44 41 46 47 43 48 49 45 48 49 45 |
843 | 0 0 0 0 0 0 0 0 0 0 0 0 | 842 | 46 47 43 36 38 35 30 31 28 19 20 18 6 7 7 0 0 0 |
844 | 0 0 0 0 0 0 0 0 0 0 0 0 | 843 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
845 | 0 0 0 0 0 0 0 0 0 0 0 0 | 844 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
846 | 0 0 0 0 0 0 0 0 0 0 0 0 | 845 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
847 | 0 0 0 0 0 0 0 0 0 0 0 0 | 846 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
848 | 0 0 0 0 0 0 0 0 0 0 0 0 | 847 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
849 | 0 0 0 0 0 0 6 6 6 18 18 18 | 848 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
850 | 54 54 54 82 82 82 2 2 6 26 26 26 | 849 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
851 | 22 22 22 2 2 6 123 123 123 253 253 253 | 850 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
852 | 253 253 253 253 253 253 253 253 253 253 253 253 | 851 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
853 | 253 253 253 253 253 253 253 253 253 253 253 253 | 852 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
854 | 253 253 253 253 253 253 253 253 253 253 253 253 | 853 | 0 0 0 |
855 | 253 253 253 253 253 253 253 253 253 253 253 253 | 854 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
856 | 253 253 253 253 253 253 253 253 253 253 253 253 | 855 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
857 | 253 253 253 253 253 253 253 253 253 250 250 250 | 856 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
858 | 238 238 238 198 198 198 6 6 6 38 38 38 | 857 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
859 | 58 58 58 26 26 26 38 38 38 2 2 6 | 858 | 0 0 0 0 0 0 0 0 0 0 0 0 36 38 35 230 229 82 |
860 | 2 2 6 2 2 6 2 2 6 46 46 46 | 859 | 230 229 82 230 229 82 246 246 123 236 236 101 230 229 82 230 229 82 |
861 | 78 78 78 30 30 30 10 10 10 0 0 0 | 860 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
862 | 0 0 0 0 0 0 0 0 0 0 0 0 | 861 | 230 229 82 230 229 82 230 229 82 230 229 82 53 55 47 121 119 87 |
863 | 0 0 0 0 0 0 0 0 0 0 0 0 | 862 | 176 171 126 171 165 117 161 156 96 82 81 62 53 55 47 33 37 35 |
864 | 0 0 0 0 0 0 0 0 0 0 0 0 | 863 | 39 40 39 63 64 60 99 98 80 121 119 87 137 133 100 177 172 135 |
865 | 0 0 0 0 0 0 0 0 0 0 0 0 | 864 | 176 171 126 184 181 136 131 127 93 131 127 93 110 109 94 84 83 72 |
866 | 0 0 0 0 0 0 0 0 0 0 0 0 | 865 | 51 52 50 39 40 39 27 29 28 18 22 22 16 19 19 15 19 19 |
867 | 0 0 0 0 0 0 0 0 0 0 0 0 | 866 | 15 19 19 14 18 18 14 17 17 13 16 16 12 15 15 11 14 14 |
868 | 0 0 0 0 0 0 0 0 0 0 0 0 | 867 | 10 13 13 9 12 12 9 11 11 8 9 9 7 9 9 1 1 1 |
869 | 0 0 0 0 0 0 10 10 10 30 30 30 | 868 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
870 | 74 74 74 58 58 58 2 2 6 42 42 42 | 869 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
871 | 2 2 6 22 22 22 231 231 231 253 253 253 | 870 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
872 | 253 253 253 253 253 253 253 253 253 253 253 253 | 871 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
873 | 253 253 253 253 253 253 253 253 253 250 250 250 | 872 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
874 | 253 253 253 253 253 253 253 253 253 253 253 253 | 873 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
875 | 253 253 253 253 253 253 253 253 253 253 253 253 | 874 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
876 | 253 253 253 253 253 253 253 253 253 253 253 253 | 875 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
877 | 253 253 253 253 253 253 253 253 253 253 253 253 | 876 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
878 | 253 253 253 246 246 246 46 46 46 38 38 38 | 877 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
879 | 42 42 42 14 14 14 38 38 38 14 14 14 | 878 | 0 0 0 |
880 | 2 2 6 2 2 6 2 2 6 6 6 6 | 879 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
881 | 86 86 86 46 46 46 14 14 14 0 0 0 | 880 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
882 | 0 0 0 0 0 0 0 0 0 0 0 0 | 881 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
883 | 0 0 0 0 0 0 0 0 0 0 0 0 | 882 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
884 | 0 0 0 0 0 0 0 0 0 0 0 0 | 883 | 0 0 0 0 0 0 0 0 0 0 0 0 118 116 76 230 229 82 |
885 | 0 0 0 0 0 0 0 0 0 0 0 0 | 884 | 230 229 82 230 229 82 236 236 101 230 229 82 230 229 82 230 229 82 |
886 | 0 0 0 0 0 0 0 0 0 0 0 0 | 885 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
887 | 0 0 0 0 0 0 0 0 0 0 0 0 | 886 | 230 229 82 230 229 82 230 229 82 230 229 82 96 95 69 71 71 57 |
888 | 0 0 0 0 0 0 0 0 0 0 0 0 | 887 | 36 38 35 118 116 76 118 116 76 12 15 15 15 18 18 20 24 24 |
889 | 0 0 0 6 6 6 14 14 14 42 42 42 | 888 | 33 37 35 55 56 53 84 83 72 110 109 94 145 141 105 110 109 94 |
890 | 90 90 90 18 18 18 18 18 18 26 26 26 | 889 | 168 163 120 121 119 87 156 151 111 131 127 93 87 86 72 61 63 57 |
891 | 2 2 6 116 116 116 253 253 253 253 253 253 | 890 | 47 48 46 28 31 30 18 22 22 15 19 19 15 18 18 15 19 19 |
892 | 253 253 253 253 253 253 253 253 253 253 253 253 | 891 | 15 19 19 14 18 18 14 17 17 13 17 17 13 16 16 12 15 15 |
893 | 253 253 253 253 253 253 250 250 250 238 238 238 | 892 | 11 13 13 10 12 12 9 11 11 8 10 10 7 9 9 3 3 3 |
894 | 253 253 253 253 253 253 253 253 253 253 253 253 | 893 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
895 | 253 253 253 253 253 253 253 253 253 253 253 253 | 894 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
896 | 253 253 253 253 253 253 253 253 253 253 253 253 | 895 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
897 | 253 253 253 253 253 253 253 253 253 253 253 253 | 896 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
898 | 253 253 253 253 253 253 94 94 94 6 6 6 | 897 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
899 | 2 2 6 2 2 6 10 10 10 34 34 34 | 898 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
900 | 2 2 6 2 2 6 2 2 6 2 2 6 | 899 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
901 | 74 74 74 58 58 58 22 22 22 6 6 6 | 900 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
902 | 0 0 0 0 0 0 0 0 0 0 0 0 | 901 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
903 | 0 0 0 0 0 0 0 0 0 0 0 0 | 902 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
904 | 0 0 0 0 0 0 0 0 0 0 0 0 | 903 | 0 0 0 |
905 | 0 0 0 0 0 0 0 0 0 0 0 0 | 904 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
906 | 0 0 0 0 0 0 0 0 0 0 0 0 | 905 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
907 | 0 0 0 0 0 0 0 0 0 0 0 0 | 906 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
908 | 0 0 0 0 0 0 0 0 0 0 0 0 | 907 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
909 | 0 0 0 10 10 10 26 26 26 66 66 66 | 908 | 0 0 0 0 0 0 0 0 0 1 1 0 230 229 82 230 229 82 |
910 | 82 82 82 2 2 6 38 38 38 6 6 6 | 909 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
911 | 14 14 14 210 210 210 253 253 253 253 253 253 | 910 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
912 | 253 253 253 253 253 253 253 253 253 253 253 253 | 911 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 161 156 96 |
913 | 253 253 253 253 253 253 246 246 246 242 242 242 | 912 | 161 156 96 230 229 82 118 116 76 11 14 14 14 17 17 18 22 22 |
914 | 253 253 253 253 253 253 253 253 253 253 253 253 | 913 | 27 30 29 40 43 41 60 60 56 84 83 72 105 104 92 110 109 94 |
915 | 253 253 253 253 253 253 253 253 253 253 253 253 | 914 | 110 109 94 110 109 94 99 98 80 90 89 73 68 70 65 47 48 46 |
916 | 253 253 253 253 253 253 253 253 253 253 253 253 | 915 | 32 34 33 23 25 24 20 23 23 17 21 21 15 19 19 14 17 17 |
917 | 253 253 253 253 253 253 253 253 253 253 253 253 | 916 | 15 19 19 15 18 18 14 18 18 13 17 17 13 16 16 12 15 15 |
918 | 253 253 253 253 253 253 144 144 144 2 2 6 | 917 | 11 14 14 10 12 12 9 11 11 8 10 10 7 9 9 4 5 5 |
919 | 2 2 6 2 2 6 2 2 6 46 46 46 | 918 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
920 | 2 2 6 2 2 6 2 2 6 2 2 6 | 919 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
921 | 42 42 42 74 74 74 30 30 30 10 10 10 | 920 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
922 | 0 0 0 0 0 0 0 0 0 0 0 0 | 921 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
923 | 0 0 0 0 0 0 0 0 0 0 0 0 | 922 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
924 | 0 0 0 0 0 0 0 0 0 0 0 0 | 923 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
925 | 0 0 0 0 0 0 0 0 0 0 0 0 | 924 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
926 | 0 0 0 0 0 0 0 0 0 0 0 0 | 925 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
927 | 0 0 0 0 0 0 0 0 0 0 0 0 | 926 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
928 | 0 0 0 0 0 0 0 0 0 0 0 0 | 927 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
929 | 6 6 6 14 14 14 42 42 42 90 90 90 | 928 | 0 0 0 |
930 | 26 26 26 6 6 6 42 42 42 2 2 6 | 929 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
931 | 74 74 74 250 250 250 253 253 253 253 253 253 | 930 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
932 | 253 253 253 253 253 253 253 253 253 253 253 253 | 931 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
933 | 253 253 253 253 253 253 242 242 242 242 242 242 | 932 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
934 | 253 253 253 253 253 253 253 253 253 253 253 253 | 933 | 0 0 0 0 0 0 0 0 0 16 17 12 230 229 82 230 229 82 |
935 | 253 253 253 253 253 253 253 253 253 253 253 253 | 934 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
936 | 253 253 253 253 253 253 253 253 253 253 253 253 | 935 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
937 | 253 253 253 253 253 253 253 253 253 253 253 253 | 936 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
938 | 253 253 253 253 253 253 182 182 182 2 2 6 | 937 | 230 229 82 161 156 96 118 116 76 11 13 13 13 16 16 15 19 19 |
939 | 2 2 6 2 2 6 2 2 6 46 46 46 | 938 | 20 24 24 30 32 31 40 43 41 51 52 50 63 64 60 72 73 67 |
940 | 2 2 6 2 2 6 2 2 6 2 2 6 | 939 | 65 66 61 65 66 61 65 66 61 55 57 54 46 47 45 33 37 35 |
941 | 10 10 10 86 86 86 38 38 38 10 10 10 | 940 | 27 29 28 20 24 24 17 21 21 16 20 20 16 20 20 15 19 19 |
942 | 0 0 0 0 0 0 0 0 0 0 0 0 | 941 | 15 19 19 15 19 19 14 18 18 14 17 17 13 16 16 12 15 15 |
943 | 0 0 0 0 0 0 0 0 0 0 0 0 | 942 | 11 14 14 10 13 13 9 12 12 8 10 10 7 9 9 6 7 7 |
944 | 0 0 0 0 0 0 0 0 0 0 0 0 | 943 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
945 | 0 0 0 0 0 0 0 0 0 0 0 0 | 944 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
946 | 0 0 0 0 0 0 0 0 0 0 0 0 | 945 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
947 | 0 0 0 0 0 0 0 0 0 0 0 0 | 946 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
948 | 0 0 0 0 0 0 0 0 0 0 0 0 | 947 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
949 | 10 10 10 26 26 26 66 66 66 82 82 82 | 948 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
950 | 2 2 6 22 22 22 18 18 18 2 2 6 | 949 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
951 | 149 149 149 253 253 253 253 253 253 253 253 253 | 950 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
952 | 253 253 253 253 253 253 253 253 253 253 253 253 | 951 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
953 | 253 253 253 253 253 253 234 234 234 242 242 242 | 952 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
954 | 253 253 253 253 253 253 253 253 253 253 253 253 | 953 | 0 0 0 |
955 | 253 253 253 253 253 253 253 253 253 253 253 253 | 954 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
956 | 253 253 253 253 253 253 253 253 253 253 253 253 | 955 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
957 | 253 253 253 253 253 253 253 253 253 253 253 253 | 956 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
958 | 253 253 253 253 253 253 206 206 206 2 2 6 | 957 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
959 | 2 2 6 2 2 6 2 2 6 38 38 38 | 958 | 0 0 0 0 0 0 0 0 0 53 55 47 230 229 82 230 229 82 |
960 | 2 2 6 2 2 6 2 2 6 2 2 6 | 959 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
961 | 6 6 6 86 86 86 46 46 46 14 14 14 | 960 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
962 | 0 0 0 0 0 0 0 0 0 0 0 0 | 961 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
963 | 0 0 0 0 0 0 0 0 0 0 0 0 | 962 | 161 156 96 118 116 76 53 55 47 10 13 13 12 15 15 14 17 17 |
964 | 0 0 0 0 0 0 0 0 0 0 0 0 | 963 | 17 20 20 20 24 24 27 29 28 32 34 33 37 39 37 40 43 41 |
965 | 0 0 0 0 0 0 0 0 0 0 0 0 | 964 | 43 45 43 41 42 42 35 37 36 30 32 31 28 31 30 23 27 26 |
966 | 0 0 0 0 0 0 0 0 0 0 0 0 | 965 | 20 23 23 17 21 21 16 20 20 16 20 20 16 20 20 16 19 19 |
967 | 0 0 0 0 0 0 0 0 0 0 0 0 | 966 | 15 19 19 15 19 19 14 18 18 14 17 17 13 16 16 12 15 15 |
968 | 0 0 0 0 0 0 0 0 0 6 6 6 | 967 | 11 14 14 10 13 13 9 12 12 9 11 11 8 10 10 10 12 12 |
969 | 18 18 18 46 46 46 86 86 86 18 18 18 | 968 | 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
970 | 2 2 6 34 34 34 10 10 10 6 6 6 | 969 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
971 | 210 210 210 253 253 253 253 253 253 253 253 253 | 970 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
972 | 253 253 253 253 253 253 253 253 253 253 253 253 | 971 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
973 | 253 253 253 253 253 253 234 234 234 242 242 242 | 972 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
974 | 253 253 253 253 253 253 253 253 253 253 253 253 | 973 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
975 | 253 253 253 253 253 253 253 253 253 253 253 253 | 974 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
976 | 253 253 253 253 253 253 253 253 253 253 253 253 | 975 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
977 | 253 253 253 253 253 253 253 253 253 253 253 253 | 976 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
978 | 253 253 253 253 253 253 221 221 221 6 6 6 | 977 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
979 | 2 2 6 2 2 6 6 6 6 30 30 30 | 978 | 0 0 0 |
980 | 2 2 6 2 2 6 2 2 6 2 2 6 | 979 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
981 | 2 2 6 82 82 82 54 54 54 18 18 18 | 980 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
982 | 6 6 6 0 0 0 0 0 0 0 0 0 | 981 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
983 | 0 0 0 0 0 0 0 0 0 0 0 0 | 982 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
984 | 0 0 0 0 0 0 0 0 0 0 0 0 | 983 | 0 0 0 0 0 0 0 0 0 82 81 62 230 229 82 230 229 82 |
985 | 0 0 0 0 0 0 0 0 0 0 0 0 | 984 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
986 | 0 0 0 0 0 0 0 0 0 0 0 0 | 985 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
987 | 0 0 0 0 0 0 0 0 0 0 0 0 | 986 | 230 229 82 230 229 82 230 229 82 230 229 82 161 156 96 161 156 96 |
988 | 0 0 0 0 0 0 0 0 0 10 10 10 | 987 | 118 116 76 82 81 62 13 14 12 10 13 13 12 15 15 13 17 17 |
989 | 26 26 26 66 66 66 62 62 62 2 2 6 | 988 | 15 19 19 16 20 20 20 23 23 20 24 24 23 27 26 26 28 27 |
990 | 2 2 6 38 38 38 10 10 10 26 26 26 | 989 | 26 28 27 26 28 27 23 27 26 18 22 22 20 23 23 17 21 21 |
991 | 238 238 238 253 253 253 253 253 253 253 253 253 | 990 | 17 21 21 16 20 20 16 20 20 16 20 20 16 20 20 16 19 19 |
992 | 253 253 253 253 253 253 253 253 253 253 253 253 | 991 | 15 19 19 15 19 19 15 18 18 14 17 17 13 17 17 13 16 16 |
993 | 253 253 253 253 253 253 231 231 231 238 238 238 | 992 | 12 15 15 12 14 14 12 14 14 12 14 14 12 14 14 23 24 24 |
994 | 253 253 253 253 253 253 253 253 253 253 253 253 | 993 | 6 8 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
995 | 253 253 253 253 253 253 253 253 253 253 253 253 | 994 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
996 | 253 253 253 253 253 253 253 253 253 253 253 253 | 995 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
997 | 253 253 253 253 253 253 253 253 253 253 253 253 | 996 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
998 | 253 253 253 253 253 253 231 231 231 6 6 6 | 997 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
999 | 2 2 6 2 2 6 10 10 10 30 30 30 | 998 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1000 | 2 2 6 2 2 6 2 2 6 2 2 6 | 999 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1001 | 2 2 6 66 66 66 58 58 58 22 22 22 | 1000 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1002 | 6 6 6 0 0 0 0 0 0 0 0 0 | 1001 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1003 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1002 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1004 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1003 | 0 0 0 |
1005 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1004 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1006 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1005 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1007 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1006 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1008 | 0 0 0 0 0 0 0 0 0 10 10 10 | 1007 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1009 | 38 38 38 78 78 78 6 6 6 2 2 6 | 1008 | 0 0 0 0 0 0 0 0 0 118 116 76 230 229 82 230 229 82 |
1010 | 2 2 6 46 46 46 14 14 14 42 42 42 | 1009 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
1011 | 246 246 246 253 253 253 253 253 253 253 253 253 | 1010 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
1012 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1011 | 230 229 82 230 229 82 230 229 82 161 156 96 161 156 96 118 116 76 |
1013 | 253 253 253 253 253 253 231 231 231 242 242 242 | 1012 | 71 71 57 13 14 12 9 12 12 10 13 13 12 15 15 13 17 17 |
1014 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1013 | 15 18 18 15 19 19 16 20 20 17 21 21 17 21 21 18 22 22 |
1015 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1014 | 18 22 22 18 22 22 17 21 21 16 19 19 15 18 18 14 18 18 |
1016 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1015 | 16 19 19 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 |
1017 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1016 | 15 19 19 15 19 19 15 18 18 14 18 18 16 20 20 23 25 24 |
1018 | 253 253 253 253 253 253 234 234 234 10 10 10 | 1017 | 17 21 21 25 27 26 47 48 46 47 48 46 51 52 50 72 73 67 |
1019 | 2 2 6 2 2 6 22 22 22 14 14 14 | 1018 | 33 36 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1020 | 2 2 6 2 2 6 2 2 6 2 2 6 | 1019 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1021 | 2 2 6 66 66 66 62 62 62 22 22 22 | 1020 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1022 | 6 6 6 0 0 0 0 0 0 0 0 0 | 1021 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1023 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1022 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1024 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1023 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1025 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1024 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1026 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1025 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1027 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1026 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1028 | 0 0 0 0 0 0 6 6 6 18 18 18 | 1027 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1029 | 50 50 50 74 74 74 2 2 6 2 2 6 | 1028 | 0 0 0 |
1030 | 14 14 14 70 70 70 34 34 34 62 62 62 | 1029 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1031 | 250 250 250 253 253 253 253 253 253 253 253 253 | 1030 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1032 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1031 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1033 | 253 253 253 253 253 253 231 231 231 246 246 246 | 1032 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1034 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1033 | 0 0 0 0 0 0 0 0 0 118 116 76 230 229 82 230 229 82 |
1035 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1034 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
1036 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1035 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
1037 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1036 | 230 229 82 230 229 82 161 156 96 118 116 76 118 116 76 46 47 43 |
1038 | 253 253 253 253 253 253 234 234 234 14 14 14 | 1037 | 9 11 11 9 11 11 10 12 12 11 13 13 12 15 15 14 17 17 |
1039 | 2 2 6 2 2 6 30 30 30 2 2 6 | 1038 | 15 18 18 15 19 19 16 20 20 16 20 20 16 20 20 16 20 20 |
1040 | 2 2 6 2 2 6 2 2 6 2 2 6 | 1039 | 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 |
1041 | 2 2 6 66 66 66 62 62 62 22 22 22 | 1040 | 15 19 19 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 |
1042 | 6 6 6 0 0 0 0 0 0 0 0 0 | 1041 | 15 19 19 16 20 20 20 24 24 55 56 53 32 34 33 84 83 72 |
1043 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1042 | 90 89 73 110 109 94 110 109 94 105 104 92 110 109 94 110 109 94 |
1044 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1043 | 72 73 67 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1045 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1044 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1046 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1045 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1047 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1046 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1048 | 0 0 0 0 0 0 6 6 6 18 18 18 | 1047 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1049 | 54 54 54 62 62 62 2 2 6 2 2 6 | 1048 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1050 | 2 2 6 30 30 30 46 46 46 70 70 70 | 1049 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1051 | 250 250 250 253 253 253 253 253 253 253 253 253 | 1050 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1052 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1051 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1053 | 253 253 253 253 253 253 231 231 231 246 246 246 | 1052 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1054 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1053 | 0 0 0 |
1055 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1054 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1056 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1055 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1057 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1056 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1058 | 253 253 253 253 253 253 226 226 226 10 10 10 | 1057 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1059 | 2 2 6 6 6 6 30 30 30 2 2 6 | 1058 | 0 0 0 0 0 0 0 0 0 96 95 69 230 229 82 230 229 82 |
1060 | 2 2 6 2 2 6 2 2 6 2 2 6 | 1059 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
1061 | 2 2 6 66 66 66 58 58 58 22 22 22 | 1060 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
1062 | 6 6 6 0 0 0 0 0 0 0 0 0 | 1061 | 230 229 82 161 156 96 118 116 76 82 81 62 16 17 12 9 11 11 |
1063 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1062 | 9 11 11 9 12 12 10 13 13 12 14 14 13 16 16 14 18 18 |
1064 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1063 | 15 19 19 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 |
1065 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1064 | 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 |
1066 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1065 | 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 |
1067 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1066 | 16 19 19 33 36 34 99 98 80 156 151 111 145 141 105 184 179 149 |
1068 | 0 0 0 0 0 0 6 6 6 22 22 22 | 1067 | 168 163 120 184 179 149 177 172 135 156 151 111 145 141 105 110 109 94 |
1069 | 58 58 58 62 62 62 2 2 6 2 2 6 | 1068 | 90 89 73 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 |
1070 | 2 2 6 2 2 6 30 30 30 78 78 78 | 1069 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1071 | 250 250 250 253 253 253 253 253 253 253 253 253 | 1070 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1072 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1071 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1073 | 253 253 253 253 253 253 231 231 231 246 246 246 | 1072 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1074 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1073 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1075 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1074 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1076 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1075 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1077 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1076 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1078 | 253 253 253 253 253 253 206 206 206 2 2 6 | 1077 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1079 | 22 22 22 34 34 34 18 14 6 22 22 22 | 1078 | 0 0 0 |
1080 | 26 26 26 18 18 18 6 6 6 2 2 6 | 1079 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1081 | 2 2 6 82 82 82 54 54 54 18 18 18 | 1080 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1082 | 6 6 6 0 0 0 0 0 0 0 0 0 | 1081 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1083 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1082 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1084 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1083 | 0 0 0 0 0 0 0 0 0 71 71 57 230 229 82 230 229 82 |
1085 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1084 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 |
1086 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1085 | 230 229 82 161 156 96 230 229 82 230 229 82 230 229 82 161 156 96 |
1087 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1086 | 118 116 76 82 81 62 30 31 28 9 11 11 9 11 11 9 11 11 |
1088 | 0 0 0 0 0 0 6 6 6 26 26 26 | 1087 | 10 12 12 10 13 13 11 14 14 13 16 16 14 17 17 15 18 18 |
1089 | 62 62 62 106 106 106 74 54 14 185 133 11 | 1088 | 15 19 19 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 |
1090 | 210 162 10 121 92 8 6 6 6 62 62 62 | 1089 | 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 |
1091 | 238 238 238 253 253 253 253 253 253 253 253 253 | 1090 | 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 |
1092 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1091 | 18 22 22 58 59 55 137 133 100 197 193 154 214 212 158 210 208 158 |
1093 | 253 253 253 253 253 253 231 231 231 246 246 246 | 1092 | 197 193 154 184 179 149 184 179 149 137 133 100 110 109 94 99 98 80 |
1094 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1093 | 84 83 72 10 10 9 0 0 0 0 0 0 0 0 0 0 0 0 |
1095 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1094 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1096 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1095 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1097 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1096 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1098 | 253 253 253 253 253 253 158 158 158 18 18 18 | 1097 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1099 | 14 14 14 2 2 6 2 2 6 2 2 6 | 1098 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1100 | 6 6 6 18 18 18 66 66 66 38 38 38 | 1099 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1101 | 6 6 6 94 94 94 50 50 50 18 18 18 | 1100 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1102 | 6 6 6 0 0 0 0 0 0 0 0 0 | 1101 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1103 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1102 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1104 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1103 | 0 0 0 |
1105 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1104 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1106 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1105 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1107 | 0 0 0 0 0 0 0 0 0 6 6 6 | 1106 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1108 | 10 10 10 10 10 10 18 18 18 38 38 38 | 1107 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1109 | 78 78 78 142 134 106 216 158 10 242 186 14 | 1108 | 0 0 0 0 0 0 0 0 0 16 17 12 230 229 82 230 229 82 |
1110 | 246 190 14 246 190 14 156 118 10 10 10 10 | 1109 | 230 229 82 230 229 82 230 229 82 230 229 82 230 229 82 161 156 96 |
1111 | 90 90 90 238 238 238 253 253 253 253 253 253 | 1110 | 161 156 96 161 156 96 161 156 96 161 156 96 118 116 76 71 71 57 |
1112 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1111 | 21 22 20 12 14 14 11 13 13 10 12 12 10 12 12 10 13 13 |
1113 | 253 253 253 253 253 253 231 231 231 250 250 250 | 1112 | 11 13 13 12 15 15 13 16 16 14 17 17 14 18 18 15 19 19 |
1114 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1113 | 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 |
1115 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1114 | 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 |
1116 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1115 | 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 17 21 21 |
1117 | 253 253 253 253 253 253 253 253 253 246 230 190 | 1116 | 23 27 26 84 83 72 184 179 149 251 251 187 210 208 158 184 179 149 |
1118 | 238 204 91 238 204 91 181 142 44 37 26 9 | 1117 | 184 179 149 156 151 111 110 109 94 84 83 72 63 64 60 51 52 50 |
1119 | 2 2 6 2 2 6 2 2 6 2 2 6 | 1118 | 18 22 22 6 8 8 0 0 0 0 0 0 0 0 0 0 0 0 |
1120 | 2 2 6 2 2 6 38 38 38 46 46 46 | 1119 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1121 | 26 26 26 106 106 106 54 54 54 18 18 18 | 1120 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1122 | 6 6 6 0 0 0 0 0 0 0 0 0 | 1121 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1123 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1122 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1124 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1123 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1125 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1124 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1126 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1125 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1127 | 0 0 0 6 6 6 14 14 14 22 22 22 | 1126 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1128 | 30 30 30 38 38 38 50 50 50 70 70 70 | 1127 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1129 | 106 106 106 190 142 34 226 170 11 242 186 14 | 1128 | 0 0 0 |
1130 | 246 190 14 246 190 14 246 190 14 154 114 10 | 1129 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1131 | 6 6 6 74 74 74 226 226 226 253 253 253 | 1130 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1132 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1131 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1133 | 253 253 253 253 253 253 231 231 231 250 250 250 | 1132 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1134 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1133 | 0 0 0 0 0 0 0 0 0 0 0 0 118 116 76 230 229 82 |
1135 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1134 | 230 229 82 230 229 82 230 229 82 230 229 82 161 156 96 161 156 96 |
1136 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1135 | 161 156 96 161 156 96 118 116 76 53 55 47 20 23 22 16 19 19 |
1137 | 253 253 253 253 253 253 253 253 253 228 184 62 | 1136 | 13 16 16 12 15 15 12 14 14 11 14 14 11 14 14 11 14 14 |
1138 | 241 196 14 241 208 19 232 195 16 38 30 10 | 1137 | 12 15 15 13 16 16 14 17 17 15 19 19 16 20 20 17 21 21 |
1139 | 2 2 6 2 2 6 2 2 6 2 2 6 | 1138 | 23 27 26 18 22 22 20 24 24 23 27 26 30 32 31 17 21 21 |
1140 | 2 2 6 6 6 6 30 30 30 26 26 26 | 1139 | 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 |
1141 | 203 166 17 154 142 90 66 66 66 26 26 26 | 1140 | 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 |
1142 | 6 6 6 0 0 0 0 0 0 0 0 0 | 1141 | 23 27 26 33 37 35 137 133 100 156 151 111 158 153 112 105 104 92 |
1143 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1142 | 105 104 92 68 70 65 39 40 39 18 22 22 12 14 14 12 15 15 |
1144 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1143 | 9 11 11 4 5 5 0 0 0 0 0 0 0 0 0 0 0 0 |
1145 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1144 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1146 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1145 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1147 | 6 6 6 18 18 18 38 38 38 58 58 58 | 1146 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1148 | 78 78 78 86 86 86 101 101 101 123 123 123 | 1147 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1149 | 175 146 61 210 150 10 234 174 13 246 186 14 | 1148 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1150 | 246 190 14 246 190 14 246 190 14 238 190 10 | 1149 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1151 | 102 78 10 2 2 6 46 46 46 198 198 198 | 1150 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1152 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1151 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1153 | 253 253 253 253 253 253 234 234 234 242 242 242 | 1152 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1154 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1153 | 0 0 0 |
1155 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1154 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1156 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1155 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1157 | 253 253 253 253 253 253 253 253 253 224 178 62 | 1156 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1158 | 242 186 14 241 196 14 210 166 10 22 18 6 | 1157 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1159 | 2 2 6 2 2 6 2 2 6 2 2 6 | 1158 | 0 0 0 0 0 0 0 0 0 0 0 0 16 17 12 230 229 82 |
1160 | 2 2 6 2 2 6 6 6 6 121 92 8 | 1159 | 230 229 82 230 229 82 230 229 82 161 156 96 118 116 76 118 116 76 |
1161 | 238 202 15 232 195 16 82 82 82 34 34 34 | 1160 | 118 116 76 66 65 55 43 45 43 32 34 33 25 27 26 20 23 22 |
1162 | 10 10 10 0 0 0 0 0 0 0 0 0 | 1161 | 17 20 20 15 18 18 14 17 17 15 18 18 13 16 16 14 17 17 |
1163 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1162 | 14 18 18 16 20 20 32 34 33 55 57 54 58 59 55 72 73 67 |
1164 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1163 | 105 104 92 55 57 54 65 66 61 63 64 60 40 43 41 33 37 35 |
1165 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1164 | 41 42 42 20 24 24 16 20 20 16 20 20 16 20 20 16 20 20 |
1166 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1165 | 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 |
1167 | 14 14 14 38 38 38 70 70 70 154 122 46 | 1166 | 17 21 21 26 28 27 30 32 31 35 37 36 68 70 65 39 40 39 |
1168 | 190 142 34 200 144 11 197 138 11 197 138 11 | 1167 | 23 27 26 15 18 18 13 16 16 11 14 14 9 12 12 8 10 10 |
1169 | 213 154 11 226 170 11 242 186 14 246 190 14 | 1168 | 7 9 9 6 7 7 0 0 0 0 0 0 0 0 0 0 0 0 |
1170 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1169 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1171 | 225 175 15 46 32 6 2 2 6 22 22 22 | 1170 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1172 | 158 158 158 250 250 250 253 253 253 253 253 253 | 1171 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1173 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1172 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1174 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1173 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1175 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1174 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1176 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1175 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1177 | 253 253 253 250 250 250 242 242 242 224 178 62 | 1176 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1178 | 239 182 13 236 186 11 213 154 11 46 32 6 | 1177 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1179 | 2 2 6 2 2 6 2 2 6 2 2 6 | 1178 | 0 0 0 |
1180 | 2 2 6 2 2 6 61 42 6 225 175 15 | 1179 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1181 | 238 190 10 236 186 11 112 100 78 42 42 42 | 1180 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1182 | 14 14 14 0 0 0 0 0 0 0 0 0 | 1181 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1183 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1182 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1184 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1183 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 36 38 35 |
1185 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1184 | 230 229 82 230 229 82 230 229 82 96 95 69 30 31 28 49 51 48 |
1186 | 0 0 0 0 0 0 0 0 0 6 6 6 | 1185 | 90 89 73 68 70 65 55 57 54 47 48 46 47 48 46 43 45 43 |
1187 | 22 22 22 54 54 54 154 122 46 213 154 11 | 1186 | 32 34 33 43 45 43 43 45 43 23 27 26 25 27 26 40 43 41 |
1188 | 226 170 11 230 174 11 226 170 11 226 170 11 | 1187 | 40 43 41 90 89 73 110 109 94 145 141 105 156 151 111 156 151 111 |
1189 | 236 178 12 242 186 14 246 190 14 246 190 14 | 1188 | 184 179 149 184 179 149 177 172 135 184 179 149 137 133 100 84 83 72 |
1190 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1189 | 105 104 92 63 64 60 49 51 48 47 48 46 28 31 30 18 22 22 |
1191 | 241 196 14 184 144 12 10 10 10 2 2 6 | 1190 | 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 |
1192 | 6 6 6 116 116 116 242 242 242 253 253 253 | 1191 | 16 20 20 15 19 19 15 19 19 15 19 19 18 22 22 15 19 19 |
1193 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1192 | 13 16 16 12 15 15 11 14 14 10 13 13 9 12 12 9 11 11 |
1194 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1193 | 8 10 10 6 8 8 0 0 0 0 0 0 0 0 0 0 0 0 |
1195 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1194 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1196 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1195 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1197 | 253 253 253 231 231 231 198 198 198 214 170 54 | 1196 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1198 | 236 178 12 236 178 12 210 150 10 137 92 6 | 1197 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1199 | 18 14 6 2 2 6 2 2 6 2 2 6 | 1198 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1200 | 6 6 6 70 47 6 200 144 11 236 178 12 | 1199 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1201 | 239 182 13 239 182 13 124 112 88 58 58 58 | 1200 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1202 | 22 22 22 6 6 6 0 0 0 0 0 0 | 1201 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1203 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1202 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1204 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1203 | 0 0 0 |
1205 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1204 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1206 | 0 0 0 0 0 0 0 0 0 10 10 10 | 1205 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1207 | 30 30 30 70 70 70 180 133 36 226 170 11 | 1206 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1208 | 239 182 13 242 186 14 242 186 14 246 186 14 | 1207 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1209 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1208 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1210 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1209 | 30 31 28 230 229 82 71 71 57 2 2 1 0 0 0 58 59 55 |
1211 | 246 190 14 232 195 16 98 70 6 2 2 6 | 1210 | 105 104 92 84 83 72 65 66 61 84 83 72 110 109 94 110 109 94 |
1212 | 2 2 6 2 2 6 66 66 66 221 221 221 | 1211 | 145 141 105 105 104 92 110 109 94 110 109 94 84 83 72 110 109 94 |
1213 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1212 | 158 153 112 197 193 154 197 193 154 239 239 170 251 251 187 251 251 187 |
1214 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1213 | 251 251 187 251 251 187 251 251 187 251 251 187 210 208 158 197 193 154 |
1215 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1214 | 197 193 154 184 179 149 145 141 105 137 133 100 105 104 92 47 48 46 |
1216 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1215 | 20 23 23 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 |
1217 | 253 253 253 206 206 206 198 198 198 214 166 58 | 1216 | 16 20 20 16 19 19 15 19 19 15 19 19 14 18 18 14 17 17 |
1218 | 230 174 11 230 174 11 216 158 10 192 133 9 | 1217 | 13 17 17 13 16 16 12 14 14 12 14 14 13 13 13 13 13 13 |
1219 | 163 110 8 116 81 8 102 78 10 116 81 8 | 1218 | 13 13 13 12 12 12 10 10 9 6 7 7 2 2 2 0 0 0 |
1220 | 167 114 7 197 138 11 226 170 11 239 182 13 | 1219 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1221 | 242 186 14 242 186 14 162 146 94 78 78 78 | 1220 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1222 | 34 34 34 14 14 14 6 6 6 0 0 0 | 1221 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1223 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1222 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1224 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1223 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1225 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1224 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1226 | 0 0 0 0 0 0 0 0 0 6 6 6 | 1225 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1227 | 30 30 30 78 78 78 190 142 34 226 170 11 | 1226 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1228 | 239 182 13 246 190 14 246 190 14 246 190 14 | 1227 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1229 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1228 | 0 0 0 |
1230 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1229 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1231 | 246 190 14 241 196 14 203 166 17 22 18 6 | 1230 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1232 | 2 2 6 2 2 6 2 2 6 38 38 38 | 1231 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1233 | 218 218 218 253 253 253 253 253 253 253 253 253 | 1232 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1234 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1233 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1235 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1234 | 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 65 66 61 |
1236 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1235 | 105 104 92 84 83 72 84 83 72 110 109 94 184 179 149 210 208 158 |
1237 | 250 250 250 206 206 206 198 198 198 202 162 69 | 1236 | 210 208 158 210 208 158 214 212 158 197 193 154 214 212 158 210 208 158 |
1238 | 226 170 11 236 178 12 224 166 10 210 150 10 | 1237 | 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 |
1239 | 200 144 11 197 138 11 192 133 9 197 138 11 | 1238 | 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 |
1240 | 210 150 10 226 170 11 242 186 14 246 190 14 | 1239 | 251 251 187 251 251 187 239 239 170 251 251 187 184 179 149 84 83 72 |
1241 | 246 190 14 246 186 14 225 175 15 124 112 88 | 1240 | 26 28 27 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 |
1242 | 62 62 62 30 30 30 14 14 14 6 6 6 | 1241 | 16 20 20 16 20 20 15 19 19 15 19 19 15 18 18 14 18 18 |
1243 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1242 | 13 17 17 13 16 16 15 15 15 14 14 13 14 14 13 14 14 13 |
1244 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1243 | 13 13 13 13 13 13 12 12 12 12 12 12 12 12 12 3 4 4 |
1245 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1244 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1246 | 0 0 0 0 0 0 0 0 0 10 10 10 | 1245 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1247 | 30 30 30 78 78 78 174 135 50 224 166 10 | 1246 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1248 | 239 182 13 246 190 14 246 190 14 246 190 14 | 1247 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1249 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1248 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1250 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1249 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1251 | 246 190 14 246 190 14 241 196 14 139 102 15 | 1250 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1252 | 2 2 6 2 2 6 2 2 6 2 2 6 | 1251 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1253 | 78 78 78 250 250 250 253 253 253 253 253 253 | 1252 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1254 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1253 | 0 0 0 |
1255 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1254 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1256 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1255 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1257 | 250 250 250 214 214 214 198 198 198 190 150 46 | 1256 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1258 | 219 162 10 236 178 12 234 174 13 224 166 10 | 1257 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1259 | 216 158 10 213 154 11 213 154 11 216 158 10 | 1258 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1260 | 226 170 11 239 182 13 246 190 14 246 190 14 | 1259 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 72 73 67 |
1261 | 246 190 14 246 190 14 242 186 14 206 162 42 | 1260 | 105 104 92 99 98 80 84 83 72 99 98 80 177 172 135 197 193 154 |
1262 | 101 101 101 58 58 58 30 30 30 14 14 14 | 1261 | 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 |
1263 | 6 6 6 0 0 0 0 0 0 0 0 0 | 1262 | 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 |
1264 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1263 | 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 |
1265 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1264 | 251 251 187 251 251 187 251 251 187 214 212 158 197 193 154 99 98 80 |
1266 | 0 0 0 0 0 0 0 0 0 10 10 10 | 1265 | 23 27 26 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 |
1267 | 30 30 30 74 74 74 174 135 50 216 158 10 | 1266 | 16 20 20 16 20 20 15 19 19 15 19 19 15 18 18 14 18 18 |
1268 | 236 178 12 246 190 14 246 190 14 246 190 14 | 1267 | 14 17 17 16 16 16 16 16 16 16 16 16 15 15 15 14 14 13 |
1269 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1268 | 14 14 13 13 13 13 13 13 13 12 12 12 12 12 12 12 12 12 |
1270 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1269 | 3 3 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1271 | 246 190 14 246 190 14 241 196 14 226 184 13 | 1270 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1272 | 61 42 6 2 2 6 2 2 6 2 2 6 | 1271 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1273 | 22 22 22 238 238 238 253 253 253 253 253 253 | 1272 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1274 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1273 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1275 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1274 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1276 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1275 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1277 | 253 253 253 226 226 226 187 187 187 180 133 36 | 1276 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1278 | 216 158 10 236 178 12 239 182 13 236 178 12 | 1277 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1279 | 230 174 11 226 170 11 226 170 11 230 174 11 | 1278 | 0 0 0 |
1280 | 236 178 12 242 186 14 246 190 14 246 190 14 | 1279 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1281 | 246 190 14 246 190 14 246 186 14 239 182 13 | 1280 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1282 | 206 162 42 106 106 106 66 66 66 34 34 34 | 1281 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1283 | 14 14 14 6 6 6 0 0 0 0 0 0 | 1282 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1284 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1283 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1285 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1284 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 84 83 72 |
1286 | 0 0 0 0 0 0 0 0 0 6 6 6 | 1285 | 110 109 94 99 98 80 72 73 67 63 64 60 99 98 80 177 172 135 |
1287 | 26 26 26 70 70 70 163 133 67 213 154 11 | 1286 | 184 179 149 210 208 158 251 251 187 251 251 187 251 251 187 251 251 187 |
1288 | 236 178 12 246 190 14 246 190 14 246 190 14 | 1287 | 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 |
1289 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1288 | 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 |
1290 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1289 | 251 251 187 210 208 158 184 179 149 177 172 135 110 109 94 33 37 35 |
1291 | 246 190 14 246 190 14 246 190 14 241 196 14 | 1290 | 17 21 21 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 |
1292 | 190 146 13 18 14 6 2 2 6 2 2 6 | 1291 | 16 20 20 16 20 20 15 19 19 15 19 19 15 19 19 14 18 18 |
1293 | 46 46 46 246 246 246 253 253 253 253 253 253 | 1292 | 15 18 18 18 19 18 18 19 18 17 17 17 16 16 16 15 15 15 |
1294 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1293 | 14 14 13 13 13 13 13 13 13 12 12 12 12 12 12 12 12 12 |
1295 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1294 | 10 10 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1296 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1295 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1297 | 253 253 253 221 221 221 86 86 86 156 107 11 | 1296 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1298 | 216 158 10 236 178 12 242 186 14 246 186 14 | 1297 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1299 | 242 186 14 239 182 13 239 182 13 242 186 14 | 1298 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1300 | 242 186 14 246 186 14 246 190 14 246 190 14 | 1299 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1301 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1300 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1302 | 242 186 14 225 175 15 142 122 72 66 66 66 | 1301 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1303 | 30 30 30 10 10 10 0 0 0 0 0 0 | 1302 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1304 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1303 | 0 0 0 |
1305 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1304 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1306 | 0 0 0 0 0 0 0 0 0 6 6 6 | 1305 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1307 | 26 26 26 70 70 70 163 133 67 210 150 10 | 1306 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1308 | 236 178 12 246 190 14 246 190 14 246 190 14 | 1307 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1309 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1308 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1310 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1309 | 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 105 104 92 |
1311 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1310 | 108 107 93 99 98 80 72 73 67 63 64 60 51 52 50 87 86 72 |
1312 | 232 195 16 121 92 8 34 34 34 106 106 106 | 1311 | 105 104 92 110 109 94 108 107 93 156 151 111 184 179 149 184 179 149 |
1313 | 221 221 221 253 253 253 253 253 253 253 253 253 | 1312 | 197 193 154 197 193 154 197 193 154 184 179 149 184 179 149 177 172 135 |
1314 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1313 | 197 193 154 156 151 111 177 172 135 184 179 149 168 163 120 137 133 100 |
1315 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1314 | 145 141 105 110 109 94 99 98 80 47 48 46 55 57 54 15 19 19 |
1316 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1315 | 16 19 19 16 20 20 16 20 20 16 20 20 16 20 20 16 20 20 |
1317 | 242 242 242 82 82 82 18 14 6 163 110 8 | 1316 | 17 20 20 17 21 21 16 20 20 16 19 19 15 19 19 16 19 19 |
1318 | 216 158 10 236 178 12 242 186 14 246 190 14 | 1317 | 20 20 20 21 22 21 20 20 20 19 20 19 18 19 18 16 16 16 |
1319 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1318 | 15 15 15 14 14 13 13 13 13 13 13 13 12 12 12 12 12 12 |
1320 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1319 | 12 12 12 4 5 5 0 0 0 0 0 0 0 0 0 0 0 0 |
1321 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1320 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1322 | 246 190 14 246 190 14 242 186 14 163 133 67 | 1321 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1323 | 46 46 46 18 18 18 6 6 6 0 0 0 | 1322 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1324 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1323 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1325 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1324 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1326 | 0 0 0 0 0 0 0 0 0 10 10 10 | 1325 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1327 | 30 30 30 78 78 78 163 133 67 210 150 10 | 1326 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1328 | 236 178 12 246 186 14 246 190 14 246 190 14 | 1327 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1329 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1328 | 0 0 0 |
1330 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1329 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1331 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1330 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1332 | 241 196 14 215 174 15 190 178 144 253 253 253 | 1331 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1333 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1332 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1334 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1333 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1335 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1334 | 0 0 0 0 0 0 0 0 0 0 0 0 58 59 55 110 109 94 |
1336 | 253 253 253 253 253 253 253 253 253 218 218 218 | 1335 | 105 104 92 90 89 73 72 73 67 55 57 54 43 45 43 39 40 39 |
1337 | 58 58 58 2 2 6 22 18 6 167 114 7 | 1336 | 43 45 43 46 47 45 43 45 43 68 70 65 65 66 61 63 64 60 |
1338 | 216 158 10 236 178 12 246 186 14 246 190 14 | 1337 | 108 107 93 72 73 67 105 104 92 90 89 73 72 73 67 40 43 41 |
1339 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1338 | 72 73 67 68 70 65 68 70 65 58 59 55 63 64 60 49 51 48 |
1340 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1339 | 43 45 43 33 36 34 27 30 29 20 24 24 16 20 20 15 19 19 |
1341 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1340 | 15 19 19 15 19 19 15 19 19 16 19 19 16 20 20 16 20 20 |
1342 | 246 190 14 246 186 14 242 186 14 190 150 46 | 1341 | 17 21 21 20 24 24 20 23 22 17 21 21 17 20 20 20 20 20 |
1343 | 54 54 54 22 22 22 6 6 6 0 0 0 | 1342 | 21 22 21 21 22 21 21 22 21 21 22 21 20 20 20 18 19 18 |
1344 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1343 | 16 16 16 15 15 15 13 13 13 13 13 13 12 12 12 12 12 12 |
1345 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1344 | 12 12 12 10 10 9 0 0 0 0 0 0 0 0 0 0 0 0 |
1346 | 0 0 0 0 0 0 0 0 0 14 14 14 | 1345 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1347 | 38 38 38 86 86 86 180 133 36 213 154 11 | 1346 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1348 | 236 178 12 246 186 14 246 190 14 246 190 14 | 1347 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1349 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1348 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1350 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1349 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1351 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1350 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1352 | 246 190 14 232 195 16 190 146 13 214 214 214 | 1351 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1353 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1352 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1354 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1353 | 0 0 0 |
1355 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1354 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1356 | 253 253 253 250 250 250 170 170 170 26 26 26 | 1355 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1357 | 2 2 6 2 2 6 37 26 9 163 110 8 | 1356 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1358 | 219 162 10 239 182 13 246 186 14 246 190 14 | 1357 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1359 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1358 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1360 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1359 | 0 0 0 0 0 0 0 0 0 21 22 21 110 109 94 110 109 94 |
1361 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1360 | 105 104 92 84 83 72 68 70 65 51 52 50 41 42 42 33 37 35 |
1362 | 246 186 14 236 178 12 224 166 10 142 122 72 | 1361 | 28 31 30 23 27 26 20 23 23 18 22 22 17 20 20 25 27 26 |
1363 | 46 46 46 18 18 18 6 6 6 0 0 0 | 1362 | 26 28 27 27 30 29 25 27 26 20 23 23 23 27 26 30 32 31 |
1364 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1363 | 20 24 24 17 21 21 18 22 22 15 19 19 26 28 27 20 23 23 |
1365 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1364 | 14 18 18 15 19 19 15 18 18 15 19 19 15 19 19 15 19 19 |
1366 | 0 0 0 0 0 0 6 6 6 18 18 18 | 1365 | 15 19 19 15 19 19 15 19 19 15 19 19 15 19 19 16 19 19 |
1367 | 50 50 50 109 106 95 192 133 9 224 166 10 | 1366 | 16 20 20 22 24 23 24 26 24 22 24 23 20 23 22 22 24 23 |
1368 | 242 186 14 246 190 14 246 190 14 246 190 14 | 1367 | 24 26 24 24 26 24 23 24 24 22 24 23 21 22 21 19 20 19 |
1369 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1368 | 17 17 17 15 15 15 14 14 13 13 13 13 12 12 12 12 12 12 |
1370 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1369 | 12 12 12 12 12 12 2 2 2 0 0 0 0 0 0 0 0 0 |
1371 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1370 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1372 | 242 186 14 226 184 13 210 162 10 142 110 46 | 1371 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1373 | 226 226 226 253 253 253 253 253 253 253 253 253 | 1372 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1374 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1373 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1375 | 253 253 253 253 253 253 253 253 253 253 253 253 | 1374 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1376 | 198 198 198 66 66 66 2 2 6 2 2 6 | 1375 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1377 | 2 2 6 2 2 6 50 34 6 156 107 11 | 1376 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1378 | 219 162 10 239 182 13 246 186 14 246 190 14 | 1377 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1379 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1378 | 0 0 0 |
1380 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1379 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1381 | 246 190 14 246 190 14 246 190 14 242 186 14 | 1380 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1382 | 234 174 13 213 154 11 154 122 46 66 66 66 | 1381 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1383 | 30 30 30 10 10 10 0 0 0 0 0 0 | 1382 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1384 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1383 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1385 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1384 | 0 0 0 0 0 0 2 2 2 99 98 80 110 109 94 108 107 93 |
1386 | 0 0 0 0 0 0 6 6 6 22 22 22 | 1385 | 105 104 92 84 83 72 63 64 60 49 51 48 39 40 39 32 34 33 |
1387 | 58 58 58 154 121 60 206 145 10 234 174 13 | 1386 | 27 30 29 23 25 24 20 23 23 17 20 20 15 19 19 14 18 18 |
1388 | 242 186 14 246 186 14 246 190 14 246 190 14 | 1387 | 14 17 17 13 17 17 13 17 17 13 17 17 13 17 17 13 17 17 |
1389 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1388 | 14 17 17 14 17 17 14 17 17 14 17 17 14 17 17 14 17 17 |
1390 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1389 | 14 18 18 14 18 18 14 18 18 14 18 18 15 18 18 15 19 19 |
1391 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1390 | 15 19 19 15 19 19 15 19 19 15 19 19 15 19 19 15 19 19 |
1392 | 246 186 14 236 178 12 210 162 10 163 110 8 | 1391 | 15 19 19 17 21 21 27 29 28 26 28 27 25 27 26 25 27 26 |
1393 | 61 42 6 138 138 138 218 218 218 250 250 250 | 1392 | 27 29 28 27 29 28 26 28 27 24 26 24 21 22 21 20 20 20 |
1394 | 253 253 253 253 253 253 253 253 253 250 250 250 | 1393 | 18 19 18 16 16 16 14 14 13 13 13 13 12 12 12 12 12 12 |
1395 | 242 242 242 210 210 210 144 144 144 66 66 66 | 1394 | 12 12 12 12 12 12 4 5 5 0 0 0 0 0 0 0 0 0 |
1396 | 6 6 6 2 2 6 2 2 6 2 2 6 | 1395 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1397 | 2 2 6 2 2 6 61 42 6 163 110 8 | 1396 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1398 | 216 158 10 236 178 12 246 190 14 246 190 14 | 1397 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1399 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1398 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1400 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1399 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1401 | 246 190 14 239 182 13 230 174 11 216 158 10 | 1400 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1402 | 190 142 34 124 112 88 70 70 70 38 38 38 | 1401 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1403 | 18 18 18 6 6 6 0 0 0 0 0 0 | 1402 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1404 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1403 | 0 0 0 |
1405 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1404 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1406 | 0 0 0 0 0 0 6 6 6 22 22 22 | 1405 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1407 | 62 62 62 168 124 44 206 145 10 224 166 10 | 1406 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1408 | 236 178 12 239 182 13 242 186 14 242 186 14 | 1407 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1409 | 246 186 14 246 190 14 246 190 14 246 190 14 | 1408 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1410 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1409 | 0 0 0 0 0 0 51 52 50 110 109 94 110 109 94 105 104 92 |
1411 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1410 | 90 89 73 72 73 67 55 57 54 43 45 43 35 37 36 30 32 31 |
1412 | 246 190 14 236 178 12 216 158 10 175 118 6 | 1411 | 26 28 27 20 24 24 17 21 21 16 19 19 15 18 18 14 17 17 |
1413 | 80 54 7 2 2 6 6 6 6 30 30 30 | 1412 | 13 16 16 13 16 16 13 16 16 13 16 16 13 16 16 13 16 16 |
1414 | 54 54 54 62 62 62 50 50 50 38 38 38 | 1413 | 13 16 16 13 16 16 13 16 16 13 17 17 13 17 17 14 17 17 |
1415 | 14 14 14 2 2 6 2 2 6 2 2 6 | 1414 | 14 17 17 14 17 17 14 17 17 14 18 18 14 18 18 14 18 18 |
1416 | 2 2 6 2 2 6 2 2 6 2 2 6 | 1415 | 15 18 18 15 18 18 15 19 19 15 19 19 15 19 19 15 19 19 |
1417 | 2 2 6 6 6 6 80 54 7 167 114 7 | 1416 | 15 19 19 15 19 19 27 29 28 32 34 33 28 31 30 27 29 28 |
1418 | 213 154 11 236 178 12 246 190 14 246 190 14 | 1417 | 30 32 31 30 32 31 30 31 28 26 28 27 23 24 24 21 22 21 |
1419 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1418 | 19 20 19 16 16 16 14 14 13 13 13 13 12 12 12 12 12 12 |
1420 | 246 190 14 242 186 14 239 182 13 239 182 13 | 1419 | 12 12 12 12 12 12 6 7 7 0 0 0 0 0 0 0 0 0 |
1421 | 230 174 11 210 150 10 174 135 50 124 112 88 | 1420 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1422 | 82 82 82 54 54 54 34 34 34 18 18 18 | 1421 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1423 | 6 6 6 0 0 0 0 0 0 0 0 0 | 1422 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1424 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1423 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1425 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1424 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1426 | 0 0 0 0 0 0 6 6 6 18 18 18 | 1425 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1427 | 50 50 50 158 118 36 192 133 9 200 144 11 | 1426 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1428 | 216 158 10 219 162 10 224 166 10 226 170 11 | 1427 | 0 0 0 0 0 0 0 0 0 3 3 3 0 0 0 0 0 0 |
1429 | 230 174 11 236 178 12 239 182 13 239 182 13 | 1428 | 0 0 0 |
1430 | 242 186 14 246 186 14 246 190 14 246 190 14 | 1429 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1431 | 246 190 14 246 190 14 246 190 14 246 190 14 | 1430 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1432 | 246 186 14 230 174 11 210 150 10 163 110 8 | 1431 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1433 | 104 69 6 10 10 10 2 2 6 2 2 6 | 1432 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1434 | 2 2 6 2 2 6 2 2 6 2 2 6 | 1433 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1435 | 2 2 6 2 2 6 2 2 6 2 2 6 | 1434 | 0 0 0 10 10 9 108 107 93 110 109 94 108 107 93 99 98 80 |
1436 | 2 2 6 2 2 6 2 2 6 2 2 6 | 1435 | 84 83 72 63 64 60 49 51 48 40 43 41 33 36 34 27 30 29 |
1437 | 2 2 6 6 6 6 91 60 6 167 114 7 | 1436 | 23 27 26 18 22 22 17 20 20 15 18 18 14 17 17 13 16 16 |
1438 | 206 145 10 230 174 11 242 186 14 246 190 14 | 1437 | 13 16 16 13 16 16 12 15 15 12 15 15 12 15 15 12 15 15 |
1439 | 246 190 14 246 190 14 246 186 14 242 186 14 | 1438 | 13 16 16 13 16 16 13 16 16 13 16 16 13 16 16 13 16 16 |
1440 | 239 182 13 230 174 11 224 166 10 213 154 11 | 1439 | 13 17 17 13 17 17 14 17 17 14 17 17 14 17 17 14 18 18 |
1441 | 180 133 36 124 112 88 86 86 86 58 58 58 | 1440 | 14 18 18 14 18 18 15 18 18 15 18 18 15 19 19 15 19 19 |
1442 | 38 38 38 22 22 22 10 10 10 6 6 6 | 1441 | 15 19 19 15 19 19 17 21 21 33 36 34 32 34 33 31 33 31 |
1443 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1442 | 33 36 34 33 36 34 31 33 31 27 29 28 25 27 26 21 22 21 |
1444 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1443 | 19 20 19 17 17 17 15 15 15 13 13 13 12 12 12 12 12 12 |
1445 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1444 | 12 12 12 12 12 12 8 8 7 0 0 0 0 0 0 0 0 0 |
1446 | 0 0 0 0 0 0 0 0 0 14 14 14 | 1445 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1447 | 34 34 34 70 70 70 138 110 50 158 118 36 | 1446 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1448 | 167 114 7 180 123 7 192 133 9 197 138 11 | 1447 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1449 | 200 144 11 206 145 10 213 154 11 219 162 10 | 1448 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1450 | 224 166 10 230 174 11 239 182 13 242 186 14 | 1449 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1451 | 246 186 14 246 186 14 246 186 14 246 186 14 | 1450 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1452 | 239 182 13 216 158 10 185 133 11 152 99 6 | 1451 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1453 | 104 69 6 18 14 6 2 2 6 2 2 6 | 1452 | 0 0 0 0 0 0 63 64 60 137 133 100 43 45 43 0 0 0 |
1454 | 2 2 6 2 2 6 2 2 6 2 2 6 | 1453 | 0 0 0 |
1455 | 2 2 6 2 2 6 2 2 6 2 2 6 | 1454 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1456 | 2 2 6 2 2 6 2 2 6 2 2 6 | 1455 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1457 | 2 2 6 6 6 6 80 54 7 152 99 6 | 1456 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1458 | 192 133 9 219 162 10 236 178 12 239 182 13 | 1457 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1459 | 246 186 14 242 186 14 239 182 13 236 178 12 | 1458 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1460 | 224 166 10 206 145 10 192 133 9 154 121 60 | 1459 | 0 0 0 68 70 65 110 109 94 110 109 94 105 104 92 84 83 72 |
1461 | 94 94 94 62 62 62 42 42 42 22 22 22 | 1460 | 68 70 65 55 57 54 43 45 43 35 37 36 30 32 31 26 28 27 |
1462 | 14 14 14 6 6 6 0 0 0 0 0 0 | 1461 | 20 24 24 17 21 21 16 19 19 14 17 17 13 16 16 12 15 15 |
1463 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1462 | 12 15 15 12 15 15 12 15 15 12 15 15 12 15 15 12 15 15 |
1464 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1463 | 12 15 15 12 15 15 12 15 15 12 15 15 12 15 15 13 16 16 |
1465 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1464 | 13 16 16 13 16 16 13 16 16 13 17 17 13 17 17 14 17 17 |
1466 | 0 0 0 0 0 0 0 0 0 6 6 6 | 1465 | 14 17 17 14 17 17 14 18 18 14 18 18 14 18 18 15 18 18 |
1467 | 18 18 18 34 34 34 58 58 58 78 78 78 | 1466 | 15 19 19 15 19 19 15 19 19 20 24 24 32 34 33 35 37 36 |
1468 | 101 98 89 124 112 88 142 110 46 156 107 11 | 1467 | 37 39 37 35 37 36 33 36 34 30 32 31 26 28 27 22 24 23 |
1469 | 163 110 8 167 114 7 175 118 6 180 123 7 | 1468 | 20 20 20 17 17 17 15 15 15 13 13 13 12 12 12 12 12 12 |
1470 | 185 133 11 197 138 11 210 150 10 219 162 10 | 1469 | 12 12 12 12 12 12 8 8 7 0 0 0 0 0 0 0 0 0 |
1471 | 226 170 11 236 178 12 236 178 12 234 174 13 | 1470 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1472 | 219 162 10 197 138 11 163 110 8 130 83 6 | 1471 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1473 | 91 60 6 10 10 10 2 2 6 2 2 6 | 1472 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1474 | 18 18 18 38 38 38 38 38 38 38 38 38 | 1473 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1475 | 38 38 38 38 38 38 38 38 38 38 38 38 | 1474 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1476 | 38 38 38 38 38 38 26 26 26 2 2 6 | 1475 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1477 | 2 2 6 6 6 6 70 47 6 137 92 6 | 1476 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1478 | 175 118 6 200 144 11 219 162 10 230 174 11 | 1477 | 1 1 1 99 98 80 184 179 149 184 179 149 68 70 65 0 0 0 |
1479 | 234 174 13 230 174 11 219 162 10 210 150 10 | 1478 | 0 0 0 |
1480 | 192 133 9 163 110 8 124 112 88 82 82 82 | 1479 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1481 | 50 50 50 30 30 30 14 14 14 6 6 6 | 1480 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1482 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1481 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1483 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1482 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1484 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1483 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1485 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1484 | 15 15 15 110 109 94 110 109 94 108 107 93 99 98 80 72 73 67 |
1486 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1485 | 61 63 57 49 51 48 39 40 39 33 36 34 27 30 29 23 25 24 |
1487 | 6 6 6 14 14 14 22 22 22 34 34 34 | 1486 | 18 22 22 16 19 19 14 17 17 13 16 16 12 15 15 12 15 15 |
1488 | 42 42 42 58 58 58 74 74 74 86 86 86 | 1487 | 11 14 14 11 14 14 11 14 14 11 14 14 11 14 14 11 14 14 |
1489 | 101 98 89 122 102 70 130 98 46 121 87 25 | 1488 | 11 14 14 11 14 14 12 14 14 12 15 15 12 15 15 12 15 15 |
1490 | 137 92 6 152 99 6 163 110 8 180 123 7 | 1489 | 12 15 15 13 16 16 13 16 16 13 16 16 13 16 16 13 16 16 |
1491 | 185 133 11 197 138 11 206 145 10 200 144 11 | 1490 | 13 17 17 14 17 17 14 17 17 14 17 17 14 18 18 14 18 18 |
1492 | 180 123 7 156 107 11 130 83 6 104 69 6 | 1491 | 14 18 18 15 18 18 15 19 19 15 19 19 30 32 31 38 39 37 |
1493 | 50 34 6 54 54 54 110 110 110 101 98 89 | 1492 | 39 40 39 39 40 39 35 37 36 31 33 31 27 29 28 22 24 23 |
1494 | 86 86 86 82 82 82 78 78 78 78 78 78 | 1493 | 20 20 20 17 17 17 15 15 15 13 13 13 12 12 12 12 12 12 |
1495 | 78 78 78 78 78 78 78 78 78 78 78 78 | 1494 | 12 12 12 12 12 12 8 8 7 0 0 0 0 0 0 0 0 0 |
1496 | 78 78 78 82 82 82 86 86 86 94 94 94 | 1495 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1497 | 106 106 106 101 101 101 86 66 34 124 80 6 | 1496 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1498 | 156 107 11 180 123 7 192 133 9 200 144 11 | 1497 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1499 | 206 145 10 200 144 11 192 133 9 175 118 6 | 1498 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1500 | 139 102 15 109 106 95 70 70 70 42 42 42 | 1499 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1501 | 22 22 22 10 10 10 0 0 0 0 0 0 | 1500 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1502 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1501 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 3 3 |
1503 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1502 | 110 109 94 197 193 154 210 208 158 184 179 149 68 70 65 0 0 0 |
1504 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1503 | 0 0 0 |
1505 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1504 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1506 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1505 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1507 | 0 0 0 0 0 0 6 6 6 10 10 10 | 1506 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1508 | 14 14 14 22 22 22 30 30 30 38 38 38 | 1507 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1509 | 50 50 50 62 62 62 74 74 74 90 90 90 | 1508 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1510 | 101 98 89 112 100 78 121 87 25 124 80 6 | 1509 | 68 70 65 110 109 94 110 109 94 105 104 92 84 83 72 65 66 61 |
1511 | 137 92 6 152 99 6 152 99 6 152 99 6 | 1510 | 51 52 50 43 45 43 35 37 36 30 32 31 25 27 26 20 23 23 |
1512 | 138 86 6 124 80 6 98 70 6 86 66 30 | 1511 | 17 20 20 15 18 18 13 16 16 12 15 15 12 15 15 11 14 14 |
1513 | 101 98 89 82 82 82 58 58 58 46 46 46 | 1512 | 11 14 14 11 14 14 11 13 13 11 13 13 11 13 13 11 13 13 |
1514 | 38 38 38 34 34 34 34 34 34 34 34 34 | 1513 | 11 14 14 11 14 14 11 14 14 11 14 14 11 14 14 11 14 14 |
1515 | 34 34 34 34 34 34 34 34 34 34 34 34 | 1514 | 12 15 15 12 15 15 12 15 15 12 15 15 13 16 16 13 16 16 |
1516 | 34 34 34 34 34 34 38 38 38 42 42 42 | 1515 | 13 16 16 13 16 16 13 17 17 13 17 17 14 17 17 14 17 17 |
1517 | 54 54 54 82 82 82 94 86 76 91 60 6 | 1516 | 14 18 18 14 18 18 14 18 18 16 19 19 37 39 37 41 42 42 |
1518 | 134 86 6 156 107 11 167 114 7 175 118 6 | 1517 | 41 42 42 41 42 42 38 39 37 32 34 33 27 29 28 23 24 24 |
1519 | 175 118 6 167 114 7 152 99 6 121 87 25 | 1518 | 21 22 21 17 17 17 15 15 15 13 13 13 12 12 12 12 12 12 |
1520 | 101 98 89 62 62 62 34 34 34 18 18 18 | 1519 | 12 12 12 12 12 12 8 8 7 0 0 0 0 0 0 0 0 0 |
1521 | 6 6 6 0 0 0 0 0 0 0 0 0 | 1520 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1522 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1521 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1523 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1522 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1524 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1523 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1525 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1524 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1526 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1525 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1527 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1526 | 0 0 0 0 0 0 0 0 0 0 0 0 11 11 11 137 133 100 |
1528 | 0 0 0 6 6 6 6 6 6 10 10 10 | 1527 | 197 193 154 251 251 187 239 239 170 184 179 149 31 33 31 0 0 0 |
1529 | 18 18 18 22 22 22 30 30 30 42 42 42 | 1528 | 0 0 0 |
1530 | 50 50 50 66 66 66 86 86 86 101 98 89 | 1529 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1531 | 106 86 58 98 70 6 104 69 6 104 69 6 | 1530 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1532 | 104 69 6 91 60 6 82 62 34 90 90 90 | 1531 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1533 | 62 62 62 38 38 38 22 22 22 14 14 14 | 1532 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1534 | 10 10 10 10 10 10 10 10 10 10 10 10 | 1533 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 12 12 12 |
1535 | 10 10 10 10 10 10 6 6 6 10 10 10 | 1534 | 110 109 94 110 109 94 105 104 92 90 89 73 72 73 67 58 59 55 |
1536 | 10 10 10 10 10 10 10 10 10 14 14 14 | 1535 | 46 47 45 37 39 37 31 33 31 26 28 27 20 24 24 17 21 21 |
1537 | 22 22 22 42 42 42 70 70 70 89 81 66 | 1536 | 15 18 18 13 16 16 12 15 15 12 14 14 11 13 13 11 13 13 |
1538 | 80 54 7 104 69 6 124 80 6 137 92 6 | 1537 | 10 13 13 10 13 13 10 13 13 10 13 13 10 13 13 10 13 13 |
1539 | 134 86 6 116 81 8 100 82 52 86 86 86 | 1538 | 10 13 13 10 13 13 11 13 13 11 13 13 11 14 14 11 14 14 |
1540 | 58 58 58 30 30 30 14 14 14 6 6 6 | 1539 | 11 14 14 11 14 14 12 14 14 12 15 15 12 15 15 12 15 15 |
1541 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1540 | 13 16 16 13 16 16 13 16 16 13 16 16 13 17 17 13 17 17 |
1542 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1541 | 14 17 17 14 17 17 14 18 18 23 27 26 41 42 42 41 42 42 |
1543 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1542 | 43 45 43 41 42 42 39 40 39 33 36 34 27 29 28 23 24 24 |
1544 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1543 | 21 22 21 17 17 17 15 15 15 13 13 13 12 12 12 12 12 12 |
1545 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1544 | 12 12 12 12 12 12 6 7 7 0 0 0 0 0 0 0 0 0 |
1546 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1545 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1547 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1546 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1548 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1547 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1549 | 0 0 0 6 6 6 10 10 10 14 14 14 | 1548 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1550 | 18 18 18 26 26 26 38 38 38 54 54 54 | 1549 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1551 | 70 70 70 86 86 86 94 86 76 89 81 66 | 1550 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1552 | 89 81 66 86 86 86 74 74 74 50 50 50 | 1551 | 0 0 0 0 0 0 0 0 0 27 29 28 168 163 120 210 208 158 |
1553 | 30 30 30 14 14 14 6 6 6 0 0 0 | 1552 | 251 251 187 251 251 187 210 208 158 137 133 100 1 1 1 0 0 0 |
1554 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1553 | 0 0 0 |
1555 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1554 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1556 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1555 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1557 | 6 6 6 18 18 18 34 34 34 58 58 58 | 1556 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1558 | 82 82 82 89 81 66 89 81 66 89 81 66 | 1557 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1559 | 94 86 66 94 86 76 74 74 74 50 50 50 | 1558 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 60 60 56 |
1560 | 26 26 26 14 14 14 6 6 6 0 0 0 | 1559 | 110 109 94 105 104 92 105 104 92 84 83 72 65 66 61 51 52 50 |
1561 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1560 | 40 43 41 33 36 34 27 30 29 23 25 24 18 22 22 16 19 19 |
1562 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1561 | 14 17 17 12 15 15 11 14 14 11 14 14 10 13 13 10 13 13 |
1563 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1562 | 10 13 13 10 12 12 10 12 12 10 12 12 10 12 12 10 12 12 |
1564 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1563 | 10 12 12 10 12 12 10 13 13 10 13 13 10 13 13 11 13 13 |
1565 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1564 | 11 13 13 11 14 14 11 14 14 11 14 14 11 14 14 12 15 15 |
1566 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1565 | 12 15 15 12 15 15 12 15 15 13 16 16 13 16 16 13 16 16 |
1567 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1566 | 13 17 17 13 17 17 14 17 17 32 34 33 43 45 43 43 45 43 |
1568 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1567 | 43 45 43 43 45 43 39 40 39 33 36 34 27 29 28 23 24 24 |
1569 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1568 | 21 22 21 17 17 17 15 15 15 13 13 13 12 12 12 12 12 12 |
1570 | 6 6 6 6 6 6 14 14 14 18 18 18 | 1569 | 12 12 12 12 12 12 6 7 7 0 0 0 0 0 0 0 0 0 |
1571 | 30 30 30 38 38 38 46 46 46 54 54 54 | 1570 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1572 | 50 50 50 42 42 42 30 30 30 18 18 18 | 1571 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1573 | 10 10 10 0 0 0 0 0 0 0 0 0 | 1572 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1574 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1573 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1575 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1574 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1576 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1575 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1577 | 0 0 0 6 6 6 14 14 14 26 26 26 | 1576 | 0 0 0 1 1 1 68 70 65 184 179 149 210 208 158 251 251 187 |
1578 | 38 38 38 50 50 50 58 58 58 58 58 58 | 1577 | 251 251 187 214 212 158 184 179 149 37 39 37 0 0 0 0 0 0 |
1579 | 54 54 54 42 42 42 30 30 30 18 18 18 | 1578 | 0 0 0 |
1580 | 10 10 10 0 0 0 0 0 0 0 0 0 | 1579 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1581 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1580 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1582 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1581 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1583 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1582 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1584 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1583 | 0 0 0 0 0 0 0 0 0 0 0 0 6 7 7 105 104 92 |
1585 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1584 | 105 104 92 105 104 92 99 98 80 72 73 67 58 59 55 46 47 45 |
1586 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1585 | 35 37 36 30 32 31 25 27 26 20 23 23 16 19 19 14 17 17 |
1587 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1586 | 12 15 15 12 14 14 11 13 13 10 13 13 10 12 12 10 12 12 |
1588 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1587 | 10 12 12 10 12 12 9 12 12 9 12 12 9 12 12 9 12 12 |
1589 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1588 | 10 12 12 10 12 12 10 12 12 10 12 12 10 12 12 10 13 13 |
1590 | 0 0 0 0 0 0 0 0 0 6 6 6 | 1589 | 10 13 13 10 13 13 11 13 13 11 13 13 11 14 14 11 14 14 |
1591 | 6 6 6 10 10 10 14 14 14 18 18 18 | 1590 | 11 14 14 12 15 15 12 15 15 12 15 15 12 15 15 13 16 16 |
1592 | 18 18 18 14 14 14 10 10 10 6 6 6 | 1591 | 13 16 16 13 16 16 17 20 20 41 42 42 46 47 45 46 47 45 |
1593 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1592 | 46 47 45 43 45 43 40 41 39 33 36 34 27 29 28 23 24 24 |
1594 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1593 | 20 20 20 17 17 17 15 15 15 13 13 13 12 12 12 12 12 12 |
1595 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1594 | 12 12 12 12 12 12 4 5 5 0 0 0 0 0 0 0 0 0 |
1596 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1595 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1597 | 0 0 0 0 0 0 0 0 0 6 6 6 | 1596 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1598 | 14 14 14 18 18 18 22 22 22 22 22 22 | 1597 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1599 | 18 18 18 14 14 14 10 10 10 6 6 6 | 1598 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1600 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1599 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1601 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1600 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1602 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1601 | 15 15 15 110 109 94 197 193 154 214 212 158 251 251 187 251 251 187 |
1603 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1602 | 239 239 170 184 179 149 84 83 72 0 0 0 0 0 0 0 0 0 |
1604 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1603 | 0 0 0 |
1604 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1605 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1606 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1607 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1608 | 0 0 0 0 0 0 0 0 0 0 0 0 47 48 46 105 104 92 | ||
1609 | 105 104 92 99 98 80 84 83 72 68 70 65 51 52 50 40 43 41 | ||
1610 | 32 34 33 27 29 28 22 24 23 17 21 21 15 18 18 13 16 16 | ||
1611 | 12 15 15 11 13 13 10 13 13 10 12 12 9 12 12 9 12 12 | ||
1612 | 9 12 12 9 12 12 9 11 11 9 11 11 9 11 11 9 11 11 | ||
1613 | 9 12 12 9 12 12 9 12 12 9 12 12 10 12 12 10 12 12 | ||
1614 | 10 12 12 10 12 12 10 13 13 10 13 13 10 13 13 11 13 13 | ||
1615 | 11 14 14 11 14 14 11 14 14 12 14 14 12 15 15 12 15 15 | ||
1616 | 12 15 15 13 16 16 28 31 30 43 45 43 47 48 46 47 48 46 | ||
1617 | 47 48 46 43 45 43 40 41 39 33 36 34 27 29 28 22 24 23 | ||
1618 | 20 20 20 17 17 17 15 15 15 13 13 13 12 12 12 12 12 12 | ||
1619 | 12 12 12 12 12 12 3 4 4 0 0 0 0 0 0 0 0 0 | ||
1620 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1621 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1622 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1623 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1624 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1625 | 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 60 60 56 | ||
1626 | 177 172 135 197 193 154 251 251 187 251 251 187 251 251 187 251 251 187 | ||
1627 | 184 179 149 110 109 94 3 4 4 0 0 0 0 0 0 0 0 0 | ||
1628 | 0 0 0 | ||
1629 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1630 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1631 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1632 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1633 | 0 0 0 0 0 0 0 0 0 1 1 1 99 98 80 105 104 92 | ||
1634 | 99 98 80 87 86 72 84 83 72 63 64 60 46 47 45 35 37 36 | ||
1635 | 30 32 31 25 27 26 18 22 22 16 19 19 14 17 17 12 15 15 | ||
1636 | 11 14 14 10 13 13 9 12 12 9 12 12 9 11 11 9 11 11 | ||
1637 | 9 11 11 9 11 11 9 11 11 9 11 11 9 11 11 9 11 11 | ||
1638 | 9 11 11 9 11 11 9 11 11 9 11 11 9 12 12 9 12 12 | ||
1639 | 9 12 12 10 12 12 10 12 12 10 12 12 10 13 13 10 13 13 | ||
1640 | 10 13 13 11 13 13 11 14 14 11 14 14 11 14 14 12 15 15 | ||
1641 | 12 15 15 14 17 17 41 42 42 47 48 46 49 51 48 51 52 50 | ||
1642 | 47 48 46 43 45 43 40 41 39 33 36 34 27 29 28 22 24 23 | ||
1643 | 19 20 19 16 16 16 14 14 13 13 13 13 12 12 12 12 12 12 | ||
1644 | 12 12 12 12 12 12 2 2 2 0 0 0 0 0 0 0 0 0 | ||
1645 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1646 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1647 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1648 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1649 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1650 | 0 0 0 0 0 0 0 0 0 23 24 24 137 133 100 184 179 149 | ||
1651 | 210 208 158 251 251 187 251 251 187 251 251 187 251 251 187 184 179 149 | ||
1652 | 110 109 94 13 13 13 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1653 | 0 0 0 | ||
1654 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1655 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1656 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1657 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1658 | 0 0 0 0 0 0 0 0 0 30 32 31 105 104 92 99 98 80 | ||
1659 | 84 83 72 84 83 72 72 73 67 55 57 54 41 42 42 32 34 33 | ||
1660 | 27 29 28 20 24 24 17 20 20 14 17 17 13 16 16 12 14 14 | ||
1661 | 10 13 13 10 12 12 9 11 11 9 11 11 9 11 11 9 11 11 | ||
1662 | 9 11 11 9 11 11 9 11 11 9 11 11 9 11 11 9 11 11 | ||
1663 | 9 11 11 9 11 11 9 11 11 9 11 11 9 11 11 9 11 11 | ||
1664 | 9 11 11 9 12 12 9 12 12 10 12 12 10 12 12 10 12 12 | ||
1665 | 10 13 13 10 13 13 10 13 13 11 13 13 11 14 14 11 14 14 | ||
1666 | 11 14 14 27 29 28 55 56 53 72 73 67 51 52 50 51 52 50 | ||
1667 | 49 51 48 43 45 43 39 40 39 32 34 33 26 28 27 21 22 21 | ||
1668 | 19 20 19 16 16 16 18 19 17 13 13 13 12 12 12 12 12 12 | ||
1669 | 12 12 12 12 12 12 1 1 1 0 0 0 0 0 0 0 0 0 | ||
1670 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1671 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1672 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1673 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1674 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1675 | 0 0 0 8 8 7 84 83 72 184 179 149 197 193 154 251 251 187 | ||
1676 | 251 251 187 251 251 187 251 251 187 251 251 187 184 179 149 145 141 105 | ||
1677 | 19 20 19 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1678 | 0 0 0 | ||
1679 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1680 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1681 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1682 | 0 0 0 14 14 13 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1683 | 0 0 0 0 0 0 0 0 0 72 73 67 105 104 92 84 83 72 | ||
1684 | 72 73 67 84 83 72 68 70 65 49 51 48 39 40 39 30 32 31 | ||
1685 | 25 27 26 18 22 22 15 18 18 13 16 16 12 15 15 11 13 13 | ||
1686 | 10 12 12 9 11 11 9 11 11 9 11 11 9 11 11 9 11 11 | ||
1687 | 9 11 11 9 11 11 9 11 11 9 11 11 9 11 11 9 11 11 | ||
1688 | 9 11 11 9 11 11 9 11 11 9 11 11 9 11 11 9 11 11 | ||
1689 | 9 11 11 9 11 11 9 11 11 9 12 12 9 12 12 9 12 12 | ||
1690 | 10 12 12 10 12 12 10 12 12 10 13 13 10 13 13 11 13 13 | ||
1691 | 13 16 16 41 42 42 99 98 80 158 153 112 65 66 61 51 52 50 | ||
1692 | 49 51 48 43 45 43 39 40 39 31 33 31 25 27 26 21 22 21 | ||
1693 | 21 22 21 68 70 65 55 56 53 13 13 13 12 12 12 12 12 12 | ||
1694 | 12 12 12 11 11 11 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1695 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1696 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1697 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1698 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1699 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 3 3 | ||
1700 | 63 64 60 158 153 112 184 179 149 210 208 158 251 251 187 251 251 187 | ||
1701 | 251 251 187 251 251 187 251 251 187 184 179 149 137 133 100 27 29 28 | ||
1702 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1703 | 0 0 0 | ||
1704 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1705 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1706 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1707 | 21 22 21 110 109 94 5 6 5 0 0 0 0 0 0 0 0 0 | ||
1708 | 0 0 0 0 0 0 13 13 13 105 104 92 90 89 73 72 73 67 | ||
1709 | 68 70 65 84 83 72 63 64 60 46 47 45 35 37 36 27 29 28 | ||
1710 | 22 24 23 17 20 20 14 17 17 12 15 15 11 14 14 10 12 12 | ||
1711 | 10 12 12 9 11 11 9 11 11 9 11 11 9 11 11 9 11 11 | ||
1712 | 9 11 11 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1713 | 8 10 10 9 11 11 9 11 11 9 11 11 9 11 11 9 11 11 | ||
1714 | 9 11 11 9 11 11 9 11 11 9 11 11 9 11 11 9 11 11 | ||
1715 | 9 12 12 9 12 12 10 12 12 10 12 12 10 13 13 10 13 13 | ||
1716 | 30 32 31 47 48 46 177 172 135 210 208 158 137 133 100 55 56 53 | ||
1717 | 49 51 48 43 45 43 38 39 37 31 33 31 25 27 26 22 24 23 | ||
1718 | 110 109 94 184 179 149 63 64 60 13 13 13 12 12 12 12 12 12 | ||
1719 | 12 12 12 8 9 9 0 0 0 1 1 1 0 0 0 0 0 0 | ||
1720 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1721 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1722 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1723 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1724 | 0 0 0 0 0 0 0 0 0 0 0 0 21 22 21 105 104 92 | ||
1725 | 184 179 149 210 208 158 251 251 187 251 251 187 251 251 187 251 251 187 | ||
1726 | 251 251 187 251 251 187 184 179 149 145 141 105 23 24 24 0 0 0 | ||
1727 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1728 | 0 0 0 | ||
1729 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1730 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1731 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1732 | 68 70 65 184 179 149 105 104 92 0 0 0 0 0 0 0 0 0 | ||
1733 | 0 0 0 0 0 0 51 52 50 99 98 80 84 83 72 63 64 60 | ||
1734 | 68 70 65 72 73 67 55 57 54 41 42 42 32 34 33 25 27 26 | ||
1735 | 20 23 23 16 19 19 13 16 16 12 14 14 10 13 13 10 12 12 | ||
1736 | 9 11 11 9 11 11 9 11 11 9 11 11 9 11 11 8 10 10 | ||
1737 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1738 | 8 10 10 8 10 10 8 10 10 8 10 10 9 11 11 9 11 11 | ||
1739 | 9 11 11 9 11 11 9 11 11 9 11 11 9 11 11 9 11 11 | ||
1740 | 9 11 11 9 11 11 9 12 12 9 12 12 10 12 12 17 20 20 | ||
1741 | 46 47 45 72 73 67 210 208 158 251 251 187 210 208 158 63 64 60 | ||
1742 | 49 51 48 43 45 43 37 39 37 30 32 31 24 26 24 105 104 92 | ||
1743 | 210 208 158 197 193 154 47 48 46 13 13 13 12 12 12 12 12 12 | ||
1744 | 12 12 12 6 7 7 33 36 34 48 49 45 0 0 0 0 0 0 | ||
1745 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1746 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1747 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1748 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1749 | 0 0 0 0 0 0 8 8 7 23 24 24 55 56 53 110 109 94 | ||
1750 | 210 208 158 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 | ||
1751 | 251 251 187 184 179 149 110 109 94 20 20 20 0 0 0 0 0 0 | ||
1752 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1753 | 0 0 0 | ||
1754 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1755 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1756 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1757 | 110 109 94 251 251 187 210 208 158 47 48 46 0 0 0 0 0 0 | ||
1758 | 0 0 0 1 1 1 90 89 73 90 89 73 72 73 67 55 56 53 | ||
1759 | 72 73 67 68 70 65 51 52 50 37 39 37 28 31 30 23 25 24 | ||
1760 | 17 21 21 15 18 18 12 15 15 11 14 14 10 13 13 9 12 12 | ||
1761 | 9 11 11 9 11 11 9 11 11 8 10 10 8 10 10 8 10 10 | ||
1762 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1763 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1764 | 8 10 10 9 11 11 9 11 11 9 11 11 9 11 11 9 11 11 | ||
1765 | 9 11 11 9 11 11 9 11 11 9 12 12 13 16 16 41 42 42 | ||
1766 | 49 51 48 110 109 94 251 251 187 251 251 187 251 251 187 105 104 92 | ||
1767 | 49 51 48 43 45 43 35 37 36 30 31 28 47 48 46 197 193 154 | ||
1768 | 251 251 187 197 193 154 31 33 31 12 12 12 12 12 12 12 12 12 | ||
1769 | 12 12 12 51 52 50 184 179 149 72 73 67 0 0 0 0 0 0 | ||
1770 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1771 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1772 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1773 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 | ||
1774 | 11 11 11 21 22 21 30 32 31 40 41 39 60 60 56 145 141 105 | ||
1775 | 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 214 212 158 | ||
1776 | 184 179 149 110 109 94 13 13 13 0 0 0 0 0 0 0 0 0 | ||
1777 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1778 | 0 0 0 | ||
1779 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1780 | 0 0 0 0 0 0 4 5 4 61 61 53 48 49 45 3 4 3 | ||
1781 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1782 | 156 151 111 251 251 187 251 251 187 184 179 149 11 11 11 0 0 0 | ||
1783 | 0 0 0 26 28 27 99 98 80 84 83 72 60 60 56 43 45 43 | ||
1784 | 72 73 67 65 66 61 49 51 48 35 37 36 27 29 28 20 24 24 | ||
1785 | 17 20 20 14 17 17 12 15 15 11 13 13 10 12 12 9 11 11 | ||
1786 | 9 11 11 9 11 11 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1787 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1788 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1789 | 8 10 10 8 10 10 8 10 10 8 10 10 9 11 11 9 11 11 | ||
1790 | 9 11 11 9 11 11 9 11 11 11 13 13 37 39 37 47 48 46 | ||
1791 | 51 52 50 184 179 149 251 251 187 251 251 187 251 251 187 145 141 105 | ||
1792 | 47 48 46 41 42 42 35 37 36 27 29 28 137 133 100 251 251 187 | ||
1793 | 251 251 187 197 193 154 19 20 19 12 12 12 12 12 12 12 12 12 | ||
1794 | 27 29 28 184 179 149 214 212 158 63 64 60 0 0 0 0 0 0 | ||
1795 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1796 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1797 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1798 | 0 0 0 0 0 0 1 1 1 6 7 7 16 16 16 24 26 24 | ||
1799 | 30 32 31 38 39 37 47 48 46 55 57 54 68 70 65 110 109 94 | ||
1800 | 197 193 154 251 251 187 251 251 187 251 251 187 210 208 158 184 179 149 | ||
1801 | 105 104 92 8 8 7 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1802 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1803 | 0 0 0 | ||
1804 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1805 | 0 0 0 0 0 0 0 0 0 65 66 61 184 179 149 156 151 111 | ||
1806 | 30 32 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1807 | 168 163 120 251 251 187 251 251 187 251 251 187 110 109 94 0 0 0 | ||
1808 | 0 0 0 60 60 56 84 83 72 68 70 65 51 52 50 38 39 37 | ||
1809 | 84 83 72 63 64 60 43 45 43 33 36 34 25 27 26 20 23 22 | ||
1810 | 15 18 18 13 16 16 12 14 14 10 13 13 9 12 12 9 11 11 | ||
1811 | 9 11 11 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1812 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1813 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1814 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1815 | 9 11 11 9 11 11 10 12 12 33 36 34 46 47 45 51 52 50 | ||
1816 | 72 73 67 210 208 158 251 251 187 251 251 187 251 251 187 177 172 135 | ||
1817 | 47 48 46 41 42 42 35 37 36 37 39 37 184 179 149 251 251 187 | ||
1818 | 251 251 187 197 193 154 13 13 13 12 12 12 12 12 12 12 12 12 | ||
1819 | 110 109 94 251 251 187 251 251 187 37 39 37 0 0 0 0 0 0 | ||
1820 | 0 0 0 21 22 20 2 2 1 0 0 0 0 0 0 0 0 0 | ||
1821 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1822 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1823 | 4 5 5 12 12 12 21 22 21 25 27 26 30 32 31 38 39 37 | ||
1824 | 46 47 45 55 56 53 60 60 56 65 66 61 68 70 65 105 104 92 | ||
1825 | 110 109 94 197 193 154 210 208 158 197 193 154 184 179 149 84 83 72 | ||
1826 | 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1827 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1828 | 0 0 0 | ||
1829 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1830 | 0 0 0 0 0 0 0 0 0 13 13 13 184 179 149 251 251 187 | ||
1831 | 197 193 154 43 44 41 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1832 | 145 141 105 251 251 187 251 251 187 251 251 187 214 212 158 43 45 43 | ||
1833 | 2 2 2 84 83 72 72 73 67 58 59 55 41 42 42 38 39 37 | ||
1834 | 72 73 67 58 59 55 41 42 42 31 33 31 25 27 26 18 22 22 | ||
1835 | 14 17 17 12 15 15 12 14 14 10 12 12 9 12 12 9 11 11 | ||
1836 | 9 11 11 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1837 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1838 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1839 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1840 | 8 10 10 9 12 12 31 33 31 43 45 43 49 51 48 55 56 53 | ||
1841 | 110 109 94 251 251 187 251 251 187 251 251 187 251 251 187 168 163 120 | ||
1842 | 47 48 46 41 42 42 33 36 34 63 64 60 197 193 154 251 251 187 | ||
1843 | 251 251 187 184 179 149 13 13 13 12 12 12 12 12 12 16 16 16 | ||
1844 | 197 193 154 251 251 187 239 239 170 20 20 20 0 0 0 2 2 1 | ||
1845 | 108 107 93 110 109 94 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1846 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1847 | 0 0 0 0 0 0 1 1 1 4 5 5 11 11 11 18 19 18 | ||
1848 | 22 24 23 26 28 27 32 34 33 39 40 39 46 47 45 51 52 50 | ||
1849 | 55 57 54 60 60 56 63 64 60 63 64 60 63 64 60 58 59 55 | ||
1850 | 63 64 60 99 98 80 145 141 105 137 133 100 43 45 43 0 0 0 | ||
1851 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1852 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1853 | 0 0 0 | ||
1854 | 0 0 0 0 0 0 0 0 0 3 4 3 0 0 0 0 0 0 | ||
1855 | 0 0 0 0 0 0 0 0 0 0 0 0 110 109 94 251 251 187 | ||
1856 | 251 251 187 184 179 149 25 27 26 0 0 0 0 0 0 0 0 0 | ||
1857 | 99 98 80 251 251 187 251 251 187 251 251 187 251 251 187 156 151 111 | ||
1858 | 25 27 26 84 83 72 65 66 61 47 48 46 32 34 33 39 40 39 | ||
1859 | 72 73 67 55 57 54 40 41 39 30 32 31 23 25 24 18 22 22 | ||
1860 | 14 17 17 12 15 15 11 13 13 10 12 12 9 11 11 9 11 11 | ||
1861 | 9 11 11 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1862 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1863 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1864 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1865 | 9 11 11 28 31 30 41 42 42 47 48 46 55 56 53 58 59 55 | ||
1866 | 137 133 100 251 251 187 251 251 187 251 251 187 210 208 158 137 133 100 | ||
1867 | 47 48 46 40 41 39 32 34 33 75 75 61 184 179 149 239 239 170 | ||
1868 | 251 251 187 177 172 135 13 13 13 12 12 12 12 12 12 43 44 41 | ||
1869 | 197 193 154 251 251 187 210 208 158 10 10 9 0 0 0 84 83 72 | ||
1870 | 251 251 187 84 83 72 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1871 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 | ||
1872 | 6 7 7 11 11 11 17 17 17 20 20 20 23 24 24 27 29 28 | ||
1873 | 32 34 33 38 39 37 43 45 43 47 48 46 51 52 50 55 56 53 | ||
1874 | 58 59 55 58 59 55 55 57 54 55 56 53 47 48 46 41 42 42 | ||
1875 | 35 37 36 31 33 31 47 48 46 14 14 13 0 0 0 0 0 0 | ||
1876 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1877 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1878 | 0 0 0 | ||
1879 | 0 0 0 0 0 0 0 0 0 66 65 55 99 98 80 20 20 20 | ||
1880 | 0 0 0 0 0 0 0 0 0 0 0 0 43 45 43 214 212 158 | ||
1881 | 251 251 187 251 251 187 145 141 105 3 3 3 0 0 0 0 0 0 | ||
1882 | 48 49 45 184 179 149 239 239 170 251 251 187 239 239 170 177 172 135 | ||
1883 | 84 83 72 72 73 67 55 56 53 39 40 39 26 28 27 39 40 39 | ||
1884 | 68 70 65 51 52 50 39 40 39 28 31 30 22 24 23 17 20 20 | ||
1885 | 14 17 17 12 14 14 10 13 13 9 11 11 9 11 11 9 11 11 | ||
1886 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1887 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1888 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1889 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1890 | 27 29 28 40 41 39 46 47 45 51 52 50 55 57 54 63 64 60 | ||
1891 | 131 127 93 197 193 154 210 208 158 197 193 154 168 163 120 96 95 69 | ||
1892 | 47 48 46 40 41 39 32 34 33 71 71 57 145 141 105 184 179 149 | ||
1893 | 184 179 149 131 127 93 13 13 13 12 12 12 12 12 12 48 49 45 | ||
1894 | 168 163 120 184 179 149 156 151 111 6 7 7 14 14 13 177 172 135 | ||
1895 | 239 239 170 40 41 39 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1896 | 0 0 0 0 0 0 3 3 3 6 7 7 11 11 11 16 16 16 | ||
1897 | 18 19 18 21 22 21 23 24 24 27 29 28 32 34 33 37 39 37 | ||
1898 | 41 42 42 43 45 43 47 48 46 51 52 50 51 52 50 51 52 50 | ||
1899 | 51 52 50 49 51 48 46 47 45 40 41 39 32 34 33 25 27 26 | ||
1900 | 20 20 20 14 14 13 2 2 2 0 0 0 0 0 0 0 0 0 | ||
1901 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1902 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1903 | 0 0 0 | ||
1904 | 0 0 0 0 0 0 0 0 0 33 36 34 197 193 154 184 179 149 | ||
1905 | 41 42 42 0 0 0 0 0 0 0 0 0 3 3 3 184 179 149 | ||
1906 | 251 251 187 251 251 187 184 179 149 48 49 45 0 0 0 0 0 0 | ||
1907 | 16 17 12 121 119 87 177 172 135 194 189 146 188 184 146 145 141 105 | ||
1908 | 82 81 62 63 64 60 46 47 45 31 33 31 21 22 21 35 37 36 | ||
1909 | 68 70 65 51 52 50 37 39 37 27 30 29 22 24 23 17 20 20 | ||
1910 | 13 16 16 12 14 14 10 13 13 9 11 11 8 10 10 8 10 10 | ||
1911 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1912 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1913 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1914 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 25 27 26 | ||
1915 | 38 39 37 43 45 43 51 52 50 55 56 53 60 60 56 63 64 60 | ||
1916 | 92 91 72 158 153 112 176 171 126 171 165 117 149 143 98 82 81 62 | ||
1917 | 44 46 43 38 39 37 30 32 31 71 71 57 131 127 93 160 154 106 | ||
1918 | 149 143 98 82 81 62 13 13 13 12 12 12 12 12 12 46 47 43 | ||
1919 | 121 119 87 134 131 96 96 95 69 7 7 6 38 39 37 131 127 93 | ||
1920 | 145 141 105 12 13 12 0 0 0 1 1 1 3 3 3 6 7 7 | ||
1921 | 10 10 9 12 12 12 14 14 13 16 16 16 18 19 18 21 22 21 | ||
1922 | 22 24 23 26 28 27 30 31 28 33 36 34 37 39 37 40 41 39 | ||
1923 | 41 42 42 43 45 43 46 47 45 46 47 45 46 47 45 43 45 43 | ||
1924 | 41 42 42 37 39 37 31 33 31 26 28 27 21 22 21 16 16 16 | ||
1925 | 6 7 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1926 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1927 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1928 | 0 0 0 | ||
1929 | 0 0 0 0 0 0 0 0 0 0 0 0 177 172 135 251 251 187 | ||
1930 | 197 193 154 27 29 28 0 0 0 0 0 0 0 0 0 110 109 94 | ||
1931 | 239 239 170 239 239 170 184 179 149 87 86 72 2 2 1 0 0 0 | ||
1932 | 1 1 1 82 81 62 142 137 94 165 161 109 165 161 109 131 127 93 | ||
1933 | 75 75 61 55 56 53 37 39 37 25 27 26 19 20 19 32 34 33 | ||
1934 | 65 66 61 49 51 48 35 37 36 27 29 28 20 23 23 16 19 19 | ||
1935 | 13 16 16 13 13 13 10 12 12 9 11 11 8 10 10 8 10 10 | ||
1936 | 8 9 9 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1937 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1938 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1939 | 8 10 10 8 10 10 8 10 10 8 10 10 22 24 23 35 37 36 | ||
1940 | 41 42 42 47 48 46 55 56 53 58 59 55 63 64 60 65 66 61 | ||
1941 | 71 71 57 131 127 93 160 154 106 160 154 106 142 137 94 82 81 62 | ||
1942 | 46 47 43 40 41 39 33 36 34 66 65 55 125 122 87 149 143 98 | ||
1943 | 142 137 94 82 81 62 17 17 17 18 19 17 14 14 13 46 47 43 | ||
1944 | 118 116 76 125 122 87 96 95 69 16 17 12 71 71 57 103 101 77 | ||
1945 | 82 81 62 11 11 11 11 11 11 13 13 13 14 14 13 14 14 13 | ||
1946 | 15 15 15 16 16 16 17 17 17 19 20 19 21 22 21 23 24 24 | ||
1947 | 26 28 27 27 29 28 31 33 31 33 36 34 35 37 36 38 39 37 | ||
1948 | 39 40 39 39 40 39 38 39 37 37 39 37 35 37 36 31 33 31 | ||
1949 | 27 29 28 24 26 24 21 22 21 17 17 17 12 12 12 2 2 2 | ||
1950 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1951 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1952 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1953 | 0 0 0 | ||
1954 | 0 0 0 0 0 0 0 0 0 0 0 0 68 70 65 251 251 187 | ||
1955 | 251 251 187 156 151 111 2 2 1 0 0 0 0 0 0 43 44 41 | ||
1956 | 177 172 135 184 179 149 158 153 112 103 101 77 19 20 18 0 0 0 | ||
1957 | 0 0 0 46 47 43 131 127 93 160 154 106 160 154 106 131 127 93 | ||
1958 | 71 71 57 43 45 43 30 32 31 21 22 21 16 16 16 26 28 27 | ||
1959 | 63 64 60 47 48 46 35 37 36 26 28 27 20 23 23 16 19 19 | ||
1960 | 13 16 16 13 13 13 10 12 12 9 11 11 8 10 10 8 10 10 | ||
1961 | 7 9 9 7 9 9 8 9 9 8 10 10 8 10 10 8 10 10 | ||
1962 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1963 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1964 | 8 10 10 8 10 10 8 10 10 20 20 20 33 36 34 40 41 39 | ||
1965 | 46 47 45 51 52 50 55 57 54 60 60 56 63 64 60 65 66 61 | ||
1966 | 66 65 55 118 116 76 151 147 98 165 161 109 151 147 98 121 119 87 | ||
1967 | 96 95 69 96 95 69 96 95 69 103 101 77 142 137 94 151 147 98 | ||
1968 | 142 137 94 103 101 77 82 81 62 82 81 62 82 81 62 96 95 69 | ||
1969 | 131 127 93 142 137 94 103 101 77 46 47 43 96 95 69 118 116 76 | ||
1970 | 71 71 57 14 14 13 14 14 13 15 15 15 15 15 15 16 16 16 | ||
1971 | 16 16 16 17 17 17 18 19 18 20 20 20 21 22 21 23 24 24 | ||
1972 | 25 27 26 27 29 28 30 31 28 30 32 31 31 33 31 31 33 31 | ||
1973 | 31 33 31 31 33 31 30 31 28 27 29 28 25 27 26 22 24 23 | ||
1974 | 20 20 20 16 16 16 13 13 13 6 7 7 0 0 0 0 0 0 | ||
1975 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1976 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1977 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1978 | 0 0 0 | ||
1979 | 58 59 55 68 70 65 8 8 7 0 0 0 10 10 9 210 208 158 | ||
1980 | 251 251 187 184 179 149 38 39 37 0 0 0 0 0 0 8 8 7 | ||
1981 | 103 101 77 149 143 98 149 143 98 118 116 76 40 41 39 25 27 25 | ||
1982 | 53 55 47 82 81 62 144 139 99 165 161 109 165 161 109 142 137 94 | ||
1983 | 71 71 57 35 37 36 24 26 24 18 19 18 15 15 15 22 24 23 | ||
1984 | 63 64 60 46 47 45 33 36 34 26 28 27 20 23 22 17 18 17 | ||
1985 | 12 15 15 11 13 13 10 12 12 9 11 11 8 10 10 8 10 10 | ||
1986 | 7 9 9 7 9 9 7 9 9 7 9 9 8 9 9 8 10 10 | ||
1987 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1988 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
1989 | 8 10 10 8 10 10 16 16 16 30 31 28 35 37 36 41 42 42 | ||
1990 | 47 48 46 55 56 53 58 59 55 63 64 60 65 66 61 65 66 61 | ||
1991 | 61 61 53 103 101 77 151 147 98 171 165 117 171 165 117 168 163 120 | ||
1992 | 158 153 112 158 153 112 155 149 109 151 147 98 151 147 98 160 154 106 | ||
1993 | 151 147 98 149 143 98 142 137 94 149 143 98 149 143 98 149 143 98 | ||
1994 | 155 149 109 151 147 98 131 127 93 103 101 77 125 122 87 118 116 76 | ||
1995 | 71 71 57 16 16 16 16 16 16 16 16 16 17 17 17 17 17 17 | ||
1996 | 17 17 17 17 17 17 18 19 18 19 20 19 20 20 20 21 22 21 | ||
1997 | 23 24 24 24 26 24 25 27 26 26 28 27 26 28 27 26 28 27 | ||
1998 | 25 27 26 24 26 24 22 24 23 21 22 21 19 20 19 16 16 16 | ||
1999 | 14 14 13 8 8 7 1 1 1 0 0 0 0 0 0 0 0 0 | ||
2000 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2001 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2002 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2003 | 0 0 0 | ||
2004 | 20 20 20 184 179 149 168 163 120 21 22 21 0 0 0 105 104 92 | ||
2005 | 177 172 135 145 141 105 71 71 57 0 0 0 0 0 0 0 0 0 | ||
2006 | 66 65 55 131 127 93 151 147 98 142 137 94 118 116 76 121 119 87 | ||
2007 | 145 141 105 158 153 112 176 171 126 178 174 128 176 171 126 149 145 103 | ||
2008 | 96 95 69 31 33 31 21 22 21 16 16 16 14 14 13 18 19 18 | ||
2009 | 60 60 56 46 47 45 33 36 34 25 27 26 21 22 21 15 18 18 | ||
2010 | 12 15 15 11 13 13 9 11 11 8 10 10 8 10 10 8 9 9 | ||
2011 | 7 9 9 7 9 9 7 9 9 7 9 9 7 9 9 8 9 9 | ||
2012 | 8 9 9 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
2013 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
2014 | 8 10 10 10 12 12 26 28 27 31 33 31 38 39 37 43 45 43 | ||
2015 | 51 52 50 55 56 53 60 60 56 63 64 60 65 66 61 68 70 65 | ||
2016 | 63 64 60 96 95 69 158 153 112 178 174 128 188 184 146 194 189 146 | ||
2017 | 194 189 146 188 184 146 184 181 136 176 171 126 171 165 117 173 167 111 | ||
2018 | 173 167 111 165 161 109 171 165 117 174 170 121 176 171 126 178 174 128 | ||
2019 | 178 174 128 174 170 121 160 154 106 149 143 98 149 143 98 125 122 87 | ||
2020 | 71 71 57 16 16 16 16 16 16 17 17 17 17 17 17 17 17 17 | ||
2021 | 17 17 17 17 17 17 17 17 17 18 19 18 19 20 19 20 20 20 | ||
2022 | 21 22 21 21 22 21 21 22 21 22 24 23 21 22 21 21 22 21 | ||
2023 | 21 22 21 19 20 19 18 19 18 16 16 16 14 14 13 11 11 11 | ||
2024 | 3 3 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2025 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2026 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2027 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2028 | 0 0 0 | ||
2029 | 0 0 0 105 104 92 197 193 154 110 109 94 9 9 8 36 38 35 | ||
2030 | 121 119 87 131 127 93 96 95 69 18 19 17 30 31 28 66 65 55 | ||
2031 | 96 95 69 142 137 94 160 154 106 160 154 106 160 154 106 168 163 120 | ||
2032 | 184 181 136 194 191 148 197 193 154 197 193 154 194 189 146 168 163 120 | ||
2033 | 125 122 87 46 47 43 18 19 18 15 15 15 13 13 13 14 14 13 | ||
2034 | 55 57 54 43 45 43 32 34 33 25 27 26 18 22 22 17 17 17 | ||
2035 | 12 14 14 10 12 12 9 11 11 8 10 10 8 9 9 7 9 9 | ||
2036 | 6 8 8 7 9 9 7 9 9 7 9 9 7 9 9 7 9 9 | ||
2037 | 7 9 9 8 9 9 8 9 9 8 10 10 8 10 10 8 10 10 | ||
2038 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
2039 | 8 10 10 32 34 33 41 42 42 35 37 36 39 40 39 37 39 37 | ||
2040 | 35 37 36 55 57 54 60 60 56 63 64 60 65 66 61 65 66 61 | ||
2041 | 61 63 57 115 113 82 168 163 120 194 191 148 204 201 155 210 208 158 | ||
2042 | 210 208 158 210 208 158 197 193 154 194 189 146 186 182 128 176 171 126 | ||
2043 | 174 170 121 176 171 126 186 182 128 190 186 136 194 191 148 197 193 154 | ||
2044 | 197 193 154 188 184 146 181 176 137 174 170 121 165 161 109 142 137 94 | ||
2045 | 82 81 62 24 26 24 16 16 16 16 16 16 16 16 16 16 16 16 | ||
2046 | 17 17 17 17 17 17 17 17 17 17 17 17 18 19 18 19 20 19 | ||
2047 | 19 20 19 19 20 19 20 20 20 19 20 19 19 20 19 18 19 18 | ||
2048 | 17 17 17 15 15 15 13 13 13 12 12 12 6 7 7 0 0 0 | ||
2049 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2050 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2051 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2052 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2053 | 0 0 0 | ||
2054 | 0 0 0 17 18 17 137 133 100 115 113 82 53 55 47 19 20 18 | ||
2055 | 103 101 77 144 139 99 137 133 100 115 113 82 137 133 100 156 151 111 | ||
2056 | 158 153 112 164 159 111 171 165 117 174 170 121 178 174 128 194 189 146 | ||
2057 | 204 201 155 214 212 158 214 212 158 214 212 158 210 208 158 188 184 146 | ||
2058 | 158 153 112 87 86 72 17 17 17 13 13 13 13 13 13 15 15 15 | ||
2059 | 55 56 53 43 45 43 32 34 33 24 26 24 17 20 20 16 16 16 | ||
2060 | 12 14 14 10 12 12 8 10 10 8 10 10 7 9 9 6 8 8 | ||
2061 | 6 8 8 6 8 8 6 8 8 7 9 9 7 9 9 7 9 9 | ||
2062 | 7 9 9 7 9 9 7 9 9 7 9 9 8 9 9 8 10 10 | ||
2063 | 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 8 10 10 | ||
2064 | 8 10 10 110 109 94 84 83 72 49 51 48 26 28 27 8 10 10 | ||
2065 | 8 9 9 51 52 50 58 59 55 63 64 60 63 64 60 63 64 60 | ||
2066 | 66 65 55 134 131 96 181 176 137 210 208 158 214 212 158 239 239 170 | ||
2067 | 239 239 170 224 223 159 210 208 158 204 201 155 194 189 146 186 182 128 | ||
2068 | 186 182 128 184 181 136 194 189 146 204 201 155 210 208 158 210 208 158 | ||
2069 | 210 208 158 210 208 158 197 193 154 190 186 136 176 171 126 155 149 109 | ||
2070 | 118 116 76 36 38 35 15 15 15 16 16 16 16 16 16 16 16 16 | ||
2071 | 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 17 17 17 | ||
2072 | 17 17 17 17 17 17 17 17 17 16 16 16 16 16 16 15 15 15 | ||
2073 | 13 13 13 12 12 12 8 8 7 2 2 2 0 0 0 0 0 0 | ||
2074 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2075 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2076 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2077 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2078 | 0 0 0 | ||
2079 | 0 0 0 0 0 0 53 55 47 103 101 77 96 95 69 53 55 47 | ||
2080 | 103 101 77 158 153 112 177 172 135 184 179 149 188 184 146 197 193 154 | ||
2081 | 194 189 146 190 186 136 184 181 136 184 181 136 194 189 146 210 208 158 | ||
2082 | 214 212 158 239 239 170 251 251 187 251 251 187 224 223 159 204 201 155 | ||
2083 | 177 172 135 121 119 87 30 31 28 13 13 13 12 12 12 39 40 39 | ||
2084 | 60 60 56 43 45 43 32 34 33 23 25 24 18 19 18 13 16 16 | ||
2085 | 13 13 13 9 11 11 8 10 10 8 9 9 6 8 8 6 8 8 | ||
2086 | 6 8 8 6 8 8 6 8 8 6 8 8 6 8 8 7 9 9 | ||
2087 | 7 9 9 7 9 9 7 9 9 7 9 9 7 9 9 7 9 9 | ||
2088 | 7 9 9 8 9 9 8 9 9 8 10 10 8 10 10 8 10 10 | ||
2089 | 14 17 17 197 193 154 158 153 112 55 57 54 7 9 9 7 9 9 | ||
2090 | 8 10 10 51 52 50 58 59 55 60 60 56 63 64 60 63 64 60 | ||
2091 | 71 71 57 155 149 109 194 191 148 214 212 158 251 251 187 251 251 187 | ||
2092 | 251 251 187 251 251 187 239 239 170 210 208 158 197 193 154 190 186 136 | ||
2093 | 190 186 136 194 189 146 204 201 155 210 208 158 224 223 159 239 239 170 | ||
2094 | 239 239 170 224 223 159 210 208 158 204 201 155 190 186 136 164 159 111 | ||
2095 | 125 122 87 40 41 39 15 15 15 15 15 15 15 15 15 15 15 15 | ||
2096 | 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 | ||
2097 | 16 16 16 16 16 16 15 15 15 14 14 13 13 13 13 12 12 12 | ||
2098 | 8 9 9 3 3 3 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2099 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2100 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2101 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2102 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2103 | 0 0 0 | ||
2104 | 0 0 0 0 0 0 21 22 20 96 95 69 125 122 87 121 119 87 | ||
2105 | 144 139 99 177 172 135 197 193 154 210 208 158 214 212 158 214 212 158 | ||
2106 | 210 208 158 204 201 155 194 191 148 194 189 146 204 201 155 214 212 158 | ||
2107 | 239 239 170 251 251 187 251 251 187 251 251 187 251 251 187 214 212 158 | ||
2108 | 188 184 146 145 141 105 53 55 47 12 12 12 15 15 15 63 64 60 | ||
2109 | 63 64 60 41 42 42 31 33 31 23 24 24 17 18 17 12 15 15 | ||
2110 | 11 13 13 9 11 11 8 9 9 7 9 9 6 8 8 6 8 8 | ||
2111 | 6 7 7 6 7 7 6 8 8 6 8 8 6 8 8 6 8 8 | ||
2112 | 6 8 8 7 9 9 7 9 9 7 9 9 7 9 9 7 9 9 | ||
2113 | 7 9 9 7 9 9 7 9 9 7 9 9 7 9 9 8 8 7 | ||
2114 | 43 45 43 251 251 187 156 151 111 8 10 10 7 9 9 7 9 9 | ||
2115 | 21 22 21 51 52 50 55 56 53 55 57 54 58 59 55 58 59 55 | ||
2116 | 75 75 61 158 153 112 197 193 154 224 223 159 251 251 187 251 251 187 | ||
2117 | 251 251 187 251 251 187 251 251 187 214 212 158 204 201 155 194 189 146 | ||
2118 | 190 186 136 197 193 154 210 208 158 224 223 159 251 251 187 251 251 187 | ||
2119 | 251 251 187 251 251 187 239 239 170 210 208 158 197 193 154 176 171 126 | ||
2120 | 125 122 87 36 38 35 14 14 13 14 14 13 15 15 15 15 15 15 | ||
2121 | 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 | ||
2122 | 15 15 15 14 14 13 13 13 13 12 12 12 10 10 9 3 4 4 | ||
2123 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2124 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2125 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2126 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2127 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2128 | 0 0 0 | ||
2129 | 0 0 0 0 0 0 7 7 5 71 71 57 131 127 93 158 153 112 | ||
2130 | 177 172 135 197 193 154 214 212 158 239 239 170 251 251 187 251 251 187 | ||
2131 | 238 237 168 210 208 158 204 201 155 197 193 154 204 201 155 214 212 158 | ||
2132 | 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 214 212 158 | ||
2133 | 197 193 154 156 151 111 66 65 55 12 12 12 37 39 37 58 59 55 | ||
2134 | 58 59 55 41 42 42 31 33 31 22 24 23 17 17 17 12 14 14 | ||
2135 | 10 12 12 8 10 10 6 8 8 6 8 8 6 7 7 6 7 7 | ||
2136 | 6 7 7 5 7 7 6 7 7 6 7 7 6 8 8 6 8 8 | ||
2137 | 6 8 8 6 8 8 6 8 8 7 9 9 7 9 9 7 9 9 | ||
2138 | 7 9 9 6 8 8 6 8 8 6 8 8 6 8 8 6 8 8 | ||
2139 | 61 63 57 197 193 154 16 19 19 6 8 8 6 8 8 8 9 9 | ||
2140 | 41 42 42 47 48 46 51 52 50 51 52 50 55 56 53 55 56 53 | ||
2141 | 71 71 57 158 153 112 197 193 154 224 223 159 251 251 187 251 251 187 | ||
2142 | 251 251 187 251 251 187 239 239 170 214 212 158 204 201 155 194 189 146 | ||
2143 | 190 186 136 197 193 154 210 208 158 239 239 170 251 251 187 251 251 187 | ||
2144 | 251 251 187 251 251 187 251 251 187 224 223 159 204 201 155 177 172 135 | ||
2145 | 121 119 87 30 31 28 13 13 13 14 14 13 14 14 13 14 14 13 | ||
2146 | 14 14 13 14 14 13 15 15 15 15 15 15 14 14 13 13 13 13 | ||
2147 | 12 12 12 12 12 12 10 10 9 4 5 5 0 0 0 0 0 0 | ||
2148 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2149 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2150 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2151 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2152 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2153 | 0 0 0 | ||
2154 | 0 0 0 0 0 0 0 0 0 48 49 45 131 127 93 174 170 121 | ||
2155 | 194 189 146 210 208 158 239 239 170 251 251 187 251 251 187 251 251 187 | ||
2156 | 251 251 187 214 212 158 204 201 155 197 193 154 204 201 155 210 208 158 | ||
2157 | 239 239 170 251 251 187 251 251 187 251 251 187 239 239 170 214 212 158 | ||
2158 | 194 191 148 156 151 111 71 71 57 19 20 19 51 52 50 51 52 50 | ||
2159 | 51 52 50 41 42 42 30 32 31 21 22 21 17 17 17 13 13 13 | ||
2160 | 9 11 11 8 9 9 6 8 8 6 7 7 6 7 7 5 7 7 | ||
2161 | 5 6 5 5 6 5 5 7 7 5 7 7 6 7 7 6 7 7 | ||
2162 | 6 8 8 6 8 8 6 8 8 6 7 7 6 7 7 6 7 7 | ||
2163 | 6 7 7 6 8 8 6 8 8 6 8 8 6 8 8 6 8 8 | ||
2164 | 55 56 53 43 45 43 6 8 8 6 8 8 6 8 8 47 48 46 | ||
2165 | 60 60 56 47 48 46 46 47 45 47 48 46 38 39 37 10 12 12 | ||
2166 | 66 65 55 145 141 105 197 193 154 214 212 158 251 251 187 251 251 187 | ||
2167 | 251 251 187 251 251 187 224 223 159 210 208 158 194 191 148 184 181 136 | ||
2168 | 184 181 136 194 189 146 204 201 155 224 223 159 251 251 187 251 251 187 | ||
2169 | 251 251 187 251 251 187 251 251 187 239 239 170 210 208 158 181 176 137 | ||
2170 | 115 113 82 21 22 20 13 13 13 13 13 13 13 13 13 13 13 13 | ||
2171 | 14 14 13 13 13 13 13 13 13 13 13 13 12 12 12 11 11 11 | ||
2172 | 10 10 9 6 7 7 1 1 1 0 0 0 0 0 0 0 0 0 | ||
2173 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2174 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2175 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2176 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2177 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2178 | 0 0 0 | ||
2179 | 0 0 0 0 0 0 2 2 1 66 65 55 144 139 99 178 174 128 | ||
2180 | 204 201 155 214 212 158 251 251 187 251 251 187 251 251 187 251 251 187 | ||
2181 | 251 251 187 214 212 158 204 201 155 194 191 148 197 193 154 204 201 155 | ||
2182 | 214 212 158 239 239 170 239 239 170 239 239 170 214 212 158 210 208 158 | ||
2183 | 184 181 136 149 145 103 66 65 55 41 42 42 47 48 46 46 47 45 | ||
2184 | 43 45 43 39 40 39 28 31 30 21 22 21 16 16 16 10 12 12 | ||
2185 | 8 10 10 6 8 8 6 7 7 6 7 7 5 6 5 5 6 5 | ||
2186 | 5 6 5 5 6 5 5 6 5 5 6 5 5 7 7 5 7 7 | ||
2187 | 6 7 7 6 7 7 6 7 7 5 7 7 5 7 7 5 7 7 | ||
2188 | 5 7 7 6 7 7 6 7 7 6 7 7 6 7 7 6 8 8 | ||
2189 | 6 8 8 6 8 8 6 7 7 6 7 7 46 47 45 156 151 111 | ||
2190 | 105 104 92 58 59 55 43 45 43 32 34 33 6 8 8 6 8 8 | ||
2191 | 49 51 48 125 122 87 181 176 137 204 201 155 214 212 158 239 239 170 | ||
2192 | 239 239 170 214 212 158 210 208 158 197 193 154 181 176 137 176 171 126 | ||
2193 | 176 171 126 184 181 136 197 193 154 210 208 158 239 239 170 251 251 187 | ||
2194 | 251 251 187 251 251 187 251 251 187 251 251 187 210 208 158 177 172 135 | ||
2195 | 99 98 80 13 13 13 12 12 12 12 12 12 13 13 13 12 12 12 | ||
2196 | 12 12 12 12 12 12 11 11 11 11 11 11 8 9 9 4 5 5 | ||
2197 | 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2198 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2199 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2200 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2201 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2202 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2203 | 0 0 0 | ||
2204 | 0 0 0 0 0 0 1 1 0 61 61 53 142 137 94 181 176 137 | ||
2205 | 204 201 155 224 223 159 251 251 187 251 251 187 251 251 187 251 251 187 | ||
2206 | 251 251 187 214 212 158 197 193 154 190 186 136 184 181 136 188 184 146 | ||
2207 | 197 193 154 204 201 155 210 208 158 210 208 158 204 201 155 194 189 146 | ||
2208 | 176 171 126 134 131 96 66 65 55 43 45 43 41 42 42 39 40 39 | ||
2209 | 35 37 36 33 36 34 27 29 28 20 20 20 15 15 15 9 11 11 | ||
2210 | 8 9 9 6 7 7 5 6 5 5 6 5 4 5 5 4 5 5 | ||
2211 | 4 5 5 4 5 5 4 5 5 4 5 5 5 6 5 4 5 5 | ||
2212 | 4 5 5 5 6 5 4 5 5 5 6 5 5 6 5 5 6 5 | ||
2213 | 5 7 7 5 7 7 5 7 7 5 7 7 5 7 7 5 7 7 | ||
2214 | 6 7 7 6 7 7 6 7 7 28 31 30 184 179 149 184 179 149 | ||
2215 | 145 141 105 84 83 72 27 29 28 5 7 7 5 6 5 16 16 16 | ||
2216 | 43 44 41 96 95 69 158 153 112 188 184 146 204 201 155 210 208 158 | ||
2217 | 204 201 155 197 193 154 184 179 149 177 172 135 168 163 120 164 159 111 | ||
2218 | 164 159 111 174 170 121 184 181 136 197 193 154 214 212 158 251 251 187 | ||
2219 | 251 251 187 251 251 187 251 251 187 251 251 187 210 208 158 177 172 135 | ||
2220 | 71 71 57 11 11 11 12 12 12 11 11 11 11 11 11 11 11 11 | ||
2221 | 10 10 9 10 10 9 8 8 7 3 4 4 0 0 0 0 0 0 | ||
2222 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2223 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2224 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2225 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2226 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2227 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2228 | 0 0 0 | ||
2229 | 0 0 0 0 0 0 0 0 0 31 33 31 121 119 87 176 171 126 | ||
2230 | 197 193 154 214 212 158 251 251 187 251 251 187 251 251 187 251 251 187 | ||
2231 | 239 239 170 210 208 158 194 189 146 178 174 128 174 170 121 176 171 126 | ||
2232 | 177 172 135 181 176 137 184 179 149 184 179 149 181 176 137 178 174 128 | ||
2233 | 158 153 112 121 119 87 53 55 47 37 39 37 33 36 34 30 32 31 | ||
2234 | 27 29 28 25 27 26 24 26 24 19 20 19 13 13 13 8 10 10 | ||
2235 | 6 8 8 6 7 7 5 6 5 4 5 5 4 5 5 4 5 5 | ||
2236 | 4 5 5 4 5 5 4 5 5 3 4 4 3 4 4 4 5 5 | ||
2237 | 4 5 5 4 5 5 4 5 5 4 5 5 4 5 5 4 5 5 | ||
2238 | 5 6 5 5 6 5 5 6 5 5 6 5 5 6 5 5 6 5 | ||
2239 | 5 6 5 5 6 5 12 14 14 145 141 105 184 179 149 177 172 135 | ||
2240 | 90 89 73 21 22 21 5 6 5 5 6 5 4 5 5 37 39 37 | ||
2241 | 38 39 37 61 61 53 134 131 96 168 163 120 184 181 136 188 184 146 | ||
2242 | 184 179 149 177 172 135 168 163 120 164 159 111 155 149 109 151 147 98 | ||
2243 | 151 147 98 164 159 111 176 171 126 184 179 149 210 208 158 239 239 170 | ||
2244 | 251 251 187 251 251 187 251 251 187 239 239 170 210 208 158 158 153 112 | ||
2245 | 46 47 43 10 10 9 10 10 9 10 10 9 8 9 9 8 9 9 | ||
2246 | 6 7 7 3 3 3 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2247 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2248 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2249 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2250 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2251 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2252 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2253 | 0 0 0 | ||
2254 | 0 0 0 0 0 0 0 0 0 13 12 7 82 81 62 158 153 112 | ||
2255 | 188 184 146 210 208 158 239 239 170 251 251 187 251 251 187 251 251 187 | ||
2256 | 224 223 159 204 201 155 184 181 136 171 165 117 164 159 111 160 154 106 | ||
2257 | 158 153 112 164 159 111 168 163 120 168 163 120 168 163 120 164 159 111 | ||
2258 | 142 137 94 96 95 69 43 44 41 27 29 28 26 28 27 23 24 24 | ||
2259 | 21 22 21 18 19 18 17 17 17 18 19 18 13 13 13 8 8 7 | ||
2260 | 6 7 7 5 6 5 4 5 5 3 4 4 3 4 4 3 4 4 | ||
2261 | 3 4 4 3 4 4 3 3 3 3 3 3 3 4 4 3 4 4 | ||
2262 | 3 4 4 3 4 4 4 5 5 4 5 5 4 5 5 4 5 5 | ||
2263 | 4 5 5 4 5 5 4 5 5 4 5 5 4 5 5 4 5 5 | ||
2264 | 4 5 5 4 5 5 4 5 5 4 5 5 4 5 5 4 5 5 | ||
2265 | 4 5 5 4 5 5 4 5 5 4 5 5 31 33 31 65 66 61 | ||
2266 | 37 39 37 38 39 37 96 95 69 144 139 99 168 163 120 174 170 121 | ||
2267 | 168 163 120 164 159 111 155 149 109 149 145 103 149 143 98 142 137 94 | ||
2268 | 149 143 98 151 147 98 164 159 111 177 172 135 197 193 154 210 208 158 | ||
2269 | 251 251 187 251 251 187 251 251 187 239 239 170 197 193 154 137 133 100 | ||
2270 | 24 26 24 8 9 9 8 9 9 8 8 7 6 7 7 2 2 2 | ||
2271 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2272 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2273 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2274 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2275 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2276 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2277 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2278 | 0 0 0 | ||
2279 | 0 0 0 0 0 0 0 0 0 0 0 0 46 47 43 125 122 87 | ||
2280 | 176 171 126 197 193 154 210 208 158 239 239 170 251 251 187 239 239 170 | ||
2281 | 214 212 158 197 193 154 181 176 137 164 159 111 151 147 98 149 143 98 | ||
2282 | 149 143 98 149 143 98 149 145 103 155 149 109 160 154 106 149 143 98 | ||
2283 | 118 116 76 82 81 62 30 31 28 21 22 21 19 20 19 17 17 17 | ||
2284 | 14 14 13 12 12 12 10 10 9 12 12 12 10 12 12 6 8 8 | ||
2285 | 4 5 5 3 4 4 3 4 4 3 4 4 3 3 3 3 3 3 | ||
2286 | 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 | ||
2287 | 3 4 4 3 4 4 3 4 4 3 4 4 3 4 4 4 5 5 | ||
2288 | 4 5 5 3 4 4 3 4 4 3 4 4 3 4 4 3 4 4 | ||
2289 | 4 5 5 4 5 5 4 5 5 4 5 5 4 5 5 4 5 5 | ||
2290 | 4 5 5 3 4 4 3 4 4 23 24 24 110 109 94 72 73 67 | ||
2291 | 39 40 39 22 24 23 46 47 43 103 101 77 142 137 94 155 149 109 | ||
2292 | 160 154 106 155 149 109 149 143 98 142 137 94 142 137 94 142 137 94 | ||
2293 | 142 137 94 149 143 98 155 149 109 176 171 126 184 179 149 210 208 158 | ||
2294 | 239 239 170 251 251 187 251 251 187 214 212 158 184 179 149 105 104 92 | ||
2295 | 10 10 9 6 7 7 3 4 4 1 1 1 0 0 0 0 0 0 | ||
2296 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2297 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2298 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2299 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2300 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2301 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2302 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2303 | 0 0 0 | ||
2304 | 0 0 0 0 0 0 0 0 0 0 0 0 12 12 9 82 81 62 | ||
2305 | 149 145 103 181 176 137 197 193 154 210 208 158 214 212 158 214 212 158 | ||
2306 | 210 208 158 197 193 154 177 172 135 158 153 112 149 143 98 142 137 94 | ||
2307 | 142 137 94 142 137 94 149 143 98 151 147 98 151 147 98 131 127 93 | ||
2308 | 103 101 77 71 71 57 22 24 23 15 15 15 13 13 13 11 11 11 | ||
2309 | 8 9 9 6 7 7 6 7 7 4 5 5 8 9 9 6 7 7 | ||
2310 | 4 5 5 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 | ||
2311 | 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 | ||
2312 | 2 3 3 2 3 3 2 3 3 3 4 4 3 4 4 3 4 4 | ||
2313 | 3 4 4 3 4 4 3 3 3 3 4 4 3 4 4 3 4 4 | ||
2314 | 3 4 4 3 4 4 3 4 4 3 4 4 3 4 4 3 4 4 | ||
2315 | 3 4 4 3 4 4 21 22 21 145 141 105 145 141 105 72 73 67 | ||
2316 | 17 18 17 3 4 4 21 22 20 66 65 55 118 116 76 142 137 94 | ||
2317 | 149 143 98 151 147 98 149 143 98 142 137 94 142 137 94 142 137 94 | ||
2318 | 142 137 94 149 143 98 155 149 109 168 163 120 184 179 149 210 208 158 | ||
2319 | 239 239 170 251 251 187 251 251 187 210 208 158 177 172 135 71 71 57 | ||
2320 | 3 3 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2321 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2322 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2323 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2324 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2325 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2326 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2327 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2328 | 0 0 0 | ||
2329 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 36 38 35 | ||
2330 | 115 113 82 158 153 112 181 176 137 197 193 154 204 201 155 210 208 158 | ||
2331 | 204 201 155 188 184 146 177 172 135 164 159 111 149 145 103 142 137 94 | ||
2332 | 142 137 94 142 137 94 149 143 98 151 147 98 149 143 98 125 122 87 | ||
2333 | 96 95 69 61 61 53 16 17 12 8 9 9 8 8 7 6 7 7 | ||
2334 | 4 5 5 3 4 4 3 3 3 3 3 3 3 3 3 5 6 5 | ||
2335 | 3 4 4 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 | ||
2336 | 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 2 2 | ||
2337 | 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 | ||
2338 | 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 | ||
2339 | 3 3 3 2 3 3 2 3 3 3 4 4 3 4 4 3 4 4 | ||
2340 | 3 4 4 3 4 4 3 4 4 8 9 9 8 8 7 3 3 3 | ||
2341 | 3 3 3 3 3 3 9 9 8 36 38 35 82 81 62 118 116 76 | ||
2342 | 142 137 94 151 147 98 151 147 98 151 147 98 149 143 98 149 143 98 | ||
2343 | 149 143 98 151 147 98 160 154 106 176 171 126 188 184 146 210 208 158 | ||
2344 | 239 239 170 251 251 187 239 239 170 210 208 158 156 151 111 31 33 31 | ||
2345 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2346 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2347 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2348 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2349 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2350 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2351 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2352 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2353 | 0 0 0 | ||
2354 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 7 5 | ||
2355 | 66 65 55 125 122 87 158 153 112 181 176 137 194 189 146 197 193 154 | ||
2356 | 197 193 154 184 179 149 177 172 135 168 163 120 156 151 111 151 147 98 | ||
2357 | 151 147 98 151 147 98 151 147 98 161 156 96 149 143 98 118 116 76 | ||
2358 | 82 81 62 53 55 47 12 12 9 4 5 5 3 4 4 3 3 3 | ||
2359 | 3 3 3 3 3 3 2 2 2 2 2 2 1 1 1 1 2 2 | ||
2360 | 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 | ||
2361 | 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 1 2 2 | ||
2362 | 1 2 2 1 2 2 1 2 2 2 2 2 2 2 2 2 3 3 | ||
2363 | 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 | ||
2364 | 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 | ||
2365 | 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 | ||
2366 | 3 3 3 3 3 3 72 73 67 61 61 53 53 55 47 96 95 69 | ||
2367 | 131 127 93 151 147 98 161 156 96 161 156 96 151 147 98 151 147 98 | ||
2368 | 161 156 96 160 154 106 164 159 111 177 172 135 197 193 154 210 208 158 | ||
2369 | 239 239 170 251 251 187 224 223 159 197 193 154 131 127 93 9 9 8 | ||
2370 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2371 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2372 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2373 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2374 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2375 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2376 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2377 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2378 | 0 0 0 | ||
2379 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2380 | 24 26 24 82 81 62 131 127 93 164 159 111 178 174 128 188 184 146 | ||
2381 | 188 184 146 188 184 146 181 176 137 176 171 126 168 163 120 164 159 111 | ||
2382 | 160 154 106 160 154 106 160 154 106 160 154 106 151 147 98 125 122 87 | ||
2383 | 82 81 62 61 61 53 12 12 9 3 3 3 3 3 3 2 2 2 | ||
2384 | 2 2 2 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 | ||
2385 | 0 0 0 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2386 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2387 | 1 1 1 1 1 1 1 2 2 1 2 2 1 2 2 1 2 2 | ||
2388 | 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 | ||
2389 | 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 | ||
2390 | 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 | ||
2391 | 2 3 3 30 32 31 72 73 67 31 33 31 36 38 35 82 81 62 | ||
2392 | 118 116 76 149 143 98 161 156 96 161 156 96 161 156 96 160 154 106 | ||
2393 | 165 161 109 165 161 109 176 171 126 188 184 146 204 201 155 214 212 158 | ||
2394 | 239 239 170 239 239 170 214 212 158 184 179 149 82 81 62 0 0 0 | ||
2395 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2396 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2397 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2398 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2399 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2400 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2401 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2402 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2403 | 0 0 0 | ||
2404 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2405 | 2 2 2 43 44 41 96 95 69 131 127 93 160 154 106 176 171 126 | ||
2406 | 184 181 136 184 181 136 184 181 136 181 176 137 178 174 128 174 170 121 | ||
2407 | 171 165 117 173 167 111 173 167 111 173 167 111 160 154 106 131 127 93 | ||
2408 | 96 95 69 66 65 55 16 17 12 2 2 2 1 1 1 1 1 1 | ||
2409 | 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2410 | 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2411 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2412 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2413 | 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 2 2 2 | ||
2414 | 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 | ||
2415 | 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 | ||
2416 | 2 2 2 2 2 2 2 2 2 10 9 6 30 31 28 71 71 57 | ||
2417 | 118 116 76 149 143 98 165 161 109 165 161 109 165 161 109 173 167 111 | ||
2418 | 173 167 111 176 171 126 184 181 136 197 193 154 210 208 158 224 223 159 | ||
2419 | 251 251 187 239 239 170 210 208 158 168 163 120 40 41 39 0 0 0 | ||
2420 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2421 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2422 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2423 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2424 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2425 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2426 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2427 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2428 | 0 0 0 | ||
2429 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2430 | 0 0 0 13 12 7 61 61 53 96 95 69 131 127 93 160 154 106 | ||
2431 | 176 171 126 184 181 136 184 181 136 188 184 146 184 181 136 184 181 136 | ||
2432 | 184 181 136 186 182 128 186 182 128 178 174 128 174 170 121 149 145 103 | ||
2433 | 118 116 76 82 81 62 21 22 20 1 1 1 1 1 1 0 0 0 | ||
2434 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2435 | 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 | ||
2436 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2437 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2438 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 | ||
2439 | 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 2 2 2 | ||
2440 | 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 | ||
2441 | 2 2 2 2 2 2 2 2 2 3 3 3 30 31 28 66 65 55 | ||
2442 | 118 116 76 149 143 98 165 161 109 173 167 111 173 167 111 174 170 121 | ||
2443 | 186 182 128 190 186 136 197 193 154 210 208 158 224 223 159 251 251 187 | ||
2444 | 251 251 187 239 239 170 197 193 154 137 133 100 12 12 9 0 0 0 | ||
2445 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2446 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2447 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2448 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2449 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2450 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2451 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2452 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2453 | 0 0 0 | ||
2454 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2455 | 0 0 0 0 0 0 30 31 28 71 71 57 103 101 77 134 131 96 | ||
2456 | 164 159 111 176 171 126 184 181 136 188 184 146 194 189 146 197 193 154 | ||
2457 | 197 193 154 197 193 154 194 191 148 194 189 146 190 186 136 176 171 126 | ||
2458 | 145 141 105 103 101 77 40 41 39 0 0 0 0 0 0 0 0 0 | ||
2459 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2460 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2461 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2462 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2463 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2464 | 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 1 2 2 | ||
2465 | 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2 | ||
2466 | 1 2 2 1 2 2 1 2 2 1 2 2 30 31 28 71 71 57 | ||
2467 | 118 116 76 160 154 106 173 167 111 178 174 128 186 182 128 190 186 136 | ||
2468 | 194 191 148 204 201 155 210 208 158 224 223 159 251 251 187 251 251 187 | ||
2469 | 251 251 187 214 212 158 184 179 149 84 83 72 0 0 0 0 0 0 | ||
2470 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2471 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2472 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2473 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2474 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2475 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2476 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2477 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2478 | 0 0 0 | ||
2479 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2480 | 0 0 0 0 0 0 5 5 3 43 44 41 82 81 62 103 101 77 | ||
2481 | 142 137 94 165 161 109 178 174 128 190 186 136 197 193 154 204 201 155 | ||
2482 | 210 208 158 210 208 158 210 208 158 210 208 158 210 208 158 197 193 154 | ||
2483 | 177 172 135 145 141 105 79 78 62 5 4 3 0 0 0 0 0 0 | ||
2484 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2485 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2486 | 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2487 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2488 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2489 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2490 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2491 | 1 1 1 1 1 1 1 2 2 1 2 2 30 31 28 82 81 62 | ||
2492 | 142 137 94 165 161 109 178 174 128 190 186 136 194 191 148 204 201 155 | ||
2493 | 210 208 158 214 212 158 239 239 170 251 251 187 251 251 187 251 251 187 | ||
2494 | 251 251 187 210 208 158 168 163 120 36 38 35 0 0 0 0 0 0 | ||
2495 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2496 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2497 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2498 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2499 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2500 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2501 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2502 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2503 | 0 0 0 | ||
2504 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2505 | 0 0 0 0 0 0 0 0 0 16 17 12 53 55 47 82 81 62 | ||
2506 | 118 116 76 151 147 98 171 165 117 184 181 136 194 191 148 210 208 158 | ||
2507 | 214 212 158 224 223 159 239 239 170 239 239 170 224 223 159 214 212 158 | ||
2508 | 197 193 154 176 171 126 115 113 82 24 26 24 0 0 0 0 0 0 | ||
2509 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2510 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2511 | 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 | ||
2512 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2513 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2514 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2515 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2516 | 1 1 1 1 1 1 1 1 1 1 1 1 40 41 39 103 101 77 | ||
2517 | 151 147 98 176 171 126 190 186 136 197 193 154 210 208 158 214 212 158 | ||
2518 | 239 239 170 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 | ||
2519 | 239 239 170 197 193 154 110 109 94 3 4 3 0 0 0 0 0 0 | ||
2520 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2521 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2522 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2523 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2524 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2525 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2526 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2527 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2528 | 0 0 0 | ||
2529 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2530 | 0 0 0 0 0 0 0 0 0 0 0 0 30 31 28 66 65 55 | ||
2531 | 96 95 69 125 122 87 160 154 106 178 174 128 194 189 146 204 201 155 | ||
2532 | 214 212 158 239 239 170 251 251 187 251 251 187 251 251 187 239 239 170 | ||
2533 | 210 208 158 188 184 146 149 145 103 61 61 53 0 0 0 0 0 0 | ||
2534 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2535 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2536 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2537 | 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2538 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2539 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2540 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2541 | 1 1 1 1 1 1 1 1 1 1 1 1 61 61 53 131 127 93 | ||
2542 | 164 159 111 184 181 136 197 193 154 210 208 158 224 223 159 251 251 187 | ||
2543 | 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 | ||
2544 | 210 208 158 168 163 120 43 44 41 0 0 0 0 0 0 0 0 0 | ||
2545 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2546 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2547 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2548 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2549 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2550 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2551 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2552 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2553 | 0 0 0 | ||
2554 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2555 | 0 0 0 0 0 0 0 0 0 0 0 0 4 3 2 36 38 35 | ||
2556 | 71 71 57 96 95 69 142 137 94 165 161 109 184 181 136 197 193 154 | ||
2557 | 210 208 158 239 239 170 251 251 187 251 251 187 251 251 187 251 251 187 | ||
2558 | 214 212 158 197 193 154 168 163 120 103 101 77 7 7 5 0 0 0 | ||
2559 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2560 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2561 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2562 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 | ||
2563 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2564 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2565 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2566 | 1 1 1 0 0 0 0 0 0 0 0 0 82 81 62 142 137 94 | ||
2567 | 174 170 121 194 189 146 210 208 158 224 223 159 251 251 187 251 251 187 | ||
2568 | 251 251 187 251 251 187 251 251 187 251 251 187 251 251 187 224 223 159 | ||
2569 | 184 179 149 99 98 80 3 3 3 0 0 0 0 0 0 0 0 0 | ||
2570 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2571 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2572 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2573 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2574 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2575 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2576 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2577 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2578 | 0 0 0 | ||
2579 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2580 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 7 5 | ||
2581 | 43 44 41 82 81 62 118 116 76 142 137 94 171 165 117 190 186 136 | ||
2582 | 204 201 155 224 223 159 251 251 187 251 251 187 251 251 187 251 251 187 | ||
2583 | 214 212 158 197 193 154 174 170 121 125 122 87 30 31 28 0 0 0 | ||
2584 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2585 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2586 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2587 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2588 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 | ||
2589 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 | ||
2590 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2591 | 0 0 0 0 0 0 0 0 0 3 4 3 82 81 62 149 143 98 | ||
2592 | 176 171 126 194 191 148 210 208 158 239 239 170 251 251 187 251 251 187 | ||
2593 | 251 251 187 251 251 187 251 251 187 251 251 187 239 239 170 204 201 155 | ||
2594 | 145 141 105 30 31 28 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2595 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2596 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2597 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2598 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2599 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2600 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2601 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2602 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2603 | 0 0 0 | ||
2604 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2605 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2606 | 10 9 6 46 47 43 82 81 62 118 116 76 149 143 98 174 170 121 | ||
2607 | 194 189 146 210 208 158 224 223 159 251 251 187 251 251 187 224 223 159 | ||
2608 | 210 208 158 194 191 148 174 170 121 134 131 96 53 55 47 0 0 0 | ||
2609 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2610 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2611 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2612 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2613 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2614 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2615 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2616 | 0 0 0 0 0 0 0 0 0 7 7 5 96 95 69 149 143 98 | ||
2617 | 176 171 126 194 191 148 210 208 158 239 239 170 251 251 187 251 251 187 | ||
2618 | 251 251 187 251 251 187 251 251 187 239 239 170 210 208 158 177 172 135 | ||
2619 | 75 75 61 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2620 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2621 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2622 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2623 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2624 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2625 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2626 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2627 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2628 | 0 0 0 | ||
2629 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2630 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2631 | 0 0 0 10 9 6 46 47 43 82 81 62 118 116 76 149 143 98 | ||
2632 | 176 171 126 194 191 148 210 208 158 214 212 158 214 212 158 210 208 158 | ||
2633 | 197 193 154 184 181 136 164 159 111 131 127 93 53 55 47 0 0 0 | ||
2634 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2635 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2636 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2637 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2638 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2639 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2640 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2641 | 0 0 0 0 0 0 0 0 0 7 7 5 96 95 69 149 143 98 | ||
2642 | 174 170 121 194 189 146 204 201 155 214 212 158 239 239 170 251 251 187 | ||
2643 | 251 251 187 251 251 187 239 239 170 210 208 158 184 179 149 110 109 94 | ||
2644 | 12 12 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2645 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2646 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2647 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2648 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2649 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2650 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2651 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2652 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2653 | 0 0 0 | ||
2654 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2655 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2656 | 0 0 0 0 0 0 10 9 6 43 44 41 82 81 62 115 113 82 | ||
2657 | 144 139 99 168 163 120 188 184 146 197 193 154 197 193 154 194 189 146 | ||
2658 | 184 181 136 174 170 121 151 147 98 118 116 76 36 38 35 0 0 0 | ||
2659 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2660 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2661 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2662 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2663 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2664 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2665 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2666 | 0 0 0 0 0 0 0 0 0 4 3 2 82 81 62 142 137 94 | ||
2667 | 171 165 117 186 182 128 194 191 148 210 208 158 214 212 158 224 223 159 | ||
2668 | 239 239 170 224 223 159 210 208 158 184 179 149 137 133 100 36 38 35 | ||
2669 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2670 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2671 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2672 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2673 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2674 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2675 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2676 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2677 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2678 | 0 0 0 | ||
2679 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2680 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2681 | 0 0 0 0 0 0 0 0 0 7 7 5 36 38 35 71 71 57 | ||
2682 | 103 101 77 131 127 93 155 149 109 168 163 120 168 163 120 168 163 120 | ||
2683 | 164 159 111 149 143 98 125 122 87 82 81 62 13 12 7 0 0 0 | ||
2684 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2685 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2686 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2687 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2688 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2689 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2690 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2691 | 0 0 0 0 0 0 0 0 0 0 0 0 61 61 53 125 122 87 | ||
2692 | 160 154 106 174 170 121 184 181 136 194 189 146 204 201 155 210 208 158 | ||
2693 | 210 208 158 204 201 155 184 179 149 145 141 105 61 61 53 0 0 0 | ||
2694 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2695 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2696 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2697 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2698 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2699 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2700 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2701 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2702 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2703 | 0 0 0 | ||
2704 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2705 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2706 | 0 0 0 0 0 0 0 0 0 0 0 0 3 3 2 30 31 28 | ||
2707 | 61 61 53 82 81 62 103 101 77 121 119 87 125 122 87 125 122 87 | ||
2708 | 118 116 76 103 101 77 79 78 62 24 26 24 0 0 0 0 0 0 | ||
2709 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2710 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2711 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2712 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2713 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2714 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2715 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2716 | 0 0 0 0 0 0 0 0 0 0 0 0 25 27 25 96 95 69 | ||
2717 | 142 137 94 160 154 106 171 165 117 178 174 128 184 181 136 184 181 136 | ||
2718 | 181 176 137 177 172 135 145 141 105 75 75 61 5 5 3 0 0 0 | ||
2719 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2720 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2721 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2722 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2723 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2724 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2725 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2726 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2727 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2728 | 0 0 0 | ||
2729 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2730 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2731 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2732 | 16 17 12 40 41 39 61 61 53 71 71 57 71 71 57 71 71 57 | ||
2733 | 66 65 55 43 44 41 12 12 9 0 0 0 0 0 0 0 0 0 | ||
2734 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2735 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2736 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2737 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2738 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2739 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2740 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2741 | 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 46 47 43 | ||
2742 | 96 95 69 125 122 87 142 137 94 149 145 103 155 149 109 155 149 109 | ||
2743 | 145 141 105 121 119 87 66 65 55 7 7 5 0 0 0 0 0 0 | ||
2744 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2745 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2746 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2747 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2748 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2749 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2750 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2751 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2752 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2753 | 0 0 0 | ||
2754 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2755 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2756 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2757 | 0 0 0 1 1 1 16 17 12 24 26 24 25 27 25 19 20 18 | ||
2758 | 7 7 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2759 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2760 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2761 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2762 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2763 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2764 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2765 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2766 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 1 | ||
2767 | 25 27 25 61 61 53 82 81 62 96 95 69 96 95 69 82 81 62 | ||
2768 | 61 61 53 25 27 25 2 2 1 0 0 0 0 0 0 0 0 0 | ||
2769 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2770 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2771 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2772 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2773 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2774 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2775 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2776 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2777 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2778 | 0 0 0 | ||
2779 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2780 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2781 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2782 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2783 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2784 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2785 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2786 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2787 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2788 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2789 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2790 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2791 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2792 | 0 0 0 0 0 0 5 6 5 13 12 7 10 9 6 3 4 3 | ||
2793 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2794 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2795 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2796 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2797 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2798 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2799 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2800 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2801 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2802 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2803 | 0 0 0 | ||
2804 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2805 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2806 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2807 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2808 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2809 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2810 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2811 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2812 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2813 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2814 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2815 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2816 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2817 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2818 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2819 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2820 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2821 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2822 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2823 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2824 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2825 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2826 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2827 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2828 | 0 0 0 | ||
diff --git a/drivers/video/logo/logo_linux_vga16.ppm b/drivers/video/logo/logo_linux_vga16.ppm index 1850c15e6feb..12ac3a5454c0 100644 --- a/drivers/video/logo/logo_linux_vga16.ppm +++ b/drivers/video/logo/logo_linux_vga16.ppm | |||
@@ -1,1604 +1,2739 @@ | |||
1 | P3 | 1 | P3 |
2 | # Standard 16-color Linux logo | 2 | 142 114 |
3 | 80 80 | ||
4 | 255 | 3 | 255 |
5 | 0 0 0 0 0 0 0 0 0 0 0 0 | 4 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
6 | 0 0 0 0 0 0 0 0 0 0 0 0 | 5 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
7 | 0 0 0 0 0 0 0 0 0 0 0 0 | 6 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
8 | 0 0 0 0 0 0 0 0 0 0 0 0 | 7 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
9 | 0 0 0 0 0 0 0 0 0 0 0 0 | 8 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
10 | 0 0 0 0 0 0 0 0 0 0 0 0 | 9 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
11 | 0 0 0 0 0 0 0 0 0 0 0 0 | 10 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
12 | 0 0 0 0 0 0 0 0 0 0 0 0 | 11 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
13 | 0 0 0 0 0 0 0 0 0 0 0 0 | 12 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
14 | 0 0 0 0 0 0 0 0 0 0 0 0 | 13 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
15 | 0 0 0 0 0 0 0 0 0 0 0 0 | 14 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
16 | 0 0 0 0 0 0 0 0 0 0 0 0 | 15 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
17 | 0 0 0 0 0 0 0 0 0 0 0 0 | 16 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
18 | 0 0 0 0 0 0 0 0 0 0 0 0 | 17 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
19 | 0 0 0 0 0 0 0 0 0 0 0 0 | 18 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
20 | 0 0 0 0 0 0 0 0 0 0 0 0 | 19 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
21 | 0 0 0 0 0 0 0 0 0 0 0 0 | 20 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
22 | 0 0 0 0 0 0 0 0 0 0 0 0 | 21 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
23 | 0 0 0 0 0 0 0 0 0 0 0 0 | 22 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
24 | 0 0 0 0 0 0 0 0 0 0 0 0 | 23 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
25 | 0 0 0 0 0 0 0 0 0 0 0 0 | 24 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
26 | 0 0 0 0 0 0 0 0 0 0 0 0 | 25 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
27 | 0 0 0 0 0 0 0 0 0 0 0 0 | 26 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
28 | 0 0 0 0 0 0 0 0 0 0 0 0 | 27 | 0 0 0 0 0 0 0 0 0 0 0 0 |
29 | 0 0 0 0 0 0 0 0 0 0 0 0 | 28 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
30 | 0 0 0 0 0 0 0 0 0 0 0 0 | 29 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
31 | 0 0 0 0 0 0 0 0 0 0 0 0 | 30 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
32 | 0 0 0 0 0 0 0 0 0 0 0 0 | 31 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
33 | 0 0 0 0 0 0 0 0 0 0 0 0 | 32 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
34 | 0 0 0 0 0 0 0 0 0 0 0 0 | 33 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
35 | 0 0 0 0 0 0 0 0 0 0 0 0 | 34 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
36 | 0 0 0 0 0 0 0 0 0 0 0 0 | 35 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
37 | 0 0 0 0 0 0 0 0 0 0 0 0 | 36 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
38 | 0 0 0 0 0 0 0 0 0 0 0 0 | 37 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
39 | 0 0 0 0 0 0 0 0 0 0 0 0 | 38 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
40 | 0 0 0 0 0 0 0 0 0 0 0 0 | 39 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
41 | 0 0 0 0 0 0 0 0 0 0 0 0 | 40 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
42 | 0 0 0 0 0 0 0 0 0 0 0 0 | 41 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
43 | 0 0 0 0 0 0 0 0 0 0 0 0 | 42 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
44 | 0 0 0 0 0 0 0 0 0 0 0 0 | 43 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
45 | 0 0 0 0 0 0 0 0 0 0 0 0 | 44 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
46 | 0 0 0 0 0 0 0 0 0 0 0 0 | 45 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
47 | 0 0 0 0 0 0 0 0 0 0 0 0 | 46 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
48 | 0 0 0 0 0 0 0 0 0 0 0 0 | 47 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
49 | 0 0 0 0 0 0 0 0 0 0 0 0 | 48 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
50 | 0 0 0 0 0 0 0 0 0 0 0 0 | 49 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
51 | 0 0 0 0 0 0 0 0 0 0 0 0 | 50 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
52 | 0 0 0 0 0 0 0 0 0 0 0 0 | 51 | 0 0 0 0 0 0 0 0 0 0 0 0 |
53 | 0 0 0 0 0 0 0 0 0 0 0 0 | 52 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
54 | 85 85 85 85 85 85 85 85 85 85 85 85 | 53 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
55 | 85 85 85 85 85 85 85 85 85 0 0 0 | 54 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
56 | 0 0 0 0 0 0 0 0 0 0 0 0 | 55 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
57 | 0 0 0 0 0 0 0 0 0 0 0 0 | 56 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
58 | 0 0 0 0 0 0 0 0 0 0 0 0 | 57 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
59 | 0 0 0 0 0 0 0 0 0 0 0 0 | 58 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
60 | 0 0 0 0 0 0 0 0 0 0 0 0 | 59 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
61 | 0 0 0 0 0 0 0 0 0 0 0 0 | 60 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
62 | 0 0 0 0 0 0 0 0 0 0 0 0 | 61 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
63 | 0 0 0 0 0 0 0 0 0 0 0 0 | 62 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
64 | 0 0 0 0 0 0 0 0 0 0 0 0 | 63 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
65 | 0 0 0 0 0 0 0 0 0 0 0 0 | 64 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
66 | 0 0 0 0 0 0 0 0 0 0 0 0 | 65 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
67 | 0 0 0 0 0 0 0 0 0 0 0 0 | 66 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
68 | 0 0 0 0 0 0 0 0 0 0 0 0 | 67 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
69 | 0 0 0 0 0 0 0 0 0 0 0 0 | 68 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
70 | 0 0 0 0 0 0 0 0 0 0 0 0 | 69 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
71 | 0 0 0 0 0 0 0 0 0 0 0 0 | 70 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
72 | 0 0 0 0 0 0 0 0 0 0 0 0 | 71 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
73 | 0 0 0 0 0 0 85 85 85 85 85 85 | 72 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
74 | 85 85 85 0 0 0 0 0 0 0 0 0 | 73 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
75 | 0 0 0 0 0 0 0 0 0 85 85 85 | 74 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
76 | 85 85 85 85 85 85 0 0 0 0 0 0 | 75 | 0 0 0 0 0 0 0 0 0 0 0 0 |
77 | 0 0 0 0 0 0 0 0 0 0 0 0 | 76 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
78 | 0 0 0 0 0 0 0 0 0 0 0 0 | 77 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
79 | 0 0 0 0 0 0 0 0 0 0 0 0 | 78 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
80 | 0 0 0 0 0 0 0 0 0 0 0 0 | 79 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
81 | 0 0 0 0 0 0 0 0 0 0 0 0 | 80 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
82 | 0 0 0 0 0 0 0 0 0 0 0 0 | 81 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
83 | 0 0 0 0 0 0 0 0 0 0 0 0 | 82 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
84 | 0 0 0 0 0 0 0 0 0 0 0 0 | 83 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
85 | 0 0 0 0 0 0 0 0 0 0 0 0 | 84 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
86 | 0 0 0 0 0 0 0 0 0 0 0 0 | 85 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
87 | 0 0 0 0 0 0 0 0 0 0 0 0 | 86 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
88 | 0 0 0 0 0 0 0 0 0 0 0 0 | 87 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
89 | 0 0 0 0 0 0 0 0 0 0 0 0 | 88 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
90 | 0 0 0 0 0 0 0 0 0 0 0 0 | 89 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
91 | 0 0 0 0 0 0 0 0 0 0 0 0 | 90 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
92 | 0 0 0 0 0 0 0 0 0 0 0 0 | 91 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
93 | 0 0 0 85 85 85 0 0 0 0 0 0 | 92 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
94 | 0 0 0 0 0 0 0 0 0 0 0 0 | 93 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
95 | 0 0 0 0 0 0 0 0 0 0 0 0 | 94 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
96 | 0 0 0 0 0 0 85 85 85 85 85 85 | 95 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
97 | 0 0 0 0 0 0 0 0 0 0 0 0 | 96 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
98 | 0 0 0 0 0 0 0 0 0 0 0 0 | 97 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
99 | 0 0 0 0 0 0 0 0 0 0 0 0 | 98 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
100 | 0 0 0 0 0 0 0 0 0 0 0 0 | 99 | 0 0 0 0 0 0 0 0 0 0 0 0 |
101 | 0 0 0 0 0 0 0 0 0 0 0 0 | 100 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
102 | 0 0 0 0 0 0 0 0 0 0 0 0 | 101 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
103 | 0 0 0 0 0 0 0 0 0 0 0 0 | 102 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
104 | 0 0 0 0 0 0 0 0 0 0 0 0 | 103 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
105 | 0 0 0 0 0 0 0 0 0 0 0 0 | 104 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
106 | 0 0 0 0 0 0 0 0 0 0 0 0 | 105 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
107 | 0 0 0 0 0 0 0 0 0 0 0 0 | 106 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
108 | 0 0 0 0 0 0 0 0 0 0 0 0 | 107 | 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 |
109 | 0 0 0 0 0 0 0 0 0 0 0 0 | 108 | 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 |
110 | 0 0 0 0 0 0 0 0 0 0 0 0 | 109 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
111 | 0 0 0 0 0 0 0 0 0 0 0 0 | 110 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
112 | 0 0 0 0 0 0 0 0 0 0 0 0 | 111 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
113 | 85 85 85 0 0 0 0 0 0 0 0 0 | 112 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
114 | 0 0 0 0 0 0 0 0 0 0 0 0 | 113 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
115 | 0 0 0 0 0 0 0 0 0 0 0 0 | 114 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
116 | 0 0 0 0 0 0 0 0 0 85 85 85 | 115 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
117 | 85 85 85 0 0 0 0 0 0 0 0 0 | 116 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
118 | 0 0 0 0 0 0 0 0 0 0 0 0 | 117 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
119 | 0 0 0 0 0 0 0 0 0 0 0 0 | 118 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
120 | 0 0 0 0 0 0 0 0 0 0 0 0 | 119 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
121 | 0 0 0 0 0 0 0 0 0 0 0 0 | 120 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
122 | 0 0 0 0 0 0 0 0 0 0 0 0 | 121 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
123 | 0 0 0 0 0 0 0 0 0 0 0 0 | 122 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
124 | 0 0 0 0 0 0 0 0 0 0 0 0 | 123 | 0 0 0 0 0 0 0 0 0 0 0 0 |
125 | 0 0 0 0 0 0 0 0 0 0 0 0 | 124 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
126 | 0 0 0 0 0 0 0 0 0 0 0 0 | 125 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
127 | 0 0 0 0 0 0 0 0 0 0 0 0 | 126 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
128 | 0 0 0 0 0 0 0 0 0 0 0 0 | 127 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
129 | 0 0 0 0 0 0 0 0 0 0 0 0 | 128 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
130 | 0 0 0 0 0 0 0 0 0 0 0 0 | 129 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
131 | 0 0 0 0 0 0 0 0 0 0 0 0 | 130 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
132 | 0 0 0 0 0 0 0 0 0 85 85 85 | 131 | 85 85 85 85 85 85 85 85 85 0 0 0 85 85 85 85 85 85 |
133 | 0 0 0 0 0 0 0 0 0 0 0 0 | 132 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
134 | 0 0 0 0 0 0 0 0 0 0 0 0 | 133 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
135 | 0 0 0 0 0 0 0 0 0 0 0 0 | 134 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
136 | 0 0 0 0 0 0 0 0 0 0 0 0 | 135 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
137 | 85 85 85 85 85 85 0 0 0 0 0 0 | 136 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
138 | 0 0 0 0 0 0 0 0 0 0 0 0 | 137 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
139 | 0 0 0 0 0 0 0 0 0 0 0 0 | 138 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
140 | 0 0 0 0 0 0 0 0 0 0 0 0 | 139 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
141 | 0 0 0 0 0 0 0 0 0 0 0 0 | 140 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
142 | 0 0 0 0 0 0 0 0 0 0 0 0 | 141 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
143 | 0 0 0 0 0 0 0 0 0 0 0 0 | 142 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
144 | 0 0 0 0 0 0 0 0 0 0 0 0 | 143 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
145 | 0 0 0 0 0 0 0 0 0 0 0 0 | 144 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
146 | 0 0 0 0 0 0 0 0 0 0 0 0 | 145 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
147 | 0 0 0 0 0 0 0 0 0 0 0 0 | 146 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
148 | 0 0 0 0 0 0 0 0 0 0 0 0 | 147 | 0 0 0 0 0 0 0 0 0 0 0 0 |
149 | 0 0 0 0 0 0 0 0 0 0 0 0 | 148 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
150 | 0 0 0 0 0 0 0 0 0 0 0 0 | 149 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
151 | 0 0 0 0 0 0 0 0 0 0 0 0 | 150 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
152 | 0 0 0 0 0 0 0 0 0 85 85 85 | 151 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
153 | 0 0 0 0 0 0 0 0 0 0 0 0 | 152 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
154 | 0 0 0 0 0 0 0 0 0 0 0 0 | 153 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
155 | 0 0 0 0 0 0 0 0 0 0 0 0 | 154 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 |
156 | 85 85 85 170 170 170 0 0 0 0 0 0 | 155 | 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 0 0 0 |
157 | 0 0 0 85 85 85 0 0 0 0 0 0 | 156 | 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 |
158 | 0 0 0 0 0 0 0 0 0 0 0 0 | 157 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
159 | 0 0 0 0 0 0 0 0 0 0 0 0 | 158 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
160 | 0 0 0 0 0 0 0 0 0 0 0 0 | 159 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
161 | 0 0 0 0 0 0 0 0 0 0 0 0 | 160 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
162 | 0 0 0 0 0 0 0 0 0 0 0 0 | 161 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
163 | 0 0 0 0 0 0 0 0 0 0 0 0 | 162 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
164 | 0 0 0 0 0 0 0 0 0 0 0 0 | 163 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
165 | 0 0 0 0 0 0 0 0 0 0 0 0 | 164 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
166 | 0 0 0 0 0 0 0 0 0 0 0 0 | 165 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
167 | 0 0 0 0 0 0 0 0 0 0 0 0 | 166 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
168 | 0 0 0 0 0 0 0 0 0 0 0 0 | 167 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
169 | 0 0 0 0 0 0 0 0 0 0 0 0 | 168 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
170 | 0 0 0 0 0 0 0 0 0 0 0 0 | 169 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
171 | 0 0 0 0 0 0 0 0 0 0 0 0 | 170 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
172 | 0 0 0 0 0 0 85 85 85 0 0 0 | 171 | 0 0 0 0 0 0 0 0 0 0 0 0 |
173 | 0 0 0 0 0 0 0 0 0 0 0 0 | 172 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
174 | 0 0 0 0 0 0 0 0 0 0 0 0 | 173 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
175 | 0 0 0 0 0 0 0 0 0 0 0 0 | 174 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
176 | 170 170 170 170 170 170 85 85 85 0 0 0 | 175 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
177 | 0 0 0 0 0 0 85 85 85 0 0 0 | 176 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
178 | 0 0 0 0 0 0 0 0 0 0 0 0 | 177 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
179 | 0 0 0 0 0 0 0 0 0 0 0 0 | 178 | 85 85 85 0 0 0 85 85 85 85 85 85 85 85 85 85 85 85 |
180 | 0 0 0 0 0 0 0 0 0 0 0 0 | 179 | 0 0 0 85 85 85 85 85 85 0 0 0 85 85 85 85 85 85 |
181 | 0 0 0 0 0 0 0 0 0 0 0 0 | 180 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
182 | 0 0 0 0 0 0 0 0 0 0 0 0 | 181 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
183 | 0 0 0 0 0 0 0 0 0 0 0 0 | 182 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
184 | 0 0 0 0 0 0 0 0 0 0 0 0 | 183 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
185 | 0 0 0 0 0 0 0 0 0 0 0 0 | 184 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
186 | 0 0 0 0 0 0 0 0 0 0 0 0 | 185 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
187 | 0 0 0 0 0 0 0 0 0 0 0 0 | 186 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
188 | 0 0 0 0 0 0 0 0 0 0 0 0 | 187 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
189 | 0 0 0 0 0 0 0 0 0 0 0 0 | 188 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
190 | 0 0 0 0 0 0 0 0 0 0 0 0 | 189 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
191 | 0 0 0 0 0 0 0 0 0 0 0 0 | 190 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
192 | 0 0 0 0 0 0 85 85 85 0 0 0 | 191 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
193 | 0 0 0 0 0 0 0 0 0 0 0 0 | 192 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
194 | 0 0 0 0 0 0 0 0 0 0 0 0 | 193 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
195 | 0 0 0 0 0 0 0 0 0 0 0 0 | 194 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
196 | 0 0 0 85 85 85 0 0 0 0 0 0 | 195 | 0 0 0 0 0 0 0 0 0 0 0 0 |
197 | 0 0 0 0 0 0 0 0 0 85 85 85 | 196 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
198 | 0 0 0 0 0 0 0 0 0 0 0 0 | 197 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
199 | 0 0 0 0 0 0 0 0 0 0 0 0 | 198 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
200 | 0 0 0 0 0 0 0 0 0 0 0 0 | 199 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
201 | 0 0 0 0 0 0 0 0 0 0 0 0 | 200 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
202 | 0 0 0 0 0 0 0 0 0 0 0 0 | 201 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 |
203 | 0 0 0 0 0 0 0 0 0 0 0 0 | 202 | 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 |
204 | 0 0 0 0 0 0 0 0 0 0 0 0 | 203 | 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 |
205 | 0 0 0 0 0 0 0 0 0 0 0 0 | 204 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
206 | 0 0 0 0 0 0 0 0 0 0 0 0 | 205 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
207 | 0 0 0 0 0 0 0 0 0 0 0 0 | 206 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
208 | 0 0 0 0 0 0 0 0 0 0 0 0 | 207 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
209 | 0 0 0 0 0 0 0 0 0 0 0 0 | 208 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
210 | 0 0 0 0 0 0 0 0 0 0 0 0 | 209 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
211 | 0 0 0 0 0 0 0 0 0 0 0 0 | 210 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
212 | 0 0 0 0 0 0 85 85 85 0 0 0 | 211 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
213 | 0 0 0 0 0 0 0 0 0 0 0 0 | 212 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
214 | 0 0 0 0 0 0 0 0 0 0 0 0 | 213 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
215 | 0 0 0 0 0 0 0 0 0 0 0 0 | 214 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
216 | 0 0 0 0 0 0 0 0 0 0 0 0 | 215 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
217 | 0 0 0 0 0 0 0 0 0 85 85 85 | 216 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
218 | 0 0 0 0 0 0 0 0 0 0 0 0 | 217 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
219 | 0 0 0 0 0 0 0 0 0 0 0 0 | 218 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
220 | 0 0 0 0 0 0 0 0 0 0 0 0 | 219 | 0 0 0 0 0 0 0 0 0 0 0 0 |
221 | 0 0 0 0 0 0 0 0 0 0 0 0 | 220 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
222 | 0 0 0 0 0 0 0 0 0 0 0 0 | 221 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
223 | 0 0 0 0 0 0 0 0 0 0 0 0 | 222 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
224 | 0 0 0 0 0 0 0 0 0 0 0 0 | 223 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
225 | 0 0 0 0 0 0 0 0 0 0 0 0 | 224 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
226 | 0 0 0 0 0 0 0 0 0 0 0 0 | 225 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 170 170 170 |
227 | 0 0 0 0 0 0 0 0 0 0 0 0 | 226 | 85 85 85 85 85 85 85 85 85 85 85 85 0 0 0 85 85 85 |
228 | 0 0 0 0 0 0 0 0 0 0 0 0 | 227 | 0 0 0 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 |
229 | 0 0 0 0 0 0 0 0 0 0 0 0 | 228 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 |
230 | 0 0 0 0 0 0 0 0 0 0 0 0 | 229 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
231 | 0 0 0 0 0 0 0 0 0 0 0 0 | 230 | 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
232 | 0 0 0 85 85 85 0 0 0 0 0 0 | 231 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
233 | 0 0 0 0 0 0 0 0 0 0 0 0 | 232 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
234 | 0 0 0 0 0 0 0 0 0 0 0 0 | 233 | 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 |
235 | 0 0 0 0 0 0 0 0 0 0 0 0 | 234 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
236 | 0 0 0 0 0 0 0 0 0 0 0 0 | 235 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
237 | 0 0 0 0 0 0 0 0 0 85 85 85 | 236 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
238 | 0 0 0 0 0 0 0 0 0 0 0 0 | 237 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
239 | 0 0 0 0 0 0 0 0 0 0 0 0 | 238 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
240 | 0 0 0 0 0 0 0 0 0 0 0 0 | 239 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
241 | 0 0 0 0 0 0 0 0 0 0 0 0 | 240 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
242 | 0 0 0 0 0 0 0 0 0 0 0 0 | 241 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
243 | 0 0 0 0 0 0 0 0 0 0 0 0 | 242 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
244 | 0 0 0 0 0 0 0 0 0 0 0 0 | 243 | 0 0 0 0 0 0 0 0 0 0 0 0 |
245 | 0 0 0 0 0 0 0 0 0 0 0 0 | 244 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
246 | 0 0 0 0 0 0 0 0 0 0 0 0 | 245 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
247 | 0 0 0 0 0 0 0 0 0 0 0 0 | 246 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
248 | 0 0 0 0 0 0 0 0 0 0 0 0 | 247 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
249 | 0 0 0 0 0 0 0 0 0 0 0 0 | 248 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
250 | 0 0 0 0 0 0 0 0 0 0 0 0 | 249 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 |
251 | 0 0 0 0 0 0 0 0 0 0 0 0 | 250 | 85 85 85 0 0 0 85 85 85 85 85 85 85 85 85 85 85 85 |
252 | 0 0 0 85 85 85 0 0 0 0 0 0 | 251 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
253 | 0 0 0 0 0 0 0 0 0 0 0 0 | 252 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
254 | 0 0 0 0 0 0 0 0 0 0 0 0 | 253 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
255 | 0 0 0 0 0 0 0 0 0 0 0 0 | 254 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
256 | 0 0 0 0 0 0 0 0 0 0 0 0 | 255 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
257 | 0 0 0 0 0 0 0 0 0 0 0 0 | 256 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
258 | 85 85 85 0 0 0 0 0 0 0 0 0 | 257 | 0 0 0 85 85 85 170 170 170 170 85 0 170 170 170 85 85 85 |
259 | 0 0 0 0 0 0 0 0 0 0 0 0 | 258 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
260 | 0 0 0 0 0 0 0 0 0 0 0 0 | 259 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
261 | 0 0 0 0 0 0 0 0 0 0 0 0 | 260 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
262 | 0 0 0 0 0 0 0 0 0 0 0 0 | 261 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
263 | 0 0 0 0 0 0 0 0 0 0 0 0 | 262 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
264 | 0 0 0 0 0 0 0 0 0 0 0 0 | 263 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
265 | 0 0 0 0 0 0 0 0 0 0 0 0 | 264 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
266 | 0 0 0 0 0 0 0 0 0 0 0 0 | 265 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
267 | 0 0 0 0 0 0 0 0 0 0 0 0 | 266 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
268 | 0 0 0 0 0 0 0 0 0 0 0 0 | 267 | 0 0 0 0 0 0 0 0 0 0 0 0 |
269 | 0 0 0 0 0 0 0 0 0 0 0 0 | 268 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
270 | 0 0 0 0 0 0 0 0 0 0 0 0 | 269 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
271 | 0 0 0 0 0 0 0 0 0 0 0 0 | 270 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
272 | 0 0 0 85 85 85 0 0 0 0 0 0 | 271 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
273 | 0 0 0 0 0 0 0 0 0 0 0 0 | 272 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
274 | 0 0 0 0 0 0 0 0 0 0 0 0 | 273 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
275 | 0 0 0 0 0 0 0 0 0 0 0 0 | 274 | 85 85 85 85 85 85 85 85 85 85 85 85 0 0 0 85 85 85 |
276 | 0 0 0 0 0 0 0 0 0 0 0 0 | 275 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 |
277 | 0 0 0 0 0 0 0 0 0 0 0 0 | 276 | 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
278 | 85 85 85 0 0 0 0 0 0 0 0 0 | 277 | 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
279 | 0 0 0 0 0 0 0 0 0 0 0 0 | 278 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
280 | 0 0 0 0 0 0 0 0 0 0 0 0 | 279 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
281 | 0 0 0 0 0 0 0 0 0 0 0 0 | 280 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
282 | 0 0 0 0 0 0 0 0 0 0 0 0 | 281 | 170 170 170 255 255 85 170 170 170 170 170 170 170 170 170 85 85 85 |
283 | 0 0 0 0 0 0 0 0 0 0 0 0 | 282 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
284 | 0 0 0 0 0 0 0 0 0 0 0 0 | 283 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
285 | 0 0 0 0 0 0 0 0 0 0 0 0 | 284 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
286 | 0 0 0 0 0 0 0 0 0 0 0 0 | 285 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
287 | 0 0 0 0 0 0 0 0 0 0 0 0 | 286 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
288 | 0 0 0 0 0 0 0 0 0 0 0 0 | 287 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
289 | 0 0 0 0 0 0 0 0 0 0 0 0 | 288 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
290 | 0 0 0 0 0 0 0 0 0 0 0 0 | 289 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
291 | 0 0 0 0 0 0 0 0 0 0 0 0 | 290 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
292 | 0 0 0 85 85 85 0 0 0 0 0 0 | 291 | 0 0 0 0 0 0 0 0 0 0 0 0 |
293 | 0 0 0 85 85 85 170 170 170 0 0 0 | 292 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
294 | 0 0 0 0 0 0 0 0 0 0 0 0 | 293 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
295 | 0 0 0 0 0 0 170 170 170 170 170 170 | 294 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
296 | 170 170 170 0 0 0 0 0 0 0 0 0 | 295 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
297 | 0 0 0 0 0 0 0 0 0 0 0 0 | 296 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
298 | 85 85 85 0 0 0 0 0 0 0 0 0 | 297 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 |
299 | 0 0 0 0 0 0 0 0 0 0 0 0 | 298 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
300 | 0 0 0 0 0 0 0 0 0 0 0 0 | 299 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
301 | 0 0 0 0 0 0 0 0 0 0 0 0 | 300 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
302 | 0 0 0 0 0 0 0 0 0 0 0 0 | 301 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
303 | 0 0 0 0 0 0 0 0 0 0 0 0 | 302 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
304 | 0 0 0 0 0 0 0 0 0 0 0 0 | 303 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
305 | 0 0 0 0 0 0 0 0 0 0 0 0 | 304 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 170 170 170 |
306 | 0 0 0 0 0 0 0 0 0 0 0 0 | 305 | 255 255 85 170 170 170 170 170 170 170 85 0 85 255 85 170 85 0 |
307 | 0 0 0 0 0 0 0 0 0 0 0 0 | 306 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
308 | 0 0 0 0 0 0 0 0 0 0 0 0 | 307 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
309 | 0 0 0 0 0 0 0 0 0 0 0 0 | 308 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
310 | 0 0 0 0 0 0 0 0 0 0 0 0 | 309 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
311 | 0 0 0 0 0 0 0 0 0 0 0 0 | 310 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
312 | 0 0 0 85 85 85 0 0 0 0 0 0 | 311 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
313 | 85 85 85 170 170 170 170 170 170 170 170 170 | 312 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
314 | 0 0 0 0 0 0 0 0 0 0 0 0 | 313 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
315 | 0 0 0 170 170 170 255 255 255 255 255 255 | 314 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
316 | 255 255 255 170 170 170 0 0 0 0 0 0 | 315 | 0 0 0 0 0 0 0 0 0 0 0 0 |
317 | 0 0 0 0 0 0 0 0 0 0 0 0 | 316 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
318 | 85 85 85 0 0 0 0 0 0 0 0 0 | 317 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
319 | 0 0 0 0 0 0 0 0 0 0 0 0 | 318 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
320 | 0 0 0 0 0 0 0 0 0 0 0 0 | 319 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
321 | 0 0 0 0 0 0 0 0 0 0 0 0 | 320 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
322 | 0 0 0 0 0 0 0 0 0 0 0 0 | 321 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 |
323 | 0 0 0 0 0 0 0 0 0 0 0 0 | 322 | 85 85 85 85 85 85 85 85 85 85 85 85 0 0 0 85 85 85 |
324 | 0 0 0 0 0 0 0 0 0 0 0 0 | 323 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
325 | 0 0 0 0 0 0 0 0 0 0 0 0 | 324 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 85 85 85 |
326 | 0 0 0 0 0 0 0 0 0 0 0 0 | 325 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 |
327 | 0 0 0 0 0 0 0 0 0 0 0 0 | 326 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
328 | 0 0 0 0 0 0 0 0 0 0 0 0 | 327 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
329 | 0 0 0 0 0 0 0 0 0 0 0 0 | 328 | 85 85 85 0 0 0 0 0 0 85 85 85 170 170 170 170 85 0 |
330 | 0 0 0 0 0 0 0 0 0 0 0 0 | 329 | 170 170 170 170 170 170 255 255 85 170 170 170 170 170 170 85 85 85 |
331 | 0 0 0 0 0 0 0 0 0 0 0 0 | 330 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
332 | 0 0 0 85 85 85 0 0 0 85 85 85 | 331 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
333 | 170 170 170 170 170 170 255 255 255 255 255 255 | 332 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
334 | 0 0 0 0 0 0 0 0 0 0 0 0 | 333 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
335 | 170 170 170 255 255 255 170 170 170 170 170 170 | 334 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
336 | 255 255 255 170 170 170 0 0 0 0 0 0 | 335 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
337 | 0 0 0 0 0 0 0 0 0 0 0 0 | 336 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
338 | 85 85 85 0 0 0 0 0 0 0 0 0 | 337 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
339 | 0 0 0 0 0 0 0 0 0 0 0 0 | 338 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
340 | 0 0 0 0 0 0 0 0 0 0 0 0 | 339 | 0 0 0 0 0 0 0 0 0 0 0 0 |
341 | 0 0 0 0 0 0 0 0 0 0 0 0 | 340 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
342 | 0 0 0 0 0 0 0 0 0 0 0 0 | 341 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
343 | 0 0 0 0 0 0 0 0 0 0 0 0 | 342 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
344 | 0 0 0 0 0 0 0 0 0 0 0 0 | 343 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
345 | 0 0 0 0 0 0 0 0 0 0 0 0 | 344 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
346 | 0 0 0 0 0 0 0 0 0 0 0 0 | 345 | 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 |
347 | 0 0 0 0 0 0 0 0 0 0 0 0 | 346 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
348 | 0 0 0 0 0 0 0 0 0 0 0 0 | 347 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
349 | 0 0 0 0 0 0 0 0 0 0 0 0 | 348 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
350 | 0 0 0 0 0 0 0 0 0 0 0 0 | 349 | 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 0 0 0 |
351 | 0 0 0 0 0 0 0 0 0 0 0 0 | 350 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
352 | 0 0 0 85 85 85 0 0 0 85 85 85 | 351 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
353 | 170 170 170 0 0 0 0 0 0 255 255 255 | 352 | 0 0 0 0 0 0 85 85 85 85 85 85 170 85 0 170 170 170 |
354 | 85 85 85 0 0 0 0 0 0 0 0 0 | 353 | 170 170 170 170 85 0 170 170 170 170 170 170 170 85 0 85 85 85 |
355 | 255 255 255 170 170 170 0 0 0 85 85 85 | 354 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
356 | 170 170 170 255 255 255 170 170 170 0 0 0 | 355 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
357 | 0 0 0 0 0 0 0 0 0 0 0 0 | 356 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
358 | 85 85 85 0 0 0 0 0 0 0 0 0 | 357 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
359 | 0 0 0 0 0 0 0 0 0 0 0 0 | 358 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
360 | 0 0 0 0 0 0 0 0 0 0 0 0 | 359 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
361 | 0 0 0 0 0 0 0 0 0 0 0 0 | 360 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
362 | 0 0 0 0 0 0 0 0 0 0 0 0 | 361 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
363 | 0 0 0 0 0 0 0 0 0 0 0 0 | 362 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
364 | 0 0 0 0 0 0 0 0 0 0 0 0 | 363 | 0 0 0 0 0 0 0 0 0 0 0 0 |
365 | 0 0 0 0 0 0 0 0 0 0 0 0 | 364 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
366 | 0 0 0 0 0 0 0 0 0 0 0 0 | 365 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
367 | 0 0 0 0 0 0 0 0 0 0 0 0 | 366 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
368 | 0 0 0 0 0 0 0 0 0 0 0 0 | 367 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
369 | 0 0 0 0 0 0 0 0 0 0 0 0 | 368 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
370 | 0 0 0 0 0 0 0 0 0 0 0 0 | 369 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 |
371 | 0 0 0 0 0 0 0 0 0 0 0 0 | 370 | 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 |
372 | 0 0 0 85 85 85 0 0 0 85 85 85 | 371 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
373 | 85 85 85 0 0 0 0 0 0 170 170 170 | 372 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 85 85 85 |
374 | 85 85 85 0 0 0 0 0 0 0 0 0 | 373 | 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 |
375 | 255 255 255 85 85 85 0 0 0 0 0 0 | 374 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
376 | 85 85 85 255 255 255 170 170 170 0 0 0 | 375 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 |
377 | 0 0 0 0 0 0 0 0 0 0 0 0 | 376 | 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 85 255 85 |
378 | 85 85 85 0 0 0 0 0 0 0 0 0 | 377 | 255 85 85 85 255 85 170 170 170 170 85 0 170 170 170 85 85 85 |
379 | 0 0 0 0 0 0 0 0 0 0 0 0 | 378 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
380 | 0 0 0 0 0 0 0 0 0 0 0 0 | 379 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
381 | 0 0 0 0 0 0 0 0 0 0 0 0 | 380 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
382 | 0 0 0 0 0 0 0 0 0 0 0 0 | 381 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
383 | 0 0 0 0 0 0 0 0 0 0 0 0 | 382 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
384 | 0 0 0 0 0 0 0 0 0 0 0 0 | 383 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
385 | 0 0 0 0 0 0 0 0 0 0 0 0 | 384 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
386 | 0 0 0 0 0 0 0 0 0 0 0 0 | 385 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
387 | 0 0 0 0 0 0 0 0 0 0 0 0 | 386 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
388 | 0 0 0 0 0 0 0 0 0 0 0 0 | 387 | 0 0 0 0 0 0 0 0 0 0 0 0 |
389 | 0 0 0 0 0 0 0 0 0 0 0 0 | 388 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
390 | 0 0 0 0 0 0 0 0 0 0 0 0 | 389 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
391 | 0 0 0 0 0 0 0 0 0 0 0 0 | 390 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
392 | 0 0 0 85 85 85 0 0 0 85 85 85 | 391 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
393 | 170 170 170 0 0 0 0 0 0 170 170 170 | 392 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
394 | 85 85 85 85 85 85 85 85 85 85 85 85 | 393 | 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 |
395 | 255 255 255 85 85 85 0 0 0 0 0 0 | 394 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
396 | 85 85 85 255 255 255 170 170 170 0 0 0 | 395 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
397 | 0 0 0 0 0 0 0 0 0 0 0 0 | 396 | 0 0 0 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 |
398 | 85 85 85 0 0 0 0 0 0 0 0 0 | 397 | 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 |
399 | 0 0 0 0 0 0 0 0 0 0 0 0 | 398 | 85 85 85 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 |
400 | 0 0 0 0 0 0 0 0 0 0 0 0 | 399 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
401 | 0 0 0 0 0 0 0 0 0 0 0 0 | 400 | 0 0 0 0 0 0 85 85 85 170 85 0 85 85 85 85 85 85 |
402 | 0 0 0 0 0 0 0 0 0 0 0 0 | 401 | 170 170 170 170 85 0 170 170 170 85 85 85 170 85 0 85 85 85 |
403 | 0 0 0 0 0 0 0 0 0 0 0 0 | 402 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
404 | 0 0 0 0 0 0 0 0 0 0 0 0 | 403 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
405 | 0 0 0 0 0 0 0 0 0 0 0 0 | 404 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
406 | 0 0 0 0 0 0 0 0 0 0 0 0 | 405 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
407 | 0 0 0 0 0 0 0 0 0 0 0 0 | 406 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
408 | 0 0 0 0 0 0 0 0 0 0 0 0 | 407 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
409 | 0 0 0 0 0 0 0 0 0 0 0 0 | 408 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
410 | 0 0 0 0 0 0 0 0 0 0 0 0 | 409 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
411 | 0 0 0 0 0 0 0 0 0 0 0 0 | 410 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
412 | 0 0 0 85 85 85 0 0 0 0 0 0 | 411 | 0 0 0 0 0 0 0 0 0 0 0 0 |
413 | 255 255 255 0 0 0 0 0 0 170 85 0 | 412 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
414 | 255 255 85 170 85 0 255 255 85 170 85 0 | 413 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
415 | 255 255 85 170 85 0 0 0 0 0 0 0 | 414 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
416 | 85 85 85 255 255 255 0 0 0 0 0 0 | 415 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
417 | 0 0 0 0 0 0 0 0 0 0 0 0 | 416 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
418 | 85 85 85 0 0 0 0 0 0 0 0 0 | 417 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 |
419 | 0 0 0 0 0 0 0 0 0 0 0 0 | 418 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 |
420 | 0 0 0 0 0 0 0 0 0 0 0 0 | 419 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
421 | 0 0 0 0 0 0 0 0 0 0 0 0 | 420 | 0 0 0 85 85 85 0 0 0 85 85 85 85 85 85 0 0 0 |
422 | 0 0 0 0 0 0 0 0 0 0 0 0 | 421 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
423 | 0 0 0 0 0 0 0 0 0 0 0 0 | 422 | 0 0 0 0 0 0 85 85 85 85 85 85 0 0 0 85 85 85 |
424 | 0 0 0 0 0 0 0 0 0 0 0 0 | 423 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
425 | 0 0 0 0 0 0 0 0 0 0 0 0 | 424 | 85 85 85 0 0 0 0 0 0 85 85 85 85 85 85 170 85 0 |
426 | 0 0 0 0 0 0 0 0 0 0 0 0 | 425 | 85 85 85 85 85 85 170 85 0 85 255 85 85 85 85 85 85 85 |
427 | 0 0 0 0 0 0 0 0 0 0 0 0 | 426 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
428 | 0 0 0 0 0 0 0 0 0 0 0 0 | 427 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
429 | 0 0 0 0 0 0 0 0 0 0 0 0 | 428 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
430 | 0 0 0 0 0 0 0 0 0 0 0 0 | 429 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
431 | 0 0 0 0 0 0 0 0 0 0 0 0 | 430 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
432 | 0 0 0 85 85 85 0 0 0 0 0 0 | 431 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
433 | 170 170 170 170 170 170 170 85 0 255 255 85 | 432 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
434 | 170 85 0 255 255 85 170 85 0 255 255 85 | 433 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
435 | 170 85 0 255 255 85 170 85 0 255 255 85 | 434 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
436 | 170 170 170 170 170 170 0 0 0 0 0 0 | 435 | 0 0 0 0 0 0 0 0 0 0 0 0 |
437 | 0 0 0 0 0 0 0 0 0 0 0 0 | 436 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
438 | 85 85 85 0 0 0 0 0 0 0 0 0 | 437 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
439 | 0 0 0 0 0 0 0 0 0 0 0 0 | 438 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
440 | 0 0 0 0 0 0 0 0 0 0 0 0 | 439 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
441 | 0 0 0 0 0 0 0 0 0 0 0 0 | 440 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
442 | 0 0 0 0 0 0 0 0 0 0 0 0 | 441 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
443 | 0 0 0 0 0 0 0 0 0 0 0 0 | 442 | 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
444 | 0 0 0 0 0 0 0 0 0 0 0 0 | 443 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 |
445 | 0 0 0 0 0 0 0 0 0 0 0 0 | 444 | 0 0 0 85 85 85 85 85 85 85 85 85 0 0 0 0 0 0 |
446 | 0 0 0 0 0 0 0 0 0 0 0 0 | 445 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
447 | 0 0 0 0 0 0 0 0 0 0 0 0 | 446 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
448 | 0 0 0 0 0 0 0 0 0 0 0 0 | 447 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 |
449 | 0 0 0 0 0 0 0 0 0 0 0 0 | 448 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 |
450 | 0 0 0 0 0 0 0 0 0 0 0 0 | 449 | 85 85 85 85 85 85 85 85 85 85 85 85 170 85 0 0 0 0 |
451 | 0 0 0 0 0 0 0 0 0 0 0 0 | 450 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
452 | 0 0 0 85 85 85 0 0 0 0 0 0 | 451 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
453 | 0 0 0 170 85 0 255 255 85 170 85 0 | 452 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
454 | 255 255 85 170 85 0 255 255 85 170 85 0 | 453 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
455 | 255 255 85 170 85 0 255 255 85 170 85 0 | 454 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
456 | 255 255 85 170 85 0 0 0 0 0 0 0 | 455 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
457 | 0 0 0 0 0 0 0 0 0 0 0 0 | 456 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
458 | 85 85 85 0 0 0 0 0 0 0 0 0 | 457 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
459 | 0 0 0 0 0 0 0 0 0 0 0 0 | 458 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
460 | 0 0 0 0 0 0 0 0 0 0 0 0 | 459 | 0 0 0 0 0 0 0 0 0 0 0 0 |
461 | 0 0 0 0 0 0 0 0 0 0 0 0 | 460 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
462 | 0 0 0 0 0 0 0 0 0 0 0 0 | 461 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
463 | 0 0 0 0 0 0 0 0 0 0 0 0 | 462 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
464 | 0 0 0 0 0 0 0 0 0 0 0 0 | 463 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
465 | 0 0 0 0 0 0 0 0 0 0 0 0 | 464 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
466 | 0 0 0 0 0 0 0 0 0 0 0 0 | 465 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
467 | 0 0 0 0 0 0 0 0 0 0 0 0 | 466 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 |
468 | 0 0 0 0 0 0 0 0 0 0 0 0 | 467 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
469 | 0 0 0 0 0 0 0 0 0 0 0 0 | 468 | 85 85 85 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 |
470 | 0 0 0 0 0 0 0 0 0 0 0 0 | 469 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
471 | 0 0 0 0 0 0 0 0 0 0 0 0 | 470 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
472 | 0 0 0 85 85 85 0 0 0 0 0 0 | 471 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
473 | 170 85 0 255 255 85 170 85 0 255 255 85 | 472 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 |
474 | 170 85 0 255 255 85 170 85 0 255 255 85 | 473 | 85 85 85 85 85 85 85 85 85 85 85 85 0 0 0 0 0 0 |
475 | 170 85 0 255 255 85 170 85 0 255 255 85 | 474 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
476 | 170 85 0 255 255 85 170 85 0 0 0 0 | 475 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
477 | 0 0 0 0 0 0 0 0 0 0 0 0 | 476 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
478 | 0 0 0 85 85 85 0 0 0 0 0 0 | 477 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
479 | 0 0 0 0 0 0 0 0 0 0 0 0 | 478 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
480 | 0 0 0 0 0 0 0 0 0 0 0 0 | 479 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
481 | 0 0 0 0 0 0 0 0 0 0 0 0 | 480 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
482 | 0 0 0 0 0 0 0 0 0 0 0 0 | 481 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
483 | 0 0 0 0 0 0 0 0 0 0 0 0 | 482 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
484 | 0 0 0 0 0 0 0 0 0 0 0 0 | 483 | 0 0 0 0 0 0 0 0 0 0 0 0 |
485 | 0 0 0 0 0 0 0 0 0 0 0 0 | 484 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
486 | 0 0 0 0 0 0 0 0 0 0 0 0 | 485 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
487 | 0 0 0 0 0 0 0 0 0 0 0 0 | 486 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
488 | 0 0 0 0 0 0 0 0 0 0 0 0 | 487 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
489 | 0 0 0 0 0 0 0 0 0 0 0 0 | 488 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
490 | 0 0 0 0 0 0 0 0 0 0 0 0 | 489 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
491 | 0 0 0 0 0 0 0 0 0 0 0 0 | 490 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
492 | 0 0 0 85 85 85 85 85 85 0 0 0 | 491 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 |
493 | 255 255 85 170 85 0 255 255 85 170 85 0 | 492 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
494 | 255 255 85 170 85 0 255 255 85 170 85 0 | 493 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
495 | 255 255 85 170 85 0 255 255 85 170 85 0 | 494 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
496 | 255 255 85 170 85 0 170 85 0 0 0 0 | 495 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
497 | 0 0 0 0 0 0 0 0 0 0 0 0 | 496 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
498 | 0 0 0 85 85 85 0 0 0 0 0 0 | 497 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
499 | 0 0 0 0 0 0 0 0 0 0 0 0 | 498 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
500 | 0 0 0 0 0 0 0 0 0 0 0 0 | 499 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
501 | 0 0 0 0 0 0 0 0 0 0 0 0 | 500 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
502 | 0 0 0 0 0 0 0 0 0 0 0 0 | 501 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
503 | 0 0 0 0 0 0 0 0 0 0 0 0 | 502 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
504 | 0 0 0 0 0 0 0 0 0 0 0 0 | 503 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
505 | 0 0 0 0 0 0 0 0 0 0 0 0 | 504 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
506 | 0 0 0 0 0 0 0 0 0 0 0 0 | 505 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
507 | 0 0 0 0 0 0 0 0 0 0 0 0 | 506 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
508 | 0 0 0 0 0 0 0 0 0 0 0 0 | 507 | 0 0 0 0 0 0 0 0 0 0 0 0 |
509 | 0 0 0 0 0 0 0 0 0 0 0 0 | 508 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
510 | 0 0 0 0 0 0 0 0 0 0 0 0 | 509 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
511 | 0 0 0 0 0 0 0 0 0 0 0 0 | 510 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
512 | 0 0 0 85 85 85 85 85 85 0 0 0 | 511 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
513 | 170 85 0 255 255 85 170 85 0 255 255 85 | 512 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
514 | 170 85 0 255 255 85 170 85 0 255 255 85 | 513 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
515 | 170 85 0 255 255 85 170 85 0 170 85 0 | 514 | 0 0 0 85 85 85 0 0 0 0 170 0 85 85 85 0 0 0 |
516 | 170 85 0 170 85 0 85 85 85 0 0 0 | 515 | 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
517 | 0 0 0 85 85 85 0 0 0 0 0 0 | 516 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 |
518 | 0 0 0 0 0 0 85 85 85 0 0 0 | 517 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
519 | 0 0 0 0 0 0 0 0 0 0 0 0 | 518 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
520 | 0 0 0 0 0 0 0 0 0 0 0 0 | 519 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
521 | 0 0 0 0 0 0 0 0 0 0 0 0 | 520 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
522 | 0 0 0 0 0 0 0 0 0 0 0 0 | 521 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
523 | 0 0 0 0 0 0 0 0 0 0 0 0 | 522 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
524 | 0 0 0 0 0 0 0 0 0 0 0 0 | 523 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
525 | 0 0 0 0 0 0 0 0 0 0 0 0 | 524 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
526 | 0 0 0 0 0 0 0 0 0 0 0 0 | 525 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
527 | 0 0 0 0 0 0 0 0 0 0 0 0 | 526 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
528 | 0 0 0 0 0 0 0 0 0 0 0 0 | 527 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
529 | 0 0 0 0 0 0 0 0 0 0 0 0 | 528 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
530 | 0 0 0 0 0 0 0 0 0 0 0 0 | 529 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
531 | 0 0 0 0 0 0 0 0 0 0 0 0 | 530 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
532 | 0 0 0 85 85 85 85 85 85 0 0 0 | 531 | 0 0 0 0 0 0 0 0 0 0 0 0 |
533 | 85 85 85 170 85 0 255 255 85 170 85 0 | 532 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
534 | 255 255 85 170 85 0 255 255 85 170 85 0 | 533 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
535 | 170 85 0 170 85 0 170 85 0 170 85 0 | 534 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
536 | 170 85 0 170 85 0 85 85 85 0 0 0 | 535 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
537 | 0 0 0 85 85 85 170 170 170 85 85 85 | 536 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
538 | 0 0 0 0 0 0 85 85 85 0 0 0 | 537 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
539 | 0 0 0 0 0 0 0 0 0 0 0 0 | 538 | 170 85 0 85 255 85 170 85 0 170 85 0 170 85 0 85 255 85 |
540 | 0 0 0 0 0 0 0 0 0 0 0 0 | 539 | 170 85 0 170 85 0 0 170 0 0 0 0 0 0 0 0 0 0 |
541 | 0 0 0 0 0 0 0 0 0 0 0 0 | 540 | 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
542 | 0 0 0 0 0 0 0 0 0 0 0 0 | 541 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
543 | 0 0 0 0 0 0 0 0 0 0 0 0 | 542 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
544 | 0 0 0 0 0 0 0 0 0 0 0 0 | 543 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
545 | 0 0 0 0 0 0 0 0 0 0 0 0 | 544 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
546 | 0 0 0 0 0 0 0 0 0 0 0 0 | 545 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
547 | 0 0 0 0 0 0 0 0 0 0 0 0 | 546 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
548 | 0 0 0 0 0 0 0 0 0 0 0 0 | 547 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
549 | 0 0 0 0 0 0 0 0 0 0 0 0 | 548 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
550 | 0 0 0 0 0 0 0 0 0 0 0 0 | 549 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
551 | 0 0 0 0 0 0 0 0 0 0 0 0 | 550 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
552 | 0 0 0 85 85 85 85 85 85 0 0 0 | 551 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
553 | 85 85 85 170 85 0 170 85 0 170 85 0 | 552 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
554 | 170 85 0 170 85 0 170 85 0 170 85 0 | 553 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
555 | 170 85 0 170 85 0 170 85 0 170 85 0 | 554 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
556 | 170 170 170 170 170 170 170 170 170 0 0 0 | 555 | 0 0 0 0 0 0 0 0 0 0 0 0 |
557 | 0 0 0 0 0 0 170 170 170 170 170 170 | 556 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
558 | 0 0 0 0 0 0 0 0 0 85 85 85 | 557 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
559 | 0 0 0 0 0 0 0 0 0 0 0 0 | 558 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
560 | 0 0 0 0 0 0 0 0 0 0 0 0 | 559 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
561 | 0 0 0 0 0 0 0 0 0 0 0 0 | 560 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
562 | 0 0 0 0 0 0 0 0 0 0 0 0 | 561 | 0 0 0 0 0 0 0 0 0 0 0 0 0 170 0 170 85 0 |
563 | 0 0 0 0 0 0 0 0 0 0 0 0 | 562 | 255 255 85 170 85 0 255 255 85 255 255 85 255 255 85 170 85 0 |
564 | 0 0 0 0 0 0 0 0 0 0 0 0 | 563 | 255 255 85 85 255 85 170 85 0 170 85 0 85 85 85 0 0 0 |
565 | 0 0 0 0 0 0 0 0 0 0 0 0 | 564 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
566 | 0 0 0 0 0 0 0 0 0 0 0 0 | 565 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
567 | 0 0 0 0 0 0 0 0 0 0 0 0 | 566 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
568 | 0 0 0 0 0 0 0 0 0 0 0 0 | 567 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
569 | 0 0 0 0 0 0 0 0 0 0 0 0 | 568 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
570 | 0 0 0 0 0 0 0 0 0 0 0 0 | 569 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
571 | 0 0 0 0 0 0 0 0 0 0 0 0 | 570 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
572 | 0 0 0 85 85 85 0 0 0 0 0 0 | 571 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
573 | 85 85 85 170 170 170 170 85 0 170 85 0 | 572 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
574 | 170 85 0 170 85 0 170 85 0 170 85 0 | 573 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
575 | 170 85 0 170 85 0 170 170 170 170 170 170 | 574 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
576 | 170 170 170 170 170 170 170 170 170 85 85 85 | 575 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
577 | 0 0 0 0 0 0 85 85 85 85 85 85 | 576 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
578 | 0 0 0 0 0 0 0 0 0 85 85 85 | 577 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
579 | 0 0 0 0 0 0 0 0 0 0 0 0 | 578 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
580 | 0 0 0 0 0 0 0 0 0 0 0 0 | 579 | 0 0 0 0 0 0 0 0 0 0 0 0 |
581 | 0 0 0 0 0 0 0 0 0 0 0 0 | 580 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
582 | 0 0 0 0 0 0 0 0 0 0 0 0 | 581 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
583 | 0 0 0 0 0 0 0 0 0 0 0 0 | 582 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
584 | 0 0 0 0 0 0 0 0 0 0 0 0 | 583 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
585 | 0 0 0 0 0 0 0 0 0 0 0 0 | 584 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
586 | 0 0 0 0 0 0 0 0 0 0 0 0 | 585 | 0 0 0 0 0 0 0 0 0 0 0 0 170 85 0 255 255 85 |
587 | 0 0 0 0 0 0 0 0 0 0 0 0 | 586 | 85 255 85 255 255 85 255 255 85 170 85 0 255 255 85 255 255 85 |
588 | 0 0 0 0 0 0 0 0 0 0 0 0 | 587 | 255 255 85 170 85 0 255 255 85 85 255 85 170 85 0 0 0 0 |
589 | 0 0 0 0 0 0 0 0 0 0 0 0 | 588 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 |
590 | 0 0 0 0 0 0 0 0 0 0 0 0 | 589 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
591 | 0 0 0 0 0 0 0 0 0 0 0 0 | 590 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
592 | 0 0 0 85 85 85 0 0 0 0 0 0 | 591 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
593 | 85 85 85 170 170 170 170 170 170 170 85 0 | 592 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
594 | 170 85 0 170 85 0 170 85 0 170 85 0 | 593 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
595 | 170 170 170 170 170 170 170 170 170 170 170 170 | 594 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
596 | 255 255 255 255 255 255 255 255 255 170 170 170 | 595 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
597 | 0 0 0 0 0 0 0 0 0 0 0 0 | 596 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
598 | 0 0 0 0 0 0 0 0 0 85 85 85 | 597 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
599 | 0 0 0 0 0 0 0 0 0 0 0 0 | 598 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
600 | 0 0 0 0 0 0 0 0 0 0 0 0 | 599 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
601 | 0 0 0 0 0 0 0 0 0 0 0 0 | 600 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
602 | 0 0 0 0 0 0 0 0 0 0 0 0 | 601 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
603 | 0 0 0 0 0 0 0 0 0 0 0 0 | 602 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
604 | 0 0 0 0 0 0 0 0 0 0 0 0 | 603 | 0 0 0 0 0 0 0 0 0 0 0 0 |
605 | 0 0 0 0 0 0 0 0 0 0 0 0 | 604 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
606 | 0 0 0 0 0 0 0 0 0 0 0 0 | 605 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
607 | 0 0 0 0 0 0 0 0 0 0 0 0 | 606 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
608 | 0 0 0 0 0 0 0 0 0 0 0 0 | 607 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
609 | 0 0 0 0 0 0 0 0 0 0 0 0 | 608 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
610 | 0 0 0 0 0 0 0 0 0 0 0 0 | 609 | 0 0 0 0 0 0 0 0 0 85 85 85 255 255 85 170 85 0 |
611 | 0 0 0 0 0 0 0 0 0 0 0 0 | 610 | 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 170 85 0 |
612 | 85 85 85 0 0 0 0 0 0 85 85 85 | 611 | 255 255 85 255 255 85 255 255 85 255 255 85 170 85 0 85 255 85 |
613 | 255 255 255 255 255 255 170 170 170 170 170 170 | 612 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
614 | 170 170 170 170 170 170 170 170 170 170 170 170 | 613 | 0 0 0 85 85 85 0 0 0 85 85 85 170 170 170 0 0 0 |
615 | 170 170 170 170 170 170 255 255 255 255 255 255 | 614 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
616 | 255 255 255 255 255 255 255 255 255 255 255 255 | 615 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
617 | 85 85 85 0 0 0 0 0 0 0 0 0 | 616 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
618 | 0 0 0 0 0 0 0 0 0 0 0 0 | 617 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
619 | 85 85 85 0 0 0 0 0 0 0 0 0 | 618 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
620 | 0 0 0 0 0 0 0 0 0 0 0 0 | 619 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
621 | 0 0 0 0 0 0 0 0 0 0 0 0 | 620 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
622 | 0 0 0 0 0 0 0 0 0 0 0 0 | 621 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
623 | 0 0 0 0 0 0 0 0 0 0 0 0 | 622 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
624 | 0 0 0 0 0 0 0 0 0 0 0 0 | 623 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
625 | 0 0 0 0 0 0 0 0 0 0 0 0 | 624 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
626 | 0 0 0 0 0 0 0 0 0 0 0 0 | 625 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
627 | 0 0 0 0 0 0 0 0 0 0 0 0 | 626 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
628 | 0 0 0 0 0 0 0 0 0 0 0 0 | 627 | 0 0 0 0 0 0 0 0 0 0 0 0 |
629 | 0 0 0 0 0 0 0 0 0 0 0 0 | 628 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
630 | 0 0 0 0 0 0 0 0 0 0 0 0 | 629 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
631 | 0 0 0 0 0 0 0 0 0 0 0 0 | 630 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
632 | 85 85 85 0 0 0 0 0 0 170 170 170 | 631 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
633 | 255 255 255 255 255 255 170 170 170 170 170 170 | 632 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
634 | 170 170 170 170 170 170 170 170 170 170 170 170 | 633 | 0 0 0 0 0 0 0 0 0 170 85 0 255 255 85 255 255 85 |
635 | 170 170 170 255 255 255 255 255 255 255 255 255 | 634 | 255 255 85 255 255 85 170 85 0 255 255 85 85 255 85 255 255 85 |
636 | 255 255 255 255 255 255 255 255 255 255 255 255 | 635 | 255 255 85 170 85 0 255 255 85 170 85 0 255 255 85 170 85 0 |
637 | 170 170 170 0 0 0 0 0 0 0 0 0 | 636 | 170 85 0 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 |
638 | 0 0 0 0 0 0 0 0 0 0 0 0 | 637 | 85 85 85 0 0 0 0 0 0 85 85 85 170 170 170 0 0 0 |
639 | 85 85 85 0 0 0 0 0 0 0 0 0 | 638 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
640 | 0 0 0 0 0 0 0 0 0 0 0 0 | 639 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
641 | 0 0 0 0 0 0 0 0 0 0 0 0 | 640 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 |
642 | 0 0 0 0 0 0 0 0 0 0 0 0 | 641 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
643 | 0 0 0 0 0 0 0 0 0 0 0 0 | 642 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
644 | 0 0 0 0 0 0 0 0 0 0 0 0 | 643 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
645 | 0 0 0 0 0 0 0 0 0 0 0 0 | 644 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
646 | 0 0 0 0 0 0 0 0 0 0 0 0 | 645 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
647 | 0 0 0 0 0 0 0 0 0 0 0 0 | 646 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
648 | 0 0 0 0 0 0 0 0 0 0 0 0 | 647 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
649 | 0 0 0 0 0 0 0 0 0 0 0 0 | 648 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
650 | 0 0 0 0 0 0 0 0 0 0 0 0 | 649 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
651 | 0 0 0 0 0 0 0 0 0 85 85 85 | 650 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
652 | 0 0 0 0 0 0 85 85 85 255 255 255 | 651 | 0 0 0 0 0 0 0 0 0 0 0 0 |
653 | 255 255 255 255 255 255 255 255 255 170 170 170 | 652 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
654 | 170 170 170 170 170 170 170 170 170 170 170 170 | 653 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
655 | 255 255 255 255 255 255 255 255 255 255 255 255 | 654 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
656 | 255 255 255 255 255 255 255 255 255 255 255 255 | 655 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
657 | 255 255 255 0 0 0 0 0 0 0 0 0 | 656 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
658 | 0 0 0 0 0 0 0 0 0 0 0 0 | 657 | 0 0 0 0 0 0 170 85 0 255 255 85 85 255 85 255 255 85 |
659 | 0 0 0 85 85 85 0 0 0 0 0 0 | 658 | 170 170 170 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 |
660 | 0 0 0 0 0 0 0 0 0 0 0 0 | 659 | 255 255 85 255 255 85 85 255 85 255 255 85 255 255 85 255 255 85 |
661 | 0 0 0 0 0 0 0 0 0 0 0 0 | 660 | 85 255 85 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
662 | 0 0 0 0 0 0 0 0 0 0 0 0 | 661 | 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
663 | 0 0 0 0 0 0 0 0 0 0 0 0 | 662 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
664 | 0 0 0 0 0 0 0 0 0 0 0 0 | 663 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 |
665 | 0 0 0 0 0 0 0 0 0 0 0 0 | 664 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
666 | 0 0 0 0 0 0 0 0 0 0 0 0 | 665 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
667 | 0 0 0 0 0 0 0 0 0 0 0 0 | 666 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
668 | 0 0 0 0 0 0 0 0 0 0 0 0 | 667 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
669 | 0 0 0 0 0 0 0 0 0 0 0 0 | 668 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
670 | 0 0 0 0 0 0 0 0 0 0 0 0 | 669 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
671 | 0 0 0 0 0 0 85 85 85 0 0 0 | 670 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
672 | 0 0 0 85 85 85 170 170 170 255 255 255 | 671 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
673 | 255 255 255 255 255 255 255 255 255 255 255 255 | 672 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
674 | 255 255 255 255 255 255 255 255 255 255 255 255 | 673 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
675 | 255 255 255 255 255 255 255 255 255 255 255 255 | 674 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
676 | 255 255 255 255 255 255 255 255 255 255 255 255 | 675 | 0 0 0 0 0 0 0 0 0 0 0 0 |
677 | 255 255 255 85 85 85 0 0 0 0 0 0 | 676 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
678 | 0 0 0 0 0 0 0 0 0 0 0 0 | 677 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
679 | 0 0 0 0 0 0 85 85 85 0 0 0 | 678 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
680 | 0 0 0 0 0 0 0 0 0 0 0 0 | 679 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
681 | 0 0 0 0 0 0 0 0 0 0 0 0 | 680 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
682 | 0 0 0 0 0 0 0 0 0 0 0 0 | 681 | 0 0 0 0 0 0 170 85 0 255 255 85 255 255 85 255 255 85 |
683 | 0 0 0 0 0 0 0 0 0 0 0 0 | 682 | 255 255 255 255 255 85 255 255 85 170 85 0 255 255 85 170 85 0 |
684 | 0 0 0 0 0 0 0 0 0 0 0 0 | 683 | 255 255 85 255 255 85 255 255 85 255 255 85 170 85 0 255 255 85 |
685 | 0 0 0 0 0 0 0 0 0 0 0 0 | 684 | 170 85 0 170 85 0 0 170 0 0 0 0 85 85 85 0 0 0 |
686 | 0 0 0 0 0 0 0 0 0 0 0 0 | 685 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 |
687 | 0 0 0 0 0 0 0 0 0 0 0 0 | 686 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 |
688 | 0 0 0 0 0 0 0 0 0 0 0 0 | 687 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
689 | 0 0 0 0 0 0 0 0 0 0 0 0 | 688 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 |
690 | 0 0 0 0 0 0 0 0 0 0 0 0 | 689 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
691 | 0 0 0 85 85 85 0 0 0 0 0 0 | 690 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
692 | 0 0 0 85 85 85 255 255 255 255 255 255 | 691 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
693 | 255 255 255 255 255 255 255 255 255 255 255 255 | 692 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
694 | 255 255 255 255 255 255 255 255 255 255 255 255 | 693 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
695 | 255 255 255 255 255 255 255 255 255 255 255 255 | 694 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
696 | 255 255 255 255 255 255 255 255 255 255 255 255 | 695 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
697 | 255 255 255 170 170 170 0 0 0 0 0 0 | 696 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
698 | 0 0 0 0 0 0 0 0 0 0 0 0 | 697 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
699 | 0 0 0 0 0 0 0 0 0 85 85 85 | 698 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
700 | 0 0 0 0 0 0 0 0 0 0 0 0 | 699 | 0 0 0 0 0 0 0 0 0 0 0 0 |
701 | 0 0 0 0 0 0 0 0 0 0 0 0 | 700 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
702 | 0 0 0 0 0 0 0 0 0 0 0 0 | 701 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
703 | 0 0 0 0 0 0 0 0 0 0 0 0 | 702 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
704 | 0 0 0 0 0 0 0 0 0 0 0 0 | 703 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
705 | 0 0 0 0 0 0 0 0 0 0 0 0 | 704 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
706 | 0 0 0 0 0 0 0 0 0 0 0 0 | 705 | 0 0 0 170 85 0 85 255 85 255 255 85 170 170 170 255 255 255 |
707 | 0 0 0 0 0 0 0 0 0 0 0 0 | 706 | 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 |
708 | 0 0 0 0 0 0 0 0 0 0 0 0 | 707 | 255 255 85 255 255 85 170 85 0 255 255 85 85 255 85 255 255 85 |
709 | 0 0 0 0 0 0 0 0 0 0 0 0 | 708 | 255 255 85 85 255 85 0 0 0 85 85 85 0 0 0 85 85 85 |
710 | 0 0 0 0 0 0 0 0 0 0 0 0 | 709 | 0 0 0 85 85 85 0 0 0 85 85 85 85 85 85 0 0 0 |
711 | 0 0 0 85 85 85 0 0 0 0 0 0 | 710 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
712 | 0 0 0 85 85 85 255 255 255 255 255 255 | 711 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
713 | 255 255 255 255 255 255 255 255 255 255 255 255 | 712 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
714 | 255 255 255 255 255 255 255 255 255 255 255 255 | 713 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
715 | 255 255 255 255 255 255 255 255 255 255 255 255 | 714 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
716 | 255 255 255 255 255 255 255 255 255 255 255 255 | 715 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
717 | 255 255 255 255 255 255 0 0 0 0 0 0 | 716 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
718 | 0 0 0 0 0 0 0 0 0 0 0 0 | 717 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
719 | 0 0 0 0 0 0 0 0 0 0 0 0 | 718 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
720 | 85 85 85 0 0 0 0 0 0 0 0 0 | 719 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
721 | 0 0 0 0 0 0 0 0 0 0 0 0 | 720 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
722 | 0 0 0 0 0 0 0 0 0 0 0 0 | 721 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
723 | 0 0 0 0 0 0 0 0 0 0 0 0 | 722 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
724 | 0 0 0 0 0 0 0 0 0 0 0 0 | 723 | 0 0 0 0 0 0 0 0 0 0 0 0 |
725 | 0 0 0 0 0 0 0 0 0 0 0 0 | 724 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
726 | 0 0 0 0 0 0 0 0 0 0 0 0 | 725 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
727 | 0 0 0 0 0 0 0 0 0 0 0 0 | 726 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
728 | 0 0 0 0 0 0 0 0 0 0 0 0 | 727 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
729 | 0 0 0 0 0 0 0 0 0 0 0 0 | 728 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
730 | 0 0 0 0 0 0 0 0 0 0 0 0 | 729 | 0 0 0 255 255 85 255 255 85 255 255 85 255 255 255 255 255 85 |
731 | 85 85 85 0 0 0 0 0 0 0 0 0 | 730 | 255 255 85 255 255 85 85 255 85 255 255 85 255 255 85 85 255 85 |
732 | 85 85 85 170 170 170 255 255 255 255 255 255 | 731 | 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 170 85 0 |
733 | 255 255 255 255 255 255 255 255 255 255 255 255 | 732 | 255 255 85 170 85 0 85 85 85 0 0 0 0 0 0 85 85 85 |
734 | 255 255 255 255 255 255 255 255 255 255 255 255 | 733 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 |
735 | 255 255 255 255 255 255 255 255 255 255 255 255 | 734 | 85 85 85 0 0 0 85 85 85 85 85 85 0 0 0 85 85 85 |
736 | 255 255 255 255 255 255 255 255 255 255 255 255 | 735 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
737 | 255 255 255 255 255 255 85 85 85 0 0 0 | 736 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
738 | 0 0 0 0 0 0 0 0 0 0 0 0 | 737 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
739 | 0 0 0 0 0 0 0 0 0 0 0 0 | 738 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
740 | 0 0 0 85 85 85 0 0 0 0 0 0 | 739 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
741 | 0 0 0 0 0 0 0 0 0 0 0 0 | 740 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
742 | 0 0 0 0 0 0 0 0 0 0 0 0 | 741 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
743 | 0 0 0 0 0 0 0 0 0 0 0 0 | 742 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
744 | 0 0 0 0 0 0 0 0 0 0 0 0 | 743 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
745 | 0 0 0 0 0 0 0 0 0 0 0 0 | 744 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
746 | 0 0 0 0 0 0 0 0 0 0 0 0 | 745 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
747 | 0 0 0 0 0 0 0 0 0 0 0 0 | 746 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
748 | 0 0 0 0 0 0 0 0 0 0 0 0 | 747 | 0 0 0 0 0 0 0 0 0 0 0 0 |
749 | 0 0 0 0 0 0 0 0 0 0 0 0 | 748 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
750 | 0 0 0 0 0 0 0 0 0 85 85 85 | 749 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
751 | 0 0 0 0 0 0 0 0 0 0 0 0 | 750 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
752 | 85 85 85 170 170 170 170 170 170 170 170 170 | 751 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
753 | 255 255 255 255 255 255 255 255 255 170 170 170 | 752 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
754 | 170 170 170 170 170 170 255 255 255 255 255 255 | 753 | 170 85 0 170 85 0 255 255 85 255 255 85 255 255 255 170 170 170 |
755 | 255 255 255 255 255 255 255 255 255 255 255 255 | 754 | 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 |
756 | 170 170 170 170 170 170 170 170 170 170 170 170 | 755 | 170 85 0 255 255 85 255 255 85 170 85 0 255 255 85 255 255 85 |
757 | 170 170 170 170 170 170 170 170 170 85 85 85 | 756 | 255 255 85 85 255 85 170 85 0 85 85 85 0 0 0 0 0 0 |
758 | 0 0 0 0 0 0 0 0 0 0 0 0 | 757 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 85 85 85 |
759 | 0 0 0 0 0 0 0 0 0 0 0 0 | 758 | 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 0 0 0 |
760 | 0 0 0 85 85 85 0 0 0 0 0 0 | 759 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 |
761 | 0 0 0 0 0 0 0 0 0 0 0 0 | 760 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
762 | 0 0 0 0 0 0 0 0 0 0 0 0 | 761 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 |
763 | 0 0 0 0 0 0 0 0 0 0 0 0 | 762 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
764 | 0 0 0 0 0 0 0 0 0 0 0 0 | 763 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
765 | 0 0 0 0 0 0 0 0 0 0 0 0 | 764 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
766 | 0 0 0 0 0 0 0 0 0 0 0 0 | 765 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
767 | 0 0 0 0 0 0 0 0 0 0 0 0 | 766 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
768 | 0 0 0 0 0 0 0 0 0 0 0 0 | 767 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
769 | 0 0 0 0 0 0 0 0 0 0 0 0 | 768 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
770 | 0 0 0 0 0 0 0 0 0 85 85 85 | 769 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
771 | 0 0 0 0 0 0 0 0 0 0 0 0 | 770 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
772 | 170 170 170 170 170 170 170 170 170 255 255 255 | 771 | 0 0 0 0 0 0 0 0 0 0 0 0 |
773 | 255 255 255 255 255 255 255 255 255 255 255 255 | 772 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
774 | 170 170 170 255 255 255 255 255 255 255 255 255 | 773 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
775 | 255 255 255 255 255 255 255 255 255 255 255 255 | 774 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
776 | 255 255 255 255 255 255 170 170 170 170 170 170 | 775 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
777 | 170 170 170 170 170 170 170 170 170 85 85 85 | 776 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
778 | 0 0 0 0 0 0 85 85 85 0 0 0 | 777 | 255 255 85 85 255 85 255 255 85 170 170 170 255 255 255 255 255 85 |
779 | 0 0 0 0 0 0 0 0 0 0 0 0 | 778 | 255 255 85 255 255 85 170 85 0 255 255 85 255 255 85 255 255 85 |
780 | 0 0 0 0 0 0 85 85 85 0 0 0 | 779 | 255 255 85 255 255 85 255 255 85 255 255 85 85 255 85 170 85 0 |
781 | 0 0 0 0 0 0 0 0 0 0 0 0 | 780 | 255 255 85 170 85 0 170 85 0 0 0 0 85 85 85 0 0 0 |
782 | 0 0 0 0 0 0 0 0 0 0 0 0 | 781 | 85 85 85 85 85 85 85 85 85 170 170 170 170 170 170 170 170 170 |
783 | 0 0 0 0 0 0 0 0 0 0 0 0 | 782 | 85 255 85 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 |
784 | 0 0 0 0 0 0 0 0 0 0 0 0 | 783 | 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 |
785 | 0 0 0 0 0 0 0 0 0 0 0 0 | 784 | 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 |
786 | 0 0 0 0 0 0 0 0 0 0 0 0 | 785 | 170 170 170 170 170 170 170 170 170 170 170 170 255 255 85 170 170 170 |
787 | 0 0 0 0 0 0 0 0 0 0 0 0 | 786 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
788 | 0 0 0 0 0 0 0 0 0 0 0 0 | 787 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
789 | 0 0 0 0 0 0 0 0 0 0 0 0 | 788 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
790 | 0 0 0 0 0 0 85 85 85 0 0 0 | 789 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
791 | 0 0 0 0 0 0 0 0 0 0 0 0 | 790 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
792 | 170 170 170 255 255 255 255 255 255 255 255 255 | 791 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
793 | 255 255 255 255 255 255 255 255 255 255 255 255 | 792 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
794 | 255 255 255 255 255 255 255 255 255 255 255 255 | 793 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
795 | 255 255 255 255 255 255 255 255 255 255 255 255 | 794 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
796 | 255 255 255 255 255 255 255 255 255 255 255 255 | 795 | 0 0 0 0 0 0 0 0 0 0 0 0 |
797 | 255 255 255 170 170 170 170 170 170 170 170 170 | 796 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
798 | 0 0 0 0 0 0 0 0 0 85 85 85 | 797 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
799 | 85 85 85 0 0 0 0 0 0 0 0 0 | 798 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
800 | 0 0 0 0 0 0 85 85 85 0 0 0 | 799 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
801 | 0 0 0 0 0 0 0 0 0 0 0 0 | 800 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 170 0 |
802 | 0 0 0 0 0 0 0 0 0 0 0 0 | 801 | 170 85 0 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 |
803 | 0 0 0 0 0 0 0 0 0 0 0 0 | 802 | 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 |
804 | 0 0 0 0 0 0 0 0 0 0 0 0 | 803 | 255 255 85 255 255 85 85 255 85 255 255 85 170 85 0 170 85 0 |
805 | 0 0 0 0 0 0 0 0 0 0 0 0 | 804 | 170 85 0 85 255 85 255 255 85 85 85 85 170 170 170 170 170 170 |
806 | 0 0 0 0 0 0 0 0 0 0 0 0 | 805 | 170 170 170 170 170 170 170 170 170 85 255 85 170 170 170 170 170 170 |
807 | 0 0 0 0 0 0 0 0 0 0 0 0 | 806 | 85 85 85 170 170 170 170 170 170 170 85 0 170 170 170 170 170 170 |
808 | 0 0 0 0 0 0 0 0 0 0 0 0 | 807 | 85 255 85 170 170 170 170 85 0 170 170 170 85 255 85 255 85 85 |
809 | 0 0 0 0 0 0 0 0 0 0 0 0 | 808 | 85 255 85 170 170 170 255 255 85 85 85 85 255 255 85 170 170 170 |
810 | 0 0 0 0 0 0 85 85 85 0 0 0 | 809 | 85 255 85 170 170 170 255 255 85 170 170 170 170 170 170 85 85 85 |
811 | 85 85 85 0 0 0 0 0 0 85 85 85 | 810 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
812 | 255 255 255 255 255 255 255 255 255 255 255 255 | 811 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
813 | 255 255 255 255 255 255 255 255 255 255 255 255 | 812 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
814 | 255 255 255 255 255 255 255 255 255 255 255 255 | 813 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
815 | 255 255 255 255 255 255 255 255 255 255 255 255 | 814 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
816 | 255 255 255 255 255 255 255 255 255 255 255 255 | 815 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
817 | 255 255 255 255 255 255 170 170 170 170 170 170 | 816 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
818 | 85 85 85 0 0 0 0 0 0 0 0 0 | 817 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
819 | 0 0 0 85 85 85 0 0 0 0 0 0 | 818 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
820 | 0 0 0 0 0 0 0 0 0 85 85 85 | 819 | 0 0 0 0 0 0 0 0 0 0 0 0 |
821 | 0 0 0 0 0 0 0 0 0 0 0 0 | 820 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
822 | 0 0 0 0 0 0 0 0 0 0 0 0 | 821 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
823 | 0 0 0 0 0 0 0 0 0 0 0 0 | 822 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
824 | 0 0 0 0 0 0 0 0 0 0 0 0 | 823 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
825 | 0 0 0 0 0 0 0 0 0 0 0 0 | 824 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 85 |
826 | 0 0 0 0 0 0 0 0 0 0 0 0 | 825 | 255 255 85 255 255 85 255 255 85 255 255 255 255 255 85 255 255 85 |
827 | 0 0 0 0 0 0 0 0 0 0 0 0 | 826 | 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 170 85 0 |
828 | 0 0 0 0 0 0 0 0 0 0 0 0 | 827 | 255 255 85 255 255 85 255 255 85 170 85 0 0 170 0 85 85 85 |
829 | 0 0 0 0 0 0 0 0 0 0 0 0 | 828 | 170 170 170 170 170 170 255 255 85 170 170 170 170 170 170 85 255 85 |
830 | 0 0 0 85 85 85 0 0 0 0 0 0 | 829 | 255 85 85 85 255 85 85 85 85 255 85 85 85 85 85 170 170 170 |
831 | 85 85 85 0 0 0 0 0 0 170 170 170 | 830 | 170 85 0 170 170 170 85 85 85 85 255 85 85 85 85 85 85 85 |
832 | 255 255 255 255 255 255 255 255 255 255 255 255 | 831 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
833 | 255 255 255 255 255 255 255 255 255 255 255 255 | 832 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
834 | 255 255 255 255 255 255 255 255 255 255 255 255 | 833 | 170 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
835 | 255 255 255 255 255 255 255 255 255 255 255 255 | 834 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
836 | 255 255 255 255 255 255 255 255 255 255 255 255 | 835 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
837 | 255 255 255 255 255 255 255 255 255 255 255 255 | 836 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
838 | 170 170 170 85 85 85 0 0 0 0 0 0 | 837 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
839 | 0 0 0 85 85 85 85 85 85 0 0 0 | 838 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
840 | 0 0 0 0 0 0 0 0 0 85 85 85 | 839 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
841 | 0 0 0 0 0 0 0 0 0 0 0 0 | 840 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
842 | 0 0 0 0 0 0 0 0 0 0 0 0 | 841 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
843 | 0 0 0 0 0 0 0 0 0 0 0 0 | 842 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
844 | 0 0 0 0 0 0 0 0 0 0 0 0 | 843 | 0 0 0 0 0 0 0 0 0 0 0 0 |
845 | 0 0 0 0 0 0 0 0 0 0 0 0 | 844 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
846 | 0 0 0 0 0 0 0 0 0 0 0 0 | 845 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
847 | 0 0 0 0 0 0 0 0 0 0 0 0 | 846 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
848 | 0 0 0 0 0 0 0 0 0 0 0 0 | 847 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
849 | 0 0 0 0 0 0 0 0 0 0 0 0 | 848 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 85 |
850 | 0 0 0 85 85 85 0 0 0 85 85 85 | 849 | 170 85 0 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 |
851 | 0 0 0 0 0 0 85 85 85 255 255 255 | 850 | 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 |
852 | 255 255 255 255 255 255 255 255 255 255 255 255 | 851 | 255 255 85 255 255 85 170 85 0 255 255 85 85 85 85 85 85 85 |
853 | 255 255 255 255 255 255 255 255 255 255 255 255 | 852 | 255 255 85 170 170 170 85 85 85 85 85 85 0 0 0 85 85 85 |
854 | 255 255 255 255 255 255 255 255 255 255 255 255 | 853 | 0 0 0 85 85 85 85 85 85 170 170 170 170 85 0 170 170 170 |
855 | 255 255 255 255 255 255 255 255 255 255 255 255 | 854 | 170 170 170 255 255 85 170 170 170 85 85 85 85 85 85 85 85 85 |
856 | 255 255 255 255 255 255 255 255 255 255 255 255 | 855 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
857 | 255 255 255 255 255 255 255 255 255 255 255 255 | 856 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
858 | 255 255 255 170 170 170 0 0 0 85 85 85 | 857 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
859 | 85 85 85 0 0 0 85 85 85 0 0 0 | 858 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
860 | 0 0 0 0 0 0 0 0 0 85 85 85 | 859 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
861 | 0 0 0 0 0 0 0 0 0 0 0 0 | 860 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
862 | 0 0 0 0 0 0 0 0 0 0 0 0 | 861 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
863 | 0 0 0 0 0 0 0 0 0 0 0 0 | 862 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
864 | 0 0 0 0 0 0 0 0 0 0 0 0 | 863 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
865 | 0 0 0 0 0 0 0 0 0 0 0 0 | 864 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
866 | 0 0 0 0 0 0 0 0 0 0 0 0 | 865 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
867 | 0 0 0 0 0 0 0 0 0 0 0 0 | 866 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
868 | 0 0 0 0 0 0 0 0 0 0 0 0 | 867 | 0 0 0 0 0 0 0 0 0 0 0 0 |
869 | 0 0 0 0 0 0 0 0 0 0 0 0 | 868 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
870 | 0 0 0 85 85 85 0 0 0 85 85 85 | 869 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
871 | 0 0 0 85 85 85 170 170 170 255 255 255 | 870 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
872 | 255 255 255 255 255 255 255 255 255 255 255 255 | 871 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
873 | 255 255 255 255 255 255 255 255 255 255 255 255 | 872 | 0 0 0 0 0 0 0 0 0 0 0 0 170 85 0 255 255 85 |
874 | 255 255 255 255 255 255 255 255 255 255 255 255 | 873 | 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 |
875 | 255 255 255 255 255 255 255 255 255 255 255 255 | 874 | 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 |
876 | 255 255 255 255 255 255 255 255 255 255 255 255 | 875 | 255 255 85 255 255 85 255 255 85 170 85 0 170 85 0 0 170 0 |
877 | 255 255 255 255 255 255 255 255 255 255 255 255 | 876 | 0 0 0 170 85 0 170 85 0 0 170 0 0 0 0 0 0 0 |
878 | 255 255 255 170 170 170 0 0 0 85 85 85 | 877 | 85 85 85 0 0 0 85 85 85 85 85 85 170 170 170 85 85 85 |
879 | 85 85 85 0 0 0 85 85 85 0 0 0 | 878 | 170 170 170 85 85 85 85 85 85 170 170 170 170 85 0 85 85 85 |
880 | 0 0 0 0 0 0 0 0 0 0 0 0 | 879 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
881 | 85 85 85 0 0 0 0 0 0 0 0 0 | 880 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
882 | 0 0 0 0 0 0 0 0 0 0 0 0 | 881 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
883 | 0 0 0 0 0 0 0 0 0 0 0 0 | 882 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
884 | 0 0 0 0 0 0 0 0 0 0 0 0 | 883 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
885 | 0 0 0 0 0 0 0 0 0 0 0 0 | 884 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
886 | 0 0 0 0 0 0 0 0 0 0 0 0 | 885 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
887 | 0 0 0 0 0 0 0 0 0 0 0 0 | 886 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
888 | 0 0 0 0 0 0 0 0 0 0 0 0 | 887 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
889 | 0 0 0 0 0 0 0 0 0 0 0 0 | 888 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
890 | 85 85 85 0 0 0 0 0 0 85 85 85 | 889 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
891 | 0 0 0 170 170 170 255 255 255 255 255 255 | 890 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
892 | 255 255 255 255 255 255 255 255 255 255 255 255 | 891 | 0 0 0 0 0 0 0 0 0 0 0 0 |
893 | 255 255 255 255 255 255 255 255 255 255 255 255 | 892 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
894 | 255 255 255 255 255 255 255 255 255 255 255 255 | 893 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
895 | 255 255 255 255 255 255 255 255 255 255 255 255 | 894 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
896 | 255 255 255 255 255 255 255 255 255 255 255 255 | 895 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
897 | 255 255 255 255 255 255 255 255 255 255 255 255 | 896 | 0 0 0 0 0 0 0 0 0 0 0 0 255 255 85 170 85 0 |
898 | 255 255 255 255 255 255 85 85 85 0 0 0 | 897 | 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 170 85 0 |
899 | 0 0 0 0 0 0 0 0 0 85 85 85 | 898 | 255 255 85 255 255 85 255 255 85 170 85 0 255 255 85 255 255 85 |
900 | 0 0 0 0 0 0 0 0 0 0 0 0 | 899 | 170 85 0 255 255 85 85 255 85 255 255 85 255 255 85 170 85 0 |
901 | 85 85 85 0 0 0 0 0 0 0 0 0 | 900 | 170 85 0 255 255 85 170 85 0 0 0 0 0 0 0 0 0 0 |
902 | 0 0 0 0 0 0 0 0 0 0 0 0 | 901 | 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 85 85 85 |
903 | 0 0 0 0 0 0 0 0 0 0 0 0 | 902 | 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 0 0 0 |
904 | 0 0 0 0 0 0 0 0 0 0 0 0 | 903 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
905 | 0 0 0 0 0 0 0 0 0 0 0 0 | 904 | 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
906 | 0 0 0 0 0 0 0 0 0 0 0 0 | 905 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
907 | 0 0 0 0 0 0 0 0 0 0 0 0 | 906 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
908 | 0 0 0 0 0 0 0 0 0 0 0 0 | 907 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
909 | 0 0 0 0 0 0 0 0 0 0 0 0 | 908 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
910 | 85 85 85 0 0 0 85 85 85 0 0 0 | 909 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
911 | 0 0 0 255 255 255 255 255 255 255 255 255 | 910 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
912 | 255 255 255 255 255 255 255 255 255 255 255 255 | 911 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
913 | 255 255 255 255 255 255 255 255 255 255 255 255 | 912 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
914 | 255 255 255 255 255 255 255 255 255 255 255 255 | 913 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
915 | 255 255 255 255 255 255 255 255 255 255 255 255 | 914 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
916 | 255 255 255 255 255 255 255 255 255 255 255 255 | 915 | 0 0 0 0 0 0 0 0 0 0 0 0 |
917 | 255 255 255 255 255 255 255 255 255 255 255 255 | 916 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
918 | 255 255 255 255 255 255 170 170 170 0 0 0 | 917 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
919 | 0 0 0 0 0 0 0 0 0 85 85 85 | 918 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
920 | 0 0 0 0 0 0 0 0 0 0 0 0 | 919 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
921 | 85 85 85 0 0 0 0 0 0 0 0 0 | 920 | 0 0 0 0 0 0 0 0 0 0 0 0 255 255 85 255 255 85 |
922 | 0 0 0 0 0 0 0 0 0 0 0 0 | 921 | 255 255 85 255 255 85 170 85 0 255 255 85 255 255 85 255 255 85 |
923 | 0 0 0 0 0 0 0 0 0 0 0 0 | 922 | 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 |
924 | 0 0 0 0 0 0 0 0 0 0 0 0 | 923 | 255 255 85 255 255 85 255 255 85 170 85 0 255 255 85 255 255 85 |
925 | 0 0 0 0 0 0 0 0 0 0 0 0 | 924 | 85 255 85 170 85 0 0 170 0 85 85 85 0 0 0 85 85 85 |
926 | 0 0 0 0 0 0 0 0 0 0 0 0 | 925 | 0 0 0 85 85 85 0 0 0 85 85 85 85 85 85 85 85 85 |
927 | 0 0 0 0 0 0 0 0 0 0 0 0 | 926 | 85 85 85 85 85 85 85 85 85 85 85 85 0 0 0 85 85 85 |
928 | 0 0 0 0 0 0 0 0 0 0 0 0 | 927 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
929 | 0 0 0 0 0 0 0 0 0 85 85 85 | 928 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
930 | 0 0 0 0 0 0 85 85 85 0 0 0 | 929 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
931 | 85 85 85 255 255 255 255 255 255 255 255 255 | 930 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
932 | 255 255 255 255 255 255 255 255 255 255 255 255 | 931 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
933 | 255 255 255 255 255 255 255 255 255 255 255 255 | 932 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
934 | 255 255 255 255 255 255 255 255 255 255 255 255 | 933 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
935 | 255 255 255 255 255 255 255 255 255 255 255 255 | 934 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
936 | 255 255 255 255 255 255 255 255 255 255 255 255 | 935 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
937 | 255 255 255 255 255 255 255 255 255 255 255 255 | 936 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
938 | 255 255 255 255 255 255 170 170 170 0 0 0 | 937 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
939 | 0 0 0 0 0 0 0 0 0 85 85 85 | 938 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
940 | 0 0 0 0 0 0 0 0 0 0 0 0 | 939 | 0 0 0 0 0 0 0 0 0 0 0 0 |
941 | 85 85 85 0 0 0 0 0 0 0 0 0 | 940 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
942 | 0 0 0 0 0 0 0 0 0 0 0 0 | 941 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
943 | 0 0 0 0 0 0 0 0 0 0 0 0 | 942 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
944 | 0 0 0 0 0 0 0 0 0 0 0 0 | 943 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
945 | 0 0 0 0 0 0 0 0 0 0 0 0 | 944 | 0 0 0 0 0 0 0 0 0 0 170 0 170 85 0 255 255 85 |
946 | 0 0 0 0 0 0 0 0 0 0 0 0 | 945 | 85 255 85 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 |
947 | 0 0 0 0 0 0 0 0 0 0 0 0 | 946 | 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 |
948 | 0 0 0 0 0 0 0 0 0 0 0 0 | 947 | 170 85 0 255 255 85 85 255 85 255 255 85 255 255 85 170 85 0 |
949 | 0 0 0 0 0 0 0 0 0 85 85 85 | 948 | 85 255 85 170 85 0 170 85 0 0 0 0 0 0 0 0 0 0 |
950 | 0 0 0 85 85 85 0 0 0 0 0 0 | 949 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 |
951 | 170 170 170 255 255 255 255 255 255 255 255 255 | 950 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 |
952 | 255 255 255 255 255 255 255 255 255 255 255 255 | 951 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 |
953 | 255 255 255 255 255 255 255 255 255 255 255 255 | 952 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
954 | 255 255 255 255 255 255 255 255 255 255 255 255 | 953 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
955 | 255 255 255 255 255 255 255 255 255 255 255 255 | 954 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
956 | 255 255 255 255 255 255 255 255 255 255 255 255 | 955 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
957 | 255 255 255 255 255 255 255 255 255 255 255 255 | 956 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
958 | 255 255 255 255 255 255 170 170 170 0 0 0 | 957 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
959 | 0 0 0 0 0 0 0 0 0 85 85 85 | 958 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
960 | 0 0 0 0 0 0 0 0 0 0 0 0 | 959 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
961 | 0 0 0 85 85 85 0 0 0 0 0 0 | 960 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
962 | 0 0 0 0 0 0 0 0 0 0 0 0 | 961 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
963 | 0 0 0 0 0 0 0 0 0 0 0 0 | 962 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
964 | 0 0 0 0 0 0 0 0 0 0 0 0 | 963 | 0 0 0 0 0 0 0 0 0 0 0 0 |
965 | 0 0 0 0 0 0 0 0 0 0 0 0 | 964 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
966 | 0 0 0 0 0 0 0 0 0 0 0 0 | 965 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
967 | 0 0 0 0 0 0 0 0 0 0 0 0 | 966 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
968 | 0 0 0 0 0 0 0 0 0 0 0 0 | 967 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
969 | 0 0 0 0 0 0 85 85 85 0 0 0 | 968 | 0 0 0 0 0 0 0 0 0 170 85 0 255 255 85 255 255 85 |
970 | 0 0 0 85 85 85 0 0 0 0 0 0 | 969 | 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 |
971 | 255 255 255 255 255 255 255 255 255 255 255 255 | 970 | 255 255 85 170 85 0 255 255 85 85 255 85 255 255 85 170 85 0 |
972 | 255 255 255 255 255 255 255 255 255 255 255 255 | 971 | 255 255 85 255 255 85 170 85 0 255 255 85 170 85 0 85 255 85 |
973 | 255 255 255 255 255 255 170 170 170 255 255 255 | 972 | 170 85 0 170 85 0 0 0 0 0 0 0 0 0 0 85 85 85 |
974 | 255 255 255 255 255 255 255 255 255 255 255 255 | 973 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
975 | 255 255 255 255 255 255 255 255 255 255 255 255 | 974 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
976 | 255 255 255 255 255 255 255 255 255 255 255 255 | 975 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
977 | 255 255 255 255 255 255 255 255 255 255 255 255 | 976 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
978 | 255 255 255 255 255 255 255 255 255 0 0 0 | 977 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
979 | 0 0 0 0 0 0 0 0 0 85 85 85 | 978 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
980 | 0 0 0 0 0 0 0 0 0 0 0 0 | 979 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
981 | 0 0 0 85 85 85 0 0 0 0 0 0 | 980 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
982 | 0 0 0 0 0 0 0 0 0 0 0 0 | 981 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
983 | 0 0 0 0 0 0 0 0 0 0 0 0 | 982 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
984 | 0 0 0 0 0 0 0 0 0 0 0 0 | 983 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
985 | 0 0 0 0 0 0 0 0 0 0 0 0 | 984 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
986 | 0 0 0 0 0 0 0 0 0 0 0 0 | 985 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
987 | 0 0 0 0 0 0 0 0 0 0 0 0 | 986 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
988 | 0 0 0 0 0 0 0 0 0 0 0 0 | 987 | 0 0 0 0 0 0 0 0 0 0 0 0 |
989 | 0 0 0 85 85 85 0 0 0 0 0 0 | 988 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
990 | 0 0 0 85 85 85 0 0 0 0 0 0 | 989 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
991 | 255 255 255 255 255 255 255 255 255 255 255 255 | 990 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
992 | 255 255 255 255 255 255 255 255 255 255 255 255 | 991 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
993 | 255 255 255 255 255 255 170 170 170 255 255 255 | 992 | 0 0 0 0 0 0 0 0 0 85 85 85 255 255 85 170 85 0 |
994 | 255 255 255 255 255 255 255 255 255 255 255 255 | 993 | 255 255 85 170 85 0 255 255 85 170 85 0 255 255 85 85 255 85 |
995 | 255 255 255 255 255 255 255 255 255 255 255 255 | 994 | 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 |
996 | 255 255 255 255 255 255 255 255 255 255 255 255 | 995 | 255 255 85 170 85 0 255 255 85 85 255 85 170 85 0 170 85 0 |
997 | 255 255 255 255 255 255 255 255 255 255 255 255 | 996 | 0 170 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
998 | 255 255 255 255 255 255 255 255 255 0 0 0 | 997 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
999 | 0 0 0 0 0 0 0 0 0 85 85 85 | 998 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 |
1000 | 0 0 0 0 0 0 0 0 0 0 0 0 | 999 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
1001 | 0 0 0 85 85 85 0 0 0 0 0 0 | 1000 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 |
1002 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1001 | 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 85 85 85 |
1003 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1002 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1004 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1003 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1005 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1004 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1006 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1005 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1007 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1006 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1008 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1007 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1009 | 0 0 0 85 85 85 0 0 0 0 0 0 | 1008 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1010 | 0 0 0 85 85 85 0 0 0 85 85 85 | 1009 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1011 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1010 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1012 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1011 | 0 0 0 0 0 0 0 0 0 0 0 0 |
1013 | 255 255 255 255 255 255 170 170 170 255 255 255 | 1012 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1014 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1013 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1015 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1014 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1016 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1015 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1017 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1016 | 0 0 0 0 0 0 0 0 0 170 85 0 255 255 85 255 255 85 |
1018 | 255 255 255 255 255 255 255 255 255 0 0 0 | 1017 | 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 |
1019 | 0 0 0 0 0 0 0 0 0 85 85 85 | 1018 | 255 255 85 255 255 85 170 85 0 255 255 85 170 85 0 85 255 85 |
1020 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1019 | 255 255 85 85 255 85 170 85 0 170 85 0 85 255 85 170 85 0 |
1021 | 0 0 0 85 85 85 0 0 0 0 0 0 | 1020 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 |
1022 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1021 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1023 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1022 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1024 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1023 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 |
1025 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1024 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 |
1026 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1025 | 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 |
1027 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1026 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1028 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1027 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1029 | 0 0 0 85 85 85 0 0 0 0 0 0 | 1028 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1030 | 0 0 0 85 85 85 0 0 0 85 85 85 | 1029 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1031 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1030 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1032 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1031 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1033 | 255 255 255 255 255 255 170 170 170 255 255 255 | 1032 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1034 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1033 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1035 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1034 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1036 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1035 | 0 0 0 0 0 0 0 0 0 0 0 0 |
1037 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1036 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1038 | 255 255 255 255 255 255 255 255 255 0 0 0 | 1037 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1039 | 0 0 0 0 0 0 0 0 0 85 85 85 | 1038 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1040 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1039 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1041 | 0 0 0 85 85 85 0 0 0 0 0 0 | 1040 | 0 0 0 0 0 0 0 0 0 85 85 85 255 255 85 85 255 85 |
1042 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1041 | 255 255 85 255 255 85 85 255 85 255 255 85 255 255 85 255 255 85 |
1043 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1042 | 255 255 85 170 85 0 255 255 85 85 255 85 255 255 85 255 255 85 |
1044 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1043 | 170 85 0 170 85 0 85 255 85 170 85 0 0 0 0 0 0 0 |
1045 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1044 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1046 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1045 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
1047 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1046 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 |
1048 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1047 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
1049 | 0 0 0 85 85 85 0 0 0 0 0 0 | 1048 | 0 0 0 85 85 85 85 85 85 170 170 170 170 170 170 170 170 170 |
1050 | 0 0 0 0 0 0 85 85 85 85 85 85 | 1049 | 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 85 85 85 |
1051 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1050 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1052 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1051 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1053 | 255 255 255 255 255 255 170 170 170 255 255 255 | 1052 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1054 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1053 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1055 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1054 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1056 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1055 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1057 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1056 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1058 | 255 255 255 255 255 255 255 255 255 0 0 0 | 1057 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1059 | 0 0 0 0 0 0 0 0 0 85 85 85 | 1058 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1060 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1059 | 0 0 0 0 0 0 0 0 0 0 0 0 |
1061 | 0 0 0 85 85 85 0 0 0 0 0 0 | 1060 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1062 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1061 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1063 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1062 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1064 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1063 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1065 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1064 | 0 0 0 0 0 0 0 0 0 85 85 85 255 255 85 255 255 85 |
1066 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1065 | 170 85 0 255 255 85 255 255 85 170 85 0 255 255 85 170 85 0 |
1067 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1066 | 255 255 85 85 255 85 170 85 0 255 255 85 170 85 0 85 255 85 |
1068 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1067 | 170 85 0 170 85 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1069 | 0 0 0 85 85 85 0 0 0 0 0 0 | 1068 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 |
1070 | 0 0 0 0 0 0 0 0 0 85 85 85 | 1069 | 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1071 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1070 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
1072 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1071 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
1073 | 255 255 255 255 255 255 170 170 170 255 255 255 | 1072 | 85 85 85 0 0 0 170 170 170 170 170 170 170 170 170 170 170 170 |
1074 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1073 | 170 170 170 170 170 170 170 170 170 85 85 85 85 85 85 85 85 85 |
1075 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1074 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1076 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1075 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1077 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1076 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1078 | 255 255 255 255 255 255 255 255 255 0 0 0 | 1077 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1079 | 85 85 85 85 85 85 85 85 85 85 85 85 | 1078 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1080 | 85 85 85 0 0 0 0 0 0 0 0 0 | 1079 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1081 | 0 0 0 85 85 85 0 0 0 0 0 0 | 1080 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1082 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1081 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1083 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1082 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1084 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1083 | 0 0 0 0 0 0 0 0 0 0 0 0 |
1085 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1084 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1086 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1085 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1087 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1086 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1088 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1087 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1089 | 0 0 0 85 85 85 0 0 0 170 85 0 | 1088 | 0 0 0 0 0 0 0 0 0 0 0 0 170 85 0 255 255 85 |
1090 | 255 255 85 170 85 0 0 0 0 0 0 0 | 1089 | 255 255 85 255 255 85 255 255 85 255 255 85 255 255 85 85 255 85 |
1091 | 85 85 85 255 255 255 255 255 255 255 255 255 | 1090 | 170 85 0 255 255 85 170 85 0 85 255 85 170 85 0 170 85 0 |
1092 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1091 | 0 170 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1093 | 255 255 255 255 255 255 170 170 170 255 255 255 | 1092 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1094 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1093 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 |
1095 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1094 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1096 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1095 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 |
1097 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1096 | 0 0 0 85 85 85 170 170 170 170 170 170 255 255 255 170 170 170 |
1098 | 255 255 255 255 255 255 255 255 255 85 85 85 | 1097 | 170 170 170 170 170 170 85 85 85 85 85 85 85 85 85 85 85 85 |
1099 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1098 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1100 | 0 0 0 85 85 85 85 85 85 0 0 0 | 1099 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1101 | 0 0 0 85 85 85 0 0 0 0 0 0 | 1100 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1102 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1101 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1103 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1102 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1104 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1103 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1105 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1104 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1106 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1105 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1107 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1106 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1108 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1107 | 0 0 0 0 0 0 0 0 0 0 0 0 |
1109 | 0 0 0 0 0 0 170 85 0 255 255 85 | 1108 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1110 | 170 85 0 255 255 85 170 85 0 0 0 0 | 1109 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1111 | 0 0 0 85 85 85 255 255 255 255 255 255 | 1110 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1112 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1111 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1113 | 255 255 255 255 255 255 170 170 170 255 255 255 | 1112 | 0 0 0 0 0 0 0 0 0 0 0 0 85 255 85 255 255 85 |
1114 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1113 | 170 85 0 255 255 85 255 255 85 170 85 0 85 255 85 170 85 0 |
1115 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1114 | 255 255 85 170 85 0 0 170 0 170 85 0 0 0 0 0 0 0 |
1116 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1115 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
1117 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1116 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
1118 | 255 255 85 170 85 0 255 255 85 0 0 0 | 1117 | 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1119 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1118 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
1120 | 0 0 0 0 0 0 85 85 85 85 85 85 | 1119 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1121 | 85 85 85 0 0 0 0 0 0 0 0 0 | 1120 | 85 85 85 0 0 0 170 170 170 170 170 170 170 170 170 85 85 85 |
1122 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1121 | 85 85 85 85 85 85 85 85 85 0 0 0 0 0 0 0 0 0 |
1123 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1122 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1124 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1123 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1125 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1124 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1126 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1125 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1127 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1126 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1128 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1127 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1129 | 0 0 0 170 85 0 255 255 85 170 85 0 | 1128 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1130 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1129 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1131 | 0 0 0 0 0 0 85 85 85 255 255 255 | 1130 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1132 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1131 | 0 0 0 0 0 0 0 0 0 0 0 0 |
1133 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1132 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1134 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1133 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1135 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1134 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1136 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1135 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1137 | 255 255 255 255 255 255 255 255 255 255 255 85 | 1136 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 85 |
1138 | 170 85 0 255 255 85 170 85 0 0 0 0 | 1137 | 255 255 85 255 255 85 255 255 85 255 255 85 170 85 0 170 85 0 |
1139 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1138 | 0 170 0 85 85 85 85 85 85 0 0 0 0 0 0 85 85 85 |
1140 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1139 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
1141 | 170 85 0 0 0 0 0 0 0 0 0 0 | 1140 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 85 85 85 |
1142 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1141 | 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 0 0 0 |
1143 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1142 | 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1144 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1143 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
1145 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1144 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1146 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1145 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1147 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1146 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1148 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1147 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1149 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1148 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1150 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1149 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1151 | 170 85 0 0 0 0 0 0 0 85 85 85 | 1150 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1152 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1151 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1153 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1152 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1154 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1153 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1155 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1154 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1156 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1155 | 0 0 0 0 0 0 0 0 0 0 0 0 |
1157 | 255 255 255 255 255 255 255 255 255 170 85 0 | 1156 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1158 | 255 255 85 170 85 0 255 255 85 0 0 0 | 1157 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1159 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1158 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1160 | 0 0 0 0 0 0 0 0 0 170 85 0 | 1159 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1161 | 255 255 85 170 85 0 0 0 0 0 0 0 | 1160 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1162 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1161 | 255 255 85 255 255 85 170 85 0 0 170 0 85 85 85 85 85 85 |
1163 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1162 | 85 85 85 85 85 85 0 0 0 85 85 85 85 85 85 0 0 0 |
1164 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1163 | 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
1165 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1164 | 85 85 85 85 85 85 85 85 85 170 170 170 170 170 170 85 85 85 |
1166 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1165 | 170 170 170 170 170 170 170 170 170 170 170 170 85 85 85 85 85 85 |
1167 | 0 0 0 0 0 0 0 0 0 170 85 0 | 1166 | 85 85 85 85 85 85 85 85 85 85 85 85 0 0 0 0 0 0 |
1168 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1167 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1169 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1168 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
1170 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1169 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
1171 | 255 255 85 0 0 0 0 0 0 0 0 0 | 1170 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1172 | 85 85 85 255 255 255 255 255 255 255 255 255 | 1171 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1173 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1172 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1174 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1173 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1175 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1174 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1176 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1175 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1177 | 255 255 255 255 255 255 255 255 255 255 255 85 | 1176 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1178 | 170 85 0 255 255 85 170 85 0 0 0 0 | 1177 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1179 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1178 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1180 | 0 0 0 0 0 0 0 0 0 255 255 85 | 1179 | 0 0 0 0 0 0 0 0 0 0 0 0 |
1181 | 170 85 0 255 255 85 0 0 0 0 0 0 | 1180 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1182 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1181 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1183 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1182 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1184 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1183 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1185 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1184 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1186 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1185 | 0 0 0 170 85 0 85 85 85 0 0 0 0 0 0 0 0 0 |
1187 | 0 0 0 0 0 0 170 85 0 255 255 85 | 1186 | 85 85 85 85 85 85 85 85 85 85 85 85 170 170 170 85 85 85 |
1188 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1187 | 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 |
1189 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1188 | 170 170 170 170 170 170 170 170 170 170 170 170 255 255 255 255 255 255 |
1190 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1189 | 255 255 255 255 255 255 255 255 255 170 170 170 255 255 255 170 170 170 |
1191 | 170 85 0 255 255 85 0 0 0 0 0 0 | 1190 | 170 170 170 170 170 170 170 170 170 85 85 85 85 85 85 85 85 85 |
1192 | 0 0 0 85 85 85 255 255 255 255 255 255 | 1191 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1193 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1192 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1194 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1193 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
1195 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1194 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1196 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1195 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1197 | 255 255 255 255 255 255 170 170 170 170 85 0 | 1196 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1198 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1197 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1199 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1198 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1200 | 0 0 0 0 0 0 255 255 85 170 85 0 | 1199 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1201 | 255 255 85 170 85 0 0 0 0 0 0 0 | 1200 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1202 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1201 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1203 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1202 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1204 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1203 | 0 0 0 0 0 0 0 0 0 0 0 0 |
1205 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1204 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1206 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1205 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1207 | 0 0 0 0 0 0 255 255 85 170 85 0 | 1206 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1208 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1207 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1209 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1208 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1210 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1209 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
1211 | 255 255 85 170 85 0 255 255 85 0 0 0 | 1210 | 85 85 85 85 85 85 85 85 85 85 85 85 170 170 170 170 170 170 |
1212 | 0 0 0 0 0 0 85 85 85 255 255 255 | 1211 | 255 255 255 255 255 255 255 255 255 170 170 170 255 255 255 170 170 170 |
1213 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1212 | 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 |
1214 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1213 | 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 |
1215 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1214 | 255 255 255 255 255 255 170 170 170 255 255 255 170 170 170 85 85 85 |
1216 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1215 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
1217 | 255 255 255 170 170 170 170 170 170 255 255 85 | 1216 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1218 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1217 | 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1219 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1218 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1220 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1219 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1221 | 170 85 0 255 255 85 0 0 0 0 0 0 | 1220 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1222 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1221 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1223 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1222 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1224 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1223 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1225 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1224 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1226 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1225 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1227 | 0 0 0 0 0 0 170 85 0 255 255 85 | 1226 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1228 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1227 | 0 0 0 0 0 0 0 0 0 0 0 0 |
1229 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1228 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1230 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1229 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1231 | 170 85 0 255 255 85 170 85 0 0 0 0 | 1230 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1232 | 0 0 0 0 0 0 0 0 0 85 85 85 | 1231 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1233 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1232 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1234 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1233 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
1235 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1234 | 85 85 85 85 85 85 85 85 85 85 85 85 170 170 170 170 170 170 |
1236 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1235 | 255 255 255 170 170 170 255 255 255 255 255 255 255 255 255 255 255 255 |
1237 | 255 255 255 170 170 170 170 170 170 170 85 0 | 1236 | 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 170 170 170 |
1238 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1237 | 255 255 255 255 255 255 170 170 170 255 255 255 255 255 255 255 255 255 |
1239 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1238 | 255 255 255 255 255 255 255 255 255 255 255 255 170 170 170 85 85 85 |
1240 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1239 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
1241 | 255 255 85 170 85 0 255 255 85 0 0 0 | 1240 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
1242 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1241 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1243 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1242 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
1244 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1243 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1245 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1244 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1246 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1245 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1247 | 0 0 0 0 0 0 255 255 85 170 85 0 | 1246 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1248 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1247 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1249 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1248 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1250 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1249 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1251 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1250 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1252 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1251 | 0 0 0 0 0 0 0 0 0 0 0 0 |
1253 | 0 0 0 255 255 255 255 255 255 255 255 255 | 1252 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1254 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1253 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1255 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1254 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1256 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1255 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1257 | 255 255 255 170 170 170 170 170 170 255 255 85 | 1256 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1258 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1257 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
1259 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1258 | 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 170 170 170 |
1260 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1259 | 170 170 170 170 170 170 255 255 255 170 170 170 255 255 255 170 170 170 |
1261 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1260 | 255 255 255 170 170 170 255 255 255 170 170 170 255 255 255 255 255 255 |
1262 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1261 | 255 255 255 170 170 170 255 255 255 170 170 170 255 255 255 170 170 170 |
1263 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1262 | 170 170 170 170 170 170 170 170 170 170 170 170 85 85 85 85 85 85 |
1264 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1263 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1265 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1264 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1266 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1265 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
1267 | 0 0 0 0 0 0 170 85 0 255 255 85 | 1266 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1268 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1267 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1269 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1268 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1270 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1269 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1271 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1270 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1272 | 170 85 0 0 0 0 0 0 0 0 0 0 | 1271 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1273 | 0 0 0 255 255 255 255 255 255 255 255 255 | 1272 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1274 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1273 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1275 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1274 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1276 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1275 | 0 0 0 0 0 0 0 0 0 0 0 0 |
1277 | 255 255 255 170 170 170 170 170 170 170 85 0 | 1276 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1278 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1277 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1279 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1278 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1280 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1279 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1281 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1280 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1282 | 255 255 85 0 0 0 0 0 0 0 0 0 | 1281 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
1283 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1282 | 85 85 85 85 85 85 85 85 85 0 0 0 85 85 85 85 85 85 |
1284 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1283 | 85 85 85 85 85 85 85 85 85 170 170 170 170 170 170 170 170 170 |
1285 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1284 | 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 |
1286 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1285 | 170 170 170 170 170 170 170 170 170 170 170 170 85 85 85 170 170 170 |
1287 | 0 0 0 0 0 0 255 255 85 170 85 0 | 1286 | 170 170 170 170 170 170 85 85 85 0 0 0 85 85 85 0 0 0 |
1288 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1287 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
1289 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1288 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 |
1290 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1289 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
1291 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1290 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 |
1292 | 255 255 85 0 0 0 0 0 0 0 0 0 | 1291 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1293 | 85 85 85 255 255 255 255 255 255 255 255 255 | 1292 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1294 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1293 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1295 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1294 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1296 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1295 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1297 | 255 255 255 170 170 170 85 85 85 255 255 85 | 1296 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1298 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1297 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1299 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1298 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1300 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1299 | 0 0 0 0 0 0 0 0 0 0 0 0 |
1301 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1300 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1302 | 170 85 0 255 255 85 0 0 0 0 0 0 | 1301 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1303 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1302 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1304 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1303 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1305 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1304 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1306 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1305 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 |
1307 | 0 0 0 0 0 0 170 85 0 255 255 85 | 1306 | 170 170 170 85 85 85 85 85 85 85 85 85 0 0 0 85 85 85 |
1308 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1307 | 0 0 0 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 |
1309 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1308 | 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 0 0 0 |
1310 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1309 | 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 0 0 0 |
1311 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1310 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
1312 | 170 85 0 255 255 85 85 85 85 85 85 85 | 1311 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1313 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1312 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
1314 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1313 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
1315 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1314 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1316 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1315 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1317 | 170 170 170 85 85 85 85 85 85 170 85 0 | 1316 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1318 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1317 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1319 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1318 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1320 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1319 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1321 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1320 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1322 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1321 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1323 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1322 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1324 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1323 | 0 0 0 0 0 0 0 0 0 0 0 0 |
1325 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1324 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1326 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1325 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1327 | 0 0 0 0 0 0 255 255 85 170 85 0 | 1326 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1328 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1327 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1329 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1328 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1330 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1329 | 0 0 0 0 0 0 0 0 0 0 0 0 170 170 170 85 85 85 |
1331 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1330 | 85 85 85 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 |
1332 | 255 255 85 170 85 0 255 255 85 255 255 255 | 1331 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1333 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1332 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 |
1334 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1333 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1335 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1334 | 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1336 | 255 255 255 255 255 255 255 255 255 170 170 170 | 1335 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 |
1337 | 85 85 85 0 0 0 0 0 0 170 85 0 | 1336 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 |
1338 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1337 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1339 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1338 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
1340 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1339 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1341 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1340 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1342 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1341 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1343 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1342 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1344 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1343 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1345 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1344 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1346 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1345 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1347 | 0 0 0 0 0 0 170 85 0 255 255 85 | 1346 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1348 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1347 | 0 0 0 0 0 0 0 0 0 0 0 0 |
1349 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1348 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1350 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1349 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1351 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1350 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1352 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1351 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1353 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1352 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1354 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1353 | 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 |
1355 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1354 | 85 85 85 85 85 85 85 85 85 85 85 85 0 0 0 0 0 0 |
1356 | 255 255 255 255 255 255 170 170 170 85 85 85 | 1355 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
1357 | 0 0 0 0 0 0 0 0 0 170 85 0 | 1356 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1358 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1357 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
1359 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1358 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
1360 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1359 | 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1361 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1360 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
1362 | 255 255 85 170 85 0 255 255 85 0 0 0 | 1361 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
1363 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1362 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
1364 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1363 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1365 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1364 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1366 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1365 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1367 | 0 0 0 0 0 0 255 255 85 170 85 0 | 1366 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1368 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1367 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1369 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1368 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1370 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1369 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1371 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1370 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1372 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1371 | 0 0 0 0 0 0 0 0 0 0 0 0 |
1373 | 170 170 170 255 255 255 255 255 255 255 255 255 | 1372 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1374 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1373 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1375 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1374 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1376 | 170 170 170 85 85 85 85 85 85 0 0 0 | 1375 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1377 | 0 0 0 0 0 0 0 0 0 170 85 0 | 1376 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1378 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1377 | 0 0 0 0 0 0 85 85 85 85 85 85 170 170 170 85 85 85 |
1379 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1378 | 85 85 85 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 |
1380 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1379 | 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1381 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1380 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 |
1382 | 170 85 0 255 255 85 0 0 0 0 0 0 | 1381 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
1383 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1382 | 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1384 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1383 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1385 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1384 | 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1386 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1385 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 |
1387 | 0 0 0 255 255 85 170 85 0 255 255 85 | 1386 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
1388 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1387 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1389 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1388 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1390 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1389 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1391 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1390 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1392 | 170 85 0 255 255 85 170 85 0 170 85 0 | 1391 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1393 | 170 85 0 170 170 170 255 255 255 255 255 255 | 1392 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1394 | 255 255 255 255 255 255 255 255 255 255 255 255 | 1393 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1395 | 255 255 255 255 255 255 170 170 170 85 85 85 | 1394 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1396 | 85 85 85 0 0 0 0 0 0 0 0 0 | 1395 | 0 0 0 0 0 0 0 0 0 0 0 0 |
1397 | 0 0 0 0 0 0 85 85 85 170 85 0 | 1396 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1398 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1397 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1399 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1398 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1400 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1399 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1401 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1400 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1402 | 255 255 85 0 0 0 0 0 0 0 0 0 | 1401 | 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 85 85 85 |
1403 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1402 | 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 |
1404 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1403 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
1405 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1404 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1406 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1405 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
1407 | 0 0 0 170 85 0 255 255 85 170 85 0 | 1406 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1408 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1407 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
1409 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1408 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
1410 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1409 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
1411 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1410 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1412 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1411 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1413 | 170 85 0 0 0 0 0 0 0 0 0 0 | 1412 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1414 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1413 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1415 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1414 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1416 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1415 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1417 | 0 0 0 0 0 0 85 85 85 170 85 0 | 1416 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1418 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1417 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1419 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1418 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1420 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1419 | 0 0 0 0 0 0 85 85 85 85 85 85 |
1421 | 170 85 0 170 85 0 170 85 0 0 0 0 | 1420 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1422 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1421 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1423 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1422 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1424 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1423 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1425 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1424 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1426 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1425 | 0 0 0 85 85 85 85 85 85 170 170 170 85 85 85 85 85 85 |
1427 | 0 0 0 255 255 85 170 85 0 255 255 85 | 1426 | 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
1428 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1427 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1429 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1428 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
1430 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1429 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1431 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1430 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
1432 | 170 85 0 255 255 85 170 85 0 170 85 0 | 1431 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1433 | 170 85 0 0 0 0 0 0 0 0 0 0 | 1432 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1434 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1433 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
1435 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1434 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1436 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1435 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1437 | 0 0 0 0 0 0 85 85 85 170 85 0 | 1436 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1438 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1437 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1439 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1438 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1440 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1439 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1441 | 170 85 0 0 0 0 0 0 0 0 0 0 | 1440 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1442 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1441 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1443 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1442 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1444 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1443 | 0 0 0 85 85 85 170 170 170 170 170 170 |
1445 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1444 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1446 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1445 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1447 | 0 0 0 0 0 0 255 255 85 170 85 0 | 1446 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1448 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1447 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1449 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1448 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1450 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1449 | 0 0 0 85 85 85 170 170 170 85 85 85 85 85 85 85 85 85 |
1451 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1450 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 |
1452 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1451 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
1453 | 170 85 0 0 0 0 0 0 0 0 0 0 | 1452 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1454 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1453 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
1455 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1454 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
1456 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1455 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1457 | 0 0 0 0 0 0 85 85 85 170 85 0 | 1456 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 85 85 85 |
1458 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1457 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
1459 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1458 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1460 | 170 85 0 170 85 0 170 85 0 170 85 0 | 1459 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1461 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1460 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1462 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1461 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1463 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1462 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1464 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1463 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1465 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1464 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1466 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1465 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1467 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1466 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1468 | 0 0 0 0 0 0 170 85 0 170 85 0 | 1467 | 85 85 85 170 170 170 255 255 255 170 170 170 |
1469 | 170 85 0 170 85 0 170 85 0 170 85 0 | 1468 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1470 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1469 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1471 | 170 85 0 255 255 85 170 85 0 255 255 85 | 1470 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1472 | 170 85 0 255 255 85 170 85 0 170 85 0 | 1471 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1473 | 170 85 0 0 0 0 0 0 0 0 0 0 | 1472 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1474 | 85 85 85 85 85 85 85 85 85 85 85 85 | 1473 | 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 |
1475 | 85 85 85 85 85 85 85 85 85 85 85 85 | 1474 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
1476 | 85 85 85 85 85 85 85 85 85 0 0 0 | 1475 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
1477 | 0 0 0 0 0 0 0 0 0 170 85 0 | 1476 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 |
1478 | 170 85 0 170 85 0 255 255 85 170 85 0 | 1477 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1479 | 255 255 85 170 85 0 255 255 85 170 85 0 | 1478 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
1480 | 170 85 0 170 85 0 0 0 0 0 0 0 | 1479 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
1481 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1480 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1482 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1481 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 |
1483 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1482 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
1484 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1483 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
1485 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1484 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1486 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1485 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1487 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1486 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1488 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1487 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1489 | 0 0 0 0 0 0 170 85 0 170 85 0 | 1488 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1490 | 170 85 0 170 85 0 170 85 0 170 85 0 | 1489 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1491 | 170 85 0 170 85 0 255 255 85 170 85 0 | 1490 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 170 170 170 |
1492 | 255 255 85 170 85 0 170 85 0 170 85 0 | 1491 | 170 170 170 255 255 255 170 170 170 170 170 170 |
1493 | 85 85 85 85 85 85 85 85 85 85 85 85 | 1492 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1494 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1493 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1495 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1494 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1496 | 0 0 0 0 0 0 0 0 0 85 85 85 | 1495 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1497 | 85 85 85 85 85 85 85 85 85 170 85 0 | 1496 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1498 | 170 85 0 170 85 0 170 85 0 255 255 85 | 1497 | 85 85 85 170 170 170 85 85 85 85 85 85 85 85 85 0 0 0 |
1499 | 170 85 0 255 255 85 170 85 0 170 85 0 | 1498 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1500 | 170 85 0 0 0 0 0 0 0 0 0 0 | 1499 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
1501 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1500 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1502 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1501 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1503 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1502 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1504 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1503 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1505 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1504 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 85 85 85 |
1506 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1505 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
1507 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1506 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
1508 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1507 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1509 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1508 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1510 | 0 0 0 0 0 0 0 0 0 170 85 0 | 1509 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1511 | 170 85 0 170 85 0 170 85 0 170 85 0 | 1510 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1512 | 170 85 0 170 85 0 170 85 0 170 85 0 | 1511 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1513 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1512 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1514 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1513 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1515 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1514 | 0 0 0 0 0 0 0 0 0 0 0 0 170 170 170 170 170 170 |
1516 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1515 | 255 255 255 255 255 255 170 170 170 170 170 170 |
1517 | 0 0 0 0 0 0 0 0 0 170 85 0 | 1516 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1518 | 170 85 0 170 85 0 170 85 0 170 85 0 | 1517 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1519 | 170 85 0 170 85 0 170 85 0 170 85 0 | 1518 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1520 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1519 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1521 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1520 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
1522 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1521 | 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 0 0 0 |
1523 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1522 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
1524 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1523 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1525 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1524 | 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1526 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1525 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
1527 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1526 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
1528 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1527 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 |
1529 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1528 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
1530 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1529 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 |
1531 | 0 0 0 170 85 0 170 85 0 170 85 0 | 1530 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1532 | 170 85 0 170 85 0 170 85 0 0 0 0 | 1531 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1533 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1532 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1534 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1533 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1535 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1534 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1536 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1535 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1537 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1536 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1538 | 170 85 0 170 85 0 170 85 0 170 85 0 | 1537 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1539 | 170 85 0 170 85 0 170 85 0 0 0 0 | 1538 | 0 0 0 0 0 0 85 85 85 170 170 170 170 170 170 255 255 255 |
1540 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1539 | 255 255 255 170 170 170 170 170 170 0 0 0 |
1541 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1540 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1542 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1541 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1543 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1542 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1544 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1543 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1545 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1544 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
1546 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1545 | 170 170 170 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 |
1547 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1546 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
1548 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1547 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1549 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1548 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1550 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1549 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1551 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1550 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
1552 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1551 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1553 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1552 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 85 85 85 |
1554 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1553 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 |
1555 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1554 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
1556 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1555 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1557 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1556 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1558 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1557 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1559 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1558 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1560 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1559 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1561 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1560 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1562 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1561 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1563 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1562 | 0 0 0 85 85 85 170 170 170 255 255 255 255 255 255 255 255 255 |
1564 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1563 | 170 170 170 170 170 170 85 85 85 0 0 0 |
1565 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1564 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1566 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1565 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1567 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1566 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1568 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1567 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1569 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1568 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 |
1570 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1569 | 85 85 85 85 85 85 85 85 85 85 85 85 0 0 0 85 85 85 |
1571 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1570 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
1572 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1571 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 |
1573 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1572 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
1574 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1573 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
1575 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1574 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1576 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1575 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 |
1577 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1576 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
1578 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1577 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
1579 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1578 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1580 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1579 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1581 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1580 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1582 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1581 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1583 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1582 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1584 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1583 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1585 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1584 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1586 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1585 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 |
1587 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1586 | 170 170 170 170 170 170 255 255 255 255 255 255 255 255 255 170 170 170 |
1588 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1587 | 170 170 170 170 170 170 0 0 0 0 0 0 |
1589 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1588 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1590 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1589 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1591 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1590 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1592 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1591 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1593 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1592 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 |
1594 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1593 | 85 85 85 85 85 85 85 85 85 85 85 85 0 0 0 85 85 85 |
1595 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1594 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1596 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1595 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
1597 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1596 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1598 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1597 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 |
1599 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1598 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 |
1600 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1599 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
1601 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1600 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 |
1602 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1601 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 |
1603 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1602 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 |
1604 | 0 0 0 0 0 0 0 0 0 0 0 0 | 1603 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 |
1604 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1605 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1606 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1607 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1608 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1609 | 0 0 0 0 0 0 0 0 0 0 0 0 170 170 170 170 170 170 | ||
1610 | 170 170 170 255 255 255 255 255 255 255 255 255 170 170 170 170 170 170 | ||
1611 | 170 170 170 0 0 0 0 0 0 0 0 0 | ||
1612 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1613 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1614 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1615 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1616 | 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 | ||
1617 | 85 85 85 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 | ||
1618 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 | ||
1619 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1620 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 | ||
1621 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1622 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
1623 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 | ||
1624 | 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 85 85 85 | ||
1625 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 | ||
1626 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1627 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1628 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1629 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1630 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1631 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1632 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1633 | 0 0 0 0 0 0 85 85 85 170 170 170 170 170 170 170 170 170 | ||
1634 | 255 255 255 255 255 255 255 255 255 255 255 255 170 170 170 170 170 170 | ||
1635 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1636 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1637 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1638 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1639 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1640 | 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 | ||
1641 | 85 85 85 85 85 85 85 85 85 85 85 85 0 0 0 0 0 0 | ||
1642 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1643 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1644 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1645 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1646 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1647 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1648 | 0 0 0 85 85 85 85 85 85 85 85 85 85 85 85 0 0 0 | ||
1649 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 | ||
1650 | 85 85 85 85 85 85 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1651 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1652 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1653 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1654 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1655 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1656 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1657 | 85 85 85 170 170 170 170 170 170 255 255 255 255 255 255 255 255 255 | ||
1658 | 255 255 255 255 255 255 170 170 170 170 170 170 85 85 85 0 0 0 | ||
1659 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1660 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1661 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1662 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1663 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1664 | 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 | ||
1665 | 85 85 85 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 | ||
1666 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 | ||
1667 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1668 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1669 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1670 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1671 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1672 | 85 85 85 0 0 0 170 170 170 255 255 255 85 85 85 85 85 85 | ||
1673 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1674 | 85 85 85 170 170 170 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1675 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1676 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1677 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1678 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1679 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1680 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
1681 | 170 170 170 170 170 170 255 255 255 170 170 170 255 255 255 255 255 255 | ||
1682 | 255 255 255 255 255 255 170 170 170 170 170 170 85 85 85 0 0 0 | ||
1683 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1684 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1685 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1686 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1687 | 85 85 85 170 170 170 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1688 | 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 85 85 85 | ||
1689 | 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 | ||
1690 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1691 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1692 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1693 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1694 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1695 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 | ||
1696 | 0 0 0 85 85 85 170 170 170 255 255 255 170 170 170 85 85 85 | ||
1697 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 | ||
1698 | 255 255 255 170 170 170 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1699 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1700 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1701 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1702 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1703 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1704 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 | ||
1705 | 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 | ||
1706 | 170 170 170 170 170 170 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1707 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1708 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1709 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1710 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1711 | 85 85 85 255 255 255 170 170 170 85 85 85 0 0 0 0 0 0 | ||
1712 | 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 0 0 0 | ||
1713 | 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 | ||
1714 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 | ||
1715 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1716 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1717 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1718 | 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1719 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1720 | 85 85 85 85 85 85 255 255 255 255 255 255 255 255 255 85 85 85 | ||
1721 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 170 170 170 | ||
1722 | 255 255 255 170 170 170 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1723 | 0 0 0 85 85 85 170 170 170 85 85 85 0 0 0 0 0 0 | ||
1724 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1725 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1726 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1727 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1728 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 170 170 170 | ||
1729 | 170 170 170 255 255 255 255 255 255 255 255 255 255 255 255 170 170 170 | ||
1730 | 170 170 170 170 170 170 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1731 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1732 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1733 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 | ||
1734 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1735 | 170 170 170 255 255 255 255 255 255 170 170 170 0 0 0 0 0 0 | ||
1736 | 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 0 0 0 | ||
1737 | 85 85 85 85 85 85 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1738 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 | ||
1739 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
1740 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1741 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 | ||
1742 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1743 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 | ||
1744 | 85 85 85 170 170 170 255 255 255 255 255 255 255 255 255 85 85 85 | ||
1745 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 255 255 255 | ||
1746 | 255 255 255 170 170 170 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1747 | 85 85 85 170 170 170 170 170 170 85 85 85 0 0 0 0 0 0 | ||
1748 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1749 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1750 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1751 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1752 | 85 85 85 0 0 0 85 85 85 85 85 85 85 85 85 85 85 85 | ||
1753 | 170 170 170 255 255 255 255 255 255 255 255 255 170 170 170 170 170 170 | ||
1754 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1755 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1756 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1757 | 0 0 0 0 0 0 0 0 0 85 85 85 170 170 170 170 170 170 | ||
1758 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1759 | 170 170 170 255 255 255 255 255 255 255 255 255 85 85 85 0 0 0 | ||
1760 | 0 0 0 85 85 85 85 85 85 85 85 85 85 85 85 0 0 0 | ||
1761 | 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 | ||
1762 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1763 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1764 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 | ||
1765 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1766 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1767 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1768 | 85 85 85 170 170 170 255 255 255 255 255 255 255 255 255 170 170 170 | ||
1769 | 0 0 0 85 85 85 0 0 0 85 85 85 170 170 170 255 255 255 | ||
1770 | 255 255 255 170 170 170 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1771 | 85 85 85 255 255 255 255 255 255 0 0 0 0 0 0 0 0 0 | ||
1772 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1773 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1774 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1775 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 | ||
1776 | 0 0 0 85 85 85 85 85 85 0 0 0 85 85 85 85 85 85 | ||
1777 | 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 85 85 85 | ||
1778 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1779 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1780 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1781 | 0 0 0 0 0 0 0 0 0 0 0 0 170 170 170 255 255 255 | ||
1782 | 170 170 170 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1783 | 85 85 85 255 255 255 255 255 255 255 255 255 255 255 255 0 0 0 | ||
1784 | 0 0 0 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 | ||
1785 | 85 85 85 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1786 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
1787 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1788 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1789 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1790 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
1791 | 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 | ||
1792 | 85 85 85 255 255 255 255 255 255 255 255 255 170 170 170 170 170 170 | ||
1793 | 85 85 85 0 0 0 0 0 0 85 85 85 170 170 170 255 255 255 | ||
1794 | 255 255 255 170 170 170 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1795 | 170 170 170 255 255 255 170 170 170 0 0 0 0 0 0 0 0 0 | ||
1796 | 85 85 85 170 170 170 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1797 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1798 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1799 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1800 | 85 85 85 85 85 85 0 0 0 85 85 85 85 85 85 0 0 0 | ||
1801 | 85 85 85 85 85 85 170 170 170 85 85 85 85 85 85 0 0 0 | ||
1802 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1803 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1804 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1805 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 170 170 170 | ||
1806 | 255 255 255 170 170 170 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1807 | 85 85 85 170 170 170 255 255 255 255 255 255 255 255 255 170 170 170 | ||
1808 | 0 0 0 85 85 85 85 85 85 85 85 85 0 0 0 0 0 0 | ||
1809 | 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 | ||
1810 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1811 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
1812 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1813 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 | ||
1814 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1815 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 | ||
1816 | 170 170 170 170 170 170 255 255 255 170 170 170 255 255 255 85 85 85 | ||
1817 | 0 0 0 85 85 85 0 0 0 85 85 85 170 170 170 255 255 255 | ||
1818 | 170 170 170 170 170 170 0 0 0 0 0 0 0 0 0 85 85 85 | ||
1819 | 170 170 170 255 255 255 255 255 255 0 0 0 0 0 0 85 85 85 | ||
1820 | 255 255 255 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1821 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1822 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1823 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 85 85 85 | ||
1824 | 85 85 85 0 0 0 85 85 85 85 85 85 0 0 0 85 85 85 | ||
1825 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1826 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1827 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1828 | 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 0 0 0 | ||
1829 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 255 255 255 | ||
1830 | 255 255 255 255 255 255 170 170 170 0 0 0 0 0 0 0 0 0 | ||
1831 | 85 85 85 170 170 170 255 255 255 170 170 170 170 170 170 170 170 170 | ||
1832 | 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 | ||
1833 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 | ||
1834 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1835 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1836 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
1837 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1838 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 | ||
1839 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 85 85 85 | ||
1840 | 85 85 85 170 170 170 255 255 255 170 170 170 170 170 170 85 85 85 | ||
1841 | 85 85 85 0 0 0 85 85 85 85 85 85 85 85 85 170 170 170 | ||
1842 | 170 170 170 85 85 85 85 85 85 0 0 0 0 0 0 85 85 85 | ||
1843 | 170 170 170 170 170 170 85 85 85 0 0 0 0 0 0 170 170 170 | ||
1844 | 170 170 170 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1845 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1846 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 | ||
1847 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 | ||
1848 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 | ||
1849 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1850 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1851 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1852 | 0 0 0 0 0 0 0 0 0 0 0 0 170 170 170 170 170 170 | ||
1853 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 170 170 170 | ||
1854 | 255 255 255 170 170 170 170 170 170 85 85 85 0 0 0 0 0 0 | ||
1855 | 0 0 0 85 85 85 170 170 170 170 170 170 255 255 85 85 85 85 | ||
1856 | 85 85 85 85 85 85 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1857 | 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 | ||
1858 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1859 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1860 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1861 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1862 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1863 | 85 85 85 0 0 0 85 85 85 85 85 85 0 0 0 85 85 85 | ||
1864 | 85 85 85 170 170 170 170 170 170 170 170 170 170 85 0 85 85 85 | ||
1865 | 0 0 0 85 85 85 0 0 0 85 85 85 170 170 170 170 85 0 | ||
1866 | 170 170 170 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1867 | 170 85 0 170 170 170 85 85 85 0 0 0 85 85 85 85 85 85 | ||
1868 | 170 170 170 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1869 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
1870 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 | ||
1871 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 | ||
1872 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1873 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1874 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1875 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1876 | 0 0 0 0 0 0 0 0 0 0 0 0 170 170 170 255 255 255 | ||
1877 | 170 170 170 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
1878 | 255 255 255 170 170 170 170 170 170 85 85 85 0 0 0 0 0 0 | ||
1879 | 0 0 0 85 85 85 170 85 0 170 170 170 170 170 170 85 85 85 | ||
1880 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 | ||
1881 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 | ||
1882 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1883 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
1884 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1885 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1886 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1887 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 85 85 85 | ||
1888 | 85 85 85 170 85 0 85 255 85 170 85 0 170 170 170 85 85 85 | ||
1889 | 85 85 85 0 0 0 0 0 0 85 85 85 170 85 0 85 255 85 | ||
1890 | 170 85 0 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 | ||
1891 | 85 85 85 85 85 85 170 85 0 0 0 0 85 85 85 85 85 85 | ||
1892 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1893 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1894 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 | ||
1895 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 | ||
1896 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1897 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1898 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1899 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1900 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 255 255 255 | ||
1901 | 255 255 255 170 170 170 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1902 | 170 170 170 170 170 170 170 170 170 85 85 85 0 0 0 0 0 0 | ||
1903 | 0 0 0 0 0 0 170 170 170 170 85 0 170 170 170 170 85 0 | ||
1904 | 85 85 85 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1905 | 85 85 85 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1906 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1907 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1908 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1909 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1910 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 | ||
1911 | 85 85 85 0 0 0 85 85 85 85 85 85 85 85 85 0 0 0 | ||
1912 | 85 85 85 85 85 85 255 85 85 170 170 170 85 255 85 170 85 0 | ||
1913 | 85 85 85 85 85 85 170 85 0 85 85 85 170 170 170 85 85 85 | ||
1914 | 170 170 170 170 85 0 85 85 85 85 85 85 85 85 85 85 85 85 | ||
1915 | 170 85 0 85 255 85 85 85 85 85 85 85 85 85 85 170 85 0 | ||
1916 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 | ||
1917 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1918 | 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1919 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1920 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1921 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1922 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1923 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1924 | 85 85 85 85 85 85 0 0 0 0 0 0 0 0 0 170 170 170 | ||
1925 | 255 255 255 170 170 170 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1926 | 85 85 85 170 85 0 170 170 170 170 85 0 85 85 85 0 0 0 | ||
1927 | 85 85 85 85 85 85 85 255 85 170 170 170 170 170 170 170 85 0 | ||
1928 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1929 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1930 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1931 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 | ||
1932 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1933 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1934 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 | ||
1935 | 0 0 0 85 85 85 85 85 85 0 0 0 85 85 85 85 85 85 | ||
1936 | 85 85 85 85 85 85 85 255 85 255 85 85 170 170 170 170 170 170 | ||
1937 | 170 170 170 85 255 85 170 170 170 170 85 0 170 170 170 170 85 0 | ||
1938 | 170 170 170 85 85 85 85 255 85 170 85 0 170 170 170 170 85 0 | ||
1939 | 170 170 170 170 170 170 170 85 0 85 85 85 85 85 85 85 255 85 | ||
1940 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1941 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 | ||
1942 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 | ||
1943 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1944 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1945 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1946 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1947 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1948 | 0 0 0 170 170 170 170 170 170 0 0 0 0 0 0 85 85 85 | ||
1949 | 170 170 170 170 170 170 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1950 | 85 85 85 85 85 85 255 255 85 85 85 85 85 85 85 85 85 85 | ||
1951 | 85 255 85 255 85 85 170 170 170 170 85 0 170 170 170 85 255 85 | ||
1952 | 85 85 85 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1953 | 85 85 85 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1954 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1955 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1956 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1957 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1958 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 | ||
1959 | 85 85 85 0 0 0 85 85 85 85 85 85 85 85 85 0 0 0 | ||
1960 | 85 85 85 85 85 85 170 85 0 170 170 170 170 170 170 255 255 85 | ||
1961 | 170 170 170 255 85 85 170 170 170 170 170 170 255 255 85 170 170 170 | ||
1962 | 85 255 85 170 170 170 255 85 85 170 170 170 170 170 170 170 170 170 | ||
1963 | 170 170 170 170 170 170 170 170 170 170 85 0 170 170 170 170 85 0 | ||
1964 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 | ||
1965 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1966 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 | ||
1967 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1968 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1969 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1970 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1971 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1972 | 0 0 0 85 85 85 170 170 170 85 85 85 0 0 0 85 85 85 | ||
1973 | 85 85 85 170 85 0 85 85 85 0 0 0 85 85 85 85 85 85 | ||
1974 | 85 85 85 170 85 0 170 170 170 170 170 170 255 255 85 170 170 170 | ||
1975 | 170 170 170 170 170 170 255 255 85 170 170 170 170 170 170 255 85 85 | ||
1976 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 | ||
1977 | 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1978 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1979 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1980 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1981 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 | ||
1982 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 | ||
1983 | 85 85 85 85 85 85 0 0 0 85 85 85 85 85 85 85 85 85 | ||
1984 | 85 85 85 85 85 85 170 170 170 255 255 85 170 170 170 170 170 170 | ||
1985 | 170 170 170 255 255 85 170 170 170 170 170 170 170 170 170 170 85 0 | ||
1986 | 170 170 170 255 255 85 170 170 170 255 255 85 170 170 170 255 255 85 | ||
1987 | 170 170 170 255 255 85 170 170 170 170 170 170 85 255 85 170 85 0 | ||
1988 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1989 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 | ||
1990 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
1991 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
1992 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1993 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1994 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1995 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
1996 | 0 0 0 0 0 0 170 170 170 85 85 85 85 85 85 0 0 0 | ||
1997 | 85 85 85 85 85 85 170 170 170 85 85 85 170 170 170 170 85 0 | ||
1998 | 170 170 170 85 255 85 170 170 170 170 85 0 170 170 170 170 170 170 | ||
1999 | 255 255 85 170 170 170 170 170 170 255 255 255 255 255 85 170 170 170 | ||
2000 | 255 255 85 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2001 | 85 85 85 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 | ||
2002 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
2003 | 0 0 0 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 | ||
2004 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 | ||
2005 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2006 | 0 0 0 85 85 85 85 85 85 85 85 85 0 0 0 0 0 0 | ||
2007 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 | ||
2008 | 85 85 85 170 85 0 170 170 170 170 170 170 170 170 170 255 255 255 | ||
2009 | 170 170 170 255 255 255 255 255 85 170 170 170 255 255 85 170 170 170 | ||
2010 | 255 255 85 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 | ||
2011 | 170 170 170 170 170 170 170 170 170 255 85 85 170 170 170 170 170 170 | ||
2012 | 85 85 85 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 | ||
2013 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2014 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 | ||
2015 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2016 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2017 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2018 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2019 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2020 | 0 0 0 0 0 0 85 85 85 85 85 85 170 85 0 85 85 85 | ||
2021 | 85 85 85 255 255 85 170 170 170 170 170 170 170 170 170 170 170 170 | ||
2022 | 255 255 85 170 170 170 170 170 170 255 255 85 170 170 170 170 170 170 | ||
2023 | 170 170 170 255 255 255 255 255 255 170 170 170 255 255 255 170 170 170 | ||
2024 | 170 170 170 85 85 85 85 85 85 0 0 0 0 0 0 85 85 85 | ||
2025 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 | ||
2026 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2027 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2028 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2029 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2030 | 85 85 85 170 170 170 170 170 170 85 85 85 0 0 0 0 0 0 | ||
2031 | 0 0 0 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 | ||
2032 | 85 85 85 85 255 85 170 170 170 255 255 85 255 255 255 255 255 255 | ||
2033 | 255 255 255 170 170 170 255 255 255 170 170 170 170 170 170 170 170 170 | ||
2034 | 170 170 170 170 170 170 255 255 85 170 170 170 255 255 85 255 255 255 | ||
2035 | 255 255 85 255 255 255 255 255 85 170 170 170 170 170 170 170 85 0 | ||
2036 | 170 170 170 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2037 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 | ||
2038 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2039 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2040 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2041 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2042 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2043 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2044 | 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 | ||
2045 | 85 85 85 170 170 170 255 255 85 170 170 170 255 255 85 170 170 170 | ||
2046 | 170 170 170 255 255 85 170 170 170 170 170 170 170 170 170 255 255 85 | ||
2047 | 255 255 255 255 255 255 255 255 85 255 255 255 255 255 255 170 170 170 | ||
2048 | 255 255 85 85 85 85 85 85 85 0 0 0 0 0 0 85 85 85 | ||
2049 | 85 85 85 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2050 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 | ||
2051 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2052 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2053 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
2054 | 85 85 85 170 170 170 170 170 170 0 0 0 0 0 0 0 0 0 | ||
2055 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 | ||
2056 | 85 85 85 170 170 170 170 170 170 170 170 170 255 255 255 170 170 170 | ||
2057 | 255 255 255 255 255 255 255 255 255 170 170 170 170 170 170 255 255 85 | ||
2058 | 170 170 170 255 255 85 170 170 170 255 255 255 170 170 170 255 255 255 | ||
2059 | 255 255 255 255 255 255 170 170 170 255 255 85 170 170 170 255 255 85 | ||
2060 | 85 85 85 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 | ||
2061 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 | ||
2062 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2063 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2064 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2065 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2066 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2067 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2068 | 0 0 0 0 0 0 0 0 0 85 85 85 170 85 0 170 170 170 | ||
2069 | 255 255 85 170 170 170 170 170 170 255 255 255 255 255 255 255 255 255 | ||
2070 | 170 170 170 170 170 170 170 170 170 255 255 85 170 170 170 170 170 170 | ||
2071 | 255 255 255 170 170 170 255 255 255 255 255 255 170 170 170 255 255 255 | ||
2072 | 170 170 170 170 170 170 85 85 85 0 0 0 85 85 85 0 0 0 | ||
2073 | 85 85 85 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 | ||
2074 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2075 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2076 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
2077 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2078 | 85 85 85 170 170 170 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2079 | 0 0 0 85 85 85 0 0 0 85 85 85 85 85 85 0 0 0 | ||
2080 | 85 85 85 170 85 0 255 255 255 170 170 170 255 255 255 255 255 255 | ||
2081 | 255 255 85 255 255 255 170 170 170 255 255 85 170 170 170 170 170 170 | ||
2082 | 170 170 170 170 170 170 170 170 170 255 255 85 255 255 255 255 255 255 | ||
2083 | 170 170 170 255 255 255 255 255 255 170 170 170 170 170 170 170 170 170 | ||
2084 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2085 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2086 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2087 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2088 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2089 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2090 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2091 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2092 | 0 0 0 0 0 0 0 0 0 85 85 85 85 255 85 170 170 170 | ||
2093 | 170 170 170 255 255 85 170 170 170 255 255 255 170 170 170 255 255 255 | ||
2094 | 255 255 255 255 255 255 255 255 85 170 170 170 170 170 170 255 255 255 | ||
2095 | 170 170 170 255 255 255 255 255 255 170 170 170 255 255 255 255 255 85 | ||
2096 | 170 170 170 170 85 0 85 85 85 0 0 0 0 0 0 85 85 85 | ||
2097 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2098 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2099 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 | ||
2100 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2101 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2102 | 85 85 85 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 | ||
2103 | 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 | ||
2104 | 85 85 85 170 170 170 170 170 170 255 255 85 170 170 170 255 255 255 | ||
2105 | 255 255 255 170 170 170 255 255 255 170 170 170 170 170 170 255 255 85 | ||
2106 | 170 170 170 255 255 85 170 170 170 255 255 255 170 170 170 255 255 255 | ||
2107 | 255 255 255 255 255 255 255 255 255 255 255 255 170 170 170 255 255 85 | ||
2108 | 85 85 85 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 | ||
2109 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
2110 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2111 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2112 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2113 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2114 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2115 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2116 | 0 0 0 0 0 0 0 0 0 85 85 85 170 85 0 170 170 170 | ||
2117 | 170 170 170 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 | ||
2118 | 170 170 170 170 170 170 170 170 170 170 170 170 255 255 85 170 170 170 | ||
2119 | 255 255 85 255 255 255 170 170 170 255 255 255 170 170 170 170 170 170 | ||
2120 | 170 170 170 170 170 170 85 85 85 0 0 0 85 85 85 85 85 85 | ||
2121 | 0 0 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 | ||
2122 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2123 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2124 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2125 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2126 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 | ||
2127 | 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 | ||
2128 | 85 85 85 85 85 85 170 170 170 170 170 170 255 255 255 170 170 170 | ||
2129 | 255 255 255 170 170 170 255 255 85 170 170 170 170 170 170 170 170 170 | ||
2130 | 255 85 85 170 170 170 170 170 170 170 170 170 255 255 255 255 255 255 | ||
2131 | 170 170 170 255 255 255 255 255 255 170 170 170 255 255 255 170 170 170 | ||
2132 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2133 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2134 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2135 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2136 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2137 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2138 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2139 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2140 | 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 170 170 170 | ||
2141 | 255 255 85 170 170 170 255 255 255 170 170 170 255 255 255 255 255 255 | ||
2142 | 255 255 85 255 255 255 170 170 170 255 255 85 170 170 170 170 170 170 | ||
2143 | 170 170 170 170 170 170 255 255 85 170 170 170 170 170 170 255 255 85 | ||
2144 | 170 170 170 170 85 0 85 85 85 0 0 0 85 85 85 0 0 0 | ||
2145 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2146 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2147 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2148 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 | ||
2149 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 | ||
2150 | 0 0 0 0 0 0 0 0 0 0 0 0 170 170 170 170 170 170 | ||
2151 | 170 170 170 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2152 | 0 0 0 85 85 85 170 170 170 255 255 85 170 170 170 170 170 170 | ||
2153 | 255 255 85 170 170 170 170 170 170 170 170 170 170 170 170 255 85 85 | ||
2154 | 85 255 85 170 170 170 170 170 170 170 170 170 255 255 85 170 170 170 | ||
2155 | 255 255 255 255 255 255 255 255 255 255 255 85 170 170 170 170 170 170 | ||
2156 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 | ||
2157 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2158 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2159 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2160 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2161 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2162 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2163 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2164 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 255 255 85 | ||
2165 | 170 170 170 170 170 170 255 255 255 255 255 255 255 255 255 170 170 170 | ||
2166 | 255 255 255 170 170 170 170 170 170 170 170 170 170 170 170 255 85 85 | ||
2167 | 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 | ||
2168 | 170 170 170 85 85 85 85 85 85 0 0 0 85 85 85 0 0 0 | ||
2169 | 85 85 85 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 | ||
2170 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2171 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2172 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2173 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2174 | 0 0 0 0 0 0 0 0 0 170 170 170 170 170 170 170 170 170 | ||
2175 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
2176 | 0 0 0 85 85 85 170 85 0 170 170 170 170 170 170 170 170 170 | ||
2177 | 170 170 170 170 170 170 170 170 170 170 85 0 170 170 170 85 255 85 | ||
2178 | 255 85 85 170 170 170 255 255 85 170 170 170 170 170 170 255 255 255 | ||
2179 | 255 255 255 170 170 170 255 255 255 255 255 255 170 170 170 170 170 170 | ||
2180 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2181 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2182 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2183 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2184 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2185 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2186 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2187 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2188 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 170 170 170 | ||
2189 | 170 170 170 255 255 85 170 170 170 255 255 85 255 255 255 255 255 255 | ||
2190 | 170 170 170 170 170 170 255 255 85 170 170 170 255 85 85 85 255 85 | ||
2191 | 170 170 170 170 85 0 170 170 170 170 170 170 255 255 85 170 170 170 | ||
2192 | 170 85 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 | ||
2193 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2194 | 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 | ||
2195 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2196 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2197 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2198 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2199 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
2200 | 0 0 0 85 85 85 85 85 85 85 85 85 170 170 170 255 255 85 | ||
2201 | 170 170 170 170 85 0 170 170 170 170 170 170 170 85 0 85 85 85 | ||
2202 | 170 170 170 170 85 0 85 85 85 170 170 170 170 170 170 170 170 170 | ||
2203 | 170 170 170 255 255 255 255 255 255 255 255 85 170 170 170 170 170 170 | ||
2204 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2205 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2206 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2207 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2208 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2209 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2210 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2211 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2212 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 170 85 0 | ||
2213 | 170 170 170 170 170 170 255 255 255 170 170 170 255 255 255 170 170 170 | ||
2214 | 255 255 255 170 170 170 170 170 170 170 85 0 170 170 170 85 85 85 | ||
2215 | 170 170 170 170 170 170 170 85 0 170 170 170 170 85 0 85 85 85 | ||
2216 | 85 255 85 85 85 85 0 0 0 0 0 0 0 0 0 85 85 85 | ||
2217 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
2218 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2219 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2220 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2221 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2222 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2223 | 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 | ||
2224 | 85 85 85 0 0 0 85 85 85 170 85 0 85 85 85 170 170 170 | ||
2225 | 170 85 0 170 170 170 85 255 85 170 85 0 170 170 170 85 85 85 | ||
2226 | 170 85 0 170 170 170 170 170 170 255 255 85 170 170 170 255 255 255 | ||
2227 | 255 255 85 255 255 255 170 170 170 170 170 170 170 170 170 170 85 0 | ||
2228 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2229 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2230 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2231 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2232 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2233 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2234 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2235 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2236 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
2237 | 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 255 255 85 | ||
2238 | 170 170 170 255 255 85 170 170 170 170 170 170 85 255 85 170 170 170 | ||
2239 | 170 85 0 170 85 0 170 170 170 85 255 85 85 85 85 170 170 170 | ||
2240 | 170 85 0 85 85 85 0 0 0 85 85 85 0 0 0 0 0 0 | ||
2241 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 0 0 0 | ||
2242 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2243 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2244 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2245 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2246 | 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2247 | 0 0 0 0 0 0 0 0 0 85 85 85 170 170 170 85 85 85 | ||
2248 | 0 0 0 0 0 0 0 0 0 85 85 85 170 85 0 85 85 85 | ||
2249 | 170 170 170 170 85 0 170 170 170 85 85 85 170 170 170 170 85 0 | ||
2250 | 170 170 170 85 255 85 170 85 0 170 170 170 170 170 170 170 170 170 | ||
2251 | 255 255 255 170 170 170 255 255 255 255 255 255 170 170 170 85 85 85 | ||
2252 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2253 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2254 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2255 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2256 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2257 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2258 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2259 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2260 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2261 | 170 85 0 170 170 170 255 255 85 170 170 170 255 255 255 170 170 170 | ||
2262 | 170 170 170 170 170 170 170 170 170 170 85 0 170 170 170 170 85 0 | ||
2263 | 170 170 170 85 255 85 170 85 0 170 170 170 170 85 0 85 85 85 | ||
2264 | 85 85 85 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2265 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2266 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2267 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
2268 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2269 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2270 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2271 | 0 0 0 0 0 0 85 85 85 0 0 0 0 0 0 0 0 0 | ||
2272 | 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 | ||
2273 | 85 255 85 170 170 170 170 85 0 170 170 170 170 85 0 85 255 85 | ||
2274 | 170 170 170 170 85 0 170 170 170 170 170 170 170 170 170 255 255 85 | ||
2275 | 170 170 170 255 255 255 170 170 170 170 170 170 170 170 170 0 0 0 | ||
2276 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2277 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2278 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2279 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2280 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2281 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2282 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2283 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2284 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2285 | 85 85 85 170 85 0 85 85 85 170 170 170 255 255 85 170 170 170 | ||
2286 | 170 170 170 255 255 85 170 170 170 170 170 170 170 170 170 170 85 0 | ||
2287 | 170 170 170 85 85 85 170 170 170 170 85 0 170 170 170 85 85 85 | ||
2288 | 170 85 0 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2289 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2290 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2291 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2292 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2293 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2294 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2295 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2296 | 0 0 0 0 0 0 85 85 85 0 0 0 85 85 85 170 85 0 | ||
2297 | 85 85 85 255 85 85 85 255 85 170 85 0 170 170 170 170 170 170 | ||
2298 | 170 85 0 170 170 170 85 85 85 255 255 85 170 170 170 170 170 170 | ||
2299 | 255 255 255 170 170 170 255 255 255 255 255 85 85 85 85 0 0 0 | ||
2300 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2301 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2302 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2303 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2304 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2305 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2306 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2307 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2308 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2309 | 0 0 0 85 85 85 170 170 170 170 85 0 170 170 170 170 170 170 | ||
2310 | 170 170 170 170 170 170 170 170 170 255 255 85 85 85 85 170 170 170 | ||
2311 | 85 255 85 255 85 85 170 170 170 85 255 85 255 85 85 85 255 85 | ||
2312 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2313 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2314 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2315 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2316 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2317 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2318 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2319 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2320 | 0 0 0 0 0 0 85 85 85 85 85 85 0 0 0 85 85 85 | ||
2321 | 85 85 85 85 255 85 255 85 85 170 170 170 85 255 85 170 85 0 | ||
2322 | 170 170 170 170 170 170 255 255 85 170 170 170 170 170 170 255 255 255 | ||
2323 | 170 170 170 255 255 255 170 170 170 170 170 170 85 85 85 0 0 0 | ||
2324 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2325 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2326 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2327 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2328 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2329 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2330 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2331 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2332 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2333 | 0 0 0 0 0 0 85 85 85 170 170 170 85 85 85 255 255 85 | ||
2334 | 170 170 170 255 255 85 170 170 170 170 170 170 170 170 170 255 255 85 | ||
2335 | 85 85 85 255 255 85 170 170 170 170 85 0 170 170 170 85 85 85 | ||
2336 | 170 85 0 85 85 85 85 85 85 0 0 0 0 0 0 0 0 0 | ||
2337 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2338 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2339 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2340 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2341 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2342 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2343 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2344 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
2345 | 170 170 170 170 85 0 170 170 170 170 85 0 170 170 170 170 170 170 | ||
2346 | 170 85 0 170 170 170 170 170 170 170 170 170 255 255 85 170 170 170 | ||
2347 | 255 255 85 255 255 255 170 170 170 170 170 170 85 85 85 0 0 0 | ||
2348 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2349 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2350 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2351 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2352 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2353 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2354 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2355 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2356 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2357 | 0 0 0 0 0 0 85 85 85 170 85 0 85 85 85 170 170 170 | ||
2358 | 170 85 0 170 170 170 170 170 170 255 255 85 170 170 170 170 170 170 | ||
2359 | 170 170 170 170 170 170 170 170 170 255 255 85 170 170 170 170 85 0 | ||
2360 | 85 85 85 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2361 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2362 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2363 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2364 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2365 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2366 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2367 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2368 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 | ||
2369 | 170 85 0 85 255 85 170 170 170 170 170 170 255 255 85 170 170 170 | ||
2370 | 255 255 85 170 170 170 170 170 170 170 170 170 255 255 255 255 255 255 | ||
2371 | 255 255 255 170 170 170 255 255 85 85 85 85 0 0 0 0 0 0 | ||
2372 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2373 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2374 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2375 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2376 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2377 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2378 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2379 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2380 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2381 | 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 170 85 0 | ||
2382 | 170 170 170 170 170 170 170 170 170 170 170 170 170 170 170 255 255 85 | ||
2383 | 170 170 170 255 255 85 170 170 170 170 170 170 170 170 170 170 170 170 | ||
2384 | 170 170 170 85 85 85 85 85 85 0 0 0 0 0 0 0 0 0 | ||
2385 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2386 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2387 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2388 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2389 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2390 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2391 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2392 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
2393 | 85 85 85 170 85 0 170 170 170 170 85 0 170 170 170 170 170 170 | ||
2394 | 170 170 170 255 255 85 170 170 170 255 255 85 170 170 170 255 255 255 | ||
2395 | 170 170 170 255 255 255 170 170 170 85 85 85 0 0 0 0 0 0 | ||
2396 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2397 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2398 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2399 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2400 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2401 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2402 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2403 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2404 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2405 | 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 85 85 85 | ||
2406 | 170 85 0 170 170 170 170 85 0 255 255 85 170 170 170 170 170 170 | ||
2407 | 170 170 170 170 170 170 255 255 85 170 170 170 255 255 85 170 170 170 | ||
2408 | 255 255 85 85 85 85 85 85 85 0 0 0 0 0 0 0 0 0 | ||
2409 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2410 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2411 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2412 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2413 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2414 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2415 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2416 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 | ||
2417 | 85 85 85 170 170 170 255 255 85 170 170 170 255 255 85 170 170 170 | ||
2418 | 170 170 170 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 | ||
2419 | 170 170 170 170 170 170 170 170 170 0 0 0 0 0 0 0 0 0 | ||
2420 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2421 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2422 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2423 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2424 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2425 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2426 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2427 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2428 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2429 | 0 0 0 0 0 0 0 0 0 0 0 0 0 170 0 85 85 85 | ||
2430 | 170 85 0 85 255 85 170 170 170 170 170 170 170 170 170 255 255 85 | ||
2431 | 255 255 255 170 170 170 255 255 255 170 170 170 255 255 255 170 170 170 | ||
2432 | 170 170 170 255 255 85 85 85 85 0 0 0 0 0 0 0 0 0 | ||
2433 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2434 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2435 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2436 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2437 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2438 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2439 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2440 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
2441 | 170 85 0 170 170 170 170 170 170 170 170 170 170 170 170 255 255 85 | ||
2442 | 170 170 170 255 255 255 170 170 170 255 255 255 170 170 170 255 255 255 | ||
2443 | 255 255 255 255 255 85 85 85 85 0 0 0 0 0 0 0 0 0 | ||
2444 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2445 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2446 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2447 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2448 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2449 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2450 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2451 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2452 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2453 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
2454 | 85 85 85 170 85 0 170 170 170 170 170 170 255 255 85 170 170 170 | ||
2455 | 170 170 170 255 255 255 255 255 255 255 255 255 170 170 170 255 255 255 | ||
2456 | 170 170 170 170 170 170 170 170 170 85 85 85 0 0 0 0 0 0 | ||
2457 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2458 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2459 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2460 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2461 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2462 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2463 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2464 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 85 255 85 | ||
2465 | 170 170 170 255 255 85 170 170 170 255 255 85 255 255 255 255 255 255 | ||
2466 | 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 170 170 170 | ||
2467 | 170 170 170 170 170 170 85 85 85 0 0 0 0 0 0 0 0 0 | ||
2468 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2469 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2470 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2471 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2472 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2473 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2474 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2475 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2476 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2477 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2478 | 85 85 85 85 85 85 85 85 85 170 85 0 170 170 170 170 170 170 | ||
2479 | 255 255 85 170 170 170 255 255 255 255 255 85 255 255 255 255 255 255 | ||
2480 | 170 170 170 255 255 85 170 170 170 85 85 85 0 0 0 0 0 0 | ||
2481 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2482 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2483 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2484 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2485 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2486 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2487 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2488 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 170 85 0 | ||
2489 | 170 170 170 170 170 170 170 170 170 255 255 255 170 170 170 255 255 255 | ||
2490 | 170 170 170 255 255 255 170 170 170 255 255 255 255 255 85 255 255 255 | ||
2491 | 170 170 170 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2492 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2493 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2494 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2495 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2496 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2497 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2498 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2499 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2500 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2501 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2502 | 85 85 85 170 85 0 85 85 85 170 170 170 170 170 170 170 170 170 | ||
2503 | 170 170 170 255 255 255 170 170 170 255 255 255 255 255 255 170 170 170 | ||
2504 | 255 255 85 170 170 170 170 170 170 170 85 0 85 85 85 0 0 0 | ||
2505 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2506 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2507 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2508 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2509 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2510 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2511 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2512 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 170 170 170 | ||
2513 | 255 255 85 170 170 170 255 255 85 170 170 170 255 255 255 255 255 255 | ||
2514 | 255 255 255 255 255 255 255 255 255 255 255 255 170 170 170 170 170 170 | ||
2515 | 170 170 170 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2516 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2517 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2518 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2519 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2520 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2521 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2522 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2523 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2524 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2525 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2526 | 0 0 0 85 85 85 85 85 85 85 85 85 170 85 0 170 170 170 | ||
2527 | 255 255 85 170 170 170 255 255 85 255 255 255 170 170 170 255 255 255 | ||
2528 | 170 170 170 170 170 170 170 170 170 170 170 170 0 0 0 0 0 0 | ||
2529 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2530 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2531 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2532 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2533 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2534 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2535 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2536 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 170 170 170 | ||
2537 | 170 85 0 170 170 170 255 255 255 170 170 170 255 255 255 170 170 170 | ||
2538 | 255 255 255 255 255 255 170 170 170 255 255 255 255 255 85 170 170 170 | ||
2539 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2540 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2541 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2542 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2543 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2544 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2545 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2546 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2547 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2548 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2549 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2550 | 0 0 0 0 0 0 85 85 85 170 85 0 85 85 85 170 170 170 | ||
2551 | 170 170 170 170 170 170 170 170 170 170 170 170 255 255 85 170 170 170 | ||
2552 | 255 255 85 170 170 170 170 85 0 85 255 85 85 85 85 0 0 0 | ||
2553 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2554 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2555 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2556 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2557 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2558 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2559 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2560 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 170 85 0 | ||
2561 | 170 170 170 170 170 170 255 255 85 170 170 170 255 255 255 255 255 255 | ||
2562 | 255 255 85 255 255 255 170 170 170 255 255 255 170 170 170 85 85 85 | ||
2563 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2564 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2565 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2566 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2567 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2568 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2569 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2570 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2571 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2572 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2573 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2574 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 | ||
2575 | 170 85 0 170 170 170 170 170 170 255 255 85 170 170 170 170 170 170 | ||
2576 | 170 170 170 170 170 170 170 170 170 170 85 0 0 0 0 0 0 0 | ||
2577 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2578 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2579 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2580 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2581 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2582 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2583 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2584 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 | ||
2585 | 255 255 85 170 170 170 170 170 170 170 170 170 255 255 85 170 170 170 | ||
2586 | 255 255 255 170 170 170 255 255 85 170 170 170 85 85 85 85 85 85 | ||
2587 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2588 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2589 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2590 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2591 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2592 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2593 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2594 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2595 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2596 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2597 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2598 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 | ||
2599 | 85 85 85 170 85 0 170 170 170 170 170 170 170 170 170 170 170 170 | ||
2600 | 170 85 0 170 170 170 170 85 0 85 85 85 0 0 0 0 0 0 | ||
2601 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2602 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2603 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2604 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2605 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2606 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2607 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2608 | 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 85 85 85 | ||
2609 | 170 170 170 170 170 170 255 255 85 170 170 170 170 170 170 170 170 170 | ||
2610 | 170 170 170 255 255 255 170 170 170 170 170 170 85 85 85 0 0 0 | ||
2611 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2612 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2613 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2614 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2615 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2616 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2617 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2618 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2619 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2620 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2621 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2622 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2623 | 85 85 85 85 85 85 85 85 85 170 85 0 85 85 85 170 85 0 | ||
2624 | 85 85 85 85 85 85 85 85 85 0 0 0 0 0 0 0 0 0 | ||
2625 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2626 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2627 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2628 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2629 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2630 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2631 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2632 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 170 85 0 | ||
2633 | 85 85 85 170 85 0 170 170 170 170 170 170 170 170 170 255 255 85 | ||
2634 | 170 170 170 170 170 170 170 85 0 85 85 85 0 0 0 0 0 0 | ||
2635 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2636 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2637 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2638 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2639 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2640 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2641 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2642 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2643 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2644 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2645 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2646 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2647 | 0 0 0 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 | ||
2648 | 85 85 85 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2649 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2650 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2651 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2652 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2653 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2654 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2655 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2656 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 85 85 | ||
2657 | 85 85 85 85 255 85 170 85 0 170 170 170 170 85 0 170 170 170 | ||
2658 | 85 85 85 85 85 85 85 85 85 0 0 0 0 0 0 0 0 0 | ||
2659 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2660 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2661 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2662 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2663 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2664 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2665 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2666 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2667 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2668 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2669 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2670 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2671 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2672 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2673 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2674 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2675 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2676 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2677 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2678 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2679 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2680 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2681 | 0 0 0 85 85 85 85 85 85 85 85 85 85 85 85 85 85 85 | ||
2682 | 85 85 85 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2683 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2684 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2685 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2686 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2687 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2688 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2689 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2690 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2691 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2692 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2693 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2694 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2695 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2696 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2697 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2698 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2699 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2700 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2701 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2702 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2703 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2704 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2705 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2706 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2707 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2708 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2709 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2710 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2711 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2712 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2713 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2714 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2715 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2716 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2717 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2718 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2719 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2720 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2721 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2722 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2723 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2724 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2725 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2726 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2727 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2728 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2729 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2730 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2731 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2732 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2733 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2734 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2735 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2736 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2737 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2738 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | ||
2739 | 0 0 0 0 0 0 0 0 0 0 0 0 | ||
diff --git a/drivers/video/sh_mobile_lcdcfb.c b/drivers/video/sh_mobile_lcdcfb.c index 0e2b8fd24df1..2c5d069e5f06 100644 --- a/drivers/video/sh_mobile_lcdcfb.c +++ b/drivers/video/sh_mobile_lcdcfb.c | |||
@@ -446,7 +446,6 @@ static void sh_mobile_lcdc_stop(struct sh_mobile_lcdc_priv *priv) | |||
446 | { | 446 | { |
447 | struct sh_mobile_lcdc_chan *ch; | 447 | struct sh_mobile_lcdc_chan *ch; |
448 | struct sh_mobile_lcdc_board_cfg *board_cfg; | 448 | struct sh_mobile_lcdc_board_cfg *board_cfg; |
449 | unsigned long tmp; | ||
450 | int k; | 449 | int k; |
451 | 450 | ||
452 | /* tell the board code to disable the panel */ | 451 | /* tell the board code to disable the panel */ |
@@ -456,9 +455,8 @@ static void sh_mobile_lcdc_stop(struct sh_mobile_lcdc_priv *priv) | |||
456 | if (board_cfg->display_off) | 455 | if (board_cfg->display_off) |
457 | board_cfg->display_off(board_cfg->board_data); | 456 | board_cfg->display_off(board_cfg->board_data); |
458 | 457 | ||
459 | /* cleanup deferred io if SYS bus */ | 458 | /* cleanup deferred io if enabled */ |
460 | tmp = ch->cfg.sys_bus_cfg.deferred_io_msec; | 459 | if (ch->info.fbdefio) { |
461 | if (ch->ldmt1r_value & (1 << 12) && tmp) { | ||
462 | fb_deferred_io_cleanup(&ch->info); | 460 | fb_deferred_io_cleanup(&ch->info); |
463 | ch->info.fbdefio = NULL; | 461 | ch->info.fbdefio = NULL; |
464 | } | 462 | } |
diff --git a/drivers/w1/masters/w1-gpio.c b/drivers/w1/masters/w1-gpio.c index 9e1138a75e8b..a411702413d6 100644 --- a/drivers/w1/masters/w1-gpio.c +++ b/drivers/w1/masters/w1-gpio.c | |||
@@ -39,7 +39,7 @@ static u8 w1_gpio_read_bit(void *data) | |||
39 | { | 39 | { |
40 | struct w1_gpio_platform_data *pdata = data; | 40 | struct w1_gpio_platform_data *pdata = data; |
41 | 41 | ||
42 | return gpio_get_value(pdata->pin); | 42 | return gpio_get_value(pdata->pin) ? 1 : 0; |
43 | } | 43 | } |
44 | 44 | ||
45 | static int __init w1_gpio_probe(struct platform_device *pdev) | 45 | static int __init w1_gpio_probe(struct platform_device *pdev) |
diff --git a/drivers/watchdog/gef_wdt.c b/drivers/watchdog/gef_wdt.c index f0c2b7a1a175..734d9806a872 100644 --- a/drivers/watchdog/gef_wdt.c +++ b/drivers/watchdog/gef_wdt.c | |||
@@ -269,7 +269,7 @@ static int __devinit gef_wdt_probe(struct of_device *dev, | |||
269 | bus_clk = 133; /* in MHz */ | 269 | bus_clk = 133; /* in MHz */ |
270 | 270 | ||
271 | freq = fsl_get_sys_freq(); | 271 | freq = fsl_get_sys_freq(); |
272 | if (freq > 0) | 272 | if (freq != -1) |
273 | bus_clk = freq; | 273 | bus_clk = freq; |
274 | 274 | ||
275 | /* Map devices registers into memory */ | 275 | /* Map devices registers into memory */ |
diff --git a/drivers/watchdog/ks8695_wdt.c b/drivers/watchdog/ks8695_wdt.c index 0b798fdaa378..74c92d384112 100644 --- a/drivers/watchdog/ks8695_wdt.c +++ b/drivers/watchdog/ks8695_wdt.c | |||
@@ -21,6 +21,7 @@ | |||
21 | #include <linux/watchdog.h> | 21 | #include <linux/watchdog.h> |
22 | #include <linux/io.h> | 22 | #include <linux/io.h> |
23 | #include <linux/uaccess.h> | 23 | #include <linux/uaccess.h> |
24 | #include <mach/timex.h> | ||
24 | #include <mach/regs-timer.h> | 25 | #include <mach/regs-timer.h> |
25 | 26 | ||
26 | #define WDT_DEFAULT_TIME 5 /* seconds */ | 27 | #define WDT_DEFAULT_TIME 5 /* seconds */ |
diff --git a/drivers/watchdog/orion5x_wdt.c b/drivers/watchdog/orion5x_wdt.c index 14a339f58b6a..b64ae1a17832 100644 --- a/drivers/watchdog/orion5x_wdt.c +++ b/drivers/watchdog/orion5x_wdt.c | |||
@@ -29,6 +29,7 @@ | |||
29 | #define WDT_EN 0x0010 | 29 | #define WDT_EN 0x0010 |
30 | #define WDT_VAL (TIMER_VIRT_BASE + 0x0024) | 30 | #define WDT_VAL (TIMER_VIRT_BASE + 0x0024) |
31 | 31 | ||
32 | #define ORION5X_TCLK 166666667 | ||
32 | #define WDT_MAX_DURATION (0xffffffff / ORION5X_TCLK) | 33 | #define WDT_MAX_DURATION (0xffffffff / ORION5X_TCLK) |
33 | #define WDT_IN_USE 0 | 34 | #define WDT_IN_USE 0 |
34 | #define WDT_OK_TO_CLOSE 1 | 35 | #define WDT_OK_TO_CLOSE 1 |
diff --git a/drivers/watchdog/rc32434_wdt.c b/drivers/watchdog/rc32434_wdt.c index 57027f4653ce..f3553fa40b17 100644 --- a/drivers/watchdog/rc32434_wdt.c +++ b/drivers/watchdog/rc32434_wdt.c | |||
@@ -34,104 +34,89 @@ | |||
34 | #include <asm/time.h> | 34 | #include <asm/time.h> |
35 | #include <asm/mach-rc32434/integ.h> | 35 | #include <asm/mach-rc32434/integ.h> |
36 | 36 | ||
37 | #define MAX_TIMEOUT 20 | 37 | #define VERSION "0.4" |
38 | #define RC32434_WDT_INTERVAL (15 * HZ) | ||
39 | |||
40 | #define VERSION "0.2" | ||
41 | 38 | ||
42 | static struct { | 39 | static struct { |
43 | struct completion stop; | ||
44 | int running; | ||
45 | struct timer_list timer; | ||
46 | int queue; | ||
47 | int default_ticks; | ||
48 | unsigned long inuse; | 40 | unsigned long inuse; |
49 | } rc32434_wdt_device; | 41 | } rc32434_wdt_device; |
50 | 42 | ||
51 | static struct integ __iomem *wdt_reg; | 43 | static struct integ __iomem *wdt_reg; |
52 | static int ticks = 100 * HZ; | ||
53 | 44 | ||
54 | static int expect_close; | 45 | static int expect_close; |
55 | static int timeout; | 46 | |
47 | /* Board internal clock speed in Hz, | ||
48 | * the watchdog timer ticks at. */ | ||
49 | extern unsigned int idt_cpu_freq; | ||
50 | |||
51 | /* translate wtcompare value to seconds and vice versa */ | ||
52 | #define WTCOMP2SEC(x) (x / idt_cpu_freq) | ||
53 | #define SEC2WTCOMP(x) (x * idt_cpu_freq) | ||
54 | |||
55 | /* Use a default timeout of 20s. This should be | ||
56 | * safe for CPU clock speeds up to 400MHz, as | ||
57 | * ((2 ^ 32) - 1) / (400MHz / 2) = 21s. */ | ||
58 | #define WATCHDOG_TIMEOUT 20 | ||
59 | |||
60 | static int timeout = WATCHDOG_TIMEOUT; | ||
56 | 61 | ||
57 | static int nowayout = WATCHDOG_NOWAYOUT; | 62 | static int nowayout = WATCHDOG_NOWAYOUT; |
58 | module_param(nowayout, int, 0); | 63 | module_param(nowayout, int, 0); |
59 | MODULE_PARM_DESC(nowayout, "Watchdog cannot be stopped once started (default=" | 64 | MODULE_PARM_DESC(nowayout, "Watchdog cannot be stopped once started (default=" |
60 | __MODULE_STRING(WATCHDOG_NOWAYOUT) ")"); | 65 | __MODULE_STRING(WATCHDOG_NOWAYOUT) ")"); |
61 | 66 | ||
67 | /* apply or and nand masks to data read from addr and write back */ | ||
68 | #define SET_BITS(addr, or, nand) \ | ||
69 | writel((readl(&addr) | or) & ~nand, &addr) | ||
62 | 70 | ||
63 | static void rc32434_wdt_start(void) | 71 | static void rc32434_wdt_start(void) |
64 | { | 72 | { |
65 | u32 val; | 73 | u32 or, nand; |
66 | |||
67 | if (!rc32434_wdt_device.inuse) { | ||
68 | writel(0, &wdt_reg->wtcount); | ||
69 | 74 | ||
70 | val = RC32434_ERR_WRE; | 75 | /* zero the counter before enabling */ |
71 | writel(readl(&wdt_reg->errcs) | val, &wdt_reg->errcs); | 76 | writel(0, &wdt_reg->wtcount); |
72 | 77 | ||
73 | val = RC32434_WTC_EN; | 78 | /* don't generate a non-maskable interrupt, |
74 | writel(readl(&wdt_reg->wtc) | val, &wdt_reg->wtc); | 79 | * do a warm reset instead */ |
75 | } | 80 | nand = 1 << RC32434_ERR_WNE; |
76 | rc32434_wdt_device.running++; | 81 | or = 1 << RC32434_ERR_WRE; |
77 | } | ||
78 | 82 | ||
79 | static void rc32434_wdt_stop(void) | 83 | /* reset the ERRCS timeout bit in case it's set */ |
80 | { | 84 | nand |= 1 << RC32434_ERR_WTO; |
81 | u32 val; | ||
82 | 85 | ||
83 | if (rc32434_wdt_device.running) { | 86 | SET_BITS(wdt_reg->errcs, or, nand); |
84 | 87 | ||
85 | val = ~RC32434_WTC_EN; | 88 | /* reset WTC timeout bit and enable WDT */ |
86 | writel(readl(&wdt_reg->wtc) & val, &wdt_reg->wtc); | 89 | nand = 1 << RC32434_WTC_TO; |
90 | or = 1 << RC32434_WTC_EN; | ||
87 | 91 | ||
88 | val = ~RC32434_ERR_WRE; | 92 | SET_BITS(wdt_reg->wtc, or, nand); |
89 | writel(readl(&wdt_reg->errcs) & val, &wdt_reg->errcs); | 93 | } |
90 | 94 | ||
91 | rc32434_wdt_device.running = 0; | 95 | static void rc32434_wdt_stop(void) |
92 | } | 96 | { |
97 | /* Disable WDT */ | ||
98 | SET_BITS(wdt_reg->wtc, 0, 1 << RC32434_WTC_EN); | ||
93 | } | 99 | } |
94 | 100 | ||
95 | static void rc32434_wdt_set(int new_timeout) | 101 | static int rc32434_wdt_set(int new_timeout) |
96 | { | 102 | { |
97 | u32 cmp = new_timeout * HZ; | 103 | int max_to = WTCOMP2SEC((u32)-1); |
98 | u32 state, val; | ||
99 | 104 | ||
105 | if (new_timeout < 0 || new_timeout > max_to) { | ||
106 | printk(KERN_ERR KBUILD_MODNAME | ||
107 | ": timeout value must be between 0 and %d", | ||
108 | max_to); | ||
109 | return -EINVAL; | ||
110 | } | ||
100 | timeout = new_timeout; | 111 | timeout = new_timeout; |
101 | /* | 112 | writel(SEC2WTCOMP(timeout), &wdt_reg->wtcompare); |
102 | * store and disable WTC | ||
103 | */ | ||
104 | state = (u32)(readl(&wdt_reg->wtc) & RC32434_WTC_EN); | ||
105 | val = ~RC32434_WTC_EN; | ||
106 | writel(readl(&wdt_reg->wtc) & val, &wdt_reg->wtc); | ||
107 | |||
108 | writel(0, &wdt_reg->wtcount); | ||
109 | writel(cmp, &wdt_reg->wtcompare); | ||
110 | |||
111 | /* | ||
112 | * restore WTC | ||
113 | */ | ||
114 | |||
115 | writel(readl(&wdt_reg->wtc) | state, &wdt_reg); | ||
116 | } | ||
117 | 113 | ||
118 | static void rc32434_wdt_reset(void) | 114 | return 0; |
119 | { | ||
120 | ticks = rc32434_wdt_device.default_ticks; | ||
121 | } | 115 | } |
122 | 116 | ||
123 | static void rc32434_wdt_update(unsigned long unused) | 117 | static void rc32434_wdt_ping(void) |
124 | { | 118 | { |
125 | if (rc32434_wdt_device.running) | ||
126 | ticks--; | ||
127 | |||
128 | writel(0, &wdt_reg->wtcount); | 119 | writel(0, &wdt_reg->wtcount); |
129 | |||
130 | if (rc32434_wdt_device.queue && ticks) | ||
131 | mod_timer(&rc32434_wdt_device.timer, | ||
132 | jiffies + RC32434_WDT_INTERVAL); | ||
133 | else | ||
134 | complete(&rc32434_wdt_device.stop); | ||
135 | } | 120 | } |
136 | 121 | ||
137 | static int rc32434_wdt_open(struct inode *inode, struct file *file) | 122 | static int rc32434_wdt_open(struct inode *inode, struct file *file) |
@@ -142,19 +127,23 @@ static int rc32434_wdt_open(struct inode *inode, struct file *file) | |||
142 | if (nowayout) | 127 | if (nowayout) |
143 | __module_get(THIS_MODULE); | 128 | __module_get(THIS_MODULE); |
144 | 129 | ||
130 | rc32434_wdt_start(); | ||
131 | rc32434_wdt_ping(); | ||
132 | |||
145 | return nonseekable_open(inode, file); | 133 | return nonseekable_open(inode, file); |
146 | } | 134 | } |
147 | 135 | ||
148 | static int rc32434_wdt_release(struct inode *inode, struct file *file) | 136 | static int rc32434_wdt_release(struct inode *inode, struct file *file) |
149 | { | 137 | { |
150 | if (expect_close && nowayout == 0) { | 138 | if (expect_close == 42) { |
151 | rc32434_wdt_stop(); | 139 | rc32434_wdt_stop(); |
152 | printk(KERN_INFO KBUILD_MODNAME ": disabling watchdog timer\n"); | 140 | printk(KERN_INFO KBUILD_MODNAME ": disabling watchdog timer\n"); |
153 | module_put(THIS_MODULE); | 141 | module_put(THIS_MODULE); |
154 | } else | 142 | } else { |
155 | printk(KERN_CRIT KBUILD_MODNAME | 143 | printk(KERN_CRIT KBUILD_MODNAME |
156 | ": device closed unexpectedly. WDT will not stop !\n"); | 144 | ": device closed unexpectedly. WDT will not stop !\n"); |
157 | 145 | rc32434_wdt_ping(); | |
146 | } | ||
158 | clear_bit(0, &rc32434_wdt_device.inuse); | 147 | clear_bit(0, &rc32434_wdt_device.inuse); |
159 | return 0; | 148 | return 0; |
160 | } | 149 | } |
@@ -174,10 +163,10 @@ static ssize_t rc32434_wdt_write(struct file *file, const char *data, | |||
174 | if (get_user(c, data + i)) | 163 | if (get_user(c, data + i)) |
175 | return -EFAULT; | 164 | return -EFAULT; |
176 | if (c == 'V') | 165 | if (c == 'V') |
177 | expect_close = 1; | 166 | expect_close = 42; |
178 | } | 167 | } |
179 | } | 168 | } |
180 | rc32434_wdt_update(0); | 169 | rc32434_wdt_ping(); |
181 | return len; | 170 | return len; |
182 | } | 171 | } |
183 | return 0; | 172 | return 0; |
@@ -197,11 +186,11 @@ static long rc32434_wdt_ioctl(struct file *file, unsigned int cmd, | |||
197 | }; | 186 | }; |
198 | switch (cmd) { | 187 | switch (cmd) { |
199 | case WDIOC_KEEPALIVE: | 188 | case WDIOC_KEEPALIVE: |
200 | rc32434_wdt_reset(); | 189 | rc32434_wdt_ping(); |
201 | break; | 190 | break; |
202 | case WDIOC_GETSTATUS: | 191 | case WDIOC_GETSTATUS: |
203 | case WDIOC_GETBOOTSTATUS: | 192 | case WDIOC_GETBOOTSTATUS: |
204 | value = readl(&wdt_reg->wtcount); | 193 | value = 0; |
205 | if (copy_to_user(argp, &value, sizeof(int))) | 194 | if (copy_to_user(argp, &value, sizeof(int))) |
206 | return -EFAULT; | 195 | return -EFAULT; |
207 | break; | 196 | break; |
@@ -218,6 +207,7 @@ static long rc32434_wdt_ioctl(struct file *file, unsigned int cmd, | |||
218 | break; | 207 | break; |
219 | case WDIOS_DISABLECARD: | 208 | case WDIOS_DISABLECARD: |
220 | rc32434_wdt_stop(); | 209 | rc32434_wdt_stop(); |
210 | break; | ||
221 | default: | 211 | default: |
222 | return -EINVAL; | 212 | return -EINVAL; |
223 | } | 213 | } |
@@ -225,11 +215,9 @@ static long rc32434_wdt_ioctl(struct file *file, unsigned int cmd, | |||
225 | case WDIOC_SETTIMEOUT: | 215 | case WDIOC_SETTIMEOUT: |
226 | if (copy_from_user(&new_timeout, argp, sizeof(int))) | 216 | if (copy_from_user(&new_timeout, argp, sizeof(int))) |
227 | return -EFAULT; | 217 | return -EFAULT; |
228 | if (new_timeout < 1) | 218 | if (rc32434_wdt_set(new_timeout)) |
229 | return -EINVAL; | 219 | return -EINVAL; |
230 | if (new_timeout > MAX_TIMEOUT) | 220 | /* Fall through */ |
231 | return -EINVAL; | ||
232 | rc32434_wdt_set(new_timeout); | ||
233 | case WDIOC_GETTIMEOUT: | 221 | case WDIOC_GETTIMEOUT: |
234 | return copy_to_user(argp, &timeout, sizeof(int)); | 222 | return copy_to_user(argp, &timeout, sizeof(int)); |
235 | default: | 223 | default: |
@@ -254,15 +242,15 @@ static struct miscdevice rc32434_wdt_miscdev = { | |||
254 | .fops = &rc32434_wdt_fops, | 242 | .fops = &rc32434_wdt_fops, |
255 | }; | 243 | }; |
256 | 244 | ||
257 | static char banner[] = KERN_INFO KBUILD_MODNAME | 245 | static char banner[] __devinitdata = KERN_INFO KBUILD_MODNAME |
258 | ": Watchdog Timer version " VERSION ", timer margin: %d sec\n"; | 246 | ": Watchdog Timer version " VERSION ", timer margin: %d sec\n"; |
259 | 247 | ||
260 | static int rc32434_wdt_probe(struct platform_device *pdev) | 248 | static int __devinit rc32434_wdt_probe(struct platform_device *pdev) |
261 | { | 249 | { |
262 | int ret; | 250 | int ret; |
263 | struct resource *r; | 251 | struct resource *r; |
264 | 252 | ||
265 | r = platform_get_resource_byname(pdev, IORESOURCE_MEM, "rb500_wdt_res"); | 253 | r = platform_get_resource_byname(pdev, IORESOURCE_MEM, "rb532_wdt_res"); |
266 | if (!r) { | 254 | if (!r) { |
267 | printk(KERN_ERR KBUILD_MODNAME | 255 | printk(KERN_ERR KBUILD_MODNAME |
268 | "failed to retrieve resources\n"); | 256 | "failed to retrieve resources\n"); |
@@ -277,24 +265,12 @@ static int rc32434_wdt_probe(struct platform_device *pdev) | |||
277 | } | 265 | } |
278 | 266 | ||
279 | ret = misc_register(&rc32434_wdt_miscdev); | 267 | ret = misc_register(&rc32434_wdt_miscdev); |
280 | |||
281 | if (ret < 0) { | 268 | if (ret < 0) { |
282 | printk(KERN_ERR KBUILD_MODNAME | 269 | printk(KERN_ERR KBUILD_MODNAME |
283 | "failed to register watchdog device\n"); | 270 | "failed to register watchdog device\n"); |
284 | goto unmap; | 271 | goto unmap; |
285 | } | 272 | } |
286 | 273 | ||
287 | init_completion(&rc32434_wdt_device.stop); | ||
288 | rc32434_wdt_device.queue = 0; | ||
289 | |||
290 | clear_bit(0, &rc32434_wdt_device.inuse); | ||
291 | |||
292 | setup_timer(&rc32434_wdt_device.timer, rc32434_wdt_update, 0L); | ||
293 | |||
294 | rc32434_wdt_device.default_ticks = ticks; | ||
295 | |||
296 | rc32434_wdt_start(); | ||
297 | |||
298 | printk(banner, timeout); | 274 | printk(banner, timeout); |
299 | 275 | ||
300 | return 0; | 276 | return 0; |
@@ -304,23 +280,17 @@ unmap: | |||
304 | return ret; | 280 | return ret; |
305 | } | 281 | } |
306 | 282 | ||
307 | static int rc32434_wdt_remove(struct platform_device *pdev) | 283 | static int __devexit rc32434_wdt_remove(struct platform_device *pdev) |
308 | { | 284 | { |
309 | if (rc32434_wdt_device.queue) { | ||
310 | rc32434_wdt_device.queue = 0; | ||
311 | wait_for_completion(&rc32434_wdt_device.stop); | ||
312 | } | ||
313 | misc_deregister(&rc32434_wdt_miscdev); | 285 | misc_deregister(&rc32434_wdt_miscdev); |
314 | |||
315 | iounmap(wdt_reg); | 286 | iounmap(wdt_reg); |
316 | |||
317 | return 0; | 287 | return 0; |
318 | } | 288 | } |
319 | 289 | ||
320 | static struct platform_driver rc32434_wdt = { | 290 | static struct platform_driver rc32434_wdt = { |
321 | .probe = rc32434_wdt_probe, | 291 | .probe = rc32434_wdt_probe, |
322 | .remove = rc32434_wdt_remove, | 292 | .remove = __devexit_p(rc32434_wdt_remove), |
323 | .driver = { | 293 | .driver = { |
324 | .name = "rc32434_wdt", | 294 | .name = "rc32434_wdt", |
325 | } | 295 | } |
326 | }; | 296 | }; |
diff --git a/fs/bio-integrity.c b/fs/bio-integrity.c index 549b0144da11..fe2b1aa2464e 100644 --- a/fs/bio-integrity.c +++ b/fs/bio-integrity.c | |||
@@ -685,19 +685,20 @@ EXPORT_SYMBOL(bio_integrity_split); | |||
685 | * bio_integrity_clone - Callback for cloning bios with integrity metadata | 685 | * bio_integrity_clone - Callback for cloning bios with integrity metadata |
686 | * @bio: New bio | 686 | * @bio: New bio |
687 | * @bio_src: Original bio | 687 | * @bio_src: Original bio |
688 | * @gfp_mask: Memory allocation mask | ||
688 | * @bs: bio_set to allocate bip from | 689 | * @bs: bio_set to allocate bip from |
689 | * | 690 | * |
690 | * Description: Called to allocate a bip when cloning a bio | 691 | * Description: Called to allocate a bip when cloning a bio |
691 | */ | 692 | */ |
692 | int bio_integrity_clone(struct bio *bio, struct bio *bio_src, | 693 | int bio_integrity_clone(struct bio *bio, struct bio *bio_src, |
693 | struct bio_set *bs) | 694 | gfp_t gfp_mask, struct bio_set *bs) |
694 | { | 695 | { |
695 | struct bio_integrity_payload *bip_src = bio_src->bi_integrity; | 696 | struct bio_integrity_payload *bip_src = bio_src->bi_integrity; |
696 | struct bio_integrity_payload *bip; | 697 | struct bio_integrity_payload *bip; |
697 | 698 | ||
698 | BUG_ON(bip_src == NULL); | 699 | BUG_ON(bip_src == NULL); |
699 | 700 | ||
700 | bip = bio_integrity_alloc_bioset(bio, GFP_NOIO, bip_src->bip_vcnt, bs); | 701 | bip = bio_integrity_alloc_bioset(bio, gfp_mask, bip_src->bip_vcnt, bs); |
701 | 702 | ||
702 | if (bip == NULL) | 703 | if (bip == NULL) |
703 | return -EIO; | 704 | return -EIO; |
@@ -463,10 +463,12 @@ struct bio *bio_clone(struct bio *bio, gfp_t gfp_mask) | |||
463 | if (bio_integrity(bio)) { | 463 | if (bio_integrity(bio)) { |
464 | int ret; | 464 | int ret; |
465 | 465 | ||
466 | ret = bio_integrity_clone(b, bio, fs_bio_set); | 466 | ret = bio_integrity_clone(b, bio, gfp_mask, fs_bio_set); |
467 | 467 | ||
468 | if (ret < 0) | 468 | if (ret < 0) { |
469 | bio_put(b); | ||
469 | return NULL; | 470 | return NULL; |
471 | } | ||
470 | } | 472 | } |
471 | 473 | ||
472 | return b; | 474 | return b; |
diff --git a/fs/btrfs/ctree.c b/fs/btrfs/ctree.c index 42491d728e99..37f31b5529aa 100644 --- a/fs/btrfs/ctree.c +++ b/fs/btrfs/ctree.c | |||
@@ -277,7 +277,7 @@ static noinline int __btrfs_cow_block(struct btrfs_trans_handle *trans, | |||
277 | if (*cow_ret == buf) | 277 | if (*cow_ret == buf) |
278 | unlock_orig = 1; | 278 | unlock_orig = 1; |
279 | 279 | ||
280 | WARN_ON(!btrfs_tree_locked(buf)); | 280 | btrfs_assert_tree_locked(buf); |
281 | 281 | ||
282 | if (parent) | 282 | if (parent) |
283 | parent_start = parent->start; | 283 | parent_start = parent->start; |
@@ -2365,7 +2365,7 @@ static int push_leaf_right(struct btrfs_trans_handle *trans, struct btrfs_root | |||
2365 | if (slot >= btrfs_header_nritems(upper) - 1) | 2365 | if (slot >= btrfs_header_nritems(upper) - 1) |
2366 | return 1; | 2366 | return 1; |
2367 | 2367 | ||
2368 | WARN_ON(!btrfs_tree_locked(path->nodes[1])); | 2368 | btrfs_assert_tree_locked(path->nodes[1]); |
2369 | 2369 | ||
2370 | right = read_node_slot(root, upper, slot + 1); | 2370 | right = read_node_slot(root, upper, slot + 1); |
2371 | btrfs_tree_lock(right); | 2371 | btrfs_tree_lock(right); |
@@ -2562,7 +2562,7 @@ static int push_leaf_left(struct btrfs_trans_handle *trans, struct btrfs_root | |||
2562 | if (right_nritems == 0) | 2562 | if (right_nritems == 0) |
2563 | return 1; | 2563 | return 1; |
2564 | 2564 | ||
2565 | WARN_ON(!btrfs_tree_locked(path->nodes[1])); | 2565 | btrfs_assert_tree_locked(path->nodes[1]); |
2566 | 2566 | ||
2567 | left = read_node_slot(root, path->nodes[1], slot - 1); | 2567 | left = read_node_slot(root, path->nodes[1], slot - 1); |
2568 | btrfs_tree_lock(left); | 2568 | btrfs_tree_lock(left); |
@@ -4101,7 +4101,7 @@ int btrfs_next_leaf(struct btrfs_root *root, struct btrfs_path *path) | |||
4101 | 4101 | ||
4102 | next = read_node_slot(root, c, slot); | 4102 | next = read_node_slot(root, c, slot); |
4103 | if (!path->skip_locking) { | 4103 | if (!path->skip_locking) { |
4104 | WARN_ON(!btrfs_tree_locked(c)); | 4104 | btrfs_assert_tree_locked(c); |
4105 | btrfs_tree_lock(next); | 4105 | btrfs_tree_lock(next); |
4106 | btrfs_set_lock_blocking(next); | 4106 | btrfs_set_lock_blocking(next); |
4107 | } | 4107 | } |
@@ -4126,7 +4126,7 @@ int btrfs_next_leaf(struct btrfs_root *root, struct btrfs_path *path) | |||
4126 | reada_for_search(root, path, level, slot, 0); | 4126 | reada_for_search(root, path, level, slot, 0); |
4127 | next = read_node_slot(root, next, 0); | 4127 | next = read_node_slot(root, next, 0); |
4128 | if (!path->skip_locking) { | 4128 | if (!path->skip_locking) { |
4129 | WARN_ON(!btrfs_tree_locked(path->nodes[level])); | 4129 | btrfs_assert_tree_locked(path->nodes[level]); |
4130 | btrfs_tree_lock(next); | 4130 | btrfs_tree_lock(next); |
4131 | btrfs_set_lock_blocking(next); | 4131 | btrfs_set_lock_blocking(next); |
4132 | } | 4132 | } |
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c index adda739a0215..3e18175248e0 100644 --- a/fs/btrfs/disk-io.c +++ b/fs/btrfs/disk-io.c | |||
@@ -857,7 +857,7 @@ int clean_tree_block(struct btrfs_trans_handle *trans, struct btrfs_root *root, | |||
857 | struct inode *btree_inode = root->fs_info->btree_inode; | 857 | struct inode *btree_inode = root->fs_info->btree_inode; |
858 | if (btrfs_header_generation(buf) == | 858 | if (btrfs_header_generation(buf) == |
859 | root->fs_info->running_transaction->transid) { | 859 | root->fs_info->running_transaction->transid) { |
860 | WARN_ON(!btrfs_tree_locked(buf)); | 860 | btrfs_assert_tree_locked(buf); |
861 | 861 | ||
862 | /* ugh, clear_extent_buffer_dirty can be expensive */ | 862 | /* ugh, clear_extent_buffer_dirty can be expensive */ |
863 | btrfs_set_lock_blocking(buf); | 863 | btrfs_set_lock_blocking(buf); |
@@ -2361,7 +2361,7 @@ void btrfs_mark_buffer_dirty(struct extent_buffer *buf) | |||
2361 | 2361 | ||
2362 | btrfs_set_lock_blocking(buf); | 2362 | btrfs_set_lock_blocking(buf); |
2363 | 2363 | ||
2364 | WARN_ON(!btrfs_tree_locked(buf)); | 2364 | btrfs_assert_tree_locked(buf); |
2365 | if (transid != root->fs_info->generation) { | 2365 | if (transid != root->fs_info->generation) { |
2366 | printk(KERN_CRIT "btrfs transid mismatch buffer %llu, " | 2366 | printk(KERN_CRIT "btrfs transid mismatch buffer %llu, " |
2367 | "found %llu running %llu\n", | 2367 | "found %llu running %llu\n", |
diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c index 6b5966aacf44..9abf81f71c46 100644 --- a/fs/btrfs/extent-tree.c +++ b/fs/btrfs/extent-tree.c | |||
@@ -4418,13 +4418,13 @@ int btrfs_drop_subtree(struct btrfs_trans_handle *trans, | |||
4418 | path = btrfs_alloc_path(); | 4418 | path = btrfs_alloc_path(); |
4419 | BUG_ON(!path); | 4419 | BUG_ON(!path); |
4420 | 4420 | ||
4421 | BUG_ON(!btrfs_tree_locked(parent)); | 4421 | btrfs_assert_tree_locked(parent); |
4422 | parent_level = btrfs_header_level(parent); | 4422 | parent_level = btrfs_header_level(parent); |
4423 | extent_buffer_get(parent); | 4423 | extent_buffer_get(parent); |
4424 | path->nodes[parent_level] = parent; | 4424 | path->nodes[parent_level] = parent; |
4425 | path->slots[parent_level] = btrfs_header_nritems(parent); | 4425 | path->slots[parent_level] = btrfs_header_nritems(parent); |
4426 | 4426 | ||
4427 | BUG_ON(!btrfs_tree_locked(node)); | 4427 | btrfs_assert_tree_locked(node); |
4428 | level = btrfs_header_level(node); | 4428 | level = btrfs_header_level(node); |
4429 | extent_buffer_get(node); | 4429 | extent_buffer_get(node); |
4430 | path->nodes[level] = node; | 4430 | path->nodes[level] = node; |
diff --git a/fs/btrfs/locking.c b/fs/btrfs/locking.c index 85506c4a3af7..47b0a88c12a2 100644 --- a/fs/btrfs/locking.c +++ b/fs/btrfs/locking.c | |||
@@ -220,8 +220,8 @@ int btrfs_tree_unlock(struct extent_buffer *eb) | |||
220 | return 0; | 220 | return 0; |
221 | } | 221 | } |
222 | 222 | ||
223 | int btrfs_tree_locked(struct extent_buffer *eb) | 223 | void btrfs_assert_tree_locked(struct extent_buffer *eb) |
224 | { | 224 | { |
225 | return test_bit(EXTENT_BUFFER_BLOCKING, &eb->bflags) || | 225 | if (!test_bit(EXTENT_BUFFER_BLOCKING, &eb->bflags)) |
226 | spin_is_locked(&eb->lock); | 226 | assert_spin_locked(&eb->lock); |
227 | } | 227 | } |
diff --git a/fs/btrfs/locking.h b/fs/btrfs/locking.h index 6bb0afbff928..6c4ce457168c 100644 --- a/fs/btrfs/locking.h +++ b/fs/btrfs/locking.h | |||
@@ -21,11 +21,11 @@ | |||
21 | 21 | ||
22 | int btrfs_tree_lock(struct extent_buffer *eb); | 22 | int btrfs_tree_lock(struct extent_buffer *eb); |
23 | int btrfs_tree_unlock(struct extent_buffer *eb); | 23 | int btrfs_tree_unlock(struct extent_buffer *eb); |
24 | int btrfs_tree_locked(struct extent_buffer *eb); | ||
25 | 24 | ||
26 | int btrfs_try_tree_lock(struct extent_buffer *eb); | 25 | int btrfs_try_tree_lock(struct extent_buffer *eb); |
27 | int btrfs_try_spin_lock(struct extent_buffer *eb); | 26 | int btrfs_try_spin_lock(struct extent_buffer *eb); |
28 | 27 | ||
29 | void btrfs_set_lock_blocking(struct extent_buffer *eb); | 28 | void btrfs_set_lock_blocking(struct extent_buffer *eb); |
30 | void btrfs_clear_lock_blocking(struct extent_buffer *eb); | 29 | void btrfs_clear_lock_blocking(struct extent_buffer *eb); |
30 | void btrfs_assert_tree_locked(struct extent_buffer *eb); | ||
31 | #endif | 31 | #endif |
diff --git a/fs/devpts/inode.c b/fs/devpts/inode.c index 5f3231b9633f..bff4052b05e7 100644 --- a/fs/devpts/inode.c +++ b/fs/devpts/inode.c | |||
@@ -198,9 +198,6 @@ static int mknod_ptmx(struct super_block *sb) | |||
198 | 198 | ||
199 | fsi->ptmx_dentry = dentry; | 199 | fsi->ptmx_dentry = dentry; |
200 | rc = 0; | 200 | rc = 0; |
201 | |||
202 | printk(KERN_DEBUG "Created ptmx node in devpts ino %lu\n", | ||
203 | inode->i_ino); | ||
204 | out: | 201 | out: |
205 | mutex_unlock(&root->d_inode->i_mutex); | 202 | mutex_unlock(&root->d_inode->i_mutex); |
206 | return rc; | 203 | return rc; |
@@ -369,8 +366,6 @@ static int new_pts_mount(struct file_system_type *fs_type, int flags, | |||
369 | struct pts_fs_info *fsi; | 366 | struct pts_fs_info *fsi; |
370 | struct pts_mount_opts *opts; | 367 | struct pts_mount_opts *opts; |
371 | 368 | ||
372 | printk(KERN_NOTICE "devpts: newinstance mount\n"); | ||
373 | |||
374 | err = get_sb_nodev(fs_type, flags, data, devpts_fill_super, mnt); | 369 | err = get_sb_nodev(fs_type, flags, data, devpts_fill_super, mnt); |
375 | if (err) | 370 | if (err) |
376 | return err; | 371 | return err; |
diff --git a/fs/ecryptfs/crypto.c b/fs/ecryptfs/crypto.c index f6caeb1d1106..bdca1f4b3a3e 100644 --- a/fs/ecryptfs/crypto.c +++ b/fs/ecryptfs/crypto.c | |||
@@ -946,6 +946,8 @@ static int ecryptfs_copy_mount_wide_sigs_to_inode_sigs( | |||
946 | list_for_each_entry(global_auth_tok, | 946 | list_for_each_entry(global_auth_tok, |
947 | &mount_crypt_stat->global_auth_tok_list, | 947 | &mount_crypt_stat->global_auth_tok_list, |
948 | mount_crypt_stat_list) { | 948 | mount_crypt_stat_list) { |
949 | if (global_auth_tok->flags & ECRYPTFS_AUTH_TOK_FNEK) | ||
950 | continue; | ||
949 | rc = ecryptfs_add_keysig(crypt_stat, global_auth_tok->sig); | 951 | rc = ecryptfs_add_keysig(crypt_stat, global_auth_tok->sig); |
950 | if (rc) { | 952 | if (rc) { |
951 | printk(KERN_ERR "Error adding keysig; rc = [%d]\n", rc); | 953 | printk(KERN_ERR "Error adding keysig; rc = [%d]\n", rc); |
diff --git a/fs/ecryptfs/ecryptfs_kernel.h b/fs/ecryptfs/ecryptfs_kernel.h index c11fc95714ab..eb2267eca1fe 100644 --- a/fs/ecryptfs/ecryptfs_kernel.h +++ b/fs/ecryptfs/ecryptfs_kernel.h | |||
@@ -328,6 +328,7 @@ struct ecryptfs_dentry_info { | |||
328 | */ | 328 | */ |
329 | struct ecryptfs_global_auth_tok { | 329 | struct ecryptfs_global_auth_tok { |
330 | #define ECRYPTFS_AUTH_TOK_INVALID 0x00000001 | 330 | #define ECRYPTFS_AUTH_TOK_INVALID 0x00000001 |
331 | #define ECRYPTFS_AUTH_TOK_FNEK 0x00000002 | ||
331 | u32 flags; | 332 | u32 flags; |
332 | struct list_head mount_crypt_stat_list; | 333 | struct list_head mount_crypt_stat_list; |
333 | struct key *global_auth_tok_key; | 334 | struct key *global_auth_tok_key; |
@@ -696,7 +697,7 @@ ecryptfs_write_header_metadata(char *virt, | |||
696 | int ecryptfs_add_keysig(struct ecryptfs_crypt_stat *crypt_stat, char *sig); | 697 | int ecryptfs_add_keysig(struct ecryptfs_crypt_stat *crypt_stat, char *sig); |
697 | int | 698 | int |
698 | ecryptfs_add_global_auth_tok(struct ecryptfs_mount_crypt_stat *mount_crypt_stat, | 699 | ecryptfs_add_global_auth_tok(struct ecryptfs_mount_crypt_stat *mount_crypt_stat, |
699 | char *sig); | 700 | char *sig, u32 global_auth_tok_flags); |
700 | int ecryptfs_get_global_auth_tok_for_sig( | 701 | int ecryptfs_get_global_auth_tok_for_sig( |
701 | struct ecryptfs_global_auth_tok **global_auth_tok, | 702 | struct ecryptfs_global_auth_tok **global_auth_tok, |
702 | struct ecryptfs_mount_crypt_stat *mount_crypt_stat, char *sig); | 703 | struct ecryptfs_mount_crypt_stat *mount_crypt_stat, char *sig); |
diff --git a/fs/ecryptfs/keystore.c b/fs/ecryptfs/keystore.c index ff539420cc6f..e4a6223c3145 100644 --- a/fs/ecryptfs/keystore.c +++ b/fs/ecryptfs/keystore.c | |||
@@ -2375,7 +2375,7 @@ struct kmem_cache *ecryptfs_global_auth_tok_cache; | |||
2375 | 2375 | ||
2376 | int | 2376 | int |
2377 | ecryptfs_add_global_auth_tok(struct ecryptfs_mount_crypt_stat *mount_crypt_stat, | 2377 | ecryptfs_add_global_auth_tok(struct ecryptfs_mount_crypt_stat *mount_crypt_stat, |
2378 | char *sig) | 2378 | char *sig, u32 global_auth_tok_flags) |
2379 | { | 2379 | { |
2380 | struct ecryptfs_global_auth_tok *new_auth_tok; | 2380 | struct ecryptfs_global_auth_tok *new_auth_tok; |
2381 | int rc = 0; | 2381 | int rc = 0; |
@@ -2389,6 +2389,7 @@ ecryptfs_add_global_auth_tok(struct ecryptfs_mount_crypt_stat *mount_crypt_stat, | |||
2389 | goto out; | 2389 | goto out; |
2390 | } | 2390 | } |
2391 | memcpy(new_auth_tok->sig, sig, ECRYPTFS_SIG_SIZE_HEX); | 2391 | memcpy(new_auth_tok->sig, sig, ECRYPTFS_SIG_SIZE_HEX); |
2392 | new_auth_tok->flags = global_auth_tok_flags; | ||
2392 | new_auth_tok->sig[ECRYPTFS_SIG_SIZE_HEX] = '\0'; | 2393 | new_auth_tok->sig[ECRYPTFS_SIG_SIZE_HEX] = '\0'; |
2393 | mutex_lock(&mount_crypt_stat->global_auth_tok_list_mutex); | 2394 | mutex_lock(&mount_crypt_stat->global_auth_tok_list_mutex); |
2394 | list_add(&new_auth_tok->mount_crypt_stat_list, | 2395 | list_add(&new_auth_tok->mount_crypt_stat_list, |
diff --git a/fs/ecryptfs/main.c b/fs/ecryptfs/main.c index 789cf2e1be1e..aed56c25539b 100644 --- a/fs/ecryptfs/main.c +++ b/fs/ecryptfs/main.c | |||
@@ -319,7 +319,7 @@ static int ecryptfs_parse_options(struct super_block *sb, char *options) | |||
319 | case ecryptfs_opt_ecryptfs_sig: | 319 | case ecryptfs_opt_ecryptfs_sig: |
320 | sig_src = args[0].from; | 320 | sig_src = args[0].from; |
321 | rc = ecryptfs_add_global_auth_tok(mount_crypt_stat, | 321 | rc = ecryptfs_add_global_auth_tok(mount_crypt_stat, |
322 | sig_src); | 322 | sig_src, 0); |
323 | if (rc) { | 323 | if (rc) { |
324 | printk(KERN_ERR "Error attempting to register " | 324 | printk(KERN_ERR "Error attempting to register " |
325 | "global sig; rc = [%d]\n", rc); | 325 | "global sig; rc = [%d]\n", rc); |
@@ -370,7 +370,8 @@ static int ecryptfs_parse_options(struct super_block *sb, char *options) | |||
370 | ECRYPTFS_SIG_SIZE_HEX] = '\0'; | 370 | ECRYPTFS_SIG_SIZE_HEX] = '\0'; |
371 | rc = ecryptfs_add_global_auth_tok( | 371 | rc = ecryptfs_add_global_auth_tok( |
372 | mount_crypt_stat, | 372 | mount_crypt_stat, |
373 | mount_crypt_stat->global_default_fnek_sig); | 373 | mount_crypt_stat->global_default_fnek_sig, |
374 | ECRYPTFS_AUTH_TOK_FNEK); | ||
374 | if (rc) { | 375 | if (rc) { |
375 | printk(KERN_ERR "Error attempting to register " | 376 | printk(KERN_ERR "Error attempting to register " |
376 | "global fnek sig [%s]; rc = [%d]\n", | 377 | "global fnek sig [%s]; rc = [%d]\n", |
diff --git a/fs/ext4/ialloc.c b/fs/ext4/ialloc.c index f18a919be70b..627f8c3337a3 100644 --- a/fs/ext4/ialloc.c +++ b/fs/ext4/ialloc.c | |||
@@ -188,7 +188,7 @@ void ext4_free_inode(handle_t *handle, struct inode *inode) | |||
188 | struct ext4_group_desc *gdp; | 188 | struct ext4_group_desc *gdp; |
189 | struct ext4_super_block *es; | 189 | struct ext4_super_block *es; |
190 | struct ext4_sb_info *sbi; | 190 | struct ext4_sb_info *sbi; |
191 | int fatal = 0, err, count; | 191 | int fatal = 0, err, count, cleared; |
192 | ext4_group_t flex_group; | 192 | ext4_group_t flex_group; |
193 | 193 | ||
194 | if (atomic_read(&inode->i_count) > 1) { | 194 | if (atomic_read(&inode->i_count) > 1) { |
@@ -248,8 +248,10 @@ void ext4_free_inode(handle_t *handle, struct inode *inode) | |||
248 | goto error_return; | 248 | goto error_return; |
249 | 249 | ||
250 | /* Ok, now we can actually update the inode bitmaps.. */ | 250 | /* Ok, now we can actually update the inode bitmaps.. */ |
251 | if (!ext4_clear_bit_atomic(sb_bgl_lock(sbi, block_group), | 251 | spin_lock(sb_bgl_lock(sbi, block_group)); |
252 | bit, bitmap_bh->b_data)) | 252 | cleared = ext4_clear_bit(bit, bitmap_bh->b_data); |
253 | spin_unlock(sb_bgl_lock(sbi, block_group)); | ||
254 | if (!cleared) | ||
253 | ext4_error(sb, "ext4_free_inode", | 255 | ext4_error(sb, "ext4_free_inode", |
254 | "bit already cleared for inode %lu", ino); | 256 | "bit already cleared for inode %lu", ino); |
255 | else { | 257 | else { |
diff --git a/fs/fat/inode.c b/fs/fat/inode.c index 6b74d09adbe5..de0004fe6e00 100644 --- a/fs/fat/inode.c +++ b/fs/fat/inode.c | |||
@@ -202,9 +202,9 @@ static sector_t _fat_bmap(struct address_space *mapping, sector_t block) | |||
202 | sector_t blocknr; | 202 | sector_t blocknr; |
203 | 203 | ||
204 | /* fat_get_cluster() assumes the requested blocknr isn't truncated. */ | 204 | /* fat_get_cluster() assumes the requested blocknr isn't truncated. */ |
205 | mutex_lock(&mapping->host->i_mutex); | 205 | down_read(&mapping->host->i_alloc_sem); |
206 | blocknr = generic_block_bmap(mapping, block, fat_get_block); | 206 | blocknr = generic_block_bmap(mapping, block, fat_get_block); |
207 | mutex_unlock(&mapping->host->i_mutex); | 207 | up_read(&mapping->host->i_alloc_sem); |
208 | 208 | ||
209 | return blocknr; | 209 | return blocknr; |
210 | } | 210 | } |
diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c index e5eaa62fd17f..e3fe9918faaf 100644 --- a/fs/fs-writeback.c +++ b/fs/fs-writeback.c | |||
@@ -274,6 +274,7 @@ __sync_single_inode(struct inode *inode, struct writeback_control *wbc) | |||
274 | int ret; | 274 | int ret; |
275 | 275 | ||
276 | BUG_ON(inode->i_state & I_SYNC); | 276 | BUG_ON(inode->i_state & I_SYNC); |
277 | WARN_ON(inode->i_state & I_NEW); | ||
277 | 278 | ||
278 | /* Set I_SYNC, reset I_DIRTY */ | 279 | /* Set I_SYNC, reset I_DIRTY */ |
279 | dirty = inode->i_state & I_DIRTY; | 280 | dirty = inode->i_state & I_DIRTY; |
@@ -298,6 +299,7 @@ __sync_single_inode(struct inode *inode, struct writeback_control *wbc) | |||
298 | } | 299 | } |
299 | 300 | ||
300 | spin_lock(&inode_lock); | 301 | spin_lock(&inode_lock); |
302 | WARN_ON(inode->i_state & I_NEW); | ||
301 | inode->i_state &= ~I_SYNC; | 303 | inode->i_state &= ~I_SYNC; |
302 | if (!(inode->i_state & I_FREEING)) { | 304 | if (!(inode->i_state & I_FREEING)) { |
303 | if (!(inode->i_state & I_DIRTY) && | 305 | if (!(inode->i_state & I_DIRTY) && |
@@ -470,6 +472,11 @@ void generic_sync_sb_inodes(struct super_block *sb, | |||
470 | break; | 472 | break; |
471 | } | 473 | } |
472 | 474 | ||
475 | if (inode->i_state & I_NEW) { | ||
476 | requeue_io(inode); | ||
477 | continue; | ||
478 | } | ||
479 | |||
473 | if (wbc->nonblocking && bdi_write_congested(bdi)) { | 480 | if (wbc->nonblocking && bdi_write_congested(bdi)) { |
474 | wbc->encountered_congestion = 1; | 481 | wbc->encountered_congestion = 1; |
475 | if (!sb_is_blkdev_sb(sb)) | 482 | if (!sb_is_blkdev_sb(sb)) |
@@ -531,7 +538,7 @@ void generic_sync_sb_inodes(struct super_block *sb, | |||
531 | list_for_each_entry(inode, &sb->s_inodes, i_sb_list) { | 538 | list_for_each_entry(inode, &sb->s_inodes, i_sb_list) { |
532 | struct address_space *mapping; | 539 | struct address_space *mapping; |
533 | 540 | ||
534 | if (inode->i_state & (I_FREEING|I_WILL_FREE)) | 541 | if (inode->i_state & (I_FREEING|I_WILL_FREE|I_NEW)) |
535 | continue; | 542 | continue; |
536 | mapping = inode->i_mapping; | 543 | mapping = inode->i_mapping; |
537 | if (mapping->nrpages == 0) | 544 | if (mapping->nrpages == 0) |
diff --git a/fs/inode.c b/fs/inode.c index 913ab2d9a5d1..826fb0b9d1c3 100644 --- a/fs/inode.c +++ b/fs/inode.c | |||
@@ -359,6 +359,7 @@ static int invalidate_list(struct list_head *head, struct list_head *dispose) | |||
359 | invalidate_inode_buffers(inode); | 359 | invalidate_inode_buffers(inode); |
360 | if (!atomic_read(&inode->i_count)) { | 360 | if (!atomic_read(&inode->i_count)) { |
361 | list_move(&inode->i_list, dispose); | 361 | list_move(&inode->i_list, dispose); |
362 | WARN_ON(inode->i_state & I_NEW); | ||
362 | inode->i_state |= I_FREEING; | 363 | inode->i_state |= I_FREEING; |
363 | count++; | 364 | count++; |
364 | continue; | 365 | continue; |
@@ -460,6 +461,7 @@ static void prune_icache(int nr_to_scan) | |||
460 | continue; | 461 | continue; |
461 | } | 462 | } |
462 | list_move(&inode->i_list, &freeable); | 463 | list_move(&inode->i_list, &freeable); |
464 | WARN_ON(inode->i_state & I_NEW); | ||
463 | inode->i_state |= I_FREEING; | 465 | inode->i_state |= I_FREEING; |
464 | nr_pruned++; | 466 | nr_pruned++; |
465 | } | 467 | } |
@@ -656,6 +658,7 @@ void unlock_new_inode(struct inode *inode) | |||
656 | * just created it (so there can be no old holders | 658 | * just created it (so there can be no old holders |
657 | * that haven't tested I_LOCK). | 659 | * that haven't tested I_LOCK). |
658 | */ | 660 | */ |
661 | WARN_ON((inode->i_state & (I_LOCK|I_NEW)) != (I_LOCK|I_NEW)); | ||
659 | inode->i_state &= ~(I_LOCK|I_NEW); | 662 | inode->i_state &= ~(I_LOCK|I_NEW); |
660 | wake_up_inode(inode); | 663 | wake_up_inode(inode); |
661 | } | 664 | } |
@@ -1145,6 +1148,7 @@ void generic_delete_inode(struct inode *inode) | |||
1145 | 1148 | ||
1146 | list_del_init(&inode->i_list); | 1149 | list_del_init(&inode->i_list); |
1147 | list_del_init(&inode->i_sb_list); | 1150 | list_del_init(&inode->i_sb_list); |
1151 | WARN_ON(inode->i_state & I_NEW); | ||
1148 | inode->i_state |= I_FREEING; | 1152 | inode->i_state |= I_FREEING; |
1149 | inodes_stat.nr_inodes--; | 1153 | inodes_stat.nr_inodes--; |
1150 | spin_unlock(&inode_lock); | 1154 | spin_unlock(&inode_lock); |
@@ -1186,16 +1190,19 @@ static void generic_forget_inode(struct inode *inode) | |||
1186 | spin_unlock(&inode_lock); | 1190 | spin_unlock(&inode_lock); |
1187 | return; | 1191 | return; |
1188 | } | 1192 | } |
1193 | WARN_ON(inode->i_state & I_NEW); | ||
1189 | inode->i_state |= I_WILL_FREE; | 1194 | inode->i_state |= I_WILL_FREE; |
1190 | spin_unlock(&inode_lock); | 1195 | spin_unlock(&inode_lock); |
1191 | write_inode_now(inode, 1); | 1196 | write_inode_now(inode, 1); |
1192 | spin_lock(&inode_lock); | 1197 | spin_lock(&inode_lock); |
1198 | WARN_ON(inode->i_state & I_NEW); | ||
1193 | inode->i_state &= ~I_WILL_FREE; | 1199 | inode->i_state &= ~I_WILL_FREE; |
1194 | inodes_stat.nr_unused--; | 1200 | inodes_stat.nr_unused--; |
1195 | hlist_del_init(&inode->i_hash); | 1201 | hlist_del_init(&inode->i_hash); |
1196 | } | 1202 | } |
1197 | list_del_init(&inode->i_list); | 1203 | list_del_init(&inode->i_list); |
1198 | list_del_init(&inode->i_sb_list); | 1204 | list_del_init(&inode->i_sb_list); |
1205 | WARN_ON(inode->i_state & I_NEW); | ||
1199 | inode->i_state |= I_FREEING; | 1206 | inode->i_state |= I_FREEING; |
1200 | inodes_stat.nr_inodes--; | 1207 | inodes_stat.nr_inodes--; |
1201 | spin_unlock(&inode_lock); | 1208 | spin_unlock(&inode_lock); |
diff --git a/fs/lockd/clntlock.c b/fs/lockd/clntlock.c index 1f3b0fc0d351..aedc47a264c1 100644 --- a/fs/lockd/clntlock.c +++ b/fs/lockd/clntlock.c | |||
@@ -139,6 +139,55 @@ int nlmclnt_block(struct nlm_wait *block, struct nlm_rqst *req, long timeout) | |||
139 | return 0; | 139 | return 0; |
140 | } | 140 | } |
141 | 141 | ||
142 | #if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE) | ||
143 | static const struct in6_addr *nlmclnt_map_v4addr(const struct sockaddr *sap, | ||
144 | struct in6_addr *addr_mapped) | ||
145 | { | ||
146 | const struct sockaddr_in *sin = (const struct sockaddr_in *)sap; | ||
147 | |||
148 | switch (sap->sa_family) { | ||
149 | case AF_INET6: | ||
150 | return &((const struct sockaddr_in6 *)sap)->sin6_addr; | ||
151 | case AF_INET: | ||
152 | ipv6_addr_set_v4mapped(sin->sin_addr.s_addr, addr_mapped); | ||
153 | return addr_mapped; | ||
154 | } | ||
155 | |||
156 | return NULL; | ||
157 | } | ||
158 | |||
159 | /* | ||
160 | * If lockd is using a PF_INET6 listener, all incoming requests appear | ||
161 | * to come from AF_INET6 remotes. The address of AF_INET remotes are | ||
162 | * mapped to AF_INET6 automatically by the network layer. In case the | ||
163 | * user passed an AF_INET server address at mount time, ensure both | ||
164 | * addresses are AF_INET6 before comparing them. | ||
165 | */ | ||
166 | static int nlmclnt_cmp_addr(const struct nlm_host *host, | ||
167 | const struct sockaddr *sap) | ||
168 | { | ||
169 | const struct in6_addr *addr1; | ||
170 | const struct in6_addr *addr2; | ||
171 | struct in6_addr addr1_mapped; | ||
172 | struct in6_addr addr2_mapped; | ||
173 | |||
174 | addr1 = nlmclnt_map_v4addr(nlm_addr(host), &addr1_mapped); | ||
175 | if (likely(addr1 != NULL)) { | ||
176 | addr2 = nlmclnt_map_v4addr(sap, &addr2_mapped); | ||
177 | if (likely(addr2 != NULL)) | ||
178 | return ipv6_addr_equal(addr1, addr2); | ||
179 | } | ||
180 | |||
181 | return 0; | ||
182 | } | ||
183 | #else /* !(CONFIG_IPV6 || CONFIG_IPV6_MODULE) */ | ||
184 | static int nlmclnt_cmp_addr(const struct nlm_host *host, | ||
185 | const struct sockaddr *sap) | ||
186 | { | ||
187 | return nlm_cmp_addr(nlm_addr(host), sap); | ||
188 | } | ||
189 | #endif /* !(CONFIG_IPV6 || CONFIG_IPV6_MODULE) */ | ||
190 | |||
142 | /* | 191 | /* |
143 | * The server lockd has called us back to tell us the lock was granted | 192 | * The server lockd has called us back to tell us the lock was granted |
144 | */ | 193 | */ |
@@ -166,7 +215,7 @@ __be32 nlmclnt_grant(const struct sockaddr *addr, const struct nlm_lock *lock) | |||
166 | */ | 215 | */ |
167 | if (fl_blocked->fl_u.nfs_fl.owner->pid != lock->svid) | 216 | if (fl_blocked->fl_u.nfs_fl.owner->pid != lock->svid) |
168 | continue; | 217 | continue; |
169 | if (!nlm_cmp_addr(nlm_addr(block->b_host), addr)) | 218 | if (!nlmclnt_cmp_addr(block->b_host, addr)) |
170 | continue; | 219 | continue; |
171 | if (nfs_compare_fh(NFS_FH(fl_blocked->fl_file->f_path.dentry->d_inode) ,fh) != 0) | 220 | if (nfs_compare_fh(NFS_FH(fl_blocked->fl_file->f_path.dentry->d_inode) ,fh) != 0) |
172 | continue; | 221 | continue; |
diff --git a/fs/nfs/client.c b/fs/nfs/client.c index 9b728f3565a1..574158ae2398 100644 --- a/fs/nfs/client.c +++ b/fs/nfs/client.c | |||
@@ -255,6 +255,32 @@ static int nfs_sockaddr_match_ipaddr(const struct sockaddr *sa1, | |||
255 | } | 255 | } |
256 | return 0; | 256 | return 0; |
257 | } | 257 | } |
258 | |||
259 | /* | ||
260 | * Test if two ip6 socket addresses refer to the same socket by | ||
261 | * comparing relevant fields. The padding bytes specifically, are not | ||
262 | * compared. sin6_flowinfo is not compared because it only affects QoS | ||
263 | * and sin6_scope_id is only compared if the address is "link local" | ||
264 | * because "link local" addresses need only be unique to a specific | ||
265 | * link. Conversely, ordinary unicast addresses might have different | ||
266 | * sin6_scope_id. | ||
267 | * | ||
268 | * The caller should ensure both socket addresses are AF_INET6. | ||
269 | */ | ||
270 | static int nfs_sockaddr_cmp_ip6(const struct sockaddr *sa1, | ||
271 | const struct sockaddr *sa2) | ||
272 | { | ||
273 | const struct sockaddr_in6 *saddr1 = (const struct sockaddr_in6 *)sa1; | ||
274 | const struct sockaddr_in6 *saddr2 = (const struct sockaddr_in6 *)sa2; | ||
275 | |||
276 | if (!ipv6_addr_equal(&saddr1->sin6_addr, | ||
277 | &saddr1->sin6_addr)) | ||
278 | return 0; | ||
279 | if (ipv6_addr_scope(&saddr1->sin6_addr) == IPV6_ADDR_SCOPE_LINKLOCAL && | ||
280 | saddr1->sin6_scope_id != saddr2->sin6_scope_id) | ||
281 | return 0; | ||
282 | return saddr1->sin6_port == saddr2->sin6_port; | ||
283 | } | ||
258 | #else | 284 | #else |
259 | static int nfs_sockaddr_match_ipaddr4(const struct sockaddr_in *sa1, | 285 | static int nfs_sockaddr_match_ipaddr4(const struct sockaddr_in *sa1, |
260 | const struct sockaddr_in *sa2) | 286 | const struct sockaddr_in *sa2) |
@@ -270,9 +296,52 @@ static int nfs_sockaddr_match_ipaddr(const struct sockaddr *sa1, | |||
270 | return nfs_sockaddr_match_ipaddr4((const struct sockaddr_in *)sa1, | 296 | return nfs_sockaddr_match_ipaddr4((const struct sockaddr_in *)sa1, |
271 | (const struct sockaddr_in *)sa2); | 297 | (const struct sockaddr_in *)sa2); |
272 | } | 298 | } |
299 | |||
300 | static int nfs_sockaddr_cmp_ip6(const struct sockaddr * sa1, | ||
301 | const struct sockaddr * sa2) | ||
302 | { | ||
303 | return 0; | ||
304 | } | ||
273 | #endif | 305 | #endif |
274 | 306 | ||
275 | /* | 307 | /* |
308 | * Test if two ip4 socket addresses refer to the same socket, by | ||
309 | * comparing relevant fields. The padding bytes specifically, are | ||
310 | * not compared. | ||
311 | * | ||
312 | * The caller should ensure both socket addresses are AF_INET. | ||
313 | */ | ||
314 | static int nfs_sockaddr_cmp_ip4(const struct sockaddr *sa1, | ||
315 | const struct sockaddr *sa2) | ||
316 | { | ||
317 | const struct sockaddr_in *saddr1 = (const struct sockaddr_in *)sa1; | ||
318 | const struct sockaddr_in *saddr2 = (const struct sockaddr_in *)sa2; | ||
319 | |||
320 | if (saddr1->sin_addr.s_addr != saddr2->sin_addr.s_addr) | ||
321 | return 0; | ||
322 | return saddr1->sin_port == saddr2->sin_port; | ||
323 | } | ||
324 | |||
325 | /* | ||
326 | * Test if two socket addresses represent the same actual socket, | ||
327 | * by comparing (only) relevant fields. | ||
328 | */ | ||
329 | static int nfs_sockaddr_cmp(const struct sockaddr *sa1, | ||
330 | const struct sockaddr *sa2) | ||
331 | { | ||
332 | if (sa1->sa_family != sa2->sa_family) | ||
333 | return 0; | ||
334 | |||
335 | switch (sa1->sa_family) { | ||
336 | case AF_INET: | ||
337 | return nfs_sockaddr_cmp_ip4(sa1, sa2); | ||
338 | case AF_INET6: | ||
339 | return nfs_sockaddr_cmp_ip6(sa1, sa2); | ||
340 | } | ||
341 | return 0; | ||
342 | } | ||
343 | |||
344 | /* | ||
276 | * Find a client by IP address and protocol version | 345 | * Find a client by IP address and protocol version |
277 | * - returns NULL if no such client | 346 | * - returns NULL if no such client |
278 | */ | 347 | */ |
@@ -344,8 +413,10 @@ struct nfs_client *nfs_find_client_next(struct nfs_client *clp) | |||
344 | static struct nfs_client *nfs_match_client(const struct nfs_client_initdata *data) | 413 | static struct nfs_client *nfs_match_client(const struct nfs_client_initdata *data) |
345 | { | 414 | { |
346 | struct nfs_client *clp; | 415 | struct nfs_client *clp; |
416 | const struct sockaddr *sap = data->addr; | ||
347 | 417 | ||
348 | list_for_each_entry(clp, &nfs_client_list, cl_share_link) { | 418 | list_for_each_entry(clp, &nfs_client_list, cl_share_link) { |
419 | const struct sockaddr *clap = (struct sockaddr *)&clp->cl_addr; | ||
349 | /* Don't match clients that failed to initialise properly */ | 420 | /* Don't match clients that failed to initialise properly */ |
350 | if (clp->cl_cons_state < 0) | 421 | if (clp->cl_cons_state < 0) |
351 | continue; | 422 | continue; |
@@ -358,7 +429,7 @@ static struct nfs_client *nfs_match_client(const struct nfs_client_initdata *dat | |||
358 | continue; | 429 | continue; |
359 | 430 | ||
360 | /* Match the full socket address */ | 431 | /* Match the full socket address */ |
361 | if (memcmp(&clp->cl_addr, data->addr, sizeof(clp->cl_addr)) != 0) | 432 | if (!nfs_sockaddr_cmp(sap, clap)) |
362 | continue; | 433 | continue; |
363 | 434 | ||
364 | atomic_inc(&clp->cl_count); | 435 | atomic_inc(&clp->cl_count); |
diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c index e35c8199f82f..672368f865ca 100644 --- a/fs/nfs/dir.c +++ b/fs/nfs/dir.c | |||
@@ -1892,8 +1892,14 @@ static int nfs_do_access(struct inode *inode, struct rpc_cred *cred, int mask) | |||
1892 | cache.cred = cred; | 1892 | cache.cred = cred; |
1893 | cache.jiffies = jiffies; | 1893 | cache.jiffies = jiffies; |
1894 | status = NFS_PROTO(inode)->access(inode, &cache); | 1894 | status = NFS_PROTO(inode)->access(inode, &cache); |
1895 | if (status != 0) | 1895 | if (status != 0) { |
1896 | if (status == -ESTALE) { | ||
1897 | nfs_zap_caches(inode); | ||
1898 | if (!S_ISDIR(inode->i_mode)) | ||
1899 | set_bit(NFS_INO_STALE, &NFS_I(inode)->flags); | ||
1900 | } | ||
1896 | return status; | 1901 | return status; |
1902 | } | ||
1897 | nfs_access_add_cache(inode, &cache); | 1903 | nfs_access_add_cache(inode, &cache); |
1898 | out: | 1904 | out: |
1899 | if ((mask & ~cache.mask & (MAY_READ | MAY_WRITE | MAY_EXEC)) == 0) | 1905 | if ((mask & ~cache.mask & (MAY_READ | MAY_WRITE | MAY_EXEC)) == 0) |
diff --git a/fs/nfs/nfs3acl.c b/fs/nfs/nfs3acl.c index cef62557c87d..6bbf0e6daad2 100644 --- a/fs/nfs/nfs3acl.c +++ b/fs/nfs/nfs3acl.c | |||
@@ -292,7 +292,7 @@ static int nfs3_proc_setacls(struct inode *inode, struct posix_acl *acl, | |||
292 | { | 292 | { |
293 | struct nfs_server *server = NFS_SERVER(inode); | 293 | struct nfs_server *server = NFS_SERVER(inode); |
294 | struct nfs_fattr fattr; | 294 | struct nfs_fattr fattr; |
295 | struct page *pages[NFSACL_MAXPAGES] = { }; | 295 | struct page *pages[NFSACL_MAXPAGES]; |
296 | struct nfs3_setaclargs args = { | 296 | struct nfs3_setaclargs args = { |
297 | .inode = inode, | 297 | .inode = inode, |
298 | .mask = NFS_ACL, | 298 | .mask = NFS_ACL, |
@@ -303,7 +303,7 @@ static int nfs3_proc_setacls(struct inode *inode, struct posix_acl *acl, | |||
303 | .rpc_argp = &args, | 303 | .rpc_argp = &args, |
304 | .rpc_resp = &fattr, | 304 | .rpc_resp = &fattr, |
305 | }; | 305 | }; |
306 | int status, count; | 306 | int status; |
307 | 307 | ||
308 | status = -EOPNOTSUPP; | 308 | status = -EOPNOTSUPP; |
309 | if (!nfs_server_capable(inode, NFS_CAP_ACLS)) | 309 | if (!nfs_server_capable(inode, NFS_CAP_ACLS)) |
@@ -319,6 +319,20 @@ static int nfs3_proc_setacls(struct inode *inode, struct posix_acl *acl, | |||
319 | if (S_ISDIR(inode->i_mode)) { | 319 | if (S_ISDIR(inode->i_mode)) { |
320 | args.mask |= NFS_DFACL; | 320 | args.mask |= NFS_DFACL; |
321 | args.acl_default = dfacl; | 321 | args.acl_default = dfacl; |
322 | args.len = nfsacl_size(acl, dfacl); | ||
323 | } else | ||
324 | args.len = nfsacl_size(acl, NULL); | ||
325 | |||
326 | if (args.len > NFS_ACL_INLINE_BUFSIZE) { | ||
327 | unsigned int npages = 1 + ((args.len - 1) >> PAGE_SHIFT); | ||
328 | |||
329 | status = -ENOMEM; | ||
330 | do { | ||
331 | args.pages[args.npages] = alloc_page(GFP_KERNEL); | ||
332 | if (args.pages[args.npages] == NULL) | ||
333 | goto out_freepages; | ||
334 | args.npages++; | ||
335 | } while (args.npages < npages); | ||
322 | } | 336 | } |
323 | 337 | ||
324 | dprintk("NFS call setacl\n"); | 338 | dprintk("NFS call setacl\n"); |
@@ -329,10 +343,6 @@ static int nfs3_proc_setacls(struct inode *inode, struct posix_acl *acl, | |||
329 | nfs_zap_acl_cache(inode); | 343 | nfs_zap_acl_cache(inode); |
330 | dprintk("NFS reply setacl: %d\n", status); | 344 | dprintk("NFS reply setacl: %d\n", status); |
331 | 345 | ||
332 | /* pages may have been allocated at the xdr layer. */ | ||
333 | for (count = 0; count < NFSACL_MAXPAGES && args.pages[count]; count++) | ||
334 | __free_page(args.pages[count]); | ||
335 | |||
336 | switch (status) { | 346 | switch (status) { |
337 | case 0: | 347 | case 0: |
338 | status = nfs_refresh_inode(inode, &fattr); | 348 | status = nfs_refresh_inode(inode, &fattr); |
@@ -346,6 +356,11 @@ static int nfs3_proc_setacls(struct inode *inode, struct posix_acl *acl, | |||
346 | case -ENOTSUPP: | 356 | case -ENOTSUPP: |
347 | status = -EOPNOTSUPP; | 357 | status = -EOPNOTSUPP; |
348 | } | 358 | } |
359 | out_freepages: | ||
360 | while (args.npages != 0) { | ||
361 | args.npages--; | ||
362 | __free_page(args.pages[args.npages]); | ||
363 | } | ||
349 | out: | 364 | out: |
350 | return status; | 365 | return status; |
351 | } | 366 | } |
diff --git a/fs/nfs/nfs3xdr.c b/fs/nfs/nfs3xdr.c index 11cdddec1432..6cdeacffde46 100644 --- a/fs/nfs/nfs3xdr.c +++ b/fs/nfs/nfs3xdr.c | |||
@@ -82,8 +82,10 @@ | |||
82 | #define NFS3_commitres_sz (1+NFS3_wcc_data_sz+2) | 82 | #define NFS3_commitres_sz (1+NFS3_wcc_data_sz+2) |
83 | 83 | ||
84 | #define ACL3_getaclargs_sz (NFS3_fh_sz+1) | 84 | #define ACL3_getaclargs_sz (NFS3_fh_sz+1) |
85 | #define ACL3_setaclargs_sz (NFS3_fh_sz+1+2*(2+5*3)) | 85 | #define ACL3_setaclargs_sz (NFS3_fh_sz+1+ \ |
86 | #define ACL3_getaclres_sz (1+NFS3_post_op_attr_sz+1+2*(2+5*3)) | 86 | XDR_QUADLEN(NFS_ACL_INLINE_BUFSIZE)) |
87 | #define ACL3_getaclres_sz (1+NFS3_post_op_attr_sz+1+ \ | ||
88 | XDR_QUADLEN(NFS_ACL_INLINE_BUFSIZE)) | ||
87 | #define ACL3_setaclres_sz (1+NFS3_post_op_attr_sz) | 89 | #define ACL3_setaclres_sz (1+NFS3_post_op_attr_sz) |
88 | 90 | ||
89 | /* | 91 | /* |
@@ -703,28 +705,18 @@ nfs3_xdr_setaclargs(struct rpc_rqst *req, __be32 *p, | |||
703 | struct nfs3_setaclargs *args) | 705 | struct nfs3_setaclargs *args) |
704 | { | 706 | { |
705 | struct xdr_buf *buf = &req->rq_snd_buf; | 707 | struct xdr_buf *buf = &req->rq_snd_buf; |
706 | unsigned int base, len_in_head, len = nfsacl_size( | 708 | unsigned int base; |
707 | (args->mask & NFS_ACL) ? args->acl_access : NULL, | 709 | int err; |
708 | (args->mask & NFS_DFACL) ? args->acl_default : NULL); | ||
709 | int count, err; | ||
710 | 710 | ||
711 | p = xdr_encode_fhandle(p, NFS_FH(args->inode)); | 711 | p = xdr_encode_fhandle(p, NFS_FH(args->inode)); |
712 | *p++ = htonl(args->mask); | 712 | *p++ = htonl(args->mask); |
713 | base = (char *)p - (char *)buf->head->iov_base; | 713 | req->rq_slen = xdr_adjust_iovec(req->rq_svec, p); |
714 | /* put as much of the acls into head as possible. */ | 714 | base = req->rq_slen; |
715 | len_in_head = min_t(unsigned int, buf->head->iov_len - base, len); | 715 | |
716 | len -= len_in_head; | 716 | if (args->npages != 0) |
717 | req->rq_slen = xdr_adjust_iovec(req->rq_svec, p + (len_in_head >> 2)); | 717 | xdr_encode_pages(buf, args->pages, 0, args->len); |
718 | 718 | else | |
719 | for (count = 0; (count << PAGE_SHIFT) < len; count++) { | 719 | req->rq_slen += args->len; |
720 | args->pages[count] = alloc_page(GFP_KERNEL); | ||
721 | if (!args->pages[count]) { | ||
722 | while (count) | ||
723 | __free_page(args->pages[--count]); | ||
724 | return -ENOMEM; | ||
725 | } | ||
726 | } | ||
727 | xdr_encode_pages(buf, args->pages, 0, len); | ||
728 | 720 | ||
729 | err = nfsacl_encode(buf, base, args->inode, | 721 | err = nfsacl_encode(buf, base, args->inode, |
730 | (args->mask & NFS_ACL) ? | 722 | (args->mask & NFS_ACL) ? |
diff --git a/fs/nfs/nfs4namespace.c b/fs/nfs/nfs4namespace.c index 30befc39b3c6..2a2a0a7143ad 100644 --- a/fs/nfs/nfs4namespace.c +++ b/fs/nfs/nfs4namespace.c | |||
@@ -21,7 +21,9 @@ | |||
21 | #define NFSDBG_FACILITY NFSDBG_VFS | 21 | #define NFSDBG_FACILITY NFSDBG_VFS |
22 | 22 | ||
23 | /* | 23 | /* |
24 | * Check if fs_root is valid | 24 | * Convert the NFSv4 pathname components into a standard posix path. |
25 | * | ||
26 | * Note that the resulting string will be placed at the end of the buffer | ||
25 | */ | 27 | */ |
26 | static inline char *nfs4_pathname_string(const struct nfs4_pathname *pathname, | 28 | static inline char *nfs4_pathname_string(const struct nfs4_pathname *pathname, |
27 | char *buffer, ssize_t buflen) | 29 | char *buffer, ssize_t buflen) |
@@ -99,21 +101,20 @@ static struct vfsmount *try_location(struct nfs_clone_mount *mountdata, | |||
99 | { | 101 | { |
100 | struct vfsmount *mnt = ERR_PTR(-ENOENT); | 102 | struct vfsmount *mnt = ERR_PTR(-ENOENT); |
101 | char *mnt_path; | 103 | char *mnt_path; |
102 | int page2len; | 104 | unsigned int maxbuflen; |
103 | unsigned int s; | 105 | unsigned int s; |
104 | 106 | ||
105 | mnt_path = nfs4_pathname_string(&location->rootpath, page2, PAGE_SIZE); | 107 | mnt_path = nfs4_pathname_string(&location->rootpath, page2, PAGE_SIZE); |
106 | if (IS_ERR(mnt_path)) | 108 | if (IS_ERR(mnt_path)) |
107 | return mnt; | 109 | return mnt; |
108 | mountdata->mnt_path = mnt_path; | 110 | mountdata->mnt_path = mnt_path; |
109 | page2 += strlen(mnt_path) + 1; | 111 | maxbuflen = mnt_path - 1 - page2; |
110 | page2len = PAGE_SIZE - strlen(mnt_path) - 1; | ||
111 | 112 | ||
112 | for (s = 0; s < location->nservers; s++) { | 113 | for (s = 0; s < location->nservers; s++) { |
113 | const struct nfs4_string *buf = &location->servers[s]; | 114 | const struct nfs4_string *buf = &location->servers[s]; |
114 | struct sockaddr_storage addr; | 115 | struct sockaddr_storage addr; |
115 | 116 | ||
116 | if (buf->len <= 0 || buf->len >= PAGE_SIZE) | 117 | if (buf->len <= 0 || buf->len >= maxbuflen) |
117 | continue; | 118 | continue; |
118 | 119 | ||
119 | mountdata->addr = (struct sockaddr *)&addr; | 120 | mountdata->addr = (struct sockaddr *)&addr; |
@@ -126,8 +127,8 @@ static struct vfsmount *try_location(struct nfs_clone_mount *mountdata, | |||
126 | continue; | 127 | continue; |
127 | nfs_set_port(mountdata->addr, NFS_PORT); | 128 | nfs_set_port(mountdata->addr, NFS_PORT); |
128 | 129 | ||
129 | strncpy(page2, buf->data, page2len); | 130 | memcpy(page2, buf->data, buf->len); |
130 | page2[page2len] = '\0'; | 131 | page2[buf->len] = '\0'; |
131 | mountdata->hostname = page2; | 132 | mountdata->hostname = page2; |
132 | 133 | ||
133 | snprintf(page, PAGE_SIZE, "%s:%s", | 134 | snprintf(page, PAGE_SIZE, "%s:%s", |
diff --git a/fs/ocfs2/alloc.c b/fs/ocfs2/alloc.c index 3a9e5deed74d..19e3a96aa02c 100644 --- a/fs/ocfs2/alloc.c +++ b/fs/ocfs2/alloc.c | |||
@@ -176,7 +176,8 @@ static int ocfs2_dinode_insert_check(struct inode *inode, | |||
176 | 176 | ||
177 | BUG_ON(OCFS2_I(inode)->ip_dyn_features & OCFS2_INLINE_DATA_FL); | 177 | BUG_ON(OCFS2_I(inode)->ip_dyn_features & OCFS2_INLINE_DATA_FL); |
178 | mlog_bug_on_msg(!ocfs2_sparse_alloc(osb) && | 178 | mlog_bug_on_msg(!ocfs2_sparse_alloc(osb) && |
179 | (OCFS2_I(inode)->ip_clusters != rec->e_cpos), | 179 | (OCFS2_I(inode)->ip_clusters != |
180 | le32_to_cpu(rec->e_cpos)), | ||
180 | "Device %s, asking for sparse allocation: inode %llu, " | 181 | "Device %s, asking for sparse allocation: inode %llu, " |
181 | "cpos %u, clusters %u\n", | 182 | "cpos %u, clusters %u\n", |
182 | osb->dev_str, | 183 | osb->dev_str, |
diff --git a/fs/ocfs2/aops.c b/fs/ocfs2/aops.c index a067a6cffb01..8e1709a679b7 100644 --- a/fs/ocfs2/aops.c +++ b/fs/ocfs2/aops.c | |||
@@ -227,7 +227,7 @@ int ocfs2_read_inline_data(struct inode *inode, struct page *page, | |||
227 | size = i_size_read(inode); | 227 | size = i_size_read(inode); |
228 | 228 | ||
229 | if (size > PAGE_CACHE_SIZE || | 229 | if (size > PAGE_CACHE_SIZE || |
230 | size > ocfs2_max_inline_data(inode->i_sb)) { | 230 | size > ocfs2_max_inline_data_with_xattr(inode->i_sb, di)) { |
231 | ocfs2_error(inode->i_sb, | 231 | ocfs2_error(inode->i_sb, |
232 | "Inode %llu has with inline data has bad size: %Lu", | 232 | "Inode %llu has with inline data has bad size: %Lu", |
233 | (unsigned long long)OCFS2_I(inode)->ip_blkno, | 233 | (unsigned long long)OCFS2_I(inode)->ip_blkno, |
@@ -1555,6 +1555,7 @@ static int ocfs2_try_to_write_inline_data(struct address_space *mapping, | |||
1555 | int ret, written = 0; | 1555 | int ret, written = 0; |
1556 | loff_t end = pos + len; | 1556 | loff_t end = pos + len; |
1557 | struct ocfs2_inode_info *oi = OCFS2_I(inode); | 1557 | struct ocfs2_inode_info *oi = OCFS2_I(inode); |
1558 | struct ocfs2_dinode *di = NULL; | ||
1558 | 1559 | ||
1559 | mlog(0, "Inode %llu, write of %u bytes at off %llu. features: 0x%x\n", | 1560 | mlog(0, "Inode %llu, write of %u bytes at off %llu. features: 0x%x\n", |
1560 | (unsigned long long)oi->ip_blkno, len, (unsigned long long)pos, | 1561 | (unsigned long long)oi->ip_blkno, len, (unsigned long long)pos, |
@@ -1587,7 +1588,9 @@ static int ocfs2_try_to_write_inline_data(struct address_space *mapping, | |||
1587 | /* | 1588 | /* |
1588 | * Check whether the write can fit. | 1589 | * Check whether the write can fit. |
1589 | */ | 1590 | */ |
1590 | if (mmap_page || end > ocfs2_max_inline_data(inode->i_sb)) | 1591 | di = (struct ocfs2_dinode *)wc->w_di_bh->b_data; |
1592 | if (mmap_page || | ||
1593 | end > ocfs2_max_inline_data_with_xattr(inode->i_sb, di)) | ||
1591 | return 0; | 1594 | return 0; |
1592 | 1595 | ||
1593 | do_inline_write: | 1596 | do_inline_write: |
diff --git a/fs/ocfs2/namei.c b/fs/ocfs2/namei.c index 084aba86c3b2..4b11762f249e 100644 --- a/fs/ocfs2/namei.c +++ b/fs/ocfs2/namei.c | |||
@@ -532,7 +532,8 @@ static int ocfs2_mknod_locked(struct ocfs2_super *osb, | |||
532 | 532 | ||
533 | fe->i_dyn_features = cpu_to_le16(feat | OCFS2_INLINE_DATA_FL); | 533 | fe->i_dyn_features = cpu_to_le16(feat | OCFS2_INLINE_DATA_FL); |
534 | 534 | ||
535 | fe->id2.i_data.id_count = cpu_to_le16(ocfs2_max_inline_data(osb->sb)); | 535 | fe->id2.i_data.id_count = cpu_to_le16( |
536 | ocfs2_max_inline_data_with_xattr(osb->sb, fe)); | ||
536 | } else { | 537 | } else { |
537 | fel = &fe->id2.i_list; | 538 | fel = &fe->id2.i_list; |
538 | fel->l_tree_depth = 0; | 539 | fel->l_tree_depth = 0; |
diff --git a/fs/ocfs2/ocfs2_fs.h b/fs/ocfs2/ocfs2_fs.h index c7ae45aaa36c..2332ef740f4f 100644 --- a/fs/ocfs2/ocfs2_fs.h +++ b/fs/ocfs2/ocfs2_fs.h | |||
@@ -1070,12 +1070,6 @@ static inline int ocfs2_fast_symlink_chars(struct super_block *sb) | |||
1070 | offsetof(struct ocfs2_dinode, id2.i_symlink); | 1070 | offsetof(struct ocfs2_dinode, id2.i_symlink); |
1071 | } | 1071 | } |
1072 | 1072 | ||
1073 | static inline int ocfs2_max_inline_data(struct super_block *sb) | ||
1074 | { | ||
1075 | return sb->s_blocksize - | ||
1076 | offsetof(struct ocfs2_dinode, id2.i_data.id_data); | ||
1077 | } | ||
1078 | |||
1079 | static inline int ocfs2_max_inline_data_with_xattr(struct super_block *sb, | 1073 | static inline int ocfs2_max_inline_data_with_xattr(struct super_block *sb, |
1080 | struct ocfs2_dinode *di) | 1074 | struct ocfs2_dinode *di) |
1081 | { | 1075 | { |
diff --git a/fs/ocfs2/xattr.c b/fs/ocfs2/xattr.c index 4ddd788add67..2563df89fc2a 100644 --- a/fs/ocfs2/xattr.c +++ b/fs/ocfs2/xattr.c | |||
@@ -547,8 +547,12 @@ int ocfs2_calc_xattr_init(struct inode *dir, | |||
547 | * when blocksize = 512, may reserve one more cluser for | 547 | * when blocksize = 512, may reserve one more cluser for |
548 | * xattr bucket, otherwise reserve one metadata block | 548 | * xattr bucket, otherwise reserve one metadata block |
549 | * for them is ok. | 549 | * for them is ok. |
550 | * If this is a new directory with inline data, | ||
551 | * we choose to reserve the entire inline area for | ||
552 | * directory contents and force an external xattr block. | ||
550 | */ | 553 | */ |
551 | if (dir->i_sb->s_blocksize == OCFS2_MIN_BLOCKSIZE || | 554 | if (dir->i_sb->s_blocksize == OCFS2_MIN_BLOCKSIZE || |
555 | (S_ISDIR(mode) && ocfs2_supports_inline_data(osb)) || | ||
552 | (s_size + a_size) > OCFS2_XATTR_FREE_IN_IBODY) { | 556 | (s_size + a_size) > OCFS2_XATTR_FREE_IN_IBODY) { |
553 | ret = ocfs2_reserve_new_metadata_blocks(osb, 1, xattr_ac); | 557 | ret = ocfs2_reserve_new_metadata_blocks(osb, 1, xattr_ac); |
554 | if (ret) { | 558 | if (ret) { |
@@ -4791,19 +4795,33 @@ static int ocfs2_xattr_bucket_set_value_outside(struct inode *inode, | |||
4791 | char *val, | 4795 | char *val, |
4792 | int value_len) | 4796 | int value_len) |
4793 | { | 4797 | { |
4794 | int offset; | 4798 | int ret, offset, block_off; |
4795 | struct ocfs2_xattr_value_root *xv; | 4799 | struct ocfs2_xattr_value_root *xv; |
4796 | struct ocfs2_xattr_entry *xe = xs->here; | 4800 | struct ocfs2_xattr_entry *xe = xs->here; |
4801 | struct ocfs2_xattr_header *xh = bucket_xh(xs->bucket); | ||
4802 | void *base; | ||
4797 | 4803 | ||
4798 | BUG_ON(!xs->base || !xe || ocfs2_xattr_is_local(xe)); | 4804 | BUG_ON(!xs->base || !xe || ocfs2_xattr_is_local(xe)); |
4799 | 4805 | ||
4800 | offset = le16_to_cpu(xe->xe_name_offset) + | 4806 | ret = ocfs2_xattr_bucket_get_name_value(inode, xh, |
4801 | OCFS2_XATTR_SIZE(xe->xe_name_len); | 4807 | xe - xh->xh_entries, |
4808 | &block_off, | ||
4809 | &offset); | ||
4810 | if (ret) { | ||
4811 | mlog_errno(ret); | ||
4812 | goto out; | ||
4813 | } | ||
4802 | 4814 | ||
4803 | xv = (struct ocfs2_xattr_value_root *)(xs->base + offset); | 4815 | base = bucket_block(xs->bucket, block_off); |
4816 | xv = (struct ocfs2_xattr_value_root *)(base + offset + | ||
4817 | OCFS2_XATTR_SIZE(xe->xe_name_len)); | ||
4804 | 4818 | ||
4805 | return __ocfs2_xattr_set_value_outside(inode, handle, | 4819 | ret = __ocfs2_xattr_set_value_outside(inode, handle, |
4806 | xv, val, value_len); | 4820 | xv, val, value_len); |
4821 | if (ret) | ||
4822 | mlog_errno(ret); | ||
4823 | out: | ||
4824 | return ret; | ||
4807 | } | 4825 | } |
4808 | 4826 | ||
4809 | static int ocfs2_rm_xattr_cluster(struct inode *inode, | 4827 | static int ocfs2_rm_xattr_cluster(struct inode *inode, |
@@ -699,12 +699,12 @@ pipe_rdwr_fasync(int fd, struct file *filp, int on) | |||
699 | int retval; | 699 | int retval; |
700 | 700 | ||
701 | mutex_lock(&inode->i_mutex); | 701 | mutex_lock(&inode->i_mutex); |
702 | |||
703 | retval = fasync_helper(fd, filp, on, &pipe->fasync_readers); | 702 | retval = fasync_helper(fd, filp, on, &pipe->fasync_readers); |
704 | 703 | if (retval >= 0) { | |
705 | if (retval >= 0) | ||
706 | retval = fasync_helper(fd, filp, on, &pipe->fasync_writers); | 704 | retval = fasync_helper(fd, filp, on, &pipe->fasync_writers); |
707 | 705 | if (retval < 0) /* this can happen only if on == T */ | |
706 | fasync_helper(-1, filp, 0, &pipe->fasync_readers); | ||
707 | } | ||
708 | mutex_unlock(&inode->i_mutex); | 708 | mutex_unlock(&inode->i_mutex); |
709 | 709 | ||
710 | if (retval < 0) | 710 | if (retval < 0) |
diff --git a/fs/proc/base.c b/fs/proc/base.c index 0c9de19a1633..beaa0ce3b82e 100644 --- a/fs/proc/base.c +++ b/fs/proc/base.c | |||
@@ -3066,7 +3066,6 @@ static int proc_task_readdir(struct file * filp, void * dirent, filldir_t filldi | |||
3066 | int retval = -ENOENT; | 3066 | int retval = -ENOENT; |
3067 | ino_t ino; | 3067 | ino_t ino; |
3068 | int tid; | 3068 | int tid; |
3069 | unsigned long pos = filp->f_pos; /* avoiding "long long" filp->f_pos */ | ||
3070 | struct pid_namespace *ns; | 3069 | struct pid_namespace *ns; |
3071 | 3070 | ||
3072 | task = get_proc_task(inode); | 3071 | task = get_proc_task(inode); |
@@ -3083,18 +3082,18 @@ static int proc_task_readdir(struct file * filp, void * dirent, filldir_t filldi | |||
3083 | goto out_no_task; | 3082 | goto out_no_task; |
3084 | retval = 0; | 3083 | retval = 0; |
3085 | 3084 | ||
3086 | switch (pos) { | 3085 | switch ((unsigned long)filp->f_pos) { |
3087 | case 0: | 3086 | case 0: |
3088 | ino = inode->i_ino; | 3087 | ino = inode->i_ino; |
3089 | if (filldir(dirent, ".", 1, pos, ino, DT_DIR) < 0) | 3088 | if (filldir(dirent, ".", 1, filp->f_pos, ino, DT_DIR) < 0) |
3090 | goto out; | 3089 | goto out; |
3091 | pos++; | 3090 | filp->f_pos++; |
3092 | /* fall through */ | 3091 | /* fall through */ |
3093 | case 1: | 3092 | case 1: |
3094 | ino = parent_ino(dentry); | 3093 | ino = parent_ino(dentry); |
3095 | if (filldir(dirent, "..", 2, pos, ino, DT_DIR) < 0) | 3094 | if (filldir(dirent, "..", 2, filp->f_pos, ino, DT_DIR) < 0) |
3096 | goto out; | 3095 | goto out; |
3097 | pos++; | 3096 | filp->f_pos++; |
3098 | /* fall through */ | 3097 | /* fall through */ |
3099 | } | 3098 | } |
3100 | 3099 | ||
@@ -3104,9 +3103,9 @@ static int proc_task_readdir(struct file * filp, void * dirent, filldir_t filldi | |||
3104 | ns = filp->f_dentry->d_sb->s_fs_info; | 3103 | ns = filp->f_dentry->d_sb->s_fs_info; |
3105 | tid = (int)filp->f_version; | 3104 | tid = (int)filp->f_version; |
3106 | filp->f_version = 0; | 3105 | filp->f_version = 0; |
3107 | for (task = first_tid(leader, tid, pos - 2, ns); | 3106 | for (task = first_tid(leader, tid, filp->f_pos - 2, ns); |
3108 | task; | 3107 | task; |
3109 | task = next_tid(task), pos++) { | 3108 | task = next_tid(task), filp->f_pos++) { |
3110 | tid = task_pid_nr_ns(task, ns); | 3109 | tid = task_pid_nr_ns(task, ns); |
3111 | if (proc_task_fill_cache(filp, dirent, filldir, task, tid) < 0) { | 3110 | if (proc_task_fill_cache(filp, dirent, filldir, task, tid) < 0) { |
3112 | /* returning this tgid failed, save it as the first | 3111 | /* returning this tgid failed, save it as the first |
@@ -3117,7 +3116,6 @@ static int proc_task_readdir(struct file * filp, void * dirent, filldir_t filldi | |||
3117 | } | 3116 | } |
3118 | } | 3117 | } |
3119 | out: | 3118 | out: |
3120 | filp->f_pos = pos; | ||
3121 | put_task_struct(leader); | 3119 | put_task_struct(leader); |
3122 | out_no_task: | 3120 | out_no_task: |
3123 | return retval; | 3121 | return retval; |
diff --git a/fs/proc/page.c b/fs/proc/page.c index 2d1345112a42..e9983837d08d 100644 --- a/fs/proc/page.c +++ b/fs/proc/page.c | |||
@@ -80,7 +80,7 @@ static const struct file_operations proc_kpagecount_operations = { | |||
80 | #define KPF_RECLAIM 9 | 80 | #define KPF_RECLAIM 9 |
81 | #define KPF_BUDDY 10 | 81 | #define KPF_BUDDY 10 |
82 | 82 | ||
83 | #define kpf_copy_bit(flags, srcpos, dstpos) (((flags >> srcpos) & 1) << dstpos) | 83 | #define kpf_copy_bit(flags, dstpos, srcpos) (((flags >> srcpos) & 1) << dstpos) |
84 | 84 | ||
85 | static ssize_t kpageflags_read(struct file *file, char __user *buf, | 85 | static ssize_t kpageflags_read(struct file *file, char __user *buf, |
86 | size_t count, loff_t *ppos) | 86 | size_t count, loff_t *ppos) |
diff --git a/fs/ramfs/file-nommu.c b/fs/ramfs/file-nommu.c index b9b567a28376..5d7c7ececa64 100644 --- a/fs/ramfs/file-nommu.c +++ b/fs/ramfs/file-nommu.c | |||
@@ -114,6 +114,9 @@ int ramfs_nommu_expand_for_mapping(struct inode *inode, size_t newsize) | |||
114 | if (!pagevec_add(&lru_pvec, page)) | 114 | if (!pagevec_add(&lru_pvec, page)) |
115 | __pagevec_lru_add_file(&lru_pvec); | 115 | __pagevec_lru_add_file(&lru_pvec); |
116 | 116 | ||
117 | /* prevent the page from being discarded on memory pressure */ | ||
118 | SetPageDirty(page); | ||
119 | |||
117 | unlock_page(page); | 120 | unlock_page(page); |
118 | } | 121 | } |
119 | 122 | ||
@@ -126,6 +129,7 @@ int ramfs_nommu_expand_for_mapping(struct inode *inode, size_t newsize) | |||
126 | return -EFBIG; | 129 | return -EFBIG; |
127 | 130 | ||
128 | add_error: | 131 | add_error: |
132 | pagevec_lru_add_file(&lru_pvec); | ||
129 | page_cache_release(pages + loop); | 133 | page_cache_release(pages + loop); |
130 | for (loop++; loop < npages; loop++) | 134 | for (loop++; loop < npages; loop++) |
131 | __free_page(pages + loop); | 135 | __free_page(pages + loop); |
diff --git a/fs/squashfs/block.c b/fs/squashfs/block.c index c837dfc2b3c6..2a7960310349 100644 --- a/fs/squashfs/block.c +++ b/fs/squashfs/block.c | |||
@@ -80,7 +80,7 @@ static struct buffer_head *get_block_length(struct super_block *sb, | |||
80 | * generated a larger block - this does occasionally happen with zlib). | 80 | * generated a larger block - this does occasionally happen with zlib). |
81 | */ | 81 | */ |
82 | int squashfs_read_data(struct super_block *sb, void **buffer, u64 index, | 82 | int squashfs_read_data(struct super_block *sb, void **buffer, u64 index, |
83 | int length, u64 *next_index, int srclength) | 83 | int length, u64 *next_index, int srclength, int pages) |
84 | { | 84 | { |
85 | struct squashfs_sb_info *msblk = sb->s_fs_info; | 85 | struct squashfs_sb_info *msblk = sb->s_fs_info; |
86 | struct buffer_head **bh; | 86 | struct buffer_head **bh; |
@@ -184,7 +184,7 @@ int squashfs_read_data(struct super_block *sb, void **buffer, u64 index, | |||
184 | offset = 0; | 184 | offset = 0; |
185 | } | 185 | } |
186 | 186 | ||
187 | if (msblk->stream.avail_out == 0) { | 187 | if (msblk->stream.avail_out == 0 && page < pages) { |
188 | msblk->stream.next_out = buffer[page++]; | 188 | msblk->stream.next_out = buffer[page++]; |
189 | msblk->stream.avail_out = PAGE_CACHE_SIZE; | 189 | msblk->stream.avail_out = PAGE_CACHE_SIZE; |
190 | } | 190 | } |
@@ -201,25 +201,20 @@ int squashfs_read_data(struct super_block *sb, void **buffer, u64 index, | |||
201 | zlib_init = 1; | 201 | zlib_init = 1; |
202 | } | 202 | } |
203 | 203 | ||
204 | zlib_err = zlib_inflate(&msblk->stream, Z_NO_FLUSH); | 204 | zlib_err = zlib_inflate(&msblk->stream, Z_SYNC_FLUSH); |
205 | 205 | ||
206 | if (msblk->stream.avail_in == 0 && k < b) | 206 | if (msblk->stream.avail_in == 0 && k < b) |
207 | put_bh(bh[k++]); | 207 | put_bh(bh[k++]); |
208 | } while (zlib_err == Z_OK); | 208 | } while (zlib_err == Z_OK); |
209 | 209 | ||
210 | if (zlib_err != Z_STREAM_END) { | 210 | if (zlib_err != Z_STREAM_END) { |
211 | ERROR("zlib_inflate returned unexpected result" | 211 | ERROR("zlib_inflate error, data probably corrupt\n"); |
212 | " 0x%x, srclength %d, avail_in %d," | ||
213 | " avail_out %d\n", zlib_err, srclength, | ||
214 | msblk->stream.avail_in, | ||
215 | msblk->stream.avail_out); | ||
216 | goto release_mutex; | 212 | goto release_mutex; |
217 | } | 213 | } |
218 | 214 | ||
219 | zlib_err = zlib_inflateEnd(&msblk->stream); | 215 | zlib_err = zlib_inflateEnd(&msblk->stream); |
220 | if (zlib_err != Z_OK) { | 216 | if (zlib_err != Z_OK) { |
221 | ERROR("zlib_inflateEnd returned unexpected result 0x%x," | 217 | ERROR("zlib_inflate error, data probably corrupt\n"); |
222 | " srclength %d\n", zlib_err, srclength); | ||
223 | goto release_mutex; | 218 | goto release_mutex; |
224 | } | 219 | } |
225 | length = msblk->stream.total_out; | 220 | length = msblk->stream.total_out; |
@@ -268,7 +263,8 @@ block_release: | |||
268 | put_bh(bh[k]); | 263 | put_bh(bh[k]); |
269 | 264 | ||
270 | read_failure: | 265 | read_failure: |
271 | ERROR("sb_bread failed reading block 0x%llx\n", cur_index); | 266 | ERROR("squashfs_read_data failed to read block 0x%llx\n", |
267 | (unsigned long long) index); | ||
272 | kfree(bh); | 268 | kfree(bh); |
273 | return -EIO; | 269 | return -EIO; |
274 | } | 270 | } |
diff --git a/fs/squashfs/cache.c b/fs/squashfs/cache.c index f29eda16d25e..1c4739e33af6 100644 --- a/fs/squashfs/cache.c +++ b/fs/squashfs/cache.c | |||
@@ -119,7 +119,7 @@ struct squashfs_cache_entry *squashfs_cache_get(struct super_block *sb, | |||
119 | 119 | ||
120 | entry->length = squashfs_read_data(sb, entry->data, | 120 | entry->length = squashfs_read_data(sb, entry->data, |
121 | block, length, &entry->next_index, | 121 | block, length, &entry->next_index, |
122 | cache->block_size); | 122 | cache->block_size, cache->pages); |
123 | 123 | ||
124 | spin_lock(&cache->lock); | 124 | spin_lock(&cache->lock); |
125 | 125 | ||
@@ -406,7 +406,7 @@ int squashfs_read_table(struct super_block *sb, void *buffer, u64 block, | |||
406 | for (i = 0; i < pages; i++, buffer += PAGE_CACHE_SIZE) | 406 | for (i = 0; i < pages; i++, buffer += PAGE_CACHE_SIZE) |
407 | data[i] = buffer; | 407 | data[i] = buffer; |
408 | res = squashfs_read_data(sb, data, block, length | | 408 | res = squashfs_read_data(sb, data, block, length | |
409 | SQUASHFS_COMPRESSED_BIT_BLOCK, NULL, length); | 409 | SQUASHFS_COMPRESSED_BIT_BLOCK, NULL, length, pages); |
410 | kfree(data); | 410 | kfree(data); |
411 | return res; | 411 | return res; |
412 | } | 412 | } |
diff --git a/fs/squashfs/inode.c b/fs/squashfs/inode.c index 7a63398bb855..9101dbde39ec 100644 --- a/fs/squashfs/inode.c +++ b/fs/squashfs/inode.c | |||
@@ -133,7 +133,8 @@ int squashfs_read_inode(struct inode *inode, long long ino) | |||
133 | type = le16_to_cpu(sqshb_ino->inode_type); | 133 | type = le16_to_cpu(sqshb_ino->inode_type); |
134 | switch (type) { | 134 | switch (type) { |
135 | case SQUASHFS_REG_TYPE: { | 135 | case SQUASHFS_REG_TYPE: { |
136 | unsigned int frag_offset, frag_size, frag; | 136 | unsigned int frag_offset, frag; |
137 | int frag_size; | ||
137 | u64 frag_blk; | 138 | u64 frag_blk; |
138 | struct squashfs_reg_inode *sqsh_ino = &squashfs_ino.reg; | 139 | struct squashfs_reg_inode *sqsh_ino = &squashfs_ino.reg; |
139 | 140 | ||
@@ -175,7 +176,8 @@ int squashfs_read_inode(struct inode *inode, long long ino) | |||
175 | break; | 176 | break; |
176 | } | 177 | } |
177 | case SQUASHFS_LREG_TYPE: { | 178 | case SQUASHFS_LREG_TYPE: { |
178 | unsigned int frag_offset, frag_size, frag; | 179 | unsigned int frag_offset, frag; |
180 | int frag_size; | ||
179 | u64 frag_blk; | 181 | u64 frag_blk; |
180 | struct squashfs_lreg_inode *sqsh_ino = &squashfs_ino.lreg; | 182 | struct squashfs_lreg_inode *sqsh_ino = &squashfs_ino.lreg; |
181 | 183 | ||
diff --git a/fs/squashfs/squashfs.h b/fs/squashfs/squashfs.h index 6b2515d027d5..0e9feb6adf7e 100644 --- a/fs/squashfs/squashfs.h +++ b/fs/squashfs/squashfs.h | |||
@@ -34,7 +34,7 @@ static inline struct squashfs_inode_info *squashfs_i(struct inode *inode) | |||
34 | 34 | ||
35 | /* block.c */ | 35 | /* block.c */ |
36 | extern int squashfs_read_data(struct super_block *, void **, u64, int, u64 *, | 36 | extern int squashfs_read_data(struct super_block *, void **, u64, int, u64 *, |
37 | int); | 37 | int, int); |
38 | 38 | ||
39 | /* cache.c */ | 39 | /* cache.c */ |
40 | extern struct squashfs_cache *squashfs_cache_init(char *, int, int); | 40 | extern struct squashfs_cache *squashfs_cache_init(char *, int, int); |
diff --git a/fs/squashfs/super.c b/fs/squashfs/super.c index 071df5b5b491..681ec0d83799 100644 --- a/fs/squashfs/super.c +++ b/fs/squashfs/super.c | |||
@@ -389,7 +389,7 @@ static int __init init_squashfs_fs(void) | |||
389 | return err; | 389 | return err; |
390 | } | 390 | } |
391 | 391 | ||
392 | printk(KERN_INFO "squashfs: version 4.0 (2009/01/03) " | 392 | printk(KERN_INFO "squashfs: version 4.0 (2009/01/31) " |
393 | "Phillip Lougher\n"); | 393 | "Phillip Lougher\n"); |
394 | 394 | ||
395 | return 0; | 395 | return 0; |
diff --git a/fs/super.c b/fs/super.c index 8349ed6b1412..6ce501447ada 100644 --- a/fs/super.c +++ b/fs/super.c | |||
@@ -371,8 +371,10 @@ retry: | |||
371 | continue; | 371 | continue; |
372 | if (!grab_super(old)) | 372 | if (!grab_super(old)) |
373 | goto retry; | 373 | goto retry; |
374 | if (s) | 374 | if (s) { |
375 | up_write(&s->s_umount); | ||
375 | destroy_super(s); | 376 | destroy_super(s); |
377 | } | ||
376 | return old; | 378 | return old; |
377 | } | 379 | } |
378 | } | 380 | } |
@@ -387,6 +389,7 @@ retry: | |||
387 | err = set(s, data); | 389 | err = set(s, data); |
388 | if (err) { | 390 | if (err) { |
389 | spin_unlock(&sb_lock); | 391 | spin_unlock(&sb_lock); |
392 | up_write(&s->s_umount); | ||
390 | destroy_super(s); | 393 | destroy_super(s); |
391 | return ERR_PTR(err); | 394 | return ERR_PTR(err); |
392 | } | 395 | } |
diff --git a/fs/xfs/linux-2.6/xfs_buf.c b/fs/xfs/linux-2.6/xfs_buf.c index cb329edc925b..aa1016bb9134 100644 --- a/fs/xfs/linux-2.6/xfs_buf.c +++ b/fs/xfs/linux-2.6/xfs_buf.c | |||
@@ -34,6 +34,12 @@ | |||
34 | #include <linux/backing-dev.h> | 34 | #include <linux/backing-dev.h> |
35 | #include <linux/freezer.h> | 35 | #include <linux/freezer.h> |
36 | 36 | ||
37 | #include "xfs_sb.h" | ||
38 | #include "xfs_inum.h" | ||
39 | #include "xfs_ag.h" | ||
40 | #include "xfs_dmapi.h" | ||
41 | #include "xfs_mount.h" | ||
42 | |||
37 | static kmem_zone_t *xfs_buf_zone; | 43 | static kmem_zone_t *xfs_buf_zone; |
38 | STATIC int xfsbufd(void *); | 44 | STATIC int xfsbufd(void *); |
39 | STATIC int xfsbufd_wakeup(int, gfp_t); | 45 | STATIC int xfsbufd_wakeup(int, gfp_t); |
@@ -1435,10 +1441,12 @@ xfs_unregister_buftarg( | |||
1435 | 1441 | ||
1436 | void | 1442 | void |
1437 | xfs_free_buftarg( | 1443 | xfs_free_buftarg( |
1438 | xfs_buftarg_t *btp) | 1444 | struct xfs_mount *mp, |
1445 | struct xfs_buftarg *btp) | ||
1439 | { | 1446 | { |
1440 | xfs_flush_buftarg(btp, 1); | 1447 | xfs_flush_buftarg(btp, 1); |
1441 | xfs_blkdev_issue_flush(btp); | 1448 | if (mp->m_flags & XFS_MOUNT_BARRIER) |
1449 | xfs_blkdev_issue_flush(btp); | ||
1442 | xfs_free_bufhash(btp); | 1450 | xfs_free_bufhash(btp); |
1443 | iput(btp->bt_mapping->host); | 1451 | iput(btp->bt_mapping->host); |
1444 | 1452 | ||
diff --git a/fs/xfs/linux-2.6/xfs_buf.h b/fs/xfs/linux-2.6/xfs_buf.h index 288ae7c4c800..9b4d666ad31f 100644 --- a/fs/xfs/linux-2.6/xfs_buf.h +++ b/fs/xfs/linux-2.6/xfs_buf.h | |||
@@ -413,7 +413,7 @@ static inline int XFS_bwrite(xfs_buf_t *bp) | |||
413 | * Handling of buftargs. | 413 | * Handling of buftargs. |
414 | */ | 414 | */ |
415 | extern xfs_buftarg_t *xfs_alloc_buftarg(struct block_device *, int); | 415 | extern xfs_buftarg_t *xfs_alloc_buftarg(struct block_device *, int); |
416 | extern void xfs_free_buftarg(xfs_buftarg_t *); | 416 | extern void xfs_free_buftarg(struct xfs_mount *, struct xfs_buftarg *); |
417 | extern void xfs_wait_buftarg(xfs_buftarg_t *); | 417 | extern void xfs_wait_buftarg(xfs_buftarg_t *); |
418 | extern int xfs_setsize_buftarg(xfs_buftarg_t *, unsigned int, unsigned int); | 418 | extern int xfs_setsize_buftarg(xfs_buftarg_t *, unsigned int, unsigned int); |
419 | extern int xfs_flush_buftarg(xfs_buftarg_t *, int); | 419 | extern int xfs_flush_buftarg(xfs_buftarg_t *, int); |
diff --git a/fs/xfs/linux-2.6/xfs_super.c b/fs/xfs/linux-2.6/xfs_super.c index c71e226da7f5..32ae5028e96b 100644 --- a/fs/xfs/linux-2.6/xfs_super.c +++ b/fs/xfs/linux-2.6/xfs_super.c | |||
@@ -734,15 +734,15 @@ xfs_close_devices( | |||
734 | { | 734 | { |
735 | if (mp->m_logdev_targp && mp->m_logdev_targp != mp->m_ddev_targp) { | 735 | if (mp->m_logdev_targp && mp->m_logdev_targp != mp->m_ddev_targp) { |
736 | struct block_device *logdev = mp->m_logdev_targp->bt_bdev; | 736 | struct block_device *logdev = mp->m_logdev_targp->bt_bdev; |
737 | xfs_free_buftarg(mp->m_logdev_targp); | 737 | xfs_free_buftarg(mp, mp->m_logdev_targp); |
738 | xfs_blkdev_put(logdev); | 738 | xfs_blkdev_put(logdev); |
739 | } | 739 | } |
740 | if (mp->m_rtdev_targp) { | 740 | if (mp->m_rtdev_targp) { |
741 | struct block_device *rtdev = mp->m_rtdev_targp->bt_bdev; | 741 | struct block_device *rtdev = mp->m_rtdev_targp->bt_bdev; |
742 | xfs_free_buftarg(mp->m_rtdev_targp); | 742 | xfs_free_buftarg(mp, mp->m_rtdev_targp); |
743 | xfs_blkdev_put(rtdev); | 743 | xfs_blkdev_put(rtdev); |
744 | } | 744 | } |
745 | xfs_free_buftarg(mp->m_ddev_targp); | 745 | xfs_free_buftarg(mp, mp->m_ddev_targp); |
746 | } | 746 | } |
747 | 747 | ||
748 | /* | 748 | /* |
@@ -811,9 +811,9 @@ xfs_open_devices( | |||
811 | 811 | ||
812 | out_free_rtdev_targ: | 812 | out_free_rtdev_targ: |
813 | if (mp->m_rtdev_targp) | 813 | if (mp->m_rtdev_targp) |
814 | xfs_free_buftarg(mp->m_rtdev_targp); | 814 | xfs_free_buftarg(mp, mp->m_rtdev_targp); |
815 | out_free_ddev_targ: | 815 | out_free_ddev_targ: |
816 | xfs_free_buftarg(mp->m_ddev_targp); | 816 | xfs_free_buftarg(mp, mp->m_ddev_targp); |
817 | out_close_rtdev: | 817 | out_close_rtdev: |
818 | if (rtdev) | 818 | if (rtdev) |
819 | xfs_blkdev_put(rtdev); | 819 | xfs_blkdev_put(rtdev); |
diff --git a/fs/xfs/xfs_iget.c b/fs/xfs/xfs_iget.c index e2fb6210d4c5..478e587087fe 100644 --- a/fs/xfs/xfs_iget.c +++ b/fs/xfs/xfs_iget.c | |||
@@ -246,9 +246,6 @@ xfs_iget_cache_miss( | |||
246 | goto out_destroy; | 246 | goto out_destroy; |
247 | } | 247 | } |
248 | 248 | ||
249 | if (lock_flags) | ||
250 | xfs_ilock(ip, lock_flags); | ||
251 | |||
252 | /* | 249 | /* |
253 | * Preload the radix tree so we can insert safely under the | 250 | * Preload the radix tree so we can insert safely under the |
254 | * write spinlock. Note that we cannot sleep inside the preload | 251 | * write spinlock. Note that we cannot sleep inside the preload |
@@ -256,7 +253,16 @@ xfs_iget_cache_miss( | |||
256 | */ | 253 | */ |
257 | if (radix_tree_preload(GFP_KERNEL)) { | 254 | if (radix_tree_preload(GFP_KERNEL)) { |
258 | error = EAGAIN; | 255 | error = EAGAIN; |
259 | goto out_unlock; | 256 | goto out_destroy; |
257 | } | ||
258 | |||
259 | /* | ||
260 | * Because the inode hasn't been added to the radix-tree yet it can't | ||
261 | * be found by another thread, so we can do the non-sleeping lock here. | ||
262 | */ | ||
263 | if (lock_flags) { | ||
264 | if (!xfs_ilock_nowait(ip, lock_flags)) | ||
265 | BUG(); | ||
260 | } | 266 | } |
261 | 267 | ||
262 | mask = ~(((XFS_INODE_CLUSTER_SIZE(mp) >> mp->m_sb.sb_inodelog)) - 1); | 268 | mask = ~(((XFS_INODE_CLUSTER_SIZE(mp) >> mp->m_sb.sb_inodelog)) - 1); |
@@ -284,7 +290,6 @@ xfs_iget_cache_miss( | |||
284 | out_preload_end: | 290 | out_preload_end: |
285 | write_unlock(&pag->pag_ici_lock); | 291 | write_unlock(&pag->pag_ici_lock); |
286 | radix_tree_preload_end(); | 292 | radix_tree_preload_end(); |
287 | out_unlock: | ||
288 | if (lock_flags) | 293 | if (lock_flags) |
289 | xfs_iunlock(ip, lock_flags); | 294 | xfs_iunlock(ip, lock_flags); |
290 | out_destroy: | 295 | out_destroy: |
diff --git a/fs/xfs/xfs_log_recover.c b/fs/xfs/xfs_log_recover.c index b1047de2fffd..61af610d79b3 100644 --- a/fs/xfs/xfs_log_recover.c +++ b/fs/xfs/xfs_log_recover.c | |||
@@ -1455,10 +1455,19 @@ xlog_recover_add_to_trans( | |||
1455 | item = item->ri_prev; | 1455 | item = item->ri_prev; |
1456 | 1456 | ||
1457 | if (item->ri_total == 0) { /* first region to be added */ | 1457 | if (item->ri_total == 0) { /* first region to be added */ |
1458 | item->ri_total = in_f->ilf_size; | 1458 | if (in_f->ilf_size == 0 || |
1459 | ASSERT(item->ri_total <= XLOG_MAX_REGIONS_IN_ITEM); | 1459 | in_f->ilf_size > XLOG_MAX_REGIONS_IN_ITEM) { |
1460 | item->ri_buf = kmem_zalloc((item->ri_total * | 1460 | xlog_warn( |
1461 | sizeof(xfs_log_iovec_t)), KM_SLEEP); | 1461 | "XFS: bad number of regions (%d) in inode log format", |
1462 | in_f->ilf_size); | ||
1463 | ASSERT(0); | ||
1464 | return XFS_ERROR(EIO); | ||
1465 | } | ||
1466 | |||
1467 | item->ri_total = in_f->ilf_size; | ||
1468 | item->ri_buf = | ||
1469 | kmem_zalloc(item->ri_total * sizeof(xfs_log_iovec_t), | ||
1470 | KM_SLEEP); | ||
1462 | } | 1471 | } |
1463 | ASSERT(item->ri_total > item->ri_cnt); | 1472 | ASSERT(item->ri_total > item->ri_cnt); |
1464 | /* Description region is ri_buf[0] */ | 1473 | /* Description region is ri_buf[0] */ |
diff --git a/include/drm/drm_edid.h b/include/drm/drm_edid.h index ff8d27af4786..a11cc9d32591 100644 --- a/include/drm/drm_edid.h +++ b/include/drm/drm_edid.h | |||
@@ -69,8 +69,8 @@ struct detailed_pixel_timing { | |||
69 | u8 hborder; | 69 | u8 hborder; |
70 | u8 vborder; | 70 | u8 vborder; |
71 | u8 unknown0:1; | 71 | u8 unknown0:1; |
72 | u8 vsync_positive:1; | ||
73 | u8 hsync_positive:1; | 72 | u8 hsync_positive:1; |
73 | u8 vsync_positive:1; | ||
74 | u8 separate_sync:2; | 74 | u8 separate_sync:2; |
75 | u8 stereo:1; | 75 | u8 stereo:1; |
76 | u8 unknown6:1; | 76 | u8 unknown6:1; |
diff --git a/include/linux/ata.h b/include/linux/ata.h index 08a86d5cdf1b..9a061accd8b8 100644 --- a/include/linux/ata.h +++ b/include/linux/ata.h | |||
@@ -89,6 +89,8 @@ enum { | |||
89 | ATA_ID_DLF = 128, | 89 | ATA_ID_DLF = 128, |
90 | ATA_ID_CSFO = 129, | 90 | ATA_ID_CSFO = 129, |
91 | ATA_ID_CFA_POWER = 160, | 91 | ATA_ID_CFA_POWER = 160, |
92 | ATA_ID_CFA_KEY_MGMT = 162, | ||
93 | ATA_ID_CFA_MODES = 163, | ||
92 | ATA_ID_ROT_SPEED = 217, | 94 | ATA_ID_ROT_SPEED = 217, |
93 | ATA_ID_PIO4 = (1 << 1), | 95 | ATA_ID_PIO4 = (1 << 1), |
94 | 96 | ||
diff --git a/include/linux/bio.h b/include/linux/bio.h index 1b16108a5417..d8bd43bfdcf5 100644 --- a/include/linux/bio.h +++ b/include/linux/bio.h | |||
@@ -531,7 +531,7 @@ extern void bio_integrity_endio(struct bio *, int); | |||
531 | extern void bio_integrity_advance(struct bio *, unsigned int); | 531 | extern void bio_integrity_advance(struct bio *, unsigned int); |
532 | extern void bio_integrity_trim(struct bio *, unsigned int, unsigned int); | 532 | extern void bio_integrity_trim(struct bio *, unsigned int, unsigned int); |
533 | extern void bio_integrity_split(struct bio *, struct bio_pair *, int); | 533 | extern void bio_integrity_split(struct bio *, struct bio_pair *, int); |
534 | extern int bio_integrity_clone(struct bio *, struct bio *, struct bio_set *); | 534 | extern int bio_integrity_clone(struct bio *, struct bio *, gfp_t, struct bio_set *); |
535 | extern int bioset_integrity_create(struct bio_set *, int); | 535 | extern int bioset_integrity_create(struct bio_set *, int); |
536 | extern void bioset_integrity_free(struct bio_set *); | 536 | extern void bioset_integrity_free(struct bio_set *); |
537 | extern void bio_integrity_init_slab(void); | 537 | extern void bio_integrity_init_slab(void); |
@@ -542,7 +542,7 @@ extern void bio_integrity_init_slab(void); | |||
542 | #define bioset_integrity_create(a, b) (0) | 542 | #define bioset_integrity_create(a, b) (0) |
543 | #define bio_integrity_prep(a) (0) | 543 | #define bio_integrity_prep(a) (0) |
544 | #define bio_integrity_enabled(a) (0) | 544 | #define bio_integrity_enabled(a) (0) |
545 | #define bio_integrity_clone(a, b, c) (0) | 545 | #define bio_integrity_clone(a, b, c,d ) (0) |
546 | #define bioset_integrity_free(a) do { } while (0) | 546 | #define bioset_integrity_free(a) do { } while (0) |
547 | #define bio_integrity_free(a, b) do { } while (0) | 547 | #define bio_integrity_free(a, b) do { } while (0) |
548 | #define bio_integrity_endio(a, b) do { } while (0) | 548 | #define bio_integrity_endio(a, b) do { } while (0) |
diff --git a/include/linux/compiler-gcc.h b/include/linux/compiler-gcc.h index 1514d534deeb..a3ed7cb8ca34 100644 --- a/include/linux/compiler-gcc.h +++ b/include/linux/compiler-gcc.h | |||
@@ -52,7 +52,15 @@ | |||
52 | #define __deprecated __attribute__((deprecated)) | 52 | #define __deprecated __attribute__((deprecated)) |
53 | #define __packed __attribute__((packed)) | 53 | #define __packed __attribute__((packed)) |
54 | #define __weak __attribute__((weak)) | 54 | #define __weak __attribute__((weak)) |
55 | #define __naked __attribute__((naked)) | 55 | |
56 | /* | ||
57 | * it doesn't make sense on ARM (currently the only user of __naked) to trace | ||
58 | * naked functions because then mcount is called without stack and frame pointer | ||
59 | * being set up and there is no chance to restore the lr register to the value | ||
60 | * before mcount was called. | ||
61 | */ | ||
62 | #define __naked __attribute__((naked)) notrace | ||
63 | |||
56 | #define __noreturn __attribute__((noreturn)) | 64 | #define __noreturn __attribute__((noreturn)) |
57 | 65 | ||
58 | /* | 66 | /* |
diff --git a/include/linux/cpufreq.h b/include/linux/cpufreq.h index 384b38d3e8e2..161042746afc 100644 --- a/include/linux/cpufreq.h +++ b/include/linux/cpufreq.h | |||
@@ -234,7 +234,6 @@ struct cpufreq_driver { | |||
234 | int (*suspend) (struct cpufreq_policy *policy, pm_message_t pmsg); | 234 | int (*suspend) (struct cpufreq_policy *policy, pm_message_t pmsg); |
235 | int (*resume) (struct cpufreq_policy *policy); | 235 | int (*resume) (struct cpufreq_policy *policy); |
236 | struct freq_attr **attr; | 236 | struct freq_attr **attr; |
237 | bool hide_interface; | ||
238 | }; | 237 | }; |
239 | 238 | ||
240 | /* flags */ | 239 | /* flags */ |
diff --git a/include/linux/dmaengine.h b/include/linux/dmaengine.h index f0413845f20e..1956c8d46d32 100644 --- a/include/linux/dmaengine.h +++ b/include/linux/dmaengine.h | |||
@@ -97,7 +97,6 @@ typedef struct { DECLARE_BITMAP(bits, DMA_TX_TYPE_END); } dma_cap_mask_t; | |||
97 | 97 | ||
98 | /** | 98 | /** |
99 | * struct dma_chan_percpu - the per-CPU part of struct dma_chan | 99 | * struct dma_chan_percpu - the per-CPU part of struct dma_chan |
100 | * @refcount: local_t used for open-coded "bigref" counting | ||
101 | * @memcpy_count: transaction counter | 100 | * @memcpy_count: transaction counter |
102 | * @bytes_transferred: byte counter | 101 | * @bytes_transferred: byte counter |
103 | */ | 102 | */ |
@@ -114,9 +113,6 @@ struct dma_chan_percpu { | |||
114 | * @cookie: last cookie value returned to client | 113 | * @cookie: last cookie value returned to client |
115 | * @chan_id: channel ID for sysfs | 114 | * @chan_id: channel ID for sysfs |
116 | * @dev: class device for sysfs | 115 | * @dev: class device for sysfs |
117 | * @refcount: kref, used in "bigref" slow-mode | ||
118 | * @slow_ref: indicates that the DMA channel is free | ||
119 | * @rcu: the DMA channel's RCU head | ||
120 | * @device_node: used to add this to the device chan list | 116 | * @device_node: used to add this to the device chan list |
121 | * @local: per-cpu pointer to a struct dma_chan_percpu | 117 | * @local: per-cpu pointer to a struct dma_chan_percpu |
122 | * @client-count: how many clients are using this channel | 118 | * @client-count: how many clients are using this channel |
@@ -213,8 +209,6 @@ struct dma_async_tx_descriptor { | |||
213 | * @global_node: list_head for global dma_device_list | 209 | * @global_node: list_head for global dma_device_list |
214 | * @cap_mask: one or more dma_capability flags | 210 | * @cap_mask: one or more dma_capability flags |
215 | * @max_xor: maximum number of xor sources, 0 if no capability | 211 | * @max_xor: maximum number of xor sources, 0 if no capability |
216 | * @refcount: reference count | ||
217 | * @done: IO completion struct | ||
218 | * @dev_id: unique device ID | 212 | * @dev_id: unique device ID |
219 | * @dev: struct device reference for dma mapping api | 213 | * @dev: struct device reference for dma mapping api |
220 | * @device_alloc_chan_resources: allocate resources and return the | 214 | * @device_alloc_chan_resources: allocate resources and return the |
@@ -227,6 +221,7 @@ struct dma_async_tx_descriptor { | |||
227 | * @device_prep_dma_interrupt: prepares an end of chain interrupt operation | 221 | * @device_prep_dma_interrupt: prepares an end of chain interrupt operation |
228 | * @device_prep_slave_sg: prepares a slave dma operation | 222 | * @device_prep_slave_sg: prepares a slave dma operation |
229 | * @device_terminate_all: terminate all pending operations | 223 | * @device_terminate_all: terminate all pending operations |
224 | * @device_is_tx_complete: poll for transaction completion | ||
230 | * @device_issue_pending: push pending transactions to hardware | 225 | * @device_issue_pending: push pending transactions to hardware |
231 | */ | 226 | */ |
232 | struct dma_device { | 227 | struct dma_device { |
diff --git a/include/linux/hdreg.h b/include/linux/hdreg.h index c37e9241fae7..ed21bd3dbd25 100644 --- a/include/linux/hdreg.h +++ b/include/linux/hdreg.h | |||
@@ -511,7 +511,6 @@ struct hd_driveid { | |||
511 | unsigned short words69_70[2]; /* reserved words 69-70 | 511 | unsigned short words69_70[2]; /* reserved words 69-70 |
512 | * future command overlap and queuing | 512 | * future command overlap and queuing |
513 | */ | 513 | */ |
514 | /* HDIO_GET_IDENTITY currently returns only words 0 through 70 */ | ||
515 | unsigned short words71_74[4]; /* reserved words 71-74 | 514 | unsigned short words71_74[4]; /* reserved words 71-74 |
516 | * for IDENTIFY PACKET DEVICE command | 515 | * for IDENTIFY PACKET DEVICE command |
517 | */ | 516 | */ |
diff --git a/include/linux/ide.h b/include/linux/ide.h index fe235b65207e..25087aead657 100644 --- a/include/linux/ide.h +++ b/include/linux/ide.h | |||
@@ -797,6 +797,7 @@ typedef struct hwif_s { | |||
797 | struct scatterlist *sg_table; | 797 | struct scatterlist *sg_table; |
798 | int sg_max_nents; /* Maximum number of entries in it */ | 798 | int sg_max_nents; /* Maximum number of entries in it */ |
799 | int sg_nents; /* Current number of entries in it */ | 799 | int sg_nents; /* Current number of entries in it */ |
800 | int orig_sg_nents; | ||
800 | int sg_dma_direction; /* dma transfer direction */ | 801 | int sg_dma_direction; /* dma transfer direction */ |
801 | 802 | ||
802 | /* data phase of the active command (currently only valid for PIO/DMA) */ | 803 | /* data phase of the active command (currently only valid for PIO/DMA) */ |
@@ -866,6 +867,7 @@ struct ide_host { | |||
866 | unsigned int n_ports; | 867 | unsigned int n_ports; |
867 | struct device *dev[2]; | 868 | struct device *dev[2]; |
868 | unsigned int (*init_chipset)(struct pci_dev *); | 869 | unsigned int (*init_chipset)(struct pci_dev *); |
870 | irq_handler_t irq_handler; | ||
869 | unsigned long host_flags; | 871 | unsigned long host_flags; |
870 | void *host_priv; | 872 | void *host_priv; |
871 | ide_hwif_t *cur_port; /* for hosts requiring serialization */ | 873 | ide_hwif_t *cur_port; /* for hosts requiring serialization */ |
diff --git a/include/linux/libata.h b/include/linux/libata.h index 5d87bc09a1f5..dc18b87ed722 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h | |||
@@ -275,7 +275,7 @@ enum { | |||
275 | * advised to wait only for the following duration before | 275 | * advised to wait only for the following duration before |
276 | * doing SRST. | 276 | * doing SRST. |
277 | */ | 277 | */ |
278 | ATA_TMOUT_PMP_SRST_WAIT = 1000, | 278 | ATA_TMOUT_PMP_SRST_WAIT = 5000, |
279 | 279 | ||
280 | /* ATA bus states */ | 280 | /* ATA bus states */ |
281 | BUS_UNKNOWN = 0, | 281 | BUS_UNKNOWN = 0, |
@@ -530,6 +530,7 @@ struct ata_queued_cmd { | |||
530 | unsigned long flags; /* ATA_QCFLAG_xxx */ | 530 | unsigned long flags; /* ATA_QCFLAG_xxx */ |
531 | unsigned int tag; | 531 | unsigned int tag; |
532 | unsigned int n_elem; | 532 | unsigned int n_elem; |
533 | unsigned int orig_n_elem; | ||
533 | 534 | ||
534 | int dma_dir; | 535 | int dma_dir; |
535 | 536 | ||
@@ -750,7 +751,8 @@ struct ata_port { | |||
750 | acpi_handle acpi_handle; | 751 | acpi_handle acpi_handle; |
751 | struct ata_acpi_gtm __acpi_init_gtm; /* use ata_acpi_init_gtm() */ | 752 | struct ata_acpi_gtm __acpi_init_gtm; /* use ata_acpi_init_gtm() */ |
752 | #endif | 753 | #endif |
753 | u8 sector_buf[ATA_SECT_SIZE]; /* owned by EH */ | 754 | /* owned by EH */ |
755 | u8 sector_buf[ATA_SECT_SIZE] ____cacheline_aligned; | ||
754 | }; | 756 | }; |
755 | 757 | ||
756 | /* The following initializer overrides a method to NULL whether one of | 758 | /* The following initializer overrides a method to NULL whether one of |
diff --git a/include/linux/lockd/lockd.h b/include/linux/lockd/lockd.h index aa6fe7026de7..51855dfd8adb 100644 --- a/include/linux/lockd/lockd.h +++ b/include/linux/lockd/lockd.h | |||
@@ -346,6 +346,7 @@ static inline int __nlm_cmp_addr4(const struct sockaddr *sap1, | |||
346 | return sin1->sin_addr.s_addr == sin2->sin_addr.s_addr; | 346 | return sin1->sin_addr.s_addr == sin2->sin_addr.s_addr; |
347 | } | 347 | } |
348 | 348 | ||
349 | #if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE) | ||
349 | static inline int __nlm_cmp_addr6(const struct sockaddr *sap1, | 350 | static inline int __nlm_cmp_addr6(const struct sockaddr *sap1, |
350 | const struct sockaddr *sap2) | 351 | const struct sockaddr *sap2) |
351 | { | 352 | { |
@@ -353,6 +354,13 @@ static inline int __nlm_cmp_addr6(const struct sockaddr *sap1, | |||
353 | const struct sockaddr_in6 *sin2 = (const struct sockaddr_in6 *)sap2; | 354 | const struct sockaddr_in6 *sin2 = (const struct sockaddr_in6 *)sap2; |
354 | return ipv6_addr_equal(&sin1->sin6_addr, &sin2->sin6_addr); | 355 | return ipv6_addr_equal(&sin1->sin6_addr, &sin2->sin6_addr); |
355 | } | 356 | } |
357 | #else /* !(CONFIG_IPV6 || CONFIG_IPV6_MODULE) */ | ||
358 | static inline int __nlm_cmp_addr6(const struct sockaddr *sap1, | ||
359 | const struct sockaddr *sap2) | ||
360 | { | ||
361 | return 0; | ||
362 | } | ||
363 | #endif /* !(CONFIG_IPV6 || CONFIG_IPV6_MODULE) */ | ||
356 | 364 | ||
357 | /* | 365 | /* |
358 | * Compare two host addresses | 366 | * Compare two host addresses |
diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h index 92915e81443f..d84feb7bdbf0 100644 --- a/include/linux/mm_types.h +++ b/include/linux/mm_types.h | |||
@@ -276,4 +276,7 @@ struct mm_struct { | |||
276 | #endif | 276 | #endif |
277 | }; | 277 | }; |
278 | 278 | ||
279 | /* Future-safe accessor for struct mm_struct's cpu_vm_mask. */ | ||
280 | #define mm_cpumask(mm) (&(mm)->cpu_vm_mask) | ||
281 | |||
279 | #endif /* _LINUX_MM_TYPES_H */ | 282 | #endif /* _LINUX_MM_TYPES_H */ |
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index ec54785d34f9..659366734f3f 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h | |||
@@ -1079,6 +1079,7 @@ extern void synchronize_net(void); | |||
1079 | extern int register_netdevice_notifier(struct notifier_block *nb); | 1079 | extern int register_netdevice_notifier(struct notifier_block *nb); |
1080 | extern int unregister_netdevice_notifier(struct notifier_block *nb); | 1080 | extern int unregister_netdevice_notifier(struct notifier_block *nb); |
1081 | extern int init_dummy_netdev(struct net_device *dev); | 1081 | extern int init_dummy_netdev(struct net_device *dev); |
1082 | extern void netdev_resync_ops(struct net_device *dev); | ||
1082 | 1083 | ||
1083 | extern int call_netdevice_notifiers(unsigned long val, struct net_device *dev); | 1084 | extern int call_netdevice_notifiers(unsigned long val, struct net_device *dev); |
1084 | extern struct net_device *dev_get_by_index(struct net *net, int ifindex); | 1085 | extern struct net_device *dev_get_by_index(struct net *net, int ifindex); |
diff --git a/include/linux/nfs_xdr.h b/include/linux/nfs_xdr.h index a550b528319f..2e5f00066afd 100644 --- a/include/linux/nfs_xdr.h +++ b/include/linux/nfs_xdr.h | |||
@@ -406,6 +406,8 @@ struct nfs3_setaclargs { | |||
406 | int mask; | 406 | int mask; |
407 | struct posix_acl * acl_access; | 407 | struct posix_acl * acl_access; |
408 | struct posix_acl * acl_default; | 408 | struct posix_acl * acl_default; |
409 | size_t len; | ||
410 | unsigned int npages; | ||
409 | struct page ** pages; | 411 | struct page ** pages; |
410 | }; | 412 | }; |
411 | 413 | ||
diff --git a/include/linux/nfsacl.h b/include/linux/nfsacl.h index 54487a99beb8..43011b69297c 100644 --- a/include/linux/nfsacl.h +++ b/include/linux/nfsacl.h | |||
@@ -37,6 +37,9 @@ | |||
37 | #define NFSACL_MAXPAGES ((2*(8+12*NFS_ACL_MAX_ENTRIES) + PAGE_SIZE-1) \ | 37 | #define NFSACL_MAXPAGES ((2*(8+12*NFS_ACL_MAX_ENTRIES) + PAGE_SIZE-1) \ |
38 | >> PAGE_SHIFT) | 38 | >> PAGE_SHIFT) |
39 | 39 | ||
40 | #define NFS_ACL_MAX_ENTRIES_INLINE (5) | ||
41 | #define NFS_ACL_INLINE_BUFSIZE ((2*(2+3*NFS_ACL_MAX_ENTRIES_INLINE)) << 2) | ||
42 | |||
40 | static inline unsigned int | 43 | static inline unsigned int |
41 | nfsacl_size(struct posix_acl *acl_access, struct posix_acl *acl_default) | 44 | nfsacl_size(struct posix_acl *acl_access, struct posix_acl *acl_default) |
42 | { | 45 | { |
diff --git a/include/linux/sched.h b/include/linux/sched.h index 8c216e057c94..011db2f4c94c 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h | |||
@@ -1419,6 +1419,9 @@ struct task_struct { | |||
1419 | #endif | 1419 | #endif |
1420 | }; | 1420 | }; |
1421 | 1421 | ||
1422 | /* Future-safe accessor for struct task_struct's cpus_allowed. */ | ||
1423 | #define tsk_cpumask(tsk) (&(tsk)->cpus_allowed) | ||
1424 | |||
1422 | /* | 1425 | /* |
1423 | * Priority of a process goes from 0..MAX_PRIO-1, valid RT | 1426 | * Priority of a process goes from 0..MAX_PRIO-1, valid RT |
1424 | * priority is 0..MAX_RT_PRIO-1, and SCHED_NORMAL/SCHED_BATCH | 1427 | * priority is 0..MAX_RT_PRIO-1, and SCHED_NORMAL/SCHED_BATCH |
diff --git a/include/linux/serio.h b/include/linux/serio.h index 1bcb357a01a1..e0417e4d3f15 100644 --- a/include/linux/serio.h +++ b/include/linux/serio.h | |||
@@ -212,7 +212,7 @@ static inline void serio_unpin_driver(struct serio *serio) | |||
212 | #define SERIO_FUJITSU 0x35 | 212 | #define SERIO_FUJITSU 0x35 |
213 | #define SERIO_ZHENHUA 0x36 | 213 | #define SERIO_ZHENHUA 0x36 |
214 | #define SERIO_INEXIO 0x37 | 214 | #define SERIO_INEXIO 0x37 |
215 | #define SERIO_TOUCHIT213 0x37 | 215 | #define SERIO_TOUCHIT213 0x38 |
216 | #define SERIO_W8001 0x39 | 216 | #define SERIO_W8001 0x39 |
217 | 217 | ||
218 | #endif | 218 | #endif |
diff --git a/include/net/net_namespace.h b/include/net/net_namespace.h index 6fc13d905c5f..ded434b032a4 100644 --- a/include/net/net_namespace.h +++ b/include/net/net_namespace.h | |||
@@ -109,11 +109,6 @@ extern struct list_head net_namespace_list; | |||
109 | #ifdef CONFIG_NET_NS | 109 | #ifdef CONFIG_NET_NS |
110 | extern void __put_net(struct net *net); | 110 | extern void __put_net(struct net *net); |
111 | 111 | ||
112 | static inline int net_alive(struct net *net) | ||
113 | { | ||
114 | return net && atomic_read(&net->count); | ||
115 | } | ||
116 | |||
117 | static inline struct net *get_net(struct net *net) | 112 | static inline struct net *get_net(struct net *net) |
118 | { | 113 | { |
119 | atomic_inc(&net->count); | 114 | atomic_inc(&net->count); |
@@ -145,11 +140,6 @@ int net_eq(const struct net *net1, const struct net *net2) | |||
145 | } | 140 | } |
146 | #else | 141 | #else |
147 | 142 | ||
148 | static inline int net_alive(struct net *net) | ||
149 | { | ||
150 | return 1; | ||
151 | } | ||
152 | |||
153 | static inline struct net *get_net(struct net *net) | 143 | static inline struct net *get_net(struct net *net) |
154 | { | 144 | { |
155 | return net; | 145 | return net; |
@@ -234,6 +224,23 @@ struct pernet_operations { | |||
234 | void (*exit)(struct net *net); | 224 | void (*exit)(struct net *net); |
235 | }; | 225 | }; |
236 | 226 | ||
227 | /* | ||
228 | * Use these carefully. If you implement a network device and it | ||
229 | * needs per network namespace operations use device pernet operations, | ||
230 | * otherwise use pernet subsys operations. | ||
231 | * | ||
232 | * This is critically important. Most of the network code cleanup | ||
233 | * runs with the assumption that dev_remove_pack has been called so no | ||
234 | * new packets will arrive during and after the cleanup functions have | ||
235 | * been called. dev_remove_pack is not per namespace so instead the | ||
236 | * guarantee of no more packets arriving in a network namespace is | ||
237 | * provided by ensuring that all network devices and all sockets have | ||
238 | * left the network namespace before the cleanup methods are called. | ||
239 | * | ||
240 | * For the longest time the ipv4 icmp code was registered as a pernet | ||
241 | * device which caused kernel oops, and panics during network | ||
242 | * namespace cleanup. So please don't get this wrong. | ||
243 | */ | ||
237 | extern int register_pernet_subsys(struct pernet_operations *); | 244 | extern int register_pernet_subsys(struct pernet_operations *); |
238 | extern void unregister_pernet_subsys(struct pernet_operations *); | 245 | extern void unregister_pernet_subsys(struct pernet_operations *); |
239 | extern int register_pernet_gen_subsys(int *id, struct pernet_operations *); | 246 | extern int register_pernet_gen_subsys(int *id, struct pernet_operations *); |
diff --git a/include/scsi/fc/fc_fcoe.h b/include/scsi/fc/fc_fcoe.h index 57aaa8f0d613..f271d9cc0fc2 100644 --- a/include/scsi/fc/fc_fcoe.h +++ b/include/scsi/fc/fc_fcoe.h | |||
@@ -31,10 +31,6 @@ | |||
31 | #define ETH_P_FCOE 0x8906 /* FCOE ether type */ | 31 | #define ETH_P_FCOE 0x8906 /* FCOE ether type */ |
32 | #endif | 32 | #endif |
33 | 33 | ||
34 | #ifndef ETH_P_8021Q | ||
35 | #define ETH_P_8021Q 0x8100 | ||
36 | #endif | ||
37 | |||
38 | /* | 34 | /* |
39 | * FC_FCOE_OUI hasn't been standardized yet. XXX TBD. | 35 | * FC_FCOE_OUI hasn't been standardized yet. XXX TBD. |
40 | */ | 36 | */ |
diff --git a/include/scsi/fc/fc_fs.h b/include/scsi/fc/fc_fs.h index 3e4801d2bdbb..1b7af3a64c7c 100644 --- a/include/scsi/fc/fc_fs.h +++ b/include/scsi/fc/fc_fs.h | |||
@@ -337,4 +337,9 @@ enum fc_pf_rjt_reason { | |||
337 | FC_RJT_VENDOR = 0xff, /* vendor specific reject */ | 337 | FC_RJT_VENDOR = 0xff, /* vendor specific reject */ |
338 | }; | 338 | }; |
339 | 339 | ||
340 | /* default timeout values */ | ||
341 | |||
342 | #define FC_DEF_E_D_TOV 2000UL | ||
343 | #define FC_DEF_R_A_TOV 10000UL | ||
344 | |||
340 | #endif /* _FC_FS_H_ */ | 345 | #endif /* _FC_FS_H_ */ |
diff --git a/include/scsi/libfc.h b/include/scsi/libfc.h index 9f2876397dda..a2e126b86e3e 100644 --- a/include/scsi/libfc.h +++ b/include/scsi/libfc.h | |||
@@ -68,9 +68,6 @@ | |||
68 | /* | 68 | /* |
69 | * FC HBA status | 69 | * FC HBA status |
70 | */ | 70 | */ |
71 | #define FC_PAUSE (1 << 1) | ||
72 | #define FC_LINK_UP (1 << 0) | ||
73 | |||
74 | enum fc_lport_state { | 71 | enum fc_lport_state { |
75 | LPORT_ST_NONE = 0, | 72 | LPORT_ST_NONE = 0, |
76 | LPORT_ST_FLOGI, | 73 | LPORT_ST_FLOGI, |
@@ -339,31 +336,17 @@ struct fc_exch { | |||
339 | 336 | ||
340 | struct libfc_function_template { | 337 | struct libfc_function_template { |
341 | 338 | ||
342 | /** | ||
343 | * Mandatory Fields | ||
344 | * | ||
345 | * These handlers must be implemented by the LLD. | ||
346 | */ | ||
347 | |||
348 | /* | 339 | /* |
349 | * Interface to send a FC frame | 340 | * Interface to send a FC frame |
350 | */ | ||
351 | int (*frame_send)(struct fc_lport *lp, struct fc_frame *fp); | ||
352 | |||
353 | /** | ||
354 | * Optional Fields | ||
355 | * | 341 | * |
356 | * The LLD may choose to implement any of the following handlers. | 342 | * STATUS: REQUIRED |
357 | * If LLD doesn't specify hander and leaves its pointer NULL then | ||
358 | * the default libfc function will be used for that handler. | ||
359 | */ | ||
360 | |||
361 | /** | ||
362 | * ELS/CT interfaces | ||
363 | */ | 343 | */ |
344 | int (*frame_send)(struct fc_lport *lp, struct fc_frame *fp); | ||
364 | 345 | ||
365 | /* | 346 | /* |
366 | * elsct_send - sends ELS/CT frame | 347 | * Interface to send ELS/CT frames |
348 | * | ||
349 | * STATUS: OPTIONAL | ||
367 | */ | 350 | */ |
368 | struct fc_seq *(*elsct_send)(struct fc_lport *lport, | 351 | struct fc_seq *(*elsct_send)(struct fc_lport *lport, |
369 | struct fc_rport *rport, | 352 | struct fc_rport *rport, |
@@ -373,9 +356,6 @@ struct libfc_function_template { | |||
373 | struct fc_frame *fp, | 356 | struct fc_frame *fp, |
374 | void *arg), | 357 | void *arg), |
375 | void *arg, u32 timer_msec); | 358 | void *arg, u32 timer_msec); |
376 | /** | ||
377 | * Exhance Manager interfaces | ||
378 | */ | ||
379 | 359 | ||
380 | /* | 360 | /* |
381 | * Send the FC frame payload using a new exchange and sequence. | 361 | * Send the FC frame payload using a new exchange and sequence. |
@@ -407,6 +387,8 @@ struct libfc_function_template { | |||
407 | * timer_msec argument is specified. The timer is canceled when | 387 | * timer_msec argument is specified. The timer is canceled when |
408 | * it fires or when the exchange is done. The exchange timeout handler | 388 | * it fires or when the exchange is done. The exchange timeout handler |
409 | * is registered by EM layer. | 389 | * is registered by EM layer. |
390 | * | ||
391 | * STATUS: OPTIONAL | ||
410 | */ | 392 | */ |
411 | struct fc_seq *(*exch_seq_send)(struct fc_lport *lp, | 393 | struct fc_seq *(*exch_seq_send)(struct fc_lport *lp, |
412 | struct fc_frame *fp, | 394 | struct fc_frame *fp, |
@@ -418,14 +400,18 @@ struct libfc_function_template { | |||
418 | void *arg, unsigned int timer_msec); | 400 | void *arg, unsigned int timer_msec); |
419 | 401 | ||
420 | /* | 402 | /* |
421 | * send a frame using existing sequence and exchange. | 403 | * Send a frame using an existing sequence and exchange. |
404 | * | ||
405 | * STATUS: OPTIONAL | ||
422 | */ | 406 | */ |
423 | int (*seq_send)(struct fc_lport *lp, struct fc_seq *sp, | 407 | int (*seq_send)(struct fc_lport *lp, struct fc_seq *sp, |
424 | struct fc_frame *fp); | 408 | struct fc_frame *fp); |
425 | 409 | ||
426 | /* | 410 | /* |
427 | * Send ELS response using mainly infomation | 411 | * Send an ELS response using infomation from a previous |
428 | * in exchange and sequence in EM layer. | 412 | * exchange and sequence. |
413 | * | ||
414 | * STATUS: OPTIONAL | ||
429 | */ | 415 | */ |
430 | void (*seq_els_rsp_send)(struct fc_seq *sp, enum fc_els_cmd els_cmd, | 416 | void (*seq_els_rsp_send)(struct fc_seq *sp, enum fc_els_cmd els_cmd, |
431 | struct fc_seq_els_data *els_data); | 417 | struct fc_seq_els_data *els_data); |
@@ -437,6 +423,8 @@ struct libfc_function_template { | |||
437 | * A timer_msec can be specified for abort timeout, if non-zero | 423 | * A timer_msec can be specified for abort timeout, if non-zero |
438 | * timer_msec value is specified then exchange resp handler | 424 | * timer_msec value is specified then exchange resp handler |
439 | * will be called with timeout error if no response to abort. | 425 | * will be called with timeout error if no response to abort. |
426 | * | ||
427 | * STATUS: OPTIONAL | ||
440 | */ | 428 | */ |
441 | int (*seq_exch_abort)(const struct fc_seq *req_sp, | 429 | int (*seq_exch_abort)(const struct fc_seq *req_sp, |
442 | unsigned int timer_msec); | 430 | unsigned int timer_msec); |
@@ -444,6 +432,8 @@ struct libfc_function_template { | |||
444 | /* | 432 | /* |
445 | * Indicate that an exchange/sequence tuple is complete and the memory | 433 | * Indicate that an exchange/sequence tuple is complete and the memory |
446 | * allocated for the related objects may be freed. | 434 | * allocated for the related objects may be freed. |
435 | * | ||
436 | * STATUS: OPTIONAL | ||
447 | */ | 437 | */ |
448 | void (*exch_done)(struct fc_seq *sp); | 438 | void (*exch_done)(struct fc_seq *sp); |
449 | 439 | ||
@@ -451,6 +441,8 @@ struct libfc_function_template { | |||
451 | * Assigns a EM and a free XID for an new exchange and then | 441 | * Assigns a EM and a free XID for an new exchange and then |
452 | * allocates a new exchange and sequence pair. | 442 | * allocates a new exchange and sequence pair. |
453 | * The fp can be used to determine free XID. | 443 | * The fp can be used to determine free XID. |
444 | * | ||
445 | * STATUS: OPTIONAL | ||
454 | */ | 446 | */ |
455 | struct fc_exch *(*exch_get)(struct fc_lport *lp, struct fc_frame *fp); | 447 | struct fc_exch *(*exch_get)(struct fc_lport *lp, struct fc_frame *fp); |
456 | 448 | ||
@@ -458,12 +450,16 @@ struct libfc_function_template { | |||
458 | * Release previously assigned XID by exch_get API. | 450 | * Release previously assigned XID by exch_get API. |
459 | * The LLD may implement this if XID is assigned by LLD | 451 | * The LLD may implement this if XID is assigned by LLD |
460 | * in exch_get(). | 452 | * in exch_get(). |
453 | * | ||
454 | * STATUS: OPTIONAL | ||
461 | */ | 455 | */ |
462 | void (*exch_put)(struct fc_lport *lp, struct fc_exch_mgr *mp, | 456 | void (*exch_put)(struct fc_lport *lp, struct fc_exch_mgr *mp, |
463 | u16 ex_id); | 457 | u16 ex_id); |
464 | 458 | ||
465 | /* | 459 | /* |
466 | * Start a new sequence on the same exchange/sequence tuple. | 460 | * Start a new sequence on the same exchange/sequence tuple. |
461 | * | ||
462 | * STATUS: OPTIONAL | ||
467 | */ | 463 | */ |
468 | struct fc_seq *(*seq_start_next)(struct fc_seq *sp); | 464 | struct fc_seq *(*seq_start_next)(struct fc_seq *sp); |
469 | 465 | ||
@@ -471,26 +467,38 @@ struct libfc_function_template { | |||
471 | * Reset an exchange manager, completing all sequences and exchanges. | 467 | * Reset an exchange manager, completing all sequences and exchanges. |
472 | * If s_id is non-zero, reset only exchanges originating from that FID. | 468 | * If s_id is non-zero, reset only exchanges originating from that FID. |
473 | * If d_id is non-zero, reset only exchanges sending to that FID. | 469 | * If d_id is non-zero, reset only exchanges sending to that FID. |
470 | * | ||
471 | * STATUS: OPTIONAL | ||
474 | */ | 472 | */ |
475 | void (*exch_mgr_reset)(struct fc_exch_mgr *, | 473 | void (*exch_mgr_reset)(struct fc_lport *, |
476 | u32 s_id, u32 d_id); | 474 | u32 s_id, u32 d_id); |
477 | 475 | ||
478 | void (*rport_flush_queue)(void); | 476 | /* |
479 | /** | 477 | * Flush the rport work queue. Generally used before shutdown. |
480 | * Local Port interfaces | 478 | * |
479 | * STATUS: OPTIONAL | ||
481 | */ | 480 | */ |
481 | void (*rport_flush_queue)(void); | ||
482 | 482 | ||
483 | /* | 483 | /* |
484 | * Receive a frame to a local port. | 484 | * Receive a frame for a local port. |
485 | * | ||
486 | * STATUS: OPTIONAL | ||
485 | */ | 487 | */ |
486 | void (*lport_recv)(struct fc_lport *lp, struct fc_seq *sp, | 488 | void (*lport_recv)(struct fc_lport *lp, struct fc_seq *sp, |
487 | struct fc_frame *fp); | 489 | struct fc_frame *fp); |
488 | 490 | ||
491 | /* | ||
492 | * Reset the local port. | ||
493 | * | ||
494 | * STATUS: OPTIONAL | ||
495 | */ | ||
489 | int (*lport_reset)(struct fc_lport *); | 496 | int (*lport_reset)(struct fc_lport *); |
490 | 497 | ||
491 | /** | 498 | /* |
492 | * Remote Port interfaces | 499 | * Create a remote port |
493 | */ | 500 | */ |
501 | struct fc_rport *(*rport_create)(struct fc_disc_port *); | ||
494 | 502 | ||
495 | /* | 503 | /* |
496 | * Initiates the RP state machine. It is called from the LP module. | 504 | * Initiates the RP state machine. It is called from the LP module. |
@@ -500,26 +508,33 @@ struct libfc_function_template { | |||
500 | * - PLOGI | 508 | * - PLOGI |
501 | * - PRLI | 509 | * - PRLI |
502 | * - RTV | 510 | * - RTV |
511 | * | ||
512 | * STATUS: OPTIONAL | ||
503 | */ | 513 | */ |
504 | int (*rport_login)(struct fc_rport *rport); | 514 | int (*rport_login)(struct fc_rport *rport); |
505 | 515 | ||
506 | /* | 516 | /* |
507 | * Logoff, and remove the rport from the transport if | 517 | * Logoff, and remove the rport from the transport if |
508 | * it had been added. This will send a LOGO to the target. | 518 | * it had been added. This will send a LOGO to the target. |
519 | * | ||
520 | * STATUS: OPTIONAL | ||
509 | */ | 521 | */ |
510 | int (*rport_logoff)(struct fc_rport *rport); | 522 | int (*rport_logoff)(struct fc_rport *rport); |
511 | 523 | ||
512 | /* | 524 | /* |
513 | * Recieve a request from a remote port. | 525 | * Recieve a request from a remote port. |
526 | * | ||
527 | * STATUS: OPTIONAL | ||
514 | */ | 528 | */ |
515 | void (*rport_recv_req)(struct fc_seq *, struct fc_frame *, | 529 | void (*rport_recv_req)(struct fc_seq *, struct fc_frame *, |
516 | struct fc_rport *); | 530 | struct fc_rport *); |
517 | 531 | ||
518 | struct fc_rport *(*rport_lookup)(const struct fc_lport *, u32); | 532 | /* |
519 | 533 | * lookup an rport by it's port ID. | |
520 | /** | 534 | * |
521 | * FCP interfaces | 535 | * STATUS: OPTIONAL |
522 | */ | 536 | */ |
537 | struct fc_rport *(*rport_lookup)(const struct fc_lport *, u32); | ||
523 | 538 | ||
524 | /* | 539 | /* |
525 | * Send a fcp cmd from fsp pkt. | 540 | * Send a fcp cmd from fsp pkt. |
@@ -527,30 +542,38 @@ struct libfc_function_template { | |||
527 | * | 542 | * |
528 | * The resp handler is called when FCP_RSP received. | 543 | * The resp handler is called when FCP_RSP received. |
529 | * | 544 | * |
545 | * STATUS: OPTIONAL | ||
530 | */ | 546 | */ |
531 | int (*fcp_cmd_send)(struct fc_lport *lp, struct fc_fcp_pkt *fsp, | 547 | int (*fcp_cmd_send)(struct fc_lport *lp, struct fc_fcp_pkt *fsp, |
532 | void (*resp)(struct fc_seq *, struct fc_frame *fp, | 548 | void (*resp)(struct fc_seq *, struct fc_frame *fp, |
533 | void *arg)); | 549 | void *arg)); |
534 | 550 | ||
535 | /* | 551 | /* |
536 | * Used at least durring linkdown and reset | 552 | * Cleanup the FCP layer, used durring link down and reset |
553 | * | ||
554 | * STATUS: OPTIONAL | ||
537 | */ | 555 | */ |
538 | void (*fcp_cleanup)(struct fc_lport *lp); | 556 | void (*fcp_cleanup)(struct fc_lport *lp); |
539 | 557 | ||
540 | /* | 558 | /* |
541 | * Abort all I/O on a local port | 559 | * Abort all I/O on a local port |
560 | * | ||
561 | * STATUS: OPTIONAL | ||
542 | */ | 562 | */ |
543 | void (*fcp_abort_io)(struct fc_lport *lp); | 563 | void (*fcp_abort_io)(struct fc_lport *lp); |
544 | 564 | ||
545 | /** | 565 | /* |
546 | * Discovery interfaces | 566 | * Receive a request for the discovery layer. |
567 | * | ||
568 | * STATUS: OPTIONAL | ||
547 | */ | 569 | */ |
548 | |||
549 | void (*disc_recv_req)(struct fc_seq *, | 570 | void (*disc_recv_req)(struct fc_seq *, |
550 | struct fc_frame *, struct fc_lport *); | 571 | struct fc_frame *, struct fc_lport *); |
551 | 572 | ||
552 | /* | 573 | /* |
553 | * Start discovery for a local port. | 574 | * Start discovery for a local port. |
575 | * | ||
576 | * STATUS: OPTIONAL | ||
554 | */ | 577 | */ |
555 | void (*disc_start)(void (*disc_callback)(struct fc_lport *, | 578 | void (*disc_start)(void (*disc_callback)(struct fc_lport *, |
556 | enum fc_disc_event), | 579 | enum fc_disc_event), |
@@ -559,6 +582,8 @@ struct libfc_function_template { | |||
559 | /* | 582 | /* |
560 | * Stop discovery for a given lport. This will remove | 583 | * Stop discovery for a given lport. This will remove |
561 | * all discovered rports | 584 | * all discovered rports |
585 | * | ||
586 | * STATUS: OPTIONAL | ||
562 | */ | 587 | */ |
563 | void (*disc_stop) (struct fc_lport *); | 588 | void (*disc_stop) (struct fc_lport *); |
564 | 589 | ||
@@ -566,6 +591,8 @@ struct libfc_function_template { | |||
566 | * Stop discovery for a given lport. This will block | 591 | * Stop discovery for a given lport. This will block |
567 | * until all discovered rports are deleted from the | 592 | * until all discovered rports are deleted from the |
568 | * FC transport class | 593 | * FC transport class |
594 | * | ||
595 | * STATUS: OPTIONAL | ||
569 | */ | 596 | */ |
570 | void (*disc_stop_final) (struct fc_lport *); | 597 | void (*disc_stop_final) (struct fc_lport *); |
571 | }; | 598 | }; |
@@ -603,7 +630,8 @@ struct fc_lport { | |||
603 | 630 | ||
604 | /* Operational Information */ | 631 | /* Operational Information */ |
605 | struct libfc_function_template tt; | 632 | struct libfc_function_template tt; |
606 | u16 link_status; | 633 | u8 link_up; |
634 | u8 qfull; | ||
607 | enum fc_lport_state state; | 635 | enum fc_lport_state state; |
608 | unsigned long boot_time; | 636 | unsigned long boot_time; |
609 | 637 | ||
@@ -637,7 +665,7 @@ struct fc_lport { | |||
637 | struct delayed_work disc_work; | 665 | struct delayed_work disc_work; |
638 | }; | 666 | }; |
639 | 667 | ||
640 | /** | 668 | /* |
641 | * FC_LPORT HELPER FUNCTIONS | 669 | * FC_LPORT HELPER FUNCTIONS |
642 | *****************************/ | 670 | *****************************/ |
643 | static inline void *lport_priv(const struct fc_lport *lp) | 671 | static inline void *lport_priv(const struct fc_lport *lp) |
@@ -669,7 +697,7 @@ static inline void fc_lport_state_enter(struct fc_lport *lp, | |||
669 | } | 697 | } |
670 | 698 | ||
671 | 699 | ||
672 | /** | 700 | /* |
673 | * LOCAL PORT LAYER | 701 | * LOCAL PORT LAYER |
674 | *****************************/ | 702 | *****************************/ |
675 | int fc_lport_init(struct fc_lport *lp); | 703 | int fc_lport_init(struct fc_lport *lp); |
@@ -704,12 +732,6 @@ void fc_linkup(struct fc_lport *); | |||
704 | void fc_linkdown(struct fc_lport *); | 732 | void fc_linkdown(struct fc_lport *); |
705 | 733 | ||
706 | /* | 734 | /* |
707 | * Pause and unpause traffic. | ||
708 | */ | ||
709 | void fc_pause(struct fc_lport *); | ||
710 | void fc_unpause(struct fc_lport *); | ||
711 | |||
712 | /* | ||
713 | * Configure the local port. | 735 | * Configure the local port. |
714 | */ | 736 | */ |
715 | int fc_lport_config(struct fc_lport *); | 737 | int fc_lport_config(struct fc_lport *); |
@@ -725,19 +747,19 @@ int fc_lport_reset(struct fc_lport *); | |||
725 | int fc_set_mfs(struct fc_lport *lp, u32 mfs); | 747 | int fc_set_mfs(struct fc_lport *lp, u32 mfs); |
726 | 748 | ||
727 | 749 | ||
728 | /** | 750 | /* |
729 | * REMOTE PORT LAYER | 751 | * REMOTE PORT LAYER |
730 | *****************************/ | 752 | *****************************/ |
731 | int fc_rport_init(struct fc_lport *lp); | 753 | int fc_rport_init(struct fc_lport *lp); |
732 | void fc_rport_terminate_io(struct fc_rport *rp); | 754 | void fc_rport_terminate_io(struct fc_rport *rp); |
733 | 755 | ||
734 | /** | 756 | /* |
735 | * DISCOVERY LAYER | 757 | * DISCOVERY LAYER |
736 | *****************************/ | 758 | *****************************/ |
737 | int fc_disc_init(struct fc_lport *lp); | 759 | int fc_disc_init(struct fc_lport *lp); |
738 | 760 | ||
739 | 761 | ||
740 | /** | 762 | /* |
741 | * SCSI LAYER | 763 | * SCSI LAYER |
742 | *****************************/ | 764 | *****************************/ |
743 | /* | 765 | /* |
@@ -798,7 +820,7 @@ int fc_change_queue_type(struct scsi_device *sdev, int tag_type); | |||
798 | */ | 820 | */ |
799 | void fc_fcp_destroy(struct fc_lport *); | 821 | void fc_fcp_destroy(struct fc_lport *); |
800 | 822 | ||
801 | /** | 823 | /* |
802 | * ELS/CT interface | 824 | * ELS/CT interface |
803 | *****************************/ | 825 | *****************************/ |
804 | /* | 826 | /* |
@@ -807,7 +829,7 @@ void fc_fcp_destroy(struct fc_lport *); | |||
807 | int fc_elsct_init(struct fc_lport *lp); | 829 | int fc_elsct_init(struct fc_lport *lp); |
808 | 830 | ||
809 | 831 | ||
810 | /** | 832 | /* |
811 | * EXCHANGE MANAGER LAYER | 833 | * EXCHANGE MANAGER LAYER |
812 | *****************************/ | 834 | *****************************/ |
813 | /* | 835 | /* |
@@ -916,7 +938,7 @@ struct fc_seq *fc_seq_start_next(struct fc_seq *sp); | |||
916 | * If s_id is non-zero, reset only exchanges originating from that FID. | 938 | * If s_id is non-zero, reset only exchanges originating from that FID. |
917 | * If d_id is non-zero, reset only exchanges sending to that FID. | 939 | * If d_id is non-zero, reset only exchanges sending to that FID. |
918 | */ | 940 | */ |
919 | void fc_exch_mgr_reset(struct fc_exch_mgr *, u32 s_id, u32 d_id); | 941 | void fc_exch_mgr_reset(struct fc_lport *, u32 s_id, u32 d_id); |
920 | 942 | ||
921 | /* | 943 | /* |
922 | * Functions for fc_functions_template | 944 | * Functions for fc_functions_template |
diff --git a/include/scsi/libfcoe.h b/include/scsi/libfcoe.h index 89fdbb9a6a1b..941818f29f59 100644 --- a/include/scsi/libfcoe.h +++ b/include/scsi/libfcoe.h | |||
@@ -46,6 +46,7 @@ struct fcoe_softc { | |||
46 | struct net_device *phys_dev; /* device with ethtool_ops */ | 46 | struct net_device *phys_dev; /* device with ethtool_ops */ |
47 | struct packet_type fcoe_packet_type; | 47 | struct packet_type fcoe_packet_type; |
48 | struct sk_buff_head fcoe_pending_queue; | 48 | struct sk_buff_head fcoe_pending_queue; |
49 | u8 fcoe_pending_queue_active; | ||
49 | 50 | ||
50 | u8 dest_addr[ETH_ALEN]; | 51 | u8 dest_addr[ETH_ALEN]; |
51 | u8 ctl_src_addr[ETH_ALEN]; | 52 | u8 ctl_src_addr[ETH_ALEN]; |
@@ -58,16 +59,10 @@ struct fcoe_softc { | |||
58 | u8 address_mode; | 59 | u8 address_mode; |
59 | }; | 60 | }; |
60 | 61 | ||
61 | static inline struct fcoe_softc *fcoe_softc( | ||
62 | const struct fc_lport *lp) | ||
63 | { | ||
64 | return (struct fcoe_softc *)lport_priv(lp); | ||
65 | } | ||
66 | |||
67 | static inline struct net_device *fcoe_netdev( | 62 | static inline struct net_device *fcoe_netdev( |
68 | const struct fc_lport *lp) | 63 | const struct fc_lport *lp) |
69 | { | 64 | { |
70 | return fcoe_softc(lp)->real_dev; | 65 | return ((struct fcoe_softc *)lport_priv(lp))->real_dev; |
71 | } | 66 | } |
72 | 67 | ||
73 | static inline struct fcoe_hdr *skb_fcoe_header(const struct sk_buff *skb) | 68 | static inline struct fcoe_hdr *skb_fcoe_header(const struct sk_buff *skb) |
diff --git a/init/Kconfig b/init/Kconfig index f068071fcc5d..6a5c5fed66c9 100644 --- a/init/Kconfig +++ b/init/Kconfig | |||
@@ -675,6 +675,9 @@ config CC_OPTIMIZE_FOR_SIZE | |||
675 | config SYSCTL | 675 | config SYSCTL |
676 | bool | 676 | bool |
677 | 677 | ||
678 | config ANON_INODES | ||
679 | bool | ||
680 | |||
678 | menuconfig EMBEDDED | 681 | menuconfig EMBEDDED |
679 | bool "Configure standard kernel features (for small systems)" | 682 | bool "Configure standard kernel features (for small systems)" |
680 | help | 683 | help |
@@ -780,18 +783,6 @@ config PCSPKR_PLATFORM | |||
780 | This option allows to disable the internal PC-Speaker | 783 | This option allows to disable the internal PC-Speaker |
781 | support, saving some memory. | 784 | support, saving some memory. |
782 | 785 | ||
783 | config COMPAT_BRK | ||
784 | bool "Disable heap randomization" | ||
785 | default y | ||
786 | help | ||
787 | Randomizing heap placement makes heap exploits harder, but it | ||
788 | also breaks ancient binaries (including anything libc5 based). | ||
789 | This option changes the bootup default to heap randomization | ||
790 | disabled, and can be overriden runtime by setting | ||
791 | /proc/sys/kernel/randomize_va_space to 2. | ||
792 | |||
793 | On non-ancient distros (post-2000 ones) N is usually a safe choice. | ||
794 | |||
795 | config BASE_FULL | 786 | config BASE_FULL |
796 | default y | 787 | default y |
797 | bool "Enable full-sized data structures for core" if EMBEDDED | 788 | bool "Enable full-sized data structures for core" if EMBEDDED |
@@ -809,9 +800,6 @@ config FUTEX | |||
809 | support for "fast userspace mutexes". The resulting kernel may not | 800 | support for "fast userspace mutexes". The resulting kernel may not |
810 | run glibc-based applications correctly. | 801 | run glibc-based applications correctly. |
811 | 802 | ||
812 | config ANON_INODES | ||
813 | bool | ||
814 | |||
815 | config EPOLL | 803 | config EPOLL |
816 | bool "Enable eventpoll support" if EMBEDDED | 804 | bool "Enable eventpoll support" if EMBEDDED |
817 | default y | 805 | default y |
@@ -897,6 +885,18 @@ config SLUB_DEBUG | |||
897 | SLUB sysfs support. /sys/slab will not exist and there will be | 885 | SLUB sysfs support. /sys/slab will not exist and there will be |
898 | no support for cache validation etc. | 886 | no support for cache validation etc. |
899 | 887 | ||
888 | config COMPAT_BRK | ||
889 | bool "Disable heap randomization" | ||
890 | default y | ||
891 | help | ||
892 | Randomizing heap placement makes heap exploits harder, but it | ||
893 | also breaks ancient binaries (including anything libc5 based). | ||
894 | This option changes the bootup default to heap randomization | ||
895 | disabled, and can be overriden runtime by setting | ||
896 | /proc/sys/kernel/randomize_va_space to 2. | ||
897 | |||
898 | On non-ancient distros (post-2000 ones) N is usually a safe choice. | ||
899 | |||
900 | choice | 900 | choice |
901 | prompt "Choose SLAB allocator" | 901 | prompt "Choose SLAB allocator" |
902 | default SLUB | 902 | default SLUB |
diff --git a/kernel/fork.c b/kernel/fork.c index a66fbde20715..4854c2c4a82e 100644 --- a/kernel/fork.c +++ b/kernel/fork.c | |||
@@ -1179,10 +1179,6 @@ static struct task_struct *copy_process(unsigned long clone_flags, | |||
1179 | #endif | 1179 | #endif |
1180 | clear_all_latency_tracing(p); | 1180 | clear_all_latency_tracing(p); |
1181 | 1181 | ||
1182 | /* Our parent execution domain becomes current domain | ||
1183 | These must match for thread signalling to apply */ | ||
1184 | p->parent_exec_id = p->self_exec_id; | ||
1185 | |||
1186 | /* ok, now we should be set up.. */ | 1182 | /* ok, now we should be set up.. */ |
1187 | p->exit_signal = (clone_flags & CLONE_THREAD) ? -1 : (clone_flags & CSIGNAL); | 1183 | p->exit_signal = (clone_flags & CLONE_THREAD) ? -1 : (clone_flags & CSIGNAL); |
1188 | p->pdeath_signal = 0; | 1184 | p->pdeath_signal = 0; |
@@ -1220,10 +1216,13 @@ static struct task_struct *copy_process(unsigned long clone_flags, | |||
1220 | set_task_cpu(p, smp_processor_id()); | 1216 | set_task_cpu(p, smp_processor_id()); |
1221 | 1217 | ||
1222 | /* CLONE_PARENT re-uses the old parent */ | 1218 | /* CLONE_PARENT re-uses the old parent */ |
1223 | if (clone_flags & (CLONE_PARENT|CLONE_THREAD)) | 1219 | if (clone_flags & (CLONE_PARENT|CLONE_THREAD)) { |
1224 | p->real_parent = current->real_parent; | 1220 | p->real_parent = current->real_parent; |
1225 | else | 1221 | p->parent_exec_id = current->parent_exec_id; |
1222 | } else { | ||
1226 | p->real_parent = current; | 1223 | p->real_parent = current; |
1224 | p->parent_exec_id = current->self_exec_id; | ||
1225 | } | ||
1227 | 1226 | ||
1228 | spin_lock(¤t->sighand->siglock); | 1227 | spin_lock(¤t->sighand->siglock); |
1229 | 1228 | ||
diff --git a/kernel/softirq.c b/kernel/softirq.c index bdbe9de9cd8d..9041ea7948fe 100644 --- a/kernel/softirq.c +++ b/kernel/softirq.c | |||
@@ -626,6 +626,7 @@ static int ksoftirqd(void * __bind_cpu) | |||
626 | preempt_enable_no_resched(); | 626 | preempt_enable_no_resched(); |
627 | cond_resched(); | 627 | cond_resched(); |
628 | preempt_disable(); | 628 | preempt_disable(); |
629 | rcu_qsctr_inc((long)__bind_cpu); | ||
629 | } | 630 | } |
630 | preempt_enable(); | 631 | preempt_enable(); |
631 | set_current_state(TASK_INTERRUPTIBLE); | 632 | set_current_state(TASK_INTERRUPTIBLE); |
diff --git a/kernel/tsacct.c b/kernel/tsacct.c index 43f891b05a4b..00d59d048edf 100644 --- a/kernel/tsacct.c +++ b/kernel/tsacct.c | |||
@@ -122,8 +122,10 @@ void acct_update_integrals(struct task_struct *tsk) | |||
122 | if (likely(tsk->mm)) { | 122 | if (likely(tsk->mm)) { |
123 | cputime_t time, dtime; | 123 | cputime_t time, dtime; |
124 | struct timeval value; | 124 | struct timeval value; |
125 | unsigned long flags; | ||
125 | u64 delta; | 126 | u64 delta; |
126 | 127 | ||
128 | local_irq_save(flags); | ||
127 | time = tsk->stime + tsk->utime; | 129 | time = tsk->stime + tsk->utime; |
128 | dtime = cputime_sub(time, tsk->acct_timexpd); | 130 | dtime = cputime_sub(time, tsk->acct_timexpd); |
129 | jiffies_to_timeval(cputime_to_jiffies(dtime), &value); | 131 | jiffies_to_timeval(cputime_to_jiffies(dtime), &value); |
@@ -131,10 +133,12 @@ void acct_update_integrals(struct task_struct *tsk) | |||
131 | delta = delta * USEC_PER_SEC + value.tv_usec; | 133 | delta = delta * USEC_PER_SEC + value.tv_usec; |
132 | 134 | ||
133 | if (delta == 0) | 135 | if (delta == 0) |
134 | return; | 136 | goto out; |
135 | tsk->acct_timexpd = time; | 137 | tsk->acct_timexpd = time; |
136 | tsk->acct_rss_mem1 += delta * get_mm_rss(tsk->mm); | 138 | tsk->acct_rss_mem1 += delta * get_mm_rss(tsk->mm); |
137 | tsk->acct_vm_mem1 += delta * tsk->mm->total_vm; | 139 | tsk->acct_vm_mem1 += delta * tsk->mm->total_vm; |
140 | out: | ||
141 | local_irq_restore(flags); | ||
138 | } | 142 | } |
139 | } | 143 | } |
140 | 144 | ||
diff --git a/kernel/user.c b/kernel/user.c index 6a9b696128c8..fbb300e6191f 100644 --- a/kernel/user.c +++ b/kernel/user.c | |||
@@ -286,14 +286,12 @@ int __init uids_sysfs_init(void) | |||
286 | /* work function to remove sysfs directory for a user and free up | 286 | /* work function to remove sysfs directory for a user and free up |
287 | * corresponding structures. | 287 | * corresponding structures. |
288 | */ | 288 | */ |
289 | static void remove_user_sysfs_dir(struct work_struct *w) | 289 | static void cleanup_user_struct(struct work_struct *w) |
290 | { | 290 | { |
291 | struct user_struct *up = container_of(w, struct user_struct, work); | 291 | struct user_struct *up = container_of(w, struct user_struct, work); |
292 | unsigned long flags; | 292 | unsigned long flags; |
293 | int remove_user = 0; | 293 | int remove_user = 0; |
294 | 294 | ||
295 | if (up->user_ns != &init_user_ns) | ||
296 | return; | ||
297 | /* Make uid_hash_remove() + sysfs_remove_file() + kobject_del() | 295 | /* Make uid_hash_remove() + sysfs_remove_file() + kobject_del() |
298 | * atomic. | 296 | * atomic. |
299 | */ | 297 | */ |
@@ -312,9 +310,11 @@ static void remove_user_sysfs_dir(struct work_struct *w) | |||
312 | if (!remove_user) | 310 | if (!remove_user) |
313 | goto done; | 311 | goto done; |
314 | 312 | ||
315 | kobject_uevent(&up->kobj, KOBJ_REMOVE); | 313 | if (up->user_ns == &init_user_ns) { |
316 | kobject_del(&up->kobj); | 314 | kobject_uevent(&up->kobj, KOBJ_REMOVE); |
317 | kobject_put(&up->kobj); | 315 | kobject_del(&up->kobj); |
316 | kobject_put(&up->kobj); | ||
317 | } | ||
318 | 318 | ||
319 | sched_destroy_user(up); | 319 | sched_destroy_user(up); |
320 | key_put(up->uid_keyring); | 320 | key_put(up->uid_keyring); |
@@ -335,7 +335,7 @@ static void free_user(struct user_struct *up, unsigned long flags) | |||
335 | atomic_inc(&up->__count); | 335 | atomic_inc(&up->__count); |
336 | spin_unlock_irqrestore(&uidhash_lock, flags); | 336 | spin_unlock_irqrestore(&uidhash_lock, flags); |
337 | 337 | ||
338 | INIT_WORK(&up->work, remove_user_sysfs_dir); | 338 | INIT_WORK(&up->work, cleanup_user_struct); |
339 | schedule_work(&up->work); | 339 | schedule_work(&up->work); |
340 | } | 340 | } |
341 | 341 | ||
diff --git a/lib/bitmap.c b/lib/bitmap.c index 1338469ac849..35a1f7ff4149 100644 --- a/lib/bitmap.c +++ b/lib/bitmap.c | |||
@@ -948,15 +948,15 @@ done: | |||
948 | */ | 948 | */ |
949 | int bitmap_find_free_region(unsigned long *bitmap, int bits, int order) | 949 | int bitmap_find_free_region(unsigned long *bitmap, int bits, int order) |
950 | { | 950 | { |
951 | int pos; /* scans bitmap by regions of size order */ | 951 | int pos, end; /* scans bitmap by regions of size order */ |
952 | 952 | ||
953 | for (pos = 0; pos < bits; pos += (1 << order)) | 953 | for (pos = 0 ; (end = pos + (1 << order)) <= bits; pos = end) { |
954 | if (__reg_op(bitmap, pos, order, REG_OP_ISFREE)) | 954 | if (!__reg_op(bitmap, pos, order, REG_OP_ISFREE)) |
955 | break; | 955 | continue; |
956 | if (pos == bits) | 956 | __reg_op(bitmap, pos, order, REG_OP_ALLOC); |
957 | return -ENOMEM; | 957 | return pos; |
958 | __reg_op(bitmap, pos, order, REG_OP_ALLOC); | 958 | } |
959 | return pos; | 959 | return -ENOMEM; |
960 | } | 960 | } |
961 | EXPORT_SYMBOL(bitmap_find_free_region); | 961 | EXPORT_SYMBOL(bitmap_find_free_region); |
962 | 962 | ||
@@ -449,6 +449,7 @@ void idr_remove_all(struct idr *idp) | |||
449 | 449 | ||
450 | n = idp->layers * IDR_BITS; | 450 | n = idp->layers * IDR_BITS; |
451 | p = idp->top; | 451 | p = idp->top; |
452 | rcu_assign_pointer(idp->top, NULL); | ||
452 | max = 1 << n; | 453 | max = 1 << n; |
453 | 454 | ||
454 | id = 0; | 455 | id = 0; |
@@ -467,7 +468,6 @@ void idr_remove_all(struct idr *idp) | |||
467 | p = *--paa; | 468 | p = *--paa; |
468 | } | 469 | } |
469 | } | 470 | } |
470 | rcu_assign_pointer(idp->top, NULL); | ||
471 | idp->layers = 0; | 471 | idp->layers = 0; |
472 | } | 472 | } |
473 | EXPORT_SYMBOL(idr_remove_all); | 473 | EXPORT_SYMBOL(idr_remove_all); |
diff --git a/mm/vmscan.c b/mm/vmscan.c index 6177e3bcd66b..56ddf41149eb 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c | |||
@@ -1262,7 +1262,6 @@ static void shrink_active_list(unsigned long nr_pages, struct zone *zone, | |||
1262 | * Move the pages to the [file or anon] inactive list. | 1262 | * Move the pages to the [file or anon] inactive list. |
1263 | */ | 1263 | */ |
1264 | pagevec_init(&pvec, 1); | 1264 | pagevec_init(&pvec, 1); |
1265 | pgmoved = 0; | ||
1266 | lru = LRU_BASE + file * LRU_FILE; | 1265 | lru = LRU_BASE + file * LRU_FILE; |
1267 | 1266 | ||
1268 | spin_lock_irq(&zone->lru_lock); | 1267 | spin_lock_irq(&zone->lru_lock); |
@@ -1274,6 +1273,7 @@ static void shrink_active_list(unsigned long nr_pages, struct zone *zone, | |||
1274 | */ | 1273 | */ |
1275 | reclaim_stat->recent_rotated[!!file] += pgmoved; | 1274 | reclaim_stat->recent_rotated[!!file] += pgmoved; |
1276 | 1275 | ||
1276 | pgmoved = 0; | ||
1277 | while (!list_empty(&l_inactive)) { | 1277 | while (!list_empty(&l_inactive)) { |
1278 | page = lru_to_page(&l_inactive); | 1278 | page = lru_to_page(&l_inactive); |
1279 | prefetchw_prev_lru_page(page, &l_inactive, flags); | 1279 | prefetchw_prev_lru_page(page, &l_inactive, flags); |
@@ -1469,7 +1469,7 @@ static void shrink_zone(int priority, struct zone *zone, | |||
1469 | int file = is_file_lru(l); | 1469 | int file = is_file_lru(l); |
1470 | int scan; | 1470 | int scan; |
1471 | 1471 | ||
1472 | scan = zone_page_state(zone, NR_LRU_BASE + l); | 1472 | scan = zone_nr_pages(zone, sc, l); |
1473 | if (priority) { | 1473 | if (priority) { |
1474 | scan >>= priority; | 1474 | scan >>= priority; |
1475 | scan = (scan * percent[file]) / 100; | 1475 | scan = (scan * percent[file]) / 100; |
diff --git a/net/802/tr.c b/net/802/tr.c index 158150fee462..f47ae289d83b 100644 --- a/net/802/tr.c +++ b/net/802/tr.c | |||
@@ -668,3 +668,5 @@ module_init(rif_init); | |||
668 | 668 | ||
669 | EXPORT_SYMBOL(tr_type_trans); | 669 | EXPORT_SYMBOL(tr_type_trans); |
670 | EXPORT_SYMBOL(alloc_trdev); | 670 | EXPORT_SYMBOL(alloc_trdev); |
671 | |||
672 | MODULE_LICENSE("GPL"); | ||
diff --git a/net/8021q/vlan_dev.c b/net/8021q/vlan_dev.c index 4a19acd3a32b..1b34135cf990 100644 --- a/net/8021q/vlan_dev.c +++ b/net/8021q/vlan_dev.c | |||
@@ -553,7 +553,7 @@ static int vlan_dev_neigh_setup(struct net_device *dev, struct neigh_parms *pa) | |||
553 | int err = 0; | 553 | int err = 0; |
554 | 554 | ||
555 | if (netif_device_present(real_dev) && ops->ndo_neigh_setup) | 555 | if (netif_device_present(real_dev) && ops->ndo_neigh_setup) |
556 | err = ops->ndo_neigh_setup(dev, pa); | 556 | err = ops->ndo_neigh_setup(real_dev, pa); |
557 | 557 | ||
558 | return err; | 558 | return err; |
559 | } | 559 | } |
@@ -639,6 +639,7 @@ static int vlan_dev_init(struct net_device *dev) | |||
639 | dev->hard_header_len = real_dev->hard_header_len + VLAN_HLEN; | 639 | dev->hard_header_len = real_dev->hard_header_len + VLAN_HLEN; |
640 | dev->netdev_ops = &vlan_netdev_ops; | 640 | dev->netdev_ops = &vlan_netdev_ops; |
641 | } | 641 | } |
642 | netdev_resync_ops(dev); | ||
642 | 643 | ||
643 | if (is_vlan_dev(real_dev)) | 644 | if (is_vlan_dev(real_dev)) |
644 | subclass = 1; | 645 | subclass = 1; |
diff --git a/net/core/dev.c b/net/core/dev.c index 72b0d26fd46d..f1129706ce7b 100644 --- a/net/core/dev.c +++ b/net/core/dev.c | |||
@@ -2267,12 +2267,6 @@ int netif_receive_skb(struct sk_buff *skb) | |||
2267 | 2267 | ||
2268 | rcu_read_lock(); | 2268 | rcu_read_lock(); |
2269 | 2269 | ||
2270 | /* Don't receive packets in an exiting network namespace */ | ||
2271 | if (!net_alive(dev_net(skb->dev))) { | ||
2272 | kfree_skb(skb); | ||
2273 | goto out; | ||
2274 | } | ||
2275 | |||
2276 | #ifdef CONFIG_NET_CLS_ACT | 2270 | #ifdef CONFIG_NET_CLS_ACT |
2277 | if (skb->tc_verd & TC_NCLS) { | 2271 | if (skb->tc_verd & TC_NCLS) { |
2278 | skb->tc_verd = CLR_TC_NCLS(skb->tc_verd); | 2272 | skb->tc_verd = CLR_TC_NCLS(skb->tc_verd); |
@@ -4288,6 +4282,39 @@ unsigned long netdev_fix_features(unsigned long features, const char *name) | |||
4288 | } | 4282 | } |
4289 | EXPORT_SYMBOL(netdev_fix_features); | 4283 | EXPORT_SYMBOL(netdev_fix_features); |
4290 | 4284 | ||
4285 | /* Some devices need to (re-)set their netdev_ops inside | ||
4286 | * ->init() or similar. If that happens, we have to setup | ||
4287 | * the compat pointers again. | ||
4288 | */ | ||
4289 | void netdev_resync_ops(struct net_device *dev) | ||
4290 | { | ||
4291 | #ifdef CONFIG_COMPAT_NET_DEV_OPS | ||
4292 | const struct net_device_ops *ops = dev->netdev_ops; | ||
4293 | |||
4294 | dev->init = ops->ndo_init; | ||
4295 | dev->uninit = ops->ndo_uninit; | ||
4296 | dev->open = ops->ndo_open; | ||
4297 | dev->change_rx_flags = ops->ndo_change_rx_flags; | ||
4298 | dev->set_rx_mode = ops->ndo_set_rx_mode; | ||
4299 | dev->set_multicast_list = ops->ndo_set_multicast_list; | ||
4300 | dev->set_mac_address = ops->ndo_set_mac_address; | ||
4301 | dev->validate_addr = ops->ndo_validate_addr; | ||
4302 | dev->do_ioctl = ops->ndo_do_ioctl; | ||
4303 | dev->set_config = ops->ndo_set_config; | ||
4304 | dev->change_mtu = ops->ndo_change_mtu; | ||
4305 | dev->neigh_setup = ops->ndo_neigh_setup; | ||
4306 | dev->tx_timeout = ops->ndo_tx_timeout; | ||
4307 | dev->get_stats = ops->ndo_get_stats; | ||
4308 | dev->vlan_rx_register = ops->ndo_vlan_rx_register; | ||
4309 | dev->vlan_rx_add_vid = ops->ndo_vlan_rx_add_vid; | ||
4310 | dev->vlan_rx_kill_vid = ops->ndo_vlan_rx_kill_vid; | ||
4311 | #ifdef CONFIG_NET_POLL_CONTROLLER | ||
4312 | dev->poll_controller = ops->ndo_poll_controller; | ||
4313 | #endif | ||
4314 | #endif | ||
4315 | } | ||
4316 | EXPORT_SYMBOL(netdev_resync_ops); | ||
4317 | |||
4291 | /** | 4318 | /** |
4292 | * register_netdevice - register a network device | 4319 | * register_netdevice - register a network device |
4293 | * @dev: device to register | 4320 | * @dev: device to register |
@@ -4332,27 +4359,7 @@ int register_netdevice(struct net_device *dev) | |||
4332 | * This is temporary until all network devices are converted. | 4359 | * This is temporary until all network devices are converted. |
4333 | */ | 4360 | */ |
4334 | if (dev->netdev_ops) { | 4361 | if (dev->netdev_ops) { |
4335 | const struct net_device_ops *ops = dev->netdev_ops; | 4362 | netdev_resync_ops(dev); |
4336 | |||
4337 | dev->init = ops->ndo_init; | ||
4338 | dev->uninit = ops->ndo_uninit; | ||
4339 | dev->open = ops->ndo_open; | ||
4340 | dev->change_rx_flags = ops->ndo_change_rx_flags; | ||
4341 | dev->set_rx_mode = ops->ndo_set_rx_mode; | ||
4342 | dev->set_multicast_list = ops->ndo_set_multicast_list; | ||
4343 | dev->set_mac_address = ops->ndo_set_mac_address; | ||
4344 | dev->validate_addr = ops->ndo_validate_addr; | ||
4345 | dev->do_ioctl = ops->ndo_do_ioctl; | ||
4346 | dev->set_config = ops->ndo_set_config; | ||
4347 | dev->change_mtu = ops->ndo_change_mtu; | ||
4348 | dev->tx_timeout = ops->ndo_tx_timeout; | ||
4349 | dev->get_stats = ops->ndo_get_stats; | ||
4350 | dev->vlan_rx_register = ops->ndo_vlan_rx_register; | ||
4351 | dev->vlan_rx_add_vid = ops->ndo_vlan_rx_add_vid; | ||
4352 | dev->vlan_rx_kill_vid = ops->ndo_vlan_rx_kill_vid; | ||
4353 | #ifdef CONFIG_NET_POLL_CONTROLLER | ||
4354 | dev->poll_controller = ops->ndo_poll_controller; | ||
4355 | #endif | ||
4356 | } else { | 4363 | } else { |
4357 | char drivername[64]; | 4364 | char drivername[64]; |
4358 | pr_info("%s (%s): not using net_device_ops yet\n", | 4365 | pr_info("%s (%s): not using net_device_ops yet\n", |
diff --git a/net/core/net-sysfs.c b/net/core/net-sysfs.c index 6ac29a46e23e..484f58750eba 100644 --- a/net/core/net-sysfs.c +++ b/net/core/net-sysfs.c | |||
@@ -77,7 +77,9 @@ static ssize_t netdev_store(struct device *dev, struct device_attribute *attr, | |||
77 | if (endp == buf) | 77 | if (endp == buf) |
78 | goto err; | 78 | goto err; |
79 | 79 | ||
80 | rtnl_lock(); | 80 | if (!rtnl_trylock()) |
81 | return -ERESTARTSYS; | ||
82 | |||
81 | if (dev_isalive(net)) { | 83 | if (dev_isalive(net)) { |
82 | if ((ret = (*set)(net, new)) == 0) | 84 | if ((ret = (*set)(net, new)) == 0) |
83 | ret = len; | 85 | ret = len; |
diff --git a/net/core/net_namespace.c b/net/core/net_namespace.c index 2adb1a7d361f..e3bebd36f053 100644 --- a/net/core/net_namespace.c +++ b/net/core/net_namespace.c | |||
@@ -157,9 +157,6 @@ static void cleanup_net(struct work_struct *work) | |||
157 | struct pernet_operations *ops; | 157 | struct pernet_operations *ops; |
158 | struct net *net; | 158 | struct net *net; |
159 | 159 | ||
160 | /* Be very certain incoming network packets will not find us */ | ||
161 | rcu_barrier(); | ||
162 | |||
163 | net = container_of(work, struct net, work); | 160 | net = container_of(work, struct net, work); |
164 | 161 | ||
165 | mutex_lock(&net_mutex); | 162 | mutex_lock(&net_mutex); |
diff --git a/net/ipv4/icmp.c b/net/ipv4/icmp.c index 705b33b184a3..fc562d29cc46 100644 --- a/net/ipv4/icmp.c +++ b/net/ipv4/icmp.c | |||
@@ -1205,7 +1205,7 @@ static struct pernet_operations __net_initdata icmp_sk_ops = { | |||
1205 | 1205 | ||
1206 | int __init icmp_init(void) | 1206 | int __init icmp_init(void) |
1207 | { | 1207 | { |
1208 | return register_pernet_device(&icmp_sk_ops); | 1208 | return register_pernet_subsys(&icmp_sk_ops); |
1209 | } | 1209 | } |
1210 | 1210 | ||
1211 | EXPORT_SYMBOL(icmp_err_convert); | 1211 | EXPORT_SYMBOL(icmp_err_convert); |
diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c index 19d7b429a262..cf74c416831a 100644 --- a/net/ipv4/tcp_ipv4.c +++ b/net/ipv4/tcp_ipv4.c | |||
@@ -2443,7 +2443,7 @@ static struct pernet_operations __net_initdata tcp_sk_ops = { | |||
2443 | void __init tcp_v4_init(void) | 2443 | void __init tcp_v4_init(void) |
2444 | { | 2444 | { |
2445 | inet_hashinfo_init(&tcp_hashinfo); | 2445 | inet_hashinfo_init(&tcp_hashinfo); |
2446 | if (register_pernet_device(&tcp_sk_ops)) | 2446 | if (register_pernet_subsys(&tcp_sk_ops)) |
2447 | panic("Failed to create the TCP control socket.\n"); | 2447 | panic("Failed to create the TCP control socket.\n"); |
2448 | } | 2448 | } |
2449 | 2449 | ||
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c index f9afb452249c..1220e2c7831e 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c | |||
@@ -493,15 +493,17 @@ static void addrconf_forward_change(struct net *net, __s32 newf) | |||
493 | read_unlock(&dev_base_lock); | 493 | read_unlock(&dev_base_lock); |
494 | } | 494 | } |
495 | 495 | ||
496 | static void addrconf_fixup_forwarding(struct ctl_table *table, int *p, int old) | 496 | static int addrconf_fixup_forwarding(struct ctl_table *table, int *p, int old) |
497 | { | 497 | { |
498 | struct net *net; | 498 | struct net *net; |
499 | 499 | ||
500 | net = (struct net *)table->extra2; | 500 | net = (struct net *)table->extra2; |
501 | if (p == &net->ipv6.devconf_dflt->forwarding) | 501 | if (p == &net->ipv6.devconf_dflt->forwarding) |
502 | return; | 502 | return 0; |
503 | |||
504 | if (!rtnl_trylock()) | ||
505 | return -ERESTARTSYS; | ||
503 | 506 | ||
504 | rtnl_lock(); | ||
505 | if (p == &net->ipv6.devconf_all->forwarding) { | 507 | if (p == &net->ipv6.devconf_all->forwarding) { |
506 | __s32 newf = net->ipv6.devconf_all->forwarding; | 508 | __s32 newf = net->ipv6.devconf_all->forwarding; |
507 | net->ipv6.devconf_dflt->forwarding = newf; | 509 | net->ipv6.devconf_dflt->forwarding = newf; |
@@ -512,6 +514,7 @@ static void addrconf_fixup_forwarding(struct ctl_table *table, int *p, int old) | |||
512 | 514 | ||
513 | if (*p) | 515 | if (*p) |
514 | rt6_purge_dflt_routers(net); | 516 | rt6_purge_dflt_routers(net); |
517 | return 1; | ||
515 | } | 518 | } |
516 | #endif | 519 | #endif |
517 | 520 | ||
@@ -2608,9 +2611,6 @@ static int addrconf_ifdown(struct net_device *dev, int how) | |||
2608 | 2611 | ||
2609 | ASSERT_RTNL(); | 2612 | ASSERT_RTNL(); |
2610 | 2613 | ||
2611 | if ((dev->flags & IFF_LOOPBACK) && how == 1) | ||
2612 | how = 0; | ||
2613 | |||
2614 | rt6_ifdown(net, dev); | 2614 | rt6_ifdown(net, dev); |
2615 | neigh_ifdown(&nd_tbl, dev); | 2615 | neigh_ifdown(&nd_tbl, dev); |
2616 | 2616 | ||
@@ -3983,7 +3983,7 @@ int addrconf_sysctl_forward(ctl_table *ctl, int write, struct file * filp, | |||
3983 | ret = proc_dointvec(ctl, write, filp, buffer, lenp, ppos); | 3983 | ret = proc_dointvec(ctl, write, filp, buffer, lenp, ppos); |
3984 | 3984 | ||
3985 | if (write) | 3985 | if (write) |
3986 | addrconf_fixup_forwarding(ctl, valp, val); | 3986 | ret = addrconf_fixup_forwarding(ctl, valp, val); |
3987 | return ret; | 3987 | return ret; |
3988 | } | 3988 | } |
3989 | 3989 | ||
@@ -4019,8 +4019,7 @@ static int addrconf_sysctl_forward_strategy(ctl_table *table, | |||
4019 | } | 4019 | } |
4020 | 4020 | ||
4021 | *valp = new; | 4021 | *valp = new; |
4022 | addrconf_fixup_forwarding(table, valp, val); | 4022 | return addrconf_fixup_forwarding(table, valp, val); |
4023 | return 1; | ||
4024 | } | 4023 | } |
4025 | 4024 | ||
4026 | static struct addrconf_sysctl_table | 4025 | static struct addrconf_sysctl_table |
@@ -4446,25 +4445,6 @@ int unregister_inet6addr_notifier(struct notifier_block *nb) | |||
4446 | 4445 | ||
4447 | EXPORT_SYMBOL(unregister_inet6addr_notifier); | 4446 | EXPORT_SYMBOL(unregister_inet6addr_notifier); |
4448 | 4447 | ||
4449 | static void addrconf_net_exit(struct net *net) | ||
4450 | { | ||
4451 | struct net_device *dev; | ||
4452 | |||
4453 | rtnl_lock(); | ||
4454 | /* clean dev list */ | ||
4455 | for_each_netdev(net, dev) { | ||
4456 | if (__in6_dev_get(dev) == NULL) | ||
4457 | continue; | ||
4458 | addrconf_ifdown(dev, 1); | ||
4459 | } | ||
4460 | addrconf_ifdown(net->loopback_dev, 2); | ||
4461 | rtnl_unlock(); | ||
4462 | } | ||
4463 | |||
4464 | static struct pernet_operations addrconf_net_ops = { | ||
4465 | .exit = addrconf_net_exit, | ||
4466 | }; | ||
4467 | |||
4468 | /* | 4448 | /* |
4469 | * Init / cleanup code | 4449 | * Init / cleanup code |
4470 | */ | 4450 | */ |
@@ -4506,10 +4486,6 @@ int __init addrconf_init(void) | |||
4506 | if (err) | 4486 | if (err) |
4507 | goto errlo; | 4487 | goto errlo; |
4508 | 4488 | ||
4509 | err = register_pernet_device(&addrconf_net_ops); | ||
4510 | if (err) | ||
4511 | return err; | ||
4512 | |||
4513 | register_netdevice_notifier(&ipv6_dev_notf); | 4489 | register_netdevice_notifier(&ipv6_dev_notf); |
4514 | 4490 | ||
4515 | addrconf_verify(0); | 4491 | addrconf_verify(0); |
@@ -4539,15 +4515,22 @@ errlo: | |||
4539 | void addrconf_cleanup(void) | 4515 | void addrconf_cleanup(void) |
4540 | { | 4516 | { |
4541 | struct inet6_ifaddr *ifa; | 4517 | struct inet6_ifaddr *ifa; |
4518 | struct net_device *dev; | ||
4542 | int i; | 4519 | int i; |
4543 | 4520 | ||
4544 | unregister_netdevice_notifier(&ipv6_dev_notf); | 4521 | unregister_netdevice_notifier(&ipv6_dev_notf); |
4545 | unregister_pernet_device(&addrconf_net_ops); | ||
4546 | |||
4547 | unregister_pernet_subsys(&addrconf_ops); | 4522 | unregister_pernet_subsys(&addrconf_ops); |
4548 | 4523 | ||
4549 | rtnl_lock(); | 4524 | rtnl_lock(); |
4550 | 4525 | ||
4526 | /* clean dev list */ | ||
4527 | for_each_netdev(&init_net, dev) { | ||
4528 | if (__in6_dev_get(dev) == NULL) | ||
4529 | continue; | ||
4530 | addrconf_ifdown(dev, 1); | ||
4531 | } | ||
4532 | addrconf_ifdown(init_net.loopback_dev, 2); | ||
4533 | |||
4551 | /* | 4534 | /* |
4552 | * Check hash table. | 4535 | * Check hash table. |
4553 | */ | 4536 | */ |
@@ -4568,6 +4551,4 @@ void addrconf_cleanup(void) | |||
4568 | 4551 | ||
4569 | del_timer(&addr_chk_timer); | 4552 | del_timer(&addr_chk_timer); |
4570 | rtnl_unlock(); | 4553 | rtnl_unlock(); |
4571 | |||
4572 | unregister_pernet_subsys(&addrconf_net_ops); | ||
4573 | } | 4554 | } |
diff --git a/net/ipv6/af_inet6.c b/net/ipv6/af_inet6.c index c802bc1658a8..9c8309ed35cf 100644 --- a/net/ipv6/af_inet6.c +++ b/net/ipv6/af_inet6.c | |||
@@ -72,6 +72,10 @@ MODULE_LICENSE("GPL"); | |||
72 | static struct list_head inetsw6[SOCK_MAX]; | 72 | static struct list_head inetsw6[SOCK_MAX]; |
73 | static DEFINE_SPINLOCK(inetsw6_lock); | 73 | static DEFINE_SPINLOCK(inetsw6_lock); |
74 | 74 | ||
75 | static int disable_ipv6 = 0; | ||
76 | module_param_named(disable, disable_ipv6, int, 0); | ||
77 | MODULE_PARM_DESC(disable, "Disable IPv6 such that it is non-functional"); | ||
78 | |||
75 | static __inline__ struct ipv6_pinfo *inet6_sk_generic(struct sock *sk) | 79 | static __inline__ struct ipv6_pinfo *inet6_sk_generic(struct sock *sk) |
76 | { | 80 | { |
77 | const int offset = sk->sk_prot->obj_size - sizeof(struct ipv6_pinfo); | 81 | const int offset = sk->sk_prot->obj_size - sizeof(struct ipv6_pinfo); |
@@ -991,10 +995,21 @@ static int __init inet6_init(void) | |||
991 | { | 995 | { |
992 | struct sk_buff *dummy_skb; | 996 | struct sk_buff *dummy_skb; |
993 | struct list_head *r; | 997 | struct list_head *r; |
994 | int err; | 998 | int err = 0; |
995 | 999 | ||
996 | BUILD_BUG_ON(sizeof(struct inet6_skb_parm) > sizeof(dummy_skb->cb)); | 1000 | BUILD_BUG_ON(sizeof(struct inet6_skb_parm) > sizeof(dummy_skb->cb)); |
997 | 1001 | ||
1002 | /* Register the socket-side information for inet6_create. */ | ||
1003 | for(r = &inetsw6[0]; r < &inetsw6[SOCK_MAX]; ++r) | ||
1004 | INIT_LIST_HEAD(r); | ||
1005 | |||
1006 | if (disable_ipv6) { | ||
1007 | printk(KERN_INFO | ||
1008 | "IPv6: Loaded, but administratively disabled, " | ||
1009 | "reboot required to enable\n"); | ||
1010 | goto out; | ||
1011 | } | ||
1012 | |||
998 | err = proto_register(&tcpv6_prot, 1); | 1013 | err = proto_register(&tcpv6_prot, 1); |
999 | if (err) | 1014 | if (err) |
1000 | goto out; | 1015 | goto out; |
@@ -1012,10 +1027,6 @@ static int __init inet6_init(void) | |||
1012 | goto out_unregister_udplite_proto; | 1027 | goto out_unregister_udplite_proto; |
1013 | 1028 | ||
1014 | 1029 | ||
1015 | /* Register the socket-side information for inet6_create. */ | ||
1016 | for(r = &inetsw6[0]; r < &inetsw6[SOCK_MAX]; ++r) | ||
1017 | INIT_LIST_HEAD(r); | ||
1018 | |||
1019 | /* We MUST register RAW sockets before we create the ICMP6, | 1030 | /* We MUST register RAW sockets before we create the ICMP6, |
1020 | * IGMP6, or NDISC control sockets. | 1031 | * IGMP6, or NDISC control sockets. |
1021 | */ | 1032 | */ |
@@ -1181,6 +1192,9 @@ module_init(inet6_init); | |||
1181 | 1192 | ||
1182 | static void __exit inet6_exit(void) | 1193 | static void __exit inet6_exit(void) |
1183 | { | 1194 | { |
1195 | if (disable_ipv6) | ||
1196 | return; | ||
1197 | |||
1184 | /* First of all disallow new sockets creation. */ | 1198 | /* First of all disallow new sockets creation. */ |
1185 | sock_unregister(PF_INET6); | 1199 | sock_unregister(PF_INET6); |
1186 | /* Disallow any further netlink messages */ | 1200 | /* Disallow any further netlink messages */ |
diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c index 9eb895c7a2a9..3ae3cb816563 100644 --- a/net/netlink/af_netlink.c +++ b/net/netlink/af_netlink.c | |||
@@ -1084,6 +1084,13 @@ out: | |||
1084 | return 0; | 1084 | return 0; |
1085 | } | 1085 | } |
1086 | 1086 | ||
1087 | /** | ||
1088 | * netlink_set_err - report error to broadcast listeners | ||
1089 | * @ssk: the kernel netlink socket, as returned by netlink_kernel_create() | ||
1090 | * @pid: the PID of a process that we want to skip (if any) | ||
1091 | * @groups: the broadcast group that will notice the error | ||
1092 | * @code: error code, must be negative (as usual in kernelspace) | ||
1093 | */ | ||
1087 | void netlink_set_err(struct sock *ssk, u32 pid, u32 group, int code) | 1094 | void netlink_set_err(struct sock *ssk, u32 pid, u32 group, int code) |
1088 | { | 1095 | { |
1089 | struct netlink_set_err_data info; | 1096 | struct netlink_set_err_data info; |
@@ -1093,7 +1100,8 @@ void netlink_set_err(struct sock *ssk, u32 pid, u32 group, int code) | |||
1093 | info.exclude_sk = ssk; | 1100 | info.exclude_sk = ssk; |
1094 | info.pid = pid; | 1101 | info.pid = pid; |
1095 | info.group = group; | 1102 | info.group = group; |
1096 | info.code = code; | 1103 | /* sk->sk_err wants a positive error value */ |
1104 | info.code = -code; | ||
1097 | 1105 | ||
1098 | read_lock(&nl_table_lock); | 1106 | read_lock(&nl_table_lock); |
1099 | 1107 | ||
diff --git a/net/sched/act_police.c b/net/sched/act_police.c index 5c72a116b1a4..f8f047b61245 100644 --- a/net/sched/act_police.c +++ b/net/sched/act_police.c | |||
@@ -183,13 +183,6 @@ override: | |||
183 | if (R_tab == NULL) | 183 | if (R_tab == NULL) |
184 | goto failure; | 184 | goto failure; |
185 | 185 | ||
186 | if (!est && (ret == ACT_P_CREATED || | ||
187 | !gen_estimator_active(&police->tcf_bstats, | ||
188 | &police->tcf_rate_est))) { | ||
189 | err = -EINVAL; | ||
190 | goto failure; | ||
191 | } | ||
192 | |||
193 | if (parm->peakrate.rate) { | 186 | if (parm->peakrate.rate) { |
194 | P_tab = qdisc_get_rtab(&parm->peakrate, | 187 | P_tab = qdisc_get_rtab(&parm->peakrate, |
195 | tb[TCA_POLICE_PEAKRATE]); | 188 | tb[TCA_POLICE_PEAKRATE]); |
@@ -205,6 +198,12 @@ override: | |||
205 | &police->tcf_lock, est); | 198 | &police->tcf_lock, est); |
206 | if (err) | 199 | if (err) |
207 | goto failure_unlock; | 200 | goto failure_unlock; |
201 | } else if (tb[TCA_POLICE_AVRATE] && | ||
202 | (ret == ACT_P_CREATED || | ||
203 | !gen_estimator_active(&police->tcf_bstats, | ||
204 | &police->tcf_rate_est))) { | ||
205 | err = -EINVAL; | ||
206 | goto failure_unlock; | ||
208 | } | 207 | } |
209 | 208 | ||
210 | /* No failure allowed after this point */ | 209 | /* No failure allowed after this point */ |
diff --git a/net/sctp/protocol.c b/net/sctp/protocol.c index b78e3be69013..c4986d0f7419 100644 --- a/net/sctp/protocol.c +++ b/net/sctp/protocol.c | |||
@@ -717,15 +717,20 @@ static int sctp_inetaddr_event(struct notifier_block *this, unsigned long ev, | |||
717 | static int sctp_ctl_sock_init(void) | 717 | static int sctp_ctl_sock_init(void) |
718 | { | 718 | { |
719 | int err; | 719 | int err; |
720 | sa_family_t family; | 720 | sa_family_t family = PF_INET; |
721 | 721 | ||
722 | if (sctp_get_pf_specific(PF_INET6)) | 722 | if (sctp_get_pf_specific(PF_INET6)) |
723 | family = PF_INET6; | 723 | family = PF_INET6; |
724 | else | ||
725 | family = PF_INET; | ||
726 | 724 | ||
727 | err = inet_ctl_sock_create(&sctp_ctl_sock, family, | 725 | err = inet_ctl_sock_create(&sctp_ctl_sock, family, |
728 | SOCK_SEQPACKET, IPPROTO_SCTP, &init_net); | 726 | SOCK_SEQPACKET, IPPROTO_SCTP, &init_net); |
727 | |||
728 | /* If IPv6 socket could not be created, try the IPv4 socket */ | ||
729 | if (err < 0 && family == PF_INET6) | ||
730 | err = inet_ctl_sock_create(&sctp_ctl_sock, AF_INET, | ||
731 | SOCK_SEQPACKET, IPPROTO_SCTP, | ||
732 | &init_net); | ||
733 | |||
729 | if (err < 0) { | 734 | if (err < 0) { |
730 | printk(KERN_ERR | 735 | printk(KERN_ERR |
731 | "SCTP: Failed to create the SCTP control socket.\n"); | 736 | "SCTP: Failed to create the SCTP control socket.\n"); |
@@ -1322,9 +1327,8 @@ SCTP_STATIC __init int sctp_init(void) | |||
1322 | out: | 1327 | out: |
1323 | return status; | 1328 | return status; |
1324 | err_v6_add_protocol: | 1329 | err_v6_add_protocol: |
1325 | sctp_v6_del_protocol(); | ||
1326 | err_add_protocol: | ||
1327 | sctp_v4_del_protocol(); | 1330 | sctp_v4_del_protocol(); |
1331 | err_add_protocol: | ||
1328 | inet_ctl_sock_destroy(sctp_ctl_sock); | 1332 | inet_ctl_sock_destroy(sctp_ctl_sock); |
1329 | err_ctl_sock_init: | 1333 | err_ctl_sock_init: |
1330 | sctp_v6_protosw_exit(); | 1334 | sctp_v6_protosw_exit(); |
@@ -1335,7 +1339,6 @@ err_protosw_init: | |||
1335 | sctp_v4_pf_exit(); | 1339 | sctp_v4_pf_exit(); |
1336 | sctp_v6_pf_exit(); | 1340 | sctp_v6_pf_exit(); |
1337 | sctp_sysctl_unregister(); | 1341 | sctp_sysctl_unregister(); |
1338 | list_del(&sctp_af_inet.list); | ||
1339 | free_pages((unsigned long)sctp_port_hashtable, | 1342 | free_pages((unsigned long)sctp_port_hashtable, |
1340 | get_order(sctp_port_hashsize * | 1343 | get_order(sctp_port_hashsize * |
1341 | sizeof(struct sctp_bind_hashbucket))); | 1344 | sizeof(struct sctp_bind_hashbucket))); |
@@ -1383,7 +1386,6 @@ SCTP_STATIC __exit void sctp_exit(void) | |||
1383 | sctp_v4_pf_exit(); | 1386 | sctp_v4_pf_exit(); |
1384 | 1387 | ||
1385 | sctp_sysctl_unregister(); | 1388 | sctp_sysctl_unregister(); |
1386 | list_del(&sctp_af_inet.list); | ||
1387 | 1389 | ||
1388 | free_pages((unsigned long)sctp_assoc_hashtable, | 1390 | free_pages((unsigned long)sctp_assoc_hashtable, |
1389 | get_order(sctp_assoc_hashsize * | 1391 | get_order(sctp_assoc_hashsize * |
diff --git a/net/sctp/sm_sideeffect.c b/net/sctp/sm_sideeffect.c index e1d6076b4f59..b5495aecab60 100644 --- a/net/sctp/sm_sideeffect.c +++ b/net/sctp/sm_sideeffect.c | |||
@@ -787,36 +787,48 @@ static void sctp_cmd_process_operr(sctp_cmd_seq_t *cmds, | |||
787 | struct sctp_association *asoc, | 787 | struct sctp_association *asoc, |
788 | struct sctp_chunk *chunk) | 788 | struct sctp_chunk *chunk) |
789 | { | 789 | { |
790 | struct sctp_operr_chunk *operr_chunk; | ||
791 | struct sctp_errhdr *err_hdr; | 790 | struct sctp_errhdr *err_hdr; |
791 | struct sctp_ulpevent *ev; | ||
792 | 792 | ||
793 | operr_chunk = (struct sctp_operr_chunk *)chunk->chunk_hdr; | 793 | while (chunk->chunk_end > chunk->skb->data) { |
794 | err_hdr = &operr_chunk->err_hdr; | 794 | err_hdr = (struct sctp_errhdr *)(chunk->skb->data); |
795 | 795 | ||
796 | switch (err_hdr->cause) { | 796 | ev = sctp_ulpevent_make_remote_error(asoc, chunk, 0, |
797 | case SCTP_ERROR_UNKNOWN_CHUNK: | 797 | GFP_ATOMIC); |
798 | { | 798 | if (!ev) |
799 | struct sctp_chunkhdr *unk_chunk_hdr; | 799 | return; |
800 | 800 | ||
801 | unk_chunk_hdr = (struct sctp_chunkhdr *)err_hdr->variable; | 801 | sctp_ulpq_tail_event(&asoc->ulpq, ev); |
802 | switch (unk_chunk_hdr->type) { | 802 | |
803 | /* ADDIP 4.1 A9) If the peer responds to an ASCONF with an | 803 | switch (err_hdr->cause) { |
804 | * ERROR chunk reporting that it did not recognized the ASCONF | 804 | case SCTP_ERROR_UNKNOWN_CHUNK: |
805 | * chunk type, the sender of the ASCONF MUST NOT send any | 805 | { |
806 | * further ASCONF chunks and MUST stop its T-4 timer. | 806 | sctp_chunkhdr_t *unk_chunk_hdr; |
807 | */ | 807 | |
808 | case SCTP_CID_ASCONF: | 808 | unk_chunk_hdr = (sctp_chunkhdr_t *)err_hdr->variable; |
809 | asoc->peer.asconf_capable = 0; | 809 | switch (unk_chunk_hdr->type) { |
810 | sctp_add_cmd_sf(cmds, SCTP_CMD_TIMER_STOP, | 810 | /* ADDIP 4.1 A9) If the peer responds to an ASCONF with |
811 | * an ERROR chunk reporting that it did not recognized | ||
812 | * the ASCONF chunk type, the sender of the ASCONF MUST | ||
813 | * NOT send any further ASCONF chunks and MUST stop its | ||
814 | * T-4 timer. | ||
815 | */ | ||
816 | case SCTP_CID_ASCONF: | ||
817 | if (asoc->peer.asconf_capable == 0) | ||
818 | break; | ||
819 | |||
820 | asoc->peer.asconf_capable = 0; | ||
821 | sctp_add_cmd_sf(cmds, SCTP_CMD_TIMER_STOP, | ||
811 | SCTP_TO(SCTP_EVENT_TIMEOUT_T4_RTO)); | 822 | SCTP_TO(SCTP_EVENT_TIMEOUT_T4_RTO)); |
823 | break; | ||
824 | default: | ||
825 | break; | ||
826 | } | ||
812 | break; | 827 | break; |
828 | } | ||
813 | default: | 829 | default: |
814 | break; | 830 | break; |
815 | } | 831 | } |
816 | break; | ||
817 | } | ||
818 | default: | ||
819 | break; | ||
820 | } | 832 | } |
821 | } | 833 | } |
822 | 834 | ||
diff --git a/net/sctp/sm_statefuns.c b/net/sctp/sm_statefuns.c index 3a0cd075914f..f88dfded0e3a 100644 --- a/net/sctp/sm_statefuns.c +++ b/net/sctp/sm_statefuns.c | |||
@@ -3163,7 +3163,6 @@ sctp_disposition_t sctp_sf_operr_notify(const struct sctp_endpoint *ep, | |||
3163 | sctp_cmd_seq_t *commands) | 3163 | sctp_cmd_seq_t *commands) |
3164 | { | 3164 | { |
3165 | struct sctp_chunk *chunk = arg; | 3165 | struct sctp_chunk *chunk = arg; |
3166 | struct sctp_ulpevent *ev; | ||
3167 | 3166 | ||
3168 | if (!sctp_vtag_verify(chunk, asoc)) | 3167 | if (!sctp_vtag_verify(chunk, asoc)) |
3169 | return sctp_sf_pdiscard(ep, asoc, type, arg, commands); | 3168 | return sctp_sf_pdiscard(ep, asoc, type, arg, commands); |
@@ -3173,21 +3172,10 @@ sctp_disposition_t sctp_sf_operr_notify(const struct sctp_endpoint *ep, | |||
3173 | return sctp_sf_violation_chunklen(ep, asoc, type, arg, | 3172 | return sctp_sf_violation_chunklen(ep, asoc, type, arg, |
3174 | commands); | 3173 | commands); |
3175 | 3174 | ||
3176 | while (chunk->chunk_end > chunk->skb->data) { | 3175 | sctp_add_cmd_sf(commands, SCTP_CMD_PROCESS_OPERR, |
3177 | ev = sctp_ulpevent_make_remote_error(asoc, chunk, 0, | 3176 | SCTP_CHUNK(chunk)); |
3178 | GFP_ATOMIC); | ||
3179 | if (!ev) | ||
3180 | goto nomem; | ||
3181 | 3177 | ||
3182 | sctp_add_cmd_sf(commands, SCTP_CMD_EVENT_ULP, | ||
3183 | SCTP_ULPEVENT(ev)); | ||
3184 | sctp_add_cmd_sf(commands, SCTP_CMD_PROCESS_OPERR, | ||
3185 | SCTP_CHUNK(chunk)); | ||
3186 | } | ||
3187 | return SCTP_DISPOSITION_CONSUME; | 3178 | return SCTP_DISPOSITION_CONSUME; |
3188 | |||
3189 | nomem: | ||
3190 | return SCTP_DISPOSITION_NOMEM; | ||
3191 | } | 3179 | } |
3192 | 3180 | ||
3193 | /* | 3181 | /* |
diff --git a/net/sunrpc/sched.c b/net/sunrpc/sched.c index 385f427bedad..ff50a0546865 100644 --- a/net/sunrpc/sched.c +++ b/net/sunrpc/sched.c | |||
@@ -293,11 +293,6 @@ static void rpc_make_runnable(struct rpc_task *task) | |||
293 | rpc_clear_queued(task); | 293 | rpc_clear_queued(task); |
294 | if (rpc_test_and_set_running(task)) | 294 | if (rpc_test_and_set_running(task)) |
295 | return; | 295 | return; |
296 | /* We might have raced */ | ||
297 | if (RPC_IS_QUEUED(task)) { | ||
298 | rpc_clear_running(task); | ||
299 | return; | ||
300 | } | ||
301 | if (RPC_IS_ASYNC(task)) { | 296 | if (RPC_IS_ASYNC(task)) { |
302 | int status; | 297 | int status; |
303 | 298 | ||
@@ -607,7 +602,9 @@ void rpc_release_calldata(const struct rpc_call_ops *ops, void *calldata) | |||
607 | */ | 602 | */ |
608 | static void __rpc_execute(struct rpc_task *task) | 603 | static void __rpc_execute(struct rpc_task *task) |
609 | { | 604 | { |
610 | int status = 0; | 605 | struct rpc_wait_queue *queue; |
606 | int task_is_async = RPC_IS_ASYNC(task); | ||
607 | int status = 0; | ||
611 | 608 | ||
612 | dprintk("RPC: %5u __rpc_execute flags=0x%x\n", | 609 | dprintk("RPC: %5u __rpc_execute flags=0x%x\n", |
613 | task->tk_pid, task->tk_flags); | 610 | task->tk_pid, task->tk_flags); |
@@ -647,15 +644,25 @@ static void __rpc_execute(struct rpc_task *task) | |||
647 | */ | 644 | */ |
648 | if (!RPC_IS_QUEUED(task)) | 645 | if (!RPC_IS_QUEUED(task)) |
649 | continue; | 646 | continue; |
650 | rpc_clear_running(task); | 647 | /* |
651 | if (RPC_IS_ASYNC(task)) { | 648 | * The queue->lock protects against races with |
652 | /* Careful! we may have raced... */ | 649 | * rpc_make_runnable(). |
653 | if (RPC_IS_QUEUED(task)) | 650 | * |
654 | return; | 651 | * Note that once we clear RPC_TASK_RUNNING on an asynchronous |
655 | if (rpc_test_and_set_running(task)) | 652 | * rpc_task, rpc_make_runnable() can assign it to a |
656 | return; | 653 | * different workqueue. We therefore cannot assume that the |
654 | * rpc_task pointer may still be dereferenced. | ||
655 | */ | ||
656 | queue = task->tk_waitqueue; | ||
657 | spin_lock_bh(&queue->lock); | ||
658 | if (!RPC_IS_QUEUED(task)) { | ||
659 | spin_unlock_bh(&queue->lock); | ||
657 | continue; | 660 | continue; |
658 | } | 661 | } |
662 | rpc_clear_running(task); | ||
663 | spin_unlock_bh(&queue->lock); | ||
664 | if (task_is_async) | ||
665 | return; | ||
659 | 666 | ||
660 | /* sync task: sleep here */ | 667 | /* sync task: sleep here */ |
661 | dprintk("RPC: %5u sync task going to sleep\n", task->tk_pid); | 668 | dprintk("RPC: %5u sync task going to sleep\n", task->tk_pid); |
diff --git a/net/sunrpc/xprt.c b/net/sunrpc/xprt.c index 29e401bb612e..62098d101a1f 100644 --- a/net/sunrpc/xprt.c +++ b/net/sunrpc/xprt.c | |||
@@ -663,7 +663,7 @@ void xprt_connect(struct rpc_task *task) | |||
663 | xprt, (xprt_connected(xprt) ? "is" : "is not")); | 663 | xprt, (xprt_connected(xprt) ? "is" : "is not")); |
664 | 664 | ||
665 | if (!xprt_bound(xprt)) { | 665 | if (!xprt_bound(xprt)) { |
666 | task->tk_status = -EIO; | 666 | task->tk_status = -EAGAIN; |
667 | return; | 667 | return; |
668 | } | 668 | } |
669 | if (!xprt_lock_write(xprt, task)) | 669 | if (!xprt_lock_write(xprt, task)) |
diff --git a/net/sunrpc/xprtsock.c b/net/sunrpc/xprtsock.c index 5cbb404c4cdf..29c71e645b27 100644 --- a/net/sunrpc/xprtsock.c +++ b/net/sunrpc/xprtsock.c | |||
@@ -467,7 +467,7 @@ static int xs_sendpages(struct socket *sock, struct sockaddr *addr, int addrlen, | |||
467 | int err, sent = 0; | 467 | int err, sent = 0; |
468 | 468 | ||
469 | if (unlikely(!sock)) | 469 | if (unlikely(!sock)) |
470 | return -ENOTCONN; | 470 | return -ENOTSOCK; |
471 | 471 | ||
472 | clear_bit(SOCK_ASYNC_NOSPACE, &sock->flags); | 472 | clear_bit(SOCK_ASYNC_NOSPACE, &sock->flags); |
473 | if (base != 0) { | 473 | if (base != 0) { |
@@ -577,6 +577,8 @@ static int xs_udp_send_request(struct rpc_task *task) | |||
577 | req->rq_svec->iov_base, | 577 | req->rq_svec->iov_base, |
578 | req->rq_svec->iov_len); | 578 | req->rq_svec->iov_len); |
579 | 579 | ||
580 | if (!xprt_bound(xprt)) | ||
581 | return -ENOTCONN; | ||
580 | status = xs_sendpages(transport->sock, | 582 | status = xs_sendpages(transport->sock, |
581 | xs_addr(xprt), | 583 | xs_addr(xprt), |
582 | xprt->addrlen, xdr, | 584 | xprt->addrlen, xdr, |
@@ -594,6 +596,10 @@ static int xs_udp_send_request(struct rpc_task *task) | |||
594 | } | 596 | } |
595 | 597 | ||
596 | switch (status) { | 598 | switch (status) { |
599 | case -ENOTSOCK: | ||
600 | status = -ENOTCONN; | ||
601 | /* Should we call xs_close() here? */ | ||
602 | break; | ||
597 | case -EAGAIN: | 603 | case -EAGAIN: |
598 | xs_nospace(task); | 604 | xs_nospace(task); |
599 | break; | 605 | break; |
@@ -693,6 +699,10 @@ static int xs_tcp_send_request(struct rpc_task *task) | |||
693 | } | 699 | } |
694 | 700 | ||
695 | switch (status) { | 701 | switch (status) { |
702 | case -ENOTSOCK: | ||
703 | status = -ENOTCONN; | ||
704 | /* Should we call xs_close() here? */ | ||
705 | break; | ||
696 | case -EAGAIN: | 706 | case -EAGAIN: |
697 | xs_nospace(task); | 707 | xs_nospace(task); |
698 | break; | 708 | break; |
@@ -1523,7 +1533,7 @@ static void xs_udp_connect_worker4(struct work_struct *work) | |||
1523 | struct socket *sock = transport->sock; | 1533 | struct socket *sock = transport->sock; |
1524 | int err, status = -EIO; | 1534 | int err, status = -EIO; |
1525 | 1535 | ||
1526 | if (xprt->shutdown || !xprt_bound(xprt)) | 1536 | if (xprt->shutdown) |
1527 | goto out; | 1537 | goto out; |
1528 | 1538 | ||
1529 | /* Start by resetting any existing state */ | 1539 | /* Start by resetting any existing state */ |
@@ -1564,7 +1574,7 @@ static void xs_udp_connect_worker6(struct work_struct *work) | |||
1564 | struct socket *sock = transport->sock; | 1574 | struct socket *sock = transport->sock; |
1565 | int err, status = -EIO; | 1575 | int err, status = -EIO; |
1566 | 1576 | ||
1567 | if (xprt->shutdown || !xprt_bound(xprt)) | 1577 | if (xprt->shutdown) |
1568 | goto out; | 1578 | goto out; |
1569 | 1579 | ||
1570 | /* Start by resetting any existing state */ | 1580 | /* Start by resetting any existing state */ |
@@ -1648,6 +1658,9 @@ static int xs_tcp_finish_connecting(struct rpc_xprt *xprt, struct socket *sock) | |||
1648 | write_unlock_bh(&sk->sk_callback_lock); | 1658 | write_unlock_bh(&sk->sk_callback_lock); |
1649 | } | 1659 | } |
1650 | 1660 | ||
1661 | if (!xprt_bound(xprt)) | ||
1662 | return -ENOTCONN; | ||
1663 | |||
1651 | /* Tell the socket layer to start connecting... */ | 1664 | /* Tell the socket layer to start connecting... */ |
1652 | xprt->stat.connect_count++; | 1665 | xprt->stat.connect_count++; |
1653 | xprt->stat.connect_start = jiffies; | 1666 | xprt->stat.connect_start = jiffies; |
@@ -1668,7 +1681,7 @@ static void xs_tcp_connect_worker4(struct work_struct *work) | |||
1668 | struct socket *sock = transport->sock; | 1681 | struct socket *sock = transport->sock; |
1669 | int err, status = -EIO; | 1682 | int err, status = -EIO; |
1670 | 1683 | ||
1671 | if (xprt->shutdown || !xprt_bound(xprt)) | 1684 | if (xprt->shutdown) |
1672 | goto out; | 1685 | goto out; |
1673 | 1686 | ||
1674 | if (!sock) { | 1687 | if (!sock) { |
@@ -1728,7 +1741,7 @@ static void xs_tcp_connect_worker6(struct work_struct *work) | |||
1728 | struct socket *sock = transport->sock; | 1741 | struct socket *sock = transport->sock; |
1729 | int err, status = -EIO; | 1742 | int err, status = -EIO; |
1730 | 1743 | ||
1731 | if (xprt->shutdown || !xprt_bound(xprt)) | 1744 | if (xprt->shutdown) |
1732 | goto out; | 1745 | goto out; |
1733 | 1746 | ||
1734 | if (!sock) { | 1747 | if (!sock) { |
diff --git a/net/wireless/reg.c b/net/wireless/reg.c index 85c9034c59b2..bd0a16c3de5e 100644 --- a/net/wireless/reg.c +++ b/net/wireless/reg.c | |||
@@ -380,7 +380,8 @@ static bool is_valid_reg_rule(const struct ieee80211_reg_rule *rule) | |||
380 | 380 | ||
381 | freq_diff = freq_range->end_freq_khz - freq_range->start_freq_khz; | 381 | freq_diff = freq_range->end_freq_khz - freq_range->start_freq_khz; |
382 | 382 | ||
383 | if (freq_diff <= 0 || freq_range->max_bandwidth_khz > freq_diff) | 383 | if (freq_range->end_freq_khz <= freq_range->start_freq_khz || |
384 | freq_range->max_bandwidth_khz > freq_diff) | ||
384 | return false; | 385 | return false; |
385 | 386 | ||
386 | return true; | 387 | return true; |
diff --git a/net/xfrm/xfrm_state.c b/net/xfrm/xfrm_state.c index e25ff62ab2a6..62a5425cc6aa 100644 --- a/net/xfrm/xfrm_state.c +++ b/net/xfrm/xfrm_state.c | |||
@@ -748,12 +748,51 @@ static void xfrm_hash_grow_check(struct net *net, int have_hash_collision) | |||
748 | schedule_work(&net->xfrm.state_hash_work); | 748 | schedule_work(&net->xfrm.state_hash_work); |
749 | } | 749 | } |
750 | 750 | ||
751 | static void xfrm_state_look_at(struct xfrm_policy *pol, struct xfrm_state *x, | ||
752 | struct flowi *fl, unsigned short family, | ||
753 | xfrm_address_t *daddr, xfrm_address_t *saddr, | ||
754 | struct xfrm_state **best, int *acq_in_progress, | ||
755 | int *error) | ||
756 | { | ||
757 | /* Resolution logic: | ||
758 | * 1. There is a valid state with matching selector. Done. | ||
759 | * 2. Valid state with inappropriate selector. Skip. | ||
760 | * | ||
761 | * Entering area of "sysdeps". | ||
762 | * | ||
763 | * 3. If state is not valid, selector is temporary, it selects | ||
764 | * only session which triggered previous resolution. Key | ||
765 | * manager will do something to install a state with proper | ||
766 | * selector. | ||
767 | */ | ||
768 | if (x->km.state == XFRM_STATE_VALID) { | ||
769 | if ((x->sel.family && | ||
770 | !xfrm_selector_match(&x->sel, fl, x->sel.family)) || | ||
771 | !security_xfrm_state_pol_flow_match(x, pol, fl)) | ||
772 | return; | ||
773 | |||
774 | if (!*best || | ||
775 | (*best)->km.dying > x->km.dying || | ||
776 | ((*best)->km.dying == x->km.dying && | ||
777 | (*best)->curlft.add_time < x->curlft.add_time)) | ||
778 | *best = x; | ||
779 | } else if (x->km.state == XFRM_STATE_ACQ) { | ||
780 | *acq_in_progress = 1; | ||
781 | } else if (x->km.state == XFRM_STATE_ERROR || | ||
782 | x->km.state == XFRM_STATE_EXPIRED) { | ||
783 | if (xfrm_selector_match(&x->sel, fl, x->sel.family) && | ||
784 | security_xfrm_state_pol_flow_match(x, pol, fl)) | ||
785 | *error = -ESRCH; | ||
786 | } | ||
787 | } | ||
788 | |||
751 | struct xfrm_state * | 789 | struct xfrm_state * |
752 | xfrm_state_find(xfrm_address_t *daddr, xfrm_address_t *saddr, | 790 | xfrm_state_find(xfrm_address_t *daddr, xfrm_address_t *saddr, |
753 | struct flowi *fl, struct xfrm_tmpl *tmpl, | 791 | struct flowi *fl, struct xfrm_tmpl *tmpl, |
754 | struct xfrm_policy *pol, int *err, | 792 | struct xfrm_policy *pol, int *err, |
755 | unsigned short family) | 793 | unsigned short family) |
756 | { | 794 | { |
795 | static xfrm_address_t saddr_wildcard = { }; | ||
757 | struct net *net = xp_net(pol); | 796 | struct net *net = xp_net(pol); |
758 | unsigned int h; | 797 | unsigned int h; |
759 | struct hlist_node *entry; | 798 | struct hlist_node *entry; |
@@ -773,40 +812,27 @@ xfrm_state_find(xfrm_address_t *daddr, xfrm_address_t *saddr, | |||
773 | xfrm_state_addr_check(x, daddr, saddr, family) && | 812 | xfrm_state_addr_check(x, daddr, saddr, family) && |
774 | tmpl->mode == x->props.mode && | 813 | tmpl->mode == x->props.mode && |
775 | tmpl->id.proto == x->id.proto && | 814 | tmpl->id.proto == x->id.proto && |
776 | (tmpl->id.spi == x->id.spi || !tmpl->id.spi)) { | 815 | (tmpl->id.spi == x->id.spi || !tmpl->id.spi)) |
777 | /* Resolution logic: | 816 | xfrm_state_look_at(pol, x, fl, family, daddr, saddr, |
778 | 1. There is a valid state with matching selector. | 817 | &best, &acquire_in_progress, &error); |
779 | Done. | 818 | } |
780 | 2. Valid state with inappropriate selector. Skip. | 819 | if (best) |
781 | 820 | goto found; | |
782 | Entering area of "sysdeps". | 821 | |
783 | 822 | h = xfrm_dst_hash(net, daddr, &saddr_wildcard, tmpl->reqid, family); | |
784 | 3. If state is not valid, selector is temporary, | 823 | hlist_for_each_entry(x, entry, net->xfrm.state_bydst+h, bydst) { |
785 | it selects only session which triggered | 824 | if (x->props.family == family && |
786 | previous resolution. Key manager will do | 825 | x->props.reqid == tmpl->reqid && |
787 | something to install a state with proper | 826 | !(x->props.flags & XFRM_STATE_WILDRECV) && |
788 | selector. | 827 | xfrm_state_addr_check(x, daddr, saddr, family) && |
789 | */ | 828 | tmpl->mode == x->props.mode && |
790 | if (x->km.state == XFRM_STATE_VALID) { | 829 | tmpl->id.proto == x->id.proto && |
791 | if ((x->sel.family && !xfrm_selector_match(&x->sel, fl, x->sel.family)) || | 830 | (tmpl->id.spi == x->id.spi || !tmpl->id.spi)) |
792 | !security_xfrm_state_pol_flow_match(x, pol, fl)) | 831 | xfrm_state_look_at(pol, x, fl, family, daddr, saddr, |
793 | continue; | 832 | &best, &acquire_in_progress, &error); |
794 | if (!best || | ||
795 | best->km.dying > x->km.dying || | ||
796 | (best->km.dying == x->km.dying && | ||
797 | best->curlft.add_time < x->curlft.add_time)) | ||
798 | best = x; | ||
799 | } else if (x->km.state == XFRM_STATE_ACQ) { | ||
800 | acquire_in_progress = 1; | ||
801 | } else if (x->km.state == XFRM_STATE_ERROR || | ||
802 | x->km.state == XFRM_STATE_EXPIRED) { | ||
803 | if (xfrm_selector_match(&x->sel, fl, x->sel.family) && | ||
804 | security_xfrm_state_pol_flow_match(x, pol, fl)) | ||
805 | error = -ESRCH; | ||
806 | } | ||
807 | } | ||
808 | } | 833 | } |
809 | 834 | ||
835 | found: | ||
810 | x = best; | 836 | x = best; |
811 | if (!x && !error && !acquire_in_progress) { | 837 | if (!x && !error && !acquire_in_progress) { |
812 | if (tmpl->id.spi && | 838 | if (tmpl->id.spi && |
diff --git a/scripts/package/Makefile b/scripts/package/Makefile index 8c6b7b09606a..fa4a0a17b7e0 100644 --- a/scripts/package/Makefile +++ b/scripts/package/Makefile | |||
@@ -35,9 +35,10 @@ $(objtree)/kernel.spec: $(MKSPEC) $(srctree)/Makefile | |||
35 | rpm-pkg rpm: $(objtree)/kernel.spec FORCE | 35 | rpm-pkg rpm: $(objtree)/kernel.spec FORCE |
36 | $(MAKE) clean | 36 | $(MAKE) clean |
37 | $(PREV) ln -sf $(srctree) $(KERNELPATH) | 37 | $(PREV) ln -sf $(srctree) $(KERNELPATH) |
38 | $(CONFIG_SHELL) $(srctree)/scripts/setlocalversion > $(objtree)/.scmversion | ||
38 | $(PREV) tar -cz $(RCS_TAR_IGNORE) -f $(KERNELPATH).tar.gz $(KERNELPATH)/. | 39 | $(PREV) tar -cz $(RCS_TAR_IGNORE) -f $(KERNELPATH).tar.gz $(KERNELPATH)/. |
39 | $(PREV) rm $(KERNELPATH) | 40 | $(PREV) rm $(KERNELPATH) |
40 | 41 | rm -f $(objtree)/.scmversion | |
41 | set -e; \ | 42 | set -e; \ |
42 | $(CONFIG_SHELL) $(srctree)/scripts/mkversion > $(objtree)/.tmp_version | 43 | $(CONFIG_SHELL) $(srctree)/scripts/mkversion > $(objtree)/.tmp_version |
43 | set -e; \ | 44 | set -e; \ |
diff --git a/scripts/package/mkspec b/scripts/package/mkspec index ee448cdc6a2b..3d93f8c81252 100755 --- a/scripts/package/mkspec +++ b/scripts/package/mkspec | |||
@@ -96,7 +96,7 @@ echo "%endif" | |||
96 | 96 | ||
97 | echo "" | 97 | echo "" |
98 | echo "%clean" | 98 | echo "%clean" |
99 | echo '#echo -rf $RPM_BUILD_ROOT' | 99 | echo 'rm -rf $RPM_BUILD_ROOT' |
100 | echo "" | 100 | echo "" |
101 | echo "%files" | 101 | echo "%files" |
102 | echo '%defattr (-, root, root)' | 102 | echo '%defattr (-, root, root)' |
diff --git a/scripts/unifdef.c b/scripts/unifdef.c index 552025e72acb..05a31a6c7e1b 100644 --- a/scripts/unifdef.c +++ b/scripts/unifdef.c | |||
@@ -206,7 +206,7 @@ static void done(void); | |||
206 | static void error(const char *); | 206 | static void error(const char *); |
207 | static int findsym(const char *); | 207 | static int findsym(const char *); |
208 | static void flushline(bool); | 208 | static void flushline(bool); |
209 | static Linetype getline(void); | 209 | static Linetype get_line(void); |
210 | static Linetype ifeval(const char **); | 210 | static Linetype ifeval(const char **); |
211 | static void ignoreoff(void); | 211 | static void ignoreoff(void); |
212 | static void ignoreon(void); | 212 | static void ignoreon(void); |
@@ -512,7 +512,7 @@ process(void) | |||
512 | 512 | ||
513 | for (;;) { | 513 | for (;;) { |
514 | linenum++; | 514 | linenum++; |
515 | lineval = getline(); | 515 | lineval = get_line(); |
516 | trans_table[ifstate[depth]][lineval](); | 516 | trans_table[ifstate[depth]][lineval](); |
517 | debug("process %s -> %s depth %d", | 517 | debug("process %s -> %s depth %d", |
518 | linetype_name[lineval], | 518 | linetype_name[lineval], |
@@ -526,7 +526,7 @@ process(void) | |||
526 | * help from skipcomment(). | 526 | * help from skipcomment(). |
527 | */ | 527 | */ |
528 | static Linetype | 528 | static Linetype |
529 | getline(void) | 529 | get_line(void) |
530 | { | 530 | { |
531 | const char *cp; | 531 | const char *cp; |
532 | int cursym; | 532 | int cursym; |
diff --git a/security/smack/smack_lsm.c b/security/smack/smack_lsm.c index 0278bc083044..e7ded1326b0f 100644 --- a/security/smack/smack_lsm.c +++ b/security/smack/smack_lsm.c | |||
@@ -1498,58 +1498,31 @@ static int smack_socket_post_create(struct socket *sock, int family, | |||
1498 | * looks for host based access restrictions | 1498 | * looks for host based access restrictions |
1499 | * | 1499 | * |
1500 | * This version will only be appropriate for really small | 1500 | * This version will only be appropriate for really small |
1501 | * sets of single label hosts. Because of the masking | 1501 | * sets of single label hosts. |
1502 | * it cannot shortcut out on the first match. There are | ||
1503 | * numerious ways to address the problem, but none of them | ||
1504 | * have been applied here. | ||
1505 | * | 1502 | * |
1506 | * Returns the label of the far end or NULL if it's not special. | 1503 | * Returns the label of the far end or NULL if it's not special. |
1507 | */ | 1504 | */ |
1508 | static char *smack_host_label(struct sockaddr_in *sip) | 1505 | static char *smack_host_label(struct sockaddr_in *sip) |
1509 | { | 1506 | { |
1510 | struct smk_netlbladdr *snp; | 1507 | struct smk_netlbladdr *snp; |
1511 | char *bestlabel = NULL; | ||
1512 | struct in_addr *siap = &sip->sin_addr; | 1508 | struct in_addr *siap = &sip->sin_addr; |
1513 | struct in_addr *liap; | ||
1514 | struct in_addr *miap; | ||
1515 | struct in_addr bestmask; | ||
1516 | 1509 | ||
1517 | if (siap->s_addr == 0) | 1510 | if (siap->s_addr == 0) |
1518 | return NULL; | 1511 | return NULL; |
1519 | 1512 | ||
1520 | bestmask.s_addr = 0; | ||
1521 | |||
1522 | for (snp = smack_netlbladdrs; snp != NULL; snp = snp->smk_next) { | 1513 | for (snp = smack_netlbladdrs; snp != NULL; snp = snp->smk_next) { |
1523 | liap = &snp->smk_host.sin_addr; | ||
1524 | miap = &snp->smk_mask; | ||
1525 | /* | ||
1526 | * If the addresses match after applying the list entry mask | ||
1527 | * the entry matches the address. If it doesn't move along to | ||
1528 | * the next entry. | ||
1529 | */ | ||
1530 | if ((liap->s_addr & miap->s_addr) != | ||
1531 | (siap->s_addr & miap->s_addr)) | ||
1532 | continue; | ||
1533 | /* | 1514 | /* |
1534 | * If the list entry mask identifies a single address | 1515 | * we break after finding the first match because |
1535 | * it can't get any more specific. | 1516 | * the list is sorted from longest to shortest mask |
1517 | * so we have found the most specific match | ||
1536 | */ | 1518 | */ |
1537 | if (miap->s_addr == 0xffffffff) | 1519 | if ((&snp->smk_host.sin_addr)->s_addr == |
1520 | (siap->s_addr & (&snp->smk_mask)->s_addr)) { | ||
1538 | return snp->smk_label; | 1521 | return snp->smk_label; |
1539 | /* | 1522 | } |
1540 | * If the list entry mask is less specific than the best | ||
1541 | * already found this entry is uninteresting. | ||
1542 | */ | ||
1543 | if ((miap->s_addr | bestmask.s_addr) == bestmask.s_addr) | ||
1544 | continue; | ||
1545 | /* | ||
1546 | * This is better than any entry found so far. | ||
1547 | */ | ||
1548 | bestmask.s_addr = miap->s_addr; | ||
1549 | bestlabel = snp->smk_label; | ||
1550 | } | 1523 | } |
1551 | 1524 | ||
1552 | return bestlabel; | 1525 | return NULL; |
1553 | } | 1526 | } |
1554 | 1527 | ||
1555 | /** | 1528 | /** |
diff --git a/security/smack/smackfs.c b/security/smack/smackfs.c index 8e42800878f4..51f0efc50dab 100644 --- a/security/smack/smackfs.c +++ b/security/smack/smackfs.c | |||
@@ -650,10 +650,6 @@ static void *netlbladdr_seq_next(struct seq_file *s, void *v, loff_t *pos) | |||
650 | 650 | ||
651 | return skp; | 651 | return skp; |
652 | } | 652 | } |
653 | /* | ||
654 | #define BEMASK 0x80000000 | ||
655 | */ | ||
656 | #define BEMASK 0x00000001 | ||
657 | #define BEBITS (sizeof(__be32) * 8) | 653 | #define BEBITS (sizeof(__be32) * 8) |
658 | 654 | ||
659 | /* | 655 | /* |
@@ -663,12 +659,10 @@ static int netlbladdr_seq_show(struct seq_file *s, void *v) | |||
663 | { | 659 | { |
664 | struct smk_netlbladdr *skp = (struct smk_netlbladdr *) v; | 660 | struct smk_netlbladdr *skp = (struct smk_netlbladdr *) v; |
665 | unsigned char *hp = (char *) &skp->smk_host.sin_addr.s_addr; | 661 | unsigned char *hp = (char *) &skp->smk_host.sin_addr.s_addr; |
666 | __be32 bebits; | 662 | int maskn; |
667 | int maskn = 0; | 663 | u32 temp_mask = be32_to_cpu(skp->smk_mask.s_addr); |
668 | 664 | ||
669 | for (bebits = BEMASK; bebits != 0; maskn++, bebits <<= 1) | 665 | for (maskn = 0; temp_mask; temp_mask <<= 1, maskn++); |
670 | if ((skp->smk_mask.s_addr & bebits) == 0) | ||
671 | break; | ||
672 | 666 | ||
673 | seq_printf(s, "%u.%u.%u.%u/%d %s\n", | 667 | seq_printf(s, "%u.%u.%u.%u/%d %s\n", |
674 | hp[0], hp[1], hp[2], hp[3], maskn, skp->smk_label); | 668 | hp[0], hp[1], hp[2], hp[3], maskn, skp->smk_label); |
@@ -702,6 +696,42 @@ static int smk_open_netlbladdr(struct inode *inode, struct file *file) | |||
702 | } | 696 | } |
703 | 697 | ||
704 | /** | 698 | /** |
699 | * smk_netlbladdr_insert | ||
700 | * @new : netlabel to insert | ||
701 | * | ||
702 | * This helper insert netlabel in the smack_netlbladdrs list | ||
703 | * sorted by netmask length (longest to smallest) | ||
704 | */ | ||
705 | static void smk_netlbladdr_insert(struct smk_netlbladdr *new) | ||
706 | { | ||
707 | struct smk_netlbladdr *m; | ||
708 | |||
709 | if (smack_netlbladdrs == NULL) { | ||
710 | smack_netlbladdrs = new; | ||
711 | return; | ||
712 | } | ||
713 | |||
714 | /* the comparison '>' is a bit hacky, but works */ | ||
715 | if (new->smk_mask.s_addr > smack_netlbladdrs->smk_mask.s_addr) { | ||
716 | new->smk_next = smack_netlbladdrs; | ||
717 | smack_netlbladdrs = new; | ||
718 | return; | ||
719 | } | ||
720 | for (m = smack_netlbladdrs; m != NULL; m = m->smk_next) { | ||
721 | if (m->smk_next == NULL) { | ||
722 | m->smk_next = new; | ||
723 | return; | ||
724 | } | ||
725 | if (new->smk_mask.s_addr > m->smk_next->smk_mask.s_addr) { | ||
726 | new->smk_next = m->smk_next; | ||
727 | m->smk_next = new; | ||
728 | return; | ||
729 | } | ||
730 | } | ||
731 | } | ||
732 | |||
733 | |||
734 | /** | ||
705 | * smk_write_netlbladdr - write() for /smack/netlabel | 735 | * smk_write_netlbladdr - write() for /smack/netlabel |
706 | * @filp: file pointer, not actually used | 736 | * @filp: file pointer, not actually used |
707 | * @buf: where to get the data from | 737 | * @buf: where to get the data from |
@@ -724,8 +754,9 @@ static ssize_t smk_write_netlbladdr(struct file *file, const char __user *buf, | |||
724 | struct netlbl_audit audit_info; | 754 | struct netlbl_audit audit_info; |
725 | struct in_addr mask; | 755 | struct in_addr mask; |
726 | unsigned int m; | 756 | unsigned int m; |
727 | __be32 bebits = BEMASK; | 757 | u32 mask_bits = (1<<31); |
728 | __be32 nsa; | 758 | __be32 nsa; |
759 | u32 temp_mask; | ||
729 | 760 | ||
730 | /* | 761 | /* |
731 | * Must have privilege. | 762 | * Must have privilege. |
@@ -761,10 +792,13 @@ static ssize_t smk_write_netlbladdr(struct file *file, const char __user *buf, | |||
761 | if (sp == NULL) | 792 | if (sp == NULL) |
762 | return -EINVAL; | 793 | return -EINVAL; |
763 | 794 | ||
764 | for (mask.s_addr = 0; m > 0; m--) { | 795 | for (temp_mask = 0; m > 0; m--) { |
765 | mask.s_addr |= bebits; | 796 | temp_mask |= mask_bits; |
766 | bebits <<= 1; | 797 | mask_bits >>= 1; |
767 | } | 798 | } |
799 | mask.s_addr = cpu_to_be32(temp_mask); | ||
800 | |||
801 | newname.sin_addr.s_addr &= mask.s_addr; | ||
768 | /* | 802 | /* |
769 | * Only allow one writer at a time. Writes should be | 803 | * Only allow one writer at a time. Writes should be |
770 | * quite rare and small in any case. | 804 | * quite rare and small in any case. |
@@ -772,6 +806,7 @@ static ssize_t smk_write_netlbladdr(struct file *file, const char __user *buf, | |||
772 | mutex_lock(&smk_netlbladdr_lock); | 806 | mutex_lock(&smk_netlbladdr_lock); |
773 | 807 | ||
774 | nsa = newname.sin_addr.s_addr; | 808 | nsa = newname.sin_addr.s_addr; |
809 | /* try to find if the prefix is already in the list */ | ||
775 | for (skp = smack_netlbladdrs; skp != NULL; skp = skp->smk_next) | 810 | for (skp = smack_netlbladdrs; skp != NULL; skp = skp->smk_next) |
776 | if (skp->smk_host.sin_addr.s_addr == nsa && | 811 | if (skp->smk_host.sin_addr.s_addr == nsa && |
777 | skp->smk_mask.s_addr == mask.s_addr) | 812 | skp->smk_mask.s_addr == mask.s_addr) |
@@ -787,9 +822,8 @@ static ssize_t smk_write_netlbladdr(struct file *file, const char __user *buf, | |||
787 | rc = 0; | 822 | rc = 0; |
788 | skp->smk_host.sin_addr.s_addr = newname.sin_addr.s_addr; | 823 | skp->smk_host.sin_addr.s_addr = newname.sin_addr.s_addr; |
789 | skp->smk_mask.s_addr = mask.s_addr; | 824 | skp->smk_mask.s_addr = mask.s_addr; |
790 | skp->smk_next = smack_netlbladdrs; | ||
791 | skp->smk_label = sp; | 825 | skp->smk_label = sp; |
792 | smack_netlbladdrs = skp; | 826 | smk_netlbladdr_insert(skp); |
793 | } | 827 | } |
794 | } else { | 828 | } else { |
795 | rc = netlbl_cfg_unlbl_static_del(&init_net, NULL, | 829 | rc = netlbl_cfg_unlbl_static_del(&init_net, NULL, |
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c index 3bc427645da8..6094344fb223 100644 --- a/sound/pci/hda/patch_sigmatel.c +++ b/sound/pci/hda/patch_sigmatel.c | |||
@@ -1207,7 +1207,7 @@ static const char *slave_vols[] = { | |||
1207 | "LFE Playback Volume", | 1207 | "LFE Playback Volume", |
1208 | "Side Playback Volume", | 1208 | "Side Playback Volume", |
1209 | "Headphone Playback Volume", | 1209 | "Headphone Playback Volume", |
1210 | "Headphone Playback Volume", | 1210 | "Headphone2 Playback Volume", |
1211 | "Speaker Playback Volume", | 1211 | "Speaker Playback Volume", |
1212 | "External Speaker Playback Volume", | 1212 | "External Speaker Playback Volume", |
1213 | "Speaker2 Playback Volume", | 1213 | "Speaker2 Playback Volume", |
@@ -1221,7 +1221,7 @@ static const char *slave_sws[] = { | |||
1221 | "LFE Playback Switch", | 1221 | "LFE Playback Switch", |
1222 | "Side Playback Switch", | 1222 | "Side Playback Switch", |
1223 | "Headphone Playback Switch", | 1223 | "Headphone Playback Switch", |
1224 | "Headphone Playback Switch", | 1224 | "Headphone2 Playback Switch", |
1225 | "Speaker Playback Switch", | 1225 | "Speaker Playback Switch", |
1226 | "External Speaker Playback Switch", | 1226 | "External Speaker Playback Switch", |
1227 | "Speaker2 Playback Switch", | 1227 | "Speaker2 Playback Switch", |
@@ -3516,6 +3516,7 @@ static int stac92xx_parse_auto_config(struct hda_codec *codec, hda_nid_t dig_out | |||
3516 | if (! spec->autocfg.line_outs) | 3516 | if (! spec->autocfg.line_outs) |
3517 | return 0; /* can't find valid pin config */ | 3517 | return 0; /* can't find valid pin config */ |
3518 | 3518 | ||
3519 | #if 0 /* FIXME: temporarily disabled */ | ||
3519 | /* If we have no real line-out pin and multiple hp-outs, HPs should | 3520 | /* If we have no real line-out pin and multiple hp-outs, HPs should |
3520 | * be set up as multi-channel outputs. | 3521 | * be set up as multi-channel outputs. |
3521 | */ | 3522 | */ |
@@ -3535,6 +3536,7 @@ static int stac92xx_parse_auto_config(struct hda_codec *codec, hda_nid_t dig_out | |||
3535 | spec->autocfg.line_out_type = AUTO_PIN_HP_OUT; | 3536 | spec->autocfg.line_out_type = AUTO_PIN_HP_OUT; |
3536 | spec->autocfg.hp_outs = 0; | 3537 | spec->autocfg.hp_outs = 0; |
3537 | } | 3538 | } |
3539 | #endif /* FIXME: temporarily disabled */ | ||
3538 | if (spec->autocfg.mono_out_pin) { | 3540 | if (spec->autocfg.mono_out_pin) { |
3539 | int dir = get_wcaps(codec, spec->autocfg.mono_out_pin) & | 3541 | int dir = get_wcaps(codec, spec->autocfg.mono_out_pin) & |
3540 | (AC_WCAP_OUT_AMP | AC_WCAP_IN_AMP); | 3542 | (AC_WCAP_OUT_AMP | AC_WCAP_IN_AMP); |