* [boot-wrapper-aarch64 PATCH] configure: Do not force kernel-dir as a mandatory input
@ 2024-05-23 11:49 Akos Denke
2024-06-05 13:16 ` Andre Przywara
2024-07-15 12:09 ` Mark Rutland
0 siblings, 2 replies; 4+ messages in thread
From: Akos Denke @ 2024-05-23 11:49 UTC (permalink / raw)
To: linux-arm-kernel; +Cc: Mark Rutland, Akos Denke
kernel-dir was required to fulfill the real dependencies:
* kernel image
* dtc
* dtb
There are already checks for all of these real dependencies, so passing
the `--with-kernel-dir` does not need to be mandatory, in the case these
dependencies are provided separately.
An autoconf `--with-kernel-image` argument was added which allows to
specify the image with its exact location.
The `dtc` can be already provided via the PATH variable, whilst we
already have a `--with-dtb` argument to pass a specific `dtb` file.
These facts together deprecates the mandatoriness of kernel-dir and
allows to provide any arbitrary kernel image, with dtb, dtc and
initramfs, without a need for an assumed kernel directory structure.
This makes the boot-wrapper building easier for prebuilt kernels, where
we do not control the directory structure of the kernel artifacts.
Signed-off-by: Akos Denke <akos.denke@arm.com>
---
configure.ac | 21 ++++++++++++---------
1 file changed, 12 insertions(+), 9 deletions(-)
diff --git a/configure.ac b/configure.ac
index 9e3b722..768506f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -27,14 +27,18 @@ AS_IF([test "x$BOOTWRAPPER_ES" = x32 -a "x$KERNEL_ES" != x32],
# Allow a user to pass --with-kernel-dir
AC_ARG_WITH([kernel-dir],
- AS_HELP_STRING([--with-kernel-dir], [specify the root Linux kernel build directory (required)]),
- AC_SUBST([KERN_DIR], [$withval]),
- AC_MSG_ERROR([No kernel directory specified. Use --with-kernel-dir]))
+ AS_HELP_STRING([--with-kernel-dir], [specify the root Linux kernel build directory]),
+ AC_SUBST([KERN_DIR], [$withval]))
AS_IF([test "x$KERNEL_ES" = x32],
[KERN_IMAGE=$KERN_DIR/arch/arm/boot/zImage],
[KERN_IMAGE=$KERN_DIR/arch/arm64/boot/Image])
KERN_DTB=$KERN_DIR/arch/arm64/boot/dts/arm/fvp-base-revc.dtb
+# Allow a user to pass a specific kernel image file
+AC_ARG_WITH([kernel-image],
+ AS_HELP_STRING([--with-kernel-image], [specify kernel image]),
+ AC_SUBST([KERN_IMAGE], [$withval]))
+
# Allow the user to override the default DTB
AC_ARG_WITH([dtb],
AS_HELP_STRING([--with-dtb], [Specify a particular DTB to use]),
@@ -52,11 +56,6 @@ AS_IF([test "x$X_IMAGE" == "x"], [],
AC_SUBST([XEN_IMAGE], [$X_IMAGE])
AM_CONDITIONAL([XEN], [test "x$X_IMAGE" != "x"])
-# Ensure that the user has provided us with a sane kernel dir.
-if ! test -d $KERN_DIR; then
- AC_MSG_ERROR([Could not find Linux kernel dir: $KERN_DIR.])
-fi
-
AC_MSG_CHECKING([whether DTB file exists])
if ! test -f $KERN_DTB; then
AC_MSG_RESULT([no])
@@ -126,7 +125,7 @@ AC_PROG_SED
AC_PROG_LN_S
AC_PATH_PROG([DTC], dtc, error, [$PATH$PATH_SEPARATOR$KERN_DIR/scripts/dtc])
if test "x$DTC" = "xerror"; then
- AC_MSG_ERROR([cannot find the device tree compiler (dtc)])
+ AC_MSG_ERROR([cannot find the device tree compiler (dtc). Use --with-kernel-dir or put dtc on the PATH])
fi
AC_CHECK_TOOL(LD, ld)
@@ -139,8 +138,12 @@ echo ""
echo " Boot wrapper configuration"
echo " =========================="
echo ""
+if test "x${KERN_DIR}" != "x"; then
echo " Linux kernel build dir: ${KERN_DIR}"
+fi
+echo " Linux kernel image: ${KERN_IMAGE}"
echo " Device tree blob: ${KERN_DTB}"
+echo " Device tree compiler: ${DTC}"
echo " Linux kernel command line: ${CMDLINE}"
echo " Embedded initrd: ${FILESYSTEM:-NONE}"
echo " Use PSCI? ${USE_PSCI}"
--
2.43.0
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [boot-wrapper-aarch64 PATCH] configure: Do not force kernel-dir as a mandatory input
2024-05-23 11:49 [boot-wrapper-aarch64 PATCH] configure: Do not force kernel-dir as a mandatory input Akos Denke
@ 2024-06-05 13:16 ` Andre Przywara
2024-07-15 12:09 ` Mark Rutland
1 sibling, 0 replies; 4+ messages in thread
From: Andre Przywara @ 2024-06-05 13:16 UTC (permalink / raw)
To: Akos Denke; +Cc: linux-arm-kernel, Mark Rutland
On Thu, 23 May 2024 13:49:31 +0200
Akos Denke <akos.denke@arm.com> wrote:
Hi Akos,
> kernel-dir was required to fulfill the real dependencies:
> * kernel image
> * dtc
> * dtb
>
> There are already checks for all of these real dependencies, so passing
> the `--with-kernel-dir` does not need to be mandatory, in the case these
> dependencies are provided separately.
>
> An autoconf `--with-kernel-image` argument was added which allows to
> specify the image with its exact location.
> The `dtc` can be already provided via the PATH variable, whilst we
> already have a `--with-dtb` argument to pass a specific `dtb` file.
> These facts together deprecates the mandatoriness of kernel-dir and
> allows to provide any arbitrary kernel image, with dtb, dtc and
> initramfs, without a need for an assumed kernel directory structure.
>
> This makes the boot-wrapper building easier for prebuilt kernels, where
> we do not control the directory structure of the kernel artifacts.
So the patch itself looks fine to me, and it seems to work as described in
my quick testing.
The only thing I would like to change is the patch title: "dropping the
requirement for --with-kernel-dir" is more a side effect, the main
feature here seems to be --with-kernel-image, which indeed solves a
long-standing annoyance (so thanks for that!)
That's just a nit, though, so:
> Signed-off-by: Akos Denke <akos.denke@arm.com>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Cheers,
Andre
> ---
> configure.ac | 21 ++++++++++++---------
> 1 file changed, 12 insertions(+), 9 deletions(-)
>
> diff --git a/configure.ac b/configure.ac
> index 9e3b722..768506f 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -27,14 +27,18 @@ AS_IF([test "x$BOOTWRAPPER_ES" = x32 -a "x$KERNEL_ES" != x32],
>
> # Allow a user to pass --with-kernel-dir
> AC_ARG_WITH([kernel-dir],
> - AS_HELP_STRING([--with-kernel-dir], [specify the root Linux kernel build directory (required)]),
> - AC_SUBST([KERN_DIR], [$withval]),
> - AC_MSG_ERROR([No kernel directory specified. Use --with-kernel-dir]))
> + AS_HELP_STRING([--with-kernel-dir], [specify the root Linux kernel build directory]),
> + AC_SUBST([KERN_DIR], [$withval]))
> AS_IF([test "x$KERNEL_ES" = x32],
> [KERN_IMAGE=$KERN_DIR/arch/arm/boot/zImage],
> [KERN_IMAGE=$KERN_DIR/arch/arm64/boot/Image])
> KERN_DTB=$KERN_DIR/arch/arm64/boot/dts/arm/fvp-base-revc.dtb
>
> +# Allow a user to pass a specific kernel image file
> +AC_ARG_WITH([kernel-image],
> + AS_HELP_STRING([--with-kernel-image], [specify kernel image]),
> + AC_SUBST([KERN_IMAGE], [$withval]))
> +
> # Allow the user to override the default DTB
> AC_ARG_WITH([dtb],
> AS_HELP_STRING([--with-dtb], [Specify a particular DTB to use]),
> @@ -52,11 +56,6 @@ AS_IF([test "x$X_IMAGE" == "x"], [],
> AC_SUBST([XEN_IMAGE], [$X_IMAGE])
> AM_CONDITIONAL([XEN], [test "x$X_IMAGE" != "x"])
>
> -# Ensure that the user has provided us with a sane kernel dir.
> -if ! test -d $KERN_DIR; then
> - AC_MSG_ERROR([Could not find Linux kernel dir: $KERN_DIR.])
> -fi
> -
> AC_MSG_CHECKING([whether DTB file exists])
> if ! test -f $KERN_DTB; then
> AC_MSG_RESULT([no])
> @@ -126,7 +125,7 @@ AC_PROG_SED
> AC_PROG_LN_S
> AC_PATH_PROG([DTC], dtc, error, [$PATH$PATH_SEPARATOR$KERN_DIR/scripts/dtc])
> if test "x$DTC" = "xerror"; then
> - AC_MSG_ERROR([cannot find the device tree compiler (dtc)])
> + AC_MSG_ERROR([cannot find the device tree compiler (dtc). Use --with-kernel-dir or put dtc on the PATH])
> fi
> AC_CHECK_TOOL(LD, ld)
>
> @@ -139,8 +138,12 @@ echo ""
> echo " Boot wrapper configuration"
> echo " =========================="
> echo ""
> +if test "x${KERN_DIR}" != "x"; then
> echo " Linux kernel build dir: ${KERN_DIR}"
> +fi
> +echo " Linux kernel image: ${KERN_IMAGE}"
> echo " Device tree blob: ${KERN_DTB}"
> +echo " Device tree compiler: ${DTC}"
> echo " Linux kernel command line: ${CMDLINE}"
> echo " Embedded initrd: ${FILESYSTEM:-NONE}"
> echo " Use PSCI? ${USE_PSCI}"
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [boot-wrapper-aarch64 PATCH] configure: Do not force kernel-dir as a mandatory input
2024-05-23 11:49 [boot-wrapper-aarch64 PATCH] configure: Do not force kernel-dir as a mandatory input Akos Denke
2024-06-05 13:16 ` Andre Przywara
@ 2024-07-15 12:09 ` Mark Rutland
2024-07-19 9:50 ` Mark Rutland
1 sibling, 1 reply; 4+ messages in thread
From: Mark Rutland @ 2024-07-15 12:09 UTC (permalink / raw)
To: Akos Denke; +Cc: linux-arm-kernel
Hi,
On Thu, May 23, 2024 at 01:49:31PM +0200, Akos Denke wrote:
> kernel-dir was required to fulfill the real dependencies:
> * kernel image
> * dtc
> * dtb
>
> There are already checks for all of these real dependencies, so passing
> the `--with-kernel-dir` does not need to be mandatory, in the case these
> dependencies are provided separately.
>
> An autoconf `--with-kernel-image` argument was added which allows to
> specify the image with its exact location.
> The `dtc` can be already provided via the PATH variable, whilst we
> already have a `--with-dtb` argument to pass a specific `dtb` file.
> These facts together deprecates the mandatoriness of kernel-dir and
> allows to provide any arbitrary kernel image, with dtb, dtc and
> initramfs, without a need for an assumed kernel directory structure.
>
> This makes the boot-wrapper building easier for prebuilt kernels, where
> we do not control the directory structure of the kernel artifacts.
>
> Signed-off-by: Akos Denke <akos.denke@arm.com>
> ---
> configure.ac | 21 ++++++++++++---------
> 1 file changed, 12 insertions(+), 9 deletions(-)
>
> diff --git a/configure.ac b/configure.ac
> index 9e3b722..768506f 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -27,14 +27,18 @@ AS_IF([test "x$BOOTWRAPPER_ES" = x32 -a "x$KERNEL_ES" != x32],
>
> # Allow a user to pass --with-kernel-dir
> AC_ARG_WITH([kernel-dir],
> - AS_HELP_STRING([--with-kernel-dir], [specify the root Linux kernel build directory (required)]),
> - AC_SUBST([KERN_DIR], [$withval]),
> - AC_MSG_ERROR([No kernel directory specified. Use --with-kernel-dir]))
> + AS_HELP_STRING([--with-kernel-dir], [specify the root Linux kernel build directory]),
> + AC_SUBST([KERN_DIR], [$withval]))
> AS_IF([test "x$KERNEL_ES" = x32],
> [KERN_IMAGE=$KERN_DIR/arch/arm/boot/zImage],
> [KERN_IMAGE=$KERN_DIR/arch/arm64/boot/Image])
> KERN_DTB=$KERN_DIR/arch/arm64/boot/dts/arm/fvp-base-revc.dtb
>
> +# Allow a user to pass a specific kernel image file
> +AC_ARG_WITH([kernel-image],
> + AS_HELP_STRING([--with-kernel-image], [specify kernel image]),
> + AC_SUBST([KERN_IMAGE], [$withval]))
> +
> # Allow the user to override the default DTB
> AC_ARG_WITH([dtb],
> AS_HELP_STRING([--with-dtb], [Specify a particular DTB to use]),
> @@ -52,11 +56,6 @@ AS_IF([test "x$X_IMAGE" == "x"], [],
> AC_SUBST([XEN_IMAGE], [$X_IMAGE])
> AM_CONDITIONAL([XEN], [test "x$X_IMAGE" != "x"])
>
> -# Ensure that the user has provided us with a sane kernel dir.
> -if ! test -d $KERN_DIR; then
> - AC_MSG_ERROR([Could not find Linux kernel dir: $KERN_DIR.])
> -fi
With this gone, if the user doesn't pass '--with-kernel-dir', the
defaults for KERN_IMAGE and KERN_DTB end up being absolute paths:
/arch/arm64/boot/Image (or /arch/arm/boot/zImage)
/arch/arm64/boot/dts/arm/fvp-base-revc.dtb
It would be nice if there could be an error message when:
* Neither '--with-kernel-dir' nor '--with-kernel-image' are specified.
* Neither '--with-kernel-dir' nor '--with-dtb' are specified.
> -
> AC_MSG_CHECKING([whether DTB file exists])
> if ! test -f $KERN_DTB; then
> AC_MSG_RESULT([no])
> @@ -126,7 +125,7 @@ AC_PROG_SED
> AC_PROG_LN_S
> AC_PATH_PROG([DTC], dtc, error, [$PATH$PATH_SEPARATOR$KERN_DIR/scripts/dtc])
> if test "x$DTC" = "xerror"; then
> - AC_MSG_ERROR([cannot find the device tree compiler (dtc)])
> + AC_MSG_ERROR([cannot find the device tree compiler (dtc). Use --with-kernel-dir or put dtc on the PATH])
> fi
> AC_CHECK_TOOL(LD, ld)
This looks good.
>
> @@ -139,8 +138,12 @@ echo ""
> echo " Boot wrapper configuration"
> echo " =========================="
> echo ""
> +if test "x${KERN_DIR}" != "x"; then
> echo " Linux kernel build dir: ${KERN_DIR}"
> +fi
I'f prefer if we make this unconditional:
echo " Linux kernel build dir: ${KERN_DIR:-NONE}"
... since that'll make unintentional absence of the option a bit more
obvious, and easier to debug.
I've tried to fix that up as below; could you please check that this
works for you?
Mark.
---->8----
From f9ad9d640a06fdc2c2ca85d977131b8a504d045d Mon Sep 17 00:00:00 2001
From: Akos Denke <akos.denke@arm.com>
Date: Thu, 23 May 2024 13:49:31 +0200
Subject: [PATCH] configure: make --with-kernel-dir optional
Currently it is mandatory to specify the kernel directory via
--with-kernel-dir, and this is used to generate default paths for the
kernel image, dtb, and dtc.
All of these paths can all be provided by the user, e.g. the kernel
image path can be provided by --with-kernel-image, and an alternative
dtc can be added to $PATH. When all of these are provided by the user,
there's no real need for the kernel directory.
Drop the requirement for --with-kernel-dir when other paths are provided
explicitly. This makes it easier to use the boot-wrapper with prebuilt
kernels, where we do not control the directory structure of the kernel
artifacts.
Signed-off-by: Akos Denke <akos.denke@arm.com>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
[Mark: simplify commit message, rework option parsing, always log kernel dir]
Link: https://lore.kernel.org/r/20240523114931.2093222-1-akos.denke@arm.com
---
configure.ac | 40 ++++++++++++++++++++++++++--------------
1 file changed, 26 insertions(+), 14 deletions(-)
diff --git a/configure.ac b/configure.ac
index 9e3b722..ce41dae 100644
--- a/configure.ac
+++ b/configure.ac
@@ -27,18 +27,33 @@ AS_IF([test "x$BOOTWRAPPER_ES" = x32 -a "x$KERNEL_ES" != x32],
# Allow a user to pass --with-kernel-dir
AC_ARG_WITH([kernel-dir],
- AS_HELP_STRING([--with-kernel-dir], [specify the root Linux kernel build directory (required)]),
+ AS_HELP_STRING([--with-kernel-dir], [specify the root Linux kernel build directory]),
AC_SUBST([KERN_DIR], [$withval]),
- AC_MSG_ERROR([No kernel directory specified. Use --with-kernel-dir]))
-AS_IF([test "x$KERNEL_ES" = x32],
- [KERN_IMAGE=$KERN_DIR/arch/arm/boot/zImage],
- [KERN_IMAGE=$KERN_DIR/arch/arm64/boot/Image])
-KERN_DTB=$KERN_DIR/arch/arm64/boot/dts/arm/fvp-base-revc.dtb
+ AC_MSG_NOTICE([Kernel dir not specified])
+)
+
+# Allow a user to pass a specific kernel image file
+AC_ARG_WITH([kernel-image],
+ AS_HELP_STRING([--with-kernel-image], [specify kernel image]),
+ AC_SUBST([KERN_IMAGE], [$withval]),
+ AS_IF([test "x$KERN_DIR" != "x"],
+ AS_IF([test "x$KERNEL_ES" = x32],
+ [KERN_IMAGE=$KERN_DIR/arch/arm/boot/zImage],
+ [KERN_IMAGE=$KERN_DIR/arch/arm64/boot/Image]
+ ),
+ AC_MSG_ERROR([No kernel image specified. Use --with-kernel-image or --with-kernel-dir])
+ )
+)
# Allow the user to override the default DTB
AC_ARG_WITH([dtb],
AS_HELP_STRING([--with-dtb], [Specify a particular DTB to use]),
- [KERN_DTB="$withval"])
+ [KERN_DTB="$withval"],
+ AS_IF([test "x$KERN_DIR" != "x"],
+ [KERN_DTB=$KERN_DIR/arch/arm64/boot/dts/arm/fvp-base-revc.dtb],
+ AC_MSG_ERROR([No DTB specified. Use --with-dtb or --with-kernel-dir])
+ )
+)
AC_ARG_WITH([xen],
AS_HELP_STRING([--with-xen], [Compile for Xen, and specify a particular Xen to use]),
@@ -52,11 +67,6 @@ AS_IF([test "x$X_IMAGE" == "x"], [],
AC_SUBST([XEN_IMAGE], [$X_IMAGE])
AM_CONDITIONAL([XEN], [test "x$X_IMAGE" != "x"])
-# Ensure that the user has provided us with a sane kernel dir.
-if ! test -d $KERN_DIR; then
- AC_MSG_ERROR([Could not find Linux kernel dir: $KERN_DIR.])
-fi
-
AC_MSG_CHECKING([whether DTB file exists])
if ! test -f $KERN_DTB; then
AC_MSG_RESULT([no])
@@ -126,7 +136,7 @@ AC_PROG_SED
AC_PROG_LN_S
AC_PATH_PROG([DTC], dtc, error, [$PATH$PATH_SEPARATOR$KERN_DIR/scripts/dtc])
if test "x$DTC" = "xerror"; then
- AC_MSG_ERROR([cannot find the device tree compiler (dtc)])
+ AC_MSG_ERROR([cannot find the device tree compiler (dtc). Use --with-kernel-dir or put dtc on the PATH])
fi
AC_CHECK_TOOL(LD, ld)
@@ -139,8 +149,10 @@ echo ""
echo " Boot wrapper configuration"
echo " =========================="
echo ""
-echo " Linux kernel build dir: ${KERN_DIR}"
+echo " Linux kernel build dir: ${KERN_DIR:-NONE}"
+echo " Linux kernel image: ${KERN_IMAGE}"
echo " Device tree blob: ${KERN_DTB}"
+echo " Device tree compiler: ${DTC}"
echo " Linux kernel command line: ${CMDLINE}"
echo " Embedded initrd: ${FILESYSTEM:-NONE}"
echo " Use PSCI? ${USE_PSCI}"
--
2.30.2
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [boot-wrapper-aarch64 PATCH] configure: Do not force kernel-dir as a mandatory input
2024-07-15 12:09 ` Mark Rutland
@ 2024-07-19 9:50 ` Mark Rutland
0 siblings, 0 replies; 4+ messages in thread
From: Mark Rutland @ 2024-07-19 9:50 UTC (permalink / raw)
To: Akos Denke; +Cc: linux-arm-kernel
On Mon, Jul 15, 2024 at 01:09:43PM +0100, Mark Rutland wrote:
> I've tried to fix that up as below; could you please check that this
> works for you?
I've pushed this out now; please shout if anythign explodes.
Mark.
>
> Mark.
> ---->8----
> >From f9ad9d640a06fdc2c2ca85d977131b8a504d045d Mon Sep 17 00:00:00 2001
> From: Akos Denke <akos.denke@arm.com>
> Date: Thu, 23 May 2024 13:49:31 +0200
> Subject: [PATCH] configure: make --with-kernel-dir optional
>
> Currently it is mandatory to specify the kernel directory via
> --with-kernel-dir, and this is used to generate default paths for the
> kernel image, dtb, and dtc.
>
> All of these paths can all be provided by the user, e.g. the kernel
> image path can be provided by --with-kernel-image, and an alternative
> dtc can be added to $PATH. When all of these are provided by the user,
> there's no real need for the kernel directory.
>
> Drop the requirement for --with-kernel-dir when other paths are provided
> explicitly. This makes it easier to use the boot-wrapper with prebuilt
> kernels, where we do not control the directory structure of the kernel
> artifacts.
>
> Signed-off-by: Akos Denke <akos.denke@arm.com>
> Reviewed-by: Andre Przywara <andre.przywara@arm.com>
> Signed-off-by: Mark Rutland <mark.rutland@arm.com>
> [Mark: simplify commit message, rework option parsing, always log kernel dir]
> Link: https://lore.kernel.org/r/20240523114931.2093222-1-akos.denke@arm.com
> ---
> configure.ac | 40 ++++++++++++++++++++++++++--------------
> 1 file changed, 26 insertions(+), 14 deletions(-)
>
> diff --git a/configure.ac b/configure.ac
> index 9e3b722..ce41dae 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -27,18 +27,33 @@ AS_IF([test "x$BOOTWRAPPER_ES" = x32 -a "x$KERNEL_ES" != x32],
>
> # Allow a user to pass --with-kernel-dir
> AC_ARG_WITH([kernel-dir],
> - AS_HELP_STRING([--with-kernel-dir], [specify the root Linux kernel build directory (required)]),
> + AS_HELP_STRING([--with-kernel-dir], [specify the root Linux kernel build directory]),
> AC_SUBST([KERN_DIR], [$withval]),
> - AC_MSG_ERROR([No kernel directory specified. Use --with-kernel-dir]))
> -AS_IF([test "x$KERNEL_ES" = x32],
> - [KERN_IMAGE=$KERN_DIR/arch/arm/boot/zImage],
> - [KERN_IMAGE=$KERN_DIR/arch/arm64/boot/Image])
> -KERN_DTB=$KERN_DIR/arch/arm64/boot/dts/arm/fvp-base-revc.dtb
> + AC_MSG_NOTICE([Kernel dir not specified])
> +)
> +
> +# Allow a user to pass a specific kernel image file
> +AC_ARG_WITH([kernel-image],
> + AS_HELP_STRING([--with-kernel-image], [specify kernel image]),
> + AC_SUBST([KERN_IMAGE], [$withval]),
> + AS_IF([test "x$KERN_DIR" != "x"],
> + AS_IF([test "x$KERNEL_ES" = x32],
> + [KERN_IMAGE=$KERN_DIR/arch/arm/boot/zImage],
> + [KERN_IMAGE=$KERN_DIR/arch/arm64/boot/Image]
> + ),
> + AC_MSG_ERROR([No kernel image specified. Use --with-kernel-image or --with-kernel-dir])
> + )
> +)
>
> # Allow the user to override the default DTB
> AC_ARG_WITH([dtb],
> AS_HELP_STRING([--with-dtb], [Specify a particular DTB to use]),
> - [KERN_DTB="$withval"])
> + [KERN_DTB="$withval"],
> + AS_IF([test "x$KERN_DIR" != "x"],
> + [KERN_DTB=$KERN_DIR/arch/arm64/boot/dts/arm/fvp-base-revc.dtb],
> + AC_MSG_ERROR([No DTB specified. Use --with-dtb or --with-kernel-dir])
> + )
> +)
>
> AC_ARG_WITH([xen],
> AS_HELP_STRING([--with-xen], [Compile for Xen, and specify a particular Xen to use]),
> @@ -52,11 +67,6 @@ AS_IF([test "x$X_IMAGE" == "x"], [],
> AC_SUBST([XEN_IMAGE], [$X_IMAGE])
> AM_CONDITIONAL([XEN], [test "x$X_IMAGE" != "x"])
>
> -# Ensure that the user has provided us with a sane kernel dir.
> -if ! test -d $KERN_DIR; then
> - AC_MSG_ERROR([Could not find Linux kernel dir: $KERN_DIR.])
> -fi
> -
> AC_MSG_CHECKING([whether DTB file exists])
> if ! test -f $KERN_DTB; then
> AC_MSG_RESULT([no])
> @@ -126,7 +136,7 @@ AC_PROG_SED
> AC_PROG_LN_S
> AC_PATH_PROG([DTC], dtc, error, [$PATH$PATH_SEPARATOR$KERN_DIR/scripts/dtc])
> if test "x$DTC" = "xerror"; then
> - AC_MSG_ERROR([cannot find the device tree compiler (dtc)])
> + AC_MSG_ERROR([cannot find the device tree compiler (dtc). Use --with-kernel-dir or put dtc on the PATH])
> fi
> AC_CHECK_TOOL(LD, ld)
>
> @@ -139,8 +149,10 @@ echo ""
> echo " Boot wrapper configuration"
> echo " =========================="
> echo ""
> -echo " Linux kernel build dir: ${KERN_DIR}"
> +echo " Linux kernel build dir: ${KERN_DIR:-NONE}"
> +echo " Linux kernel image: ${KERN_IMAGE}"
> echo " Device tree blob: ${KERN_DTB}"
> +echo " Device tree compiler: ${DTC}"
> echo " Linux kernel command line: ${CMDLINE}"
> echo " Embedded initrd: ${FILESYSTEM:-NONE}"
> echo " Use PSCI? ${USE_PSCI}"
> --
> 2.30.2
>
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-07-19 9:51 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-05-23 11:49 [boot-wrapper-aarch64 PATCH] configure: Do not force kernel-dir as a mandatory input Akos Denke
2024-06-05 13:16 ` Andre Przywara
2024-07-15 12:09 ` Mark Rutland
2024-07-19 9:50 ` Mark Rutland
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox