On Wed, 28 Jan 2015 14:35:19 +0100 DI PEDE Michele <michele.dipede@xxxxxxxxxx> wrote: > Hi all, > HEAD of development branch contains the required API for a smooth integration > with Barebox. > User manual contains all the information for use them. There is also a small > demo TFTP client that show how to use the application driven interface > test/test_tftp_app_client.c. To build it just do make clean; make test; cd > test; make. > Now should be easy to integrate out stack in Barebox code. > Let me know how the integration effort proceed. We could provide proper > support from our side to speed up things. I have tryed to integrate picotcp tftp support into barebox. Latest picotcp development branch commit is commit 0a3b361848efe20259cb3ca5e79d73a95d8f476c Author: Daniele Lacamera <daniele.lacamera@xxxxxxx> Date: Wed Jan 28 13:55:23 2015 +0100 Added link status call to the device driver interface IMHO the tftp interface introduced in this picotcp development branch can't be easely integrated into barebox tftp filesystem support code. I'll illustrate this on sample barebox tftp file download session: barebox user setup network parameters and run 'tftp <filename>' command; the tftp commands mounts tftp-server rootdir to barebox "/.tftp_tmp_path"; and start file copy operation (/.tftp_tmp_path/<filename> -> /<filename>). copy operation consists of standard calls (very schematically): srcfd = open(<source file>, O_RDONLY); ... dstfd = open(<destination file>, O_WRONLY | O_CREAT | O_TRUNC); ... stat(srcfd, ...); /* just determine source file size if possible */ ... while (r = read(srcfd, buffer, 4096)) { write(dstfd, buffer, r); ... } so reading data block from tftp-server is made by initiative of barebox command. The barebox tftp support code realize all standard calls (open, stat, read, write ...). But let's examine picotcp tftp API. Picotcp tftp downloading file code consist of priv->session = pico_tftp_session_setup(&tpriv->server_ip4, PICO_PROTO_IPV4); ... pico_tftp_start_rx(priv->session, short_be(PICO_TFTP_PORT), filename, cb_tftp_rx_opt, priv); But pico_tftp_start_rx() tries to download WHOLE FILE from tftp-server. I see no means to suspend data transfer initiated by pico_tftp_start_rx(), so I have no means to realize necessary read() and write() calls. Sascha! Please comment this message. > If you have any question please don't esitate to contact us > > Best regards > Michele Di Pede > > Friday 19 December 2014 18:28:30, Michele Di Pede wrote: > > Hi all, > > I'm been very busy but I plan to work on the TFPT during the coming holidays > > to complete the it. > > > > Regards > > > > On Fri, Nov 28, 2014 at 8:38 PM, Daniele Lacamera > > > > <daniele.lacamera@xxxxxxx> wrote: > > > Hi all, > > > > > > Michele has been busy with another assignment lately, but he has also > > > been working on the features you requested. He will update you on the > > > status of his TFTP branch soon. > > > > > > Thanks > > > > > > /d > > > > > > On Fri, Nov 21, 2014 at 3:25 PM, Antony Pavlov <antonynpavlov@xxxxxxxxx> > wrote: > > >> Hi! > > >> > > >> What is current picotcp barebox integration status? > > >> > > >> AFAIR latest picotcp-barebox integration discussion thread is > > >> http://lists.infradead.org/pipermail/barebox/2014-September/020732.html > > >> > > >> -- > > >> Best regards, > > >> > > >> Antony Pavlov -- -- Best regards, Antony Pavlov _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox