mvebu: 5.15: fix compilation warning for mangle bootargs patch
[openwrt/openwrt.git] / target / linux / mvebu / patches-5.15 / 300-mvebu-Mangle-bootloader-s-kernel-arguments.patch
index 36f10fcfb52c5b64ccfbb73bf94a7bc0b1184013..9069de161469811bd7f0ab131337ae85e446358d 100644 (file)
@@ -28,7 +28,7 @@ Signed-off-by: Michael Gray <michael.gray@lantisproject.com>
 
 --- a/arch/arm/Kconfig
 +++ b/arch/arm/Kconfig
-@@ -1781,6 +1781,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN
+@@ -1727,6 +1727,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN
          The command-line arguments provided by the boot loader will be
          appended to the the device tree bootargs property.
  
@@ -57,16 +57,58 @@ Signed-off-by: Michael Gray <michael.gray@lantisproject.com>
  #else
  #define do_extend_cmdline 0
  #endif
-@@ -69,6 +71,72 @@ static uint32_t get_cell_size(const void
+@@ -20,6 +22,7 @@ static int node_offset(void *fdt, const
+       return offset;
+ }
++#ifndef CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_MANGLE
+ static int setprop(void *fdt, const char *node_path, const char *property,
+                  void *val_array, int size)
+ {
+@@ -28,6 +31,7 @@ static int setprop(void *fdt, const char
+               return offset;
+       return fdt_setprop(fdt, offset, property, val_array, size);
+ }
++#endif
+ static int setprop_string(void *fdt, const char *node_path,
+                         const char *property, const char *string)
+@@ -38,6 +42,7 @@ static int setprop_string(void *fdt, con
+       return fdt_setprop_string(fdt, offset, property, string);
+ }
++#ifndef CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_MANGLE
+ static int setprop_cell(void *fdt, const char *node_path,
+                       const char *property, uint32_t val)
+ {
+@@ -46,6 +51,7 @@ static int setprop_cell(void *fdt, const
+               return offset;
+       return fdt_setprop_cell(fdt, offset, property, val);
+ }
++#endif
+ static const void *getprop(const void *fdt, const char *node_path,
+                          const char *property, int *len)
+@@ -58,6 +64,7 @@ static const void *getprop(const void *f
+       return fdt_getprop(fdt, offset, property, len);
+ }
++#ifndef CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_MANGLE
+ static uint32_t get_cell_size(const void *fdt)
+ {
+       int len;
+@@ -69,6 +76,74 @@ static uint32_t get_cell_size(const void
        return cell_size;
  }
  
++#endif
++
 +#if defined(CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_MANGLE)
 +
 +static char *append_rootblock(char *dest, const char *str, int len, void *fdt)
 +{
-+      char *ptr, *end;
-+      char *root="root=";
++      const char *ptr, *end;
++      const char *root="root=";
 +      int i, l;
 +      const char *rootblock;
 +
@@ -130,7 +172,7 @@ Signed-off-by: Michael Gray <michael.gray@lantisproject.com>
  static void merge_fdt_bootargs(void *fdt, const char *fdt_cmdline)
  {
        char cmdline[COMMAND_LINE_SIZE];
-@@ -88,12 +156,21 @@ static void merge_fdt_bootargs(void *fdt
+@@ -88,18 +163,28 @@ static void merge_fdt_bootargs(void *fdt
  
        /* and append the ATAG_CMDLINE */
        if (fdt_cmdline) {
@@ -152,7 +194,36 @@ Signed-off-by: Michael Gray <michael.gray@lantisproject.com>
        }
        *ptr = '\0';
  
-@@ -168,7 +245,9 @@ int atags_to_fdt(void *atag_list, void *
+       setprop_string(fdt, "/chosen", "bootargs", cmdline);
+ }
++#ifndef CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_MANGLE
+ static void hex_str(char *out, uint32_t value)
+ {
+       uint32_t digit;
+@@ -117,6 +202,7 @@ static void hex_str(char *out, uint32_t
+       }
+       *out = '\0';
+ }
++#endif
+ /*
+  * Convert and fold provided ATAGs into the provided FDT.
+@@ -131,9 +217,11 @@ int atags_to_fdt(void *atag_list, void *
+       struct tag *atag = atag_list;
+       /* In the case of 64 bits memory size, need to reserve 2 cells for
+        * address and size for each bank */
++#ifndef CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_MANGLE
+       __be32 mem_reg_property[2 * 2 * NR_BANKS];
+-      int memcount = 0;
+-      int ret, memsize;
++      int memsize, memcount = 0;
++#endif
++      int ret;
+       /* make sure we've got an aligned pointer */
+       if ((u32)atag_list & 0x3)
+@@ -168,7 +256,9 @@ int atags_to_fdt(void *atag_list, void *
                        else
                                setprop_string(fdt, "/chosen", "bootargs",
                                               atag->u.cmdline.cmdline);
@@ -163,7 +234,7 @@ Signed-off-by: Michael Gray <michael.gray@lantisproject.com>
                        if (memcount >= sizeof(mem_reg_property)/4)
                                continue;
                        if (!atag->u.mem.size)
-@@ -212,6 +291,10 @@ int atags_to_fdt(void *atag_list, void *
+@@ -212,6 +302,10 @@ int atags_to_fdt(void *atag_list, void *
                setprop(fdt, "/memory", "reg", mem_reg_property,
                        4 * memcount * memsize);
        }
@@ -176,7 +247,7 @@ Signed-off-by: Michael Gray <michael.gray@lantisproject.com>
  }
 --- a/init/main.c
 +++ b/init/main.c
-@@ -110,6 +110,10 @@
+@@ -114,6 +114,10 @@
  
  #include <kunit/test.h>
  
@@ -187,7 +258,7 @@ Signed-off-by: Michael Gray <michael.gray@lantisproject.com>
  static int kernel_init(void *);
  
  extern void init_IRQ(void);
-@@ -904,6 +908,18 @@ asmlinkage __visible void __init __no_sa
+@@ -991,6 +995,18 @@ asmlinkage __visible void __init __no_sa
        page_alloc_init();
  
        pr_notice("Kernel command line: %s\n", saved_command_line);