Commit df87d843 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull ata fixes from Niklas Cassel:

 - Fix a regression where the enablement of the PHYs would be skipped
   for device trees without any port child nodes (me)

 - Revert ATA_QUIRK_NOLPM for Samsung SSD 870 QVO drives, as it stops
   systems from entering lower package states. LPM works on newer
   firmware versions. We will need a more refined quirk that only
   targets the older firmware versions (me)

* tag 'ata-6.14-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/libata/linux:
  Revert "ata: libata-core: Add ATA_QUIRK_NOLPM for Samsung SSD 870 QVO drives"
  ata: ahci: Make ahci_ignore_port() handle empty mask_port_map
parents 209cd6f2 a2f925a2
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -386,8 +386,12 @@ struct ahci_host_priv {
static inline bool ahci_ignore_port(struct ahci_host_priv *hpriv,
				    unsigned int portid)
{
	return portid >= hpriv->nports ||
		!(hpriv->mask_port_map & (1 << portid));
	if (portid >= hpriv->nports)
		return true;
	/* mask_port_map not set means that all ports are available */
	if (!hpriv->mask_port_map)
		return false;
	return !(hpriv->mask_port_map & (1 << portid));
}

extern int ahci_ignore_sss;
+1 −0
Original line number Diff line number Diff line
@@ -541,6 +541,7 @@ void ahci_save_initial_config(struct device *dev, struct ahci_host_priv *hpriv)
		hpriv->saved_port_map = port_map;
	}

	/* mask_port_map not set means that all ports are available */
	if (hpriv->mask_port_map) {
		dev_warn(dev, "masking port_map 0x%lx -> 0x%lx\n",
			port_map,
+0 −4
Original line number Diff line number Diff line
@@ -4143,10 +4143,6 @@ static const struct ata_dev_quirks_entry __ata_dev_quirks[] = {
	{ "Samsung SSD 860*",		NULL,	ATA_QUIRK_NO_NCQ_TRIM |
						ATA_QUIRK_ZERO_AFTER_TRIM |
						ATA_QUIRK_NO_NCQ_ON_ATI },
	{ "Samsung SSD 870 QVO*",	NULL,	ATA_QUIRK_NO_NCQ_TRIM |
						ATA_QUIRK_ZERO_AFTER_TRIM |
						ATA_QUIRK_NO_NCQ_ON_ATI |
						ATA_QUIRK_NOLPM },
	{ "Samsung SSD 870*",		NULL,	ATA_QUIRK_NO_NCQ_TRIM |
						ATA_QUIRK_ZERO_AFTER_TRIM |
						ATA_QUIRK_NO_NCQ_ON_ATI },