[Feature] Haswell ULT - SATA RTD3 support

Bug #1031180 reported by Yingying Zhao on 2012-07-31
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
intel
Undecided
Unassigned
linux (Ubuntu)
Undecided
Tim Gardner
Raring
Undecided
Tim Gardner
Saucy
Undecided
Tim Gardner

Bug Description

Add Runtime D3 support in SATA:
Device PM
     - SATA port D3Hot support
     - SATA/SCSI bus D3Cold support
     - D3Cold support for SATA disk
     - Zero-power ODD (D3Cold for CDROM)
     - Request based SATA disk runtime PM support
Controller runtime PM
     - AHCI D3Hot support

Upstream Schedule:
kernel 3.6

Related branches

Yingying Zhao (yingying-zhao) wrote :

Zero-power ODD (D3Cold for CDROM) is done in kernel 3.9 (11 patches in total):

1.
commit 44ec657be09e36091281674a5702f1c43ce22d94
Author: Aaron Lu <email address hidden>
Date: Wed Jan 23 15:09:33 2013 +0800

    [SCSI] remove can_power_off flag from scsi_device

2.
commit 6f4c827e68a78731c6c75df69bf7b75b029ec70c
Author: Aaron Lu <email address hidden>
Date: Wed Jan 23 15:09:32 2013 +0800

    [libata] scsi: no poll when ODD is powered off

3.
commit 6c7f1e2f12f6f37ddda01180c9e5c407eccce616
Author: Aaron Lu <email address hidden>
Date: Wed Jan 23 15:09:31 2013 +0800

    [SCSI] sr: support runtime pm

4.
commit f5e6d0d0eb819cbe1a68b9561c8e83fbd1a6d13a
Author: Aaron Lu <email address hidden>
Date: Fri Jan 25 14:32:25 2013 +0800

    [libata] PM code cleanup for ata port

5.
commit a7ff60dbe0858496531c75b1544666c099a2b200
Author: Aaron Lu <email address hidden>
Date: Fri Jan 25 14:29:35 2013 +0800

    [libata] pm: differentiate system and runtime pm for ata port

6.
commit a59b9aae230316134597775c6202cf28f6da0333
Author: Aaron Lu <email address hidden>
Date: Tue Jan 15 17:21:02 2013 +0800

    libata: expose pm qos flags for ata device

7.
commit 213342053db58eabdaddff9c036c2b81ca63c443
Author: Aaron Lu <email address hidden>
Date: Tue Jan 15 17:21:01 2013 +0800

    libata: handle power transition of ODD

8.
commit 3dc67440d99b2c718ef5f1eb1424a9066ffa3fb9
Author: Aaron Lu <email address hidden>
Date: Tue Jan 15 17:21:00 2013 +0800

    libata: check zero power ready status for ZPODD

9.
commit f064a20dded807448669426c9bfb7d03aba5659c
Author: Aaron Lu <email address hidden>
Date: Tue Jan 15 17:20:59 2013 +0800

    libata: move acpi notification code to zpodd

10.
commit afe759511808cd5bb508b598007cf0c7b0ca8e08
Author: Aaron Lu <email address hidden>
Date: Tue Jan 15 17:20:58 2013 +0800

    libata: identify and init ZPODD devices

11.
commit 53637e0760d56274177be7e6d630490bc49766c1
Author: Aaron Lu <email address hidden>
Date: Mon Jan 28 13:08:02 2013 +0800

    [libata] fix smatch warning for zpodd_wake_dev

Yingying Zhao (yingying-zhao) wrote :

SATA/SCSI bus D3Cold support is done in kernel v3.6 via this patch:

commit 3bd46600a7a7e938c54df8cdbac9910668c7dfb0
Author: Lin Ming <email address hidden>
Date: Mon Jun 25 16:13:06 2012 +0800

    libata-acpi: add ata port runtime D3Cold support

Yingying Zhao (yingying-zhao) wrote :

SATA port D3Hot support is done in kernel v3.3.

Yingying Zhao (yingying-zhao) wrote :

 SATA disk D3Cold support is verified in kernel 3.6. No code is added.

Tim Gardner (timg-tpi) on 2013-03-05
Changed in linux (Ubuntu Raring):
assignee: nobody → Tim Gardner (timg-tpi)
status: New → In Progress
Tim Gardner (timg-tpi) on 2013-03-05
Changed in linux (Ubuntu Raring):
status: In Progress → Fix Committed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux - 3.8.0-11.20

---------------
linux (3.8.0-11.20) raring; urgency=low

  [ Tim Gardner ]

  * Release Tracking Bug
    - LP: #1147659
  * [Config] CONFIG_SPI_PXA2XX_PCI=m
    - LP: #1031169
  * CONFIG_SATA_ZPODD=y
    - LP: #1031180
  * CONFIG_GPIO_LYNXPOINT=y
    - LP: #1031174

  [ Upstream Kernel Changes ]

  * spi/pxa2xx-pci: switch to use pcim_* interfaces
    - LP: #1031169
  * spi/pxa2xx: embed the ssp_device to platform data
    - LP: #1031169
  * spi/pxa2xx: allow building on a 64-bit kernel
    - LP: #1031169
  * spi/pxa2xx: fix warnings when compiling a 64-bit kernel
    - LP: #1031169
  * spi/pxa2xx: convert to the pump message infrastructure
    - LP: #1031169
  * spi/pxa2xx: convert to the common clk framework
    - LP: #1031169
  * spi/pxa2xx: break out the private DMA API usage into a separate file
    - LP: #1031169
  * spi/pxa2xx: add support for DMA engine
    - LP: #1031169
  * spi/pxa2xx: add support for runtime PM
    - LP: #1031169
  * spi/pxa2xx: add support for SPI_LOOP
    - LP: #1031169
  * spi/pxa2xx: add support for Intel Low Power Subsystem SPI
    - LP: #1031169
  * spi/pxa2xx: add support for Lynxpoint SPI controllers
    - LP: #1031169
  * i2c-designware: always set the STOP bit after last byte
    - LP: #1031166
  * i2c-designware: add minimal support for runtime PM
    - LP: #1031166
  * i2c-designware: add support for Intel Lynxpoint
    - LP: #1031166
  * remove can_power_off flag from scsi_device
    - LP: #1031180
  * sr: support runtime pm
    - LP: #1031180
  * libata: identify and init ZPODD devices
    - LP: #1031180
  * libata: move acpi notification code to zpodd
    - LP: #1031180
  * libata: check zero power ready status for ZPODD
    - LP: #1031180
  * libata: handle power transition of ODD
    - LP: #1031180
  * libata: expose pm qos flags for ata device
    - LP: #1031180
  * libata: do not suspend port if normal ODD is attached
    - LP: #1031180
  * pm: differentiate system and runtime pm for ata port
    - LP: #1031180
  * PM code cleanup for ata port
    - LP: #1031180
  * scsi: no poll when ODD is powered off
    - LP: #1031180
  * Set proper SK when CK_COND is set.
    - LP: #1031180
  * fix smatch warning for zpodd_wake_dev
    - LP: #1031180
  * gpio/lynxpoint: add chipset gpio driver.
    - LP: #1031174
 -- Tim Gardner <email address hidden> Tue, 05 Mar 2013 05:42:44 -0700

Changed in linux (Ubuntu Raring):
status: Fix Committed → Fix Released

The verification of this Stable Release Update has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regresssions.

Add a Saucy nomination as Intel informs me there are a few additional patches to pull in for Saucy.

Changed in linux (Ubuntu Saucy):
assignee: Tim Gardner (timg-tpi) → nobody
status: Fix Released → New
XiongZhang (xiong-y-zhang) wrote :

The following commits support for request based SATA disk runtime PM support in kernel 3.10:
1.
commit 6df339a51e3bf18b868384bdeb31e49a4fbaa3d8
Author: Lin Ming <email address hidden>
Date: Sat Mar 23 11:42:28 2013 +0800

    [SCSI] sd: change to auto suspend mode

2.
commit 9b21493c4520970f8f404e0265f48e37f9cffaf5
Author: Lin Ming <email address hidden>
Date: Sat Mar 23 11:42:25 2013 +0800

    [SCSI] sd: use REQ_PM in sd's runtime suspend operation

3.
commit c8158819d506a8aedeca53c52dfb709a0aabe011
Author: Lin Ming <email address hidden>
Date: Sat Mar 23 11:42:27 2013 +0800

    block: implement runtime pm strategy

4.
commit 6c9546675864f51506af69eca388e5d922942c56
Author: Lin Ming <email address hidden>
Date: Sat Mar 23 11:42:26 2013 +0800

    block: add runtime pm helpers

5.
commit 66311274691ec65972cad3626057fa8d00c146d8
Author: Lin Ming <email address hidden>
Date: Sat Mar 23 11:42:24 2013 +0800

    block: add a flag to identify PM request

6.
commit c60855cdb976c632b3bf8922eeab8a0e78edfc04
Author: Aaron Lu <email address hidden>
Date: Fri May 17 15:47:20 2013 +0800

    blkpm: avoid sleep when holding queue lock

Tim Gardner (timg-tpi) wrote :

All patches are merged by 3.10 final, released in Ubuntu 3.10.0-2.9

Changed in linux (Ubuntu Saucy):
assignee: nobody → Tim Gardner (timg-tpi)
status: New → Fix Released
Changed in intel:
status: New → Fix Released
Tim Gardner (timg-tpi) on 2013-08-04
information type: Private → Public
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers