Lines Matching +full:fan +full:- +full:0
26 #include <subdev/bios/fan.h>
32 u32 fan = 0; in nvbios_fan_table() local
35 if (bit_P.version == 2 && bit_P.length >= 0x5c) in nvbios_fan_table()
36 fan = nvbios_rd32(bios, bit_P.offset + 0x58); in nvbios_fan_table()
38 if (fan) { in nvbios_fan_table()
39 *ver = nvbios_rd08(bios, fan + 0); in nvbios_fan_table()
41 case 0x10: in nvbios_fan_table()
42 *hdr = nvbios_rd08(bios, fan + 1); in nvbios_fan_table()
43 *len = nvbios_rd08(bios, fan + 2); in nvbios_fan_table()
44 *cnt = nvbios_rd08(bios, fan + 3); in nvbios_fan_table()
45 return fan; in nvbios_fan_table()
52 return 0; in nvbios_fan_table()
62 return 0; in nvbios_fan_entry()
66 nvbios_fan_parse(struct nvkm_bios *bios, struct nvbios_therm_fan *fan) in nvbios_fan_parse() argument
70 u32 data = nvbios_fan_entry(bios, 0, &ver, &hdr, &cnt, &len); in nvbios_fan_parse()
72 u8 type = nvbios_rd08(bios, data + 0x00); in nvbios_fan_parse()
74 case 0: in nvbios_fan_parse()
75 fan->type = NVBIOS_THERM_FAN_TOGGLE; in nvbios_fan_parse()
80 fan->type = NVBIOS_THERM_FAN_PWM; in nvbios_fan_parse()
83 fan->type = NVBIOS_THERM_FAN_UNK; in nvbios_fan_parse()
86 fan->fan_mode = NVBIOS_THERM_FAN_LINEAR; in nvbios_fan_parse()
87 fan->min_duty = nvbios_rd08(bios, data + 0x02); in nvbios_fan_parse()
88 fan->max_duty = nvbios_rd08(bios, data + 0x03); in nvbios_fan_parse()
90 fan->pwm_freq = nvbios_rd32(bios, data + 0x0b) & 0xffffff; in nvbios_fan_parse()