[PATCH 00/10] OMAP: SCM/McBSP/clock: branch integration patches for 2.6.37

Paul Walmsley paul at pwsan.com
Fri Oct 1 17:34:45 EDT 2010


This series fixes several problems that appeared during branch
integration testing.  These patches are intended to be merged through
Tony's tree for 2.6.37.

Change summary:

Recently, the OMAP System Control Module function exports were
removed.  These are OMAP core-specific functions that should not be
used by drivers.  Unfortunately, several drivers used these functions,
and as a result, these can no longer be built as modules.  This series
resolves this problem by reimplementing or removing the OMAP SCM
accesses.  In the case of McBSP, three additional functions were added
to arch/arm/mach-omap2/mcbsp.c to handle the signal muxing and clock
framework interaction.  In the case of OMAP UDC, the code that
attempted to use the result of the SCM read was simply broken, so the
SCM read has been removed.  These changes fix a build breakage.  To
reduce the likelihood of future usage of the SCM code by drivers, the
SCM header files have been moved from plat-omap/include/plat to
mach-omap2 (as the SCM only exists on OMAP2+ systems).  The McBSP
parent fclk and signal muxing changes have received only light
testing, so any help from OMAP ASoc experts here is appreciated.

Several boards that are specific to certain OMAP SoC variants
have now been marked as such in Kconfig; this prevents them from
being built if support for the SoC that they use is not being
built.

plat-omap/common.c has been split.  OMAP2+ specific code (which had a
SCM dependency) has been moved into mach-omap2/common.c.  The 32KiHz
sync timer code has been moved into its own file.  The remainder of
the plat-omap/common.c code is deprecated.

Finally, a patch to reduce the amount of debugging generated by
the clock framework while it disables unused clocks is included.
According to Tim Bird, those debug messages are a significant
contributor to kernel boot time when debug-level messages are kept
enabled.

regards

- Paul

---

  text     data     bss     dec     hex         filename
5606503  438048 5610800 11655351         b1d8b7 vmlinux.omap2plus.orig
5607439  438848 5610800 11657087         b1df7f vmlinux.omap2plus.patched


Paul Walmsley (10):
      OMAP2+: Kconfig: disallow builds for boards that don't use the currently-selected SoC
      OMAP2420: CTRL: fix OMAP242X_CTRL_REGADDR macro
      OMAP2420: clock: add MCBSP_CLKS node and clkdev aliases
      OMAP2430: clock: add MCBSP_CLKS node and clkdev aliases
      OMAP3xxx: clock: add clkdev aliases for McBSP fclk source switching
      OMAP: McBSP: implement McBSP CLKR and FSR signal muxing via mach-omap2/mcbsp.c
      OMAP: McBSP: implement functional clock switching via clock framework
      OMAP: split plat-omap/common.c
      OMAP: control: move plat-omap/control.h to mach-omap2/control.h
      OMAP2+: clock: reduce the amount of standard debugging while disabling unused clocks


 arch/arm/mach-omap2/Kconfig                |    6 -
 arch/arm/mach-omap2/Makefile               |    3 
 arch/arm/mach-omap2/board-3430sdp.c        |    2 
 arch/arm/mach-omap2/board-4430sdp.c        |    3 
 arch/arm/mach-omap2/board-am3517evm.c      |    2 
 arch/arm/mach-omap2/board-apollon.c        |    2 
 arch/arm/mach-omap2/board-cm-t3517.c       |    2 
 arch/arm/mach-omap2/board-generic.c        |   16 +-
 arch/arm/mach-omap2/board-h4.c             |    2 
 arch/arm/mach-omap2/board-ldp.c            |    2 
 arch/arm/mach-omap2/board-omap3logic.c     |    2 
 arch/arm/mach-omap2/board-omap4panda.c     |    4 
 arch/arm/mach-omap2/clock.c                |    2 
 arch/arm/mach-omap2/clock2420_data.c       |   40 ++++
 arch/arm/mach-omap2/clock2430_data.c       |   64 ++++++
 arch/arm/mach-omap2/clock3xxx_data.c       |   12 +
 arch/arm/mach-omap2/clock44xx_data.c       |    2 
 arch/arm/mach-omap2/common.c               |  138 +++++++++++++
 arch/arm/mach-omap2/control.c              |    3 
 arch/arm/mach-omap2/control.h              |   18 +-
 arch/arm/mach-omap2/cpuidle34xx.c          |    2 
 arch/arm/mach-omap2/devices.c              |    3 
 arch/arm/mach-omap2/hsmmc.c                |    2 
 arch/arm/mach-omap2/id.c                   |    3 
 arch/arm/mach-omap2/mcbsp.c                |   83 ++++++++
 arch/arm/mach-omap2/mux.c                  |    8 -
 arch/arm/mach-omap2/pm24xx.c               |    2 
 arch/arm/mach-omap2/pm34xx.c               |    2 
 arch/arm/mach-omap2/prcm.c                 |    2 
 arch/arm/mach-omap2/serial.c               |    2 
 arch/arm/mach-omap2/sleep34xx.S            |    2 
 arch/arm/mach-omap2/usb-fs.c               |    6 -
 arch/arm/plat-omap/32ksynctimer.c          |  184 ++++++++++++++++++
 arch/arm/plat-omap/Makefile                |    2 
 arch/arm/plat-omap/clock.c                 |    5 
 arch/arm/plat-omap/common.c                |  291 ----------------------------
 arch/arm/plat-omap/devices.c               |    1 
 arch/arm/plat-omap/include/plat/mcbsp.h    |   22 ++
 arch/arm/plat-omap/include/plat/omap24xx.h |    2 
 arch/arm/plat-omap/mcbsp.c                 |    3 
 arch/arm/plat-omap/sram.c                  |    3 
 drivers/usb/gadget/omap_udc.c              |   18 --
 sound/soc/omap/omap-mcbsp.c                |  119 +++--------
 43 files changed, 633 insertions(+), 459 deletions(-)
 create mode 100644 arch/arm/mach-omap2/common.c
 rename arch/arm/{plat-omap/include/plat/control.h => mach-omap2/control.h} (97%)
 create mode 100644 arch/arm/plat-omap/32ksynctimer.c




More information about the linux-arm-kernel mailing list