/*
 * Copyright (c) 2022 Linaro Limited
 *
 * SPDX-License-Identifier: Apache-2.0
 */

/* Clocks clean up config
 * Aim is to avoid conflict with specific default board configuration
 */

&clk_hse {
	status = "disabled";
	/delete-property/ hse-bypass;
	/delete-property/ clock-frequency;
	/delete-property/ hse-tcxo;
	/delete-property/ hse-div2;
};

&clk_hsi {
	status = "disabled";
	/delete-property/ hsi-div;
};

&clk_msi {
	status = "disabled";
	/delete-property/ msi-range;
};

&pll {
	/delete-property/ div-m;
	/delete-property/ mul-n;
	/delete-property/ div-p;
	/delete-property/ div-q;
	/delete-property/ div-r;
	/delete-property/ clocks;
	status = "disabled";
};

&rcc {
	/delete-property/ clocks;
	/delete-property/ clock-frequency;
};


/* Core set up
 * Aim of this part is to provide a base working clock config
 */

&clk_hse {
	status = "okay";
	clock-frequency = <DT_FREQ_M(32)>;
};

&clk_hsi {
	status = "okay";
};

&clk_lse {
	status = "okay";
};

&rcc {
	clocks = <&clk_hse>;
	clock-frequency = <DT_FREQ_M(32)>;
	cpu1-prescaler = <1>;
	cpu2-prescaler = <1>;
	ahb4-prescaler = <1>;
	apb1-prescaler = <1>;
	apb2-prescaler = <1>;
};

&i2c1 {
	/delete-property/ clocks;
	clocks = <&rcc STM32_CLOCK_BUS_APB1 0x00200000>,
			<&rcc STM32_SRC_HSI I2C1_SEL(2)>;
	status = "okay";
};

&lptim1 {
	clocks = <&rcc STM32_CLOCK_BUS_APB1 0x80000000>,
			<&rcc STM32_SRC_LSE LPTIM1_SEL(3)>;
	status = "okay";
};

&adc1 {
	/* Basic test only. Don't configure domain clock. */
	status = "okay";
};
