mirror of
https://github.com/archr-linux/Arch-R.git
synced 2026-03-31 14:41:55 -07:00
Grub efi refactor (#2000)
* grub: move files to /boot/grub * add rocknix-u-boot-dt-id dts property * Delete LinuxLoader.cfg * install u-boot dtb * use rocknix-u-boot-dt-id to update dtb.img * update config.xml and mkimage * tools/rocknix-abl: add package install in mk_image * sm8650/sm8550: fix update.sh * fix S922X * rocknix-abl: dont depend on toolchain * fix update.sh * Qualcomm: copy dtb with mkimage_dtb
This commit is contained in:
@@ -283,7 +283,7 @@ function savedefault {
|
||||
|
||||
set timeout_style=menu
|
||||
set lang=en_US
|
||||
loadfont /EFI/BOOT/dejavu-mono.pf2
|
||||
loadfont /boot/grub/dejavu-mono.pf2
|
||||
set rotation=270
|
||||
set gfxmode=auto
|
||||
insmod efi_gop
|
||||
@@ -302,7 +302,7 @@ menuentry '${FULL}' \$menuentry_id_option '${SHORT}' {
|
||||
savedefault
|
||||
search --set -f /KERNEL
|
||||
linux /KERNEL boot=LABEL=${DISTRO_BOOTLABEL} disk=LABEL=${DISTRO_DISKLABEL} grub_portable ${EXTRA_CMDLINE}
|
||||
devicetree /${DTB}.dtb
|
||||
devicetree /boot/grub/${DTB}.dtb
|
||||
}
|
||||
EOF
|
||||
done
|
||||
@@ -314,7 +314,7 @@ EOF
|
||||
menuentry '${FULL} RECOVERY' \$menuentry_id_option '${SHORT}-recovery' {
|
||||
search --set -f /KERNEL
|
||||
linux /KERNEL boot=LABEL=${DISTRO_BOOTLABEL} disk=LABEL=${DISTRO_DISKLABEL} grub_portable ${EXTRA_CMDLINE} recovery
|
||||
devicetree /${DTB}.dtb
|
||||
devicetree /boot/grub/${DTB}.dtb
|
||||
}
|
||||
EOF
|
||||
done
|
||||
|
||||
@@ -20,14 +20,12 @@ mkimage_uboot() {
|
||||
echo "image: writing u-boot-sunxi-with-spl.bin to $(basename "${DISK}")..."
|
||||
dd if="${RELEASE_DIR}/3rdparty/bootloader/u-boot-sunxi-with-spl.bin" of="${DISK}" bs=1K seek=8 conv=fsync,notrunc >"${SAVE_ERROR}" 2>&1 || show_error
|
||||
elif [ -f "${RELEASE_DIR}/3rdparty/bootloader/rocknix-u-boot.img" ]; then
|
||||
# SM8650
|
||||
# SM8650 & SM8550
|
||||
echo "image: copying rocknix u-boot files..."
|
||||
mcopy -o "${RELEASE_DIR}/3rdparty/bootloader/rocknix-u-boot.img" ::
|
||||
mcopy -s -o "${RELEASE_DIR}/3rdparty/bootloader/device_trees" ::
|
||||
else
|
||||
# SM8550
|
||||
echo "image: copying u-boot files..."
|
||||
mcopy -s -o "${RELEASE_DIR}/3rdparty/bootloader/boot" ::
|
||||
echo "ERROR no u-boot file found for ${SUBDEVICE}"
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -70,7 +68,10 @@ mkimage_dtb() {
|
||||
RK3326)
|
||||
mcopy "${RELEASE_DIR}/3rdparty/bootloader/device_trees/"*.dtb ::
|
||||
;;
|
||||
S922X|SDM845|SM8250|SM8550|SM8650)
|
||||
SM8550|SM8650|SM8250|SDM845)
|
||||
mcopy -s -o "${RELEASE_DIR}/3rdparty/bootloader/boot" ::
|
||||
;;
|
||||
S922X)
|
||||
mcopy "${RELEASE_DIR}/3rdparty/bootloader/"*.dtb ::
|
||||
;;
|
||||
*)
|
||||
@@ -89,14 +90,14 @@ mkimage_gou_extras() {
|
||||
mcopy "${RELEASE_DIR}/3rdparty/bootloader/res" ::
|
||||
}
|
||||
|
||||
mkimage_efi() {
|
||||
echo "image: copying EFI files..."
|
||||
mkimage_grub() {
|
||||
echo "image: copying grub files and dtb..."
|
||||
mcopy -s -o "${RELEASE_DIR}/3rdparty/bootloader/EFI" ::
|
||||
}
|
||||
|
||||
mkimage_linuxloader() {
|
||||
echo "image: copying LinuxLoader.cfg..."
|
||||
mcopy "${PROJECT_DIR}/${PROJECT}/devices/${DEVICE}/bootloader/LinuxLoader.cfg" ::
|
||||
mkimage_abl() {
|
||||
echo "image: copying ROCKNIX ABL..."
|
||||
mcopy "${RELEASE_DIR}/3rdparty/bootloader/rocknix_abl" ::
|
||||
}
|
||||
|
||||
mkimage_all
|
||||
|
||||
@@ -68,16 +68,16 @@
|
||||
<file>meson-g12b-odroid-go-ultra</file>
|
||||
<file>meson-g12b-powkiddy-rgb10-max-3-pro</file>
|
||||
</S922X>
|
||||
<SDM845 mkimage_options="dtb,efi" dtb_prefix="qcom">
|
||||
<SDM845 mkimage_options="grub,dtb" dtb_prefix="qcom">
|
||||
<file short="odin" full="AYN Odin" rotation="3">sdm845-ayn-odin</file>
|
||||
</SDM845>
|
||||
<SM8250 mkimage_options="dtb,efi" dtb_prefix="qcom">
|
||||
<SM8250 mkimage_options="grub,dtb" dtb_prefix="qcom">
|
||||
<file short="rp5" full="Retroid Pocket 5" rotation="3">sm8250-retroidpocket-rp5</file>
|
||||
<file short="rpflip2" full="Retroid Pocket Flip2" rotation="3">sm8250-retroidpocket-flip2</file>
|
||||
<file short="rpmini" full="Retroid Pocket Mini" rotation="1">sm8250-retroidpocket-rpmini</file>
|
||||
<file short="rpminiv2" full="Retroid Pocket Mini V2" rotation="1">sm8250-retroidpocket-rpminiv2</file>
|
||||
</SM8250>
|
||||
<SM8550 mkimage_options="dtb,efi,linuxloader,uboot" dtb_prefix="qcom">
|
||||
<SM8550 mkimage_options="grub,dtb,uboot,abl" dtb_prefix="qcom">
|
||||
<file short="odin2" full="AYN Odin2">qcs8550-ayn-odin2</file>
|
||||
<file short="odin2portal" full="AYN Odin2 Portal">qcs8550-ayn-odin2portal</file>
|
||||
<file short="odin2mini" full="AYN Odin2 Mini">qcs8550-ayn-odin2mini</file>
|
||||
@@ -87,7 +87,7 @@
|
||||
<file short="pocketds" full="AYANEO Pocket DS">qcs8550-ayaneo-pocketds</file>
|
||||
<file short="pocketevo" full="AYANEO Pocket EVO">qcs8550-ayaneo-pocketevo</file>
|
||||
</SM8550>
|
||||
<SM8650 mkimage_options="dtb,efi,uboot" dtb_prefix="qcom">
|
||||
<SM8650 mkimage_options="grub,dtb,uboot,abl" dtb_prefix="qcom">
|
||||
<file short="pockets2" full="AYANEO Pocket S2">sm8650-ayaneo-ps2</file>
|
||||
</SM8650>
|
||||
</rocknix>
|
||||
|
||||
@@ -24,7 +24,7 @@ index 000000000..68fc7e49e
|
||||
+/ {
|
||||
+ model = "Anbernic RG40XX H";
|
||||
+ compatible = "anbernic,rg40xx-h", "allwinner,sun50i-h700";
|
||||
+ rocknix-dt-id = "sun50i-h700-anbernic-rg40xx-h.dts";
|
||||
+ rocknix-dt-id = "sun50i-h700-anbernic-rg40xx-h";
|
||||
+};
|
||||
+
|
||||
+&joypad {
|
||||
|
||||
@@ -16,45 +16,38 @@ fi
|
||||
# mount $BOOT_ROOT rw
|
||||
mount -o remount,rw $BOOT_ROOT
|
||||
|
||||
echo "Updating device trees..."
|
||||
for dtb in $SYSTEM_ROOT/usr/share/bootloader/*.dtb; do
|
||||
cp -p $dtb $BOOT_ROOT
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/bootaa64.efi" ]; then
|
||||
mkdir -p $BOOT_ROOT/EFI/BOOT
|
||||
echo "Updating EFI..."
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/bootaa64.efi $BOOT_ROOT/EFI/BOOT
|
||||
fi
|
||||
|
||||
if [ -d "$SYSTEM_ROOT/usr/share/bootloader/boot/grub" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot/grub
|
||||
echo "Updating grub dtbs..."
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/boot/grub/*.dtb $BOOT_ROOT/boot/grub
|
||||
done
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/bootaa64.efi" ]; then
|
||||
echo "Updating EFI..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/bootaa64.efi $BOOT_ROOT/EFI/BOOT
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/grub.cfg" ]; then
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/boot/grub/grub.cfg" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot/grub
|
||||
echo "Updating grub.cfg..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/grub.cfg $BOOT_ROOT/EFI/BOOT
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/boot/grub/grub.cfg $BOOT_ROOT/boot/grub
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/dejavu-mono.pf2" ]; then
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/boot/grub/dejavu-mono.pf2" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot/grub
|
||||
echo "Updating dejavu-mono.pf2..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/dejavu-mono.pf2 $BOOT_ROOT/EFI/BOOT
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/boot/grub/dejavu-mono.pf2 $BOOT_ROOT/boot/grub
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/grubenv" ]; then
|
||||
if [ ! -f "$BOOT_ROOT/efi/boot/grubenv" ]; then
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/boot/grub/grubenv" ]; then
|
||||
if [ ! -f "$BOOT_ROOT/boot/grub/grubenv" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot/grub
|
||||
echo "Installing grubenv..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/grubenv $BOOT_ROOT/EFI/BOOT
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/boot/grub/grubenv $BOOT_ROOT/boot/grub
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/boot/u-boot-nodtb.bin" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot
|
||||
echo "Updating u-boot-nodtb.bin..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/boot/u-boot-nodtb.bin $BOOT_ROOT/boot
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/boot/u-boot.dtb" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot
|
||||
echo "Updating u-boot.dtb..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/boot/u-boot.dtb $BOOT_ROOT/boot
|
||||
fi
|
||||
|
||||
# mount $BOOT_ROOT ro
|
||||
sync
|
||||
mount -o remount,ro $BOOT_ROOT
|
||||
|
||||
@@ -16,45 +16,38 @@ fi
|
||||
# mount $BOOT_ROOT rw
|
||||
mount -o remount,rw $BOOT_ROOT
|
||||
|
||||
echo "Updating device trees..."
|
||||
for dtb in $SYSTEM_ROOT/usr/share/bootloader/*.dtb; do
|
||||
cp -p $dtb $BOOT_ROOT
|
||||
done
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/bootaa64.efi" ]; then
|
||||
mkdir -p $BOOT_ROOT/EFI/BOOT
|
||||
echo "Updating EFI..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/bootaa64.efi $BOOT_ROOT/EFI/BOOT
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/bootaa64.efi $BOOT_ROOT/EFI/BOOT
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/grub.cfg" ]; then
|
||||
if [ -d "$SYSTEM_ROOT/usr/share/bootloader/boot/grub" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot/grub
|
||||
echo "Updating grub dtbs..."
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/boot/grub/*.dtb $BOOT_ROOT/boot/grub
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/boot/grub/grub.cfg" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot/grub
|
||||
echo "Updating grub.cfg..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/grub.cfg $BOOT_ROOT/EFI/BOOT
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/boot/grub/grub.cfg $BOOT_ROOT/boot/grub
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/dejavu-mono.pf2" ]; then
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/boot/grub/dejavu-mono.pf2" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot/grub
|
||||
echo "Updating dejavu-mono.pf2..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/dejavu-mono.pf2 $BOOT_ROOT/EFI/BOOT
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/boot/grub/dejavu-mono.pf2 $BOOT_ROOT/boot/grub
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/grubenv" ]; then
|
||||
if [ ! -f "$BOOT_ROOT/efi/boot/grubenv" ]; then
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/boot/grub/grubenv" ]; then
|
||||
if [ ! -f "$BOOT_ROOT/boot/grub/grubenv" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot/grub
|
||||
echo "Installing grubenv..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/grubenv $BOOT_ROOT/EFI/BOOT
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/boot/grub/grubenv $BOOT_ROOT/boot/grub
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/boot/u-boot-nodtb.bin" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot
|
||||
echo "Updating u-boot-nodtb.bin..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/boot/u-boot-nodtb.bin $BOOT_ROOT/boot
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/boot/u-boot.dtb" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot
|
||||
echo "Updating u-boot.dtb..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/boot/u-boot.dtb $BOOT_ROOT/boot
|
||||
fi
|
||||
|
||||
# mount $BOOT_ROOT ro
|
||||
sync
|
||||
mount -o remount,ro $BOOT_ROOT
|
||||
|
||||
@@ -1,18 +0,0 @@
|
||||
[LinuxLoader]
|
||||
Debug = false
|
||||
Target = "Linux"
|
||||
MassStorageLUN = 0
|
||||
DefaultVolUp = "Linux"
|
||||
UsbHostMode = false
|
||||
HypUartEnable = false
|
||||
DisableDisplayHW = false
|
||||
|
||||
[Linux]
|
||||
Image = "/boot/u-boot-nodtb.bin"
|
||||
initrd = "/boot/u-boot-nodtb.bin"
|
||||
devicetree = "/boot/u-boot-odin2.dtb"
|
||||
#devicetree = "/boot/u-boot-pocket-ace.dtb"
|
||||
#devicetree = "/boot/u-boot-pocket-dmg.dtb"
|
||||
#devicetree = "/boot/u-boot-pocket-evo.dtb"
|
||||
#devicetree = "/boot/u-boot-pocket-ds.dtb"
|
||||
cmdline = "nodtbo"
|
||||
@@ -16,49 +16,60 @@ fi
|
||||
# mount $BOOT_ROOT rw
|
||||
mount -o remount,rw $BOOT_ROOT
|
||||
|
||||
echo "Updating device trees..."
|
||||
for dtb in $SYSTEM_ROOT/usr/share/bootloader/*.dtb; do
|
||||
cp -p $dtb $BOOT_ROOT
|
||||
done
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/bootaa64.efi" ]; then
|
||||
mkdir -p $BOOT_ROOT/EFI/BOOT
|
||||
echo "Updating EFI..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/bootaa64.efi $BOOT_ROOT/EFI/BOOT
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/bootaa64.efi $BOOT_ROOT/EFI/BOOT
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/grub.cfg" ]; then
|
||||
if [ -d "$SYSTEM_ROOT/usr/share/bootloader/boot/grub" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot/grub
|
||||
echo "Updating grub dtbs..."
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/boot/grub/*.dtb $BOOT_ROOT/boot/grub
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/boot/grub/grub.cfg" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot/grub
|
||||
echo "Updating grub.cfg..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/grub.cfg $BOOT_ROOT/EFI/BOOT
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/boot/grub/grub.cfg $BOOT_ROOT/boot/grub
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/dejavu-mono.pf2" ]; then
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/boot/grub/dejavu-mono.pf2" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot/grub
|
||||
echo "Updating dejavu-mono.pf2..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/dejavu-mono.pf2 $BOOT_ROOT/EFI/BOOT
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/boot/grub/dejavu-mono.pf2 $BOOT_ROOT/boot/grub
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/grubenv" ]; then
|
||||
if [ ! -f "$BOOT_ROOT/efi/boot/grubenv" ]; then
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/boot/grub/grubenv" ]; then
|
||||
if [ ! -f "$BOOT_ROOT/boot/grub/grubenv" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot/grub
|
||||
echo "Installing grubenv..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/grubenv $BOOT_ROOT/EFI/BOOT
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/boot/grub/grubenv $BOOT_ROOT/boot/grub
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/boot/u-boot-nodtb.bin" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot
|
||||
echo "Updating u-boot-nodtb.bin..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/boot/u-boot-nodtb.bin $BOOT_ROOT/boot
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/rocknix-u-boot.img" ]; then
|
||||
echo "Updating rocknix-u-boot.img..."
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/rocknix-u-boot.img $BOOT_ROOT
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/boot/u-boot-odin2.dtb" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot
|
||||
echo "Updating u-boot-odin2.dtb..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/boot/u-boot-odin2.dtb $BOOT_ROOT/boot
|
||||
if [ -d "$SYSTEM_ROOT/usr/share/bootloader/device_trees" ]; then
|
||||
mkdir -p $BOOT_ROOT/device_trees
|
||||
echo "Updating u-boot dtbs..."
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/device_trees/*.dtb $BOOT_ROOT/device_trees
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/boot/u-boot-pocket-ace.dtb" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot
|
||||
echo "Updating u-boot-pocket-ace.dtb..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/boot/u-boot-pocket-ace.dtb $BOOT_ROOT/boot
|
||||
U_BOOT_DT_ID=$(cat /proc/device-tree/rocknix-u-boot-dt-id)
|
||||
UPDATE_DTB_SOURCE="$BOOT_ROOT/device_trees/$U_BOOT_DT_ID.dtb"
|
||||
if [ -f "$UPDATE_DTB_SOURCE" ]; then
|
||||
echo "Updating dtb.img from $(basename $UPDATE_DTB_SOURCE)..."
|
||||
cp "$UPDATE_DTB_SOURCE" "$BOOT_ROOT/dtb.img"
|
||||
fi
|
||||
|
||||
if [ -d "$SYSTEM_ROOT/usr/share/bootloader/rocknix_abl" ]; then
|
||||
mkdir -p $BOOT_ROOT/rocknix_abl
|
||||
echo "Updating ROCKNIX ABL..."
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/rocknix_abl/* $BOOT_ROOT/rocknix_abl
|
||||
fi
|
||||
|
||||
# mount $BOOT_ROOT ro
|
||||
|
||||
@@ -69,7 +69,7 @@
|
||||
FIRMWARE=""
|
||||
|
||||
# Additional packages to install
|
||||
ADDITIONAL_PACKAGES="u-boot screen-switch"
|
||||
ADDITIONAL_PACKAGES="u-boot screen-switch rocknix-abl"
|
||||
|
||||
# Debug tty path
|
||||
DEBUG_TTY="/dev/ttyMSM0"
|
||||
|
||||
@@ -32,15 +32,15 @@ make_target() {
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
mkdir -p ${INSTALL}/usr/share/bootloader/boot
|
||||
|
||||
mkdir -p ${INSTALL}/usr/share/bootloader/device_trees
|
||||
|
||||
# Always install the update script
|
||||
find_file_path bootloader/update.sh && cp -av ${FOUND_PATH} ${INSTALL}/usr/share/bootloader
|
||||
|
||||
cp -av u-boot-nodtb.bin ${INSTALL}/usr/share/bootloader/boot
|
||||
cp -av dts/upstream/src/arm64/qcom/qcs8550-ayn-odin2-common.dtb ${INSTALL}/usr/share/bootloader/boot/u-boot-odin2.dtb
|
||||
cp -av dts/upstream/src/arm64/qcom/qcs8550-ayaneo-pocket-ace.dtb ${INSTALL}/usr/share/bootloader/boot/u-boot-pocket-ace.dtb
|
||||
cp -av dts/upstream/src/arm64/qcom/qcs8550-ayaneo-pocket-dmg.dtb ${INSTALL}/usr/share/bootloader/boot/u-boot-pocket-dmg.dtb
|
||||
cp -av dts/upstream/src/arm64/qcom/qcs8550-ayaneo-pocket-evo.dtb ${INSTALL}/usr/share/bootloader/boot/u-boot-pocket-evo.dtb
|
||||
cp -av dts/upstream/src/arm64/qcom/qcs8550-ayaneo-pocket-ds.dtb ${INSTALL}/usr/share/bootloader/boot/u-boot-pocket-ds.dtb
|
||||
cp -av u-boot-nodtb.bin ${INSTALL}/usr/share/bootloader/rocknix-u-boot.img
|
||||
cp -av dts/upstream/src/arm64/qcom/qcs8550-ayn-odin2-common.dtb ${INSTALL}/usr/share/bootloader/device_trees/u-boot-odin2.dtb
|
||||
cp -av dts/upstream/src/arm64/qcom/qcs8550-ayaneo-pocket-ace.dtb ${INSTALL}/usr/share/bootloader/device_trees/u-boot-pocket-ace.dtb
|
||||
cp -av dts/upstream/src/arm64/qcom/qcs8550-ayaneo-pocket-dmg.dtb ${INSTALL}/usr/share/bootloader/device_trees/u-boot-pocket-dmg.dtb
|
||||
cp -av dts/upstream/src/arm64/qcom/qcs8550-ayaneo-pocket-evo.dtb ${INSTALL}/usr/share/bootloader/device_trees/u-boot-pocket-evo.dtb
|
||||
cp -av dts/upstream/src/arm64/qcom/qcs8550-ayaneo-pocket-ds.dtb ${INSTALL}/usr/share/bootloader/device_trees/u-boot-pocket-ds.dtb
|
||||
}
|
||||
|
||||
@@ -14,7 +14,7 @@ new file mode 100644
|
||||
index 000000000000..0954c1854a05
|
||||
--- /dev/null
|
||||
+++ b/arch/arm64/boot/dts/qcom/qcs8550-ayn-common.dtsi
|
||||
@@ -0,0 +1,1698 @@
|
||||
@@ -0,0 +1,1699 @@
|
||||
+// SPDX-License-Identifier: BSD-3-Clause
|
||||
+/*
|
||||
+ * Copyright (c) 2025, Teguh Sobirin.
|
||||
@@ -41,6 +41,7 @@ index 000000000000..0954c1854a05
|
||||
+
|
||||
+/ {
|
||||
+ chassis-type = "handset";
|
||||
+ rocknix-u-boot-dt-id = "u-boot-odin2";
|
||||
+
|
||||
+ aliases {
|
||||
+ serial0 = &uart7;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
diff -rupbN linux.orig/arch/arm64/boot/dts/qcom/qcs8550-ayaneo-pocketace.dts linux/arch/arm64/boot/dts/qcom/qcs8550-ayaneo-pocketace.dts
|
||||
--- linux.orig/arch/arm64/boot/dts/qcom/qcs8550-ayaneo-pocketace.dts 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ linux/arch/arm64/boot/dts/qcom/qcs8550-ayaneo-pocketace.dts 2025-02-26 13:52:56.398992835 +0000
|
||||
@@ -0,0 +1,109 @@
|
||||
@@ -0,0 +1,110 @@
|
||||
+// SPDX-License-Identifier: BSD-3-Clause
|
||||
+/*
|
||||
+ * Copyright (c) 2025, Teguh Sobirin.
|
||||
@@ -17,6 +17,7 @@ diff -rupbN linux.orig/arch/arm64/boot/dts/qcom/qcs8550-ayaneo-pocketace.dts lin
|
||||
+ qcom,board-id = <0x1000b 0x01>;
|
||||
+ qcom,msm-id = <0x258 0x20000>, <0x259 0x20000>;
|
||||
+ compatible = "ayaneo,pocketace", "qcom,qcs8550", "qcom,sm8550";
|
||||
+ rocknix-u-boot-dt-id = "u-boot-pocket-ace";
|
||||
+};
|
||||
+
|
||||
+&tlmm {
|
||||
|
||||
@@ -3,7 +3,7 @@ new file mode 100644
|
||||
index 000000000000..845a7cf600e2
|
||||
--- /dev/null
|
||||
+++ b/arch/arm64/boot/dts/qcom/qcs8550-ayaneo-pocketdmg.dts
|
||||
@@ -0,0 +1,149 @@
|
||||
@@ -0,0 +1,150 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0
|
||||
+/*
|
||||
+ * Copyright (c) 2025, ROCKNIX (https://github.com/ROCKNIX)
|
||||
@@ -18,6 +18,7 @@ index 000000000000..845a7cf600e2
|
||||
+ qcom,board-id = <0x1000b 0x01>;
|
||||
+ qcom,msm-id = <0x258 0x20000>, <0x259 0x20000>;
|
||||
+ compatible = "ayaneo,pocketdmg", "qcom,qcs8550", "qcom,sm8550";
|
||||
+ rocknix-u-boot-dt-id = "u-boot-pocket-dmg";
|
||||
+
|
||||
+ rocknix_unified_joypad {
|
||||
+ compatible = "rocknix,unified-joypad";
|
||||
|
||||
@@ -3,7 +3,7 @@ new file mode 100644
|
||||
index 000000000..a1964367a
|
||||
--- /dev/null
|
||||
+++ b/arch/arm64/boot/dts/qcom/qcs8550-ayaneo-pocketevo.dts
|
||||
@@ -0,0 +1,98 @@
|
||||
@@ -0,0 +1,99 @@
|
||||
+// SPDX-License-Identifier: BSD-3-Clause
|
||||
+/*
|
||||
+ * Copyright (c) 2025, Teguh Sobirin.
|
||||
@@ -19,6 +19,7 @@ index 000000000..a1964367a
|
||||
+ qcom,board-id = <0x1000b 0x01>;
|
||||
+ qcom,msm-id = <0x258 0x20000>, <0x259 0x20000>;
|
||||
+ compatible = "ayaneo,pocketevo", "qcom,qcs8550", "qcom,sm8550";
|
||||
+ rocknix-u-boot-dt-id = "u-boot-pocket-evo";
|
||||
+};
|
||||
+
|
||||
+&tlmm {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
diff -rupbN linux.orig/arch/arm64/boot/dts/qcom/qcs8550-ayaneo-pocketds.dts linux/arch/arm64/boot/dts/qcom/qcs8550-ayaneo-pocketds.dts
|
||||
--- linux.orig/arch/arm64/boot/dts/qcom/qcs8550-ayaneo-pocketds.dts 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ linux/arch/arm64/boot/dts/qcom/qcs8550-ayaneo-pocketds.dts 2025-08-29 01:15:03.063872627 +0000
|
||||
@@ -0,0 +1,200 @@
|
||||
@@ -0,0 +1,201 @@
|
||||
+// SPDX-License-Identifier: BSD-3-Clause
|
||||
+/*
|
||||
+ * Copyright (c) 2025, Teguh Sobirin.
|
||||
@@ -17,6 +17,7 @@ diff -rupbN linux.orig/arch/arm64/boot/dts/qcom/qcs8550-ayaneo-pocketds.dts linu
|
||||
+ qcom,board-id = <0x1000b 0x01>;
|
||||
+ qcom,msm-id = <0x258 0x20000>, <0x259 0x20000>;
|
||||
+ compatible = "ayaneo,pocketds", "qcom,qcs8550", "qcom,sm8550";
|
||||
+ rocknix-u-boot-dt-id = "u-boot-pocket-ds";
|
||||
+
|
||||
+ tca6424_vcc: regulator-tca6424-vcc {
|
||||
+ compatible = "regulator-fixed";
|
||||
|
||||
@@ -16,33 +16,62 @@ fi
|
||||
# mount $BOOT_ROOT rw
|
||||
mount -o remount,rw $BOOT_ROOT
|
||||
|
||||
echo "Updating device trees..."
|
||||
for dtb in $SYSTEM_ROOT/usr/share/bootloader/*.dtb; do
|
||||
cp -p $dtb $BOOT_ROOT
|
||||
done
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/bootaa64.efi" ]; then
|
||||
mkdir -p $BOOT_ROOT/EFI/BOOT
|
||||
echo "Updating EFI..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/bootaa64.efi $BOOT_ROOT/EFI/BOOT
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/bootaa64.efi $BOOT_ROOT/EFI/BOOT
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/grub.cfg" ]; then
|
||||
if [ -d "$SYSTEM_ROOT/usr/share/bootloader/boot/grub" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot/grub
|
||||
echo "Updating grub dtbs..."
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/boot/grub/*.dtb $BOOT_ROOT/boot/grub
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/boot/grub/grub.cfg" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot/grub
|
||||
echo "Updating grub.cfg..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/grub.cfg $BOOT_ROOT/EFI/BOOT
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/boot/grub/grub.cfg $BOOT_ROOT/boot/grub
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/dejavu-mono.pf2" ]; then
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/boot/grub/dejavu-mono.pf2" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot/grub
|
||||
echo "Updating dejavu-mono.pf2..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/dejavu-mono.pf2 $BOOT_ROOT/EFI/BOOT
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/boot/grub/dejavu-mono.pf2 $BOOT_ROOT/boot/grub
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/grubenv" ]; then
|
||||
if [ ! -f "$BOOT_ROOT/efi/boot/grubenv" ]; then
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/boot/grub/grubenv" ]; then
|
||||
if [ ! -f "$BOOT_ROOT/boot/grub/grubenv" ]; then
|
||||
mkdir -p $BOOT_ROOT/boot/grub
|
||||
echo "Installing grubenv..."
|
||||
cp -p $SYSTEM_ROOT/usr/share/bootloader/EFI/BOOT/grubenv $BOOT_ROOT/EFI/BOOT
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/boot/grub/grubenv $BOOT_ROOT/boot/grub
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -f "$SYSTEM_ROOT/usr/share/bootloader/rocknix-u-boot.img" ]; then
|
||||
echo "Updating rocknix-u-boot.img..."
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/rocknix-u-boot.img $BOOT_ROOT
|
||||
fi
|
||||
|
||||
if [ -d "$SYSTEM_ROOT/usr/share/bootloader/device_trees" ]; then
|
||||
mkdir -p $BOOT_ROOT/device_trees
|
||||
echo "Updating u-boot dtbs..."
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/device_trees/*.dtb $BOOT_ROOT/device_trees
|
||||
fi
|
||||
|
||||
U_BOOT_DT_ID=$(cat /proc/device-tree/rocknix-u-boot-dt-id)
|
||||
UPDATE_DTB_SOURCE="$BOOT_ROOT/device_trees/$U_BOOT_DT_ID.dtb"
|
||||
if [ -f "$UPDATE_DTB_SOURCE" ]; then
|
||||
echo "Updating dtb.img from $(basename $UPDATE_DTB_SOURCE)..."
|
||||
cp "$UPDATE_DTB_SOURCE" "$BOOT_ROOT/dtb.img"
|
||||
fi
|
||||
|
||||
if [ -d "$SYSTEM_ROOT/usr/share/bootloader/rocknix_abl" ]; then
|
||||
mkdir -p $BOOT_ROOT/rocknix_abl
|
||||
echo "Updating ROCKNIX ABL..."
|
||||
cp $SYSTEM_ROOT/usr/share/bootloader/rocknix_abl/* $BOOT_ROOT/rocknix_abl
|
||||
fi
|
||||
|
||||
# mount $BOOT_ROOT ro
|
||||
sync
|
||||
mount -o remount,ro $BOOT_ROOT
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
FIRMWARE=""
|
||||
|
||||
# Additional packages to install
|
||||
ADDITIONAL_PACKAGES="u-boot"
|
||||
ADDITIONAL_PACKAGES="u-boot rocknix-abl"
|
||||
|
||||
# Debug tty path
|
||||
DEBUG_TTY="/dev/ttyMSM0"
|
||||
|
||||
@@ -24,7 +24,7 @@ make_target() {
|
||||
DEBUG=${PKG_DEBUG} CROSS_COMPILE="${TARGET_KERNEL_PREFIX}" LDFLAGS="" ARCH=arm make mrproper
|
||||
DEBUG=${PKG_DEBUG} CROSS_COMPILE="${TARGET_KERNEL_PREFIX}" LDFLAGS="" ARCH=arm make ${PKG_UBOOT_CONFIG}
|
||||
|
||||
DEBUG=${PKG_DEBUG} CROSS_COMPILE="${TARGET_KERNEL_PREFIX}" LDFLAGS="" ARCH=arm _python_sysroot="${TOOLCHAIN}" _python_prefix=/ _python_exec_prefix=/ make DEVICE_TREE=qcom/sm8650-ayaneo-ps2-u-boot HOSTCC="${HOST_CC}" HOSTCFLAGS="-I${TOOLCHAIN}/include" HOSTLDFLAGS="${HOST_LDFLAGS}" CONFIG_MKIMAGE_DTC_PATH="scripts/dtc/dtc"
|
||||
DEBUG=${PKG_DEBUG} CROSS_COMPILE="${TARGET_KERNEL_PREFIX}" LDFLAGS="" ARCH=arm _python_sysroot="${TOOLCHAIN}" _python_prefix=/ _python_exec_prefix=/ make DEVICE_TREE=qcom/sm8650-ayaneo-ps2 HOSTCC="${HOST_CC}" HOSTCFLAGS="-I${TOOLCHAIN}/include" HOSTLDFLAGS="${HOST_LDFLAGS}" CONFIG_MKIMAGE_DTC_PATH="scripts/dtc/dtc"
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
@@ -34,5 +34,5 @@ makeinstall_target() {
|
||||
find_file_path bootloader/update.sh && cp -av ${FOUND_PATH} ${INSTALL}/usr/share/bootloader
|
||||
|
||||
cp -av u-boot-nodtb.bin ${INSTALL}/usr/share/bootloader/rocknix-u-boot.img
|
||||
cp -av dts/upstream/src/arm64/qcom/sm8650-ayaneo-ps2-u-boot.dtb ${INSTALL}/usr/share/bootloader/device_trees
|
||||
cp -av dts/upstream/src/arm64/qcom/sm8650-ayaneo-ps2.dtb ${INSTALL}/usr/share/bootloader/device_trees/u-boot-pocket-s2.dtb
|
||||
}
|
||||
|
||||
@@ -21,7 +21,7 @@ index ce0f928ed9..fa079425dc 100644
|
||||
CONFIG_ARCH_SNAPDRAGON=y
|
||||
CONFIG_NR_DRAM_BANKS=24
|
||||
-CONFIG_DEFAULT_DEVICE_TREE="qcom/sdm845-db845c"
|
||||
+CONFIG_DEFAULT_DEVICE_TREE="qcom/sm8650-ayaneo-ps2-u-boot"
|
||||
+CONFIG_DEFAULT_DEVICE_TREE="qcom/sm8650-ayaneo-ps2"
|
||||
CONFIG_SYS_LOAD_ADDR=0xA0000000
|
||||
CONFIG_EFI_RUNTIME_UPDATE_CAPSULE=y
|
||||
CONFIG_EFI_CAPSULE_ON_DISK=y
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
diff --git a/dts/upstream/src/arm64/qcom/sm8650-ayaneo-ps2-u-boot.dts b/dts/upstream/src/arm64/qcom/sm8650-ayaneo-ps2-u-boot.dts
|
||||
diff --git a/dts/upstream/src/arm64/qcom/sm8650-ayaneo-ps2.dts b/dts/upstream/src/arm64/qcom/sm8650-ayaneo-ps2.dts
|
||||
new file mode 100644
|
||||
index 000000000000..681ded735fe4
|
||||
--- /dev/null
|
||||
+++ b/dts/upstream/src/arm64/qcom/sm8650-ayaneo-ps2-u-boot.dts
|
||||
+++ b/dts/upstream/src/arm64/qcom/sm8650-ayaneo-ps2.dts
|
||||
@@ -0,0 +1,612 @@
|
||||
+// SPDX-License-Identifier: BSD-3-Clause
|
||||
+/*
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user