mbox series

[V7,0/4] arm64: binman: use binman symbols for imx

Message ID 20220627034130.5892-1-peng.fan@oss.nxp.com
Headers show
Series arm64: binman: use binman symbols for imx | expand

Message

Peng Fan (OSS) June 27, 2022, 3:41 a.m. UTC
From: Peng Fan <peng.fan@nxp.com>

V7:
 Rebased with follwoing patchset applied.
 [1] i.MX93 patchset: https://patchwork.ozlabs.org/project/uboot/cover/20220627032455.28280-1-peng.fan@oss.nxp.com/
 [2] binman symbols fix: https://patchwork.ozlabs.org/project/uboot/cover/20220618121316.12061-1-alpernebiyasak@gmail.com/ 

V6:
 Drop no-u-boot-any introduced in V5
 Drop binman symbol replacement with @ to _, which is not needed
 Update imx8m config to not select RAM IMAGE and RAM DEVICE
 Update ddr firmware node name
 Introduce autoconf.h for binman test

V5:
 Introduce no-u-boot-any property to drop the X86 guard patch 1
 Add blob-ext type for ddr firmware node
 Include a missing dts change

V4:
 Fix three boards build failure

V3:
 Add R-b/T-b
 Fix build warning

V2:
 resolve some CI failure
 include patch 7

binman symbol is a good feature, but only used on X86 for now. This patchset
is to use it for i.MX8M platform.

The current imx8m ddr phy firmware consumes lots of space, because we pad
them to the largest 32KB and 16KB for IMEM and DMEM.

With this patchset we use binman symbols to get firmware location and size,
we could save near 36KB with i.MX8MP-EVK.

Please help check and test



Peng Fan (4):
  arm: dts: imx8m: update binman ddr firmware node name
  ddr: imx8m: helper: load ddr firmware according to binman symbols
  arm: dts: imx8m: shrink ddr firmware size to actual file size
  imx: imx8mm-icore: migrate to use BINMAN

 arch/arm/dts/imx8mm-u-boot.dtsi               | 16 +++----
 arch/arm/dts/imx8mn-beacon-kit-u-boot.dtsi    | 20 ++++----
 .../dts/imx8mn-bsh-smm-s2-u-boot-common.dtsi  |  8 ++--
 arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi      | 20 ++++----
 arch/arm/dts/imx8mn-evk-u-boot.dtsi           | 20 ++++----
 .../dts/imx8mn-var-som-symphony-u-boot.dtsi   | 16 +++----
 arch/arm/dts/imx8mn-venice-u-boot.dtsi        | 16 +++----
 arch/arm/dts/imx8mp-u-boot.dtsi               | 20 ++++----
 arch/arm/dts/imx8mq-cm-u-boot.dtsi            | 20 ++++----
 arch/arm/dts/imx8mq-u-boot.dtsi               | 16 +++----
 arch/arm/mach-imx/imx8m/Kconfig               |  1 +
 .../mach-imx/imx8m/imximage-8mm-lpddr4.cfg    | 10 +---
 configs/imx8mm-icore-mx8mm-ctouch2_defconfig  |  2 +-
 configs/imx8mm-icore-mx8mm-edimm2.2_defconfig |  2 +-
 drivers/ddr/imx/phy/helper.c                  | 47 ++++++++++++++++---
 15 files changed, 141 insertions(+), 93 deletions(-)

Comments

Frieder Schrempf June 27, 2022, 9:01 a.m. UTC | #1
Hi Peng,

Am 27.06.22 um 05:41 schrieb Peng Fan (OSS):
> From: Peng Fan <peng.fan@nxp.com>
> 
> V7:
>  Rebased with follwoing patchset applied.
>  [1] i.MX93 patchset: https://patchwork.ozlabs.org/project/uboot/cover/20220627032455.28280-1-peng.fan@oss.nxp.com/
>  [2] binman symbols fix: https://patchwork.ozlabs.org/project/uboot/cover/20220618121316.12061-1-alpernebiyasak@gmail.com/ 

I tested this on next with the two patchsets mentioned above applied on
a kontron-sl-mx8mm board. I get around 38 KiB of SPL size reduction,
which is great!

Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de>

Thanks!
Frieder

> 
> V6:
>  Drop no-u-boot-any introduced in V5
>  Drop binman symbol replacement with @ to _, which is not needed
>  Update imx8m config to not select RAM IMAGE and RAM DEVICE
>  Update ddr firmware node name
>  Introduce autoconf.h for binman test
> 
> V5:
>  Introduce no-u-boot-any property to drop the X86 guard patch 1
>  Add blob-ext type for ddr firmware node
>  Include a missing dts change
> 
> V4:
>  Fix three boards build failure
> 
> V3:
>  Add R-b/T-b
>  Fix build warning
> 
> V2:
>  resolve some CI failure
>  include patch 7
> 
> binman symbol is a good feature, but only used on X86 for now. This patchset
> is to use it for i.MX8M platform.
> 
> The current imx8m ddr phy firmware consumes lots of space, because we pad
> them to the largest 32KB and 16KB for IMEM and DMEM.
> 
> With this patchset we use binman symbols to get firmware location and size,
> we could save near 36KB with i.MX8MP-EVK.
> 
> Please help check and test
> 
> 
> 
> Peng Fan (4):
>   arm: dts: imx8m: update binman ddr firmware node name
>   ddr: imx8m: helper: load ddr firmware according to binman symbols
>   arm: dts: imx8m: shrink ddr firmware size to actual file size
>   imx: imx8mm-icore: migrate to use BINMAN
> 
>  arch/arm/dts/imx8mm-u-boot.dtsi               | 16 +++----
>  arch/arm/dts/imx8mn-beacon-kit-u-boot.dtsi    | 20 ++++----
>  .../dts/imx8mn-bsh-smm-s2-u-boot-common.dtsi  |  8 ++--
>  arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi      | 20 ++++----
>  arch/arm/dts/imx8mn-evk-u-boot.dtsi           | 20 ++++----
>  .../dts/imx8mn-var-som-symphony-u-boot.dtsi   | 16 +++----
>  arch/arm/dts/imx8mn-venice-u-boot.dtsi        | 16 +++----
>  arch/arm/dts/imx8mp-u-boot.dtsi               | 20 ++++----
>  arch/arm/dts/imx8mq-cm-u-boot.dtsi            | 20 ++++----
>  arch/arm/dts/imx8mq-u-boot.dtsi               | 16 +++----
>  arch/arm/mach-imx/imx8m/Kconfig               |  1 +
>  .../mach-imx/imx8m/imximage-8mm-lpddr4.cfg    | 10 +---
>  configs/imx8mm-icore-mx8mm-ctouch2_defconfig  |  2 +-
>  configs/imx8mm-icore-mx8mm-edimm2.2_defconfig |  2 +-
>  drivers/ddr/imx/phy/helper.c                  | 47 ++++++++++++++++---
>  15 files changed, 141 insertions(+), 93 deletions(-)
>
Peng Fan June 27, 2022, 9:02 a.m. UTC | #2
> Subject: Re: [PATCH V7 0/4] arm64: binman: use binman symbols for imx
> 
> Hi Peng,
> 
> Am 27.06.22 um 05:41 schrieb Peng Fan (OSS):
> > From: Peng Fan <peng.fan@nxp.com>
> >
> > V7:
> >  Rebased with follwoing patchset applied.
> >  [1] i.MX93 patchset:
> > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatc
> >
> hwork.ozlabs.org%2Fproject%2Fuboot%2Fcover%2F20220627032455.28280-
> 1-pe
> >
> ng.fan%40oss.nxp.com%2F&amp;data=05%7C01%7Cpeng.fan%40nxp.com%7
> C4d84e7
> >
> f4d2a64aa0c42608da581ba444%7C686ea1d3bc2b4c6fa92cd99c5c301635%
> 7C0%7C0%
> >
> 7C637919173000954346%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjA
> wMDAiLCJQI
> >
> joiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&amp;s
> data=95
> >
> jEtkvfpG3HVgqTpeodf%2BQXjw5DBnYVpZ7%2BCBaKfp0%3D&amp;reserved=
> 0
> >  [2] binman symbols fix:
> > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatc
> >
> hwork.ozlabs.org%2Fproject%2Fuboot%2Fcover%2F20220618121316.12061-
> 1-al
> >
> pernebiyasak%40gmail.com%2F&amp;data=05%7C01%7Cpeng.fan%40nxp.co
> m%7C4d
> >
> 84e7f4d2a64aa0c42608da581ba444%7C686ea1d3bc2b4c6fa92cd99c5c3016
> 35%7C0%
> >
> 7C0%7C637919173000954346%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC
> 4wLjAwMDAiL
> >
> CJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&a
> mp;sdat
> > a=jdsYVWoijLk0cGEA2xyVtF6AKNj7ajNxSILFLXkypZE%3D&amp;reserved=0
> 
> I tested this on next with the two patchsets mentioned above applied on a
> kontron-sl-mx8mm board. I get around 38 KiB of SPL size reduction, which is
> great!
> 
> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de>

Thanks for testing this patchset.

Thanks,
Peng.

> 
> Thanks!
> Frieder
> 
> >
> > V6:
> >  Drop no-u-boot-any introduced in V5
> >  Drop binman symbol replacement with @ to _, which is not needed
> > Update imx8m config to not select RAM IMAGE and RAM DEVICE  Update
> ddr
> > firmware node name  Introduce autoconf.h for binman test
> >
> > V5:
> >  Introduce no-u-boot-any property to drop the X86 guard patch 1  Add
> > blob-ext type for ddr firmware node  Include a missing dts change
> >
> > V4:
> >  Fix three boards build failure
> >
> > V3:
> >  Add R-b/T-b
> >  Fix build warning
> >
> > V2:
> >  resolve some CI failure
> >  include patch 7
> >
> > binman symbol is a good feature, but only used on X86 for now. This
> > patchset is to use it for i.MX8M platform.
> >
> > The current imx8m ddr phy firmware consumes lots of space, because we
> > pad them to the largest 32KB and 16KB for IMEM and DMEM.
> >
> > With this patchset we use binman symbols to get firmware location and
> > size, we could save near 36KB with i.MX8MP-EVK.
> >
> > Please help check and test
> >
> >
> >
> > Peng Fan (4):
> >   arm: dts: imx8m: update binman ddr firmware node name
> >   ddr: imx8m: helper: load ddr firmware according to binman symbols
> >   arm: dts: imx8m: shrink ddr firmware size to actual file size
> >   imx: imx8mm-icore: migrate to use BINMAN
> >
> >  arch/arm/dts/imx8mm-u-boot.dtsi               | 16 +++----
> >  arch/arm/dts/imx8mn-beacon-kit-u-boot.dtsi    | 20 ++++----
> >  .../dts/imx8mn-bsh-smm-s2-u-boot-common.dtsi  |  8 ++--
> >  arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi      | 20 ++++----
> >  arch/arm/dts/imx8mn-evk-u-boot.dtsi           | 20 ++++----
> >  .../dts/imx8mn-var-som-symphony-u-boot.dtsi   | 16 +++----
> >  arch/arm/dts/imx8mn-venice-u-boot.dtsi        | 16 +++----
> >  arch/arm/dts/imx8mp-u-boot.dtsi               | 20 ++++----
> >  arch/arm/dts/imx8mq-cm-u-boot.dtsi            | 20 ++++----
> >  arch/arm/dts/imx8mq-u-boot.dtsi               | 16 +++----
> >  arch/arm/mach-imx/imx8m/Kconfig               |  1 +
> >  .../mach-imx/imx8m/imximage-8mm-lpddr4.cfg    | 10 +---
> >  configs/imx8mm-icore-mx8mm-ctouch2_defconfig  |  2 +-
> > configs/imx8mm-icore-mx8mm-edimm2.2_defconfig |  2 +-
> >  drivers/ddr/imx/phy/helper.c                  | 47
> ++++++++++++++++---
> >  15 files changed, 141 insertions(+), 93 deletions(-)
> >