]> git.baikalelectronics.ru Git - kernel.git/commit
ARM: kernel: add device tree init map function
authorLorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Thu, 17 Nov 2011 17:31:51 +0000 (17:31 +0000)
committerLorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Mon, 19 Nov 2012 15:44:33 +0000 (15:44 +0000)
commitdf092179707e07222d115a1b7f747142cf0e1f7e
tree210b4b6a8c58cac502ba1d1c6a4f1c33bb494cd9
parent73380aab7e9f0cfc96e89f1e40b871c607c73a3d
ARM: kernel: add device tree init map function

When booting through a device tree, the kernel cpu logical id map can be
initialized using device tree data passed by FW or through an embedded blob.

This patch adds a function that parses device tree "cpu" nodes and
retrieves the corresponding CPUs hardware identifiers (MPIDR).
It sets the possible cpus and the cpu logical map values according to
the number of CPUs defined in the device tree and respective properties.

The device tree HW identifiers are considered valid if all CPU nodes contain
a "reg" property, there are no duplicate "reg" entries and the DT defines a
CPU node whose "reg" property matches the MPIDR[23:0] of the boot CPU.

The primary CPU is assigned cpu logical number 0 to keep the current convention
valid.

Current bindings documentation is included in the patch:

Documentation/devicetree/bindings/arm/cpus.txt

Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Acked-by: Nicolas Pitre <nico@linaro.org>
Documentation/devicetree/bindings/arm/cpus.txt [new file with mode: 0644]
arch/arm/include/asm/prom.h
arch/arm/kernel/devtree.c