From owner-soc-status@FreeBSD.ORG Tue Jun 12 19:06:33 2012 Return-Path: Delivered-To: soc-status@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id BD239106566C for ; Tue, 12 Jun 2012 19:06:33 +0000 (UTC) (envelope-from eric@shadowsun.net) Received: from mail.atlantawebhost.com (dns1.atlantawebhost.com [66.223.40.39]) by mx1.freebsd.org (Postfix) with ESMTP id 55E7A8FC1D for ; Tue, 12 Jun 2012 19:06:33 +0000 (UTC) Received: (qmail 18899 invoked from network); 12 Jun 2012 15:06:27 -0400 Received: from c-71-192-38-198.hsd1.ma.comcast.net (HELO Macintosh-21.local) (71.192.38.198) by mail.atlantawebhost.com with SMTP; 12 Jun 2012 15:06:27 -0400 Message-ID: <4FD79332.2040307@shadowsun.net> Date: Tue, 12 Jun 2012 15:06:26 -0400 From: Eric McCorkle User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.5; rv:12.0) Gecko/20120428 Thunderbird/12.0.1 MIME-Version: 1.0 To: soc-status@FreeBSD.org, "Andrey V. Elsukov" Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Subject: Status report X-BeenThere: soc-status@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Summer of Code Status Reports and Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Jun 2012 19:06:33 -0000 This week, I have been working to overcome some difficulties I've encountered. In my experimentation with the OVMF firmware and QEMU, I found that a basic "hello world" type program seems to hang. However, upon further investigation, I found that using other EFI calls (notably the memory allocation functions) does not seem to cause problems. I experimented and found that libefi can get through with its initialization and call main() perfectly fine. I also checked to see if stack alignment could be the culprit, and it is not. In light of this, I began trying to build EDK II and the OVMF image directly on FreeBSD, since the firmware image I have is over a year old. Note that EDK II is designed for windows development, and is only marginally supported on some linux platforms. At this point, I've managed to get the BaseTools to build, and am working on building the entire thing. I could potentially turn this into a port, as it would be a handy thing to have, I think. Lastly, I'm going to experiment with trying to calculating the entire required size of the kernel in memory and allocating a single block to hold the entire kernel. This should handle the non-contiguous memory problem.