1 # This file is part of systemd.
3 # The lookup keys are composed in:
6 # Note: The format of the "sensor:" prefix match key is a
7 # contract between the rules file and the hardware data, it might
8 # change in later revisions to support more or better matches, it
9 # is not necessarily expected to be a stable ABI.
11 # Match string formats:
12 # sensor:modalias:<parent device modalias>:dmi:<dmi string>
14 # The device modalias can be seen in the `modalias` file
15 # of the sensor parent, for example:
16 # cat /sys/`udevadm info -q path -n /dev/iio:device0`/../modalias
18 # The full DMI string of the running machine can be read from
19 # /sys/class/dmi/id/modalias
20 # That requires a kernel built with CONFIG_DMIID set, which is common.
21 # The full DMI string is not needed here and the meaning of individual parts
22 # can be seen in the source of the DMIID kernel module
23 # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/firmware/dmi-id.c
25 # To add local entries, create a new file
26 # /etc/udev/hwdb.d/61-sensor-local.hwdb
27 # and add your rules there. To load the new rules execute (as root):
29 # udevadm trigger -v -p DEVNAME=/dev/iio:deviceXXX
30 # where /dev/iio:deviceXXX is the device in question.
32 # If your changes are generally applicable, preferably send them as a pull
34 # https://github.com/systemd/systemd
35 # or create a bug report on https://github.com/systemd/systemd/issues and
36 # include your new rules, a description of the device, and the output of
37 # udevadm info --export-db
39 # For hwdb format and systemd behavior:
40 # https://www.freedesktop.org/software/systemd/man/hwdb.html
42 # Allowed properties are:
43 # ACCEL_MOUNT_MATRIX=<matrix>
44 # PROXIMITY_NEAR_LEVEL=<value>
46 # where <matrix> is a mount-matrix in the format specified in the IIO
47 # subsystem[1]. The default, when unset, is equivalent to:
48 # ACCEL_MOUNT_MATRIX=1, 0, 0; 0, 1, 0; 0, 0, 1
49 # eg. the identity matrix.
50 # and <value> is an integer value above which an object is considered
51 # close by a proximity sensor:
52 # PROXIMITY_NEAR_LEVEL=100
54 # [1]: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=dfc57732ad38f93ae6232a3b4e64fd077383a0f1
56 # Note for devices where the display (LCD panel) is mounted non upright
57 # in the device's casing, e.g. mounted upside-down or 90 degree rotated,
58 # the ACCEL_MOUNT_MATRIX should be such that the x and y axis matches the
59 # x and y axis of the display, not those of the casing, so that desktop
60 # environments using the accelerometer data for rotation will e.g.
61 # automatically flip their output for an upside-down display when the device
64 # ACCEL_LOCATION=<location>
66 # where <location> is the location of the sensor. This value could be 'base'
67 # or 'display'. The default, when unset, is equivalent to:
68 # ACCEL_LOCATION=display
70 # Sort by brand, model
72 #########################################
74 #########################################
75 sensor:modalias:acpi:INVN6500*:dmi:*svn*Acer*:*pn*AspireSW5-011*
76 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
78 sensor:modalias:acpi:INVN6500*:dmi:*svn*Acer*:*pn*AspireSW5-012*
79 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
81 sensor:modalias:acpi:BMA250E*:dmi:*:svnAcer:pnIconiaW1-810:*
82 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
84 sensor:modalias:acpi:SMO8500:*:dmi:*Acer*:pnOneS1002*
85 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, -1
87 sensor:modalias:acpi:KIOX0009*:dmi:*:svnAcer:pnOneS1003:*
88 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
90 sensor:modalias:acpi:BOSC0200*:dmi:*:svnAcer*:pnSwitchSW312-31:*
91 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
93 sensor:modalias:acpi:BOSC0200*:dmi:*svn*Acer*:*pn*Spin*SP111-33*
94 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
96 sensor:modalias:acpi:BOSC0200*:dmi:*svnAcer*:*pnSpinSP111-34*
97 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
99 #########################################
101 #########################################
102 sensor:modalias:acpi:SMO8500*:dmi:*:svnARCHOS:pnARCHOS80Cesium:*
103 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
105 #########################################
107 #########################################
108 sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:*pnT100CHI*
109 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
111 sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:pnT300CHI*
112 ACCEL_MOUNT_MATRIX=0, -1, 0; 1, 0, 0; 0, 0, 1
114 sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:*pnM80TA*
115 sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:*pnT100TA*
116 sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:pnT200TA*
117 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
119 sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:*pnTP201SA*
120 sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:pn*E205SA*
121 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
123 sensor:modalias:acpi:INVN6500*:dmi:*svn*ASUSTeK*:*pn*TP300LA*
124 sensor:modalias:acpi:INVN6500*:dmi:*svn*ASUSTeK*:*pn*TP300LD*
125 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
127 sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:*pn*Q551LN*
128 ACCEL_MOUNT_MATRIX=0, 1, 0; -1, 0, 0; 0, 0, 1
130 sensor:modalias:acpi:KXJ2109*:dmi:*:svnASUSTeK*:pnME176C*
131 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
133 sensor:modalias:acpi:SMO8500*:dmi:*svn*ASUSTeK*:*pn*TP300LJ*
134 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
136 sensor:modalias:acpi:SMO8500*:dmi:*svn*ASUSTeK*:*pn*TP500LAB*
137 sensor:modalias:acpi:SMO8500*:dmi:*svn*ASUSTeK*:*pn*TP500LB*
138 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
140 sensor:modalias:acpi:SMO8500*:dmi:*svn*ASUSTeK*:*pn*TP300LD*
141 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
143 sensor:modalias:acpi:BOSC0200*:dmi:*svn*ASUSTeK*:*pn*TP412UA*
144 ACCEL_MOUNT_MATRIX=0, -1, 0; 1, 0, 0; 0, 0, 1
146 #########################################
148 #########################################
149 sensor:modalias:acpi:SMO8500*:dmi:*:svnStandard:pnWCBT1011:*
150 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
152 #########################################
154 #########################################
157 sensor:modalias:acpi:BMA250E*:dmi:bvnINSYDECorp.:bvrCHUWI.D86JLBNR*:svnInsyde:pni86:*
158 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
160 # Chuwi Vi8 Plus (CWI519)
161 sensor:modalias:acpi:BOSC0200*:dmi:*:svnHampoo:pnD2D3_Vi8A1:*
162 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
164 # Chuwi Vi10 (CWI505)
165 sensor:modalias:acpi:BMA250E*:dmi:bvnINSYDECorp.:bvrG1D_S165*:svnilife:pnS165:*
166 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
168 # Chuwi Hi8 Pro (CWI513)
169 sensor:modalias:acpi:BOSC0200*:dmi:*:svnHampoo:pnX1D3_C806N:*
170 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
172 # Chuwi Hi10 (CWI515)
173 sensor:modalias:acpi:BOSC0200*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:*:svnDefaultstring:pnDefaultstring:*
174 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
176 # Chuwi Hi10 (CWI1515)
177 sensor:modalias:acpi:BOSC0200*:dmi:bvnAmericanMegatrendsInc.:bvrP02A_C106.60E:*:svnDefaultstring:pnDefaultstring:*
178 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
181 sensor:modalias:acpi:BOSC0200*:dmi:*:svn*CHUWIINNOVATIONANDTECHNOLOGY*:pnHi10protablet:*
182 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
185 sensor:modalias:acpi:MXC6655*:dmi:*:svnCHUWIInnovationAndTechnology*:pnHi10X:*
186 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
189 sensor:modalias:acpi:BOSC0200*:dmi:*:svnHampoo:pnP02BD6_HI-122LP:*
190 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
193 sensor:modalias:acpi:KIOX000A*:dmi:*:svnChuwi*:pnHi13:*
194 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
197 # Chuwi HiBook does not have its product name filled, so we
198 # match the entire dmi-alias, assuming that the use of a BOSC0200 +
199 # bios-version + bios-date combo is unique
200 sensor:modalias:acpi:BOSC0200*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd05/07/2016:svnDefaultstring:pnDefaultstring:pvrDefaultstring:rvnHampoo:rnCherryTrailCR:rvrDefaultstring:cvnDefaultstring:ct3:cvrDefaultstring:
201 sensor:modalias:acpi:BOSC0200*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd05/28/2016:svnDefaultstring:pnDefaultstring:pvrDefaultstring:rvnHampoo:rnCherryTrailCR:rvrDefaultstring:cvnDefaultstring:ct3:cvrDefaultstring:
202 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
204 # Chuwi HiBook Pro (CWI526)
205 sensor:modalias:acpi:BOSC0200*:dmi:*:svnHampoo*:pnP1D6_C109K:*
206 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
209 # Chuwi CoreBook does not have its product name filled, so we
210 # match the entire dmi-alias
211 sensor:modalias:acpi:BOSC0200*:dmi:bvnAmericanMegatrendsInc.:bvrY13D_KB133.103:bd06/01/2018:svnHampoo:pnDefaultstring:pvrV100:rvnHampoo:rnY13D_KB133:rvrV100:cvnDefaultstring:ct9:cvrDefaultstring:
212 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
214 #########################################
216 #########################################
217 sensor:modalias:acpi:KIOX000A*:dmi:*:svnConnect:pnTablet9:*
218 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
220 #########################################
222 #########################################
225 sensor:modalias:acpi:KIOX000A*:dmi:*:svncube:pni1-TF:*
226 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
229 sensor:modalias:acpi:SMO8500*:dmi:*:svncube:pni7:*
230 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
233 sensor:modalias:acpi:KIOX000A*:dmi:*:svnCube:pni7Stylus:*
234 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
237 sensor:modalias:acpi:KIOX000A*:dmi:*:svnCube:pni16:*
238 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
240 # Cube i7 Stylus I8L Model
241 sensor:modalias:acpi:KIOX000A*:dmi:*:svnCube:pni8-L:*
242 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
244 # Cube iWork 10 Flagship
245 sensor:modalias:acpi:BOSC0200*:dmi:*:svnCube:pnI15-TC:*
246 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
248 # Cube iWork 11 Stylus
249 sensor:modalias:acpi:KIOX000A*:dmi:*:svncube:pni8-T:*
250 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
252 #########################################
254 #########################################
255 sensor:modalias:acpi:*KIOX000A*:dmi:*svn*CytrixTechnology:*pn*Complex11t*
256 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
258 #########################################
260 #########################################
261 sensor:modalias:platform:HID-SENSOR-200073:dmi:*svnDell*:pnVostro5581:*
264 # Dell Venue 8 Pro 3845
265 sensor:modalias:acpi:INVN6500*:dmi:*svnDellInc.*:pnVenue8Pro3845*
266 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
268 # Dell Venue 10 Pro 5055
269 sensor:modalias:acpi:INVN6500*:dmi:*svnDell*:pnVenue10Pro5055*
270 ACCEL_MOUNT_MATRIX=0, -1, 0; 1, 0, 0; 0, 0, 1
272 #########################################
274 #########################################
275 sensor:modalias:acpi:SMO8500*:dmi:*svn*DEXP*:*pn*DEXPOEM*
276 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
278 #########################################
280 #########################################
283 sensor:modalias:acpi:BOSC0200*:dmi:*:svnDigma:pnCITIE203ES2010EW:*
284 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
286 #########################################
288 #########################################
289 sensor:modalias:acpi:ACCE0001*:dmi:*svnEndless*:*pnELT-NL3*
290 ACCEL_MOUNT_MATRIX=0, 1, 0; 0, 0, -1; -1, 0, 0
292 #########################################
294 #########################################
295 sensor:modalias:acpi:KIOX000A*:dmi:*:svnEVE*:pnEveV:*
296 ACCEL_MOUNT_MATRIX=0, 1, 0; -1, 0, 0; 0, 0, 1
298 #########################################
300 #########################################
303 sensor:modalias:acpi:KIOX010A*:dmi:*:svnGEO*:pnGeoFlex*:*
304 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, 1
306 #########################################
308 #########################################
309 sensor:modalias:platform:cros-ec-accel:dmi:*:svnGOOGLE*
310 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, -1
312 # caroline board (Samsung Chromebook Pro) reports itself as svnGoogle
313 sensor:modalias:platform:cros-ec-accel:dmi:*:svnGoogle:pnCaroline*
314 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, -1
316 # Dell Inspiron Chromebook 14 2-in-1
317 sensor:modalias:platform:cros-ec-accel:dmi:*svnGoogle:pnVayne*
318 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, -1
320 # nocturne board (Google Pixel Slate)
321 sensor:modalias:platform:cros-ec-accel:dmi:*Google_Nocturne*
322 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
324 #########################################
326 #########################################
327 sensor:modalias:acpi:KIOX000A*:dmi:bvnINSYDECorp.:bvrBYT70A.YNCHENG.WIN.007:*:svnInsyde:pnT701:*
328 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
330 #########################################
332 #########################################
334 # GPD win (version 1, with the X5-Z8750 CPU)
335 # Note we match all dmi fields including the BIOS date checking for all known
336 # BIOS dates, since the strings are unfortunately very generic.
337 # Out of a sample set of 15 similar boards only the GPDwin has board_vendor=AMI
338 # and no other devices have both board_name *and* product_name set to
339 # "Default string". So combined with the sensor modalias and BIOS date this
340 # should be unique enough to identify the GPDwin
341 sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd10/25/2016:svnDefaultstring:pnDefaultstring:pvrDefaultstring:rvnAMICorporation:rnDefaultstring:rvrDefaultstring:cvnDefaultstring:ct3:cvrDefaultstring:
342 sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd11/18/2016:svnDefaultstring:pnDefaultstring:pvrDefaultstring:rvnAMICorporation:rnDefaultstring:rvrDefaultstring:cvnDefaultstring:ct3:cvrDefaultstring:
343 sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd12/23/2016:svnDefaultstring:pnDefaultstring:pvrDefaultstring:rvnAMICorporation:rnDefaultstring:rvrDefaultstring:cvnDefaultstring:ct3:cvrDefaultstring:
344 sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd12/26/2016:svnDefaultstring:pnDefaultstring:pvrDefaultstring:rvnAMICorporation:rnDefaultstring:rvrDefaultstring:cvnDefaultstring:ct3:cvrDefaultstring:
345 sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd02/21/2017:svnDefaultstring:pnDefaultstring:pvrDefaultstring:rvnAMICorporation:rnDefaultstring:rvrDefaultstring:cvnDefaultstring:ct3:cvrDefaultstring:
346 sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd03/20/2017:svnDefaultstring:pnDefaultstring:pvrDefaultstring:rvnAMICorporation:rnDefaultstring:rvrDefaultstring:cvnDefaultstring:ct3:cvrDefaultstring:
347 sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd05/25/2017:svnDefaultstring:pnDefaultstring:pvrDefaultstring:rvnAMICorporation:rnDefaultstring:rvrDefaultstring:cvnDefaultstring:ct3:cvrDefaultstring:
350 #########################################
352 #########################################
354 # Most HP Laptop using the lis3lv02d device have it in the base,
355 # mark these sensors as such.
356 sensor:modalias:platform:lis3lv02d:dmi:*svn*Hewlett-Packard*:*
357 sensor:modalias:platform:lis3lv02d:dmi:*svn*HP*:*
360 sensor:modalias:acpi:SMO8500*:dmi:*:svnHewlett-Packard:pnHPStream7Tablet:*
361 sensor:modalias:acpi:SMO8500*:dmi:*:svnHewlett-Packard:pnHPStream8Tablet:*
362 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
364 # HP Pavillion X2 10-n000nd
365 sensor:modalias:i2c:bmc150_accel:dmi:*:svnHewlett-Packard:pnHPPavilionx2Detachable:*:rn815D:*
366 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
368 #########################################
370 #########################################
372 # The I.T.Works TW891 2-in-1's DMI has the product-name field set, but not
373 # the sys-vendor field. This makes the DMI data a bit generic, so we match
374 # the whole dmi modalias, except for the BIOS version/date
375 sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:*:svnTobefilledbyO.E.M.:pnTW891:pvrTobefilledbyO.E.M.:rvnTobefilledbyO.E.M.:rnTW891:rvr1.0:cvnToBeFilledByO.E.M.:ct3:cvrToBeFilledByO.E.M.:
376 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
378 # I.T.Works TW701 7" windows tablet, same hw as Trekstor ST70416-6
379 sensor:modalias:acpi:BMA250*:dmi:*:bvritWORKS.G.WI71C.JGBMRB*:*:svnInsyde:pni71c:*
380 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
382 #########################################
384 #########################################
385 sensor:modalias:acpi:BOSC0200*:dmi:*:svnIRBIS:pnTW90:*
386 ACCEL_MOUNT_MATRIX=0, 1, 0; -1, 0, 0; 0, 0, 1
388 #########################################
390 #########################################
391 sensor:modalias:acpi:KIOX000A*:dmi:*svn*iOTA*:*pn*IOTA2210*
392 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
394 #########################################
396 #########################################
399 sensor:modalias:acpi:BOSC0200*:dmi:bvnINSYDECorp.:bvrjumperx.T87.KFBNEE*
400 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
403 sensor:modalias:acpi:BOSC0200*:dmi:*:svnJumper:pnEZpad:*:rvr.A006:*
404 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, 1
407 sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:*:svnjumper:pnEZpad:*:ct31:*
408 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
410 #########################################
412 #########################################
413 sensor:modalias:acpi:KIOX000A*:dmi:bvnINSYDECorp.:bvrVISION.I22K*:svnKAZAM:pnVISION:*
414 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
416 #########################################
418 #########################################
419 sensor:modalias:acpi:SMO8500*:dmi:*svnLamina*:*pnT701BR.SE*
420 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
422 sensor:modalias:acpi:KIOX000A*:dmi:*svnLAMINA:pnT-1016BNORD*
423 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
425 #########################################
427 #########################################
428 sensor:modalias:acpi:NCPE0388*:dmi:*:rnLenovoYOGA510-14IKB:*
429 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, 1
431 sensor:modalias:acpi:BOSC0200*:dmi:*ThinkPadYoga11e3rdGen*
432 ACCEL_MOUNT_MATRIX=0, 1, 0; -1, 0, 0; 0, 0, 1
435 sensor:modalias:acpi:BMA250E*:dmi:bvnLENOVO:*:pvrLenovoMIIX3-1030:*
436 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
439 sensor:modalias:acpi:SMO8500*:dmi:bvnLENOVO:*:pvrLenovoMIIX3-830:*
440 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
443 sensor:modalias:acpi:BOSC0200*:dmi:*:svnLENOVO:pn81H3:*
444 ACCEL_MOUNT_MATRIX=0, 1, 0; -1, 0, 0; 0, 0, 1
447 sensor:modalias:acpi:SMO8500*:dmi:bvnLENOVO:*:pvrMIIX300-*
448 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
450 # IdeaPad Miix 310 note this only is for BIOS version (bvr) 1HCN4?WW and 1HCN2?WW, which has
451 # a portrait LCD panel, versions with bvr 1HCN3?WW have a landscape panel
452 sensor:modalias:acpi:KIOX000A*:dmi:bvnLENOVO:bvr1HCN4?WW:*:svnLENOVO:pn80SG:*
453 sensor:modalias:acpi:KIOX000A*:dmi:bvnLENOVO:bvr1HCN2?WW:*:svnLENOVO:pn80SG:*
454 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
456 # IdeaPad Miix 320, different batches use a different sensor
457 sensor:modalias:acpi:*BOSC0200*:dmi:*:svnLENOVO*:pn80XF:*
458 sensor:modalias:acpi:SMO8840*:dmi:*:svnLENOVO:pn80XF:pvrLenovoMIIX320*
459 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
461 # IdeaPad Miix 510, multiple expressions match different internal names
462 # pn80U1 matches IdeaPad Miix510-12ISK
463 sensor:modalias:acpi:*BOSC0200*:dmi:*:svnLENOVO*:pn80XE:*
464 sensor:modalias:acpi:*BOSC0200*:dmi:*:svnLENOVO*:pn80U1:*
465 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
467 #########################################
469 #########################################
472 sensor:modalias:acpi:BOSC0200*:dmi:*:svnLINX*:pnLINX1010B:*
473 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, -1
475 # Linx 12X64 and 12V64
476 sensor:modalias:acpi:KIOX000A*:dmi:*:svnLINX*:pnLINX12*64:*
477 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
479 #########################################
481 #########################################
483 # Medion Akoya E1239T MD60568
484 sensor:modalias:acpi:KIOX0009*:dmi:*:svnMEDION:pnE1239TMD60568:*
485 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
487 # Medion Akoya E2212T MD99720
488 sensor:modalias:acpi:SMO8500*:dmi:*:svnMEDION:pnAkoyaE2212TMD99720:*
489 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
491 # Medion Akoya E2215T MD60198
492 sensor:modalias:acpi:KIOX000A*:dmi:*svnMEDION:pnE2215TMD60198:*
493 # Medion Akoya E3216 MD60900
494 # Medion Akoya E3221 MD61237
495 # Medion Akoya E2292 MD63390
496 # Medion Akoya E2293 MD61130
497 # Medion Akoya E2293 MD61144
498 # Medion Akoya E3222 MD62450
499 # and presumably all other Akoya Exxxx
500 sensor:modalias:acpi:KIOX010A*:dmi:*:svnMEDION:pnE*:*
501 # Medion Akoya E3222 MD62450
502 sensor:modalias:acpi:KIOX010A*:dmi:*:svnMEDION:pnMEDION*:*
503 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
505 #########################################
507 #########################################
508 sensor:modalias:acpi:BMA250E*:dmi:*:svnMPMAN:pnMPWIN8900CL:*
509 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
511 #########################################
513 #########################################
514 sensor:modalias:acpi:SMO8500*:dmi:*:svnMicro-StarInternationalCo.,Ltd.:pnS100:*
515 ACCEL_MOUNT_MATRIX=0, -1, 0; 1, 0, 0; 0, 0, 1
517 #########################################
519 #########################################
522 sensor:modalias:acpi:BOSC0200*:dmi:*:svnCompletElectroServ:pnMY8307:*
523 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
525 #########################################
527 #########################################
529 # Nuvision/TMAX 8" Windows signature edition. TM800W560L
530 sensor:modalias:acpi:KIOX000A*:dmi:*:svnTMAX:pnTM800W560L:*
531 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
533 # Nuvision Solo 10 Draw. TM101W610L
534 sensor:modalias:acpi:KIOX000A*:dmi:*:svnTMAX:pnTM101W610L:*
535 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
537 # Nuvision Encite Split 11. NES11-C432SSA
538 sensor:modalias:acpi:BOSC0200*:dmi:*:svnNuvision:pnNES11:*
539 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
541 #########################################
543 #########################################
544 sensor:modalias:acpi:BOSC0200*:dmi:bvnINSYDECorp.:bvrODYS.FUSIONWIN12:*
545 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
547 #########################################
549 #########################################
550 sensor:modalias:acpi:BOSC0200*:dmi:*:svnONDA:pnV80PLUS:*
551 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
553 sensor:modalias:acpi:BMA250E*:dmi:bvnINSYDECorp.:bvrONDA.D89*:svnInsyde:pnONDATablet:*
554 sensor:modalias:acpi:BMA250E*:dmi:bvnINSYDECorp.:bvrONDA.D86*:svnONDA:pnV820wDualOS:*
555 sensor:modalias:acpi:BMA250E*:dmi:bvnINSYDECorp.:bvrONDA.W89*:svnInsyde:pnONDATablet:*
556 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
558 # Onda v975w, generic DMI strings, match entire dmi modalias inc. bios-date
559 sensor:modalias:acpi:SMO8500*:dmi:bvnAmericanMegatrendsInc.:bvr5.6.5:bd07/25/2014:svnTobefilledbyO.E.M.:pnTobefilledbyO.E.M.:pvrTobefilledbyO.E.M.:rvnAMICorporation:rnAptioCRB:rvrTobefilledbyO.E.M.:cvnToBeFilledByO.E.M.:ct3:cvrToBeFilledByO.E.M.:
560 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
562 #########################################
564 #########################################
565 sensor:modalias:acpi:SMO8500*:dmi:*:svnPEAQ:pnPEAQPMMC1010MD99187:*
566 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
568 #########################################
570 #########################################
571 sensor:modalias:acpi:KIOX000A*:dmi:*:svnPIPO:pnW2S:*
572 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
575 sensor:modalias:acpi:SMO8500*:dmi:*:bvrV8L_WIN32_CHIPHD_*_DX:*:rvnAMICorporation:rnAptioCRB:*
576 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
578 #########################################
580 #########################################
581 sensor:modalias:acpi:BMA250E*:dmi:*:svnShenzhenPLOYER*:pnMOMO7W:*
582 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
584 #########################################
586 #########################################
588 # The Point of View TAB-P800W does not have its product name filled, so we
589 # match the entire dmi-alias, assuming that the use of a BMA250E +
590 # bios-version + bios-date combo is unique
591 sensor:modalias:acpi:BMA250E*:dmi:bvnAmericanMegatrendsInc.:bvr3BAIR1013:bd08/22/2014:svnTobefilledbyO.E.M.:pnTobefilledbyO.E.M.:pvrTobefilledbyO.E.M.:rvnAMICorporation:rnAptioCRB:rvrTobefilledbyO.E.M.:cvnToBeFilledByO.E.M.:ct3:cvrToBeFilledByO.E.M.:
592 sensor:modalias:acpi:BMA250E*:dmi:bvnAmericanMegatrendsInc.:bvr3BAIR1014:bd10/24/2014:svnTobefilledbyO.E.M.:pnTobefilledbyO.E.M.:pvrTobefilledbyO.E.M.:rvnAMICorporation:rnAptioCRB:rvrTobefilledbyO.E.M.:cvnToBeFilledByO.E.M.:ct3:cvrToBeFilledByO.E.M.:
593 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
595 # Point of View TAB-P1005W-232 (v2.0)
596 sensor:modalias:acpi:KIOX000A*:dmi:*:rvnPOV:rnI102A:*
597 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
599 # Point of View TAB-P1006W-232-3G (v1.0)
600 sensor:modalias:i2c:bmc150_accel:dmi:bvnINSYDECorp.:*:svnInsyde:pnBayTrail:*:rvn105B:rn0E57:*
601 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
603 #########################################
605 #########################################
606 sensor:modalias:acpi:SMO8500*:dmi:*:svnProwise:pnPT301:*
607 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
609 #########################################
611 #########################################
614 sensor:modalias:acpi:BOSC0200*:dmi:bvnAmericanMegatrendsInc.:bvrSCH12i.WJ210Z.KtBJRCA03*
615 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
617 #########################################
619 #########################################
621 sensor:modalias:acpi:KIOX010A*:dmi:*:svnTECLAST:pnF5:*
622 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
624 # Teclast F6 Pro (2 sensors)
625 sensor:modalias:acpi:KIOX010A*:dmi:*:svnTECLAST:pnF6Pro:*
626 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, -1
627 ACCEL_LOCATION=display
629 sensor:modalias:acpi:KIOX020A*:dmi:*:svnTECLAST:pnF6Pro:*
630 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
633 # Teclast X80 Plus (H5C5)
634 sensor:modalias:acpi:KIOX000A*:dmi:*:svnTECLAST:pnDefaultstring:*
635 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
637 # Teclast X80 Pro (E3E6)
638 sensor:modalias:acpi:KIOX000A*:dmi:*:svnTECLAST:pnX80Pro:*
639 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
641 # Teclast X89 (E7ED), "tPAD" is too generic also match on BIOS date
642 sensor:modalias:acpi:SMO8500*:dmi:*bd12/19/2014:*:rvnTECLAST:rntPAD:*
643 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
645 # Teclast X98 Plus I (A5C6), generic DMI strings, match entire dmi modalias inc. bios-date
646 sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:bvr5.011:bd11/03/2015:svnTobefilledbyO.E.M.:pnTobefilledbyO.E.M.:pvrTobefilledbyO.E.M.:rvnAMICorporation:rnCherryTrailCR:rvrTobefilledbyO.E.M.:cvnToBeFilledByO.E.M.:ct3:cvrToBeFilledByO.E.M.:
647 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
649 # Teclast X98 Plus II
650 sensor:modalias:acpi:KIOX000A*:dmi:*:svnTECLAST:pnX98PlusII:*
651 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
653 #########################################
655 #########################################
657 # Thundersoft TST168 tablet, generic DMI strings, match entire dmi modalias inc. bios-date
658 sensor:modalias:acpi:BMA250E*:dmi:bvnAmericanMegatrendsInc.:bvr5.6.5:bd04/15/2014:svnTobefilledbyO.E.M.:pnTobefilledbyO.E.M.:pvrTobefilledbyO.E.M.:rvnAMICorporation:rnAptioCRB:rvrTobefilledbyO.E.M.:cvnToBeFilledByO.E.M.:ct3:cvrToBeFilledByO.E.M.:
659 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
661 #########################################
663 #########################################
665 # Toshiba Encore WT10A tablet
666 sensor:modalias:acpi:INVN6500*:dmi:*:svnTOSHIBA:pnTOSHIBAWT10-A-103:*
667 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
669 #########################################
671 #########################################
672 sensor:modalias:acpi:BMA250*:dmi:*:bvrTREK.G.WI71C.JGBMRBA*:*:svnInsyde:pnST70416-6:*
673 sensor:modalias:acpi:BMA250*:dmi:*:bvrTREK.G.WI71C.JGBMRBA*:*:svnTrekStor:pnSurfTabwintron7.0ST70416-6:*
674 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
676 sensor:modalias:acpi:KIOX000A*:dmi:*:svnTrekStor:pnSurfTabtwin10.1:*
677 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
679 sensor:modalias:acpi:KIOX000A*:dmi:*:svnTREKSTOR*:pnPrimetabS11B:*
680 sensor:modalias:acpi:KIOX000A*:dmi:*:svnTREKSTOR:pnPrimetabT13B:*
681 sensor:modalias:acpi:BOSC0200*:dmi:*:svnTrekStor*:pnSurfTabtwin11.6:*
682 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
684 # alternative version of Trekstor's SurfTab Twin 11.6
685 sensor:modalias:acpi:BOSC0200*:dmi:*:bvrTP15-VT5.2.1.3:*:svnTrekStor*:pnSurfTabtwin11.6:*
686 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, -1
688 sensor:modalias:acpi:KIOX010A*:dmi:*:svnTREKSTOR:pnPrimebookC11B:*
689 sensor:modalias:acpi:KIOX010A*:dmi:*:svnTREKSTOR:pnPRIMEBOOKC11B:*
690 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, -1
691 ACCEL_LOCATION=display
693 sensor:modalias:acpi:KIOX020A*:dmi:*:svnTREKSTOR:pnPrimebookC11B:*
694 sensor:modalias:acpi:KIOX020A*:dmi:*:svnTREKSTOR:pnPRIMEBOOKC11B:*
695 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
698 #########################################
700 #########################################
701 sensor:modalias:acpi:KIOX000A*:dmi:*:svnUMAX:pnVisionBook10WiPro:*
702 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
704 sensor:modalias:acpi:SMO8500*:dmi:*:svnUMAX:pnVisionBook10WiPlus:*
705 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
707 #########################################
709 #########################################
710 sensor:modalias:acpi:KIOX000A*:dmi:*:svnWortmann_AG:pnTERRA_PAD_1061:*
711 ACCEL_MOUNT_MATRIX=0, -1, 0; 1, 0, 0; 0, 0, -1
713 #########################################
715 #########################################
716 sensor:modalias:acpi:BMA250E*:dmi:*:svnYOURS:pnY8W81:*
717 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1