Chameleon

Chameleon Svn Source Tree

Root/branches/JrCs/i386/include/IOKit/storage/IOStorageProtocolCharacteristics.h

1/*
2 * Copyright (c) 1998-2009 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23
24#ifndef _IOKIT_IO_STORAGE_PROTOCOL_CHARACTERISTICS_H_
25#define _IOKIT_IO_STORAGE_PROTOCOL_CHARACTERISTICS_H_
26
27
28/*
29 *Protocol Characteristics - Characteristics defined for protocols.
30 */
31
32
33/*!
34@defined kIOPropertyProtocolCharacteristicsKey
35@discussion This key is used to define Protocol Characteristics for a particular
36protocol and it has an associated dictionary which lists the
37protocol characteristics.
38
39Requirement: Mandatory
40
41Example:
42<pre>
43@textblock
44<dict>
45<key>Protocol Characteristics</key>
46<dict>
47<key>Physical Interconnect</key>
48<string>ATAPI</string>
49<key>Physical Interconnect Location</key>
50<string>Internal</string>
51</dict>
52</dict>
53@/textblock
54</pre>
55*/
56#definekIOPropertyProtocolCharacteristicsKey"Protocol Characteristics"
57
58
59/*!
60@defined kIOPropertySCSIInitiatorIdentifierKey
61@discussion An identifier that will uniquely identify this SCSI Initiator for the
62SCSI Domain.
63
64Requirement: Mandatory for SCSI Parallel Interface, SAS,
65and Fibre Channel Interface.
66
67Example:
68<pre>
69@textblock
70<dict>
71<key>Protocol Characteristics</key>
72<dict>
73<key>Physical Interconnect</key>
74<string>SCSI Parallel Interface</string>
75<key>Physical Interconnect Location</key>
76<string>Internal</string>
77<key>SCSI Initiator Identifier</key>
78<integer>7</integer>
79</dict>
80</dict>
81@/textblock
82</pre>
83*/
84#define kIOPropertySCSIInitiatorIdentifierKey"SCSI Initiator Identifier"
85
86
87/*!
88@defined kIOPropertySCSIDomainIdentifierKey
89@discussion An identifier that will uniquely identify this SCSI Domain for the
90Physical Interconnect type. This identifier is only guaranteed to be unique for
91any given Physical Interconnect and is not guaranteed to be the same across
92restarts or shutdowns.
93
94Requirement: Mandatory for SCSI Parallel Interface and Fibre Channel Interface.
95
96Example:
97<pre>
98@textblock
99<dict>
100<key>Protocol Characteristics</key>
101<dict>
102<key>Physical Interconnect</key>
103<string>SCSI Parallel Interface</string>
104<key>Physical Interconnect Location</key>
105<string>Internal</string>
106<key>SCSI Domain Identifier</key>
107<integer>0</integer>
108</dict>
109</dict>
110@/textblock
111</pre>
112*/
113#define kIOPropertySCSIDomainIdentifierKey"SCSI Domain Identifier"
114
115
116/*!
117@defined kIOPropertySCSITargetIdentifierKey
118@discussion This is the SCSI Target Identifier for a given SCSI Target Device.
119
120Requirement: Mandatory for SCSI Parallel Interface and Fibre Channel Interface.
121
122Example:
123<pre>
124@textblock
125<dict>
126<key>Protocol Characteristics</key>
127<dict>
128<key>Physical Interconnect</key>
129<string>SCSI Parallel Interface</string>
130<key>Physical Interconnect Location</key>
131<string>Internal</string>
132<key>SCSI Target Identifier</key>
133<integer>3</integer>
134</dict>
135</dict>
136@/textblock
137</pre>
138*/
139#define kIOPropertySCSITargetIdentifierKey"SCSI Target Identifier"
140
141
142/*!
143@defined kIOPropertySCSILogicalUnitNumberKey
144@discussion This key is the SCSI Logical Unit Number for the device server
145controlled by the driver.
146
147Requirement: Mandatory for SCSI Parallel Interface, SAS, and Fibre Channel Interface.
148
149Example:
150<pre>
151@textblock
152<dict>
153<key>Protocol Characteristics</key>
154<dict>
155<key>Physical Interconnect</key>
156<string>SCSI Parallel Interface</string>
157<key>Physical Interconnect Location</key>
158<string>Internal</string>
159<key>SCSI Logical Unit Number</key>
160<integer>2</integer>
161</dict>
162</dict>
163@/textblock
164</pre>
165*/
166#define kIOPropertySCSILogicalUnitNumberKey"SCSI Logical Unit Number"
167
168
169/*!
170@defined kIOPropertySASAddressKey
171@discussion This key is the unique 64-bit SAS Address for the device server
172node located at this port, or for the initiating host port.
173
174Requirement: Mandatory for SAS.
175
176Example:
177<pre>
178@textblock
179<dict>
180<key>Protocol Characteristics</key>
181<dict>
182<key>Physical Interconnect</key>
183<string>SAS</string>
184<key>Physical Interconnect Location</key>
185<string>External</string>
186<key>SAS Address</key>
187<data>0011223344556677</data>
188</dict>
189</dict>
190@/textblock
191</pre>
192
193Example2:
194<pre>
195@textblock
196<dict>
197<key>Controller Characteristics</key>
198<dict>
199<key>SAS Address</key>
200<data>0011223344556677</data>
201</dict>
202</dict>
203@/textblock
204</pre>
205*/
206#define kIOPropertySASAddressKey"SAS Address"
207
208
209/*!
210@defined kIOPropertyFibreChannelNodeWorldWideNameKey
211@discussion This key is the unique 64-bit World Wide Name for the device server
212node located at this port, or for the initiating host port.
213
214Requirement: Mandatory for Fibre Channel Interface.
215
216Example:
217<pre>
218@textblock
219<dict>
220<key>Protocol Characteristics</key>
221<dict>
222<key>Physical Interconnect</key>
223<string>Fibre Channel Interface</string>
224<key>Physical Interconnect Location</key>
225<string>External</string>
226<key>Node World Wide Name</key>
227<data>0011223344556677</data>
228</dict>
229</dict>
230@/textblock
231</pre>
232
233Example2:
234<pre>
235@textblock
236<dict>
237<key>Controller Characteristics</key>
238<dict>
239<key>Node World Wide Name</key>
240<data>0011223344556677</data>
241</dict>
242</dict>
243@/textblock
244</pre>
245*/
246#define kIOPropertyFibreChannelNodeWorldWideNameKey"Node World Wide Name"
247
248
249/*!
250@defined kIOPropertyFibreChannelPortWorldWideNameKey
251@discussion This key is the unique 64-bit World Wide Name for the port.
252
253Requirement: Mandatory for Fibre Channel Interface.
254
255Example:
256<pre>
257@textblock
258<dict>
259<key>Protocol Characteristics</key>
260<dict>
261<key>Physical Interconnect</key>
262<string>Fibre Channel Interface</string>
263<key>Physical Interconnect Location</key>
264<string>External</string>
265<key>Port World Wide Name</key>
266<data>0011223344556677</data>
267</dict>
268</dict>
269@/textblock
270</pre>
271
272Example2:
273<pre>
274@textblock
275<dict>
276<key>Controller Characteristics</key>
277<dict>
278<key>Port World Wide Name</key>
279<data>0011223344556677</data>
280</dict>
281</dict>
282@/textblock
283</pre>
284*/
285#define kIOPropertyFibreChannelPortWorldWideNameKey"Port World Wide Name"
286
287
288/*!
289@defined kIOPropertyFibreChannelAddressIdentifierKey
290@discussion This key is the 24-bit Address Identifier (S_ID or D_ID) as
291defined in the FC-FS specification. It contains the address identifier
292of the source or destination Nx_Port.
293
294Note: This value can change. It is not a static value.
295
296Requirement: Optional (only necessary for Fibre Channel Interface).
297
298Example:
299<pre>
300@textblock
301<dict>
302<key>Protocol Characteristics</key>
303<dict>
304<key>Physical Interconnect</key>
305<string>Fibre Channel Interface</string>
306<key>Physical Interconnect Location</key>
307<string>External</string>
308<key>Address Identifier</key>
309<data>001122</data>
310</dict>
311</dict>
312@/textblock
313</pre>
314
315Example2:
316<pre>
317@textblock
318<dict>
319<key>Controller Characteristics</key>
320<dict>
321<key>Address Identifier</key>
322<data>001122</data>
323</dict>
324</dict>
325@/textblock
326</pre>
327*/
328#define kIOPropertyFibreChannelAddressIdentifierKey"Address Identifier"
329
330
331/*!
332@defined kIOPropertyFibreChannelALPAKey
333@discussion This key is the 8-bit Arbitrated Loop Physical Address
334(AL_PA) value as defined in the FC-AL-2 specification.
335
336Note: This value can change. It is not a static value.
337
338Requirement: Optional (only necessary for Fibre Channel Interface).
339
340Example:
341<pre>
342@textblock
343<dict>
344<key>Protocol Characteristics</key>
345<dict>
346<key>Physical Interconnect</key>
347<string>Fibre Channel Interface</string>
348<key>Physical Interconnect Location</key>
349<string>External</string>
350<key>AL_PA</key>
351<data>04</data>
352</dict>
353</dict>
354@/textblock
355</pre>
356
357Example2:
358<pre>
359@textblock
360<dict>
361<key>Controller Characteristics</key>
362<dict>
363<key>AL_PA</key>
364<data>04</data>
365</dict>
366</dict>
367@/textblock
368</pre>
369*/
370#define kIOPropertyFibreChannelALPAKey"AL_PA"
371
372
373/*!
374@defined kIOPropertyPortStatusKey
375@discussion This key is associated with the current port
376status of the physical link. The port status is either
377"Link Established", "No Link Established", or "Link Failed".
378
379Note: This value can change when the port status changes. It
380is not a static value.
381
382Requirement: Optional for any interconnect.
383
384Example:
385<pre>
386@textblock
387<dict>
388<key>Controller Characteristics</key>
389<dict>
390<key>Port Status</key>
391<string>Link Established</string>
392</dict>
393</dict>
394@/textblock
395</pre>
396*/
397#define kIOPropertyPortStatusKey"Port Status"
398
399
400/*!
401@defined kIOPropertyPortSpeedKey
402@discussion This key is associated with the current port
403speed. The port speed can be any valid speed for the interconnect.
404
405Note: This value can change. It is not a static value.
406
407Requirement: Optional for any interconnect.
408
409Example:
410<pre>
411@textblock
412<dict>
413<key>Controller Characteristics</key>
414<dict>
415<key>Port Speed</key>
416<string>Automatic (1 Gigabit)</string>
417</dict>
418</dict>
419@/textblock
420</pre>
421*/
422#define kIOPropertyPortSpeedKey"Port Speed"
423
424
425/*!
426@defined kIOPropertyPortTopologyKey
427@discussion This key is associated with the current port
428topology. The port topology can be any valid topology for the interconnect.
429
430Note: This value can change. It is not a static value.
431
432Requirement: Optional for any interconnect.
433
434Example:
435<pre>
436@textblock
437<dict>
438<key>Controller Characteristics</key>
439<dict>
440<key>Port Topology</key>
441<string>Automatic (N_Port)</string>
442</dict>
443</dict>
444@/textblock
445</pre>
446*/
447#define kIOPropertyPortTopologyKey"Port Topology"
448
449
450/*!
451@defined kIOPropertyPortDescriptionKey
452@discussion This key is associated with an human
453readable port description. Examples include
454"Channel A", "Port 1", etc.
455
456Requirement: Optional for all interconnects.
457
458Example:
459<pre>
460@textblock
461<dict>
462<key>Controller Characteristics</key>
463<dict>
464<key>Port Description</key>
465<string>Channel A</string>
466</dict>
467</dict>
468@/textblock
469</pre>
470*/
471#define kIOPropertyPortDescriptionKey"Port Description"
472
473
474/*!
475@defined kIOPropertySCSIParallelSignalingTypeKey
476@discussion This key is associated with the signaling type
477used for this SCSI Parallel bus. Valid values include
478"High Voltage Differential", "Low Voltage Differential",
479and "Single Ended".
480
481Requirement: Optional for SCSI Parallel Interface. Not
482defined for any other physical interconnect.
483
484Example:
485<pre>
486@textblock
487<dict>
488<key>Controller Characteristics</key>
489<dict>
490<key>SCSI Parallel Signaling Type</key>
491<string>High Voltage Differential</string>
492</dict>
493</dict>
494@/textblock
495</pre>
496*/
497#define kIOPropertySCSIParallelSignalingTypeKey"SCSI Parallel Signaling Type"
498
499
500/*!
501@defined kIOPropertyFibreChannelCableDescriptionKey
502@discussion This key is associated with the cabling type
503used for this Fibre Channel port. Valid values include
504"Copper" and "Fiber Optic".
505
506Requirement: Optional for Fibre Channel Interface. Not
507defined for any other physical interconnect.
508
509Example:
510<pre>
511@textblock
512<dict>
513<key>Controller Characteristics</key>
514<dict>
515<key>Fibre Channel Cabling Type</key>
516<string>Copper</string>
517</dict>
518</dict>
519@/textblock
520</pre>
521*/
522#define kIOPropertyFibreChannelCableDescriptionKey"Fibre Channel Cabling Type"
523
524
525/*!
526@defined kIOPropertyPhysicalInterconnectTypeKey
527@discussion This key is used to define the Physical Interconnect to which
528a device is attached.
529
530Requirement: Mandatory.
531
532Example:
533<pre>
534@textblock
535<dict>
536<key>Protocol Characteristics</key>
537<dict>
538<key>Physical Interconnect</key>
539<string>SCSI Parallel Interface</string>
540<key>Physical Interconnect Location</key>
541<string>Internal</string>
542</dict>
543</dict>
544@/textblock
545</pre>
546*/
547#define kIOPropertyPhysicalInterconnectTypeKey"Physical Interconnect"
548
549
550/*!
551@defined kIOPropertyPhysicalInterconnectLocationKey
552@discussion This key is used to define the Physical Interconnect
553Location.
554
555Requirement: Mandatory.
556
557Example:
558<pre>
559@textblock
560<dict>
561<key>Protocol Characteristics</key>
562<dict>
563<key>Physical Interconnect</key>
564<string>SCSI Parallel Interface</string>
565<key>Physical Interconnect Location</key>
566<string>Internal</string>
567</dict>
568</dict>
569@/textblock
570</pre>
571*/
572#define kIOPropertyPhysicalInterconnectLocationKey"Physical Interconnect Location"
573
574
575/*!
576@defined kIOPropertySCSIProtocolMultiInitKey
577@discussion This protocol characteristics key is used to inform the system
578that the protocol supports having multiple devices that act as initiators.
579
580Requirement: Optional.
581
582Example:
583<pre>
584@textblock
585<dict>
586<key>Protocol Characteristics</key>
587<dict>
588<key>Physical Interconnect</key>
589<string>Fibre Channel Interface</string>
590<key>Physical Interconnect Location</key>
591<string>External</string>
592<key>Multiple Initiators</key>
593<string>True</string>
594</dict>
595</dict>
596@/textblock
597</pre>
598*/
599#define kIOPropertySCSIProtocolMultiInitKey"Multiple Initiators"
600
601
602/*
603 *Values - Values for the characteristics defined above.
604 */
605
606
607/*!
608@defined kIOPropertyInternalKey
609@discussion This key defines the value of Internal for the key
610kIOPropertyPhysicalInterconnectLocationKey. If the device is
611connected to an internal bus, this key should be set.
612
613Example:
614<pre>
615@textblock
616<dict>
617<key>Protocol Characteristics</key>
618<dict>
619<key>Physical Interconnect</key>
620<string>ATA</string>
621<key>Physical Interconnect Location</key>
622<string>Internal</string>
623</dict>
624</dict>
625@/textblock
626</pre>
627*/
628#define kIOPropertyInternalKey"Internal"
629
630
631/*!
632@defined kIOPropertyExternalKey
633@discussion This key defines the value of External for the key
634kIOPropertyPhysicalInterconnectLocationKey. If the device is
635connected to an external bus, this key should be set.
636
637Example:
638<pre>
639@textblock
640<dict>
641<key>Protocol Characteristics</key>
642<dict>
643<key>Physical Interconnect</key>
644<string>Fibre Channel Interface</string>
645<key>Physical Interconnect Location</key>
646<string>External</string>
647</dict>
648</dict>
649@/textblock
650</pre>
651*/
652#define kIOPropertyExternalKey"External"
653
654
655/*!
656@defined kIOPropertyInternalExternalKey
657@discussion This key defines the value of Internal/External for the key
658kIOPropertyPhysicalInterconnectLocationKey. If the device is connected
659to a bus and it is indeterminate whether it is internal or external,
660this key should be set.
661
662Example:
663<pre>
664@textblock
665<dict>
666<key>Protocol Characteristics</key>
667<dict>
668<key>Physical Interconnect</key>
669<string>SCSI Parallel Interface</string>
670<key>Physical Interconnect Location</key>
671<string>Internal/External</string>
672</dict>
673</dict>
674@/textblock
675</pre>
676*/
677#define kIOPropertyInternalExternalKey"Internal/External"
678
679
680/*!
681@defined kIOPropertyInterconnectFileKey
682@discussion This key defines the value of File for the key
683kIOPropertyPhysicalInterconnectLocationKey. If the device is a file
684that is being represented as a storage device, this key should be set.
685
686NOTE: This key should only be used when the Physical Interconnect is set to
687Virtual Interface.
688
689Example:
690<pre>
691@textblock
692<dict>
693<key>Protocol Characteristics</key>
694<dict>
695<key>Physical Interconnect</key>
696<string>Virtual Interface</string>
697<key>Physical Interconnect Location</key>
698<string>File</string>
699</dict>
700</dict>
701@/textblock
702</pre>
703*/
704#define kIOPropertyInterconnectFileKey"File"
705
706
707/*!
708@defined kIOPropertyInterconnectRAMKey
709@discussion This key defines the value of RAM for the key
710kIOPropertyPhysicalInterconnectLocationKey. If the device is system memory
711that is being represented as a storage device, this key should be set.
712
713NOTE: This key should only be used when the Physical Interconnect is set to
714Virtual Interface.
715
716Example:
717<pre>
718@textblock
719<dict>
720<key>Protocol Characteristics</key>
721<dict>
722<key>Physical Interconnect</key>
723<string>Virtual Interface</string>
724<key>Physical Interconnect Location</key>
725<string>RAM</string>
726</dict>
727</dict>
728@/textblock
729</pre>
730*/
731#define kIOPropertyInterconnectRAMKey"RAM"
732
733
734/*!
735@defined kIOPropertyPhysicalInterconnectTypeATA
736@discussion This key defines the value of ATA for the key
737kIOPropertyPhysicalInterconnectTypeKey. If the device is connected
738to an ATA bus, this key should be set.
739
740Example:
741<pre>
742@textblock
743<dict>
744<key>Protocol Characteristics</key>
745<dict>
746<key>Physical Interconnect</key>
747<string>ATA</string>
748<key>Physical Interconnect Location</key>
749<string>Internal</string>
750</dict>
751</dict>
752@/textblock
753</pre>
754*/
755#define kIOPropertyPhysicalInterconnectTypeATA"ATA"
756
757
758/*!
759@defined kIOPropertyPhysicalInterconnectTypeSerialATA
760@discussion This key defines the value of SATA for the key
761kIOPropertyPhysicalInterconnectTypeKey. If the device is connected
762to a SATA bus, this key should be set.
763
764Example:
765<pre>
766@textblock
767<dict>
768<key>Protocol Characteristics</key>
769<dict>
770<key>Physical Interconnect</key>
771<string>SATA</string>
772<key>Physical Interconnect Location</key>
773<string>Internal</string>
774</dict>
775</dict>
776@/textblock
777</pre>
778*/
779#define kIOPropertyPhysicalInterconnectTypeSerialATA"SATA"
780
781
782/*!
783@defined kIOPropertyPhysicalInterconnectTypeSerialAttachedSCSI
784@discussion This key defines the value of SAS for the key
785kIOPropertyPhysicalInterconnectTypeKey. If the device is connected
786to a SAS bus, this key should be set.
787
788Example:
789<pre>
790@textblock
791<dict>
792<key>Protocol Characteristics</key>
793<dict>
794<key>Physical Interconnect</key>
795<string>SAS</string>
796<key>Physical Interconnect Location</key>
797<string>External</string>
798</dict>
799</dict>
800@/textblock
801</pre>
802*/
803#define kIOPropertyPhysicalInterconnectTypeSerialAttachedSCSI"SAS"
804
805
806/*!
807@defined kIOPropertyPhysicalInterconnectTypeATAPI
808@discussion This key defines the value of ATAPI for the key
809kIOPropertyPhysicalInterconnectTypeKey. If the device is connected
810to an ATA bus and follows the ATAPI command specification, this key
811should be set.
812
813Example:
814<pre>
815@textblock
816<dict>
817<key>Protocol Characteristics</key>
818<dict>
819<key>Physical Interconnect</key>
820<string>ATAPI</string>
821<key>Physical Interconnect Location</key>
822<string>Internal</string>
823</dict>
824</dict>
825@/textblock
826</pre>
827*/
828#define kIOPropertyPhysicalInterconnectTypeATAPI"ATAPI"
829
830
831/*!
832@defined kIOPropertyPhysicalInterconnectTypeUSB
833@discussion This key defines the value of USB for the key
834kIOPropertyPhysicalInterconnectTypeKey. If the device is connected
835to a USB port, this key should be set.
836
837Example:
838<pre>
839@textblock
840<dict>
841<key>Protocol Characteristics</key>
842<dict>
843<key>Physical Interconnect</key>
844<string>USB</string>
845<key>Physical Interconnect Location</key>
846<string>External</string>
847</dict>
848</dict>
849@/textblock
850</pre>
851*/
852#define kIOPropertyPhysicalInterconnectTypeUSB"USB"
853
854
855/*!
856@defined kIOPropertyPhysicalInterconnectTypeFireWire
857@discussion This key defines the value of USB for the key
858kIOPropertyPhysicalInterconnectTypeKey. If the device is connected
859to a FireWire port, this key should be set.
860
861Example:
862<pre>
863@textblock
864<dict>
865<key>Protocol Characteristics</key>
866<dict>
867<key>Physical Interconnect</key>
868<string>FireWire</string>
869<key>Physical Interconnect Location</key>
870<string>External</string>
871</dict>
872</dict>
873@/textblock
874</pre>
875*/
876#define kIOPropertyPhysicalInterconnectTypeFireWire"FireWire"
877
878
879/*!
880 @defined kIOPropertyPhysicalInterconnectTypeSecureDigital
881 @discussion This key defines the value of Secure Digital for the key
882 kIOPropertyPhysicalInterconnectTypeSecureDigital. If the device is a
883 connected to a Secure Digital port and follows the Secure Digital
884 specification, this key should be set.
885
886 Example:
887 <pre>
888 @textblock
889 <dict>
890 <key>Protocol Characteristics</key>
891 <dict>
892 <key>Physical Interconnect</key>
893 <string>Secure Digital</string>
894 <key>Physical Interconnect Location</key>
895 <string>Internal</string>
896 </dict>
897 </dict>
898 @/textblock
899 </pre>
900 */
901#define kIOPropertyPhysicalInterconnectTypeSecureDigital"Secure Digital"
902
903
904/*!
905@defined kIOPropertyPhysicalInterconnectTypeSCSIParallel
906@discussion This key defines the value of SCSI Parallel Interface for the key
907kIOPropertyPhysicalInterconnectTypeKey. If the device is connected
908to a SCSI Parallel port, this key should be set.
909
910Example:
911<pre>
912@textblock
913<dict>
914<key>Protocol Characteristics</key>
915<dict>
916<key>Physical Interconnect</key>
917<string>SCSI Parallel Interface</string>
918<key>Physical Interconnect Location</key>
919<string>External</string>
920</dict>
921</dict>
922@/textblock
923</pre>
924*/
925#define kIOPropertyPhysicalInterconnectTypeSCSIParallel"SCSI Parallel Interface"
926
927
928/*!
929@defined kIOPropertyPhysicalInterconnectTypeFibreChannel
930@discussion This key defines the value of Fibre Channel Interface for the key
931kIOPropertyPhysicalInterconnectTypeKey. If the device is connected
932to a Fibre Channel port, this key should be set.
933
934Example:
935<pre>
936@textblock
937<dict>
938<key>Protocol Characteristics</key>
939<dict>
940<key>Physical Interconnect</key>
941<string>Fibre Channel Interface</string>
942<key>Physical Interconnect Location</key>
943<string>External</string>
944</dict>
945</dict>
946@/textblock
947</pre>
948*/
949#define kIOPropertyPhysicalInterconnectTypeFibreChannel"Fibre Channel Interface"
950
951
952/*!
953@defined kIOPropertyPhysicalInterconnectTypeVirtual
954@discussion This key defines the value of Virtual Interface for the key
955kIOPropertyPhysicalInterconnectTypeVirtual. If the device is being made to look
956like a storage device, but is not such in actuality, such as a File or RAM, this
957key should be set.
958
959Example:
960<pre>
961@textblock
962<dict>
963<key>Protocol Characteristics</key>
964<dict>
965<key>Physical Interconnect</key>
966<string>Virtual Interface</string>
967<key>Physical Interconnect Location</key>
968<string>File</string>
969</dict>
970</dict>
971@/textblock
972</pre>
973*/
974#define kIOPropertyPhysicalInterconnectTypeVirtual"Virtual Interface"
975
976
977/*!
978@defined kIOPropertyPortStatusLinkEstablishedKey
979@discussion This key defines the value of Link Established for the key
980kIOPropertyPortStatusKey.
981
982Example:
983<pre>
984@textblock
985<dict>
986<key>Controller Characteristics</key>
987<dict>
988<key>Port Status</key>
989<string>Link Established</string>
990</dict>
991</dict>
992@/textblock
993</pre>
994*/
995#define kIOPropertyPortStatusLinkEstablishedKey"Link Established"
996
997
998/*!
999@defined kIOPropertyPortStatusNoLinkEstablishedKey
1000@discussion This key defines the value of No Link Established for the key
1001kIOPropertyPortStatusKey.
1002
1003Example:
1004<pre>
1005@textblock
1006<dict>
1007<key>Controller Characteristics</key>
1008<dict>
1009<key>Port Status</key>
1010<string>No Link Established</string>
1011</dict>
1012</dict>
1013@/textblock
1014</pre>
1015*/
1016#define kIOPropertyPortStatusNoLinkEstablishedKey"No Link Established"
1017
1018
1019/*!
1020@defined kIOPropertyPortStatusLinkFailedKey
1021@discussion This key defines the value of Link Failed for the key
1022kIOPropertyPortStatusKey.
1023
1024Example:
1025<pre>
1026@textblock
1027<dict>
1028<key>Controller Characteristics</key>
1029<dict>
1030<key>Port Status</key>
1031<string>Link Failed</string>
1032</dict>
1033</dict>
1034@/textblock
1035</pre>
1036*/
1037#define kIOPropertyPortStatusLinkFailedKey"Link Failed"
1038
1039
1040/*!
1041@defined kIOPropertyPortSpeedAutomaticKey
1042@discussion This key defines the value of Automatic for the key
1043kIOPropertyPortSpeedKey. If the speed of the port is automatically
1044adjusted by the host/device and a definitive speed is not known,
1045this key should be used.
1046
1047Note: This value can change. It is not a static value.
1048
1049Requirement: Optional for any interconnect.
1050
1051Example:
1052<pre>
1053@textblock
1054<dict>
1055<key>Controller Characteristics</key>
1056<dict>
1057<key>Port Speed</key>
1058<string>Automatic</string>
1059</dict>
1060</dict>
1061@/textblock
1062</pre>
1063*/
1064#define kIOPropertyPortSpeedAutomaticKey"Automatic"
1065
1066
1067/*!
1068@defined kIOPropertyPortSpeed1GigabitKey
1069@discussion This key defines the value of 1 Gigabit for the key
1070kIOPropertyPortSpeedKey. If the speed of the port is 1 Gigabit
1071per second and is not automatically determined (i.e. the user
1072configured the port to be exactly this speed),
1073this key should be used.
1074
1075Note: This value can change. It is not a static value.
1076
1077Requirement: Optional for any interconnect.
1078
1079Example:
1080<pre>
1081@textblock
1082<dict>
1083<key>Controller Characteristics</key>
1084<dict>
1085<key>Port Speed</key>
1086<string>1 Gigabit</string>
1087</dict>
1088</dict>
1089@/textblock
1090</pre>
1091*/
1092#define kIOPropertyPortSpeed1GigabitKey"1 Gigabit"
1093
1094/*!
1095@defined kIOPropertyPortSpeed1_5GigabitKey
1096@discussion This key defines the value of 1.5 Gigabit for the key
1097kIOPropertyPortSpeedKey. If the speed of the port is 1.5 Gigabits
1098per second and is not automatically determined (i.e. the user
1099configured the port to be exactly this speed),
1100this key should be used.
1101
1102Note: This value can change. It is not a static value.
1103
1104Requirement: Optional for any interconnect.
1105
1106Example:
1107<pre>
1108@textblock
1109<dict>
1110<key>Controller Characteristics</key>
1111<dict>
1112<key>Port Speed</key>
1113<string>1.5 Gigabit</string>
1114</dict>
1115</dict>
1116@/textblock
1117</pre>
1118*/
1119#define kIOPropertyPortSpeed1_5GigabitKey"1.5 Gigabit"
1120
1121
1122/*!
1123@defined kIOPropertyPortSpeed2GigabitKey
1124@discussion This key defines the value of 2 Gigabit for the key
1125kIOPropertyPortSpeedKey. If the speed of the port is 2 Gigabits
1126per second and is not automatically determined (i.e. the user
1127configured the port to be exactly this speed),
1128this key should be used.
1129
1130Note: This value can change. It is not a static value.
1131
1132Requirement: Optional for any interconnect.
1133
1134Example:
1135<pre>
1136@textblock
1137<dict>
1138<key>Controller Characteristics</key>
1139<dict>
1140<key>Port Speed</key>
1141<string>2 Gigabit</string>
1142</dict>
1143</dict>
1144@/textblock
1145</pre>
1146*/
1147#define kIOPropertyPortSpeed2GigabitKey"2 Gigabit"
1148
1149
1150/*!
1151@defined kIOPropertyPortSpeed3GigabitKey
1152@discussion This key defines the value of 3 Gigabit for the key
1153kIOPropertyPortSpeedKey. If the speed of the port is 3 Gigabits
1154per second and is not automatically determined (i.e. the user
1155configured the port to be exactly this speed),
1156this key should be used.
1157
1158Note: This value can change. It is not a static value.
1159
1160Requirement: Optional for any interconnect.
1161
1162Example:
1163<pre>
1164@textblock
1165<dict>
1166<key>Controller Characteristics</key>
1167<dict>
1168<key>Port Speed</key>
1169<string>3 Gigabit</string>
1170</dict>
1171</dict>
1172@/textblock
1173</pre>
1174*/
1175#define kIOPropertyPortSpeed3GigabitKey"3 Gigabit"
1176
1177
1178/*!
1179@defined kIOPropertyPortSpeed4GigabitKey
1180@discussion This key defines the value of 4 Gigabit for the key
1181kIOPropertyPortSpeedKey. If the speed of the port is 4 Gigabits
1182per second and is not automatically determined (i.e. the user
1183configured the port to be exactly this speed),
1184this key should be used.
1185
1186Note: This value can change. It is not a static value.
1187
1188Requirement: Optional for any interconnect.
1189
1190Example:
1191<pre>
1192@textblock
1193<dict>
1194<key>Controller Characteristics</key>
1195<dict>
1196<key>Port Speed</key>
1197<string>4 Gigabit</string>
1198</dict>
1199</dict>
1200@/textblock
1201</pre>
1202*/
1203#define kIOPropertyPortSpeed4GigabitKey"4 Gigabit"
1204
1205/*!
1206@defined kIOPropertyPortSpeed6GigabitKey
1207@discussion This key defines the value of 6 Gigabit for the key
1208kIOPropertyPortSpeedKey. If the speed of the port is 6 Gigabits
1209per second and is not automatically determined (i.e. the user
1210configured the port to be exactly this speed),
1211this key should be used.
1212
1213Note: This value can change. It is not a static value.
1214
1215Requirement: Optional for any interconnect.
1216
1217Example:
1218<pre>
1219@textblock
1220<dict>
1221<key>Controller Characteristics</key>
1222<dict>
1223<key>Port Speed</key>
1224<string>6 Gigabit</string>
1225</dict>
1226</dict>
1227@/textblock
1228</pre>
1229*/
1230#define kIOPropertyPortSpeed6GigabitKey"6 Gigabit"
1231
1232
1233/*!
1234@defined kIOPropertyPortSpeed8GigabitKey
1235@discussion This key defines the value of 8 Gigabit for the key
1236kIOPropertyPortSpeedKey. If the speed of the port is 8 Gigabits
1237per second and is not automatically determined (i.e. the user
1238configured the port to be exactly this speed),
1239this key should be used.
1240
1241Note: This value can change. It is not a static value.
1242
1243Requirement: Optional for any interconnect.
1244
1245Example:
1246<pre>
1247@textblock
1248<dict>
1249<key>Controller Characteristics</key>
1250<dict>
1251<key>Port Speed</key>
1252<string>8 Gigabit</string>
1253</dict>
1254</dict>
1255@/textblock
1256</pre>
1257*/
1258#define kIOPropertyPortSpeed8GigabitKey"8 Gigabit"
1259
1260
1261/*!
1262@defined kIOPropertyPortSpeed10GigabitKey
1263@discussion This key defines the value of 10 Gigabit for the key
1264kIOPropertyPortSpeedKey. If the speed of the port is 10 Gigabits
1265per second and is not automatically determined (i.e. the user
1266configured the port to be exactly this speed),
1267this key should be used.
1268
1269Note: This value can change. It is not a static value.
1270
1271Requirement: Optional for any interconnect.
1272
1273Example:
1274<pre>
1275@textblock
1276<dict>
1277<key>Controller Characteristics</key>
1278<dict>
1279<key>Port Speed</key>
1280<string>10 Gigabit</string>
1281</dict>
1282</dict>
1283@/textblock
1284</pre>
1285*/
1286#define kIOPropertyPortSpeed10GigabitKey"10 Gigabit"
1287
1288
1289/*!
1290@defined kIOPropertyPortSpeedAutomatic1GigabitKey
1291@discussion This key defines the value of Automatic (1 Gigabit)
1292for the key kIOPropertyPortSpeedKey. If the speed of the port is
12931 Gigabit per second and is automatically determined by host
1294software, this key should be used.
1295
1296Note: This value can change. It is not a static value.
1297
1298Requirement: Optional for any interconnect.
1299
1300Example:
1301<pre>
1302@textblock
1303<dict>
1304<key>Controller Characteristics</key>
1305<dict>
1306<key>Port Speed</key>
1307<string>Automatic (1 Gigabit)</string>
1308</dict>
1309</dict>
1310@/textblock
1311</pre>
1312*/
1313#define kIOPropertyPortSpeedAutomatic1GigabitKey"Automatic (1 Gigabit)"
1314
1315
1316/*!
1317@defined kIOPropertyPortSpeedAutomatic1_5GigabitKey
1318@discussion This key defines the value of Automatic (1.5 Gigabit) for the key
1319kIOPropertyPortSpeedKey. If the speed of the port is
13201.5 Gigabits per second and is automatically determined by host
1321software, this key should be used.
1322
1323Note: This value can change. It is not a static value.
1324
1325Requirement: Optional for any interconnect.
1326
1327Example:
1328<pre>
1329@textblock
1330<dict>
1331<key>Controller Characteristics</key>
1332<dict>
1333<key>Port Speed</key>
1334<string>Automatic (1.5 Gigabit)</string>
1335</dict>
1336</dict>
1337@/textblock
1338</pre>
1339*/
1340#define kIOPropertyPortSpeedAutomatic1_5GigabitKey"Automatic (1.5 Gigabit)"
1341
1342
1343/*!
1344@defined kIOPropertyPortSpeedAutomatic2GigabitKey
1345@discussion This key defines the value of Automatic (2 Gigabit)
1346for the key kIOPropertyPortSpeedKey. If the speed of the port is
13472 Gigabits per second and is automatically determined by host
1348software, this key should be used.
1349
1350Note: This value can change. It is not a static value.
1351
1352Requirement: Optional for any interconnect.
1353
1354Example:
1355<pre>
1356@textblock
1357<dict>
1358<key>Controller Characteristics</key>
1359<dict>
1360<key>Port Speed</key>
1361<string>Automatic (2 Gigabit)</string>
1362</dict>
1363</dict>
1364@/textblock
1365</pre>
1366*/
1367#define kIOPropertyPortSpeedAutomatic2GigabitKey"Automatic (2 Gigabit)"
1368
1369
1370/*!
1371@defined kIOPropertyPortSpeedAutomatic3GigabitKey
1372@discussion This key defines the value of Automatic (3 Gigabit)
1373for the key kIOPropertyPortSpeedKey. If the speed of the port is
13743 Gigabits per second and is automatically determined by host
1375software, this key should be used.
1376
1377Note: This value can change. It is not a static value.
1378
1379Requirement: Optional for any interconnect.
1380
1381Example:
1382<pre>
1383@textblock
1384<dict>
1385<key>Controller Characteristics</key>
1386<dict>
1387<key>Port Speed</key>
1388<string>Automatic (3 Gigabit)</string>
1389</dict>
1390</dict>
1391@/textblock
1392</pre>
1393*/
1394#define kIOPropertyPortSpeedAutomatic3GigabitKey"Automatic (3 Gigabit)"
1395
1396
1397/*!
1398@defined kIOPropertyPortSpeedAutomatic4GigabitKey
1399@discussion This key defines the value of Automatic (4 Gigabit)
1400for the key kIOPropertyPortSpeedKey. If the speed of the port is
14014 Gigabits per second and is automatically determined by host
1402software, this key should be used.
1403
1404Note: This value can change. It is not a static value.
1405
1406Requirement: Optional for any interconnect.
1407
1408Example:
1409<pre>
1410@textblock
1411<dict>
1412<key>Controller Characteristics</key>
1413<dict>
1414<key>Port Speed</key>
1415<string>Automatic (4 Gigabit)</string>
1416</dict>
1417</dict>
1418@/textblock
1419</pre>
1420*/
1421#define kIOPropertyPortSpeedAutomatic4GigabitKey"Automatic (4 Gigabit)"
1422
1423
1424/*!
1425@defined kIOPropertyPortSpeedAutomatic6GigabitKey
1426@discussion This key defines the value of Automatic (6 Gigabit)
1427for the key kIOPropertyPortSpeedKey. If the speed of the port is
14286 Gigabits per second and is automatically determined by host
1429software, this key should be used.
1430
1431Note: This value can change. It is not a static value.
1432
1433Requirement: Optional for any interconnect.
1434
1435Example:
1436<pre>
1437@textblock
1438<dict>
1439<key>Controller Characteristics</key>
1440<dict>
1441<key>Port Speed</key>
1442<string>Automatic (6 Gigabit)</string>
1443</dict>
1444</dict>
1445@/textblock
1446</pre>
1447*/
1448#define kIOPropertyPortSpeedAutomatic6GigabitKey"Automatic (6 Gigabit)"
1449
1450
1451/*!
1452@defined kIOPropertyPortSpeedAutomatic8GigabitKey
1453@discussion This key defines the value of Automatic (8 Gigabit)
1454for the key kIOPropertyPortSpeedKey. If the speed of the port is
14558 Gigabits per second and is automatically determined by host
1456software, this key should be used.
1457
1458Note: This value can change. It is not a static value.
1459
1460Requirement: Optional for any interconnect.
1461
1462Example:
1463<pre>
1464@textblock
1465<dict>
1466<key>Controller Characteristics</key>
1467<dict>
1468<key>Port Speed</key>
1469<string>Automatic (8 Gigabit)</string>
1470</dict>
1471</dict>
1472@/textblock
1473</pre>
1474*/
1475#define kIOPropertyPortSpeedAutomatic8GigabitKey"Automatic (8 Gigabit)"
1476
1477
1478/*!
1479@defined kIOPropertyPortSpeedAutomatic10GigabitKey
1480@discussion This key defines the value of Automatic (10 Gigabit)
1481for the key kIOPropertyPortSpeedKey. If the speed of the port is
148210 Gigabits per second and is automatically determined by host
1483software, this key should be used.
1484
1485Note: This value can change. It is not a static value.
1486
1487Requirement: Optional for any interconnect.
1488
1489Example:
1490<pre>
1491@textblock
1492<dict>
1493<key>Controller Characteristics</key>
1494<dict>
1495<key>Port Speed</key>
1496<string>Automatic (10 Gigabit)</string>
1497</dict>
1498</dict>
1499@/textblock
1500</pre>
1501*/
1502#define kIOPropertyPortSpeedAutomatic10GigabitKey"Automatic (10 Gigabit)"
1503
1504
1505/*!
1506@defined kIOPropertyPortTopologyAutomaticKey
1507@discussion This key defines the value of Automatic for the key
1508kIOPropertyPortTopologyKey. If the topology of the port is automatically
1509adjusted by the host/device and a definitive topology is not known,
1510this key should be used.
1511
1512Note: This value can change. It is not a static value.
1513
1514Requirement: Optional for any interconnect.
1515
1516Example:
1517<pre>
1518@textblock
1519<dict>
1520<key>Controller Characteristics</key>
1521<dict>
1522<key>Port Topology</key>
1523<string>Automatic</string>
1524</dict>
1525</dict>
1526@/textblock
1527</pre>
1528*/
1529#define kIOPropertyPortTopologyAutomaticKey"Automatic"
1530
1531
1532/*!
1533@defined kIOPropertyPortTopologyNPortKey
1534@discussion This key defines the value of N_Port for the key
1535kIOPropertyPortTopologyKey. If the topology of the port is an N_Port,
1536this key should be used.
1537
1538Note: This value can change. It is not a static value.
1539
1540Requirement: Optional for any interconnect.
1541
1542Example:
1543<pre>
1544@textblock
1545<dict>
1546<key>Controller Characteristics</key>
1547<dict>
1548<key>Port Topology</key>
1549<string>N_Port</string>
1550</dict>
1551</dict>
1552@/textblock
1553</pre>
1554*/
1555#define kIOPropertyPortTopologyNPortKey"N_Port"
1556
1557
1558/*!
1559@defined kIOPropertyPortTopologyNLPortKey
1560@discussion This key defines the value of NL_Port for the key
1561kIOPropertyPortTopologyKey. If the topology of the port is an NL_Port,
1562this key should be used.
1563
1564Note: This value can change. It is not a static value.
1565
1566Requirement: Optional for any interconnect.
1567
1568Example:
1569<pre>
1570@textblock
1571<dict>
1572<key>Controller Characteristics</key>
1573<dict>
1574<key>Port Topology</key>
1575<string>NL_Port</string>
1576</dict>
1577</dict>
1578@/textblock
1579</pre>
1580*/
1581#define kIOPropertyPortTopologyNLPortKey"NL_Port"
1582
1583
1584/*!
1585@defined kIOPropertyPortTopologyAutomaticNPortKey
1586@discussion This key defines the value of Automatic (N_Port) for the key
1587kIOPropertyPortTopologyKey. If the topology of the port is
1588N_Port and is automatically determined by host software, this
1589key should be used.
1590
1591Note: This value can change. It is not a static value.
1592
1593Requirement: Optional for any interconnect.
1594
1595Example:
1596<pre>
1597@textblock
1598<dict>
1599<key>Controller Characteristics</key>
1600<dict>
1601<key>Port Topology</key>
1602<string>Automatic (N_Port)</string>
1603</dict>
1604</dict>
1605@/textblock
1606</pre>
1607*/
1608#define kIOPropertyPortTopologyAutomaticNPortKey"Automatic (N_Port)"
1609
1610
1611/*!
1612@defined kIOPropertyPortTopologyAutomaticNLPortKey
1613@discussion This key defines the value of Automatic (NL_Port) for the key
1614kIOPropertyPortTopologyKey. If the topology of the port is
1615NL_Port and is automatically determined by host software, this
1616key should be used.
1617
1618Note: This value can change. It is not a static value.
1619
1620Requirement: Optional for any interconnect.
1621
1622Example:
1623<pre>
1624@textblock
1625<dict>
1626<key>Controller Characteristics</key>
1627<dict>
1628<key>Port Topology</key>
1629<string>Automatic (NL_Port)</string>
1630</dict>
1631</dict>
1632@/textblock
1633</pre>
1634*/
1635#define kIOPropertyPortTopologyAutomaticNLPortKey"Automatic (NL_Port)"
1636
1637
1638/*!
1639@defined kIOPropertySCSIParallelSignalingTypeHVDKey
1640@discussion This key defines the value of High Voltage Differential for the key
1641kIOPropertySCSIParallelSignalingTypeKey. If the signaling type of the port is
1642High Voltage Differential, this key should be used.
1643
1644Requirement: Optional for SCSI Parallel Interface interconnect.
1645
1646Example:
1647<pre>
1648@textblock
1649<dict>
1650<key>Controller Characteristics</key>
1651<dict>
1652<key>SCSI Parallel Signaling Type</key>
1653<string>High Voltage Differential</string>
1654</dict>
1655</dict>
1656@/textblock
1657</pre>
1658*/
1659#define kIOPropertySCSIParallelSignalingTypeHVDKey"High Voltage Differential"
1660
1661
1662/*!
1663@defined kIOPropertySCSIParallelSignalingTypeLVDKey
1664@discussion This key defines the value of Low Voltage Differential for the key
1665kIOPropertySCSIParallelSignalingTypeKey. If the signaling type of the port is
1666Low Voltage Differential, this key should be used.
1667
1668Requirement: Optional for SCSI Parallel Interface interconnect.
1669
1670Example:
1671<pre>
1672@textblock
1673<dict>
1674<key>Controller Characteristics</key>
1675<dict>
1676<key>SCSI Parallel Signaling Type</key>
1677<string>Low Voltage Differential</string>
1678</dict>
1679</dict>
1680@/textblock
1681</pre>
1682*/
1683#define kIOPropertySCSIParallelSignalingTypeLVDKey"Low Voltage Differential"
1684
1685
1686/*!
1687@defined kIOPropertySCSIParallelSignalingTypeSEKey
1688@discussion This key defines the value of Single Ended for the key
1689kIOPropertySCSIParallelSignalingTypeKey. If the signaling type of the port is
1690Single Ended, this key should be used.
1691
1692Requirement: Optional for SCSI Parallel Interface interconnect.
1693
1694Example:
1695<pre>
1696@textblock
1697<dict>
1698<key>Controller Characteristics</key>
1699<dict>
1700<key>SCSI Parallel Signaling Type</key>
1701<string>Single Ended</string>
1702</dict>
1703</dict>
1704@/textblock
1705</pre>
1706*/
1707#define kIOPropertySCSIParallelSignalingTypeSEKey"Single Ended"
1708
1709
1710/*!
1711@defined kIOPropertyFibreChannelCableDescriptionCopperKey
1712@discussion This key defines the value of Copper for the key
1713kIOPropertyFibreChannelCableDescriptionKey. If the cabling is
1714Copper, this key should be used.
1715
1716Requirement: Optional for Fibre Channel Interface interconnect.
1717
1718Example:
1719<pre>
1720@textblock
1721<dict>
1722<key>Controller Characteristics</key>
1723<dict>
1724<key>Fibre Channel Cabling Type</key>
1725<string>Copper</string>
1726</dict>
1727</dict>
1728@/textblock
1729</pre>
1730*/
1731#define kIOPropertyFibreChannelCableDescriptionCopperKey"Copper"
1732
1733
1734/*!
1735@defined kIOPropertyFibreChannelCableDescriptionFiberOpticKey
1736@discussion This key defines the value of Fiber Optic for the key
1737kIOPropertyFibreChannelCableDescriptionKey. If the cabling is
1738Fiber Optic, this key should be used.
1739
1740Requirement: Optional for Fibre Channel Interface interconnect.
1741
1742Example:
1743<pre>
1744@textblock
1745<dict>
1746<key>Controller Characteristics</key>
1747<dict>
1748<key>Fibre Channel Cabling Type</key>
1749<string>Fiber Optic</string>
1750</dict>
1751</dict>
1752@/textblock
1753</pre>
1754*/
1755#define kIOPropertyFibreChannelCableDescriptionFiberOpticKey"Fiber Optic"
1756
1757
1758#endif/* _IOKIT_IO_STORAGE_PROTOCOL_CHARACTERISTICS_H_ */
1759

Archive Download this file

Revision: 1466