]> 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)
commit508bf852e6e45194a839795ba8f92f83eb9daa0a
tree210b4b6a8c58cac502ba1d1c6a4f1c33bb494cd9
parent24ed1bbbc7f91c8dabce0365003114b91ed7c643
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