On Mon, 1 Feb 2021 at 20:09, Alex Bennée <alex.ben...@linaro.org> wrote: > > > Peter Maydell <peter.mayd...@linaro.org> writes: > > > On Thu, 28 Jan 2021 at 18:53, Alex Bennée <alex.ben...@linaro.org> wrote: > >> > >> The wiki and the web are curiously absent of the right runes to boot a > >> vexpress model so I had to work from first principles to work it out. > >> Use the more modern -drive notation so alternative backends can be > >> used (unlike the hardwired -sd mode). > >> > >> Signed-off-by: Alex Bennée <alex.ben...@linaro.org> > >> Cc: Anders Roxell <anders.rox...@linaro.org> > >> --- > >> docs/system/arm/vexpress.rst | 26 ++++++++++++++++++++++++++ > >> 1 file changed, 26 insertions(+) > >> > >> diff --git a/docs/system/arm/vexpress.rst b/docs/system/arm/vexpress.rst > >> index 7f1bcbef07..30b1823b95 100644 > >> --- a/docs/system/arm/vexpress.rst > >> +++ b/docs/system/arm/vexpress.rst > >> @@ -58,3 +58,29 @@ Other differences between the hardware and the QEMU > >> model: > >> ``vexpress-a15``, and have IRQs from 40 upwards. If a dtb is > >> provided on the command line then QEMU will edit it to include > >> suitable entries describing these transports for the guest. > >> + > >> +Booting a Linux kernel > >> +---------------------- > >> + > >> +Building a current Linux kernel with ``multi_v7_defconfig`` should be > >> +enough to get something running. > >> + > >> +.. code-block:: bash > >> + > >> + $ export ARCH=arm > >> + $ export CROSS_COMPILE=arm-linux-gnueabihf- > >> + $ make multi_v7_defconfig > >> + $ make > > > > We probably shouldn't be recommending in-tree kernel builds, or > > polluting the user's environment with random variables. Try: > > > > $ make O=builddir ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- > > multi_v7_defconfig > > $ make O=builddir ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
> Building a current Linux kernel with ``multi_v7_defconfig`` should be > enough to get something running. Nowadays an out-of-tree build is > recommended (and also useful if you build a lot of different targets). > $SRC points at root of the linux source tree. > > .. code-block:: bash > > $ mkdir build; cd build > $ make O=$(pwd) -C $SRC ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- > multi_v7_defconfig > $ make O=$(pwd) -C $SRC ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- That works, but do you really commonly cd into the build directory? I usually sit in the source tree... thanks -- PMM