This is the mail archive of the ecos-devel@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: lwip 1.3.2 port


John Dallaway schrieb:
Hi Simon

Simon Kallweit wrote:

John Dallaway schrieb:
Hi Simon

Simon Kallweit wrote:
Ok, I merged the 1.3.2 stable code and did a few quick tests (the
changes are not huge). The tarball is at
http://download.westlicht.ch/lwip-20100122.tar.gz
Some initial comments based mainly on diffs against the upstream lwIP
1.3.2 sources and the eCos lwIP 1.1.1 port:

a) On the whole, the upstream sources have very little modification.
That's good news for future updates. Is it strictly necessary to move
the include/ipv4/ headers into include/ as part of the eCos port? This
seems like unnecessary effort and will also make it more difficult to
support IPv6 in the future.
I'll see if we can change that.

Looking at this in more detail, it appears that the only way to preserve
the upstream directory layout would be to add "-I$(PREFIX)/include/ipv4"
to CYGBLD_GLOBAL_CFLAGS. Otherwise, other eCos packages will not find
the IPv4-specific headers when #including netif.h (for example). Perhaps
it is better to move the IPv4 header files as you have done already. We
can think again for a future lwIP import if the IPv6 support moves
beyond "experimental" status.

Ok, now I remember why this was necessary :)


c) There are a lot of small changes under src/netif/ppp/ including
function renaming. I understand that you have your own PPP requirements
to consider but I think we should stick closer to the master sources for
the CVS check-in. Unless your changes have already been accepted
upstream?
Well, yesterday night I have checked the lwip HEAD, and it looks like
there has been lots of work done in the ppp departement. It now supports
polling and multi-threaded support out of the box. So it might be
considerable to directly use the current HEAD for inclusion into eCos
and keep it updated with the lwip repository until we hit the next
stable release. Backporting the ppp changes to the 1.3.2 codebase is a
bit troublesome as the internal timeout framework has changed a bit and
we would have to backport this too. I would pledge for the use of the
1.4.0 development tree. What do you think about this?

We always seem to be waiting for the next version of lwIP. :-)

True, true. But, with the original 1.3.2 lwip code, ppp can only be used in a multi-threaded environment. I'd have to adapt the CDL etc. for the vanilla 1.3.2 codebase and could not use it in my own projects. So this effort seems kind of useless, at least to me. Moving on to 1.4.x would solve the issues quite nicely. We would get updated ppp code, with full support for usage in both single and multi-threaded environments. All I say is, I'd rather invest some time moving forward than moving backward :) But I certainly see your point here, it's been a long time already ...


At this stage, I would favour an initial check-in of something close to
lwIP 1.3.2 followed by an update of the PPP code from the lwIP HEAD as
time permits.

So you would like to import my changes to ppp? As said above, I don't really want to go back to the original 1.3.2 ppp code myself.
I plan to upgrade my own application to lwip 1.4.x soon and get the remaining changes of my ppp code (mostly 'record' support for debugging ppp connections using wireshark) upstream. Of course, when we have 1.3.2 in the eCos repository, I could provide patches for the upgrade to 1.4.x.


Simon




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