ide: dead/stale code removal
cover ide: dead/stale code removal
The following changes since commit 184b8405d5d3e8510163d66efbac99d351faba2e:
Bartlomiej Zolnierkiewicz (1):
libata: add private driver field to struct ata_device
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/bart/misc.git atang-for-2.6.33
Bartlomiej Zolnierkiewicz (28):
ide-pci-generic: build fix
ata_piix: fix MWDMA handling on PIIX3
pata_efar: fix wrong PIO timings being programmed
pata_efar: fix wrong MWDMA timings being programmed
pata_efar: MWDMA0 is unsupported
pata_cmd640: document known issues
pata_cs5520: remove dead VDMA support
pata_cypress: document known issues
pata_hpt3x2n: fix overclocked MWDMA0 timing
pata_hpt3x3: Power Management fix
pata_it8213: fix UDMA handling
pata_it8213: fix wrong PIO timings being programmed
pata_it8213: fix PIO2 underclocking
pata_it8213: fix wrong MWDMA timings being programmed
pata_it8213: fix it8213_pre_reset() documentation
pata_it8213: MWDMA0 is unsupported
pata_legacy: fix QDI6580DP support
pata_legacy: fix access to control register for QDI6580
pata_legacy: add pointers to QDI65x0 documentation
pata_marvell: fix marvell_pre_reset() documentation
pata_ns87415: Power Management fix
pata_oldpiix: MWDMA0 is unsupported
pata_pdc202xx_old: document known issues
pata_radisys: fix UDMA handling
pata_rdc: MWDMA0 is unsupported
pata_rz1000: Power Management fix
pata_sis: Power Management fix
pata_via: clear UDMA transfer mode bit for PIO and MWDMA
drivers/ata/Kconfig | 14 ++++++++++++-- drivers/ata/ata_piix.c | 6 +++--- drivers/ata/pata_cs5520.c | 39 +-------------------------------------- drivers/ata/pata_efar.c | 9 +++++---- drivers/ata/pata_hpt3x2n.c | 3 +-- drivers/ata/pata_hpt3x3.c | 11 ++++++++++- drivers/ata/pata_it8213.c | 27 +++++++++++++-------------- drivers/ata/pata_legacy.c | 14 +++++++++++--- drivers/ata/pata_marvell.c | 2 +- drivers/ata/pata_ns87415.c | 32 +++++++++++++++++++++++++++----- drivers/ata/pata_oldpiix.c | 2 +- drivers/ata/pata_radisys.c | 4 ++-- drivers/ata/pata_rdc.c | 2 +- drivers/ata/pata_rz1000.c | 11 ++++++++++- drivers/ata/pata_sis.c | 21 +++++++++++++++++++-- drivers/ata/pata_via.c | 19 +++++++++++++------ drivers/ide/ide-pci-generic.c | 2 +- 17 files changed, 131 insertions(+), 87 deletions(-)
drivers/ata/Kconfig +12 -2
@@ -287,8 +287,11 @@ config PATA_CMD640_PCI depends on PCI && EXPERIMENTAL help This option enables support for the CMD640 PCI IDE - interface chip. Only the primary channel is currently - supported. + interface chip. + + Known issues: + - only the primary channel is currently supported + - only the PCI chip interface is currently supported If unsure, say N.
@@ -344,6 +347,9 @@ config PATA_CYPRESS This option enables support for the Cypress/Contaq CY82C693 chipset found in some Alpha systems + Known issues: + - only the primary channel is currently supported + If unsure, say N. config PATA_EFAR
@@ -588,6 +594,10 @@ config PATA_PDC_OLD This option enables support for the Promise 20246, 20262, 20263, 20265 and 20267 adapters. + Known issues: + - UDMA transfers fail mysteriously on some chipsets + - ATAPI DMA is unsupported currently + If unsure, say N. config PATA_QDI
drivers/ata/ata_piix.c +3 -3
@@ -869,10 +869,10 @@ static void do_pata_set_dmamode(struct ata_port *ap, struct ata_device *adev, in (timings[pio][1 ] <<8 ); } -if (ap->udma_mask) { +if (ap->udma_mask) udma_enable &= ~(1 << devid); -pci_write_config_word (dev, master_port, master_data); - } + +pci_write_config_word (dev, master_port, master_data); }/* Don't scribble on 0x48 if the controller does not support UDMA */ if (ap->udma_mask)
drivers/ata/pata_cs5520.c +1 -38
@@ -90,48 +90,12 @@ static void cs5520_set_timings(struct ata_port *ap, struct ata_device *adev, int }/** -* cs5520_enable_dma - turn on DMA bits -* -* Turn on the DMA bits for this disk. Needed because the BIOS probably -* has not done the work for us. Belongs in the core SATA code. -*/ - -static void cs5520_enable_dma (struct ata_port *ap,struct ata_device *adev) -{ -/* Set the DMA enable/disable flag */ -u8 reg =ioread8 (ap->ioaddr.bmdma_addr +0x02 ); - reg |=1 <<(adev->devno +5 ); -iowrite8 (reg, ap->ioaddr.bmdma_addr +0x02 ); -} - -/** -* cs5520_set_dmamode - program DMA timings -* @ap: ATA port -* @adev: ATA device -* -* Program the DMA mode timings for the controller according to the pio -* clocking table. Note that this device sets the DMA timings to PIO -* mode values. This may seem bizarre but the 5520 architecture talks -* PIO mode to the disk and DMA mode to the controller so the underlying -* transfers are PIO timed. -*/ - -static void cs5520_set_dmamode (struct ata_port *ap,struct ata_device *adev) -{ -static const int dma_xlate[3 ] = {XFER_PIO_0 ,XFER_PIO_3 ,XFER_PIO_4 }; -cs5520_set_timings (ap, adev, dma_xlate[adev->dma_mode]); -cs5520_enable_dma (ap, adev); -} - -/** * cs5520_set_piomode - program PIO timings * @ap: ATA port * @adev: ATA device * * Program the PIO mode timings for the controller according to the pio -* clocking table. We know pio_mode will equal dma_mode because of the -* CS5520 architecture. At least once we turned DMA on and wrote a -* mode setter. +* clocking table. */ static void cs5520_set_piomode (struct ata_port *ap,struct ata_device *adev)
@@ -149,7 +113,6 @@ static struct ata_port_operations cs5520_port_ops = { .qc_prep = ata_sff_dumb_qc_prep, .cable_detect = ata_cable_40wire, .set_piomode = cs5520_set_piomode, - .set_dmamode = cs5520_set_dmamode, };static int __devinit cs5520_init_one (struct pci_dev *pdev,const struct pci_device_id *id)
drivers/ata/pata_efar.c +5 -4
@@ -2,6 +2,7 @@* pata_efar.c - EFAR PIIX clone controller driver * * (C) 2005 Red Hat +* (C) 2009 Bartlomiej Zolnierkiewicz * * Some parts based on ata_piix.c by Jeff Garzik and others. *
@@ -118,12 +119,12 @@ static void efar_set_piomode (struct ata_port *ap, struct ata_device *adev)int shift =4 * ap->port_no;u8 slave_data; - idetm_data &=0xCC0F ; + idetm_data &=0xFF0F ; idetm_data |= (control <<4 );/* Slave timing in separate register */ pci_read_config_byte (dev,0x44 , &slave_data); - slave_data &=0x0F << shift; + slave_data &= ap->port_no ?0x0F :0xF0 ; slave_data |= ((timings[pio][0 ] <<2 ) | timings[pio][1 ]) << shift;pci_write_config_byte (dev,0x44 , slave_data); }
@@ -200,7 +201,7 @@ static void efar_set_dmamode (struct ata_port *ap, struct ata_device *adev) master_data &=0xFF4F ;/* Mask out IORDY|TIME1|DMAONLY */ master_data |= control <<4 ;pci_read_config_byte (dev,0x44 , &slave_data); - slave_data &= (0x0F +0xE1 * ap->port_no); + slave_data &= ap->port_no ?0x0F :0xF0 ;/* Load the matching timing */ slave_data |= ((timings[pio][0 ] <<2 ) | timings[pio][1 ]) << (ap->port_no ?4 :0 );pci_write_config_byte (dev,0x44 , slave_data);
@@ -251,7 +252,7 @@ static int efar_init_one (struct pci_dev *pdev, const struct pci_device_id *ent)static const struct ata_port_info info = { .flags =ATA_FLAG_SLAVE_POSS , .pio_mask =ATA_PIO4 , - .mwdma_mask =ATA_MWDMA2 , + .mwdma_mask =ATA_MWDMA12_ONLY , .udma_mask =ATA_UDMA4 , .port_ops = &efar_ops, };
drivers/ata/pata_hpt3x2n.c +1 -2
@@ -80,14 +80,13 @@ static struct hpt_clock hpt3x2n_clocks[] = { { XFER_MW_DMA_2, 0x2c829c62 }, { XFER_MW_DMA_1, 0x2c829c66 }, - { XFER_MW_DMA_0, 0x2c829d2c }, + { XFER_MW_DMA_0, 0x2c829d2e }, { XFER_PIO_4, 0x0c829c62 }, { XFER_PIO_3, 0x0c829c84 }, { XFER_PIO_2, 0x0c829ca6 }, { XFER_PIO_1, 0x0d029d26 }, { XFER_PIO_0, 0x0d029d5e }, - { 0, 0x0d029d5e } };/**
drivers/ata/pata_hpt3x3.c +10 -1
@@ -255,8 +255,17 @@ static int hpt3x3_init_one(struct pci_dev *pdev, const struct pci_device_id *id)#ifdef CONFIG_PM static int hpt3x3_reinit_one (struct pci_dev *dev) { +struct ata_host *host =dev_get_drvdata (&dev->dev); +int rc; + + rc =ata_pci_device_do_resume (dev); +if (rc) +return rc; +hpt3x3_init_chipset (dev); -return ata_pci_device_resume (dev); + +ata_host_resume (host); +return 0 ; }#endif
drivers/ata/pata_it8213.c +13 -14
@@ -22,7 +22,7 @@#define DRV_VERSION "0.0.3"/** -* it8213_pre_reset - check for 40/80 pin +* it8213_pre_reset - probe begin * @link: link * @deadline: deadline jiffies for the operation *
@@ -92,18 +92,17 @@ static void it8213_set_piomode (struct ata_port *ap, struct ata_device *adev) { 2, 1 }, { 2, 3 }, }; -if (pio >2 ) - control |=1 ;/* TIME1 enable */ +if (pio >1 ) + control |=1 ;/* TIME */ if (ata_pio_need_iordy (adev))/* PIO 3/4 require IORDY */ - control |=2 ;/* IORDY enable */ + control |=2 ;/* IE */ /* Bit 2 is set for ATAPI on the IT8213 - reverse of ICH/PIIX */ if (adev->class !=ATA_DEV_ATA ) - control |=4 ; + control |=4 ;/* PPE */ pci_read_config_word (dev, idetm_port, &idetm_data); -/* Enable PPE, IE and TIME as appropriate */ - +/* Set PPE, IE, and TIME as appropriate */ if (adev->devno ==0 ) { idetm_data &=0xCCF0 ; idetm_data |= control;
@@ -112,17 +111,17 @@ static void it8213_set_piomode (struct ata_port *ap, struct ata_device *adev) }else {u8 slave_data; - idetm_data &=0xCC0F ; + idetm_data &=0xFF0F ; idetm_data |= (control <<4 );/* Slave timing in separate register */ pci_read_config_byte (dev,0x44 , &slave_data); slave_data &=0xF0 ; - slave_data |= ((timings[pio][0 ] <<2 ) | timings[pio][1 ]) <<4 ; + slave_data |= (timings[pio][0 ] <<2 ) | timings[pio][1 ];pci_write_config_byte (dev,0x44 , slave_data); } - idetm_data |=0x4000 ;/* Ensure SITRE is enabled */ + idetm_data |=0x4000 ;/* Ensure SITRE is set */ pci_write_config_word (dev, idetm_port, idetm_data); }
@@ -173,10 +172,10 @@ static void it8213_set_dmamode (struct ata_port *ap, struct ata_device *adev) udma_enable |= (1 << devid); -/* Load the UDMA mode number */ +/* Load the UDMA cycle time */ pci_read_config_word (dev,0x4A , &udma_timing); udma_timing &= ~(3 << (4 * devid)); - udma_timing |= (udma &3 ) << (4 * devid); + udma_timing |= u_speed << (4 * devid);pci_write_config_word (dev,0x4A , udma_timing);/* Load the clock selection */
@@ -211,7 +210,7 @@ static void it8213_set_dmamode (struct ata_port *ap, struct ata_device *adev) master_data &=0xFF4F ;/* Mask out IORDY|TIME1|DMAONLY */ master_data |= control <<4 ;pci_read_config_byte (dev,0x44 , &slave_data); - slave_data &= (0x0F +0xE1 * ap->port_no); + slave_data &=0xF0 ;/* Load the matching timing */ slave_data |= ((timings[pio][0 ] <<2 ) | timings[pio][1 ]) << (ap->port_no ?4 :0 );pci_write_config_byte (dev,0x44 , slave_data);
@@ -263,7 +262,7 @@ static int it8213_init_one (struct pci_dev *pdev, const struct pci_device_id *enstatic const struct ata_port_info info = { .flags =ATA_FLAG_SLAVE_POSS , .pio_mask =ATA_PIO4 , - .mwdma_mask =ATA_MWDMA2 , + .mwdma_mask =ATA_MWDMA12_ONLY , .udma_mask =ATA_UDMA4 ,/* FIXME: want UDMA 100? */ .port_ops = &it8213_ops, };
drivers/ata/pata_legacy.c +11 -3
@@ -25,6 +25,13 @@* http://www.ryston.cz/petr/vlb/pdc20230b.html * http://www.ryston.cz/petr/vlb/pdc20230c.html * http://www.ryston.cz/petr/vlb/pdc20630.html +* QDI65x0: +* http://www.ryston.cz/petr/vlb/qd6500.html +* http://www.ryston.cz/petr/vlb/qd6580.html +* +* QDI65x0 probe code based on drivers/ide/legacy/qd65xx.c +* Rewritten from the work of Colten Edwards <[email protected]> by +* Samuel Thibault <[email protected]> * * Unsupported but docs exist: * Appian/Adaptec AIC25VL01/Cirrus Logic PD7220
@@ -35,7 +42,7 @@* the MPIIX where the tuning is PCI side but the IDE is "ISA side". * * Specific support is included for the ht6560a/ht6560b/opti82c611a/ -* opti82c465mv/promise 20230c/20630/winbond83759A +* opti82c465mv/promise 20230c/20630/qdi65x0/winbond83759A * * Use the autospeed and pio_mask options with: * Appian ADI/2 aka CLPD7220 or AIC25VL01.
@@ -672,7 +679,7 @@ static void qdi6580dp_set_piomode(struct ata_port *ap, struct ata_device *adev)outb (timing, ld_qdi->timing +2 * ap->port_no);/* Clear the FIFO */ if (adev->class !=ATA_DEV_ATA ) -outb (0x5F , ld_qdi->timing +3 ); +outb (0x5F , (ld_qdi->timing &0xFFF0 ) +3 ); }/**
@@ -707,7 +714,7 @@ static void qdi6580_set_piomode(struct ata_port *ap, struct ata_device *adev)outb (timing, ld_qdi->timing +2 * adev->devno);/* Clear the FIFO */ if (adev->class !=ATA_DEV_ATA ) -outb (0x5F , ld_qdi->timing +3 ); +outb (0x5F , (ld_qdi->timing &0xFFF0 ) +3 ); }/**
@@ -787,6 +794,7 @@ static struct ata_port_operations qdi6580_port_ops = {static struct ata_port_operations qdi6580dp_port_ops = { .inherits = &legacy_base_port_ops, .set_piomode = qdi6580dp_set_piomode, + .qc_issue = qdi_qc_issue, .sff_data_xfer = vlb32_data_xfer, };
drivers/ata/pata_marvell.c +1 -1
@@ -58,7 +58,7 @@ static int marvell_pata_active(struct pci_dev *pdev) }/** -* marvell_pre_reset - check for 40/80 pin +* marvell_pre_reset - probe begin * @link: link * @deadline: deadline jiffies for the operation *
drivers/ata/pata_ns87415.c +27 -5
@@ -325,6 +325,13 @@ static struct scsi_host_template ns87415_sht = { ATA_BMDMA_SHT(DRV_NAME), }; +static void ns87415_fixup (struct pci_dev *pdev) +{ +/* Select 512 byte sectors */ +pci_write_config_byte (pdev,0x55 ,0xEE ); +/* Select PIO0 8bit clocking */ +pci_write_config_byte (pdev,0x54 ,0xB7 ); +}/** * ns87415_init_one - Register 87415 ATA PCI device with kernel services
@@ -371,10 +378,8 @@ static int ns87415_init_one (struct pci_dev *pdev, const struct pci_device_id *eif (rc)return rc; -/* Select 512 byte sectors */ -pci_write_config_byte (pdev,0x55 ,0xEE ); -/* Select PIO0 8bit clocking */ -pci_write_config_byte (pdev,0x54 ,0xB7 ); +ns87415_fixup (pdev); +return ata_pci_sff_init_one (pdev, ppi, &ns87415_sht,NULL ); }
@@ -384,6 +389,23 @@ static const struct pci_device_id ns87415_pci_tbl[] = { { }/* terminate list */ }; +#ifdef CONFIG_PM +static int ns87415_reinit_one (struct pci_dev *pdev) +{ +struct ata_host *host =dev_get_drvdata (&pdev->dev); +int rc; + + rc =ata_pci_device_do_resume (pdev); +if (rc) +return rc; + +ns87415_fixup (pdev); + +ata_host_resume (host); +return 0 ; +} +#endif +static struct pci_driver ns87415_pci_driver = { .name =DRV_NAME , .id_table = ns87415_pci_tbl,
@@ -391,7 +413,7 @@ static struct pci_driver ns87415_pci_driver = { .remove = ata_pci_remove_one, #ifdef CONFIG_PM .suspend = ata_pci_device_suspend, - .resume = ata_pci_device_resume, + .resume = ns87415_reinit_one,#endif };
drivers/ata/pata_oldpiix.c +1 -1
@@ -239,7 +239,7 @@ static int oldpiix_init_one (struct pci_dev *pdev, const struct pci_device_id *estatic const struct ata_port_info info = { .flags =ATA_FLAG_SLAVE_POSS , .pio_mask =ATA_PIO4 , - .mwdma_mask =ATA_MWDMA2 , + .mwdma_mask =ATA_MWDMA12_ONLY , .port_ops = &oldpiix_pata_ops, };const struct ata_port_info *ppi[] = { &info,NULL };
drivers/ata/pata_radisys.c +2 -2
@@ -139,9 +139,9 @@ static void radisys_set_dmamode (struct ata_port *ap, struct ata_device *adev)pci_read_config_byte (dev,0x4A , &udma_mode);if (adev->xfer_mode ==XFER_UDMA_2 ) - udma_mode &= ~ (1 << adev->devno); + udma_mode &= ~(2 << (adev->devno *4 ));else /* UDMA 4 */ - udma_mode |= (1 << adev->devno); + udma_mode |= (2 << (adev->devno *4 ));pci_write_config_byte (dev,0x4A , udma_mode);
drivers/ata/pata_rdc.c +1 -1
@@ -284,7 +284,7 @@ static struct ata_port_info rdc_port_info = { .flags = ATA_FLAG_SLAVE_POSS, .pio_mask = ATA_PIO4, - .mwdma_mask = ATA_MWDMA2, + .mwdma_mask = ATA_MWDMA12_ONLY, .udma_mask = ATA_UDMA5, .port_ops = &rdc_pata_ops, };
drivers/ata/pata_rz1000.c +10 -1
@@ -105,11 +105,20 @@ static int rz1000_init_one (struct pci_dev *pdev, const struct pci_device_id *en#ifdef CONFIG_PM static int rz1000_reinit_one (struct pci_dev *pdev) { +struct ata_host *host =dev_get_drvdata (&pdev->dev); +int rc; + + rc =ata_pci_device_do_resume (pdev); +if (rc) +return rc; +/* If this fails on resume (which is a "cant happen" case), we must stop as any progress risks data loss */ if (rz1000_fifo_disable (pdev))panic ("rz1000 fifo" ); -return ata_pci_device_resume (pdev); + +ata_host_resume (host); +return 0 ; }#endif
drivers/ata/pata_sis.c +19 -2
@@ -2,7 +2,7 @@* pata_sis.c - SiS ATA driver * * (C) 2005 Red Hat -* (C) 2007 Bartlomiej Zolnierkiewicz +* (C) 2007,2009 Bartlomiej Zolnierkiewicz * * Based upon linux/drivers/ide/pci/sis5513.c * Copyright (C) 1999-2000 Andre Hedrick <[email protected]>
@@ -876,6 +876,23 @@ static int sis_init_one (struct pci_dev *pdev, const struct pci_device_id *ent)return ata_pci_sff_init_one (pdev, ppi, &sis_sht, chipset); } +#ifdef CONFIG_PM +static int sis_reinit_one (struct pci_dev *pdev) +{ +struct ata_host *host =dev_get_drvdata (&pdev->dev); +int rc; + + rc =ata_pci_device_do_resume (pdev); +if (rc) +return rc; + +sis_fixup (pdev, host->private_data); + +ata_host_resume (host); +return 0 ; +} +#endif +static const struct pci_device_id sis_pci_tbl[] = { {PCI_VDEVICE (SI ,0x5513 ), },/* SiS 5513 */ {PCI_VDEVICE (SI ,0x5518 ), },/* SiS 5518 */
@@ -891,7 +908,7 @@ static struct pci_driver sis_pci_driver = { .remove = ata_pci_remove_one, #ifdef CONFIG_PM .suspend = ata_pci_device_suspend, - .resume = ata_pci_device_resume, + .resume = sis_reinit_one,#endif };
drivers/ata/pata_via.c +13 -6
@@ -303,14 +303,21 @@ static void via_do_set_mode(struct ata_port *ap, struct ata_device *adev, int mo }/* Set UDMA unless device is not UDMA capable */ -if (udma_type && t.udma) { -u8 cable80_status; +if (udma_type) { +u8 udma_etc; -/* Get 80-wire cable detection bit */ -pci_read_config_byte (pdev,0x50 + offset, &cable80_status); - cable80_status &=0x10 ; +pci_read_config_byte (pdev,0x50 + offset, &udma_etc); -pci_write_config_byte (pdev,0x50 + offset, ut | cable80_status); +/* clear transfer mode bit */ + udma_etc &= ~0x20 ; + +if (t.udma) { +/* preserve 80-wire cable detection bit */ + udma_etc &=0x10 ; + udma_etc |= ut; + } + +pci_write_config_byte (pdev,0x50 + offset, udma_etc); } }
drivers/ide/ide-pci-generic.c +1 -1
@@ -165,7 +165,7 @@ static const struct pci_device_id generic_pci_tbl[] = { { PCI_VDEVICE(TOSHIBA, PCI_DEVICE_ID_TOSHIBA_PICCOLO_1), 4 }, { PCI_VDEVICE(TOSHIBA, PCI_DEVICE_ID_TOSHIBA_PICCOLO_2), 4 }, { PCI_VDEVICE(TOSHIBA, PCI_DEVICE_ID_TOSHIBA_PICCOLO_3), 4 }, - { PCI_VDEVICE(TOSHIBA, PCI_DEVICE_ID_TOSHIBA_PICCOLO_5) 4 }, + { PCI_VDEVICE(TOSHIBA, PCI_DEVICE_ID_TOSHIBA_PICCOLO_5), 4 }, { PCI_VDEVICE(NETCELL, PCI_DEVICE_ID_REVOLUTION), 6 },/* * Must come last. If you add entries adjust
PATCH 1/6 alim15x3: remove obsolete and dangerous wdc_udma parameter
From: Bartlomiej Zolnierkiewicz <[email protected]>
Subject: [PATCH] alim15x3: remove obsolete and dangerous wdc_udma parameter
--- drivers/ide/alim15x3.c | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-)
drivers/ide/alim15x3.c +1 -11
@@ -40,16 +40,6 @@#define DRV_NAME "alim15x3"/* -* Allow UDMA on M1543C-E chipset for WDC disks that ignore CRC checking -* (this is DANGEROUS and could result in data corruption). -*/ -static int wdc_udma; - -module_param (wdc_udma, bool,0 ); -MODULE_PARM_DESC (wdc_udma, -"allow UDMA on M1543C-E chipset for WDC disks (DANGEROUS)" ); - -/* * ALi devices are not plug in. Otherwise these static values would * need to go. They ought to go away anyway */
@@ -132,7 +122,7 @@ static u8 ali_udma_filter(ide_drive_t *dif (m5229_revision >0x20 && m5229_revision <0xC2 ) {if (drive->media != ide_disk)return 0 ; -if (wdc_udma ==0 && chip_is_1543c_e && +if (chip_is_1543c_e &&strstr ((char *)&drive->id[ATA_ID_PROD ],"WDC " ))return 0 ; }
PATCH 2/6 cmd64x: remove no longer needed debugging code
In reply to Bartlomiej ZolnierkiewiczFrom: Bartlomiej Zolnierkiewicz <[email protected]>
Subject: [PATCH] cmd64x: remove no longer needed debugging code
--- drivers/ide/cmd64x.c | 17 ----------------- 1 file changed, 17 deletions(-)
drivers/ide/cmd64x.c +0 -17
@@ -20,14 +20,6 @@#define DRV_NAME "cmd64x" -#define CMD_DEBUG 0 - -#if CMD_DEBUG -#define cmdprintk(x...) printk(x) -#else -#define cmdprintk(x...) -#endif -/* * CMD64x specific registers definition. */
@@ -76,9 +68,6 @@ static void program_cycle_times (ide_dri {15, 15, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 0};static const u8 drwtim_regs[4 ] = {DRWTIM0 ,DRWTIM1 ,DRWTIM2 ,DRWTIM3 }; -cmdprintk ("program_cycle_times parameters: total=%d, active=%d\n" , - cycle_time, active_time); - cycle_count =quantize_timing ( cycle_time, clock_time); active_count =quantize_timing (active_time, clock_time); recovery_count = cycle_count - active_count;
@@ -94,9 +83,6 @@ static void program_cycle_times (ide_driif (active_count >16 )/* shouldn't actually happen... */ active_count =16 ; -cmdprintk ("Final counts: total=%d, active=%d, recovery=%d\n" , - cycle_count, active_count, recovery_count); -/* * Convert values to internal chipset representation */
@@ -106,7 +92,6 @@ static void program_cycle_times (ide_dri/* Program the active/recovery counts into the DRWTIM register */ drwtim = (active_count <<4 ) | recovery_count; (void )pci_write_config_byte (dev, drwtim_regs[drive->dn], drwtim); -cmdprintk ("Write 0x%02x to reg 0x%x\n" , drwtim, drwtim_regs[drive->dn]); }/*
@@ -150,7 +135,6 @@ static void cmd64x_tune_pio(ide_drive_tif (setup_count >5 )/* shouldn't actually happen... */ setup_count =5 ; -cmdprintk ("Final address setup count: %d\n" , setup_count);/* * Program the address setup clocks into the ARTTIM registers.
@@ -162,7 +146,6 @@ static void cmd64x_tune_pio(ide_drive_t arttim &= ~0xc0 ; arttim |= setup_values[setup_count]; (void )pci_write_config_byte (dev, arttim_regs[drive->dn], arttim); -cmdprintk ("Write 0x%02x to reg 0x%x\n" , arttim, arttim_regs[drive->dn]); }/*
Re: [PATCH 2/6] cmd64x: remove no longer needed debugging code
Hello.
Quoted 4 lines · Bartlomiej Zolnierkiewicz
From: Bartlomiej Zolnierkiewicz <[email protected]>
Subject: [PATCH] cmd64x: remove no longer needed debugging codeSigned-off-by Bartlomiej Zolnierkiewicz <bzolnier@gmail.
MBR, Sergei
PATCH 3/6 cy82c693: remove no longer needed debugging code
In reply to Bartlomiej ZolnierkiewiczFrom: Bartlomiej Zolnierkiewicz <[email protected]>
Subject: [PATCH] cy82c693: remove no longer needed debugging code
--- drivers/ide/cy82c693.c | 27 --------------------------- 1 file changed, 27 deletions(-)
drivers/ide/cy82c693.c +0 -27
@@ -51,11 +51,6 @@#define DRV_NAME "cy82c693"/* -* The following are used to debug the driver. -*/ -#define CY82C693_DEBUG_INFO 0 - -/* * NOTE: the value for busmaster timeout is tricky and I got it by * trial and error! By using a to low value will cause DMA timeouts * and drop IDE performance, and by using a to high value will cause
@@ -176,11 +171,6 @@ static void cy82c693_set_dma_mode(ide_droutb (index,CY82_INDEX_PORT );outb (data,CY82_DATA_PORT ); -#if CY82C693_DEBUG_INFO -printk (KERN_INFO "%s (ch=%d, dev=%d): set DMA mode to %d (single=%d)\n" , - drive->name, hwif->channel, drive->dn &1 , mode &3 , single); -#endif /* CY82C693_DEBUG_INFO */ -/* * note: below we set the value for Bus Master IDE TimeOut Register * I'm not absolutly sure what this does, but it solved my problem
@@ -194,11 +184,6 @@ static void cy82c693_set_dma_mode(ide_dr data =BUSMASTER_TIMEOUT ;outb (CY82_INDEX_TIMEOUT ,CY82_INDEX_PORT );outb (data,CY82_DATA_PORT ); - -#if CY82C693_DEBUG_INFO -printk (KERN_INFO "%s: Set IDE Bus Master TimeOut Register to 0x%X\n" , - drive->name, data); -#endif /* CY82C693_DEBUG_INFO */ }static void cy82c693_set_pio_mode (ide_drive_t *drive,const u8 pio)
@@ -239,8 +224,6 @@ static void cy82c693_set_pio_mode(ide_drpci_write_config_byte (dev,CY82_IDE_MASTER_IOR , pclk.time_16r);pci_write_config_byte (dev,CY82_IDE_MASTER_IOW , pclk.time_16w);pci_write_config_byte (dev,CY82_IDE_MASTER_8BIT , pclk.time_8); - - addrCtrl &=0xF ; }else {/* * set slave drive
@@ -257,17 +240,7 @@ static void cy82c693_set_pio_mode(ide_drpci_write_config_byte (dev,CY82_IDE_SLAVE_IOR , pclk.time_16r);pci_write_config_byte (dev,CY82_IDE_SLAVE_IOW , pclk.time_16w);pci_write_config_byte (dev,CY82_IDE_SLAVE_8BIT , pclk.time_8); - - addrCtrl >>=4 ; - addrCtrl &=0xF ; } - -#if CY82C693_DEBUG_INFO -printk (KERN_INFO "%s (ch=%d, dev=%d): set PIO timing to " -"(addr=0x%X, ior=0x%X, iow=0x%X, 8bit=0x%X)\n" , - drive->name, hwif->channel, drive->dn &1 , - addrCtrl, pclk.time_16r, pclk.time_16w, pclk.time_8); -#endif /* CY82C693_DEBUG_INFO */ }static void __devinit init_iops_cy82c693 (ide_hwif_t *hwif)
PATCH 4/6 pdc202xx_old: remove no longer needed debugging code
In reply to Bartlomiej ZolnierkiewiczFrom: Bartlomiej Zolnierkiewicz <[email protected]>
Subject: [PATCH] pdc202xx_old: remove no longer needed debugging code
--- drivers/ide/pdc202xx_old.c | 15 --------------- 1 file changed, 15 deletions(-)
drivers/ide/pdc202xx_old.c +0 -15
@@ -21,8 +21,6 @@#define DRV_NAME "pdc202xx_old" -#define PDC202XX_DEBUG_DRIVE_INFO 0 -static void pdc_old_disable_66MHz_clock (ide_hwif_t *);static void pdc202xx_set_mode (ide_drive_t *drive,const u8 speed)
@@ -34,11 +32,6 @@ static void pdc202xx_set_mode(ide_drive_u8 AP =0 ,BP =0 ,CP =0 ;u8 TA =0 ,TB =0 ,TC =0 ; -#if PDC202XX_DEBUG_DRIVE_INFO -u32 drive_conf =0 ; -pci_read_config_dword (dev, drive_pci, &drive_conf); -#endif -/* * TODO: do this once per channel */
@@ -89,14 +82,6 @@ static void pdc202xx_set_mode(ide_drive_pci_write_config_byte (dev, drive_pci +1 ,BP |TB );pci_write_config_byte (dev, drive_pci +2 ,CP |TC ); } - -#if PDC202XX_DEBUG_DRIVE_INFO -printk (KERN_DEBUG "%s: %s drive%d 0x%08x " , - drive->name,ide_xfer_verbose (speed), - drive->dn, drive_conf); -pci_read_config_dword (dev, drive_pci, &drive_conf); -printk ("0x%08x\n" , drive_conf); -#endif }static void pdc202xx_set_pio_mode (ide_drive_t *drive,const u8 pio)
Re: [PATCH 4/6] pdc202xx_old: remove no longer needed debugging code
Hello.
Quoted 6 lines · Bartlomiej Zolnierkiewicz
From: Bartlomiej Zolnierkiewicz <[email protected]>
Subject: [PATCH]pdc202xx_old: remove no longer needed debugging codeSigned-off-by Bartlomiej Zolnierkiewicz <[email protected]>
MBR, Sergei
PATCH 5/6 sis5513: remove stale TODO
In reply to Bartlomiej ZolnierkiewiczFrom: Bartlomiej Zolnierkiewicz <[email protected]>
Subject: [PATCH] sis5513: remove stale TODO
--- drivers/ide/sis5513.c | 9 --------- 1 file changed, 9 deletions(-)
drivers/ide/sis5513.c +0 -9
@@ -632,12 +632,3 @@ module_exit(sis5513_ide_exit);MODULE_AUTHOR ("Lionel Bouton, L C Chang, Andre Hedrick, Vojtech Pavlik" );MODULE_DESCRIPTION ("PCI driver module for SIS IDE" );MODULE_LICENSE ("GPL" ); - -/* -* TODO: -* - CLEANUP -* - More checks in the config registers (force values instead of -* relying on the BIOS setting them correctly). -* - Further optimisations ? -* . for example ATA66+ regs 0x48 & 0x4A -*/
PATCH 6/6 sl82c105: remove no longer needed debugging code
In reply to Bartlomiej ZolnierkiewiczFrom: Bartlomiej Zolnierkiewicz <[email protected]>
Subject: [PATCH] sl82c105: remove no longer needed debugging code
--- drivers/ide/sl82c105.c | 24 +----------------------- 1 file changed, 1 insertion(+), 23 deletions(-)
drivers/ide/sl82c105.c +1 -23
@@ -24,13 +24,6 @@#define DRV_NAME "sl82c105" -#undef DEBUG - -#ifdef DEBUG -#define DBG (arg) printk arg -#else -#define DBG (fmt,...) -#endif /* * SL82C105 PCI config register 0x40 bits. */
@@ -104,9 +97,6 @@ static void sl82c105_set_dma_mode(ide_drunsigned long timings = (unsigned long )ide_get_drivedata (drive);u16 drv_ctrl; -DBG (("sl82c105_tune_chipset(drive:%s, speed:%s)\n" , - drive->name,ide_xfer_verbose (speed))); - drv_ctrl = mwdma_timings[speed -XFER_MW_DMA_0 ];/*
@@ -196,8 +186,6 @@ static void sl82c105_dma_start(ide_drivestruct pci_dev *dev =to_pci_dev (hwif->dev);int reg =0x44 + drive->dn *4 ; -DBG (("%s(drive:%s)\n" , __func__, drive->name)); -pci_write_config_word (dev, reg, (unsigned long )ide_get_drivedata (drive) >>16 );
@@ -209,8 +197,6 @@ static void sl82c105_dma_clear(ide_drive {struct pci_dev *dev =to_pci_dev (drive->hwif->dev); -DBG (("sl82c105_dma_clear(drive:%s)\n" , drive->name)); -sl82c105_reset_host (dev); }
@@ -218,11 +204,7 @@ static int sl82c105_dma_end(ide_drive_t {struct pci_dev *dev =to_pci_dev (drive->hwif->dev);int reg =0x44 + drive->dn *4 ; -int ret; - -DBG (("%s(drive:%s)\n" , __func__, drive->name)); - - ret =ide_dma_end (drive); +int ret =ide_dma_end (drive);pci_write_config_word (dev, reg, (unsigned long )ide_get_drivedata (drive));
@@ -239,8 +221,6 @@ static void sl82c105_resetproc(ide_drivestruct pci_dev *dev =to_pci_dev (drive->hwif->dev);u32 val; -DBG (("sl82c105_resetproc(drive:%s)\n" , drive->name)); -pci_read_config_dword (dev,0x40 , &val); val |= (CTRL_P1F16 |CTRL_P0F16 );pci_write_config_dword (dev,0x40 , val);
@@ -291,8 +271,6 @@ static int init_chipset_sl82c105(struct {u32 val; -DBG (("init_chipset_sl82c105()\n" )); -pci_read_config_dword (dev,0x40 , &val); val |=CTRL_P0EN |CTRL_P0F16 |CTRL_P1F16 ;pci_write_config_dword (dev,0x40 , val);
Re: [PATCH 6/6] sl82c105: remove no longer needed debugging code
Hello.
Quoted 4 lines · Bartlomiej Zolnierkiewicz
From: Bartlomiej Zolnierkiewicz <[email protected]>
Subject: [PATCH] sl82c105: remove no longer needed debugging codeSigned-off-by Bartlomiej Zolnierkiewicz <[email protected]>
MBR, Sergei
<mailto:[email protected]>
[ uh, this time using the correct file, sorry for the noise ]
Hi,
Just a small cleanup removing dead/stale code from few IDE host drivers (it makes comparisions between old/new drivers and porting fixes in both directions much easier).
The following changes since commit 22763c5cf3690a681551162c15d34d935308c8d7:
Linus Torvalds (1):
Linux 2.6.32
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/bart/misc.git ide-dcr
Bartlomiej Zolnierkiewicz (6):
alim15x3: remove obsolete and dangerous wdc_udma parameter
cmd64x: remove no longer needed debugging code
cy82c693: remove no longer needed debugging code
pdc202xx_old: remove no longer needed debugging code
sis5513: remove stale TODO
sl82c105: remove no longer needed debugging code
drivers/ide/alim15x3.c | 12 +----------- drivers/ide/cmd64x.c | 17 ----------------- drivers/ide/cy82c693.c | 27 --------------------------- drivers/ide/pdc202xx_old.c | 15 --------------- drivers/ide/sis5513.c | 9 --------- drivers/ide/sl82c105.c | 24 +----------------------- 6 files changed, 2 insertions(+), 102 deletions(-)
From: Bartlomiej Zolnierkiewicz <[email protected]>
Date: Thu, 3 Dec 2009 20:54:49 +0100
Quoted 2 lines
[ uh, this time using the correct file, sorry for the noise ]
Looks better :-)
Quoted 3 lines
Just a small cleanup removing dead/stale code from few IDE host drivers (it makes comparisions between old/new drivers and porting fixes in both directions much easier).
...
Quoted 3 lines
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/bart/misc.gitide-dcr
Pulled, thanks a lot Bart.
From: Bartlomiej Zolnierkiewicz <[email protected]>
Date: Thu, 03 Dec 2009 20:51:45 +0100
Quoted 7 lines
The following changes since commit
184b8405d5d3e8510163d66efbac99d351faba2e:
Bartlomiej Zolnierkiewicz (1):
libata: add private driver field to structata_deviceare available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/bart/misc.gitatang-for-2.6.33
I think you've swapped which GIT tree you're meaning to report here.