summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/sparc/shared/amba/ambapp.c
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2015-12-09 08:05:57 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2015-12-10 08:32:36 +0100
commit37030e38c61c0d0a8b0742af75f115bda779c46d (patch)
treed71cd94cf9d534fd606fffd50a0f3256cc822be9 /c/src/lib/libbsp/sparc/shared/amba/ambapp.c
parentbsps/sparc: Use default bsp_pretasking_hook() (diff)
downloadrtems-37030e38.tar.bz2
bsps: Call bsp_work_area_initialize() early
Call bsp_work_area_initialize() before bsp_start(). This allows bsp_start() to use malloc() etc. which is beneficial for systems with a plug-and-play hardware enumeration. Update #2408.
Diffstat (limited to 'c/src/lib/libbsp/sparc/shared/amba/ambapp.c')
-rw-r--r--c/src/lib/libbsp/sparc/shared/amba/ambapp.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/c/src/lib/libbsp/sparc/shared/amba/ambapp.c b/c/src/lib/libbsp/sparc/shared/amba/ambapp.c
index dba56c1f48..e4f1aacbd1 100644
--- a/c/src/lib/libbsp/sparc/shared/amba/ambapp.c
+++ b/c/src/lib/libbsp/sparc/shared/amba/ambapp.c
@@ -23,18 +23,16 @@
/* Allocate one AMBA device */
static struct ambapp_dev *ambapp_alloc_dev_struct(int dev_type)
{
- int size = sizeof(struct ambapp_dev);
struct ambapp_dev *dev;
+ size_t size = sizeof(*dev);
if (dev_type == DEV_APB_SLV)
size += sizeof(struct ambapp_apb_info);
else
size += sizeof(struct ambapp_ahb_info); /* AHB */
- dev = (struct ambapp_dev *)bsp_early_malloc(size);
- if (dev == NULL)
- return NULL;
- memset(dev, 0 , size);
- dev->dev_type = dev_type;
+ dev = (struct ambapp_dev *)calloc(1, size);
+ if (dev != NULL)
+ dev->dev_type = dev_type;
return dev;
}