[resend]

The project team for Hot-Plug Support for ACPI-based Systems,
PSARC/2009/104, wishes to amend their case with some changes.

The changes are in response to experience gained during
development with ACPI and the port to i386 of the sparc DR
driver and during code review.

This case was approved in February 2009 but has not yet
integrated so no consumers exist that would be affected
at this time.

An explanation for each one of the changes is provided
below, followed by diffs between the original and amended
proposals.  The complete amended proposal is provided
in the case directory with the name final.spec.

I believe these amendments as proposed can be accepted
as approved, given no consumers, without necessarily
re-opening the case for full review;  but if anyone
thinks otherwise, I can promote the case to a full
fast-track.


-jg

--------------------------

From: "Liu, Jiang" <jiang....@intel.com>


We are requesting following updates to PSARC/2009/104.

1) Add device nodes /devices/fw/sb at x/mem at y to support
memory devices on future non-hotplug-capable systems. With recent
technical trend, future non-hotplug-capable systems may also expose
ACPI memory devices to support memory power management. On
such platforms, device nodes /devices/fw/sb at x/mem at y will be
created for ACPI memory devices.

2) Add device nodes /devices/fw/sb at x/cpu at y for Processor
devices under /_SB. ACPI Spec 1.0 defines that Processor device
can exist under /_PR, this has been covered by PSARC/2009/104.
Later ACPI Specs define that Processor devices could also exist
under /_SB, we missed this case in PSARC/2009/104.

3) Add /devices/fw/acpidr and change attachment point
configuration to match requirements of DR driver. At beginning, we
planned to port sbd driver from SPARC and defined APs according
to sbd driver's requirements. With more investigation, we have
switched to more advanced dr driver from SPARC. With new design,
dr driver will bind to /devices/fw/acpidr on hotplug-capable system and
create APs as follows if applicable:

AP    Device Minor Node    Configuration Node    Description
SBx    /devices/fw/acpidr:SBx    /dev/cfg/SBx        system board
CPUx    /devices/fw/acpidr:CPUx    /dev/cfg/CPUx        CPU board
MEMx    /devices/fw/acpidr:MEMx    /dev/cfg/MEMx        memory board
IOx    /devices/fw/acpidr:IOx    /dev/cfg/IOx        IO board

4) Delete device nodes for IOH, such as /devices/fw/sb at x/ioh at y
and /devices/fw/sb at x/socket at y/ioh at z. In previous proposal, device
nodes will created for each IOH(IO Hub Chipset) to host Intel IOMMU
and IOAPIC devices. With more discussions with IO and IOMMU experts,
the trend is to integrate support of IOMMU/IOAPIC device into PCI host
bridge driver, and DR manager will deal with PCI host bridge devices
directly. With that change, device nodes for IOH become useless.

Liu Jiang (Gerry)


Diffs between original and amended spec:
----------------------------------------

@@ -11,7 +11,7 @@
          Gerry Liu <jiang.liu at intel.com>

      1.3. Date of This Document:
-    January 29th, 2009
+    July 17th, 2009

  2. Project Summary
     2.1. Project Description:
@@ -72,7 +72,9 @@

      4.1.2.1 Device tree structure when ACPI is disabled or not available
      /devices/fw            Pseudo nexus node to host system devices
-    /devices/fw/cpu at x        Logical CPU
+    /devices/fw/cpu at x        Logical CPU under ACPI /_PR subtree
+    /devices/fw/sb at x/cpu at y        Logical CPU under ACPI /_SB subtree
+    /devices/fw/sb at x/mem at z        ACPI memory device
      /devices/pci at x,0        PCI host bridge


@@ -79,14 +81,12 @@
      4.1.2.2 Device tree structure for system with CPU/memory/IOH 
hotplug feature

      /devices/fw            Pseudo nexus node to host system devices
+    /devices/fw/acpidr        Pseudo node for hotplug driver
      /devices/fw/sb at x        Pseudo nexus node for system board
      /devices/fw/sb at x/socket at y    Pseudo nexus node to host devices in
                          physical CPU
      /devices/fw/sb at x/socket at y/cpu at z    Logical CPU
      /devices/fw/sb at x/socket at y/mem at z    ACPI memory device
-    /devices/fw/sb at x/socket at y/ioh at z    IOH embedded in physical CPU
-    /devices/fw/sb at x/ioh at y        Pseudo nexus node to host device in IOH
-                    except PCI host bridge
      /devices/fw/sb at x/hpet at y        High precesion event timer
      /devices/fw/sb at x/slpbtn at y    ACPI sleep button
      /devices/fw/sb at x/pwrbtn at y    ACPI power button
@@ -97,16 +97,14 @@
      This can vary from platform to platform and the information is
      available from the ACPI table. Examples of possible Attachment Points
      are:
-    i) System board is hot pluggable. Socket on the board is hotpluggable.
-    AP        Device Minor Node        Configuration Node
-    sbx        /devices/fw:sbx            /dev/cfg/sbx
-    sbx::sockety        -            /dev/cfg/sbx/sockety
-    ii) Socket is hot pluggable. Non-embedded IOH is hotpluggable. System
-    board is not hot pluggable.
-    AP        Device Minor Node        Configuration Node
-    sockety        /devices/fw/sbx:socket        /dev/cfg/sbx/sockety
-    iohy        /devices/fw/sbx:iohy        /dev/cfg/iohy

+    Device Minor Node    Configuration Node    Description
+    SBx    /devices/fw/acpidr:SBx    /dev/cfg/SBx    system board
+    CPUx    /devices/fw/acpidr:CPUx    /dev/cfg/CPUx    CPU board
+    MEMx    /devices/fw/acpidr:MEMx    /dev/cfg/MEMx    memory board
+    IOx    /devices/fw/acpidr:IOx    /dev/cfg/IOx    IO board
+
+
      4.1.2.4 Device node properties
        Properties for all device nodes created by acpi device enumerator:
      compatible
@@ -163,28 +161,25 @@

-----------------------------------------------------------------------------
  /devices/fw        Cons Priv    Pseudo nexus node to host system devices

+/devices/fw/acpidr    Cons Priv    Pseudo node for hotplug driver
+
  /devices/fw/sb at x    Cons Priv    Pseudo nexus node for system board

  /devices/fw/sb at x/     Cons Priv    Pseudo nexus node to host devices in
socket at y                        physical CPU

-/devices/fw/sb at x/     Cons Priv     Logical CPU
-socket at y/cpu at z
+/devices/fw/cpu at x     Cons Priv    Logical CPU

+/devices/fw/sb at x/     Cons Priv    Logical CPU
+[socket at y/]cpu at z
+
  /devices/fw/sb at x/    Cons Priv     ACPI memory device
-socket at y/mem at z
+[socket at y/]mem at z

-/devices/fw/sb at x/    Cons Priv     IOH embedded in physical CPU
-socket at y/ioh at z
-/devices/fw/sb at x/ioh at y    Cons Priv     Pseudo nexus node to host 
device in IOH
-                    except PCI host bridge

-
      4.6. Doc Impact:
-    cfgadm_fw(1M) man page will be added. This will be similiar to
-     cfgadm_sbd(1M) with x86 specific platform information
-
-        cfgadm(1M) will need to be modified to point to cfgadm_fw(1M)
+    cfgadm_sbd(1M) will be enhanced to include x86 platform specific
+    information.

      4.11. Security Impact:
      None

Reply via email to