1. 12 7月, 2012 4 次提交
    • R
      clk: add highbank clock support · 8d4d9f52
      Rob Herring 提交于
      This adds real clock support to Calxeda Highbank SOC using the common
      clock infrastructure.
      Signed-off-by: NRob Herring <rob.herring@calxeda.com>
      [mturquette@linaro.org: fixed up invalid writes to const struct member]
      Signed-off-by: NMike Turquette <mturquette@linaro.org>
      8d4d9f52
    • L
      clk: add versatile ICST307 driver · 91b87a47
      Linus Walleij 提交于
      The ICST307 VCO clock has a shared driver in the ARM
      architecture. This patch provides a wrapper into the common
      clock framework so we can use the implementation in the
      ARM architecture without duplicating the code until all
      ARM platforms using this VCO are moved over. At that point
      we can merge the driver from the ARM platform into the
      generic file altogether.
      
      Cc: Russell King <linux@arm.linux.org.uk>
      Cc: Mike Turquette <mturquette@ti.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      [mturquette@linaro.org: removed versatile Kconfig]
      Signed-off-by: NMike Turquette <mturquette@linaro.org>
      91b87a47
    • L
      ARM: u300: convert to common clock · 50667d63
      Linus Walleij 提交于
      This converts the U300 clock implementation over to use the common
      struct clk and moves the implementation down into drivers/clk.
      Since VCO isn't used in tree it was removed, it's not hard to
      put it back in if need be.
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      [mturquette@linaro.org: trivial Makefile conflict]
      Signed-off-by: NMike Turquette <mturquette@linaro.org>
      50667d63
    • M
      clk: wm831x: Add initial WM831x clock driver · f05259a6
      Mark Brown 提交于
      The WM831x and WM832x series of PMICs contain a flexible clocking
      subsystem intended to provide always on and system core clocks.  It
      features:
      
      - A 32.768kHz crystal oscillator which can optionally be used to pass
        through an externally generated clock.
      - A FLL which can be clocked from either the 32.768kHz oscillator or
        the CLKIN pin.
      - A CLKOUT pin which can bring out either the oscillator or the FLL
        output.
      - The 32.768kHz clock can also optionally be brought out on the GPIO
        pins of the device.
      
      This driver fully supports the 32.768kHz oscillator and CLKOUT.  The FLL
      is supported only in AUTO mode, the full flexibility of the FLL cannot
      currently be used.
      
      Due to a lack of access to systems where the core SoC has been converted
      to use the generic clock API this driver has been compile tested only.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      Signed-off-by: NMike Turquette <mturquette@linaro.org>
      f05259a6
  2. 13 5月, 2012 1 次提交
    • V
      SPEAr: clk: Add VCO-PLL Synthesizer clock · 55b8fd4f
      Viresh Kumar 提交于
      All SPEAr SoC's contain PLLs. Their Fout is derived based on following equations
      
      - In normal mode
        vco = (2 * M[15:8] * Fin)/N
      
      - In Dithered mode
        vco = (2 * M[15:0] * Fin)/(256 * N)
      
      pll_rate = vco/2^p
      
      vco and pll are very closely bound to each other,
      "vco needs to program: mode, m & n" and "pll needs to program p",
      both share common enable/disable logic and registers.
      
      This patch adds in support for this type of clock.
      Signed-off-by: NViresh Kumar <viresh.kumar@st.com>
      Reviewed-by: NMike Turquette <mturquette@linaro.org>
      55b8fd4f
  3. 09 5月, 2012 2 次提交
  4. 17 3月, 2012 2 次提交
    • M
      clk: basic clock hardware types · 9d9f78ed
      Mike Turquette 提交于
      Many platforms support simple gateable clocks, fixed-rate clocks,
      adjustable divider clocks and multi-parent multiplexer clocks.
      
      This patch introduces basic clock types for the above-mentioned hardware
      which share some common characteristics.
      
      Based on original work by Jeremy Kerr and contribution by Jamie Iles.
      Dividers and multiplexor clocks originally contributed by Richard Zhao &
      Sascha Hauer.
      Signed-off-by: NMike Turquette <mturquette@linaro.org>
      Signed-off-by: NMike Turquette <mturquette@ti.com>
      Reviewed-by: NAndrew Lunn <andrew@lunn.ch>
      Tested-by: NAndrew Lunn <andrew@lunn.ch>
      Reviewed-by: NRob Herring <rob.herring@calxeda.com>
      Cc: Russell King <linux@arm.linux.org.uk>
      Cc: Jeremy Kerr <jeremy.kerr@canonical.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Arnd Bergman <arnd.bergmann@linaro.org>
      Cc: Paul Walmsley <paul@pwsan.com>
      Cc: Shawn Guo <shawn.guo@freescale.com>
      Cc: Sascha Hauer <s.hauer@pengutronix.de>
      Cc: Jamie Iles <jamie@jamieiles.com>
      Cc: Richard Zhao <richard.zhao@linaro.org>
      Cc: Saravana Kannan <skannan@codeaurora.org>
      Cc: Magnus Damm <magnus.damm@gmail.com>
      Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
      Cc: Linus Walleij <linus.walleij@stericsson.com>
      Cc: Stephen Boyd <sboyd@codeaurora.org>
      Cc: Amit Kucheria <amit.kucheria@linaro.org>
      Cc: Deepak Saxena <dsaxena@linaro.org>
      Cc: Grant Likely <grant.likely@secretlab.ca>
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      9d9f78ed
    • M
      clk: introduce the common clock framework · b2476490
      Mike Turquette 提交于
      The common clock framework defines a common struct clk useful across
      most platforms as well as an implementation of the clk api that drivers
      can use safely for managing clocks.
      
      The net result is consolidation of many different struct clk definitions
      and platform-specific clock framework implementations.
      
      This patch introduces the common struct clk, struct clk_ops and an
      implementation of the well-known clock api in include/clk/clk.h.
      Platforms may define their own hardware-specific clock structure and
      their own clock operation callbacks, so long as it wraps an instance of
      struct clk_hw.
      
      See Documentation/clk.txt for more details.
      
      This patch is based on the work of Jeremy Kerr, which in turn was based
      on the work of Ben Herrenschmidt.
      Signed-off-by: NMike Turquette <mturquette@linaro.org>
      Signed-off-by: NMike Turquette <mturquette@ti.com>
      Reviewed-by: NThomas Gleixner <tglx@linutronix.de>
      Tested-by: NAndrew Lunn <andrew@lunn.ch>
      Reviewed-by: Rob Herring <rob.herring <at> calxeda.com>
      Cc: Russell King <linux@arm.linux.org.uk>
      Cc: Jeremy Kerr <jeremy.kerr@canonical.com>
      Cc: Arnd Bergman <arnd.bergmann@linaro.org>
      Cc: Paul Walmsley <paul@pwsan.com>
      Cc: Shawn Guo <shawn.guo@freescale.com>
      Cc: Sascha Hauer <s.hauer@pengutronix.de>
      Cc: Richard Zhao <richard.zhao@linaro.org>
      Cc: Saravana Kannan <skannan@codeaurora.org>
      Cc: Magnus Damm <magnus.damm@gmail.com>
      Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
      Cc: Linus Walleij <linus.walleij@stericsson.com>
      Cc: Stephen Boyd <sboyd@codeaurora.org>
      Cc: Amit Kucheria <amit.kucheria@linaro.org>
      Cc: Deepak Saxena <dsaxena@linaro.org>
      Cc: Grant Likely <grant.likely@secretlab.ca>
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      b2476490
  5. 26 11月, 2010 1 次提交