raspberry-pi-pcie-devices
raspberry-pi-pcie-devices copied to clipboard
Test Samsung PM991a 256GB SSD
I have just build up a CM4 based mini-server with a Samsung PM991a 2242 M2 265 GB SSD. SAMSUNG MZALQ256HBJD-00BL2
Important: The quite similar named Samsung PM9B1 does not work (Kernel Error when booted from SD-Card, and mass-storage-gadget does not detect it). Maybe it's because it is PCIe 4.0, instead PCIe 3.0 for the PM991a.
System is based on a WaveShare CM4-IO-BASE-B board.
Speed seems to be quite good, see below.
I got the drive for about 16€ from ebay. They are not available "new" any more, likely stems from some unsold laptops. Was only used for less than 4 hours according to smartctl.
IOZone Speed Test with 4k/1024k Block size and 100MB file size:
Auto Mode
File size set to 102400 kB
Record Size 4 kB
Record Size 1024 kB
Command line used: iozone -e -I -a -s 100M -r 4k -r 1024k -i 0 -i 1 -i 2
Output is in kBytes/sec
Time Resolution = 0.000001 seconds.
Processor cache size set to 1024 kBytes.
Processor cache line size set to 32 bytes.
File stride size set to 17 * record size.
random random
kB reclen write rewrite read reread read write
102400 4 59604 90257 93754 93602 43911 86402
102400 1024 373310 379643 388511 388816 370082 366939
SmartCTL result:
sudo smartctl -a /dev/nvme0n1p2
smartctl 7.3 2022-02-28 r5338 [aarch64-linux-6.1.0-rpi7-rpi-v8] (local build)
Copyright (C) 2002-22, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF INFORMATION SECTION ===
Model Number: SAMSUNG MZALQ256HBJD-00BL2
Serial Number: S65FNX0Txxxxxx
Firmware Version: 5L2QFXM7
PCI Vendor/Subsystem ID: 0x144d
IEEE OUI Identifier: 0x002538
Total NVM Capacity: 256,060,514,304 [256 GB]
Unallocated NVM Capacity: 0
Controller ID: 5
NVMe Version: 1.4
Number of Namespaces: 1
Namespace 1 Size/Capacity: 256,060,514,304 [256 GB]
Namespace 1 Utilization: 6,782,369,792 [6.78 GB]
Namespace 1 Formatted LBA Size: 512
Namespace 1 IEEE EUI-64: 002538 d821b10cc0
Local Time is: Tue Dec 12 19:12:18 2023 GMT
Firmware Updates (0x16): 3 Slots, no Reset required
Optional Admin Commands (0x0017): Security Format Frmw_DL Self_Test
Optional NVM Commands (0x0057): Comp Wr_Unc DS_Mngmt Sav/Sel_Feat Timestmp
Log Page Attributes (0x0f): S/H_per_NS Cmd_Eff_Lg Ext_Get_Lg Telmtry_Lg
Maximum Data Transfer Size: 512 Pages
Warning Comp. Temp. Threshold: 81 Celsius
Critical Comp. Temp. Threshold: 87 Celsius
Namespace 1 Features (0x10): NP_Fields
Supported Power States
St Op Max Active Idle RL RT WL WT Ent_Lat Ex_Lat
0 + 5.35W - - 0 0 0 0 0 0
1 + 5.35W - - 1 1 1 1 0 0
2 + 5.35W - - 2 2 2 2 0 500
3 - 0.0500W - - 3 3 3 3 210 1200
4 - 0.0050W - - 4 4 4 4 1000 9000
Supported LBA Sizes (NSID 0x1)
Id Fmt Data Metadt Rel_Perf
0 + 512 0 0
Hi, this is really interesting! My search for a problem with my Raspberry CM4 with Samsung PM991 (MZALQ256HAJD) braught me here. I'm using the (almost) exact setup, but I can't get them to run. The moment I'm inserting the SSD into the WaveShare CM4-IO-BASE-B, the boards stops booting until it runs into some sort of timeout and then continues to boot. Using Windows with an USB to M2 Adapter the P991 are running fine (I bought 5 of them). The problem is related to these entries and I can't figure out, what the problem is.
[ 1.288572] nvme nvme0: pci function 0000:01:00.0
[ 1.288621] nvme 0000:01:00.0: enabling device (0000 -> 0002)
[ 62.431806] nvme nvme0: I/O 16 QID 0 timeout, completion polled
[ 123.871767] nvme nvme0: I/O 17 QID 0 timeout, completion polled
[ 123.871804] nvme nvme0: Shutdown timeout set to 8 seconds
[ 185.311746] nvme nvme0: I/O 18 QID 0 timeout, completion polled
I attached the dmesg messages in case you have an idea what the problem might be dmesg2.txt
I appreciate your help.
Kind regards Tom