[Sound-open-firmware] [PATCH] apl: core: enable boot loader path for Apollolake
Liam Girdwood
liam.r.girdwood at linux.intel.com
Mon Jun 4 13:10:47 CEST 2018
On Mon, 2018-06-04 at 12:03 +0100, Liam Girdwood wrote:
> From: Tomasz Lauda <tomasz.lauda at linux.intel.com>
>
> There is no APL boot via SRAM right now, so let's enable it.
Can you describe the other changes here that were used to enable the boot
loader, I can see some work to support XCC too ?
Btw, I tried to compile on master and it fails :-
xtensa-bxt-elf-gcc -DHAVE_CONFIG_H -I. -I../../../src/include -I /home/sof/work/sof.git/src/arch/xtensa/include -I /home/sof/work/sof.git/src/arch/xtensa/xtos -DASSEMBLY -I /home/sof/work/sof.git/src/platform/apollolake/include -I /home/sof/work/sof.git/src/platform/apollolake/include/arch -O2 -g -Wall -Werror -Wl,-EL -Wmissing-prototypes -fno-inline-functions -nostdlib -mlongcalls -MT sof-main-entry.o -MD -MP -MF .deps/sof-main-entry.Tpo -c -o sof-main-entry.o `test -f 'main-entry.S' || echo './'`main-entry.S
mv -f .deps/sof-main-entry.Tpo .deps/sof-main-entry.Po
/bin/bash ../../../libtool --tag=CC --mode=link xtensa-bxt-elf-gcc -I /home/sof/work/sof.git/src/arch/xtensa/include -I /home/sof/work/sof.git/src/arch/xtensa/xtos -mtext-section-literals -I /home/sof/work/sof.git/src/include -I /home/sof/work/sof.git/../xtensa-root/xtensa-bxt-elf/include -I /home/sof/work/sof.git/src/platform/apollolake/include -I /home/sof/work/sof.git/src/platform/apollolake/include/arch -O2 -g -Wall -Werror -Wl,-EL -Wmissing-prototypes -fno-inline-functions -nostdlib -mlongcalls -Wl,-Map=sof-apl.map -T ../../platform/apollolake/apollolake.x -nostdlib -o sof sof-crt1-boards.o sof-_vectors.o sof-init.o sof-timer.o sof-task.o sof-main-entry.o ../../init/libinit.a ../../tasks/libtasks.a ../../lib/libcore.a ../../platform/apollolake/libplatform.a ../../ipc/libsof_ipc.a ../../audio/libaudio.a ../../drivers/libdrivers.a ../../math/libsof_math.a xtos/libxtos.a xtos/libxlevel2.a xtos/libxlevel3.a xtos/libxlevel4.a xtos/libxlevel5.a hal/libhal.a -lgcc
libtool: link: xtensa-bxt-elf-gcc -I /home/sof/work/sof.git/src/arch/xtensa/include -I /home/sof/work/sof.git/src/arch/xtensa/xtos -mtext-section-literals -I /home/sof/work/sof.git/src/include -I /home/sof/work/sof.git/../xtensa-root/xtensa-bxt-elf/include -I /home/sof/work/sof.git/src/platform/apollolake/include -I /home/sof/work/sof.git/src/platform/apollolake/include/arch -O2 -g -Wall -Werror -Wl,-EL -Wmissing-prototypes -fno-inline-functions -nostdlib -mlongcalls -Wl,-Map=sof-apl.map -T ../../platform/apollolake/apollolake.x -nostdlib -o sof sof-crt1-boards.o sof-_vectors.o sof-init.o sof-timer.o sof-task.o sof-main-entry.o ../../init/libinit.a ../../tasks/libtasks.a ../../lib/libcore.a ../../platform/apollolake/libplatform.a ../../ipc/libsof_ipc.a ../../audio/libaudio.a ../../drivers/libdrivers.a ../../math/libsof_math.a xtos/libxtos.a xtos/libxlevel2.a xtos/libxlevel3.a xtos/libxlevel4.a xtos/libxlevel5.a hal/libhal.a -lgcc
/home/sof/ct-ng.git/builds/xtensa-bxt-elf/lib/gcc/xtensa-bxt-elf/5.2.0/../../../../xtensa-bxt-elf/bin/ld: sof section `.data' will not fit in region `sof_data'
/home/sof/ct-ng.git/builds/xtensa-bxt-elf/lib/gcc/xtensa-bxt-elf/5.2.0/../../../../xtensa-bxt-elf/bin/ld: region `sof_data' overflowed by 7440 bytes
collect2: error: ld returned 1 exit status
Makefile:580: recipe for target 'sof' failed
make[5]: *** [sof] Error 1
make[5]: Leaving directory '/home/sof/work/sof.git/src/arch/xtensa'
Makefile:801: recipe for target 'all-recursive' failed
make[4]: *** [all-recursive] Error 1
make[4]: Leaving directory '/home/sof/work/sof.git/src/arch/xtensa'
Makefile:524: recipe for target 'all' failed
make[3]: *** [all] Error 2
make[3]: Leaving directory '/home/sof/work/sof.git/src/arch/xtensa'
Makefile:379: recipe for target 'all-recursive' failed
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory '/home/sof/work/sof.git/src/arch'
Makefile:380: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/sof/work/sof.git/src'
Makefile:419: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1
Thanks
Liam
>
> Signed-off-by: Tomasz Lauda <tomasz.lauda at linux.intel.com>
> ---
> Makefile.am | 15 +-
> configure.ac | 29 +-
> src/arch/xtensa/Makefile.am | 15 +-
> src/arch/xtensa/boot_entry.S | 49 +-
> src/arch/xtensa/boot_loader.c | 16 +-
> src/arch/xtensa/crt1-boards.S | 616 +++++++++---------
> src/arch/xtensa/reset-vector.S | 8 +-
> src/arch/xtensa/xtos/crt1-boards.S | 9 +-
> src/arch/xtensa/xtos/crt1-sim.S | 5 +-
> src/arch/xtensa/xtos/crt1-tiny.S | 6 +-
> src/include/sof/trace.h | 3 +
> src/platform/apollolake/Makefile.am | 14 +-
> src/platform/apollolake/apollolake.x.in | 133 ++--
> src/platform/apollolake/boot_ldr.x.in | 236 +++++++
> src/platform/apollolake/boot_module.c | 54 ++
> src/platform/apollolake/include/Makefile.am | 2 +-
> .../apollolake/include/arch/Makefile.am | 1 +
> .../include/{ => arch}/xtensa/Makefile.am | 0
> .../{ => arch}/xtensa/config/Makefile.am | 0
> .../{ => arch}/xtensa/config/core-isa.h | 60 +-
> .../include/arch}/xtensa/config/core-matmap.h | 7 +
> .../include/arch}/xtensa/config/defs.h | 8 +
> .../include/arch}/xtensa/config/specreg.h | 8 +
> .../include/{ => arch}/xtensa/config/system.h | 7 +
> .../{ => arch}/xtensa/config/tie-asm.h | 8 +
> .../include/arch}/xtensa/config/tie.h | 8 +
> .../apollolake/include/platform/memory.h | 112 ++--
> .../apollolake/include/platform/platcfg.h | 38 ++
> .../apollolake/include/platform/platform.h | 1 +
> .../apollolake/include/platform/shim.h | 22 +-
> src/platform/baytrail/include/Makefile.am | 2 +-
> .../baytrail/include/arch/Makefile.am | 1 +
> .../include/{ => arch}/xtensa/Makefile.am | 0
> .../{ => arch}/xtensa/config/Makefile.am | 0
> .../{ => arch}/xtensa/config/core-isa-byt.h | 0
> .../{ => arch}/xtensa/config/core-isa-cht.h | 0
> .../{ => arch}/xtensa/config/core-isa.h | 0
> .../{ => arch}/xtensa/config/core-matmap.h | 0
> .../include/arch}/xtensa/config/defs.h | 0
> .../{ => arch}/xtensa/config/specreg.h | 0
> .../include/{ => arch}/xtensa/config/system.h | 0
> .../{ => arch}/xtensa/config/tie-asm.h | 0
> .../include/{ => arch}/xtensa/config/tie.h | 0
> src/platform/cannonlake/boot_ldr.x.in | 224 +------
> src/platform/cannonlake/cannonlake.x.in | 81 +--
> src/platform/cannonlake/include/Makefile.am | 2 +-
> .../cannonlake/include/arch/Makefile.am | 1 +
> .../include/{ => arch}/xtensa/Makefile.am | 0
> .../{ => arch}/xtensa/config/Makefile.am | 1 -
> .../xtensa/config/core-isa.h} | 58 +-
> .../include/arch}/xtensa/config/core-matmap.h | 7 +
> .../include/arch}/xtensa/config/defs.h | 8 +
> .../include/arch}/xtensa/config/specreg.h | 8 +
> .../include/{ => arch}/xtensa/config/system.h | 7 +
> .../{ => arch}/xtensa/config/tie-asm.h | 8 +
> .../include/arch}/xtensa/config/tie.h | 8 +
> .../cannonlake/include/platform/memory.h | 32 +-
> .../cannonlake/include/platform/platcfg.h | 36 +
> .../cannonlake/include/platform/platform.h | 1 +
> .../cannonlake/include/platform/shim.h | 6 +-
> .../include/xtensa/config/core-isa.h | 557 ----------------
> src/platform/haswell/include/Makefile.am | 2 +-
> src/platform/haswell/include/arch/Makefile.am | 1 +
> .../include/{ => arch}/xtensa/Makefile.am | 0
> .../{ => arch}/xtensa/config/Makefile.am | 0
> .../{ => arch}/xtensa/config/core-isa-bdw.h | 0
> .../{ => arch}/xtensa/config/core-isa-hsw.h | 0
> .../{ => arch}/xtensa/config/core-isa.h | 0
> .../{ => arch}/xtensa/config/core-matmap.h | 0
> .../include/arch}/xtensa/config/defs.h | 0
> .../{ => arch}/xtensa/config/specreg.h | 0
> .../include/{ => arch}/xtensa/config/system.h | 0
> .../{ => arch}/xtensa/config/tie-asm.h | 0
> .../include/{ => arch}/xtensa/config/tie.h | 0
> 74 files changed, 1185 insertions(+), 1356 deletions(-)
> create mode 100644 src/platform/apollolake/boot_ldr.x.in
> create mode 100644 src/platform/apollolake/boot_module.c
> create mode 100644 src/platform/apollolake/include/arch/Makefile.am
> rename src/platform/apollolake/include/{ => arch}/xtensa/Makefile.am (100%)
> rename src/platform/apollolake/include/{ => arch}/xtensa/config/Makefile.am
> (100%)
> rename src/platform/apollolake/include/{ => arch}/xtensa/config/core-isa.h
> (95%)
> rename src/platform/{cannonlake/include =>
> apollolake/include/arch}/xtensa/config/core-matmap.h (99%)
> rename src/platform/{cannonlake/include =>
> apollolake/include/arch}/xtensa/config/defs.h (94%)
> rename src/platform/{cannonlake/include =>
> apollolake/include/arch}/xtensa/config/specreg.h (96%)
> rename src/platform/apollolake/include/{ => arch}/xtensa/config/system.h
> (99%)
> rename src/platform/apollolake/include/{ => arch}/xtensa/config/tie-asm.h
> (99%)
> rename src/platform/{cannonlake/include =>
> apollolake/include/arch}/xtensa/config/tie.h (98%)
> create mode 100644 src/platform/apollolake/include/platform/platcfg.h
> create mode 100644 src/platform/baytrail/include/arch/Makefile.am
> rename src/platform/baytrail/include/{ => arch}/xtensa/Makefile.am (100%)
> rename src/platform/baytrail/include/{ => arch}/xtensa/config/Makefile.am
> (100%)
> rename src/platform/baytrail/include/{ => arch}/xtensa/config/core-isa-byt.h
> (100%)
> rename src/platform/baytrail/include/{ => arch}/xtensa/config/core-isa-cht.h
> (100%)
> rename src/platform/baytrail/include/{ => arch}/xtensa/config/core-isa.h
> (100%)
> rename src/platform/baytrail/include/{ => arch}/xtensa/config/core-matmap.h
> (100%)
> rename src/platform/{apollolake/include =>
> baytrail/include/arch}/xtensa/config/defs.h (100%)
> rename src/platform/baytrail/include/{ => arch}/xtensa/config/specreg.h
> (100%)
> rename src/platform/baytrail/include/{ => arch}/xtensa/config/system.h (100%)
> rename src/platform/baytrail/include/{ => arch}/xtensa/config/tie-asm.h
> (100%)
> rename src/platform/baytrail/include/{ => arch}/xtensa/config/tie.h (100%)
> create mode 100644 src/platform/cannonlake/include/arch/Makefile.am
> rename src/platform/cannonlake/include/{ => arch}/xtensa/Makefile.am (100%)
> rename src/platform/cannonlake/include/{ => arch}/xtensa/config/Makefile.am
> (84%)
> rename src/platform/cannonlake/include/{xtensa/config/core-isa-boot.h =>
> arch/xtensa/config/core-isa.h} (95%)
> rename src/platform/{apollolake/include =>
> cannonlake/include/arch}/xtensa/config/core-matmap.h (99%)
> rename src/platform/{haswell/include =>
> cannonlake/include/arch}/xtensa/config/defs.h (94%)
> rename src/platform/{apollolake/include =>
> cannonlake/include/arch}/xtensa/config/specreg.h (96%)
> rename src/platform/cannonlake/include/{ => arch}/xtensa/config/system.h
> (99%)
> rename src/platform/cannonlake/include/{ => arch}/xtensa/config/tie-asm.h
> (99%)
> rename src/platform/{apollolake/include =>
> cannonlake/include/arch}/xtensa/config/tie.h (98%)
> create mode 100644 src/platform/cannonlake/include/platform/platcfg.h
> delete mode 100644 src/platform/cannonlake/include/xtensa/config/core-isa.h
> create mode 100644 src/platform/haswell/include/arch/Makefile.am
> rename src/platform/haswell/include/{ => arch}/xtensa/Makefile.am (100%)
> rename src/platform/haswell/include/{ => arch}/xtensa/config/Makefile.am
> (100%)
> rename src/platform/haswell/include/{ => arch}/xtensa/config/core-isa-bdw.h
> (100%)
> rename src/platform/haswell/include/{ => arch}/xtensa/config/core-isa-hsw.h
> (100%)
> rename src/platform/haswell/include/{ => arch}/xtensa/config/core-isa.h
> (100%)
> rename src/platform/haswell/include/{ => arch}/xtensa/config/core-matmap.h
> (100%)
> rename src/platform/{baytrail/include =>
> haswell/include/arch}/xtensa/config/defs.h (100%)
> rename src/platform/haswell/include/{ => arch}/xtensa/config/specreg.h (100%)
> rename src/platform/haswell/include/{ => arch}/xtensa/config/system.h (100%)
> rename src/platform/haswell/include/{ => arch}/xtensa/config/tie-asm.h (100%)
> rename src/platform/haswell/include/{ => arch}/xtensa/config/tie.h (100%)
More information about the Sound-open-firmware
mailing list