|
124 | 124 | "items": { |
125 | 125 | "type": "object", |
126 | 126 | "properties": { |
127 | | - "name": { |
128 | | - "$ref": "param-common-schema.json#/paramName", |
| 127 | + "reg-name": { |
| 128 | + "$ref": "param-common-schema.json#/csrName", |
129 | 129 | "description": "Single CSR name" |
130 | 130 | }, |
131 | | - "names": { |
132 | | - "$ref": "param-common-schema.json#/paramNameArray", |
| 131 | + "reg-names": { |
| 132 | + "$ref": "param-common-schema.json#/csrNameArray", |
133 | 133 | "description": "Multiple CSR names" |
134 | 134 | }, |
135 | 135 | "note": { |
|
140 | 140 | "type": "string", |
141 | 141 | "$ref": "param-common-schema.json#/descriptionDesc" |
142 | 142 | }, |
| 143 | + "field-name": { |
| 144 | + "$ref": "param-common-schema.json#/csrName", |
| 145 | + "description": "Single CSR field name" |
| 146 | + }, |
| 147 | + "field-names": { |
| 148 | + "$ref": "param-common-schema.json#/csrNameArray", |
| 149 | + "description": "Multiple CSR field names" |
| 150 | + }, |
| 151 | + "type": { |
| 152 | + "$ref": "param-common-schema.json#/csrType", |
| 153 | + "description": "List of possible legal values" |
| 154 | + }, |
| 155 | + "width": { |
| 156 | + "$ref": "param-common-schema.json#/paramName", |
| 157 | + "description": "Name of a parameter that provides the bit width" |
| 158 | + }, |
| 159 | + "ro-mask": { |
| 160 | + "$ref": "param-common-schema.json#/multiBaseValue", |
| 161 | + "description": "Mask specifying read-only bits (1 = read-only, 0 = read-write). Supports decimal, hex (0x...), or binary (0b...)." |
| 162 | + }, |
| 163 | + "ro-value": { |
| 164 | + "$ref": "param-common-schema.json#/multiBaseValue", |
| 165 | + "description": "Mask providing value of read-only bits. Supports decimal, hex (0x...), or binary (0b...)." |
| 166 | + }, |
143 | 167 | "impl-def": { |
144 | 168 | "$ref": "param-common-schema.json#/implDefName", |
145 | 169 | "description": "Name of implementation-defined behavior" |
|
152 | 176 | "allOf": [ |
153 | 177 | { |
154 | 178 | "oneOf": [ |
155 | | - { "required": ["name"] }, |
156 | | - { "required": ["names"] } |
| 179 | + { "required": ["reg-name"] }, |
| 180 | + { "required": ["reg-names"] } |
157 | 181 | ] |
158 | 182 | }, |
| 183 | + { |
| 184 | + "not": { |
| 185 | + "required": ["field-name", "field-names"] |
| 186 | + } |
| 187 | + }, |
| 188 | + { |
| 189 | + "oneOf": [ |
| 190 | + { "required": ["type"] }, |
| 191 | + { "required": ["width"] }, |
| 192 | + { "required": ["ro-mask"] } |
| 193 | + ] |
| 194 | + }, |
| 195 | + { |
| 196 | + "if": { |
| 197 | + "required": ["ro-value"] |
| 198 | + }, |
| 199 | + "then": { |
| 200 | + "required": ["ro-mask"] |
| 201 | + } |
| 202 | + }, |
159 | 203 | { |
160 | 204 | "not": { |
161 | 205 | "required": ["impl-def", "impl-defs"] |
|
0 commit comments