Zephyr API Documentation  3.7.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
adi_max32_clock_control.h File Reference
#include <zephyr/drivers/clock_control.h>
#include <zephyr/dt-bindings/clock/adi_max32_clock.h>
#include <wrap_max32_sys.h>

Go to the source code of this file.

Data Structures

struct  max32_perclk
 Driver structure definition. More...
 

Macros

#define ADI_MAX32_SYSCLK_PRESCALER   DT_PROP_OR(DT_NODELABEL(gcr), sysclk_prescaler, 1)
 Get prescaler value if it defined

 
#define ADI_MAX32_CLK_IPO_FREQ   DT_PROP(DT_NODELABEL(clk_ipo), clock_frequency)
 
#define ADI_MAX32_CLK_ERFO_FREQ   DT_PROP(DT_NODELABEL(clk_erfo), clock_frequency)
 
#define ADI_MAX32_CLK_IBRO_FREQ   DT_PROP(DT_NODELABEL(clk_ibro), clock_frequency)
 
#define ADI_MAX32_CLK_ISO_FREQ   DT_PROP_OR(DT_NODELABEL(clk_iso), clock_frequency, 0)
 
#define ADI_MAX32_CLK_INRO_FREQ   DT_PROP(DT_NODELABEL(clk_inro), clock_frequency)
 
#define ADI_MAX32_CLK_ERTCO_FREQ   DT_PROP(DT_NODELABEL(clk_ertco), clock_frequency)
 
#define ADI_MAX32_CLK_EXTCLK_FREQ   DT_PROP_OR(DT_NODELABEL(clk_extclk), clock_frequency, 0)
 
#define DT_GCR_CLOCKS_CTRL   DT_CLOCKS_CTLR(DT_NODELABEL(gcr))
 
#define ADI_MAX32_SYSCLK_SRC   ADI_MAX32_CLK_IPO
 
#define ADI_MAX32_SYSCLK_FREQ   (ADI_MAX32_CLK_IPO_FREQ / ADI_MAX32_SYSCLK_PRESCALER)
 
#define ADI_MAX32_PCLK_FREQ   (ADI_MAX32_SYSCLK_FREQ / 2)
 
#define ADI_MAX32_GET_PRPH_CLK_FREQ(clk_src)
 

Macro Definition Documentation

◆ ADI_MAX32_CLK_ERFO_FREQ

#define ADI_MAX32_CLK_ERFO_FREQ   DT_PROP(DT_NODELABEL(clk_erfo), clock_frequency)

◆ ADI_MAX32_CLK_ERTCO_FREQ

#define ADI_MAX32_CLK_ERTCO_FREQ   DT_PROP(DT_NODELABEL(clk_ertco), clock_frequency)

◆ ADI_MAX32_CLK_EXTCLK_FREQ

#define ADI_MAX32_CLK_EXTCLK_FREQ   DT_PROP_OR(DT_NODELABEL(clk_extclk), clock_frequency, 0)

◆ ADI_MAX32_CLK_IBRO_FREQ

#define ADI_MAX32_CLK_IBRO_FREQ   DT_PROP(DT_NODELABEL(clk_ibro), clock_frequency)

◆ ADI_MAX32_CLK_INRO_FREQ

#define ADI_MAX32_CLK_INRO_FREQ   DT_PROP(DT_NODELABEL(clk_inro), clock_frequency)

◆ ADI_MAX32_CLK_IPO_FREQ

#define ADI_MAX32_CLK_IPO_FREQ   DT_PROP(DT_NODELABEL(clk_ipo), clock_frequency)

◆ ADI_MAX32_CLK_ISO_FREQ

#define ADI_MAX32_CLK_ISO_FREQ   DT_PROP_OR(DT_NODELABEL(clk_iso), clock_frequency, 0)

◆ ADI_MAX32_GET_PRPH_CLK_FREQ

#define ADI_MAX32_GET_PRPH_CLK_FREQ (   clk_src)
Value:
: 0)
#define ADI_MAX32_PRPH_CLK_SRC_IBRO
Definition: adi_max32_clock.h:18
#define ADI_MAX32_PRPH_CLK_SRC_EXTCLK
Definition: adi_max32_clock.h:17
#define ADI_MAX32_PRPH_CLK_SRC_IBRO_DIV8
Definition: adi_max32_clock.h:23
#define ADI_MAX32_PRPH_CLK_SRC_ISO
Definition: adi_max32_clock.h:22
#define ADI_MAX32_PRPH_CLK_SRC_PCLK
Clock source for peripheral interfaces like UART, WDT...
Definition: adi_max32_clock.h:16
#define ADI_MAX32_PRPH_CLK_SRC_INRO
Definition: adi_max32_clock.h:21
#define ADI_MAX32_PRPH_CLK_SRC_ERTCO
Definition: adi_max32_clock.h:20
#define ADI_MAX32_PRPH_CLK_SRC_ERFO
Definition: adi_max32_clock.h:19
#define ADI_MAX32_CLK_EXTCLK_FREQ
Definition: adi_max32_clock_control.h:47
#define ADI_MAX32_PCLK_FREQ
Definition: adi_max32_clock_control.h:85
#define ADI_MAX32_CLK_ERFO_FREQ
Definition: adi_max32_clock_control.h:41
#define ADI_MAX32_CLK_ERTCO_FREQ
Definition: adi_max32_clock_control.h:45
#define ADI_MAX32_CLK_INRO_FREQ
Definition: adi_max32_clock_control.h:44
#define ADI_MAX32_CLK_ISO_FREQ
Definition: adi_max32_clock_control.h:43
#define ADI_MAX32_CLK_IBRO_FREQ
Definition: adi_max32_clock_control.h:42

◆ ADI_MAX32_PCLK_FREQ

#define ADI_MAX32_PCLK_FREQ   (ADI_MAX32_SYSCLK_FREQ / 2)

◆ ADI_MAX32_SYSCLK_FREQ

#define ADI_MAX32_SYSCLK_FREQ   (ADI_MAX32_CLK_IPO_FREQ / ADI_MAX32_SYSCLK_PRESCALER)

◆ ADI_MAX32_SYSCLK_PRESCALER

#define ADI_MAX32_SYSCLK_PRESCALER   DT_PROP_OR(DT_NODELABEL(gcr), sysclk_prescaler, 1)

Get prescaler value if it defined

◆ ADI_MAX32_SYSCLK_SRC

#define ADI_MAX32_SYSCLK_SRC   ADI_MAX32_CLK_IPO

◆ DT_GCR_CLOCKS_CTRL

#define DT_GCR_CLOCKS_CTRL   DT_CLOCKS_CTLR(DT_NODELABEL(gcr))