@@ -41,6 +41,12 @@ config VERSAL_OF_BOARD_DTB_ADDR
default 0x1000
depends on OF_BOARD
+config IOU_SWITCH_DIVISOR0
+ hex "IOU switch divisor0"
+ default 0x20
+ help
+ Setup time clock divisor for input clock.
+
config SYS_MEM_RSVD_FOR_MMU
bool "Reserve memory for MMU Table"
help
@@ -28,8 +28,11 @@ int board_early_init_r(void)
if (current_el() != 3)
return 0;
+ debug("iou_switch ctrl div0 %x\n",
+ readl(&crlapb_base->iou_switch_ctrl));
+
writel(IOU_SWITCH_CTRL_CLKACT_BIT |
- (0x20 << IOU_SWITCH_CTRL_DIVISOR0_SHIFT),
+ (CONFIG_IOU_SWITCH_DIVISOR0 << IOU_SWITCH_CTRL_DIVISOR0_SHIFT),
&crlapb_base->iou_switch_ctrl);
/* Global timer init - Program time stamp reference clk */
Move hardcoded IOU_SWITCH_DIVISOR0 to Kconfig to be able to set it up for different platforms. Signed-off-by: Michal Simek <michal.simek@xilinx.com> --- arch/arm/mach-versal/Kconfig | 6 ++++++ board/xilinx/versal/board.c | 5 ++++- 2 files changed, 10 insertions(+), 1 deletion(-)