Skip to contentSkip to conversation

ata: libata-core: Disable LPM on Silicon Motion MD619HXCLDE3TC

PATCH In review Niklas Cassel 2 participants 7 messages Nov 24, 2025 – Nov 28, 2025 libata

lore
Share & tools
lore

Niklas Cassel

author maintainer
#0 lore raw

PATCH 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
index f48fb63d7e85..a8f4d5db2c9b 100644
@@ -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
#1 lore raw

Hi Niklas,

Quoted 10 lines · Niklas Cassel

According to a user report, the Silicon Motion MD619HXCLDE3TC SSD has problems with LPM.

---
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
index f48fb63d7e85..b721a8db11c4 100644
@@ -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

author maintainer
#2 lore raw

Hello 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.

---
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 +0 -0
index f48fb63d7e85..b721a8db11c4 100644

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

#3 lore raw

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-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").

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

author maintainer
#4 lore raw
Quoted 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-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").

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

#5 lore raw
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

author maintainer Applied
#6 lore raw
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-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.

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