]> git.proxmox.com Git - mirror_qemu.git/commit
hw/misc: Add clock converter in NPCM7XX CLK module
authorHao Wu <wuhaotsh@google.com>
Fri, 8 Jan 2021 19:09:40 +0000 (11:09 -0800)
committerPeter Maydell <peter.maydell@linaro.org>
Tue, 12 Jan 2021 21:19:02 +0000 (21:19 +0000)
commitbcda710f6c44098fc828b61630449cabcce0ae55
tree6d81347e28d57b075903efcaf1767d14c8cdc608
parent5cab6d5a5abb165296a2b6d7c06e15ec1c99e0a6
hw/misc: Add clock converter in NPCM7XX CLK module

This patch allows NPCM7XX CLK module to compute clocks that are used by
other NPCM7XX modules.

Add a new struct NPCM7xxClockConverterState which represents a
single converter.  Each clock converter in CLK module represents one
converter in NPCM7XX CLK Module(PLL, SEL or Divider). Each converter
takes one or more input clocks and converts them into one output clock.
They form a clock hierarchy in the CLK module and are responsible for
outputing clocks for various other modules in an NPCM7XX SoC.

Each converter has a function pointer called "convert" which represents
the unique logic for that converter.

The clock contains two initialization information: ConverterInitInfo and
ConverterConnectionInfo. They represent the vertices and edges in the
clock diagram respectively.

Reviewed-by: Havard Skinnemoen <hskinnemoen@google.com>
Reviewed-by: Tyrone Ting <kfting@nuvoton.com>
Signed-off-by: Hao Wu <wuhaotsh@google.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 20210108190945.949196-2-wuhaotsh@google.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
hw/misc/npcm7xx_clk.c
include/hw/misc/npcm7xx_clk.h