mbox series

[edk2,edk2-platforms,v5,0/6] add remaining support for Socionext SynQuacer

Message ID 20171117190423.19511-1-ard.biesheuvel@linaro.org
Headers show
Series add remaining support for Socionext SynQuacer | expand

Message

Ard Biesheuvel Nov. 17, 2017, 7:04 p.m. UTC
These are the remaining patches that still need review after the majority
of the Socionext SynQuacer support patches were merged.

Changes since v4:
- minor changes, please see the notes in the individual patches

Changes since v3:
- remove ACPI support for now, we can add it on top if we manage to sort
  out all the SoC quirks that make it difficult to have full support under
  ACPI
- add RTC support to DeveloperBox
- add eMMC support to SynQuacerEvalBoard
- incorporate review feedback on the SPI NOR driver (which was possible
  after noticing that I did in fact have a manual for this IP)
- map NOR and EEPROM as writeback cacheable non-shareable; this allows the
  split FV hack to be reverted, and improves boot time considerably
- some other minor changes have been applied, these have been added to the
  individual patches as notes

Changes since v2:
- converted NETSEC driver to UEFI driver model
- added a platform DXE driver that declares the non-discoverable NETSEC
  device for the UEFI driver model driver to bind to
- remove hardcoded DRAM information - everything is now retrieved from
  ARM Trusted Firmware
- added DT descriptions of the GPIO and interrupt controller IP blocks
- addressed various style issues and merge errors highlighted by Leif

Ard Biesheuvel (6):
  Silicon/SynQuacer: implement 'clear NVRAM' feature using a DIP switch
  Silicon/SynQuacer: add DT description of the SDHCI controller
  Silicon/Socionext: implement I2C master protocol for SynQuacer I2C
  Silicon/NXP: add RTC support library for PCF8563 I2C IP
  Platform/DeveloperBox: wire up RTC support
  Platform/SynQuacerEvalBoard: add eMMC driver stack

 Platform/Socionext/DeveloperBox/DeveloperBox.dsc                                          |  13 +-
 Platform/Socionext/DeveloperBox/DeveloperBox.fdf                                          |   6 +
 Platform/Socionext/SynQuacerEvalBoard/SynQuacerEvalBoard.dsc                              |  12 +
 Platform/Socionext/SynQuacerEvalBoard/SynQuacerEvalBoard.fdf                              |   8 +
 Silicon/NXP/Library/Pcf8563RealTimeClockLib/Pcf8563RealTimeClockLib.c                     | 402 +++++++++++++
 Silicon/NXP/Library/Pcf8563RealTimeClockLib/Pcf8563RealTimeClockLib.dec                   |  31 ++
 Silicon/NXP/Library/Pcf8563RealTimeClockLib/Pcf8563RealTimeClockLib.inf                   |  52 ++
 Silicon/Socionext/SynQuacer/DeviceTree/SynQuacer.dtsi                                     |  27 +
 Silicon/Socionext/SynQuacer/DeviceTree/SynQuacerEvalBoard.dts                             |   4 +
 Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/Emmc.c                                    | 201 +++++++
 Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.c                             |  88 ++-
 Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.h                             |  37 ++
 Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.inf                           |  11 +-
 Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/ComponentName.c                       | 185 ++++++
 Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/DriverBinding.c                       | 238 ++++++++
 Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/SynQuacerI2cDxe.c                     | 588 ++++++++++++++++++++
 Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/SynQuacerI2cDxe.h                     | 162 ++++++
 Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/SynQuacerI2cDxe.inf                   |  59 ++
 Silicon/Socionext/SynQuacer/Include/Platform/MemoryMap.h                                  |   8 +
 Silicon/Socionext/SynQuacer/Library/SynQuacerMemoryInitPeiLib/SynQuacerMemoryInitPeiLib.c |   4 +
 Silicon/Socionext/SynQuacer/Library/SynQuacerPlatformPeiLib/SynQuacerPlatformPeiLib.c     |  30 +-
 Silicon/Socionext/SynQuacer/Library/SynQuacerPlatformPeiLib/SynQuacerPlatformPeiLib.inf   |   6 +
 Silicon/Socionext/SynQuacer/SynQuacer.dec                                                 |   8 +
 23 files changed, 2160 insertions(+), 20 deletions(-)
 create mode 100644 Silicon/NXP/Library/Pcf8563RealTimeClockLib/Pcf8563RealTimeClockLib.c
 create mode 100644 Silicon/NXP/Library/Pcf8563RealTimeClockLib/Pcf8563RealTimeClockLib.dec
 create mode 100644 Silicon/NXP/Library/Pcf8563RealTimeClockLib/Pcf8563RealTimeClockLib.inf
 create mode 100644 Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/Emmc.c
 create mode 100644 Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.h
 create mode 100644 Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/ComponentName.c
 create mode 100644 Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/DriverBinding.c
 create mode 100644 Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/SynQuacerI2cDxe.c
 create mode 100644 Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/SynQuacerI2cDxe.h
 create mode 100644 Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/SynQuacerI2cDxe.inf

-- 
2.11.0

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Comments

Leif Lindholm Nov. 25, 2017, 12:23 p.m. UTC | #1
On Fri, Nov 17, 2017 at 07:04:17PM +0000, Ard Biesheuvel wrote:
> These are the remaining patches that still need review after the majority

> of the Socionext SynQuacer support patches were merged.


All remaining patches in series:
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>


> Changes since v4:

> - minor changes, please see the notes in the individual patches

> 

> Changes since v3:

> - remove ACPI support for now, we can add it on top if we manage to sort

>   out all the SoC quirks that make it difficult to have full support under

>   ACPI

> - add RTC support to DeveloperBox

> - add eMMC support to SynQuacerEvalBoard

> - incorporate review feedback on the SPI NOR driver (which was possible

>   after noticing that I did in fact have a manual for this IP)

> - map NOR and EEPROM as writeback cacheable non-shareable; this allows the

>   split FV hack to be reverted, and improves boot time considerably

> - some other minor changes have been applied, these have been added to the

>   individual patches as notes

> 

> Changes since v2:

> - converted NETSEC driver to UEFI driver model

> - added a platform DXE driver that declares the non-discoverable NETSEC

>   device for the UEFI driver model driver to bind to

> - remove hardcoded DRAM information - everything is now retrieved from

>   ARM Trusted Firmware

> - added DT descriptions of the GPIO and interrupt controller IP blocks

> - addressed various style issues and merge errors highlighted by Leif

> 

> Ard Biesheuvel (6):

>   Silicon/SynQuacer: implement 'clear NVRAM' feature using a DIP switch

>   Silicon/SynQuacer: add DT description of the SDHCI controller

>   Silicon/Socionext: implement I2C master protocol for SynQuacer I2C

>   Silicon/NXP: add RTC support library for PCF8563 I2C IP

>   Platform/DeveloperBox: wire up RTC support

>   Platform/SynQuacerEvalBoard: add eMMC driver stack

> 

>  Platform/Socionext/DeveloperBox/DeveloperBox.dsc                                          |  13 +-

>  Platform/Socionext/DeveloperBox/DeveloperBox.fdf                                          |   6 +

>  Platform/Socionext/SynQuacerEvalBoard/SynQuacerEvalBoard.dsc                              |  12 +

>  Platform/Socionext/SynQuacerEvalBoard/SynQuacerEvalBoard.fdf                              |   8 +

>  Silicon/NXP/Library/Pcf8563RealTimeClockLib/Pcf8563RealTimeClockLib.c                     | 402 +++++++++++++

>  Silicon/NXP/Library/Pcf8563RealTimeClockLib/Pcf8563RealTimeClockLib.dec                   |  31 ++

>  Silicon/NXP/Library/Pcf8563RealTimeClockLib/Pcf8563RealTimeClockLib.inf                   |  52 ++

>  Silicon/Socionext/SynQuacer/DeviceTree/SynQuacer.dtsi                                     |  27 +

>  Silicon/Socionext/SynQuacer/DeviceTree/SynQuacerEvalBoard.dts                             |   4 +

>  Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/Emmc.c                                    | 201 +++++++

>  Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.c                             |  88 ++-

>  Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.h                             |  37 ++

>  Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.inf                           |  11 +-

>  Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/ComponentName.c                       | 185 ++++++

>  Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/DriverBinding.c                       | 238 ++++++++

>  Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/SynQuacerI2cDxe.c                     | 588 ++++++++++++++++++++

>  Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/SynQuacerI2cDxe.h                     | 162 ++++++

>  Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/SynQuacerI2cDxe.inf                   |  59 ++

>  Silicon/Socionext/SynQuacer/Include/Platform/MemoryMap.h                                  |   8 +

>  Silicon/Socionext/SynQuacer/Library/SynQuacerMemoryInitPeiLib/SynQuacerMemoryInitPeiLib.c |   4 +

>  Silicon/Socionext/SynQuacer/Library/SynQuacerPlatformPeiLib/SynQuacerPlatformPeiLib.c     |  30 +-

>  Silicon/Socionext/SynQuacer/Library/SynQuacerPlatformPeiLib/SynQuacerPlatformPeiLib.inf   |   6 +

>  Silicon/Socionext/SynQuacer/SynQuacer.dec                                                 |   8 +

>  23 files changed, 2160 insertions(+), 20 deletions(-)

>  create mode 100644 Silicon/NXP/Library/Pcf8563RealTimeClockLib/Pcf8563RealTimeClockLib.c

>  create mode 100644 Silicon/NXP/Library/Pcf8563RealTimeClockLib/Pcf8563RealTimeClockLib.dec

>  create mode 100644 Silicon/NXP/Library/Pcf8563RealTimeClockLib/Pcf8563RealTimeClockLib.inf

>  create mode 100644 Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/Emmc.c

>  create mode 100644 Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.h

>  create mode 100644 Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/ComponentName.c

>  create mode 100644 Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/DriverBinding.c

>  create mode 100644 Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/SynQuacerI2cDxe.c

>  create mode 100644 Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/SynQuacerI2cDxe.h

>  create mode 100644 Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/SynQuacerI2cDxe.inf

> 

> -- 

> 2.11.0

> 

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Ard Biesheuvel Nov. 26, 2017, 10:30 a.m. UTC | #2
On 25 November 2017 at 12:23, Leif Lindholm <leif.lindholm@linaro.org> wrote:
> On Fri, Nov 17, 2017 at 07:04:17PM +0000, Ard Biesheuvel wrote:

>> These are the remaining patches that still need review after the majority

>> of the Socionext SynQuacer support patches were merged.

>

> All remaining patches in series:

> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>


Thanks.

Patches 1 -5 pushed as 563c2efbfa05..89a256625016
Patch #6 depends on the SD/MMC override protocol which is still under
discussion.


>

>> Changes since v4:

>> - minor changes, please see the notes in the individual patches

>>

>> Changes since v3:

>> - remove ACPI support for now, we can add it on top if we manage to sort

>>   out all the SoC quirks that make it difficult to have full support under

>>   ACPI

>> - add RTC support to DeveloperBox

>> - add eMMC support to SynQuacerEvalBoard

>> - incorporate review feedback on the SPI NOR driver (which was possible

>>   after noticing that I did in fact have a manual for this IP)

>> - map NOR and EEPROM as writeback cacheable non-shareable; this allows the

>>   split FV hack to be reverted, and improves boot time considerably

>> - some other minor changes have been applied, these have been added to the

>>   individual patches as notes

>>

>> Changes since v2:

>> - converted NETSEC driver to UEFI driver model

>> - added a platform DXE driver that declares the non-discoverable NETSEC

>>   device for the UEFI driver model driver to bind to

>> - remove hardcoded DRAM information - everything is now retrieved from

>>   ARM Trusted Firmware

>> - added DT descriptions of the GPIO and interrupt controller IP blocks

>> - addressed various style issues and merge errors highlighted by Leif

>>

>> Ard Biesheuvel (6):

>>   Silicon/SynQuacer: implement 'clear NVRAM' feature using a DIP switch

>>   Silicon/SynQuacer: add DT description of the SDHCI controller

>>   Silicon/Socionext: implement I2C master protocol for SynQuacer I2C

>>   Silicon/NXP: add RTC support library for PCF8563 I2C IP

>>   Platform/DeveloperBox: wire up RTC support

>>   Platform/SynQuacerEvalBoard: add eMMC driver stack

>>

>>  Platform/Socionext/DeveloperBox/DeveloperBox.dsc                                          |  13 +-

>>  Platform/Socionext/DeveloperBox/DeveloperBox.fdf                                          |   6 +

>>  Platform/Socionext/SynQuacerEvalBoard/SynQuacerEvalBoard.dsc                              |  12 +

>>  Platform/Socionext/SynQuacerEvalBoard/SynQuacerEvalBoard.fdf                              |   8 +

>>  Silicon/NXP/Library/Pcf8563RealTimeClockLib/Pcf8563RealTimeClockLib.c                     | 402 +++++++++++++

>>  Silicon/NXP/Library/Pcf8563RealTimeClockLib/Pcf8563RealTimeClockLib.dec                   |  31 ++

>>  Silicon/NXP/Library/Pcf8563RealTimeClockLib/Pcf8563RealTimeClockLib.inf                   |  52 ++

>>  Silicon/Socionext/SynQuacer/DeviceTree/SynQuacer.dtsi                                     |  27 +

>>  Silicon/Socionext/SynQuacer/DeviceTree/SynQuacerEvalBoard.dts                             |   4 +

>>  Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/Emmc.c                                    | 201 +++++++

>>  Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.c                             |  88 ++-

>>  Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.h                             |  37 ++

>>  Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.inf                           |  11 +-

>>  Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/ComponentName.c                       | 185 ++++++

>>  Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/DriverBinding.c                       | 238 ++++++++

>>  Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/SynQuacerI2cDxe.c                     | 588 ++++++++++++++++++++

>>  Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/SynQuacerI2cDxe.h                     | 162 ++++++

>>  Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/SynQuacerI2cDxe.inf                   |  59 ++

>>  Silicon/Socionext/SynQuacer/Include/Platform/MemoryMap.h                                  |   8 +

>>  Silicon/Socionext/SynQuacer/Library/SynQuacerMemoryInitPeiLib/SynQuacerMemoryInitPeiLib.c |   4 +

>>  Silicon/Socionext/SynQuacer/Library/SynQuacerPlatformPeiLib/SynQuacerPlatformPeiLib.c     |  30 +-

>>  Silicon/Socionext/SynQuacer/Library/SynQuacerPlatformPeiLib/SynQuacerPlatformPeiLib.inf   |   6 +

>>  Silicon/Socionext/SynQuacer/SynQuacer.dec                                                 |   8 +

>>  23 files changed, 2160 insertions(+), 20 deletions(-)

>>  create mode 100644 Silicon/NXP/Library/Pcf8563RealTimeClockLib/Pcf8563RealTimeClockLib.c

>>  create mode 100644 Silicon/NXP/Library/Pcf8563RealTimeClockLib/Pcf8563RealTimeClockLib.dec

>>  create mode 100644 Silicon/NXP/Library/Pcf8563RealTimeClockLib/Pcf8563RealTimeClockLib.inf

>>  create mode 100644 Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/Emmc.c

>>  create mode 100644 Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/PlatformDxe.h

>>  create mode 100644 Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/ComponentName.c

>>  create mode 100644 Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/DriverBinding.c

>>  create mode 100644 Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/SynQuacerI2cDxe.c

>>  create mode 100644 Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/SynQuacerI2cDxe.h

>>  create mode 100644 Silicon/Socionext/SynQuacer/Drivers/SynQuacerI2cDxe/SynQuacerI2cDxe.inf

>>

>> --

>> 2.11.0

>>

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel