On Sun, Jun 11, 2017 at 11:45:48PM +0200, Andreas Färber wrote: > Am 12.02.2017 um 15:03 schrieb Marek Vasut: > > On 02/12/2017 02:24 PM, Andreas Färber wrote: > >> Am 12.02.2017 um 13:53 schrieb Marek Vasut: > >>> On 02/12/2017 01:24 PM, Andreas Färber wrote: > >>>> Am 12.02.2017 um 12:55 schrieb Marek Vasut: > >>>>> On 02/12/2017 12:52 PM, Andreas Färber wrote: > >>>>>> CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y leads to this error: > >>>>>> > >>>>>> LD spl/u-boot-spl > >>>>>> mipsel-suse-linux-ld.bfd: u-boot-spl section `.data' will not fit in > >>>>>> region `.sram' > >>>>>> mipsel-suse-linux-ld.bfd: region `.sram' overflowed by 288 bytes > >>>>>> ../scripts/Makefile.spl:304: recipe for target 'spl/u-boot-spl' failed > >>>>>> make[2]: *** [spl/u-boot-spl] Error 1 > >>>>>> /home/andreas/OBS/u-boot/Makefile:1342: recipe for target > >>>>>> 'spl/u-boot-spl' failed > >>>>>> make[1]: *** [spl/u-boot-spl] Error 2 > >>>>>> make[1]: Leaving directory '/home/andreas/OBS/u-boot/ci20' > >>>>>> Makefile:150: recipe for target 'sub-make' failed > >>>>>> make: *** [sub-make] Error 2 > >>>>>> > >>>>>> I've reviewed all SPL Kconfig options and found three seemingly > >>>>>> unneeded > >>>>>> options defaulting to y, but I did not find a way to get this number > >>>>>> down even a single byte with my GCC 6.3.1, and the recommended 4.8.1 > >>>>>> was > >>>>>> even worse (~748). > >>>> I'm looking into a gcc7 package next, but that'll take a bit. > >>> > >>> I don't think that's gonna help with U-Boot's bloat. [...] > >> > >> Yeah, slightly down with GCC 7.0.1, but not much: > > > > Right, it's the new bloat ... > > > >> LD spl/u-boot-spl > >> mipsel-suse-linux-ld.bfd: u-boot-spl section `.data' will not fit in > >> region `.sram' > >> mipsel-suse-linux-ld.bfd: region `.sram' overflowed by 264 bytes > >> ../scripts/Makefile.spl:304: recipe for target 'spl/u-boot-spl' failed > >> make[2]: *** [spl/u-boot-spl] Error 1 > >> /home/andreas/OBS/u-boot/Makefile:1342: recipe for target > >> 'spl/u-boot-spl' failed > >> make[1]: *** [spl/u-boot-spl] Error 2 > >> make[1]: Leaving directory '/home/andreas/OBS/u-boot/ci20' > >> Makefile:150: recipe for target 'sub-make' failed > >> make: *** [sub-make] Error 2 > > Update: I've rebased the patchset to latest master > (8cb3ce64f936f5dedbcfc1935c5caf31bb682474 / "Merge > git://git.denx.de/u-boot-dm") - BMIPS caused trivial conflicts, and DM > API changes needed to be accounted for. > > https://github.com/afaerber/u-boot/commits/ci20 > > By further disabling CONFIG_SPL_RAW_IMAGE_SUPPORT in the ci20 defconfig > I am now at 344 bytes overflow (gcc 7.1.1): > > LD spl/u-boot-spl > mipsel-suse-linux-ld.bfd: u-boot-spl section `.data' will not fit in > region `.sram' > mipsel-suse-linux-ld.bfd: region `.sram' overflowed by 344 bytes > ../scripts/Makefile.spl:333: recipe for target 'spl/u-boot-spl' failed > make[2]: *** [spl/u-boot-spl] Error 1 > /home/andreas/OBS/u-boot/Makefile:1382: recipe for target > 'spl/u-boot-spl' failed > make[1]: *** [spl/u-boot-spl] Error 2 > > By disabling SPL GPIO support and hardcoding a board revision instead of > detecting it via GPIOs, I can get it down to 80 bytes. > > By aggressively adding #ifndef CONFIG_SPL_BUILD in ci20.c I'm down to 64 > bytes, but not sure if some of that is actually needed for SPL... > > Tom, do you see a chance of merging any of the drivers without the whole > board building, so that we can reduce the rebasing work and get a common > base for optimizing?
Yes, I would be agreeable to that, especially if say they can be enabled also on qemu-mips so we have build but not run time testing and thus aren't adding dead code. -- Tom
signature.asc
Description: Digital signature
_______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot