Hi Safae, On Thu, 26 Jan 2023 at 09:05, Safae Ouajih <soua...@baylibre.com> wrote: > > In version 3 and 4 of boot image header, the vendor specific
vendor-spefcific > command line are located in vendor boot image. Thus, using use the > extra command line to add those cmd to bootargs. > > Signed-off-by: Safae Ouajih <soua...@baylibre.com> > --- > boot/image-android.c | 11 +++++++++++ > 1 file changed, 11 insertions(+) > > diff --git a/boot/image-android.c b/boot/image-android.c > index 5b270e4417..cb4fc22b00 100644 > --- a/boot/image-android.c > +++ b/boot/image-android.c > @@ -55,6 +55,7 @@ static void android_vendor_boot_image_v3_v4_parse_hdr(const > struct andr_vendor_i > * The header takes a full page, the remaining components are aligned > * on page boundary. > */ > + data->kcmdline_extra = hdr->cmdline; > data->tags_addr = hdr->tags_addr; > data->image_name = hdr->name; > data->kernel_addr = hdr->kernel_addr; > @@ -233,6 +234,11 @@ int android_image_get_kernel(const struct > andr_boot_img_hdr_v0 *hdr, > len += strlen(img_data.kcmdline); > } > > + if (img_data.kcmdline_extra) { > + printf("Kernel extra command line: %s\n", > img_data.kcmdline_extra); > + len += strlen(img_data.kcmdline_extra); > + } > + > char *bootargs = env_get("bootargs"); > if (bootargs) > len += strlen(bootargs); > @@ -252,6 +258,11 @@ int android_image_get_kernel(const struct > andr_boot_img_hdr_v0 *hdr, > if (*img_data.kcmdline) > strcat(newbootargs, img_data.kcmdline); > > + if (img_data.kcmdline_extra) { > + strcat(newbootargs, " "); > + strcat(newbootargs, img_data.kcmdline_extra); Do we need to worry about overflow? > + } > + > env_set("bootargs", newbootargs); > > if (os_data) { > -- > 2.34.1 > Regards, Simon