[PATCH v1 3/3] Add AArch64 ZynpMP BSP
Sebastian Huber
sebastian.huber at embedded-brains.de
Wed Dec 2 08:51:53 UTC 2020
On 01/12/2020 21:57, Kinsey Moore wrote:
> This adds a BSP family that runs on the Xilinx Ultrascale+ MPSOC
> (ZynqMP) family of chips. It is configured to be usable on the Qemu
> ZCU102 machine definition and should be almost trivially portable to
> ZynqMP development boards and custom hardware. It is also configured to
> be usable with libbsd.
The BSP looks good. I have just some minor things.
> ---
> bsps/aarch64/xilinx-zynqmp/console/console.c | 134 ++++++++++++++++++
> bsps/aarch64/xilinx-zynqmp/include/bsp.h | 81 +++++++++++
> bsps/aarch64/xilinx-zynqmp/include/bsp/irq.h | 72 ++++++++++
> bsps/aarch64/xilinx-zynqmp/include/tm27.h | 46 ++++++
> bsps/aarch64/xilinx-zynqmp/start/bspstart.c | 49 +++++++
> .../xilinx-zynqmp/start/bspstarthooks.c | 50 +++++++
> spec/build/bsps/aarch64/xilinx-zynqmp/abi.yml | 22 +++
> .../aarch64/xilinx-zynqmp/bspqemuilp32.yml | 21 +++
> .../aarch64/xilinx-zynqmp/bspqemulp64.yml | 21 +++
> spec/build/bsps/aarch64/xilinx-zynqmp/grp.yml | 44 ++++++
> .../aarch64/xilinx-zynqmp/linkcmds_ilp32.yml | 72 ++++++++++
> .../aarch64/xilinx-zynqmp/linkcmds_lp64.yml | 71 ++++++++++
> spec/build/bsps/aarch64/xilinx-zynqmp/obj.yml | 37 +++++
> .../bsps/aarch64/xilinx-zynqmp/optclkuart.yml | 20 +++
> .../aarch64/xilinx-zynqmp/optconminor.yml | 15 ++
> .../bsps/aarch64/xilinx-zynqmp/optloadoff.yml | 18 +++
> .../aarch64/xilinx-zynqmp/optnocachelen.yml | 18 +++
> .../bsps/aarch64/xilinx-zynqmp/optramlen.yml | 18 +++
> .../bsps/aarch64/xilinx-zynqmp/optramori.yml | 18 +++
> .../bsps/aarch64/xilinx-zynqmp/tstqemu.yml | 56 ++++++++
> 20 files changed, 883 insertions(+)
> create mode 100644 bsps/aarch64/xilinx-zynqmp/console/console.c
> create mode 100644 bsps/aarch64/xilinx-zynqmp/include/bsp.h
> create mode 100644 bsps/aarch64/xilinx-zynqmp/include/bsp/irq.h
> create mode 100644 bsps/aarch64/xilinx-zynqmp/include/tm27.h
> create mode 100644 bsps/aarch64/xilinx-zynqmp/start/bspstart.c
> create mode 100644 bsps/aarch64/xilinx-zynqmp/start/bspstarthooks.c
> create mode 100644 spec/build/bsps/aarch64/xilinx-zynqmp/abi.yml
> create mode 100644 spec/build/bsps/aarch64/xilinx-zynqmp/bspqemuilp32.yml
> create mode 100644 spec/build/bsps/aarch64/xilinx-zynqmp/bspqemulp64.yml
> create mode 100644 spec/build/bsps/aarch64/xilinx-zynqmp/grp.yml
> create mode 100644 spec/build/bsps/aarch64/xilinx-zynqmp/linkcmds_ilp32.yml
> create mode 100644 spec/build/bsps/aarch64/xilinx-zynqmp/linkcmds_lp64.yml
> create mode 100644 spec/build/bsps/aarch64/xilinx-zynqmp/obj.yml
> create mode 100644 spec/build/bsps/aarch64/xilinx-zynqmp/optclkuart.yml
> create mode 100644 spec/build/bsps/aarch64/xilinx-zynqmp/optconminor.yml
> create mode 100644 spec/build/bsps/aarch64/xilinx-zynqmp/optloadoff.yml
> create mode 100644 spec/build/bsps/aarch64/xilinx-zynqmp/optnocachelen.yml
> create mode 100644 spec/build/bsps/aarch64/xilinx-zynqmp/optramlen.yml
> create mode 100644 spec/build/bsps/aarch64/xilinx-zynqmp/optramori.yml
> create mode 100644 spec/build/bsps/aarch64/xilinx-zynqmp/tstqemu.yml
>
> diff --git a/bsps/aarch64/xilinx-zynqmp/console/console.c b/bsps/aarch64/xilinx-zynqmp/console/console.c
> new file mode 100644
> index 0000000000..7bd85626d9
> --- /dev/null
> +++ b/bsps/aarch64/xilinx-zynqmp/console/console.c
> @@ -0,0 +1,134 @@
> +/* SPDX-License-Identifier: BSD-2-Clause */
> +
> +/**
> + * @file
> + *
> + * @ingroup RTEMSBSPsAArch64XilinxZynqMP
> + *
> + * @brief Console Configuration
> + */
The Doxygen recommendation for brief descriptions for @file and
@defgroup changed recently:
https://docs.rtems.org/branches/master/eng/coding-doxygen.html#files
> [...]
> diff --git a/spec/build/bsps/aarch64/xilinx-zynqmp/linkcmds_ilp32.yml b/spec/build/bsps/aarch64/xilinx-zynqmp/linkcmds_ilp32.yml
> new file mode 100644
> index 0000000000..88ed23f1c8
> --- /dev/null
> +++ b/spec/build/bsps/aarch64/xilinx-zynqmp/linkcmds_ilp32.yml
> @@ -0,0 +1,72 @@
> +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
> +build-type: config-file
> +content: |
> + /*
> + * SPDX-License-Identifier: BSD-2-Clause
> + *
Please put the SPDX-License-Identifier separately in the first line of
the file (and the others).
> + * Copyright (C) 2020 On-Line Applications Research Corporation (OAR)
> + * Written by Kinsey Moore <kinsey.moore at oarcorp.com>
> [...]
> diff --git a/spec/build/bsps/aarch64/xilinx-zynqmp/optconminor.yml b/spec/build/bsps/aarch64/xilinx-zynqmp/optconminor.yml
> new file mode 100644
> index 0000000000..55074c6dac
> --- /dev/null
> +++ b/spec/build/bsps/aarch64/xilinx-zynqmp/optconminor.yml
> @@ -0,0 +1,15 @@
> +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
> +actions:
> +- get-boolean: null
> +- define-condition: null
> +build-type: option
> +copyrights:
> +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
> +default: true
> +default-by-variant: []
> +description: |
> + minor number of console device
> +enabled-by: true
> +links: []
> +name: BSP_CONSOLE_MINOR
> +type: build
This option is already used in two other BSPs:
spec/build/bsps/arm/xilinx-zynqmp/optconminor.yml:name: BSP_CONSOLE_MINOR
spec/build/bsps/arm/xilinx-zynq/optconminor.yml:name: BSP_CONSOLE_MINOR
Instead of adding more copy and paste, please consolidate the options.
> [...]
> diff --git a/spec/build/bsps/aarch64/xilinx-zynqmp/tstqemu.yml b/spec/build/bsps/aarch64/xilinx-zynqmp/tstqemu.yml
> new file mode 100644
> index 0000000000..a5b08eca10
> --- /dev/null
> +++ b/spec/build/bsps/aarch64/xilinx-zynqmp/tstqemu.yml
> @@ -0,0 +1,56 @@
> +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
> +actions:
> +- set-test-state:
> + # expected to fail
> + minimum: exclude
> +
> + # expected to fail, zynq UART implements set_attributes, but always returns failure
> + spconsole01: exclude
Since you work on the BSP currently, maybe you could fix this.
> +
> + # test broken under 64bit due to SIZE_MAX differences
> + validation-0: expected-fail
Please add a ticket for things like this.
[...]
--
embedded brains GmbH
Herr Sebastian HUBER
Dornierstr. 4
82178 Puchheim
Germany
email: sebastian.hubere at embedded-brains.de
phone: +49-89-18 94 741 - 16
fax: +49-89-18 94 741 - 08
Registergericht: Amtsgericht München
Registernummer: HRB 157899
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
Unsere Datenschutzerklärung finden Sie hier:
https://embedded-brains.de/datenschutzerklaerung/
More information about the devel
mailing list