mirror of
https://github.com/RROrg/rr.git
synced 2025-06-21 05:51:05 +08:00
Allow bootloadder disk to be of scsi type
This commit is contained in:
parent
6256363583
commit
881fbd2dbc
@ -12,6 +12,7 @@ loaderIsConfigured || die "$(TEXT "Loader is not configured!")"
|
||||
|
||||
LOADER_DISK="$(blkid | grep 'LABEL="ARPL3"' | cut -d3 -f1)"
|
||||
BUS=$(udevadm info --query property --name ${LOADER_DISK} | grep ID_BUS | cut -d= -f2)
|
||||
[ "${BUS}" = "ata" ] && BUS="sata"
|
||||
|
||||
# Print text centralized
|
||||
clear
|
||||
@ -23,7 +24,7 @@ printf "\033[1;32m%*s\033[0m\n" $(((${#TITLE} + ${COLUMNS}) / 2)) "${TITLE}"
|
||||
printf "\033[1;44m%*s\033[0m\n" ${COLUMNS} ""
|
||||
TITLE="BOOTING:"
|
||||
[ -d "/sys/firmware/efi" ] && TITLE+=" [UEFI]" || TITLE+=" [BIOS]"
|
||||
[ "${BUS}" = "usb" ] && TITLE+=" [USB flashdisk]" || TITLE+=" [SATA DoM]"
|
||||
[ "${BUS}" = "usb" ] && TITLE+=" [${BUS^^} flashdisk]" || TITLE+=" [${BUS^^} DoM]"
|
||||
printf "\033[1;33m%*s\033[0m\n" $(((${#TITLE} + ${COLUMNS}) / 2)) "${TITLE}"
|
||||
|
||||
[ -f "${CACHE_PATH}/logo.png" ] && echo | fbv -acuf "${CACHE_PATH}/logo.png" >/dev/null
|
||||
@ -99,7 +100,7 @@ done < <(readConfigMap "cmdline" "${USER_CONFIG_FILE}")
|
||||
#
|
||||
KVER=$(readModelKey "${MODEL}" "productvers.[${PRODUCTVER}].kver")
|
||||
|
||||
if [ "${BUS}" = "ata" ]; then
|
||||
if [ ! "${BUS}" = "usb" ]; then
|
||||
LOADER_DEVICE_NAME=$(echo ${LOADER_DISK} | sed 's|/dev/||')
|
||||
SIZE=$(($(cat /sys/block/${LOADER_DEVICE_NAME}/size) / 2048 + 10))
|
||||
# Read SATADoM type
|
||||
@ -144,7 +145,7 @@ fi
|
||||
CMDLINE_LINE=""
|
||||
grep -q "force_junior" /proc/cmdline && CMDLINE_LINE+="force_junior "
|
||||
[ ${EFI} -eq 1 ] && CMDLINE_LINE+="withefi " || CMDLINE_LINE+="noefi "
|
||||
[ "${BUS}" = "ata" ] && CMDLINE_LINE+="synoboot_satadom=${DOM} dom_szmax=${SIZE} "
|
||||
[ ! "${BUS}" = "usb" ] && CMDLINE_LINE+="synoboot_satadom=${DOM} dom_szmax=${SIZE} "
|
||||
CMDLINE_LINE+="console=ttyS0,115200n8 earlyprintk earlycon=uart8250,io,0x3f8,115200n8 root=/dev/md0 loglevel=15 log_buf_len=32M"
|
||||
CMDLINE_DIRECT="${CMDLINE_LINE}"
|
||||
for KEY in ${!CMDLINE[@]}; do
|
||||
|
@ -123,10 +123,12 @@ done
|
||||
VID="0x0000"
|
||||
PID="0x0000"
|
||||
BUS=$(udevadm info --query property --name ${LOADER_DISK} | grep ID_BUS | cut -d= -f2)
|
||||
[ "${BUS}" = "ata" ] && BUS="sata"
|
||||
|
||||
if [ "${BUS}" = "usb" ]; then
|
||||
VID="0x$(udevadm info --query property --name ${LOADER_DISK} | grep ID_VENDOR_ID | cut -d= -f2)"
|
||||
PID="0x$(udevadm info --query property --name ${LOADER_DISK} | grep ID_MODEL_ID | cut -d= -f2)"
|
||||
elif [ "${BUS}" != "ata" ]; then
|
||||
elif [ "${BUS}" != "sata" -a "${BUS}" != "scsi" ]; then
|
||||
die "$(TEXT "Loader disk neither USB or DoM")"
|
||||
fi
|
||||
|
||||
@ -137,9 +139,9 @@ writeConfigKey "pid" ${PID} "${USER_CONFIG_FILE}"
|
||||
# Inform user
|
||||
echo -en "$(TEXT "Loader disk:") \033[1;32m${LOADER_DISK}\033[0m ("
|
||||
if [ "${BUS}" = "usb" ]; then
|
||||
echo -en "\033[1;32mUSB flashdisk\033[0m"
|
||||
echo -en "\033[1;32m${BUS^^} flashdisk\033[0m"
|
||||
else
|
||||
echo -en "\033[1;32mSATA DoM\033[0m"
|
||||
echo -en "\033[1;32m${BUS^^} DoM\033[0m"
|
||||
fi
|
||||
echo ")"
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user