Skip to content

Commit 61ac7bf

Browse files
committed
Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev
* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: ahci: change the Device IDs of nvidia MCP7B AHCI controller in ahci.c [libata] sata_fsl: Fix broken driver, add port multiplier (PMP) support libata: SRST can't be trusted on PMP sil3726 libata: fix libata-scsi kernel-doc notation ata: Convert to static DEFINE_SPINLOCK(lock) ata_piix: fix macbook ich8m problems sata_mv: implement SoC guideline SATA_S11 sata_mv: workaround for 60x1 errata sata13 sata_mv: nuke unreleased GenIIe revisions sata_mv: PHY_MODEx errata fixes sata_mv: move SOC_FLAG to hpriv
2 parents 14d03fd + 3072c37 commit 61ac7bf

File tree

7 files changed

+217
-117
lines changed

7 files changed

+217
-117
lines changed

drivers/ata/ahci.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -502,10 +502,10 @@ static const struct pci_device_id ahci_pci_tbl[] = {
502502
{ PCI_VDEVICE(NVIDIA, 0x0bcd), board_ahci }, /* MCP7B */
503503
{ PCI_VDEVICE(NVIDIA, 0x0bce), board_ahci }, /* MCP7B */
504504
{ PCI_VDEVICE(NVIDIA, 0x0bcf), board_ahci }, /* MCP7B */
505-
{ PCI_VDEVICE(NVIDIA, 0x0bd0), board_ahci }, /* MCP7B */
506-
{ PCI_VDEVICE(NVIDIA, 0x0bd1), board_ahci }, /* MCP7B */
507-
{ PCI_VDEVICE(NVIDIA, 0x0bd2), board_ahci }, /* MCP7B */
508-
{ PCI_VDEVICE(NVIDIA, 0x0bd3), board_ahci }, /* MCP7B */
505+
{ PCI_VDEVICE(NVIDIA, 0x0bc4), board_ahci }, /* MCP7B */
506+
{ PCI_VDEVICE(NVIDIA, 0x0bc5), board_ahci }, /* MCP7B */
507+
{ PCI_VDEVICE(NVIDIA, 0x0bc6), board_ahci }, /* MCP7B */
508+
{ PCI_VDEVICE(NVIDIA, 0x0bc7), board_ahci }, /* MCP7B */
509509

510510
/* SiS */
511511
{ PCI_VDEVICE(SI, 0x1184), board_ahci }, /* SiS 966 */

drivers/ata/ata_piix.c

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -247,10 +247,11 @@ static const struct pci_device_id piix_pci_tbl[] = {
247247
{ 0x8086, 0x2820, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata },
248248
/* SATA Controller 2 IDE (ICH8) */
249249
{ 0x8086, 0x2825, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_2port_sata },
250-
/* Mobile SATA Controller IDE (ICH8M) */
251-
{ 0x8086, 0x2828, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata },
252250
/* Mobile SATA Controller IDE (ICH8M), Apple */
253251
{ 0x8086, 0x2828, 0x106b, 0x00a0, 0, 0, ich8m_apple_sata },
252+
{ 0x8086, 0x2828, 0x106b, 0x00a1, 0, 0, ich8m_apple_sata },
253+
/* Mobile SATA Controller IDE (ICH8M) */
254+
{ 0x8086, 0x2828, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata },
254255
/* SATA Controller IDE (ICH9) */
255256
{ 0x8086, 0x2920, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata },
256257
/* SATA Controller IDE (ICH9) */
@@ -526,7 +527,7 @@ static struct ata_port_info piix_port_info[] = {
526527

527528
[ich8m_apple_sata] =
528529
{
529-
.flags = PIIX_SATA_FLAGS | PIIX_FLAG_SIDPR,
530+
.flags = PIIX_SATA_FLAGS,
530531
.pio_mask = 0x1f, /* pio0-4 */
531532
.mwdma_mask = 0x07, /* mwdma0-2 */
532533
.udma_mask = ATA_UDMA6,

drivers/ata/libata-core.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5403,7 +5403,7 @@ static void ata_host_stop(struct device *gendev, void *res)
54035403
*/
54045404
static void ata_finalize_port_ops(struct ata_port_operations *ops)
54055405
{
5406-
static spinlock_t lock = SPIN_LOCK_UNLOCKED;
5406+
static DEFINE_SPINLOCK(lock);
54075407
const struct ata_port_operations *cur;
54085408
void **begin = (void **)ops;
54095409
void **end = (void **)&ops->inherits;

drivers/ata/libata-pmp.c

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -322,9 +322,12 @@ static void sata_pmp_quirks(struct ata_port *ap)
322322
if (vendor == 0x1095 && devid == 0x3726) {
323323
/* sil3726 quirks */
324324
ata_port_for_each_link(link, ap) {
325-
/* class code report is unreliable */
325+
/* Class code report is unreliable and SRST
326+
* times out under certain configurations.
327+
*/
326328
if (link->pmp < 5)
327-
link->flags |= ATA_LFLAG_ASSUME_ATA;
329+
link->flags |= ATA_LFLAG_NO_SRST |
330+
ATA_LFLAG_ASSUME_ATA;
328331

329332
/* port 5 is for SEMB device and it doesn't like SRST */
330333
if (link->pmp == 5)

drivers/ata/libata-scsi.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1637,6 +1637,7 @@ static int ata_scsi_translate(struct ata_device *dev, struct scsi_cmnd *cmd,
16371637

16381638
/**
16391639
* ata_scsi_rbuf_get - Map response buffer.
1640+
* @cmd: SCSI command containing buffer to be mapped.
16401641
* @flags: unsigned long variable to store irq enable status
16411642
* @copy_in: copy in from user buffer
16421643
*
@@ -1954,7 +1955,7 @@ static unsigned int ata_msense_ctl_mode(u8 *buf)
19541955

19551956
/**
19561957
* ata_msense_rw_recovery - Simulate MODE SENSE r/w error recovery page
1957-
* @bufp: output buffer
1958+
* @buf: output buffer
19581959
*
19591960
* Generate a generic MODE SENSE r/w error recovery page.
19601961
*

0 commit comments

Comments
 (0)