1. 04 Apr, 2016 3 commits
    • Alessandro Rubini's avatar
      general: use an ELF section for tasks · d9d20c8b
      Alessandro Rubini authored
      This allows several functions to be static in the files where they
      are defined. See temperature.c for an example.
      But mainly, the idea is allowing ease addition of features (likely
      Kconfig'd ones) for specific WR users, without any modification to the
      main function and other generic code.  This will happen soon for snmp,
      for example.
      We may push this a little further, by moving all shell stuff into
      shell.c, the ptp task within ppsi itself, and so on. But now my time
      is over.
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
    • Alessandro Rubini's avatar
      temperature: add a temperature framework · e2e7d59a
      Alessandro Rubini authored
      This commit adds data structures, methods and a process to manage
      temperature.  Currently the only temperature being read is the onewire
      thermometer, so there is no difference with what we had before.
      The cost is 1.1 kB in binary size.
      Well, there is a difference: only the stat engine was reading
      temperature, while now the thermometer is read continuously (every 15
      seconds, or another Kconfig-urable interval).  This takes quite some
      CPU time (18.5ms per polling loop, but allows any user to read
      temperature (using the API we now provide) without re-reading the
      onewire bus.
      The real aim of this is monitoring a board-specific set of sensors,
      as implemented and show in the next commit.
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
    • Alessandro Rubini's avatar
      trivial: remove unused man_phase · 0887cbbe
      Alessandro Rubini authored
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
  2. 16 Feb, 2016 2 commits
  3. 15 Feb, 2016 1 commit
  4. 20 Jan, 2016 3 commits
  5. 13 Nov, 2015 1 commit
  6. 11 Nov, 2015 1 commit
  7. 27 Oct, 2015 1 commit
  8. 15 Oct, 2015 5 commits
    • Alessandro Rubini's avatar
      gui: print a new status screen whenever the wr servo runs · aa95124d
      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's avatarAlessandro Rubini <rubini@gnudd.com>
    • Alessandro Rubini's avatar
      stat: always print one line when turning stats on · 684fa5cd
      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# stat
         statistics now off
         wrc# stat
         lnk:1 rx:0 tx:11 lock:1 sv:0 ss:'' aux:1 sec:8 [...]
      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 [...]
         lnk:1 rx:77 tx:66 lock:1 sv:1 ss:'SYNC_PHASE' aux:1 sec:1444901414 [...]
         lnk:1 rx:83 tx:68 lock:1 sv:1 ss:'WAIT_OFFSET_STABLE' aux:1 sec:1444901416 [...]
         lnk:1 rx:87 tx:69 lock:1 sv:1 ss:'WAIT_OFFSET_STABLE' aux:1 sec:1444901417 [...]
         lnk:1 rx:90 tx:70 lock:1 sv:1 ss:'TRACK_PHASE' aux:1 sec:1444901418 [...]
         lnk:1 rx:94 tx:71 lock:1 sv:1 ss:'TRACK_PHASE' aux:1 sec:1444901419 [...]
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
    • Alessandro Rubini's avatar
      stat: only print statistics when something happened · a9114d22
      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's avatarAlessandro Rubini <rubini@gnudd.com>
    • Alessandro Rubini's avatar
    • Alessandro Rubini's avatar
      trivial: drop unused argument to wrc_log_stats · d5054a33
      Alessandro Rubini authored
      The function was only called with "0" as argument. Drop it.
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
  9. 26 Jul, 2015 2 commits
  10. 30 Jun, 2015 4 commits
  11. 08 Oct, 2014 1 commit
  12. 12 Feb, 2014 1 commit
  13. 10 Feb, 2014 1 commit
  14. 06 Feb, 2014 2 commits
  15. 18 Dec, 2013 1 commit
  16. 17 Oct, 2013 2 commits
  17. 14 Oct, 2013 1 commit
  18. 11 Oct, 2013 1 commit
  19. 23 Sep, 2013 1 commit
  20. 20 Sep, 2013 2 commits
  21. 16 Aug, 2013 1 commit
  22. 17 May, 2013 1 commit
  23. 13 May, 2013 2 commits