Dear J.D.,
I am not sure of what I will write here as I am not a kernel developer
nor a APM specialist. So sorry, if I am completely wrong.
> case APM_LOW_BATTERY:
> case APM_POWER_STATUS_CHANGE:
>+#ifdef CONFIG_APM_IGNORE_MULTIPLE_POWER
>+ if (!apm_get_power_status(&bx, &acls, &acls)) {
>+ acls = (bx >> 8) & 0xff;
>+ if (acls == save_ac_line_status)
>+ break;
>+ save_ac_line_status = acls;
>+ }
>+#endif
> case APM_CAPABILITY_CHANGE:
> send_event(event, 0, NULL);
> break;
This code means that in case of APM_LOW_BATTERY the code for the
APM_POWER_STATUS_CHANGE is also executed and I am not sure you really want
this. It may work, but it is not really clean.
Just my two cents!
Best regards,
Loic.