This series expands support for Aspeed AST2500 SoC, commonly used as Board Management Controller in many servers.
The main goal of this series is I2C driver, 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. I removed Network driver from this series. I will work on it separately and will make it compatible with existing Faraday devices, but that is a work better done outside of this already long series. Changes in v1: - Added link to the original version to commit message - Rename wdt_reset to wdt_expire_now - Rename wdt_restart to wdt_reset - Clarified function documentation in few cases - Add Sandbox WDT driver and unit tests - Rename reset to expire_now - Rename restart to reset - Remove unnecessary check for error in dev_get_priv - Fix comment - Rename wdt_reset call to wdt_expire_now - Rename wdt_reset call to wdt_expire_now - Style fixes Maxim Sloyko (15): 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 arch/arm/dts/ast2500-evb.dts | 15 + 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 +- arch/sandbox/dts/test.dts | 4 + arch/sandbox/include/asm/state.h | 9 + configs/evb-ast2500_defconfig | 6 + configs/sandbox_defconfig | 2 + drivers/clk/aspeed/clk_ast2500.c | 321 +++++++-- drivers/i2c/Kconfig | 9 + drivers/i2c/Makefile | 1 + drivers/i2c/ast_i2c.c | 357 ++++++++++ drivers/i2c/ast_i2c.h | 132 ++++ 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 | 106 +++ drivers/sysreset/sysreset_ast.c | 24 +- drivers/watchdog/Kconfig | 32 + drivers/watchdog/Makefile | 3 + drivers/watchdog/ast_wdt.c | 125 ++++ drivers/watchdog/sandbox_wdt.c | 76 +++ drivers/watchdog/wdt-uclass.c | 72 ++ 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 | 107 +++ test/dm/Makefile | 1 + test/dm/wdt.c | 40 ++ 38 files changed, 2721 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/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/sandbox_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 create mode 100644 test/dm/wdt.c -- 2.12.2.762.g0e3151a226-goog _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot