From owner-svn-src-all@FreeBSD.ORG Tue Jan 13 01:28:15 2015 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 6CB0AD34 for ; Tue, 13 Jan 2015 01:28:15 +0000 (UTC) Received: from mail-wg0-f53.google.com (mail-wg0-f53.google.com [74.125.82.53]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 02A41C6D for ; Tue, 13 Jan 2015 01:28:14 +0000 (UTC) Received: by mail-wg0-f53.google.com with SMTP id x13so188395wgg.12 for ; Mon, 12 Jan 2015 17:28:06 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:message-id:date:user-agent:mime-version:to :subject:references:in-reply-to:content-type :content-transfer-encoding; bh=PcsYgXvK+KVdTbHmIIPA2Jc6zfqqHbFm173takTwHP0=; b=OJFPrdtc325lfRn49RqeFTtZ4bNJPDiZBs0H4uZ4dGuSFuL6phfL4ZxUsRmNC47fQy FvbUgyjXRAFlyyPpVC3ihLStjAUulM8scgkWZasXUYpJKJygFbuQg1QL6dT7OWx6aPHW PdBELsYuWvfiHclwUemu3olkK22WlQWOX7YRGGLCCigmqofRqAC7U2swDOGdDNoVVQFc fs8iXwqnvJQzwEV8sPcF0w46Dynbjlqi6Oe8RrFiVacNPx3U26uwZFHx5I9Qw/jD/md4 8RiPUqATKvEGV3B9Q7VXbPcp8TLhAzrFjeqpf8k7elpDpy8SOObV/HbNzaqScoDUAJEY 5zoA== X-Gm-Message-State: ALoCoQmqom+kjKE1jMMcxrpLWp81Eg4lY/s6Di3iEki1d7zcEiinasMD+n1djRThSiZMF5bZe266 X-Received: by 10.194.190.46 with SMTP id gn14mr110571wjc.36.1421112067015; Mon, 12 Jan 2015 17:21:07 -0800 (PST) Received: from [10.10.1.68] (82-69-141-170.dsl.in-addr.zen.co.uk. [82.69.141.170]) by mx.google.com with ESMTPSA id s9sm12249516wiz.12.2015.01.12.17.21.06 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 12 Jan 2015 17:21:06 -0800 (PST) From: Steven Hartland X-Google-Original-From: Steven Hartland Message-ID: <54B472FC.4090808@freebsd.org> Date: Tue, 13 Jan 2015 01:21:00 +0000 User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Thunderbird/31.3.0 MIME-Version: 1.0 To: Konstantin Belousov , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r277100 - head/sys/dev/ahci References: <201501130011.t0D0BvRD026054@svn.freebsd.org> In-Reply-To: <201501130011.t0D0BvRD026054@svn.freebsd.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 13 Jan 2015 01:28:15 -0000 Looks like this missed the addition of the new quirk to AHCI_Q_BIT_STRING. On 13/01/2015 00:11, Konstantin Belousov wrote: > Author: kib > Date: Tue Jan 13 00:11:56 2015 > New Revision: 277100 > URL: https://svnweb.freebsd.org/changeset/base/277100 > > Log: > Add quirk to override default BAR(5) rid for AHCI. > Use it for Cavium AHCI. > > Submitted by: Michaе┌ Stanek > Reviewed by: imp (previous version) > MFC after: 1 week > > Modified: > head/sys/dev/ahci/ahci.h > head/sys/dev/ahci/ahci_pci.c > > Modified: head/sys/dev/ahci/ahci.h > ============================================================================== > --- head/sys/dev/ahci/ahci.h Tue Jan 13 00:04:22 2015 (r277099) > +++ head/sys/dev/ahci/ahci.h Tue Jan 13 00:11:56 2015 (r277100) > @@ -572,6 +572,7 @@ enum ahci_err_type { > #define AHCI_Q_ATI_PMP_BUG 0x2000 > #define AHCI_Q_MAXIO_64K 0x4000 > #define AHCI_Q_SATA1_UNIT0 0x8000 /* need better method for this */ > +#define AHCI_Q_ABAR0 0x10000 > > #define AHCI_Q_BIT_STRING \ > "\020" \ > > Modified: head/sys/dev/ahci/ahci_pci.c > ============================================================================== > --- head/sys/dev/ahci/ahci_pci.c Tue Jan 13 00:04:22 2015 (r277099) > +++ head/sys/dev/ahci/ahci_pci.c Tue Jan 13 00:11:56 2015 (r277100) > @@ -287,6 +287,7 @@ static const struct { > {0x11841039, 0x00, "SiS 966", 0}, > {0x11851039, 0x00, "SiS 968", 0}, > {0x01861039, 0x00, "SiS 968", 0}, > + {0xa01c177d, 0x00, "ThunderX SATA", AHCI_Q_ABAR0}, > {0x00000000, 0x00, NULL, 0} > }; > > @@ -386,12 +387,16 @@ ahci_pci_attach(device_t dev) > pci_get_subvendor(dev) == 0x1043 && > pci_get_subdevice(dev) == 0x81e4) > ctlr->quirks |= AHCI_Q_SATA1_UNIT0; > - /* if we have a memory BAR(5) we are likely on an AHCI part */ > ctlr->vendorid = pci_get_vendor(dev); > ctlr->deviceid = pci_get_device(dev); > ctlr->subvendorid = pci_get_subvendor(dev); > ctlr->subdeviceid = pci_get_subdevice(dev); > - ctlr->r_rid = PCIR_BAR(5); > + > + /* Default AHCI Base Address is BAR(5), Cavium uses BAR(0) */ > + if (ctlr->quirks & AHCI_Q_ABAR0) > + ctlr->r_rid = PCIR_BAR(0); > + else > + ctlr->r_rid = PCIR_BAR(5); > if (!(ctlr->r_mem = bus_alloc_resource_any(dev, SYS_RES_MEMORY, > &ctlr->r_rid, RF_ACTIVE))) > return ENXIO; >