fix script

This commit is contained in:
Pat Nakajima 2026-04-19 15:16:03 -07:00
parent 87a5a29fe6
commit 912e427243

View File

@ -22,12 +22,21 @@ if [ -z "$TARGET_HOME" ] || [ ! -d "$TARGET_HOME" ]; then
fi fi
CONFIG="/boot/firmware/config.txt" CONFIG="/boot/firmware/config.txt"
if [ ! -f "$CONFIG" ]; then
echo "Could not find $CONFIG" >&2
exit 1
fi
OVERLAYS="/boot/firmware/overlays" OVERLAYS="/boot/firmware/overlays"
mkdir -p "$OVERLAYS"
RESTORE_HELPER="/usr/local/sbin/barepi-audio-restore" RESTORE_HELPER="/usr/local/sbin/barepi-audio-restore"
RESTORE_SERVICE="/etc/systemd/system/barepi-audio-restore.service" RESTORE_SERVICE="/etc/systemd/system/barepi-audio-restore.service"
echo "=== barepi audio setup ===" echo "=== barepi audio setup ==="
echo "User: $TARGET_USER Home: $TARGET_HOME" echo "User: $TARGET_USER Home: $TARGET_HOME"
echo "Config: $CONFIG"
echo "Overlays: $OVERLAYS"
echo "" echo ""
# 1. Install packages # 1. Install packages
@ -134,46 +143,49 @@ cat > "$DTS" << 'DTS_EOF'
}; };
fragment@3 { fragment@3 {
target-path = "/"; target = <&sound>;
__overlay__ { __overlay__ {
sound {
compatible = "simple-audio-card"; compatible = "simple-audio-card";
i2s-controller = <&i2s_clk_producer>;
#address-cells = <1>;
#size-cells = <0>;
simple-audio-card,name = "barepi-audio"; simple-audio-card,name = "barepi-audio";
simple-audio-card,format = "i2s"; simple-audio-card,format = "i2s";
status = "okay"; status = "okay";
dailink0: simple-audio-card,dai-link@0 { simple-audio-card,dai-link@0 {
reg = <0>;
format = "i2s"; format = "i2s";
bitclock-master = <&cpu0>; bitclock-master = <&dailink0_master>;
frame-master = <&cpu0>; frame-master = <&dailink0_master>;
cpu0: cpu { dailink0_master: cpu {
sound-dai = <&i2s_clk_producer>; sound-dai = <&i2s_clk_producer>;
}; };
codec0: codec { codec {
sound-dai = <&dac_codec>; sound-dai = <&dac_codec>;
system-clock-frequency = <1536000>; system-clock-frequency = <1536000>;
}; };
}; };
dailink1: simple-audio-card,dai-link@1 { simple-audio-card,dai-link@1 {
reg = <1>;
format = "i2s"; format = "i2s";
bitclock-master = <&cpu1>; bitclock-master = <&dailink1_master>;
frame-master = <&cpu1>; frame-master = <&dailink1_master>;
cpu1: cpu { dailink1_master: cpu {
sound-dai = <&i2s_clk_producer>; sound-dai = <&i2s_clk_producer>;
}; };
codec1: codec { codec {
sound-dai = <&mic_codec>; sound-dai = <&mic_codec>;
}; };
}; };
}; };
}; };
}; };
};
DTS_EOF DTS_EOF
dtc -@ -I dts -O dtb -o "$OVERLAYS/i2s-audio.dtbo" "$DTS" dtc -@ -I dts -O dtb -o "$OVERLAYS/i2s-audio.dtbo" "$DTS"
rm -f "$DTS" rm -f "$DTS"