Skip to content

Commit dc22eb9

Browse files
committed
temp: fix display/camera coexistence
1 parent 59f1eff commit dc22eb9

File tree

1 file changed

+11
-29
lines changed

1 file changed

+11
-29
lines changed

loader/fixups.c

Lines changed: 11 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -77,45 +77,27 @@ SYS_INIT(camera_ext_clock_enable, POST_KERNEL, CONFIG_CLOCK_CONTROL_PWM_INIT_PRI
7777
#include <zephyr/devicetree.h>
7878
#include <zephyr/multi_heap/shared_multi_heap.h>
7979

80-
struct memory_region_t {
81-
uintptr_t dt_addr;
82-
size_t dt_size;
83-
const char *dt_name;
84-
};
85-
86-
#define _BUILD_MEM_REGION(node_id) \
87-
{ .dt_addr = DT_REG_ADDR(node_id), \
88-
.dt_size = DT_REG_SIZE(node_id), \
89-
.dt_name = DT_PROP(node_id, zephyr_memory_region) \
90-
},
91-
92-
int smh_init(void)
93-
{
80+
__stm32_sdram1_section static uint8_t __aligned(32) smh_pool[4*1024*1024];
81+
82+
int smh_init(void) {
9483
int ret = 0;
9584
ret = shared_multi_heap_pool_init();
9685
if (ret != 0) {
9786
return ret;
9887
}
9988

100-
const struct memory_region_t regions[] = {
101-
DT_FOREACH_STATUS_OKAY(zephyr_memory_region, _BUILD_MEM_REGION)
89+
struct shared_multi_heap_region smh_sdram = {
90+
.addr = (uintptr_t) smh_pool,
91+
.size = sizeof(smh_pool),
92+
.attr = SMH_REG_ATTR_EXTERNAL,
10293
};
10394

104-
for (size_t i=0; i<ARRAY_SIZE(regions); i++) {
105-
if (!strncmp("SDRAM", regions[i].dt_name, 5)) {
106-
struct shared_multi_heap_region smh_sdram = {
107-
.addr = regions[i].dt_addr,
108-
.size = regions[i].dt_size,
109-
.attr = SMH_REG_ATTR_EXTERNAL,
110-
};
111-
ret = shared_multi_heap_add(&smh_sdram, NULL);
112-
if (ret != 0) {
113-
return ret;
114-
}
115-
}
95+
ret = shared_multi_heap_add(&smh_sdram, NULL);
96+
if (ret != 0) {
97+
return ret;
11698
}
11799
return 0;
118100
}
119101

120102
SYS_INIT(smh_init, POST_KERNEL, CONFIG_CLOCK_CONTROL_PWM_INIT_PRIORITY);
121-
#endif
103+
#endif

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy