uld work now.
You can use it freely.
As long as you provide feedback so we can eventually fix/improve it.
--
Stephane Lesage
___
lwip-users mailing list
lwip-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/lwip-users
all
tcpip_trycallback(rxmsg) (only if necessary)
Then my rx_callback() does the actual job in the tcpip thread context:
- loop to extract pbuf from the "completed" DMA descriptors queue
- snmp/statistics update
- call ethernet_input(pbuf, netif)
- try to reallocate a new pbuf to re
k where LwIP is
running,
Yes
>or is it allowed to call it also from another task (it will be ensured
that nothing else will call netif_set_addr from my side at the same
time)
You can just use netifapi_xxx functions which will do the job of
executing the netif_xxx fun
eader field alignment for all protocols used, not only for IP, UDP
and
> TCP.
The context is LwIP, so higher layers refers only to the stack and not
application protocols.
AFAIK, IP/UDP/TCP/ICMP/IGMP and DNS are fine.
Netbios is contrib and needs packing.
But you
CP header structures, all fields are naturally aligned
because they are packed because it was designed this way.
Our problem is that the pointer to such a structure may not be 32 bits
aligned.
In LwIP we use "packing" to tell this to the compiler -> it will be
forced to use misaligned
ow, maybe I didn't use the exact appropriate vocabulary (alignment /
packing / whatever), but I think I was careful enough by saying "*may*
not need packing"
The intent was to give a hint to enhance performance.
Best regards.
--
Stephane Lesage
___
lwip-users mailing list
lwip-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/lwip-users
ptions:
1. go back to defaut, #define NO_SYS_NO_TIMERS 0, you must provide
sys_now() and call sys_check_timeouts() regularly.
2. keep #define NO_SYS_NO_TIMERS 1, but you must call igmp_tmr()
yourself every IGMP_TMR_INTERVAL ms.
--
Stephane Lesage
_
less memory used (only the TCP window vs buffer + TCP window)
--
Stephane Lesage
___
lwip-users mailing list
lwip-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/lwip-users
ing
an OS nor calling lwIP from interrupts
--
Stephane Lesage
___
lwip-users mailing list
lwip-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/lwip-users
.
I think that you should buffer the pbufs, and NOT call tcp_recved()
until you consume a pbuf in your audio task.
Hope this helps.
--
Stephane Lesage
___
lwip-users mailing list
lwip-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/lwip-users
you:
git clone -b
Example:
git clone -b my-branch g...@github.com:user/myproject.git
--
Stephane Lesage
___
lwip-users mailing list
lwip-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/lwip-users
"queued" descriptors and
eventually restart DMA
- tcpip_trycallback(txmsg); if not already done
6. TX callback in the tcpip thread:
- loop to extract descriptors from "complete" queue
- update statistics
- free the pbuf
- move back the descriptor to "free" queue
- on exi
> Correct me if I am wrong, but I think for this to work you have to
> invalidate a pbuf before passing it to the RX engine. When payload
> starts on a 32 bit boundary, you can leave a TX pbuf inalidated and
> pass it to RX.
I'm not sure to understand what you mean.
Yes, the driver needs to inval
llocation.
> There is a pointer to a buffer in the struct, it is redundant if the
> payload is at a known offset, right?
For POOL/RAM yes, but this is necessary for PBUF_ROM and PBUF_REF which
have external payload buffer.
--
Stephane Lesage
___
lwi
> But then struct pbuf is still only 16 bytes long, so payload might
> start in the middle of a 32-byte border, which leads to faults when
> flushing cache (since the struct pbuf members are still used cached) or
> am I wrong there?
I don't have the problem, because:
1. I don't need to align my pa
> > I suppose I could allocate 32 more bytes to hold the pbuf struct and
> > fudge the pointers to make the payload start on the right boundary,
> > but you've said that pbuf_header could move the start of payload, or
> > something like that... More voodoo stuff.
>
> And that is something I need,
> > I'm confused because it hasn't been updated since 2011-12-15.
> > So it does not include the recent bug fixes?
>
> That's because I fix bugs on the master branch and have to backport
> them to the 1.4.1 branch. I simply haven't found the time to do so for
> the latest fixes.
> Aside from acti
Hi,
> For the RX side, using a *custom* PBUF_REF would be the best solution.
> That's a pbuf that has a 'freed' callback and references external
> memory. However, that doesn't work, yet (though I planned to add
> support
> for it as I can see it's one possible solution to implement DMA MAC
(The
> When unplug internet cable, how lwip deal it ? I want to show message
> to user in LCD to notice user !
Hi,
Here's what I do (NOSYS=0)
In my PHY driver init:
bfphy_msg = tcpip_callbackmsg_new(bfphy_interrupt_callback, netif);
In the interrupt:
tcpip_trycallback(bfphy_msg);
In the callback, e
s issue and solved it by set TF_FIN flag on the
pcb in function tcp_send_fin() in the case where we have unsent
segments.
I wanted to make a bug report but I realized that it was already
reported:
http://savannah.nongnu.org/bugs/?33962
The patch is the same as the solution I found.
--
Stephane Lesage
> > False alert for the FIN ! The flag is set but it's not displayed in
> > wireshark single line because it's interpreted as an HTTP response.
> > m8847 you should check in the packet details.
>
> Well, I have! It is not set for me. I'm home right now, eating pizza,
> :-) but I am certain that I
So shouldn't
lwIP advertise 8192 again ?
10. last data sent by lwIP with FIN flag
Why wait the ACK in packet 9 to send the data ?
--
Stephane Lesage
close_delay_and_window.pcap
Description: close_delay_and_window.pcap
___
lwip-users mailing list
lwip-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/lwip-users
es quite a long
time (more than 1 second).
I don't remember exactly when, but it was working better before.
I suggest someone with TCP knowledge (simon, Kieran ?) takes a look at
this issue.
Best regards
--
Stephane Lesage
___
lwip-users
Hi,
I needed to call netif_set_addr in my OS environnement.
So I added netifapi_netif_set_addr to the netif API.
It can be useful to other users, can someone merge it ?
--
Stéphane LESAGE
ATEIS International
netifapi.c
Description: netifapi.c
netifapi.h
Description: netifapi.h
_
> -Original Message-
> From: lwip-users-bounces+c.pelissier=hager...@nongnu.org
> [mailto:lwip-users-bounces+c.pelissier=hager...@nongnu.org]
> On Behalf Of Kieran Mansley
> Sent: Wednesday, February 18, 2009 11:42 AM
> To: Mailing list for lwIP users
> Subject: Re: [lwip-users] lwip s
gt;link_output() ?
Anyone to help me with the blocking/threads/IRQ issues ?
Thanks in Advance.
--
Stephane Lesage
ATEIS International
___
lwip-users mailing list
lwip-users@nongnu.org
http://lists.nongnu.org/mailman/listinfo/lwip-users
ted buffer. But I want to avoid the copy.
So the only way would be to malloc() PBUF_RAM buffers... A set of
initial buffers + create a new one and insert it in my DMA list each
time a packet is received.
Are people doing this ?
I'll release the sys_arch port and drive
Jonathan Larmour a écrit :
It does not set the peer address.
When I call send(), it does not work.
I have to use send_to().
This should work in CVS HEAD, and future 1.3.0. Looks like you have a
workaround for now.
Ok thanks.
--
Stephane Lesage
ATEIS International
28 matches
Mail list logo