53 lines
1.7 KiB
Bash
Executable File
53 lines
1.7 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Summarize sound/soc diffs between ChromiumOS 5.15 tree and Ubuntu HWE 6.17 source tree.
|
|
set -euo pipefail
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
REPO_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
CH="${CH:-$REPO_ROOT/chromiumos_kernel/v5.15}"
|
|
UB="${UB:-$REPO_ROOT/kernel-src/linux-hwe-6.17-6.17.0}"
|
|
|
|
if [[ ! -d "$CH/sound/soc" || ! -d "$UB/sound/soc" ]]; then
|
|
echo "ERROR: need both trees:" >&2
|
|
echo " CH=$CH" >&2
|
|
echo " UB=$UB" >&2
|
|
exit 1
|
|
fi
|
|
|
|
echo "=== Git shallow check (ChromeOS tree) ==="
|
|
if [[ -d "$CH/.git" ]]; then
|
|
(cd "$CH" && echo "HEAD: $(git rev-parse --short HEAD)" && echo "commits reachable: $(git rev-list --count HEAD 2>/dev/null || echo '?')")
|
|
else
|
|
echo "(no .git under CH)"
|
|
fi
|
|
|
|
echo ""
|
|
echo "=== diff -rq file-level counts ==="
|
|
echo -n "sound/soc/sof/intel: "
|
|
( diff -rq "$CH/sound/soc/sof/intel" "$UB/sound/soc/sof/intel" 2>/dev/null || true ) | wc -l
|
|
echo -n "sound/soc/intel/boards: "
|
|
( diff -rq "$CH/sound/soc/intel/boards" "$UB/sound/soc/intel/boards" 2>/dev/null || true ) | wc -l
|
|
|
|
echo ""
|
|
echo "=== diff -u line counts (Kaisa / HDMI / IPC focus) ==="
|
|
FILES=(
|
|
sound/soc/intel/boards/sof_board_helpers.c
|
|
sound/soc/intel/boards/sof_rt5682.c
|
|
sound/soc/sof/intel/cnl.c
|
|
sound/soc/sof/intel/hda-ipc.c
|
|
sound/soc/sof/intel/hda-dai.c
|
|
sound/soc/sof/intel/hda-dsp.c
|
|
sound/soc/sof/pcm.c
|
|
sound/soc/sof/ipc3.c
|
|
)
|
|
for f in "${FILES[@]}"; do
|
|
if [[ -f "$CH/$f" && -f "$UB/$f" ]]; then
|
|
n=$( ( diff -u "$CH/$f" "$UB/$f" || true ) | wc -l )
|
|
printf '%6s %s\n' "$n" "$f"
|
|
else
|
|
printf '%6s %s (missing)\n' "-" "$f"
|
|
fi
|
|
done
|
|
|
|
echo ""
|
|
echo "Done. Full unified diffs: diff -u \"\$CH/<path>\" \"\$UB/<path>\" | less"
|