/alps/pcitool

To get this branch, use:
bzr branch http://suren.me/webbzr/alps/pcitool

« back to all changes in this revision

Viewing changes to xml/types.xsd

  • Committer: Suren A. Chilingaryan
  • Date: 2015-09-24 02:28:45 UTC
  • mfrom: (305.1.19 views)
  • Revision ID: csa@suren.me-20150924022845-p7hc8lh8v0q48g0r
Finalyze XML support and provide initial support for views (only descriptions so far)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<?xml version="1.0" encoding="ISO-8859-1"?>
 
2
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 
3
 
 
4
  <xsd:complexType name="pcilib_bank_t">
 
5
      <xsd:choice minOccurs="0" maxOccurs="unbounded">
 
6
        <xsd:element name="register" type="pcilib_register_t" minOccurs="0" maxOccurs="unbounded" />
 
7
      </xsd:choice>
 
8
      <xsd:attribute name="protocol" type="xsd:string" default="default" />
 
9
      <xsd:attribute name="bar" type="pcilib_bar_t" />
 
10
      <xsd:attribute name="address" type="uintptr_t" />
 
11
      <xsd:attribute name="read_address" type="uintptr_t" />
 
12
      <xsd:attribute name="write_address" type="uintptr_t" />
 
13
      <xsd:attribute name="size" type="size_t" default="4096" />
 
14
      <xsd:attribute name="word_size" type="uint8_t" default="32" />
 
15
      <xsd:attribute name="endianess" type="pcilib_endianess_t" default="host" />
 
16
      <xsd:attribute name="format" type="xsd:string" default="0x%lx" />
 
17
      <xsd:attribute name="name" type="xsd:ID" use="required" />
 
18
      <xsd:attribute name="description" type="xsd:string" />
 
19
  </xsd:complexType>
 
20
 
 
21
  <xsd:complexType name="pcilib_register_t">
 
22
      <xsd:sequence>
 
23
        <xsd:element name="view" type="pcilib_view_reference_t" minOccurs="0" maxOccurs="unbounded" />
 
24
        <xsd:element name="field" type="pcilib_register_field_t" minOccurs="0" maxOccurs="unbounded" />
 
25
      </xsd:sequence>
 
26
      <xsd:attribute name="address" type="uint64_t" use="required" />
 
27
      <xsd:attribute name="offset" type="uint8_t" default="0" />
 
28
      <xsd:attribute name="size" type="uint8_t" default="32" />
 
29
      <xsd:attribute name="default" type="pcilib_register_value_t" default="0" />
 
30
      <xsd:attribute name="min" type="pcilib_register_value_t" />
 
31
      <xsd:attribute name="max" type="pcilib_register_value_t"/>
 
32
      <xsd:attribute name="rwmask" type="pcilib_rwmask_t" default="all" />
 
33
      <xsd:attribute name="mode" type="pcilib_register_mode_t" default="R" />
 
34
      <xsd:attribute name="name" type="xsd:ID" use="required"/>
 
35
      <xsd:attribute name="description" type="xsd:string" />
 
36
  </xsd:complexType>
 
37
 
 
38
  <xsd:complexType name="pcilib_register_field_t">
 
39
      <xsd:sequence>
 
40
        <xsd:element name="view" type="pcilib_view_reference_t" minOccurs="0" maxOccurs="unbounded" />
 
41
      </xsd:sequence>
 
42
      <xsd:attribute name="offset" type="uint8_t"/>
 
43
      <xsd:attribute name="size" type="uint8_t"/>
 
44
      <xsd:attribute name="mode" type="pcilib_register_mode_t"/>
 
45
      <xsd:attribute name="name" type="xsd:ID" use="required" />
 
46
      <xsd:attribute name="description" type="xsd:string" />
 
47
 </xsd:complexType>
 
48
 
 
49
  <xsd:complexType name="pcilib_view_reference_t">
 
50
    <xsd:attribute name="view" type="xsd:string" use="required" />
 
51
    <xsd:attribute name="name" type="xsd:string" />
 
52
  </xsd:complexType>
 
53
 
 
54
  <xsd:complexType name="pcilib_view_t">
 
55
    <xsd:attribute name="name" type="xsd:ID" use="required" />
 
56
    <xsd:attribute name="unit" type="xsd:string" />
 
57
    <xsd:attribute name="type" type="pcilib_data_type_t" />
 
58
    <xsd:attribute name="visible" type="bool_t" default="0" />
 
59
    <xsd:attribute name="description" type="xsd:string" />
 
60
  </xsd:complexType>
 
61
 
 
62
  <xsd:complexType name="pcilib_transform_view_t">
 
63
    <xsd:complexContent>
 
64
        <xsd:extension base="pcilib_view_t">
 
65
          <xsd:attribute name="read_from_register" type="xsd:string" />
 
66
          <xsd:attribute name="write_to_register" type="xsd:string" />
 
67
        </xsd:extension>
 
68
    </xsd:complexContent>
 
69
  </xsd:complexType>
 
70
 
 
71
  <xsd:complexType name="pcilib_enum_view_t">
 
72
    <xsd:complexContent>
 
73
        <xsd:extension base="pcilib_view_t">
 
74
            <xsd:choice minOccurs="1" maxOccurs="unbounded">
 
75
                <xsd:element name="name" type="pcilib_value_name_t" minOccurs="1" maxOccurs="unbounded" />
 
76
            </xsd:choice>
 
77
        </xsd:extension>
 
78
    </xsd:complexContent>
 
79
  </xsd:complexType>
 
80
 
 
81
  <xsd:complexType name="pcilib_value_name_t">
 
82
    <xsd:attribute name="value" type="pcilib_register_value_t" use="required" />
 
83
    <xsd:attribute name="min" type="pcilib_register_value_t" />
 
84
    <xsd:attribute name="max" type="pcilib_register_value_t" />
 
85
    <xsd:attribute name="name" type="xsd:string" use="required" />
 
86
  </xsd:complexType>
 
87
 
 
88
  <xsd:complexType name="pcilib_unit_t">
 
89
    <xsd:sequence>
 
90
        <xsd:element name="transform" type="pcilib_unit_transform_t" minOccurs="0" maxOccurs="unbounded"/>
 
91
    </xsd:sequence>
 
92
    <xsd:attribute name="name" type="xsd:ID" use="required"/>
 
93
    <xsd:attribute name="title" type="xsd:string"/>
 
94
  </xsd:complexType>
 
95
 
 
96
  <xsd:complexType name="pcilib_unit_transform_t">
 
97
    <xsd:attribute name="transform" type="xsd:string" use="required" />
 
98
    <xsd:attribute name="unit" type="xsd:string" use="required"/>
 
99
  </xsd:complexType>
 
100
 
 
101
  <xsd:simpleType name="bool_t">
 
102
    <xsd:restriction base="xsd:integer">
 
103
      <xsd:minInclusive value="0"/>
 
104
      <xsd:maxInclusive value="1"/>
 
105
    </xsd:restriction>
 
106
  </xsd:simpleType>
 
107
  <xsd:simpleType name="dec8_t">
 
108
    <xsd:restriction base="xsd:integer">
 
109
      <xsd:minInclusive value="0"/>
 
110
      <xsd:maxInclusive value="255"/>
 
111
    </xsd:restriction>
 
112
  </xsd:simpleType>
 
113
  <xsd:simpleType name="hex8_t">
 
114
    <xsd:restriction base="xsd:string">
 
115
      <xsd:pattern value="0x([a-fA-F0-9]){1,2}"/>
 
116
    </xsd:restriction>
 
117
  </xsd:simpleType>
 
118
  <xsd:simpleType name="uint8_t">
 
119
    <xsd:union memberTypes="dec8_t hex8_t"/>
 
120
  </xsd:simpleType>
 
121
  <xsd:simpleType name="dec32_t">
 
122
    <xsd:restriction base="xsd:integer">
 
123
      <xsd:minInclusive value="0"/>
 
124
      <xsd:maxInclusive value="4294967295"/>
 
125
    </xsd:restriction>
 
126
  </xsd:simpleType>
 
127
  <xsd:simpleType name="hex32_t">
 
128
    <xsd:restriction base="xsd:string">
 
129
      <xsd:pattern value="0x([a-fA-F0-9]){1,8}"/>
 
130
    </xsd:restriction>
 
131
  </xsd:simpleType>
 
132
  <xsd:simpleType name="uint32_t">
 
133
    <xsd:union memberTypes="dec32_t hex32_t"/>
 
134
  </xsd:simpleType>
 
135
  <xsd:simpleType name="dec64_t">
 
136
    <xsd:restriction base="xsd:integer">
 
137
      <xsd:minInclusive value="0"/>
 
138
      <xsd:maxInclusive value="18446744073709551615"/>
 
139
    </xsd:restriction>
 
140
  </xsd:simpleType>
 
141
  <xsd:simpleType name="hex64_t">
 
142
    <xsd:restriction base="xsd:string">
 
143
      <xsd:pattern value="0x([a-fA-F0-9]){1,16}"/>
 
144
    </xsd:restriction>
 
145
  </xsd:simpleType>
 
146
  <xsd:simpleType name="uint64_t">
 
147
    <xsd:union memberTypes="dec64_t hex64_t"/>
 
148
  </xsd:simpleType>
 
149
  <xsd:simpleType name="size_t">
 
150
    <xsd:restriction base="uint64_t"/>
 
151
  </xsd:simpleType>
 
152
  <xsd:simpleType name="uintptr_t">
 
153
    <xsd:restriction base="hex64_t"/>
 
154
  </xsd:simpleType>
 
155
 
 
156
  <xsd:simpleType name="pcilib_register_value_t">
 
157
    <xsd:restriction base="uint32_t"/>
 
158
  </xsd:simpleType>
 
159
  <xsd:simpleType name="pcilib_bar_t">
 
160
    <xsd:restriction base="xsd:integer">
 
161
      <xsd:minInclusive value="0"/>
 
162
      <xsd:maxInclusive value="5"/>
 
163
    </xsd:restriction>
 
164
  </xsd:simpleType>
 
165
  <xsd:simpleType name="pcilib_bank_address_t">
 
166
    <xsd:restriction base="xsd:string">
 
167
      <xsd:enumeration value="0"/>
 
168
      <xsd:enumeration value="1"/>
 
169
      <xsd:enumeration value="2"/>
 
170
      <xsd:enumeration value="3"/>
 
171
      <xsd:enumeration value="dma0"/>
 
172
      <xsd:enumeration value="dma1"/>
 
173
      <xsd:enumeration value="dma2"/>
 
174
      <xsd:enumeration value="dma3"/>
 
175
    </xsd:restriction>
 
176
  </xsd:simpleType>
 
177
  <xsd:simpleType name="pcilib_register_mode_t">
 
178
    <xsd:restriction base="xsd:string">
 
179
      <xsd:enumeration value="R"/>
 
180
      <xsd:enumeration value="W"/>
 
181
      <xsd:enumeration value="RW"/>
 
182
      <xsd:enumeration value="W1C"/>
 
183
      <xsd:enumeration value="RW1C"/>
 
184
    </xsd:restriction>
 
185
  </xsd:simpleType>
 
186
  <xsd:simpleType name="pcilib_data_type_t">
 
187
    <xsd:restriction base="xsd:string">
 
188
      <xsd:enumeration value="string"/>
 
189
      <xsd:enumeration value="float"/>
 
190
      <xsd:enumeration value="int"/>
 
191
    </xsd:restriction>
 
192
  </xsd:simpleType>
 
193
  <xsd:simpleType name="pcilib_endianess_t">
 
194
    <xsd:restriction base="xsd:string">
 
195
      <xsd:enumeration value="little"/>
 
196
      <xsd:enumeration value="big"/>
 
197
      <xsd:enumeration value="host"/>
 
198
    </xsd:restriction>
 
199
  </xsd:simpleType>
 
200
  <xsd:simpleType name="pcilib_rwmask_keywords_t">
 
201
    <xsd:restriction base="xsd:string">
 
202
      <xsd:enumeration value="all"/>
 
203
    </xsd:restriction>
 
204
  </xsd:simpleType>
 
205
  <xsd:simpleType name="pcilib_rwmask_t">
 
206
    <xsd:union memberTypes="pcilib_rwmask_keywords_t pcilib_register_value_t"/>
 
207
  </xsd:simpleType>
 
208
</xsd:schema>