Closed wcho-metrocsg closed 1 year ago
You sent me down a rabbit hole of trying to find out if Synology NAS support PCIe bifurcation, and PLX. And I'm still not sure. I read something about Synology's E10M20-T1 10GbE + 2x M.2 card but I can't remember if was PLX or bifurcation.
I believe your issue is that DSM only looks for Synology's own adaptor cards. But it's interesting that the script can see the NVMe drives that are installed in a non-Synology adaptor card.
I've just finished a script to allow using Synology's M.2 PCIe adaptor cards in Synology NAS that don't officially support those cards. Maybe I can use what I learnt writing that script to enable your non-Synology adaptor card. I just need to figure out how DSM gets the model of PCIe adaptor cards so we can find out what model name DSM sees for your PCIe adaptor card.
After we can determine what model name DSM sees I can try adding it to /usr/syno/etc.defaults/adapter_cards.conf
The Synology E10M20-T1 does not use PLX, so I'd assume the M2D20 and M2D18 don't either.
Someone who owns a Synology SA3400 rackmount NAS said it does not support bifurcation, so I'd assume Synology's RS and DS models would not support bifurcation either.
Apologies,
I shouldn't have stated that the script was working on a DS3622xs+. I am not using Synology hardware so I'll understand if you want to close this issue as unsupported.
I assume you're using Xpenology. It might be better to ask on the Xpenology forums. Though I'd be curious to know what the solution is, if there is one.
Some of these synonvme command options look promising:
Usage: synonvme
--m2-card-model-get <nvme path> get m.2 adapter card model
--get-location nvme_path / nvme_name get the pcie slot and card slot
--port-type-get nvme_path / nvme_name get nvme disk port type.
--m2-card-model-get-by-pcie <pcie path> get m.2 adapter card model by pcie path
What do these commands return?
synonvme --m2-card-model-get /dev/nvme0n1
synonvme --get-location /dev/nvme0n1
synonvme --port-type-get /dev/nvme0n1
Or we can get the udevadm info /dev/nvme0n1
And then use that pcie path with:
synonvme --m2-card-model-get-by-pcie <pcie path>
If I understood correctly:
synonvme --m2-card-model-get /dev/nvme0n1 FX2422N
synonvme --get-location /dev/nvme0n1 Can't get the location of /dev/nvme0n1
synonvme --port-type-get /dev/nvme0n1 Unknown.
udevadm info /dev/nvme0n1 P: /devices/pci0000:00/0000:00:01.0/0000:01:00.0/0000:02:04.0/0000:04:00.0/nvme/nvme0/nvme0n1 N: nvme0n1 E: DEVNAME=/dev/nvme0n1 E: DEVPATH=/devices/pci0000:00/0000:00:01.0/0000:01:00.0/0000:02:04.0/0000:04:00.0/nvme/nvme0/nvme0n1 E: DEVTYPE=disk E: MAJOR=259 E: MINOR=0 E: PHYSDEVBUS=pci E: PHYSDEVDRIVER=nvme E: PHYSDEVPATH=/devices/pci0000:00/0000:00:01.0/0000:01:00.0/0000:02:04.0/0000:04:00.0 E: SUBSYSTEM=block E: SYNO_ATTR_SERIAL=redacted E: SYNO_DEV_DISKPORTTYPE=INVALID E: SYNO_INFO_PLATFORM_NAME=broadwellnk E: SYNO_KERNEL_VERSION=4.4 E: SYNO_SUPPORT_USB_PRINTER=yes E: SYNO_SUPPORT_XA=no E: TAGS=:systemd: E: USEC_INITIALIZED=496521
synonvme --m2-card-model-get-by-pcie /devices/pci0000:00/0000:00:01.0/0000:01:00.0/0000:02:04.0/0000:04:00.0/nvme/nvme0/nvme0n1 Not M.2 adapter card
synonvme --m2-card-model-get /dev/nvme0n1 FX2422N
Very interesting. [FX2422N_sup_nvme] already exists in the DS3622xs+ adaptor_cards.conf in DSM 7.2. The only NAS model listed as supporting the FX2422N is the FS6600N. But we can fix that :)
Run this command (and close Storage Manager if it's open) then open Storage Manager and check if the M.2 card shows up.
sudo set_section_key_value /usr/syno/etc.defaults/adapter_cards.conf [FX2422N_sup_nvme] DS3622xs+
Do you have a link to the M.2 card you bought?
I've found lots of them, in many different brands but I don't know if they all are FX2422N. https://www.google.com/search?q=ASM2824+switch+board
That command didn't work, and this is the card I bought
https://www.amazon.com/dp/B0BB6X922C?psc=1&ref=ppx_yo2ov_dt_b_product_details
Oops. It should have been FX2422N_sup_nvme and not [FX2422N_sup_nvme]
Try this one:
sudo set_section_key_value /usr/syno/etc.defaults/adapter_cards.conf FX2422N_sup_nvme DS3622xs+
I'm having a bad day :(
This one will do what it is supposed to:
sudo set_section_key_value /usr/syno/etc.defaults/adapter_cards.conf FX2422N_sup_nvme DS3622xs+ yes
I figured the original syntax was wrong but realized what the change needed to be. Top part of my adapter_cards.conf
[FX2422N_sup_nic] [FX2422N_sup_nvme] DS3622xs+=yes FS6600N=yes [FX2422N_sup_sata] [E10M20-T1_sup_nic] DS3617xsII=yes RS3621rpxs=yes DS2419+=yes RS1219+=yes RS18017xs+=yes RS820+=yes RS3618xs=yes SA6400=yes RS4017xs+=yes
I had this set the first time I responded that the command didn't work
Try adding DS3622xs+ to .usr/syno/etc/adaptor_cards.conf as well sudo set_section_key_value /usr/syno/etc/adapter_cards.conf FX2422N_sup_nvme DS3622xs+ yes
You might need to reboot before you can see the adaptor card and NVMe drives in DSM.
I am returning the card and giving up on this.
That's disappointing.
When I googled for FX2422N it found just 1 result, which is a comment on the XPEnology community forum. https://xpenology.com/forum/topic/68067-develop-and-refine-sa3600broadwellnk-and-sa6400epyc7002-thread/?do=findComment&comment=446622
That person had a SA6400 and adding SA6400=yes made DSM show their 4 NVMe SSDs on a ASM2824 switch board.
Hi,
This works with DS3622xs+, DSM 7.2-64570 Update 1. But not when the NVME drive is installed onto an adapter card with the ASM2824 chip. The script sees the drive and formats it but upon reboot, the drive is not available under Online Assemble.
sudo ls -I ram -I loop -I dm- /sys/block
md0 nvme0n1 ram10 ram13 ram2 ram5 ram8 synoboot md1 ram0 ram11 ram14 ram3 ram6 ram9 zram0 md2 ram1 ram12 ram15 ram4 ram7 sda zram1
Can this be made to work with this type of adapter card that does not rely on PCIe bifurcation?
Thanks,