OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 // Determines whether certain gpu-related features are blacklisted or not. | |
6 // The format of a valid software_rendering_list.json file is defined in | |
7 // <gpu/config/gpu_control_list_format.txt>. | |
8 // The supported "features" can be found in <gpu/config/gpu_blacklist.cc>. | |
9 | |
10 #include "gpu/config/gpu_control_list_jsons.h" | |
11 | |
12 #define LONG_STRING_CONST(...) #__VA_ARGS__ | |
13 | |
14 namespace gpu { | |
15 | |
16 const char kSoftwareRenderingListJson[] = LONG_STRING_CONST( | |
17 | |
18 { | 1 { |
19 "name": "software rendering list", | 2 "name": "software rendering list", |
20 // Please update the version number whenever you change this file. | 3 "comment": "Please update the version number whenever you change this file", |
21 "version": "12.23", | 4 "version": "13.0", |
22 "entries": [ | 5 "entries": [ |
23 { | 6 { |
24 "id": 1, | 7 "id": 1, |
25 "description": "ATI Radeon X1900 is not compatible with WebGL on the Mac", | 8 "description": "ATI Radeon X1900 is not compatible with WebGL on the Mac", |
26 "webkit_bugs": [47028], | 9 "webkit_bugs": [47028], |
27 "os": { | 10 "os": { |
28 "type": "macosx" | 11 "type": "macosx" |
29 }, | 12 }, |
30 "vendor_id": "0x1002", | 13 "vendor_id": "0x1002", |
31 "device_id": ["0x7249"], | 14 "device_id": ["0x7249"], |
32 "multi_gpu_category": "any", | 15 "multi_gpu_category": "any", |
33 "features": [ | 16 "features": [ |
34 "accelerated_webgl", | 17 "accelerated_webgl", |
35 "flash_3d", | 18 "flash3d", |
36 "flash_stage3d", | 19 "flash_stage3d", |
37 "gpu_rasterization" | 20 "gpu_rasterization" |
38 ] | 21 ] |
39 }, | 22 }, |
40 { | 23 { |
41 "id": 3, | 24 "id": 3, |
42 "description": "GL driver is software rendered. GPU acceleration is disabl
ed", | 25 "description": "GL driver is software rendered. GPU acceleration is disabl
ed", |
43 "cr_bugs": [59302, 315217], | 26 "cr_bugs": [59302, 315217], |
44 "os": { | 27 "os": { |
45 "type": "linux" | 28 "type": "linux" |
46 }, | 29 }, |
47 "gl_renderer": "(?i).*software.*", | 30 "gl_renderer": "(?i).*software.*", |
48 "features": [ | 31 "features": [ |
49 "all" | 32 "all" |
50 ] | 33 ] |
51 }, | 34 }, |
52 { | 35 { |
53 "id": 4, | 36 "id": 4, |
54 "description": "The Intel Mobile 945 Express family of chipsets is not com
patible with WebGL", | 37 "description": "The Intel Mobile 945 Express family of chipsets is not com
patible with WebGL", |
55 "cr_bugs": [232035], | 38 "cr_bugs": [232035], |
56 "os": { | |
57 "type": "any" | |
58 }, | |
59 "vendor_id": "0x8086", | 39 "vendor_id": "0x8086", |
60 "device_id": ["0x27AE", "0x27A2"], | 40 "device_id": ["0x27AE", "0x27A2"], |
61 "features": [ | 41 "features": [ |
62 "accelerated_webgl", | 42 "accelerated_webgl", |
63 "flash_3d", | 43 "flash3d", |
64 "flash_stage3d", | 44 "flash_stage3d", |
65 "accelerated_2d_canvas" | 45 "accelerated_2d_canvas" |
66 ] | 46 ] |
67 }, | 47 }, |
68 { | 48 { |
69 "id": 5, | 49 "id": 5, |
70 "description": "ATI/AMD cards with older drivers in Linux are crash-prone"
, | 50 "description": "ATI/AMD cards with older drivers in Linux are crash-prone"
, |
71 "cr_bugs": [71381, 76428, 73910, 101225, 136240, 357314], | 51 "cr_bugs": [71381, 76428, 73910, 101225, 136240, 357314], |
72 "os": { | 52 "os": { |
73 "type": "linux" | 53 "type": "linux" |
(...skipping 20 matching lines...) Expand all Loading... |
94 } | 74 } |
95 ], | 75 ], |
96 "features": [ | 76 "features": [ |
97 "all" | 77 "all" |
98 ] | 78 ] |
99 }, | 79 }, |
100 { | 80 { |
101 "id": 8, | 81 "id": 8, |
102 "description": "NVIDIA GeForce FX Go5200 is assumed to be buggy", | 82 "description": "NVIDIA GeForce FX Go5200 is assumed to be buggy", |
103 "cr_bugs": [72938], | 83 "cr_bugs": [72938], |
104 "os": { | |
105 "type": "any" | |
106 }, | |
107 "vendor_id": "0x10de", | 84 "vendor_id": "0x10de", |
108 "device_id": ["0x0324"], | 85 "device_id": ["0x0324"], |
109 "features": [ | 86 "features": [ |
110 "all" | 87 "all" |
111 ] | 88 ] |
112 }, | 89 }, |
113 { | 90 { |
114 "id": 10, | 91 "id": 10, |
115 "description": "NVIDIA GeForce 7300 GT on Mac does not support WebGL", | 92 "description": "NVIDIA GeForce 7300 GT on Mac does not support WebGL", |
116 "cr_bugs": [73794], | 93 "cr_bugs": [73794], |
117 "os": { | 94 "os": { |
118 "type": "macosx" | 95 "type": "macosx" |
119 }, | 96 }, |
120 "vendor_id": "0x10de", | 97 "vendor_id": "0x10de", |
121 "device_id": ["0x0393"], | 98 "device_id": ["0x0393"], |
122 "multi_gpu_category": "any", | 99 "multi_gpu_category": "any", |
123 "features": [ | 100 "features": [ |
124 "accelerated_webgl", | 101 "accelerated_webgl", |
125 "flash_3d", | 102 "flash3d", |
126 "flash_stage3d", | 103 "flash_stage3d", |
127 "gpu_rasterization" | 104 "gpu_rasterization" |
128 ] | 105 ] |
129 }, | 106 }, |
130 { | 107 { |
131 "id": 12, | 108 "id": 12, |
132 "description": "Drivers older than 2009-01 on Windows are possibly unrelia
ble", | 109 "description": "Drivers older than 2009-01 on Windows are possibly unrelia
ble", |
133 "cr_bugs": [72979, 89802, 315205], | 110 "cr_bugs": [72979, 89802, 315205], |
134 "os": { | 111 "os": { |
135 "type": "win" | 112 "type": "win" |
(...skipping 317 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
453 "type": "linux" | 430 "type": "linux" |
454 }, | 431 }, |
455 "vendor_id": "0x10de", | 432 "vendor_id": "0x10de", |
456 "driver_vendor": "NVIDIA", | 433 "driver_vendor": "NVIDIA", |
457 "driver_version": { | 434 "driver_version": { |
458 "op": "<", | 435 "op": "<", |
459 "value": "331.38" | 436 "value": "331.38" |
460 }, | 437 }, |
461 "features": [ | 438 "features": [ |
462 "accelerated_video_decode", | 439 "accelerated_video_decode", |
463 "flash_3d", | 440 "flash3d", |
464 "flash_stage3d" | 441 "flash_stage3d" |
465 ] | 442 ] |
466 }, | 443 }, |
467 { | 444 { |
468 // Panel fitting is only used with OS_CHROMEOS. To avoid displaying an | 445 "comment": [ |
469 // error in chrome:gpu on every other platform, this blacklist entry needs | 446 "Panel fitting is only used with OS_CHROMEOS. To avoid displaying an ", |
470 // to only match on chromeos. The drawback is that panel_fitting will not | 447 "error in chrome:gpu on every other platform, this blacklist entry ", |
471 // appear to be blacklisted if accidentally queried on non-chromeos. | 448 "needs to only match on chromeos. The drawback is that panel_fitting ", |
| 449 "will not appear to be blacklisted if accidentally queried on ", |
| 450 "non-chromeos." |
| 451 ], |
472 "id": 57, | 452 "id": 57, |
473 "description": "Chrome OS panel fitting is only supported for Intel IVB an
d SNB Graphics Controllers", | 453 "description": "Chrome OS panel fitting is only supported for Intel IVB an
d SNB Graphics Controllers", |
474 "os": { | 454 "os": { |
475 "type": "chromeos" | 455 "type": "chromeos" |
476 }, | 456 }, |
477 "exceptions": [ | 457 "exceptions": [ |
478 { | 458 { |
479 "vendor_id": "0x8086", | 459 "vendor_id": "0x8086", |
480 "device_id": ["0x0106", "0x0116", "0x0166"] | 460 "device_id": ["0x0106", "0x0116", "0x0166"] |
481 } | 461 } |
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
607 "exceptions": [ | 587 "exceptions": [ |
608 { | 588 { |
609 "vendor_id": "0x1414", | 589 "vendor_id": "0x1414", |
610 "device_id": ["0x02c1"] | 590 "device_id": ["0x02c1"] |
611 } | 591 } |
612 ], | 592 ], |
613 "features": [ | 593 "features": [ |
614 "all" | 594 "all" |
615 ] | 595 ] |
616 }, | 596 }, |
617 ) // String split to avoid MSVC char limit. | |
618 LONG_STRING_CONST( | |
619 { | 597 { |
620 "id": 76, | 598 "id": 76, |
621 "description": "WebGL is disabled on Android unless the GPU runs in a sepa
rate process or reset notification is supported", | 599 "description": "WebGL is disabled on Android unless the GPU runs in a sepa
rate process or reset notification is supported", |
622 "os": { | 600 "os": { |
623 "type": "android" | 601 "type": "android" |
624 }, | 602 }, |
625 "in_process_gpu": true, | 603 "in_process_gpu": true, |
626 "exceptions": [ | 604 "exceptions": [ |
627 { | 605 { |
628 "gl_reset_notification_strategy": { | 606 "gl_reset_notification_strategy": "33362" |
629 "op": "=", | |
630 "value": "33362" | |
631 } | |
632 }, | 607 }, |
633 { | 608 { |
634 "gl_renderer": "Mali-4.*", | 609 "gl_renderer": "Mali-4.*", |
635 "gl_extensions": ".*EXT_robustness.*" | 610 "gl_extensions": ".*EXT_robustness.*" |
636 } | 611 } |
637 ], | 612 ], |
638 "features": [ | 613 "features": [ |
639 "accelerated_webgl" | 614 "accelerated_webgl" |
640 ] | 615 ] |
641 }, | 616 }, |
(...skipping 662 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1304 "driver_version": { | 1279 "driver_version": { |
1305 "op": ">=", | 1280 "op": ">=", |
1306 "value": "21.19.384.0" | 1281 "value": "21.19.384.0" |
1307 } | 1282 } |
1308 } | 1283 } |
1309 ], | 1284 ], |
1310 "features": [ | 1285 "features": [ |
1311 "gpu_rasterization" | 1286 "gpu_rasterization" |
1312 ] | 1287 ] |
1313 }, | 1288 }, |
1314 ) // String split to avoid MSVC char limit. | |
1315 LONG_STRING_CONST( | |
1316 { | 1289 { |
1317 "id": 125, | 1290 "id": 125, |
1318 "description": "VirtualBox driver is unstable on linux.", | 1291 "description": "VirtualBox driver is unstable on linux.", |
1319 "cr_bugs": [656572, 658668], | 1292 "cr_bugs": [656572, 658668], |
1320 "os": { | 1293 "os": { |
1321 "type": "linux" | 1294 "type": "linux" |
1322 }, | 1295 }, |
1323 "vendor_id": "0x80ee", | 1296 "vendor_id": "0x80ee", |
1324 "device_id": ["0xbeef"], | 1297 "device_id": ["0xbeef"], |
1325 "features": [ | 1298 "features": [ |
(...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1523 "driver_version": { | 1496 "driver_version": { |
1524 "op": "between", | 1497 "op": "between", |
1525 "value": "15.301", | 1498 "value": "15.301", |
1526 "value2": "15.302" | 1499 "value2": "15.302" |
1527 }, | 1500 }, |
1528 "features": [ | 1501 "features": [ |
1529 "gpu_rasterization" | 1502 "gpu_rasterization" |
1530 ] | 1503 ] |
1531 }, | 1504 }, |
1532 { | 1505 { |
1533 // Corresponds to GPU driver bug #214. | |
1534 "id": 140, | 1506 "id": 140, |
| 1507 "comment": "Corresponds to GPU driver bug #214", |
1535 "description": "Some old Qualcomm scissor bug workaround needs disabling M
SAA to work, which is a core part of WebGL 2.", | 1508 "description": "Some old Qualcomm scissor bug workaround needs disabling M
SAA to work, which is a core part of WebGL 2.", |
1536 "cr_bugs": [670607, 696627, 698197], | 1509 "cr_bugs": [670607, 696627, 698197], |
1537 "gl_vendor": "Qualcomm.*", | 1510 "gl_vendor": "Qualcomm.*", |
1538 "machine_model_name": ["Nexus 7", "KFTHWI", "KFSAWI", "KFAPWI", "KFTHWA",
"KFSAWA", "KFAPWA"], | 1511 "machine_model_name": ["Nexus 7", "KFTHWI", "KFSAWI", "KFAPWI", "KFTHWA",
"KFSAWA", "KFAPWA"], |
1539 "features": [ | 1512 "features": [ |
1540 "webgl2" | 1513 "webgl2" |
1541 ] | 1514 ] |
1542 } | 1515 } |
1543 ] | 1516 ] |
1544 } | 1517 } |
1545 | |
1546 ); // LONG_STRING_CONST macro | |
1547 | |
1548 } // namespace gpu | |
OLD | NEW |