mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 21:38:32 +08:00
Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev
* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev: [PATCH] libata-sff: Allow for wacky systems [PATCH] ahci: readability tweak [PATCH] libata: typo fix [PATCH] ATA must depend on BLOCK [PATCH] libata: use correct map_db values for ICH8
This commit is contained in:
commit
cb7fabcf9d
@ -6,6 +6,7 @@ menu "Serial ATA (prod) and Parallel ATA (experimental) drivers"
|
||||
|
||||
config ATA
|
||||
tristate "ATA device support"
|
||||
depends on BLOCK
|
||||
depends on !(M32R || M68K) || BROKEN
|
||||
depends on !SUN4 || BROKEN
|
||||
select SCSI
|
||||
|
@ -1041,7 +1041,7 @@ static void ahci_host_intr(struct ata_port *ap)
|
||||
/* hmmm... a spurious interupt */
|
||||
|
||||
/* some devices send D2H reg with I bit set during NCQ command phase */
|
||||
if (ap->sactive && status & PORT_IRQ_D2H_REG_FIS)
|
||||
if (ap->sactive && (status & PORT_IRQ_D2H_REG_FIS))
|
||||
return;
|
||||
|
||||
/* ignore interim PIO setup fis interrupts */
|
||||
|
@ -432,9 +432,9 @@ static const struct piix_map_db ich8_map_db = {
|
||||
.present_shift = 8,
|
||||
.map = {
|
||||
/* PM PS SM SS MAP */
|
||||
{ P0, NA, P1, NA }, /* 00b (hardwired) */
|
||||
{ P0, P2, P1, P3 }, /* 00b (hardwired when in AHCI) */
|
||||
{ RV, RV, RV, RV },
|
||||
{ RV, RV, RV, RV }, /* 10b (never) */
|
||||
{ IDE, IDE, NA, NA }, /* 10b (IDE mode) */
|
||||
{ RV, RV, RV, RV },
|
||||
},
|
||||
};
|
||||
|
@ -981,6 +981,15 @@ int ata_pci_init_one (struct pci_dev *pdev, struct ata_port_info **port_info,
|
||||
mask = (1 << 2) | (1 << 0);
|
||||
if ((tmp8 & mask) != mask)
|
||||
legacy_mode = (1 << 3);
|
||||
#if defined(CONFIG_NO_ATA_LEGACY)
|
||||
/* Some platforms with PCI limits cannot address compat
|
||||
port space. In that case we punt if their firmware has
|
||||
left a device in compatibility mode */
|
||||
if (legacy_mode) {
|
||||
printk(KERN_ERR "ata: Compatibility mode ATA is not supported on this platform, skipping.\n");
|
||||
return -EOPNOTSUPP;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
rc = pci_request_regions(pdev, DRV_NAME);
|
||||
|
@ -143,7 +143,7 @@ enum {
|
||||
ATA_DFLAG_CFG_MASK = (1 << 8) - 1,
|
||||
|
||||
ATA_DFLAG_PIO = (1 << 8), /* device limited to PIO mode */
|
||||
ATA_DFLAG_NCQ_OFF = (1 << 9), /* devied limited to non-NCQ mode */
|
||||
ATA_DFLAG_NCQ_OFF = (1 << 9), /* device limited to non-NCQ mode */
|
||||
ATA_DFLAG_SUSPENDED = (1 << 10), /* device suspended */
|
||||
ATA_DFLAG_INIT_MASK = (1 << 16) - 1,
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user