]> git.baikalelectronics.ru Git - kernel.git/commit
drivers: base: cacheinfo: setup DT cache properties early
authorJeremy Linton <jeremy.linton@arm.com>
Fri, 11 May 2018 23:57:57 +0000 (18:57 -0500)
committerCatalin Marinas <catalin.marinas@arm.com>
Thu, 17 May 2018 16:27:49 +0000 (17:27 +0100)
commit7f03ccc84261cd4be804e5b46ca092efa2a88c6d
tree7168815bc928df3f7494cb0201ca499bca79a1fb
parent75255817d34b83a2f6c9d53899ed536a9435c9cf
drivers: base: cacheinfo: setup DT cache properties early

The original intent in cacheinfo was that an architecture
specific populate_cache_leaves() would probe the hardware
and then cache_shared_cpu_map_setup() and
cache_override_properties() would provide firmware help to
extend/expand upon what was probed. Arm64 was really
the only architecture that was working this way, and
with the removal of most of the hardware probing logic it
became clear that it was possible to simplify the logic a bit.

This patch combines the walk of the DT nodes with the
code updating the cache size/line_size and nr_sets.
cache_override_properties() (which was DT specific) is
then removed. The result is that cacheinfo.of_node is
no longer used as a temporary place to hold DT references
for future calls that update cache properties. That change
helps to clarify its one remaining use (matching
cacheinfo nodes that represent shared caches) which
will be used by the ACPI/PPTT code in the following patches.

Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Tested-by: Vijaya Kumar K <vkilari@codeaurora.org>
Tested-by: Xiongfeng Wang <wangxiongfeng2@huawei.com>
Tested-by: Tomasz Nowicki <Tomasz.Nowicki@cavium.com>
Acked-by: Sudeep Holla <sudeep.holla@arm.com>
Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
arch/riscv/kernel/cacheinfo.c
drivers/base/cacheinfo.c