mail archive of the barebox mailing list
 help / color / mirror / Atom feed
From: Sascha Hauer <s.hauer@pengutronix.de>
To: barebox@lists.infradead.org
Subject: [PATCH] common clk support
Date: Mon, 24 Sep 2012 13:04:29 +0200	[thread overview]
Message-ID: <1348484692-24993-1-git-send-email-s.hauer@pengutronix.de> (raw)

The following introduces common clk support based on the Linux common clk
support and switches the i.MX architecture over to use it.

For i.MX we now have real drivers for the clk support. I have taken the
approach that all clocks we need are enabled from the driver, so we do
not need to support all the gates which lowers the overhead of the clock
support quite a bit.

This series has been tested on all i.MX SoCs except the i.MX21 (which I still
don't have).

Sascha

----------------------------------------------------------------
Sascha Hauer (23):
      err.h: introduce IS_ERR_OR_NULL
      clk clkdev: Add clkdev matching based on physbase
      clk: initial common clk support
      commands: Add clk commands
      ARM i.MX: initial clk support
      ARM i.MX27: implement clk support
      ARM i.MX25: Switch to common clk support
      ARM i.MX5: Switch to common clk support
      ARM i.MX1: Switch to common clk support
      ARM i.MX31: Switch to common clk
      ARM i.MX6: Switch to common clk
      ARM i.MX21: Switch to common clk
      ARM i.MX35: Switch to common clk
      net fec: Switch to clk support
      serial i.MX: Switch to clk support
      spi i.MX: Switch to clk support
      ARM i.MX: Switch clocksource to clk_get
      mci i.MX ESDHC: Switch to clock support
      mci i.MX: Switch to clock support
      i2c i.MX: Switch to clock support
      video i.MX: Switch to clock support
      video i.MX IPU: Switch to clock support
      ARM i.MX: Remove old clock support

 arch/arm/Kconfig                           |    2 +
 arch/arm/mach-imx/Kconfig                  |    8 -
 arch/arm/mach-imx/Makefile                 |   21 +-
 arch/arm/mach-imx/clk-imx1.c               |  108 ++++++++
 arch/arm/mach-imx/clk-imx21.c              |  119 ++++++++
 arch/arm/mach-imx/clk-imx25.c              |  154 +++++++++++
 arch/arm/mach-imx/clk-imx27.c              |  154 +++++++++++
 arch/arm/mach-imx/clk-imx31.c              |  133 +++++++++
 arch/arm/mach-imx/clk-imx35.c              |  186 +++++++++++++
 arch/arm/mach-imx/clk-imx5.c               |  298 ++++++++++++++++++++
 arch/arm/mach-imx/clk-imx6.c               |  306 +++++++++++++++++++++
 arch/arm/mach-imx/clk-pfd.c                |  148 ++++++++++
 arch/arm/mach-imx/{speed.c => clk-pllv1.c} |   70 +++--
 arch/arm/mach-imx/clk-pllv2.c              |  164 +++++++++++
 arch/arm/mach-imx/clk-pllv3.c              |  386 ++++++++++++++++++++++++++
 arch/arm/mach-imx/clk.h                    |   66 +++++
 arch/arm/mach-imx/clko.c                   |   60 -----
 arch/arm/mach-imx/clocksource.c            |   18 +-
 arch/arm/mach-imx/imx1.c                   |    3 +-
 arch/arm/mach-imx/imx21.c                  |    1 +
 arch/arm/mach-imx/imx25.c                  |    3 +-
 arch/arm/mach-imx/imx27.c                  |    4 +-
 arch/arm/mach-imx/imx31.c                  |    3 +-
 arch/arm/mach-imx/imx35.c                  |    3 +-
 arch/arm/mach-imx/imx51.c                  |    3 +-
 arch/arm/mach-imx/imx53.c                  |    3 +-
 arch/arm/mach-imx/imx6.c                   |    3 +-
 arch/arm/mach-imx/include/mach/clkdev.h    |    7 +
 arch/arm/mach-imx/include/mach/clock.h     |   42 +--
 arch/arm/mach-imx/speed-imx1.c             |   91 -------
 arch/arm/mach-imx/speed-imx21.c            |  193 -------------
 arch/arm/mach-imx/speed-imx25.c            |  155 -----------
 arch/arm/mach-imx/speed-imx27.c            |  227 ----------------
 arch/arm/mach-imx/speed-imx31.c            |   79 ------
 arch/arm/mach-imx/speed-imx35.c            |  255 ------------------
 arch/arm/mach-imx/speed-imx51.c            |  311 ---------------------
 arch/arm/mach-imx/speed-imx53.c            |  236 ----------------
 arch/arm/mach-imx/speed-imx6.c             |  404 ----------------------------
 commands/Kconfig                           |    8 +
 commands/Makefile                          |    1 +
 commands/clk.c                             |  133 +++++++++
 drivers/clk/Kconfig                        |    3 +
 drivers/clk/Makefile                       |    2 +-
 drivers/clk/clk-divider.c                  |   98 +++++++
 drivers/clk/clk-fixed-factor.c             |   63 +++++
 drivers/clk/clk-fixed.c                    |   55 ++++
 drivers/clk/clk-mux.c                      |   77 ++++++
 drivers/clk/clk.c                          |  224 +++++++++++++++
 drivers/clk/clkdev.c                       |   47 ++++
 drivers/i2c/busses/i2c-imx.c               |   23 +-
 drivers/mci/imx-esdhc.c                    |   16 +-
 drivers/mci/imx.c                          |   15 +-
 drivers/net/fec_imx.c                      |   27 +-
 drivers/net/fec_imx.h                      |    1 +
 drivers/serial/serial_imx.c                |   18 +-
 drivers/spi/imx_spi.c                      |   13 +-
 drivers/video/imx-ipu-fb.c                 |   10 +-
 drivers/video/imx.c                        |   10 +-
 include/linux/clk.h                        |   42 +++
 include/linux/clkdev.h                     |    3 +
 include/linux/err.h                        |    5 +
 61 files changed, 3184 insertions(+), 2137 deletions(-)
 create mode 100644 arch/arm/mach-imx/clk-imx1.c
 create mode 100644 arch/arm/mach-imx/clk-imx21.c
 create mode 100644 arch/arm/mach-imx/clk-imx25.c
 create mode 100644 arch/arm/mach-imx/clk-imx27.c
 create mode 100644 arch/arm/mach-imx/clk-imx31.c
 create mode 100644 arch/arm/mach-imx/clk-imx35.c
 create mode 100644 arch/arm/mach-imx/clk-imx5.c
 create mode 100644 arch/arm/mach-imx/clk-imx6.c
 create mode 100644 arch/arm/mach-imx/clk-pfd.c
 rename arch/arm/mach-imx/{speed.c => clk-pllv1.c} (53%)
 create mode 100644 arch/arm/mach-imx/clk-pllv2.c
 create mode 100644 arch/arm/mach-imx/clk-pllv3.c
 create mode 100644 arch/arm/mach-imx/clk.h
 delete mode 100644 arch/arm/mach-imx/clko.c
 create mode 100644 arch/arm/mach-imx/include/mach/clkdev.h
 delete mode 100644 arch/arm/mach-imx/speed-imx1.c
 delete mode 100644 arch/arm/mach-imx/speed-imx21.c
 delete mode 100644 arch/arm/mach-imx/speed-imx25.c
 delete mode 100644 arch/arm/mach-imx/speed-imx27.c
 delete mode 100644 arch/arm/mach-imx/speed-imx31.c
 delete mode 100644 arch/arm/mach-imx/speed-imx35.c
 delete mode 100644 arch/arm/mach-imx/speed-imx51.c
 delete mode 100644 arch/arm/mach-imx/speed-imx53.c
 delete mode 100644 arch/arm/mach-imx/speed-imx6.c
 create mode 100644 commands/clk.c
 create mode 100644 drivers/clk/clk-divider.c
 create mode 100644 drivers/clk/clk-fixed-factor.c
 create mode 100644 drivers/clk/clk-fixed.c
 create mode 100644 drivers/clk/clk-mux.c
 create mode 100644 drivers/clk/clk.c

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

             reply	other threads:[~2012-09-24 11:05 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-24 11:04 Sascha Hauer [this message]
2012-09-24 11:04 ` [PATCH 01/23] err.h: introduce IS_ERR_OR_NULL Sascha Hauer
2012-09-24 11:04 ` [PATCH 02/23] clk clkdev: Add clkdev matching based on physbase Sascha Hauer
2012-09-26 16:02   ` Jean-Christophe PLAGNIOL-VILLARD
2012-09-26 17:25     ` Sascha Hauer
2012-09-26 18:53       ` Jean-Christophe PLAGNIOL-VILLARD
2012-09-26 19:09         ` Jean-Christophe PLAGNIOL-VILLARD
2012-09-26 19:08       ` Jean-Christophe PLAGNIOL-VILLARD
2012-09-26 21:31         ` Sascha Hauer
2012-09-24 11:04 ` [PATCH 03/23] clk: initial common clk support Sascha Hauer
2012-09-24 11:04 ` [PATCH 04/23] commands: Add clk commands Sascha Hauer
2012-09-24 11:04 ` [PATCH 05/23] ARM i.MX: initial clk support Sascha Hauer
2012-09-24 11:04 ` [PATCH 06/23] ARM i.MX27: implement " Sascha Hauer
2012-09-24 11:04 ` [PATCH 07/23] ARM i.MX25: Switch to common " Sascha Hauer
2012-09-24 11:04 ` [PATCH 08/23] ARM i.MX5: " Sascha Hauer
2012-09-24 11:36   ` Sascha Hauer
2012-09-24 11:04 ` [PATCH 09/23] ARM i.MX1: " Sascha Hauer
2012-09-24 11:04 ` [PATCH 10/23] ARM i.MX31: Switch to common clk Sascha Hauer
2012-09-24 11:04 ` [PATCH 11/23] ARM i.MX6: " Sascha Hauer
2012-09-24 11:04 ` [PATCH 12/23] ARM i.MX21: " Sascha Hauer
2012-09-24 11:04 ` [PATCH 13/23] ARM i.MX35: " Sascha Hauer
2012-09-24 11:04 ` [PATCH 14/23] net fec: Switch to clk support Sascha Hauer
2012-09-26 16:07   ` Jean-Christophe PLAGNIOL-VILLARD
2012-09-24 11:04 ` [PATCH 15/23] serial i.MX: " Sascha Hauer
2012-09-26 16:08   ` Jean-Christophe PLAGNIOL-VILLARD
2012-09-24 11:04 ` [PATCH 16/23] spi " Sascha Hauer
2012-09-24 11:04 ` [PATCH 17/23] ARM i.MX: Switch clocksource to clk_get Sascha Hauer
2012-09-24 11:04 ` [PATCH 18/23] mci i.MX ESDHC: Switch to clock support Sascha Hauer
2012-09-24 11:04 ` [PATCH 19/23] mci i.MX: " Sascha Hauer
2012-09-24 11:04 ` [PATCH 20/23] i2c " Sascha Hauer
2012-09-26 16:10   ` Jean-Christophe PLAGNIOL-VILLARD
2012-09-24 11:04 ` [PATCH 21/23] video " Sascha Hauer
2012-09-24 11:04 ` [PATCH 22/23] video i.MX IPU: " Sascha Hauer
2012-09-24 11:04 ` [PATCH 23/23] ARM i.MX: Remove old " Sascha Hauer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1348484692-24993-1-git-send-email-s.hauer@pengutronix.de \
    --to=s.hauer@pengutronix.de \
    --cc=barebox@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox