This is the mail archive of the ecos-discuss@sourceware.org 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]
Other format: [Raw text]

Re: CDL question about CYGHWR_IO_FLASH_DEVICE


Hi Hartley

H Hartley Sweeten wrote:

> The original Cirrus port had support for Intel Strataflash, Intel 28Fxxx,
> and AMD AM29xxxxx devices.  I think that's why the CYGPKG_* option is not
> in the edb93xx target definition.  The have it all wrapped up in a cdl
> file at packages/devs/flash/arm/edb93xx/current/cdl/flash_edb93xx.cdl.

Typically, board variants with different Flash parts are implemented as
separate targets, but in this case you could add all three flash driver
packages to the target edb93xx record in ecos.db since there's CDL logic
to activate the appropriate flash driver:

> target edb93xx {
>     alias       { "Cirrus Logic EDB93XX evaluation board" edb93xx }
>     packages    { CYGPKG_HAL_ARM
>                   CYGPKG_HAL_ARM_ARM9
>                   CYGPKG_HAL_ARM_ARM9_EDB93XX
> 		    CYGPKG_DEVS_FLASH_EDB93XX
>                   CYGPKG_DEVS_ETH_ARM_EDB93XX
>                   CYGPKG_DEVS_FLASH_STRATA
>                   CYGPKG_DEVS_FLASH_INTEL_28FXXX
>                   CYGPKG_DEVS_FLASH_AMD_AM29XXXXX
>     }
>     description "
> The EDB93XX target provides the packages needed to run eCos on the Cirrus Logic EP93XX based development boards."
> }

If I make the above change and eliminate the "requires
CYGPKG_DEVS_FLASH_STRATA" constraint on CYGPKG_DEVS_FLASH_EDB93XX_STRATA
then I am unable to reproduce the unexpected conflict you report:

> [jld@cog test]$ ecosconfig new edb93xx
> U CYGPKG_HAL_ARM_ARM9_ARM920T, new inferred value 1
> U CYGBLD_GLOBAL_CFLAGS, new inferred value -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority -mno-thumb-interwork 
> U CYGBLD_GLOBAL_LDFLAGS, new inferred value -Wl,--gc-sections -Wl,-static -g -O2 -nostdlib -mno-thumb-interwork 
> [jld@cog test]$ ecosconfig --no-resolve add flash
> C CYGHWR_IO_FLASH_DEVICE, "requires" constraint not satisfied:  CYGHWR_IO_FLASH_DEVICE >= 1 
> [jld@cog test]$ echo "cdl_component CYGPKG_DEVS_FLASH_EDB93XX_STRATA { user_value 1 }" | ecosconfig import /dev/stdin
> [jld@cog test]$ ecosconfig check
> Target: edb93xx
> Template: default
> Added:
>  CYGPKG_IO_FLASH
> No conflicts
> [jld@cog test]$ 

I suggest that you try to reproduce the above result by applying the
EP93xx patch and the above changes to an unmodified eCos repository.
Then work out what you have changed in your local sources that might
have introduced the problem.

John Dallaway

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


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