ACPI 5.0

Alex Hung alex.hung at canonical.com
Wed Jul 11 13:06:56 UTC 2012


Updated whether new items in acpi 5.0 are checked in current fwts and 
fixed some errors


== HP-0001 ==

  * 5.6.6 Device Object Notifications - Graceful Shutdown Request (0x0c)
  * Need to check whether linux kernel supports it
   * probably no need to test it in fwts (or check it at particular 
methods)

== INTC-001 ==

  * Firmware Performance Data Table (FPDT) (DONE) - used to describe the 
platform initialization performance records
   * used to show boot time
   * fwts needs to check it
    * can also decode it for further suggestions

== INTC-002 ==

  * Error Injection Table (EINJ) (DONE) - for OSPM can inject hardware 
errors to the platform
   * it exists in ACPI 4.0a
   * fwts needs to check it

== INTC-003 ==

  * Memory Power StateTable (MPST) (DONE) - defines the memory power 
node topology of the configuration
   * fwts needs to check it

== INTC-008 & INTC-009 ==

  * ACPI RAS FeatureTable (RASF) (not DONE?)
   * fwts needs to check it

== MSFT-0001 ==

  * HW-reduced ACPI is for ARM
   * fwts needs to check it in long term

== MSFT-0002 ==

  * Generic interrupt Controller is used on ARM
   * fwts needs to check it in long term

== MSFT-0003 ==

  * Device Identification Objects
   * new objects: _CLS, _HRV and _SUB (not DONE)
    * fwts needs to check them

== MSFT-0004 ==

  * GPIO Abstraction - new device type: GPIO controller
   * new methods: _AEI (DONE) and _EVT (not DONE)
    * probably for ARM
    * fwts needs to check them
    * _EVT's input is odd - feedback to acpi sig

== MSFT-0006 ==

  * Simple Peripheral Bus (SPB)
   * mostly used on ARM?
   * new object: _DEP (not DONE)
    * fwts needs to check it

== MSFT-0007 ==

  * a new method: _CPC (not DONE)
   * fwts needs to check it

== MSFT-0008 ==

  * A section 14 for Platform Communications Channel (PCC)
   * a new table: Platform Communications Channel Table (PCCT) (DONE)
   * fwts needs to check it
   * not sure whether it is for ARM or generic...

== MSFT-0009 ==

  * Time and Alarm Device <- originally it was Wake Alarm Device
   * new methods: _GCP, _GRT, _SRT, _GWS, _CWS (not DONE)
    * fwts needs to check them

== MSFT-0014 ==

  * see INTC-001

== MSFT-0016 ==

  * see MSFT-0004

== MSFT-0018 ==

  * a new method: _DLM (not done)
   * fwts needs to check it
   * does linux kernel support it?

== MSFT-0019 ==

  * Generic Timer Description Table (GTDT) (DONE)
   * for ARM
   * fwts needs to check it

== MSFT-0020 ==

  * new methods: _PSR (DONE), _PRE (DONE)
   * fwts needs to check them


On 07/11/2012 05:11 PM, Alex Hung wrote:
> Hi,
>
> I quickly read through the revision history and identify what's new in
> ACPI 5.0, as summarized below:
>
> Any comments are most welcomed.
>
> == Summary ==
>
> Many new changes are related to ARM platform, and may not related to
> current x86 designs.
> However, we can still check new acpi tables and control methods whether
> they are used in ARM or in PC as this is not particularly difficult. I
> am guessing it won't be long that we see ARM features on x86.
>
> Ubuntu on ARM does not support on ACPI (?), but this may change with the
> introduction of Win8 on ARM. I suggest to lower the priority for
> ARM-specific changes that will consume much time, but may need to finish
> them in ubuntu-r cycle.
>
> Does anyone know the ubuntu's plan for ACPI on ARM?
>
> == HP-0001 ==
>
>   * 5.6.6 Device Object Notifications - Graceful Shutdown Request (0x0c)
>   * Need to check whether linux kernel supports it
>    * probably no need to test it in fwts (or check it at particular
> methods)
>
> == INTC-001 ==
>
>   * Firmware Performance Data Table (FPDT) - used to describe the
> platform initialization performance records
>    * used to show boot time
>    * fwts needs to check it
>     * can also decode it for further suggestions
>
> == INTC-002 ==
>
>   * Error Injection Table (EINJ) - for OSPM can inject hardware errors
> to the platform
>    * it exists in ACPI 4.0a
>    * fwts needs to check it (if not done so yet)
>
> == INTC-003 ==
>
>   * Memory Power StateTable (MPST) - defines the memory power node
> topology of the configuration
>    * fwts needs to check it
>
> == INTC-008 & INTC-009 ==
>
>   * ACPI RAS FeatureTable (RASF)
>    * fwts needs to check it
>
> == MSFT-0001 ==
>
>   * HW-reduced ACPI is for ARM
>    * fwts needs to check it in long term
>
> == MSFT-0002 ==
>
>   * Generic interrupt Controller is used on ARM
>    * fwts needs to check it in long term
>
> == MSFT-0003 ==
>
>   * Device Identification Objects
>    * new objects: _CLS, _HRV and _SUB
>     * fwts needs to check them
>
> == MSFT-0004 ==
>
>   * GPIO Abstraction - new device type: GPIO controller
>    * new methods: _AIE and _EVT
>     * probably for ARM
>     * fwts needs to check them
>     * _EVT's input is odd - feedback to acpi sig
>
> == MSFT-0006 ==
>
>   * Simple Peripheral Bus (SPB)
>    * mostly used on ARM?
>    * new object: _DEP
>     * fwts needs to check it
>
> == MSFT-0007 ==
>
>   * a new method: _CPC
>    * fwts needs to check it
>
> == MSFT-0008 ==
>
>   * A section 14 for Platform Communications Channel (PCC)
>    * a new table: Platform Communications Channel Table (PCCT)
>    * fwts needs to check it
>    * not sure whether it is for ARM or generic...
>
> == MSFT-0009 ==
>
>   * Time and Alarm Device <- originally it was Wake Alarm Device
>    * new methods: _GCP, _GRT, _SRT, _GWS, _CWS, _STP
>     * fwts needs to check them
>
> == MSFT-0014 ==
>
>   * Firmware Performance Data Table (FPDT) - see INTC-001
>
> == MSFT-0016 ==
>
>   * see MSFT-0004
>
> == MSFT-0018 ==
>
>   * a new method: _DLM
>    * fwts needs to check it
>    * does linux kernel support it?
>
> == MSFT-0019 ==
>
>   * Generic Timer Description Table (GTDT)
>    * for ARM
>    * fwts needs to check it
>
> == MSFT-0020 ==
>
>   * new methods: _PSR, _PRE
>    * fwts needs to check them
>
>
> On 07/06/2012 04:03 PM, Colin Ian King wrote:
>> Hi fwts developers,
>>
>> We are en-route to making fwts handle ACPI 5.0, but there is still a
>> *lot* more work to be done.
>>
>> Here are some tasks that need completing:
>>
>> 1) Check out the ACPI 5.0 spec [1] revision history (pages iii, iv) to
>> see what's new.
>>
>> 2) Identify new ACPI tables and add support for them (e.g. add to fwts
>> acpidump and where necessary add tests to verify these tables).  [ We
>> may want to also identify tables missing from fwts for ACPI 4.0 too ]
>>
>> 3) Identify new ACPI 5.0 controls and add tests for these to the
>> "method" test.  I've already enumerated all of these new controls (and
>> found a few that I omitted from ACPI 4.0) but we need still need to
>> write a whole load of tests for these.
>>
>> 4) Identify changes to existing tables (added fields + features) and
>> expand existing tests where necessary.
>>
>> As a sanity check, we should also look at the recent kernel changes to
>> the ACPI driver see what's new, learn from this and see if there are any
>> new sanity checks we should be putting into fwts. This breaks down to:
>>
>> a) Do we need to completely write new tests?
>> b) Do we need to extend the current tests? e.g. battery tests, klog,
>> fadt, etc.
>>
>> ..so lots more to do.
>>
>> I propose we get somebody to work through the list of changes and write
>> these up.  We should then prioritize the changes to fwts to cater for
>> these changes. Then we can get volunteers to opt-in to implement the
>> missing features.  If one is starting to work on a feature it makes
>> sense to inform others in this mailing list.
>>
>> Anyhow, I'm open for discussion on how to move this forward and for any
>> suggestions to help make this plan work.
>>
>> Discuss! :-)
>>
>> Colin
>>
>> References:
>>
>> [1] http://www.acpi.info/DOWNLOADS/ACPIspec50.pdf
>>
>
>






More information about the fwts-devel mailing list