mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-28 08:35:38 +00:00

The CDCE913 and CDCEL913 devices are modular PLL-based, low cost, high performance , programmable clock synthesizers. They generate upto 3 output clocks from a single input frequency. Each output can be programmed for any clock-frequency. Adding support for the same. Reviewed-by: Tom Rini <trini@konsulko.com> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
43 lines
929 B
C
43 lines
929 B
C
/*
|
|
* clk-synthesizer.h
|
|
*
|
|
* Clock synthesizer header
|
|
*
|
|
* Copyright (C) 2016, Texas Instruments, Incorporated - http://www.ti.com/
|
|
*
|
|
* SPDX-License-Identifier: GPL-2.0+
|
|
*/
|
|
|
|
#ifndef __CLK_SYNTHESIZER_H
|
|
#define __CLK_SYNTHESIZER_H
|
|
|
|
#include <common.h>
|
|
|
|
#define CLK_SYNTHESIZER_ID_REG 0x0
|
|
#define CLK_SYNTHESIZER_XCSEL 0x05
|
|
#define CLK_SYNTHESIZER_MUX_REG 0x14
|
|
#define CLK_SYNTHESIZER_PDIV2_REG 0x16
|
|
#define CLK_SYNTHESIZER_PDIV3_REG 0x17
|
|
|
|
#define CLK_SYNTHESIZER_BYTE_MODE 0x80
|
|
|
|
/**
|
|
* struct clk_synth: This structure holds data neeed for configuring
|
|
* for clock synthesizer.
|
|
* @id: The id of synthesizer
|
|
* @capacitor: value of the capacitor attached
|
|
* @mux: mux settings.
|
|
* @pdiv2: Div to be applied to second output
|
|
* @pdiv3: Div to be applied to third output
|
|
*/
|
|
struct clk_synth {
|
|
u32 id;
|
|
u32 capacitor;
|
|
u32 mux;
|
|
u32 pdiv2;
|
|
u32 pdiv3;
|
|
};
|
|
|
|
int setup_clock_synthesizer(struct clk_synth *data);
|
|
|
|
#endif
|