[Sound-open-firmware] [PATCH] apl: core: enable boot loader path for Apollolake
Lauda, Tomasz
tomasz.lauda at linux.intel.com
Tue Jun 5 15:22:17 CEST 2018
On 04.06.2018 13:10, Liam Girdwood wrote:
> 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
Please try to first clean the old build.
>
> 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%)
> _______________________________________________
> Sound-open-firmware mailing list
> Sound-open-firmware at alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/sound-open-firmware
More information about the Sound-open-firmware
mailing list