2017-06-24 0:04 GMT+09:00 Arnd Bergmann <arnd@xxxxxxxx>: > On Fri, Jun 23, 2017 at 4:57 PM, Maxime Ripard > <maxime.ripard@xxxxxxxxxxxxxxxxxx> wrote: >> On Fri, Jun 23, 2017 at 02:31:40PM +0900, Masahiro Yamada wrote: >>> As far as I tried, minus MACH_SUN8I still enabled the following: >>> CONFIG_SUNXI_CCU=y >>> CONFIG_SUNXI_CCU_DIV=y >>> CONFIG_SUNXI_CCU_FRAC=y >>> CONFIG_SUNXI_CCU_GATE=y >>> CONFIG_SUNXI_CCU_MUX=y >>> CONFIG_SUNXI_CCU_MULT=y >>> CONFIG_SUNXI_CCU_PHASE=y >>> CONFIG_SUNXI_CCU_NK=y >>> CONFIG_SUNXI_CCU_NKM=y >>> CONFIG_SUNXI_CCU_NKMP=y >>> CONFIG_SUNXI_CCU_NM=y >>> CONFIG_SUNXI_CCU_MP=y >>> >>> I think you need to disable some more MACH_SUN*I and >>> perhaps disable some CONFIG_SUN*I_*_CCU explicitly, >>> then you will see difference in the result. >> >> Ah, right, it's all selected by the rest. >> >> I guess to get a meaningful example you could disable all the >> SUN*I_CCU (SUN5I, SUN8I, and the likes) options and while keeping >> SUN8I_R_CCU. >> >> Most of the clock types shouldn't be used but div and gates. > > Given that we appear to basically always pull in all (or most) of > the CCU parts anyway, and it's hard to even test with a subset > being disabled, I wonder how much we care about dropping > the unused objects at all: > > Maybe the answer is that we just always build all of them into > the kernel and make only the SoC-specific objects configurable ;-) > > Once we start linking with --gc-sections, it will all be fine anyway. > I agree! -- Best Regards Masahiro Yamada