summaryrefslogtreecommitdiffstats
path: root/chrome/browser/resources/gpu_blacklist.json
blob: c6701e7e72d1fcb81b5e40b57143834058baa9cf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
// Determines whether certain gpu-related features are blacklisted or not.
// A valid gpu_blacklist.json file are in the format of
// {
//   "version": "x.y",
//   "entries": [
//     { // entry 1
//     },
//     ...
//     { // entry n
//     }
//   ]
// }
//
// Each entry contains the following fields:
// "os", "vendor_id", "device_id", "driver_version", and "blacklist".
// Only "blacklist" is mandatory.
// 1. "os" contains "type" and an optional "version". "type" could be "macosx",
//    "linux", "win", or "any".  "any" is the same as not specifying "os".
//    "version" is a VERSION structure (defined below).
// 2. "vendor_id" has the value of a string.
// 3. "device_id" has the value of a string.
// 4. "driver_vendor" is a STRING structure (defined below).
// 5. "driver_version" is a VERSION structure (defined below).
// 6. "gl_renderer" is a STRING structure (defined below).
// 7. "blacklist" is a list of gpu feature strings, valid values include
//    "accelerated_2d_canvas", "accelerated_compositing", "webgl", and "all".
//    Currently whatever feature is selected, the effect is the same as "all",
//    i.e., it's not supported to turn off one GPU feature and not the others.
//
// VERSION includes "op" "number", and "number2".  "op" can be any of the
// following values: "=", "<", "<=", ">", ">=", "any", "between".  "number2" is
// only used if "op" is "between".  "number" is used for all "op" values except
// "any". "number" and "number2" are in the format of x, x.x, x.x.x, ect.
//
// STRING includes "op" and "value".  "op" can be any of the following values:
// "contains", "beginwith", "endwith", "=".  "value" is a string.

{
  "name": "gpu blacklist",
  // Please update the version number whenever you change this file.
  "version": "0.6",
  "entries": [
    { // ATI Radeon X1900 on Mac, BUGWEBKIT=47028
      "id": "1",
      "os": {
        "type": "macosx"
      },
      "vendor_id": "0x1002",
      "device_id": "0x7249",
      "blacklist": [
        "webgl"
      ]
    },
    { // Intel cards with Mesa driver earlier than 7.9, BUG=66718,67345,67939
      "id": "2",
      "os": {
        "type": "linux"
      },
      "vendor_id": "0x8086",
      "driver_vendor": {
        "op": "=",
        "value": "mesa"
      },
      "driver_version": {
        "op": "<",
        "number": "7.9"
      },
      "blacklist": [
        "webgl"
      ]
    },
    { // In linux, don't allow GPU compositing if it's software rendering, BUG=59302
      "id": "3",
      "os": {
        "type": "linux"
      },
      "gl_renderer": {
        "op": "contains",
        "value": "software"
      },
      "blacklist": [
        "accelerated_compositing"
      ]
    },
    { // Intel Mobile 945 Express Chipset Family
      "id": "4",
      "os": {
        "type": "any"
      },
      "vendor_id": "0x8086",
      "device_id": "0x27AE",
      "blacklist": [
        "webgl"
      ]
    },
    { // All ATI cards in linux, BUG=71381
      "id": "5",
      "os": {
        "type": "linux"
      },
      "vendor_id": "0x1002",
      "blacklist": [
        "webgl"
      ]
    },
    { // ATI Radeon HD2600 on Mac, BUG=68859
      "id": "6",
      "os": {
        "type": "macosx"
      },
      "vendor_id": "0x1002",
      "device_id": "0x9583",
      "blacklist": [
        "webgl",
        "accelerated_compositing"
      ]
    }
  ]
}