[PATCH 1/7] bsp/aarch64: New entry for Raspberry pi 4B AArch64 BSP
Kinsey Moore
kinsey.moore at oarcorp.com
Thu Sep 22 13:30:41 UTC 2022
It's great to see support for this get posted!
One thing I'd like to note is that patch sets generally produce working
code at every step.
The usual progression is:
* First patch adds a basic BSP with no interrupts that only works on an
emulator (which usually means no MMU support)
* Additional patches add MMU support or interrupt support or additional
peripherals or SMP support
Instead, you've squashed all that progression together and then broken
it back out into patches that commit pieces of a BSP that produce a
broken build until the last patch is committed.
Given that this is still just the core of a BSP without peripherals or
SMP, I'd be fine with this all being in a single patch if you don't have
an easy way to break things out into functional patches. I would still
recommend going through the process of rebasing the work and breaking it
into at least 2 patches if not 3 (base BSP, base BSP+interrupts, base
BSP+interrupts+MMU) as it's a useful skill to have.
Kinsey
On 9/22/2022 01:20, Mohd Noor Aman wrote:
> This commit adds new Raspberry pi 4B AArch64 BSP to the RTEMS Family. Currently only IPL64 ABI is supported. IPL32 Supported will be added in the near future.
> ---
> spec/build/bsps/aarch64/raspberrypi/abi.yml | 21 +++++
> .../aarch64/raspberrypi/bspraspberrypi4.yml | 78 +++++++++++++++++++
> 2 files changed, 99 insertions(+)
> create mode 100644 spec/build/bsps/aarch64/raspberrypi/abi.yml
> create mode 100644 spec/build/bsps/aarch64/raspberrypi/bspraspberrypi4.yml
>
> diff --git a/spec/build/bsps/aarch64/raspberrypi/abi.yml b/spec/build/bsps/aarch64/raspberrypi/abi.yml
> new file mode 100644
> index 0000000000..9ed4a961a7
> --- /dev/null
> +++ b/spec/build/bsps/aarch64/raspberrypi/abi.yml
> @@ -0,0 +1,21 @@
> +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
> +actions:
> +- get-string: null
> +- split: null
> +- env-append: null
> +build-type: option
> +copyrights:
> +- Copyright (C) Copyright (C) 2022 Mohd Noor Aman
> +default:
> +- -mcpu=cortex-a72
> +- -march=armv8-a
> +
> +default-by-variant: []
> +includes: []
> +description: |
> + ABI flags
> +links: []
> +enabled-by: true
> +name: ABI_FLAGS
> +type: build
> +
> \ No newline at end of file
> diff --git a/spec/build/bsps/aarch64/raspberrypi/bspraspberrypi4.yml b/spec/build/bsps/aarch64/raspberrypi/bspraspberrypi4.yml
> new file mode 100644
> index 0000000000..8b4447db46
> --- /dev/null
> +++ b/spec/build/bsps/aarch64/raspberrypi/bspraspberrypi4.yml
> @@ -0,0 +1,78 @@
> +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
> +arch: aarch64
> +bsp: raspberrypi4b
> +build-type: bsp
> +cflags: []
> +copyrights:
> +- Copyright (C) 2022 Mohd Noor Aman
> +cppflags: []
> +enabled-by: true
> +family: raspberrypi
> +includes: []
> +install:
> +- destination: ${BSP_INCLUDEDIR}
> + source:
> + - bsps/aarch64/raspberrypi/include/bsp.h
> + - bsps/aarch64/raspberrypi/include/tm27.h
> +
> +- destination: ${BSP_INCLUDEDIR}/bsp
> + source:
> + - bsps/aarch64/raspberrypi/include/bsp/irq.h
> + - bsps/aarch64/raspberrypi/include/bsp/raspberrypi.h
> +
> +source:
> +- bsps/aarch64/raspberrypi/console/console.c
> +- bsps/aarch64/raspberrypi/start/bspstart.c
> +- bsps/aarch64/raspberrypi/start/bspstarthooks.c
> +- bsps/aarch64/raspberrypi/start/bspstartmmu.c
> +- bsps/aarch64/shared/clock/arm-generic-timer-aarch64.c
> +- bsps/aarch64/shared/cache/cache.c
> +- bsps/shared/dev/clock/arm-generic-timer.c
> +- bsps/shared/dev/irq/arm-gicv2.c
> +- bsps/shared/dev/irq/arm-gicv2-get-attributes.c
> +- bsps/shared/dev/serial/console-termios-init.c
> +- bsps/shared/dev/serial/console-termios.c
> +- bsps/shared/dev/serial/arm-pl011.c
> +- bsps/shared/irq/irq-default-handler.c
> +- bsps/shared/irq/irq-handler-install.c
> +- bsps/shared/irq/irq-generic.c
> +- bsps/shared/irq/irq-lock.c
> +- bsps/shared/start/bspfatal-default.c
> +- bsps/shared/start/bspreset-arm-psci.c
> +- bsps/shared/start/gettargethash-default.c
> +- bsps/shared/start/sbrk.c
> +- bsps/shared/start/wkspaceinitone.c
> +- bsps/shared/start/mallocinitmulti.c
> +- bsps/shared/start/bspgetworkarea-default.c
> +
> +links:
> +- role: build-dependency
> + uid: ../grp
> +- role: build-dependency
> + uid: ../start
> +- role: build-dependency
> + uid: ../optmmupages
> +- role: build-dependency
> + uid: ../optgtusevirt
> +- role: build-dependency
> + uid: ../optgtuseps
> +- role: build-dependency
> + uid: abi
> +- role: build-dependency
> + uid: ../../optcachedata
> +- role: build-dependency
> + uid: ../../optcacheinst
> +- role: build-dependency
> + uid: ../../opto2
> +- role: build-dependency
> + uid: ../../bspopts
> +- role: build-dependency
> + uid: linkercmds
> +- role: build-dependency
> + uid: ../../obj
> +- role: build-dependency
> + uid: ../../objirq
> +
> +type: build
> +
> +
More information about the devel
mailing list