Closed 007revad closed 1 year ago
I see dtbpatch in https://github.com/PeterSuh-Q3/tcrp-addons/tree/main/dtbpatch/releases
When I search for dtbpatch in all the .sh files and dtbpatch is never run. What is it used for?
If I run dtbpatch --help it shows:
# dtbpatch --help Use: dtbpatch <model.dtb> <model_patched.dtb>
But that is not clear to me on what it is doing.
- Is
a patch that's injected into ? - Or is dtbpatch patching
and saving it to ? If it's 2, then where is dtbpatch getting the data to patch
?
dtbpatch bin is an early tool for dtb patch developed by fabio, the founder of arpl. It is a tool that has been stabilized and has slightly complicated C code. However, the dtbpatch bin has been deprecated since Arc adopted the simpler and clearer dts approach. Control of the nvme power part starting from the recent 7.2 u2 is not possible with dtbpatch.
For nvme power is that like:
nvme_slot@1 {
pcie_root = "00:01.3";
port_type = "ssdcache";
pcie_power = "100"
};
And what about NVMe drives in an adaptor card? Do they need something like this:
M2D20 {
compatible = "Synology";
model = "synology_m2d20";
pcie_power = "100"
m2_card@1 {
nvme {
pcie_postfix = "00.0,08.0,00.0";
port_type = "ssdcache";
};
};
Or like this:
M2D20 {
compatible = "Synology";
model = "synology_m2d20";
m2_card@1 {
nvme {
pcie_postfix = "00.0,08.0,00.0";
port_type = "ssdcache";
pcie_power = "100"
};
};
My thoughts are a bit different. It seems that M2D20 will eventually be one of the M.2 NVMe RAID CARDs that support PCIE Bifurcation as shown below.
Is separate dtb file manipulation necessary? And, if dts manipulation is necessary, this original dtb file must be extracted from the genuine Synology product and only the values in it must be entered based on this.
Today, I applied PCIE Bifurcation to the M.2 NVMe RAID CARD below to recognize 4 NVMe and turn it into your M.2 NMVe volume. Tested with DT-based DS923+.
If M2D20's NVMe is listed under /sys/block, wouldn't it be mapped automatically according to the existing mapping method?
I've seen comments about losing NVMe storage pool in 7.2 U2 and U3. You mentioned power_limit="100" here: https://xpenology.com/forum/topic/69462-m2-nvme-unrecognized-issue-after-device-tree-base-platform-72-64570-u2/?do=findComment&comment=447800
Where is power_limit="100" being added?
I'm trying to get M2D18 working on my bare metal DS1821+ with DSM 7.2 U3 but I have 3 issues:
The NVMe drive does show up in /sys/block and my syno_m2_volume script appears to create the volume... except cat /proc/mdstat does not show the NVMe.
As if you see it version = <0x01> It's right below.
https://github.com/PeterSuh-Q3/tcrp-addons/blob/main/dtbpatch/releases/install.sh#L76
If power_limit="100" is missing, the phenomenon you experienced in DSM 7.2 U3 may occur.
My real DS720+ has power_limit = "11.55,5.775" in /run/model.dtb
My real DS1821+ does not have power_limit in model.dtb. But it does have /sys/firmware/devicetree/base/power_limit which is 14.85,9.075
Is setting power_limit to 100 on a real Synology going to damage anything?
Ignore my previous question.
I've discovered on a real Synology NAS that uses device tree I can get the power limit with:
cat /sys/firmware/devicetree/base/power_limit
Ignore my previous question.
I've discovered on a real Synology NAS that uses device tree I can get the power limit with:
cat /sys/firmware/devicetree/base/power_limit
The file below appears to be missing in XPE DS1823+. Why is there a difference?
admin2@NAS5:~$ uname -a Linux NAS5 4.4.302+ #64570 SMP Fri Jun 2 23:59:36 CST 2023 x86_64 GNU/Linux synology_v1000_1823xs+ admin2@NAS5:~$ cat /sys/firmware/devicetree/base/power_limit cat: /sys/firmware/devicetree/base/power_limit: No such file or directory
admin2@NAS5:~$ cd /sys/firmware/devicetree/ admin2@NAS5:/sys/firmware/devicetree$ ll total 0 drwxr-xr-x 2 root root 0 Sep 23 21:04 . drwxr-xr-x 7 root root 0 Sep 23 21:03 ..
Is that XPE DS1823xs+ running 64570 update 1, 2 or 3 ?
It's 64570 update 0
Maybe it only exists in 64570 update 1 and later.
I see dtbpatch in https://github.com/PeterSuh-Q3/tcrp-addons/tree/main/dtbpatch/releases
When I search for dtbpatch in all the .sh files and dtbpatch is never run. What is it used for?
If I run dtbpatch --help it shows:
But that is not clear to me on what it is doing.
If it's 2, then where is dtbpatch getting the data to patch ?