Skip to content

Commit b5308ee

Browse files
committed
EQ FIR: memory: Add trace error for alloc fail and add a 1024 size buffer
This patch adds a single 1024 bytes buffer into heap for e.g. rzalloc() usage. The FIR EQ code didn't trace the allocation failure so it's added to see better if this happens. The 1k allocation for PCM samples delay line is quite typical since a 32 bit 100 tap stereo FIR will need 800 bytes. Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
1 parent d467268 commit b5308ee

6 files changed

Lines changed: 10 additions & 1 deletion

File tree

src/audio/eq_fir.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -204,8 +204,11 @@ static int eq_fir_setup(struct comp_data *cd, int nch)
204204

205205
/* Allocate all FIR channels data in a big chunk and clear it */
206206
cd->fir_delay = rzalloc(RZONE_RUNTIME, SOF_MEM_CAPS_RAM, size_sum);
207-
if (!cd->fir_delay)
207+
if (!cd->fir_delay) {
208+
trace_eq_error("eda");
209+
trace_value(size_sum);
208210
return -ENOMEM;
211+
}
209212

210213
/* Initialize 2nd phase to set EQ delay lines pointers */
211214
fir_delay = cd->fir_delay;

src/platform/apollolake/include/platform/memory.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -136,6 +136,7 @@
136136
#define HEAP_RT_COUNT128 32
137137
#define HEAP_RT_COUNT256 64
138138
#define HEAP_RT_COUNT512 32
139+
#define HEAP_RT_COUNT1024 1
139140

140141
#define L2_VECTOR_SIZE 0x1000
141142

src/platform/cannonlake/include/platform/memory.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -176,6 +176,7 @@
176176
#define HEAP_RT_COUNT128 32
177177
#define HEAP_RT_COUNT256 64
178178
#define HEAP_RT_COUNT512 32
179+
#define HEAP_RT_COUNT1024 1
179180

180181
#define L2_VECTOR_SIZE 0x1000
181182

src/platform/icelake/include/platform/memory.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -176,6 +176,7 @@
176176
#define HEAP_RT_COUNT128 32
177177
#define HEAP_RT_COUNT256 64
178178
#define HEAP_RT_COUNT512 32
179+
#define HEAP_RT_COUNT1024 1
179180

180181
#define L2_VECTOR_SIZE 0x1000
181182

src/platform/intel/cavs/memory.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,13 +36,15 @@ static struct block_hdr mod_block64[HEAP_RT_COUNT64];
3636
static struct block_hdr mod_block128[HEAP_RT_COUNT128];
3737
static struct block_hdr mod_block256[HEAP_RT_COUNT256];
3838
static struct block_hdr mod_block512[HEAP_RT_COUNT512];
39+
static struct block_hdr mod_block1024[HEAP_RT_COUNT1024];
3940

4041
/* Heap memory map for modules */
4142
static struct block_map rt_heap_map[] = {
4243
BLOCK_DEF(64, HEAP_RT_COUNT64, mod_block64),
4344
BLOCK_DEF(128, HEAP_RT_COUNT128, mod_block128),
4445
BLOCK_DEF(256, HEAP_RT_COUNT256, mod_block256),
4546
BLOCK_DEF(512, HEAP_RT_COUNT512, mod_block512),
47+
BLOCK_DEF(1024, HEAP_RT_COUNT1024, mod_block1024),
4648
};
4749

4850
/* Heap blocks for buffers */

src/platform/suecreek/include/platform/memory.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,7 @@
164164
#define HEAP_RT_COUNT128 32
165165
#define HEAP_RT_COUNT256 64
166166
#define HEAP_RT_COUNT512 32
167+
#define HEAP_RT_COUNT1024 1
167168

168169
#define L2_VECTOR_SIZE 0x2000
169170

0 commit comments

Comments
 (0)