/*
 * Copyright (c) 2019, Linaro
 *
 * SPDX-License-Identifier: Apache-2.0
 */

#include <nxp/nxp_rt.dtsi>

&sysclk {
	clock-frequency = <500000000>;
};

&itcm {
	reg = <0x00000000 DT_SIZE_K(64)>;
};

&dtcm {
	reg = <0x20000000 DT_SIZE_K(64)>;
};

&ocram {
	reg = <0x20200000 DT_SIZE_K(128)>;
};

&gpt1 {
	gptfreq = <12500000>;
};

&gpt2 {
	gptfreq = <12500000>;
};
