"Mathias Zenger" wrote: > I would like to write an ethernet boot loader for my embedded system. A > small TFTP client shall be part of the bootloader. The client shall be > based > on the raw API (code size is critical). Can somebody explain me which bare > parts from lwIP (or perhaps uIP) I shall use to get a basic TFTP > communication working? I guess I would need ARP, IP and UDP (but which > files?). Would be great if somebody even could provide a functional > example.
I would recommend to compile all files and use lwipopts.h to strip down code size (most of the files are then automatically left out through #if's). Then, copy opt.h and define everything to 0 you don't need. I think there are some recommendations regarding size in the lwip wiki. You should set NO_SYS to 1 (unless there's an OS in your bootloader), and you can at least turn off (LWIP_-) TCP, ICMP, IP_FRAG/_REASS, RAW, NETCONN and SOCKET. Regarding RAM usage (not code size), you will want to configure the MEM/MEMP settings as low as possible, although you need to tweak this after your application is finished. Oh, and I guess you'd nee DHCP, too, for your client to get an IP address. The current code doesn't allow it, but I have a change in preparation that parses the bootloader file returned by the DHCP server. And last but not least, I'd greatly appreciate if you could share the code with us: I'd like to add such a boot-client to the dhcp client code... Simon -- GRATIS für alle GMX-Mitglieder: Die maxdome Movie-FLAT! Jetzt freischalten unter http://portal.gmx.net/de/go/maxdome01 _______________________________________________ lwip-users mailing list lwip-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/lwip-users