1. 22 Jan, 2016 2 commits
  2. 21 Jan, 2016 1 commit
  3. 21 Jul, 2015 1 commit
    • Simon Glass's avatar
      dm: Add a clock uclass · f26c8a8e
      Simon Glass authored
      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: default avatarSimon Glass <sjg@chromium.org>