Dynamically configure timers' base frequency for Armada 38x

Instead of using 'clock-frequency' device tree property for global/twd
mpcore timers of Armada 38x SoCs, set it in platform_late_init stage
with arm_tmr_change_frequency() function.

Reviewed by: cognet (mentor)
Approved by: cognet (mentor)
Obtained from: Semihalf
Differential Revision: https://reviews.freebsd.org/D11881
This commit is contained in:
Marcin Wojtas 2017-08-09 01:14:29 +00:00
parent edf3dd3b0a
commit 1070a9141c
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=322290

View file

@ -51,6 +51,7 @@ __FBSDID("$FreeBSD$");
#include <vm/vm.h>
#include <vm/pmap.h>
#include <arm/arm/mpcore_timervar.h>
#include <arm/arm/nexusvar.h>
#include <machine/bus.h>
@ -294,6 +295,9 @@ platform_late_init(void)
#endif
#if defined(SOC_MV_ARMADA38X)
/* Configure timers' base frequency */
arm_tmr_change_frequency(get_cpu_freq() / 2);
/*
* Workaround for Marvell Armada38X family HW issue
* between Cortex-A9 CPUs and on-chip devices that may