diff options
| author | Tejun Heo <tj@kernel.org> | 2013-12-03 07:39:51 -0500 |
|---|---|---|
| committer | Tejun Heo <tj@kernel.org> | 2013-12-03 07:39:51 -0500 |
| commit | c869325a45ce3369d456d7632409b675c3adb7ce (patch) | |
| tree | 4d71e7eee6dfbf94770fd5be829a241b2f83dc62 /drivers/ata | |
| parent | 80361fa02e59cbc4ddfd4ceae18441092797149f (diff) | |
| parent | 10becdb402af4fd4808a0491a726b96128c41076 (diff) | |
libata: Merge branch 'for-3.13-fixes' into for-3.14
Pulling in for-3.13-fixes for the ahci_imx fix as further changes
depend on it.
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'drivers/ata')
| -rw-r--r-- | drivers/ata/ahci.c | 2 | ||||
| -rw-r--r-- | drivers/ata/ahci_imx.c | 3 | ||||
| -rw-r--r-- | drivers/ata/ahci_platform.c | 1 | ||||
| -rw-r--r-- | drivers/ata/libata-core.c | 6 | ||||
| -rw-r--r-- | drivers/ata/libata-zpodd.c | 4 | ||||
| -rw-r--r-- | drivers/ata/pata_arasan_cf.c | 1 |
6 files changed, 11 insertions, 6 deletions
diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c index c55e00562527..ef8642e12a76 100644 --- a/drivers/ata/ahci.c +++ b/drivers/ata/ahci.c | |||
| @@ -437,6 +437,8 @@ static const struct pci_device_id ahci_pci_tbl[] = { | |||
| 437 | .driver_data = board_ahci_yes_fbs }, /* 88se9172 on some Gigabyte */ | 437 | .driver_data = board_ahci_yes_fbs }, /* 88se9172 on some Gigabyte */ |
| 438 | { PCI_DEVICE(PCI_VENDOR_ID_MARVELL_EXT, 0x91a3), | 438 | { PCI_DEVICE(PCI_VENDOR_ID_MARVELL_EXT, 0x91a3), |
| 439 | .driver_data = board_ahci_yes_fbs }, | 439 | .driver_data = board_ahci_yes_fbs }, |
| 440 | { PCI_DEVICE(PCI_VENDOR_ID_MARVELL_EXT, 0x9230), | ||
| 441 | .driver_data = board_ahci_yes_fbs }, | ||
| 440 | 442 | ||
| 441 | /* Promise */ | 443 | /* Promise */ |
| 442 | { PCI_VDEVICE(PROMISE, 0x3f20), board_ahci }, /* PDC42819 */ | 444 | { PCI_VDEVICE(PROMISE, 0x3f20), board_ahci }, /* PDC42819 */ |
diff --git a/drivers/ata/ahci_imx.c b/drivers/ata/ahci_imx.c index ae2d73fe321e..3e23e9941dad 100644 --- a/drivers/ata/ahci_imx.c +++ b/drivers/ata/ahci_imx.c | |||
| @@ -113,7 +113,7 @@ static int imx6q_sata_init(struct device *dev, void __iomem *mmio) | |||
| 113 | /* | 113 | /* |
| 114 | * set PHY Paremeters, two steps to configure the GPR13, | 114 | * set PHY Paremeters, two steps to configure the GPR13, |
| 115 | * one write for rest of parameters, mask of first write | 115 | * one write for rest of parameters, mask of first write |
| 116 | * is 0x07fffffd, and the other one write for setting | 116 | * is 0x07ffffff, and the other one write for setting |
| 117 | * the mpll_clk_en. | 117 | * the mpll_clk_en. |
| 118 | */ | 118 | */ |
| 119 | regmap_update_bits(imxpriv->gpr, 0x34, IMX6Q_GPR13_SATA_RX_EQ_VAL_MASK | 119 | regmap_update_bits(imxpriv->gpr, 0x34, IMX6Q_GPR13_SATA_RX_EQ_VAL_MASK |
| @@ -124,6 +124,7 @@ static int imx6q_sata_init(struct device *dev, void __iomem *mmio) | |||
| 124 | | IMX6Q_GPR13_SATA_TX_ATTEN_MASK | 124 | | IMX6Q_GPR13_SATA_TX_ATTEN_MASK |
| 125 | | IMX6Q_GPR13_SATA_TX_BOOST_MASK | 125 | | IMX6Q_GPR13_SATA_TX_BOOST_MASK |
| 126 | | IMX6Q_GPR13_SATA_TX_LVL_MASK | 126 | | IMX6Q_GPR13_SATA_TX_LVL_MASK |
| 127 | | IMX6Q_GPR13_SATA_MPLL_CLK_EN | ||
| 127 | | IMX6Q_GPR13_SATA_TX_EDGE_RATE | 128 | | IMX6Q_GPR13_SATA_TX_EDGE_RATE |
| 128 | , IMX6Q_GPR13_SATA_RX_EQ_VAL_3_0_DB | 129 | , IMX6Q_GPR13_SATA_RX_EQ_VAL_3_0_DB |
| 129 | | IMX6Q_GPR13_SATA_RX_LOS_LVL_SATA2M | 130 | | IMX6Q_GPR13_SATA_RX_LOS_LVL_SATA2M |
diff --git a/drivers/ata/ahci_platform.c b/drivers/ata/ahci_platform.c index f9554318504f..4b231baceb09 100644 --- a/drivers/ata/ahci_platform.c +++ b/drivers/ata/ahci_platform.c | |||
| @@ -329,6 +329,7 @@ static SIMPLE_DEV_PM_OPS(ahci_pm_ops, ahci_suspend, ahci_resume); | |||
| 329 | static const struct of_device_id ahci_of_match[] = { | 329 | static const struct of_device_id ahci_of_match[] = { |
| 330 | { .compatible = "snps,spear-ahci", }, | 330 | { .compatible = "snps,spear-ahci", }, |
| 331 | { .compatible = "snps,exynos5440-ahci", }, | 331 | { .compatible = "snps,exynos5440-ahci", }, |
| 332 | { .compatible = "ibm,476gtr-ahci", }, | ||
| 332 | {}, | 333 | {}, |
| 333 | }; | 334 | }; |
| 334 | MODULE_DEVICE_TABLE(of, ahci_of_match); | 335 | MODULE_DEVICE_TABLE(of, ahci_of_match); |
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c index 81a94a3919db..dae73efe5dbf 100644 --- a/drivers/ata/libata-core.c +++ b/drivers/ata/libata-core.c | |||
| @@ -4156,6 +4156,9 @@ static const struct ata_blacklist_entry ata_device_blacklist [] = { | |||
| 4156 | { "ST3320[68]13AS", "SD1[5-9]", ATA_HORKAGE_NONCQ | | 4156 | { "ST3320[68]13AS", "SD1[5-9]", ATA_HORKAGE_NONCQ | |
| 4157 | ATA_HORKAGE_FIRMWARE_WARN }, | 4157 | ATA_HORKAGE_FIRMWARE_WARN }, |
| 4158 | 4158 | ||
| 4159 | /* Seagate Momentus SpinPoint M8 seem to have FPMDA_AA issues */ | ||
| 4160 | { "ST1000LM024 HN-M101MBB", "2AR10001", ATA_HORKAGE_BROKEN_FPDMA_AA }, | ||
| 4161 | |||
| 4159 | /* Blacklist entries taken from Silicon Image 3124/3132 | 4162 | /* Blacklist entries taken from Silicon Image 3124/3132 |
| 4160 | Windows driver .inf file - also several Linux problem reports */ | 4163 | Windows driver .inf file - also several Linux problem reports */ |
| 4161 | { "HTS541060G9SA00", "MB3OC60D", ATA_HORKAGE_NONCQ, }, | 4164 | { "HTS541060G9SA00", "MB3OC60D", ATA_HORKAGE_NONCQ, }, |
| @@ -6304,10 +6307,9 @@ static void ata_port_detach(struct ata_port *ap) | |||
| 6304 | for (i = 0; i < SATA_PMP_MAX_PORTS; i++) | 6307 | for (i = 0; i < SATA_PMP_MAX_PORTS; i++) |
| 6305 | ata_tlink_delete(&ap->pmp_link[i]); | 6308 | ata_tlink_delete(&ap->pmp_link[i]); |
| 6306 | } | 6309 | } |
| 6307 | ata_tport_delete(ap); | ||
| 6308 | |||
| 6309 | /* remove the associated SCSI host */ | 6310 | /* remove the associated SCSI host */ |
| 6310 | scsi_remove_host(ap->scsi_host); | 6311 | scsi_remove_host(ap->scsi_host); |
| 6312 | ata_tport_delete(ap); | ||
| 6311 | } | 6313 | } |
| 6312 | 6314 | ||
| 6313 | /** | 6315 | /** |
diff --git a/drivers/ata/libata-zpodd.c b/drivers/ata/libata-zpodd.c index 68f9e3293e9c..88949c6d55dd 100644 --- a/drivers/ata/libata-zpodd.c +++ b/drivers/ata/libata-zpodd.c | |||
| @@ -88,15 +88,13 @@ static enum odd_mech_type zpodd_get_mech_type(struct ata_device *dev) | |||
| 88 | static bool odd_can_poweroff(struct ata_device *ata_dev) | 88 | static bool odd_can_poweroff(struct ata_device *ata_dev) |
| 89 | { | 89 | { |
| 90 | acpi_handle handle; | 90 | acpi_handle handle; |
| 91 | acpi_status status; | ||
| 92 | struct acpi_device *acpi_dev; | 91 | struct acpi_device *acpi_dev; |
| 93 | 92 | ||
| 94 | handle = ata_dev_acpi_handle(ata_dev); | 93 | handle = ata_dev_acpi_handle(ata_dev); |
| 95 | if (!handle) | 94 | if (!handle) |
| 96 | return false; | 95 | return false; |
| 97 | 96 | ||
| 98 | status = acpi_bus_get_device(handle, &acpi_dev); | 97 | if (acpi_bus_get_device(handle, &acpi_dev)) |
| 99 | if (ACPI_FAILURE(status)) | ||
| 100 | return false; | 98 | return false; |
| 101 | 99 | ||
| 102 | return acpi_device_can_poweroff(acpi_dev); | 100 | return acpi_device_can_poweroff(acpi_dev); |
diff --git a/drivers/ata/pata_arasan_cf.c b/drivers/ata/pata_arasan_cf.c index e88690ebfd82..73492dd4a4bc 100644 --- a/drivers/ata/pata_arasan_cf.c +++ b/drivers/ata/pata_arasan_cf.c | |||
| @@ -319,6 +319,7 @@ static int cf_init(struct arasan_cf_dev *acdev) | |||
| 319 | ret = clk_set_rate(acdev->clk, 166000000); | 319 | ret = clk_set_rate(acdev->clk, 166000000); |
| 320 | if (ret) { | 320 | if (ret) { |
| 321 | dev_warn(acdev->host->dev, "clock set rate failed"); | 321 | dev_warn(acdev->host->dev, "clock set rate failed"); |
| 322 | clk_disable_unprepare(acdev->clk); | ||
| 322 | return ret; | 323 | return ret; |
| 323 | } | 324 | } |
| 324 | 325 | ||
