[U-Boot] [PATCH 00/12] arm: aspeed: Basic support for Aspeed AST2500 part and eval board

Maxim Sloyko
2017-01-04T19:46:44Z

This series adds minimal support for AST2500 part and eval board,
enough to boot EVB into prompt. It contains WDT, Timer, Sysreset,
Clock (very basic) and SDRAM MC drivers, all written from scratch,
using AST2500 datasheet. Aspeed's SDK was used only for reference.
Given very limited documentation provided by Aspeed, some parts of SDRAM
init sequence were basically rewritten to do the same thing that is done
in Aspeed SDK, without real understanding of what is going on.

The file layout closely follows the example of rk3288 chip and firefly-rk3288
board.

For the first round of reviews I'm mostly looking for a nod to add
mach-aspeed and arch-aspeed directories, as well as for feedback
on naming, file locations and overall approach.

Maxim Sloyko (12):
aspeed: Add mach-aspeed directory and basic Kconfig
aspeed: Add support for Watchdot Timer
aspeed: Add Timer Support
aspeed: Add sysreset driver
aspeed/ast2500: Device Tree and bindings for some of the clocks
aspeed/ast2500: Add Clock Driver
aspeed/ast2500: Helper function to get access to SCU
aspeed/ast2500: Add SDRAM MC driver
aspeed/ast2500: Common board init functions for ast2500 based boards
aspeed: Common configuration parameters for aspeed boards
aspeed: Device Tree for ast2500 Eval Board
aspeed: Configuration for ast2500 eval board

arch/arm/Kconfig | 7 +
arch/arm/Makefile | 1 +
arch/arm/dts/Makefile | 2 +
arch/arm/dts/ast2500-evb.dts | 23 ++
arch/arm/dts/ast2500.dtsi | 423 ++++++++++++++++++++++
arch/arm/include/asm/arch-aspeed/scu_ast2500.h | 108 ++++++
arch/arm/include/asm/arch-aspeed/sdram_ast2500.h | 133 +++++++
arch/arm/include/asm/arch-aspeed/timer.h | 54 +++
arch/arm/include/asm/arch-aspeed/wdt.h | 89 +++++
arch/arm/mach-aspeed/Kconfig | 17 +
arch/arm/mach-aspeed/Makefile | 8 +
arch/arm/mach-aspeed/ast2500-board.c | 74 ++++
arch/arm/mach-aspeed/ast2500/Kconfig | 13 +
arch/arm/mach-aspeed/ast2500/Makefile | 1 +
arch/arm/mach-aspeed/ast2500/clk_ast2500.c | 31 ++
arch/arm/mach-aspeed/ast2500/sdram_ast2500.c | 443 +++++++++++++++++++++++
arch/arm/mach-aspeed/ast_wdt.c | 44 +++
board/aspeed/evb_ast2500/Kconfig | 12 +
board/aspeed/evb_ast2500/Makefile | 1 +
board/aspeed/evb_ast2500/evb_ast2500.c | 1 +
configs/evb-ast2500_defconfig | 21 ++
drivers/clk/Makefile | 2 +
drivers/clk/aspeed/Makefile | 7 +
drivers/clk/aspeed/clk_ast2500.c | 255 +++++++++++++
drivers/sysreset/Makefile | 1 +
drivers/sysreset/sysreset_ast.c | 55 +++
drivers/timer/Kconfig | 7 +
drivers/timer/Makefile | 1 +
drivers/timer/ast_timer.c | 96 +++++
include/configs/aspeed-common.h | 84 +++++
include/configs/evb_ast2500.h | 30 ++
include/dt-bindings/clock/ast2500-scu.h | 29 ++
32 files changed, 2073 insertions(+)
create mode 100644 arch/arm/dts/ast2500-evb.dts
create mode 100644 arch/arm/dts/ast2500.dtsi
create mode 100644 arch/arm/include/asm/arch-aspeed/scu_ast2500.h
create mode 100644 arch/arm/include/asm/arch-aspeed/sdram_ast2500.h
create mode 100644 arch/arm/include/asm/arch-aspeed/timer.h
create mode 100644 arch/arm/include/asm/arch-aspeed/wdt.h
create mode 100644 arch/arm/mach-aspeed/Kconfig
create mode 100644 arch/arm/mach-aspeed/Makefile
create mode 100644 arch/arm/mach-aspeed/ast2500-board.c
create mode 100644 arch/arm/mach-aspeed/ast2500/Kconfig
create mode 100644 arch/arm/mach-aspeed/ast2500/Makefile
create mode 100644 arch/arm/mach-aspeed/ast2500/clk_ast2500.c
create mode 100644 arch/arm/mach-aspeed/ast2500/sdram_ast2500.c
create mode 100644 arch/arm/mach-aspeed/ast_wdt.c
create mode 100644 board/aspeed/evb_ast2500/Kconfig
create mode 100644 board/aspeed/evb_ast2500/Makefile
create mode 100644 board/aspeed/evb_ast2500/evb_ast2500.c
create mode 100644 configs/evb-ast2500_defconfig
create mode 100644 drivers/clk/aspeed/Makefile
create mode 100644 drivers/clk/aspeed/clk_ast2500.c
create mode 100644 drivers/sysreset/sysreset_ast.c
create mode 100644 drivers/timer/ast_timer.c
create mode 100644 include/configs/aspeed-common.h
create mode 100644 include/configs/evb_ast2500.h
create mode 100644 include/dt-bindings/clock/ast2500-scu.h

--
2.11.0.390.gc69c2f50cf-goog