Jump to content
XPEnology Community

M.2 NVMe unrecognized issue after Device-Tree Base platform 7.2-64570 U2


Recommended Posts

@pocopico, @wjz304

 

Since the release of 7.2-64570 U2 a few days ago, M.2 NVMe unrecognition has been observed on the Device-Tree Base platform.

Because TCRP and ARPL go through a similar dtb patch process, the result is the same.
Both loaders don't seem to work.


Currently, it seems that all scripts of the disks addon started by the ARC developer are unified.

Yesterday, only the dtb patch part of the disks add-on script of ARC was extracted and applied to M SHELL.
https://github.com/PeterSuh-Q3/tcrp-addons/blob/main/dtbpatch/releases/install.sh

 

ARC, ARPL-i18n, TCRP by pocopico, MSHELL for TCRP
Same situation for all 4 modules.

 

It has been confirmed that there is no cache disappearing phenomenon in genuine DS920+.

Even if you analyze the model.dtb file, changes since 64570 U1 are not confirmed in model.dtb for U2.

synoinfo.conf doesn't seem to have anything special either,
This part will be checked again by acquiring files from genuine DS920+ users.

 

Did you start checking the manufacturer's compatibility of M.2 SDD from the U2 version?

 

I think we should think about it together.

 

The model.dtb file below is the contents extracted from ARPL-i18n.
The nvme0n1 device is being identified.

 

root@ARPL_VM:~# curl -kLO  https://raw.githubusercontent.com/pocopico/tinycore-redpill/master/tools/dtc; chmod +x dtc

root@ARPL_VM:~# ./dtc -I dtb -O dts /etc.defaults/model.dtb > /etc.defaults/model.dts; cat /etc.defaults/model.dts
<stdout>: Warning (unit_address_vs_reg): /internal_slot@1: node has a unit name, but no reg or ranges property
<stdout>: Warning (unit_address_vs_reg): /internal_slot@2: node has a unit name, but no reg or ranges property
<stdout>: Warning (unit_address_vs_reg): /nvme_slot@1: node has a unit name, but no reg or ranges property
/dts-v1/;

/ {
        compatible = "Synology";
        model = "synology_geminilake_920+";
        version = <0x01>;

        internal_slot@1 {
                protocol_type = "sata";

                ahci {
                        pcie_root = "00:11.0,04.0";
                        ata_port = <0x00>;
                };
        };

        internal_slot@2 {
                protocol_type = "sata";

                ahci {
                        pcie_root = "00:11.0,04.0";
                        ata_port = <0x02>;
                };
        };

        nvme_slot@1 {
                pcie_root = "00:15.0,00.0";
                port_type = "ssdcache";
        };
};


root@ARPL_VM:~# ./dtc -I dtb -O dts /etc/model.dtb > /etc/model.dts; cat /etc.defaults/model.dts
<stdout>: Warning (unit_address_vs_reg): /internal_slot@1: node has a unit name, but no reg or ranges property
<stdout>: Warning (unit_address_vs_reg): /internal_slot@2: node has a unit name, but no reg or ranges property
<stdout>: Warning (unit_address_vs_reg): /nvme_slot@1: node has a unit name, but no reg or ranges property
/dts-v1/;

/ {
        compatible = "Synology";
        model = "synology_geminilake_920+";
        version = <0x01>;

        internal_slot@1 {
                protocol_type = "sata";

                ahci {
                        pcie_root = "00:11.0,04.0";
                        ata_port = <0x00>;
                };
        };

        internal_slot@2 {
                protocol_type = "sata";

                ahci {
                        pcie_root = "00:11.0,04.0";
                        ata_port = <0x02>;
                };
        };

        nvme_slot@1 {
                pcie_root = "00:15.0,00.0";
                port_type = "ssdcache";
        };
};
  
root@ARPL_VM:~# ll /sys/block | grep -e nvme -e sata
lrwxrwxrwx  1 root root 0 Jul 26 22:29 nvme0n1 -> ../devices/pci0000:00/0000:00:15.0/0000:03:00.0/nvme/nvme0/nvme0n1
lrwxrwxrwx  1 root root 0 Jul 26 22:29 sata1 -> ../devices/pci0000:00/0000:00:11.0/0000:02:04.0/ata1/host0/target0:0:0/0:0:0:0/block/sata1
lrwxrwxrwx  1 root root 0 Jul 26 22:29 sata2 -> ../devices/pci0000:00/0000:00:11.0/0000:02:04.0/ata3/host2/target2:0:0/2:0:0:0/block/sata2  

 

 

2023-07-2610_52_33.thumb.png.722d2ec2510c82fea79d4129869b4a52.png

Link to comment
Share on other sites

现在,我们可以先使用 u1 的 libsynonvme.so.1。

 

curl -kLO https://github.com/wjz304/arpl-i18n/files/12193690/libsynonvme.so.1.gz && gzip -d libsynonvme.so.1.gz

mv -f libsynonvme.so.1 /usr/lib/libsynonvme.so.1 && chmod a+r /usr/lib/libsynonvme.so.1

 

7.2u2 NVME (DT) ·问题 #140 ·WJZ304/ARPL-I18N (github.com)

Edited by wjz304
  • Thanks 3
Link to comment
Share on other sites

31 minutes ago, wjz304 said:

For now, we can use u1's libsynonvme.so.1 first.

 

curl -kLO https://github.com/wjz304/arpl-i18n/files/12193690/libsynonvme.so.1.gz && gzip -d libsynonvme.so.1.gz

mv -f libsynonvme.so.1 /usr/lib/libsynonvme.so.1 && chmod a+r /usr/lib/libsynonvme.so.1

 

7.2u2 nvme (DT) · Issue #140 · wjz304/arpl-i18n (github.com)

 

@wjz304

 

Thanks for finding the cause.

 

If so, it seems that u1's libsynonvme.so.1 file should be scripted to automatically recover from ARPL or M-SHELL.

 

I think we need to see the trend after u3, but we are going to patch for smallfixversions that are larger than u2.

 

M SHELL has nvme-cache addon installed by default, so we plan to implement it here.

Link to comment
Share on other sites

50 minutes ago, wjz304 said:

For now, we can use u1's libsynonvme.so.1 first.

 

curl -kLO https://github.com/wjz304/arpl-i18n/files/12193690/libsynonvme.so.1.gz && gzip -d libsynonvme.so.1.gz

mv -f libsynonvme.so.1 /usr/lib/libsynonvme.so.1 && chmod a+r /usr/lib/libsynonvme.so.1

 

7.2u2 nvme (DT) · Issue #140 · wjz304/arpl-i18n (github.com)

 

Tip is working afret synology restart. m.2 disk appear again. But still no chance for storage pool on m.2.

Link to comment
Share on other sites

1 minute ago, BartAcid said:

 

Tip is working afret synology restart. m.2 disk appear again. But still no chance for storage pool on m.2.

This is just a replacement of the U1 library file. If it is used as a storage pool, the previous cracking process still needs to be operated

Link to comment
Share on other sites

Starting with 7.2-64570 U2, power_limit is used in nvme's model.dtb.


@jimmmmm first power_limit="100"; on SA6400 I came up with the idea of enabling nvme with the settings of
Thanks to @wjz304's efforts, the addon that can activate nvme has been re-applied to all DT models including SA6400.

 

ARPL-i18n is completed with disk addon and
MSHELL for TCRP is completed with the dtbpatch addon.

For this part, the scripts for both loaders are identical.

 

It is no longer necessary to take U1's version of libsynonvme.so.1 and overwrite U2's.

  • Like 2
Link to comment
Share on other sites

  • 3 weeks later...

Hi @Peter Suh could you help explain , I have just lost my NVME storage pool (consisting 1 NVME drive) 

I had setup a storage pool on Ds920+ with 7.2-64570

Having updated to 7.2-64570 Update 3 the storage pool and volume has gone . 

 

Mshell TCRPL with friend (withfriend updated from 8a to 8b when i updated)

 

Anyway to get back my drive and volume ? 

Link to comment
Share on other sites

11 hours ago, scoobdriver said:

Hi @Peter Suh could you help explain , I have just lost my NVME storage pool (consisting 1 NVME drive) 

I had setup a storage pool on Ds920+ with 7.2-64570

Having updated to 7.2-64570 Update 3 the storage pool and volume has gone . 

 

Mshell TCRPL with friend (withfriend updated from 8a to 8b when i updated)

 

Anyway to get back my drive and volume ? 

 

TCRP's ADDON does not yet support NVMe storage pools.

 

You didn't reveal what solution made the NVMe storage pool.

 

Wouldn't it be right to demand improvements from the developers of ADDON who provided the solution?

Edited by Peter Suh
Link to comment
Share on other sites

5 hours ago, Peter Suh said:

 

TCRP's ADDON does not yet support NVMe storage pools.

 

You didn't reveal what solution made the NVMe storage pool.

 

Wouldn't it be right to demand improvements from the developers of ADDON who provided the solution?

 

Thanks for the update. 

 

I re-built the loader , with no further action and the pool became visible again . 

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...