diff options
-rw-r--r-- | drivers/ata/ahci_qoriq.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/ata/ahci_qoriq.c b/drivers/ata/ahci_qoriq.c index 137b1c76f259..85d833289f28 100644 --- a/drivers/ata/ahci_qoriq.c +++ b/drivers/ata/ahci_qoriq.c | |||
@@ -53,6 +53,7 @@ enum ahci_qoriq_type { | |||
53 | AHCI_LS1043A, | 53 | AHCI_LS1043A, |
54 | AHCI_LS2080A, | 54 | AHCI_LS2080A, |
55 | AHCI_LS1046A, | 55 | AHCI_LS1046A, |
56 | AHCI_LS2088A, | ||
56 | }; | 57 | }; |
57 | 58 | ||
58 | struct ahci_qoriq_priv { | 59 | struct ahci_qoriq_priv { |
@@ -67,6 +68,7 @@ static const struct of_device_id ahci_qoriq_of_match[] = { | |||
67 | { .compatible = "fsl,ls1043a-ahci", .data = (void *)AHCI_LS1043A}, | 68 | { .compatible = "fsl,ls1043a-ahci", .data = (void *)AHCI_LS1043A}, |
68 | { .compatible = "fsl,ls2080a-ahci", .data = (void *)AHCI_LS2080A}, | 69 | { .compatible = "fsl,ls2080a-ahci", .data = (void *)AHCI_LS2080A}, |
69 | { .compatible = "fsl,ls1046a-ahci", .data = (void *)AHCI_LS1046A}, | 70 | { .compatible = "fsl,ls1046a-ahci", .data = (void *)AHCI_LS1046A}, |
71 | { .compatible = "fsl,ls2088a-ahci", .data = (void *)AHCI_LS2088A}, | ||
70 | {}, | 72 | {}, |
71 | }; | 73 | }; |
72 | MODULE_DEVICE_TABLE(of, ahci_qoriq_of_match); | 74 | MODULE_DEVICE_TABLE(of, ahci_qoriq_of_match); |
@@ -198,6 +200,13 @@ static int ahci_qoriq_phy_init(struct ahci_host_priv *hpriv) | |||
198 | if (qpriv->is_dmacoherent) | 200 | if (qpriv->is_dmacoherent) |
199 | writel(AHCI_PORT_AXICC_CFG, reg_base + PORT_AXICC); | 201 | writel(AHCI_PORT_AXICC_CFG, reg_base + PORT_AXICC); |
200 | break; | 202 | break; |
203 | |||
204 | case AHCI_LS2088A: | ||
205 | writel(AHCI_PORT_PHY_1_CFG, reg_base + PORT_PHY1); | ||
206 | writel(AHCI_PORT_TRANS_CFG, reg_base + PORT_TRANS); | ||
207 | if (qpriv->is_dmacoherent) | ||
208 | writel(AHCI_PORT_AXICC_CFG, reg_base + PORT_AXICC); | ||
209 | break; | ||
201 | } | 210 | } |
202 | 211 | ||
203 | return 0; | 212 | return 0; |