This series expands support for Aspeed AST2500 SoC, commonly used as Board Management Controller in many servers, to the point where it can actually be useful.
The main goal of this series is I2C and Network drivers, the rest are either cleanups or supporting patches. Most notable among them is addition of Watchdog Uclass, so that watchdog drivers can now use Driver Model. One notable thing that is *missing* from this series is Device Tree configuration for I2C driver. The Linux Kernel I2C driver is still under review and it may affect the details of how devices need to be configured in the Device Tree. So, I decided to wait until it will show up in Linux Kernel DT and then pull it into U-Boot. Maxim Sloyko (17): aspeed: Update ast2500 Device Tree dm: Simple Watchdog uclass aspeed: Watchdog Timer Driver aspeed: Make SCU lock/unlock functions part of SCU API aspeed: Reset Driver aspeed: Device Tree configuration for Reset Driver aspeed: Refactor AST2500 RAM Driver and Sysreset Driver aspeed: AST2500 Pinctrl Driver aspeed: Enable Pinctrl Driver in AST2500 EVB aspeed: Add P-Bus clock in ast2500 clock driver aspeed: Add I2C Driver aspeed: Enable I2C in EVB defconfig aspeed: Add support for Clocks needed by MACs aspeed: Refactor SCU to use consistent mask & shift aspeed: Cleanup ast2500-u-boot.dtsi Device Tree aspeed: Add AST2500/AST2400 compatible NIC Driver aspeed: Network Driver configuration for EVB arch/arm/dts/ast2500-evb.dts | 29 + arch/arm/dts/ast2500-u-boot.dtsi | 59 +- arch/arm/dts/ast2500.dtsi | 881 ++++++++++++++++++++++++- arch/arm/include/asm/arch-aspeed/pinctrl.h | 52 ++ arch/arm/include/asm/arch-aspeed/scu_ast2500.h | 132 +++- arch/arm/include/asm/arch-aspeed/wdt.h | 38 +- arch/arm/mach-aspeed/Kconfig | 8 +- arch/arm/mach-aspeed/ast2500/clk_ast2500.c | 15 + arch/arm/mach-aspeed/ast2500/sdram_ast2500.c | 17 +- arch/arm/mach-aspeed/ast_wdt.c | 47 +- configs/evb-ast2500_defconfig | 13 + drivers/clk/aspeed/clk_ast2500.c | 321 +++++++-- drivers/i2c/Kconfig | 9 + drivers/i2c/Makefile | 1 + drivers/i2c/ast_i2c.c | 355 ++++++++++ drivers/i2c/ast_i2c.h | 132 ++++ drivers/net/Kconfig | 8 + drivers/net/Makefile | 1 + drivers/net/ast_nic.c | 584 ++++++++++++++++ drivers/net/ast_nic.h | 198 ++++++ drivers/pinctrl/Kconfig | 9 + drivers/pinctrl/Makefile | 1 + drivers/pinctrl/aspeed/Makefile | 1 + drivers/pinctrl/aspeed/pinctrl_ast2500.c | 127 ++++ drivers/reset/Kconfig | 10 + drivers/reset/Makefile | 1 + drivers/reset/ast2500-reset.c | 109 +++ drivers/sysreset/sysreset_ast.c | 24 +- drivers/watchdog/Kconfig | 24 + drivers/watchdog/Makefile | 2 + drivers/watchdog/ast_wdt.c | 125 ++++ drivers/watchdog/wdt-uclass.c | 79 +++ include/dm/uclass-id.h | 1 + include/dt-bindings/clock/ast2500-scu.h | 2 + include/dt-bindings/reset/ast2500-reset.h | 45 ++ include/wdt.h | 97 +++ 36 files changed, 3390 insertions(+), 167 deletions(-) create mode 100644 arch/arm/include/asm/arch-aspeed/pinctrl.h create mode 100644 drivers/i2c/ast_i2c.c create mode 100644 drivers/i2c/ast_i2c.h create mode 100644 drivers/net/ast_nic.c create mode 100644 drivers/net/ast_nic.h create mode 100644 drivers/pinctrl/aspeed/Makefile create mode 100644 drivers/pinctrl/aspeed/pinctrl_ast2500.c create mode 100644 drivers/reset/ast2500-reset.c create mode 100644 drivers/watchdog/ast_wdt.c create mode 100644 drivers/watchdog/wdt-uclass.c create mode 100644 include/dt-bindings/reset/ast2500-reset.h create mode 100644 include/wdt.h -- 2.12.0.367.g23dc2f6d3c-goog _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot