On Mon, Jan 19, 2026 at 11:09:26AM +0530, Varadarajan Narayanan wrote:
> On Fri, Jan 16, 2026 at 08:43:55AM -0600, Tom Rini wrote:
> > On Fri, Jan 16, 2026 at 12:39:47PM +0530, Varadarajan Narayanan wrote:
> > > On Tue, Jan 13, 2026 at 08:42:44AM -0600, Tom Rini wrote:
> > > > On Tue, Jan 13, 2026 at 04:08:35PM +0530, Varadarajan Narayanan wrote:
> > > >
> > > > > Using the 'reboot edl' command in Linux, the platform can reboot to 
> > > > > the
> > > > > Emergency Download mode. Implement the same for U-Boot.
> > > >
> > > > Have you used buildman's size checking options before? If not,
> > >
> > > No.
> > >
> > > > https://source.denx.de/u-boot/u-boot-extras/-/blob/master/contrib/trini/u-boot-size-test.sh?ref_type=heads
> > > > may be helpful to you, as it can be a bit tricky at first (but IMHO is
> > > > better than the linux kernel bloat-o-meter). I ask because, what is the
> > > > size impact of these changes on things like say qemu_arm64 and qemu_arm?
> > > > I saw the cmd/ portion is guarded by a new CONFIG option which is good,
> > > > but I wonder about the more generic sysreset changes. Thanks!
> > >
> > > Please see below for u-boot-size-test.sh output
> > >
> > > $ ./u-boot-size-test.sh --board qcom_ipq9574_mmc
> > > Generating board list...Processing #include to produce 
> > > configs/socfpga_agilex5_vab_defconfig
> > > Processing #include to produce configs/r8a78000_ironhide_defconfig
> > >   .
> > >   .
> > >   .
> > > Processing #include to produce configs/am69_sk_a72_defconfig
> > > Building 2 commits for 1 boards (1 thread, 16 jobs per thread)
> > > 01: configs: am57xx_hs_evm_defconfig: Reserve EMIF memory used by PPA
> > > 06: qcom_defconfig: enable psci based sysreset
> > >     2    0    0 /2              qcom_ipq9574_mmc
> > > Completed: 2 total built, 2 newly), duration 0:00:13, rate 0.15
> > > /tmp/qcom_ipq9574_mmc/edl5/boards.cfg is up to date. Nothing to do.
> > > Summary of 2 commits for 1 boards (1 thread, 16 jobs per thread)
> > > 01: configs: am57xx_hs_evm_defconfig: Reserve EMIF memory used by PPA
> > > 06: qcom_defconfig: enable psci based sysreset
> > >    aarch64: (for 1/1 boards) all +224.0 data +8.0 text +216.0
> > >             qcom_ipq9574_mmc: all +224 data +8 text +216
> > >                u-boot: add: 2/0, grow: 2/0 bytes: 224/0 (224)
> > >                  function                                   old     new   
> > > delta
> > >                  sysreset_walk_arg                            -     124   
> > >  +124
> > >                  do_reset                                   100     160   
> > >   +60
> > >                  sysreset_request_arg                         -      32   
> > >   +32
> > >                  psci_sysreset_ops                           24      32   
> > >    +8
> > > (no errors to report)
> >
> > OK, so minimal growth on the platforms that would use it. How about
> > platforms which don't? qemu_arm and qemu_arm64 should build the sysreset
> > code in general and that's where I'm most concerned, platforms which
> > aren't using this feature. Thanks.
> 
> Please see below for u-boot-size-test.sh output
> 
> $ ./u-boot-size-test.sh --board qemu_arm
> Generating board list...Processing #include to produce 
> configs/socfpga_agilex5_vab_defconfig
> Processing #include to produce configs/imx6ulz_smm_m2_defconfig
>       .
>       .
>       .
> Processing #include to produce configs/am69_sk_a72_defconfig
> Building 2 commits for 1 boards (1 thread, 16 jobs per thread)
> 01: configs: am57xx_hs_evm_defconfig: Reserve EMIF memory used by PPA
> 06: qcom_defconfig: enable psci based sysreset
>     2    0    0 /2              qemu_arm
> Completed: 2 total built, 2 newly), duration 0:00:18, rate 0.11
> /tmp/qemu_arm/edl5/boards.cfg is up to date. Nothing to do.
> Summary of 2 commits for 1 boards (1 thread, 16 jobs per thread)
> 01: configs: am57xx_hs_evm_defconfig: Reserve EMIF memory used by PPA
> 06: qcom_defconfig: enable psci based sysreset
>        arm: (for 1/1 boards) all +184.0 text +184.0
>             qemu_arm       : all +184 text +184
>                u-boot: add: 2/0, grow: 2/0 bytes: 184/0 (184)
>                  function                                   old     new   
> delta
>                  sysreset_walk_arg                            -     104    
> +104
>                  do_reset                                    92     136     
> +44
>                  sysreset_request_arg                         -      32     
> +32
>                  psci_sysreset_ops                           12      16      
> +4
> (no errors to report)
> 
> $ ./u-boot-size-test.sh --board qemu_arm64
> Generating board list...Processing #include to produce 
> configs/socfpga_agilex5_vab_defconfig
> Processing #include to produce configs/imx6ulz_smm_m2_defconfig
>       .
>       .
>       .
> Processing #include to produce configs/genmai_defconfig
> Building 2 commits for 1 boards (1 thread, 16 jobs per thread)
> 01: configs: am57xx_hs_evm_defconfig: Reserve EMIF memory used by PPA
> 06: qcom_defconfig: enable psci based sysreset
>     2    0    0 /2              qemu_arm64
> Completed: 2 total built, 2 newly), duration 0:00:19, rate 0.11
> /tmp/qemu_arm64/edl5/boards.cfg is up to date. Nothing to do.
> Summary of 2 commits for 1 boards (1 thread, 16 jobs per thread)
> 01: configs: am57xx_hs_evm_defconfig: Reserve EMIF memory used by PPA
> 06: qcom_defconfig: enable psci based sysreset
>    aarch64: (for 1/1 boards) all +216.0 data +8.0 rodata -8.0 text +216.0
>             qemu_arm64     : all +216 data +8 rodata -8 text +216
>                u-boot: add: 2/0, grow: 2/0 bytes: 224/0 (224)
>                  function                                   old     new   
> delta
>                  sysreset_walk_arg                            -     124    
> +124
>                  do_reset                                   100     160     
> +60
>                  sysreset_request_arg                         -      32     
> +32
>                  psci_sysreset_ops                           24      32      
> +8
> (no errors to report)

That's not great. Can you please look at if you can cleanly rework your
changes to have less, or ideally no, size growth on the 700+ other
platforms that enable SYSRESET? Thanks.

-- 
Tom

Attachment: signature.asc
Description: PGP signature

Reply via email to