2016-12-20 6:59 GMT+09:00 Tom Rini <tr...@konsulko.com>: > On Mon, Dec 19, 2016 at 07:31:02PM +0900, Masahiro Yamada wrote: >> Commit be72591bcd64 ("Kconfig: Move USE_ARCH_MEMCPY/MEMSET to >> Kconfig") is misconversion. >> >> The original logic in include/configs/uniphier.h was as follows: >> >> #if !defined(CONFIG_SPL_BUILD) && !defined(CONFIG_ARM64) >> #define CONFIG_USE_ARCH_MEMSET >> #define CONFIG_USE_ARCH_MEMCPY >> #endif >> >> This means those configs were enabled when building U-Boot proper, >> but disabled when building SPL. Likewise for Tegra. >> >> Now "depends on !SPL" prevents any boards with SPL support >> from reaching these options. This changed the behavior for >> UniPhier and Tegra SoC family. >> >> Please notice these two options only control the U-Boot proper >> build. As you see arch/arm/Makefile, ARM-specific memset/memcpy >> are never compiled for SPL. So, __HAVE_ARCH_MEMCPY/MEMSET should >> not set for SPL. >> >> Fixes: be72591bcd64 ("Kconfig: Move USE_ARCH_MEMCPY/MEMSET to Kconfig") >> Signed-off-by: Masahiro Yamada <yamada.masah...@socionext.com> > > Ah, oops, thanks for spotting that one. > >> --- >> >> I am restoring the original behavior for now. >> But, I have been wondering if we could remove these options entirely. > > We cannot. That was my first attempt and we have a handful of active (I > checked) boards with tiny enough SPL constraints that switching to the > optimized memcpy/memset push them over size limit and they do not have a > "something" to disable to gain the space back. So I went with asking > for asking for a conversion to enable by default these options as widely > as possible as it's a good thing by and (no pun intended) large.
Perhaps, I may be missing something, but I could not understand why you were talking about SPL size constraints. As far as I understood arch/arm/lib/Makefile, arch/arm/lib/memset.o is never compiled for SPL in the first place. I believe CONFIG_USE_ARCH_MEMSET has no impact to SPL. ifndef CONFIG_SPL_BUILD ifdef CONFIG_ARM64 obj-y += relocate_64.o else obj-y += relocate.o endif obj-$(CONFIG_CPU_V7M) += cmd_boot.o obj-$(CONFIG_OF_LIBFDT) += bootm-fdt.o obj-$(CONFIG_CMD_BOOTI) += bootm.o obj-$(CONFIG_CMD_BOOTM) += bootm.o obj-$(CONFIG_CMD_BOOTZ) += bootm.o zimage.o obj-$(CONFIG_SYS_L2_PL310) += cache-pl310.o obj-$(CONFIG_USE_ARCH_MEMSET) += memset.o obj-$(CONFIG_USE_ARCH_MEMCPY) += memcpy.o else obj-$(CONFIG_SPL_FRAMEWORK) += spl.o obj-$(CONFIG_SPL_FRAMEWORK) += zimage.o endif -- Best Regards Masahiro Yamada _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot