Lines Matching refs:fan
7 * The G4 "windtunnel" has a single fan controlled by an
8 * ADM1030 fan controller and a DS1775 thermostat.
10 * The fan controller is equipped with a temperature sensor
13 * behavior of the fan. It is based upon empirical observations
58 struct i2c_client *fan;
60 int overheat_temp; /* 100% fan at this temp */
79 { 11, T(0,0), 11 }, /* min fan */
158 /* write_reg( x.fan, 0x24, val, 1 ); */
159 write_reg( x.fan, 0x25, val, 1 );
160 write_reg( x.fan, 0x20, 0, 1 );
180 casetemp = read_reg(x.fan, 0x0b, 1) << 8;
181 casetemp |= (read_reg(x.fan, 0x06, 1) & 0x7) << 5;
216 x.r0 = read_reg( x.fan, 0x00, 1 );
217 x.r1 = read_reg( x.fan, 0x01, 1 );
218 x.r20 = read_reg( x.fan, 0x20, 1 );
219 x.r23 = read_reg( x.fan, 0x23, 1 );
220 x.r25 = read_reg( x.fan, 0x25, 1 );
229 write_reg( x.fan, 0x01, 0x01, 1 );
231 write_reg( x.fan, 0x23, 0x91, 1 );
232 /* remote temp. controls fan */
233 write_reg( x.fan, 0x00, 0x95, 1 );
236 * has a THERM output which puts the fan on 100%) is usually
251 /* set an initial fan setting */
269 write_reg( x.fan, 0x01, x.r1, 1 );
270 write_reg( x.fan, 0x20, x.r20, 1 );
271 write_reg( x.fan, 0x23, x.r23, 1 );
272 write_reg( x.fan, 0x25, x.r25, 1 );
273 write_reg( x.fan, 0x00, x.r0, 1 );
351 else if (client == x.fan)
352 x.fan = NULL;
360 if( x.fan )
366 printk("ADM1030 fan controller [@%02x]\n", cl->addr );
368 x.fan = cl;
435 if (!x.running && x.thermostat && x.fan) {
492 .name = "fan",
534 if( !(np=of_find_node_by_name(NULL, "fan")) )
540 printk(KERN_ERR "Can't register fan controller!\n");
561 MODULE_DESCRIPTION("Apple G4 (windtunnel) fan controller");