1. 28 Jan, 2020 1 commit
  2. 31 Oct, 2019 2 commits
  3. 01 Dec, 2017 1 commit
  4. 30 Nov, 2017 1 commit
  5. 29 Nov, 2017 2 commits
  6. 04 Jul, 2017 1 commit
  7. 03 Jul, 2017 1 commit
  8. 20 Jun, 2017 2 commits
  9. 16 Jun, 2017 1 commit
  10. 14 Mar, 2017 2 commits
  11. 13 Mar, 2017 1 commit
  12. 02 Mar, 2017 1 commit
  13. 01 Mar, 2017 3 commits
  14. 27 Feb, 2017 1 commit
  15. 23 Feb, 2017 1 commit
  16. 16 Feb, 2017 4 commits
  17. 29 Jul, 2016 2 commits
  18. 18 May, 2016 1 commit
  19. 04 Apr, 2016 4 commits
    • Alessandro Rubini's avatar
      configs: added a configuration for the host · c8675475
      Alessandro Rubini authored
      The configuration is not called *_defconfig, because we can't just
      build it in ./MAKEALL -- we need ppsi to be built with a different
      configuration, and this is not autodetected yet (but building from a fresh
      clone works).
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
    • Alessandro Rubini's avatar
      add pfilter_verbose, selected by Kconfig (developer mode) · dd612fb9
      Alessandro Rubini authored
      Also, this changes how to mac address is retrieved in patching pfilter
      rules. I'd better use format_mac(get_mac) for the verbose message,
      so get_mac is also the source for patching the rules.
      register and get_mac/set_mac are guaranteed to be in-sync.
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
    • Alessandro Rubini's avatar
      vlan: route 2 vlan numbers to Etherbone and 1 to streamer/nic · 29b77fb9
      Alessandro Rubini authored
      These numbers are only available at build time; there is no run-time
      command to change them as yet.
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
    • Alessandro Rubini's avatar
      shell: optionally define a build-time init command · ce0af021
      Alessandro Rubini authored
      This commit adds the possibility to build an init command in the
      binary.  It can be useful to install a number of nodes with a special
      configuration, without the need to reach the shell and/or eeprom of
      each one.
      This is useful, for example, to pass syslog configuration
      or the (yet to be implemented) definition of multiple vlans for
      etherbone and the wr fabric (frame classes 7 and 6 f the packet
      filter). Moreover, I personally love to load a master or slave node
      for testing without interacting with the node (or changing the flash
      over and over).
      This commit also makes reading of commands from storage an optional
      feature, but only in the advanced/developer options. Thus, you can
      build a wrpc that uses the build-time init commands, or the
      flash-stored init commands, both or none of them.
      Size effects:
           * no effect if you keep the defaults (no build-time init, flash init)
           * +248 bytes (+ the command itself) if you enable build-time init
           * -1696 bytes if you remove flash-based init (discouraged)
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
  20. 15 Feb, 2016 1 commit
  21. 20 Jan, 2016 7 commits
    • Alessandro Rubini's avatar
      pfilter: simplify the rule-set and make it stronger. Use one set only. · e35610a6
      Alessandro Rubini authored
      This changes the pfilter rule-set, to make it ready for vlan addition.
      Moreover, it removes the choice between three rule-sets and uses one
      that works for everyone (we'll add the vlan option later on).
      Moreover, we prepare for the option of peer-delay PTP and UDP-based PTP.
      As a side effect, one Kconfig option is removed.
      We know for sure that what goes to the "streamer" protocol
      is re-checked, so the streamer can get some "everything else", exactly
      like the 7S wr-nic (that sends to the host everything unused).
      This is the current rule set:
           - everything tagged is dropped
           - CPU: arp broadcast, not unicast (i.e. requests only).
           - CPU: PTP ethtype. Any mac address.
           - CPU: ICMP unicast, not broadcast.
           - CPU: UDP (uni/multicast), ports  bootpc, ptp-event, ptp-general.
           - Etherbone (class 7): UDP (uni/multicast) and port 0xebd0
           - Other fabric (class 6): anything not Etherbone (inverted class 7 bit)
      This counts up to 28 rules. We have 4 more rules available and we may
      add options, either at build time or run time to add udp ports or
      other ethertypes.  Or not...
      2 caveats:
        - frames for the CPU will have class bits 0x41 instead of 0x01, because
        everything not etherbone will receive bit 6. This is not a problem, as
        the CPU is not checking the class bits.
        - the wr-nic gateware, when using this new sw code base, must be
        changed to use classes 6 and 7 like everybody else, not classes 7
        and 5.
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
    • Alessandro Rubini's avatar
      general: remove TRACE_DEV (and shrink binary) · c24326a8
      Alessandro Rubini authored
      This removes TRACE_DEV(), turning it into pll_verbose() and wrc_verbose().
      The functions are enabled and disabled by kconfig, with defaults matching
      the previous behaviour.
      So nothing changes, but the binary is smaller because the previous
      wrc_debug_printf() was silent because of a run-time conditional
      (though hardwired false at build time). The condional is now at build
      time.  We save around 2k, between strings and calling code, in
      all wrc builds (nothing is saved in wrs, which is verbose by default,
      nor in devel_build_test_defconfig where all verbose options are on)).
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
      devel_build_test_defconfig: enable all verbose options
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
    • Alessandro Rubini's avatar
    • Alessandro Rubini's avatar
      config: rename CONFIG_ETHERBONE to CONFIG_IP · 53ac0936
      Alessandro Rubini authored
      Actually, Etherbone is in gateware, and this option only enables Internet
      Protocol in the software.  This fixes a long-standing misunderstanding.
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
    • Alessandro Rubini's avatar
      config: added a full configuration for ./MAKEALL · 014c5b4c
      Alessandro Rubini authored
      This configuration includes all developer options, so we are sure that
      ./MAKEALL is build-testing all the code (excluding the very-reduced
      pp_printf implementations).
      If you want to check which config options are used, please run
        grep '^config' Kconfig | tr '[a-z] ' '[A-Z]_' | while read n; do
          echo =========== $n
          grep -rhl "$n=" configs/*
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
    • Alessandro Rubini's avatar
    • Alessandro Rubini's avatar
      config: fix wrnic/nic_pfilter · c31bcc0b
      Alessandro Rubini authored
      CONFIG_WRNIC was not used, so it is now removed.
      CONFIG_NIC_PFILTER does it all
      Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>