u-boot/drivers
Simon Glass f26c8a8e77 dm: Add a clock uclass
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>
2015-07-21 17:39:29 -06:00
..
bios_emulator biosemu: Do not free vga_info->BIOSImage when it is 0xc0000 2015-04-29 18:51:49 -06:00
block drivers: block: Remove the ata_piix driver 2015-07-14 18:03:20 -06:00
bootcount qe: move immap_qe.h from arch directory into common directory 2014-07-22 16:25:54 -07:00
clk dm: Add a clock uclass 2015-07-21 17:39:29 -06:00
core dm: Add support for generic system controllers (syscon) 2015-07-21 17:39:24 -06:00
cpu x86: Move MP initialization codes into a common place 2015-07-14 18:03:16 -06:00
crypto Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx 2015-03-05 20:50:30 -05:00
ddr driver/ddr/fsl: Add a hook to update SPD address 2015-07-20 11:44:35 -07:00
demo common: Make sure arch-specific map_sysmem() is defined 2015-04-18 11:11:09 -06:00
dfu dfu: nand: Verify writes 2015-03-30 23:24:38 -05:00
dma dma: keystone_nav: remove spurious qm_cfg verification 2014-11-06 11:04:39 -05:00
fpga fpga: xilinx: Show fpga info if defined 2015-01-21 10:25:43 +01:00
gpio dm: gpio: Add dm_gpio_request() to manually request a GPIO 2015-07-21 17:39:23 -06:00
hwmon dtt: add ds620 support 2015-04-10 14:23:23 +02:00
i2c exynos: i2c: Correct bug in pinmux selection 2015-07-10 21:13:48 +09:00
input i8042: Add keyboard enable logic in kbd_reset() 2015-04-18 11:11:16 -06:00
led dm: led: Add a driver for GPIO-controlled LEDs 2015-07-21 17:39:24 -06:00
memory ARM: keystone: aemif: move aemif driver to drivers/memory/ti-aemif.c 2014-06-19 17:53:58 -04:00
misc dm: Add a system reset uclass 2015-07-21 17:39:29 -06:00
mmc mmc: Add debug() output on read errors 2015-07-21 17:39:25 -06:00
mtd mtd: fix false positive "Offset exceeds device limit" error 2015-07-10 09:38:50 -04:00
net driver/ldpaa_eth:Avoid infinite loop in ldpaa_eth_rx 2015-07-20 11:44:37 -07:00
pci armv8/fsl-lsch3: device tree fixups for PCI stream IDs 2015-07-20 11:44:37 -07:00
pcmcia powerpc: mpc824x: remove MPC824X cpu support 2015-01-05 12:08:55 -05:00
power dm: pmic: Add functions to adjust PMIC registers 2015-07-21 17:39:27 -06:00
pwm pwm: imx: Remove unreachable code 2015-05-26 14:13:12 +02:00
qe QE/DeepSleep: add QE deepsleep support for mpc85xx 2015-04-21 10:19:19 -07:00
ram dm: Add support for RAM drivers 2015-07-21 17:39:27 -06:00
rtc dm: rtc: Support mc146818 driver in driver model 2015-07-14 18:03:16 -06:00
serial ns16550: Improve debug UART so it can work with 32-bit access 2015-07-21 17:39:28 -06:00
soc soc: keystone_serdes: generalize configuration mechanism 2014-10-23 11:27:28 -04:00
sound sandbox: exynos: Move CONFIG_SOUND_SANDBOX to Kconfig 2015-04-18 11:11:39 -06:00
spi dm: spi: Make local functions static 2015-07-21 17:39:27 -06:00
thermal thermal: imx_thermal: increase critical temperature threshold 2015-05-26 14:21:25 +02:00
tpm tpm: Support using driver model with I2C 2015-05-14 18:49:33 -06:00
twserial drivers: convert makefiles to Kbuild style 2013-10-31 13:26:01 -04:00
usb usb: Add EHCI support for Armada 38x (mvebu) 2015-07-10 14:55:50 +02:00
video video: vesa_fb: Look up VGA device by class instead of id 2015-07-14 18:03:18 -06:00
watchdog watchdog/imx_watchdog: do not set WCR_WDW 2015-03-25 16:52:16 +01:00
Kconfig dm: Add a clock uclass 2015-07-21 17:39:29 -06:00
Makefile dm: Add a clock uclass 2015-07-21 17:39:29 -06:00