Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
94 commits
Select commit Hold shift + click to select a range
61f22ae
platform: ace: notifying about idle thread readiness
tmleman Jan 26, 2023
d5e5805
zephyr: cpu: secondary core idle thread init
tmleman Mar 30, 2023
42b8427
platform: ace: Add pm notifiers to support Zephyr's D3 transition
marcinszkudlinski Nov 16, 2022
de1d6c0
ipc4: added D3 support using Zephyr Power Manager API
Feb 8, 2023
6c57b64
board: intel_adsp_ace15_mtpm: Enabled MTL IMR context save
Dec 21, 2022
a88521d
platform: register basefw CPS consumption on boot
kfrydryx Feb 24, 2023
afd3dcd
pipeline: Register and unregister pipelines CPS consumption on run/pause
kfrydryx Feb 24, 2023
38b4cb1
platform: mtl: lowest clock as default
tmleman Mar 6, 2023
924f0d2
pipeline: print warning if 0 KCPS received
abonislawski Mar 10, 2023
0107461
ace: pm_runtime: force L1 exit if requested
abonislawski Mar 1, 2023
124e61e
loadable module: module api version structure
pjdobrowolski Mar 9, 2023
8e4f383
module_adapter: native_system_agent: Introduce call and interface
pjdobrowolski Feb 2, 2023
e4a3f9c
iadk_modules: module_init: checking type of module
pjdobrowolski Jan 31, 2023
c6b99e8
change AdspSystemService to adsp_system_service
pjdobrowolski Mar 9, 2023
5ad91a2
LMDK: Loadable Modules Dev Kit build scripts
serhiy-katsyuba-intel Mar 30, 2023
befed4f
ipc4: copier: Fix memory leak
serhiy-katsyuba-intel Apr 18, 2023
6bb5c7b
west: update rimage and zephyr to MTL-005
abonislawski Apr 25, 2023
f215887
dma: disable hda when pipeline is reset
fkwasowi Apr 13, 2023
ac4b0ab
fix: platform: mtl: secondary core d3 exit
tmleman Apr 26, 2023
dcc9550
[DEBUG] clk: remove unnecessary freq change notifications
abonislawski Apr 27, 2023
7bb6e7e
pipeline: register CPS consumption for a proper core
abonislawski Apr 27, 2023
3d56dcd
[DEBUG] idc: increase p4wq work items for idc per core
abonislawski Apr 28, 2023
d2b0b47
ipc4: Fix Host gtw conversion to/from 24_4LE audio
serhiy-katsyuba-intel Apr 28, 2023
3e6a3fd
dmic: Use the correct 24 bit conversion function
softwarecki May 8, 2023
f4af8ca
fix: zephyr logging macro comp_cl_err accesses const struct member
May 9, 2023
5f0c4e4
[PATCH] pipeline: make CPC data "opt-in" with fallback
lrgirdwo May 9, 2023
8fb9dbe
Smart_amp: Split dummy smart_amp to IPC3/IPC4 version
andrula-song Apr 26, 2023
638b941
Smart_amp: Remove the k_mute lock of IPC3 implementation
andrula-song Apr 26, 2023
2bc281d
Smart_amp: Convert IPC4 dummy smart_amp component to use the module a…
andrula-song Apr 26, 2023
5fae2cb
ipc4: fixed possible null dereference
May 10, 2023
36a7a81
[PATCH] samples: smart_amp_test_ipc4: Split the pin configuration
ujfalusi May 11, 2023
e505686
module_adapter: Fix for multi-core usage
serhiy-katsyuba-intel May 15, 2023
70ee708
Fix pipeline allocation for multi-core usage
serhiy-katsyuba-intel May 15, 2023
131defb
ipc4: mixin/mixout multi-core support
serhiy-katsyuba-intel May 16, 2023
87dc723
dai: always reload dma ll chain
softwarecki May 10, 2023
a2ce0d1
west: update rimage to 01af253b5965
abonislawski May 18, 2023
f2fec74
ipc4: multi pipeline set state on different cores
abonislawski May 16, 2023
e47e9f0
[WORKAROUND] Add frame_align_shift default init
serhiy-katsyuba-intel May 18, 2023
7c46d9c
module_adapter: Do not run on unconfigured bufs
serhiy-katsyuba-intel May 18, 2023
bb7249f
topology2: Set the deepbuffer PCM D0i3 compatibility conditionally
ranj063 Apr 25, 2023
55e0a47
Topology2: add comment to separate chromebook topology clearly
Apr 25, 2023
aca13d3
Topology2: Add mtl-rt711-l0-rt1316-l23-rt714-l1 support
Apr 25, 2023
c297b28
Tools: Topology2: SRC format fixes
ranj063 Apr 27, 2023
40e4d58
topology2: cavs-sdw: Enable PDM 1 mics for 4ch
ranj063 Mar 10, 2023
e6479e5
topology2: cavs-nocodec: add a module copier to SSP 0 capture pipeline
ranj063 Apr 28, 2023
729d54e
topology2: cavs-sdw: make jack optional
bardliao May 2, 2023
660b4be
topology2: dmic-generic: add macro for DMIC_CORE_ID
yongzhi1 Apr 24, 2023
dc58c6a
topology2: add multicore support for CI test
RanderWang Apr 25, 2023
ddc2ef6
ipc4: fix multi pipeline set state if only one secondary core used
abonislawski May 19, 2023
9939a3a
west: update zephyr to 79b598daf229
abonislawski May 22, 2023
24eca03
Revert "ipc4: Fix Host gtw conversion to/from 24_4LE audio"
abonislawski May 23, 2023
cb0f0da
Revert "module_adapter: Do not run on unconfigured bufs"
abonislawski May 23, 2023
bf618a1
host: zephyr: Subtract partial_size from dma avail/free size.
softwarecki May 30, 2023
8ddd262
[WORKAROUND] mtl: host: Disable host dma reload delay
softwarecki Jun 1, 2023
c0585c2
notifier: add a type for callbacks
lyakh Apr 20, 2023
2cc9c71
IPC4: host: remove notifier, call the copier callback directly
lyakh Mar 22, 2023
1255173
dai: Modify the signature of dai_release_llp_slot()
ranj063 May 2, 2023
8b2a4af
dai-zephyr/dai-legacy: Split the dai_new() function
ranj063 May 2, 2023
f3ff989
dai-zephyr/dai-legacy: Split the dai_free() function
ranj063 May 2, 2023
5fc891c
dai: Modify the signature of dai_config_dma_channel()
ranj063 May 3, 2023
3fc4a2a
copier: Expose dai_zephyr_new()/free()
btian1 May 3, 2023
2ade6c8
dai-zephyr/dai-legacy: split the dai_prepare() function
ranj063 May 2, 2023
da11f12
dai-zephyr/dai-legacy: Expose dai_zephyr_prepare() and dai_zephyr_con…
btian1 Mar 15, 2023
ca2c304
dai: Modify the signature of dai_dma_release()
ranj063 May 2, 2023
c1c402d
dai-zephyr/dai-legacy: Split up dai_reset()
ranj063 May 2, 2023
aa432c3
dai-zephyr/dai-legacy: Expose dai_zephyr_reset()
btian1 Mar 13, 2023
ac4e376
dai-zephyr/dai-legacy: Split up dai_comp_trigger()
ranj063 May 2, 2023
a02bcb6
dai-zephyr/dai-legacy: Expose dai_zephyr_trigger()
btian1 Mar 13, 2023
07f96b4
copier: Modify get_processed_data()
ranj063 May 2, 2023
6432249
ipc4: dai: Split up dai_position()
ranj063 May 2, 2023
ac529fc
ipc4: dai: Expose dai_zephyr_position()
ranj063 May 2, 2023
70de250
dai: Modify the signature of ipc_dai_data_config()
ranj063 May 2, 2023
e543a7c
dai-zephyr/dai-legacy: Split up dai_params()
ranj063 May 2, 2023
6271953
dai-zephyr: Expose dai_zephyr_params()
btian1 Mar 22, 2023
76fe327
dai: Modify the signature of dai_dma_position_update()
ranj063 May 2, 2023
9a37e8b
dai-zephyr/dai-legacy: Split up dai_copy()
ranj063 May 2, 2023
ba5f8fe
dai-zephyr: Expose dai_zephyr_copy()
btian1 Apr 30, 2023
d4140c9
dai-zephyr: Modify the signature of comp_dai_config() op
btian1 Mar 29, 2023
b5cdac0
dai-legacy/dai-zephyr: Split the timestamping ops
ranj063 May 2, 2023
171ab5c
copier: Add dai_get_hw_params op
ranj063 May 2, 2023
f43f939
component-ext: Remove comp_get_dai()
ranj063 May 2, 2023
ed9257c
dai-zephyr/dai-legacy: Use comp_dai_get_hw_params()
ranj063 May 2, 2023
5bb718d
copier: remove endpoint DAI device creation for single endpoint DAIs
btian1 Mar 31, 2023
3b27700
ipc4: dai: No need to unregister DMA copy notifier
ranj063 May 2, 2023
2d0595b
lib: dma: Add a new DMA buffer copy function
ranj063 May 5, 2023
c08898c
dai-zephyr: Support multiple sink buffers with single endpoint copier…
ranj063 May 3, 2023
98bf521
Topology2: sdw-jack-generic: add 1 ch format support
bardliao Jun 9, 2023
8a020da
topology2: sdw-jack-generic: add SDW_JACK_CAPTURE_CH macro
bardliao May 24, 2023
006f71e
topology2: add sof-mtl-cs42l42-l0-max98363-l2-4ch support
yongzhi1 May 23, 2023
30f4543
Topology2: sdw-jack-generic: add 24 bit format support for sdw jack
bardliao May 23, 2023
9daaddc
host: do not set L1 exit if interrupt mode selected + update zephyr west
abonislawski Jun 27, 2023
fc025f7
west: update rimage to a0b0187ce1e9
abonislawski Jul 19, 2023
dc1ea49
zephyr: Update GOOGLE_RTC_AUDIO_PROCESSING
andyross Mar 2, 2023
cae739d
zephyr/alloc: Add newlib-style allocator stub for C++ builds
andyross Mar 2, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion app/boards/intel_adsp_ace15_mtpm.conf
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ CONFIG_PM_POLICY_CUSTOM=y
CONFIG_POWER_DOMAIN=y
CONFIG_POWER_DOMAIN_INTEL_ADSP=y

CONFIG_ADSP_IMR_CONTEXT_SAVE=y

# enable Zephyr drivers
CONFIG_ZEPHYR_NATIVE_DRIVERS=y
CONFIG_DAI=y
Expand Down Expand Up @@ -73,7 +75,9 @@ CONFIG_LL_WATCHDOG=y

# Temporary disabled options
CONFIG_TRACE=n
CONFIG_HOST_DMA_RELOAD_DELAY_ENABLE=n

CONFIG_COMP_KPB=y
CONFIG_COMP_ARIA=y
CONFIG_CLOCK_CONTROL_ADSP=y
CONFIG_CLOCK_CONTROL=y
CONFIG_CLOCK_CONTROL=y
15 changes: 15 additions & 0 deletions lmdk/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Loadable Modules Dev Kit

***TODO: add link to the documentation repo!***

To build dummy loadable library execute:

cd libraries/dummy
mkdir build
cd build

cmake -DRIMAGE_COMMAND="/path/to/rimage" -DSIGNING_KEY="/path/to/signing/key.pem" ..
cmake --build .

Here RIMAGE_COMMAND is path to rimage executable binary, SIGNING_KEY is path to
signing key for rimage.
53 changes: 53 additions & 0 deletions lmdk/cmake/build.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# This file is intended to be included from project's CMakeLists.txt.
# Prior to include, MODULES_LIST variable should be initialised with list
# of modules (subdirectories in modules dir) that should be built into
# project's loadable library.

if(NOT DEFINED MODULES_LIST)
message(FATAL_ERROR "Please define MODULES_LIST: list of modules to be built into loadable library")
endif()

include(${CMAKE_CURRENT_LIST_DIR}/config.cmake)

foreach(MODULE ${MODULES_LIST})
add_executable(${MODULE})
add_subdirectory(${LMDK_BASE}/modules/${MODULE} ${MODULE}_module)

### set_target_properties(${MODULE} PROPERTIES OUTPUT_NAME ${MODULE}.mod)

target_include_directories(${MODULE} PRIVATE
"${LMDK_BASE}/include"
"${RIMAGE_INCLUDE_DIR}"
)

# generate linker script
get_target_property(HPSRAM_ADDR ${MODULE} HPSRAM_ADDR)

if(NOT DEFINED HPSRAM_ADDR)
message(FATAL_ERROR "Please define HPSRAM_ADDR for module ${MODULE}")
endif()

add_custom_command(TARGET ${MODULE} PRE_LINK
COMMAND ${CMAKE_COMMAND}
-DMODULE=${MODULE}
-DHPSRAM_ADDR=${HPSRAM_ADDR}
-P ${CMAKE_CURRENT_LIST_DIR}/ldscripts.cmake
)

target_link_options(${MODULE} PRIVATE
"-nostdlib" "-nodefaultlibs"
"-Wl,--no-undefined" "-Wl,--unresolved-symbols=report-all" "-Wl,--error-unresolved-symbols"
#"-Wl,--gc-sections" # may remove .bss and that will result in rimage error, do not use for now
"-Wl,-Map,$<TARGET_FILE:${MODULE}>.map" # optional: just for debug
"-T" "${MODULE}_ldscripts/elf32xtensa.x"
)
endforeach()

set(RIMAGE_OUTPUT_FILE ${PROJECT_NAME}_noextmft)
set(OUTPUT_FILE ${PROJECT_NAME}.bin)

add_custom_target(${PROJECT_NAME}_target ALL
DEPENDS ${MODULES_LIST}
COMMAND ${RIMAGE_COMMAND} -k ${SIGNING_KEY} -f 2.0.0 -b 1 -o ${RIMAGE_OUTPUT_FILE} -c ${TOML} -e ${MODULES_LIST}
COMMAND ${CMAKE_COMMAND} -E cat ${RIMAGE_OUTPUT_FILE}.xman ${RIMAGE_OUTPUT_FILE} > ${OUTPUT_FILE}
)
25 changes: 25 additions & 0 deletions lmdk/cmake/config.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@

if(NOT DEFINED RIMAGE_COMMAND)
message(FATAL_ERROR
" Please define RIMAGE_COMMAND: path to rimage executable.\n"
" E.g. using cmake -DRIMAGE_COMMAND=/path/rimage command line parameter."
)
endif()

if(NOT DEFINED SIGNING_KEY)
message(FATAL_ERROR
" Please define SIGNING_KEY: path to signing key for rimage.\n"
" E.g. using cmake -DSIGNING_KEY=/path/to/key.pem command line parameter."
)
endif()

# This Loadable Modules Dev Kit root dir
set(LMDK_BASE ${CMAKE_CURRENT_LIST_DIR}/..)
cmake_path(ABSOLUTE_PATH LMDK_BASE NORMALIZE)

# thesofproject root dir
set(SOF_BASE ${LMDK_BASE}/..)
cmake_path(ABSOLUTE_PATH SOF_BASE NORMALIZE)

set(RIMAGE_INCLUDE_DIR ${SOF_BASE}/rimage/src/include)
cmake_path(ABSOLUTE_PATH RIMAGE_INCLUDE_DIR NORMALIZE)
49 changes: 49 additions & 0 deletions lmdk/cmake/ldscripts.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# Linker scripts generator

# These linker scripts are based on those found in https://github.com/thesofproject/converged-sof-modules
#
# There are few things these scripts ensure:
#
# (1) Each module has its own reserved (virtual) address space. This is specified as
# HPSRAM_ADDR in module's CMakeLists.txt and goes to memory_header_linker_script.txt.
#
# (2) .buildinfo section must be put at 0 offset of .text section. .buildinfo contains
# module loadable libraries API version. That API version is verified by base FW.
# Base FW accesses it simply as 0 offset from module's code.
#
# (3) .module section contains module manifest description. This section is used by
# rimage to generate module manifest. Scripts ensure that this section is not garbage
# collected by linker.

# Required parameters MODULE and HPSRAM_ADDR should be specified in command line.

if(NOT DEFINED MODULE)
message(FATAL_ERROR "MODULE not defined")
endif()

if(NOT DEFINED HPSRAM_ADDR)
message(FATAL_ERROR "HPSRAM_ADDR not defined")
endif()

# reserve space for manifest?
math(EXPR HPSRAM "${HPSRAM_ADDR} + 9 * 4096" OUTPUT_FORMAT HEXADECIMAL)

set(LDSCRIPTS_DIR ${MODULE}_ldscripts)
set(LDSCRIPT_FILE ${LDSCRIPTS_DIR}/elf32xtensa.x)

file(MAKE_DIRECTORY ${LDSCRIPTS_DIR})
file(WRITE ${LDSCRIPT_FILE} "")

file(APPEND ${LDSCRIPT_FILE} "INCLUDE ${CMAKE_CURRENT_BINARY_DIR}/${LDSCRIPTS_DIR}/memory_header_linker_script.txt\n")
configure_file(
${CMAKE_CURRENT_LIST_DIR}/ldscripts/memory_header_linker_script.txt.in
${CMAKE_CURRENT_BINARY_DIR}/${LDSCRIPTS_DIR}/memory_header_linker_script.txt
)

file(APPEND ${LDSCRIPT_FILE} "INCLUDE ${CMAKE_CURRENT_LIST_DIR}/ldscripts/text_linker_script.txt\n")
file(APPEND ${LDSCRIPT_FILE} "INCLUDE ${CMAKE_CURRENT_LIST_DIR}/ldscripts/common_text_linker_script.txt\n")
file(APPEND ${LDSCRIPT_FILE} "INCLUDE ${CMAKE_CURRENT_LIST_DIR}/ldscripts/data_linker_script.txt\n")
file(APPEND ${LDSCRIPT_FILE} "INCLUDE ${CMAKE_CURRENT_LIST_DIR}/ldscripts/common_rodata_linker_script.txt\n")
file(APPEND ${LDSCRIPT_FILE} "INCLUDE ${CMAKE_CURRENT_LIST_DIR}/ldscripts/bss_linker_script.txt\n")
file(APPEND ${LDSCRIPT_FILE} "INCLUDE ${CMAKE_CURRENT_LIST_DIR}/ldscripts/xt_linker_script.txt\n")
file(APPEND ${LDSCRIPT_FILE} "INCLUDE ${CMAKE_CURRENT_LIST_DIR}/ldscripts/guard_linker_script.txt\n")
20 changes: 20 additions & 0 deletions lmdk/cmake/ldscripts/bss_linker_script.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@

PHDRS {
bss_phdr PT_LOAD;
}

SECTIONS {
max_instances = 1;
max_instances-1 = max_instances - 1;

.bss (NOLOAD) : ALIGN(4096) {
_first_start = ABSOLUTE(.);
*(.first)
_first_end = ABSOLUTE(.);
_next_start = ABSOLUTE(.);
. += (_first_end - _first_start) * max_instances-1;
_next_end = ABSOLUTE(.);
*(.bss)
*(.bss.*)
} >HPSRAM_seg : bss_phdr
}
38 changes: 38 additions & 0 deletions lmdk/cmake/ldscripts/common_rodata_linker_script.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@

PHDRS {
rodata_phdr PT_LOAD;
}

SECTIONS {
.common.rodata : ALIGN(4096) {
_rodata_start = ABSOLUTE(.);
*(.rodata)
*(.rodata.*)
*(.rodata1)
__XT_EXCEPTION_TABLE__ = ABSOLUTE(.);
KEEP (*(.xt_except_table))
KEEP (*(.gcc_except_table))
*(.gnu.linkonce.e.*)
*(.gnu.version_r)
KEEP (*(.eh_frame))
/* C++ constructor and destructor tables properly ordered: */
KEEP (*crtbegin.o(.ctors))
KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors))
KEEP (*(SORT(.ctors.*)))
KEEP (*(.ctors))
KEEP (*crtbegin.o(.dtors))
KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors))
KEEP (*(SORT(.dtors.*)))
KEEP (*(.dtors))
/* C++ exception handlers table: */
__XT_EXCEPTION_DESCS__ = ABSOLUTE(.);
*(.xt_except_desc)
*(.gnu.linkonce.h.*)
__XT_EXCEPTION_DESCS_END__ = ABSOLUTE(.);
*(.xt_except_desc_end)
*(.dynamic)
*(.gnu.version_d)
. = ALIGN(4); /* this table MUST be 4-byte aligned */
_rodata_end = ABSOLUTE(.);
} >HPSRAM_seg : rodata_phdr
}
24 changes: 24 additions & 0 deletions lmdk/cmake/ldscripts/common_text_linker_script.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@

PHDRS {
text_phdr PT_LOAD;
}

SECTIONS {
.common.text : ALIGN(4096){
_common_text_start = ABSOLUTE(.);
*(.entry.text)
*(.init.literal)
KEEP(*(.init))
*(.literal .text)
*(.literal.* .text.*)
*(.stub)
*(.gnu.warning)
*(.gnu.linkonce.literal*)
*(.gnu.linkonce.t.*.literal*)
*(.gnu.linkonce.t*)
*(.fini.literal)
KEEP(*(.fini))
*(.gnu.version)
_common_text_end = ABSOLUTE(.);
} >HPSRAM_seg : text_phdr
}
30 changes: 30 additions & 0 deletions lmdk/cmake/ldscripts/data_linker_script.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@

PHDRS {
data_phdr PT_LOAD;
rodata_phdr PT_LOAD;
}

EXTERN(HPSRAM)

SECTIONS {
.data : ALIGN(4096) {
_data_start = ABSOLUTE(.);
*(.data)
*(.data.*)
_data_end = ABSOLUTE(.);
} >HPSRAM_seg : data_phdr

.rodata : ALIGN(4096) {
_rodata_start = ABSOLUTE(.);
*(.gnu.linkonce.r.*)
*(.rodata)
*(.rodata.*)
KEEP (*(.eh_frame))
_rodata_end = ABSOLUTE(.);
} >HPSRAM_seg : rodata_phdr

/* Module manifest is here */
.module : ALIGN(4096) {
KEEP(*(.module))
} >HPSRAM_seg : rodata_phdr
}
12 changes: 12 additions & 0 deletions lmdk/cmake/ldscripts/guard_linker_script.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@

PHDRS {
guard_phdr PT_LOAD;
}

SECTIONS {
.guard : ALIGN(4096) {
_guard_section_start = ABSOLUTE(.);
*(.*)
_guard_section_end = ABSOLUTE(.);
} >HPSRAM_seg : guard_phdr
}
8 changes: 8 additions & 0 deletions lmdk/cmake/ldscripts/memory_header_linker_script.txt.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@

MEMORY {
HPSRAM_seg : org = ${HPSRAM}, len = 0xFFFFFFFF
}

PHDRS {
HPSRAM_phdr PT_LOAD;
}
31 changes: 31 additions & 0 deletions lmdk/cmake/ldscripts/text_linker_script.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@

/* EXTERN(${PACKAGE_ENTRY_POINT}) */

PHDRS {
text_phdr PT_LOAD;
cmi_text_phdr PT_LOAD;
}

/* .buildinfo should be put at the beginning of .text segment! API version is defined there. */

SECTIONS {
.text : ALIGN(4096) {
_text_start = ABSOLUTE(.);
*(.buildinfo)
*(.gnu.linkonce.literal.*)
*(.gnu.linkonce.lit4)
*(.literal)
*(.literal.*)
*(.gnu.linkonce.t*)
*(.text)
*(.text.*)
*(.cmi.literal)
_text_end = ABSOLUTE(.);
} >HPSRAM_seg : text_phdr

.cmi.text : ALIGN(4096) {
_cmi_text_start = ABSOLUTE(.);
*(.cmi.text)
_cmi_text_end = ABSOLUTE(.);
} >HPSRAM_seg : cmi_text_phdr
}
55 changes: 55 additions & 0 deletions lmdk/cmake/ldscripts/xt_linker_script.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@

SECTIONS {
.debug 0 : { *(.debug) }
.line 0 : { *(.line) }
.xtensa.info 0 : { *(.xtensa.info) }
.comment 0 : { *(.comment) }
.debug_ranges 0 : { *(.debug_ranges) }
.debug_srcinfo 0 : { *(.debug_srcinfo) }
.debug_sfnames 0 : { *(.debug_sfnames) }
.debug_aranges 0 : { *(.debug_aranges) }
.debug_pubnames 0 : { *(.debug_pubnames) }
.debug_info 0 : { *(.debug_info) }
.debug_abbrev 0 : { *(.debug_abbrev) }
.debug_line 0 : { *(.debug_line) }
.debug_frame 0 : { *(.debug_frame) }
.debug_str 0 : { *(.debug_str) }
.debug_loc 0 : { *(.debug_loc) }
.debug_macinfo 0 : { *(.debug_macinfo) }
.debug_weaknames 0 : { *(.debug_weaknames) }
.debug_funcnames 0 : { *(.debug_funcnames) }
.debug_typenames 0 : { *(.debug_typenames) }
.debug_varnames 0 : { *(.debug_varnames) }
.xt.insn 0 :
{
KEEP (*(.xt.insn))
KEEP (*(.gnu.linkonce.x.*))
}
.xt.prop 0 :
{
KEEP (*(.xt.prop))
KEEP (*(.xt.prop.*))
KEEP (*(.gnu.linkonce.prop.*))
}
.xt.lit 0 :
{
KEEP (*(.xt.lit))
KEEP (*(.xt.lit.*))
KEEP (*(.gnu.linkonce.p.*))
}
.xt.profile_range 0 :
{
KEEP (*(.xt.profile_range))
KEEP (*(.gnu.linkonce.profile_range.*))
}
.xt.profile_ranges 0 :
{
KEEP (*(.xt.profile_ranges))
KEEP (*(.gnu.linkonce.xt.profile_ranges.*))
}
.xt.profile_files 0 :
{
KEEP (*(.xt.profile_files))
KEEP (*(.gnu.linkonce.xt.profile_files.*))
}
}
Loading