This series adds an initial support for Allwinner, currently only targetting the Pine64+ board, based on the A64 SoC. This first series is intented as a second boot image only, that can be started from u-boot. This series provides the bare minimal for barebox to load the next OS from sd/mmc. v2 highlights: The main change in the V2 series is the new "one-size fit all" clk driver only used right for the mmc0/mmc1/mmc2 clock source (composite with a gate, a mux, two divs plus a fixed post-div). v3 highlights: Rework of the timeouts in the mci driver. Split the lowlevel documentation out of this serie and added a user documentation instead. Replaced the sunxi_v8_defconfig with the multi_v8_defconfig Jules Maselbas (6): clk: divider: add error code propagation clk: Add clock driver for sun50i-a64 pinctrl: Add sun50i-a64 pinctrl driver mci: Add sunxi-mmc driver ARM: sunxi: Introduce mach-sunxi Documentation: sunxi: Add some documentation Documentation/boards/sunxi.rst | 116 ++++ arch/arm/Kconfig | 12 + arch/arm/Makefile | 1 + arch/arm/configs/multi_v8_defconfig | 2 + arch/arm/mach-sunxi/Kconfig | 13 + arch/arm/mach-sunxi/Makefile | 1 + drivers/clk/Makefile | 1 + drivers/clk/clk-divider.c | 4 +- drivers/clk/sunxi/Makefile | 3 + drivers/clk/sunxi/clk-sun50i-a64.c | 294 ++++++++++ drivers/clk/sunxi/clk-sun50i-a64.h | 62 +++ drivers/clk/sunxi/clk-sunxi.c | 348 ++++++++++++ drivers/clk/sunxi/clk-sunxi.h | 79 +++ drivers/mci/Kconfig | 6 + drivers/mci/Makefile | 2 + drivers/mci/sunxi-mmc-common.c | 238 +++++++++ drivers/mci/sunxi-mmc-pbl.c | 81 +++ drivers/mci/sunxi-mmc.c | 176 ++++++ drivers/mci/sunxi-mmc.h | 222 ++++++++ drivers/pinctrl/Kconfig | 2 + drivers/pinctrl/Makefile | 1 + drivers/pinctrl/sunxi/Kconfig | 13 + drivers/pinctrl/sunxi/Makefile | 3 + drivers/pinctrl/sunxi/pinctrl-sun50i-a64.c | 594 +++++++++++++++++++++ drivers/pinctrl/sunxi/pinctrl-sunxi.c | 369 +++++++++++++ drivers/pinctrl/sunxi/pinctrl-sunxi.h | 224 ++++++++ include/mach/sunxi/xload.h | 12 + 27 files changed, 2878 insertions(+), 1 deletion(-) create mode 100644 Documentation/boards/sunxi.rst create mode 100644 arch/arm/mach-sunxi/Kconfig create mode 100644 arch/arm/mach-sunxi/Makefile create mode 100644 drivers/clk/sunxi/Makefile create mode 100644 drivers/clk/sunxi/clk-sun50i-a64.c create mode 100644 drivers/clk/sunxi/clk-sun50i-a64.h create mode 100644 drivers/clk/sunxi/clk-sunxi.c create mode 100644 drivers/clk/sunxi/clk-sunxi.h create mode 100644 drivers/mci/sunxi-mmc-common.c create mode 100644 drivers/mci/sunxi-mmc-pbl.c create mode 100644 drivers/mci/sunxi-mmc.c create mode 100644 drivers/mci/sunxi-mmc.h create mode 100644 drivers/pinctrl/sunxi/Kconfig create mode 100644 drivers/pinctrl/sunxi/Makefile create mode 100644 drivers/pinctrl/sunxi/pinctrl-sun50i-a64.c create mode 100644 drivers/pinctrl/sunxi/pinctrl-sunxi.c create mode 100644 drivers/pinctrl/sunxi/pinctrl-sunxi.h create mode 100644 include/mach/sunxi/xload.h -- 2.48.1