From owner-freebsd-ppc@FreeBSD.ORG Sun Dec 8 13:39:02 2013 Return-Path: Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A336EE25; Sun, 8 Dec 2013 13:39:02 +0000 (UTC) Received: from alchemy.franken.de (alchemy.franken.de [194.94.249.214]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 3BEB11337; Sun, 8 Dec 2013 13:39:01 +0000 (UTC) Received: from alchemy.franken.de (localhost [127.0.0.1]) by alchemy.franken.de (8.14.7/8.14.7/ALCHEMY.FRANKEN.DE) with ESMTP id rB8DcrSM075620; Sun, 8 Dec 2013 14:38:53 +0100 (CET) (envelope-from marius@alchemy.franken.de) Received: (from marius@localhost) by alchemy.franken.de (8.14.7/8.14.7/Submit) id rB8DcrAY075619; Sun, 8 Dec 2013 14:38:53 +0100 (CET) (envelope-from marius) Date: Sun, 8 Dec 2013 14:38:53 +0100 From: Marius Strobl To: Justin Hibbits Subject: Re: Request for testing an alternate branch Message-ID: <20131208133853.GA75604@alchemy.franken.de> References: <20131204222113.39fb23dd@zhabar.gateway.2wire.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20131204222113.39fb23dd@zhabar.gateway.2wire.net> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: FreeBSD Current , FreeBSD PowerPC ML X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 08 Dec 2013 13:39:02 -0000 On Wed, Dec 04, 2013 at 10:21:13PM -0800, Justin Hibbits wrote: > I've been working on the projects/pmac_pmu branch for some time now to > add suspend/resume as well as CPU speed change for certain PowerPC > machines, about a year since I created the branch, and now it's stable > enough that I want to merge it into HEAD, hence this request. However, > it does touch several drivers, turning them into "early drivers", such > that they can be initialized, and suspended and resumed at a different > time. Saying that, I do need testing from other architectures, to make > sure I haven't broken anything. > > The technical details: > > To get proper ordering, I've extended the bus_generic_suspend() and > bus_generic_resume() to do multiple passes. Devices which cannot be > enabled or disabled at the current pass level would return an EAGAIN. > This could possibly cause problems, since it's an addition to an > existing API rather than a new API to run along side it, so it needs a > great deal of testing. It works fine on PowerPC, but I don't have any > i386/amd64 or sparc64 hardware to test it on, so would like others who > do to test it. I don't think that it would impact x86 at all (testing > is obviously required), because the nexus is not an EARLY_DRIVER_MODULE, > so all devices would be handled at the same pass. But, I do know the > sparc64 has an EARLY_DRIVER_MODULE() nexus, so that will likely be > impacted. > > Also, any comments are of course welcome. Technical concerns are > obviously welcome, and I will try to address everything. Do you have a patch against head? Marius From owner-freebsd-ppc@FreeBSD.ORG Sun Dec 8 17:31:33 2013 Return-Path: Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3E72643B; Sun, 8 Dec 2013 17:31:33 +0000 (UTC) Received: from mail-bk0-x234.google.com (mail-bk0-x234.google.com [IPv6:2a00:1450:4008:c01::234]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 94E1C11BE; Sun, 8 Dec 2013 17:31:32 +0000 (UTC) Received: by mail-bk0-f52.google.com with SMTP id u14so1025042bkz.11 for ; Sun, 08 Dec 2013 09:31:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=65R1zGwCacSn8CjMKVS8NNRT3Sa8kS3413LwyUfzTr0=; b=jFnvmYZ9BwiBJRS6LCVOQ3R82+NI+PzAMBqX+szI9zA7LPC8o34qfy1ViWzQUE7P9A k7rSUh0dWU4Ykuj1j2+Ax/7H4WpX+pU648EleYzEN8ppgF42nuBPgLgmAmoxDvwyDl+d KQxuKzRhXiqKDReaRRSPMj6P7yj4iVA0wKp+VI2O0AjsdeNqv5WGK6fSXn1zZNhL4ds0 k+DzXLPwwAwvwHkPiZePl0FA1nmyagiSEAWyl8MQg4AEpgDdyBIvQk7zULS8RrmkXSzr vsysjn/XZtaSnRSo+V4D0otm+sGm/QLik/VVcjIoV0FyMx08bZdVj+ofUjCaT5x/6hu4 ZpXg== MIME-Version: 1.0 X-Received: by 10.205.105.3 with SMTP id do3mr1013350bkc.86.1386523890958; Sun, 08 Dec 2013 09:31:30 -0800 (PST) Sender: chmeeedalf@gmail.com Received: by 10.205.90.136 with HTTP; Sun, 8 Dec 2013 09:31:30 -0800 (PST) Received: by 10.205.90.136 with HTTP; Sun, 8 Dec 2013 09:31:30 -0800 (PST) In-Reply-To: <20131208133853.GA75604@alchemy.franken.de> References: <20131204222113.39fb23dd@zhabar.gateway.2wire.net> <20131208133853.GA75604@alchemy.franken.de> Date: Sun, 8 Dec 2013 09:31:30 -0800 X-Google-Sender-Auth: XbWfv1rJUkOCV6563Wd7KiPf9Ow Message-ID: Subject: Re: Request for testing an alternate branch From: Justin Hibbits To: Marius Strobl Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.17 Cc: FreeBSD Current , FreeBSD PowerPC ML X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 08 Dec 2013 17:31:33 -0000 On Dec 8, 2013 5:39 AM, "Marius Strobl" wrote: > > On Wed, Dec 04, 2013 at 10:21:13PM -0800, Justin Hibbits wrote: > > I've been working on the projects/pmac_pmu branch for some time now to > > add suspend/resume as well as CPU speed change for certain PowerPC > > machines, about a year since I created the branch, and now it's stable > > enough that I want to merge it into HEAD, hence this request. However, > > it does touch several drivers, turning them into "early drivers", such > > that they can be initialized, and suspended and resumed at a different > > time. Saying that, I do need testing from other architectures, to make > > sure I haven't broken anything. > > > > The technical details: > > > > To get proper ordering, I've extended the bus_generic_suspend() and > > bus_generic_resume() to do multiple passes. Devices which cannot be > > enabled or disabled at the current pass level would return an EAGAIN. > > This could possibly cause problems, since it's an addition to an > > existing API rather than a new API to run along side it, so it needs a > > great deal of testing. It works fine on PowerPC, but I don't have any > > i386/amd64 or sparc64 hardware to test it on, so would like others who > > do to test it. I don't think that it would impact x86 at all (testing > > is obviously required), because the nexus is not an EARLY_DRIVER_MODULE, > > so all devices would be handled at the same pass. But, I do know the > > sparc64 has an EARLY_DRIVER_MODULE() nexus, so that will likely be > > impacted. > > > > Also, any comments are of course welcome. Technical concerns are > > obviously welcome, and I will try to address everything. > > Do you have a patch against head? > > Marius > I can generate one today. - Justin From owner-freebsd-ppc@FreeBSD.ORG Sun Dec 8 23:49:01 2013 Return-Path: Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id CD5507A5; Sun, 8 Dec 2013 23:49:01 +0000 (UTC) Received: from mail-pb0-x235.google.com (mail-pb0-x235.google.com [IPv6:2607:f8b0:400e:c01::235]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 88B0F1E11; Sun, 8 Dec 2013 23:49:01 +0000 (UTC) Received: by mail-pb0-f53.google.com with SMTP id ma3so4243686pbc.26 for ; Sun, 08 Dec 2013 15:49:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=date:from:to:cc:subject:message-id:in-reply-to:references :mime-version:content-type; bh=sR2JCZIkwgea62iabD39PuKISLmjNrNde3zDzkE+nKc=; b=XjEQBoF8CKW/nPVnul7yl95mtku8QKbmjC22iem1SkPABbqt0SV3rGqk1SXDrt5f0a bPSfxn235Qe+I3PTpXiTciJBsRohXABxUGOsmhgLJfQ9cZY4snoLhDYABS+Sajvl8seu Lz92jnA8zLfP3asCKQUyDl6+rPeq211c5xeLDn4AHT43TkVL9YR1tz3s3cJx42mnAUyK O66GleUBQ3T9SVuuPgQW/d4adoFbNg5rj7sDcvynbXYNGYmvBJ92ogA0ubfCPW91ZXrp IEGxeqIMOIEzznuPHNvYzS6NBqS96sFevJvMsona0do1jZP2SBofCpQ5d5xUsAST/fhL myvQ== X-Received: by 10.68.110.132 with SMTP id ia4mr17163166pbb.99.1386546541034; Sun, 08 Dec 2013 15:49:01 -0800 (PST) Received: from zhabar.gateway.2wire.net (76-253-2-5.lightspeed.sntcca.sbcglobal.net. [76.253.2.5]) by mx.google.com with ESMTPSA id vh3sm13463513pbc.8.2013.12.08.15.48.58 for (version=SSLv3 cipher=RC4-SHA bits=128/128); Sun, 08 Dec 2013 15:49:00 -0800 (PST) Date: Sun, 8 Dec 2013 15:48:54 -0800 From: Justin Hibbits To: Marius Strobl Subject: Re: Request for testing an alternate branch Message-ID: <20131208154854.7425d9a7@zhabar.gateway.2wire.net> In-Reply-To: <20131208133853.GA75604@alchemy.franken.de> References: <20131204222113.39fb23dd@zhabar.gateway.2wire.net> <20131208133853.GA75604@alchemy.franken.de> X-Mailer: Claws Mail 3.9.2 (GTK+ 2.24.19; powerpc64-portbld-freebsd11.0) Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/myyr.EiQd2QcNU+JRaoNCZY" Cc: Justin Hibbits , FreeBSD Current , FreeBSD PowerPC ML X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 08 Dec 2013 23:49:01 -0000 --MP_/myyr.EiQd2QcNU+JRaoNCZY Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline On Sun, 8 Dec 2013 14:38:53 +0100 Marius Strobl wrote: > On Wed, Dec 04, 2013 at 10:21:13PM -0800, Justin Hibbits wrote: > > I've been working on the projects/pmac_pmu branch for some time now > > to add suspend/resume as well as CPU speed change for certain > > PowerPC machines, about a year since I created the branch, and now > > it's stable enough that I want to merge it into HEAD, hence this > > request. However, it does touch several drivers, turning them into > > "early drivers", such that they can be initialized, and suspended > > and resumed at a different time. Saying that, I do need testing > > from other architectures, to make sure I haven't broken anything. > > > > The technical details: > > > > To get proper ordering, I've extended the bus_generic_suspend() and > > bus_generic_resume() to do multiple passes. Devices which cannot be > > enabled or disabled at the current pass level would return an > > EAGAIN. This could possibly cause problems, since it's an addition > > to an existing API rather than a new API to run along side it, so > > it needs a great deal of testing. It works fine on PowerPC, but I > > don't have any i386/amd64 or sparc64 hardware to test it on, so > > would like others who do to test it. I don't think that it would > > impact x86 at all (testing is obviously required), because the > > nexus is not an EARLY_DRIVER_MODULE, so all devices would be > > handled at the same pass. But, I do know the sparc64 has an > > EARLY_DRIVER_MODULE() nexus, so that will likely be impacted. > > > > Also, any comments are of course welcome. Technical concerns are > > obviously welcome, and I will try to address everything. > > Do you have a patch against head? > > Marius > Here you go. - Justin --MP_/myyr.EiQd2QcNU+JRaoNCZY Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=pmac_pmu.diff Index: MAINTAINERS =================================================================== --- MAINTAINERS (revision 259108) +++ MAINTAINERS (working copy) Property changes on: MAINTAINERS ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/MAINTAINERS:r244821-259112 Index: cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print =================================================================== --- cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print (revision 259108) +++ cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print (working copy) Property changes on: cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/libzfs_core/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print:r247831-248551 Merged /projects/pmac_pmu/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print:r250993-259112 Merged /vendor/opensolaris/dist/cmd/dtrace/test/tst/common/print:r194442-210759 Merged /projects/quota64/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print:r184125-207707 Merged /projects/multi-fibv6/head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print:r230929-231848 Merged /vendor/illumos/dist/cmd/dtrace/test/tst/common/print:r238592,238725,239610,239746,240110,240262,240326,240357,240949,242729,242732,243012-243013,243395,244245,246388,246392,247176,247580,247845,248217,248266,249185 Merged /head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print:r2-168403 Merged /vendor/resolver/dist/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print:r1540-186085 Merged /vendor-cddl/opensolaris/dist/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print:r178477-194441 Merged /projects/largeSMP/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print:r221273-222812,222815-223757 Index: cddl/contrib/opensolaris/cmd/zfs =================================================================== --- cddl/contrib/opensolaris/cmd/zfs (revision 259108) +++ cddl/contrib/opensolaris/cmd/zfs (working copy) Property changes on: cddl/contrib/opensolaris/cmd/zfs ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/cddl/contrib/opensolaris/cmd/zfs:r244821-259112 Index: cddl/contrib/opensolaris/lib/libzfs =================================================================== --- cddl/contrib/opensolaris/lib/libzfs (revision 259108) +++ cddl/contrib/opensolaris/lib/libzfs (working copy) Property changes on: cddl/contrib/opensolaris/lib/libzfs ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/cddl/contrib/opensolaris/lib/libzfs:r244821-259112 Index: cddl/contrib/opensolaris =================================================================== --- cddl/contrib/opensolaris (revision 259108) +++ cddl/contrib/opensolaris (working copy) Property changes on: cddl/contrib/opensolaris ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/cddl/contrib/opensolaris:r244821-259112 Index: cddl =================================================================== --- cddl (revision 259108) +++ cddl (working copy) Property changes on: cddl ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/cddl:r244821-259112 Index: contrib/apr =================================================================== --- contrib/apr (revision 259108) +++ contrib/apr (working copy) Property changes on: contrib/apr ___________________________________________________________________ Modified: svn:mergeinfo Merged /head/contrib/apr:r244821-251885 Merged /projects/random_number_generator/contrib/apr:r254613-255353 Merged /projects/pmac_pmu/contrib/apr:r252132-259112 Index: contrib/apr-util =================================================================== --- contrib/apr-util (revision 259108) +++ contrib/apr-util (working copy) Property changes on: contrib/apr-util ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/random_number_generator/contrib/apr-util:r254613-255353 Merged /projects/pmac_pmu/contrib/apr-util:r252132-259112 Merged /head/contrib/apr-util:r244821-251885 Index: contrib/atf =================================================================== --- contrib/atf (revision 259108) +++ contrib/atf (working copy) Property changes on: contrib/atf ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/atf:r244821-259112 Index: contrib/binutils =================================================================== --- contrib/binutils (revision 259108) +++ contrib/binutils (working copy) Property changes on: contrib/binutils ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/binutils:r244821-259112 Index: contrib/bmake =================================================================== --- contrib/bmake (revision 259108) +++ contrib/bmake (working copy) Property changes on: contrib/bmake ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/bmake:r244821-259112 Index: contrib/byacc =================================================================== --- contrib/byacc (revision 259108) +++ contrib/byacc (working copy) Property changes on: contrib/byacc ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/byacc:r244821-259112 Index: contrib/bzip2 =================================================================== --- contrib/bzip2 (revision 259108) +++ contrib/bzip2 (working copy) Property changes on: contrib/bzip2 ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/bzip2:r244821-259112 Index: contrib/com_err =================================================================== --- contrib/com_err (revision 259108) +++ contrib/com_err (working copy) Property changes on: contrib/com_err ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/com_err:r244821-259112 Index: contrib/compiler-rt =================================================================== --- contrib/compiler-rt (revision 259108) +++ contrib/compiler-rt (working copy) Property changes on: contrib/compiler-rt ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/compiler-rt:r244821-259112 Index: contrib/dialog =================================================================== --- contrib/dialog (revision 259108) +++ contrib/dialog (working copy) Property changes on: contrib/dialog ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/dialog:r244821-259112 Index: contrib/dtc =================================================================== --- contrib/dtc (revision 259108) +++ contrib/dtc (working copy) Property changes on: contrib/dtc ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/dtc:r244821-259112 Index: contrib/ee =================================================================== --- contrib/ee (revision 259108) +++ contrib/ee (working copy) Property changes on: contrib/ee ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/ee:r244821-259112 Index: contrib/expat =================================================================== --- contrib/expat (revision 259108) +++ contrib/expat (working copy) Property changes on: contrib/expat ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/expat:r244821-259112 Index: contrib/file =================================================================== --- contrib/file (revision 259108) +++ contrib/file (working copy) Property changes on: contrib/file ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/file:r244821-259112 Index: contrib/gcc =================================================================== --- contrib/gcc (revision 259108) +++ contrib/gcc (working copy) Property changes on: contrib/gcc ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/gcc:r244821-259112 Index: contrib/gdb =================================================================== --- contrib/gdb (revision 259108) +++ contrib/gdb (working copy) Property changes on: contrib/gdb ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/gdb:r244821-259112 Index: contrib/gdtoa =================================================================== --- contrib/gdtoa (revision 259108) +++ contrib/gdtoa (working copy) Property changes on: contrib/gdtoa ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/gdtoa:r244821-259112 Index: contrib/groff =================================================================== --- contrib/groff (revision 259108) +++ contrib/groff (working copy) Property changes on: contrib/groff ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/groff:r244821-259112 Index: contrib/ipfilter/ml_ipl.c =================================================================== --- contrib/ipfilter/ml_ipl.c (revision 259108) +++ contrib/ipfilter/ml_ipl.c (working copy) Property changes on: contrib/ipfilter/ml_ipl.c ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/ipfilter/ml_ipl.c:r255832-259112 Merged /head/contrib/ipfilter/ml_ipl.c:r254686-254687 Index: contrib/ipfilter/mlfk_ipl.c =================================================================== --- contrib/ipfilter/mlfk_ipl.c (revision 259108) +++ contrib/ipfilter/mlfk_ipl.c (working copy) Property changes on: contrib/ipfilter/mlfk_ipl.c ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/head_mfi/contrib/ipfilter/mlfk_ipl.c:r233621 Merged /projects/random_number_generator/contrib/ipfilter/mlfk_ipl.c:r254613-255353 Merged /projects/pmac_pmu/contrib/ipfilter/mlfk_ipl.c:r255832-259112 Merged /projects/quota64/contrib/ipfilter/mlfk_ipl.c:r184125-207707 Merged /projects/multi-fibv6/head/contrib/ipfilter/mlfk_ipl.c:r230929-231848 Merged /head/contrib/ipfilter/mlfk_ipl.c:r244821-252117,254686-254687 Merged /vendor/resolver/dist/contrib/ipfilter/mlfk_ipl.c:r1540-186085 Merged /projects/largeSMP/contrib/ipfilter/mlfk_ipl.c:r221273-222812,222815-223757 Index: contrib/ipfilter/mlh_rule.c =================================================================== --- contrib/ipfilter/mlh_rule.c (revision 259108) +++ contrib/ipfilter/mlh_rule.c (working copy) Property changes on: contrib/ipfilter/mlh_rule.c ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/ipfilter/mlh_rule.c:r244821-259112 Merged /projects/quota64/contrib/ipfilter/mlh_rule.c:r184125-207707 Merged /projects/multi-fibv6/head/contrib/ipfilter/mlh_rule.c:r230929-231848 Merged /vendor/resolver/dist/contrib/ipfilter/mlh_rule.c:r1540-186085 Merged /projects/largeSMP/contrib/ipfilter/mlh_rule.c:r221273-222812,222815-223757 Merged /projects/head_mfi/contrib/ipfilter/mlh_rule.c:r233621 Merged /projects/random_number_generator/contrib/ipfilter/mlh_rule.c:r254613-255353 Index: contrib/ipfilter/mli_ipl.c =================================================================== --- contrib/ipfilter/mli_ipl.c (revision 259108) +++ contrib/ipfilter/mli_ipl.c (working copy) Property changes on: contrib/ipfilter/mli_ipl.c ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/quota64/contrib/ipfilter/mli_ipl.c:r184125-207707 Merged /projects/multi-fibv6/head/contrib/ipfilter/mli_ipl.c:r230929-231848 Merged /head/contrib/ipfilter/mli_ipl.c:r244821-252117,254686-254687 Merged /vendor/resolver/dist/contrib/ipfilter/mli_ipl.c:r1540-186085 Merged /projects/largeSMP/contrib/ipfilter/mli_ipl.c:r221273-222812,222815-223757 Merged /projects/head_mfi/contrib/ipfilter/mli_ipl.c:r233621 Merged /projects/random_number_generator/contrib/ipfilter/mli_ipl.c:r254613-255353 Merged /projects/pmac_pmu/contrib/ipfilter/mli_ipl.c:r255832-259112 Index: contrib/ipfilter/mln_ipl.c =================================================================== --- contrib/ipfilter/mln_ipl.c (revision 259108) +++ contrib/ipfilter/mln_ipl.c (working copy) Property changes on: contrib/ipfilter/mln_ipl.c ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/random_number_generator/contrib/ipfilter/mln_ipl.c:r254613-255353 Merged /projects/pmac_pmu/contrib/ipfilter/mln_ipl.c:r255832-259112 Merged /projects/quota64/contrib/ipfilter/mln_ipl.c:r184125-207707 Merged /projects/multi-fibv6/head/contrib/ipfilter/mln_ipl.c:r230929-231848 Merged /head/contrib/ipfilter/mln_ipl.c:r244821-252117,254686-254687 Merged /vendor/resolver/dist/contrib/ipfilter/mln_ipl.c:r1540-186085 Merged /projects/largeSMP/contrib/ipfilter/mln_ipl.c:r221273-222812,222815-223757 Merged /projects/head_mfi/contrib/ipfilter/mln_ipl.c:r233621 Index: contrib/ipfilter/mls_ipl.c =================================================================== --- contrib/ipfilter/mls_ipl.c (revision 259108) +++ contrib/ipfilter/mls_ipl.c (working copy) Property changes on: contrib/ipfilter/mls_ipl.c ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/largeSMP/contrib/ipfilter/mls_ipl.c:r221273-222812,222815-223757 Merged /projects/head_mfi/contrib/ipfilter/mls_ipl.c:r233621 Merged /projects/random_number_generator/contrib/ipfilter/mls_ipl.c:r254613-255353 Merged /projects/pmac_pmu/contrib/ipfilter/mls_ipl.c:r255832-259112 Merged /projects/quota64/contrib/ipfilter/mls_ipl.c:r184125-207707 Merged /projects/multi-fibv6/head/contrib/ipfilter/mls_ipl.c:r230929-231848 Merged /head/contrib/ipfilter/mls_ipl.c:r244821-252117,254686-254687 Merged /vendor/resolver/dist/contrib/ipfilter/mls_ipl.c:r1540-186085 Index: contrib/ipfilter =================================================================== --- contrib/ipfilter (revision 259108) +++ contrib/ipfilter (working copy) Property changes on: contrib/ipfilter ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/largeSMP/contrib/ipfilter:r221273-222812,222815-223757 Merged /projects/head_mfi/contrib/ipfilter:r233621 Merged /projects/random_number_generator/contrib/ipfilter:r254613-255353 Merged /projects/pmac_pmu/contrib/ipfilter:r244821-259112 Merged /projects/quota64/contrib/ipfilter:r184125-207707 Merged /projects/multi-fibv6/head/contrib/ipfilter:r230929-231848 Merged /vendor/resolver/dist/contrib/ipfilter:r1540-186085 Index: contrib/ldns =================================================================== --- contrib/ldns (revision 259108) +++ contrib/ldns (working copy) Property changes on: contrib/ldns ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/ldns:r250993-259112 Index: contrib/less =================================================================== --- contrib/less (revision 259108) +++ contrib/less (working copy) Property changes on: contrib/less ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/less:r244821-259112 Index: contrib/libarchive/cpio =================================================================== --- contrib/libarchive/cpio (revision 259108) +++ contrib/libarchive/cpio (working copy) Property changes on: contrib/libarchive/cpio ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/libarchive/cpio:r244821-259112 Index: contrib/libarchive/libarchive =================================================================== --- contrib/libarchive/libarchive (revision 259108) +++ contrib/libarchive/libarchive (working copy) Property changes on: contrib/libarchive/libarchive ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/libarchive/libarchive:r244821-259112 Index: contrib/libarchive/libarchive_fe =================================================================== --- contrib/libarchive/libarchive_fe (revision 259108) +++ contrib/libarchive/libarchive_fe (working copy) Property changes on: contrib/libarchive/libarchive_fe ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/libarchive/libarchive_fe:r244821-259112 Index: contrib/libarchive/tar =================================================================== --- contrib/libarchive/tar (revision 259108) +++ contrib/libarchive/tar (working copy) Property changes on: contrib/libarchive/tar ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/libarchive/tar:r244821-259112 Index: contrib/libarchive =================================================================== --- contrib/libarchive (revision 259108) +++ contrib/libarchive (working copy) Property changes on: contrib/libarchive ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/libarchive:r244821-259112 Index: contrib/libc++ =================================================================== --- contrib/libc++ (revision 259108) +++ contrib/libc++ (working copy) Property changes on: contrib/libc++ ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/libc++:r244821-259112 Index: contrib/libc-vis =================================================================== --- contrib/libc-vis (revision 259108) +++ contrib/libc-vis (working copy) Property changes on: contrib/libc-vis ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/libc-vis:r244821-259112 Index: contrib/libcxxrt =================================================================== --- contrib/libcxxrt (revision 259108) +++ contrib/libcxxrt (working copy) Property changes on: contrib/libcxxrt ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/libcxxrt:r244821-259112 Index: contrib/libexecinfo =================================================================== --- contrib/libexecinfo (revision 259108) +++ contrib/libexecinfo (working copy) Property changes on: contrib/libexecinfo ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/libexecinfo:r255832-259112 Merged /head/contrib/libexecinfo:r244821-252117,254686-254687 Merged /projects/random_number_generator/contrib/libexecinfo:r254613-255353 Index: contrib/libpcap =================================================================== --- contrib/libpcap (revision 259108) +++ contrib/libpcap (working copy) Property changes on: contrib/libpcap ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/libpcap:r244821-259112 Index: contrib/libstdc++ =================================================================== --- contrib/libstdc++ (revision 259108) +++ contrib/libstdc++ (working copy) Property changes on: contrib/libstdc++ ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/libstdc++:r244821-259112 Index: contrib/llvm/tools/clang =================================================================== --- contrib/llvm/tools/clang (revision 259108) +++ contrib/llvm/tools/clang (working copy) Property changes on: contrib/llvm/tools/clang ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/llvm/tools/clang:r244821-259112 Index: contrib/llvm/tools/lldb =================================================================== --- contrib/llvm/tools/lldb (revision 259108) +++ contrib/llvm/tools/lldb (working copy) Property changes on: contrib/llvm/tools/lldb ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/llvm/tools/lldb:r255832-259112 Merged /head/contrib/llvm/tools/lldb:r244821-254728 Index: contrib/llvm =================================================================== --- contrib/llvm (revision 259108) +++ contrib/llvm (working copy) Property changes on: contrib/llvm ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/llvm:r244821-259112 Index: contrib/mtree =================================================================== --- contrib/mtree (revision 259108) +++ contrib/mtree (working copy) Property changes on: contrib/mtree ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/mtree:r244821-259112 Index: contrib/ncurses =================================================================== --- contrib/ncurses (revision 259108) +++ contrib/ncurses (working copy) Property changes on: contrib/ncurses ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/ncurses:r244821-259112 Index: contrib/netcat =================================================================== --- contrib/netcat (revision 259108) +++ contrib/netcat (working copy) Property changes on: contrib/netcat ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/netcat:r244821-259112 Index: contrib/ntp =================================================================== --- contrib/ntp (revision 259108) +++ contrib/ntp (working copy) Property changes on: contrib/ntp ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/ntp:r244821-259112 Index: contrib/nvi =================================================================== --- contrib/nvi (revision 259108) +++ contrib/nvi (working copy) Property changes on: contrib/nvi ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/head_mfi/contrib/nvi:r233621 Merged /projects/random_number_generator/contrib/nvi:r254613-255353 Merged /projects/pmac_pmu/contrib/nvi:r244821-259112 Merged /projects/quota64/contrib/nvi:r184125-207707 Merged /projects/multi-fibv6/head/contrib/nvi:r230929-231848 Merged /vendor/resolver/dist/contrib/nvi:r1540-186085 Merged /projects/largeSMP/contrib/nvi:r221273-222812,222815-223757 Index: contrib/one-true-awk =================================================================== --- contrib/one-true-awk (revision 259108) +++ contrib/one-true-awk (working copy) Property changes on: contrib/one-true-awk ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/one-true-awk:r244821-259112 Index: contrib/openbsm =================================================================== --- contrib/openbsm (revision 259108) +++ contrib/openbsm (working copy) Property changes on: contrib/openbsm ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/openbsm:r244821-259112 Index: contrib/openpam =================================================================== --- contrib/openpam (revision 259108) +++ contrib/openpam (working copy) Property changes on: contrib/openpam ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/openpam:r244821-259112 Index: contrib/openresolv =================================================================== --- contrib/openresolv (revision 259108) +++ contrib/openresolv (working copy) Property changes on: contrib/openresolv ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/openresolv:r244821-259112 Index: contrib/pf =================================================================== --- contrib/pf (revision 259108) +++ contrib/pf (working copy) Property changes on: contrib/pf ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/pf:r244821-259112 Index: contrib/sendmail =================================================================== --- contrib/sendmail (revision 259108) +++ contrib/sendmail (working copy) Property changes on: contrib/sendmail ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/sendmail:r244821-259112 Index: contrib/serf =================================================================== --- contrib/serf (revision 259108) +++ contrib/serf (working copy) Property changes on: contrib/serf ___________________________________________________________________ Modified: svn:mergeinfo Merged /head/contrib/serf:r244821-251885 Merged /projects/random_number_generator/contrib/serf:r254613-255353 Merged /projects/pmac_pmu/contrib/serf:r252132-259112 Index: contrib/subversion =================================================================== --- contrib/subversion (revision 259108) +++ contrib/subversion (working copy) Property changes on: contrib/subversion ___________________________________________________________________ Modified: svn:mergeinfo Merged /head/contrib/subversion:r244821-250985 Merged /projects/pmac_pmu/contrib/subversion:r252132-259112 Index: contrib/tcpdump =================================================================== --- contrib/tcpdump (revision 259108) +++ contrib/tcpdump (working copy) Property changes on: contrib/tcpdump ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/tcpdump:r244821-259112 Index: contrib/tcsh =================================================================== --- contrib/tcsh (revision 259108) +++ contrib/tcsh (working copy) Property changes on: contrib/tcsh ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/tcsh:r244821-259112 Index: contrib/tnftp =================================================================== --- contrib/tnftp (revision 259108) +++ contrib/tnftp (working copy) Property changes on: contrib/tnftp ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/tnftp:r244821-259112 Index: contrib/top/install-sh =================================================================== --- contrib/top/install-sh (revision 259108) +++ contrib/top/install-sh (working copy) Property changes on: contrib/top/install-sh ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/top/install-sh:r244821-259112 Index: contrib/top =================================================================== --- contrib/top (revision 259108) +++ contrib/top (working copy) Property changes on: contrib/top ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/top:r244821-259112 Index: contrib/tzcode/stdtime =================================================================== --- contrib/tzcode/stdtime (revision 259108) +++ contrib/tzcode/stdtime (working copy) Property changes on: contrib/tzcode/stdtime ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/tzcode/stdtime:r244821-259112 Index: contrib/tzcode/zic =================================================================== --- contrib/tzcode/zic (revision 259108) +++ contrib/tzcode/zic (working copy) Property changes on: contrib/tzcode/zic ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/tzcode/zic:r244821-259112 Index: contrib/tzdata =================================================================== --- contrib/tzdata (revision 259108) +++ contrib/tzdata (working copy) Property changes on: contrib/tzdata ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/tzdata:r244821-259112 Index: contrib/unbound =================================================================== --- contrib/unbound (revision 259108) +++ contrib/unbound (working copy) Property changes on: contrib/unbound ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/unbound:r250993-259112 Index: contrib/wpa =================================================================== --- contrib/wpa (revision 259108) +++ contrib/wpa (working copy) Property changes on: contrib/wpa ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/wpa:r244821-259112 Index: contrib/xz =================================================================== --- contrib/xz (revision 259108) +++ contrib/xz (working copy) Property changes on: contrib/xz ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/contrib/xz:r244821-259112 Index: crypto/heimdal =================================================================== --- crypto/heimdal (revision 259108) +++ crypto/heimdal (working copy) Property changes on: crypto/heimdal ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/crypto/heimdal:r244821-259112 Index: crypto/openssh =================================================================== --- crypto/openssh (revision 259108) +++ crypto/openssh (working copy) Property changes on: crypto/openssh ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/crypto/openssh:r244821-259112 Index: crypto/openssl =================================================================== --- crypto/openssl (revision 259108) +++ crypto/openssl (working copy) Property changes on: crypto/openssl ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/crypto/openssl:r244821-259112 Index: etc =================================================================== --- etc (revision 259108) +++ etc (working copy) Property changes on: etc ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/head_mfi/etc:r233621 Merged /projects/random_number_generator/etc:r254613-256243 Merged /projects/pmac_pmu/etc:r244821-259112 Merged /projects/quota64/etc:r184125-207707 Merged /projects/multi-fibv6/head/etc:r230929-231848 Merged /vendor/resolver/dist/etc:r1540-186085 Merged /projects/largeSMP/etc:r221273-222812,222815-223757 Index: gnu/lib =================================================================== --- gnu/lib (revision 259108) +++ gnu/lib (working copy) Property changes on: gnu/lib ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/gnu/lib:r244821-259112 Index: gnu/usr.bin/binutils =================================================================== --- gnu/usr.bin/binutils (revision 259108) +++ gnu/usr.bin/binutils (working copy) Property changes on: gnu/usr.bin/binutils ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/gnu/usr.bin/binutils:r244821-259112 Index: gnu/usr.bin/cc/cc_tools =================================================================== --- gnu/usr.bin/cc/cc_tools (revision 259108) +++ gnu/usr.bin/cc/cc_tools (working copy) Property changes on: gnu/usr.bin/cc/cc_tools ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/gnu/usr.bin/cc/cc_tools:r244821-259112 Index: gnu/usr.bin/gdb =================================================================== --- gnu/usr.bin/gdb (revision 259108) +++ gnu/usr.bin/gdb (working copy) Property changes on: gnu/usr.bin/gdb ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/gnu/usr.bin/gdb:r244821-259112 Index: include =================================================================== --- include (revision 259108) +++ include (working copy) Property changes on: include ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/multi-fibv6/head/include:r230929-231848 Merged /vendor/resolver/dist/include:r1540-186085 Merged /projects/largeSMP/include:r221273-222812,222815-223757 Merged /projects/head_mfi/include:r233621 Merged /projects/random_number_generator/include:r254613-256243 Merged /projects/pmac_pmu/include:r244821-259112 Merged /projects/quota64/include:r184125-207707 Index: lib/libc/stdtime =================================================================== --- lib/libc/stdtime (revision 259108) +++ lib/libc/stdtime (working copy) Property changes on: lib/libc/stdtime ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/lib/libc/stdtime:r244821-259112 Index: lib/libc =================================================================== --- lib/libc (revision 259108) +++ lib/libc (working copy) Property changes on: lib/libc ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/lib/libc:r244821-259112 Index: lib/libutil =================================================================== --- lib/libutil (revision 259108) +++ lib/libutil (working copy) Property changes on: lib/libutil ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/lib/libutil:r244821-259112 Index: lib/libvmmapi =================================================================== --- lib/libvmmapi (revision 259108) +++ lib/libvmmapi (working copy) Property changes on: lib/libvmmapi ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/lib/libvmmapi:r250993-259112 Index: lib/libz =================================================================== --- lib/libz (revision 259108) +++ lib/libz (working copy) Property changes on: lib/libz ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/lib/libz:r244821-259112 Index: sbin/dumpon =================================================================== --- sbin/dumpon (revision 259108) +++ sbin/dumpon (working copy) Property changes on: sbin/dumpon ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sbin/dumpon:r244821-259112 Index: sbin/ipfw =================================================================== --- sbin/ipfw (revision 259108) +++ sbin/ipfw (working copy) Property changes on: sbin/ipfw ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sbin/ipfw:r244821-259112 Index: sbin =================================================================== --- sbin (revision 259108) +++ sbin (working copy) Property changes on: sbin ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sbin:r244821-259112 Index: share/examples/kld/random_adaptor/random_adaptor_example.c =================================================================== --- share/examples/kld/random_adaptor/random_adaptor_example.c (revision 259108) +++ share/examples/kld/random_adaptor/random_adaptor_example.c (working copy) Property changes on: share/examples/kld/random_adaptor/random_adaptor_example.c ___________________________________________________________________ Deleted: svn:mergeinfo Reverse-merged /projects/random_number_generator/share/examples/kld/random_adaptor/random_adaptor_example.c:r254784-256243 Reverse-merged /projects/quota64/share/examples/kld/random_adaptor/random_adaptor_example.c:r184125-207707 Reverse-merged /projects/multi-fibv6/head/share/examples/kld/random_adaptor/random_adaptor_example.c:r230929-231848 Reverse-merged /head/share/examples/kld/random_adaptor/random_adaptor_example.c:r254613-255351 Reverse-merged /vendor/resolver/dist/share/examples/kld/random_adaptor/random_adaptor_example.c:r1540-186085 Reverse-merged /projects/largeSMP/share/examples/kld/random_adaptor/random_adaptor_example.c:r221273-222812,222815-223757 Reverse-merged /projects/head_mfi/share/examples/kld/random_adaptor/random_adaptor_example.c:r233621 Index: share/man/man4/bhyve.4 =================================================================== --- share/man/man4/bhyve.4 (revision 259108) +++ share/man/man4/bhyve.4 (working copy) Property changes on: share/man/man4/bhyve.4 ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/share/man/man4/bhyve.4:r250993-259112 Index: share/man/man4 =================================================================== --- share/man/man4 (revision 259108) +++ share/man/man4 (working copy) Property changes on: share/man/man4 ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/share/man/man4:r244821-259112 Index: share/mk/bsd.arch.inc.mk =================================================================== --- share/mk/bsd.arch.inc.mk (revision 259108) +++ share/mk/bsd.arch.inc.mk (working copy) Property changes on: share/mk/bsd.arch.inc.mk ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/share/mk/bsd.arch.inc.mk:r244821-259112 Index: share/zoneinfo =================================================================== --- share/zoneinfo (revision 259108) +++ share/zoneinfo (working copy) Property changes on: share/zoneinfo ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/share/zoneinfo:r244821-259112 Index: sys/amd64/include/vmm.h =================================================================== --- sys/amd64/include/vmm.h (revision 259108) +++ sys/amd64/include/vmm.h (working copy) Property changes on: sys/amd64/include/vmm.h ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/amd64/include/vmm.h:r250993-259112 Index: sys/amd64/include/vmm_dev.h =================================================================== --- sys/amd64/include/vmm_dev.h (revision 259108) +++ sys/amd64/include/vmm_dev.h (working copy) Property changes on: sys/amd64/include/vmm_dev.h ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/amd64/include/vmm_dev.h:r250993-259112 Index: sys/amd64/include/vmm_instruction_emul.h =================================================================== --- sys/amd64/include/vmm_instruction_emul.h (revision 259108) +++ sys/amd64/include/vmm_instruction_emul.h (working copy) Property changes on: sys/amd64/include/vmm_instruction_emul.h ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/amd64/include/vmm_instruction_emul.h:r250993-259112 Index: sys/amd64/include/xen =================================================================== --- sys/amd64/include/xen (revision 259108) +++ sys/amd64/include/xen (working copy) Property changes on: sys/amd64/include/xen ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/amd64/include/xen:r244821-259112 Index: sys/amd64/vmm =================================================================== --- sys/amd64/vmm (revision 259108) +++ sys/amd64/vmm (working copy) Property changes on: sys/amd64/vmm ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/amd64/vmm:r250993-259112 Index: sys/boot/i386/efi =================================================================== --- sys/boot/i386/efi (revision 259108) +++ sys/boot/i386/efi (working copy) Property changes on: sys/boot/i386/efi ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/boot/i386/efi:r244821-259112 Index: sys/boot/ia64/efi =================================================================== --- sys/boot/ia64/efi (revision 259108) +++ sys/boot/ia64/efi (working copy) Property changes on: sys/boot/ia64/efi ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/boot/ia64/efi:r244821-259112 Index: sys/boot/ia64/ski =================================================================== --- sys/boot/ia64/ski (revision 259108) +++ sys/boot/ia64/ski (working copy) Property changes on: sys/boot/ia64/ski ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/boot/ia64/ski:r244821-259112 Index: sys/boot/powerpc/boot1.chrp =================================================================== --- sys/boot/powerpc/boot1.chrp (revision 259108) +++ sys/boot/powerpc/boot1.chrp (working copy) Property changes on: sys/boot/powerpc/boot1.chrp ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/boot/powerpc/boot1.chrp:r244821-259112 Index: sys/boot/powerpc/ofw =================================================================== --- sys/boot/powerpc/ofw (revision 259108) +++ sys/boot/powerpc/ofw (working copy) Property changes on: sys/boot/powerpc/ofw ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/boot/powerpc/ofw:r244821-259112 Index: sys/boot =================================================================== --- sys/boot (revision 259108) +++ sys/boot (working copy) Property changes on: sys/boot ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/boot:r244821-259112 Index: sys/cddl/contrib/opensolaris =================================================================== --- sys/cddl/contrib/opensolaris (revision 259108) +++ sys/cddl/contrib/opensolaris (working copy) Property changes on: sys/cddl/contrib/opensolaris ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/cddl/contrib/opensolaris:r244821-259112 Index: sys/conf/files.powerpc =================================================================== --- sys/conf/files.powerpc (revision 259108) +++ sys/conf/files.powerpc (working copy) @@ -107,6 +107,7 @@ powerpc/booke/trap.c optional booke powerpc/cpufreq/dfs.c optional cpufreq powerpc/cpufreq/pcr.c optional cpufreq aim +powerpc/cpufreq/pmufreq.c optional cpufreq aim powerpc/fpu/fpu_add.c optional fpu_emu powerpc/fpu/fpu_compare.c optional fpu_emu powerpc/fpu/fpu_div.c optional fpu_emu Index: sys/conf =================================================================== --- sys/conf (revision 259108) +++ sys/conf (working copy) Property changes on: sys/conf ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/conf:r244821-259112 Index: sys/contrib/dev/acpica/changes.txt =================================================================== --- sys/contrib/dev/acpica/changes.txt (revision 259108) +++ sys/contrib/dev/acpica/changes.txt (working copy) Property changes on: sys/contrib/dev/acpica/changes.txt ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/dev/acpica/changes.txt:r244821-259112 Index: sys/contrib/dev/acpica/common =================================================================== --- sys/contrib/dev/acpica/common (revision 259108) +++ sys/contrib/dev/acpica/common (working copy) Property changes on: sys/contrib/dev/acpica/common ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/dev/acpica/common:r244821-259112 Index: sys/contrib/dev/acpica/compiler =================================================================== --- sys/contrib/dev/acpica/compiler (revision 259108) +++ sys/contrib/dev/acpica/compiler (working copy) Property changes on: sys/contrib/dev/acpica/compiler ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/dev/acpica/compiler:r244821-259112 Index: sys/contrib/dev/acpica/components/debugger =================================================================== --- sys/contrib/dev/acpica/components/debugger (revision 259108) +++ sys/contrib/dev/acpica/components/debugger (working copy) Property changes on: sys/contrib/dev/acpica/components/debugger ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/dev/acpica/components/debugger:r244821-259112 Index: sys/contrib/dev/acpica/components/disassembler =================================================================== --- sys/contrib/dev/acpica/components/disassembler (revision 259108) +++ sys/contrib/dev/acpica/components/disassembler (working copy) Property changes on: sys/contrib/dev/acpica/components/disassembler ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/dev/acpica/components/disassembler:r244821-259112 Index: sys/contrib/dev/acpica/components/dispatcher =================================================================== --- sys/contrib/dev/acpica/components/dispatcher (revision 259108) +++ sys/contrib/dev/acpica/components/dispatcher (working copy) Property changes on: sys/contrib/dev/acpica/components/dispatcher ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/dev/acpica/components/dispatcher:r244821-259112 Index: sys/contrib/dev/acpica/components/events =================================================================== --- sys/contrib/dev/acpica/components/events (revision 259108) +++ sys/contrib/dev/acpica/components/events (working copy) Property changes on: sys/contrib/dev/acpica/components/events ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/dev/acpica/components/events:r244821-259112 Index: sys/contrib/dev/acpica/components/executer =================================================================== --- sys/contrib/dev/acpica/components/executer (revision 259108) +++ sys/contrib/dev/acpica/components/executer (working copy) Property changes on: sys/contrib/dev/acpica/components/executer ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/dev/acpica/components/executer:r244821-259112 Index: sys/contrib/dev/acpica/components/hardware =================================================================== --- sys/contrib/dev/acpica/components/hardware (revision 259108) +++ sys/contrib/dev/acpica/components/hardware (working copy) Property changes on: sys/contrib/dev/acpica/components/hardware ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/dev/acpica/components/hardware:r244821-259112 Index: sys/contrib/dev/acpica/components/namespace =================================================================== --- sys/contrib/dev/acpica/components/namespace (revision 259108) +++ sys/contrib/dev/acpica/components/namespace (working copy) Property changes on: sys/contrib/dev/acpica/components/namespace ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/dev/acpica/components/namespace:r244821-259112 Index: sys/contrib/dev/acpica/components/parser =================================================================== --- sys/contrib/dev/acpica/components/parser (revision 259108) +++ sys/contrib/dev/acpica/components/parser (working copy) Property changes on: sys/contrib/dev/acpica/components/parser ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/dev/acpica/components/parser:r244821-259112 Index: sys/contrib/dev/acpica/components/resources =================================================================== --- sys/contrib/dev/acpica/components/resources (revision 259108) +++ sys/contrib/dev/acpica/components/resources (working copy) Property changes on: sys/contrib/dev/acpica/components/resources ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/dev/acpica/components/resources:r244821-259112 Index: sys/contrib/dev/acpica/components/tables =================================================================== --- sys/contrib/dev/acpica/components/tables (revision 259108) +++ sys/contrib/dev/acpica/components/tables (working copy) Property changes on: sys/contrib/dev/acpica/components/tables ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/dev/acpica/components/tables:r244821-259112 Index: sys/contrib/dev/acpica/components/utilities =================================================================== --- sys/contrib/dev/acpica/components/utilities (revision 259108) +++ sys/contrib/dev/acpica/components/utilities (working copy) Property changes on: sys/contrib/dev/acpica/components/utilities ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/dev/acpica/components/utilities:r244821-259112 Index: sys/contrib/dev/acpica/include =================================================================== --- sys/contrib/dev/acpica/include (revision 259108) +++ sys/contrib/dev/acpica/include (working copy) Property changes on: sys/contrib/dev/acpica/include ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/dev/acpica/include:r244821-259112 Index: sys/contrib/dev/acpica/os_specific =================================================================== --- sys/contrib/dev/acpica/os_specific (revision 259108) +++ sys/contrib/dev/acpica/os_specific (working copy) Property changes on: sys/contrib/dev/acpica/os_specific ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/dev/acpica/os_specific:r244821-259112 Index: sys/contrib/dev/acpica =================================================================== --- sys/contrib/dev/acpica (revision 259108) +++ sys/contrib/dev/acpica (working copy) Property changes on: sys/contrib/dev/acpica ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/dev/acpica:r244821-259112 Index: sys/contrib/ipfilter/netinet/ip_fil_freebsd.c =================================================================== --- sys/contrib/ipfilter/netinet/ip_fil_freebsd.c (revision 259108) +++ sys/contrib/ipfilter/netinet/ip_fil_freebsd.c (working copy) Property changes on: sys/contrib/ipfilter/netinet/ip_fil_freebsd.c ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c:r244821-259112 Index: sys/contrib/ipfilter/netinet/ip_raudio_pxy.c =================================================================== --- sys/contrib/ipfilter/netinet/ip_raudio_pxy.c (revision 259108) +++ sys/contrib/ipfilter/netinet/ip_raudio_pxy.c (working copy) Property changes on: sys/contrib/ipfilter/netinet/ip_raudio_pxy.c ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/largeSMP/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c:r221273-222812,222815-223757 Merged /user/dfr/xenhvm/6/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c:r189304,189451 Merged /user/peter/kinfo/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c:r185413-185547 Merged /user/dfr/xenhvm/7/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c:r188574-189614 Merged /user/np/cxl_tuning/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c:r254336,254386,254736 Merged /user/mav/ata/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c:r189793-190578 Merged /user/alfred/9-alfred/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c:r242488 Merged /user/thompsa/usb/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c:r187190 Merged /projects/head_mfi/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c:r227068,227574,227579-227580,227612,227905,228108,228208,228279,228310,228320,231988,232412-232414,232888,233016,233620 Merged /projects/cambria/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c:r186008-186350 Merged /projects/random_number_generator/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c:r254613-255353 Merged /user/piso/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c:r186543,186723,186725-186726,186742,186770-186771,186774,186777-186779,187984-187985,190555,190572,190589,190592,190614,190625,190830 Merged /projects/pmac_pmu/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c:r244821-259112 Merged /projects/quota64/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c:r184125-207707 Merged /user/jimharris/isci/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c:r228377-230794 Merged /user/piso/ipfw/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c:r190918,190921,190923,190926 Merged /projects/multi-fibv6/head/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c:r230929-231848 Index: sys/contrib/ipfilter =================================================================== --- sys/contrib/ipfilter (revision 259108) +++ sys/contrib/ipfilter (working copy) Property changes on: sys/contrib/ipfilter ___________________________________________________________________ Modified: svn:mergeinfo Merged /user/dfr/xenhvm/7/sys/contrib/ipfilter:r188574-189614 Merged /user/np/cxl_tuning/sys/contrib/ipfilter:r254336,254386,254736 Merged /user/mav/ata/sys/contrib/ipfilter:r189793-190578 Merged /user/alfred/9-alfred/sys/contrib/ipfilter:r242488 Merged /user/thompsa/usb/sys/contrib/ipfilter:r187190 Merged /projects/head_mfi/sys/contrib/ipfilter:r227068,227574,227579-227580,227612,227905,228108,228208,228279,228310,228320,231988,232412-232414,232888,233016,233620 Merged /projects/cambria/sys/contrib/ipfilter:r186008-186350 Merged /projects/random_number_generator/sys/contrib/ipfilter:r254613-255353 Merged /user/piso/sys/contrib/ipfilter:r186543,186723,186725-186726,186742,186770-186771,186774,186777-186779,187984-187985,190555,190572,190589,190592,190614,190625,190830 Merged /projects/pmac_pmu/sys/contrib/ipfilter:r244821-259112 Merged /projects/quota64/sys/contrib/ipfilter:r184125-207707 Merged /user/jimharris/isci/sys/contrib/ipfilter:r228377-230794 Merged /user/piso/ipfw/sys/contrib/ipfilter:r190918,190921,190923,190926 Merged /projects/multi-fibv6/head/sys/contrib/ipfilter:r230929-231848 Merged /user/dfr/xenhvm/6/sys/contrib/ipfilter:r189304,189451 Merged /user/peter/kinfo/sys/contrib/ipfilter:r185413-185547 Merged /projects/largeSMP/sys/contrib/ipfilter:r221273-222812,222815-223757 Index: sys/contrib/libfdt =================================================================== --- sys/contrib/libfdt (revision 259108) +++ sys/contrib/libfdt (working copy) Property changes on: sys/contrib/libfdt ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/libfdt:r244821-259112 Index: sys/contrib/octeon-sdk =================================================================== --- sys/contrib/octeon-sdk (revision 259108) +++ sys/contrib/octeon-sdk (working copy) Property changes on: sys/contrib/octeon-sdk ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/octeon-sdk:r244821-259112 Index: sys/contrib/x86emu =================================================================== --- sys/contrib/x86emu (revision 259108) +++ sys/contrib/x86emu (working copy) Property changes on: sys/contrib/x86emu ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/contrib/x86emu:r244821-259112 Index: sys/dev/bvm =================================================================== --- sys/dev/bvm (revision 259108) +++ sys/dev/bvm (working copy) Property changes on: sys/dev/bvm ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/dev/bvm:r250993-259112 Index: sys/dev/fdt/fdt_ic_if.m =================================================================== --- sys/dev/fdt/fdt_ic_if.m (revision 259108) +++ sys/dev/fdt/fdt_ic_if.m (working copy) Property changes on: sys/dev/fdt/fdt_ic_if.m ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/cambria/sys/dev/fdt/fdt_ic_if.m:r186008-186350 Merged /projects/random_number_generator/sys/dev/fdt/fdt_ic_if.m:r254613-256400 Merged /user/piso/sys/dev/fdt/fdt_ic_if.m:r186543,186723,186725-186726,186742,186770-186771,186774,186777-186779,187984-187985,190555,190572,190589,190592,190614,190625,190830 Merged /projects/pmac_pmu/sys/dev/fdt/fdt_ic_if.m:r257925-259112 Merged /projects/quota64/sys/dev/fdt/fdt_ic_if.m:r184125-207707 Merged /user/piso/ipfw/sys/dev/fdt/fdt_ic_if.m:r190918,190921,190923,190926 Merged /user/jimharris/isci/sys/dev/fdt/fdt_ic_if.m:r228377-230794 Merged /projects/multi-fibv6/head/sys/dev/fdt/fdt_ic_if.m:r230929-231848 Merged /head/sys/dev/fdt/fdt_ic_if.m:r244821-255831 Merged /projects/largeSMP/sys/dev/fdt/fdt_ic_if.m:r221273-222812,222815-223757 Merged /user/dfr/xenhvm/6/sys/dev/fdt/fdt_ic_if.m:r189304,189451 Merged /user/peter/kinfo/sys/dev/fdt/fdt_ic_if.m:r185413-185547 Merged /user/dfr/xenhvm/7/sys/dev/fdt/fdt_ic_if.m:r188574-189614 Merged /user/np/cxl_tuning/sys/dev/fdt/fdt_ic_if.m:r254336,254386,254736 Merged /user/mav/ata/sys/dev/fdt/fdt_ic_if.m:r189793-190578 Merged /user/alfred/9-alfred/sys/dev/fdt/fdt_ic_if.m:r242488 Merged /user/thompsa/usb/sys/dev/fdt/fdt_ic_if.m:r187190 Merged /projects/head_mfi/sys/dev/fdt/fdt_ic_if.m:r227068,227574,227579-227580,227612,227905,228108,228208,228279,228310,228320,231988,232412-232414,232888,233016,233620 Index: sys/dev/hyperv =================================================================== --- sys/dev/hyperv (revision 259108) +++ sys/dev/hyperv (working copy) Property changes on: sys/dev/hyperv ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/cambria/sys/dev/hyperv:r186008-186350 Merged /projects/random_number_generator/sys/dev/hyperv:r254613-255353 Merged /user/piso/sys/dev/hyperv:r186543,186723,186725-186726,186742,186770-186771,186774,186777-186779,187984-187985,190555,190572,190589,190592,190614,190625,190830 Merged /projects/pmac_pmu/sys/dev/hyperv:r255832-259112 Merged /projects/quota64/sys/dev/hyperv:r184125-207707 Merged /user/piso/ipfw/sys/dev/hyperv:r190918,190921,190923,190926 Merged /user/jimharris/isci/sys/dev/hyperv:r228377-230794 Merged /projects/multi-fibv6/head/sys/dev/hyperv:r230929-231848 Merged /head/sys/dev/hyperv:r244821-252117,254686-254687 Merged /projects/largeSMP/sys/dev/hyperv:r221273-222812,222815-223757 Merged /user/dfr/xenhvm/6/sys/dev/hyperv:r189304,189451 Merged /user/peter/kinfo/sys/dev/hyperv:r185413-185547 Merged /user/dfr/xenhvm/7/sys/dev/hyperv:r188574-189614 Merged /user/np/cxl_tuning/sys/dev/hyperv:r254336,254386,254736 Merged /user/mav/ata/sys/dev/hyperv:r189793-190578 Merged /user/alfred/9-alfred/sys/dev/hyperv:r242488 Merged /user/thompsa/usb/sys/dev/hyperv:r187190 Merged /projects/head_mfi/sys/dev/hyperv:r227068,227574,227579-227580,227612,227905,228108,228208,228279,228310,228320,231988,232412-232414,232888,233016,233620 Index: sys/dev/pci/hostb_pci.c =================================================================== --- sys/dev/pci/hostb_pci.c (revision 259108) +++ sys/dev/pci/hostb_pci.c (working copy) @@ -264,4 +264,4 @@ static devclass_t pci_hostb_devclass; -DRIVER_MODULE(hostb, pci, pci_hostb_driver, pci_hostb_devclass, 0, 0); +EARLY_DRIVER_MODULE(hostb, pci, pci_hostb_driver, pci_hostb_devclass, 0, 0, BUS_PASS_BUS); Index: sys/dev/pci/pci.c =================================================================== --- sys/dev/pci/pci.c (revision 259108) +++ sys/dev/pci/pci.c (working copy) @@ -182,7 +182,7 @@ DEFINE_CLASS_0(pci, pci_driver, pci_methods, sizeof(struct pci_softc)); static devclass_t pci_devclass; -DRIVER_MODULE(pci, pcib, pci_driver, pci_devclass, pci_modevent, NULL); +EARLY_DRIVER_MODULE(pci, pcib, pci_driver, pci_devclass, pci_modevent, NULL, BUS_PASS_BUS); MODULE_VERSION(pci, 1); static char *pci_vendordata; @@ -3457,7 +3457,7 @@ case PCIC_MEMORY: case PCIC_BRIDGE: case PCIC_BASEPERIPH: - DEVICE_RESUME(child); + error = DEVICE_RESUME(child); break; } } @@ -3470,11 +3470,11 @@ case PCIC_BASEPERIPH: break; default: - DEVICE_RESUME(child); + error = DEVICE_RESUME(child); } } free(devlist, M_TEMP); - return (0); + return (error); } static void Index: sys/kern/subr_bus.c =================================================================== --- sys/kern/subr_bus.c (revision 259108) +++ sys/kern/subr_bus.c (working copy) @@ -91,6 +91,7 @@ device_t *devices; /* array of devices indexed by unit */ int maxunit; /* size of devices array */ int flags; + int pass; #define DC_HAS_CHILDREN 1 struct sysctl_ctx_list sysctl_ctx; @@ -135,6 +136,7 @@ #define DF_DONENOMATCH 0x20 /* don't execute DEVICE_NOMATCH again */ #define DF_EXTERNALSOFTC 0x40 /* softc not allocated by us */ #define DF_REBID 0x80 /* Can rebid after attach */ +#define DF_SUSPENDED 0x100 /* Device is suspended. */ u_int order; /**< order from device_add_child_ordered() */ void *ivars; /**< instance variables */ void *softc; /**< current driver's variables */ @@ -1084,6 +1086,7 @@ TAILQ_INSERT_TAIL(&dc->drivers, dl, link); driver->refs++; /* XXX: kobj_mtx */ dl->pass = pass; + (*dcp)->pass = pass; /* Used in suspend/resume. */ driver_register_pass(dl); devclass_driver_added(dc, driver); @@ -3596,19 +3599,29 @@ bus_generic_suspend(device_t dev) { int error; + int again = 0; device_t child, child2; TAILQ_FOREACH(child, &dev->children, link) { - error = DEVICE_SUSPEND(child); - if (error) { - for (child2 = TAILQ_FIRST(&dev->children); - child2 && child2 != child; - child2 = TAILQ_NEXT(child2, link)) - DEVICE_RESUME(child2); - return (error); + if (!(child->flags & DF_SUSPENDED)) { + error = DEVICE_SUSPEND(child); + if (error && error != EAGAIN) { + for (child2 = TAILQ_FIRST(&dev->children); + child2 && child2 != child; + child2 = TAILQ_NEXT(child2, link)) { + DEVICE_RESUME(child2); + child2->flags &= ~DF_SUSPENDED; + } + return (error); + } + if (error == EAGAIN) { + again = EAGAIN; + continue; + } + child->flags |= DF_SUSPENDED; } } - return (0); + return (again); } /** @@ -3621,12 +3634,31 @@ bus_generic_resume(device_t dev) { device_t child; + int error = 0; TAILQ_FOREACH(child, &dev->children, link) { - DEVICE_RESUME(child); - /* if resume fails, there's nothing we can usefully do... */ + if (child->flags & DF_SUSPENDED) { + if (child->devclass->pass > bus_current_pass) { + if (bootverbose) + printf("Skipping: %s: %d, %d\n", + child->nameunit, + child->devclass->pass, + bus_current_pass); + error = EAGAIN; + continue; + } + if (DEVICE_RESUME(child) == EAGAIN) { + error = EAGAIN; + continue; + } + /* if resume fails, there's nothing we can usefully do... */ + child->flags &= ~DF_SUSPENDED; + } + else + if (bootverbose) + printf("Skipping %s: already resumed\n", child->nameunit); } - return (0); + return (error); } /** @@ -4431,9 +4463,17 @@ static int root_resume(device_t dev) { - int error; + struct driverlink *dl; + int error = 0; - error = bus_generic_resume(dev); + TAILQ_FOREACH(dl, &passes, passlink) { + bus_current_pass = dl->pass; + error = bus_generic_resume(dev); + + if (error != EAGAIN) + break; + } + if (error == 0) devctl_notify("kern", "power", "resume", NULL); return (error); @@ -4440,6 +4480,22 @@ } static int +root_suspend(device_t dev) +{ + struct driverlink *dl; + int error = 0; + + TAILQ_FOREACH_REVERSE(dl, &passes, driver_list, passlink) { + bus_current_pass = dl->pass; + error = bus_generic_suspend(dev); + if (error != EAGAIN) + break; + } + + return (error); +} + +static int root_print_child(device_t dev, device_t child) { int retval = 0; @@ -4476,7 +4532,7 @@ static kobj_method_t root_methods[] = { /* Device interface */ KOBJMETHOD(device_shutdown, bus_generic_shutdown), - KOBJMETHOD(device_suspend, bus_generic_suspend), + KOBJMETHOD(device_suspend, root_suspend), KOBJMETHOD(device_resume, root_resume), /* Bus interface */ Index: sys/modules/hyperv =================================================================== --- sys/modules/hyperv (revision 259108) +++ sys/modules/hyperv (working copy) Property changes on: sys/modules/hyperv ___________________________________________________________________ Modified: svn:mergeinfo Merged /head/sys/modules/hyperv:r244821-251772 Merged /projects/pmac_pmu/sys/modules/hyperv:r255832-259112 Index: sys/modules/vmm =================================================================== --- sys/modules/vmm (revision 259108) +++ sys/modules/vmm (working copy) Property changes on: sys/modules/vmm ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys/modules/vmm:r250993-259112 Index: sys/powerpc/aim/mp_cpudep.c =================================================================== --- sys/powerpc/aim/mp_cpudep.c (revision 259108) +++ sys/powerpc/aim/mp_cpudep.c (working copy) @@ -322,17 +322,13 @@ mtspr(SPR_CELL_TSRL, bsp_state[5]); break; - case MPC7450: - case MPC7455: - case MPC7457: - /* Only MPC745x CPUs have an L3 cache. */ - reg = mpc745x_l3_enable(bsp_state[3]); - - /* Fallthrough */ case MPC7400: case MPC7410: case MPC7447A: case MPC7448: + case MPC7450: + case MPC7455: + case MPC7457: /* XXX: Program the CPU ID into PIR */ __asm __volatile("mtspr 1023,%0" :: "r"(PCPU_GET(cpuid))); @@ -342,6 +338,17 @@ mtspr(SPR_HID0, bsp_state[0]); isync(); mtspr(SPR_HID1, bsp_state[1]); isync(); + /* Now enable the L3 cache. */ + switch (vers) { + case MPC7450: + case MPC7455: + case MPC7457: + /* Only MPC745x CPUs have an L3 cache. */ + reg = mpc745x_l3_enable(bsp_state[3]); + default: + break; + } + reg = mpc74xx_l2_enable(bsp_state[2]); reg = mpc74xx_l1d_enable(); reg = mpc74xx_l1i_enable(); Index: sys/powerpc/include/cpu.h =================================================================== --- sys/powerpc/include/cpu.h (revision 259108) +++ sys/powerpc/include/cpu.h (working copy) @@ -98,4 +98,6 @@ void fork_trampoline(void); void swi_vm(void *); +void flush_disable_caches(void); + #endif /* _MACHINE_CPU_H_ */ Index: sys/powerpc/include/dbdma.h =================================================================== --- sys/powerpc/include/dbdma.h (revision 259108) +++ sys/powerpc/include/dbdma.h (working copy) @@ -147,4 +147,7 @@ void dbdma_sync_commands(dbdma_channel_t *chan, bus_dmasync_op_t op); +void dbdma_save_state(dbdma_channel_t *chan); +void dbdma_restore_state(dbdma_channel_t *chan); + #endif /* _MACHINE_DBDMA_H_ */ Index: sys/powerpc/include/openpicreg.h =================================================================== --- sys/powerpc/include/openpicreg.h (revision 259108) +++ sys/powerpc/include/openpicreg.h (working copy) @@ -99,6 +99,7 @@ */ /* interrupt vector/priority reg */ +#define OPENPIC_SRC_VECTOR_COUNT 64 #ifndef OPENPIC_SRC_VECTOR #define OPENPIC_SRC_VECTOR(irq) (0x10000 + (irq) * 0x20) #endif Index: sys/powerpc/include/openpicvar.h =================================================================== --- sys/powerpc/include/openpicvar.h (revision 259108) +++ sys/powerpc/include/openpicvar.h (working copy) @@ -32,6 +32,14 @@ #define OPENPIC_IRQMAX 256 /* h/w allows more */ +/* Names match the macros in openpicreg.h. */ +struct openpic_timer { + uint32_t tcnt; + uint32_t tbase; + uint32_t tvec; + uint32_t tdst; +}; + struct openpic_softc { device_t sc_dev; struct resource *sc_memr; @@ -45,6 +53,14 @@ u_int sc_ncpu; u_int sc_nirq; int sc_psim; + + /* Saved states. */ + uint32_t sc_saved_config; + uint32_t sc_saved_ipis[4]; + uint32_t sc_saved_prios[4]; + struct openpic_timer sc_saved_timers[OPENPIC_TIMERS]; + uint32_t sc_saved_vectors[OPENPIC_SRC_VECTOR_COUNT]; + }; extern devclass_t openpic_devclass; @@ -66,4 +82,7 @@ void openpic_mask(device_t, u_int); void openpic_unmask(device_t, u_int); +int openpic_suspend(device_t dev); +int openpic_resume(device_t dev); + #endif /* _POWERPC_OPENPICVAR_H_ */ Index: sys/powerpc/include/pcpu.h =================================================================== --- sys/powerpc/include/pcpu.h (revision 259108) +++ sys/powerpc/include/pcpu.h (working copy) @@ -49,7 +49,8 @@ uint32_t pc_ipimask; \ register_t pc_tempsave[CPUSAVE_LEN]; \ register_t pc_disisave[CPUSAVE_LEN]; \ - register_t pc_dbsave[CPUSAVE_LEN]; + register_t pc_dbsave[CPUSAVE_LEN]; \ + void *pc_restore; #define PCPU_MD_AIM32_FIELDS \ /* char __pad[0] */ Index: sys/powerpc/include/spr.h =================================================================== --- sys/powerpc/include/spr.h (revision 259108) +++ sys/powerpc/include/spr.h (working copy) @@ -519,6 +519,8 @@ #define MSSCR0_EMODE 0x00200000 /* 10: MPX bus mode (read-only) */ #define MSSCR0_ABD 0x00100000 /* 11: address bus driven (read-only) */ #define MSSCR0_MBZ 0x000fffff /* 12-31: must be zero */ +#define MSSCR0_L2PFE 0x00000003 /* 30-31: L2 prefetch enable */ +#define SPR_LDSTCR 0x3f8 /* .6. Load/Store Control Register */ #define SPR_L2PM 0x3f8 /* .6. L2 Private Memory Control Register */ #define SPR_L2CR 0x3f9 /* .6. L2 Control Register */ #define L2CR_L2E 0x80000000 /* 0: L2 enable */ @@ -543,6 +545,7 @@ Setting this bit disables instruction caching. */ #define L2CR_L2I 0x00200000 /* 10: L2 global invalidate. */ +#define L2CR_L2IO_7450 0x00010000 /* 11: L2 instruction-only (MPC745x). */ #define L2CR_L2CTL 0x00100000 /* 11: L2 RAM control (ZZ enable). Enables automatic operation of the L2ZZ (low-power mode) signal. */ @@ -549,6 +552,7 @@ #define L2CR_L2WT 0x00080000 /* 12: L2 write-through. */ #define L2CR_L2TS 0x00040000 /* 13: L2 test support. */ #define L2CR_L2OH 0x00030000 /* 14-15: L2 output hold. */ +#define L2CR_L2DO_7450 0x00010000 /* 15: L2 data-only (MPC745x). */ #define L2CR_L2SL 0x00008000 /* 16: L2 DLL slow. */ #define L2CR_L2DF 0x00004000 /* 17: L2 differential clock. */ #define L2CR_L2BYP 0x00002000 /* 18: L2 DLL bypass. */ Index: sys/powerpc/ofw/ofw_pcib_pci.c =================================================================== --- sys/powerpc/ofw/ofw_pcib_pci.c (revision 259108) +++ sys/powerpc/ofw/ofw_pcib_pci.c (working copy) @@ -83,7 +83,7 @@ DEFINE_CLASS_1(pcib, ofw_pcib_pci_driver, ofw_pcib_pci_methods, sizeof(struct ofw_pcib_softc), pcib_driver); -DRIVER_MODULE(ofw_pcib, pci, ofw_pcib_pci_driver, pcib_devclass, 0, 0); +EARLY_DRIVER_MODULE(ofw_pcib, pci, ofw_pcib_pci_driver, pcib_devclass, 0, 0, BUS_PASS_BUS); static int ofw_pcib_pci_probe(device_t dev) Index: sys/powerpc/ofw/ofw_pcibus.c =================================================================== --- sys/powerpc/ofw/ofw_pcibus.c (revision 259108) +++ sys/powerpc/ofw/ofw_pcibus.c (working copy) @@ -93,7 +93,7 @@ DEFINE_CLASS_1(pci, ofw_pcibus_driver, ofw_pcibus_methods, sizeof(struct pci_softc), pci_driver); -DRIVER_MODULE(ofw_pcibus, pcib, ofw_pcibus_driver, pci_devclass, 0, 0); +EARLY_DRIVER_MODULE(ofw_pcibus, pcib, ofw_pcibus_driver, pci_devclass, 0, 0, BUS_PASS_BUS); MODULE_VERSION(ofw_pcibus, 1); MODULE_DEPEND(ofw_pcibus, pci, 1, 1, 1); Index: sys/powerpc/ofw/openpic_ofw.c =================================================================== --- sys/powerpc/ofw/openpic_ofw.c (revision 259108) +++ sys/powerpc/ofw/openpic_ofw.c (working copy) @@ -51,6 +51,7 @@ #include +#include #include #include "pic_if.h" @@ -68,6 +69,8 @@ /* Device interface */ DEVMETHOD(device_probe, openpic_ofw_probe), DEVMETHOD(device_attach, openpic_ofw_attach), + DEVMETHOD(device_suspend, openpic_suspend), + DEVMETHOD(device_resume, openpic_resume), /* PIC interface */ DEVMETHOD(pic_bind, openpic_bind), Index: sys/powerpc/powermac/ata_macio.c =================================================================== --- sys/powerpc/powermac/ata_macio.c (revision 259108) +++ sys/powerpc/powermac/ata_macio.c (working copy) @@ -114,11 +114,15 @@ static int ata_macio_setmode(device_t dev, int target, int mode); static int ata_macio_attach(device_t dev); static int ata_macio_begin_transaction(struct ata_request *request); +static int ata_macio_suspend(device_t dev); +static int ata_macio_resume(device_t dev); static device_method_t ata_macio_methods[] = { /* Device interface */ DEVMETHOD(device_probe, ata_macio_probe), DEVMETHOD(device_attach, ata_macio_attach), + DEVMETHOD(device_suspend, ata_macio_suspend), + DEVMETHOD(device_resume, ata_macio_resume), /* ATA interface */ DEVMETHOD(ata_setmode, ata_macio_setmode), @@ -336,3 +340,34 @@ return ata_begin_transaction(request); } + +static int +ata_macio_suspend(device_t dev) +{ + struct ata_dbdma_channel *ch = device_get_softc(dev); + int error; + + if (!ch->sc_ch.attached) + return (0); + + error = ata_suspend(dev); + dbdma_save_state(ch->dbdma); + + return (error); +} + +static int +ata_macio_resume(device_t dev) +{ + struct ata_dbdma_channel *ch = device_get_softc(dev); + int error; + + if (!ch->sc_ch.attached) + return (0); + + dbdma_restore_state(ch->dbdma); + error = ata_resume(dev); + + return (error); +} + Index: sys/powerpc/powermac/atibl.c =================================================================== --- sys/powerpc/powermac/atibl.c (revision 259108) +++ sys/powerpc/powermac/atibl.c (working copy) @@ -52,10 +52,15 @@ #define RADEON_LVDS_BL_MOD_EN (1 << 16) #define RADEON_LVDS_DIGON (1 << 18) #define RADEON_LVDS_BLON (1 << 19) +#define RADEON_LVDS_PLL_CNTL 0x02d4 +#define RADEON_LVDS_PLL_EN (1 << 16) +#define RADEON_LVDS_PLL_RESET (1 << 17) +#define RADEON_PIXCLKS_CNTL 0x002d +#define RADEON_PIXCLK_LVDS_ALWAYS_ONb (1 << 14) struct atibl_softc { - device_t dev; struct resource *sc_memr; + int sc_level; }; static void atibl_identify(driver_t *driver, device_t parent); @@ -63,13 +68,17 @@ static int atibl_attach(device_t dev); static int atibl_setlevel(struct atibl_softc *sc, int newlevel); static int atibl_getlevel(struct atibl_softc *sc); +static int atibl_resume(device_t dev); +static int atibl_suspend(device_t dev); static int atibl_sysctl(SYSCTL_HANDLER_ARGS); static device_method_t atibl_methods[] = { /* Device interface */ - DEVMETHOD(device_identify, atibl_identify), - DEVMETHOD(device_probe, atibl_probe), - DEVMETHOD(device_attach, atibl_attach), + DEVMETHOD(device_identify, atibl_identify), + DEVMETHOD(device_probe, atibl_probe), + DEVMETHOD(device_attach, atibl_attach), + DEVMETHOD(device_suspend, atibl_suspend), + DEVMETHOD(device_resume, atibl_resume), {0, 0}, }; @@ -136,8 +145,8 @@ tree = device_get_sysctl_tree(dev); SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, - "level", CTLTYPE_INT | CTLFLAG_RW, sc, 0, - atibl_sysctl, "I", "Backlight level (0-100)"); + "level", CTLTYPE_INT | CTLFLAG_RW, sc, 0, + atibl_sysctl, "I", "Backlight level (0-100)"); return (0); } @@ -146,6 +155,8 @@ atibl_setlevel(struct atibl_softc *sc, int newlevel) { uint32_t lvds_gen_cntl; + uint32_t lvds_pll_cntl; + uint32_t pixclks_cntl; if (newlevel > 100) newlevel = 100; @@ -155,12 +166,37 @@ newlevel = (newlevel * 5) / 2 + 5; lvds_gen_cntl = bus_read_4(sc->sc_memr, RADEON_LVDS_GEN_CNTL); - lvds_gen_cntl |= RADEON_LVDS_BL_MOD_EN; - lvds_gen_cntl &= ~RADEON_LVDS_BL_MOD_LEVEL_MASK; - lvds_gen_cntl |= (newlevel << RADEON_LVDS_BL_MOD_LEVEL_SHIFT) & - RADEON_LVDS_BL_MOD_LEVEL_MASK; - bus_write_4(sc->sc_memr, RADEON_LVDS_GEN_CNTL, lvds_gen_cntl); + if (newlevel > 0) { + lvds_pll_cntl = bus_read_4(sc->sc_memr, RADEON_LVDS_PLL_CNTL); + lvds_pll_cntl |= RADEON_LVDS_PLL_EN; + bus_write_4(sc->sc_memr, RADEON_LVDS_PLL_CNTL, lvds_pll_cntl); + lvds_pll_cntl &= ~RADEON_LVDS_PLL_RESET; + bus_write_4(sc->sc_memr, RADEON_LVDS_PLL_CNTL, lvds_pll_cntl); + + lvds_gen_cntl &= ~(RADEON_LVDS_DISPLAY_DIS | + RADEON_LVDS_BL_MOD_LEVEL_MASK); + lvds_gen_cntl |= RADEON_LVDS_ON | RADEON_LVDS_EN | + RADEON_LVDS_DIGON | RADEON_LVDS_BLON; + lvds_gen_cntl |= (newlevel << RADEON_LVDS_BL_MOD_LEVEL_SHIFT) & + RADEON_LVDS_BL_MOD_LEVEL_MASK; + lvds_gen_cntl |= RADEON_LVDS_BL_MOD_EN; + DELAY(2000); + bus_write_4(sc->sc_memr, RADEON_LVDS_GEN_CNTL, lvds_gen_cntl); + } else { + pixclks_cntl = bus_read_4(sc->sc_memr, RADEON_PIXCLKS_CNTL); + bus_write_4(sc->sc_memr, RADEON_PIXCLKS_CNTL, + pixclks_cntl & ~RADEON_PIXCLK_LVDS_ALWAYS_ONb); + lvds_gen_cntl |= RADEON_LVDS_DISPLAY_DIS; + lvds_gen_cntl &= RADEON_LVDS_BL_MOD_EN; + bus_write_4(sc->sc_memr, RADEON_LVDS_GEN_CNTL, lvds_gen_cntl); + lvds_gen_cntl &= ~(RADEON_LVDS_ON | RADEON_LVDS_EN); + DELAY(2000); + bus_write_4(sc->sc_memr, RADEON_LVDS_GEN_CNTL, lvds_gen_cntl); + + bus_write_4(sc->sc_memr, RADEON_PIXCLKS_CNTL, pixclks_cntl); + } + return (0); } @@ -173,7 +209,7 @@ lvds_gen_cntl = bus_read_4(sc->sc_memr, RADEON_LVDS_GEN_CNTL); level = ((lvds_gen_cntl & RADEON_LVDS_BL_MOD_LEVEL_MASK) >> - RADEON_LVDS_BL_MOD_LEVEL_SHIFT); + RADEON_LVDS_BL_MOD_LEVEL_SHIFT); level = ((level - 5) * 2) / 5; return (level); @@ -180,6 +216,31 @@ } static int +atibl_suspend(device_t dev) +{ + struct atibl_softc *sc; + + sc = device_get_softc(dev); + + sc->sc_level = atibl_getlevel(sc); + atibl_setlevel(sc, 0); + + return (0); +} + +static int +atibl_resume(device_t dev) +{ + struct atibl_softc *sc; + + sc = device_get_softc(dev); + + atibl_setlevel(sc, sc->sc_level); + + return (0); +} + +static int atibl_sysctl(SYSCTL_HANDLER_ARGS) { struct atibl_softc *sc; Index: sys/powerpc/powermac/cpcht.c =================================================================== --- sys/powerpc/powermac/cpcht.c (revision 259108) +++ sys/powerpc/powermac/cpcht.c (working copy) @@ -44,6 +44,7 @@ #include #include #include +#include #include #include #include Index: sys/powerpc/powermac/dbdma.c =================================================================== --- sys/powerpc/powermac/dbdma.c (revision 259108) +++ sys/powerpc/powermac/dbdma.c (working copy) @@ -343,6 +343,31 @@ bus_dmamap_sync(chan->sc_dmatag, chan->sc_dmamap, op); } +void +dbdma_save_state(dbdma_channel_t *chan) +{ + + chan->sc_saved_regs[0] = dbdma_read_reg(chan, CHAN_CMDPTR); + chan->sc_saved_regs[1] = dbdma_read_reg(chan, CHAN_CMDPTR_HI); + chan->sc_saved_regs[2] = dbdma_read_reg(chan, CHAN_INTR_SELECT); + chan->sc_saved_regs[3] = dbdma_read_reg(chan, CHAN_BRANCH_SELECT); + chan->sc_saved_regs[4] = dbdma_read_reg(chan, CHAN_WAIT_SELECT); + + dbdma_stop(chan); +} + +void +dbdma_restore_state(dbdma_channel_t *chan) +{ + + dbdma_wake(chan); + dbdma_write_reg(chan, CHAN_CMDPTR, chan->sc_saved_regs[0]); + dbdma_write_reg(chan, CHAN_CMDPTR_HI, chan->sc_saved_regs[1]); + dbdma_write_reg(chan, CHAN_INTR_SELECT, chan->sc_saved_regs[2]); + dbdma_write_reg(chan, CHAN_BRANCH_SELECT, chan->sc_saved_regs[3]); + dbdma_write_reg(chan, CHAN_WAIT_SELECT, chan->sc_saved_regs[4]); +} + static uint32_t dbdma_read_reg(dbdma_channel_t *chan, u_int offset) { Index: sys/powerpc/powermac/dbdmavar.h =================================================================== --- sys/powerpc/powermac/dbdmavar.h (revision 259108) +++ sys/powerpc/powermac/dbdmavar.h (working copy) @@ -60,6 +60,7 @@ bus_dma_tag_t sc_dmatag; bus_dmamap_t sc_dmamap; + uint32_t sc_saved_regs[5]; }; Index: sys/powerpc/powermac/macgpio.c =================================================================== --- sys/powerpc/powermac/macgpio.c (revision 259108) +++ sys/powerpc/powermac/macgpio.c (working copy) @@ -59,6 +59,9 @@ phandle_t sc_node; struct resource *sc_gpios; int sc_gpios_rid; + uint32_t sc_saved_gpio_levels[2]; + uint32_t sc_saved_gpios[GPIO_COUNT]; + uint32_t sc_saved_extint_gpios[GPIO_EXTINT_COUNT]; }; static MALLOC_DEFINE(M_MACGPIO, "macgpio", "macgpio device information"); @@ -74,6 +77,8 @@ static int macgpio_deactivate_resource(device_t, device_t, int, int, struct resource *); static ofw_bus_get_devinfo_t macgpio_get_devinfo; +static int macgpio_suspend(device_t dev); +static int macgpio_resume(device_t dev); /* * Bus interface definition @@ -84,8 +89,8 @@ DEVMETHOD(device_attach, macgpio_attach), DEVMETHOD(device_detach, bus_generic_detach), DEVMETHOD(device_shutdown, bus_generic_shutdown), - DEVMETHOD(device_suspend, bus_generic_suspend), - DEVMETHOD(device_resume, bus_generic_resume), + DEVMETHOD(device_suspend, macgpio_suspend), + DEVMETHOD(device_resume, macgpio_resume), /* Bus interface */ DEVMETHOD(bus_print_child, macgpio_print_child), @@ -322,6 +327,42 @@ return (bus_deactivate_resource(bus, type, rid, res)); } +static int +macgpio_suspend(device_t dev) +{ + struct macgpio_softc *sc; + int i; + + sc = device_get_softc(dev); + sc->sc_saved_gpio_levels[0] = bus_read_4(sc->sc_gpios, GPIO_LEVELS_0); + sc->sc_saved_gpio_levels[1] = bus_read_4(sc->sc_gpios, GPIO_LEVELS_1); + + for (i = 0; i < GPIO_COUNT; i++) + sc->sc_saved_gpios[i] = bus_read_1(sc->sc_gpios, GPIO_BASE + i); + for (i = 0; i < GPIO_EXTINT_COUNT; i++) + sc->sc_saved_extint_gpios[i] = bus_read_1(sc->sc_gpios, GPIO_EXTINT_BASE + i); + + return (0); +} + +static int +macgpio_resume(device_t dev) +{ + struct macgpio_softc *sc; + int i; + + sc = device_get_softc(dev); + bus_write_4(sc->sc_gpios, GPIO_LEVELS_0, sc->sc_saved_gpio_levels[0]); + bus_write_4(sc->sc_gpios, GPIO_LEVELS_1, sc->sc_saved_gpio_levels[1]); + + for (i = 0; i < GPIO_COUNT; i++) + bus_write_1(sc->sc_gpios, GPIO_BASE + i, sc->sc_saved_gpios[i]); + for (i = 0; i < GPIO_EXTINT_COUNT; i++) + bus_write_1(sc->sc_gpios, GPIO_EXTINT_BASE + i, sc->sc_saved_extint_gpios[i]); + + return (0); +} + uint8_t macgpio_read(device_t dev) { Index: sys/powerpc/powermac/macgpiovar.h =================================================================== --- sys/powerpc/powermac/macgpiovar.h (revision 259108) +++ sys/powerpc/powermac/macgpiovar.h (working copy) @@ -32,6 +32,12 @@ #define GPIO_EXTINT_BASE 0x08 #define GPIO_BASE 0x1a +#define GPIO_EXTINT_COUNT 0x12 +#define GPIO_COUNT 0x11 + +#define GPIO_LEVELS_0 0x50 +#define GPIO_LEVELS_1 0x54 + /* gpio bit definitions */ #define GPIO_DATA 0x01 /* GPIO data */ #define GPIO_LEVEL_RO 0x02 /* read-only level on pin */ Index: sys/powerpc/powermac/macio.c =================================================================== --- sys/powerpc/powermac/macio.c (revision 259108) +++ sys/powerpc/powermac/macio.c (working copy) @@ -69,6 +69,10 @@ /* FCR registers */ int sc_memrid; struct resource *sc_memr; + int sc_rev; + int sc_devid; + uint32_t saved_fcrs[6]; + uint32_t saved_mbcr; }; static MALLOC_DEFINE(M_MACIO, "macio", "macio device information"); @@ -75,6 +79,8 @@ static int macio_probe(device_t); static int macio_attach(device_t); +static int macio_suspend(device_t); +static int macio_resume(device_t); static int macio_print_child(device_t dev, device_t child); static void macio_probe_nomatch(device_t, device_t); static struct resource *macio_alloc_resource(device_t, device_t, int, int *, @@ -97,8 +103,8 @@ DEVMETHOD(device_attach, macio_attach), DEVMETHOD(device_detach, bus_generic_detach), DEVMETHOD(device_shutdown, bus_generic_shutdown), - DEVMETHOD(device_suspend, bus_generic_suspend), - DEVMETHOD(device_resume, bus_generic_resume), + DEVMETHOD(device_suspend, macio_suspend), + DEVMETHOD(device_resume, macio_resume), /* Bus interface */ DEVMETHOD(bus_print_child, macio_print_child), @@ -133,7 +139,7 @@ devclass_t macio_devclass; -DRIVER_MODULE(macio, pci, macio_pci_driver, macio_devclass, 0, 0); +EARLY_DRIVER_MODULE(macio, pci, macio_pci_driver, macio_devclass, 0, 0, BUS_PASS_BUS); /* * PCI ID search table @@ -319,6 +325,13 @@ } /* + * If possible, get the device ID and revision ID. + */ + OF_getprop(root, "revision-id", &sc->sc_rev, sizeof(sc->sc_rev)); + OF_getprop(root, "device-id", &sc->sc_devid, sizeof(sc->sc_devid)); + + + /* * Iterate through the sub-devices */ for (child = OF_child(root); child != 0; child = OF_peer(child)) { @@ -649,3 +662,103 @@ return (0); } + +static int macio_suspend(device_t dev) +{ + int error; + uint32_t temp; + struct macio_softc *sc = device_get_softc(dev); + + error = bus_generic_suspend(dev); + + if (error) + return (error); + + if (bus_current_pass != BUS_PASS_BUS) { + return (EAGAIN); + } + powerpc_sync(); + + sc->saved_fcrs[0] = bus_read_4(sc->sc_memr, KEYLARGO_FCR0); + sc->saved_fcrs[1] = bus_read_4(sc->sc_memr, KEYLARGO_FCR1); + sc->saved_fcrs[2] = bus_read_4(sc->sc_memr, KEYLARGO_FCR2); + sc->saved_fcrs[3] = bus_read_4(sc->sc_memr, KEYLARGO_FCR3); + sc->saved_fcrs[4] = bus_read_4(sc->sc_memr, KEYLARGO_FCR4); + sc->saved_fcrs[5] = bus_read_4(sc->sc_memr, KEYLARGO_FCR5); + + temp = sc->saved_fcrs[0]; + temp |= FCR0_USB_REF_SUSPEND; + bus_write_4(sc->sc_memr, KEYLARGO_FCR0, temp); + eieio(); powerpc_sync(); + DELAY(1000); + + temp &= ~(FCR0_SCCA_ENABLE | FCR0_SCCB_ENABLE | + FCR0_SCC_CELL_ENABLE | FCR0_IRDA_ENABLE | + FCR0_IRDA_CLK32_ENABLE | + FCR0_IRDA_CLK19_ENABLE); + bus_write_4(sc->sc_memr, KEYLARGO_FCR0, temp); + eieio(); powerpc_sync(); + + if (sc->sc_devid == 0x22) { + temp = bus_read_4(sc->sc_memr, KEYLARGO_MEDIABAY); + sc->saved_mbcr = temp; + temp |= KEYLARGO_MB0_DEV_ENABLE; + bus_write_4(sc->sc_memr, KEYLARGO_MEDIABAY, temp); + eieio(); powerpc_sync(); + } + + temp = sc->saved_fcrs[1]; + temp &= ~(FCR1_AUDIO_SEL_22MCLK | FCR1_AUDIO_CLK_ENABLE | + FCR1_AUDIO_CLKOUT_ENABLE | FCR1_AUDIO_CELL_ENABLE | + FCR1_I2S0_CELL_ENABLE | FCR1_I2S0_CLK_ENABLE | + FCR1_I2S0_ENABLE | + FCR1_I2S1_CELL_ENABLE | FCR1_I2S1_CLK_ENABLE | + FCR1_I2S1_ENABLE | + FCR1_EIDE0_ENABLE | FCR1_EIDE0_RESET | + FCR1_EIDE1_ENABLE | FCR1_EIDE1_RESET | + FCR1_UIDE_ENABLE + ); + bus_write_4(sc->sc_memr, KEYLARGO_FCR1, temp); + eieio(); powerpc_sync(); + + temp = sc->saved_fcrs[2]; + temp &= ~FCR2_IOBUS_ENABLE; + bus_write_4(sc->sc_memr, KEYLARGO_FCR2, temp); + eieio(); powerpc_sync(); + + temp = sc->saved_fcrs[3]; + temp |= (FCR3_SHUTDOWN_PLL_KW6 | FCR3_SHUTDOWN_PLL_KW4 | + FCR3_SHUTDOWN_PLL_KW35 | FCR3_SHUTDOWN_PLL_KW12); + temp &= ~(FCR3_CLK_66_ENABLE | FCR3_CLK_49_ENABLE | + FCR3_CLK_45_ENABLE | FCR3_CLK_31_ENABLE | + FCR3_TMR_CLK18_ENABLE | FCR3_I2S1_CLK18_ENABLE | + FCR3_I2S0_CLK18_ENABLE | FCR3_VIA_CLK16_ENABLE); + if (sc->sc_rev >= 2) + temp |= (FCR3_SHUTDOWN_PLL_2X | FCR3_SHUTDOWN_PLL_TOTAL); + bus_write_4(sc->sc_memr, KEYLARGO_FCR3, temp); + eieio(); powerpc_sync(); + powerpc_sync(); + return (0); +} + +static int macio_resume(device_t dev) +{ + struct macio_softc *sc = device_get_softc(dev); + + if (bus_current_pass == BUS_PASS_BUS) { + if (sc->sc_devid == 0x22) + bus_write_4(sc->sc_memr, KEYLARGO_MEDIABAY, sc->saved_mbcr); + + bus_write_4(sc->sc_memr, KEYLARGO_FCR0, sc->saved_fcrs[0]); + bus_write_4(sc->sc_memr, KEYLARGO_FCR1, sc->saved_fcrs[1]); + bus_write_4(sc->sc_memr, KEYLARGO_FCR2, sc->saved_fcrs[2]); + bus_write_4(sc->sc_memr, KEYLARGO_FCR3, sc->saved_fcrs[3]); + bus_write_4(sc->sc_memr, KEYLARGO_FCR4, sc->saved_fcrs[4]); + bus_write_4(sc->sc_memr, KEYLARGO_FCR5, sc->saved_fcrs[5]); + } + + /* Let things settle. */ + DELAY(1000); + + return (bus_generic_resume(dev)); +} Index: sys/powerpc/powermac/maciovar.h =================================================================== --- sys/powerpc/powermac/maciovar.h (revision 259108) +++ sys/powerpc/powermac/maciovar.h (working copy) @@ -44,6 +44,9 @@ #define KEYLARGO_FCR0 0x38 #define KEYLARGO_FCR1 0x3c #define KEYLARGO_FCR2 0x40 +#define KEYLARGO_FCR3 0x44 +#define KEYLARGO_FCR4 0x48 +#define KEYLARGO_FCR5 0x4c #define FCR_ENET_ENABLE 0x60000000 #define FCR_ENET_RESET 0x80000000 @@ -52,6 +55,63 @@ #define KEYLARGO_GPIO_BASE 0x6a #define KEYLARGO_EXTINT_GPIO_REG_BASE 0x58 +#define KEYLARGO_MEDIABAY 0x34 +#define KEYLARGO_MB0_DEV_ENABLE 0x00001000 +#define KEYLARGO_MB0_DEV_POWER 0x00000400 +#define KEYLARGO_MB0_DEV_RESET 0x00000200 +#define KEYLARGO_MB0_ENABLE 0x00000100 +#define KEYLARGO_MB1_DEV_ENABLE 0x10000000 +#define KEYLARGO_MB1_DEV_POWER 0x04000000 +#define KEYLARGO_MB1_DEV_RESET 0x02000000 +#define KEYLARGO_MB1_ENABLE 0x01000000 + +#define FCR0_CHOOSE_SCCB 0x00000001 +#define FCR0_CHOOSE_SCCA 0x00000002 +#define FCR0_SLOW_SCC_PCLK 0x00000004 +#define FCR0_RESET_SCC 0x00000008 +#define FCR0_SCCA_ENABLE 0x00000010 +#define FCR0_SCCB_ENABLE 0x00000020 +#define FCR0_SCC_CELL_ENABLE 0x00000040 +#define FCR0_IRDA_ENABLE 0x00008000 +#define FCR0_IRDA_CLK32_ENABLE 0x00010000 +#define FCR0_IRDA_CLK19_ENABLE 0x00020000 + +#define FCR0_USB_REF_SUSPEND 0x10000000 + +#define FCR1_AUDIO_SEL_22MCLK 0x00000002 +#define FCR1_AUDIO_CLK_ENABLE 0x00000008 +#define FCR1_AUDIO_CLKOUT_ENABLE 0x00000020 +#define FCR1_AUDIO_CELL_ENABLE 0x00000040 +#define FCR1_I2S0_CELL_ENABLE 0x00000400 +#define FCR1_I2S0_CLK_ENABLE 0x00001000 +#define FCR1_I2S0_ENABLE 0x00002000 +#define FCR1_I2S1_CELL_ENABLE 0x00020000 +#define FCR1_I2S1_CLK_ENABLE 0x00080000 +#define FCR1_I2S1_ENABLE 0x00100000 +#define FCR1_EIDE0_ENABLE 0x00800000 +#define FCR1_EIDE0_RESET 0x01000000 +#define FCR1_EIDE1_ENABLE 0x04000000 +#define FCR1_EIDE1_RESET 0x08000000 +#define FCR1_UIDE_ENABLE 0x20000000 +#define FCR1_UIDE_RESET 0x40000000 + +#define FCR2_IOBUS_ENABLE 0x00000002 + +#define FCR3_SHUTDOWN_PLL_TOTAL 0x00000001 +#define FCR3_SHUTDOWN_PLL_KW6 0x00000002 +#define FCR3_SHUTDOWN_PLL_KW4 0x00000004 +#define FCR3_SHUTDOWN_PLL_KW35 0x00000008 +#define FCR3_SHUTDOWN_PLL_KW12 0x00000010 +#define FCR3_SHUTDOWN_PLL_2X 0x00000080 +#define FCR3_CLK_66_ENABLE 0x00000100 +#define FCR3_CLK_49_ENABLE 0x00000200 +#define FCR3_CLK_45_ENABLE 0x00000400 +#define FCR3_CLK_31_ENABLE 0x00000800 +#define FCR3_TMR_CLK18_ENABLE 0x00001000 +#define FCR3_I2S1_CLK18_ENABLE 0x00002000 +#define FCR3_I2S0_CLK18_ENABLE 0x00004000 +#define FCR3_VIA_CLK16_ENABLE 0x00008000 + /* * Format of a macio reg property entry. */ Index: sys/powerpc/powermac/platform_powermac.c =================================================================== --- sys/powerpc/powermac/platform_powermac.c (revision 259108) +++ sys/powerpc/powermac/platform_powermac.c (working copy) @@ -376,6 +376,110 @@ #endif } +/* From p3-53 of the MPC7450 RISC Microprocessor Family Reference Manual */ +void +flush_disable_caches(void) +{ + register_t msr; + register_t msscr0; + register_t cache_reg; + volatile uint32_t *memp; + uint32_t temp; + int i; + int x; + + msr = mfmsr(); + powerpc_sync(); + mtmsr(msr & ~(PSL_EE | PSL_DR)); + msscr0 = mfspr(SPR_MSSCR0); + msscr0 &= ~MSSCR0_L2PFE; + mtspr(SPR_MSSCR0, msscr0); + powerpc_sync(); + isync(); + __asm__ __volatile__("dssall; sync"); + powerpc_sync(); + isync(); + __asm__ __volatile__("dcbf 0,%0" :: "r"(0)); + __asm__ __volatile__("dcbf 0,%0" :: "r"(0)); + __asm__ __volatile__("dcbf 0,%0" :: "r"(0)); + + /* Lock the L1 Data cache. */ + mtspr(SPR_LDSTCR, mfspr(SPR_LDSTCR) | 0xFF); + powerpc_sync(); + isync(); + + mtspr(SPR_LDSTCR, 0); + + /* + * Perform this in two stages: Flush the cache starting in RAM, then do it + * from ROM. + */ + memp = (volatile uint32_t *)0x00000000; + for (i = 0; i < 128 * 1024; i++) { + temp = *memp; + __asm__ __volatile__("dcbf 0,%0" :: "r"(memp)); + memp += 32/sizeof(*memp); + } + + memp = (volatile uint32_t *)0xfff00000; + x = 0xfe; + + for (; x != 0xff;) { + mtspr(SPR_LDSTCR, x); + for (i = 0; i < 128; i++) { + temp = *memp; + __asm__ __volatile__("dcbf 0,%0" :: "r"(memp)); + memp += 32/sizeof(*memp); + } + x = ((x << 1) | 1) & 0xff; + } + mtspr(SPR_LDSTCR, 0); + + cache_reg = mfspr(SPR_L2CR); + if (cache_reg & L2CR_L2E) { + cache_reg &= ~(L2CR_L2IO_7450 | L2CR_L2DO_7450); + mtspr(SPR_L2CR, cache_reg); + powerpc_sync(); + mtspr(SPR_L2CR, cache_reg | L2CR_L2HWF); + while (mfspr(SPR_L2CR) & L2CR_L2HWF) + ; /* Busy wait for cache to flush */ + powerpc_sync(); + cache_reg &= ~L2CR_L2E; + mtspr(SPR_L2CR, cache_reg); + powerpc_sync(); + mtspr(SPR_L2CR, cache_reg | L2CR_L2I); + powerpc_sync(); + while (mfspr(SPR_L2CR) & L2CR_L2I) + ; /* Busy wait for L2 cache invalidate */ + powerpc_sync(); + } + + cache_reg = mfspr(SPR_L3CR); + if (cache_reg & L3CR_L3E) { + cache_reg &= ~(L3CR_L3IO | L3CR_L3DO); + mtspr(SPR_L3CR, cache_reg); + powerpc_sync(); + mtspr(SPR_L3CR, cache_reg | L3CR_L3HWF); + while (mfspr(SPR_L3CR) & L3CR_L3HWF) + ; /* Busy wait for cache to flush */ + powerpc_sync(); + cache_reg &= ~L3CR_L3E; + mtspr(SPR_L3CR, cache_reg); + powerpc_sync(); + mtspr(SPR_L3CR, cache_reg | L3CR_L3I); + powerpc_sync(); + while (mfspr(SPR_L3CR) & L3CR_L3I) + ; /* Busy wait for L3 cache invalidate */ + powerpc_sync(); + } + + mtspr(SPR_HID0, mfspr(SPR_HID0) & ~HID0_DCE); + powerpc_sync(); + isync(); + + mtmsr(msr); +} + static void powermac_reset(platform_t platform) { Index: sys/powerpc/powermac/pmu.c =================================================================== --- sys/powerpc/powermac/pmu.c (revision 259108) +++ sys/powerpc/powermac/pmu.c (working copy) @@ -36,6 +36,7 @@ #include #include #include +#include #include #include @@ -43,11 +44,18 @@ #include #include +#include +#include /* For save_vec() */ #include +#include +#include /* For save_fpu() */ +#include #include #include +#include #include #include +#include #include #include @@ -59,7 +67,12 @@ #include "clock_if.h" #include "pmuvar.h" #include "viareg.h" +#include "uninorthvar.h" /* For unin_chip_sleep()/unin_chip_wake() */ +#define PMU_DEFAULTS PMU_INT_TICK | PMU_INT_ADB | \ + PMU_INT_PCEJECT | PMU_INT_SNDBRT | \ + PMU_INT_BATTERY | PMU_INT_ENVIRONMENT + /* * Bus interface */ @@ -89,10 +102,16 @@ static void pmu_shutdown(void *xsc, int howto); static void pmu_set_sleepled(void *xsc, int onoff); static int pmu_server_mode(SYSCTL_HANDLER_ARGS); +static int pmu_sleep(SYSCTL_HANDLER_ARGS); static int pmu_acline_state(SYSCTL_HANDLER_ARGS); static int pmu_query_battery(struct pmu_softc *sc, int batt, struct pmu_battstate *info); static int pmu_battquery_sysctl(SYSCTL_HANDLER_ARGS); +static void pmu_restore_state(struct pmu_softc *sc); +static void pmu_save_state(struct pmu_softc *sc); +static int pmu_suspend(device_t); +static int pmu_resume(device_t); +static void pmu_sleep_int(void); /* * List of battery-related sysctls we might ask for @@ -115,8 +134,8 @@ DEVMETHOD(device_attach, pmu_attach), DEVMETHOD(device_detach, pmu_detach), DEVMETHOD(device_shutdown, bus_generic_shutdown), - DEVMETHOD(device_suspend, bus_generic_suspend), - DEVMETHOD(device_resume, bus_generic_resume), + DEVMETHOD(device_suspend, pmu_suspend), + DEVMETHOD(device_resume, pmu_resume), /* ADB bus interface */ DEVMETHOD(adb_hb_send_raw_packet, pmu_adb_send), @@ -193,7 +212,7 @@ 0x02, -1, -1, -1, -1, -1, -1, -1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -1, -1, 0x01, 0x01, 0x01, -1, -1, -1, -1, -1, - 0x00, 0x00, -1, -1, -1, -1, 0x04, 0x04, + 0x00, 0x00, -1, -1, -1, 0x05, 0x04, 0x04, 0x04, -1, 0x00, -1, -1, -1, -1, -1, 0x00, -1, -1, -1, -1, -1, -1, -1, 0x01, 0x02, -1, -1, -1, -1, -1, -1, @@ -229,7 +248,7 @@ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x03, 0x09, -1, -1, -1, -1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - -1, -1, -1, -1, -1, -1, 0x01, 0x01, + -1, -1, -1, -1, -1, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, -1, -1, -1, -1, -1, -1, -1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -357,12 +376,13 @@ /* Init PMU */ - reg = PMU_INT_TICK | PMU_INT_ADB | PMU_INT_PCEJECT | PMU_INT_SNDBRT; - reg |= PMU_INT_BATTERY; - reg |= PMU_INT_ENVIRONMENT; + pmu_write_reg(sc, vBufB, pmu_read_reg(sc, vBufB) | vPB4); + pmu_write_reg(sc, vDirB, (pmu_read_reg(sc, vDirB) | vPB4) & ~vPB3); + + reg = PMU_DEFAULTS; pmu_send(sc, PMU_SET_IMASK, 1, ®, 16, resp); - pmu_write_reg(sc, vIER, 0x90); /* make sure VIA interrupts are on */ + pmu_write_reg(sc, vIER, 0x94); /* make sure VIA interrupts are on */ pmu_send(sc, PMU_SYSTEM_READY, 1, cmd, 16, resp); pmu_send(sc, PMU_GET_VERSION, 1, cmd, 16, resp); @@ -407,6 +427,10 @@ "server_mode", CTLTYPE_INT | CTLFLAG_RW, sc, 0, pmu_server_mode, "I", "Enable reboot after power failure"); + SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, + "sleep", CTLTYPE_INT | CTLFLAG_RW, sc, 0, + pmu_sleep, "I", "Put the machine to sleep"); + if (sc->sc_batteries > 0) { struct sysctl_oid *oid, *battroot; char battnum[2]; @@ -464,6 +488,7 @@ } } + sc->lid_closed = 0; /* * Set up LED interface */ @@ -515,6 +540,43 @@ bus_write_1(sc->sc_memr, offset, value); } +static void +pmu_save_state(struct pmu_softc *sc) +{ + sc->saved_regs[0] = pmu_read_reg(sc, vBufA); + sc->saved_regs[1] = pmu_read_reg(sc, vDirA); + sc->saved_regs[2] = pmu_read_reg(sc, vBufB); + sc->saved_regs[3] = pmu_read_reg(sc, vDirB); + sc->saved_regs[4] = pmu_read_reg(sc, vPCR); + sc->saved_regs[5] = pmu_read_reg(sc, vACR); + sc->saved_regs[6] = pmu_read_reg(sc, vIER); + sc->saved_regs[7] = pmu_read_reg(sc, vT1C); + sc->saved_regs[8] = pmu_read_reg(sc, vT1CH); +} + +static void +pmu_restore_state(struct pmu_softc *sc) +{ + pmu_write_reg(sc, vBufA, sc->saved_regs[0]); + eieio(); + pmu_write_reg(sc, vDirA, sc->saved_regs[1]); + eieio(); + pmu_write_reg(sc, vBufB, sc->saved_regs[2]); + eieio(); + pmu_write_reg(sc, vDirB, sc->saved_regs[3]); + eieio(); + pmu_write_reg(sc, vPCR, sc->saved_regs[4]); + eieio(); + pmu_write_reg(sc, vACR, sc->saved_regs[5]); + eieio(); + pmu_write_reg(sc, vIER, sc->saved_regs[6]); + eieio(); + pmu_write_reg(sc, vT1C, sc->saved_regs[7]); + eieio(); + pmu_write_reg(sc, vT1CH, sc->saved_regs[8]); + eieio(); +} + static int pmu_send_byte(struct pmu_softc *sc, uint8_t data) { @@ -1018,3 +1080,163 @@ return (0); } +static int +pmu_suspend(device_t dev) +{ + uint8_t resp[16]; + uint8_t clrcmd[] = {PMU_PWR_CLR_POWERUP_EVENTS, 0xff, 0xff}; + uint8_t setcmd[] = {PMU_PWR_SET_POWERUP_EVENTS, 0, + PMU_PWR_WAKEUP_LID_OPEN|PMU_PWR_WAKEUP_KEY}; + uint8_t sleepcmd[] = {'M', 'A', 'T', 'T'}; + uint8_t reg = 0; + struct pmu_softc *sc; + + sc = device_get_softc(dev); + mtx_lock(&sc->sc_mutex); + pmu_send(sc, PMU_SET_IMASK, 1, ®, 16, resp); + pmu_send(sc, PMU_POWER_EVENTS, 3, clrcmd, 16, resp); + pmu_send(sc, PMU_POWER_EVENTS, 3, setcmd, 2, resp); + + pmu_send(sc, PMU_SLEEP, 4, sleepcmd, 16, resp); + pmu_save_state(sc); + mtx_unlock(&sc->sc_mutex); + + return (0); +} + +static int +pmu_resume(device_t dev) +{ + uint8_t resp[16]; + uint8_t cmd[2] = {2, 0}; + struct pmu_softc *sc; + uint8_t reg; + + sc = device_get_softc(dev); + mtx_lock(&sc->sc_mutex); + pmu_restore_state(sc); + pmu_send(sc, PMU_SYSTEM_READY, 1, cmd, 16, resp); + reg = PMU_DEFAULTS; + pmu_send(sc, PMU_SET_IMASK, 1, ®, 16, resp); + mtx_unlock(&sc->sc_mutex); + + return (0); +} + +static register_t sprgs[4]; +static register_t srrs[2]; +extern void *ap_pcpu; + +void pmu_sleep_int(void) +{ + static u_quad_t timebase = 0; + jmp_buf resetjb; + struct thread *fputd; + struct thread *vectd; + register_t hid0; + register_t msr; + register_t saved_msr; + + ap_pcpu = pcpup; + + PCPU_SET(restore, &resetjb); + + *(unsigned long *)0x80 = 0x100; + saved_msr = mfmsr(); + fputd = PCPU_GET(fputhread); + vectd = PCPU_GET(vecthread); + if (fputd != NULL) + save_fpu(fputd); + if (vectd != NULL) + save_vec(vectd); + if (setjmp(resetjb) == 0) { + sprgs[0] = mfspr(SPR_SPRG0); + sprgs[1] = mfspr(SPR_SPRG1); + sprgs[2] = mfspr(SPR_SPRG2); + sprgs[3] = mfspr(SPR_SPRG3); + srrs[0] = mfspr(SPR_SRR0); + srrs[1] = mfspr(SPR_SRR1); + timebase = mftb(); + powerpc_sync(); + flush_disable_caches(); + hid0 = mfspr(SPR_HID0); + hid0 = (hid0 & ~(HID0_DOZE | HID0_NAP)) | HID0_SLEEP; + powerpc_sync(); + isync(); + msr = mfmsr() | PSL_POW; + mtspr(SPR_HID0, hid0); + powerpc_sync(); + + while (1) + mtmsr(msr); + } + mttb(timebase); + PCPU_SET(curthread, curthread); + PCPU_SET(curpcb, curthread->td_pcb); + pmap_activate(curthread); + powerpc_sync(); + mtspr(SPR_SPRG0, sprgs[0]); + mtspr(SPR_SPRG1, sprgs[1]); + mtspr(SPR_SPRG2, sprgs[2]); + mtspr(SPR_SPRG3, sprgs[3]); + mtspr(SPR_SRR0, srrs[0]); + mtspr(SPR_SRR1, srrs[1]); + mtmsr(saved_msr); + if (fputd == curthread) + enable_fpu(curthread); + if (vectd == curthread) + enable_vec(curthread); + powerpc_sync(); +} + +static int +pmu_sleep(SYSCTL_HANDLER_ARGS) +{ + u_int sleep = 0; + int error; + + error = sysctl_handle_int(oidp, &sleep, 0, req); + + if (error || !req->newptr) + return (error); + + mtx_lock(&Giant); + error = DEVICE_SUSPEND(root_bus); + if (error == 0) { + spinlock_enter(); + pmu_sleep_int(); + + spinlock_exit(); + DEVICE_RESUME(root_bus); + } + mtx_unlock(&Giant); + + return (error); +} + +int +pmu_set_speed(int low_speed) +{ + struct pmu_softc *sc; + uint8_t sleepcmd[] = {'W', 'O', 'O', 'F', 0}; + uint8_t resp[16]; + + sc = device_get_softc(pmu); + pmu_write_reg(sc, vIER, 0x10); + spinlock_enter(); + mtdec(0x7fffffff); + mb(); + mtdec(0x7fffffff); + + sleepcmd[4] = low_speed; + pmu_send(sc, PMU_CPU_SPEED, 5, sleepcmd, 16, resp); + unin_chip_sleep(NULL, 1); + pmu_sleep_int(); + unin_chip_wake(NULL); + + mtdec(1); /* Force a decrementer exception */ + spinlock_exit(); + pmu_write_reg(sc, vIER, 0x90); + + return (0); +} Index: sys/powerpc/powermac/pmuvar.h =================================================================== --- sys/powerpc/powermac/pmuvar.h (revision 259108) +++ sys/powerpc/powermac/pmuvar.h (working copy) @@ -161,6 +161,7 @@ int sc_batteries; struct cdev *sc_leddev; int lid_closed; + uint8_t saved_regs[9]; }; struct pmu_battstate { @@ -172,4 +173,6 @@ int voltage; }; +int pmu_set_speed(int low_speed); + #endif /* PMUVAR_H */ Index: sys/powerpc/powermac/uninorth.c =================================================================== --- sys/powerpc/powermac/uninorth.c (revision 259108) +++ sys/powerpc/powermac/uninorth.c (working copy) @@ -65,6 +65,8 @@ static int unin_chip_probe(device_t); static int unin_chip_attach(device_t); +static int unin_chip_suspend(device_t); +static int unin_chip_resume(device_t); /* * Bus interface. @@ -102,6 +104,8 @@ /* Device interface */ DEVMETHOD(device_probe, unin_chip_probe), DEVMETHOD(device_attach, unin_chip_attach), + DEVMETHOD(device_suspend, unin_chip_suspend), + DEVMETHOD(device_resume, unin_chip_resume), /* Bus interface */ DEVMETHOD(bus_print_child, unin_chip_print_child), @@ -136,8 +140,15 @@ static devclass_t unin_chip_devclass; -DRIVER_MODULE(unin, nexus, unin_chip_driver, unin_chip_devclass, 0, 0); +/* + * Assume there is only one unin chip in a PowerMac, so that pmu.c functions can + * suspend the chip after the whole rest of the device tree is suspended, not + * earlier. + */ +static device_t unin_chip; +EARLY_DRIVER_MODULE(unin, nexus, unin_chip_driver, unin_chip_devclass, 0, 0, BUS_PASS_BUS); + /* * Add an interrupt to the dev's resource list if present */ @@ -210,31 +221,30 @@ } static void -unin_enable_gmac(device_t dev) +unin_update_reg(device_t dev, uint32_t regoff, uint32_t set, uint32_t clr) { - volatile u_int *clkreg; + volatile u_int *reg; struct unin_chip_softc *sc; u_int32_t tmpl; sc = device_get_softc(dev); - clkreg = (void *)(sc->sc_addr + UNIN_CLOCKCNTL); - tmpl = inl(clkreg); - tmpl |= UNIN_CLOCKCNTL_GMAC; - outl(clkreg, tmpl); + reg = (void *)(sc->sc_addr + regoff); + tmpl = inl(reg); + tmpl &= ~clr; + tmpl |= set; + outl(reg, tmpl); } static void +unin_enable_gmac(device_t dev) +{ + unin_update_reg(dev, UNIN_CLOCKCNTL, UNIN_CLOCKCNTL_GMAC, 0); +} + +static void unin_enable_mpic(device_t dev) { - volatile u_int *toggle; - struct unin_chip_softc *sc; - u_int32_t tmpl; - - sc = device_get_softc(dev); - toggle = (void *)(sc->sc_addr + UNIN_TOGGLE_REG); - tmpl = inl(toggle); - tmpl |= UNIN_MPIC_RESET | UNIN_MPIC_OUTPUT_ENABLE; - outl(toggle, tmpl); + unin_update_reg(dev, UNIN_TOGGLE_REG, UNIN_MPIC_RESET | UNIN_MPIC_OUTPUT_ENABLE, 0); } static int @@ -311,6 +321,9 @@ return (error); } + if (unin_chip == NULL) + unin_chip = dev; + /* * Iterate through the sub-devices */ @@ -631,3 +644,61 @@ return (&dinfo->udi_obdinfo); } +static int +unin_chip_suspend(device_t dev) +{ + int error; + + error = bus_generic_suspend(dev); + + if (error) + return (error); + + if (bus_current_pass == BUS_PASS_BUS) + error = unin_chip_sleep(dev, 0); + else + error = EAGAIN; + + return (error); +} + +static int +unin_chip_resume(device_t dev) +{ + + if (bus_current_pass == BUS_PASS_BUS) + unin_chip_wake(dev); + + return (bus_generic_resume(dev)); +} + +int +unin_chip_wake(device_t dev) +{ + + if (dev == NULL) + dev = unin_chip; + unin_update_reg(dev, UNIN_PWR_MGMT, UNIN_PWR_NORMAL, UNIN_PWR_MASK); + DELAY(10); + unin_update_reg(dev, UNIN_HWINIT_STATE, UNIN_RUNNING, 0); + DELAY(100); + + return (0); +} + +int +unin_chip_sleep(device_t dev, int idle) +{ + if (dev == NULL) + dev = unin_chip; + + unin_update_reg(dev, UNIN_HWINIT_STATE, UNIN_SLEEPING, 0); + DELAY(10); + if (idle) + unin_update_reg(dev, UNIN_PWR_MGMT, UNIN_PWR_IDLE2, UNIN_PWR_MASK); + else + unin_update_reg(dev, UNIN_PWR_MGMT, UNIN_PWR_SLEEP, UNIN_PWR_MASK); + DELAY(10); + + return (0); +} Index: sys/powerpc/powermac/uninorthpci.c =================================================================== --- sys/powerpc/powermac/uninorthpci.c (revision 259108) +++ sys/powerpc/powermac/uninorthpci.c (working copy) @@ -86,6 +86,8 @@ /* Device interface */ DEVMETHOD(device_probe, uninorth_probe), DEVMETHOD(device_attach, uninorth_attach), + DEVMETHOD(device_suspend, bus_generic_suspend), + DEVMETHOD(device_resume, bus_generic_resume), /* pcib interface */ DEVMETHOD(pcib_read_config, uninorth_read_config), @@ -98,7 +100,7 @@ DEFINE_CLASS_1(pcib, uninorth_driver, uninorth_methods, sizeof(struct uninorth_softc), ofw_pci_driver); -DRIVER_MODULE(uninorth, nexus, uninorth_driver, uninorth_devclass, 0, 0); +EARLY_DRIVER_MODULE(uninorth, nexus, uninorth_driver, uninorth_devclass, 0, 0, BUS_PASS_BUS); static int uninorth_probe(device_t dev) Index: sys/powerpc/powermac/uninorthvar.h =================================================================== --- sys/powerpc/powermac/uninorthvar.h (revision 259108) +++ sys/powerpc/powermac/uninorthvar.h (working copy) @@ -28,6 +28,8 @@ #ifndef _POWERPC_POWERMAC_UNINORTHVAR_H_ #define _POWERPC_POWERMAC_UNINORTHVAR_H_ +#include +#include #include struct uninorth_softc { @@ -76,6 +78,24 @@ #define UNIN_CLOCKCNTL_GMAC 0x2 /* + * Power management register + */ +#define UNIN_PWR_MGMT 0x30 +#define UNIN_PWR_NORMAL 0x00 +#define UNIN_PWR_IDLE2 0x01 +#define UNIN_PWR_SLEEP 0x02 +#define UNIN_PWR_SAVE 0x03 +#define UNIN_PWR_MASK 0x03 + +/* + * Hardware initialization state register + */ +#define UNIN_HWINIT_STATE 0x70 +#define UNIN_SLEEPING 0x01 +#define UNIN_RUNNING 0x02 + + +/* * Toggle registers */ #define UNIN_TOGGLE_REG 0xe0 @@ -82,4 +102,6 @@ #define UNIN_MPIC_RESET 0x2 #define UNIN_MPIC_OUTPUT_ENABLE 0x4 +extern int unin_chip_sleep(device_t dev, int idle); +extern int unin_chip_wake(device_t dev); #endif /* _POWERPC_POWERMAC_UNINORTHVAR_H_ */ Index: sys/powerpc/powermac/viareg.h =================================================================== --- sys/powerpc/powermac/viareg.h (revision 259108) +++ sys/powerpc/powermac/viareg.h (working copy) @@ -30,14 +30,16 @@ /* VIA interface registers */ #define vBufB 0x0000 /* register B */ -#define vBufA 0x0200 /* register A */ #define vDirB 0x0400 /* data direction register */ #define vDirA 0x0600 /* data direction register */ +#define vT1C 0x0800 /* Timer 1 counter Lo */ +#define vT1CH 0x0a00 /* Timer 1 counter Hi */ #define vSR 0x1400 /* shift register */ #define vACR 0x1600 /* aux control register */ #define vPCR 0x1800 /* peripheral control register */ #define vIFR 0x1a00 /* interrupt flag register */ #define vIER 0x1c00 /* interrupt enable register */ +#define vBufA 0x1e00 /* register A */ #define vPB 0x0000 #define vPB3 0x08 Index: sys/powerpc/powerpc/mp_machdep.c =================================================================== --- sys/powerpc/powerpc/mp_machdep.c (revision 259108) +++ sys/powerpc/powerpc/mp_machdep.c (working copy) @@ -54,6 +54,7 @@ #include #include #include +#include #include #include "pic_if.h" @@ -66,10 +67,21 @@ static u_int ipi_msg_cnt[32]; static struct mtx ap_boot_mtx; struct pcb stoppcbs[MAXCPU]; +int longfault(faultbuf, int); void machdep_ap_bootstrap(void) { + jmp_buf *restore; + + /* The following is needed for restoring from sleep. */ +#ifdef __powerpc64__ + /* Writing to the time base register is hypervisor-privileged */ + if (mfmsr() & PSL_HV) + mttb(0); +#else + mttb(0); +#endif /* Set up important bits on the CPU (HID registers, etc.) */ cpudep_ap_setup(); @@ -78,10 +90,16 @@ PCPU_SET(awake, 1); __asm __volatile("msync; isync"); - while (ap_letgo == 0) - ; + if (mp_ncpus > 1 && !pcpup->pc_bsp) { + while (ap_letgo == 0) + ; + } - /* Initialize DEC and TB, sync with the BSP values */ + restore = PCPU_GET(restore); + if (restore != NULL) { + longjmp(*restore, 1); + } + #ifdef __powerpc64__ /* Writing to the time base register is hypervisor-privileged */ if (mfmsr() & PSL_HV) @@ -89,6 +107,8 @@ #else mttb(ap_timebase); #endif + + /* Initialize DEC, sync with the BSP values */ decr_ap_init(); /* Give platform code a chance to do anything necessary */ Index: sys/powerpc/powerpc/openpic.c =================================================================== --- sys/powerpc/powerpc/openpic.c (revision 259108) +++ sys/powerpc/powerpc/openpic.c (working copy) @@ -380,3 +380,64 @@ openpic_write(sc, OPENPIC_IPI_VECTOR(0), x); } } + +int +openpic_suspend(device_t dev) +{ + struct openpic_softc *sc; + int i; + + sc = device_get_softc(dev); + + sc->sc_saved_config = bus_read_4(sc->sc_memr, OPENPIC_CONFIG); + for (i = 0; i < 4; i++) { + sc->sc_saved_ipis[i] = bus_read_4(sc->sc_memr, OPENPIC_IPI_VECTOR(i)); + } + + for (i = 0; i < 4; i++) { + sc->sc_saved_prios[i] = bus_read_4(sc->sc_memr, OPENPIC_PCPU_TPR(i)); + } + + for (i = 0; i < OPENPIC_TIMERS; i++) { + sc->sc_saved_timers[i].tcnt = bus_read_4(sc->sc_memr, OPENPIC_TCNT(i)); + sc->sc_saved_timers[i].tbase = bus_read_4(sc->sc_memr, OPENPIC_TBASE(i)); + sc->sc_saved_timers[i].tvec = bus_read_4(sc->sc_memr, OPENPIC_TVEC(i)); + sc->sc_saved_timers[i].tdst = bus_read_4(sc->sc_memr, OPENPIC_TDST(i)); + } + + for (i = 0; i < OPENPIC_SRC_VECTOR_COUNT; i++) + sc->sc_saved_vectors[i] = + bus_read_4(sc->sc_memr, OPENPIC_SRC_VECTOR(i)) & ~OPENPIC_ACTIVITY; + + return (0); +} + +int +openpic_resume(device_t dev) +{ + struct openpic_softc *sc; + int i; + + sc = device_get_softc(dev); + + sc->sc_saved_config = bus_read_4(sc->sc_memr, OPENPIC_CONFIG); + for (i = 0; i < 4; i++) { + bus_write_4(sc->sc_memr, OPENPIC_IPI_VECTOR(i), sc->sc_saved_ipis[i]); + } + + for (i = 0; i < 4; i++) { + bus_write_4(sc->sc_memr, OPENPIC_PCPU_TPR(i), sc->sc_saved_prios[i]); + } + + for (i = 0; i < OPENPIC_TIMERS; i++) { + bus_write_4(sc->sc_memr, OPENPIC_TCNT(i), sc->sc_saved_timers[i].tcnt); + bus_write_4(sc->sc_memr, OPENPIC_TBASE(i), sc->sc_saved_timers[i].tbase); + bus_write_4(sc->sc_memr, OPENPIC_TVEC(i), sc->sc_saved_timers[i].tvec); + bus_write_4(sc->sc_memr, OPENPIC_TDST(i), sc->sc_saved_timers[i].tdst); + } + + for (i = 0; i < OPENPIC_SRC_VECTOR_COUNT; i++) + bus_write_4(sc->sc_memr, OPENPIC_SRC_VECTOR(i), sc->sc_saved_vectors[i]); + + return (0); +} Index: sys/powerpc/psim/openpic_iobus.c =================================================================== --- sys/powerpc/psim/openpic_iobus.c (revision 259108) +++ sys/powerpc/psim/openpic_iobus.c (working copy) @@ -53,6 +53,7 @@ #include +#include #include #include Index: sys/x86/include/acpica_machdep.h =================================================================== --- sys/x86/include/acpica_machdep.h (revision 259108) +++ sys/x86/include/acpica_machdep.h (working copy) Property changes on: sys/x86/include/acpica_machdep.h ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/head_mfi/sys/x86/include/acpica_machdep.h:r227068,227574,227579-227580,227612,227905,228108,228208,228279,228310,228320,231988,232412-232414,232888,233016,233620 Merged /projects/random_number_generator/sys/x86/include/acpica_machdep.h:r254613-255353 Merged /projects/cambria/sys/x86/include/acpica_machdep.h:r186008-186350 Merged /user/piso/sys/x86/include/acpica_machdep.h:r186543,186723,186725-186726,186742,186770-186771,186774,186777-186779,187984-187985,190555,190572,190589,190592,190614,190625,190830 Merged /projects/pmac_pmu/sys/x86/include/acpica_machdep.h:r255832-259112 Merged /projects/quota64/sys/x86/include/acpica_machdep.h:r184125-207707 Merged /user/jimharris/isci/sys/x86/include/acpica_machdep.h:r228377-230794 Merged /user/piso/ipfw/sys/x86/include/acpica_machdep.h:r190918,190921,190923,190926 Merged /projects/multi-fibv6/head/sys/x86/include/acpica_machdep.h:r230929-231848 Merged /head/sys/x86/include/acpica_machdep.h:r244821-252117 Merged /projects/largeSMP/sys/x86/include/acpica_machdep.h:r221273-222812,222815-223757 Merged /user/dfr/xenhvm/6/sys/x86/include/acpica_machdep.h:r189304,189451 Merged /user/peter/kinfo/sys/x86/include/acpica_machdep.h:r185413-185547 Merged /user/dfr/xenhvm/7/sys/x86/include/acpica_machdep.h:r188574-189614 Merged /user/np/cxl_tuning/sys/x86/include/acpica_machdep.h:r254336,254386,254736 Merged /user/mav/ata/sys/x86/include/acpica_machdep.h:r189793-190578 Merged /user/alfred/9-alfred/sys/x86/include/acpica_machdep.h:r242488 Merged /user/thompsa/usb/sys/x86/include/acpica_machdep.h:r187190 Index: sys =================================================================== --- sys (revision 259108) +++ sys (working copy) Property changes on: sys ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/sys:r244821-259112 Index: usr.bin/calendar =================================================================== --- usr.bin/calendar (revision 259108) +++ usr.bin/calendar (working copy) Property changes on: usr.bin/calendar ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/usr.bin/calendar:r244821-259112 Index: usr.bin/csup =================================================================== --- usr.bin/csup (revision 259108) +++ usr.bin/csup (working copy) Property changes on: usr.bin/csup ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/usr.bin/csup:r244821-259112 Index: usr.bin/procstat =================================================================== --- usr.bin/procstat (revision 259108) +++ usr.bin/procstat (working copy) Property changes on: usr.bin/procstat ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/usr.bin/procstat:r244821-259112 Index: usr.sbin/bhyve =================================================================== --- usr.sbin/bhyve (revision 259108) +++ usr.sbin/bhyve (working copy) Property changes on: usr.sbin/bhyve ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/usr.sbin/bhyve:r250993-259112 Index: usr.sbin/bhyvectl =================================================================== --- usr.sbin/bhyvectl (revision 259108) +++ usr.sbin/bhyvectl (working copy) Property changes on: usr.sbin/bhyvectl ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/usr.sbin/bhyvectl:r250993-259112 Index: usr.sbin/bhyveload =================================================================== --- usr.sbin/bhyveload (revision 259108) +++ usr.sbin/bhyveload (working copy) Property changes on: usr.sbin/bhyveload ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/usr.sbin/bhyveload:r250993-259112 Index: usr.sbin/jail =================================================================== --- usr.sbin/jail (revision 259108) +++ usr.sbin/jail (working copy) Property changes on: usr.sbin/jail ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/usr.sbin/jail:r244821-259112 Index: usr.sbin/ndiscvt =================================================================== --- usr.sbin/ndiscvt (revision 259108) +++ usr.sbin/ndiscvt (working copy) Property changes on: usr.sbin/ndiscvt ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/usr.sbin/ndiscvt:r244821-259112 Index: usr.sbin/rtadvctl =================================================================== --- usr.sbin/rtadvctl (revision 259108) +++ usr.sbin/rtadvctl (working copy) Property changes on: usr.sbin/rtadvctl ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/usr.sbin/rtadvctl:r244821-259112 Index: usr.sbin/rtadvd =================================================================== --- usr.sbin/rtadvd (revision 259108) +++ usr.sbin/rtadvd (working copy) Property changes on: usr.sbin/rtadvd ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/usr.sbin/rtadvd:r244821-259112 Index: usr.sbin/rtsold =================================================================== --- usr.sbin/rtsold (revision 259108) +++ usr.sbin/rtsold (working copy) Property changes on: usr.sbin/rtsold ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/usr.sbin/rtsold:r244821-259112 Index: usr.sbin/zic =================================================================== --- usr.sbin/zic (revision 259108) +++ usr.sbin/zic (working copy) Property changes on: usr.sbin/zic ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu/usr.sbin/zic:r244821-259112 Index: . =================================================================== --- . (revision 259108) +++ . (working copy) Property changes on: . ___________________________________________________________________ Modified: svn:mergeinfo Merged /projects/pmac_pmu:r244821-259112 --MP_/myyr.EiQd2QcNU+JRaoNCZY-- From owner-freebsd-ppc@FreeBSD.ORG Sun Dec 8 23:54:14 2013 Return-Path: Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id CE3E6AF7; Sun, 8 Dec 2013 23:54:14 +0000 (UTC) Received: from mail-bk0-x233.google.com (mail-bk0-x233.google.com [IPv6:2a00:1450:4008:c01::233]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 2DA5B1FB4; Sun, 8 Dec 2013 23:54:14 +0000 (UTC) Received: by mail-bk0-f51.google.com with SMTP id 6so1088691bkj.24 for ; Sun, 08 Dec 2013 15:54:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=qUk0Jxa5lzK3aBc9AOX7XoNd4JlMUpAfGYdKzXsIZTI=; b=o7sxsBcAJ1oG8XElvWKTeC8jpyOdx7FKu9p1b+s7P2ggFd1de6MrvJpZRgF3EfHGOL LoP0neOmi7uKmD6RrYYOhtpvnP/M0IiIWmTaxa9zkelZQ0aZePM/1MZRQMbN/4KpfDJb zQGL+hMAWyALp6NjBgUw52Ewv+AaVtZ6bQqeQGOZPpUNFCHZzSs7bpiiVkHMUYZXxpGO Kfy+6guaUKV54PcrPQWy7nCi2+2OLAY6qggK5MASdc6lRfvfuB8KuTe61bi5kb0umhlR ZOjYTUtxVX+7k11PNaLWBAx+QVHgnC0YSTPBOlcC+xgIblPuqoqqeHMMdqLEVql18e3Q LxZg== MIME-Version: 1.0 X-Received: by 10.205.38.133 with SMTP id ti5mr18540bkb.179.1386546851910; Sun, 08 Dec 2013 15:54:11 -0800 (PST) Sender: chmeeedalf@gmail.com Received: by 10.205.90.136 with HTTP; Sun, 8 Dec 2013 15:54:11 -0800 (PST) Received: by 10.205.90.136 with HTTP; Sun, 8 Dec 2013 15:54:11 -0800 (PST) In-Reply-To: <20131208154854.7425d9a7@zhabar.gateway.2wire.net> References: <20131204222113.39fb23dd@zhabar.gateway.2wire.net> <20131208133853.GA75604@alchemy.franken.de> <20131208154854.7425d9a7@zhabar.gateway.2wire.net> Date: Sun, 8 Dec 2013 15:54:11 -0800 X-Google-Sender-Auth: OOKL8NJQdfBfCvHK4wO8KjbWtz4 Message-ID: Subject: Re: Request for testing an alternate branch From: Justin Hibbits To: Marius Strobl Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.17 Cc: FreeBSD Current , FreeBSD PowerPC ML X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 08 Dec 2013 23:54:15 -0000 On Dec 8, 2013 3:48 PM, "Justin Hibbits" wrote: > > On Sun, 8 Dec 2013 14:38:53 +0100 > Marius Strobl wrote: > > > On Wed, Dec 04, 2013 at 10:21:13PM -0800, Justin Hibbits wrote: > > > I've been working on the projects/pmac_pmu branch for some time now > > > to add suspend/resume as well as CPU speed change for certain > > > PowerPC machines, about a year since I created the branch, and now > > > it's stable enough that I want to merge it into HEAD, hence this > > > request. However, it does touch several drivers, turning them into > > > "early drivers", such that they can be initialized, and suspended > > > and resumed at a different time. Saying that, I do need testing > > > from other architectures, to make sure I haven't broken anything. > > > > > > The technical details: > > > > > > To get proper ordering, I've extended the bus_generic_suspend() and > > > bus_generic_resume() to do multiple passes. Devices which cannot be > > > enabled or disabled at the current pass level would return an > > > EAGAIN. This could possibly cause problems, since it's an addition > > > to an existing API rather than a new API to run along side it, so > > > it needs a great deal of testing. It works fine on PowerPC, but I > > > don't have any i386/amd64 or sparc64 hardware to test it on, so > > > would like others who do to test it. I don't think that it would > > > impact x86 at all (testing is obviously required), because the > > > nexus is not an EARLY_DRIVER_MODULE, so all devices would be > > > handled at the same pass. But, I do know the sparc64 has an > > > EARLY_DRIVER_MODULE() nexus, so that will likely be impacted. > > > > > > Also, any comments are of course welcome. Technical concerns are > > > obviously welcome, and I will try to address everything. > > > > Do you have a patch against head? > > > > Marius > > > > Here you go. > > - Justin Oh I must add that this was just a merge, I didn't try compiling this merge, but there were no conflicts so it should build. But images are up on allbsd.org for people to test. -Justin From owner-freebsd-ppc@FreeBSD.ORG Mon Dec 9 08:39:27 2013 Return-Path: Delivered-To: powerpc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2C0A78BE; Mon, 9 Dec 2013 08:39:27 +0000 (UTC) Received: from freebsd-current.sentex.ca (freebsd-current.sentex.ca [64.7.128.98]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 004EE115F; Mon, 9 Dec 2013 08:39:26 +0000 (UTC) Received: from freebsd-current.sentex.ca (localhost [127.0.0.1]) by freebsd-current.sentex.ca (8.14.5/8.14.5) with ESMTP id rB98dPfl066736; Mon, 9 Dec 2013 03:39:25 -0500 (EST) (envelope-from tinderbox@freebsd.org) Received: (from tinderbox@localhost) by freebsd-current.sentex.ca (8.14.5/8.14.5/Submit) id rB98dP9T066730; Mon, 9 Dec 2013 08:39:25 GMT (envelope-from tinderbox@freebsd.org) Date: Mon, 9 Dec 2013 08:39:25 GMT Message-Id: <201312090839.rB98dP9T066730@freebsd-current.sentex.ca> X-Authentication-Warning: freebsd-current.sentex.ca: tinderbox set sender to FreeBSD Tinderbox using -f Sender: FreeBSD Tinderbox From: FreeBSD Tinderbox To: FreeBSD Tinderbox , , Subject: [head tinderbox] failure on powerpc/powerpc Precedence: bulk X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.17 List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 09 Dec 2013 08:39:27 -0000 TB --- 2013-12-09 06:00:55 - tinderbox 2.20 running on freebsd-current.sentex.ca TB --- 2013-12-09 06:00:55 - FreeBSD freebsd-current.sentex.ca 8.3-PRERELEASE FreeBSD 8.3-PRERELEASE #0: Mon Mar 26 13:54:12 EDT 2012 des@freebsd-current.sentex.ca:/usr/obj/usr/src/sys/GENERIC amd64 TB --- 2013-12-09 06:00:55 - starting HEAD tinderbox run for powerpc/powerpc TB --- 2013-12-09 06:00:55 - cleaning the object tree TB --- 2013-12-09 06:00:55 - /usr/local/bin/svn stat /src TB --- 2013-12-09 06:01:08 - At svn revision 259112 TB --- 2013-12-09 06:01:09 - building world TB --- 2013-12-09 06:01:09 - CROSS_BUILD_TESTING=YES TB --- 2013-12-09 06:01:09 - MAKEOBJDIRPREFIX=/obj TB --- 2013-12-09 06:01:09 - PATH=/usr/bin:/usr/sbin:/bin:/sbin TB --- 2013-12-09 06:01:09 - SRCCONF=/dev/null TB --- 2013-12-09 06:01:09 - TARGET=powerpc TB --- 2013-12-09 06:01:09 - TARGET_ARCH=powerpc TB --- 2013-12-09 06:01:09 - TZ=UTC TB --- 2013-12-09 06:01:09 - __MAKE_CONF=/dev/null TB --- 2013-12-09 06:01:09 - cd /src TB --- 2013-12-09 06:01:09 - /usr/bin/make -B buildworld >>> Building an up-to-date make(1) >>> World build started on Mon Dec 9 06:01:18 UTC 2013 >>> Rebuilding the temporary build tree >>> stage 1.1: legacy release compatibility shims >>> stage 1.2: bootstrap tools >>> stage 2.1: cleaning up the object tree >>> stage 2.2: rebuilding the object tree >>> stage 2.3: build tools >>> stage 3: cross tools >>> stage 4.1: building includes >>> stage 4.2: building libraries >>> stage 4.3: make dependencies >>> stage 4.4: building everything >>> World build completed on Mon Dec 9 08:38:01 UTC 2013 TB --- 2013-12-09 08:38:01 - generating LINT kernel config TB --- 2013-12-09 08:38:01 - cd /src/sys/powerpc/conf TB --- 2013-12-09 08:38:01 - /usr/bin/make -B LINT TB --- 2013-12-09 08:38:01 - cd /src/sys/powerpc/conf TB --- 2013-12-09 08:38:01 - /usr/sbin/config -m LINT TB --- 2013-12-09 08:38:01 - building LINT kernel TB --- 2013-12-09 08:38:01 - CROSS_BUILD_TESTING=YES TB --- 2013-12-09 08:38:01 - MAKEOBJDIRPREFIX=/obj TB --- 2013-12-09 08:38:01 - PATH=/usr/bin:/usr/sbin:/bin:/sbin TB --- 2013-12-09 08:38:01 - SRCCONF=/dev/null TB --- 2013-12-09 08:38:01 - TARGET=powerpc TB --- 2013-12-09 08:38:01 - TARGET_ARCH=powerpc TB --- 2013-12-09 08:38:01 - TZ=UTC TB --- 2013-12-09 08:38:01 - __MAKE_CONF=/dev/null TB --- 2013-12-09 08:38:01 - cd /src TB --- 2013-12-09 08:38:01 - /usr/bin/make -B buildkernel KERNCONF=LINT >>> Kernel build for LINT started on Mon Dec 9 08:38:02 UTC 2013 >>> stage 1: configuring the kernel >>> stage 2.1: cleaning up the object tree >>> stage 2.2: rebuilding the object tree >>> stage 2.3: build tools >>> stage 3.1: making dependencies [...] rm -f .depend CC='cc ' mkdep -f .depend -a -nostdinc -D_KERNEL -DKLD_MODULE -DHAVE_KERNEL_OPTION_HEADERS -I. -I@ -I@/contrib/altq -I/obj/powerpc.powerpc/src/sys/LINT -std=iso9899:1999 /src/sys/modules/cpufreq/../../dev/cpufreq/ichss.c /src/sys/modules/cpufreq/../../powerpc/cpufreq/dfs.c ===> crypto (depend) @ -> /src/sys awk -f @/tools/makeobjops.awk @/opencrypto/cryptodev_if.m -c bmake[3]: don't know how to make deflate.c. Stop bmake[3]: stopped in /src/sys/modules/crypto *** Error code 2 Stop. bmake[2]: stopped in /src/sys/modules *** Error code 1 Stop. bmake[1]: stopped in /obj/powerpc.powerpc/src/sys/LINT *** Error code 1 Stop. bmake: stopped in /src *** Error code 1 Stop in /src. TB --- 2013-12-09 08:39:25 - WARNING: /usr/bin/make returned exit code 1 TB --- 2013-12-09 08:39:25 - ERROR: failed to build LINT kernel TB --- 2013-12-09 08:39:25 - 8073.29 user 997.61 system 9509.89 real http://tinderbox.freebsd.org/tinderbox-head-build-HEAD-powerpc-powerpc.full From owner-freebsd-ppc@FreeBSD.ORG Mon Dec 9 11:06:52 2013 Return-Path: Delivered-To: freebsd-ppc@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 31157221 for ; Mon, 9 Dec 2013 11:06:52 +0000 (UTC) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 1C4251E86 for ; Mon, 9 Dec 2013 11:06:52 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.7/8.14.7) with ESMTP id rB9B6p2J071114 for ; Mon, 9 Dec 2013 11:06:51 GMT (envelope-from owner-bugmaster@FreeBSD.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.7/8.14.7/Submit) id rB9B6psX071112 for freebsd-ppc@FreeBSD.org; Mon, 9 Dec 2013 11:06:51 GMT (envelope-from owner-bugmaster@FreeBSD.org) Date: Mon, 9 Dec 2013 11:06:51 GMT Message-Id: <201312091106.rB9B6psX071112@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: gnats set sender to owner-bugmaster@FreeBSD.org using -f From: FreeBSD bugmaster To: freebsd-ppc@FreeBSD.org Subject: Current problem reports assigned to freebsd-ppc@FreeBSD.org X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 09 Dec 2013 11:06:52 -0000 Note: to view an individual PR, use: http://www.freebsd.org/cgi/query-pr.cgi?pr=(number). The following is a listing of current problems submitted by FreeBSD users. These represent problem reports covering all versions including experimental development code and obsolete releases. S Tracker Resp. Description -------------------------------------------------------------------------------- o power/183040 ppc Nested signal handling is broken o power/182908 ppc Unable to build debug binaries with clang on powerpc64 o power/181502 ppc /usr/include/stdint.h 9.2-RC1/powerpc does not compile o power/180593 ppc PowerMac G5 shuts down when building pcre o power/178038 ppc clang++ fails to produce a binary in powerpc64 o power/164225 ppc Boot fails on IBM 7028-6E1 (heap memory claim failed) o power/149009 ppc sysinstall(8) on powerpc fails to install manpages, so o power/140241 ppc [kernel] [patch] Linker set problems on PowerPC EABI o power/135576 ppc gdb cannot debug threaded programs on ppc o power/133503 ppc [sound] Sound stutter after switching ttys o power/131548 ppc ofw_syscons no longer supports 32-bit framebuffer 11 problems total. From owner-freebsd-ppc@FreeBSD.ORG Wed Dec 11 06:35:52 2013 Return-Path: Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2FA78E7B for ; Wed, 11 Dec 2013 06:35:52 +0000 (UTC) Received: from mail-pd0-x22e.google.com (mail-pd0-x22e.google.com [IPv6:2607:f8b0:400e:c02::22e]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 05D9F1CFB for ; Wed, 11 Dec 2013 06:35:52 +0000 (UTC) Received: by mail-pd0-f174.google.com with SMTP id y13so8818786pdi.5 for ; Tue, 10 Dec 2013 22:35:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=date:from:to:subject:message-id:mime-version:content-type :content-transfer-encoding; bh=NuQGvfnVWgoTBVWzmtML0XKYAPMs/Kd8oX9Av8OemQQ=; b=DMBlP3RwGjIn4Nsvz2bVezelupHKwMiOCL75/DHcwep5dbPOyxT1XA50I+7QZSO4W5 d//A7Ggm8FtYo9MfLhKWo4QqiJnELDsQ7+d0hoV4sm4w2QcvPqrlqpSXeoT3u9X/uWrf hyF5DjjwxjFFQQop2k7YIA5fmZbXnYn+Uze/lebxpcS70gKRzb4WyLIN9yiVtcMKHivZ Llv9Rrqgve7d2VVvEc93V9Jm9ojkcEl5lg9HWNnD53F20kvDl5EnCsk/4j20xPRv2Iy2 o1QRxSZ632nB2XHmwG+UV4yKvhagHJS2jxVhlahJ90+mwY+vgVtSmWQpjwpqkBWqHzxy HX0w== X-Received: by 10.68.197.129 with SMTP id iu1mr32558222pbc.139.1386743751602; Tue, 10 Dec 2013 22:35:51 -0800 (PST) Received: from zhabar.gateway.2wire.net (76-253-2-5.lightspeed.sntcca.sbcglobal.net. [76.253.2.5]) by mx.google.com with ESMTPSA id sx8sm34845218pab.5.2013.12.10.22.35.50 for (version=SSLv3 cipher=RC4-SHA bits=128/128); Tue, 10 Dec 2013 22:35:51 -0800 (PST) Date: Tue, 10 Dec 2013 22:35:46 -0800 From: Justin Hibbits To: FreeBSD PowerPC ML Subject: powerpc64 memory translations Message-ID: <20131210223546.27d2b45d@zhabar.gateway.2wire.net> X-Mailer: Claws Mail 3.9.2 (GTK+ 2.24.19; powerpc64-portbld-freebsd11.0) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 11 Dec 2013 06:35:52 -0000 I'm trying to fix a problem with DTrace FBT (it just flat hangs), and want to use the oldest trick in the book -- writing to a known address at various points. Problem I have, though, is that writing to 0x10 virtual, unlike with powerpc32, doesn't write to 0x10 physical. Is there any way to get the mapping for the first page of physical memory, so I can do this debugging? And to make it always available, so that I don't have to worry about mapping it when I need to? Thanks, Justin From owner-freebsd-ppc@FreeBSD.ORG Wed Dec 11 07:49:54 2013 Return-Path: Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9F42630A for ; Wed, 11 Dec 2013 07:49:54 +0000 (UTC) Received: from felyko.com (felyko.com [174.136.100.2]) by mx1.freebsd.org (Postfix) with ESMTP id 846A01452 for ; Wed, 11 Dec 2013 07:49:54 +0000 (UTC) Received: from [10.0.1.3] (c-24-6-16-155.hsd1.ca.comcast.net [24.6.16.155]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by felyko.com (Postfix) with ESMTPSA id A905639827; Tue, 10 Dec 2013 23:49:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=felyko.com; s=mail; t=1386748188; bh=3ydPApK5kG+rDpLHhjs0hUeqwe8iY0zr9WyXD6FnHos=; h=Subject:From:In-Reply-To:Date:Cc:References:To; b=g0eJN9NT23icfKHbdFU1xWZfiTArp5HavIttVsCV4wYLagJ3j6ObpO8yE2u1851pA 0T4RmofcqIzmzW2Tvlh8HxnnM7n0jH0/o0oeG8Br1Po89PRhvfW9StDPqVwEuberHP HfeIPjYYa917O43FUcKvzoRCDlOVFgZ9Q5e3NwMc= Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 7.0 \(1812\)) Subject: Re: powerpc64 memory translations From: Rui Paulo In-Reply-To: <20131210223546.27d2b45d@zhabar.gateway.2wire.net> Date: Tue, 10 Dec 2013 23:46:47 -0800 Content-Transfer-Encoding: 7bit Message-Id: <09C3ACEA-031F-4447-B9BB-4466F9E67CC7@felyko.com> References: <20131210223546.27d2b45d@zhabar.gateway.2wire.net> To: Justin Hibbits X-Mailer: Apple Mail (2.1812) Cc: FreeBSD PowerPC ML X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 11 Dec 2013 07:49:54 -0000 On 10 Dec 2013, at 22:35, Justin Hibbits wrote: > I'm trying to fix a problem with DTrace FBT (it just flat hangs), and > want to use the oldest trick in the book -- writing to a known address > at various points. Problem I have, though, is that writing to 0x10 > virtual, unlike with powerpc32, doesn't write to 0x10 physical. Is > there any way to get the mapping for the first page of physical memory, > so I can do this debugging? And to make it always available, so that > I don't have to worry about mapping it when I need to? Wouldn't pmap_mapdev() work? -- Rui Paulo From owner-freebsd-ppc@FreeBSD.ORG Wed Dec 11 13:48:47 2013 Return-Path: Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D5908521; Wed, 11 Dec 2013 13:48:47 +0000 (UTC) Received: from alchemy.franken.de (alchemy.franken.de [194.94.249.214]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 52E7C1CC7; Wed, 11 Dec 2013 13:48:47 +0000 (UTC) Received: from alchemy.franken.de (localhost [127.0.0.1]) by alchemy.franken.de (8.14.7/8.14.7/ALCHEMY.FRANKEN.DE) with ESMTP id rBBDmc9K096650; Wed, 11 Dec 2013 14:48:38 +0100 (CET) (envelope-from marius@alchemy.franken.de) Received: (from marius@localhost) by alchemy.franken.de (8.14.7/8.14.7/Submit) id rBBDmcwK096649; Wed, 11 Dec 2013 14:48:38 +0100 (CET) (envelope-from marius) Date: Wed, 11 Dec 2013 14:48:38 +0100 From: Marius Strobl To: Justin Hibbits Subject: Re: Request for testing an alternate branch Message-ID: <20131211134838.GM12343@alchemy.franken.de> References: <20131204222113.39fb23dd@zhabar.gateway.2wire.net> <20131208133853.GA75604@alchemy.franken.de> <20131208154854.7425d9a7@zhabar.gateway.2wire.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20131208154854.7425d9a7@zhabar.gateway.2wire.net> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: Justin Hibbits , FreeBSD Current , FreeBSD PowerPC ML X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 11 Dec 2013 13:48:47 -0000 On Sun, Dec 08, 2013 at 03:48:54PM -0800, Justin Hibbits wrote: > On Sun, 8 Dec 2013 14:38:53 +0100 > Marius Strobl wrote: > > > On Wed, Dec 04, 2013 at 10:21:13PM -0800, Justin Hibbits wrote: > > > I've been working on the projects/pmac_pmu branch for some time now > > > to add suspend/resume as well as CPU speed change for certain > > > PowerPC machines, about a year since I created the branch, and now > > > it's stable enough that I want to merge it into HEAD, hence this > > > request. However, it does touch several drivers, turning them into > > > "early drivers", such that they can be initialized, and suspended > > > and resumed at a different time. Saying that, I do need testing > > > from other architectures, to make sure I haven't broken anything. > > > > > > The technical details: > > > > > > To get proper ordering, I've extended the bus_generic_suspend() and > > > bus_generic_resume() to do multiple passes. Devices which cannot be > > > enabled or disabled at the current pass level would return an > > > EAGAIN. This could possibly cause problems, since it's an addition > > > to an existing API rather than a new API to run along side it, so > > > it needs a great deal of testing. It works fine on PowerPC, but I > > > don't have any i386/amd64 or sparc64 hardware to test it on, so > > > would like others who do to test it. I don't think that it would > > > impact x86 at all (testing is obviously required), because the > > > nexus is not an EARLY_DRIVER_MODULE, so all devices would be > > > handled at the same pass. But, I do know the sparc64 has an > > > EARLY_DRIVER_MODULE() nexus, so that will likely be impacted. > > > > > > Also, any comments are of course welcome. Technical concerns are > > > obviously welcome, and I will try to address everything. > > > > Do you have a patch against head? > > > > Marius > > > > Here you go. > Thanks; on a sparc64 machine where the EARLY_DRIVER_MODULE nexus actually matters, your patch doesn't seem to have an ill effect. Marius From owner-freebsd-ppc@FreeBSD.ORG Wed Dec 11 14:32:07 2013 Return-Path: Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 39E1C28A for ; Wed, 11 Dec 2013 14:32:07 +0000 (UTC) Received: from smtpauth3.wiscmail.wisc.edu (wmauth3.doit.wisc.edu [144.92.197.226]) (using TLSv1 with cipher RC4-MD5 (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 0508C10C4 for ; Wed, 11 Dec 2013 14:32:06 +0000 (UTC) MIME-version: 1.0 Content-transfer-encoding: 7BIT Content-type: text/plain; CHARSET=US-ASCII; format=flowed; delsp=yes Received: from avs-daemon.smtpauth3.wiscmail.wisc.edu by smtpauth3.wiscmail.wisc.edu (Oracle Communications Messaging Server 7u4-27.01(7.0.4.27.0) 64bit (built Aug 30 2012)) id <0MXN007009AJ0600@smtpauth3.wiscmail.wisc.edu> for freebsd-ppc@freebsd.org; Wed, 11 Dec 2013 07:31:58 -0600 (CST) X-Spam-PmxInfo: Server=avs-3, Version=6.0.3.2322014, Antispam-Engine: 2.7.2.2107409, Antispam-Data: 2013.12.11.132415, SenderIP=0.0.0.0 X-Spam-Report: AuthenticatedSender=yes, SenderIP=0.0.0.0 Received: from [10.0.2.100] (adsl-76-208-69-44.dsl.mdsnwi.sbcglobal.net [76.208.69.44]) by smtpauth3.wiscmail.wisc.edu (Oracle Communications Messaging Server 7u4-27.01(7.0.4.27.0) 64bit (built Aug 30 2012)) with ESMTPSA id <0MXN00LHN9L7GQ10@smtpauth3.wiscmail.wisc.edu> for freebsd-ppc@freebsd.org; Wed, 11 Dec 2013 07:31:56 -0600 (CST) Message-id: From: Nathan Whitehorn To: Justin Hibbits In-reply-to: <20131210223546.27d2b45d@zhabar.gateway.2wire.net> Subject: Re: powerpc64 memory translations Date: Wed, 11 Dec 2013 07:31:54 -0600 References: <20131210223546.27d2b45d@zhabar.gateway.2wire.net> X-Mailer: Apple Mail (2.936) Cc: FreeBSD PowerPC ML X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 11 Dec 2013 14:32:07 -0000 Where does it write instead? powerpc64 uses a 1:1 direct map of all physical memory. powerpc32 sometimes, but not always, does this. -Nathan On Dec 11, 2013, at 12:35 AM, Justin Hibbits wrote: > I'm trying to fix a problem with DTrace FBT (it just flat hangs), and > want to use the oldest trick in the book -- writing to a known address > at various points. Problem I have, though, is that writing to 0x10 > virtual, unlike with powerpc32, doesn't write to 0x10 physical. Is > there any way to get the mapping for the first page of physical > memory, > so I can do this debugging? And to make it always available, so that > I don't have to worry about mapping it when I need to? > > Thanks, > Justin > _______________________________________________ > freebsd-ppc@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-ppc > To unsubscribe, send any mail to "freebsd-ppc-unsubscribe@freebsd.org" From owner-freebsd-ppc@FreeBSD.ORG Wed Dec 11 16:51:57 2013 Return-Path: Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C1BA8F6B; Wed, 11 Dec 2013 16:51:57 +0000 (UTC) Received: from mail-pb0-x22d.google.com (mail-pb0-x22d.google.com [IPv6:2607:f8b0:400e:c01::22d]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 8F60D1E89; Wed, 11 Dec 2013 16:51:57 +0000 (UTC) Received: by mail-pb0-f45.google.com with SMTP id rp16so10314944pbb.32 for ; Wed, 11 Dec 2013 08:51:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=date:from:to:cc:subject:message-id:in-reply-to:references :mime-version:content-type:content-transfer-encoding; bh=lB/1QSiO2ixemmfY1h31uQ9H6/NfaE/hjwt/2TdqPog=; b=AVDQZ9ExYgqBR0ciNsQ878i2S3MLe2zyNYVHM3RVGHKF79fUtcI6J+6O+QxfJlmdm/ 3odJKz9ENRshJGMa6eXb+L+5Xk4Cd4rXi5V+t2D4riDUJs6moNQ8gu7nyulfUlr1wbHd EtCKzJTp6AO4tIEJ7amFS8y0oP3EXv07QDBvmxW81AF2Xmtda/NyutpD7dhEAkxro6RE YX136FbrJDAL0VFEPsggavJawJdZuGdUD1pVuZaBV9bbzfTkdT8OZxmt3+pdiKhfz5/Y Y1JKjLpfTxAXySQJUgIbT5porIM6iu2sDzm13NYeXhF/m+ohEm9eQ63NY4+xCEGEsZsP wclg== X-Received: by 10.68.197.165 with SMTP id iv5mr2968585pbc.150.1386780717148; Wed, 11 Dec 2013 08:51:57 -0800 (PST) Received: from zhabar.gateway.2wire.net (76-253-2-5.lightspeed.sntcca.sbcglobal.net. [76.253.2.5]) by mx.google.com with ESMTPSA id vf7sm33857298pbc.5.2013.12.11.08.51.55 for (version=SSLv3 cipher=RC4-SHA bits=128/128); Wed, 11 Dec 2013 08:51:56 -0800 (PST) Date: Wed, 11 Dec 2013 08:51:49 -0800 From: Justin Hibbits To: Nathan Whitehorn Subject: Re: powerpc64 memory translations Message-ID: <20131211085149.05695606@zhabar.gateway.2wire.net> In-Reply-To: References: <20131210223546.27d2b45d@zhabar.gateway.2wire.net> X-Mailer: Claws Mail 3.9.2 (GTK+ 2.24.19; powerpc64-portbld-freebsd11.0) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: FreeBSD PowerPC ML X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 11 Dec 2013 16:51:57 -0000 Hmm. It looks like something must have been messed up with firewire, because redoing it it now looks right. - Justin On Wed, 11 Dec 2013 07:31:54 -0600 Nathan Whitehorn wrote: > Where does it write instead? powerpc64 uses a 1:1 direct map of all > physical memory. powerpc32 sometimes, but not always, does this. > -Nathan > > On Dec 11, 2013, at 12:35 AM, Justin Hibbits wrote: > > > I'm trying to fix a problem with DTrace FBT (it just flat hangs), > > and want to use the oldest trick in the book -- writing to a known > > address at various points. Problem I have, though, is that writing > > to 0x10 virtual, unlike with powerpc32, doesn't write to 0x10 > > physical. Is there any way to get the mapping for the first page > > of physical memory, > > so I can do this debugging? And to make it always available, so > > that I don't have to worry about mapping it when I need to? > > > > Thanks, > > Justin > > _______________________________________________ > > freebsd-ppc@freebsd.org mailing list > > http://lists.freebsd.org/mailman/listinfo/freebsd-ppc > > To unsubscribe, send any mail to > > "freebsd-ppc-unsubscribe@freebsd.org" > From owner-freebsd-ppc@FreeBSD.ORG Wed Dec 11 22:21:14 2013 Return-Path: Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2D9BFE5C; Wed, 11 Dec 2013 22:21:14 +0000 (UTC) Received: from bigwig.baldwin.cx (bigwig.baldwin.cx [IPv6:2001:470:1f11:75::1]) (using TLSv1 with cipher ADH-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 058F51EDF; Wed, 11 Dec 2013 22:21:14 +0000 (UTC) Received: from jhbbsd.localnet (unknown [209.249.190.124]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id 9A48CB922; Wed, 11 Dec 2013 17:21:12 -0500 (EST) From: John Baldwin To: freebsd-current@freebsd.org Subject: Re: Request for testing an alternate branch Date: Wed, 11 Dec 2013 16:26:11 -0500 User-Agent: KMail/1.13.5 (FreeBSD/8.4-CBSD-20130906; KDE/4.5.5; amd64; ; ) References: <20131204222113.39fb23dd@zhabar.gateway.2wire.net> In-Reply-To: <20131204222113.39fb23dd@zhabar.gateway.2wire.net> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <201312111626.12035.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (bigwig.baldwin.cx); Wed, 11 Dec 2013 17:21:12 -0500 (EST) Cc: Justin Hibbits , FreeBSD PowerPC ML X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 11 Dec 2013 22:21:14 -0000 On Thursday, December 05, 2013 1:21:13 am Justin Hibbits wrote: > I've been working on the projects/pmac_pmu branch for some time now to > add suspend/resume as well as CPU speed change for certain PowerPC > machines, about a year since I created the branch, and now it's stable > enough that I want to merge it into HEAD, hence this request. However, > it does touch several drivers, turning them into "early drivers", such > that they can be initialized, and suspended and resumed at a different > time. Saying that, I do need testing from other architectures, to make > sure I haven't broken anything. > > The technical details: > > To get proper ordering, I've extended the bus_generic_suspend() and > bus_generic_resume() to do multiple passes. Devices which cannot be > enabled or disabled at the current pass level would return an EAGAIN. > This could possibly cause problems, since it's an addition to an > existing API rather than a new API to run along side it, so it needs a > great deal of testing. It works fine on PowerPC, but I don't have any > i386/amd64 or sparc64 hardware to test it on, so would like others who > do to test it. I don't think that it would impact x86 at all (testing > is obviously required), because the nexus is not an EARLY_DRIVER_MODULE, > so all devices would be handled at the same pass. But, I do know the > sparc64 has an EARLY_DRIVER_MODULE() nexus, so that will likely be > impacted. I have patches to change many x86 drivers to use EARLY_DRIVER_MODULE() FWIW. Also, I'm still not a fan of the EAGAIN approach. I'd rather have a method in bus_if.m to suspend or resume a single device and to track that a device is suspended or resumed via a device_t flag or some such. (I think I had suggested this previously as it would also allow us to have a tool to suspend/resume individual drivers at runtime apart from a full suspend/resume request). -- John Baldwin From owner-freebsd-ppc@FreeBSD.ORG Wed Dec 11 22:40:33 2013 Return-Path: Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7795D57C; Wed, 11 Dec 2013 22:40:33 +0000 (UTC) Received: from mail-bk0-x22e.google.com (mail-bk0-x22e.google.com [IPv6:2a00:1450:4008:c01::22e]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id B283A104F; Wed, 11 Dec 2013 22:40:32 +0000 (UTC) Received: by mail-bk0-f46.google.com with SMTP id u15so585406bkz.33 for ; Wed, 11 Dec 2013 14:40:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=2p/WsCef1M9Su61+EbK1294WML8d7XuAx1WijfbBo3Y=; b=l3ong/R207bf0hZK1dAoPdwJQeeWIw1U4lMWbXxvhLG9vYZR9H3oIW9m2HV6i4vCcP 8e2hHg1WEIfg2AXu3EqVytktvoyN9FPMvZz6iUsNkjmGdXL5x7wJrdQEJkOMIGSqHuHu QyjeTVTobRQMgrd4Y+s4a6WMfRWM28pY3R9R5cXjlKNeaF/k6edACrhXWZjt/5nVQURy HX3LCVth1nIaCscoGfYCFg6MilNEwJRkpauKVpfV7dGZFbecEc3cm6RneKdX7DGk6nYr qQ+8r9g+GgRdg9Qos/31QyDUwifkWuYLxb9KxKVud8bw6Bc9TRtr8Wtfs5Dq7CFlH/nU nAHQ== MIME-Version: 1.0 X-Received: by 10.204.127.135 with SMTP id g7mr1580761bks.42.1386801630927; Wed, 11 Dec 2013 14:40:30 -0800 (PST) Sender: chmeeedalf@gmail.com Received: by 10.205.90.136 with HTTP; Wed, 11 Dec 2013 14:40:30 -0800 (PST) In-Reply-To: <201312111626.12035.jhb@freebsd.org> References: <20131204222113.39fb23dd@zhabar.gateway.2wire.net> <201312111626.12035.jhb@freebsd.org> Date: Wed, 11 Dec 2013 14:40:30 -0800 X-Google-Sender-Auth: djaeks2JCuZXT6kmaY_trFZp7qU Message-ID: Subject: Re: Request for testing an alternate branch From: Justin Hibbits To: John Baldwin Content-Type: text/plain; charset=UTF-8 Cc: FreeBSD Current , FreeBSD PowerPC ML X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 11 Dec 2013 22:40:33 -0000 On Wed, Dec 11, 2013 at 1:26 PM, John Baldwin wrote: > On Thursday, December 05, 2013 1:21:13 am Justin Hibbits wrote: >> I've been working on the projects/pmac_pmu branch for some time now to >> add suspend/resume as well as CPU speed change for certain PowerPC >> machines, about a year since I created the branch, and now it's stable >> enough that I want to merge it into HEAD, hence this request. However, >> it does touch several drivers, turning them into "early drivers", such >> that they can be initialized, and suspended and resumed at a different >> time. Saying that, I do need testing from other architectures, to make >> sure I haven't broken anything. >> >> The technical details: >> >> To get proper ordering, I've extended the bus_generic_suspend() and >> bus_generic_resume() to do multiple passes. Devices which cannot be >> enabled or disabled at the current pass level would return an EAGAIN. >> This could possibly cause problems, since it's an addition to an >> existing API rather than a new API to run along side it, so it needs a >> great deal of testing. It works fine on PowerPC, but I don't have any >> i386/amd64 or sparc64 hardware to test it on, so would like others who >> do to test it. I don't think that it would impact x86 at all (testing >> is obviously required), because the nexus is not an EARLY_DRIVER_MODULE, >> so all devices would be handled at the same pass. But, I do know the >> sparc64 has an EARLY_DRIVER_MODULE() nexus, so that will likely be >> impacted. > > I have patches to change many x86 drivers to use EARLY_DRIVER_MODULE() > FWIW. > > Also, I'm still not a fan of the EAGAIN approach. I'd rather have a method > in bus_if.m to suspend or resume a single device and to track that a device > is suspended or resumed via a device_t flag or some such. (I think I had > suggested this previously as it would also allow us to have a tool to > suspend/resume individual drivers at runtime apart from a full suspend/resume > request). > > -- > John Baldwin Understood. You had mentioned something along those lines before. Is it safe/sane to partially merge a branch into HEAD? If so, I can merge only the changes necessary for PMU cpufreq, and work on the suspend/resume separately. I put them together because most of the low level code involved is the same between them. I do like your idea of a device_t flag, but I'm not sure what the best way to go with that would be. I do already use a device_t flag to determine if the device is suspended, but only bus_generic_* access that in this patch. Would a better way be: * root_suspend instead of suspending its children, instead traverses and suspends each descendent in reverse order. * While doing this, insert each device upon successful suspend into a list. * For root_resume(), traverse the list back, and suspend each device in the reverse order. With this, add a new method, called device_suspend_child() to suspend a specific child if it hasn't already been suspended. * This could require modifying the PCI driver to move the device child suspend/resume into those functions, instead of doing that logic in the device_suspend/device_resume itself. I guess, in short, I'm asking: Is it fine if I merge only the code necessary for this cpufreq? That would require making other changes to this before merging in, to isolate that code, but it's very doable. - Justin From owner-freebsd-ppc@FreeBSD.ORG Thu Dec 12 02:00:21 2013 Return-Path: Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E34ECBFA for ; Thu, 12 Dec 2013 02:00:21 +0000 (UTC) Received: from mail-pd0-f182.google.com (mail-pd0-f182.google.com [209.85.192.182]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id B49691F17 for ; Thu, 12 Dec 2013 02:00:21 +0000 (UTC) Received: by mail-pd0-f182.google.com with SMTP id v10so10629402pde.13 for ; Wed, 11 Dec 2013 18:00:15 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:content-type:mime-version:subject:from :in-reply-to:date:cc:content-transfer-encoding:message-id:references :to; bh=n1tq1s6qmtq8IyzkV+WBqltGNSvykCxHVYdmj9LIpzk=; b=GhT6f1HrtZ5fdTitLMQHj8mXyKXklpVMb8X8SVZ+VN5+V1PMEMaJ6/USm11z4+UioA /i5CVvWdAy5O2+J3zNYXSx2VutJRWAdLXQdN/rZdnw1DTXz6has/e5GDd/Bb+rfufVND Eo6M/bcln6TydJwJUcvNQzRq0lMCzoPywjGlDwe7R+BT2JupRwvHF3ePrNzBUcQjCQ6u XcWON9iCcH9A0l9gZQvWiA0PtlUIYeAHeS3lW4+wLcwu+zX2FCu5xTilcP1NxLYRm3jc xNfgVmrFo/725LkqtM06Z6MEoUIuFeguSVZaf586IBYmlyEmTTKcvN0nWNDXckDjtRvA D9Ew== X-Gm-Message-State: ALoCoQkZafD5TCooLC9WTZcVSpP+HAfIy+mjm5deDWyy0Q0I+cmp/SjW6DOfNtREio0ppv0suy4G X-Received: by 10.68.106.69 with SMTP id gs5mr6913172pbb.87.1386813615201; Wed, 11 Dec 2013 18:00:15 -0800 (PST) Received: from [192.168.1.2] (c-50-156-22-197.hsd1.ca.comcast.net. [50.156.22.197]) by mx.google.com with ESMTPSA id rz6sm49737618pab.22.2013.12.11.18.00.13 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 11 Dec 2013 18:00:14 -0800 (PST) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 7.0 \(1822\)) Subject: Re: Request for testing an alternate branch From: Tim Kientzle In-Reply-To: <201312111626.12035.jhb@freebsd.org> Date: Wed, 11 Dec 2013 18:05:21 -0800 Content-Transfer-Encoding: quoted-printable Message-Id: <65DF58AD-1058-4FA6-84DE-436AB0BB17F9@kientzle.com> References: <20131204222113.39fb23dd@zhabar.gateway.2wire.net> <201312111626.12035.jhb@freebsd.org> To: John Baldwin X-Mailer: Apple Mail (2.1822) Cc: Justin Hibbits , FreeBSD current , FreeBSD PowerPC ML X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Dec 2013 02:00:22 -0000 On Dec 11, 2013, at 1:26 PM, John Baldwin wrote: > Also, I'm still not a fan of the EAGAIN approach. I'd rather have a = method > in bus_if.m to suspend or resume a single device and to track that a = device > is suspended or resumed via a device_t flag or some such. (I think I = had > suggested this previously as it would also allow us to have a tool to > suspend/resume individual drivers at runtime apart from a full = suspend/resume > request). Anything that made it easier to test suspend/resume would be a huge bonus. Tim From owner-freebsd-ppc@FreeBSD.ORG Thu Dec 12 06:13:38 2013 Return-Path: Delivered-To: powerpc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9976F949; Thu, 12 Dec 2013 06:13:38 +0000 (UTC) Received: from worker01.tb.des.no (worker01.tb.des.no [41.154.2.147]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id CD4421F73; Thu, 12 Dec 2013 06:13:37 +0000 (UTC) Received: from worker01.tb.des.no (localhost [127.0.0.1]) by worker01.tb.des.no (8.14.5/8.14.5) with ESMTP id rBC6DQwG053873; Thu, 12 Dec 2013 08:13:26 +0200 (SAST) (envelope-from tinderbox@freebsd.org) Received: (from tinderbox@localhost) by worker01.tb.des.no (8.14.5/8.14.5/Submit) id rBC6DPqa053748; Thu, 12 Dec 2013 06:13:25 GMT (envelope-from tinderbox@freebsd.org) Date: Thu, 12 Dec 2013 06:13:25 GMT Message-Id: <201312120613.rBC6DPqa053748@worker01.tb.des.no> X-Authentication-Warning: worker01.tb.des.no: tinderbox set sender to FreeBSD Tinderbox using -f Sender: FreeBSD Tinderbox From: FreeBSD Tinderbox To: FreeBSD Tinderbox , , Subject: [releng_10 tinderbox] failure on powerpc/powerpc Precedence: bulk X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.17 List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Dec 2013 06:13:38 -0000 TB --- 2013-12-12 01:30:32 - tinderbox 2.20 running on worker01.tb.des.no TB --- 2013-12-12 01:30:33 - FreeBSD worker01.tb.des.no 9.1-RELEASE-p4 FreeBSD 9.1-RELEASE-p4 #0: Mon Jun 17 11:42:37 UTC 2013 root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64 TB --- 2013-12-12 01:30:33 - starting RELENG_10 tinderbox run for powerpc/powerpc TB --- 2013-12-12 01:30:33 - cleaning the object tree TB --- 2013-12-12 01:30:33 - /usr/local/bin/svn stat /src TB --- 2013-12-12 01:31:20 - At svn revision 259241 TB --- 2013-12-12 01:31:21 - building world TB --- 2013-12-12 01:31:21 - CROSS_BUILD_TESTING=YES TB --- 2013-12-12 01:31:21 - MAKEOBJDIRPREFIX=/obj TB --- 2013-12-12 01:31:21 - PATH=/usr/bin:/usr/sbin:/bin:/sbin TB --- 2013-12-12 01:31:21 - SRCCONF=/dev/null TB --- 2013-12-12 01:31:21 - TARGET=powerpc TB --- 2013-12-12 01:31:21 - TARGET_ARCH=powerpc TB --- 2013-12-12 01:31:21 - TZ=UTC TB --- 2013-12-12 01:31:21 - __MAKE_CONF=/dev/null TB --- 2013-12-12 01:31:21 - cd /src TB --- 2013-12-12 01:31:21 - /usr/bin/make -B buildworld >>> Building an up-to-date make(1) >>> World build started on Thu Dec 12 01:31:31 UTC 2013 >>> Rebuilding the temporary build tree >>> stage 1.1: legacy release compatibility shims >>> stage 1.2: bootstrap tools >>> stage 2.1: cleaning up the object tree >>> stage 2.2: rebuilding the object tree >>> stage 2.3: build tools >>> stage 3: cross tools >>> stage 4.1: building includes >>> stage 4.2: building libraries >>> stage 4.3: make dependencies >>> stage 4.4: building everything >>> World build completed on Thu Dec 12 05:10:35 UTC 2013 TB --- 2013-12-12 05:10:35 - generating LINT kernel config TB --- 2013-12-12 05:10:35 - cd /src/sys/powerpc/conf TB --- 2013-12-12 05:10:35 - /usr/bin/make -B LINT TB --- 2013-12-12 05:10:35 - cd /src/sys/powerpc/conf TB --- 2013-12-12 05:10:35 - /usr/sbin/config -m LINT TB --- 2013-12-12 05:10:35 - building LINT kernel TB --- 2013-12-12 05:10:35 - CROSS_BUILD_TESTING=YES TB --- 2013-12-12 05:10:35 - MAKEOBJDIRPREFIX=/obj TB --- 2013-12-12 05:10:35 - PATH=/usr/bin:/usr/sbin:/bin:/sbin TB --- 2013-12-12 05:10:35 - SRCCONF=/dev/null TB --- 2013-12-12 05:10:35 - TARGET=powerpc TB --- 2013-12-12 05:10:35 - TARGET_ARCH=powerpc TB --- 2013-12-12 05:10:35 - TZ=UTC TB --- 2013-12-12 05:10:35 - __MAKE_CONF=/dev/null TB --- 2013-12-12 05:10:35 - cd /src TB --- 2013-12-12 05:10:35 - /usr/bin/make -B buildkernel KERNCONF=LINT >>> Kernel build for LINT started on Thu Dec 12 05:10:35 UTC 2013 >>> stage 1: configuring the kernel >>> stage 2.1: cleaning up the object tree >>> stage 2.2: rebuilding the object tree >>> stage 2.3: build tools >>> stage 3.1: making dependencies >>> stage 3.2: building everything >>> Kernel build for LINT completed on Thu Dec 12 05:42:43 UTC 2013 TB --- 2013-12-12 05:42:43 - cd /src/sys/powerpc/conf TB --- 2013-12-12 05:42:43 - /usr/sbin/config -m GENERIC TB --- 2013-12-12 05:42:43 - building GENERIC kernel TB --- 2013-12-12 05:42:43 - CROSS_BUILD_TESTING=YES TB --- 2013-12-12 05:42:43 - MAKEOBJDIRPREFIX=/obj TB --- 2013-12-12 05:42:43 - PATH=/usr/bin:/usr/sbin:/bin:/sbin TB --- 2013-12-12 05:42:43 - SRCCONF=/dev/null TB --- 2013-12-12 05:42:43 - TARGET=powerpc TB --- 2013-12-12 05:42:43 - TARGET_ARCH=powerpc TB --- 2013-12-12 05:42:43 - TZ=UTC TB --- 2013-12-12 05:42:43 - __MAKE_CONF=/dev/null TB --- 2013-12-12 05:42:43 - cd /src TB --- 2013-12-12 05:42:43 - /usr/bin/make -B buildkernel KERNCONF=GENERIC >>> Kernel build for GENERIC started on Thu Dec 12 05:42:43 UTC 2013 >>> stage 1: configuring the kernel >>> stage 2.1: cleaning up the object tree >>> stage 2.2: rebuilding the object tree >>> stage 2.3: build tools >>> stage 3.1: making dependencies >>> stage 3.2: building everything >>> Kernel build for GENERIC completed on Thu Dec 12 06:09:02 UTC 2013 TB --- 2013-12-12 06:09:02 - cd /src/sys/powerpc/conf TB --- 2013-12-12 06:09:02 - /usr/sbin/config -m GENERIC64 TB --- 2013-12-12 06:09:02 - skipping GENERIC64 kernel TB --- 2013-12-12 06:09:02 - cd /src/sys/powerpc/conf TB --- 2013-12-12 06:09:02 - /usr/sbin/config -m MPC85XX TB --- 2013-12-12 06:09:02 - building MPC85XX kernel TB --- 2013-12-12 06:09:02 - CROSS_BUILD_TESTING=YES TB --- 2013-12-12 06:09:02 - MAKEOBJDIRPREFIX=/obj TB --- 2013-12-12 06:09:02 - PATH=/usr/bin:/usr/sbin:/bin:/sbin TB --- 2013-12-12 06:09:02 - SRCCONF=/dev/null TB --- 2013-12-12 06:09:02 - TARGET=powerpc TB --- 2013-12-12 06:09:02 - TARGET_ARCH=powerpc TB --- 2013-12-12 06:09:02 - TZ=UTC TB --- 2013-12-12 06:09:02 - __MAKE_CONF=/dev/null TB --- 2013-12-12 06:09:02 - cd /src TB --- 2013-12-12 06:09:02 - /usr/bin/make -B buildkernel KERNCONF=MPC85XX >>> Kernel build for MPC85XX started on Thu Dec 12 06:09:02 UTC 2013 >>> stage 1: configuring the kernel >>> stage 2.1: cleaning up the object tree >>> stage 2.2: rebuilding the object tree >>> stage 2.3: build tools >>> stage 3.1: making dependencies >>> stage 3.2: building everything [...] cc -c -O -pipe -std=c99 -Wa,-me500 -g -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -I/src/sys/contrib/libfdt -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=15000 --param inline-unit-growth=100 --param large-function-growth=1000 -msoft-float -Wa,-many -fno-omit-frame-pointer -msoft-float -mno-altivec -ffreestanding -fstack-protector -Werror /src/sys/dev/quicc/quicc_bfe_fdt.c cc -c -O -pipe -std=c99 -Wa,-me500 -g -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -I/src/sys/contrib/libfdt -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=15000 --param inline-unit-growth=100 --param large-function-growth=1000 -msoft-float -Wa,-many -fno-omit-frame-pointer -msoft-float -mno-altivec -ffreestanding -fstack-protector -Werror /src/sys/dev/sec/sec.c cc -c -O -pipe -std=c99 -Wa,-me500 -g -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -I/src/sys/contrib/libfdt -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=15000 --param inline-unit-growth=100 --param large-function-growth=1000 -msoft-float -Wa,-many -fno-omit-frame-pointer -msoft-float -mno-altivec -ffreestanding -fstack-protector -Werror /src/sys/dev/tsec/if_tsec.c cc -c -O -pipe -std=c99 -Wa,-me500 -g -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -I/src/sys/contrib/libfdt -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=15000 --param inline-unit-growth=100 --param large-function-growth=1000 -msoft-float -Wa,-many -fno-omit-frame-pointer -msoft-float -mno-altivec -ffreestanding -fstack-protector -Werror /src/sys/dev/tsec/if_tsec_fdt.c cc1: warnings being treated as errors /src/sys/dev/tsec/if_tsec_fdt.c: In function 'tsec_fdt_attach': /src/sys/dev/tsec/if_tsec_fdt.c:163: warning: implicit declaration of function 'OF_getencprop' /src/sys/dev/tsec/if_tsec_fdt.c:163: warning: nested extern declaration of 'OF_getencprop' [-Wnested-externs] *** Error code 1 Stop. bmake[1]: stopped in /obj/powerpc.powerpc/src/sys/MPC85XX *** Error code 1 Stop. bmake: stopped in /src *** [buildkernel] Error code 1 Stop in /src. TB --- 2013-12-12 06:13:24 - WARNING: /usr/bin/make returned exit code 1 TB --- 2013-12-12 06:13:24 - ERROR: failed to build MPC85XX kernel TB --- 2013-12-12 06:13:24 - 12887.80 user 4412.02 system 16971.99 real http://tinderbox.des.no/tinderbox-freebsd10-build-RELENG_10-powerpc-powerpc.full From owner-freebsd-ppc@FreeBSD.ORG Thu Dec 12 13:44:08 2013 Return-Path: Delivered-To: powerpc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 06073C77; Thu, 12 Dec 2013 13:44:08 +0000 (UTC) Received: from worker01.tb.des.no (worker01.tb.des.no [41.154.2.147]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 441C912D3; Thu, 12 Dec 2013 13:44:06 +0000 (UTC) Received: from worker01.tb.des.no (localhost [127.0.0.1]) by worker01.tb.des.no (8.14.5/8.14.5) with ESMTP id rBCDi3sI098097; Thu, 12 Dec 2013 15:44:03 +0200 (SAST) (envelope-from tinderbox@freebsd.org) Received: (from tinderbox@localhost) by worker01.tb.des.no (8.14.5/8.14.5/Submit) id rBCDi272097985; Thu, 12 Dec 2013 13:44:02 GMT (envelope-from tinderbox@freebsd.org) Date: Thu, 12 Dec 2013 13:44:02 GMT Message-Id: <201312121344.rBCDi272097985@worker01.tb.des.no> X-Authentication-Warning: worker01.tb.des.no: tinderbox set sender to FreeBSD Tinderbox using -f Sender: FreeBSD Tinderbox From: FreeBSD Tinderbox To: FreeBSD Tinderbox , , Subject: [releng_10 tinderbox] failure on powerpc/powerpc Precedence: bulk X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.17 List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Dec 2013 13:44:08 -0000 TB --- 2013-12-12 09:00:44 - tinderbox 2.20 running on worker01.tb.des.no TB --- 2013-12-12 09:00:44 - FreeBSD worker01.tb.des.no 9.1-RELEASE-p4 FreeBSD 9.1-RELEASE-p4 #0: Mon Jun 17 11:42:37 UTC 2013 root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64 TB --- 2013-12-12 09:00:44 - starting RELENG_10 tinderbox run for powerpc/powerpc TB --- 2013-12-12 09:00:44 - cleaning the object tree TB --- 2013-12-12 09:01:41 - /usr/local/bin/svn stat /src TB --- 2013-12-12 09:01:52 - At svn revision 259250 TB --- 2013-12-12 09:01:53 - building world TB --- 2013-12-12 09:01:53 - CROSS_BUILD_TESTING=YES TB --- 2013-12-12 09:01:53 - MAKEOBJDIRPREFIX=/obj TB --- 2013-12-12 09:01:53 - PATH=/usr/bin:/usr/sbin:/bin:/sbin TB --- 2013-12-12 09:01:53 - SRCCONF=/dev/null TB --- 2013-12-12 09:01:53 - TARGET=powerpc TB --- 2013-12-12 09:01:53 - TARGET_ARCH=powerpc TB --- 2013-12-12 09:01:53 - TZ=UTC TB --- 2013-12-12 09:01:53 - __MAKE_CONF=/dev/null TB --- 2013-12-12 09:01:53 - cd /src TB --- 2013-12-12 09:01:53 - /usr/bin/make -B buildworld >>> Building an up-to-date make(1) >>> World build started on Thu Dec 12 09:02:03 UTC 2013 >>> Rebuilding the temporary build tree >>> stage 1.1: legacy release compatibility shims >>> stage 1.2: bootstrap tools >>> stage 2.1: cleaning up the object tree >>> stage 2.2: rebuilding the object tree >>> stage 2.3: build tools >>> stage 3: cross tools >>> stage 4.1: building includes >>> stage 4.2: building libraries >>> stage 4.3: make dependencies >>> stage 4.4: building everything >>> World build completed on Thu Dec 12 12:41:09 UTC 2013 TB --- 2013-12-12 12:41:09 - generating LINT kernel config TB --- 2013-12-12 12:41:09 - cd /src/sys/powerpc/conf TB --- 2013-12-12 12:41:09 - /usr/bin/make -B LINT TB --- 2013-12-12 12:41:09 - cd /src/sys/powerpc/conf TB --- 2013-12-12 12:41:09 - /usr/sbin/config -m LINT TB --- 2013-12-12 12:41:09 - building LINT kernel TB --- 2013-12-12 12:41:09 - CROSS_BUILD_TESTING=YES TB --- 2013-12-12 12:41:09 - MAKEOBJDIRPREFIX=/obj TB --- 2013-12-12 12:41:09 - PATH=/usr/bin:/usr/sbin:/bin:/sbin TB --- 2013-12-12 12:41:09 - SRCCONF=/dev/null TB --- 2013-12-12 12:41:09 - TARGET=powerpc TB --- 2013-12-12 12:41:09 - TARGET_ARCH=powerpc TB --- 2013-12-12 12:41:09 - TZ=UTC TB --- 2013-12-12 12:41:09 - __MAKE_CONF=/dev/null TB --- 2013-12-12 12:41:09 - cd /src TB --- 2013-12-12 12:41:09 - /usr/bin/make -B buildkernel KERNCONF=LINT >>> Kernel build for LINT started on Thu Dec 12 12:41:09 UTC 2013 >>> stage 1: configuring the kernel >>> stage 2.1: cleaning up the object tree >>> stage 2.2: rebuilding the object tree >>> stage 2.3: build tools >>> stage 3.1: making dependencies >>> stage 3.2: building everything >>> Kernel build for LINT completed on Thu Dec 12 13:13:13 UTC 2013 TB --- 2013-12-12 13:13:13 - cd /src/sys/powerpc/conf TB --- 2013-12-12 13:13:13 - /usr/sbin/config -m GENERIC TB --- 2013-12-12 13:13:13 - building GENERIC kernel TB --- 2013-12-12 13:13:13 - CROSS_BUILD_TESTING=YES TB --- 2013-12-12 13:13:13 - MAKEOBJDIRPREFIX=/obj TB --- 2013-12-12 13:13:13 - PATH=/usr/bin:/usr/sbin:/bin:/sbin TB --- 2013-12-12 13:13:13 - SRCCONF=/dev/null TB --- 2013-12-12 13:13:13 - TARGET=powerpc TB --- 2013-12-12 13:13:13 - TARGET_ARCH=powerpc TB --- 2013-12-12 13:13:13 - TZ=UTC TB --- 2013-12-12 13:13:13 - __MAKE_CONF=/dev/null TB --- 2013-12-12 13:13:13 - cd /src TB --- 2013-12-12 13:13:13 - /usr/bin/make -B buildkernel KERNCONF=GENERIC >>> Kernel build for GENERIC started on Thu Dec 12 13:13:13 UTC 2013 >>> stage 1: configuring the kernel >>> stage 2.1: cleaning up the object tree >>> stage 2.2: rebuilding the object tree >>> stage 2.3: build tools >>> stage 3.1: making dependencies >>> stage 3.2: building everything >>> Kernel build for GENERIC completed on Thu Dec 12 13:39:38 UTC 2013 TB --- 2013-12-12 13:39:38 - cd /src/sys/powerpc/conf TB --- 2013-12-12 13:39:38 - /usr/sbin/config -m GENERIC64 TB --- 2013-12-12 13:39:38 - skipping GENERIC64 kernel TB --- 2013-12-12 13:39:38 - cd /src/sys/powerpc/conf TB --- 2013-12-12 13:39:38 - /usr/sbin/config -m MPC85XX TB --- 2013-12-12 13:39:38 - building MPC85XX kernel TB --- 2013-12-12 13:39:38 - CROSS_BUILD_TESTING=YES TB --- 2013-12-12 13:39:38 - MAKEOBJDIRPREFIX=/obj TB --- 2013-12-12 13:39:38 - PATH=/usr/bin:/usr/sbin:/bin:/sbin TB --- 2013-12-12 13:39:38 - SRCCONF=/dev/null TB --- 2013-12-12 13:39:38 - TARGET=powerpc TB --- 2013-12-12 13:39:38 - TARGET_ARCH=powerpc TB --- 2013-12-12 13:39:38 - TZ=UTC TB --- 2013-12-12 13:39:38 - __MAKE_CONF=/dev/null TB --- 2013-12-12 13:39:38 - cd /src TB --- 2013-12-12 13:39:38 - /usr/bin/make -B buildkernel KERNCONF=MPC85XX >>> Kernel build for MPC85XX started on Thu Dec 12 13:39:39 UTC 2013 >>> stage 1: configuring the kernel >>> stage 2.1: cleaning up the object tree >>> stage 2.2: rebuilding the object tree >>> stage 2.3: build tools >>> stage 3.1: making dependencies >>> stage 3.2: building everything [...] cc -c -O -pipe -std=c99 -Wa,-me500 -g -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -I/src/sys/contrib/libfdt -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=15000 --param inline-unit-growth=100 --param large-function-growth=1000 -msoft-float -Wa,-many -fno-omit-frame-pointer -msoft-float -mno-altivec -ffreestanding -fstack-protector -Werror /src/sys/dev/quicc/quicc_bfe_fdt.c cc -c -O -pipe -std=c99 -Wa,-me500 -g -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -I/src/sys/contrib/libfdt -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=15000 --param inline-unit-growth=100 --param large-function-growth=1000 -msoft-float -Wa,-many -fno-omit-frame-pointer -msoft-float -mno-altivec -ffreestanding -fstack-protector -Werror /src/sys/dev/sec/sec.c cc -c -O -pipe -std=c99 -Wa,-me500 -g -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -I/src/sys/contrib/libfdt -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=15000 --param inline-unit-growth=100 --param large-function-growth=1000 -msoft-float -Wa,-many -fno-omit-frame-pointer -msoft-float -mno-altivec -ffreestanding -fstack-protector -Werror /src/sys/dev/tsec/if_tsec.c cc -c -O -pipe -std=c99 -Wa,-me500 -g -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -I/src/sys/contrib/libfdt -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=15000 --param inline-unit-growth=100 --param large-function-growth=1000 -msoft-float -Wa,-many -fno-omit-frame-pointer -msoft-float -mno-altivec -ffreestanding -fstack-protector -Werror /src/sys/dev/tsec/if_tsec_fdt.c cc1: warnings being treated as errors /src/sys/dev/tsec/if_tsec_fdt.c: In function 'tsec_fdt_attach': /src/sys/dev/tsec/if_tsec_fdt.c:163: warning: implicit declaration of function 'OF_getencprop' /src/sys/dev/tsec/if_tsec_fdt.c:163: warning: nested extern declaration of 'OF_getencprop' [-Wnested-externs] *** Error code 1 Stop. bmake[1]: stopped in /obj/powerpc.powerpc/src/sys/MPC85XX *** Error code 1 Stop. bmake: stopped in /src *** [buildkernel] Error code 1 Stop in /src. TB --- 2013-12-12 13:44:01 - WARNING: /usr/bin/make returned exit code 1 TB --- 2013-12-12 13:44:01 - ERROR: failed to build MPC85XX kernel TB --- 2013-12-12 13:44:01 - 12894.70 user 4422.49 system 16997.23 real http://tinderbox.des.no/tinderbox-freebsd10-build-RELENG_10-powerpc-powerpc.full From owner-freebsd-ppc@FreeBSD.ORG Thu Dec 12 19:17:27 2013 Return-Path: Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DEFC46DD; Thu, 12 Dec 2013 19:17:27 +0000 (UTC) Received: from bigwig.baldwin.cx (bigwig.baldwin.cx [IPv6:2001:470:1f11:75::1]) (using TLSv1 with cipher ADH-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 98CE91F58; Thu, 12 Dec 2013 19:17:27 +0000 (UTC) Received: from jhbbsd.localnet (unknown [209.249.190.124]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id 81161B9CA; Thu, 12 Dec 2013 14:17:26 -0500 (EST) From: John Baldwin To: Justin Hibbits Subject: Re: Request for testing an alternate branch Date: Thu, 12 Dec 2013 14:15:47 -0500 User-Agent: KMail/1.13.5 (FreeBSD/8.4-CBSD-20130906; KDE/4.5.5; amd64; ; ) References: <20131204222113.39fb23dd@zhabar.gateway.2wire.net> <201312111626.12035.jhb@freebsd.org> In-Reply-To: MIME-Version: 1.0 Content-Type: Text/Plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <201312121415.47440.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (bigwig.baldwin.cx); Thu, 12 Dec 2013 14:17:26 -0500 (EST) Cc: FreeBSD Current , FreeBSD PowerPC ML X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Dec 2013 19:17:27 -0000 On Wednesday, December 11, 2013 5:40:30 pm Justin Hibbits wrote: > On Wed, Dec 11, 2013 at 1:26 PM, John Baldwin wrote: > > On Thursday, December 05, 2013 1:21:13 am Justin Hibbits wrote: > >> I've been working on the projects/pmac_pmu branch for some time now to > >> add suspend/resume as well as CPU speed change for certain PowerPC > >> machines, about a year since I created the branch, and now it's stable > >> enough that I want to merge it into HEAD, hence this request. However, > >> it does touch several drivers, turning them into "early drivers", such > >> that they can be initialized, and suspended and resumed at a different > >> time. Saying that, I do need testing from other architectures, to make > >> sure I haven't broken anything. > >> > >> The technical details: > >> > >> To get proper ordering, I've extended the bus_generic_suspend() and > >> bus_generic_resume() to do multiple passes. Devices which cannot be > >> enabled or disabled at the current pass level would return an EAGAIN. > >> This could possibly cause problems, since it's an addition to an > >> existing API rather than a new API to run along side it, so it needs a > >> great deal of testing. It works fine on PowerPC, but I don't have any > >> i386/amd64 or sparc64 hardware to test it on, so would like others who > >> do to test it. I don't think that it would impact x86 at all (testing > >> is obviously required), because the nexus is not an EARLY_DRIVER_MODULE, > >> so all devices would be handled at the same pass. But, I do know the > >> sparc64 has an EARLY_DRIVER_MODULE() nexus, so that will likely be > >> impacted. > > > > I have patches to change many x86 drivers to use EARLY_DRIVER_MODULE() > > FWIW. > > > > Also, I'm still not a fan of the EAGAIN approach. I'd rather have a method > > in bus_if.m to suspend or resume a single device and to track that a device > > is suspended or resumed via a device_t flag or some such. (I think I had > > suggested this previously as it would also allow us to have a tool to > > suspend/resume individual drivers at runtime apart from a full suspend/resume > > request). > > > > -- > > John Baldwin > > Understood. You had mentioned something along those lines before. Is > it safe/sane to partially merge a branch into HEAD? If so, I can > merge only the changes necessary for PMU cpufreq, and work on the > suspend/resume separately. I put them together because most of the > low level code involved is the same between them. Yes, you can split them up. However, the way to do that is to generate a diff and patch that into a head checkout and commit. There's not a good way to have 'svn merge' do it AFAIK. > I do like your idea of a device_t flag, but I'm not sure what the best > way to go with that would be. I do already use a device_t flag to > determine if the device is suspended, but only bus_generic_* access > that in this patch. > > Would a better way be: > * root_suspend instead of suspending its children, instead traverses > and suspends each descendent in reverse order. > * While doing this, insert each device upon successful suspend into a list. > * For root_resume(), traverse the list back, and suspend each device > in the reverse order. I would rather do it more the way that multipass attach now works where you do scans of the entire device tree as you walk the pass number down (during suspend) suspending any devices that are not yet suspended if their pass number is >= current pass number, then on resume you do scans of the entire tree raising the pass number back up using similar logic to attach where you resume any suspended devices if the driver's pass number is <= current pass number. > With this, add a new method, called device_suspend_child() to suspend > a specific child if it hasn't already been suspended. Well, I would call it 'bus_suspend_child' and 'bus_resume_child' as these would be bus methods in bus_if.m. > * This could require modifying the PCI driver to move the device > child suspend/resume into those functions, instead of doing that logic > in the device_suspend/device_resume itself. Correct. bus_generic_suspend() and bus_suspend_resume() would turn into loops that look a lot like bus_generic_new_pass() (so the logic for honoring pass numbers would happen in these routines and they would invoke bus_suspend_child() and bus_resume_child() to change the state of individual drivers). device_suspend() and device_resume() for the root device would look like bus_set_pass() with a similar loop that walked through the pass levels and invoked bus_generic_suspend/resume after each pass change to start the pass across the device tree. > I guess, in short, I'm asking: Is it fine if I merge only the code > necessary for this cpufreq? That would require making other changes > to this before merging in, to isolate that code, but it's very doable. > > - Justin > -- John Baldwin From owner-freebsd-ppc@FreeBSD.ORG Sat Dec 14 07:45:45 2013 Return-Path: Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id F0BB2EAF for ; Sat, 14 Dec 2013 07:45:45 +0000 (UTC) Received: from mail-lb0-x234.google.com (mail-lb0-x234.google.com [IPv6:2a00:1450:4010:c04::234]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 7877D1F7F for ; Sat, 14 Dec 2013 07:45:45 +0000 (UTC) Received: by mail-lb0-f180.google.com with SMTP id x18so140820lbi.25 for ; Fri, 13 Dec 2013 23:45:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:subject :content-type:content-transfer-encoding; bh=K1dSCx9OlsCEBglXdh6WZDXgL5WxFeeKbHP1Iwz7/vk=; b=vY3+xKfUd9vEE7+Ih/Ojfqi+JtpOSjc1o1ZDffGqxR2LiXOdK4H8IgcVJV+x5Nli4Z KPyJ+4RaQRi82Z7enhjuclzrYFe3SsJ1CbPeDzB7AZ2EKqFC3gVVJ3qx5d4DDwEVlLDJ Uq6/uJgtjaegDakEE5Plk7IdMBncdgk9FKqv/tMS26QGC881lGiPlUDj+OH1c9HPlgM7 +4REX6RgDVJ8Z5A0fqVNTRlfFivGPAtMMeGWdJ+fYH/tVu2df7hnHDRUTnRSotDYpnlR nO/xqFM1Z/Wtj1ZmA1O05Jz4c0lk4TB/7/D7E33tFkM1sOPCkmx58wDEEG5PIpZDlfDv Oyeg== X-Received: by 10.152.9.193 with SMTP id c1mr3214252lab.53.1387007143556; Fri, 13 Dec 2013 23:45:43 -0800 (PST) Received: from selene.local (h-42-134.a357.priv.bahnhof.se. [79.136.42.134]) by mx.google.com with ESMTPSA id t9sm9823834lat.1.2013.12.13.23.45.41 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 13 Dec 2013 23:45:42 -0800 (PST) Message-ID: <52AC0CA3.2010301@gmail.com> Date: Sat, 14 Dec 2013 08:45:39 +0100 From: Erik Larsson User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: freebsd-ppc@freebsd.org Subject: Failed install attempt for FreeBSD 10 RC1 powerpc64 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 14 Dec 2013 07:45:46 -0000 Hi all, I just tried installing FreeBSD 10 RC1 powerpc64 on my PowerMac11,2 (2x2.3 GHz). The disc created from the ISO booted fine, and I was able to install FreeBSD onto a UFS filesystem on my second hard drive (I couldn't find an option to install to ZFS), but after a reboot the system boot setting 'boot-device' in nvram had not changed (it booted the previous default OS instead). I fixed the nvram value myself to point at the instealled .elf file and made another attempt at booting. It loads the .elf file, the screen flashes into black and then it exits back to openfirmware. Seems to crash somehow. Does anybody have an idea what to try next to make the install succeed and boot? Best regards, - Erik