Files
bfe-core1106-sdk/kernel/rv1106-enablement/build-m2.sh
BFE Engineering 42fb386f60 docs: ASCII typography and style normalization across all repo text
Replace every em dash with real punctuation (rewrites, not hyphen swaps)
in docs, code comments, scripts, configs, and the port records; convert
en dashes, curly quotes, ellipsis glyphs, arrows, and section signs to
ASCII; drop machine-writing tell phrases from living docs. ADR titles
now use a colon. The M2 bring-up DTS model string carried an em dash
into the patch series and its record echoes; fixed at both, and the full
series re-verified to apply cleanly onto pristine 6.18.46. One comment
in freshness.h deliberately names the em dash glyph the UI renders as
the unknown mark; that is data, kept as prose naming it.

Verified: cargo tests (sim, config-lint, rs485-bridge), shellcheck,
both driver MC/DC harnesses, patches-apply.
2026-08-31 12:31:27 -06:00

42 lines
1.9 KiB
Bash
Executable File

#!/usr/bin/env bash
# build-m2.sh: reproducible M2 (earlycon) build of the RV1106 -> 6.18 forward-port.
#
# Produces: a zImage with our ported SoC drivers, and rv1106-warden-m2.dtb.
# Boot is a separate on-hardware step (see PORT-STATUS.md "M2 boot").
#
# Usage: KTREE=/path/to/linux-6.18.46 SDK_TC=/path/to/toolchain/bin ./build-m2.sh
# Defaults match this workspace.
set -euo pipefail
FE="${FE:?set FE to a flare-edge checkout path}"
KTREE="${KTREE:-$FE/research/linux-6.18.46}"
SDK_TC="${SDK_TC:-$FE/sdk/tools/linux/toolchain/arm-rockchip830-linux-uclibcgnueabihf/bin}"
HERE="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
# The SDK toolchain bakes absolute paths and needs `python` (not python3) + a
# space-free PATH (see the flare-edge-sdk-path-compat note).
export PATH="$SDK_TC:/usr/bin:/bin"
export ARCH=arm
export CROSS_COMPILE=arm-rockchip830-linux-uclibcgnueabihf-
[ -d "$KTREE" ] || { echo "kernel tree not found: $KTREE" >&2; exit 1; }
command -v python >/dev/null || { echo "need 'python' on PATH (SDK quirk)" >&2; exit 1; }
# Stage our board DT into the tree if it drifted from the capture.
install -m664 "$HERE/dts/rv1106-warden-m2.dts" \
"$KTREE/arch/arm/boot/dts/rockchip/rv1106-warden-m2.dts"
grep -q 'rv1106-warden-m2.dtb' "$KTREE/arch/arm/boot/dts/rockchip/Makefile" \
|| sed -i 's/\trk3288-vyasa.dtb/\trk3288-vyasa.dtb \\\n\trv1106-warden-m2.dtb/' \
"$KTREE/arch/arm/boot/dts/rockchip/Makefile"
cd "$KTREE"
make ARCH=arm CROSS_COMPILE="$CROSS_COMPILE" multi_v7_defconfig
./scripts/kconfig/merge_config.sh -m .config "$HERE/configs/m2-earlycon.fragment"
make ARCH=arm CROSS_COMPILE="$CROSS_COMPILE" olddefconfig
make ARCH=arm CROSS_COMPILE="$CROSS_COMPILE" -j"$(nproc)" zImage
make ARCH=arm CROSS_COMPILE="$CROSS_COMPILE" rockchip/rv1106-warden-m2.dtb
echo
echo "== M2 build OK =="
ls -la arch/arm/boot/zImage arch/arm/boot/dts/rockchip/rv1106-warden-m2.dtb