diff --git a/README.md b/README.md index 530f2337..1abd8b23 100644 --- a/README.md +++ b/README.md @@ -6,15 +6,15 @@ It is still in alpha stage, with little documentation, but it is functional. I'm I tried to make the system as user-friendly as possible, to make life easier. The loader automatically detects which device is being used, SATADom or USB, detecting its VID and PID correctly. redpill-lkm has been edited to allow booting the kernel without setting the variables related to network interfaces so the loader (and user) doesn't have to worry about that. The Jun's code that makes the zImage and Ramdisk patch is embedded, if there is a change in "zImage" or "rd.gz" by some update, the loader re-applies the patches. Builds 42218 and 42661 up to update5 are working. Automatic updates should still be disabled as we are not sure if this technique will work forever. -To use this project, download the latest image available and burn it to a USB stick or SATA disk-on-module. Set the PC to boot from the burned media and follow the informations on the screen. When booting, the user can call the "menu.sh" command from the computer itself, access via SSH or use the virtual terminal (ttyd) by typing the address provided on the screen (http://:7681). The loader will automatically increase the size of the last partition and use this space as cache if it is larger than 2GiB. +To use this project, download the latest image available and burn it to a USB stick or SATA disk-on-module. Set the PC to boot from the burned media and follow the informations on the screen. When booting, the user can call the "menu.sh" command from the computer itself, access via SSH or use the virtual terminal (ttyd) by typing the address provided on the screen (http://(ip):7681). The loader will automatically increase the size of the last partition and use this space as cache if it is larger than 2GiB. -The menu system is dynamic and I hope it is intuitive enough that the user can use it without any problems. Its allows you to choose a model, the existing buildnumber for the chosen model, randomly type or create a serial number, add/remove addons with a hardware detection option, add/remove/view "cmdline" and "synoinfo" entries, choose the LKM version, create the loader, boot, manually edit the configuration file, choose a keymap and exit. +The menu system is dynamic and I hope it is intuitive enough that the user can use it without any problems. Its allows you to choose a model, the existing buildnumber for the chosen model, randomly type or create a serial number, add/remove addons with a hardware detection option, add/remove/view "cmdline" and "synoinfo" entries, choose the LKM version, create the loader, boot, manually edit the configuration file, choose a keymap, update and exit. Addons and "synoinfo" entries require re-creating the loader, "cmdline" entries do not. You can view the "cmdline" and "synoinfo" entries defined for the chosen model, with user-defined entries having higher priority. There is no need to configure the VID/PID (if using a USB stick) or define the MAC Addresses of the network interfaces. If the user wants to modify the MAC Address of any interface, he must manually add "cmdline" entries in the corresponding menu (set "netif_num" according to "mac1..4" entries). -If a model is chosen that uses the Device-tree system to define the HDs, there is no need to configure anything. In the case of models that do not use device-tree, the configurations must be done manually and for this there is an option in the "Cmdline" menu to display the SATA controllers, DUMMY ports and ports in use, to assist in the creation of the "SataPortMap", "DiskIdxMap" and "sata_remap". There is also an option to change the maximum amount of HDs supported by the model, adjusting "maxdisks" and "internalportcfg" automatically. +If a model is chosen that uses the Device-tree system to define the HDs, there is no need to configure anything. In the case of models that do not use device-tree, the configurations must be done manually and for this there is an option in the "Cmdline" menu to display the SATA controllers, DUMMY ports and ports in use, to assist in the creation of the "SataPortMap", "DiskIdxMap" and "sata_remap". Another important point is that the loader detects whether or not the CPU has the FMA3 instruction and does not display the models that require it. So if the DS918+ and DVA3221 models are not displayed it is because of the CPU's lack of support for FMA instructions. @@ -25,3 +25,4 @@ Addons can be downloaded and added to the loader. All code was based on the work of TTG, pocopico, jumkey and others involved in continuing TTG's original redpill-load project. More information will be added in the future. + diff --git a/VERSION b/VERSION index 24307af3..f9775913 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.1-alpha7 +0.1-alpha8 diff --git a/files/board/arpl/overlayfs/opt/arpl/include/consts.sh b/files/board/arpl/overlayfs/opt/arpl/include/consts.sh index 08e838fe..372b837b 100644 --- a/files/board/arpl/overlayfs/opt/arpl/include/consts.sh +++ b/files/board/arpl/overlayfs/opt/arpl/include/consts.sh @@ -1,5 +1,5 @@ -ARPL_VERSION="0.1-alpha7" +ARPL_VERSION="0.1-alpha8" # Define paths TMP_PATH="/tmp" diff --git a/files/board/arpl/overlayfs/opt/arpl/model-configs/DS2422+.yml b/files/board/arpl/overlayfs/opt/arpl/model-configs/DS2422+.yml index b1116345..91d7dacb 100644 --- a/files/board/arpl/overlayfs/opt/arpl/model-configs/DS2422+.yml +++ b/files/board/arpl/overlayfs/opt/arpl/model-configs/DS2422+.yml @@ -13,6 +13,8 @@ modules-notneeded: &modules-notneeded - uhci_hcd - mv14xx synoinfo: &synoinfo + support_disk_compatibility: "no" + support_memory_compatibility: "no" rss_server: "http://example.com/null.xml" rss_server_ssl: "https://example.com/null.xml" rss_server_v2: "https://example.com/autoupdate/v2/getList" diff --git a/files/board/arpl/overlayfs/opt/arpl/ramdisk-patch.sh b/files/board/arpl/overlayfs/opt/arpl/ramdisk-patch.sh index ec7e8767..379765af 100755 --- a/files/board/arpl/overlayfs/opt/arpl/ramdisk-patch.sh +++ b/files/board/arpl/overlayfs/opt/arpl/ramdisk-patch.sh @@ -62,18 +62,6 @@ while read f; do (cd "${RAMDISK_PATH}" && patch -p1 < "${PATCH_PATH}/${f}") >>"${LOG_FILE}" 2>&1 || dieLog done < <(readModelArray "${MODEL}" "builds.${BUILD}.patch") -# Temporary workaround -# LOADER_DISK="`blkid | grep 'LABEL="ARPL3"' | cut -d3 -f1`" -# BUS=`udevadm info --query property --name ${LOADER_DISK} | grep ID_BUS | cut -d= -f2` -# DT="`readModelKey "${MODEL}" "dt"`" -# if [ "${DT}" != "true" ]; then -# NUMPORTS=$((`ls /sys/class/scsi_host | wc -w`-1)) -# [ "${BUS}" = "ata" ] && NUMPORTS=$((${NUMPORTS}-1)) -# SYNOINFO["maxdisks"]=${NUMPORTS} -# INTPORTCFG="0x`printf "%x" "$((2**${NUMPORTS}-1))"`" -# SYNOINFO["internalportcfg"]="${INTPORTCFG}" -# fi - # Patch /etc/synoinfo.conf echo -n "." for KEY in ${!SYNOINFO[@]}; do @@ -104,8 +92,11 @@ cp "${PATCH_PATH}/iosched-trampoline.sh" "${RAMDISK_PATH}/usr/sbin/modprobe" # Addons # Check if model needs Device-tree dynamic patch DT="`readModelKey "${MODEL}" "dt"`" -[ "${DT}" = "true" ] && ADDONS['qjs-dtb']="" # Add system addon "qjs-dtb" +# Add system addon "qjs-dtb" or "maxdisks" +[ "${DT}" = "true" ] && ADDONS['qjs-dtb']="" || ADDONS['maxdisks']="" ADDONS['misc']="" # Add system addon "misc" +ADDONS['acpid']="" # Add system addon "acpid" + mkdir -p "${RAMDISK_PATH}/addons" echo -n "." #/proc/sys/kernel/syno_install_flag diff --git a/files/board/arpl/p3/addons/acpid/apollolake-4.4.180.tgz b/files/board/arpl/p3/addons/acpid/apollolake-4.4.180.tgz index 97615a57..90e0a910 100644 Binary files a/files/board/arpl/p3/addons/acpid/apollolake-4.4.180.tgz and b/files/board/arpl/p3/addons/acpid/apollolake-4.4.180.tgz differ diff --git a/files/board/arpl/p3/addons/acpid/broadwell-4.4.180.tgz b/files/board/arpl/p3/addons/acpid/broadwell-4.4.180.tgz index a0c8b3d0..a04e6b63 100644 Binary files a/files/board/arpl/p3/addons/acpid/broadwell-4.4.180.tgz and b/files/board/arpl/p3/addons/acpid/broadwell-4.4.180.tgz differ diff --git a/files/board/arpl/p3/addons/acpid/broadwellnk-4.4.180.tgz b/files/board/arpl/p3/addons/acpid/broadwellnk-4.4.180.tgz index 9aa804af..28d8126f 100644 Binary files a/files/board/arpl/p3/addons/acpid/broadwellnk-4.4.180.tgz and b/files/board/arpl/p3/addons/acpid/broadwellnk-4.4.180.tgz differ diff --git a/files/board/arpl/p3/addons/acpid/bromolow-3.10.108.tgz b/files/board/arpl/p3/addons/acpid/bromolow-3.10.108.tgz index 740a8be1..1bed1239 100644 Binary files a/files/board/arpl/p3/addons/acpid/bromolow-3.10.108.tgz and b/files/board/arpl/p3/addons/acpid/bromolow-3.10.108.tgz differ diff --git a/files/board/arpl/p3/addons/acpid/denverton-4.4.180.tgz b/files/board/arpl/p3/addons/acpid/denverton-4.4.180.tgz index 9a07f48c..c0865b9b 100644 Binary files a/files/board/arpl/p3/addons/acpid/denverton-4.4.180.tgz and b/files/board/arpl/p3/addons/acpid/denverton-4.4.180.tgz differ diff --git a/files/board/arpl/p3/addons/acpid/geminilake-4.4.180.tgz b/files/board/arpl/p3/addons/acpid/geminilake-4.4.180.tgz index 53d8b930..eb01e30c 100644 Binary files a/files/board/arpl/p3/addons/acpid/geminilake-4.4.180.tgz and b/files/board/arpl/p3/addons/acpid/geminilake-4.4.180.tgz differ diff --git a/files/board/arpl/p3/addons/acpid/manifest.yml b/files/board/arpl/p3/addons/acpid/manifest.yml index 5e88c1e7..0a18e3d6 100644 --- a/files/board/arpl/p3/addons/acpid/manifest.yml +++ b/files/board/arpl/p3/addons/acpid/manifest.yml @@ -1,5 +1,6 @@ version: 1 name: acpid +system: true description: "Flexible and extensible daemon for delivering ACPI events" available-for: bromolow-3.10.108: diff --git a/files/board/arpl/p3/addons/acpid/v1000-4.4.180.tgz b/files/board/arpl/p3/addons/acpid/v1000-4.4.180.tgz index 81647a00..ff622fbf 100644 Binary files a/files/board/arpl/p3/addons/acpid/v1000-4.4.180.tgz and b/files/board/arpl/p3/addons/acpid/v1000-4.4.180.tgz differ diff --git a/files/board/arpl/p3/addons/maxdisks/all.tgz b/files/board/arpl/p3/addons/maxdisks/all.tgz new file mode 100644 index 00000000..22524258 Binary files /dev/null and b/files/board/arpl/p3/addons/maxdisks/all.tgz differ diff --git a/files/board/arpl/p3/addons/maxdisks/manifest.yml b/files/board/arpl/p3/addons/maxdisks/manifest.yml new file mode 100644 index 00000000..87d24ba4 --- /dev/null +++ b/files/board/arpl/p3/addons/maxdisks/manifest.yml @@ -0,0 +1,7 @@ +version: 1 +name: maxdisks +system: true +description: "Adjust maxdisks and internalportcfg automatically" +all: + install-script: "install.sh" + copy: "all"