[U-Boot] [PATCH v1 0/25] Add Marvell Armada XP MV78460 SoC support

Jagan Teki
2014-07-13T16:15:51Z

On Fri, Jun 27, 2014 at 3:48 PM, Prafulla Wadaskar <prafulla@marvell.com> wrote:
>
>
>> -----Original Message-----
>> From: Stefan Roese [mailto:sr at denx.de]
>> Sent: 27 June 2014 15:25
>> To: u-boot at lists.denx.de
>> Cc: Prafulla Wadaskar; trini at ti.com
>> Subject: [PATCH v1 0/25] Add Marvell Armada XP MV78460
>> SoC support
>>
>>
>> This patch series adds support for the Marvell Armada
>> XP SoC's. Specifically
>> the MV78460.
>>
>> Basic support for the db-78460-bp evaluation board is
>> added. Supporting the
>> following interfaces:
>> - UART
>> - SPI (including SPI NOR flash)
>> - I2C
>> - Ethernet (neta)
>>
>> While doing this port, I tried to consolidate common
>> Marvell code into
>> the arch/arm/mvebu-common directory. This directory
>> should be used to
>> collect more common code for the MVEBU SoC's (Dove,
>> Kirkwood, Armada 370,
>> Armada 380, Armada XP). I started with Kirkwood and
>> some of its
>> interfaces. Dove is definitely a candidate to move some
>> of its code
>> into thise directory as well.
>>
>> Because of the renaming of some functions from kirkwood
>> to mvebu (to make
>> them better usable on other MVEBU SoCs), this patch
>> series not only
>> touches the ARM SoC specific files (in arch/arm/...).
>> But also some
>> device drivers (e.g. SPI, I2C). Separating these driver
>> specific patches
>> into different patches that are not depending on this
>> ARM patch series
>> seems hard if not impossible. Thats why I would really
>> like to get this
>> patch series to get applied completely be one
>> custodian. Not sure if
>> this could / should go through Tom directly? Only if
>> all the subsystem
>> custodians have given their "Acked-by ..." of course.
>
> Hi Stefan,
> I agree with you, since this patch series have huge changes it may go to Tom directly, I will review, test and provide ack/nack accordingly.
>
>>
>> Testing on Kirkwood based boards would be greatly
>> appreciated. So anyone with
>> access to some of those board, please give this patch
>> series a try. I really
>> hope that I didn't break anything while merging some of
>> the code into the
>> common mvebu directory.
>
> I will certainly help to test testing this stuff on all possible boards that I can access.
>
>>
>> Please note that this Armada XP port still requires the
>> "Binary Header"
>> (bin_hdr) from the Marvell U-Boot tree to be included
>> as a binary blob
>> into the resulting image (u-boot.kwb) that can be
>> booted by the MVEBU
>> BootROM. This binary bin_hdr is usually responsible for
>> the DDR3
>> controller configuration and the DDR3 training. One way
>> to extract this
>> bin_hdr binary from an existing Marvell boot image
>> right now is to use
>> the "kwbimage" tool from Barebox. Please refer to the
>> documentation
>> thats available there for more details.
>
> Finally, last but not least, may thanks for your efforts and all the best for smooth migration ahead.
>
> Regards...
> Prafulla . . .
>
>>
>> Thanks,
>> Stefan
>>
>>
>> Stefan Roese (25):
>> sf: Add M25PX64 SPI NOR flash ID
>> arm: kirkwood: spi.h: Add some missing parenthesis
>> spi: kirkwood_spi.c: Some fixes and cleanup
>> spi: kirkwood_spi.c: Make global variable static
>> spi: kirkwood_spi.c: cosmetic: Fix minor coding style
>> issues

I took these spi stuff patches, rest of spi require dependencies - So I Acked.

Pls- Tom or someone push those as well while taking this series.

>> arm: kirkwood: Move some SoC files into new
>> arch/arm/mvebu-common
>> arm: marvell: Move arch/kirkwood.h to arch/soc.h
>> arm: marvell: Move arch-kirkwood/spi.h to arch-
>> mvebu/spi.h
>> arm: marvell: Rework timer.c to make it usable for
>> other MVEBU
>> platforms
>> arm: mvebu: Add common mbus functions to use on
>> Marvell SoCs
>> spi: kirkwood_spi.c: Compile MPP (pin-mux) only for
>> kirkwood SoC's
>> arm: marvell: Extract kirkwood gpio functions into
>> new common file
>> gpio.c
>> spi: kirkwood_spi.c: Change KW_SPI_BASE to
>> MVEBU_SPI_BASE
>> arm: kirkwood: Change naming of dram functions from
>> km_foo() to
>> mvebu_foo()
>> net: mvneta.c: Add support for the ethernet
>> controller of the Marvell
>> Armada XP SoC
>> net: phy.h: Make PHY autonegotiation timeout
>> configurable
>> i2c: mvtwsi: Add support for Marvell Armada XP
>> arm: armada-xp: Add basic support for Marvell Armada
>> XP SoC
>> arm: armada-xp: Add basic support for the Marvell DB-
>> 78460-BP board
>> arm: kirkwood: Remove some dead code from cpu.c
>> arm: kirkwood: Use mvebu new common mbus API
>> tools/kwboot: Sync with latest barebox version to
>> support Armada XP
>> tools: Compile kwboot for Marvell Armada XP as those
>> SoCs are now
>> supported
>> tools: kwbimage: Add image version 1 support for
>> Armada XP / 370
>> Makefile: Add CONFIG_BUILD_TARGET to automatically
>> build an special
>> image
>>
>> Makefile |
>> 9 +
>> README |
>> 8 +
>> arch/arm/cpu/arm926ejs/kirkwood/Makefile |
>> 4 +-
>> arch/arm/cpu/arm926ejs/kirkwood/cpu.c |
>> 174 +--
>> arch/arm/cpu/arm926ejs/kirkwood/mpp.c |
>> 2 +-
>> arch/arm/cpu/armv7/armada-xp/Makefile |
>> 7 +
>> arch/arm/cpu/armv7/armada-xp/cpu.c |
>> 186 +++
>> arch/arm/include/asm/arch-armada-xp/config.h |
>> 80 +
>> arch/arm/include/asm/arch-armada-xp/cpu.h |
>> 103 ++
>> arch/arm/include/asm/arch-armada-xp/soc.h |
>> 57 +
>> arch/arm/include/asm/arch-kirkwood/config.h |
>> 2 +-
>> arch/arm/include/asm/arch-kirkwood/cpu.h |
>> 71 +-
>> arch/arm/include/asm/arch-kirkwood/gpio.h |
>> 16 +-
>> .../asm/arch-kirkwood/{kirkwood.h => soc.h} |
>> 25 +-
>> .../asm/{arch-kirkwood => arch-mvebu}/spi.h |
>> 8 +-
>> arch/arm/mvebu-common/Makefile |
>> 12 +
>> .../arm926ejs/kirkwood => mvebu-common}/dram.c |
>> 63 +-
>> arch/arm/mvebu-common/gpio.c |
>> 30 +
>> arch/arm/mvebu-common/mbus.c |
>> 477 ++++++
>> .../arm926ejs/kirkwood => mvebu-common}/timer.c |
>> 92 +-
>> board/LaCie/net2big_v2/net2big_v2.c |
>> 8 +-
>> board/LaCie/netspace_v2/netspace_v2.c |
>> 8 +-
>> board/LaCie/wireless_space/wireless_space.c |
>> 8 +-
>> board/Marvell/db-78460-bp/Makefile |
>> 7 +
>> board/Marvell/db-78460-bp/db-78460-bp.c |
>> 120 ++
>> board/Marvell/db-78460-bp/kwbimage.cfg |
>> 12 +
>> board/Marvell/dreamplug/dreamplug.c |
>> 10 +-
>> board/Marvell/guruplug/guruplug.c |
>> 10 +-
>> board/Marvell/mv88f6281gtw_ge/mv88f6281gtw_ge.c |
>> 10 +-
>> board/Marvell/openrd/openrd.c |
>> 10 +-
>> board/Marvell/rd6281a/rd6281a.c |
>> 10 +-
>> board/Marvell/sheevaplug/sheevaplug.c |
>> 10 +-
>> board/Seagate/dockstar/dockstar.c |
>> 12 +-
>> board/Seagate/goflexhome/goflexhome.c |
>> 12 +-
>> board/buffalo/lsxl/lsxl.c |
>> 10 +-
>> board/cloudengines/pogo_e02/pogo_e02.c |
>> 10 +-
>> board/d-link/dns325/dns325.c |
>> 8 +-
>> board/iomega/iconnect/iconnect.c |
>> 10 +-
>> board/karo/tk71/tk71.c |
>> 10 +-
>> board/keymile/km_arm/km_arm.c |
>> 10 +-
>> board/raidsonic/ib62x0/ib62x0.c |
>> 10 +-
>> boards.cfg |
>> 1 +
>> drivers/block/mvsata_ide.c |
>> 2 +-
>> drivers/gpio/kw_gpio.c |
>> 2 +-
>> drivers/i2c/mvtwsi.c |
>> 4 +-
>> drivers/mtd/nand/kirkwood_nand.c |
>> 2 +-
>> drivers/mtd/spi/sf_params.c |
>> 1 +
>> drivers/net/Makefile |
>> 1 +
>> drivers/net/mvgbe.c |
>> 2 +-
>> drivers/net/mvneta.c |
>> 1653 ++++++++++++++++++++
>> drivers/rtc/mvrtc.h |
>> 2 +-
>> drivers/spi/kirkwood_spi.c |
>> 44 +-
>> drivers/usb/host/ehci-marvell.c |
>> 45 +-
>> include/configs/db-78460-bp.h |
>> 67 +
>> include/linux/mbus.h |
>> 61 +
>> include/netdev.h |
>> 1 +
>> include/phy.h |
>> 2 +
>> tools/Makefile |
>> 1 +
>> tools/kwbimage.c |
>> 1050 +++++++++----
>> tools/kwboot.c |
>> 97 +-
>> 60 files changed, 4056 insertions(+), 723 deletions(-)
>> create mode 100644 arch/arm/cpu/armv7/armada-
>> xp/Makefile
>> create mode 100644 arch/arm/cpu/armv7/armada-xp/cpu.c
>> create mode 100644 arch/arm/include/asm/arch-armada-
>> xp/config.h
>> create mode 100644 arch/arm/include/asm/arch-armada-
>> xp/cpu.h
>> create mode 100644 arch/arm/include/asm/arch-armada-
>> xp/soc.h
>> rename arch/arm/include/asm/arch-kirkwood/{kirkwood.h
>> => soc.h} (74%)
>> rename arch/arm/include/asm/{arch-kirkwood => arch-
>> mvebu}/spi.h (90%)
>> create mode 100644 arch/arm/mvebu-common/Makefile
>> rename arch/arm/{cpu/arm926ejs/kirkwood => mvebu-
>> common}/dram.c (57%)
>> create mode 100644 arch/arm/mvebu-common/gpio.c
>> create mode 100644 arch/arm/mvebu-common/mbus.c
>> rename arch/arm/{cpu/arm926ejs/kirkwood => mvebu-
>> common}/timer.c (63%)
>> create mode 100644 board/Marvell/db-78460-bp/Makefile
>> create mode 100644 board/Marvell/db-78460-bp/db-78460-
>> bp.c
>> create mode 100644 board/Marvell/db-78460-
>> bp/kwbimage.cfg
>> create mode 100644 drivers/net/mvneta.c
>> create mode 100644 include/configs/db-78460-bp.h
>> create mode 100644 include/linux/mbus.h

thanks!
--
Jagan.