ata: libata-core: Disable LPM on Silicon Motion MD619HXCLDE3TC
Niklas Cassel
maintainerPATCH 1/1 ata: libata-core: Disable LPM on Silicon Motion MD619HXCLDE3TC
According to a user report, the Silicon Motion MD619HXCLDE3TC SSD has problems with LPM.
---
Hello Yihang Li,
Please test this patch.
Before we apply this patch, it would be nice if you could try another SSD, that supports LPM (HIPM and DIPM) with your AHCI controller:
Huawei Technologies Co., Ltd. HiSilicon AHCI HBA [19e5:a235] (rev 30)
Note: You can see if your drive supports HIPM and DIPM from the ata_dev_print_features() print to dmesg during boot, e.g.:
ata6.00: Features: Trust Dev-Sleep HIPM DIPM NCQ-sndrcv NCQ-prio
Just so we can verify that it is the MD619HXCLDE3TC SSD that is not handling LPM correctly, and that it is not the AHCI HBA that is at fault.
E.g. there have been some weird bugs with this AHCI controller before, see e.g. 234e6d2c18f5 ("ata: ahci: Disable SXS for Hisilicon Kunpeng920").
drivers/ata/libata-core.c | 3 +++ 1 file changed, 3 insertions(+)
drivers/ata/libata-core.c +3 -0
@@ -4216,6 +4216,9 @@ static const struct ata_dev_quirks_entry __ata_dev_quirks[] = {/* Apacer models with LPM issues */ { "Apacer AS340*", NULL, ATA_QUIRK_NOLPM }, +/* Silicon Motion models with LPM issues */ + { "MD619HXCLDE3TC", "ID", ATA_QUIRK_NOLPM }, +/* These specific Samsung models/firmware-revs do not handle LPM well */ { "SAMSUNG MZMPC128HBFU-000MV", "CXM14M1Q", ATA_QUIRK_NOLPM }, { "SAMSUNG SSD PM830 mSATA *", "CXM13D1Q", ATA_QUIRK_NOLPM },
Signature · 1 line
2.52.0
Hi Niklas,
Quoted 10 lines · Niklas Cassel
According to a user report, the Silicon Motion MD619HXCLDE3TC SSD has problems with LPM.
Reported-by Yihang Li <[email protected]>Signed-off-by Niklas Cassel <[email protected]>---
Hello Yihang Li,Please test this patch.
I found that the same issue also exists on another model of drive. The information is as follows:
# lsblk -o MODEL /dev/sda MODEL MD619GXCLDE3TC
# lsblk -o REV /dev/sda REV TCV35D
At the same time, while testing this patch, I found that the issue was not solved. Therefore, I printed out the model_num and model_rev of MD619HXCLDE3TC SSD and discovered that the actual model_rev should be "TCVAID" instead of "ID." However, the information obtained using the lsblk -o REV /dev/sdX command showed "ID," and I am not sure why this is the case.
In any case, I suggest that the final modification should look like this, and after testing, this modification has solved my problem.
drivers/ata/libata-core.c +4 -0
@@ -4216,6 +4216,10 @@ static const struct ata_dev_quirks_entry __ata_dev_quirks[] = {/* Apacer models with LPM issues */ { "Apacer AS340*", NULL, ATA_QUIRK_NOLPM }, +/* Silicon Motion models with LPM issues */ + { "MD619HXCLDE3TC", "TCVAID", ATA_QUIRK_NOLPM }, + { "MD619GXCLDE3TC", "TCV35D", ATA_QUIRK_NOLPM }, +
Thanks,
Yihang
Niklas Cassel
maintainerHello Yihang Li,
Quoted 38 lines · Yihang Li
Hi Niklas,
Quoted 10 lines · Niklas Cassel
According to a user report, the Silicon Motion MD619HXCLDE3TC SSD has problems with LPM.
Reported-by Yihang Li <[email protected]>Signed-off-by Niklas Cassel <[email protected]>---
Hello Yihang Li,Please test this patch.
I found that the same issue also exists on another model of drive. The information is as follows:
# lsblk -o MODEL /dev/sda MODEL MD619GXCLDE3TC# lsblk -o REV /dev/sda REV TCV35DAt the same time, while testing this patch, I found that the issue was not solved. Therefore, I printed out the
model_numandmodel_revof MD619HXCLDE3TC SSD and discovered that the actualmodel_revshould be "TCVAID" instead of "ID." However, the information obtained using thelsblk -o REV /dev/sdXcommand showed "ID," and I am not sure why this is the case.In any case, I suggest that the final modification should look like this, and after testing, this modification has solved my problem.
drivers/ata/libata-core.c +0
-0
drivers/ata/libata-core.c static const struct ata_dev_quirks_entry __ata_dev_quirks[] = { · line 4222
Quoted 7 lines
drivers/ata/libata-core.c +4
-0@@ -4216,6 +4216,10 @@ static const struct ata_dev_quirks_entry __ata_dev_quirks[] = {/* Apacer models with LPM issues */ { "Apacer AS340*", NULL, ATA_QUIRK_NOLPM }, +/* Silicon Motion models with LPM issues */ + { "MD619HXCLDE3TC", "TCVAID", ATA_QUIRK_NOLPM }, + { "MD619GXCLDE3TC", "TCV35D", ATA_QUIRK_NOLPM }, +
Ok, really nice that we have a patch that fixes your problem.
However, like I wrote in the comment section:
Before we apply this patch, it would be nice if you could try another SSD, that supports LPM (HIPM and DIPM) with your AHCI controller:
Huawei Technologies Co., Ltd. HiSilicon AHCI HBA [19e5:a235] (rev 30)
Note: You can see if your drive supports HIPM and DIPM from the ata_dev_print_features() print to dmesg during boot, e.g.:
ata6.00: Features: Trust Dev-Sleep HIPM DIPM NCQ-sndrcv NCQ-prio
Just so we can verify that it is the MD619HXCLDE3TC SSD that is not handling LPM correctly, and that it is not the AHCI HBA that is at fault.
E.g. there have been some weird bugs with this AHCI controller before, see e.g. 234e6d2c18f5 ("ata: ahci: Disable SXS for Hisilicon Kunpeng920").
Do you have any other drive, other than MD619HXCLDE3TC and MD619GXCLDE3TC, which supports LPM, and you can see that the drive works as intended, with LPM enabled, so we can be certain that it is not the HBA that has broken LPM support?
Kind regards,
Niklas
Hi Niklas,
Quoted 20 lines · Niklas Cassel
Ok, really nice that we have a patch that fixes your problem.
However, like I wrote in the comment section:
Before we apply this patch, it would be nice if you could try another SSD, that supports LPM (HIPM and DIPM) with your AHCI controller:
Huawei Technologies Co., Ltd. HiSilicon AHCI HBA [19e5:a235] (rev 30)Note: You can see if your drive supports HIPM and DIPM from the
ata_dev_print_features()print to dmesg during boot, e.g.:
ata6.00: Features: Trust Dev-Sleep HIPM DIPM NCQ-sndrcv NCQ-prioJust so we can verify that it is the MD619HXCLDE3TC SSD that is not handling LPM correctly, and that it is not the AHCI HBA that is at fault.
E.g. there have been some weird bugs with this AHCI controller before, see e.g.
234e6d2c18f5("ata: ahci: Disable SXS for Hisilicon Kunpeng920").
Quoted 5 lines
Do you have any other drive, other than MD619HXCLDE3TC and MD619GXCLDE3TC, which supports LPM, and you can see that the drive works as intended, with LPM enabled, so we can be certain that it is not the HBA that has broken LPM support?
I checked all the drives I own, but unfortunately, none of them support LPM (HIPM and DIPM). :(
Thanks,
Yihang
Niklas Cassel
maintainerQuoted 23 lines · Yihang Li
Hi Niklas,
Quoted 20 lines · Niklas Cassel
Ok, really nice that we have a patch that fixes your problem.
However, like I wrote in the comment section:
Before we apply this patch, it would be nice if you could try another SSD, that supports LPM (HIPM and DIPM) with your AHCI controller:
Huawei Technologies Co., Ltd. HiSilicon AHCI HBA [19e5:a235] (rev 30)Note: You can see if your drive supports HIPM and DIPM from the
ata_dev_print_features()print to dmesg during boot, e.g.:
ata6.00: Features: Trust Dev-Sleep HIPM DIPM NCQ-sndrcv NCQ-prioJust so we can verify that it is the MD619HXCLDE3TC SSD that is not handling LPM correctly, and that it is not the AHCI HBA that is at fault.
E.g. there have been some weird bugs with this AHCI controller before, see e.g.
234e6d2c18f5("ata: ahci: Disable SXS for Hisilicon Kunpeng920").
Quoted 8 lines
Quoted 5 lines
Do you have any other drive, other than MD619HXCLDE3TC and MD619GXCLDE3TC, which supports LPM, and you can see that the drive works as intended, with LPM enabled, so we can be certain that it is not the HBA that has broken LPM support?
I checked all the drives I own, but unfortunately, none of them support LPM (HIPM and DIPM). :(
Well, it should be sufficient that they support either HIPM and DIPM.
Ideally, they should support the same as:
MD619HXCLDE3TC and MD619GXCLDE3TC.
(Not sure if they supported HIPM and DIPM or only one of them).
But the device should work fine to read / write / mount, etc. without showing the same errors as you got with MD619HXCLDE3TC and MD619GXCLDE3TC.
Kind regards,
Niklas
Quoted 9 lines · Niklas Cassel
Well, it should be sufficient that they support either HIPM and DIPM.
Ideally, they should support the same as:
MD619HXCLDE3TC and MD619GXCLDE3TC.
(Not sure if they supported HIPM and DIPM or only one of them).But the device should work fine to read / write / mount, etc. without showing the same errors as you got with MD619HXCLDE3TC and MD619GXCLDE3TC.
I found an SSD that supports DIPM and connected it to my AHCI controller for testing:
ata7.00: Features: DIPM NCQ-sndrcv
And it did not show the same errors as MD619HXCLDE3TC and MD619GXCLDE3TC. So, I think we can confirm that the issue is not with the AHCI controller.
Thanks,
Yihang
Quoted 6 lines · Yihang Li
On 2025/11/26 20:05, Niklas Cassel wrote:
I found an SSD that supports DIPM and connected it to my AHCI controller for testing:
ata7.00: Features: DIPM NCQ-sndrcvAnd it did not show the same errors as MD619HXCLDE3TC and MD619GXCLDE3TC. So, I think we can confirm that the issue is not with the AHCI controller.
Thank you for your work!
I've applied the patch to for-6.19:
https://git.kernel.org/pub/scm/linux/kernel/git/libata/linux.git/commit/?h=for-6.19
Please have a look so that everything is correct.
Kind regards,
Niklas