after several times long discussion with marc. We finally decide to make the filo kconfig as below rules:
1) move filo source code to coreboot/payloads. We should put all of there payloads under this directory right?
2) check the filo libpayload configuration before loading kconfig. The design of the payload infrastructure is gonna to make libpayload be included, but the only method for that is use the makefile “source” command, so we should tell this “source ” where this libpayload is. if the filo located in coreboot/payloads/, then for filo the payload must be under the path “../libpayload”.
3) merge the libpayload configuration into filo payload configuration, after loading libpayload kconfig under the filo kconfig, after this configuration all of the configuration are saved in the default .config file. Then copy the whole .config into libpayload directory. these configuration about filo may be useless for libpayload, but it does not matter, which will not influent the libpayload installation.
4) the next step may be check if there is any conflict between the libpayload and the other paylaods.
I don’t think that moving all payloads to coreboot/payloads is a good idea, or even possible.
While this might work for FILO, it will fail for everything else: Linux, OpenBIOS, GRUB2, memtest86, gpxe/etherboot, …