1. 06 Apr, 2017 1 commit
  2. 27 Feb, 2017 1 commit
  3. 13 Jan, 2017 1 commit
    • Alessandro Rubini's avatar
      general: avoid linux/ includes when possible · 922e2caf
      Alessandro Rubini authored
      Building with musl was spitting errors for redefined data structures.
      Use the standard headers when available (I found not alternatives to
      linux/if_packet.h, but it spits no error).
      
      Then, ifr.ifr_data is "caddr_t" not "void *" in musl, so cast the
      pointer being assigned to silent a warning.
      
      Finally, the fields of udphdr in musl use different names unless wi
      add _GNU_SOURCE -- most likely musl is more posixly-correct, I didn't check.
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
      922e2caf
  4. 01 Dec, 2016 1 commit
  5. 25 Oct, 2016 2 commits
  6. 20 Sep, 2016 1 commit
    • Alessandro Rubini's avatar
      Support E2E build without P2P. Saves 5kB in wrpc-sw · 3542ae48
      Alessandro Rubini authored
      Here in ppsi,
      
        ./MAKEALL wrpc_defconfig wrpc_pdelay_defconfig
      
      shows a very small difference, but most pdelay code is then
      discarded by the wrpc-sw link time, due to --gc-sections.
      This is the result:
      
         laptopo% ./MAKEALL spec_defconfig spec_pdelay_defconfig
         ##### Building with 'spec_defconfig'
         /opt/lm32-gcc-4.5.3/bin/lm32-elf-ar: creating libsdbfs.a
            text    data     bss     dec     hex filename
           87688    3492    6352   97532   17cfc wrc.elf
         ##### Building with 'spec_pdelay_defconfig'
         /opt/lm32-gcc-4.5.3/bin/lm32-elf-ar: creating libsdbfs.a
            text    data     bss     dec     hex filename
           93140    3492    6360  102992   19250 wrc.elf
      
      What is missing now is the run-time choice between e2e and p2p. Later....
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
      3542ae48
  7. 16 May, 2016 2 commits
  8. 08 Apr, 2016 2 commits
  9. 09 Jul, 2015 1 commit
  10. 06 Jul, 2015 3 commits
  11. 26 Jun, 2015 1 commit
  12. 05 Dec, 2014 1 commit
    • Alessandro Rubini's avatar
      general: move buffers our of pp_instance, and make them smaller · d93b31c7
      Alessandro Rubini authored
      In order to fit all pp_instance items withing WRS shared memory,
      we need to make them a little smaller.  Thus, the tx and rx buffers
      are now allocated separately.  And, while I am at it, I make them
      smaller, because 128 bytes are more than enough for PTP with
      extensions (all frames are under 100 bytes). Given we are always
      showr of memory in wrpc-sw, this is benefical.
      
      As a side effect, clean up some out-of-memory exit paths, and fix a
      use-before-check buglet in arch-unix (no, we never go out of memory,
      but the check was wrong).
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
      d93b31c7
  13. 11 Nov, 2014 1 commit
  14. 07 Nov, 2014 4 commits
  15. 22 Sep, 2014 1 commit
  16. 21 Jul, 2014 2 commits
  17. 21 Mar, 2014 2 commits
    • Pietro Fezzardi's avatar
      config: removed global variables current_ppg and current_ppi · 899ab83e
      Pietro Fezzardi authored
      New prototype for cfg_handler to remove the global variable *current_ppg.
      The current ppg is now passed as argument to the cfg handler as follows:
      
      typedef int (*cfg_handler)(int lineno, struct pp_globals *ppg,
      				union pp_cfg_arg *arg);
      
      New variable added in include/ppsi/pp-instance.h:
      
      struct pp_globals_cfg {
      	int cfg_items;
      	int cur_ppi_n;
      };
      
      Now struct pp_globals has a new field:
      
      struct pp_globals {
      	[...]
      	struct pp_globals_cfg cfg;
      	[...]
      };
      
      The field cfg_items has been moved from pp_globals
      to pp_globals_cfg. The configuration routine uses the field
      cur_ppi_n inside pp_globals_cfg to store the current ppi being
      configured. So neither the global variable *current_ppi is needed
      anymore.
      
      The helper inline function CUR_PPI has been defined to make
      accesses to current ppi more readable.
      899ab83e
    • Pietro Fezzardi's avatar
      use INST() to access instances everywhere · 0a8e929e
      Pietro Fezzardi authored
      given that INTS() is defined as inline it should not affect
      the performance even in time-critical cases.
      0a8e929e
  18. 02 Mar, 2014 2 commits
  19. 15 Nov, 2013 2 commits
  20. 04 Nov, 2013 2 commits
  21. 16 Oct, 2013 2 commits
  22. 15 Oct, 2013 1 commit
  23. 05 Oct, 2013 3 commits
  24. 19 Sep, 2013 1 commit
    • Alessandro Rubini's avatar
      main loops: discard wrong application of UTC offset · e89573a3
      Alessandro Rubini authored
      We definitely need to take care of currentUtcOffset, but the current
      implementation was wrong: it only used it in modifying receive stamps,
      thus achieving completely wrong tuples.
      
      It's the receive function that must apply the utcOffset, or not,
      according to how it timestamps frames.  Similarly, it's the time
      setting functions that must use utcOffset, or not, according to whether
      the time is utc (e.g.: unix) or tai (e.g.: wr).
      
      So this just removes a wrong attempt, waiting for good stuff to be written.
      Anyways, the utcOffset reported by the master is kept in data structures
      and passed over to slaves.
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
      e89573a3