From owner-freebsd-bugs@FreeBSD.ORG Sat May 28 02:10:02 2005 Return-Path: X-Original-To: freebsd-bugs@hub.freebsd.org Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C402516A41C for ; Sat, 28 May 2005 02:10:02 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 676E643D1F for ; Sat, 28 May 2005 02:10:02 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.3/8.13.3) with ESMTP id j4S2A2W7017711 for ; Sat, 28 May 2005 02:10:02 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.3/8.13.1/Submit) id j4S2A2bg017706; Sat, 28 May 2005 02:10:02 GMT (envelope-from gnats) Resent-Date: Sat, 28 May 2005 02:10:02 GMT Resent-Message-Id: <200505280210.j4S2A2bg017706@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, OOTOMO Hiroyuki Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4C95616A41C for ; Sat, 28 May 2005 02:07:25 +0000 (GMT) (envelope-from ootomo@ccsf.homeunix.org) Received: from ccsf.homeunix.org (ccsf.as.wakwak.ne.jp [61.205.237.177]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8B03043D1F for ; Sat, 28 May 2005 02:07:24 +0000 (GMT) (envelope-from ootomo@ccsf.homeunix.org) Received: from ccsf.homeunix.org (localhost.cardcaptor [127.0.0.1]) by ccsf.homeunix.org (8.13.3/8.13.3) with ESMTP id j4S28BgK023241 for ; Sat, 28 May 2005 11:08:11 +0900 (JST) (envelope-from ootomo@ccsf.homeunix.org) Received: (from ootomo@localhost) by ccsf.homeunix.org (8.13.3/8.13.3/Submit) id j4S28A7k023240; Sat, 28 May 2005 11:08:10 +0900 (JST) (envelope-from ootomo) Message-Id: <200505280208.j4S28A7k023240@ccsf.homeunix.org> Date: Sat, 28 May 2005 11:08:10 +0900 (JST) From: OOTOMO Hiroyuki To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: Subject: kern/81573: [PATCH] snd_ich cannot recognize Intel 6300ESB Audio X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: OOTOMO Hiroyuki List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 May 2005 02:10:03 -0000 >Number: 81573 >Category: kern >Synopsis: [PATCH] snd_ich cannot recognize Intel 6300ESB Audio >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Sat May 28 02:10:01 GMT 2005 >Closed-Date: >Last-Modified: >Originator: OOTOMO Hiroyuki >Release: FreeBSD 5.4-STABLE amd64 >Organization: >Environment: System: FreeBSD sakura.cardcaptor 5.4-STABLE FreeBSD 5.4-STABLE #8: Sat May 28 08:23:24 JST 2005 root@sakura.cardcaptor:/usr/obj/usr/src/sys/SMP amd64 MotherBoard: Iwill DN800-L (Intel E7525 + ICH 6300ESB) CPU: Xeon(nocona) 2.8GHz x 2 >Description: pciconf says: none5@pci0:31:5: class=0x040100 card=0x004615d4 chip=0x25a68086 rev=0x02 hdr=0x00 vendor = 'Intel Corporation' device = '6300ESB AC'97 Audio Controller' class = multimedia subclass = audio but, pcm driver cannot recognize this Audio Controller. # kldload snd_driver.ko # cat /dev/sndstat FreeBSD Audio Driver (newpcm) Installed devices: >How-To-Repeat: >Fix: I heard that 6300ESB is integration of PCI-X bridge into ICH5... --- ich.c.diff begins here --- --- sys/dev/sound/pci/ich.c.orig Wed Mar 30 10:09:21 2005 +++ sys/dev/sound/pci/ich.c Sat May 28 06:47:15 2005 @@ -44,6 +44,7 @@ #define SIS7012ID 0x70121039 /* SiS 7012 needs special handling */ #define ICH4ID 0x24c58086 /* ICH4 needs special handling too */ #define ICH5ID 0x24d58086 /* ICH5 needs to be treated as ICH4 */ +#define I6300ESBID 0x25a68086 /* 6300ESB is compatible to ICH5R? */ #define ICH6ID 0x266e8086 /* ICH6 needs to be treated as ICH4 */ /* buffer descriptor */ @@ -582,6 +583,7 @@ /* ICH4/ICH5 may fail when busmastering is enabled. Continue */ if ((pci_get_devid(sc->dev) != ICH4ID) && (pci_get_devid(sc->dev) != ICH5ID) && + (pci_get_devid(sc->dev) != I6300ESBID) && (pci_get_devid(sc->dev) != ICH6ID)) { return ENXIO; } @@ -638,6 +640,10 @@ device_set_desc(dev, "Intel ICH5 (82801EB)"); return -1000; /* allow a better driver to override us */ + case I6300ESBID: + device_set_desc(dev, "Intel 6300ESB (6300ESB)"); + return -1000; /* allow a better driver to override us */ + case ICH6ID: device_set_desc(dev, "Intel ICH6 (82801FB)"); return -1000; /* allow a better driver to override us */ @@ -727,7 +733,7 @@ */ pci_enable_busmaster(dev); - if (pci_get_devid(dev) == ICH5ID || pci_get_devid(dev) == ICH6ID) { + if (pci_get_devid(dev) == ICH5ID || pci_get_devid(dev) == I6300ESBID || pci_get_devid(dev) == ICH6ID) { sc->nambarid = PCIR_MMBAR; sc->nabmbarid = PCIR_MBBAR; sc->regtype = SYS_RES_MEMORY; --- ich.c.diff ends here --- >Release-Note: >Audit-Trail: >Unformatted: