From mboxrd@z Thu Jan 1 00:00:00 1970 From: Masami Hiramatsu Date: Wed, 19 May 2021 14:44:21 +0900 Subject: [PATCH v4 00/14] arm64: synquacer: Add SynQuacer/DeveloperBox support Message-ID: <162140306116.47256.6799058439792039400.stgit@localhost> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi, Here is the 4th version of the series (including some fixes for build errors) to add SynQuacer/DeveloperBox 96board EE suport on U-Boot. This series includes not only DeveloperBox support but also some fixes for the issues which I faced while porting U-Boot on the DeveloperBox. First 3 patches are fixes, next 1 patch is a code cleanup for generic gpio for arm. The next 7 patches adding DeveloperBox devices and board support. The last 3 patches are related to the UEFI capsule update (including bugfixes). Previous version is here: https://lists.denx.de/pipermail/u-boot/2021-May/449305.html Changes in v4 ------------- I dropped a PCI bugfix because it has been merged. And add I2C driver and enable RTC and EBBR support on the configuration. [06/14]: - Add Jaehoon's reviewed-by (Thanks!) [09/14]: - Add a new i2c driver. [10/14]: - Add i2c0 and RTC node. [11/14]: - Add I2C and RTC configuration. - Enable RTC and Date command. - Remove I2C0 node before booting linux to hide it same as EDK2 does. - Add some configurations to make it EBBR compliant. [14/14]: - Add some config options for EBBR. BTW, should I split fixes from this series? (since I didn't expect this took so long...) DeveloperBox ============ DeveloperBox is a certified 96boards Enterprise Edition board. The board/SoC has: - * Socionext SC2A11 24-cores ARM Cortex-A53 on tbe Mini-ATX form factor motherboard * 4 DIMM slots (4GB DDR4-2400 UDIMM shipped by default) * 1 4xPCIe Gen2 slot and 2 1xPCIe Gen2 slots (1x slots are connected via PCIe bridge chip) * 4 USB-3.0 ports * 2 SATA ports * 1 GbE network port * 1 USB-UART serial port (micro USB) * 64MB SPI NOR Flash * 8GB eMMC Flash Storage * 96boards LS connector The DeveloperBox schematic can be found here: - https://www.96boards.org/documentation/enterprise/developerbox/hardware-docs/mzsc2am_v03_20180115_a.pdf And the other documents can be found here: - https://www.96boards.org/documentation/enterprise/developerbox/ Currently, the U-Boot port supports: - * USB * eMMC * SPI-NOR * SATA * GbE The DeveloperBox boots the TF-A and EDK2 as a main bootloader by default. The DeveloperBox U-Boot port will replace the EDK2 and boot from TF-A as BL33, but no need to combine with it. Thank you, --- Jassi Brar (4): mmc: synquacer: Add SynQuacer F_SDH30 SDHCI driver spi: synquacer: Add HSSPI SPI controller driver for SynQuacer net: synquacer: Add netsec driver i2c: synquacer: SNI Synquacer I2C controller Masami Hiramatsu (10): ata: ahci-pci: Use scsi_ops to initialize ops dm: pci: Skip setting VGA bridge bits if parent device is the host bus efi: Fix to use null handle to create new handle for efi_fmp_raw gpio: Introduce CONFIG_GPIO_EXTRA_HEADER to cleanup #ifdefs pci: synquacer: Add SynQuacer ECAM based PCIe driver ARM: dts: synquacer: Add device trees for DeveloperBox board: synquacer: Add DeveloperBox 96boards EE support dfu_mtd: Ignore non-implemented lock device failure doc: qemu: arm64: Fix the documentation of capsule update configs: synquacer: Enable EFI capsule update support arch/arm/Kconfig | 108 ++ arch/arm/dts/Makefile | 2 arch/arm/dts/synquacer-sc2a11-caches.dtsi | 73 + .../dts/synquacer-sc2a11-developerbox-u-boot.dtsi | 75 + arch/arm/dts/synquacer-sc2a11-developerbox.dts | 56 + arch/arm/dts/synquacer-sc2a11.dtsi | 595 ++++++++++ arch/arm/include/asm/gpio.h | 8 board/socionext/developerbox/Kconfig | 36 + board/socionext/developerbox/MAINTAINERS | 14 board/socionext/developerbox/Makefile | 9 board/socionext/developerbox/developerbox.c | 146 +++ configs/synquacer_developerbox_defconfig | 131 ++ doc/board/emulation/qemu_capsule_update.rst | 11 doc/board/index.rst | 1 doc/board/socionext/developerbox.rst | 87 ++ doc/board/socionext/index.rst | 9 drivers/ata/ahci-pci.c | 2 drivers/dfu/dfu_mtd.c | 2 drivers/i2c/Kconfig | 7 drivers/i2c/Makefile | 1 drivers/i2c/synquacer_i2c.c | 338 ++++++ drivers/mmc/Kconfig | 10 drivers/mmc/Makefile | 1 drivers/mmc/f_sdh30.c | 81 + drivers/net/Kconfig | 8 drivers/net/Makefile | 1 drivers/net/sni_netsec.c | 1134 ++++++++++++++++++++ drivers/pci/Kconfig | 12 drivers/pci/Makefile | 1 drivers/pci/pci-uclass.c | 3 drivers/pci/pcie_ecam_synquacer.c | 600 +++++++++++ drivers/spi/Kconfig | 8 drivers/spi/Makefile | 1 drivers/spi/spi-synquacer.c | 491 +++++++++ include/configs/synquacer.h | 115 ++ lib/efi_loader/efi_capsule.c | 2 36 files changed, 4162 insertions(+), 17 deletions(-) create mode 100644 arch/arm/dts/synquacer-sc2a11-caches.dtsi create mode 100644 arch/arm/dts/synquacer-sc2a11-developerbox-u-boot.dtsi create mode 100644 arch/arm/dts/synquacer-sc2a11-developerbox.dts create mode 100644 arch/arm/dts/synquacer-sc2a11.dtsi create mode 100644 board/socionext/developerbox/Kconfig create mode 100644 board/socionext/developerbox/MAINTAINERS create mode 100644 board/socionext/developerbox/Makefile create mode 100644 board/socionext/developerbox/developerbox.c create mode 100644 configs/synquacer_developerbox_defconfig create mode 100644 doc/board/socionext/developerbox.rst create mode 100644 doc/board/socionext/index.rst create mode 100644 drivers/i2c/synquacer_i2c.c create mode 100644 drivers/mmc/f_sdh30.c create mode 100644 drivers/net/sni_netsec.c create mode 100644 drivers/pci/pcie_ecam_synquacer.c create mode 100644 drivers/spi/spi-synquacer.c create mode 100644 include/configs/synquacer.h -- Masami Hiramatsu