1. 21 Mar, 2013 4 commits
  2. 20 Mar, 2013 3 commits
    • Alessandro Rubini's avatar
      arch-wrpc: update wrc_ptp_ppsi.c · 59eb85c3
      Alessandro Rubini authored
      This new file needs some updates over what we imported from wrpc-sw,
      because we now have pp_globals (in preparation for multi-link, thanks
      Aurelio).
      
      The commit also makes a little order in the inclusions of this file,
      removing unneeded stuff and grouping hardware-related headers.
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
      59eb85c3
    • Alessandro Rubini's avatar
      arch-wrpc: add material to wrpc.h · de98570d
      Alessandro Rubini authored
      These few lines are a copy of "wrc_ptp.h" as found in ptp-noposix.
      They are added here because they are the prototypes of now-local
      functions, and little more.
      
      Including the file from wrpc-sw would have required another -I
      directory, and I'd better not.
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
      de98570d
    • Alessandro Rubini's avatar
      arch-wrpc: wrc_ptp_ppsi.c copied from wrpc-sw · 66b59234
      Alessandro Rubini authored
      This file comes from commit e00d99f of wrpc-sw.  It used to live there
      as an alternative to wrc_ptp_noposix.c, as a top-level entry point to
      the ptp engine.
      
      However, ppsi is quite a moving target these months, and most
      improvements in modularity of ppsi require a change in the top-level
      file (like we change the main and startup files in the other
      architectures).
      
      Thus, this commit brings the file into ppsi (and wrpc-sw will remove
      it when using this version of ppsi as submodule) so we can be work
      on this repository and build-test everything with no effort, saving us
      from always committing to wrpc-sw as well.
      
      Note: this commit copies the file unchanged, and doesn't even try to
      build it; later commits make the required adjustments to finally build
      it.
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
      Acked-by: Aurelio Colosimo's avatarAurelio Colosimo <aurelio@aureliocolosimo.it>
      66b59234
  3. 19 Mar, 2013 8 commits
  4. 18 Mar, 2013 15 commits
  5. 16 Mar, 2013 1 commit
  6. 14 Mar, 2013 9 commits
    • Alessandro Rubini's avatar
      Merge branch 'ptpdump-within-ppsi' · 0c74aa23
      Alessandro Rubini authored
      This includes the functionality of tools/ptpdump inside the ppsi
      executable. Each net_ops->send and net_ops->recv must call the
      dumping functions (gnu-linux and bare-* already to in this branch;
      arch-wrpc does not, and I'll all it later).
      0c74aa23
    • Alessandro Rubini's avatar
      Makefile: add -fno-common · b31bb242
      Alessandro Rubini authored
      I don't want to declare globals in header files by error (see previous
      commit).  So I'd better use this flag to request "multiple definition"
      errors at build time.
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
      b31bb242
    • Alessandro Rubini's avatar
      proto-standard/msg.c: remove old diagnostics · 1c729a8c
      Alessandro Rubini authored
      The new diagnostics for frame input/output, based on tools/dump-funcs.c,
      reports all information, more orderly.   The diagnostic prints in
      msg.c are thus duplicates (provided all architectures use the new
      diagnostics in ->recv), and this commit removes them.
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
      1c729a8c
    • Alessandro Rubini's avatar
      bugfix: ieee1588_types.h: remove unused data · c5c6b8b6
      Alessandro Rubini authored
      In commit 7c14152c I removed some typedef, in my quest for getting rid
      of them.  But I forgot to remove the type name, so we got "TLV" and
      similar global variables in the object files.  This fixes the buglet,
      then I add -fno-common to prevent this for happening againg.
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
      c5c6b8b6
    • Alessandro Rubini's avatar
      arch-bare-* and lib-bare: network functions now dump if level is 2 · a433089e
      Alessandro Rubini authored
      Like what I did in two commits ago, now if debug level for "frames" is
      2 or more, net_ops->send and net_ops->recv now dump the data to
      stdout. The format is the same of tools/ptpdump, but the time is
      not showing the local time, as we miss localtime() and I don't want
      to waste time recoding it.
      
      This is an example of a bare-i386 slave requesting its master:
      
        send: TIME: (1363278286 - 0x5141f9ce) 1363278286.52969000
        send: ETH: 88f7 (00:25:11:86:1f:d2 -> 01:1b:19:00:00:00)
        send: VERSION: 2 (type 1, len 44, domain 0)
        send: FLAGS: 0x0002 (correction 0x00000000)
        send: PORT: 00-25-11-ff-fe-86-1f-d2-00-01
        send: REST: seq 2, ctrl 1, log-interval 127
        send: MESSAGE: (E) DELAY_REQ
        send: MSG-DELAY_REQ: 1363278286.052689000
        send: DUMP: payload (size 44)
        send: DUMP: 81 02 00 2c  00 00 02 00  00 00 00 00  00 00 00 00
        send: DUMP: 00 00 00 00  00 25 11 ff  fe 86 1f d2  00 01 00 02
        send: DUMP: 01 7f 00 00  51 41 f9 ce  03 23 f8 68
        diag-frames-1-eth0: SENT 44 bytes at 1363278286.052969000 (delay_req)
      
      This is a bare-i386 master receiving the same frame:
      
        recv: TIME: (1363278286 - 0x5141f9ce) 1363278286.92899000
        recv: ETH: 88f7 (00:25:11:86:1f:d2 -> 01:1b:19:00:00:00)
        recv: VERSION: 2 (type 1, len 44, domain 0)
        recv: FLAGS: 0x0002 (correction 0x00000000)
        recv: PORT: 00-25-11-ff-fe-86-1f-d2-00-01
        recv: REST: seq 2, ctrl 1, log-interval 127
        recv: MESSAGE: (E) DELAY_REQ
        recv: MSG-DELAY_REQ: 1363278286.052689000
        recv: TLV: too short (46 - 44 = 2)
        recv: DUMP: payload (size 46)
        recv: DUMP: 81 02 00 2c  00 00 02 00  00 00 00 00  00 00 00 00
        recv: DUMP: 00 00 00 00  00 25 11 ff  fe 86 1f d2  00 01 00 02
        recv: DUMP: 01 7f 00 00  51 41 f9 ce  03 23 f8 68  00 00
        diag-frames-1-eth0: RECV 46 bytes at 1363278286.092899000 (type 1)
      
      And this is tools/ptprump running on the master, for the same frame:
      
        TIME: (1363278286 - 0x5141f9ce) 17:24:46.092814
        ETH: 88f7 (00:25:11:86:1f:d2 -> 01:1b:19:00:00:00)
        VERSION: 2 (type 1, len 44, domain 0)
        FLAGS: 0x0002 (correction 0x00000000)
        PORT: 00-25-11-ff-fe-86-1f-d2-00-01
        REST: seq 2, ctrl 1, log-interval 127
        MESSAGE: (E) DELAY_REQ
        MSG-DELAY_REQ: 1363278286.052689000
        TLV: too short (46 - 44 = 2)
        DUMP: payload (size 46)
        DUMP: 81 02 00 2c  00 00 02 00  00 00 00 00  00 00 00 00
        DUMP: 00 00 00 00  00 25 11 ff  fe 86 1f d2  00 01 00 02
        DUMP: 01 7f 00 00  51 41 f9 ce  03 23 f8 68  00 00
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
      a433089e
    • Alessandro Rubini's avatar
      lib/network_types.h: new file · 1e8c65c6
      Alessandro Rubini authored
      This file includes data structures that are needed by
      tools/dump-funcs.c to be built in freestanding environments. It is
      included by ptpdump.h, but only for freestanding builds.
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
      1e8c65c6
    • Alessandro Rubini's avatar
      arch-gnu-linux: network functions now dump if level is 2 · d924e8b0
      Alessandro Rubini authored
      If debug level for "frames" is 2 or more, net_ops->send and
      net_ops->recv now dump the data to stdout. The format is the same
      of tools/ptpdump, with "send:" and "recv:" in front. This is an example:
      
        send: TIME: (1363277414 - 0x5141f666) 17:10:14.748281
        send: VERSION: 2 (type 11, len 64, domain 0)
        send: FLAGS: 0x0002 (correction 0x00000000)
        send: PORT: 00-22-15-ff-fe-d7-c0-ef-00-01
        send: REST: seq 9, ctrl 5, log-interval 1
        send: MESSAGE: (G) ANNOUNCE
        send: MSG-ANNOUNCE: stamp 0.000000000
        send: MSG-ANNOUNCE: grandmaster-quality f8-fe-60f0
        send: MSG-ANNOUNCE: grandmaster-prio 248 248
        send: MSG-ANNOUNCE: grandmaster-id 00-22-15-ff-fe-d7-c0-ef
        send: DUMP: payload (size 64)
        send: DUMP: 8b 02 00 40  00 00 02 00  00 00 00 00  00 00 00 00
        send: DUMP: 00 00 00 00  00 22 15 ff  fe d7 c0 ef  00 01 00 09
        send: DUMP: 05 01 00 00  00 00 00 00  00 00 00 00  00 00 11 f8
        send: DUMP: f8 fe f0 60  f8 00 22 15  ff fe d7 c0  ef 00 00 a0
        diag-frames-1-eth0: SENT 64 bytes at 1363277414.748281517 (announce)
      
      And this is the same frame in the other host:
      
        recv: TIME: (1363277414 - 0x5141f666) 17:10:14.691032
        recv: VERSION: 2 (type 11, len 64, domain 0)
        recv: FLAGS: 0x0002 (correction 0x00000000)
        recv: PORT: 00-22-15-ff-fe-d7-c0-ef-00-01
        recv: REST: seq 9, ctrl 5, log-interval 1
        recv: MESSAGE: (G) ANNOUNCE
        recv: MSG-ANNOUNCE: stamp 0.000000000
        recv: MSG-ANNOUNCE: grandmaster-quality f8-fe-60f0
        recv: MSG-ANNOUNCE: grandmaster-prio 248 248
        recv: MSG-ANNOUNCE: grandmaster-id 00-22-15-ff-fe-d7-c0-ef
        recv: DUMP: payload (size 64)
        recv: DUMP: 8b 02 00 40  00 00 02 00  00 00 00 00  00 00 00 00
        recv: DUMP: 00 00 00 00  00 22 15 ff  fe d7 c0 ef  00 01 00 09
        recv: DUMP: 05 01 00 00  00 00 00 00  00 00 00 00  00 00 11 f8
        recv: DUMP: f8 fe f0 60  f8 00 22 15  ff fe d7 c0  ef 00 00 a0
        diag-frames-1-eth0: RECV 64 bytes at 1363277414.691032726 (type b)
      
      This is what I got for the same frame in a ptpdump running in the
      master.
      
        TIME: (1363277414 - 0x5141f666) 17:10:14.748376
        ETH: 0800 (00:22:15:d7:c0:ef -> 01:00:5e:00:01:81)
        IP: 17 (192.168.16.1 -> 224.0.1.129) len 92
        UDP: (320 -> 320) len 72
        VERSION: 2 (type 11, len 64, domain 0)
        FLAGS: 0x0002 (correction 0x00000000)
        PORT: 00-22-15-ff-fe-d7-c0-ef-00-01
        REST: seq 9, ctrl 5, log-interval 1
        MESSAGE: (G) ANNOUNCE
        MSG-ANNOUNCE: stamp 0.000000000
        MSG-ANNOUNCE: grandmaster-quality f8-fe-60f0
        MSG-ANNOUNCE: grandmaster-prio 248 248
        MSG-ANNOUNCE: grandmaster-id 00-22-15-ff-fe-d7-c0-ef
        DUMP: payload (size 64)
        DUMP: 8b 02 00 40  00 00 02 00  00 00 00 00  00 00 00 00
        DUMP: 00 00 00 00  00 22 15 ff  fe d7 c0 ef  00 01 00 09
        DUMP: 05 01 00 00  00 00 00 00  00 00 00 00  00 00 11 f8
        DUMP: f8 fe f0 60  f8 00 22 15  ff fe d7 c0  ef 00 00 a0
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
      d924e8b0
    • Alessandro Rubini's avatar
      64946111
    • Alessandro Rubini's avatar
      tools/ptpdump: add "char *prefix" to all functions · 7ce8aecd
      Alessandro Rubini authored
      This is oh so boring, but I need to differentiate send from receive
      when dumping from withing ppsi itself.  This is a long patch that has
      no effect on tools/ptpdump, since it pases the empty string as prefix.
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
      7ce8aecd