Re: [PATCH] Fixup ahci suspend / resume



On Tue, Feb 28 2006, Jeff Garzik wrote:
Hannes Reinecke wrote:
From: Hannes Reinecke <hare@xxxxxxx>
Subject: AHCI suspend / resume fixes.

The current ahci driver has the problem that it doesn't resume properly.
Or rather, that resuming is unstable.
Reason being is that AHCI has 4 registers containing the DMA address it
should write things to. Of course there is no guarantee that Linux has
assigned the same address to the DMA area across reboots.
So we should better re-initialize those registers after resume.

The patch also improves the port_start / port_stop routines to be more
closely modelled after the spec. This also avoids a nasty msleep(500)
during initialisation.

Signed-off-by: Hannes Reinecke <hare@xxxxxxx>


Seems sane at first glance, but can you please regenerate this against
libata-dev.git#upstream ?

Upstream 2.6.x doesn't care at all about suspend/resume, and AHCI has
seen several modifications in #upstream that are waiting for 2.6.17.

Upstream 2.6.x certainly _does_ care about suspend/resume! To me, this
patch seems simple enough to be included. It's little more than
splitting the register init out form the port_stop/start functions and
calling them on resume/suspend appropriately.

--
Jens Axboe

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



Relevant Pages

  • Re: [PATCH] Fixup ahci suspend / resume
    ... Of course I will regenerate is against #upstream. ... Updated patch to follow. ... ahci: ... unsigned int port_idx) ...
    (Linux-Kernel)
  • [PATCH] Fixup ahci suspend / resume
    ... the current ahci doesn't handle suspend / resume cycles too well. ... DMA addresses, whereas the chip still uses the original ones. ... This patch rearranges the suspend / resume code to properly initialise ... those registers after a resume. ...
    (Linux-Kernel)
  • Re: [PATCH] Fixup ahci suspend / resume
    ... those registers after a resume. ... fixes to make the driver behave more spec-compliant. ... So far this is ahci specific as the ahci requires the DMA ... individual specs to check whether this is also true for other drivers. ...
    (Linux-Kernel)
  • Re: [PATCH] Fixup ahci suspend / resume
    ... AHCI suspend / resume fixes. ... The current ahci driver has the problem that it doesn't resume properly. ... Signed-off-by: Hannes Reinecke ... Upstream 2.6.x doesn't care at all about suspend/resume, and AHCI has seen several modifications in #upstream that are waiting for 2.6.17. ...
    (Linux-Kernel)
  • Re: switching from legacy to ahci on intel ICH-7M?
    ... take advantage of AHCI and the disk's NCQ capabilites somewhere? ... Some other vendors allow enabling AHCI just via one of standard AHCI ... by BIOS via custom register, standard AHCI registers are not available. ...
    (freebsd-current)