Please read the spec 11.1.2 and 11.1.2.3. Trip points change _only_ to create a hysteresis loop, not by themselves. This means that we will get 0x81 type _only_ in response to us changing active state, the moment then we have temperature and just decided to move away from this trip point, not closer to it. If the temperature change, we get another event, 0x80, and _then_ we do thermal_check()... Regards, Alex. On 5/16/07, Len Brown <lenb@xxxxxxxxxx> wrote:
> --- a/drivers/acpi/thermal.c > +++ b/drivers/acpi/thermal.c > @@ -1106,7 +1106,6 @@ static void acpi_thermal_notify(acpi_handle handle, u32 event, void *data) > break; > case ACPI_THERMAL_NOTIFY_THRESHOLDS: > acpi_thermal_get_trip_points(tz); >- acpi_thermal_check(tz); > acpi_bus_generate_event(device, event, 0); > break; > case ACPI_THERMAL_NOTIFY_DEVICES: I don't think we can do this. When the thresholds change, there must be a check to compare the temperature with the thresholds -- otherwise what good was it to change the thresholds? -Len
- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html