This is the mail archive of the
ecos-patches@sources.redhat.com
mailing list for the eCos project.
Re: i386: allow platforms to override HAL_MEM_REAL_REGION_TOP
On Fri, Apr 22, 2005 at 06:41:55PM +0100, Nick Garnett wrote:
> Andrew Lunn <andrew@lunn.ch> writes:
>
> > > It's been a while since we did this. I believe it is because the pcmb
> > > package already provides it and our platforms are based on pcmb in the
> > > same way that the pc platform is. Some of them differ in this detail
> > > since they don't have a BIOS. This patch allows the platform to override
> > > the pcmb provided default.
> > >
> > > Perhaps the correct solution is to move hal_i386_mem_real_region_top
> > > from pcmb to the pc package? Or a weak symbol in pcmb (not too sure how
> > > those work though).
> >
> > OK. Time to ask some stupid questions.....
> >
> > What is the difference between the PC package and the PCMB package?
> > The description properties are:
> >
> > CYGPKG_HAL_I386_PCMB
> > The i386 PC Motherboard HAL package provides the
> > support needed to run eCos binaries on a standard i386
> > PC motherboard. This is a support package for various
> > actual platform specific targets."
> >
> > CYGPKG_HAL_I386_PC
> > The i386 PC Target HAL package provides the
> > support needed to run eCos binaries on a standard i386
> > PC."
> >
> > Its not clear to me what the differences is!
> >
> > 2nd question. Is the BIOS a property of the PCMB or of the PC?
>
> The PCMB HAL contains support for any devices that are found on a
> standard PC motherboard. It recognises that even embedded i386 devices
> are likely to have the usual set of devices.
>
> The PC HAL provides support for a proper PC, as found by your desk. So
> this has a proper BIOS and boots from an external device like floppy
> or IDE disk.
>
> Other HALs might support i386s that boot directly from flash/ROM
> without a BIOS. This is the sort of thing that Arcom do.
>
> So BIOS support is part of the PC HAL, and anything that interacts
> with the BIOS should be in there. So, for example, the floppy startup
> code is in the PC HAL, because it uses the BIOS. However, the RAM,
> GRUB and ROM startup code is in the PCMB HAL because they don't.
So Ian's suggestion to move hal_i386_mem_real_region_top into the PC
package is correct?
Andrew