• Chuansheng Liu's avatar
    ata: Disabling the async PM for JMicron chip 363/361 · e6b7e41c
    Chuansheng Liu authored
    After enabled the PM feature that supporting async noirq(76569faa
    (PM / sleep: Asynchronous threads for resume_noirq)),
    Jay hit the system resuming issue, that one of the JMicron controller
    can not be powered up.
    
    His device tree is like below:
                 +-1c.4-[02]--+-00.0  JMicron Technology Corp. JMB363 SATA/IDE Controller
                 |            \-00.1  JMicron Technology Corp. JMB363 SATA/IDE Controller
    
    After investigation, we found the the Micron chip 363 included
    one SATA controller(0000:02:00.0) and one PATA controller(0000:02:00.1),
    these two controllers do not have parent-children relationship,
    but the PATA controller only can be powered on after the SATA controller
    has finished the powering on.
    
    If we enabled the async noirq(), then the below error is hit during noirq
    phase:
    pata_jmicron 0000:02:00.1: Refused to change power state, currently in D3
    
    Here for JMicron chip 363/361, we need forcedly to disable the async method.
    
    Bug detail: https://bugzilla.kernel.org/show_bug.cgi?id=81551Reported-by: default avatarJay <MyMailClone@t-online.de>
    Signed-off-by: default avatarChuansheng Liu <chuansheng.liu@intel.com>
    Acked-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    e6b7e41c
ahci.c 48.8 KB