1# This file is part of systemd. 2# 3# The lookup keys are composed in: 4# 60-sensor.rules 5# 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. 10# 11# Match string formats: 12# sensor:modalias:<parent device modalias>:dmi:<dmi string> 13# 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 17# 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 24# 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): 28# systemd-hwdb update 29# udevadm trigger -v -p DEVNAME=/dev/iio:deviceXXX 30# where /dev/iio:deviceXXX is the device in question. 31# 32# If your changes are generally applicable, preferably send them as a pull 33# request to 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 38# 39# For hwdb format and systemd behavior: 40# https://www.freedesktop.org/software/systemd/man/hwdb.html 41# 42# Allowed properties are: 43# ACCEL_MOUNT_MATRIX=<matrix> 44# PROXIMITY_NEAR_LEVEL=<value> 45# 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 53# 54# [1]: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=dfc57732ad38f93ae6232a3b4e64fd077383a0f1 55# 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 62# is held upright. 63# 64# ACCEL_LOCATION=<location> 65# 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 69# 70# Sort by brand, model 71 72######################################### 73# Acer 74######################################### 75sensor:modalias:acpi:INVN6500*:dmi:*svn*Acer*:*pn*AspireSW5-011* 76 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 77 78sensor:modalias:acpi:INVN6500*:dmi:*svn*Acer*:*pn*AspireSW5-012* 79 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 80 81sensor:modalias:acpi:BMA250E*:dmi:*:svnAcer:pnIconiaW1-810:* 82 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1 83 84sensor:modalias:acpi:SMO8500:*:dmi:*Acer*:pnOneS1002* 85 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, -1 86 87sensor:modalias:acpi:KIOX0009*:dmi:*:svnAcer:pnOneS1003:* 88 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1 89 90sensor:modalias:acpi:BOSC0200*:dmi:*:svnAcer*:pnSwitchSW312-31:* 91 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 92 93sensor:modalias:acpi:BOSC0200*:dmi:*svn*Acer*:*pn*Spin*SP111-33* 94 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 95 96######################################### 97# Archos 98######################################### 99sensor:modalias:acpi:SMO8500*:dmi:*:svnARCHOS:pnARCHOS80Cesium:* 100 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1 101 102######################################### 103# AsusTek 104######################################### 105sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:*pnT100CHI* 106 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1 107 108sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:pnT300CHI* 109 ACCEL_MOUNT_MATRIX=0, -1, 0; 1, 0, 0; 0, 0, 1 110 111sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:*pnT100TA* 112sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:pnT200TA* 113 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1 114 115sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:*pnTP201SA* 116sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:pn*E205SA* 117 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 118 119sensor:modalias:acpi:INVN6500*:dmi:*svn*ASUSTeK*:*pn*TP300LA* 120sensor:modalias:acpi:INVN6500*:dmi:*svn*ASUSTeK*:*pn*TP300LD* 121 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 122 123sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:*pn*Q551LN* 124 ACCEL_MOUNT_MATRIX=0, 1, 0; -1, 0, 0; 0, 0, 1 125 126sensor:modalias:acpi:KXJ2109*:dmi:*:svnASUSTeK*:pnME176C* 127 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1 128 129sensor:modalias:acpi:SMO8500*:dmi:*svn*ASUSTeK*:*pn*TP300LJ* 130 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 131 132sensor:modalias:acpi:SMO8500*:dmi:*svn*ASUSTeK*:*pn*TP500LAB* 133sensor:modalias:acpi:SMO8500*:dmi:*svn*ASUSTeK*:*pn*TP500LB* 134 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 135 136sensor:modalias:acpi:SMO8500*:dmi:*svn*ASUSTeK*:*pn*TP300LD* 137 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 138 139sensor:modalias:acpi:BOSC0200*:dmi:*svn*ASUSTeK*:*pn*TP412UA* 140 ACCEL_MOUNT_MATRIX=0, -1, 0; 1, 0, 0; 0, 0, 1 141 142######################################### 143# Axxo 144######################################### 145sensor:modalias:acpi:SMO8500*:dmi:*:svnStandard:pnWCBT1011:* 146 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1 147 148######################################### 149# Chuwi 150######################################### 151 152# Chuwi Vi8 (CWI506) 153sensor:modalias:acpi:BMA250E*:dmi:bvnINSYDECorp.:bvrCHUWI.D86JLBNR*:svnInsyde:pni86:* 154 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 155 156# Chuwi Vi8 Plus (CWI519) 157sensor:modalias:acpi:BOSC0200*:dmi:*:svnHampoo:pnD2D3_Vi8A1:* 158 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 159 160# Chuwi Vi10 (CWI505) 161sensor:modalias:acpi:BMA250E*:dmi:bvnINSYDECorp.:bvrG1D_S165*:svnilife:pnS165:* 162 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 163 164# Chuwi Hi8 Pro (CWI513) 165sensor:modalias:acpi:BOSC0200*:dmi:*:svnHampoo:pnX1D3_C806N:* 166 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 167 168# Chuwi Hi10 (CWI515) 169sensor:modalias:acpi:BOSC0200*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:*:svnDefaultstring:pnDefaultstring:* 170 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 171 172# Chuwi Hi10 (CWI1515) 173sensor:modalias:acpi:BOSC0200*:dmi:bvnAmericanMegatrendsInc.:bvrP02A_C106.60E:*:svnDefaultstring:pnDefaultstring:* 174 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 175 176# Chuwi Hi10 Pro 177sensor:modalias:acpi:BOSC0200*:dmi:*:svn*CHUWIINNOVATIONANDTECHNOLOGY*:pnHi10protablet:* 178 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 179 180# Chuwi Hi12 181sensor:modalias:acpi:BOSC0200*:dmi:*:svnHampoo:pnP02BD6_HI-122LP:* 182 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1 183 184# Chuwi Hi13 185sensor:modalias:acpi:KIOX000A*:dmi:*:svnChuwi*:pnHi13:* 186 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1 187 188# Chuwi HiBook 189# Chuwi HiBook does not have its product name filled, so we 190# match the entire dmi-alias, assuming that the use of a BOSC0200 + 191# bios-version + bios-date combo is unique 192sensor:modalias:acpi:BOSC0200*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd05/07/2016:svnDefaultstring:pnDefaultstring:pvrDefaultstring:rvnHampoo:rnCherryTrailCR:rvrDefaultstring:cvnDefaultstring:ct3:cvrDefaultstring: 193sensor:modalias:acpi:BOSC0200*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd05/28/2016:svnDefaultstring:pnDefaultstring:pvrDefaultstring:rvnHampoo:rnCherryTrailCR:rvrDefaultstring:cvnDefaultstring:ct3:cvrDefaultstring: 194 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1 195 196# Chuwi CoreBook 197# Chuwi CoreBook does not have its product name filled, so we 198# match the entire dmi-alias 199sensor:modalias:acpi:BOSC0200*:dmi:bvnAmericanMegatrendsInc.:bvrY13D_KB133.103:bd06/01/2018:svnHampoo:pnDefaultstring:pvrV100:rvnHampoo:rnY13D_KB133:rvrV100:cvnDefaultstring:ct9:cvrDefaultstring: 200 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1 201 202######################################### 203# Connect 204######################################### 205sensor:modalias:acpi:KIOX000A*:dmi:*:svnConnect:pnTablet9:* 206 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 207 208######################################### 209# Cube 210######################################### 211 212# Cube iWork8 Air 213sensor:modalias:acpi:KIOX000A*:dmi:*:svncube:pni1-TF:* 214 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1 215 216# Cube i7 217sensor:modalias:acpi:SMO8500*:dmi:*:svncube:pni7:* 218 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1 219 220# Cube i7 Stylus 221sensor:modalias:acpi:KIOX000A*:dmi:*:svnCube:pni7Stylus:* 222 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1 223 224# Cube i7 Book (i16) 225sensor:modalias:acpi:KIOX000A*:dmi:*:svnCube:pni16:* 226 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1 227 228# Cube i7 Stylus I8L Model 229sensor:modalias:acpi:KIOX000A*:dmi:*:svnCube:pni8-L:* 230 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1 231 232# Cube iWork 10 Flagship 233sensor:modalias:acpi:BOSC0200*:dmi:*:svnCube:pnI15-TC:* 234 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1 235 236# Cube iWork 11 Stylus 237sensor:modalias:acpi:KIOX000A*:dmi:*:svncube:pni8-T:* 238 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 239 240######################################### 241# Cytrix (Mytrix) 242######################################### 243sensor:modalias:acpi:*KIOX000A*:dmi:*svn*CytrixTechnology:*pn*Complex11t* 244 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1 245 246######################################### 247# Dell 248######################################### 249sensor:modalias:platform:HID-SENSOR-200073:dmi:*svnDell*:pnVostro5581:* 250 ACCEL_LOCATION=base 251 252# Dell Venue 10 Pro 5055 253sensor:modalias:acpi:INVN6500*:dmi:*svnDell*:pnVenue10Pro5055* 254 ACCEL_MOUNT_MATRIX=0, -1, 0; 1, 0, 0; 0, 0, 1 255 256######################################### 257# DEXP 258######################################### 259sensor:modalias:acpi:SMO8500*:dmi:*svn*DEXP*:*pn*DEXPOEM* 260 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 261 262######################################### 263# DIGMA 264######################################### 265 266# Digma CITI E203 267sensor:modalias:acpi:BOSC0200*:dmi:*:svnDigma:pnCITIE203ES2010EW:* 268 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 269 270######################################### 271# Endless 272######################################### 273sensor:modalias:acpi:ACCE0001*:dmi:*svnEndless*:*pnELT-NL3* 274 ACCEL_MOUNT_MATRIX=0, 1, 0; 0, 0, -1; -1, 0, 0 275 276######################################### 277# Eve Technology 278######################################### 279sensor:modalias:acpi:KIOX000A*:dmi:*:svnEVE*:pnEveV:* 280 ACCEL_MOUNT_MATRIX=0, 1, 0; -1, 0, 0; 0, 0, 1 281 282######################################### 283# Google Chromebooks 284######################################### 285sensor:modalias:platform:cros-ec-accel:dmi:*:svnGOOGLE* 286 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, -1 287 288######################################### 289# GP-electronic 290######################################### 291sensor:modalias:acpi:KIOX000A*:dmi:bvnINSYDECorp.:bvrBYT70A.YNCHENG.WIN.007:*:svnInsyde:pnT701:* 292 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 293 294######################################### 295# GPD 296######################################### 297 298# GPD win (version 1, with the X5-Z8750 CPU) 299# Note we match all dmi fields including the BIOS date checking for all known 300# BIOS dates, since the strings are unfortunately very generic. 301# Out of a sample set of 15 similar boards only the GPDwin has board_vendor=AMI 302# and no other devices have both board_name *and* product_name set to 303# "Default string". So combined with the sensor modalias and BIOS date this 304# should be unique enough to identify the GPDwin 305sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd10/25/2016:svnDefaultstring:pnDefaultstring:pvrDefaultstring:rvnAMICorporation:rnDefaultstring:rvrDefaultstring:cvnDefaultstring:ct3:cvrDefaultstring: 306sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd11/18/2016:svnDefaultstring:pnDefaultstring:pvrDefaultstring:rvnAMICorporation:rnDefaultstring:rvrDefaultstring:cvnDefaultstring:ct3:cvrDefaultstring: 307sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd12/23/2016:svnDefaultstring:pnDefaultstring:pvrDefaultstring:rvnAMICorporation:rnDefaultstring:rvrDefaultstring:cvnDefaultstring:ct3:cvrDefaultstring: 308sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd12/26/2016:svnDefaultstring:pnDefaultstring:pvrDefaultstring:rvnAMICorporation:rnDefaultstring:rvrDefaultstring:cvnDefaultstring:ct3:cvrDefaultstring: 309sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd02/21/2017:svnDefaultstring:pnDefaultstring:pvrDefaultstring:rvnAMICorporation:rnDefaultstring:rvrDefaultstring:cvnDefaultstring:ct3:cvrDefaultstring: 310sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd03/20/2017:svnDefaultstring:pnDefaultstring:pvrDefaultstring:rvnAMICorporation:rnDefaultstring:rvrDefaultstring:cvnDefaultstring:ct3:cvrDefaultstring: 311sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd05/25/2017:svnDefaultstring:pnDefaultstring:pvrDefaultstring:rvnAMICorporation:rnDefaultstring:rvrDefaultstring:cvnDefaultstring:ct3:cvrDefaultstring: 312 ACCEL_LOCATION=base 313 314######################################### 315# HP 316######################################### 317 318# Most HP Laptop using the lis3lv02d device have it in the base, 319# mark these sensors as such. 320sensor:modalias:platform:lis3lv02d:dmi:*svn*Hewlett-Packard*:* 321sensor:modalias:platform:lis3lv02d:dmi:*svn*HP*:* 322 ACCEL_LOCATION=base 323 324sensor:modalias:acpi:SMO8500*:dmi:*:svnHewlett-Packard:pnHPStream7Tablet:* 325sensor:modalias:acpi:SMO8500*:dmi:*:svnHewlett-Packard:pnHPStream8Tablet:* 326 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 327 328# HP Pavillion X2 10-n000nd 329sensor:modalias:i2c:bmc150_accel:dmi:*:svnHewlett-Packard:pnHPPavilionx2Detachable:*:rn815D:* 330 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 331 332######################################### 333# I.T.Works 334######################################### 335 336# The I.T.Works TW891 2-in-1's DMI has the product-name field set, but not 337# the sys-vendor field. This makes the DMI data a bit generic, so we match 338# the whole dmi modalias, except for the BIOS version/date 339sensor: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.: 340 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 341 342# I.T.Works TW701 7" windows tablet, same hw as Trekstor ST70416-6 343sensor:modalias:acpi:BMA250*:dmi:*:bvritWORKS.G.WI71C.JGBMRB*:*:svnInsyde:pni71c:* 344 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 345 346######################################### 347# Irbis TW90 348######################################### 349sensor:modalias:acpi:BOSC0200*:dmi:*:svnIRBIS:pnTW90:* 350 ACCEL_MOUNT_MATRIX=0, 1, 0; -1, 0, 0; 0, 0, 1 351 352######################################### 353# iOTA 360 354######################################### 355sensor:modalias:acpi:KIOX000A*:dmi:*svn*iOTA*:*pn*IOTA2210* 356 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 357 358######################################### 359# Jumper 360######################################### 361 362# EZpad mini 3 363sensor:modalias:acpi:BOSC0200*:dmi:bvnINSYDECorp.:bvrjumperx.T87.KFBNEE* 364 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 365 366# EZpad 6 Pro 367sensor:modalias:acpi:BOSC0200*:dmi:*:svnJumper:pnEZpad:*:rvr.A006:* 368 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, 1 369 370# EZpad Go 371sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:*:svnjumper:pnEZpad:*:ct31:* 372 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1 373 374######################################### 375# Kazam 376######################################### 377sensor:modalias:acpi:KIOX000A*:dmi:bvnINSYDECorp.:bvrVISION.I22K*:svnKAZAM:pnVISION:* 378 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 379 380######################################### 381# Lamina 382######################################### 383sensor:modalias:acpi:SMO8500*:dmi:*svnLamina*:*pnT701BR.SE* 384 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1 385 386sensor:modalias:acpi:KIOX000A*:dmi:*svnLAMINA:pnT-1016BNORD* 387 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 388 389######################################### 390# Lenovo 391######################################### 392sensor:modalias:acpi:NCPE0388*:dmi:*:rnLenovoYOGA510-14IKB:* 393 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, 1 394 395sensor:modalias:acpi:BOSC0200*:dmi:*ThinkPadYoga11e3rdGen* 396 ACCEL_MOUNT_MATRIX=0, 1, 0; -1, 0, 0; 0, 0, 1 397 398# Miix3-1030 399sensor:modalias:acpi:BMA250E*:dmi:bvnLENOVO:*:pvrLenovoMIIX3-1030:* 400 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 401 402# Miix3-830 403sensor:modalias:acpi:SMO8500*:dmi:bvnLENOVO:*:pvrLenovoMIIX3-830:* 404 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1 405 406# IdeaPad D330 407sensor:modalias:acpi:BOSC0200*:dmi:*:svnLENOVO:pn81H3:* 408 ACCEL_MOUNT_MATRIX=0, 1, 0; -1, 0, 0; 0, 0, 1 409 410# IdeaPad Miix 310 note this only is for BIOS version (bvr) 1HCN4?WW and 1HCN2?WW, which has 411# a portrait LCD panel, versions with bvr 1HCN3?WW have a landscape panel 412sensor:modalias:acpi:KIOX000A*:dmi:bvnLENOVO:bvr1HCN4?WW:*:svnLENOVO:pn80SG:* 413sensor:modalias:acpi:KIOX000A*:dmi:bvnLENOVO:bvr1HCN2?WW:*:svnLENOVO:pn80SG:* 414 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 415 416# IdeaPad Miix 320, different batches use a different sensor 417sensor:modalias:acpi:*BOSC0200*:dmi:*:svnLENOVO*:pn80XF:* 418sensor:modalias:acpi:SMO8840*:dmi:*:svnLENOVO:pn80XF:pvrLenovoMIIX320* 419 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 420 421# IdeaPad Miix 510, multiple expressions match different internal names 422# pn80U1 matches IdeaPad Miix510-12ISK 423sensor:modalias:acpi:*BOSC0200*:dmi:*:svnLENOVO*:pn80XE:* 424sensor:modalias:acpi:*BOSC0200*:dmi:*:svnLENOVO*:pn80U1:* 425 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 426 427######################################### 428# LINX 429######################################### 430 431# Linx 1010B 432sensor:modalias:acpi:BOSC0200*:dmi:*:svnLINX*:pnLINX1010B:* 433 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, -1 434 435# Linx 12X64 and 12V64 436sensor:modalias:acpi:KIOX000A*:dmi:*:svnLINX*:pnLINX12*64:* 437 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 438 439######################################### 440# Medion 441######################################### 442 443# Medion Akoya E1239T MD60568 444sensor:modalias:acpi:KIOX0009*:dmi:*:svnMEDION:pnE1239TMD60568:* 445 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1 446 447# Medion Akoya E2212T MD99720 448sensor:modalias:acpi:SMO8500*:dmi:*:svnMEDION:pnAkoyaE2212TMD99720:* 449 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1 450 451# Medion Akoya E2215T MD60198 452# Medion Akoya E3216 MD60900 453# Medion Akoya E3221 MD61237 454# Medion Akoya E2292 MD63390 455# Medion Akoya E2293 MD61130 456# Medion Akoya E2293 MD61144 457# Medion Akoya E3222 MD62450 458# and presumably all other Akoya Exxxx 459sensor:modalias:acpi:KIOX010A*:dmi:*:svnMEDION:pnE*:* 460# Medion Akoya E3222 MD62450 461sensor:modalias:acpi:KIOX010A*:dmi:*:svnMEDION:pnMEDION*:* 462 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 463 464######################################### 465# MSI 466######################################### 467sensor:modalias:acpi:SMO8500*:dmi:*:svnMicro-StarInternationalCo.,Ltd.:pnS100:* 468 ACCEL_MOUNT_MATRIX=0, -1, 0; 1, 0, 0; 0, 0, 1 469 470######################################### 471# MYRIA 472######################################### 473 474# MY8307 475sensor:modalias:acpi:BOSC0200*:dmi:*:svnCompletElectroServ:pnMY8307:* 476 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1 477 478######################################### 479# Nuvision (TMax) 480######################################### 481 482# Nuvision/TMAX 8" Windows signature edition. TM800W560L 483sensor:modalias:acpi:KIOX000A*:dmi:*:svnTMAX:pnTM800W560L:* 484 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1 485 486# Nuvision Solo 10 Draw. TM101W610L 487sensor:modalias:acpi:KIOX000A*:dmi:*:svnTMAX:pnTM101W610L:* 488 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 489 490# Nuvision Encite Split 11. NES11-C432SSA 491sensor:modalias:acpi:BOSC0200*:dmi:*:svnNuvision:pnNES11:* 492 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1 493 494######################################### 495# Onda 496######################################### 497sensor:modalias:acpi:BOSC0200*:dmi:*:svnONDA:pnV80PLUS:* 498 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 499 500sensor:modalias:acpi:BMA250E*:dmi:bvnINSYDECorp.:bvrONDA.D89*:svnInsyde:pnONDATablet:* 501sensor:modalias:acpi:BMA250E*:dmi:bvnINSYDECorp.:bvrONDA.D86*:svnONDA:pnV820wDualOS:* 502sensor:modalias:acpi:BMA250E*:dmi:bvnINSYDECorp.:bvrONDA.W89*:svnInsyde:pnONDATablet:* 503 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 504 505# Onda v975w, generic DMI strings, match entire dmi modalias inc. bios-date 506sensor: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.: 507 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 508 509######################################### 510# Peaq 511######################################### 512sensor:modalias:acpi:SMO8500*:dmi:*:svnPEAQ:pnPEAQPMMC1010MD99187:* 513 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1 514 515######################################### 516# Pipo 517######################################### 518sensor:modalias:acpi:KIOX000A*:dmi:*:svnPIPO:pnW2S:* 519 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1 520 521# Pipo W4 522sensor:modalias:acpi:SMO8500*:dmi:*:bvrV8L_WIN32_CHIPHD_*_DX:*:rvnAMICorporation:rnAptioCRB:* 523 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 524 525######################################### 526# Ployer 527######################################### 528sensor:modalias:acpi:BMA250E*:dmi:*:svnShenzhenPLOYER*:pnMOMO7W:* 529 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 530 531######################################### 532# Point of View 533######################################### 534 535# The Point of View TAB-P800W does not have its product name filled, so we 536# match the entire dmi-alias, assuming that the use of a BMA250E + 537# bios-version + bios-date combo is unique 538sensor: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.: 539sensor: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.: 540 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 541 542# Point of View TAB-P1005W-232 (v2.0) 543sensor:modalias:acpi:KIOX000A*:dmi:*:rvnPOV:rnI102A:* 544 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1 545 546# Point of View TAB-P1006W-232-3G (v1.0) 547sensor:modalias:i2c:bmc150_accel:dmi:bvnINSYDECorp.:*:svnInsyde:pnBayTrail:*:rvn105B:rn0E57:* 548 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1 549 550######################################### 551# Prowise 552######################################### 553sensor:modalias:acpi:SMO8500*:dmi:*:svnProwise:pnPT301:* 554 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1 555 556######################################### 557# Schneider 558######################################### 559 560# SCT101CTM 561sensor:modalias:acpi:BOSC0200*:dmi:bvnAmericanMegatrendsInc.:bvrSCH12i.WJ210Z.KtBJRCA03* 562 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1 563 564######################################### 565# Teclast 566######################################### 567# Teclast F5 568sensor:modalias:acpi:KIOX010A*:dmi:*:svnTECLAST:pnF5:* 569 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 570 571# Teclast F6 Pro (2 sensors) 572sensor:modalias:acpi:KIOX010A*:dmi:*:svnTECLAST:pnF6Pro:* 573 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, -1 574 ACCEL_LOCATION=display 575 576sensor:modalias:acpi:KIOX020A*:dmi:*:svnTECLAST:pnF6Pro:* 577 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 578 ACCEL_LOCATION=base 579 580# Teclast X80 Plus (H5C5) 581sensor:modalias:acpi:KIOX000A*:dmi:*:svnTECLAST:pnDefaultstring:* 582 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 583 584# Teclast X80 Pro (E3E6) 585sensor:modalias:acpi:KIOX000A*:dmi:*:svnTECLAST:pnX80Pro:* 586 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 587 588# Teclast X89 (E7ED), "tPAD" is too generic also match on BIOS date 589sensor:modalias:acpi:SMO8500*:dmi:*bd12/19/2014:*:rvnTECLAST:rntPAD:* 590 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1 591 592# Teclast X98 Plus I (A5C6), generic DMI strings, match entire dmi modalias inc. bios-date 593sensor: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.: 594 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 595 596# Teclast X98 Plus II 597sensor:modalias:acpi:KIOX000A*:dmi:*:svnTECLAST:pnX98PlusII:* 598 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1 599 600######################################### 601# Thundersoft 602######################################### 603 604# Thundersoft TST168 tablet, generic DMI strings, match entire dmi modalias inc. bios-date 605sensor: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.: 606 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1 607 608######################################### 609# Trekstor 610######################################### 611sensor:modalias:acpi:BMA250*:dmi:*:bvrTREK.G.WI71C.JGBMRBA*:*:svnInsyde:pnST70416-6:* 612sensor:modalias:acpi:BMA250*:dmi:*:bvrTREK.G.WI71C.JGBMRBA*:*:svnTrekStor:pnSurfTabwintron7.0ST70416-6:* 613 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 614 615sensor:modalias:acpi:KIOX000A*:dmi:*:svnTREKSTOR*:pnPrimetabS11B:* 616sensor:modalias:acpi:KIOX000A*:dmi:*:svnTREKSTOR:pnPrimetabT13B:* 617sensor:modalias:acpi:BOSC0200*:dmi:*:svnTrekStor*:pnSurfTabtwin11.6:* 618 ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1 619 620sensor:modalias:acpi:KIOX010A*:dmi:*:svnTREKSTOR:pnPrimebookC11B:* 621sensor:modalias:acpi:KIOX010A*:dmi:*:svnTREKSTOR:pnPRIMEBOOKC11B:* 622 ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, -1 623 ACCEL_LOCATION=display 624 625sensor:modalias:acpi:KIOX020A*:dmi:*:svnTREKSTOR:pnPrimebookC11B:* 626sensor:modalias:acpi:KIOX020A*:dmi:*:svnTREKSTOR:pnPRIMEBOOKC11B:* 627 ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1 628 ACCEL_LOCATION=base 629 630######################################### 631# Umax 632######################################### 633sensor:modalias:acpi:SMO8500*:dmi:*:svnUMAX:pnVisionBook10WiPlus:* 634 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 635 636######################################### 637# Wortmann 638######################################### 639sensor:modalias:acpi:KIOX000A*:dmi:*:svnWortmann_AG:pnTERRA_PAD_1061:* 640 ACCEL_MOUNT_MATRIX=0, -1, 0; 1, 0, 0; 0, 0, -1 641 642######################################### 643# Yours 644######################################### 645sensor:modalias:acpi:BMA250E*:dmi:*:svnYOURS:pnY8W81:* 646 ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1 647