From 54c12d411ad16762b06900440c0b89288facb595 Mon Sep 17 00:00:00 2001 From: Ivan Tan Date: Thu, 14 Dec 2023 11:36:50 +0000 Subject: [PATCH] port aarch64 && raspi3b+ --- recipes/core/drivers-initfs/recipe.toml | 19 +++++++++++++++++++ .../core/initfs/aarch64-unknown-redox/init.rc | 15 +++++++++++++++ .../aarch64-unknown-redox/init.rc.raspi3bp | 16 ++++++++++++++++ recipes/core/initfs/recipe.toml | 5 +++++ 4 files changed, 55 insertions(+) create mode 100644 recipes/core/initfs/aarch64-unknown-redox/init.rc create mode 100644 recipes/core/initfs/aarch64-unknown-redox/init.rc.raspi3bp diff --git a/recipes/core/drivers-initfs/recipe.toml b/recipes/core/drivers-initfs/recipe.toml index d567c9071..80622ca87 100644 --- a/recipes/core/drivers-initfs/recipe.toml +++ b/recipes/core/drivers-initfs/recipe.toml @@ -15,6 +15,22 @@ BINS=( lived ) +aarch64_redefine_bin() +{ + BINS=(inputd lived) + case "${BOARD}" in + raspi3bp) + BINS+=(bcm2835-sdhcid) + ;; + raspi3b) + BINS+=(bcm2835-sdhcid) + ;; + *) + #qemu-virt + ;; + esac +} + case "${TARGET}" in i686-unknown-redox) BINS+=(ided ps2d) @@ -22,6 +38,9 @@ case "${TARGET}" in x86_64-unknown-redox) BINS+=(acpid ided ps2d) ;; + aarch64-unknown-redox) + aarch64_redefine_bin + ;; *) ;; esac diff --git a/recipes/core/initfs/aarch64-unknown-redox/init.rc b/recipes/core/initfs/aarch64-unknown-redox/init.rc new file mode 100644 index 000000000..f8f24c7b3 --- /dev/null +++ b/recipes/core/initfs/aarch64-unknown-redox/init.rc @@ -0,0 +1,15 @@ +export PATH /bin +export TMPDIR /tmp +nulld +zerod +randd +inputd +vesad T T G +logd debug: display.vesa:1 +stdio log: +ramfs logging +lived +redoxfs --uuid $REDOXFS_UUID file $REDOXFS_BLOCK +cd file: +export PATH file:/bin +run.d /etc/init.d diff --git a/recipes/core/initfs/aarch64-unknown-redox/init.rc.raspi3bp b/recipes/core/initfs/aarch64-unknown-redox/init.rc.raspi3bp new file mode 100644 index 000000000..99750e6f2 --- /dev/null +++ b/recipes/core/initfs/aarch64-unknown-redox/init.rc.raspi3bp @@ -0,0 +1,16 @@ +export PATH /bin +export TMPDIR /tmp +nulld +zerod +randd +inputd +vesad T T G +logd debug: display.vesa:1 +stdio log: +ramfs logging +lived +bcm2835-sdhcid +redoxfs --uuid $REDOXFS_UUID file $REDOXFS_BLOCK +cd file: +export PATH file:/bin +run.d /etc/init.d diff --git a/recipes/core/initfs/recipe.toml b/recipes/core/initfs/recipe.toml index 4bc9f307f..ddb39b60c 100644 --- a/recipes/core/initfs/recipe.toml +++ b/recipes/core/initfs/recipe.toml @@ -21,6 +21,11 @@ cp -r "${COOKBOOK_SYSROOT}/"* "${COOKBOOK_BUILD}/initfs" # TODO: Move init.rc to another recipe, perhaps initfs-misc? Then it can be installed as a regular dependency. cp "${COOKBOOK_RECIPE}/init.rc" "${COOKBOOK_BUILD}/initfs/etc/init.rc" +if [ -e ${COOKBOOK_RECIPE}/${TARGET}/init.rc.${BOARD} ]; then + cp "${COOKBOOK_RECIPE}/${TARGET}/init.rc.${BOARD}" "${COOKBOOK_BUILD}/initfs/etc/init.rc" +elif [ -e ${COOKBOOK_RECIPE}/${TARGET}/init.rc ]; then + cp "${COOKBOOK_RECIPE}/${TARGET}/init.rc" "${COOKBOOK_BUILD}/initfs/etc/init.rc" +fi for bin in ${INITFS_RM_BINS}; do rm -f "${COOKBOOK_BUILD}/initfs/bin/$bin"