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

2021-05-23 Thread Masami Hiramatsu
Hello Ilias,

2021年5月23日(日) 17:07 Ilias Apalodimas :

>
> 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.

Yes, it was for the development value. It should be removed from
defconfig at last, because it depends on the builder's choice.

>  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 

Thanks for testing!

Thank you,

>
> > 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 ++
> >  

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

2021-05-23 Thread Ilias Apalodimas
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 

> 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 
>  

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

2021-05-18 Thread Masami Hiramatsu
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