mirror of
https://git.codelinaro.org/clo/qsdk/oss/boot/u-boot-2016.git
synced 2025-12-10 07:44:53 +01:00
Clocks are an important feature of platforms and have become increasing complex with time. Most modern SoCs have multiple PLLs and dozens of clock dividers which distribute clocks to on-chip peripherals. Some SoC implementations have a clock API which is private to that SoC family, e.g. Tegra and Exynos. This is useful but it would be better to have a common API that can be understood and used throughout U-Boot. Add a simple clock API as a starting point. It supports querying and setting the rate of a clock. Each clock is a device. To reduce memory and processing overhead the concept of peripheral clocks is provided. These do not need to be explicit devices - it is possible to write a driver that can adjust the I2C clock (for example) without an explicit I2C clock device. This can dramatically reduce the number of devices (and associated overhead) in a complex SoC. Clocks are referenced by a number, and it is expected that SoCs will define that numbering themselves via an enum. Signed-off-by: Simon Glass <sjg@chromium.org> |
||
|---|---|---|
| .. | ||
| basic | ||
| kconfig | ||
| .gitignore | ||
| binutils-version.sh | ||
| checkpatch.pl | ||
| checkstack.pl | ||
| cleanpatch | ||
| docproc.c | ||
| dtc-version.sh | ||
| fill_scrapyard.py | ||
| gcc-stack-usage.sh | ||
| gcc-version.sh | ||
| get_maintainer.pl | ||
| Kbuild.include | ||
| kernel-doc | ||
| ld-version.sh | ||
| Lindent | ||
| mailmapper | ||
| Makefile | ||
| Makefile.autoconf | ||
| Makefile.build | ||
| Makefile.clean | ||
| Makefile.extrawarn | ||
| Makefile.host | ||
| Makefile.lib | ||
| Makefile.spl | ||
| Makefile.uncmd_spl | ||
| mkmakefile | ||
| objdiff | ||
| setlocalversion | ||
| show-gnu-make | ||