From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 488 invoked by alias); 26 Nov 2003 11:45:42 -0000 Mailing-List: contact ecos-discuss-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: ecos-discuss-owner@sources.redhat.com Received: (qmail 438 invoked from network); 26 Nov 2003 11:45:40 -0000 Received: from unknown (HELO msgdirector2.onetel.net.uk) (212.67.96.149) by sources.redhat.com with SMTP; 26 Nov 2003 11:45:40 -0000 Received: from miso.calivar.com (213-78-64-50.friaco.onetel.net.uk [213.78.64.50]) by msgdirector2.onetel.net.uk (Mirapoint Messaging Server MOS 3.3.6-GR) with ESMTP id AOU11007; Wed, 26 Nov 2003 10:48:38 GMT Received: from miso.calivar.com (miso.calivar.com [127.0.0.2]) by miso.calivar.com (Postfix) with ESMTP id A59AB28DF45; Wed, 26 Nov 2003 10:48:37 +0000 (GMT) To: kevin_lemay@agilent.com Cc: ecos-discuss@sources.redhat.com References: <1BEBA5E8600DD4119A50009027AF54A010FAE483@axcs04.cos.agilent.com> From: Nick Garnett Date: Wed, 26 Nov 2003 11:45:00 -0000 In-Reply-To: <1BEBA5E8600DD4119A50009027AF54A010FAE483@axcs04.cos.agilent.com> Message-ID: User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Subject: Re: [ECOS] i386 Memory Size Problem X-SW-Source: 2003-11/txt/msg00398.txt.bz2 kevin_lemay@agilent.com writes: > It appears to not be that easy..... > > The BIOS calls may only be made in real mode. Redboot initializes > the CPU, makes the required BIOS calls and switches to protected > mode. Then thru TFTP, GDB, etc, loads an application and executes > it. > > So I would be able to perform the operations in RedBoot. > Good point, I hadn't realized that this is what you wanted to do. > How do redboot and the loaded application work together? I know that > portions of redboot continue to run. It appears that redboot owns > the lower 640K of space and applications are always loaded starting > at the 1MB boundary. I know that the pcmb_misc.c file is run, at > least, by the application. > > I do not know where to look for a way to pass data between them, but > it must already been done for them to share CPU for debugging. The ususal mechanism is via the virtual vectors. The application can make calls back into RedBoot to do things like serial IO and fetch things from the flash. The virtual vector interface is implemented in the hal/common files: hal_if.h and hal_if.c. > > I modified pcmb_misc to poke values at the 1Mb boundaries and read > it back that appear to work correctly. I am having trouble > envisioning what the proper solution looks like. > The proper solution is probably to add a new virtual vector entry that allows an eCos app to call the HAL_MEM_REAL_REGION_TOP() macro in RedBoot. -- Nick Garnett eCos Kernel Architect http://www.ecoscentric.com The eCos and RedBoot experts -- Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos and search the list archive: http://sources.redhat.com/ml/ecos-discuss