uzbek-plus/b6p/test/pc-boot.sh

12 lines
1.7 KiB
Bash

#!/bin/sh
# 480s side, B6P persistent cold boot K (no host action on the boot path): wait NCM -> verify extlinux 'b6p' path in UART -> push test tools -> p-run.sh pcK 0 -> fetch
K=$1; cd ~/doc/modem/jz08-aurora; L=logs/uart/b6-20260930-160910.log; T=/dev/ttyUSB0
[ -f /tmp/pc-off-$K ] || { n=$(grep -an "SBL1, Start" $L | tail -1 | cut -d: -f1); echo $((n-1)) > /tmp/pc-off-$K; } # from the last power-on
O0=$(cat /tmp/pc-off-$K); mkdir -p logs/b6p; sed -n "$((O0>40?O0-40:1)),$((O0+1))p" $L > logs/b6p/pc$K-pre-sbl1.txt # final UART lines before this power-on
for i in $(seq 1 120); do ping -c1 -W1 172.16.42.1 >/dev/null 2>&1 && break; sleep 3; done; echo "NCM after ~$((i*3))s"; sleep 3
printf "%s\r" "mkdir -p /tmp/in; nc -l -p 9993 > /tmp/in/p.tar & nc -l -p 9994 > /tmp/in/cu.tar & echo LPC" > $T; sleep 2
ncat --send-only 172.16.42.1 9993 < b6p/p-test.tar; ncat --send-only 172.16.42.1 9994 < linux/beeline/curl/cu.tar; sleep 1
printf "%s\r" "cd /tmp && tar xf /tmp/in/p.tar && sha256sum -c SHA256SUMS && mkdir -p cu && tar -C cu -xf /tmp/in/cu.tar; cd /; sh /tmp/p-run.sh pc$K 0 > /tmp/pc-run.out 2>&1 &" > $T
n=0; until grep -aq "pc$K-RUN-END" $L; do sleep 5; n=$((n+1)); [ $((n % 6)) = 0 ] && echo "[$(date +%T)] alive-probe NCM $(ping -c1 -W2 172.16.42.1 >/dev/null 2>&1 && echo ok || echo LOST) last-uart: $(tail -1 $L | cut -c1-100)" >> logs/b6p/pc$K-alive.txt; done
tail -n +$(cat /tmp/pc-off-$K) $L | grep -a "SBL1, Start\|booting linux\|ramdisk @\|Linux version\|EMMC-RO-SUMMARY\|B1_OK\|AURORA RAM BOOT\|aurora-modem: starting\|REG t+\|START OK\|FAIL in\|\[pc$K\]" | cut -c1-230
FP=$((9960+K)); printf "%s\r" "nc -l -p $FP < /tmp/pc$K.tar &" > $T; sleep 2; mkdir -p logs/b6p; ncat --recv-only 172.16.42.1 $FP > logs/b6p/pc$K.tar; sha256sum logs/b6p/pc$K.tar