Hi Eugen, On Wed, 5 Jul 2023 at 07:05, Eugen Hristev <eugen.hris...@collabora.com> wrote: > > In case CC_OPTIMIZE_FOR_DEBUG is set, unused code will not be optimized out, > hence the reference to fpga_load will be compiled. > if DM_FPGA and SPL_FPGA are not set, the build will fail with : > > aarch64-none-linux-gnu-ld.bfd: common/spl/spl_fit.o: in function > `spl_fit_upload_fpga': > u-boot/common/spl/spl_fit.c:595: undefined reference to `fpga_load' > > To solve this, added an inline empty stub in the header if > CC_OPTIMIZE_FOR_DEBUG is set such that the build will succeed. > > Signed-off-by: Eugen Hristev <eugen.hris...@collabora.com> > --- > Changes in v2: > - this is a rework as suggested by Simon of this previous patch : > https://patchwork.ozlabs.org/project/uboot/patch/20230619102839.277902-1-eugen.hris...@collabora.com/ > > include/fpga.h | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/include/fpga.h b/include/fpga.h > index ed688cc0fa3b..50ab03af06bb 100644 > --- a/include/fpga.h > +++ b/include/fpga.h > @@ -60,8 +60,17 @@ int fpga_add(fpga_type devtype, void *desc); > int fpga_count(void); > const fpga_desc *const fpga_get_desc(int devnum); > int fpga_is_partial_data(int devnum, size_t img_len); > +#if defined(CONFIG_CC_OPTIMIZE_FOR_DEBUG) > +static inline int fpga_load(int devnum, const void *buf, size_t bsize, > + bitstream_type bstype, int flags) > +{ > + return 0;
It should return -ENOSYS, right? > +} > +#else > int fpga_load(int devnum, const void *buf, size_t bsize, > bitstream_type bstype, int flags); > +#endif > + > int fpga_fsload(int devnum, const void *buf, size_t size, > fpga_fs_info *fpga_fsinfo); > int fpga_loads(int devnum, const void *buf, size_t size, > -- > 2.34.1 > Regards, SImon