This is the mail archive of the 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: Self defining CDL interfaces

Gary Thomas wrote:
There are many examples of CDL which have comments like this:

        # FIXME: This really belongs in the NS DP83902A package
        cdl_interface CYGINT_DEVS_ETH_NS_DP83902A_REQUIRED {
            display   "NS DP83902A ethernet driver required"

These appear in target/platform instance CDL files.

Does anyone remember why this interface is not defined in the
common/platform-independent CDL file?

Because those platform-independent CDL files are generally active_if that interface themselves. It's catch-22: the parent is active_if a cdl_interface, but if the parent contains that cdl_interface itself it can never be enabled because it's inactive!

I'd like to know what Bart's idea of a real solution would be though. The only thing I can imagine is having a CYGPKG_DEVS_ETH_NS_DP83902A_REALLY within CYGPKG_DEVS_ETH_NS_DP83902A where the latter (the parent) contains the cdl_interface, but it's the latter that has the active_if. But this is icky fluff that just makes the whole lot more confusing.

My preference would be for cdl_interfaces always to be active in the sense of being able to be implemented; so if their parent is inactive, then that's similar to having a no_define.

eCosCentric    The eCos and RedBoot experts
--["No sense being pessimistic, it wouldn't work anyway"]-- Opinions==mine

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