1 /* 2 * Copyright (c) 2020 - 2024 Renesas Electronics Corporation and/or its affiliates 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 #include <zephyr/devicetree.h> 8 9 #ifndef BSP_CLOCK_CFG_H_ 10 #define BSP_CLOCK_CFG_H_ 11 #define BSP_CFG_CLOCKS_SECURE (0) /* Secure clock config */ 12 #define BSP_CFG_CLOCKS_OVERRIDE (0) /* Override clock config */ 13 #define BSP_CFG_CLOCK_OSCCLK_HZ DT_PROP_OR(DT_NODELABEL(oscclk), clock_frequency, 24000000) /* OSC 24000000Hz */ 14 #define BSP_CFG_CLOCK_PLL1_HZ (1100000000) /* PLL1 1100000000Hz */ 15 #define BSP_CFG_DIVPL1_SET_DIV (BSP_CLOCKS_PL1_DIV_1) /* ICLK Div /1 */ 16 #define BSP_CFG_CLOCK_ICLK_HZ DT_PROP_OR(DT_NODELABEL(iclk), clock_frequency, 1100000000) /* ICLK 1100000000Hz */ 17 #define BSP_CFG_CLOCK_PLL2_1600_HZ (1600000000) /* PLL2 1600000000Hz */ 18 #define BSP_CFG_DIVPL2B_SET_DIV (BSP_CLOCKS_PL2B_DIV_1) /* P0CLK Div /1 */ 19 #define BSP_CFG_CLOCK_P0CLK_HZ DT_PROP_OR(DT_NODELABEL(p0clk), clock_frequency, 100000000) /* P0CLK 100000000Hz */ 20 #define BSP_CFG_CLOCK_P4CLK_HZ DT_PROP_OR(DT_NODELABEL(p4clk), clock_frequency, 160000000) /* P4CLK 160000000Hz */ 21 #define BSP_CFG_CLOCK_P5CLK_HZ DT_PROP_OR(DT_NODELABEL(p5clk), clock_frequency, 200000000) /* P5CLK 200000000Hz */ 22 #define BSP_CFG_CLOCK_TSUCLK_HZ DT_PROP_OR(DT_NODELABEL(tsuclk), clock_frequency, 100000000) /* TSUCLK 100000000Hz */ 23 #define BSP_CFG_SEL_SDHI0_SET_SOURCE (BSP_CLOCKS_SOURCE_CLOCK_PLL2_266) /* SD0CLK Sel: 266MHz */ 24 #define BSP_CFG_DIVSDHI0_SET_DIV (BSP_CLOCKS_SDHI0_DIV_2) /* SD0CLK Div /2 */ 25 #define BSP_CFG_CLOCK_SD0CLK_HZ DT_PROP_OR(DT_NODELABEL(sd0clk), clock_frequency, 133333333) /* SD0CLK 133333333Hz */ 26 #define BSP_CFG_SEL_SDHI1_SET_SOURCE (BSP_CLOCKS_SOURCE_CLOCK_PLL2_266) /* SD1CLK Sel: 266MHz */ 27 #define BSP_CFG_DIVSDHI1_SET_DIV (BSP_CLOCKS_SDHI1_DIV_2) /* SD1CLK Div /2 */ 28 #define BSP_CFG_CLOCK_SD1CLK_HZ DT_PROP_OR(DT_NODELABEL(sd1clk), clock_frequency, 133333333) /* SD1CLK 133333333Hz */ 29 #define BSP_CFG_SEL_SDHI2_SET_SOURCE (BSP_CLOCKS_SOURCE_CLOCK_PLL2_266) /* SD2CLK Sel: 266MHz */ 30 #define BSP_CFG_DIVSDHI2_SET_DIV (BSP_CLOCKS_SDHI2_DIV_2) /* SD2CLK Div /2 */ 31 #define BSP_CFG_CLOCK_SD2CLK_HZ DT_PROP_OR(DT_NODELABEL(sd2clk), clock_frequency, 133333333) /* SD2CLK 133333333Hz */ 32 #define BSP_CFG_CLOCK_PLL3_HZ (1600000000) /* PLL3 1600000000Hz */ 33 #define BSP_CFG_CLOCK_M0CLK_HZ DT_PROP_OR(DT_NODELABEL(m0clk), clock_frequency, 200000000) /* M0CLK 200000000Hz */ 34 #define BSP_CFG_DIVPL3A_SET_DIV (BSP_CLOCKS_PL3A_DIV_1) /* P1CLK Div /1 */ 35 #define BSP_CFG_CLOCK_P1CLK_HZ DT_PROP_OR(DT_NODELABEL(p1clk), clock_frequency, 200000000) /* P1CLK 200000000Hz */ 36 #define BSP_CFG_DIVPL3B_SET_DIV (BSP_CLOCKS_PL3B_DIV_1) /* P2CLK Div /1 */ 37 #define BSP_CFG_CLOCK_P2CLK_HZ DT_PROP_OR(DT_NODELABEL(p2clk), clock_frequency, 100000000) /* P2CLK 100000000Hz */ 38 #define BSP_CFG_DIVPL3C_SET_DIV (BSP_CLOCKS_PL3C_DIV_1) /* P3CLK Div /1 */ 39 #define BSP_CFG_CLOCK_P3CLK_HZ DT_PROP_OR(DT_NODELABEL(p3clk), clock_frequency, 200000000) /* P3CLK 200000000Hz */ 40 #define BSP_CFG_CLOCK_ATCLK_HZ DT_PROP_OR(DT_NODELABEL(atclk), clock_frequency, 400000000) /* ATCLK 400000000Hz */ 41 #define BSP_CFG_CLOCK_ZTCLK_HZ DT_PROP_OR(DT_NODELABEL(ztclk), clock_frequency, 100000000) /* ZTCLK 100000000Hz */ 42 #define BSP_CFG_SELOCTA_SET_SOURCE (BSP_CLOCKS_SOURCE_CLOCK_PLL3_266) /* OCCLK Sel: 266MHz */ 43 #define BSP_CFG_DIVOCTA_SET_DIV (BSP_CLOCKS_OCTA_DIV_8) /* OCCLK Div /8 */ 44 #define BSP_CFG_CLOCK_OC0CLK_HZ DT_PROP_OR(DT_NODELABEL(oc0clk), clock_frequency, 33333333) /* OC0CLK 33333333Hz */ 45 #define BSP_CFG_CLOCK_OC1CLK_HZ DT_PROP_OR(DT_NODELABEL(oc1clk), clock_frequency, 16666666) /* OC1CLK 16666666Hz */ 46 #define BSP_CFG_SELSPI_SET_SOURCE (BSP_CLOCKS_SOURCE_CLOCK_PLL3_400) /* SPICLK Sel: 400MHz */ 47 #define BSP_CFG_DIVSPI_SET_DIV (BSP_CLOCKS_SPI_DIV_4) /* SPICLK Div /4 */ 48 #define BSP_CFG_CLOCK_SPI0CLK_HZ DT_PROP_OR(DT_NODELABEL(spi0clk), clock_frequency, 33333333) /* SPI0CLK 33333333Hz */ 49 #define BSP_CFG_CLOCK_SPI1CLK_HZ DT_PROP_OR(DT_NODELABEL(spi1clk), clock_frequency, 16666666) /* SPI1CLK 16666666Hz */ 50 #define BSP_CFG_CLOCK_PLL4_HZ (800000000) /* PLL4 800MHz */ 51 #define BSP_CFG_SELPL4_SET_SOURCE (BSP_CLOCKS_SOURCE_CLOCK_PLL4) /* Sel: PLL4 */ 52 #define BSP_CFG_CLOCK_S0CLK_HZ DT_PROP_OR(DT_NODELABEL(s0clk), clock_frequency, 400000000) /* S0CLK 400000000Hz */ 53 #define BSP_CFG_CLOCK_PLL6_HZ (500000000) /* PLL6 500000000Hz */ 54 #define BSP_CFG_DIVPL6A_SET_DIV (BSP_CLOCKS_PL6A_DIV_1) /* I2CLK Div /1 */ 55 #define BSP_CFG_CLOCK_I2CLK_HZ DT_PROP_OR(DT_NODELABEL(i2clk), clock_frequency, 250000000) /* I2CLK 250000000Hz */ 56 #define BSP_CFG_DIVPL6B_SET_DIV (BSP_CLOCKS_PL6B_DIV_1) /* I3CLK Div /1 */ 57 #define BSP_CFG_CLOCK_I3CLK_HZ DT_PROP_OR(DT_NODELABEL(i3clk), clock_frequency, 250000000) /* I3CLK 250000000Hz */ 58 #define BSP_CFG_CLOCK_HPCLK_HZ DT_PROP_OR(DT_NODELABEL(hpclk), clock_frequency, 250000000) /* HPCLK 250000000Hz */ 59 #define BSP_CFG_CLOCK_OSCCLK2_HZ DT_PROP_OR(DT_NODELABEL(osc2clk), clock_frequency, 8000000) /* OSC2 8000000Hz */ 60 #endif /* BSP_CLOCK_CFG_H_ */ 61