diff --git a/README.txt b/README.txt index 1a023c5..043fc42 100644 --- a/README.txt +++ b/README.txt @@ -10,6 +10,7 @@ Required parameters: * arm32_v7 * arm64 * arm64be + * m68k * mips * mipsel * ppc32 diff --git a/boot-qemu.sh b/boot-qemu.sh index 93b6d98..eeb09a7 100755 --- a/boot-qemu.sh +++ b/boot-qemu.sh @@ -39,7 +39,7 @@ function parse_parameters() { -a | --arch | --architecture) shift case ${1} in - arm32_v5 | arm32_v6 | arm32_v7 | arm64 | arm64be | mips | mipsel | ppc32 | ppc64 | ppc64le | riscv | s390 | x86 | x86_64) ARCH=${1} ;; + arm32_v5 | arm32_v6 | arm32_v7 | arm64 | arm64be | m68k | mips | mipsel | ppc32 | ppc64 | ppc64le | riscv | s390 | x86 | x86_64) ARCH=${1} ;; *) die "Invalid --arch value '${1}'" ;; esac ;; @@ -187,6 +187,17 @@ function setup_qemu_args() { QEMU=(qemu-system-aarch64) ;; + m68k) + APPEND_STRING+="console=ttyS0,115200 " + KIMAGE=vmlinux + QEMU_ARCH_ARGS=( + -cpu m68040 + -M q800 + -no-reboot + ) + QEMU=(qemu-system-m68k) + ;; + mips | mipsel) KIMAGE=vmlinux QEMU_ARCH_ARGS=( diff --git a/buildroot/m68k.config b/buildroot/m68k.config new file mode 100644 index 0000000..41b7206 --- /dev/null +++ b/buildroot/m68k.config @@ -0,0 +1,8 @@ +BR2_m68k=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_68XXX_UCLIBC_STABLE=y +BR2_TARGET_GENERIC_ROOT_PASSWD="root" +BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" +BR2_ROOTFS_OVERLAY="../overlay-reboot" +BR2_TARGET_ROOTFS_CPIO=y +# BR2_TARGET_ROOTFS_TAR is not set diff --git a/buildroot/rebuild.sh b/buildroot/rebuild.sh index f61b4db..9cc6be1 100755 --- a/buildroot/rebuild.sh +++ b/buildroot/rebuild.sh @@ -32,7 +32,7 @@ CONFIGS=() while ((${#})); do case ${1} in all) for CONFIG in *.config; do CONFIGS+=("../${CONFIG}"); done ;; - arm64 | arm64be | arm | mips | mipsel | ppc32 | ppc64 | ppc64le | riscv | s390 | x86 | x86_64) CONFIGS+=("../${1}.config") ;; + arm64 | arm64be | arm | m68k | mips | mipsel | ppc32 | ppc64 | ppc64le | riscv | s390 | x86 | x86_64) CONFIGS+=("../${1}.config") ;; *) die "Unknown parameter '${1}', exiting!" ;; esac shift diff --git a/images/m68k/rootfs.cpio.zst b/images/m68k/rootfs.cpio.zst new file mode 100644 index 0000000..81db9f5 Binary files /dev/null and b/images/m68k/rootfs.cpio.zst differ