Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 36482
b: refs/heads/master
c: c961922
h: refs/heads/master
v: v3
  • Loading branch information
Alan Cox authored and Jeff Garzik committed Sep 26, 2006
1 parent 6fcb9e0 commit a737c82
Show file tree
Hide file tree
Showing 18 changed files with 68 additions and 109 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 4735ebedf37731160e3d3efc9fc9d4939c66fefa
refs/heads/master: c961922b73dab429a759f560952fd4c3f60bd6b3
8 changes: 3 additions & 5 deletions trunk/drivers/ata/ata_piix.c
Original file line number Diff line number Diff line change
Expand Up @@ -643,11 +643,9 @@ static int piix_pata_prereset(struct ata_port *ap)
{
struct pci_dev *pdev = to_pci_dev(ap->host->dev);

if (!pci_test_config_bits(pdev, &piix_enable_bits[ap->port_no])) {
ata_port_printk(ap, KERN_INFO, "port disabled. ignoring.\n");
ap->eh_context.i.action &= ~ATA_EH_RESET_MASK;
return 0;
}
if (!pci_test_config_bits(pdev, &piix_enable_bits[ap->port_no]))
return -ENOENT;

ap->cbl = ATA_CBL_PATA40;
return ata_std_prereset(ap);
}
Expand Down
6 changes: 5 additions & 1 deletion trunk/drivers/ata/libata-eh.c
Original file line number Diff line number Diff line change
Expand Up @@ -1515,7 +1515,11 @@ static int ata_eh_reset(struct ata_port *ap, int classify,
if (prereset) {
rc = prereset(ap);
if (rc) {
ata_port_printk(ap, KERN_ERR,
if (rc == -ENOENT) {
ata_port_printk(ap, KERN_DEBUG, "port disabled. ignoring.\n");
ap->eh_context.i.action &= ~ATA_EH_RESET_MASK;
} else
ata_port_printk(ap, KERN_ERR,
"prereset failed (errno=%d)\n", rc);
return rc;
}
Expand Down
25 changes: 8 additions & 17 deletions trunk/drivers/ata/pata_amd.c
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
#include <linux/libata.h>

#define DRV_NAME "pata_amd"
#define DRV_VERSION "0.2.3"
#define DRV_VERSION "0.2.4"

/**
* timing_setup - shared timing computation and load
Expand Down Expand Up @@ -137,11 +137,8 @@ static int amd_pre_reset(struct ata_port *ap)
struct pci_dev *pdev = to_pci_dev(ap->host->dev);
u8 ata66;

if (!pci_test_config_bits(pdev, &amd_enable_bits[ap->port_no])) {
ata_port_disable(ap);
printk(KERN_INFO "ata%u: port disabled. ignoring.\n", ap->id);
return 0;
}
if (!pci_test_config_bits(pdev, &amd_enable_bits[ap->port_no]))
return -ENOENT;

pci_read_config_byte(pdev, 0x42, &ata66);
if (ata66 & bitmask[ap->port_no])
Expand All @@ -167,11 +164,9 @@ static int amd_early_pre_reset(struct ata_port *ap)
{ 0x40, 1, 0x01, 0x01 }
};

if (!pci_test_config_bits(pdev, &amd_enable_bits[ap->port_no])) {
ata_port_disable(ap);
printk(KERN_INFO "ata%u: port disabled. ignoring.\n", ap->id);
return 0;
}
if (!pci_test_config_bits(pdev, &amd_enable_bits[ap->port_no]))
return -ENOENT;

/* No host side cable detection */
ap->cbl = ATA_CBL_PATA80;
return ata_std_prereset(ap);
Expand Down Expand Up @@ -262,12 +257,8 @@ static int nv_pre_reset(struct ata_port *ap) {
u8 ata66;
u16 udma;

if (!pci_test_config_bits(pdev, &nv_enable_bits[ap->port_no])) {
ata_port_disable(ap);
printk(KERN_INFO "ata%u: port disabled. ignoring.\n", ap->id);
return 0;
}

if (!pci_test_config_bits(pdev, &nv_enable_bits[ap->port_no]))
return -ENOENT;

pci_read_config_byte(pdev, 0x52, &ata66);
if (ata66 & bitmask[ap->port_no])
Expand Down
18 changes: 7 additions & 11 deletions trunk/drivers/ata/pata_artop.c
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
#include <linux/ata.h>

#define DRV_NAME "pata_artop"
#define DRV_VERSION "0.4.1"
#define DRV_VERSION "0.4.2"

/*
* The ARTOP has 33 Mhz and "over clocked" timing tables. Until we
Expand All @@ -47,11 +47,9 @@ static int artop6210_pre_reset(struct ata_port *ap)
{ 0x4AU, 1U, 0x04UL, 0x04UL }, /* port 1 */
};

if (!pci_test_config_bits(pdev, &artop_enable_bits[ap->port_no])) {
ata_port_disable(ap);
printk(KERN_INFO "ata%u: port disabled. ignoring.\n", ap->id);
return 0;
}
if (!pci_test_config_bits(pdev, &artop_enable_bits[ap->port_no]))
return -ENOENT;

ap->cbl = ATA_CBL_PATA40;
return ata_std_prereset(ap);
}
Expand Down Expand Up @@ -90,11 +88,9 @@ static int artop6260_pre_reset(struct ata_port *ap)
u8 tmp;

/* Odd numbered device ids are the units with enable bits (the -R cards) */
if (pdev->device % 1 && !pci_test_config_bits(pdev, &artop_enable_bits[ap->port_no])) {
ata_port_disable(ap);
printk(KERN_INFO "ata%u: port disabled. ignoring.\n", ap->id);
return 0;
}
if (pdev->device % 1 && !pci_test_config_bits(pdev, &artop_enable_bits[ap->port_no]))
return -ENOENT;

pci_read_config_byte(pdev, 0x49, &tmp);
if (tmp & (1 >> ap->port_no))
ap->cbl = ATA_CBL_PATA40;
Expand Down
10 changes: 4 additions & 6 deletions trunk/drivers/ata/pata_atiixp.c
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
#include <linux/libata.h>

#define DRV_NAME "pata_atiixp"
#define DRV_VERSION "0.4.2"
#define DRV_VERSION "0.4.3"

enum {
ATIIXP_IDE_PIO_TIMING = 0x40,
Expand All @@ -41,11 +41,9 @@ static int atiixp_pre_reset(struct ata_port *ap)
{ 0x48, 1, 0x08, 0x00 }
};

if (!pci_test_config_bits(pdev, &atiixp_enable_bits[ap->port_no])) {
ata_port_disable(ap);
printk(KERN_INFO "ata%u: port disabled. ignoring.\n", ap->id);
return 0;
}
if (!pci_test_config_bits(pdev, &atiixp_enable_bits[ap->port_no]))
return -ENOENT;

ap->cbl = ATA_CBL_PATA80;
return ata_std_prereset(ap);
}
Expand Down
10 changes: 4 additions & 6 deletions trunk/drivers/ata/pata_efar.c
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
#include <linux/ata.h>

#define DRV_NAME "pata_efar"
#define DRV_VERSION "0.4.1"
#define DRV_VERSION "0.4.2"

/**
* efar_pre_reset - check for 40/80 pin
Expand All @@ -42,11 +42,9 @@ static int efar_pre_reset(struct ata_port *ap)
struct pci_dev *pdev = to_pci_dev(ap->host->dev);
u8 tmp;

if (!pci_test_config_bits(pdev, &efar_enable_bits[ap->port_no])) {
ata_port_disable(ap);
printk(KERN_INFO "ata%u: port disabled. ignoring.\n", ap->id);
return 0;
}
if (!pci_test_config_bits(pdev, &efar_enable_bits[ap->port_no]))
return -ENOENT;

pci_read_config_byte(pdev, 0x47, &tmp);
if (tmp & (2 >> ap->port_no))
ap->cbl = ATA_CBL_PATA40;
Expand Down
2 changes: 1 addition & 1 deletion trunk/drivers/ata/pata_jmicron.c
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ static int jmicron_pre_reset(struct ata_port *ap)
/* Check if our port is enabled */
pci_read_config_dword(pdev, 0x40, &control);
if ((control & port_mask) == 0)
return 0;
return -ENOENT;

/* There are two basic mappings. One has the two SATA ports merged
as master/slave and the secondary as PATA, the other has only the
Expand Down
11 changes: 4 additions & 7 deletions trunk/drivers/ata/pata_mpiix.c
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
* The driver conciously keeps this logic internally to avoid pushing quirky
* PATA history into the clean libata layer.
*
* Thinkpad specific note: If you boot an MPIIX using thinkpad with a PCMCIA
* Thinkpad specific note: If you boot an MPIIX using a thinkpad with a PCMCIA
* hard disk present this driver will not detect it. This is not a bug. In this
* configuration the secondary port of the MPIIX is disabled and the addresses
* are decoded by the PCMCIA bridge and therefore are for a generic IDE driver
Expand All @@ -35,7 +35,7 @@
#include <linux/libata.h>

#define DRV_NAME "pata_mpiix"
#define DRV_VERSION "0.7.1"
#define DRV_VERSION "0.7.2"

enum {
IDETIM = 0x6C, /* IDE control register */
Expand All @@ -54,11 +54,8 @@ static int mpiix_pre_reset(struct ata_port *ap)
{ 0x6F, 1, 0x80, 0x80 }
};

if (!pci_test_config_bits(pdev, &mpiix_enable_bits[ap->port_no])) {
ata_port_disable(ap);
printk(KERN_INFO "ata%u: port disabled. ignoring.\n", ap->id);
return 0;
}
if (!pci_test_config_bits(pdev, &mpiix_enable_bits[ap->port_no]))
return -ENOENT;
ap->cbl = ATA_CBL_PATA40;
return ata_std_prereset(ap);
}
Expand Down
7 changes: 2 additions & 5 deletions trunk/drivers/ata/pata_ns87410.c
Original file line number Diff line number Diff line change
Expand Up @@ -45,11 +45,8 @@ static int ns87410_pre_reset(struct ata_port *ap)
{ 0x47, 1, 0x08, 0x08 }
};

if (!pci_test_config_bits(pdev, &ns87410_enable_bits[ap->port_no])) {
ata_port_disable(ap);
printk(KERN_INFO "ata%u: port disabled. ignoring.\n", ap->id);
return 0;
}
if (!pci_test_config_bits(pdev, &ns87410_enable_bits[ap->port_no]))
return -ENOENT;
ap->cbl = ATA_CBL_PATA40;
return ata_std_prereset(ap);
}
Expand Down
9 changes: 3 additions & 6 deletions trunk/drivers/ata/pata_oldpiix.c
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
#include <linux/ata.h>

#define DRV_NAME "pata_oldpiix"
#define DRV_VERSION "0.5.1"
#define DRV_VERSION "0.5.2"

/**
* oldpiix_pre_reset - probe begin
Expand All @@ -42,11 +42,8 @@ static int oldpiix_pre_reset(struct ata_port *ap)
{ 0x43U, 1U, 0x80UL, 0x80UL }, /* port 1 */
};

if (!pci_test_config_bits(pdev, &oldpiix_enable_bits[ap->port_no])) {
ata_port_disable(ap);
printk(KERN_INFO "ata%u: port disabled. ignoring.\n", ap->id);
return 0;
}
if (!pci_test_config_bits(pdev, &oldpiix_enable_bits[ap->port_no]))
return -ENOENT;
ap->cbl = ATA_CBL_PATA40;
return ata_std_prereset(ap);
}
Expand Down
10 changes: 4 additions & 6 deletions trunk/drivers/ata/pata_opti.c
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
#include <linux/libata.h>

#define DRV_NAME "pata_opti"
#define DRV_VERSION "0.2.4"
#define DRV_VERSION "0.2.5"

enum {
READ_REG = 0, /* index of Read cycle timing register */
Expand All @@ -59,11 +59,9 @@ static int opti_pre_reset(struct ata_port *ap)
{ 0x40, 1, 0x08, 0x00 }
};

if (!pci_test_config_bits(pdev, &opti_enable_bits[ap->port_no])) {
ata_port_disable(ap);
printk(KERN_INFO "ata%u: port disabled. ignoring.\n", ap->id);
return 0;
}
if (!pci_test_config_bits(pdev, &opti_enable_bits[ap->port_no]))
return -ENOENT;

ap->cbl = ATA_CBL_PATA40;
return ata_std_prereset(ap);
}
Expand Down
10 changes: 4 additions & 6 deletions trunk/drivers/ata/pata_optidma.c
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@
#include <linux/libata.h>

#define DRV_NAME "pata_optidma"
#define DRV_VERSION "0.2.1"
#define DRV_VERSION "0.2.2"

enum {
READ_REG = 0, /* index of Read cycle timing register */
Expand All @@ -59,11 +59,9 @@ static int optidma_pre_reset(struct ata_port *ap)
0x40, 1, 0x08, 0x00
};

if (ap->port_no && !pci_test_config_bits(pdev, &optidma_enable_bits)) {
ata_port_disable(ap);
printk(KERN_INFO "ata%u: port disabled. ignoring.\n", ap->id);
return 0;
}
if (ap->port_no && !pci_test_config_bits(pdev, &optidma_enable_bits))
return -ENOENT;

ap->cbl = ATA_CBL_PATA40;
return ata_std_prereset(ap);
}
Expand Down
8 changes: 3 additions & 5 deletions trunk/drivers/ata/pata_pdc2027x.c
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
#include <asm/io.h>

#define DRV_NAME "pata_pdc2027x"
#define DRV_VERSION "0.74-ac3"
#define DRV_VERSION "0.74-ac5"
#undef PDC_DEBUG

#ifdef PDC_DEBUG
Expand Down Expand Up @@ -311,10 +311,8 @@ static inline int pdc2027x_port_enabled(struct ata_port *ap)
static int pdc2027x_prereset(struct ata_port *ap)
{
/* Check whether port enabled */
if (!pdc2027x_port_enabled(ap)) {
printk(KERN_INFO "ata%u: port disabled. ignoring.\n", ap->id);
return 0;
}
if (!pdc2027x_port_enabled(ap))
return -ENOENT;
pdc2027x_cbl_detect(ap);
return ata_std_prereset(ap);
}
Expand Down
10 changes: 4 additions & 6 deletions trunk/drivers/ata/pata_sis.c
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
#include <linux/ata.h>

#define DRV_NAME "pata_sis"
#define DRV_VERSION "0.4.3"
#define DRV_VERSION "0.4.4"

struct sis_chipset {
u16 device; /* PCI host ID */
Expand Down Expand Up @@ -74,11 +74,9 @@ static int sis_133_pre_reset(struct ata_port *ap)
struct pci_dev *pdev = to_pci_dev(ap->host->dev);
u16 tmp;

if (!pci_test_config_bits(pdev, &sis_enable_bits[ap->port_no])) {
ata_port_disable(ap);
printk(KERN_INFO "ata%u: port disabled. ignoring.\n", ap->id);
return 0;
}
if (!pci_test_config_bits(pdev, &sis_enable_bits[ap->port_no]))
return -ENOENT;

/* The top bit of this register is the cable detect bit */
pci_read_config_word(pdev, 0x50 + 2 * ap->port_no, &tmp);
if (tmp & 0x8000)
Expand Down
9 changes: 3 additions & 6 deletions trunk/drivers/ata/pata_sl82c105.c
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
#include <linux/libata.h>

#define DRV_NAME "pata_sl82c105"
#define DRV_VERSION "0.2.2"
#define DRV_VERSION "0.2.3"

enum {
/*
Expand Down Expand Up @@ -49,11 +49,8 @@ static int sl82c105_pre_reset(struct ata_port *ap)
};
struct pci_dev *pdev = to_pci_dev(ap->host->dev);

if (ap->port_no && !pci_test_config_bits(pdev, &sl82c105_enable_bits[ap->port_no])) {
ata_port_disable(ap);
dev_printk(KERN_INFO, &pdev->dev, "port disabled. ignoring.\n");
return 0;
}
if (ap->port_no && !pci_test_config_bits(pdev, &sl82c105_enable_bits[ap->port_no]))
return -ENOENT;
ap->cbl = ATA_CBL_PATA40;
return ata_std_prereset(ap);
}
Expand Down
Loading

0 comments on commit a737c82

Please sign in to comment.