From patchwork Thu Feb 4 13:44:14 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartlomiej Zolnierkiewicz X-Patchwork-Id: 578930 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id EE244140B04 for ; Fri, 5 Feb 2016 00:48:22 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S966194AbcBDNsU (ORCPT ); Thu, 4 Feb 2016 08:48:20 -0500 Received: from mailout1.samsung.com ([203.254.224.24]:52826 "EHLO mailout1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965233AbcBDNsR (ORCPT ); Thu, 4 Feb 2016 08:48:17 -0500 Received: from epcpsbgm2new.samsung.com (epcpsbgm2 [203.254.230.27]) by mailout1.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTP id <0O20023XCZMTUK40@mailout1.samsung.com>; Thu, 04 Feb 2016 22:47:23 +0900 (KST) X-AuditID: cbfee61b-f793c6d00000236c-64-56b3566b755a Received: from epmmp2 ( [203.254.227.17]) by epcpsbgm2new.samsung.com (EPCPMTA) with SMTP id 88.11.09068.B6653B65; Thu, 4 Feb 2016 22:47:23 +0900 (KST) Received: from AMDC1976.DIGITAL.local ([106.120.53.102]) by mmp2.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTPA id <0O20008WTZIX2L80@mmp2.samsung.com>; Thu, 04 Feb 2016 22:47:23 +0900 (KST) From: Bartlomiej Zolnierkiewicz To: "David S. Miller" Cc: linux-ide@vger.kernel.org, linux-kernel@vger.kernel.org, Tejun Heo , Alan Cox , Sergei Shtylyov , b.zolnierkie@samsung.com Subject: [RFC PATCH 17/19] ide: remove deprecated triflex host driver Date: Thu, 04 Feb 2016 14:44:14 +0100 Message-id: <1454593456-3162-18-git-send-email-b.zolnierkie@samsung.com> X-Mailer: git-send-email 1.9.1 In-reply-to: <1454593456-3162-1-git-send-email-b.zolnierkie@samsung.com> References: <1454593456-3162-1-git-send-email-b.zolnierkie@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprDLMWRmVeSWpSXmKPExsVy+t9jQd3ssM1hBm39xhYbZ6xntZhzvoXF YtKUv2wWx3Y8YrK4vGsOm8WZVbfYLX4tP8rowO7xYOp/Jo8tK28yeWxa1cnm0XpyE6tH35ZV jB6fN8kFsEVx2aSk5mSWpRbp2yVwZazam1UwyaBixa69zA2MC9S7GDk5JARMJLYtvsMEYYtJ XLi3nq2LkYtDSGAWo8SdG/MYIZxfjBI9PzeygVSxCVhJTGxfxQhiiwhoS6w70MMKUsQscJFR 4tjN8+wgCWEBV4nNe0ESnBwsAqoSuxffBVvBK+Ahcbb5OzvEOjmJk8cmg9VwAsU33W0AqxES cJdoOnyJeQIj7wJGhlWMEqkFyQXFSem5Rnmp5XrFibnFpXnpesn5uZsYwWH2THoH4+Fd7ocY BTgYlXh4Gzw3hQmxJpYVV+YeYpTgYFYS4X0RuDlMiDclsbIqtSg/vqg0J7X4EKM0B4uSOO/j /+vChATSE0tSs1NTC1KLYLJMHJxSDYyLX62O/M+kYvDGZ8qKxcs/FmycrLLg/Y5lPxm+Hny4 Z2GhhJ2j+fTYzYyXPCLWsjBK1Ni7eGUzcVuHpCxRVAtZpxAv0NpRNu89o1bf5GVP/m/mPrd2 UYSG0xOVS1mniy4E3FLlucBb1TG9fGWF02uZ2shp0+f03eI5LZuq1nm74MeVTybqVV1KLMUZ iYZazEXFiQD3u5eiLwIAAA== Sender: linux-ide-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-ide@vger.kernel.org IDE subsystem has been deprecated since 2009 and the majority (if not all) of Linux distributions have switched to use libata for ATA support exclusively. The replacement driver (pata_triflex) has been available since 2006 and it supports all the hardware supported by the old triflex host driver. Remove the deprecated triflex host driver. Signed-off-by: Bartlomiej Zolnierkiewicz --- drivers/ide/Kconfig | 7 --- drivers/ide/Makefile | 1 - drivers/ide/triflex.c | 155 -------------------------------------------------- 3 files changed, 163 deletions(-) delete mode 100644 drivers/ide/triflex.c diff --git a/drivers/ide/Kconfig b/drivers/ide/Kconfig index c92d5d1..486601c 100644 --- a/drivers/ide/Kconfig +++ b/drivers/ide/Kconfig @@ -360,13 +360,6 @@ config BLK_DEV_CMD64X Say Y here if you have an IDE controller which uses any of these chipsets: CMD643, CMD646, or CMD648. -config BLK_DEV_TRIFLEX - tristate "Compaq Triflex IDE support" - select BLK_DEV_IDEDMA_PCI - help - Say Y here if you have a Compaq Triflex IDE controller, such - as those commonly found on Compaq Pentium-Pro systems - config BLK_DEV_CY82C693 tristate "CY82C693 chipset support" depends on ALPHA diff --git a/drivers/ide/Makefile b/drivers/ide/Makefile index 1ff2f8a..0f3cc1a 100644 --- a/drivers/ide/Makefile +++ b/drivers/ide/Makefile @@ -48,7 +48,6 @@ obj-$(CONFIG_BLK_DEV_SGIIOC4) += sgiioc4.o obj-$(CONFIG_BLK_DEV_SIIMAGE) += siimage.o obj-$(CONFIG_BLK_DEV_SL82C105) += sl82c105.o obj-$(CONFIG_BLK_DEV_TC86C001) += tc86c001.o -obj-$(CONFIG_BLK_DEV_TRIFLEX) += triflex.o obj-$(CONFIG_BLK_DEV_TRM290) += trm290.o obj-$(CONFIG_BLK_DEV_VIA82CXXX) += via82cxxx.o diff --git a/drivers/ide/triflex.c b/drivers/ide/triflex.c deleted file mode 100644 index 7f1af94..0000000 --- a/drivers/ide/triflex.c +++ /dev/null @@ -1,155 +0,0 @@ -/* - * IDE Chipset driver for the Compaq TriFlex IDE controller. - * - * Known to work with the Compaq Workstation 5x00 series. - * - * Copyright (C) 2002 Hewlett-Packard Development Group, L.P. - * Author: Torben Mathiasen - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * Loosely based on the piix & svwks drivers. - * - * Documentation: - * Not publicly available. - */ - -#include -#include -#include -#include -#include -#include - -#define DRV_NAME "triflex" - -static void triflex_set_mode(ide_hwif_t *hwif, ide_drive_t *drive) -{ - struct pci_dev *dev = to_pci_dev(hwif->dev); - u32 triflex_timings = 0; - u16 timing = 0; - u8 channel_offset = hwif->channel ? 0x74 : 0x70, unit = drive->dn & 1; - - pci_read_config_dword(dev, channel_offset, &triflex_timings); - - switch (drive->dma_mode) { - case XFER_MW_DMA_2: - timing = 0x0103; - break; - case XFER_MW_DMA_1: - timing = 0x0203; - break; - case XFER_MW_DMA_0: - timing = 0x0808; - break; - case XFER_SW_DMA_2: - case XFER_SW_DMA_1: - case XFER_SW_DMA_0: - timing = 0x0f0f; - break; - case XFER_PIO_4: - timing = 0x0202; - break; - case XFER_PIO_3: - timing = 0x0204; - break; - case XFER_PIO_2: - timing = 0x0404; - break; - case XFER_PIO_1: - timing = 0x0508; - break; - case XFER_PIO_0: - timing = 0x0808; - break; - } - - triflex_timings &= ~(0xFFFF << (16 * unit)); - triflex_timings |= (timing << (16 * unit)); - - pci_write_config_dword(dev, channel_offset, triflex_timings); -} - -static void triflex_set_pio_mode(ide_hwif_t *hwif, ide_drive_t *drive) -{ - drive->dma_mode = drive->pio_mode; - triflex_set_mode(hwif, drive); -} - -static const struct ide_port_ops triflex_port_ops = { - .set_pio_mode = triflex_set_pio_mode, - .set_dma_mode = triflex_set_mode, -}; - -static const struct ide_port_info triflex_device = { - .name = DRV_NAME, - .enablebits = {{0x80, 0x01, 0x01}, {0x80, 0x02, 0x02}}, - .port_ops = &triflex_port_ops, - .pio_mask = ATA_PIO4, - .swdma_mask = ATA_SWDMA2, - .mwdma_mask = ATA_MWDMA2, -}; - -static int triflex_init_one(struct pci_dev *dev, const struct pci_device_id *id) -{ - return ide_pci_init_one(dev, &triflex_device, NULL); -} - -static const struct pci_device_id triflex_pci_tbl[] = { - { PCI_VDEVICE(COMPAQ, PCI_DEVICE_ID_COMPAQ_TRIFLEX_IDE), 0 }, - { 0, }, -}; -MODULE_DEVICE_TABLE(pci, triflex_pci_tbl); - -#ifdef CONFIG_PM -static int triflex_ide_pci_suspend(struct pci_dev *dev, pm_message_t state) -{ - /* - * We must not disable or powerdown the device. - * APM bios refuses to suspend if IDE is not accessible. - */ - pci_save_state(dev); - return 0; -} -#else -#define triflex_ide_pci_suspend NULL -#endif - -static struct pci_driver triflex_pci_driver = { - .name = "TRIFLEX_IDE", - .id_table = triflex_pci_tbl, - .probe = triflex_init_one, - .remove = ide_pci_remove, - .suspend = triflex_ide_pci_suspend, - .resume = ide_pci_resume, -}; - -static int __init triflex_ide_init(void) -{ - return ide_pci_register_driver(&triflex_pci_driver); -} - -static void __exit triflex_ide_exit(void) -{ - pci_unregister_driver(&triflex_pci_driver); -} - -module_init(triflex_ide_init); -module_exit(triflex_ide_exit); - -MODULE_AUTHOR("Torben Mathiasen"); -MODULE_DESCRIPTION("PCI driver module for Compaq Triflex IDE"); -MODULE_LICENSE("GPL"); - -