From owner-freebsd-ppc@FreeBSD.ORG Sun Feb 18 09:11:15 2007 Return-Path: X-Original-To: freebsd-ppc@freebsd.org Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 6070B16A402 for ; Sun, 18 Feb 2007 09:11:15 +0000 (UTC) (envelope-from andrew@fubar.geek.nz) Received: from fep03.xtra.co.nz (fep03.xtra.co.nz [210.54.141.243]) by mx1.freebsd.org (Postfix) with ESMTP id EC2E813C481 for ; Sun, 18 Feb 2007 09:11:14 +0000 (UTC) (envelope-from andrew@fubar.geek.nz) Received: from serv.int.fubar.geek.nz ([125.237.110.135]) by fep03.xtra.co.nz with ESMTP id <20070218091108.LUBP22426.fep03.xtra.co.nz@serv.int.fubar.geek.nz> for ; Sun, 18 Feb 2007 22:11:08 +1300 Date: Sun, 18 Feb 2007 22:11:07 +1300 From: Andrew Turner To: freebsd-ppc@freebsd.org Message-ID: <20070218221107.2a453e4a@hermies.int.fubar.geek.nz> X-Mailer: Claws Mail 2.6.1 (GTK+ 2.10.9; i386-portbld-freebsd6.2) Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=MP_Q8n0WYAB9TK4b.xc9kYkbou Subject: Bug in cpu.c X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 18 Feb 2007 09:11:15 -0000 --MP_Q8n0WYAB9TK4b.xc9kYkbou Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline When booting on an unknown cpu the loop in sys/powerpc/powerpc/cpu.c to find the model will run past the end of the list of possible models. The attached patch fixes this. Andrew --MP_Q8n0WYAB9TK4b.xc9kYkbou Content-Type: text/x-patch; name=freebsd-ppc-cpu.diff Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=freebsd-ppc-cpu.diff Index: sys/powerpc/powerpc/cpu.c =================================================================== RCS file: /cvsroot/src/sys/powerpc/powerpc/cpu.c,v retrieving revision 1.7 diff -u -r1.7 cpu.c --- sys/powerpc/powerpc/cpu.c 4 Feb 2005 01:59:48 -0000 1.7 +++ sys/powerpc/powerpc/cpu.c 18 Feb 2007 04:43:54 -0000 @@ -126,7 +126,7 @@ min = (pvr >> 0) & 0xf; } - for (cp = models; cp->name[0] != '\0'; cp++) { + for (cp = models; cp->version != 0; cp++) { if (cp->version == vers) break; } --MP_Q8n0WYAB9TK4b.xc9kYkbou-- From owner-freebsd-ppc@FreeBSD.ORG Sun Feb 18 17:40:55 2007 Return-Path: X-Original-To: freebsd-ppc@freebsd.org Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id AF36316A401 for ; Sun, 18 Feb 2007 17:40:55 +0000 (UTC) (envelope-from xcllnt@mac.com) Received: from smtpout.mac.com (smtpout.mac.com [17.250.248.175]) by mx1.freebsd.org (Postfix) with ESMTP id 817C713C478 for ; Sun, 18 Feb 2007 17:40:55 +0000 (UTC) (envelope-from xcllnt@mac.com) Received: from mac.com (smtpin07-en2 [10.13.10.152]) by smtpout.mac.com (Xserve/8.12.11/smtpout05/MantshX 4.0) with ESMTP id l1IHesKI021280; Sun, 18 Feb 2007 09:40:55 -0800 (PST) Received: from [192.168.1.4] (c-67-164-11-148.hsd1.ca.comcast.net [67.164.11.148]) (authenticated bits=0) by mac.com (Xserve/smtpin07/MantshX 4.0) with ESMTP id l1IHeqhQ025859 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Sun, 18 Feb 2007 09:40:53 -0800 (PST) In-Reply-To: <20070218221107.2a453e4a@hermies.int.fubar.geek.nz> References: <20070218221107.2a453e4a@hermies.int.fubar.geek.nz> Mime-Version: 1.0 (Apple Message framework v752.2) Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Message-Id: <3EA4A087-DBAA-4CC9-8B39-3754CF6C55CB@mac.com> Content-Transfer-Encoding: 7bit From: Marcel Moolenaar Date: Sun, 18 Feb 2007 09:40:51 -0800 To: Andrew Turner X-Mailer: Apple Mail (2.752.2) X-Brightmail-Tracker: AAAAAA== X-Brightmail-scanned: yes Cc: freebsd-ppc@freebsd.org Subject: Re: Bug in cpu.c X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 18 Feb 2007 17:40:55 -0000 On Feb 18, 2007, at 1:11 AM, Andrew Turner wrote: > When booting on an unknown cpu the loop in sys/powerpc/powerpc/ > cpu.c to > find the model will run past the end of the list of possible models. > The attached patch fixes this. Committed. Thanks, -- Marcel Moolenaar xcllnt@mac.com From owner-freebsd-ppc@FreeBSD.ORG Sun Feb 18 21:04:38 2007 Return-Path: X-Original-To: freebsd-ppc@freebsd.org Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 48CFD16A408 for ; Sun, 18 Feb 2007 21:04:38 +0000 (UTC) (envelope-from andrew@fubar.geek.nz) Received: from fep06.xtra.co.nz (fep06.xtra.co.nz [210.54.141.240]) by mx1.freebsd.org (Postfix) with ESMTP id 864F813C49D for ; Sun, 18 Feb 2007 21:04:37 +0000 (UTC) (envelope-from andrew@fubar.geek.nz) Received: from serv.int.fubar.geek.nz ([125.237.110.135]) by fep06.xtra.co.nz with ESMTP id <20070218210434.XXWX21158.fep06.xtra.co.nz@serv.int.fubar.geek.nz> for ; Mon, 19 Feb 2007 10:04:34 +1300 Date: Mon, 19 Feb 2007 10:04:33 +1300 From: Andrew Turner To: freebsd-ppc@freebsd.org Message-ID: <20070219100433.66d7ff49@hermies.int.fubar.geek.nz> X-Mailer: Claws Mail 2.6.1 (GTK+ 2.10.9; i386-portbld-freebsd6.2) Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_2T7mzsrHA=2RIWRHB2KGn7J" Subject: Patch to partially boot an EFIKA X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 18 Feb 2007 21:04:38 -0000 --MP_2T7mzsrHA=2RIWRHB2KGn7J Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline The attached patch helps me to partially boot my EFIKA. The file ofwread.S is from NetBSD and needs to be placed in sys/powerpc/powerpc. The patch takes the real-mode ofw interface code from NetBSD and the TLB exception handlers from //depot/user/jaras in perforce. The call to ofwr_init in locore.S is not enabled by default as it doesn't currently work on my Apple. By commenting out the FIRMWORKSBUGS ifdef, to call ofwr_init, I can get my EFIKA to boot until it attempts to schedule work. Andrew --MP_2T7mzsrHA=2RIWRHB2KGn7J Content-Type: application/octet-stream; name=ofwreal.S Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=ofwreal.S LyoJJE5ldEJTRDogb2Z3cmVhbC5TLHYgMS45IDIwMDcvMDEvMTQgMjI6MTE6MjcgYXltZXJpYyBF eHAgJAkqLwoKLyoKICogQ29weXJpZ2h0IChDKSAxOTk2IFdvbGZnYW5nIFNvbGZyYW5rLgogKiBD b3B5cmlnaHQgKEMpIDE5OTYgVG9vTHMgR21iSC4KICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICoK ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0 aCBvciB3aXRob3V0CiAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0 IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwogKiBhcmUgbWV0OgogKiAxLiBSZWRpc3RyaWJ1dGlv bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogKiAgICBu b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt ZXIuCiAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0 aGUgYWJvdmUgY29weXJpZ2h0CiAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKICogICAgZG9jdW1lbnRhdGlvbiBh bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KICog My4gQWxsIGFkdmVydGlzaW5nIG1hdGVyaWFscyBtZW50aW9uaW5nIGZlYXR1cmVzIG9yIHVzZSBv ZiB0aGlzIHNvZnR3YXJlCiAqICAgIG11c3QgZGlzcGxheSB0aGUgZm9sbG93aW5nIGFja25vd2xl ZGdlbWVudDoKICoJVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSBU b29McyBHbWJILgogKiA0LiBUaGUgbmFtZSBvZiBUb29McyBHbWJIIG1heSBub3QgYmUgdXNlZCB0 byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMKICogICAgZGVyaXZlZCBmcm9tIHRoaXMgc29m dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCiAqCiAqIFRI SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVE9PTFMgR01CSCBgYEFTIElTJycgQU5EIEFOWSBF WFBSRVNTIE9SCiAqIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU RUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMKICogT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4KICogSU4gTk8g RVZFTlQgU0hBTEwgVE9PTFMgR01CSCBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU LCBJTkNJREVOVEFMLAogKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFN QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCiAqIFBST0NVUkVNRU5UIE9GIFNV QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT OwogKiBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg VEhFT1JZIE9GIExJQUJJTElUWSwKICogV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKICogT1RIRVJXSVNFKSBBUklT SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRgog KiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICovCgovKgogKiBU aGlzIGZpbGUgcHJvdmlkZXMgYSByZWFsLW1vZGUgY2xpZW50IGludGVyZmFjZSBvbiBtYWNoaW5l cywgdGhhdAogKiAoaW5jb3JyZWN0bHkpIG9ubHkgaW1wbGVtZW50IHZpcnR1YWwgbW9kZSBjbGll bnQgaW50ZXJmYWNlLgogKgogKiBJdCBhc3N1bWVzIHRob3VnaCwgdGhhdCBhbnkgYWN0dWFsIG1l bW9yeSBpbiB0aGUgbWFjaGluZSBpcwogKiBtYXBwZWQgMToxIGV2ZW4gYnkgdGhlIHZpcnR1YWwg bW9kZSBPcGVuRmlybXdhcmUuCiAqIEZ1cnRoZXJtb3JlIGl0IGFzc3VtZXMgdGhhdCBhZGRyZXNz ZXMgcmV0dXJuZWQgYnkgT3BlbkZpcm13YXJlIGFyZSBub3QKICogYWNjZXNzZWQgYnkgdGhlIGNs aWVudC4KICoKICogVE9ETzogaGFuZGxlIHNldC1jYWxsYmFjayBzcGVjaWFsbHkKICovCiNpbmNs dWRlIDxtYWNoaW5lL3BzbC5oPgojaW5jbHVkZSA8bWFjaGluZS90cmFwLmg+CiNkZWZpbmUgX05P UkVHTkFNRVMKI2luY2x1ZGUgPG1hY2hpbmUvYXNtLmg+CgojZGVmaW5lCUNBQ0hFTElORQkzMgkJ LyogTm90ZSB0aGF0IHRoaXMgdmFsdWUgaXMgcmVhbGx5CgkJCQkJICAgaGFyZHdpcmVkICovCgoJ LmRhdGEKb2ZlbnRyeToKCS5sb25nCTAJCQkvKiBhY3R1YWwgZW50cnkgdG8gZmlybXdhcmUgaW4K CQkJCQkgICB2aXJ0dWFsIG1vZGUgKi8KCiNkZWZpbmUJQkFUU0laRQkJKDgqOCkKI2RlZmluZQlT UlNJWkUJCSgxNio0KQojZGVmaW5lCVNQUkdTSVpFCSg0KjQpCiNkZWZpbmUJU0RSMVNJWkUJNAoj ZGVmaW5lCVNJMVNJWkUJCSgyKjI1NikKI2RlZmluZQlTSTJTSVpFCQkoMyoyNTYpCiNkZWZpbmUJ U1ZTSVpFCQkoQkFUU0laRStTUlNJWkUrU1BSR1NJWkUrU0RSMVNJWkUrU0kxU0laRStTSTJTSVpF KQoKCS5sb2NhbAlmd3NhdmUKCS5jb21tCWZ3c2F2ZSxTVlNJWkUsOAoKCS5sb2NhbAljbHNhdmUK CS5jb21tCWNsc2F2ZSxTVlNJWkUsOAoKRU5UUlkob2Z3cl9pbml0KQoJbWZscgklcjMxCQkJLyog c2F2ZSByZXR1cm4gYWRkcmVzcyAqLwoKCW1yCSVyMTMsJXI2CQkvKiBzYXZlIGFyZ3MgKi8KCW1y CSVyMTIsJXI3CQkvKiBzYXZlIGFyZ3NsZW4gKi8KCWxpcwklcjgsb2ZlbnRyeUBoYQoJc3R3CSVy NSxvZmVudHJ5QGwoJXI4KQkvKiBzYXZlIHZpcnR1YWwgbW9kZSBmaXJtd2FyZSBlbnRyeSAqLwoK CWxpcwklcjMsZndzYXZlQGhhCQkvKiBzYXZlIHRoZSBtbXUgdmFsdWVzIG9mIHRoZQoJCQkJCSAg IGZpcm13YXJlICovCglhZGRpCSVyMywlcjMsZndzYXZlQGwKCWJsCXNhdmVtbXUKCglsaXMJJXI1 LGZ3ZW50cnlAaGEJCS8qIGdldCBuZXcgZmlybXdhcmUgZW50cnkgKi8KCWFkZGkJJXI1LCVyNSxm d2VudHJ5QGwKCgltcgklcjYsJXIxMwkJLyogcmVzdG9yZSBhcmdzIHBvaW50ZXIgKi8KCW1yCSVy NywlcjEyCQkvKiByZXN0b3JlIGFyZ3MgbGVuZ3RoICovCgltdGxyCSVyMzEJCQkvKiByZXN0b3Jl IHJldHVybiBhZGRyZXNzICovCglibHIKCi8qCiAqIEVtdWxhdGVkIGZpcm13YXJlIGVudHJ5Lgog Ki8KZndlbnRyeToKCW1mbHIJJXIwCQkJLyogc2F2ZSByZXR1cm4gYWRkcmVzcyAqLwoJc3R3CSVy MCw0KCVyMSkKCXN0d3UJJXIxLC0xNiglcjEpCQkvKiBzZXR1cCBzdGFjayBmcmFtZSAqLwoJc3R3 CSVyMyw4KCVyMSkJCS8qIHNhdmUgYXJnICovCgoJbGlzCSVyMyxjbHNhdmVAaGEJCS8qIHNhdmUg bW11IHZhbHVlcyBvZiBjbGllbnQgKi8KCWFkZGkJJXIzLCVyMyxjbHNhdmVAbAoJYmwJc2F2ZW1t dQoKCWxpcwklcjMsZndzYXZlQGhhCQkvKiByZXN0b3JlIG1tdSB2YWx1ZXMgb2YgZmlybXdhcmUg Ki8KCWFkZGkJJXIzLCVyMyxmd3NhdmVAbAoJYmwJcmVzdG9yZW1tdQoKCWxpcwklcjMsb2ZlbnRy eUBoYQoJbHd6CSVyMyxvZmVudHJ5QGwoJXIzKQkvKiBnZXQgYWN0dWFsIGZpcm13YXJlIGVudHJ5 ICovCgltdGxyCSVyMwoKCW1mbXNyCSVyNAoJc3R3CSVyNCwxMiglcjEpCQkvKiBzYXZlIE1TUiAq LwoJb3JpCSVyNCwlcjQsUFNMX0lSfFBTTF9EUgkvKiB0dXJuIG9uIE1NVSAqLwoJYW5kaS4JJXI0 LCVyNCx+UFNMX0VFQGwJLyogdHVybiBvZmYgaW50ZXJydXB0cyAqLwoJbXRtc3IJJXI0Cglpc3lu YwoKCWx3egklcjMsOCglcjEpCQkvKiByZXN0b3JlIGFyZyAqLwoJYmxybAkJCQkvKiBkbyBhY3R1 YWwgZmlybXdhcmUgY2FsbCAqLwoJc3R3CSVyMyw4KCVyMSkJCS8qIHNhdmUgcmV0dXJuIHZhbHVl ICovCgoJbHd6CSVyNCwxMiglcjEpCQkvKiBnZXQgc2F2ZWQgTVNSICovCgltdG1zcgklcjQKCWlz eW5jCgoJbGlzCSVyMyxmd3NhdmVAaGEJCS8qIHNhdmUgbW11IHZhbHVlcyBvZiBmaXJtYXJlICov CglhZGRpCSVyMywlcjMsZndzYXZlQGwJLyogKG1pZ2h0IG5vdCBiZSBuZWNlc3NhcnksIGJ1dC4u LiAqLwoJYmwJc2F2ZW1tdQoKCWxpcwklcjMsY2xzYXZlQGhhCQkvKiByZXN0b3JlIG1tdSB2YWx1 ZXMgb2YgY2xpZW50ICovCglhZGRpCSVyMywlcjMsY2xzYXZlQGwKCWJsCXJlc3RvcmVtbXUKCgls d3oJJXIzLDgoJXIxKQkJLyogcmVzdG9yZSByZXR1cm4gdmFsdWUgKi8KCWx3egklcjEsMCglcjEp CQkvKiBhbmQgcmV0dXJuICovCglsd3oJJXIwLDQoJXIxKQoJbXRscgklcjAKCWJscgoKLyoKICog U2F2ZSBldmVyeXRpbmcgcmVsYXRlZCB0byB0aGUgbW11IHRvIHRoZSBzYXZlYXJlIHBvaW50ZWQg dG8gYnkgcjMuCiAqLwpzYXZlbW11OgoKCW1maWJhdGwJJXI0LDAJCQkvKiBzYXZlIEJBVHMgKi8K CXN0dwklcjQsMCglcjMpCgltZmliYXR1CSVyNCwwCglzdHcJJXI0LDQoJXIzKQoJbWZpYmF0bAkl cjQsMQoJc3R3CSVyNCw4KCVyMykKCW1maWJhdHUJJXI0LDEKCXN0dwklcjQsMTIoJXIzKQoJbWZp YmF0bAklcjQsMgoJc3R3CSVyNCwxNiglcjMpCgltZmliYXR1CSVyNCwyCglzdHcJJXI0LDIwKCVy MykKCW1maWJhdGwJJXI0LDMKCXN0dwklcjQsMjQoJXIzKQoJbWZpYmF0dQklcjQsMwoJc3R3CSVy NCwyOCglcjMpCgltZmRiYXRsCSVyNCwwCglzdHcJJXI0LDMyKCVyMykKCW1mZGJhdHUJJXI0LDAK CXN0dwklcjQsMzYoJXIzKQoJbWZkYmF0bAklcjQsMQoJc3R3CSVyNCw0MCglcjMpCgltZmRiYXR1 CSVyNCwxCglzdHcJJXI0LDQ0KCVyMykKCW1mZGJhdGwJJXI0LDIKCXN0dwklcjQsNDgoJXIzKQoJ bWZkYmF0dQklcjQsMgoJc3R3CSVyNCw1MiglcjMpCgltZmRiYXRsCSVyNCwzCglzdHcJJXI0LDU2 KCVyMykKCW1mZGJhdHUJJXI0LDMKCXN0d3UJJXI0LDYwKCVyMykKCglsaQklcjQsMAkJCS8qIHNh dmUgU1JzICovCjE6CglhZGRpcwklcjQsJXI0LC0weDEwMDAwMDAwQGhhCglvci4JJXI0LCVyNCwl cjQKCW1mc3JpbgklcjUsJXI0CglzdHd1CSVyNSw0KCVyMykKCWJuZQkxYgoKCW1mc3ByZzAJJXI0 CQkJLyogc2F2ZSBTUFJHcyAqLwoJc3R3CSVyNCw0KCVyMykKCW1mc3ByZzEJJXI0CglzdHcJJXI0 LDgoJXIzKQoJbWZzcHJnMgklcjQKCXN0dwklcjQsMTIoJXIzKQoJbWZzcHJnMwklcjQKCXN0dwkl cjQsMTYoJXIzKQoKCW1mc2RyMQklcjQJCQkvKiBzYXZlIFNEUjEgKi8KCXN0dwklcjQsMjAoJXIz KQoKCWFkZGkJJXI0LCVyMywyNAoJbWZscgklcjExCglsaQklcjMsRVhDX0RTSQkJLyogc2F2ZSBE U0kvSVNJIHRyYXAgdmVjdG9ycyAqLwoJbGkJJXI1LFNJMVNJWkUKCWJsCWNvcHkKCgltdGxyCSVy MTEKCWxpCSVyMyxFWENfSU1JU1MJCS8qIHNhdmUgTUlTUyB0cmFwIHZlY3RvcnMgKi8KCWxpCSVy NSxTSTJTSVpFCgovKiBDb3B5IGFuIGV4Y2VwdGlvbiBoYW5kbGVyICovCmNvcHk6CglsaQklcjYs Q0FDSEVMSU5FCjE6Cglsd3oJJXI3LDAoJXIzKQoJbHd6CSVyOCw0KCVyMykKCWx3egklcjksOCgl cjMpCglsd3oJJXIxMCwxMiglcjMpCglzdHcJJXI3LDAoJXI0KQoJc3R3CSVyOCw0KCVyNCkKCXN0 dwklcjksOCglcjQpCglzdHcJJXIxMCwxMiglcjQpCglsd3oJJXI3LDE2KCVyMykKCWx3egklcjgs MjAoJXIzKQoJbHd6CSVyOSwyNCglcjMpCglsd3oJJXIxMCwyOCglcjMpCglzdHcJJXI3LDE2KCVy NCkKCXN0dwklcjgsMjAoJXI0KQoJc3R3CSVyOSwyNCglcjQpCglzdHcJJXIxMCwyOCglcjQpCglk Y2JzdAklcjAsJXI0CglpY2JpCSVyMCwlcjQKCWFkZAklcjMsJXIzLCVyNgoJYWRkCSVyNCwlcjQs JXI2CglzdWJmLgklcjUsJXI2LCVyNQoJYmd0CTFiCgoJZGNic3QJJXIwLCVyNAoJaWNiaQklcjAs JXI0CgoJc3luYwoJaXN5bmMKCglibHIKCi8qCiAqIFJlc3RvcmUgZXZlcnl0aW5nIHJlbGF0ZWQg dG8gdGhlIG1tdSBmcm9tIHRoZSBzYXZlYXJlIHBvaW50ZWQgdG8gYnkgcjMuCiAqLwpyZXN0b3Jl bW11OgoJbWZtc3IJJXIxMgoJYW5kaS4JJXI0LCVyMTIsfihQU0xfSVJ8UFNMX0RSKUBsCgltdG1z cgklcjQJCQkvKiBEaXNhYmxlIE1NVSAqLwoJaXN5bmMKCglsaQklcjQsMAkJCS8qIGZpcnN0LCBp bnZhbGlkYXRlIEJBVHMgKi8KCW10aWJhdHUJMCwlcjQKCW10aWJhdHUJMSwlcjQKCW10aWJhdHUJ MiwlcjQKCW10aWJhdHUJMywlcjQKCW10ZGJhdHUJMCwlcjQKCW10ZGJhdHUJMSwlcjQKCW10ZGJh dHUJMiwlcjQKCW10ZGJhdHUJMywlcjQKCglsd3oJJXI0LDAoJXIzKQoJbXRpYmF0bAkwLCVyNAkJ CS8qIHJlc3RvcmUgQkFUcyAqLwoJbHd6CSVyNCw0KCVyMykKCW10aWJhdHUJMCwlcjQKCWx3egkl cjQsOCglcjMpCgltdGliYXRsCTEsJXI0Cglsd3oJJXI0LDEyKCVyMykKCW10aWJhdHUJMSwlcjQK CWx3egklcjQsMTYoJXIzKQoJbXRpYmF0bAkyLCVyNAoJbHd6CSVyNCwyMCglcjMpCgltdGliYXR1 CTIsJXI0Cglsd3oJJXI0LDI0KCVyMykKCW10aWJhdGwJMywlcjQKCWx3egklcjQsMjgoJXIzKQoJ bXRpYmF0dQkzLCVyNAoJbHd6CSVyNCwzMiglcjMpCgltdGRiYXRsCTAsJXI0Cglsd3oJJXI0LDM2 KCVyMykKCW10ZGJhdHUJMCwlcjQKCWx3egklcjQsNDAoJXIzKQoJbXRkYmF0bAkxLCVyNAoJbHd6 CSVyNCw0NCglcjMpCgltdGRiYXR1CTEsJXI0Cglsd3oJJXI0LDQ4KCVyMykKCW10ZGJhdGwJMiwl cjQKCWx3egklcjQsNTIoJXIzKQoJbXRkYmF0dQkyLCVyNAoJbHd6CSVyNCw1NiglcjMpCgltdGRi YXRsCTMsJXI0Cglsd3p1CSVyNCw2MCglcjMpCgltdGRiYXR1CTMsJXI0CgoJbGkJJXI0LDAJCQkv KiByZXN0b3JlIFNScyAqLwoxOgoJbHd6dQklcjUsNCglcjMpCglhZGRpcwklcjQsJXI0LC0weDEw MDAwMDAwQGhhCglvci4JJXI0LCVyNCwlcjQKCW10c3JpbgklcjUsJXI0CglibmUJMWIKCglsd3oJ JXI0LDQoJXIzKQoJbXRzcHJnMAklcjQJCQkvKiByZXN0b3JlIFNQUkdzICovCglsd3oJJXI0LDgo JXIzKQoJbXRzcHJnMQklcjQKCWx3egklcjQsMTIoJXIzKQoJbXRzcHJnMgklcjQKCWx3egklcjQs MTYoJXIzKQoJbXRzcHJnMwklcjQKCglzeW5jCQkJCS8qIHJlbW92ZSBldmVyeXRoaW5nIGZyb20g dGxiICovCglsaXMJJXI0LDB4NDAwMDBAaGEKCWxpCSVyNSwweDEwMDAKMToKCXN1YmYuCSVyNCwl cjUsJXI0Cgl0bGJpZQklcjQKCWJuZQkxYgoKCXN5bmMKCXRsYnN5bmMKCXN5bmMKCglsd3oJJXI0 LDIwKCVyMykKCXN5bmMKCW10c2RyMQklcjQJCQkvKiByZXN0b3JlIFNEUjEgKi8KCglhZGRpCSVy MywlcjMsMjQKCW1mbHIJJXIxMQoJbGkJJXI0LEVYQ19EU0kJCS8qIHJlc3RvcmUgRFNJL0lTSSB0 cmFwIHZlY3RvcnMgKi8KCWxpCSVyNSxTSTFTSVpFCglibAljb3B5CgoJbGkJJXI0LEVYQ19JTUlT UwkJLyogcmVzdG9yZSBNSVNTIHRyYXAgdmVjdG9ycyAqLwoJbGkJJXI1LFNJMlNJWkUKCWJsCWNv cHkKCgkvKiB0bGJpYSAqLwoJc3luYwoJbGkJJXIzLDB4NDAKCW10Y3RyCSVyMwoJbGkJJXI0LDAK ICAgIDE6Cgl0bGJpZQklcjQKCWFkZGkJJXI0LCVyNCwweDEwMDAKCWJkbnoJMWIKCXN5bmMKCXRs YnN5bmMKCXN5bmMKCgltdG1zcgklcjEyCQkJLyogcmVzdG9yZSBNTVUgKi8KCW10bHIJJXIxMQoJ YmxyCg== --MP_2T7mzsrHA=2RIWRHB2KGn7J Content-Type: text/x-patch; name=freebsd-ppc-efika.diff Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=freebsd-ppc-efika.diff Index: sys/conf/files.powerpc =================================================================== RCS file: /cvsroot/src/sys/conf/files.powerpc,v retrieving revision 1.60 diff -u -r1.60 files.powerpc --- sys/conf/files.powerpc 23 Oct 2006 13:05:01 -0000 1.60 +++ sys/conf/files.powerpc 8 Jan 2007 09:21:55 -0000 @@ -56,6 +56,7 @@ powerpc/powerpc/nexus.c standard powerpc/powerpc/ofwmagic.S standard powerpc/powerpc/ofw_machdep.c standard +powerpc/powerpc/ofwreal.S standard powerpc/powerpc/openpic.c standard powerpc/powerpc/pic_if.m standard powerpc/powerpc/pmap_dispatch.c standard Index: sys/powerpc/include/psl.h =================================================================== RCS file: /cvsroot/src/sys/powerpc/include/psl.h,v retrieving revision 1.4 diff -u -r1.4 psl.h --- sys/powerpc/include/psl.h 7 Jan 2005 02:29:19 -0000 1.4 +++ sys/powerpc/include/psl.h 18 Feb 2007 20:47:41 -0000 @@ -46,6 +46,7 @@ */ #define PSL_VEC 0x02000000 /* AltiVec vector unit available */ #define PSL_POW 0x00040000 /* power management */ +#define PSL_TGPR 0x00020000 /* temp. gpr remapping (mpc603e) */ #define PSL_ILE 0x00010000 /* interrupt endian mode (1 == le) */ #define PSL_EE 0x00008000 /* external interrupt enable */ #define PSL_PR 0x00004000 /* privilege mode (1 == user) */ Index: sys/powerpc/powerpc/locore.S =================================================================== RCS file: /cvsroot/src/sys/powerpc/powerpc/locore.S,v retrieving revision 1.22 diff -u -r1.22 locore.S --- sys/powerpc/powerpc/locore.S 30 Oct 2005 21:29:59 -0000 1.22 +++ sys/powerpc/powerpc/locore.S 18 Feb 2007 20:40:25 -0000 @@ -66,6 +66,7 @@ #include #include #include +#include /* Locate the per-CPU data structure */ #define GET_CPUINFO(r) \ Index: sys/powerpc/powerpc/machdep.c =================================================================== RCS file: /cvsroot/src/sys/powerpc/powerpc/machdep.c,v retrieving revision 1.100 diff -u -r1.100 machdep.c --- sys/powerpc/powerpc/machdep.c 12 Feb 2007 08:59:33 -0000 1.100 +++ sys/powerpc/powerpc/machdep.c 18 Feb 2007 20:40:45 -0000 @@ -253,6 +253,9 @@ extern void *extint, *extsize; extern void *dblow, *dbsize; extern void *vectrap, *vectrapsize; +extern void *imisstrap, *imisssize; +extern void *dlmisstrap, *dlmisssize; +extern void *dsmisstrap, *dsmisssize; void powerpc_init(u_int startkernel, u_int endkernel, u_int basekernel, void *mdp) @@ -347,6 +350,9 @@ bcopy(&trapcode, (void *)EXC_VECAST, (size_t)&trapsize); bcopy(&trapcode, (void *)EXC_THRM, (size_t)&trapsize); bcopy(&trapcode, (void *)EXC_BPT, (size_t)&trapsize); + bcopy(&imisstrap, (void *)EXC_IMISS, (size_t)&imisssize); + bcopy(&dlmisstrap, (void *)EXC_DLMISS, (size_t)&dlmisssize); + bcopy(&dsmisstrap, (void *)EXC_DSMISS, (size_t)&dsmisssize); #ifdef KDB bcopy(&dblow, (void *)EXC_RST, (size_t)&dbsize); bcopy(&dblow, (void *)EXC_MCHK, (size_t)&dbsize); Index: sys/powerpc/powerpc/trap_subr.S =================================================================== RCS file: /cvsroot/src/sys/powerpc/powerpc/trap_subr.S,v retrieving revision 1.16 diff -u -r1.16 trap_subr.S --- sys/powerpc/powerpc/trap_subr.S 23 Dec 2005 13:05:27 -0000 1.16 +++ sys/powerpc/powerpc/trap_subr.S 18 Feb 2007 20:54:16 -0000 @@ -284,6 +284,292 @@ CNAME(alisize) = .-CNAME(alitrap) /* + * It's G2 specific. Instuction TLB miss. + */ + .globl CNAME(imisstrap),CNAME(imisssize) +CNAME(imisstrap): +/* + * Instruction TLB miss flow + * Entry: + * Vec = 1000 + * srr0 -> address of instruction that missed + * srr1 -> 0:3=cr0 4=lru way bit 16:31 = saved MSR + * msr -> 1 + * iMiss -> ea that missed + * iCmp -> the compare value for the va that missed + * hash1 -> pointer to first hash pteg + * hash2 -> pointer to second hash pteg + * + * Register usage: + * r0 is saved counter + * r1 is junk + * r2 is pointer to pteg + * r3 is current compare value + */ + + mfspr %r2, SPR_HASH1 /* get first pointer */ + addi %r1, 0, 8 /* load 8 for counter */ + mfctr %r0 /* save counter */ + mfspr %r3, SPR_ICMP /* get first compare value */ + addi %r2, %r2, -8 /* pre dec the pointer */ +im0: + mtctr %r1 /* load counter */ +im1: + lwzu %r1, 8(%r2) /* get next pte */ + cmp 0, %r1, %r3 /* see if found pte */ + bdnzf 2, im1 /* dec count br if cmp ne and if count not zero */ + bne instrSecHash /* if not found set up second hash or exit */ + lwz %r1, +4(%r2) /* load tlb entry lower-word */ + andi. %r3, %r1, 8 /* check G bit */ + bne doISIp /* if guarded, take an ISI */ + mtctr %r0 /* restore counter */ + mfspr %r0, SPR_IMISS /* get the miss address for the tlbli */ + mfspr %r3, SPR_SRR1 /* get the saved cr0 bits */ + mtcrf 0x80, %r3 /* restore CR0 */ + mtspr SPR_RPA, %r1 /* set the pte */ + ori %r1, %r1, 0x100 /* set reference bit */ + srwi %r1, %r1, 8 /* get byte 7 of pte */ + tlbli %r0 /* load the itlb */ + stb %r1, +6(%r2) /* update page table */ + rfi /* return to executing program */ +/* + * register usage: + * r0 is saved counter + * r1 is junk + * r2 is pointer to pteg + * r3 is current compare value + */ +instrSecHash: + andi. %r1, %r3, 0x0040 /* see if we have done second hash */ + bne doISI /* if so, go to ISI interrupt */ + mfspr %r2, SPR_HASH2 /* get the second pointer */ + ori %r3, %r3, 0x0040 /* change the compare value */ + addi %r1, %r0, 8 /* load 8 for counter */ + addi %r2, %r2, -8 /* pre dec for update on load */ + b im0 /* try second hash */ +/* + * entry Not Found: synthesize an ISI interrupt + * guarded memory protection violation: synthesize an ISI interrupt + * Entry: + * r0 is saved counter + * r1 is junk + * r2 is pointer to pteg + * r3 is current compare value + */ + +doISIp: + mfspr %r3, SPR_SRR1 /* get srr1 */ + andi. %r2, %r3, 0xffff /* clean upper srr1 */ + addis %r2, %r2, 0x0800 /* or in srr<4> = 1 to flag prot violation */ + b isi1 +doISI: + mfspr %r3, SPR_SRR1 /* get srr1 */ + andi. %r2, %r3, 0xffff /* clean srr1 */ + addis %r2, %r2, 0x4000 /* or in srr1<1> = 1 to flag pte not found */ +isi1: + mtctr %r0 /* restore counter */ + mtspr SPR_SRR1, %r2 /* set srr1 */ + mfmsr %r0 /* get msr */ + xoris %r0, %r0, 0x2 /* flip the msr bit */ + mtcrf 0x80, %r3 /* restore CR0 */ + mtmsr %r0 /* flip back to the native gprs */ + ba 0x400 /* go to instr. access interrupt */ + +CNAME(imisssize) = .-CNAME(imisstrap) + +/* + * It's G2 specific. Data load TLB miss. + */ + .globl CNAME(dlmisstrap),CNAME(dlmisssize) +CNAME(dlmisstrap): +/* + * Data TLB miss flow + * Entry: + * Vec = 1100 + * srr0 -> address of instruction that caused data tlb miss + * srr1 -> 0:3=cr0 4=lru way bit 5=1 if store 16:31 = saved MSR + * msr -> 1 + * dMiss -> ea that missed + * dCmp -> the compare value for the va that missed + * hash1 -> pointer to first hash pteg + * hash2 -> pointer to second hash pteg + * + * Register usage: + * r0 is saved counter + * r1 is junk + * r2 is pointer to pteg + * r3 is current compare value + */ + + mfspr %r2, SPR_HASH1 /* get first pointer */ + addi %r1, 0, 8 /* load 8 for counter */ + mfctr %r0 /* save counter */ + mfspr %r3, SPR_DCMP /* get first compare value */ + addi %r2, %r2, -8 /* pre dec the pointer */ +dm0: + mtctr %r1 /* load counter */ +dm1: + lwzu %r1, 8(%r2) /* get next pte */ + cmp 0, 0, %r1, %r3 /* see if found pte */ + bdnzf 2, dm1 /* dec count br if cmp ne and if count not zero */ + bne dataSecHash /* if not found set up second hash or exit */ + lwz %r1, +4(%r2) /* load tlb entry lower-word */ + mtctr %r0 /* restore counter */ + mfspr %r0, SPR_DMISS /* get the miss address for the tlbld */ + mfspr %r3, SPR_SRR1 /* get the saved cr0 bits */ + mtcrf 0x80, %r3 /* restore CR0 */ + mtspr SPR_RPA, %r1 /* set the pte */ + ori %r1, %r1, 0x100 /* set reference bit */ + srwi %r1, %r1, 8 /* get byte 7 of pte */ + tlbld %r0 /* load the dtlb */ + stb %r1, +6(%r2) /* update page table */ + rfi /* return to executing program */ +/* + * Register usage: + * r0 is saved counter + * r1 is junk + * r2 is pointer to pteg + * r3 is current compare value + */ + +dataSecHash: + andi. %r1, %r3, 0x0040 /* see if we have done second hash */ + bne doDSI /* if so, go to DSI interrupt */ + mfspr %r2, SPR_HASH2 /* get the second pointer */ + ori %r3, %r3, 0x0040 /* change the compare value */ + addi %r1, 0, 8 /* load 8 for counter */ + addi %r2, %r2, -8 /* pre dec for update on load */ + b dm0 /* try second hash */ + +CNAME(dlmisssize) = .-CNAME(dlmisstrap) + +/* + * It's G2 specific. Data store TLB miss. + */ + .globl CNAME(dsmisstrap),CNAME(dsmisssize) +CNAME(dsmisstrap): + +/* + * Data TLB miss flow + * C=0 in dtlb and dtlb miss on store flow + * Entry: + * Vec = 1200 + * srr0 -> address of store that caused the interrupt + * srr1 -> 0:3=cr0 4=lru way bit 5=1 16:31 = saved MSR + * msr -> 1 + * dMiss -> ea that missed + * dCmp -> the compare value for the va that missed + * hash1 -> pointer to first hash pteg + * hash2 -> pointer to second hash pteg + * + * Register usage: + * r0 is saved counter + * r1 is junk + * r2 is pointer to pteg + * r3 is current compare value + */ + mfspr %r2, SPR_HASH1 /* get first pointer */ + addi %r1, 0, 8 /* load 8 for counter */ + mfctr %r0 /* save counter */ + mfspr %r3, SPR_DCMP /* get first compare value */ + addi %r2, %r2, -8 /* pre dec the pointer */ +ceq0: + mtctr %r1 /* load counter */ +ceq1: + lwzu %r1, 8(%r2) /* get next pte */ + cmp 0, 0, %r1, %r3 /* see if found pte */ + bdnzf 2, ceq1 /* dec count br if cmp ne and if count not zero */ + bne cEq0SecHash /* if not found set up second hash or exit */ + lwz %r1, +4(%r2) /* load tlb entry lower-word */ + andi. %r3, %r1, 0x80 /* check the C-bit */ + beq cEq0ChkProt /* if (C==0) go check protection modes */ +ceq2: + mtctr %r0 /* restore counter */ + mfspr %r0, SPR_DMISS /* get the miss address for the tlbld */ + mfspr %r3, SPR_SRR1 /* get the saved cr0 bits */ + mtcrf 0x80, %r3 /* restore CR0 */ + mtspr SPR_RPA, %r1 /* set the pte */ + tlbld %r0 /* load the dtlb */ + rfi /* return to executing program */ +/* + * Register usage: + * r0 is saved counter + * r1 is junk + * r2 is pointer to pteg + * r3 is current compare value +*/ + +cEq0SecHash: + andi. %r1, %r3, 0x0040 /* see if we have done second hash */ + bne doDSI /* if so, go to DSI interrupt */ + mfspr %r2, SPR_HASH2 /* get the second pointer */ + ori %r3, %r3, 0x0040 /* change the compare value */ + addi %r1, 0, 8 /* load 8 for counter */ + addi %r2, %r2, -8 /* pre dec for update on load */ + b ceq0 /* try second hash */ + +/* + * entry found and PTE(c-bit==0): + * (check protection before setting PTE(c-bit) + * Register usage: + * r0 is saved counter + * r1 is PTE entry + * r2 is pointer to pteg + * r3 is trashed + */ +cEq0ChkProt: + rlwinm. %r3,%r1,30,0,1 /* test PP */ + bge- chk0 /* if (PP == 00 or PP == 01) goto chk0: */ + andi. %r3, %r1, 1 /* test PP[0] */ + beq+ chk2 /* return if PP[0] == 0 */ + b doDSIp /* else DSIp */ +chk0: + mfspr %r3,SPR_SRR1 /* get old msr */ + andis. %r3,%r3,0x0008 /* test the KEY bit (SRR1-bit 12) */ + beq chk2 /* if (KEY==0) goto chk2: */ + b doDSIp /* else DSIp */ +chk2: + ori %r1, %r1, 0x180 /* set reference and change bit */ + sth %r1, 6(%r2) /* update page table */ + b ceq2 /* and back we go */ + +/* + * entry Not Found: synthesize a DSI interrupt + * Entry: + * r0 is saved counter + * r1 is junk + * r2 is pointer to pteg + * r3 is current compare value + */ +doDSI: + mfspr %r3, SPR_SRR1 /* get srr1 */ + rlwinm %r1,%r3,9,6,6 /* get srr1 to bit 6 for load/store, zero rest */ + addis %r1, %r1, 0x4000 /* or in dsisr<1> = 1 to flag pte not found */ + b dsi1 +doDSIp: + mfspr %r3, SPR_SRR1 /* get srr1 */ + rlwinm %r1,%r3,9,6,6 /* get srr1 to bit 6 for load/store, zero rest */ + addis %r1, %r1, 0x0800 /* or in dsisr<4> = 1 to flag prot violation */ +dsi1: + mtctr %r0 /* restore counter */ + andi. %r2, %r3, 0xffff /* clear upper bits of srr1 */ + mtspr SPR_SRR1, %r2 /* set srr1 */ + mtspr SPR_DSISR, %r1 /* load the dsisr */ + mfspr %r1, SPR_DMISS /* get miss address */ + rlwinm. %r2,%r2,0,31,31 /* test LE bit */ + beq dsi2 /* if little endian then: */ + xor %r1, %r1, 0x07 /* de-mung the data address */ +dsi2: + mtspr SPR_DAR, %r1 /* put in dar */ + mfmsr %r0 /* get msr */ + xoris %r0, %r0, 0x2 /* flip the msr bit */ + mtcrf 0x80, %r3 /* restore CR0 */ + mtmsr %r0 /* flip back to the native gprs */ + ba 0x300 /* branch to DSI interrupt */ + +CNAME(dsmisssize) = .-CNAME(dsmisstrap) + +/* * Similar to the above for DSI * Has to handle BAT spills * and standard pagetable spills --MP_2T7mzsrHA=2RIWRHB2KGn7J-- From owner-freebsd-ppc@FreeBSD.ORG Mon Feb 19 11:08:31 2007 Return-Path: X-Original-To: freebsd-ppc@FreeBSD.org Delivered-To: freebsd-ppc@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 0236016A477 for ; Mon, 19 Feb 2007 11:08:31 +0000 (UTC) (envelope-from owner-bugmaster@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [69.147.83.40]) by mx1.freebsd.org (Postfix) with ESMTP id CA30113C442 for ; Mon, 19 Feb 2007 11:08:30 +0000 (UTC) (envelope-from owner-bugmaster@FreeBSD.org) Received: from freefall.freebsd.org (linimon@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id l1JB8UnV021443 for ; Mon, 19 Feb 2007 11:08:30 GMT (envelope-from owner-bugmaster@FreeBSD.org) Received: (from linimon@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id l1JB8T4M021439 for freebsd-ppc@FreeBSD.org; Mon, 19 Feb 2007 11:08:29 GMT (envelope-from owner-bugmaster@FreeBSD.org) Date: Mon, 19 Feb 2007 11:08:29 GMT Message-Id: <200702191108.l1JB8T4M021439@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: linimon set sender to owner-bugmaster@FreeBSD.org using -f From: FreeBSD bugmaster To: freebsd-ppc@FreeBSD.org Cc: Subject: Current problem reports assigned to you X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 19 Feb 2007 11:08:31 -0000 Current FreeBSD problem reports Critical problems Serious problems S Tracker Resp. Description -------------------------------------------------------------------------------- o power/93203 ppc FreeBSD PPC Can't Write to Partitions. 1 problem total. Non-critical problems From owner-freebsd-ppc@FreeBSD.ORG Mon Feb 19 20:35:52 2007 Return-Path: X-Original-To: freebsd-ppc@freebsd.org Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id ED62016D0D0 for ; Mon, 19 Feb 2007 20:35:52 +0000 (UTC) (envelope-from karel@lovetemple.net) Received: from as1.siol.net (as1.siol.net [193.189.160.84]) by mx1.freebsd.org (Postfix) with ESMTP id 325D713C494 for ; Mon, 19 Feb 2007 20:35:51 +0000 (UTC) (envelope-from karel@lovetemple.net) Received: from edge2.siol.net ([10.10.10.211]) by mta1.siol.net with ESMTP id <20070219195706.ECGZ8972.mta1.siol.net@edge2.siol.net> for ; Mon, 19 Feb 2007 20:57:06 +0100 Received: from [192.168.0.149] (really [86.61.11.65]) by edge2.siol.net with ESMTP id <20070219195701.IMIA5222.edge2.siol.net@[192.168.0.149]>; Mon, 19 Feb 2007 20:57:01 +0100 Message-ID: <45DA0107.7090906@lovetemple.net> Date: Mon, 19 Feb 2007 20:56:55 +0100 From: Karel Miklav User-Agent: Thunderbird 1.5.0.9 (X11/20070206) MIME-Version: 1.0 To: Andrew Turner References: <20070219100433.66d7ff49@hermies.int.fubar.geek.nz> In-Reply-To: <20070219100433.66d7ff49@hermies.int.fubar.geek.nz> Content-Type: text/plain; charset=windows-1250; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-ppc@freebsd.org Subject: Re: Patch to partially boot an EFIKA X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 19 Feb 2007 20:35:53 -0000 Congratulations and thank you very much for your work. I'm sorry I can not help you, but I'm really glad that port for this important platform is moving on. -- Karel Miklav From owner-freebsd-ppc@FreeBSD.ORG Tue Feb 20 17:11:33 2007 Return-Path: X-Original-To: freebsd-ppc@freebsd.org Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id AA9BD16B80B for ; Tue, 20 Feb 2007 17:11:33 +0000 (UTC) (envelope-from dbrewer@pixelfish.com) Received: from mail01.vmatrixmail.com (mail01.vmatrixmail.com [216.219.244.230]) by mx1.freebsd.org (Postfix) with ESMTP id 431F013C4AA for ; Tue, 20 Feb 2007 17:11:33 +0000 (UTC) (envelope-from dbrewer@pixelfish.com) Received: (vmatrix@mail01.vmatrixmail.com) by vmatrixmail.com id S6072814AbXBTQpD for ; Tue, 20 Feb 2007 08:45:03 -0800 To: freebsd-ppc@freebsd.org MIME-Version: 1.0 X-Mailer: Rich Media Mail V4. Vmatrix, (C) 2003 From: "David Brewer" Sender: "David Brewer" Message-Id: Date: Tue, 20 Feb 2007 08:45:03 -0800 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Subject: Your Recent Trade Show Results X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: dbrewer@pixelfish.com List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 20 Feb 2007 17:11:33 -0000 Greetings!

Are you happy with your results from Social Linux Expo 2007? Did you have what it takes to make the difference between creating excitement and blending in with the competition, between lots of hot leads and a few hard sells ... between success and failure?

Did you have video?

Why video? Video vividly demonstrates the features and benefits of your products. Video captures the praises of your most enthusiastic customers. Video instills interest, reaction and trust. Video sells.

In just 45 days, PixelFish creates marketing videos that become an integral part of your marketing and sales efforts when it streams from your Web site, launches from multimedia email newsletters, plays from CD video brochures and loops from a DVD at your tradeshow booth.

We are PixelFish. We deliver “The Evolution of Video”. And we guarantee results. Click on the videos to the right to see samples of our work.

Contact us today for a free evaluation of your video marketing needs.

David Brewer
PixelFish, Inc.
800.503.3020 x102
dbrewer@pixelfish.com
http://www.pixelfish.com
RedMan Video
Pentax Video
JEM Video
------------------------------------------------ Unsubscribe to safely remove yourself from this email list, please send email to info@pixelfish.com. Powered by Pixelfish http://www.pixelfish.com From owner-freebsd-ppc@FreeBSD.ORG Thu Feb 22 23:19:55 2007 Return-Path: X-Original-To: freebsd-ppc@freebsd.org Delivered-To: freebsd-ppc@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 19F1016A400 for ; Thu, 22 Feb 2007 23:19:55 +0000 (UTC) (envelope-from grehan@freebsd.org) Received: from dommail.onthenet.com.au (dommail.OntheNet.com.au [203.13.70.57]) by mx1.freebsd.org (Postfix) with ESMTP id A550313C491 for ; Thu, 22 Feb 2007 23:19:54 +0000 (UTC) (envelope-from grehan@freebsd.org) Received: from [10.33.24.110] (nat-198-95-226-228.netapp.com [198.95.226.228]) by dommail.onthenet.com.au (MOS 3.5.7-GR) with ESMTP id CNV05277 (AUTH peterg@ptree32.com.au); Fri, 23 Feb 2007 09:19:49 +1000 (EST) Message-ID: <45DE2581.1040202@freebsd.org> Date: Thu, 22 Feb 2007 15:21:37 -0800 From: Peter Grehan User-Agent: Mozilla/5.0 (X11; U; FreeBSD amd64; en-US; rv:1.8b) Gecko/20051014 MIME-Version: 1.0 To: Andrew Turner References: <20070219100433.66d7ff49@hermies.int.fubar.geek.nz> In-Reply-To: <20070219100433.66d7ff49@hermies.int.fubar.geek.nz> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-ppc@freebsd.org Subject: Re: Patch to partially boot an EFIKA X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Feb 2007 23:19:55 -0000 Hi Andrew, > The attached patch helps me to partially boot my EFIKA. The file > ofwread.S is from NetBSD and needs to be placed in sys/powerpc/powerpc. > > The patch takes the real-mode ofw interface code from NetBSD and the > TLB exception handlers from //depot/user/jaras in perforce. I can probably put in the exception vector stuff, de-camel-casing in the process. For ofwread.S, I have a slightly different solution that is needed for the G5 that I think will also work on the EFIKA. Plus, it's written in C :) There's a bit of extra code around it but hopefully I'll get it done soon. later, Peter. From owner-freebsd-ppc@FreeBSD.ORG Fri Feb 23 19:04:18 2007 Return-Path: X-Original-To: powerpc@freebsd.org Delivered-To: freebsd-ppc@FreeBSD.ORG Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id C85CC16A404; Fri, 23 Feb 2007 19:04:18 +0000 (UTC) (envelope-from tinderbox@freebsd.org) Received: from smarthost2.sentex.ca (smarthost2.sentex.ca [205.211.164.50]) by mx1.freebsd.org (Postfix) with ESMTP id A1CB713C46B; Fri, 23 Feb 2007 19:04:18 +0000 (UTC) (envelope-from tinderbox@freebsd.org) Received: from smtp2.sentex.ca (smtp2.sentex.ca [199.212.134.9]) by smarthost2.sentex.ca (8.13.8/8.13.8) with ESMTP id l1NJ4INE072112; Fri, 23 Feb 2007 14:04:18 -0500 (EST) (envelope-from tinderbox@freebsd.org) Received: from freebsd-current.sentex.ca (freebsd-current.sentex.ca [64.7.128.98]) by smtp2.sentex.ca (8.13.8/8.13.8) with ESMTP id l1NJ4IhB099992; Fri, 23 Feb 2007 14:04:18 -0500 (EST) (envelope-from tinderbox@freebsd.org) Received: by freebsd-current.sentex.ca (Postfix, from userid 666) id C96CC73039; Fri, 23 Feb 2007 14:04:17 -0500 (EST) Sender: FreeBSD Tinderbox From: FreeBSD Tinderbox To: FreeBSD Tinderbox , , Precedence: bulk Message-Id: <20070223190417.C96CC73039@freebsd-current.sentex.ca> Date: Fri, 23 Feb 2007 14:04:17 -0500 (EST) X-Virus-Scanned: ClamAV version devel-20070108, clamav-milter version devel-111206 on clamscanner1 X-Virus-Status: Clean Cc: Subject: [head tinderbox] failure on powerpc/powerpc X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.5 List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 23 Feb 2007 19:04:18 -0000 TB --- 2007-02-23 16:29:23 - tinderbox 2.3 running on freebsd-current.sentex.ca TB --- 2007-02-23 16:29:23 - starting HEAD tinderbox run for powerpc/powerpc TB --- 2007-02-23 16:29:23 - cleaning the object tree TB --- 2007-02-23 16:31:00 - checking out the source tree TB --- 2007-02-23 16:31:00 - cd /tinderbox/HEAD/powerpc/powerpc TB --- 2007-02-23 16:31:00 - /usr/bin/cvs -f -R -q -d/home/ncvs update -Pd -A src TB --- 2007-02-23 16:52:47 - building world (CFLAGS=-O2 -pipe) TB --- 2007-02-23 16:52:47 - cd /src TB --- 2007-02-23 16:52:47 - /usr/bin/make -B buildworld >>> World build started on Fri Feb 23 16:52:48 UTC 2007 >>> 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 Fri Feb 23 18:59:22 UTC 2007 TB --- 2007-02-23 18:59:22 - generating LINT kernel config TB --- 2007-02-23 18:59:22 - cd /src/sys/powerpc/conf TB --- 2007-02-23 18:59:22 - /usr/bin/make -B LINT TB --- 2007-02-23 18:59:22 - building LINT kernel (COPTFLAGS=-O2 -pipe) TB --- 2007-02-23 18:59:22 - cd /src TB --- 2007-02-23 18:59:22 - /usr/bin/make buildkernel KERNCONF=LINT >>> Kernel build for LINT started on Fri Feb 23 18:59:23 UTC 2007 >>> 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 -O2 -pipe -fno-strict-aliasing -std=c99 -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -fformat-extensions -nostdinc -I- -I. -I/src/sys -I/src/sys/contrib/altq -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 -fno-builtin -msoft-float -fno-omit-frame-pointer -msoft-float -ffreestanding -Werror /src/sys/dev/cardbus/cardbus_device.c cc -c -O2 -pipe -fno-strict-aliasing -std=c99 -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -fformat-extensions -nostdinc -I- -I. -I/src/sys -I/src/sys/contrib/altq -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 -fno-builtin -msoft-float -fno-omit-frame-pointer -msoft-float -ffreestanding -Werror /src/sys/dev/ciss/ciss.c cc -c -O2 -pipe -fno-strict-aliasing -std=c99 -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -fformat-extensions -nostdinc -I- -I. -I/src/sys -I/src/sys/contrib/altq -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 -fno-builtin -msoft-float -fno-omit-frame-pointer -msoft-float -ffreestanding -Werror /src/sys/dev/cm/smc90cx6.c cc -c -O2 -pipe -fno-strict-aliasing -std=c99 -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -fformat-extensions -nostdinc -I- -I. -I/src/sys -I/src/sys/contrib/altq -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 -fno-builtin -msoft-float -fno-omit-frame-pointer -msoft-float -ffreestanding -Werror /src/sys/dev/cnw/if_cnw.c /src/sys/dev/cnw/if_cnw.c: In function `cnw_pccard_attach': /src/sys/dev/cnw/if_cnw.c:1635: warning: passing arg 4 of `bus_setup_intr' from incompatible pointer type /src/sys/dev/cnw/if_cnw.c:1635: warning: passing arg 5 of `bus_setup_intr' from incompatible pointer type /src/sys/dev/cnw/if_cnw.c:1635: error: too few arguments to function `bus_setup_intr' *** Error code 1 Stop in /obj/powerpc/src/sys/LINT. *** Error code 1 Stop in /src. *** Error code 1 Stop in /src. TB --- 2007-02-23 19:04:17 - WARNING: /usr/bin/make returned exit code 1 TB --- 2007-02-23 19:04:17 - ERROR: failed to build lint kernel TB --- 2007-02-23 19:04:17 - tinderbox aborted TB --- 0.68 user 2.36 system 9294.03 real http://tinderbox.des.no/tinderbox-head-HEAD-powerpc-powerpc.full From owner-freebsd-ppc@FreeBSD.ORG Sat Feb 24 15:49:34 2007 Return-Path: X-Original-To: powerpc@freebsd.org Delivered-To: freebsd-ppc@FreeBSD.ORG Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id F0D8916A400; Sat, 24 Feb 2007 15:49:34 +0000 (UTC) (envelope-from tinderbox@freebsd.org) Received: from smarthost2.sentex.ca (smarthost2.sentex.ca [205.211.164.50]) by mx1.freebsd.org (Postfix) with ESMTP id B27EE13C4A3; Sat, 24 Feb 2007 15:49:34 +0000 (UTC) (envelope-from tinderbox@freebsd.org) Received: from smtp1.sentex.ca (smtp1.sentex.ca [199.212.134.4]) by smarthost2.sentex.ca (8.13.8/8.13.8) with ESMTP id l1OFnXm3072623; Sat, 24 Feb 2007 10:49:34 -0500 (EST) (envelope-from tinderbox@freebsd.org) Received: from freebsd-current.sentex.ca (freebsd-current.sentex.ca [64.7.128.98]) by smtp1.sentex.ca (8.13.8/8.13.8) with ESMTP id l1OFnXMp098412; Sat, 24 Feb 2007 10:49:33 -0500 (EST) (envelope-from tinderbox@freebsd.org) Received: by freebsd-current.sentex.ca (Postfix, from userid 666) id 5BF6E73039; Sat, 24 Feb 2007 10:49:32 -0500 (EST) Sender: FreeBSD Tinderbox From: FreeBSD Tinderbox To: FreeBSD Tinderbox , , Precedence: bulk Message-Id: <20070224154933.5BF6E73039@freebsd-current.sentex.ca> Date: Sat, 24 Feb 2007 10:49:30 -0500 (EST) X-Virus-Scanned: ClamAV version devel-20070102, clamav-milter version devel-111206 on clamscanner4 X-Virus-Status: Clean Cc: Subject: [head tinderbox] failure on powerpc/powerpc X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.5 List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 24 Feb 2007 15:49:35 -0000 TB --- 2007-02-24 13:58:25 - tinderbox 2.3 running on freebsd-current.sentex.ca TB --- 2007-02-24 13:58:25 - starting HEAD tinderbox run for powerpc/powerpc TB --- 2007-02-24 13:58:25 - cleaning the object tree TB --- 2007-02-24 13:58:55 - checking out the source tree TB --- 2007-02-24 13:58:55 - cd /tinderbox/HEAD/powerpc/powerpc TB --- 2007-02-24 13:58:55 - /usr/bin/cvs -f -R -q -d/home/ncvs update -Pd -A src TB --- 2007-02-24 14:16:51 - building world (CFLAGS=-O2 -pipe) TB --- 2007-02-24 14:16:51 - cd /src TB --- 2007-02-24 14:16:51 - /usr/bin/make -B buildworld >>> World build started on Sat Feb 24 14:16:51 UTC 2007 >>> 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 Sat Feb 24 15:36:58 UTC 2007 TB --- 2007-02-24 15:36:58 - generating LINT kernel config TB --- 2007-02-24 15:36:58 - cd /src/sys/powerpc/conf TB --- 2007-02-24 15:36:58 - /usr/bin/make -B LINT TB --- 2007-02-24 15:36:58 - building LINT kernel (COPTFLAGS=-O2 -pipe) TB --- 2007-02-24 15:36:58 - cd /src TB --- 2007-02-24 15:36:58 - /usr/bin/make buildkernel KERNCONF=LINT >>> Kernel build for LINT started on Sat Feb 24 15:36:59 UTC 2007 >>> 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 [...] :> hack.c cc -shared -nostdlib hack.c -o hack.So rm -f hack.c MAKE=/usr/bin/make sh /src/sys/conf/newvers.sh LINT cc -c -O2 -pipe -fno-strict-aliasing -std=c99 -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -fformat-extensions -nostdinc -I- -I. -I/src/sys -I/src/sys/contrib/altq -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 -fno-builtin -msoft-float -fno-omit-frame-pointer -msoft-float -ffreestanding -Werror vers.c linking kernel raw_ip6.o(.sbss+0x10): multiple definition of `ip6_mrouter' ip6_mroute.o(.sbss+0x4): first defined here *** Error code 1 Stop in /obj/powerpc/src/sys/LINT. *** Error code 1 Stop in /src. *** Error code 1 Stop in /src. TB --- 2007-02-24 15:49:29 - WARNING: /usr/bin/make returned exit code 1 TB --- 2007-02-24 15:49:29 - ERROR: failed to build lint kernel TB --- 2007-02-24 15:49:29 - tinderbox aborted TB --- 0.70 user 2.38 system 6663.91 real http://tinderbox.des.no/tinderbox-head-HEAD-powerpc-powerpc.full