[RFC PATCH v2 17/48] lmb: allow lmb module to be used in SPL
Sughosh Ganu
sughosh.ganu at linaro.org
Mon Jul 15 11:24:03 CEST 2024
hi Simon,
On Sat, 13 Jul 2024 at 20:45, Simon Glass <sjg at chromium.org> wrote:
>
> Hi Sughosh,
>
> On Thu, 4 Jul 2024 at 08:37, Sughosh Ganu <sughosh.ganu at linaro.org> wrote:
> >
> > With the introduction of separate config symbols for the SPL phase of
> > U-Boot, the condition checks need to be tweaked so that platforms that
> > enable the LMB module in SPL are also able to call the LMB API's. Use
> > the appropriate condition checks to achieve this.
> >
> > Signed-off-by: Sughosh Ganu <sughosh.ganu at linaro.org>
> > ---
> > Changes since V1: New patch
> >
> > board/xilinx/common/board.c | 2 +-
> > boot/bootm.c | 4 ++--
> > boot/image-board.c | 2 +-
> > fs/fs.c | 4 ++--
> > lib/Makefile | 2 +-
> > net/tftp.c | 6 +++---
> > net/wget.c | 4 ++--
> > 7 files changed, 12 insertions(+), 12 deletions(-)
> >
> > diff --git a/board/xilinx/common/board.c b/board/xilinx/common/board.c
> > index 4056884400..f04c92a70f 100644
> > --- a/board/xilinx/common/board.c
> > +++ b/board/xilinx/common/board.c
> > @@ -665,7 +665,7 @@ int embedded_dtb_select(void)
> > }
> > #endif
> >
> > -#if defined(CONFIG_LMB)
> > +#if IS_ENABLED(CONFIG_LMB)
> >
> > #ifndef MMU_SECTION_SIZE
> > #define MMU_SECTION_SIZE (1 * 1024 * 1024)
> > diff --git a/boot/bootm.c b/boot/bootm.c
> > index 7b3fe551de..5ce84b73b5 100644
> > --- a/boot/bootm.c
> > +++ b/boot/bootm.c
> > @@ -239,7 +239,7 @@ static int boot_get_kernel(const char *addr_fit, struct bootm_headers *images,
> > return 0;
> > }
> >
> > -#ifdef CONFIG_LMB
> > +#if CONFIG_IS_ENABLED(LMB)
>
> Can you avoid #ifdefs where possible?
Okay
>
> > static void boot_start_lmb(void)
> > {
> > phys_addr_t mem_start;
> > @@ -1048,7 +1048,7 @@ int bootm_run_states(struct bootm_info *bmi, int states)
> > }
> > }
> > #endif
> > -#if CONFIG_IS_ENABLED(OF_LIBFDT) && defined(CONFIG_LMB)
> > +#if CONFIG_IS_ENABLED(OF_LIBFDT) && CONFIG_IS_ENABLED(LMB)
> > if (!ret && (states & BOOTM_STATE_FDT)) {
> > boot_fdt_add_mem_rsv_regions(images->ft_addr);
> > ret = boot_relocate_fdt(&images->ft_addr, &images->ft_len);
> > diff --git a/boot/image-board.c b/boot/image-board.c
> > index 1f8c1ac69f..99ee7968ba 100644
> > --- a/boot/image-board.c
> > +++ b/boot/image-board.c
> > @@ -883,7 +883,7 @@ int image_setup_linux(struct bootm_headers *images)
> > int ret;
> >
> > /* This function cannot be called without lmb support */
> > - if (!IS_ENABLED(CONFIG_LMB))
> > + if (!CONFIG_IS_ENABLED(LMB))
> > return -EFAULT;
> > if (CONFIG_IS_ENABLED(OF_LIBFDT))
> > boot_fdt_add_mem_rsv_regions(*of_flat_tree);
> > diff --git a/fs/fs.c b/fs/fs.c
> > index 2c835eef86..3fb00590be 100644
> > --- a/fs/fs.c
> > +++ b/fs/fs.c
> > @@ -526,7 +526,7 @@ int fs_size(const char *filename, loff_t *size)
> > return ret;
> > }
> >
> > -#ifdef CONFIG_LMB
> > +#if CONFIG_IS_ENABLED(LMB)
> > /* Check if a file may be read to the given address */
> > static int fs_read_lmb_check(const char *filename, ulong addr, loff_t offset,
> > loff_t len, struct fstype_info *info)
> > @@ -567,7 +567,7 @@ static int _fs_read(const char *filename, ulong addr, loff_t offset, loff_t len,
> > void *buf;
> > int ret;
> >
> > -#ifdef CONFIG_LMB
> > +#if CONFIG_IS_ENABLED(LMB)
> > if (do_lmb_check) {
> > ret = fs_read_lmb_check(filename, addr, offset, len, info);
> > if (ret)
> > diff --git a/lib/Makefile b/lib/Makefile
> > index 81b503ab52..398c11726e 100644
> > --- a/lib/Makefile
> > +++ b/lib/Makefile
> > @@ -118,7 +118,7 @@ obj-$(CONFIG_$(SPL_TPL_)OF_LIBFDT) += fdtdec.o fdtdec_common.o
> > obj-y += hang.o
> > obj-y += linux_compat.o
> > obj-y += linux_string.o
> > -obj-$(CONFIG_LMB) += lmb.o
> > +obj-$(CONFIG_$(SPL_)LMB) += lmb.o
> > obj-y += membuff.o
> > obj-$(CONFIG_REGEX) += slre.o
> > obj-y += string.o
> > diff --git a/net/tftp.c b/net/tftp.c
> > index 5e27fd4aa9..5c75d9d04f 100644
> > --- a/net/tftp.c
> > +++ b/net/tftp.c
> > @@ -82,7 +82,7 @@ static ulong tftp_block_wrap;
> > static ulong tftp_block_wrap_offset;
> > static int tftp_state;
> > static ulong tftp_load_addr;
> > -#ifdef CONFIG_LMB
> > +#if CONFIG_IS_ENABLED(LMB)
> > static ulong tftp_load_size;
> > #endif
> > #ifdef CONFIG_TFTP_TSIZE
> > @@ -160,7 +160,7 @@ static inline int store_block(int block, uchar *src, unsigned int len)
> > ulong store_addr = tftp_load_addr + offset;
> > void *ptr;
> >
> > -#ifdef CONFIG_LMB
> > +#if CONFIG_IS_ENABLED(LMB)
> > ulong end_addr = tftp_load_addr + tftp_load_size;
> >
> > if (!end_addr)
> > @@ -710,7 +710,7 @@ static void tftp_timeout_handler(void)
> > /* Initialize tftp_load_addr and tftp_load_size from image_load_addr and lmb */
> > static int tftp_init_load_addr(void)
> > {
> > -#ifdef CONFIG_LMB
> > +#if CONFIG_IS_ENABLED(LMB)
>
> here too
Okay
-sughosh
>
> > phys_size_t max_size;
> >
> > lmb_init_and_reserve(gd->bd, (void *)gd->fdt_blob);
> > diff --git a/net/wget.c b/net/wget.c
> > index 7cf809a8ef..b8ea43e7f0 100644
> > --- a/net/wget.c
> > +++ b/net/wget.c
> > @@ -98,7 +98,7 @@ static inline int store_block(uchar *src, unsigned int offset, unsigned int len)
> > ulong newsize = offset + len;
> > uchar *ptr;
> >
> > - if (IS_ENABLED(CONFIG_LMB)) {
> > + if (CONFIG_IS_ENABLED(LMB)) {
> > ulong end_addr = image_load_addr + wget_load_size;
> >
> > if (!end_addr)
> > @@ -496,7 +496,7 @@ void wget_start(void)
> > debug_cond(DEBUG_WGET,
> > "\nwget:Load address: 0x%lx\nLoading: *\b", image_load_addr);
> >
> > - if (IS_ENABLED(CONFIG_LMB)) {
> > + if (CONFIG_IS_ENABLED(LMB)) {
> > if (wget_init_load_size()) {
> > printf("\nwget error: ");
> > printf("trying to overwrite reserved memory...\n");
> > --
> > 2.34.1
> >
>
> Regards,
> Simon
More information about the U-Boot
mailing list