Skip to content

Commit

Permalink
feat(platforms/imx8mp-verdin): add platform
Browse files Browse the repository at this point in the history
Signed-off-by: David Cerdeira <[email protected]>
  • Loading branch information
DavidMCerdeira authored and josecm committed Oct 3, 2024
1 parent af88205 commit 96a78ae
Show file tree
Hide file tree
Showing 6 changed files with 84 additions and 0 deletions.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ platforms is presented below:
- [x] Raspberry Pi 4
- [x] QEMU virt
- [x] Arm Fixed Virtual Platforms
- [x] Toradex Verdin iMX8M Plus (w/ Dahlia Carrier Board)
- [ ] BeagleBone AI-64
- [ ] NXP MCIMX8M-EVK
- [ ] 96Boards ROCK960
Expand Down
32 changes: 32 additions & 0 deletions src/platform/imx8mp-verdin/desc.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
/**
* SPDX-License-Identifier: Apache-2.0
* Copyright (c) Bao Project and Contributors. All rights reserved.
*/

#include <platform.h>

struct platform platform = {
.cpu_num = 4,
.region_num = 1,
.regions = (struct mem_region[]) {
{
.base = 0x40000000,
.size = 0x80000000, // 2 GiB
},
},

.console = {
.base = 0x30880000,
},

.arch = {
.gic = {
.gicd_addr = 0x38800000,
.gicr_addr = 0x38880000,
.gicc_addr = 0x31000000,
.gicv_addr = 0x31010000,
.gich_addr = 0x31020000,
.maintenance_id = 25
},
}
};
11 changes: 11 additions & 0 deletions src/platform/imx8mp-verdin/inc/plat/platform.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
/**
* SPDX-License-Identifier: Apache-2.0
* Copyright (c) Bao Project and Contributors. All rights reserved.
*/

#ifndef PLAT_PLATFORM_H
#define PLAT_PLATFORM_H

#include <drivers/imx_uart.h>

#endif
18 changes: 18 additions & 0 deletions src/platform/imx8mp-verdin/inc/plat/psci.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
/**
* SPDX-License-Identifier: Apache-2.0
* Copyright (c) Bao Project and Contributors. All rights reserved.
*/

#ifndef PLAT_PSCI_H
#define PLAT_PSCI_H

#define PSCI_POWER_STATE_LVL_0 0x0000000
#define PSCI_POWER_STATE_LVL_1 0x1000000
#define PSCI_POWER_STATE_LVL_2 0x2000000
#define PSCI_STATE_TYPE_STANDBY 0x00000
#define PSCI_STATE_TYPE_BIT (1UL << 16)
#define PSCI_STATE_TYPE_POWERDOWN PSCI_STATE_TYPE_BIT

#define PLAT_PSCI_POWERDOWN_NOT_SUPPORTED 1

#endif // PLAT_PSCI_H
4 changes: 4 additions & 0 deletions src/platform/imx8mp-verdin/objects.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
## SPDX-License-Identifier: Apache-2.0
## Copyright (c) Bao Project and Contributors. All rights reserved.

boards-objs-y+=desc.o
18 changes: 18 additions & 0 deletions src/platform/imx8mp-verdin/platform.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
## SPDX-License-Identifier: Apache-2.0
## Copyright (c) Bao Project and Contributors. All rights reserved.

# Architecture definition
ARCH:=armv8
# CPU definition
CPU:=cortex-a53

GIC_VERSION:=GICV3

drivers = imx_uart

platform_description:=desc.c

platform-cppflags =
platform-cflags = -mcpu=$(CPU)
platform-asflags =
platform-ldflags =

0 comments on commit 96a78ae

Please sign in to comment.