2 * Copyright (c) 2008-2009 Atheros Communications Inc.
4 * Permission to use, copy, modify, and/or distribute this software for any
5 * purpose with or without fee is hereby granted, provided that the above
6 * copyright notice and this permission notice appear in all copies.
8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
155 DEBUG_REG_DMN
= 0x01ff,
158 /* Regpair to CTL band mapping */
159 static struct reg_dmn_pair_mapping regDomainPairs
[] = {
160 /* regpair, 5 GHz CTL, 2 GHz CTL */
161 {NO_ENUMRD
, DEBUG_REG_DMN
, DEBUG_REG_DMN
},
162 {NULL1_WORLD
, NO_CTL
, CTL_ETSI
},
163 {NULL1_ETSIB
, NO_CTL
, CTL_ETSI
},
164 {NULL1_ETSIC
, NO_CTL
, CTL_ETSI
},
166 {FCC2_FCCA
, CTL_FCC
, CTL_FCC
},
167 {FCC2_WORLD
, CTL_FCC
, CTL_ETSI
},
168 {FCC2_ETSIC
, CTL_FCC
, CTL_ETSI
},
169 {FCC3_FCCA
, CTL_FCC
, CTL_FCC
},
170 {FCC3_WORLD
, CTL_FCC
, CTL_ETSI
},
171 {FCC4_FCCA
, CTL_FCC
, CTL_FCC
},
172 {FCC5_FCCA
, CTL_FCC
, CTL_FCC
},
173 {FCC6_FCCA
, CTL_FCC
, CTL_FCC
},
174 {FCC6_WORLD
, CTL_FCC
, CTL_ETSI
},
176 {ETSI1_WORLD
, CTL_ETSI
, CTL_ETSI
},
177 {ETSI2_WORLD
, CTL_ETSI
, CTL_ETSI
},
178 {ETSI3_WORLD
, CTL_ETSI
, CTL_ETSI
},
179 {ETSI4_WORLD
, CTL_ETSI
, CTL_ETSI
},
180 {ETSI5_WORLD
, CTL_ETSI
, CTL_ETSI
},
181 {ETSI6_WORLD
, CTL_ETSI
, CTL_ETSI
},
183 /* XXX: For ETSI3_ETSIA, Was NO_CTL meant for the 2 GHz band ? */
184 {ETSI3_ETSIA
, CTL_ETSI
, CTL_ETSI
},
185 {FRANCE_RES
, CTL_ETSI
, CTL_ETSI
},
187 {FCC1_WORLD
, CTL_FCC
, CTL_ETSI
},
188 {FCC1_FCCA
, CTL_FCC
, CTL_FCC
},
189 {APL1_WORLD
, CTL_FCC
, CTL_ETSI
},
190 {APL2_WORLD
, CTL_FCC
, CTL_ETSI
},
191 {APL3_WORLD
, CTL_FCC
, CTL_ETSI
},
192 {APL4_WORLD
, CTL_FCC
, CTL_ETSI
},
193 {APL5_WORLD
, CTL_FCC
, CTL_ETSI
},
194 {APL6_WORLD
, CTL_ETSI
, CTL_ETSI
},
195 {APL8_WORLD
, CTL_ETSI
, CTL_ETSI
},
196 {APL9_WORLD
, CTL_ETSI
, CTL_ETSI
},
198 {APL3_FCCA
, CTL_FCC
, CTL_FCC
},
199 {APL7_FCCA
, CTL_FCC
, CTL_FCC
},
200 {APL1_ETSIC
, CTL_FCC
, CTL_ETSI
},
201 {APL2_ETSIC
, CTL_FCC
, CTL_ETSI
},
202 {APL2_APLD
, CTL_FCC
, NO_CTL
},
204 {MKK1_MKKA
, CTL_MKK
, CTL_MKK
},
205 {MKK1_MKKB
, CTL_MKK
, CTL_MKK
},
206 {MKK1_FCCA
, CTL_MKK
, CTL_FCC
},
207 {MKK1_MKKA1
, CTL_MKK
, CTL_MKK
},
208 {MKK1_MKKA2
, CTL_MKK
, CTL_MKK
},
209 {MKK1_MKKC
, CTL_MKK
, CTL_MKK
},
211 {MKK2_MKKA
, CTL_MKK
, CTL_MKK
},
212 {MKK3_MKKA
, CTL_MKK
, CTL_MKK
},
213 {MKK3_MKKB
, CTL_MKK
, CTL_MKK
},
214 {MKK3_MKKA1
, CTL_MKK
, CTL_MKK
},
215 {MKK3_MKKA2
, CTL_MKK
, CTL_MKK
},
216 {MKK3_MKKC
, CTL_MKK
, CTL_MKK
},
217 {MKK3_FCCA
, CTL_MKK
, CTL_FCC
},
219 {MKK4_MKKA
, CTL_MKK
, CTL_MKK
},
220 {MKK4_MKKB
, CTL_MKK
, CTL_MKK
},
221 {MKK4_MKKA1
, CTL_MKK
, CTL_MKK
},
222 {MKK4_MKKA2
, CTL_MKK
, CTL_MKK
},
223 {MKK4_MKKC
, CTL_MKK
, CTL_MKK
},
224 {MKK4_FCCA
, CTL_MKK
, CTL_FCC
},
226 {MKK5_MKKB
, CTL_MKK
, CTL_MKK
},
227 {MKK5_MKKA2
, CTL_MKK
, CTL_MKK
},
228 {MKK5_MKKC
, CTL_MKK
, CTL_MKK
},
230 {MKK6_MKKB
, CTL_MKK
, CTL_MKK
},
231 {MKK6_MKKA1
, CTL_MKK
, CTL_MKK
},
232 {MKK6_MKKA2
, CTL_MKK
, CTL_MKK
},
233 {MKK6_MKKC
, CTL_MKK
, CTL_MKK
},
234 {MKK6_FCCA
, CTL_MKK
, CTL_FCC
},
236 {MKK7_MKKB
, CTL_MKK
, CTL_MKK
},
237 {MKK7_MKKA1
, CTL_MKK
, CTL_MKK
},
238 {MKK7_MKKA2
, CTL_MKK
, CTL_MKK
},
239 {MKK7_MKKC
, CTL_MKK
, CTL_MKK
},
240 {MKK7_FCCA
, CTL_MKK
, CTL_FCC
},
242 {MKK8_MKKB
, CTL_MKK
, CTL_MKK
},
243 {MKK8_MKKA2
, CTL_MKK
, CTL_MKK
},
244 {MKK8_MKKC
, CTL_MKK
, CTL_MKK
},
246 {MKK9_MKKA
, CTL_MKK
, CTL_MKK
},
247 {MKK9_FCCA
, CTL_MKK
, CTL_FCC
},
248 {MKK9_MKKA1
, CTL_MKK
, CTL_MKK
},
249 {MKK9_MKKA2
, CTL_MKK
, CTL_MKK
},
250 {MKK9_MKKC
, CTL_MKK
, CTL_MKK
},
252 {MKK10_MKKA
, CTL_MKK
, CTL_MKK
},
253 {MKK10_FCCA
, CTL_MKK
, CTL_FCC
},
254 {MKK10_MKKA1
, CTL_MKK
, CTL_MKK
},
255 {MKK10_MKKA2
, CTL_MKK
, CTL_MKK
},
256 {MKK10_MKKC
, CTL_MKK
, CTL_MKK
},
258 {MKK11_MKKA
, CTL_MKK
, CTL_MKK
},
259 {MKK11_FCCA
, CTL_MKK
, CTL_FCC
},
260 {MKK11_MKKA1
, CTL_MKK
, CTL_MKK
},
261 {MKK11_MKKA2
, CTL_MKK
, CTL_MKK
},
262 {MKK11_MKKC
, CTL_MKK
, CTL_MKK
},
264 {MKK12_MKKA
, CTL_MKK
, CTL_MKK
},
265 {MKK12_FCCA
, CTL_MKK
, CTL_FCC
},
266 {MKK12_MKKA1
, CTL_MKK
, CTL_MKK
},
267 {MKK12_MKKA2
, CTL_MKK
, CTL_MKK
},
268 {MKK12_MKKC
, CTL_MKK
, CTL_MKK
},
270 {MKK13_MKKB
, CTL_MKK
, CTL_MKK
},
271 {MKK14_MKKA1
, CTL_MKK
, CTL_MKK
},
272 {MKK15_MKKA1
, CTL_MKK
, CTL_MKK
},
274 {WOR0_WORLD
, NO_CTL
, NO_CTL
},
275 {WOR1_WORLD
, NO_CTL
, NO_CTL
},
276 {WOR2_WORLD
, NO_CTL
, NO_CTL
},
277 {WOR3_WORLD
, NO_CTL
, NO_CTL
},
278 {WOR4_WORLD
, NO_CTL
, NO_CTL
},
279 {WOR5_ETSIC
, NO_CTL
, NO_CTL
},
280 {WOR01_WORLD
, NO_CTL
, NO_CTL
},
281 {WOR02_WORLD
, NO_CTL
, NO_CTL
},
282 {EU1_WORLD
, NO_CTL
, NO_CTL
},
283 {WOR9_WORLD
, NO_CTL
, NO_CTL
},
284 {WORA_WORLD
, NO_CTL
, NO_CTL
},
285 {WORB_WORLD
, NO_CTL
, NO_CTL
},
286 {WORC_WORLD
, NO_CTL
, NO_CTL
},
289 static struct country_code_to_enum_rd allCountries
[] = {
290 {CTRY_DEBUG
, NO_ENUMRD
, "DB"},
291 {CTRY_DEFAULT
, FCC1_FCCA
, "CO"},
292 {CTRY_ALBANIA
, NULL1_WORLD
, "AL"},
293 {CTRY_ALGERIA
, NULL1_WORLD
, "DZ"},
294 {CTRY_ARGENTINA
, FCC3_WORLD
, "AR"},
295 {CTRY_ARMENIA
, ETSI4_WORLD
, "AM"},
296 {CTRY_ARUBA
, ETSI1_WORLD
, "AW"},
297 {CTRY_AUSTRALIA
, FCC2_WORLD
, "AU"},
298 {CTRY_AUSTRALIA2
, FCC6_WORLD
, "AU"},
299 {CTRY_AUSTRIA
, ETSI1_WORLD
, "AT"},
300 {CTRY_AZERBAIJAN
, ETSI4_WORLD
, "AZ"},
301 {CTRY_BAHRAIN
, APL6_WORLD
, "BH"},
302 {CTRY_BANGLADESH
, NULL1_WORLD
, "BD"},
303 {CTRY_BARBADOS
, FCC2_WORLD
, "BB"},
304 {CTRY_BELARUS
, ETSI1_WORLD
, "BY"},
305 {CTRY_BELGIUM
, ETSI1_WORLD
, "BE"},
306 {CTRY_BELGIUM2
, ETSI4_WORLD
, "BL"},
307 {CTRY_BELIZE
, APL1_ETSIC
, "BZ"},
308 {CTRY_BOLIVIA
, APL1_ETSIC
, "BO"},
309 {CTRY_BOSNIA_HERZ
, ETSI1_WORLD
, "BA"},
310 {CTRY_BRAZIL
, FCC3_WORLD
, "BR"},
311 {CTRY_BRUNEI_DARUSSALAM
, APL1_WORLD
, "BN"},
312 {CTRY_BULGARIA
, ETSI6_WORLD
, "BG"},
313 {CTRY_CAMBODIA
, ETSI1_WORLD
, "KH"},
314 {CTRY_CANADA
, FCC3_FCCA
, "CA"},
315 {CTRY_CANADA2
, FCC6_FCCA
, "CA"},
316 {CTRY_CHILE
, APL6_WORLD
, "CL"},
317 {CTRY_CHINA
, APL1_WORLD
, "CN"},
318 {CTRY_COLOMBIA
, FCC1_FCCA
, "CO"},
319 {CTRY_COSTA_RICA
, FCC1_WORLD
, "CR"},
320 {CTRY_CROATIA
, ETSI1_WORLD
, "HR"},
321 {CTRY_CYPRUS
, ETSI1_WORLD
, "CY"},
322 {CTRY_CZECH
, ETSI3_WORLD
, "CZ"},
323 {CTRY_DENMARK
, ETSI1_WORLD
, "DK"},
324 {CTRY_DOMINICAN_REPUBLIC
, FCC1_FCCA
, "DO"},
325 {CTRY_ECUADOR
, FCC1_WORLD
, "EC"},
326 {CTRY_EGYPT
, ETSI3_WORLD
, "EG"},
327 {CTRY_EL_SALVADOR
, FCC1_WORLD
, "SV"},
328 {CTRY_ESTONIA
, ETSI1_WORLD
, "EE"},
329 {CTRY_FINLAND
, ETSI1_WORLD
, "FI"},
330 {CTRY_FRANCE
, ETSI1_WORLD
, "FR"},
331 {CTRY_GEORGIA
, ETSI4_WORLD
, "GE"},
332 {CTRY_GERMANY
, ETSI1_WORLD
, "DE"},
333 {CTRY_GREECE
, ETSI1_WORLD
, "GR"},
334 {CTRY_GREENLAND
, ETSI1_WORLD
, "GL"},
335 {CTRY_GRENADA
, FCC3_FCCA
, "GD"},
336 {CTRY_GUAM
, FCC1_FCCA
, "GU"},
337 {CTRY_GUATEMALA
, FCC1_FCCA
, "GT"},
338 {CTRY_HAITI
, ETSI1_WORLD
, "HT"},
339 {CTRY_HONDURAS
, NULL1_WORLD
, "HN"},
340 {CTRY_HONG_KONG
, FCC3_WORLD
, "HK"},
341 {CTRY_HUNGARY
, ETSI1_WORLD
, "HU"},
342 {CTRY_ICELAND
, ETSI1_WORLD
, "IS"},
343 {CTRY_INDIA
, APL6_WORLD
, "IN"},
344 {CTRY_INDONESIA
, NULL1_WORLD
, "ID"},
345 {CTRY_IRAN
, APL1_WORLD
, "IR"},
346 {CTRY_IRELAND
, ETSI1_WORLD
, "IE"},
347 {CTRY_ISRAEL
, NULL1_WORLD
, "IL"},
348 {CTRY_ITALY
, ETSI1_WORLD
, "IT"},
349 {CTRY_JAMAICA
, FCC3_WORLD
, "JM"},
351 {CTRY_JAPAN
, MKK1_MKKA
, "JP"},
352 {CTRY_JAPAN1
, MKK1_MKKB
, "JP"},
353 {CTRY_JAPAN2
, MKK1_FCCA
, "JP"},
354 {CTRY_JAPAN3
, MKK2_MKKA
, "JP"},
355 {CTRY_JAPAN4
, MKK1_MKKA1
, "JP"},
356 {CTRY_JAPAN5
, MKK1_MKKA2
, "JP"},
357 {CTRY_JAPAN6
, MKK1_MKKC
, "JP"},
358 {CTRY_JAPAN7
, MKK3_MKKB
, "JP"},
359 {CTRY_JAPAN8
, MKK3_MKKA2
, "JP"},
360 {CTRY_JAPAN9
, MKK3_MKKC
, "JP"},
361 {CTRY_JAPAN10
, MKK4_MKKB
, "JP"},
362 {CTRY_JAPAN11
, MKK4_MKKA2
, "JP"},
363 {CTRY_JAPAN12
, MKK4_MKKC
, "JP"},
364 {CTRY_JAPAN13
, MKK5_MKKB
, "JP"},
365 {CTRY_JAPAN14
, MKK5_MKKA2
, "JP"},
366 {CTRY_JAPAN15
, MKK5_MKKC
, "JP"},
367 {CTRY_JAPAN16
, MKK6_MKKB
, "JP"},
368 {CTRY_JAPAN17
, MKK6_MKKA2
, "JP"},
369 {CTRY_JAPAN18
, MKK6_MKKC
, "JP"},
370 {CTRY_JAPAN19
, MKK7_MKKB
, "JP"},
371 {CTRY_JAPAN20
, MKK7_MKKA2
, "JP"},
372 {CTRY_JAPAN21
, MKK7_MKKC
, "JP"},
373 {CTRY_JAPAN22
, MKK8_MKKB
, "JP"},
374 {CTRY_JAPAN23
, MKK8_MKKA2
, "JP"},
375 {CTRY_JAPAN24
, MKK8_MKKC
, "JP"},
376 {CTRY_JAPAN25
, MKK3_MKKA
, "JP"},
377 {CTRY_JAPAN26
, MKK3_MKKA1
, "JP"},
378 {CTRY_JAPAN27
, MKK3_FCCA
, "JP"},
379 {CTRY_JAPAN28
, MKK4_MKKA1
, "JP"},
380 {CTRY_JAPAN29
, MKK4_FCCA
, "JP"},
381 {CTRY_JAPAN30
, MKK6_MKKA1
, "JP"},
382 {CTRY_JAPAN31
, MKK6_FCCA
, "JP"},
383 {CTRY_JAPAN32
, MKK7_MKKA1
, "JP"},
384 {CTRY_JAPAN33
, MKK7_FCCA
, "JP"},
385 {CTRY_JAPAN34
, MKK9_MKKA
, "JP"},
386 {CTRY_JAPAN35
, MKK10_MKKA
, "JP"},
387 {CTRY_JAPAN36
, MKK4_MKKA
, "JP"},
388 {CTRY_JAPAN37
, MKK9_FCCA
, "JP"},
389 {CTRY_JAPAN38
, MKK9_MKKA1
, "JP"},
390 {CTRY_JAPAN39
, MKK9_MKKC
, "JP"},
391 {CTRY_JAPAN40
, MKK9_MKKA2
, "JP"},
392 {CTRY_JAPAN41
, MKK10_FCCA
, "JP"},
393 {CTRY_JAPAN42
, MKK10_MKKA1
, "JP"},
394 {CTRY_JAPAN43
, MKK10_MKKC
, "JP"},
395 {CTRY_JAPAN44
, MKK10_MKKA2
, "JP"},
396 {CTRY_JAPAN45
, MKK11_MKKA
, "JP"},
397 {CTRY_JAPAN46
, MKK11_FCCA
, "JP"},
398 {CTRY_JAPAN47
, MKK11_MKKA1
, "JP"},
399 {CTRY_JAPAN48
, MKK11_MKKC
, "JP"},
400 {CTRY_JAPAN49
, MKK11_MKKA2
, "JP"},
401 {CTRY_JAPAN50
, MKK12_MKKA
, "JP"},
402 {CTRY_JAPAN51
, MKK12_FCCA
, "JP"},
403 {CTRY_JAPAN52
, MKK12_MKKA1
, "JP"},
404 {CTRY_JAPAN53
, MKK12_MKKC
, "JP"},
405 {CTRY_JAPAN54
, MKK12_MKKA2
, "JP"},
406 {CTRY_JAPAN57
, MKK13_MKKB
, "JP"},
407 {CTRY_JAPAN58
, MKK14_MKKA1
, "JP"},
408 {CTRY_JAPAN59
, MKK15_MKKA1
, "JP"},
410 {CTRY_JORDAN
, ETSI2_WORLD
, "JO"},
411 {CTRY_KAZAKHSTAN
, NULL1_WORLD
, "KZ"},
412 {CTRY_KOREA_NORTH
, APL9_WORLD
, "KP"},
413 {CTRY_KOREA_ROC
, APL9_WORLD
, "KR"},
414 {CTRY_KOREA_ROC2
, APL2_WORLD
, "K2"},
415 {CTRY_KOREA_ROC3
, APL9_WORLD
, "K3"},
416 {CTRY_KUWAIT
, ETSI3_WORLD
, "KW"},
417 {CTRY_LATVIA
, ETSI1_WORLD
, "LV"},
418 {CTRY_LEBANON
, NULL1_WORLD
, "LB"},
419 {CTRY_LIECHTENSTEIN
, ETSI1_WORLD
, "LI"},
420 {CTRY_LITHUANIA
, ETSI1_WORLD
, "LT"},
421 {CTRY_LUXEMBOURG
, ETSI1_WORLD
, "LU"},
422 {CTRY_MACAU
, FCC2_WORLD
, "MO"},
423 {CTRY_MACEDONIA
, NULL1_WORLD
, "MK"},
424 {CTRY_MALAYSIA
, APL8_WORLD
, "MY"},
425 {CTRY_MALTA
, ETSI1_WORLD
, "MT"},
426 {CTRY_MEXICO
, FCC1_FCCA
, "MX"},
427 {CTRY_MONACO
, ETSI4_WORLD
, "MC"},
428 {CTRY_MOROCCO
, APL4_WORLD
, "MA"},
429 {CTRY_NEPAL
, APL1_WORLD
, "NP"},
430 {CTRY_NETHERLANDS
, ETSI1_WORLD
, "NL"},
431 {CTRY_NETHERLANDS_ANTILLES
, ETSI1_WORLD
, "AN"},
432 {CTRY_NEW_ZEALAND
, FCC2_ETSIC
, "NZ"},
433 {CTRY_NORWAY
, ETSI1_WORLD
, "NO"},
434 {CTRY_OMAN
, FCC3_WORLD
, "OM"},
435 {CTRY_PAKISTAN
, NULL1_WORLD
, "PK"},
436 {CTRY_PANAMA
, FCC1_FCCA
, "PA"},
437 {CTRY_PAPUA_NEW_GUINEA
, FCC1_WORLD
, "PG"},
438 {CTRY_PERU
, APL1_WORLD
, "PE"},
439 {CTRY_PHILIPPINES
, APL1_WORLD
, "PH"},
440 {CTRY_POLAND
, ETSI1_WORLD
, "PL"},
441 {CTRY_PORTUGAL
, ETSI1_WORLD
, "PT"},
442 {CTRY_PUERTO_RICO
, FCC1_FCCA
, "PR"},
443 {CTRY_QATAR
, APL1_WORLD
, "QA"},
444 {CTRY_ROMANIA
, NULL1_WORLD
, "RO"},
445 {CTRY_RUSSIA
, NULL1_WORLD
, "RU"},
446 {CTRY_SAUDI_ARABIA
, NULL1_WORLD
, "SA"},
447 {CTRY_SERBIA_MONTENEGRO
, ETSI1_WORLD
, "CS"},
448 {CTRY_SINGAPORE
, APL6_WORLD
, "SG"},
449 {CTRY_SLOVAKIA
, ETSI1_WORLD
, "SK"},
450 {CTRY_SLOVENIA
, ETSI1_WORLD
, "SI"},
451 {CTRY_SOUTH_AFRICA
, FCC3_WORLD
, "ZA"},
452 {CTRY_SPAIN
, ETSI1_WORLD
, "ES"},
453 {CTRY_SRI_LANKA
, FCC3_WORLD
, "LK"},
454 {CTRY_SWEDEN
, ETSI1_WORLD
, "SE"},
455 {CTRY_SWITZERLAND
, ETSI1_WORLD
, "CH"},
456 {CTRY_SYRIA
, NULL1_WORLD
, "SY"},
457 {CTRY_TAIWAN
, APL3_FCCA
, "TW"},
458 {CTRY_THAILAND
, FCC3_WORLD
, "TH"},
459 {CTRY_TRINIDAD_Y_TOBAGO
, FCC3_WORLD
, "TT"},
460 {CTRY_TUNISIA
, ETSI3_WORLD
, "TN"},
461 {CTRY_TURKEY
, ETSI3_WORLD
, "TR"},
462 {CTRY_UKRAINE
, NULL1_WORLD
, "UA"},
463 {CTRY_UAE
, NULL1_WORLD
, "AE"},
464 {CTRY_UNITED_KINGDOM
, ETSI1_WORLD
, "GB"},
465 {CTRY_UNITED_STATES
, FCC3_FCCA
, "US"},
466 /* This "PS" is for US public safety actually... to support this we
467 * would need to assign new special alpha2 to CRDA db as with the world
468 * regdomain and use another alpha2 */
469 {CTRY_UNITED_STATES_FCC49
, FCC4_FCCA
, "PS"},
470 {CTRY_URUGUAY
, FCC3_WORLD
, "UY"},
471 {CTRY_UZBEKISTAN
, FCC3_FCCA
, "UZ"},
472 {CTRY_VENEZUELA
, APL2_ETSIC
, "VE"},
473 {CTRY_VIET_NAM
, NULL1_WORLD
, "VN"},
474 {CTRY_YEMEN
, NULL1_WORLD
, "YE"},
475 {CTRY_ZIMBABWE
, NULL1_WORLD
, "ZW"},