From 4784dbc76943882636a9f186b046da1bb0ed6f5f Mon Sep 17 00:00:00 2001 From: Matt Rossouw Date: Thu, 14 Nov 2024 15:03:51 +1100 Subject: [PATCH] Add support for Cheshire (CVA6), refactor Ariane Added support for Cheshire (CVA6). Refactored Ariane and Cheshire to use a shared mach definition since they both implement the CVA6 core and have common code. Signed-off-by: Matt Rossouw --- libplatsupport/CMakeLists.txt | 2 ++ .../cheshire/platsupport/plat/serial.h | 19 +++++++++++++++++++ .../src/{plat/ariane => mach/cva6}/chardev.c | 0 .../src/{plat/ariane => mach/cva6}/serial.c | 0 4 files changed, 21 insertions(+) create mode 100644 libplatsupport/plat_include/cheshire/platsupport/plat/serial.h rename libplatsupport/src/{plat/ariane => mach/cva6}/chardev.c (100%) rename libplatsupport/src/{plat/ariane => mach/cva6}/serial.c (100%) diff --git a/libplatsupport/CMakeLists.txt b/libplatsupport/CMakeLists.txt index 0bae33f2c..f3aa41f76 100644 --- a/libplatsupport/CMakeLists.txt +++ b/libplatsupport/CMakeLists.txt @@ -38,6 +38,8 @@ config_choice( set(LibPlatSupportMach "") if(KernelPlatformRpi3 OR KernelPlatformRpi4) set(LibPlatSupportMach "bcm") +elseif(KernelPlatformCheshire OR KernelPlatformAriane) + set(LibPlatSupportMach "cva6") elseif(NOT ${KernelArmMach} STREQUAL "") # falling back to kernel settings is done to keep legacy compatibility set(LibPlatSupportMach "${KernelArmMach}") diff --git a/libplatsupport/plat_include/cheshire/platsupport/plat/serial.h b/libplatsupport/plat_include/cheshire/platsupport/plat/serial.h new file mode 100644 index 000000000..6656a5f3a --- /dev/null +++ b/libplatsupport/plat_include/cheshire/platsupport/plat/serial.h @@ -0,0 +1,19 @@ +/* + * Copyright 2019, Data61, CSIRO (ABN 41 687 119 230) + * + * SPDX-License-Identifier: BSD-2-Clause + */ + +#pragma once +#include + +enum chardev_id { + PS_SERIAL0, + /* defaults */ + PS_SERIAL_DEFAULT = PS_SERIAL0 +}; + +#define PS_SERIAL_DEFAULT 0 + +#define DEFAULT_SERIAL_PADDR NULL +#define DEFAULT_SERIAL_INTERRUPT 0 diff --git a/libplatsupport/src/plat/ariane/chardev.c b/libplatsupport/src/mach/cva6/chardev.c similarity index 100% rename from libplatsupport/src/plat/ariane/chardev.c rename to libplatsupport/src/mach/cva6/chardev.c diff --git a/libplatsupport/src/plat/ariane/serial.c b/libplatsupport/src/mach/cva6/serial.c similarity index 100% rename from libplatsupport/src/plat/ariane/serial.c rename to libplatsupport/src/mach/cva6/serial.c