nvidia: rog_turing: enable support for more cards
They reportedly use the same controller and protocol as the already
supported 1070 (OC) and 2080 Ti OC.[^1]
But, for the time being, list them with the "experimental" tag.
[^1]: d8f28b546d/Controllers/AsusAuraGPUController/AsusAuraGPUControllerDetect.cpp (L37-76)
This commit is contained in:
parent
d9bbcfe48d
commit
e9273093db
12
README.md
12
README.md
|
@ -109,7 +109,7 @@ The notes are sorted alphabetically, major (upper case) notes before minor
|
|||
-->
|
||||
|
||||
| Type | Device family and specific documentation | Bus | Notes |
|
||||
| :-: | :-- | :-: | :-- |
|
||||
| :-- | :-- | :-: | --: |
|
||||
| AIO liquid cooler | [Corsair Hydro GT/GTX H80i, H100i, H110i](docs/asetek-690lc-guide.md) | USB | <sup>_Ze_</sup> |
|
||||
| AIO liquid cooler | [Corsair Hydro v2 H80i, H100i, H115i](docs/asetek-690lc-guide.md) | USB | <sup>_Z_</sup> |
|
||||
| AIO liquid cooler | [Corsair Hydro Pro H100i, H115i, H150i](docs/asetek-pro-guide.md) | USB | <sup>_Z_</sup> |
|
||||
|
@ -134,11 +134,11 @@ The notes are sorted alphabetically, major (upper case) notes before minor
|
|||
| Fan/LED controller | [NZXT RGB & Fan Controller](docs/nzxt-hue2-guide.md) | USB HID | <sup>_h_</sup> |
|
||||
| Fan/LED controller | [NZXT Smart Device](docs/nzxt-smart-device-v1-guide.md) | USB HID | <sup>_h_</sup> |
|
||||
| Fan/LED controller | [NZXT Smart Device V2](docs/nzxt-hue2-guide.md) | USB HID | <sup>_h_</sup> |
|
||||
| Graphics card | [ASUS Strix GTX 1070](docs/nvidia-guide.md) | I²C | <sup>_Ux_</sup> |
|
||||
| Graphics card | [ASUS Strix RTX 2080 Ti OC](docs/nvidia-guide.md) | I²C | <sup>_Ux_</sup> |
|
||||
| Graphics card | [EVGA GTX 1070 FTW, FTW DT Gaming, FTW Hybrid](docs/nvidia-guide.md) | I²C | <sup>_Uenx_</sup> |
|
||||
| Graphics card | [EVGA GTX 1070 Ti FTW2](docs/nvidia-guide.md) | I²C | <sup>_Uenx_</sup> |
|
||||
| Graphics card | [EVGA GTX 1080 FTW](docs/nvidia-guide.md) | I²C | <sup>_Ux_</sup> |
|
||||
| Graphics card RGB | [ASUS Strix GTX 1070 OC](docs/nvidia-guide.md) | I²C | <sup>_Ux_</sup> |
|
||||
| Graphics card RGB | [ASUS Strix RTX 2080 Ti OC](docs/nvidia-guide.md) | I²C | <sup>_Ux_</sup> |
|
||||
| Graphics card RGB | [More Strix GTX and RTX cards](docs/nvidia-guide.md) | I²C | <sup>_Uenx_</sup> |
|
||||
| Graphics card RGB | [EVGA GTX 1080 FTW](docs/nvidia-guide.md) | I²C | <sup>_Ux_</sup> |
|
||||
| Graphics card RGB | [More EVGA GTX 1070 and 1070 Ti cards](docs/nvidia-guide.md) | I²C | <sup>_Uenx_</sup> |
|
||||
| Motherboard | [Gigabyte RGB Fusion 2.0 motherboards](docs/gigabyte-rgb-fusion2-guide.md) | USB HID | |
|
||||
| Power supply | [Corsair HX750i, HX850i, HX1000i, HX1200i](docs/corsair-hxi-rmi-psu-guide.md) | USB HID | <sup>_h_</sup> |
|
||||
| Power supply | [Corsair RM650i, RM750i, RM850i, RM1000i](docs/corsair-hxi-rmi-psu-guide.md) | USB HID | <sup>_h_</sup> |
|
||||
|
|
|
@ -8,17 +8,51 @@ also be met:
|
|||
- r/w permissions to card-specific `/dev/i2c-*` devices
|
||||
- specific unsafe features have been opted in
|
||||
|
||||
Jump to a specific section:
|
||||
Jump to the appropriate section for a supported card:
|
||||
|
||||
* _Series 10/Pascal:_
|
||||
- [ASUS Strix GTX 1070][asus-gtx-rtx]
|
||||
- [EVGA GTX 1070 FTW DT Gaming][evga-gp104]
|
||||
- [EVGA GTX 1070 FTW Hybrid][evga-gp104]
|
||||
- [EVGA GTX 1070 FTW][evga-gp104]
|
||||
- [EVGA GTX 1070 Ti FTW2][evga-gp104]
|
||||
- [ASUS Strix GTX 1050 OC][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix GTX 1050 Ti OC][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix GTX 1060 6GB][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix GTX 1060 OC 6GB][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix GTX 1070 OC][asus-gtx-rtx]
|
||||
- [ASUS Strix GTX 1070 Ti Advanced][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix GTX 1070 Ti][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix GTX 1070][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix GTX 1080 Advanced][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix GTX 1080 OC][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix GTX 1080 Ti OC][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix GTX 1080 Ti][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix GTX 1080][asus-gtx-rtx] _(experimental)_
|
||||
- [EVGA GTX 1070 FTW DT Gaming][evga-gp104] _(experimental)_
|
||||
- [EVGA GTX 1070 FTW Hybrid][evga-gp104] _(experimental)_
|
||||
- [EVGA GTX 1070 FTW][evga-gp104] _(experimental)_
|
||||
- [EVGA GTX 1070 Ti FTW2][evga-gp104] _(experimental)_
|
||||
- [EVGA GTX 1080 FTW][evga-gp104]
|
||||
* _Series 16/Turing:_
|
||||
- [ASUS Strix GTX 1650 Super OC][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix GTX 1660 Super OC][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix GTX 1660 Ti OC][asus-gtx-rtx] _(experimental)_
|
||||
* _Series 20/Turing:_
|
||||
- [ASUS Strix RTX 2060 Evo OC][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix RTX 2060 Evo][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix RTX 2060 OC][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix RTX 2060 Super Advanced][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix RTX 2060 Super Evo Advanced][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix RTX 2060 Super OC][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix RTX 2060 Super][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix RTX 2070 Advanced][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix RTX 2070 OC][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix RTX 2070 Super Advanced][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix RTX 2070 Super OC][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix RTX 2070][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix RTX 2080 OC][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix RTX 2080 Super Advanced][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix RTX 2080 Super OC][asus-gtx-rtx] _(experimental)_
|
||||
- [ASUS Strix RTX 2080 Ti OC][asus-gtx-rtx]
|
||||
- [ASUS Strix RTX 2080 Ti][asus-gtx-rtx] _(experimental)_
|
||||
* _Series 30/Ampere:_
|
||||
- [ASUS TUF RTX 3060 Ti OC][asus-gtx-rtx] _(experimental)_
|
||||
* _[Inherent unsafeness of I²C]_
|
||||
|
||||
|
||||
|
@ -92,6 +126,7 @@ Only RGB lighting supported.
|
|||
Unsafe features:
|
||||
|
||||
- `smbus`: see [Inherent unsafeness of I²C]
|
||||
- `experimental_asus_gpu`: enable new/experimental devices
|
||||
|
||||
### Initialization
|
||||
|
||||
|
|
|
@ -43,18 +43,246 @@ KERNEL=="i2c-*", DRIVERS=="i801_smbus", TAG+="uaccess", \
|
|||
|
||||
# Section: NVIDIA graphics cards
|
||||
|
||||
# ASUS Strix GTX 1050 OC
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1c81", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x85d8", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix GTX 1050 Ti OC
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1c82", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x85cd", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix GTX 1050 Ti OC
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1c82", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x85d1", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix GTX 1060 6GB
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1c03", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x85a4", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix GTX 1060 OC 6GB
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1c03", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x85ac", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix GTX 1070
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1b81", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x8598", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix GTX 1070 OC
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1b81", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x8599", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix GTX 1070 Ti
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1b82", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x861d", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix GTX 1070 Ti Advanced
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1b82", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x861e", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix GTX 1080
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1b80", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x8592", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix GTX 1080 Advanced
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1b80", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x85aa", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix GTX 1080 OC
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1b80", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x85f9", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix GTX 1080 Ti
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1b06", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x85eb", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix GTX 1080 Ti
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1b06", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x85f1", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix GTX 1080 Ti OC
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1b06", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x85ea", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix GTX 1080 Ti OC
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1b06", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x85e4", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix GTX 1650 Super OC
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x2187", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x874f", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix GTX 1660 Super OC
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x21c4", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x8752", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix GTX 1660 Ti OC
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x2182", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x86a5", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix RTX 2060 Evo
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1f08", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x86d3", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix RTX 2060 Evo OC
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1e89", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x8775", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix RTX 2060 OC
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1f08", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x868e", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix RTX 2060 Super
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1f06", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x8730", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix RTX 2060 Super Advanced
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1f06", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x86fc", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix RTX 2060 Super Evo Advanced
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1f47", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x8703", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix RTX 2060 Super OC
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1f06", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x86fb", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix RTX 2070
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1e84", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x8707", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix RTX 2070 Advanced
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1f07", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x8671", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix RTX 2070 OC
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1f07", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x8670", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix RTX 2070 Super Advanced
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1ec7", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x86ff", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix RTX 2070 Super Advanced
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1e84", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x8728", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix RTX 2070 Super Advanced
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1e84", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x8706", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix RTX 2070 Super OC
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1e84", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x8727", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix RTX 2070 Super OC
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1e84", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x8729", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix RTX 2080 OC
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1e87", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x865f", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix RTX 2080 Super Advanced
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1e81", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x8712", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix RTX 2080 Super OC
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1e81", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x8711", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix RTX 2080 Ti
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1e04", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x8687", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS Strix RTX 2080 Ti OC
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1e07", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x866a", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# ASUS TUF RTX 3060 Ti OC
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x2489", ATTRS{subsystem_vendor}=="0x1043", \
|
||||
ATTRS{subsystem_device}=="0x87c6", DRIVERS=="nvidia", TAG+="uaccess", \
|
||||
RUN{builtin}="kmod load i2c-dev"
|
||||
|
||||
# EVGA GTX 1070 FTW
|
||||
KERNEL=="i2c-*", ATTR{name}=="NVIDIA i2c adapter 1 *", ATTRS{vendor}=="0x10de", \
|
||||
ATTRS{device}=="0x1b81", ATTRS{subsystem_vendor}=="0x3842", \
|
||||
|
|
32
liquidctl.8
32
liquidctl.8
|
@ -508,8 +508,40 @@ The animation direction can be set with
|
|||
.BI \-\-direction= value ,
|
||||
where the allowed values are: \fIforward\fR or \fIbackward\fR.
|
||||
.
|
||||
.SS ASUS Strix GTX 1050 OC
|
||||
.SS ASUS Strix GTX 1050 Ti OC
|
||||
.SS ASUS Strix GTX 1060 6GB
|
||||
.SS ASUS Strix GTX 1060 OC 6GB
|
||||
.SS ASUS Strix GTX 1070
|
||||
.SS ASUS Strix GTX 1070 OC
|
||||
.SS ASUS Strix GTX 1070 Ti
|
||||
.SS ASUS Strix GTX 1070 Ti Advanced
|
||||
.SS ASUS Strix GTX 1080
|
||||
.SS ASUS Strix GTX 1080 Advanced
|
||||
.SS ASUS Strix GTX 1080 OC
|
||||
.SS ASUS Strix GTX 1080 Ti
|
||||
.SS ASUS Strix GTX 1080 Ti OC
|
||||
.SS ASUS Strix GTX 1650 Super OC
|
||||
.SS ASUS Strix GTX 1660 Super OC
|
||||
.SS ASUS Strix GTX 1660 Ti OC
|
||||
.SS ASUS Strix RTX 2060 Evo
|
||||
.SS ASUS Strix RTX 2060 Evo OC
|
||||
.SS ASUS Strix RTX 2060 OC
|
||||
.SS ASUS Strix RTX 2060 Super
|
||||
.SS ASUS Strix RTX 2060 Super Advanced
|
||||
.SS ASUS Strix RTX 2060 Super Evo Advanced
|
||||
.SS ASUS Strix RTX 2060 Super OC
|
||||
.SS ASUS Strix RTX 2070
|
||||
.SS ASUS Strix RTX 2070 Advanced
|
||||
.SS ASUS Strix RTX 2070 OC
|
||||
.SS ASUS Strix RTX 2070 Super Advanced
|
||||
.SS ASUS Strix RTX 2070 Super OC
|
||||
.SS ASUS Strix RTX 2080 OC
|
||||
.SS ASUS Strix RTX 2080 Super Advanced
|
||||
.SS ASUS Strix RTX 2080 Super OC
|
||||
.SS ASUS Strix RTX 2080 Ti
|
||||
.SS ASUS Strix RTX 2080 Ti OC
|
||||
.SS ASUS TUF RTX 3060 Ti OC
|
||||
Fan channels: none.
|
||||
.PP
|
||||
Lighting channels: \fIled\fR.
|
||||
|
|
|
@ -13,21 +13,97 @@ from liquidctl.util import RelaxedNamesEnum, check_unsafe
|
|||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
# sources for pci device and subsystem device ids:
|
||||
# - https://www.nv-drivers.eu/nvidia-all-devices.html
|
||||
# - https://pci-ids.ucw.cz/pci.ids
|
||||
# - https://gitlab.com/CalcProgrammer1/OpenRGB/-/blob/master/pci_ids/pci_ids.h
|
||||
|
||||
# vendor, devices
|
||||
# FWUPD_GUID = [vendor]:[device] - use hwinfo to inspect
|
||||
NVIDIA = 0x10de
|
||||
NVIDIA_GTX_1050 = 0x1c81
|
||||
NVIDIA_GTX_1050_TI = 0x1c82
|
||||
NVIDIA_GTX_1060 = 0x1c03
|
||||
NVIDIA_GTX_1070 = 0x1b81
|
||||
NVIDIA_GTX_1070_TI = 0x1b82
|
||||
NVIDIA_GTX_1080 = 0x1b80
|
||||
NVIDIA_GTX_1080_TI = 0x1b06
|
||||
NVIDIA_GTX_1650 = 0x1f82
|
||||
NVIDIA_GTX_1650S = 0x2187
|
||||
NVIDIA_GTX_1660 = 0x2184
|
||||
NVIDIA_GTX_1660S = 0x21c4
|
||||
NVIDIA_GTX_1660_TI = 0x2182
|
||||
NVIDIA_RTX_2060S = 0x1f47
|
||||
NVIDIA_RTX_2060S_OC = 0x1f06
|
||||
NVIDIA_RTX_2060_TU104 = 0x1e89
|
||||
NVIDIA_RTX_2060_TU106 = 0x1f08
|
||||
NVIDIA_RTX_2070 = 0x1f02
|
||||
NVIDIA_RTX_2070S = 0x1ec7
|
||||
NVIDIA_RTX_2070S_OC = 0x1e84
|
||||
NVIDIA_RTX_2070_OC = 0x1f07
|
||||
NVIDIA_RTX_2080 = 0x1e82
|
||||
NVIDIA_RTX_2080S = 0x1e81
|
||||
NVIDIA_RTX_2080_REV_A = 0x1e87
|
||||
NVIDIA_RTX_2080_TI = 0x1e04
|
||||
NVIDIA_RTX_2080_TI_REV_A = 0x1e07
|
||||
# https://www.nv-drivers.eu/nvidia-all-devices.html
|
||||
# https://pci-ids.ucw.cz/pci.ids
|
||||
NVIDIA_RTX_3050 = 0x2507
|
||||
NVIDIA_RTX_3060 = 0x2503
|
||||
NVIDIA_RTX_3060_GA104 = 0x2487
|
||||
NVIDIA_RTX_3060_LHR = 0x2504
|
||||
NVIDIA_RTX_3060_TI = 0x2486
|
||||
NVIDIA_RTX_3060_TI_LHR = 0x2489
|
||||
NVIDIA_RTX_3070 = 0x2484
|
||||
NVIDIA_RTX_3070_LHR = 0x2488
|
||||
NVIDIA_RTX_3070_TI = 0x2482
|
||||
NVIDIA_RTX_3080 = 0x2206
|
||||
NVIDIA_RTX_3080_12G_LHR = 0x220a
|
||||
NVIDIA_RTX_3080_LHR = 0x2216
|
||||
NVIDIA_RTX_3080_TI = 0x2208
|
||||
NVIDIA_RTX_3090 = 0x2204
|
||||
|
||||
# subsystem vendor ASUS, subsystem devices
|
||||
# PCI_SUBSYS_ID = [subsystem vendor]:[subsystem device] - use hwinfo to inspect
|
||||
ASUS = 0x1043
|
||||
ASUS_STRIX_GTX_1070 = 0x8599
|
||||
ASUS_STRIX_GTX_1050_O2G = 0x85d8
|
||||
ASUS_STRIX_GTX_1050_TI_O4G = 0x85cd
|
||||
ASUS_STRIX_GTX_1050_TI_O4G_2 = 0x85d1
|
||||
ASUS_STRIX_GTX_1060_6G = 0x85a4
|
||||
ASUS_STRIX_GTX_1060_O6G = 0x85ac
|
||||
ASUS_STRIX_GTX_1070 = 0x8598
|
||||
ASUS_STRIX_GTX_1070_OC = 0x8599
|
||||
ASUS_STRIX_GTX_1070_TI_8G = 0x861d
|
||||
ASUS_STRIX_GTX_1070_TI_A8G = 0x861e
|
||||
ASUS_STRIX_GTX_1080 = 0x8592
|
||||
ASUS_STRIX_GTX_1080_A8G = 0x85aa
|
||||
ASUS_STRIX_GTX_1080_O8G = 0x85f9
|
||||
ASUS_STRIX_GTX_1080_TI = 0x85eb
|
||||
ASUS_STRIX_GTX_1080_TI_11G = 0x85f1
|
||||
ASUS_STRIX_GTX_1080_TI_O11G = 0x85ea
|
||||
ASUS_STRIX_GTX_1080_TI_O11G_A02 = 0x85e4
|
||||
ASUS_STRIX_GTX_1650S_OC = 0x874f
|
||||
ASUS_STRIX_GTX_1660S_O6G = 0x8752
|
||||
ASUS_STRIX_GTX_1660_TI_OC = 0x86a5
|
||||
ASUS_STRIX_RTX_2060S_8G = 0x8730
|
||||
ASUS_STRIX_RTX_2060S_A8G = 0x86fc
|
||||
ASUS_STRIX_RTX_2060S_A8G_EVO = 0x8703
|
||||
ASUS_STRIX_RTX_2060S_O8G = 0x86fb
|
||||
ASUS_STRIX_RTX_2060_EVO = 0x86d3
|
||||
ASUS_STRIX_RTX_2060_O6G = 0x868e
|
||||
ASUS_STRIX_RTX_2060_O6G_EVO = 0x8775
|
||||
ASUS_STRIX_RTX_2070S_8G_8707 = 0x8707
|
||||
ASUS_STRIX_RTX_2070S_A8G = 0x8728
|
||||
ASUS_STRIX_RTX_2070S_A8G_86FF = 0x86ff
|
||||
ASUS_STRIX_RTX_2070S_A8G_8706 = 0x8706
|
||||
ASUS_STRIX_RTX_2070S_O8G = 0x8727
|
||||
ASUS_STRIX_RTX_2070S_O8G_8729 = 0x8729
|
||||
ASUS_STRIX_RTX_2070_A8G = 0x8671
|
||||
ASUS_STRIX_RTX_2070_O8G = 0x8670
|
||||
ASUS_STRIX_RTX_2080S_A8G = 0x8712
|
||||
ASUS_STRIX_RTX_2080S_O8G = 0x8711
|
||||
ASUS_STRIX_RTX_2080_O8G = 0x865f
|
||||
ASUS_STRIX_RTX_2080_TI_11G = 0x8687
|
||||
ASUS_STRIX_RTX_2080_TI_OC = 0x866a
|
||||
ASUS_TUF_RTX_3060_TI_O8G_OC = 0x87c6
|
||||
|
||||
# subsystem vendor EVGA, subsystem devices
|
||||
# PCI_SUBSYS_ID = [subsystem vendor]:[subsystem device] - use hwinfo to inspect
|
||||
|
@ -242,10 +318,57 @@ class RogTuring(SmbusDriver, _NvidiaI2CDriver):
|
|||
_VENDOR = ASUS
|
||||
_ADDRESSES = [0x29, 0x2a, 0x60]
|
||||
_MATCHES = [
|
||||
(NVIDIA_GTX_1070, ASUS_STRIX_GTX_1070,
|
||||
'ASUS Strix GTX 1070'),
|
||||
(NVIDIA_RTX_2080_TI_REV_A, ASUS_STRIX_RTX_2080_TI_OC,
|
||||
'ASUS Strix RTX 2080 Ti OC'),
|
||||
# description normalization rules:
|
||||
# - remove redundant ROG and meaningless GAMING;
|
||||
# - remove redundancies within a particular GPU core;
|
||||
# - keep OC when appropriate;
|
||||
# - uppercase ASUS and TUF, titlecase Evo, Ti and Stix;
|
||||
# - enforce ASUS Strix|TUF GTX|RTX <number> [Super] [Ti] [Evo] [OC] [...] order;
|
||||
# - use consistent memory sizes: 2GB, 4GB, 6GB, 8GB (but omit when redundant).
|
||||
|
||||
# stable
|
||||
(NVIDIA_GTX_1070, ASUS_STRIX_GTX_1070_OC, 'ASUS Strix GTX 1070 OC'),
|
||||
(NVIDIA_RTX_2080_TI_REV_A, ASUS_STRIX_RTX_2080_TI_OC, 'ASUS Strix RTX 2080 Ti OC'),
|
||||
|
||||
# experimental
|
||||
(NVIDIA_GTX_1050, ASUS_STRIX_GTX_1050_O2G, 'ASUS Strix GTX 1050 OC (experimental)'),
|
||||
(NVIDIA_GTX_1050_TI, ASUS_STRIX_GTX_1050_TI_O4G, 'ASUS Strix GTX 1050 Ti OC (experimental)'),
|
||||
(NVIDIA_GTX_1050_TI, ASUS_STRIX_GTX_1050_TI_O4G_2, 'ASUS Strix GTX 1050 Ti OC (experimental)'),
|
||||
(NVIDIA_GTX_1060, ASUS_STRIX_GTX_1060_6G, 'ASUS Strix GTX 1060 6GB (experimental)'),
|
||||
(NVIDIA_GTX_1060, ASUS_STRIX_GTX_1060_O6G, 'ASUS Strix GTX 1060 OC 6GB (experimental)'),
|
||||
(NVIDIA_GTX_1070, ASUS_STRIX_GTX_1070, 'ASUS Strix GTX 1070 (experimental)'),
|
||||
(NVIDIA_GTX_1070_TI, ASUS_STRIX_GTX_1070_TI_8G, 'ASUS Strix GTX 1070 Ti (experimental)'),
|
||||
(NVIDIA_GTX_1070_TI, ASUS_STRIX_GTX_1070_TI_A8G, 'ASUS Strix GTX 1070 Ti Advanced (experimental)'),
|
||||
(NVIDIA_GTX_1080, ASUS_STRIX_GTX_1080, 'ASUS Strix GTX 1080 (experimental)'),
|
||||
(NVIDIA_GTX_1080, ASUS_STRIX_GTX_1080_A8G, 'ASUS Strix GTX 1080 Advanced (experimental)'),
|
||||
(NVIDIA_GTX_1080, ASUS_STRIX_GTX_1080_O8G, 'ASUS Strix GTX 1080 OC (experimental)'),
|
||||
(NVIDIA_GTX_1080_TI, ASUS_STRIX_GTX_1080_TI, 'ASUS Strix GTX 1080 Ti (experimental)'),
|
||||
(NVIDIA_GTX_1080_TI, ASUS_STRIX_GTX_1080_TI_11G, 'ASUS Strix GTX 1080 Ti (experimental)'),
|
||||
(NVIDIA_GTX_1080_TI, ASUS_STRIX_GTX_1080_TI_O11G, 'ASUS Strix GTX 1080 Ti OC (experimental)'),
|
||||
(NVIDIA_GTX_1080_TI, ASUS_STRIX_GTX_1080_TI_O11G_A02, 'ASUS Strix GTX 1080 Ti OC (experimental)'),
|
||||
(NVIDIA_GTX_1650S, ASUS_STRIX_GTX_1650S_OC, 'ASUS Strix GTX 1650 Super OC (experimental)'),
|
||||
(NVIDIA_GTX_1660S, ASUS_STRIX_GTX_1660S_O6G, 'ASUS Strix GTX 1660 Super OC (experimental)'),
|
||||
(NVIDIA_GTX_1660_TI, ASUS_STRIX_GTX_1660_TI_OC, 'ASUS Strix GTX 1660 Ti OC (experimental)'),
|
||||
(NVIDIA_RTX_2060S, ASUS_STRIX_RTX_2060S_A8G_EVO, 'ASUS Strix RTX 2060 Super Evo Advanced (experimental)'),
|
||||
(NVIDIA_RTX_2060S_OC, ASUS_STRIX_RTX_2060S_8G, 'ASUS Strix RTX 2060 Super (experimental)'),
|
||||
(NVIDIA_RTX_2060S_OC, ASUS_STRIX_RTX_2060S_A8G, 'ASUS Strix RTX 2060 Super Advanced (experimental)'),
|
||||
(NVIDIA_RTX_2060S_OC, ASUS_STRIX_RTX_2060S_O8G, 'ASUS Strix RTX 2060 Super OC (experimental)'),
|
||||
(NVIDIA_RTX_2060_TU104, ASUS_STRIX_RTX_2060_O6G_EVO, 'ASUS Strix RTX 2060 Evo OC (experimental)'),
|
||||
(NVIDIA_RTX_2060_TU106, ASUS_STRIX_RTX_2060_EVO, 'ASUS Strix RTX 2060 Evo (experimental)'),
|
||||
(NVIDIA_RTX_2060_TU106, ASUS_STRIX_RTX_2060_O6G, 'ASUS Strix RTX 2060 OC (experimental)'),
|
||||
(NVIDIA_RTX_2070S, ASUS_STRIX_RTX_2070S_A8G_86FF, 'ASUS Strix RTX 2070 Super Advanced (experimental)'),
|
||||
(NVIDIA_RTX_2070S_OC, ASUS_STRIX_RTX_2070S_8G_8707, 'ASUS Strix RTX 2070 (experimental)'),
|
||||
(NVIDIA_RTX_2070S_OC, ASUS_STRIX_RTX_2070S_A8G, 'ASUS Strix RTX 2070 Super Advanced (experimental)'),
|
||||
(NVIDIA_RTX_2070S_OC, ASUS_STRIX_RTX_2070S_A8G_8706, 'ASUS Strix RTX 2070 Super Advanced (experimental)'),
|
||||
(NVIDIA_RTX_2070S_OC, ASUS_STRIX_RTX_2070S_O8G, 'ASUS Strix RTX 2070 Super OC (experimental)'),
|
||||
(NVIDIA_RTX_2070S_OC, ASUS_STRIX_RTX_2070S_O8G_8729, 'ASUS Strix RTX 2070 Super OC (experimental)'),
|
||||
(NVIDIA_RTX_2070_OC, ASUS_STRIX_RTX_2070_A8G, 'ASUS Strix RTX 2070 Advanced (experimental)'),
|
||||
(NVIDIA_RTX_2070_OC, ASUS_STRIX_RTX_2070_O8G, 'ASUS Strix RTX 2070 OC (experimental)'),
|
||||
(NVIDIA_RTX_2080S, ASUS_STRIX_RTX_2080S_A8G, 'ASUS Strix RTX 2080 Super Advanced (experimental)'),
|
||||
(NVIDIA_RTX_2080S, ASUS_STRIX_RTX_2080S_O8G, 'ASUS Strix RTX 2080 Super OC (experimental)'),
|
||||
(NVIDIA_RTX_2080_REV_A, ASUS_STRIX_RTX_2080_O8G, 'ASUS Strix RTX 2080 OC (experimental)'),
|
||||
(NVIDIA_RTX_2080_TI, ASUS_STRIX_RTX_2080_TI_11G, 'ASUS Strix RTX 2080 Ti (experimental)'),
|
||||
(NVIDIA_RTX_3060_TI_LHR, ASUS_TUF_RTX_3060_TI_O8G_OC, 'ASUS TUF RTX 3060 Ti OC (experimental)'),
|
||||
]
|
||||
|
||||
_SENTINEL_ADDRESS = 0xffff # intentionally invalid
|
||||
|
@ -298,6 +421,13 @@ class RogTuring(SmbusDriver, _NvidiaI2CDriver):
|
|||
cls.__name__, desc, selected_address)
|
||||
yield dev
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super().__init__(*args, **kwargs)
|
||||
if 'experimental' in self.description:
|
||||
self._UNSAFE = ['smbus', 'experimental_asus_gpu']
|
||||
else:
|
||||
self._UNSAFE = ['smbus']
|
||||
|
||||
def get_status(self, verbose=False, **kwargs):
|
||||
"""Get a status report.
|
||||
|
||||
|
@ -310,9 +440,9 @@ class RogTuring(SmbusDriver, _NvidiaI2CDriver):
|
|||
if not verbose:
|
||||
return []
|
||||
|
||||
if not check_unsafe('smbus', **kwargs):
|
||||
_LOGGER.warning("%s: nothing returned, requires unsafe feature 'smbus'",
|
||||
self.description)
|
||||
if not check_unsafe(*self._UNSAFE, **kwargs):
|
||||
_LOGGER.warning("%s: nothing returned, requires unsafe features '%s'",
|
||||
self.description, ','.join(self._UNSAFE))
|
||||
return []
|
||||
|
||||
assert self._address != self._SENTINEL_ADDRESS, \
|
||||
|
@ -360,7 +490,7 @@ class RogTuring(SmbusDriver, _NvidiaI2CDriver):
|
|||
|
||||
"""
|
||||
|
||||
check_unsafe('smbus', error=True, **kwargs)
|
||||
check_unsafe(*self._UNSAFE, error=True, **kwargs)
|
||||
|
||||
assert self._address != self._SENTINEL_ADDRESS, \
|
||||
'invalid address (probing may not have had access to SMbus)'
|
||||
|
|
|
@ -394,3 +394,39 @@ def test_rog_turing_sets_non_volatile_color(strix_2080ti_oc_bus):
|
|||
with card.connect(unsafe=enable):
|
||||
card.set_color('led', 'off', [], non_volatile=True, unsafe=enable)
|
||||
assert strix_2080ti_oc_bus.read_byte_data(0x2a, 0x0e) == 0x01
|
||||
|
||||
|
||||
def test_rog_turing_experimental_devices_are_unsafe():
|
||||
for dev_id, sub_dev_id, desc in RogTuring._MATCHES:
|
||||
if 'experimental' not in desc:
|
||||
continue
|
||||
|
||||
vbus = VirtualSmbus(
|
||||
description='NVIDIA i2c adapter 1 at 1:00.0',
|
||||
parent_vendor=NVIDIA,
|
||||
parent_device=dev_id,
|
||||
parent_subsystem_vendor=ASUS,
|
||||
parent_subsystem_device=sub_dev_id,
|
||||
parent_driver='nvidia',
|
||||
)
|
||||
|
||||
card = next(RogTuring.probe(vbus))
|
||||
|
||||
enable = ['smbus', 'experimental_asus_gpu']
|
||||
insufficient = ['smbus']
|
||||
|
||||
# not usable if connected without specific experimental feature
|
||||
with card.connect(unsafe=insufficient):
|
||||
with pytest.raises(AssertionError):
|
||||
card.get_status(verbose=True, unsafe=enable)
|
||||
|
||||
with pytest.raises(AssertionError):
|
||||
card.set_color('led', 'off', [], unsafe=enable)
|
||||
|
||||
# once connected, still cannot read status or set color without
|
||||
# specific experimental feature
|
||||
with card.connect(unsafe=enable):
|
||||
assert card.get_status(verbose=True, unsafe=insufficient) == []
|
||||
|
||||
with pytest.raises(UnsafeFeaturesNotEnabled):
|
||||
card.set_color('led', 'off', [], unsafe=insufficient)
|
||||
|
|
Loading…
Reference in New Issue