clk: x86: add support for Lynxpoint LPSS clocks
authorMika Westerberg <mika.westerberg@linux.intel.com>
Fri, 18 Jan 2013 13:46:00 +0000 (13:46 +0000)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 23 Jan 2013 20:14:22 +0000 (21:14 +0100)
commit701190fd7419f6757c19cdc6473830c79debb3ae
tree9438f9a5df7efc89aa6da318adbb772c1a4225a9
parent3d48aab1d5035fac04fe2fbce63eedc345c0e92e
clk: x86: add support for Lynxpoint LPSS clocks

Intel Lynxpoint Low Power Subsystem hosts peripherals like UART, I2C and
SPI controllers. For most of these there is a configuration register that
allows software to enable and disable the functional clock. Disabling the
clock while the peripheral is not used saves power.

In order to take advantage of this we add a new clock gate of type
lpss_gate that just re-uses the ordinary clk_gate but in addition is able
to enumerate the base address register of the device using ACPI.

We then create a clock tree that models the Lynxpoint LPSS clocks using
these gates and fixed clocks so that we can pass clock rate to the drivers
as well.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Reviewed-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/clk/Makefile
drivers/clk/x86/Makefile [new file with mode: 0644]
drivers/clk/x86/clk-lpss.c [new file with mode: 0644]
drivers/clk/x86/clk-lpss.h [new file with mode: 0644]
drivers/clk/x86/clk-lpt.c [new file with mode: 0644]