mbox series

[Linaro-uefi,0/8] Platforms/AMD/Overdrive: switch to DtPlatformDxe

Message ID 20170406102941.14802-1-ard.biesheuvel@linaro.org
Headers show
Series Platforms/AMD/Overdrive: switch to DtPlatformDxe | expand

Message

Ard Biesheuvel April 6, 2017, 10:29 a.m. UTC
The FdtDxe implementation that lives in Platforms/AMD/Styx is a rather
unhealthy mix of fossilized pieces of LinuxLoader combined with other
dependencies on the deprecated ARM BdsLib.

Since it does lots of things we don't need (involving memory DT nodes
and other bits we don't use), and doesn't do what we do need (select
between ACPI and DT but not enable both at the same time), it is time
to get rid of it.

So implement a DtPlatformDtbLoaderLib based on the pieces we want to
keep, and switch Overdrive and Overdrive 1000 to use it, and finally
remove FdtDxe altogether.

Ard Biesheuvel (8):
  Platforms/AMD: remove /pmu node from Overdrive 1000 DTS
  Platforms/AMD: clean up whitespace in Overdrive 1000 DTS file
  Platforms/AMD: remove /pmu node from Overdrive DTS
  Platforms/AMD: clean up whitespace in Overdrive DTS file
  Platforms/AMD: implement DtPlatformDtbLoaderLib
  Platforms/AMD: switch Overdrive to DtPlatformDxe
  Platforms/AMD: switch Overdrive 1000 to DtPlatformDxe
  Platform/AMD: remove FdtDxe driver

 Platforms/AMD/Styx/Drivers/FdtDxe/BdsLinuxFdt.c                      | 760 -----------------
 Platforms/AMD/Styx/Drivers/FdtDxe/FdtDxe.c                           | 274 ------
 Platforms/AMD/Styx/Drivers/FdtDxe/FdtDxe.h                           |  54 --
 Platforms/AMD/Styx/Drivers/FdtDxe/FdtDxe.inf                         |  76 --
 Platforms/AMD/Styx/Drivers/FdtDxe/LinuxLoader.h                      | 173 ----
 Platforms/AMD/Styx/Drivers/FdtDxe/LinuxLoaderHelper.c                | 200 -----
 Platforms/AMD/Styx/Library/StyxDtbLoaderLib/StyxDtbLoaderLib.c       | 473 +++++++++++
 Platforms/AMD/Styx/Library/StyxDtbLoaderLib/StyxDtbLoaderLib.inf     |  64 ++
 Platforms/AMD/Styx/Overdrive1000Board/FdtBlob/styx-overdrive1000.dtb | Bin 8117 -> 7969 bytes
 Platforms/AMD/Styx/Overdrive1000Board/FdtBlob/styx-overdrive1000.dts |  72 +-
 Platforms/AMD/Styx/Overdrive1000Board/Overdrive1000Board.dsc         |  10 +-
 Platforms/AMD/Styx/Overdrive1000Board/Overdrive1000Board.fdf         |   4 +-
 Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dtb         | Bin 8089 -> 7973 bytes
 Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dts         | 878 ++++++++++----------
 Platforms/AMD/Styx/OverdriveBoard/OverdriveBoard.dsc                 |  11 +-
 Platforms/AMD/Styx/OverdriveBoard/OverdriveBoard.fdf                 |   4 +-
 16 files changed, 1016 insertions(+), 2037 deletions(-)
 delete mode 100644 Platforms/AMD/Styx/Drivers/FdtDxe/BdsLinuxFdt.c
 delete mode 100644 Platforms/AMD/Styx/Drivers/FdtDxe/FdtDxe.c
 delete mode 100644 Platforms/AMD/Styx/Drivers/FdtDxe/FdtDxe.h
 delete mode 100644 Platforms/AMD/Styx/Drivers/FdtDxe/FdtDxe.inf
 delete mode 100644 Platforms/AMD/Styx/Drivers/FdtDxe/LinuxLoader.h
 delete mode 100644 Platforms/AMD/Styx/Drivers/FdtDxe/LinuxLoaderHelper.c
 create mode 100644 Platforms/AMD/Styx/Library/StyxDtbLoaderLib/StyxDtbLoaderLib.c
 create mode 100644 Platforms/AMD/Styx/Library/StyxDtbLoaderLib/StyxDtbLoaderLib.inf

Comments

Leif Lindholm April 6, 2017, 6:43 p.m. UTC | #1
On Thu, Apr 06, 2017 at 11:29:33AM +0100, Ard Biesheuvel wrote:
> The FdtDxe implementation that lives in Platforms/AMD/Styx is a rather
> unhealthy mix of fossilized pieces of LinuxLoader combined with other
> dependencies on the deprecated ARM BdsLib.
> 
> Since it does lots of things we don't need (involving memory DT nodes
> and other bits we don't use), and doesn't do what we do need (select
> between ACPI and DT but not enable both at the same time), it is time
> to get rid of it.
> 
> So implement a DtPlatformDtbLoaderLib based on the pieces we want to
> keep, and switch Overdrive and Overdrive 1000 to use it, and finally
> remove FdtDxe altogether.

Remaining patches in series:
Revied-by: Leif Lindholm <leif.lindholm@linaro.org>

> 
> Ard Biesheuvel (8):
>   Platforms/AMD: remove /pmu node from Overdrive 1000 DTS
>   Platforms/AMD: clean up whitespace in Overdrive 1000 DTS file
>   Platforms/AMD: remove /pmu node from Overdrive DTS
>   Platforms/AMD: clean up whitespace in Overdrive DTS file
>   Platforms/AMD: implement DtPlatformDtbLoaderLib
>   Platforms/AMD: switch Overdrive to DtPlatformDxe
>   Platforms/AMD: switch Overdrive 1000 to DtPlatformDxe
>   Platform/AMD: remove FdtDxe driver
> 
>  Platforms/AMD/Styx/Drivers/FdtDxe/BdsLinuxFdt.c                      | 760 -----------------
>  Platforms/AMD/Styx/Drivers/FdtDxe/FdtDxe.c                           | 274 ------
>  Platforms/AMD/Styx/Drivers/FdtDxe/FdtDxe.h                           |  54 --
>  Platforms/AMD/Styx/Drivers/FdtDxe/FdtDxe.inf                         |  76 --
>  Platforms/AMD/Styx/Drivers/FdtDxe/LinuxLoader.h                      | 173 ----
>  Platforms/AMD/Styx/Drivers/FdtDxe/LinuxLoaderHelper.c                | 200 -----
>  Platforms/AMD/Styx/Library/StyxDtbLoaderLib/StyxDtbLoaderLib.c       | 473 +++++++++++
>  Platforms/AMD/Styx/Library/StyxDtbLoaderLib/StyxDtbLoaderLib.inf     |  64 ++
>  Platforms/AMD/Styx/Overdrive1000Board/FdtBlob/styx-overdrive1000.dtb | Bin 8117 -> 7969 bytes
>  Platforms/AMD/Styx/Overdrive1000Board/FdtBlob/styx-overdrive1000.dts |  72 +-
>  Platforms/AMD/Styx/Overdrive1000Board/Overdrive1000Board.dsc         |  10 +-
>  Platforms/AMD/Styx/Overdrive1000Board/Overdrive1000Board.fdf         |   4 +-
>  Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dtb         | Bin 8089 -> 7973 bytes
>  Platforms/AMD/Styx/OverdriveBoard/FdtBlob/styx-overdrive.dts         | 878 ++++++++++----------
>  Platforms/AMD/Styx/OverdriveBoard/OverdriveBoard.dsc                 |  11 +-
>  Platforms/AMD/Styx/OverdriveBoard/OverdriveBoard.fdf                 |   4 +-
>  16 files changed, 1016 insertions(+), 2037 deletions(-)
>  delete mode 100644 Platforms/AMD/Styx/Drivers/FdtDxe/BdsLinuxFdt.c
>  delete mode 100644 Platforms/AMD/Styx/Drivers/FdtDxe/FdtDxe.c
>  delete mode 100644 Platforms/AMD/Styx/Drivers/FdtDxe/FdtDxe.h
>  delete mode 100644 Platforms/AMD/Styx/Drivers/FdtDxe/FdtDxe.inf
>  delete mode 100644 Platforms/AMD/Styx/Drivers/FdtDxe/LinuxLoader.h
>  delete mode 100644 Platforms/AMD/Styx/Drivers/FdtDxe/LinuxLoaderHelper.c
>  create mode 100644 Platforms/AMD/Styx/Library/StyxDtbLoaderLib/StyxDtbLoaderLib.c
>  create mode 100644 Platforms/AMD/Styx/Library/StyxDtbLoaderLib/StyxDtbLoaderLib.inf
> 
> -- 
> 2.9.3
>
Ard Biesheuvel April 7, 2017, 8:48 a.m. UTC | #2
On 6 April 2017 at 19:43, Leif Lindholm <leif.lindholm@linaro.org> wrote:
> On Thu, Apr 06, 2017 at 11:29:33AM +0100, Ard Biesheuvel wrote:
>> The FdtDxe implementation that lives in Platforms/AMD/Styx is a rather
>> unhealthy mix of fossilized pieces of LinuxLoader combined with other
>> dependencies on the deprecated ARM BdsLib.
>>
>> Since it does lots of things we don't need (involving memory DT nodes
>> and other bits we don't use), and doesn't do what we do need (select
>> between ACPI and DT but not enable both at the same time), it is time
>> to get rid of it.
>>
>> So implement a DtPlatformDtbLoaderLib based on the pieces we want to
>> keep, and switch Overdrive and Overdrive 1000 to use it, and finally
>> remove FdtDxe altogether.
>
> Remaining patches in series:
> Revied-by: Leif Lindholm <leif.lindholm@linaro.org>
>

Thanks (I guess)

#1 .. #4 pushed, v2 of #5 coming up