Skip to content

Commit 06fabba

Browse files
saisurya-chlgirdwood
authored andcommitted
AMD: platform: Include window info in data section when building binaries.
Include window info in data section when building binaries for AMD platforms ACP_6_3 and ACP_7_0. Signed-off-by: SaiSurya Ch <saisurya.chakkaveeravenkatanaga@amd.com>
1 parent 88db9b1 commit 06fabba

File tree

6 files changed

+25
-0
lines changed

6 files changed

+25
-0
lines changed

src/arch/xtensa/configs/acp_6_3_defconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,3 +34,4 @@ CONFIG_COMP_TDFB=n
3434
#CONFIG_COMP_MUX=n
3535
CONFIG_COMP_SEL=n
3636
CONFIG_COMP_MIXER=n
37+
CONFIG_AMD_BINARY_BUILD=y

src/arch/xtensa/configs/acp_7_0_defconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,3 +33,4 @@ CONFIG_COMP_TDFB=n
3333
#CONFIG_COMP_MUX=n
3434
CONFIG_COMP_SEL=n
3535
CONFIG_COMP_MIXER=n
36+
CONFIG_AMD_BINARY_BUILD=n

src/drivers/Kconfig

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ rsource "imx/Kconfig"
1010

1111
rsource "mediatek/Kconfig"
1212

13+
rsource "amd/Kconfig"
14+
1315
config DUMMY_DMA
1416
bool "Dummy DMA (software DMA driver)"
1517
default n

src/drivers/amd/Kconfig

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# SPDX-License-Identifier: BSD-3-Clause
2+
3+
config AMD_BINARY_BUILD
4+
bool
5+
default n
6+
help
7+
Select this if the platform need firmware binaries.

src/platform/amd/acp_6_3/platform.c

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,11 @@ static const struct sof_ipc_fw_ready ready
6464
#define NUM_ACP_WINDOWS 6
6565

6666
const struct ext_man_windows xsram_window
67+
#ifdef CONFIG_AMD_BINARY_BUILD
68+
__aligned(EXT_MAN_ALIGN) __unused = {
69+
#else
6770
__aligned(EXT_MAN_ALIGN) __section(".fw_metadata") __unused = {
71+
#endif
6872
.hdr = {
6973
.type = EXT_MAN_ELEM_WINDOW,
7074
.elem_size = ALIGN_UP_COMPILE(sizeof(struct ext_man_windows), EXT_MAN_ALIGN),
@@ -189,6 +193,9 @@ int platform_boot_complete(uint32_t boot_message)
189193
volatile acp_scratch_mem_config_t *pscratch_mem_cfg =
190194
(volatile acp_scratch_mem_config_t *)(PU_SCRATCH_REG_BASE + SCRATCH_REG_OFFSET);
191195
mailbox_dspbox_write(0, &ready, sizeof(ready));
196+
#ifdef CONFIG_AMD_BINARY_BUILD
197+
mailbox_dspbox_write(sizeof(ready), &xsram_window.window, sizeof(xsram_window.window));
198+
#endif
192199
pscratch_mem_cfg->acp_dsp_msg_write = 1;
193200
acp_dsp_to_host_intr_trig();
194201
/* Configures the trigger bit in ACP_DSP_SW_INTR_TRIG register */

src/platform/amd/acp_7_0/platform.c

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,11 @@ static const struct sof_ipc_fw_ready ready
6363
#define NUM_ACP_WINDOWS 6
6464

6565
const struct ext_man_windows xsram_window
66+
#ifdef CONFIG_AMD_BINARY_BUILD
67+
__aligned(EXT_MAN_ALIGN) __unused = {
68+
#else
6669
__aligned(EXT_MAN_ALIGN) __section(".fw_metadata") __unused = {
70+
#endif
6771
.hdr = {
6872
.type = EXT_MAN_ELEM_WINDOW,
6973
.elem_size = ALIGN_UP_COMPILE(sizeof(struct ext_man_windows), EXT_MAN_ALIGN),
@@ -188,6 +192,9 @@ int platform_boot_complete(uint32_t boot_message)
188192
volatile acp_scratch_mem_config_t *pscratch_mem_cfg =
189193
(volatile acp_scratch_mem_config_t *)(PU_SCRATCH_REG_BASE + SCRATCH_REG_OFFSET);
190194
mailbox_dspbox_write(0, &ready, sizeof(ready));
195+
#ifdef CONFIG_AMD_BINARY_BUILD
196+
mailbox_dspbox_write(sizeof(ready), &xsram_window.window, sizeof(xsram_window.window));
197+
#endif
191198
pscratch_mem_cfg->acp_dsp_msg_write = 1;
192199
acp_dsp_to_host_intr_trig();
193200
/* Configures the trigger bit in ACP_DSP_SW_INTR_TRIG register */

0 commit comments

Comments
 (0)