xref: /linux/Documentation/hwmon/gpd-fan.rst (revision be1ca3ee8f97067fee87fda73ea5959d5ab75bbf)
1.. SPDX-License-Identifier: GPL-2.0-or-later
2
3Kernel driver gpd-fan
4=========================
5
6Author:
7    - Cryolitia PukNgae <cryolitia@uniontech.com>
8
9Description
10------------
11
12Handheld devices from Shenzhen GPD Technology Co., Ltd. provide fan readings
13and fan control through their embedded controllers.
14
15Supported devices
16-----------------
17
18Currently the driver supports the following handhelds:
19
20 - GPD Win Mini (7840U)
21 - GPD Win Mini (8840U)
22 - GPD Win Mini (HX370)
23 - GPD Pocket 4
24 - GPD Duo
25 - GPD Win Max 2 (6800U)
26 - GPD Win Max 2 2023 (7840U)
27 - GPD Win Max 2 2024 (8840U)
28 - GPD Win Max 2 2025 (HX370)
29 - GPD Win 4 (6800U)
30 - GPD Win 4 (7840U)
31 - GPD Micro PC 2
32
33Module parameters
34-----------------
35
36gpd_fan_board
37  Force specific which module quirk should be used.
38  Use it like "gpd_fan_board=wm2".
39
40   - wm2
41       - GPD Win 4 (7840U)
42       - GPD Win Max 2 (6800U)
43       - GPD Win Max 2 2023 (7840U)
44       - GPD Win Max 2 2024 (8840U)
45       - GPD Win Max 2 2025 (HX370)
46   - win4
47       - GPD Win 4 (6800U)
48   - win_mini
49       - GPD Win Mini (7840U)
50       - GPD Win Mini (8840U)
51       - GPD Win Mini (HX370)
52       - GPD Pocket 4
53       - GPD Duo
54   - mpc2
55       - GPD Micro PC 2
56
57Sysfs entries
58-------------
59
60The following attributes are supported:
61
62fan1_input
63  Read Only. Reads current fan RPM.
64
65pwm1_enable
66  Read/Write. Enable manual fan control. Write "0" to disable control and run
67  at full speed. Write "1" to set to manual, write "2" to let the EC control
68  decide fan speed. Read this attribute to see current status.
69
70  NB:In consideration of the safety of the device, when setting to manual mode,
71  the pwm speed will be set to the maximum value (255) by default. You can set
72  a different value by writing pwm1 later.
73
74pwm1
75  Read/Write. Read this attribute to see current duty cycle in the range
76  [0-255]. When pwm1_enable is set to "1" (manual) write any value in the
77  range [0-255] to set fan speed.
78
79  NB: Many boards (except listed under wm2 above) don't support reading the
80  current pwm value in auto mode. That will just return EOPNOTSUPP. In manual
81  mode it will always return the real value.
82