- Oct 27, 2015
-
-
Alessandro Rubini authored
We have not been using mprintf for ages now, and it's better for the code to explicitly call pp_printf, so people is aware of it. We might "#define printf pp_printf", but currently we'd better not. Maybe when we turn this into a real operating system, next millennium... Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
In this commit: 40b87d1c trivial: remove debug prints from pfilter I made an error. By defining pfilter_dbg to nothing the arguments remained, a a parens-enclosed comma expression with no effects. This fixes the mishap and the related compiler warnings. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- Oct 26, 2015
-
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- Oct 15, 2015
-
-
Alessandro Rubini authored
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
The gui is timely: it refreshes every that many seconds, but I'd better see a change immediated when it happens. This commit introduces monitoring of the wr-servo update count, so if anything changed an information scree is dumped. This is different from stats (two commits ago), because we want to refresh timely in any case, so the user sees the thing is active. You can verify the effect of the commit after "refresh 4": timely refresh is now slower than servo updated and you'll see how gui updates are synced with the ptp protocol. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
With the new "only print if sth happens" way, sometimes stats is just silent forever. This happens if we are master or if no slave is active (well, and during initial setting up the wr link). So now typing "stat" or "stat on" will turn on stats and print a line of statistics, every time -- or the line "statistics now off". This happens by changing the internal status of monitor_ppsi.c, now exported to the cmd_stat.c. This is the result on a master system: wrc# stat lnk:1 rx:0 tx:3 lock:1 sv:0 ss:'' aux:1 sec:5 [...] wrc# wrc# wrc# stat statistics now off wrc# wrc# wrc# stat lnk:1 rx:0 tx:11 lock:1 sv:0 ss:'' aux:1 sec:8 [...] wrc# wrc# And this is what happens when we become slave: wrc# mode slave Locking PLL wrc# ptp start Slave Only, clock class set to 255 wrc# lnk:1 rx:57 tx:60 lock:1 sv:1 ss:'SYNC_SEC' aux:1 sec:49 [...] lnk:1 rx:70 tx:64 lock:1 sv:1 ss:'SYNC_NSEC' aux:1 sec:1444901411 [...] ...
-
Alessandro Rubini authored
This change monitors the update_count of wr_servo, and only prints a statistics line when something happens. This means we won't have long "TRACK_PHASE" listings when the master is dead. Moreover, we see changes when they happen, not at a random time during the next second. The bad side of the thing is that if nothing happens in the wr servo, nothing is ever printed. But see next commit. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
If we are master (or slave with no master running) the next commit makes stats completely silent (nothing happens: nothing printed). A user typing "stat" won't know if it turned them on or off. So turning on is now printed: wrc# stat wrc# wrc# wrc# stat statistics now off Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
"stat" enables statistics, without interrupting shell interaction. Thus, there is no "esc to terminate" any more. Another "stat" command with turn stats off. As an alternative, "stat on" and "stat off" is supported. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
The function was only called with "0" as argument. Drop it. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
This reverts commit 03062ea3. The patch is wrong, because it duplicates 9491e61b ppsi: pick new master and fix building accordingly which does the "fixing" in a more elegant way. With both in history, we now have ./ppsi/include/generated/autoconf.h:13:0: warning: "CONFIG_VLAN_ARRAY_SIZE" redefined generated/autoconf.h:14:0: note: this is the previous definition Besides, the reverted commit was not even using new ppsi master (we did it before this commit). Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- Oct 13, 2015
-
-
Alessandro Rubini authored
Commit 70b42d0d is currently proposed_master, so by our agreements with GSI we can't remove it from history. The change itself is already in master (but with typos fixed in the commit message). So let's pin the commit by merging, even if it will appear twice in the history.
-
Alessandro Rubini authored
-
Alessandro Rubini authored
This just adds "void" in prototypes. I did the pfilter on a different branch, and lost these changes of commit be2bd234 wyhile moving pfilter generation to tools/ Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Use the rules from the array we are passed in the object file. We'll use the feature when enabling vlans: at that point we'll have two sets to choose from, according to run-time configuration. Using the build-time configuration avoids the hairy ifdef and saves almost 1kB of binary size. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
This changes pfilter-builder.c so it really build in user space, but removing register setting and creating output files instead. Running this program creates 3 files, that correspond to the previous three #ifdef conditions. The files are: rules-plain.bin this is used for the no-etherbone configuration rules-ebone.bin etherbone setup rules-e+nic.bin etherbon plus 7solution's wr-nic packet filter The files begin with a magix 0x11223344 word, that allows the soft-core to fix any endianness difference (so no hairy mishaps are expected when switching to a different soft-core). Then the 40-bit command words are saved as 64-bit vaules, LSB-first. The output file is thus an odd number of words and no 64-bit alignment is required. The first three instructions of the packet filter are used to compare the destination mac address of the frame. We now use a fake mac address, and the LM32 code will change it while programming the binary. Please look at this commit while ignoring white-space, as it changes indentation while turning #ifdef/#else into if()/else . Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
We are going to have a user-space tool to build the packet filter images. The first step is copying dev/ep_pfilter.c, so we can "git diff" the changes. At this point the file is not even built. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Simplify access to $CONFIG_RAMSIZE. Actually, the previous way was not working for me, as my $SHELL is not bash. The bug is uncovered by the next commit, because the "-s" argument to genramvhd has always been wrong for me, but I didn't notice (so maybe the "-s" argument has no effect? I can't tell at this point) Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
If we compare for the local MAC first, it's easier to patch the mac address at run time. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
We now explain how the class bits are used after the pfilter is over. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com> Acked-by:
Grzegorz Daniluk <grzegorz.daniluk@cern.ch>
-
Alessandro Rubini authored
There is no need to assign register names to numbers explicitly, because there's always the risk to make errors. This also adds a build-time check for any overflow of the 22 registers: if we allocate more than 22, it won't build. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
This removes the register numbers from comments, and rewords comments in general to match the fact that registers are now named. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
The current code was reusing R10 and R11 for a different role. However, we have several free registers, so this allocates two new more, by giving them a meaningful name. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Uses of R20 and R12 are temporaries, and very local. Thus, we can reuse R14, already blessed R_TMP. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
The existing code used R6 both for ARP and for ETHERBONE. Allocate a new register, since we have plenty. This clarifies the code (by using proper symbolic name) but changes the generated binaries. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
This commit is not changing the generated code at all (the bits generated are exactly the same as in the previous commit), in all three cases of #ifdef. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
By naming registers the code is much more readable in my opinion. And we avoid, in future modifications, to mistake a frame offset for a register. The enumeration of names starts from 1024 to deny use of simple numbers. Also, the enumeration is verified to be exactly 32 names, by raising a build error if not. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
"act accordingly" means pre-including ppsi/...autoconf.h within CFLAGS, or we miss CONFIG_MAX_VLANS_PER_PORT, used in defining the ppsi local data structure. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
-
- Oct 08, 2015
-
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
The current default is a multicast address. We'd better use a locally-assigned number instead. We keep the pattern of a very-visible thing, so if it appears in some sniffer or ARP table you notice. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- Oct 02, 2015
-
-
Grzegorz Daniluk authored
-