Skip to content
Snippets Groups Projects

Draft: Support dtb overlays

Closed Imported Administrator requested to merge dtbo into master
3 unresolved threads
1 file
+ 26
0
Compare changes
  • Side-by-side
  • Inline
+ 26
0
@@ -352,11 +352,37 @@ append_or_copy_dtb() {
local _dtb_filename
_dtb_filename=$(basename "$_dtb_path")
copy "$_dtb_path" "$work_dir/$_dtb_filename"
apply_dtbo "$work_dir/$_dtb_filename"
additional_files="$additional_files ${_dtb_filename}"
done
fi
}
# $1: dtb path
apply_dtbo() {
require_package "fdtoverlay" "dtc" "apply_dtbo"
local _dtbo=""
_dtbo="$(find /boot/dtbo -name "*.dtbo" 2> /dev/null)"
# Remove excess whitespace
_dtbo=$(echo "$_dtbo" | xargs)
# Return if no dtbo found
if [ -z "$_dtbo" ]; then
return
fi
# Note: ftdoverlay can accept several overlays as arguments, make
# use of it here by passing them with "$_dtbo" variable when
# `find` execution above finds more than one overlay.
#
# From --help:
# fdtoverlay <options> [<overlay.dtbo> [<overlay.dtbo>]]
+8
ftdoverlay --input "$1" --output "$1" "$_dtbo"
    • Author Owner

      nit pick: IMHO would be more readable if you set some local var to "$1", e.g. local _dtb_path="$1"

      By clayton craft on 2023-10-26T19:07:14

    • Author Owner
      Resolved by Administrator

      don't write directly to /boot. output to the workdir, then add the file to additional_files so that an atomic copy can be done to /boot later

      By clayton craft on 2023-10-26T19:33:27

      Edited by Ghost User
Please register or sign in to reply
}
# Add Mediatek header to kernel & initramfs
add_mtk_header() {
[ "${deviceinfo_bootimg_mtk_mkimage}" = "true" ] || return 0
Loading