Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   1) Kernel driver amc6821
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   2) =====================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   3) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   4) Supported chips:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   5) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   6) 	Texas Instruments AMC6821
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   7) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   8) 	Prefix: 'amc6821'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   9) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  10) 	Addresses scanned: 0x18, 0x19, 0x1a, 0x2c, 0x2d, 0x2e, 0x4c, 0x4d, 0x4e
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  11) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  12) 	Datasheet: http://focus.ti.com/docs/prod/folders/print/amc6821.html
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  13) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  14) Authors:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  15) 	Tomaz Mertelj <tomaz.mertelj@guest.arnes.si>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  16) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  17) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  18) Description
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  19) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  20) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  21) This driver implements support for the Texas Instruments amc6821 chip.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  22) The chip has one on-chip and one remote temperature sensor and one pwm fan
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  23) regulator.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  24) The pwm can be controlled either from software or automatically.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  25) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  26) The driver provides the following sensor accesses in sysfs:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  27) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  28) ======================= ==      ===============================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  29) temp1_input		ro	on-chip temperature
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  30) temp1_min		rw	"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  31) temp1_max		rw	"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  32) temp1_crit		rw	"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  33) temp1_min_alarm		ro	"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  34) temp1_max_alarm		ro	"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  35) temp1_crit_alarm	ro	"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  36) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  37) temp2_input		ro	remote temperature
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  38) temp2_min		rw	"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  39) temp2_max		rw	"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  40) temp2_crit		rw	"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  41) temp2_min_alarm		ro	"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  42) temp2_max_alarm		ro	"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  43) temp2_crit_alarm	ro	"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  44) temp2_fault		ro	"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  45) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  46) fan1_input		ro	tachometer speed
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  47) fan1_min		rw	"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  48) fan1_max		rw	"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  49) fan1_fault		ro	"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  50) fan1_div		rw	Fan divisor can be either 2 or 4.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  51) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  52) pwm1			rw	pwm1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  53) pwm1_enable		rw	regulator mode, 1=open loop, 2=fan controlled
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  54) 				by remote temperature, 3=fan controlled by
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  55) 				combination of the on-chip temperature and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  56) 				remote-sensor temperature,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  57) pwm1_auto_channels_temp ro	1 if pwm_enable==2, 3 if pwm_enable==3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  58) pwm1_auto_point1_pwm	ro	Hardwired to 0, shared for both
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  59) 				temperature channels.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  60) pwm1_auto_point2_pwm	rw	This value is shared for both temperature
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  61) 				channels.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  62) pwm1_auto_point3_pwm	rw	Hardwired to 255, shared for both
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  63) 				temperature channels.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  64) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  65) temp1_auto_point1_temp	ro	Hardwired to temp2_auto_point1_temp
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  66) 				which is rw. Below this temperature fan stops.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  67) temp1_auto_point2_temp	rw	The low-temperature limit of the proportional
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  68) 				range. Below this temperature
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  69) 				pwm1 = pwm1_auto_point2_pwm. It can go from
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  70) 				0 degree C to 124 degree C in steps of
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  71) 				4 degree C. Read it out after writing to get
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  72) 				the actual value.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  73) temp1_auto_point3_temp	rw	Above this temperature fan runs at maximum
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  74) 				speed. It can go from temp1_auto_point2_temp.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  75) 				It can only have certain discrete values
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  76) 				which depend on temp1_auto_point2_temp and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  77) 				pwm1_auto_point2_pwm. Read it out after
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  78) 				writing to get the actual value.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  79) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  80) temp2_auto_point1_temp	rw	Must be between 0 degree C and 63 degree C and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  81) 				it defines the passive cooling temperature.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  82) 				Below this temperature the fan stops in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  83) 				the closed loop mode.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  84) temp2_auto_point2_temp	rw	The low-temperature limit of the proportional
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  85) 				range. Below this temperature
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  86) 				pwm1 = pwm1_auto_point2_pwm. It can go from
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  87) 				0 degree C to 124 degree C in steps
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  88) 				of 4 degree C.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  89) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  90) temp2_auto_point3_temp	rw	Above this temperature fan runs at maximum
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  91) 				speed. It can only have certain discrete
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  92) 				values which depend on temp2_auto_point2_temp
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  93) 				and pwm1_auto_point2_pwm. Read it out after
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  94) 				writing to get actual value.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  95) ======================= ==      ===============================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  96) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  97) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  98) Module parameters
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  99) -----------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) If your board has a BIOS that initializes the amc6821 correctly, you should
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) load the module with: init=0.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) If your board BIOS doesn't initialize the chip, or you want
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) different settings, you can set the following parameters:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) - init=1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) - pwminv: 0 default pwm output, 1 inverts pwm output.