This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Build->Packages WinNT eCos Config Tool Error



"Sergio Nunes" <snunes@Celestica.com> writes:

> I don't really want to edit these templates. What I would like to do is
> add/remove packages from an existing eCos Configuration using the eCos
> configuration tool. However, when I try to add/remove packages using the
> Build->Packages menu option I get the error message mentioned below.  Am
> I doing something wrong or is this a bug.  What's the purpose of the
> Build->Packages function if it gives you an error/warning everytime you
> try to change a package?

But it doesn't if the package is not a hardware type package.

For example, you could add or remove the uITRON compatibility package, or
the POSIX package and it would be fine.  Try it please?  If you cannot do
that, then you have indeed found a bug in the Config Tool!

But hardware packages are labelled hardware because they can only be used
on certain hardware.  It makes no sense to add the flash driver for an
EBSA285 board to a build for PowerPC PBX board, so you can't do that.

If you are working on a new platform, and you want to re-use some hardware
packages from a similar existing platform, that's easy.  For your new
platform you must have created a "target" entry in ecos.db - at the very
minimum you will have listed HAL packages for the new target there, so if
you list _all_ the hardware packages to use in the target entry, they will
be included when you select that platform as the build target.

For example

    target nano {
      alias { "nanoEngine StrongARM SA1110 board" nano nanoEngine }
      packages { CYGPKG_HAL_ARM
	  CYGPKG_HAL_ARM_SA11X0
	  CYGPKG_HAL_ARM_SA11X0_NANO
	  CYGPKG_IO_SERIAL_ARM_SA11X0
	  CYGPKG_DEVS_FLASH_NANO
	  CYGPKG_DEVS_FLASH_STRATA
	  CYGPKG_DEVICES_WATCHDOG_ARM_SA11X0
	  CYGPKG_IO_PCI
	  CYGPKG_DEVS_ETH_ARM_NANO
	  CYGPKG_DEVS_ETH_INTEL_I82559
      }
      description "
      The nanoEngine target provides the packages needed to run
      eCos on a Bright Star Engineering nanoEngine StrongARM SA1110 board."
    }

Every one of those packages listed is marked "hardware" because they are
hardware specific; it is pre-defined what targets they can work with, and
selecting one of those targets is the only way to include these packages.

Note that this does not mean that all builds for this target will be
bloated by unused code; many of these platform specific packages
(eg. CYGPKG_DEVS_FLASH_* and CYGPKG_DEVS_ETH_*) will be inactive unless the
generic device driver (CYGPKG_IO_FLASH and CYGPKG_IO_ETH_DRIVERS
respectively) are also included.  And whether to include those generic
drivers is controlled by the Build->Packages facility or the template
chosen or "ecosconfig add", and so on, like any non-hardware-specific
package.

HTH,
	- Huge


> Sergio Nunes wrote:
> >
> > I get the following error/warning message "Add and remove Hardware Packages by
> > selecting a new hardware Template" when I try to create a build package using
> > the Build->Package option under WinNT version of eCos configuration tool.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]