ata fixes for 6.14-rc5
- 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) -----BEGIN PGP SIGNATURE----- iHUEABYKAB0WIQRN+ES/c4tHlMch3DzJZDGjmcZNcgUCZ8LWcAAKCRDJZDGjmcZN cgnDAP4gp/4Rly/E09WeSCFDtysqa6EriaUliSeNBZBCtZVIfgEAkTk/MjLxa4SR qmfUe0XtjqZlFs/WyKvqwD+lSSxOKwA= =LZ2Z -----END PGP SIGNATURE----- Merge tag 'ata-6.14-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/libata/linux 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
This commit is contained in:
commit
df87d843c6
3 changed files with 7 additions and 6 deletions
|
@ -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;
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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 },
|
||||
|
|
Loading…
Add table
Reference in a new issue