/*
 * Copyright (c) 2016, ARM Limited and Contributors. All rights reserved.
 *
 * SPDX-License-Identifier: BSD-3-Clause
 */

#include <arch.h>
#include <asm_macros.S>
#include <platform_def.h>

.macro	func_rockchip_clst_warmboot
	/* Nothing to do for rk3368 */
.endm

.macro rockchip_clst_warmboot_data
	/* Nothing to do for rk3368 */
.endm
