ACPI EC SCI Event
ACPI EC SCI-Event Description
In a job system, a trigger event initiates the system, and different trigger events execute different tasks. If no event is triggered, the job system will remain in a static waiting state, and then enter a power-saving or sleep state.
Therefore, when the EC device receives a trigger event (such as AC power plugging in), the EC will use SCI (System Control Interrupt) to generate an interrupt, start the operating system, and the ACPI EC Driver will be started by the operating system. It will use command 84H to obtain the SCI Event number, and then execute the corresponding event using the event number.
In EC (Embedded Controller) firmware, there are two important system events: power management events and timing events. They serve as power status notifications and timing event notifications, respectively.
Power Management Event: System Power Status Change Notification
This is an event that EC Firmware uses to notify the operating system when the system power state changes. This conforms to the ACPI specification, namely:
When a power source (such as an AC power source or a battery) is plugged in, removed, or its status changes,
Power management events need to be reported to the operating system.
The operating system will further update the power status through ACPI.
Common triggering scenarios:
Plug or unplug AC power
Replacement battery
Battery charging in progress
Scheduled event notification
A timed event is an event emitted when a timer is set by the EC (Electronic Control Panel) and the specified time is reached, measured in seconds. This event is typically configured by the BIOS through EC firmware and is used to:
Reprocess unfinished tasks after a period of time.
Regularly check certain statuses
Supplementary information is not yet ready
Practical application examples:
When the user inserts the battery, the operating system receives a power management event notification immediately, but battery information may be fully retrieved at this time. The operating system will then use ACPI..._BTSThe method attempts to read battery information, but if the data is incomplete, the ASL code (ACPI Source Language) will:
Set a timer.
When the time is up, the EC will issue a timed event.
After the operating system receives the timed event, it executes again._BTSMethod to correctly read battery information
Summarize
Reprocess unfinished tasks after a period of time.
Regularly check certain statuses
Supplementary information is not yet ready
Set a timer.
When the time is up, the EC will issue a timed event.
After the operating system receives the timed event, it executes again._BTSMethod to correctly read battery information
留言
張貼留言