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