Hi, On 3/13/24 10:46 PM, Conrad Kostecki wrote: > Previously, patches have been added to limit the reported count of SATA > ports for asm1064 and asm1166 SATA controllers, as those controllers do > report more ports than physical having. > > Unfortunately, this causes trouble for users, which are using SATA > controllers, which provide more ports through SATA PMP > (Port-MultiPlier) and are now not any more recognized. > > This happens, as asm1064 and 1166 are handling SATA PMP transparently, > so all non-physical ports needs to be enabled to use that feature. > > This patch reverts both patches for asm1064 and asm1166, so old > behavior is restored and SATA PMP will work again, so all physical and > non-physical ports will work again. > > Fixes: 0077a504e1a4 ("ahci: asm1166: correct count of reported ports") > Fixes: 9815e3961754 ("ahci: asm1064: correct count of reported ports") > Cc: stable@xxxxxxxxxxxxxxx > Reported-by: Matt <cryptearth@xxxxxxxxxxxxxx> > Signed-off-by: Conrad Kostecki <conikost@xxxxxxxxxx> Thank you for the quick patch, patch looks good to me: Reviewed-by: Hans de Goede <hdegoede@xxxxxxxxxx> Regards, Hans > --- > drivers/ata/ahci.c | 13 ------------- > 1 file changed, 13 deletions(-) > > diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c > index 78570684ff68..562302e2e57c 100644 > --- a/drivers/ata/ahci.c > +++ b/drivers/ata/ahci.c > @@ -669,19 +669,6 @@ MODULE_PARM_DESC(mobile_lpm_policy, "Default LPM policy for mobile chipsets"); > static void ahci_pci_save_initial_config(struct pci_dev *pdev, > struct ahci_host_priv *hpriv) > { > - if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA) { > - switch (pdev->device) { > - case 0x1166: > - dev_info(&pdev->dev, "ASM1166 has only six ports\n"); > - hpriv->saved_port_map = 0x3f; > - break; > - case 0x1064: > - dev_info(&pdev->dev, "ASM1064 has only four ports\n"); > - hpriv->saved_port_map = 0xf; > - break; > - } > - } > - > if (pdev->vendor == PCI_VENDOR_ID_JMICRON && pdev->device == 0x2361) { > dev_info(&pdev->dev, "JMB361 has only one port\n"); > hpriv->saved_port_map = 1;