• Lorenzo Pieralisi's avatar
    ARM: kernel: add device tree init map function · a0ae0240
    Lorenzo Pieralisi authored
    
    
    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: default avatarLorenzo Pieralisi <lorenzo.pieralisi@arm.com>
    Acked-by: default avatarNicolas Pitre <nico@linaro.org>
    a0ae0240