提交 bde0b5c1 编写于 作者: M Miquel Raynal 提交者: Jens Axboe

ata: ahci: mvebu: request PHY suspend/resume for Armada 3700

A feature has been added in the libahci driver: the possibility to set
a new flag in hpriv->flags to let the core handle PHY suspend/resume
automatically. Make use of this feature to make suspend to RAM work
with SATA drives on A3700.
Signed-off-by: NMiquel Raynal <miquel.raynal@bootlin.com>
Signed-off-by: NJens Axboe <axboe@kernel.dk>
上级 2f558bc3
...@@ -30,6 +30,7 @@ ...@@ -30,6 +30,7 @@
struct ahci_mvebu_plat_data { struct ahci_mvebu_plat_data {
int (*plat_config)(struct ahci_host_priv *hpriv); int (*plat_config)(struct ahci_host_priv *hpriv);
unsigned int flags;
}; };
static void ahci_mvebu_mbus_config(struct ahci_host_priv *hpriv, static void ahci_mvebu_mbus_config(struct ahci_host_priv *hpriv,
...@@ -195,6 +196,7 @@ static int ahci_mvebu_probe(struct platform_device *pdev) ...@@ -195,6 +196,7 @@ static int ahci_mvebu_probe(struct platform_device *pdev)
if (IS_ERR(hpriv)) if (IS_ERR(hpriv))
return PTR_ERR(hpriv); return PTR_ERR(hpriv);
hpriv->flags |= pdata->flags;
hpriv->plat_data = (void *)pdata; hpriv->plat_data = (void *)pdata;
rc = ahci_platform_enable_resources(hpriv); rc = ahci_platform_enable_resources(hpriv);
...@@ -225,6 +227,7 @@ static const struct ahci_mvebu_plat_data ahci_mvebu_armada_380_plat_data = { ...@@ -225,6 +227,7 @@ static const struct ahci_mvebu_plat_data ahci_mvebu_armada_380_plat_data = {
static const struct ahci_mvebu_plat_data ahci_mvebu_armada_3700_plat_data = { static const struct ahci_mvebu_plat_data ahci_mvebu_armada_3700_plat_data = {
.plat_config = ahci_mvebu_armada_3700_config, .plat_config = ahci_mvebu_armada_3700_config,
.flags = AHCI_HFLAG_SUSPEND_PHYS,
}; };
static const struct of_device_id ahci_mvebu_of_match[] = { static const struct of_device_id ahci_mvebu_of_match[] = {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册