Skip to content
  • Jeremy Linton's avatar
    arm64: topology: Enable ACPI/PPTT based CPU topology. · b595cead
    Jeremy Linton authored
    Propagate the topology information from the PPTT tree to the
    cpu_topology array. We can get the thread id, core_id and
    cluster_id by assuming certain levels of the PPTT tree correspond
    to those concepts. The package_id is flagged in the tree and can be
    found by passing an arbitrary large level to setup_acpi_cpu_topology()
    which terminates its search when it finds an ACPI node flagged
    as the physical package. If the tree doesn't contain enough
    levels to represent all of thread/core/cod/package then the package
    id will be used for the missing levels.
    
    Since server/ACPI machines are more likely to be multisocket and NUMA,
    this patch also modifies the default clusters=sockets behavior
    for ACPI machines to sockets=sockets. DT machines continue to
    represent sockets as clusters. For ACPI machines, this results in a
    more normalized view of the topology. Cluster level scheduler decisions
    are still being made due to the "MC" level in the scheduler which has
    know...
    b595cead