Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b97f880c authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull libata fixes from Tejun Heo:

 - Bartlomiej will be co-maintaining PATA portion of libata.  git
   workflow will stay the same.

 - sata_sil24 wasn't happy with tag ordered submission.  An option to
   restore the old tag allocation behavior is implemented for sil24.

 - a very old race condition in PIO host state machine which can trigger
   BUG fixed.

 - other driver-specific changes

* 'for-3.19-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata:
  libata: prevent HSM state change race between ISR and PIO
  libata: allow sata_sil24 to opt-out of tag ordered submission
  ata: pata_at91: depend on !ARCH_MULTIPLATFORM
  ahci: Remove Device ID for Intel Sunrise Point PCH
  ahci: Use dev_info() to inform about the lack of Device Sleep support
  libata: Whitelist SSDs that are known to properly return zeroes after TRIM
  sata_dwc_460ex: fix resource leak on error path
  ata: add MAINTAINERS entry for libata PATA drivers
  libata: clean up MAINTAINERS entries
  libata: export ata_get_cmd_descript()
  ahci_xgene: Fix the DMA state machine lockup for the ATA_CMD_PACKET PIO mode command.
  ahci_xgene: Fix the endianess issue in APM X-Gene SoC AHCI SATA controller driver.
parents d4b2d006 ce751452
Loading
Loading
Loading
Loading
+43 −32
Original line number Diff line number Diff line
@@ -754,13 +754,6 @@ L: linux-media@vger.kernel.org
S:	Maintained
F:	drivers/media/i2c/aptina-pll.*

ARASAN COMPACT FLASH PATA CONTROLLER
M:	Viresh Kumar <viresh.linux@gmail.com>
L:	linux-ide@vger.kernel.org
S:	Maintained
F:	include/linux/pata_arasan_cf_data.h
F:	drivers/ata/pata_arasan_cf.c

ARC FRAMEBUFFER DRIVER
M:	Jaya Kumar <jayalk@intworks.biz>
S:	Maintained
@@ -5704,6 +5697,49 @@ F: drivers/lguest/
F:	include/linux/lguest*.h
F:	tools/lguest/

LIBATA SUBSYSTEM (Serial and Parallel ATA drivers)
M:	Tejun Heo <tj@kernel.org>
L:	linux-ide@vger.kernel.org
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata.git
S:	Maintained
F:	drivers/ata/
F:	include/linux/ata.h
F:	include/linux/libata.h

LIBATA PATA ARASAN COMPACT FLASH CONTROLLER
M:	Viresh Kumar <viresh.linux@gmail.com>
L:	linux-ide@vger.kernel.org
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata.git
S:	Maintained
F:	include/linux/pata_arasan_cf_data.h
F:	drivers/ata/pata_arasan_cf.c

LIBATA PATA DRIVERS
M:	Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
M:	Tejun Heo <tj@kernel.org>
L:	linux-ide@vger.kernel.org
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata.git
S:	Maintained
F:	drivers/ata/pata_*.c
F:	drivers/ata/ata_generic.c

LIBATA SATA AHCI PLATFORM devices support
M:	Hans de Goede <hdegoede@redhat.com>
M:	Tejun Heo <tj@kernel.org>
L:	linux-ide@vger.kernel.org
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata.git
S:	Maintained
F:	drivers/ata/ahci_platform.c
F:	drivers/ata/libahci_platform.c
F:	include/linux/ahci_platform.h

LIBATA SATA PROMISE TX2/TX4 CONTROLLER DRIVER
M:	Mikael Pettersson <mikpelinux@gmail.com>
L:	linux-ide@vger.kernel.org
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata.git
S:	Maintained
F:	drivers/ata/sata_promise.*

LIBLOCKDEP
M:	Sasha Levin <sasha.levin@oracle.com>
S:	Maintained
@@ -7578,12 +7614,6 @@ W: http://wireless.kernel.org/en/users/Drivers/p54
S:	Obsolete
F:	drivers/net/wireless/prism54/

PROMISE SATA TX2/TX4 CONTROLLER LIBATA DRIVER
M:	Mikael Pettersson <mikpelinux@gmail.com>
L:	linux-ide@vger.kernel.org
S:	Maintained
F:	drivers/ata/sata_promise.*

PS3 NETWORK SUPPORT
M:	Geoff Levand <geoff@infradead.org>
L:	netdev@vger.kernel.org
@@ -8557,25 +8587,6 @@ S: Maintained
F:	drivers/misc/phantom.c
F:	include/uapi/linux/phantom.h

SERIAL ATA (SATA) SUBSYSTEM
M:	Tejun Heo <tj@kernel.org>
L:	linux-ide@vger.kernel.org
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata.git
S:	Supported
F:	drivers/ata/
F:	include/linux/ata.h
F:	include/linux/libata.h

SERIAL ATA AHCI PLATFORM devices support
M:	Hans de Goede <hdegoede@redhat.com>
M:	Tejun Heo <tj@kernel.org>
L:	linux-ide@vger.kernel.org
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata.git
S:	Supported
F:	drivers/ata/ahci_platform.c
F:	drivers/ata/libahci_platform.c
F:	include/linux/ahci_platform.h

SERVER ENGINES 10Gbps iSCSI - BladeEngine 2 DRIVER
M:	Jayamohan Kallickal <jayamohan.kallickal@emulex.com>
L:	linux-scsi@vger.kernel.org
+1 −0
Original line number Diff line number Diff line
@@ -835,6 +835,7 @@ config PATA_AT32
config PATA_AT91
	tristate "PATA support for AT91SAM9260"
	depends on ARM && SOC_AT91SAM9
	depends on !ARCH_MULTIPLATFORM
	help
	  This option enables support for IDE devices on the Atmel AT91SAM9260 SoC.

+0 −1
Original line number Diff line number Diff line
@@ -325,7 +325,6 @@ static const struct pci_device_id ahci_pci_tbl[] = {
	{ PCI_VDEVICE(INTEL, 0x9d05), board_ahci }, /* Sunrise Point-LP RAID */
	{ PCI_VDEVICE(INTEL, 0x9d07), board_ahci }, /* Sunrise Point-LP RAID */
	{ PCI_VDEVICE(INTEL, 0xa103), board_ahci }, /* Sunrise Point-H AHCI */
	{ PCI_VDEVICE(INTEL, 0xa103), board_ahci }, /* Sunrise Point-H RAID */
	{ PCI_VDEVICE(INTEL, 0xa105), board_ahci }, /* Sunrise Point-H RAID */
	{ PCI_VDEVICE(INTEL, 0xa107), board_ahci }, /* Sunrise Point-H RAID */
	{ PCI_VDEVICE(INTEL, 0xa10f), board_ahci }, /* Sunrise Point-H RAID */
+8 −6
Original line number Diff line number Diff line
@@ -125,10 +125,11 @@ static int xgene_ahci_restart_engine(struct ata_port *ap)
 * xgene_ahci_qc_issue - Issue commands to the device
 * @qc: Command to issue
 *
 * Due to Hardware errata for IDENTIFY DEVICE command, the controller cannot
 * clear the BSY bit after receiving the PIO setup FIS. This results in the dma
 * state machine goes into the CMFatalErrorUpdate state and locks up. By
 * restarting the dma engine, it removes the controller out of lock up state.
 * Due to Hardware errata for IDENTIFY DEVICE command and PACKET
 * command of ATAPI protocol set, the controller cannot clear the BSY bit
 * after receiving the PIO setup FIS. This results in the DMA state machine
 * going into the CMFatalErrorUpdate state and locks up. By restarting the
 * DMA engine, it removes the controller out of lock up state.
 */
static unsigned int xgene_ahci_qc_issue(struct ata_queued_cmd *qc)
{
@@ -137,7 +138,8 @@ static unsigned int xgene_ahci_qc_issue(struct ata_queued_cmd *qc)
	struct xgene_ahci_context *ctx = hpriv->plat_data;
	int rc = 0;

	if (unlikely(ctx->last_cmd[ap->port_no] == ATA_CMD_ID_ATA))
	if (unlikely((ctx->last_cmd[ap->port_no] == ATA_CMD_ID_ATA) ||
	    (ctx->last_cmd[ap->port_no] == ATA_CMD_PACKET)))
		xgene_ahci_restart_engine(ap);

	rc = ahci_qc_issue(qc);
@@ -188,7 +190,7 @@ static unsigned int xgene_ahci_read_id(struct ata_device *dev,
	 *
	 * Clear reserved bit 8 (DEVSLP bit) as we don't support DEVSLP
	 */
	id[ATA_ID_FEATURE_SUPP] &= ~(1 << 8);
	id[ATA_ID_FEATURE_SUPP] &= cpu_to_le16(~(1 << 8));

	return 0;
}
+1 −1
Original line number Diff line number Diff line
@@ -2003,7 +2003,7 @@ static void ahci_set_aggressive_devslp(struct ata_port *ap, bool sleep)

	devslp = readl(port_mmio + PORT_DEVSLP);
	if (!(devslp & PORT_DEVSLP_DSP)) {
		dev_err(ap->host->dev, "port does not support device sleep\n");
		dev_info(ap->host->dev, "port does not support device sleep\n");
		return;
	}

Loading