On 9/27/22 03:38, Niklas Cassel wrote: > From: Niklas Cassel <niklas.cassel@xxxxxxx> > > Commit 1527f69204fe ("ata: ahci: Add Green Sardine vendor ID as > board_ahci_mobile") added an explicit entry for AMD Green Sardine > AHCI controller using the board_ahci_mobile configuration (this > configuration has later been renamed to board_ahci_low_power). > > The board_ahci_low_power configuration enables support for low power > modes. > > This explicit entry takes precedence over the generic AHCI controller > entry, which does not enable support for low power modes. > > Therefore, when commit 1527f69204fe ("ata: ahci: Add Green Sardine > vendor ID as board_ahci_mobile") was backported to stable kernels, > it make some Pioneer optical drives, which was working perfectly fine > before the commit was backported, stop working. > > The real problem is that the Pioneer optical drives do not handle low > power modes correctly. If these optical drives would have been tested > on another AHCI controller using the board_ahci_low_power configuration, > this issue would have been detected earlier. > > Unfortunately, the board_ahci_low_power configuration is only used in > less than 15% of the total AHCI controller entries, so many devices > have never been tested with an AHCI controller with low power modes. > > Fixes: 1527f69204fe ("ata: ahci: Add Green Sardine vendor ID as board_ahci_mobile") > Cc: stable@xxxxxxxxxxxxxxx > Reported-by: Jaap Berkhout <j.j.berkhout@xxxxxxxxxxxxxx> > Signed-off-by: Niklas Cassel <niklas.cassel@xxxxxxx> Applied to for-6.0-fixes. Thanks ! > --- > drivers/ata/libata-core.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c > index 826d41f341e4..c9a9aa607b62 100644 > --- a/drivers/ata/libata-core.c > +++ b/drivers/ata/libata-core.c > @@ -3988,6 +3988,10 @@ static const struct ata_blacklist_entry ata_device_blacklist [] = { > { "PIONEER DVD-RW DVR-212D", NULL, ATA_HORKAGE_NOSETXFER }, > { "PIONEER DVD-RW DVR-216D", NULL, ATA_HORKAGE_NOSETXFER }, > > + /* These specific Pioneer models have LPM issues */ > + { "PIONEER BD-RW BDR-207M", NULL, ATA_HORKAGE_NOLPM }, > + { "PIONEER BD-RW BDR-205", NULL, ATA_HORKAGE_NOLPM }, > + > /* Crucial BX100 SSD 500GB has broken LPM support */ > { "CT500BX100SSD1", NULL, ATA_HORKAGE_NOLPM }, > -- Damien Le Moal Western Digital Research