summaryrefslogtreecommitdiff
path: root/arch/arm/mach-imx/imx8/cpu.c
AgeCommit message (Collapse)Author
2019-07-09imx8: cpu: fix warning for cpu_imx_get_tempIgor Opaniuk
cpu_imx_get_temp() definition is wrapped with a ifdef macro, which leads to warnings if CONFIG_IMX_SCU_THERMAL isn't defined and there are still references to this function, as, for example, in cpu_imx_get_desc(). Drop ifdef as linker will automatically remove the function in case CONFIG_IMX_SCU_THERMAL is not enabled. Fix warning: arch/arm/mach-imx/imx8/cpu.c: In function ‘cpu_imx_get_desc’: arch/arm/mach-imx/imx8/cpu.c:612:40: warning: implicit declaration of function ‘cpu_imx_get_temp’; did you mean ‘cpu_imx_get_desc’? [-Wimplicit-function-declaration] ret = snprintf(buf, size, " at %dC", cpu_imx_get_temp()); ^~~~~~~~~~~~~~~~ cpu_imx_get_desc cpu_imx_get_desc Fixes: 82467cb217 ("imx8: cpu: get temperature when print cpu desc") Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
2019-07-09MLK-16560-1: imx8: Configure sids based on iommu properties in dtbYe Li
Use streamids specified in dtb because they need to match anyway. This removes the need to rebuild uboot for stream id assignments. Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com> Acked-by: Peng Fan <peng.fan@nxp.com> (cherry picked from downstream commit 3caa05e6dc973b8710642f27f834bf022fbb65b4)
2019-07-09MLK-16087 imx8qm/qxp: Disable kernel FDT nodes for the resources are not ownedYe Li
Before starting the kernel, need to check if the enabled nodes (resources) in FDT are owned by current partition. If it is not owned, need to disable it because A core can't access it. We use the node's power-domain property to get the PD node which has the SCFW resource id in its reg property. Then we can check it with SCFW. Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from downstream commit 358372674b29685788a4007b0944ab03b7fafc13)
2019-07-09MLK-14938-8 imx8: Add SMMU setup to Soc codesYe Li
We setup SMMU in arch_preboot_os to avoid breaking u-boot driver. Add a kconfig entry CONFIG_IMX_SMMU to enable it. So far, the USDHC0-USDHC1 and FEC0-FEC1 are added into sid. Signed-off-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from downstream commit 7da6345919ee59a26cf65b4bc29072eea2fc0909) (cherry picked from downstream commit 45308e7da90f342c2de7fbec1f8c5b8bd3f1b8e5)
2019-06-11imx8: cpu: get temperature when print cpu descPeng Fan
Read the temperature when print cpu inforation. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2019-06-11imx8qm: fix cpu frequency reportingMarcel Ziswiler
CPU frequency reporting failed with the following error message being printed: sc_pm_get_clock_rate: resource:507 clk:2: res:3 Could not read CPU frequency: -22 CPU: NXP i.MX8QM RevB A53 at 0 MHz Fix this by differentiating between the A35 as found on the i.MX 8QXP and the A53 as found on the i.MX 8QM SoCs. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Reviewed-by: Max Krummenacher <max.krummenacher@toradex.com>
2019-05-18CONFIG_SPL_SYS_[DI]CACHE_OFF: addTrevor Woerner
While converting CONFIG_SYS_[DI]CACHE_OFF to Kconfig, there are instances where these configuration items are conditional on SPL. This commit adds SPL variants of these configuration items, uses CONFIG_IS_ENABLED(), and updates the configurations as required. Acked-by: Alexey Brodkin <abrodkin@synopsys.com> Signed-off-by: Trevor Woerner <trevor@toganlabs.com> [trini: Make the default depend on the setting for full U-Boot, update more zynq hardware] Signed-off-by: Tom Rini <trini@konsulko.com>
2019-04-25imx8: add cpu supportPeng Fan
Add cpu type and Kconfig entry Signed-off-by: Peng Fan <peng.fan@nxp.com>
2019-03-13imx8qxp: Fix the reported CPU frequencyFabio Estevam
Currently the CPU frequency is incorrectly reported: CPU: NXP i.MX8QXP RevB A35 at 147228 MHz Fix this problem by using a direct call to the SCU firmware to retrieve the Cortex A35 CPU frequency. With this change applied the CPU frequency is displayed correctly: CPU: NXP i.MX8QXP RevB A35 at 1200 MHz Tested-by: Marcelo Macedo <marcelo.macedo@nxp.com> Signed-off-by: Fabio Estevam <festevam@gmail.com> Tested-by: Andrejs Cainikovs <andrejs.cainikovs@netmodule.com>
2019-01-28imx8: cpu: restrict checking ROM passover info for revAPeng Fan
Passover info only for revA. move get_cpu_rev out of CONFIG_CPU to avoid build failure when using get_cpu_rev in SPL. Add a CONFIG_SPL_BUILD for passover usage, no need to execute it again in normal U-Boot stage. Also if still checking passover info in normal U-Boot stage, need to make the passover code executed after arch_cpu_init_dm. So to make it easy and clean, only execute the code for SPL stage. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2019-01-09imx8: cpu: correct infoPeng Fan
The CPU banner printed is as following: CPU: CPU: Freescale i.MX8QXP RevB A35 at 147228 MHz 1. Drop the CPU: 2. Change vendor from Freescale to NXP Signed-off-by: Peng Fan <peng.fan@nxp.com>
2018-10-22imx8: cpu: add uclass based CPU driverAnatolij Gustschin
print_cpuinfo() in board init code requires uclass CPU driver, add it to be able to display CPU info when CONFIG_DISPLAY_CPUINFO option is enabled. CPU node in DT will have to include 'clocks' and 'u-boot,dm-pre-reloc' properties for generic print_cpuinfo() to work as expected. The driver outputs info for i.MX8QXP Rev A and Rev B CPUs. Signed-off-by: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2018-10-22imx8: cpu: add function for reading FEC MAC from fuseAnatolij Gustschin
FEC driver requires imx_get_mac_from_fuse(). Add it in preparation for ENETx support. Signed-off-by: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2018-10-22imx8: add arch_cpu_init arch_cpu_init_dmPeng Fan
Add arch_cpu_init(_dm) mainly to open the channel between ACore and SCU. Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de>
2018-10-22imx8: add mmu and dram related functionsPeng Fan
Add mmu memmap, some memory regions are reserved by M4, Arm Trusted Firmware, so need to get memreg using SCFW API and setup the memmap. Add dram_init, dram_init_banksize, get_effective_memsize functions, according to the memreg. Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de>
2018-10-22imx8: implement mmc_get_env_devPeng Fan
Implement mmc_get_env_dev for i.MX8. Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de>
2018-10-22imx8: add boot device detectionPeng Fan
Add get_boot_device to detect boot device. Add print_bootinfo to print the boot device info. Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de>
2018-10-22imx8: add basic cpu supportPeng Fan
Add basic cpu support, including cpu revision, cpu type, cpu core detection. Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de>