lkml.org 
[lkml]   [2022]   [Oct]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.10 20/52] libata: add ATA_HORKAGE_NOLPM for Pioneer BDR-207M and BDR-205
    Date
    From: Niklas Cassel <niklas.cassel@wdc.com>

    commit ea08aec7e77bfd6599489ec430f9f859ab84575a upstream.

    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@vger.kernel.org
    Reported-by: Jaap Berkhout <j.j.berkhout@staalenberk.nl>
    Signed-off-by: Niklas Cassel <niklas.cassel@wdc.com>
    Reviewed-by: Mario Limonciello <mario.limonciello@amd.com>
    Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    drivers/ata/libata-core.c | 4 ++++
    1 file changed, 4 insertions(+)

    --- a/drivers/ata/libata-core.c
    +++ b/drivers/ata/libata-core.c
    @@ -3936,6 +3936,10 @@ static const struct ata_blacklist_entry
    { "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 },


    \
     
     \ /
      Last update: 2022-10-03 09:54    [W:4.179 / U:0.060 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site