[U-Boot] [PATCH v2 0/25] Add Marvell Armada XP MV78460 SoC support
Jagan Teki
jagannadh.teki at gmail.com
Sat Aug 23 09:20:45 CEST 2014
On Tue, Aug 5, 2014 at 12:39 PM, Stefan Roese <sr at denx.de> wrote:
>
> 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.
>
> 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.
>
> 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.
>
> Thanks,
> Stefan
>
> Changes in v2:
> - Fixed issue in mbus_dt_setup_win() to also assign remappable windows
> - Made mbus_dt_setup_win() non-static, so that it can be called from
> other files for board specific mbus window configuration
> - Renamed target from db-78460-bp to db-mv784mp-gp as this matches
> the real eval board name
> - Added optional '-a' parameter to use the timings for Armada XP, as they
> are incompatibel with the currently used ones for Kirkwood (etc).
> - Rebased on latest U-Boot version already including the Kconfig
> support switch.
> - Removed patch "[PATCH v1 21/25] arm: kirkwood: Use mvebu new common mbus API"
> as this breaks Kirkwood booting. This needs to be resolved at some time,
> but I don't have access to a Kirkwood based board with JTAG BDI access to
> debug it right now. Till somebody fixes this issue, lets just remove
> it from this series for now.
> - Added basic support for the maxBCM MV78460 based board
>
> 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
Picked these on u-boot-spi/master
> 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
Conflicts - but added reviewed tag and updated Prafulla, please take
these on your repo.
> 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-MV784MP-GP board
> arm: armada-xp: Add basic support for the maxBCM board
> arm: kirkwood: Remove some dead code from cpu.c
> 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/Kconfig | 8 +
> arch/arm/cpu/arm926ejs/kirkwood/Makefile | 4 +-
> arch/arm/cpu/arm926ejs/kirkwood/cpu.c | 74 +-
> 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 | 107 ++
> 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 | 8 +-
> arch/arm/include/asm/arch-kirkwood/gpio.h | 16 +-
> .../asm/arch-kirkwood/{kirkwood.h => soc.h} | 9 +-
> .../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 | 471 ++++++
> .../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-mv784mp-gp/Kconfig | 23 +
> board/Marvell/db-mv784mp-gp/MAINTAINERS | 6 +
> board/Marvell/db-mv784mp-gp/Makefile | 7 +
> board/Marvell/db-mv784mp-gp/db-mv784mp-gp.c | 120 ++
> board/Marvell/db-mv784mp-gp/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/maxbcm/Kconfig | 19 +
> board/maxbcm/MAINTAINERS | 6 +
> board/maxbcm/Makefile | 7 +
> board/maxbcm/kwbimage.cfg | 12 +
> board/maxbcm/maxbcm.c | 77 +
> board/raidsonic/ib62x0/ib62x0.c | 10 +-
> configs/db-mv784mp-gp_defconfig | 2 +
> configs/maxbcm_defconfig | 2 +
> 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 | 2 +-
> include/configs/db-mv784mp-gp.h | 67 +
> include/configs/maxbcm.h | 67 +
> include/linux/mbus.h | 73 +
> include/netdev.h | 1 +
> include/phy.h | 2 +
> tools/Makefile | 1 +
> tools/kwbimage.c | 1050 +++++++++----
> tools/kwboot.c | 111 +-
> 70 files changed, 4236 insertions(+), 573 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} (90%)
> 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-mv784mp-gp/Kconfig
> create mode 100644 board/Marvell/db-mv784mp-gp/MAINTAINERS
> create mode 100644 board/Marvell/db-mv784mp-gp/Makefile
> create mode 100644 board/Marvell/db-mv784mp-gp/db-mv784mp-gp.c
> create mode 100644 board/Marvell/db-mv784mp-gp/kwbimage.cfg
> create mode 100644 board/maxbcm/Kconfig
> create mode 100644 board/maxbcm/MAINTAINERS
> create mode 100644 board/maxbcm/Makefile
> create mode 100644 board/maxbcm/kwbimage.cfg
> create mode 100644 board/maxbcm/maxbcm.c
> create mode 100644 configs/db-mv784mp-gp_defconfig
> create mode 100644 configs/maxbcm_defconfig
> create mode 100644 drivers/net/mvneta.c
> create mode 100644 include/configs/db-mv784mp-gp.h
> create mode 100644 include/configs/maxbcm.h
> create mode 100644 include/linux/mbus.h
>
> --
> 2.0.4
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
thanks!
--
Jagan.
More information about the U-Boot
mailing list