-
-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
BananaPi BPI-F3: Update kernel to 6.6.y and other fixups
#7616
Conversation
Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
Build on board BPI-F3
it ended up with an error of unsatisfied build system dependencies. I got the impression that the native build is poorly supported. |
I've never tried to build native |
Swears at the C++ version. He wants 11 and 13 is installed. I just tried to assemble it on the board. Do not pay attention. |
The files included in u-boot are rarely changed or do not change at all. Compare bit by bit the memory region in which the file will be located and the file itself. If they match, then skip the recording. This saves the life of the memory chip.
Build on QEMU KVM VM on x86_64 arch:
|
What is the reason for this? |
I didn't want it to just pull willy-nilly, as things could break. So I'm having it pull last tested commit as they aren't using tags. Looks like they are working on the repo now and updated it to 6.6.68. |
I fixed the u-boot update feature. Now she checks all the files before writing. And it now meets the requirements of shellfmt, shellcheck |
What you had in there before was busted, which is why I changed it. Anyway. if what you changed works. Kool. |
This is what happens when using the armbian-config tool to transfer to eMMC. Its wrong and I also don't understand why we would want to skip anything?
What should be happening.
|
This incorrect behavior has been fixed in #7554
There are two ways to check this. The second way is to see the details using a debugging script.: #! /bin/bash
# dd if=$1/bootinfo_emmc.bin of=$device bs=512 conv=notrunc
# dd if=$1/FSBL.bin of=$device bs=512 seek=1 conv=notrunc
# dd if=$1/fw_dynamic.itb of=${2} bs=512 seek=1280 conv=notrunc
# dd if=$1/u-boot.itb of=${2} bs=512 seek=2048 conv=notrunc
write_uboot_platform() {
local device N
declare -A d
d=(
["bootinfo_emmc.bin"]="0:$(du -b ${1}/bootinfo_emmc.bin | awk '{print $1}')"
["FSBL.bin"]="1:$(du -b ${1}/FSBL.bin | awk '{print $1}')"
[fw_dynamic.itb]="1280:$(du -b ${1}/fw_dynamic.itb | awk '{print $1}')"
[u-boot.itb]="2048:$(du -b ${1}/u-boot.itb | awk '{print $1}')"
)
device=${2}
if [ -b ${2}boot0 ]; then
device="${2}boot0"
# echo 0 > /sys/block/$(basename ${device})/force_ro
echo "# sync"
fi
for f in "${!d[@]}"; do
N=$((${d[$f]%:*} * 512))
dd "if=${device}" bs=1 "skip=$N" "count=${d[$f]#*:}" conv=notrunc status=noxfer | xxd -l120
echo ""
xxd -l120 "${1}/${f}"
echo "=========================================="
if dd "if=${device}" bs=1 "skip=$N" "count=${d[$f]#*:}" \
conv=notrunc status=noxfer 2>/dev/null | cmp --quiet "${1}/${f}"
then
echo "Skip $f, it is equal to the existing one"
else
echo "# Write =: N=$N d=${d[$f]} f=$f to ${device} seek=${d[$f]%:*}"
#dd if=$1/$f of=${device} bs=512 seek="${d[$f]%:*}" conv=notrunc,fsync status=noxfer
fi
done
}
write_uboot_platform "/usr/lib/linux-u-boot-legacy-bananapif3" "/dev/mmcblk0"
You must first install xxd this script doesn't record anything, it just shows what it's checking. |
Why should we record the same thing that has already been recorded? |
I'm going on New Year's holidays and will be available after January 15th. |
I'm just gonna REVERT until it can be sorted. I don't feel like fussing with it. The other function might not look like a coders dream, but it did work. Enjoy and Happy New Year. |
This reverts commit c3be1f0.
armbian/firmware@46c7dd0 Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
This is beyond the scope of this PR. The builder says RISCV isn't supported when trying to use Trixie, when in fact Trixie does have RISCV support. This should be corrected at some point. I'm done with this PR. |
Kernel source: https://github.com/jmontleon/linux-bianbu.git
I've been using it now for a couple weeks and works well.
U-Boot source: https://gitee.com/bianbu-linux/uboot-2022.10.git
OpenSBI source: https://gitee.com/bianbu-linux/opensbi.git
TAG="v2.0.4"
Updated config/sources/families/spacemit.conf
Made the needed adjustments and simplified the write_uboot_platform function.
Note: Bluetooth is still b0rkedNote:
rfkill unblock all
.