armv8/fsl-lsch2: refactor the clock system initialization
authorHou Zhiqiang <Zhiqiang.Hou@nxp.com>
Tue, 10 Jan 2017 08:44:15 +0000 (16:44 +0800)
committerYork Sun <york.sun@nxp.com>
Wed, 18 Jan 2017 17:27:59 +0000 (09:27 -0800)
commit904110c7ac801b99029b2bca4765c792c9eac582
tree5266fd062bff903aff035a6588af17aad261663b
parentee2a51022135a01fa2258b7788702313d0f54dac
armv8/fsl-lsch2: refactor the clock system initialization

Up to now, there are 3 kind of SoCs under Layerscape Chassis 2,
like LS1043A, LS1046A and LS1012A. But the clocks tree has a
lot of differences, for instance, the IP modules have different
dividers to derive its clock from Platform PLL. And the core
cluster PLL and platform PLL maybe have different reference
clocks, such as LS1012A. Another problem is which clock/PLL
should be described by sys_info->freq_systembus, it is confused
in Layerscape Chissis 2.

This patch is to bind the sys_info->freq_systembus to the Platform
PLL, and handle the different divider of IP modules separately
between different SoCs, and separate reference clocks of core
cluster PLL and platform PLL.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
arch/arm/cpu/armv8/fsl-layerscape/Kconfig
arch/arm/cpu/armv8/fsl-layerscape/cpu.c
arch/arm/cpu/armv8/fsl-layerscape/fsl_lsch2_speed.c
arch/arm/include/asm/arch-fsl-layerscape/immap_lsch2.h
include/configs/ls1012a_common.h
include/configs/ls1043a_common.h
include/configs/ls1046a_common.h
include/configs/ls2080aqds.h
include/configs/ls2080ardb.h