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

/*
 * Warning: This overlay performs configuration from clean sheet.
 * It is assumed that it is applied after core_init.overlay file.
 */

&clk_hse {
	clock-frequency = <DT_FREQ_M(8)>; /* STLink 8MHz clock */
	hse-bypass;
	status = "okay";
};

&perck {
	clocks = <&rcc STM32_SRC_HSE CKPER_SEL(2)>;
	status = "okay";
};

&spi1 {
	/delete-property/ clocks;
	clocks = <&rcc STM32_CLOCK_BUS_APB2 0x00001000>,
		 <&rcc STM32_SRC_CKPER SPI123_SEL(4)>;
	status = "okay";
};
