1*7ebd8b66SMauro Carvalho ChehabKernel driver amc6821 2*7ebd8b66SMauro Carvalho Chehab===================== 3*7ebd8b66SMauro Carvalho Chehab 4*7ebd8b66SMauro Carvalho ChehabSupported chips: 5*7ebd8b66SMauro Carvalho Chehab 6*7ebd8b66SMauro Carvalho Chehab Texas Instruments AMC6821 7*7ebd8b66SMauro Carvalho Chehab 8*7ebd8b66SMauro Carvalho Chehab Prefix: 'amc6821' 9*7ebd8b66SMauro Carvalho Chehab 10*7ebd8b66SMauro Carvalho Chehab Addresses scanned: 0x18, 0x19, 0x1a, 0x2c, 0x2d, 0x2e, 0x4c, 0x4d, 0x4e 11*7ebd8b66SMauro Carvalho Chehab 12*7ebd8b66SMauro Carvalho Chehab Datasheet: http://focus.ti.com/docs/prod/folders/print/amc6821.html 13*7ebd8b66SMauro Carvalho Chehab 14*7ebd8b66SMauro Carvalho ChehabAuthors: 15*7ebd8b66SMauro Carvalho Chehab Tomaz Mertelj <tomaz.mertelj@guest.arnes.si> 16*7ebd8b66SMauro Carvalho Chehab 17*7ebd8b66SMauro Carvalho Chehab 18*7ebd8b66SMauro Carvalho ChehabDescription 19*7ebd8b66SMauro Carvalho Chehab----------- 20*7ebd8b66SMauro Carvalho Chehab 21*7ebd8b66SMauro Carvalho ChehabThis driver implements support for the Texas Instruments amc6821 chip. 22*7ebd8b66SMauro Carvalho ChehabThe chip has one on-chip and one remote temperature sensor and one pwm fan 23*7ebd8b66SMauro Carvalho Chehabregulator. 24*7ebd8b66SMauro Carvalho ChehabThe pwm can be controlled either from software or automatically. 25*7ebd8b66SMauro Carvalho Chehab 26*7ebd8b66SMauro Carvalho ChehabThe driver provides the following sensor accesses in sysfs: 27*7ebd8b66SMauro Carvalho Chehab 28*7ebd8b66SMauro Carvalho Chehab======================= == =============================================== 29*7ebd8b66SMauro Carvalho Chehabtemp1_input ro on-chip temperature 30*7ebd8b66SMauro Carvalho Chehabtemp1_min rw " 31*7ebd8b66SMauro Carvalho Chehabtemp1_max rw " 32*7ebd8b66SMauro Carvalho Chehabtemp1_crit rw " 33*7ebd8b66SMauro Carvalho Chehabtemp1_min_alarm ro " 34*7ebd8b66SMauro Carvalho Chehabtemp1_max_alarm ro " 35*7ebd8b66SMauro Carvalho Chehabtemp1_crit_alarm ro " 36*7ebd8b66SMauro Carvalho Chehab 37*7ebd8b66SMauro Carvalho Chehabtemp2_input ro remote temperature 38*7ebd8b66SMauro Carvalho Chehabtemp2_min rw " 39*7ebd8b66SMauro Carvalho Chehabtemp2_max rw " 40*7ebd8b66SMauro Carvalho Chehabtemp2_crit rw " 41*7ebd8b66SMauro Carvalho Chehabtemp2_min_alarm ro " 42*7ebd8b66SMauro Carvalho Chehabtemp2_max_alarm ro " 43*7ebd8b66SMauro Carvalho Chehabtemp2_crit_alarm ro " 44*7ebd8b66SMauro Carvalho Chehabtemp2_fault ro " 45*7ebd8b66SMauro Carvalho Chehab 46*7ebd8b66SMauro Carvalho Chehabfan1_input ro tachometer speed 47*7ebd8b66SMauro Carvalho Chehabfan1_min rw " 48*7ebd8b66SMauro Carvalho Chehabfan1_max rw " 49*7ebd8b66SMauro Carvalho Chehabfan1_fault ro " 50*7ebd8b66SMauro Carvalho Chehabfan1_div rw Fan divisor can be either 2 or 4. 51*7ebd8b66SMauro Carvalho Chehab 52*7ebd8b66SMauro Carvalho Chehabpwm1 rw pwm1 53*7ebd8b66SMauro Carvalho Chehabpwm1_enable rw regulator mode, 1=open loop, 2=fan controlled 54*7ebd8b66SMauro Carvalho Chehab by remote temperature, 3=fan controlled by 55*7ebd8b66SMauro Carvalho Chehab combination of the on-chip temperature and 56*7ebd8b66SMauro Carvalho Chehab remote-sensor temperature, 57*7ebd8b66SMauro Carvalho Chehabpwm1_auto_channels_temp ro 1 if pwm_enable==2, 3 if pwm_enable==3 58*7ebd8b66SMauro Carvalho Chehabpwm1_auto_point1_pwm ro Hardwired to 0, shared for both 59*7ebd8b66SMauro Carvalho Chehab temperature channels. 60*7ebd8b66SMauro Carvalho Chehabpwm1_auto_point2_pwm rw This value is shared for both temperature 61*7ebd8b66SMauro Carvalho Chehab channels. 62*7ebd8b66SMauro Carvalho Chehabpwm1_auto_point3_pwm rw Hardwired to 255, shared for both 63*7ebd8b66SMauro Carvalho Chehab temperature channels. 64*7ebd8b66SMauro Carvalho Chehab 65*7ebd8b66SMauro Carvalho Chehabtemp1_auto_point1_temp ro Hardwired to temp2_auto_point1_temp 66*7ebd8b66SMauro Carvalho Chehab which is rw. Below this temperature fan stops. 67*7ebd8b66SMauro Carvalho Chehabtemp1_auto_point2_temp rw The low-temperature limit of the proportional 68*7ebd8b66SMauro Carvalho Chehab range. Below this temperature 69*7ebd8b66SMauro Carvalho Chehab pwm1 = pwm1_auto_point2_pwm. It can go from 70*7ebd8b66SMauro Carvalho Chehab 0 degree C to 124 degree C in steps of 71*7ebd8b66SMauro Carvalho Chehab 4 degree C. Read it out after writing to get 72*7ebd8b66SMauro Carvalho Chehab the actual value. 73*7ebd8b66SMauro Carvalho Chehabtemp1_auto_point3_temp rw Above this temperature fan runs at maximum 74*7ebd8b66SMauro Carvalho Chehab speed. It can go from temp1_auto_point2_temp. 75*7ebd8b66SMauro Carvalho Chehab It can only have certain discrete values 76*7ebd8b66SMauro Carvalho Chehab which depend on temp1_auto_point2_temp and 77*7ebd8b66SMauro Carvalho Chehab pwm1_auto_point2_pwm. Read it out after 78*7ebd8b66SMauro Carvalho Chehab writing to get the actual value. 79*7ebd8b66SMauro Carvalho Chehab 80*7ebd8b66SMauro Carvalho Chehabtemp2_auto_point1_temp rw Must be between 0 degree C and 63 degree C and 81*7ebd8b66SMauro Carvalho Chehab it defines the passive cooling temperature. 82*7ebd8b66SMauro Carvalho Chehab Below this temperature the fan stops in 83*7ebd8b66SMauro Carvalho Chehab the closed loop mode. 84*7ebd8b66SMauro Carvalho Chehabtemp2_auto_point2_temp rw The low-temperature limit of the proportional 85*7ebd8b66SMauro Carvalho Chehab range. Below this temperature 86*7ebd8b66SMauro Carvalho Chehab pwm1 = pwm1_auto_point2_pwm. It can go from 87*7ebd8b66SMauro Carvalho Chehab 0 degree C to 124 degree C in steps 88*7ebd8b66SMauro Carvalho Chehab of 4 degree C. 89*7ebd8b66SMauro Carvalho Chehab 90*7ebd8b66SMauro Carvalho Chehabtemp2_auto_point3_temp rw Above this temperature fan runs at maximum 91*7ebd8b66SMauro Carvalho Chehab speed. It can only have certain discrete 92*7ebd8b66SMauro Carvalho Chehab values which depend on temp2_auto_point2_temp 93*7ebd8b66SMauro Carvalho Chehab and pwm1_auto_point2_pwm. Read it out after 94*7ebd8b66SMauro Carvalho Chehab writing to get actual value. 95*7ebd8b66SMauro Carvalho Chehab======================= == =============================================== 96*7ebd8b66SMauro Carvalho Chehab 97*7ebd8b66SMauro Carvalho Chehab 98*7ebd8b66SMauro Carvalho ChehabModule parameters 99*7ebd8b66SMauro Carvalho Chehab----------------- 100*7ebd8b66SMauro Carvalho Chehab 101*7ebd8b66SMauro Carvalho ChehabIf your board has a BIOS that initializes the amc6821 correctly, you should 102*7ebd8b66SMauro Carvalho Chehabload the module with: init=0. 103*7ebd8b66SMauro Carvalho Chehab 104*7ebd8b66SMauro Carvalho ChehabIf your board BIOS doesn't initialize the chip, or you want 105*7ebd8b66SMauro Carvalho Chehabdifferent settings, you can set the following parameters: 106*7ebd8b66SMauro Carvalho Chehab 107*7ebd8b66SMauro Carvalho Chehab- init=1, 108*7ebd8b66SMauro Carvalho Chehab- pwminv: 0 default pwm output, 1 inverts pwm output. 109