This is the mail archive of the ecos-bugs@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]

[Bug 1001116] Instruct lwIP to use special section for buffers andheap.


Please do not reply to this email. Use the web interface provided at:
http://bugs.ecos.sourceware.org/show_bug.cgi?id=1001116

--- Comment #11 from Sergei Gavrikov <sergei.gavrikov@gmail.com> 2011-01-28 17:52:10 GMT ---
(In reply to comment #10)
> (In reply to comment #9)
> > "Make it as simple as you can, and no simpler" :-) But,
> > 
> > I would not use calculated command as you proposed
> 
> Why not use calculated?

To be clear. I have only wanted an empty MEM_SECTION definition by default.

> By using calculated value we have a single entry point for section name.
> It can be further enhanced by following:
> 
>     cdl_component CYGDAT_LWIP_MEM_SECTION_NAME {
>           ...
>           legal_values { "ahb_bss" "ahb_0" }
>           ...
>     }

Ah, I missed that you need a choice from the list.

> > 
> >     cdl_option CYGDAT_LWIP_MEM_SECTION {
> >         display "Special memory section for lwIP buffers"
> >         default_value 0
> > 
> > IMO, you can do it in your CDL (HAL)
> > 
> >     cdl_option CYGDAT_LWIP_MEM_SECTION_NAME {
> >         ...
> >         requires { CYGDAT_LWIP_MEM_SECTION == ... }

...so, I enterred a mess when I have been pointed on the 'booldata' above.

> > Comments?
> 
> The combination that you are proposing inherently raises a conflict which I
> prefer to avoid.
> However I tried it and the conflict resolution offered by configtool is not
> what we want - it offers CYGDAT_LWIP_MEM_SECTION_NAME = 0 ??

Yes, I'm sorry, then that can be

cdl_package CYGPKG_NET_LWIP {
    ...
    cdl_option CYGSEM_LWIP_MEM_SECTION {
        display     "Relocate memory pools"
        flavor      bool
        calculated  is_active(CYGDAT_LWIP_MEM_SECTION_NAME)
        ...
    }
}

cdl_package CYGPKG_HAL_... {
    ...
    cdl_option CYGDAT_LWIP_MEM_SECTION_NAME {
        display       "Name of section"
        flavor        data
        default_value { "\".foo\"" }
        legal_values  { "\".foo\"" "\".bar\"" "\".baz\"" }
        ...
    }
}

and the check will be simple

#if CYGSEM_LWIP_MEM_SECTION
#include <cyg/infra/cyg_type.h>
#define MEM_SECTION CYGBLD_ATTRIB_SECTION(CYGDAT_LWIP_MEM_SECTION_NAME)
#else
#define MEM_SECTION
#endif

Well, if HAL does not provide CYGDAT_LWIP_MEM_SECTION_NAME, that lwIP's
CYGSEM_LWIP_MEM_SECTION will be not defined and other targets (the most)
will be happy with

#define MEM_SECTION

Your target's CDL will turn on CDL option CYGSEM_LWIP_MEM_SECTION and
memory section name will be specified.

I hope I get it what you looking for.

-- 
Configure bugmail: http://bugs.ecos.sourceware.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


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