Re: [PATCH v4 00/14] arm64: synquacer: Add SynQuacer/DeveloperBox support

Ilias Apalodimas
2021-05-23T08:07:32Z

Hi Masami,

On Wed, May 19, 2021 at 02:44:21PM +0900, Masami Hiramatsu wrote:
> 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
>
>

The default debug level is set to 7. I think it would be better to set it
to something more reasonable for the final commit. Unfortunately I don't
have time for a more detailed review, but I did manage to run this on my
Synquacer and managed to run a full linux distro with EFI.

Tested-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>

> 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 <masami.hiramatsu@linaro.org>