Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to kernel 5.15.yy #8

Merged
merged 3 commits into from Feb 17, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
7 changes: 6 additions & 1 deletion README.md
Expand Up @@ -13,11 +13,16 @@ Currently supported OrangePi devices are
| Type | Source | Version |
| :----------- | :-------------------------------------------------------------- | :--------------- |
| U-Boot | [u-boot/u-boot.git](https://source.denx.de/u-boot/u-boot.git) | `2020.10` |
| Kernel | [megous/linux.git](https://megous.com/git/linux) | `orange-pi-5.10` |
| Kernel | [megous/linux.git](https://megous.com/git/linux) | `orange-pi-5.15` |
| Firmware | [armbian/firmware.git](https://github.com/armbian/firmware.git) | `master` |
| Build System | [armbian/build](https://github.com/armbian/build.git) | `master` |

## Changelog
Feb 17 2022
- Update to kernel 5.15.yy
- Add support for WM8809 (@mafiulo)
- Add support for E1DA 9038d and Tempotec Sonata E44 DSD USB DACs (@Vyacheslav-S)

Feb 07 2021
- Update to kernel 5.10.yy

Expand Down
Binary file not shown.
24 changes: 17 additions & 7 deletions mkplatform.sh
Expand Up @@ -3,6 +3,13 @@ set -eo pipefail

# Default to lite
ver="${1:-lite}"
[[ $# -ge 1 ]] && shift 1
if [[ $# -ge 0 ]]; then
armbian_extra_falgs=("$@")
echo "Passing additional args to Armbian ${armbian_extra_falgs[*]}"
else
armbian_extra_falgs=("")
fi

C=$(pwd)
A=../../armbian
Expand All @@ -11,18 +18,20 @@ B=current
# Make sure we grab the right version
ARMBIAN_VERSION=$(cat ${A}/VERSION)

# Shouldn't be needed anymore
# cp patches/kernel-sunxi-legacy.patch ${A}/userpatches/kernel/sunxi-legacy/
# cp ${A}/config/kernel/linux-sunxi-legacy.config ${A}/userpatches
# Custom patches
echo "Adding custom patches"
ls "${C}/patches/"
cp "${C}/patches/"*.patch ${A}/userpatches/kernel/sunxi-current/

cd ${A}
ARMBIAN_HASH=$(git rev-parse --short HEAD)
echo "Building for OrangePi ${ver} -- with Armbian ${ARMBIAN_VERSION} -- $B"
./compile.sh docker KERNEL_ONLY=yes BOARD="${P}" BRANCH=${B} RELEASE=buster KERNEL_CONFIGURE=no EXTERNAL=yes BUILD_KSRC=no BUILD_DESKTOP=no "${armbian_extra_falgs[@]}"

./compile.sh docker KERNEL_ONLY=yes BOARD="${P}" BRANCH=${B} RELEASE=buster KERNEL_CONFIGURE=no EXTERNAL=yes BUILD_KSRC=no BUILD_DESKTOP=no
echo "Done!"

cd "${C}"
echo "Creating platform ${P} files"
[[ -d ${P} ]] && rm -rf "${P}"
mkdir -p "${P}/u-boot"
mkdir -p "${P}/lib/firmware"
Expand All @@ -34,7 +43,9 @@ dpkg-deb -x "${A}/output/debs/linux-dtb-${B}-sunxi_${ARMBIAN_VERSION}"_* "${P}"
dpkg-deb -x "${A}/output/debs/linux-image-${B}-sunxi_${ARMBIAN_VERSION}"_* "${P}"
dpkg-deb -x "${A}/output/debs/linux-u-boot-${B}-${P}_${ARMBIAN_VERSION}"_* "${P}"

git clone --depth 1 https://github.com/armbian/firmware "${P}/lib/firmware"
# Use prepared deb instead
dpkg-deb -x "${A}/output/debs/armbian-firmware_${ARMBIAN_VERSION}"_* "${P}"
# git clone --depth 1 https://github.com/armbian/firmware "${P}/lib/firmware"

# Copy bootloader stuff
cp "${P}"/usr/lib/linux-u-boot-${B}-*/u-boot-sunxi-with-spl.bin "${P}/u-boot"
Expand All @@ -51,9 +62,8 @@ for dts in "${C}"/overlays/*.dts; do
dts_file=${dts%%.*}
echo "Compiling ${dts_file}"
dtc -O dtb -o "${dts_file}.dtbo" "${dts_file}.dts"
cp "${dts_file}".{dts,dtbo} "${P}"/boot/overlay-user
done

cp "${C}"/overlays/*.dtbo "${P}"/boot/overlay-user
cp ${A}/config/bootscripts/boot-sunxi.cmd "${P}"/boot/boot.cmd
touch "${P}"/boot/.next # Signal mainline kernel
mkimage -c none -A arm -T script -d "${P}"/boot/boot.cmd "${P}"/boot/boot.scr
Expand Down
Binary file modified orangepilite.tar.xz
Binary file not shown.
Binary file modified orangepione.tar.xz
Binary file not shown.
Binary file modified orangepipc.tar.xz
Binary file not shown.
Binary file modified orangepizero.tar.xz
Binary file not shown.
Binary file added overlays/ali_pifi_wm8804-i2c.dtbo
Binary file not shown.
81 changes: 81 additions & 0 deletions overlays/ali_pifi_wm8804-i2c.dts
@@ -0,0 +1,81 @@
/dts-v1/;
/plugin/;

/ {
compatible = "allwinner,sun8i-h3";

fragment@0 {
target = <&i2c0>;
__overlay__ {
#address-cells = <1>;
#size-cells = <0>;
wm8804: wm8804@3b {
#sound-dai-cells = <0>;
compatible = "wlf,wm8804";
oscclk = <27000000>;
clk_id = "WM8804_TX_CLKSRC_PLL";
// clk_id = "WM8804_TX_CLKSRC_MCLK";
// external_mclk;
reg = <0x3b>;
status = "okay";
// DVDD-supply = <&reg_3v3>;
// PVDD-supply = <&reg_3v3>;
// be aware that parameters of this node work only with patched version of wm8804.c driver
// done to make it work with volumio . fragment@3 and @4 made to disable hdmi sound on opi board for testing
};
};
};
fragment@1 {
target = <&i2s0>;
__overlay__ {
status = "okay";
pinctrl-0 = <&i2s0_pins>;
pinctrl-names = "default";
};
};

fragment@2 {
target-path = "/";
__overlay__ {
sound {
compatible = "simple-audio-card";
simple-audio-card,name = "ali-pifi-wm8804";
simple-audio-card,routing =
"AIFRX", "SPDIFTX";
simple-audio-card,dai-link {
bitclock-master = <&dailink0_codec>;
frame-master = <&dailink0_codec>;
format = "i2s";
status = "okay";

dailink0_cpu: cpu {
sound-dai = <&i2s0>;
mclk-fs = <128>;
dai-tdm-slot-num = < 0x2 >;
dai-tdm-slot-width = < 0x20 >;
};

dailink0_codec: codec {
sound-dai = <&wm8804>;
// system-clock-frequency = <27000000>;
};
};
};
};
};
fragment@3 {
target = <&hdmi_sound>;
__overlay__ {
status = "disabled";
};
};

fragment@4 {
target = <&i2s2>;
__overlay__ {
status = "disabled";
};
};


};