From owner-svn-src-stable@FreeBSD.ORG Wed Oct 21 16:12:10 2009 Return-Path: Delivered-To: svn-src-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6A7EF106566C; Wed, 21 Oct 2009 16:12:10 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 5838B8FC0C; Wed, 21 Oct 2009 16:12:10 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id n9LGCAw4004115; Wed, 21 Oct 2009 16:12:10 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id n9LGC9Av004111; Wed, 21 Oct 2009 16:12:09 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <200910211612.n9LGC9Av004111@svn.freebsd.org> From: Alexander Motin Date: Wed, 21 Oct 2009 16:12:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org X-SVN-Group: stable-7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r198334 - in stable/7/sys: . contrib/pf dev/ata X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 21 Oct 2009 16:12:10 -0000 Author: mav Date: Wed Oct 21 16:12:09 2009 New Revision: 198334 URL: http://svn.freebsd.org/changeset/base/198334 Log: MFC rev. 178375: Add HW level support for the Adaptec 1420SA controller. Modified: stable/7/sys/ (props changed) stable/7/sys/contrib/pf/ (props changed) stable/7/sys/dev/ata/ata-chipset.c stable/7/sys/dev/ata/ata-pci.c stable/7/sys/dev/ata/ata-pci.h Modified: stable/7/sys/dev/ata/ata-chipset.c ============================================================================== --- stable/7/sys/dev/ata/ata-chipset.c Wed Oct 21 15:57:16 2009 (r198333) +++ stable/7/sys/dev/ata/ata-chipset.c Wed Oct 21 16:12:09 2009 (r198334) @@ -1358,6 +1358,27 @@ ata_amd_chipinit(device_t dev) /* + * Adaptec chipset support functions + */ +int +ata_adaptec_ident(device_t dev) +{ + struct ata_pci_controller *ctlr = device_get_softc(dev); + static struct ata_chip_id ids[] = + {{ ATA_ADAPTEC_1420, 0, 4, MV60XX, ATA_SA300, "1420SA" }, + { 0, 0, 0, 0, 0, 0}}; + + if (!(ctlr->chip = ata_match_chip(dev, ids))) + return ENXIO; + + ata_set_desc(dev); + ctlr->chipinit = ata_marvell_edma_chipinit; + + return 0; +} + + +/* * ATI chipset support functions */ int Modified: stable/7/sys/dev/ata/ata-pci.c ============================================================================== --- stable/7/sys/dev/ata/ata-pci.c Wed Oct 21 15:57:16 2009 (r198333) +++ stable/7/sys/dev/ata/ata-pci.c Wed Oct 21 16:12:09 2009 (r198334) @@ -90,6 +90,10 @@ ata_pci_probe(device_t dev) if (!ata_amd_ident(dev)) return ATA_PROBE_OK; break; + case ATA_ADAPTEC_ID: + if (!ata_adaptec_ident(dev)) + return ATA_PROBE_OK; + break; case ATA_ATI_ID: if (!ata_ati_ident(dev)) return ATA_PROBE_OK; @@ -517,6 +521,7 @@ ata_pcivendor2str(device_t dev) case ATA_ACARD_ID: return "Acard"; case ATA_ACER_LABS_ID: return "AcerLabs"; case ATA_AMD_ID: return "AMD"; + case ATA_ADAPTEC_ID: return "Adaptec"; case ATA_ATI_ID: return "ATI"; case ATA_CYRIX_ID: return "Cyrix"; case ATA_CYPRESS_ID: return "Cypress"; Modified: stable/7/sys/dev/ata/ata-pci.h ============================================================================== --- stable/7/sys/dev/ata/ata-pci.h Wed Oct 21 15:57:16 2009 (r198333) +++ stable/7/sys/dev/ata/ata-pci.h Wed Oct 21 16:12:09 2009 (r198334) @@ -81,6 +81,14 @@ struct ata_connect_task { #define ATA_ATP865A 0x00081191 #define ATA_ATP865R 0x00091191 +#define ATA_ACER_LABS_ID 0x10b9 +#define ATA_ALI_1533 0x153310b9 +#define ATA_ALI_5229 0x522910b9 +#define ATA_ALI_5281 0x528110b9 +#define ATA_ALI_5287 0x528710b9 +#define ATA_ALI_5288 0x528810b9 +#define ATA_ALI_5289 0x528910b9 + #define ATA_AMD_ID 0x1022 #define ATA_AMD755 0x74011022 #define ATA_AMD756 0x74091022 @@ -89,13 +97,8 @@ struct ata_connect_task { #define ATA_AMD8111 0x74691022 #define ATA_AMD5536 0x209a1022 -#define ATA_ACER_LABS_ID 0x10b9 -#define ATA_ALI_1533 0x153310b9 -#define ATA_ALI_5229 0x522910b9 -#define ATA_ALI_5281 0x528110b9 -#define ATA_ALI_5287 0x528710b9 -#define ATA_ALI_5288 0x528810b9 -#define ATA_ALI_5289 0x528910b9 +#define ATA_ADAPTEC_ID 0x9005 +#define ATA_ADAPTEC_1420 0x02419005 #define ATA_ATI_ID 0x1002 #define ATA_ATI_IXP200 0x43491002 @@ -511,6 +514,7 @@ int ata_ahci_ident(device_t); int ata_acard_ident(device_t); int ata_ali_ident(device_t); int ata_amd_ident(device_t); +int ata_adaptec_ident(device_t); int ata_ati_ident(device_t); int ata_cyrix_ident(device_t); int ata_cypress_ident(device_t);