Commit 1309d4e6 authored by Linus Torvalds's avatar Linus Torvalds

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:
  ata: fix sparse warning in pata_acpi.c
  ata: fix sparse warning in pata_marvell.c
  ata: fix sparse warning in pata_jmicron.c
  ata: fix sparse warning in pata_cs5536.c
  ata: sparse fixes for pata_amd.c
  pata_scc.c: add thaw ops
  pata_cs5536.c bugfix
  pata_legacy: don't call ata_host_detach() after initialization failure
  ata: fix sparse warnings in sata_mv.c
  ata: fix sparse warning in sata_via.c
  ata: fix sparse warning in sata_promise.c
  ata: fix sparse warning in ata_piix.c
  ata: fix sparse warning in libata-core.c
  ata: make ata_scsiop_inq_89 static in libata-scsi.c
parents 101142c3 5410f729
...@@ -1652,7 +1652,7 @@ static int __devinit piix_init_one(struct pci_dev *pdev, ...@@ -1652,7 +1652,7 @@ static int __devinit piix_init_one(struct pci_dev *pdev,
u8 tmp; u8 tmp;
pci_read_config_byte(pdev, PIIX_SCC, &tmp); pci_read_config_byte(pdev, PIIX_SCC, &tmp);
if (tmp == PIIX_AHCI_DEVICE) { if (tmp == PIIX_AHCI_DEVICE) {
int rc = piix_disable_ahci(pdev); rc = piix_disable_ahci(pdev);
if (rc) if (rc)
return rc; return rc;
} }
......
...@@ -7086,7 +7086,6 @@ int ata_host_register(struct ata_host *host, struct scsi_host_template *sht) ...@@ -7086,7 +7086,6 @@ int ata_host_register(struct ata_host *host, struct scsi_host_template *sht)
DPRINTK("probe begin\n"); DPRINTK("probe begin\n");
for (i = 0; i < host->n_ports; i++) { for (i = 0; i < host->n_ports; i++) {
struct ata_port *ap = host->ports[i]; struct ata_port *ap = host->ports[i];
int rc;
/* probe */ /* probe */
if (ap->ops->error_handler) { if (ap->ops->error_handler) {
......
...@@ -1862,7 +1862,7 @@ unsigned int ata_scsiop_inq_83(struct ata_scsi_args *args, u8 *rbuf, ...@@ -1862,7 +1862,7 @@ unsigned int ata_scsiop_inq_83(struct ata_scsi_args *args, u8 *rbuf,
* spin_lock_irqsave(host lock) * spin_lock_irqsave(host lock)
*/ */
unsigned int ata_scsiop_inq_89(struct ata_scsi_args *args, u8 *rbuf, static unsigned int ata_scsiop_inq_89(struct ata_scsi_args *args, u8 *rbuf,
unsigned int buflen) unsigned int buflen)
{ {
u8 pbuf[60]; u8 pbuf[60];
......
...@@ -77,8 +77,8 @@ static int pacpi_cable_detect(struct ata_port *ap) ...@@ -77,8 +77,8 @@ static int pacpi_cable_detect(struct ata_port *ap)
static void pacpi_error_handler(struct ata_port *ap) static void pacpi_error_handler(struct ata_port *ap)
{ {
return ata_bmdma_drive_eh(ap, pacpi_pre_reset, ata_std_softreset, ata_bmdma_drive_eh(ap, pacpi_pre_reset, ata_std_softreset, NULL,
NULL, ata_std_postreset); ata_std_postreset);
} }
/** /**
......
...@@ -146,8 +146,7 @@ static int amd_pre_reset(struct ata_link *link, unsigned long deadline) ...@@ -146,8 +146,7 @@ static int amd_pre_reset(struct ata_link *link, unsigned long deadline)
static void amd_error_handler(struct ata_port *ap) static void amd_error_handler(struct ata_port *ap)
{ {
return ata_bmdma_drive_eh(ap, amd_pre_reset, ata_bmdma_drive_eh(ap, amd_pre_reset, ata_std_softreset, NULL,
ata_std_softreset, NULL,
ata_std_postreset); ata_std_postreset);
} }
...@@ -506,7 +505,6 @@ static struct ata_port_operations amd133_port_ops = { ...@@ -506,7 +505,6 @@ static struct ata_port_operations amd133_port_ops = {
static struct ata_port_operations nv100_port_ops = { static struct ata_port_operations nv100_port_ops = {
.set_piomode = nv100_set_piomode, .set_piomode = nv100_set_piomode,
.set_dmamode = nv100_set_dmamode, .set_dmamode = nv100_set_dmamode,
.mode_filter = ata_pci_default_filter,
.tf_load = ata_tf_load, .tf_load = ata_tf_load,
.tf_read = ata_tf_read, .tf_read = ata_tf_read,
.check_status = ata_check_status, .check_status = ata_check_status,
...@@ -541,7 +539,6 @@ static struct ata_port_operations nv100_port_ops = { ...@@ -541,7 +539,6 @@ static struct ata_port_operations nv100_port_ops = {
static struct ata_port_operations nv133_port_ops = { static struct ata_port_operations nv133_port_ops = {
.set_piomode = nv133_set_piomode, .set_piomode = nv133_set_piomode,
.set_dmamode = nv133_set_dmamode, .set_dmamode = nv133_set_dmamode,
.mode_filter = ata_pci_default_filter,
.tf_load = ata_tf_load, .tf_load = ata_tf_load,
.tf_read = ata_tf_read, .tf_read = ata_tf_read,
.check_status = ata_check_status, .check_status = ata_check_status,
......
...@@ -40,7 +40,7 @@ ...@@ -40,7 +40,7 @@
#include <asm/msr.h> #include <asm/msr.h>
#define DRV_NAME "pata_cs5536" #define DRV_NAME "pata_cs5536"
#define DRV_VERSION "0.0.6" #define DRV_VERSION "0.0.7"
enum { enum {
CFG = 0, CFG = 0,
...@@ -85,7 +85,7 @@ static const u8 pci_reg[4] = { ...@@ -85,7 +85,7 @@ static const u8 pci_reg[4] = {
PCI_IDE_CFG, PCI_IDE_DTC, PCI_IDE_CAST, PCI_IDE_ETC, PCI_IDE_CFG, PCI_IDE_DTC, PCI_IDE_CAST, PCI_IDE_ETC,
}; };
static inline int cs5536_read(struct pci_dev *pdev, int reg, int *val) static inline int cs5536_read(struct pci_dev *pdev, int reg, u32 *val)
{ {
if (unlikely(use_msr)) { if (unlikely(use_msr)) {
u32 dummy; u32 dummy;
...@@ -153,8 +153,8 @@ static void cs5536_set_piomode(struct ata_port *ap, struct ata_device *adev) ...@@ -153,8 +153,8 @@ static void cs5536_set_piomode(struct ata_port *ap, struct ata_device *adev)
struct ata_device *pair = ata_dev_pair(adev); struct ata_device *pair = ata_dev_pair(adev);
int mode = adev->pio_mode - XFER_PIO_0; int mode = adev->pio_mode - XFER_PIO_0;
int cmdmode = mode; int cmdmode = mode;
int dshift = ap->port_no ? IDE_D1_SHIFT : IDE_D0_SHIFT; int dshift = adev->devno ? IDE_D1_SHIFT : IDE_D0_SHIFT;
int cshift = ap->port_no ? IDE_CAST_D1_SHIFT : IDE_CAST_D0_SHIFT; int cshift = adev->devno ? IDE_CAST_D1_SHIFT : IDE_CAST_D0_SHIFT;
u32 dtc, cast, etc; u32 dtc, cast, etc;
if (pair) if (pair)
...@@ -201,7 +201,7 @@ static void cs5536_set_dmamode(struct ata_port *ap, struct ata_device *adev) ...@@ -201,7 +201,7 @@ static void cs5536_set_dmamode(struct ata_port *ap, struct ata_device *adev)
struct pci_dev *pdev = to_pci_dev(ap->host->dev); struct pci_dev *pdev = to_pci_dev(ap->host->dev);
u32 dtc, etc; u32 dtc, etc;
int mode = adev->dma_mode; int mode = adev->dma_mode;
int dshift = ap->port_no ? IDE_D1_SHIFT : IDE_D0_SHIFT; int dshift = adev->devno ? IDE_D1_SHIFT : IDE_D0_SHIFT;
if (mode >= XFER_UDMA_0) { if (mode >= XFER_UDMA_0) {
cs5536_read(pdev, ETC, &etc); cs5536_read(pdev, ETC, &etc);
......
...@@ -115,7 +115,8 @@ static int jmicron_pre_reset(struct ata_link *link, unsigned long deadline) ...@@ -115,7 +115,8 @@ static int jmicron_pre_reset(struct ata_link *link, unsigned long deadline)
static void jmicron_error_handler(struct ata_port *ap) static void jmicron_error_handler(struct ata_port *ap)
{ {
return ata_bmdma_drive_eh(ap, jmicron_pre_reset, ata_std_softreset, NULL, ata_std_postreset); ata_bmdma_drive_eh(ap, jmicron_pre_reset, ata_std_softreset, NULL,
ata_std_postreset);
} }
/* No PIO or DMA methods needed for this device */ /* No PIO or DMA methods needed for this device */
......
...@@ -1278,8 +1278,6 @@ static __init int legacy_init_one(struct legacy_probe *probe) ...@@ -1278,8 +1278,6 @@ static __init int legacy_init_one(struct legacy_probe *probe)
} }
} }
fail: fail:
if (host)
ata_host_detach(host);
platform_device_unregister(pdev); platform_device_unregister(pdev);
return ret; return ret;
} }
......
...@@ -85,8 +85,8 @@ static int marvell_cable_detect(struct ata_port *ap) ...@@ -85,8 +85,8 @@ static int marvell_cable_detect(struct ata_port *ap)
static void marvell_error_handler(struct ata_port *ap) static void marvell_error_handler(struct ata_port *ap)
{ {
return ata_bmdma_drive_eh(ap, marvell_pre_reset, ata_std_softreset, ata_bmdma_drive_eh(ap, marvell_pre_reset, ata_std_softreset, NULL,
NULL, ata_std_postreset); ata_std_postreset);
} }
/* No PIO or DMA methods needed for this device */ /* No PIO or DMA methods needed for this device */
......
...@@ -1007,6 +1007,8 @@ static const struct ata_port_operations scc_pata_ops = { ...@@ -1007,6 +1007,8 @@ static const struct ata_port_operations scc_pata_ops = {
.qc_issue = ata_qc_issue_prot, .qc_issue = ata_qc_issue_prot,
.freeze = scc_bmdma_freeze, .freeze = scc_bmdma_freeze,
.thaw = ata_bmdma_thaw,
.error_handler = scc_error_handler, .error_handler = scc_error_handler,
.post_internal_cmd = scc_bmdma_stop, .post_internal_cmd = scc_bmdma_stop,
......
...@@ -1542,7 +1542,7 @@ static void mv_err_intr(struct ata_port *ap, struct ata_queued_cmd *qc) ...@@ -1542,7 +1542,7 @@ static void mv_err_intr(struct ata_port *ap, struct ata_queued_cmd *qc)
eh_freeze_mask = EDMA_EH_FREEZE_5; eh_freeze_mask = EDMA_EH_FREEZE_5;
if (edma_err_cause & EDMA_ERR_SELF_DIS_5) { if (edma_err_cause & EDMA_ERR_SELF_DIS_5) {
struct mv_port_priv *pp = ap->private_data; pp = ap->private_data;
pp->pp_flags &= ~MV_PP_FLAG_EDMA_EN; pp->pp_flags &= ~MV_PP_FLAG_EDMA_EN;
ata_ehi_push_desc(ehi, "EDMA self-disable"); ata_ehi_push_desc(ehi, "EDMA self-disable");
} }
...@@ -1550,7 +1550,7 @@ static void mv_err_intr(struct ata_port *ap, struct ata_queued_cmd *qc) ...@@ -1550,7 +1550,7 @@ static void mv_err_intr(struct ata_port *ap, struct ata_queued_cmd *qc)
eh_freeze_mask = EDMA_EH_FREEZE; eh_freeze_mask = EDMA_EH_FREEZE;
if (edma_err_cause & EDMA_ERR_SELF_DIS) { if (edma_err_cause & EDMA_ERR_SELF_DIS) {
struct mv_port_priv *pp = ap->private_data; pp = ap->private_data;
pp->pp_flags &= ~MV_PP_FLAG_EDMA_EN; pp->pp_flags &= ~MV_PP_FLAG_EDMA_EN;
ata_ehi_push_desc(ehi, "EDMA self-disable"); ata_ehi_push_desc(ehi, "EDMA self-disable");
} }
......
...@@ -543,7 +543,7 @@ static void pdc_fill_sg(struct ata_queued_cmd *qc) ...@@ -543,7 +543,7 @@ static void pdc_fill_sg(struct ata_queued_cmd *qc)
idx = 0; idx = 0;
for_each_sg(qc->sg, sg, qc->n_elem, si) { for_each_sg(qc->sg, sg, qc->n_elem, si) {
u32 addr, offset; u32 addr, offset;
u32 sg_len, len; u32 sg_len;
/* determine if physical DMA addr spans 64K boundary. /* determine if physical DMA addr spans 64K boundary.
* Note h/w doesn't support 64-bit, so we unconditionally * Note h/w doesn't support 64-bit, so we unconditionally
......
...@@ -333,8 +333,8 @@ static int vt6420_prereset(struct ata_link *link, unsigned long deadline) ...@@ -333,8 +333,8 @@ static int vt6420_prereset(struct ata_link *link, unsigned long deadline)
static void vt6420_error_handler(struct ata_port *ap) static void vt6420_error_handler(struct ata_port *ap)
{ {
return ata_bmdma_drive_eh(ap, vt6420_prereset, ata_std_softreset, ata_bmdma_drive_eh(ap, vt6420_prereset, ata_std_softreset, NULL,
NULL, ata_std_postreset); ata_std_postreset);
} }
static int vt6421_pata_cable_detect(struct ata_port *ap) static int vt6421_pata_cable_detect(struct ata_port *ap)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment