[R/master] Arm multiplatform support

Paolo Pisati paolo.pisati at canonical.com
Mon Jan 28 23:24:15 UTC 2013


Two of the goals set for Raring arm were to:

a) fold omap3 and omap4 in a single branch
b) ship a single kernel with multi Soc support

so here it is the first batch of patches to:

1) collapse omap3 and omap4 support in master
2) give our kernel arm multiplatform support (TI omap3/4 and Freescale imx6 ATM)
3) enable DTBs for multiple boards support (only needed for imx ATM)

Some comments:

- the Tony Lindgren (9) patches are the actual OMAP multiplatform support (or
  actually the missing bits that didn't make the 3.8 window) and are slated for a
  3.9 inclusion:

http://git.kernel.org/?p=linux/kernel/git/tmlind/linux-omap.git;a=shortlog;h=refs/heads/omap-for-v3.9/multiplatform-v2

- the Andy Green (3) patches are not strictly necessary, but are the only way to
  get a fixed MAC address on pandaboards instead of a random one at every
  reboot, and we are already carrying them as part of the omap4 branch:

http://kernel.ubuntu.com/git?p=ubuntu/ubuntu-quantal.git;a=commit;h=f7d0f1eda6a4305fbc4e8d4a41d003ef5b2daf27
http://kernel.ubuntu.com/git?p=ubuntu/ubuntu-quantal.git;a=commit;h=7fb188d909291bc4f6dcccf729684bc69168da3f
http://kernel.ubuntu.com/git?p=ubuntu/ubuntu-quantal.git;a=commit;h=7027eb61ef4d8e676327ab15b3b904b7403c6799

The rest are config changes, plus a modification to the way we handle DTBs so we
can specify more than one file.

Main issues with this pull:

omap:
- CPU_FREQ was disabled since mainline is missing some critical pieces for omap4 (and
  it leds to all kinds of panics on boot):

http://www.mail-archive.com/linux-omap@vger.kernel.org/msg83951.html

- omap4 pvr driver (3d hw accelerated) is not supported ATM (but vanilla /dev/fb
  works fine)

imx6:
- USB_SUSPEND was disabled since it broke usb (but it was ok in 3.7, regression)

- sata was working in 3.7 + 1 patch, but it doesn't work in 3.8
  (another regression)

- video output is not working ATM

Last but not least, the generated kernel is still called '-omap' so you need
some tweaking to flash-kernel to install it on imx6, and i would like to rename
it as '-arm' in the future, any thoughts?

As you can imagine it's still a big work in progress but i wanted to pull it now
so we can get some testing, feedback and user space people can do their
plumbing.

Enjoy.

The following changes since commit f4ea18eb86c8418ccde4e5278d6e48b2ce563afa:

  UBUNTU: [Config] Move 9p modules into generic package (2013-01-28 11:53:20 -0800)

are available in the git repository at:

  git://kernel.ubuntu.com/ppisati/ubuntu-raring.git multiplatform

for you to fetch changes up to 9de183028054c9f07c6a1d2566cb22f534d7b374:

  UBUNTU: [Config] SPI_IMX=m (2013-01-28 21:36:47 +0100)

----------------------------------------------------------------
Andy Green (3):
      ARM: OMAP2+: add cpu id register to MAC address helper
      ARM: omap2 add mac address allocation register api
      ARM: omap2 panda register ethernet and wlan for automatic mac allocation

Paolo Pisati (19):
      UBUNTU: SAUCE: davinci: vpss: compilation fix
      UBUNTU: [Config] enable TI OMAP4 support (Pandaboard/ES)
      UBUNTU: [Config] OMAP_USB2=y (since TWL6030_USB depends on it)
      UBUNTU: [Config] enable Freescale IMX6 support (SabreLite)
      UBUNTU: [Config] SERIAL_IMX_CONSOLE=y
      UBUNTU: [Config] MMC_*_IMX=y
      UBUNTU: [Config] disable USB_SUSPEND
      UBUNTU: [Config] USB_MXS_PHY=y
      UBUNTU: [Config] USB_CHIPIDEA=y
      UBUNTU: SAUCE: DTB: add support for multiple DTBs
      UBUNTU: SAUCE: DTB: build imx6q-sabrelite
      UBUNTU: SAUCE: DTB: build beaglexm
      UBUNTU: SAUCE: DTB: build panda/panda es
      UBUNTU: [Config] disable CPU_FREQ
      UBUNTU: [Config] PANEL_TFP410=y (video DVI output)
      UBUNTU: [Config] SND_OMAP_SOC*=y
      UBUNTU: [Config] SND_IMX_SOC*=y
      UBUNTU: [Config] I2C_IMX=y
      UBUNTU: [Config] SPI_IMX=m

Tony Lindgren (9):
      ARM: OMAP2+: Limit omap initcalls to omap only on multiplatform kernels
      ARM: OMAP2+: Use omap initcalls
      ARM: OMAP: Fix i2c cmdline initcall for multiplatform
      ARM: OMAP: Fix dmaengine init for multiplatform
      ARM: OMAP2+: Add multiplatform debug_ll support
      ARM: OMAP2+: Disable code that currently does not work with multiplaform
      ARM: OMAP2+: Enable ARCH_MULTIPLATFORM support
      ARM: OMAP2+: Add minimal support for booting vexpress
      ARM: OMAP2+: Remove now obsolete uncompress.h and debug-macro.S

 arch/arm/Kconfig                                                              | 13 ++++++--
 arch/arm/Kconfig.debug                                                        | 56 ++++++++++++++++++++++++++++++++
 arch/arm/configs/omap2plus_defconfig                                          | 6 +++-
 arch/arm/{mach-omap2/include/mach/debug-macro.S => include/debug/omap2plus.S} | 137 +++++++++++++++++++++++++++++++++++++++++++++--------------------------------
 arch/arm/mach-omap1/dma.c                                                     | 18 +++++++++--
 arch/arm/mach-omap1/i2c.c                                                     | 6 ++++
 arch/arm/mach-omap2/Kconfig                                                   | 25 +++++++++++++-
 arch/arm/mach-omap2/Makefile                                                  | 3 ++
 arch/arm/mach-omap2/board-omap3beagle.c                                       | 2 +-
 arch/arm/mach-omap2/board-omap4panda.c                                        | 14 ++++++++
 arch/arm/mach-omap2/board-rx51-video.c                                        | 3 +-
 arch/arm/mach-omap2/clock2xxx.c                                               | 2 +-
 arch/arm/mach-omap2/clock3xxx.c                                               | 2 +-
 arch/arm/mach-omap2/common.h                                                  | 2 ++
 arch/arm/mach-omap2/devices.c                                                 | 93 ++++++++++++++++++++++++++++++++++++++++++++++++++--
 arch/arm/mach-omap2/dma.c                                                     | 23 +++++++++++--
 arch/arm/mach-omap2/drm.c                                                     | 2 +-
 arch/arm/mach-omap2/emu.c                                                     | 2 +-
 arch/arm/mach-omap2/fb.c                                                      | 4 +--
 arch/arm/mach-omap2/gpio.c                                                    | 5 +--
 arch/arm/mach-omap2/gpmc.c                                                    | 4 +--
 arch/arm/mach-omap2/hdq1w.c                                                   | 3 +-
 arch/arm/mach-omap2/hwspinlock.c                                              | 2 +-
 arch/arm/mach-omap2/i2c.c                                                     | 5 +++
 arch/arm/mach-omap2/id.c                                                      | 40 +++++++++++++++++++++++
 arch/arm/mach-omap2/id.h                                                      | 1 +
 arch/arm/mach-omap2/include/mach/serial.h                                     | 37 ---------------------
 arch/arm/mach-omap2/include/mach/uncompress.h                                 | 176 ---------------------------------------------------------------------------------------------------
 arch/arm/mach-omap2/mcbsp.c                                                   | 3 +-
 arch/arm/mach-omap2/omap-iommu.c                                              | 2 +-
 arch/arm/mach-omap2/omap2-restart.c                                           | 3 +-
 arch/arm/mach-omap2/omap4-common.c                                            | 4 +--
 arch/arm/mach-omap2/omap_device.c                                             | 5 +--
 arch/arm/mach-omap2/omap_hwmod.c                                              | 2 +-
 arch/arm/mach-omap2/omap_phy_internal.c                                       | 2 +-
 arch/arm/mach-omap2/opp3xxx_data.c                                            | 2 +-
 arch/arm/mach-omap2/opp4xxx_data.c                                            | 2 +-
 arch/arm/mach-omap2/pm-debug.c                                                | 2 +-
 arch/arm/mach-omap2/pm.c                                                      | 2 +-
 arch/arm/mach-omap2/pmu.c                                                     | 2 +-
 arch/arm/mach-omap2/prm3xxx.c                                                 | 2 +-
 arch/arm/mach-omap2/prm44xx.c                                                 | 2 +-
 arch/arm/mach-omap2/serial.c                                                  | 2 +-
 arch/arm/mach-omap2/smartreflex-class3.c                                      | 2 +-
 arch/arm/mach-omap2/soc.h                                                     | 29 +++++++++++++++++
 arch/arm/mach-omap2/timer.c                                                   | 2 +-
 arch/arm/mach-omap2/wd_timer.c                                                | 2 +-
 arch/arm/plat-omap/Kconfig                                                    | 32 +-----------------
 arch/arm/plat-omap/Makefile                                                   | 2 ++
 arch/arm/plat-omap/i2c.c                                                      | 3 +-
 arch/arm/plat-omap/include/plat/i2c.h                                         | 6 ++++
 debian.master/config/amd64/config.common.amd64                                | 7 ++++
 debian.master/config/armhf/config.common.armhf                                | 2 ++
 debian.master/config/armhf/config.flavour.highbank                            | 24 ++++++++++++--
 debian.master/config/armhf/config.flavour.omap                                | 27 ++++++++++++++--
 debian.master/config/config.common.ubuntu                                     | 87 ++++++++++++++++++++++++++++++++++++++-----------
 debian.master/config/i386/config.common.i386                                  | 7 ++++
 debian.master/rules.d/armhf.mk                                                | 1 +
 debian/rules.d/2-binary-arch.mk                                               | 13 ++++----
 drivers/crypto/omap-sham.c                                                    | 3 ++
 drivers/dma/omap-dma.c                                                        | 20 +-----------
 drivers/media/platform/davinci/vpss.c                                         | 1 -
 drivers/media/rc/Kconfig                                                      | 2 +-
 drivers/staging/tidspbridge/Kconfig                                           | 2 +-
 64 files changed, 597 insertions(+), 400 deletions(-)
 rename arch/arm/{mach-omap2/include/mach/debug-macro.S => include/debug/omap2plus.S} (56%)
 delete mode 100644 arch/arm/mach-omap2/include/mach/uncompress.h

-- 
bye,
p.




More information about the kernel-team mailing list