- Feb 11, 2014
-
-
Alessandro Rubini authored
The commit is part of the effort in unifying softpll with wr-switch-sw, and later remove the duplicated code there. The files added by these commit are going to be built when configuring wrpc-sw to build wr-switch rt_cpu (which is, basically, the softpll code alone, with mini-rpc with the host and the basic glue code). The files are copied with the original name with two exceptions: wr-switch-sw::rt/main.c becomes wrpc-sw::wrs_main.c wr-switch-sw::rt/arch/lm32/ram.ld becomes wrpc-sw::arch/lm32/ram-wrs.ld The files are copied from commit FIXME of wr-switch-sw. This commit has no technical effect, as the files are not built for wrpc-sw. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
softpll is built for both wrc and wrs; since it includes wrc.h and syscon.h, we must make them suitable for both environments. Waiting for the time and energies for a better merge, this uses ifdef to differentiate the two cases: the timer code is different (different prototypes) and the clock frequency is different as well (125 vs 62.5 MHz). Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
include/trace.h is different in wr-switch. This uses an ugly ifdef to make wr-switch rt_cpu code build here unmodified. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
This has no effect on wrc.bin: board.h is renamed into board-wrc.h and included by the new board.h. The new board-wrs.h is copied from wr-switch-sw/rt/include/board.h Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
This has no effect on wrc.bin. The commit unifies the directory softpll/ between wr-switch and wr-node. No differences are left. This is an ugly ifdef, but I prefer merging the code base (removing duplicates) before addressing the configuration problem. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
The commit is part of the effort in unifying softpll with wr-switch-sw, and later remove the duplicated code there. 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>
-
- Feb 10, 2014
-
-
Grzegorz Daniluk authored
-
- Feb 09, 2014
-
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- Feb 06, 2014
-
-
Grzegorz Daniluk authored
-
+ Added information about the refresh command + Deleted references about "stat cont" command ("stat" command works as it now) + Modified the stat examples of "Running the Core" section
-
- Add new command "refresh" to change update period of gui and stat - Delete "stat cont" command - Update "stat" command to work as older "stat cont" one - Update the wrc_main.c file to check if the log messages must be generated one time Note: If you set period to 0, the log messages are only generated one time.
-
- Added the NIC_PFILTER configuration option in Kconfig to decide which filter rules will be used. - Updated the dev/ep_pfilter.c file by using the CONFIG_NIC_PFILTER macro. This is done because packet filter does not work correctly if we write all rules in the CONFIG_ETHERBONE section. - We do not use the DROP instruction because all other packets go to NIC core. Notes: - The filter rules to the wr-nic do not have the DROP instruction because all traffic does not go to the LM32/Etherbone is re-direct to the NIC by default. - The NIC_PFILTER configuration option depends on ETHERBONE one. - Magic number of Etherbone packets is not checked due to the number of rules. (The packet filter is not able to classify correctly)
-
- Jan 17, 2014
-
-
- Added CONFIG_WRNIC in Kconfig to decide which filter rules will be use. - Updated ep_pfilter using CONFIG_WRNIC. - We do not use drop because all other packet goes to NIC core. Note: filter rules to wr-nic do not have DROP instruction because all traffic does not go to LM32/Etherbone is re-direct to NIC by default.
-
- Jan 14, 2014
-
-
Grzegorz Daniluk authored
It becomes a problem when WRPC works in 16-bit PCS mode. In such case bitslide value is 5bit and masking it with 0xF could cause wrong bts once in a while.
-
- Dec 20, 2013
-
-
Grzegorz Daniluk authored
-
- Dec 18, 2013
-
-
Grzegorz Daniluk authored
Too large value of ld.threshold causes aligning 1-PPS to a wrong, not completely locked 10MHz clock. That produces 1-PPS output at a random place each time the GrandMaster is re-locked.
-
Grzegorz Daniluk authored
-
- Dec 17, 2013
-
-
Grzegorz Daniluk authored
It was too many instructions and for small frames pfilter was not able to execute them before the end of frame.
-
- Dec 16, 2013
-
-
[t24-fix]: rewritten RX timestamp linearization (phase + counter merging) algorithm to be easier to understand. For more info, check the note in the Documents section of the wrpc-sw project on ohwr.org.
-
- Dec 02, 2013
-
-
Grzegorz Daniluk authored
-
- Nov 15, 2013
-
-
Grzegorz Daniluk authored
-
- Nov 14, 2013
-
-
Grzegorz Daniluk authored
-
-
- Nov 13, 2013
-
-
Grzegorz Daniluk authored
-
Grzegorz Daniluk authored
-
Grzegorz Daniluk authored
-
Grzegorz Daniluk authored
-
Alessandro Rubini authored
Etherbone won't fit with a full ppsi in the default RAM size for SPEC cards. So this commit uses a ppsi hack to avoid internal ptpdump, activating it when CONFIG_RAMSIZE is not 128kB and CONFIG_ETHERBONE is set. We should rather compare RAMSIZE with "< 131072", but neither gnu make nor this version of Kconfig support numeric comparison. This hack will soon disappera, as ppsi is gaining Kconfig support, so wrpc-sw will be able to pass proper configuration. Also, 128kB will soon be the default for SPEC images. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- Nov 12, 2013
-
-
Grzegorz Daniluk authored
-
Grzegorz Daniluk authored
-
- Nov 07, 2013
-
-
Grzegorz Daniluk authored
-
Grzegorz Daniluk authored
Previous one was not working when: * tR and tF were both inside (0; 4000) and tR < tF * tR and tF were both inside (4000; 8000) and tF < tR in those cases it was calculating ttrans around falling edge instead of rising edge. This commit fixes it.
-
After subtraction of transition value from linearized phase, the phase value was renormalized to 0...clock_period-1, but not the other counters. This resulted in very rare 8ns jumps.
-
The phase was used backwards. Somehow this cancelled out the systematic error introduced by the actual bug (wrong phase offset). When both bugs are fixed the code seems to work every time.
-
t24p calibration finds the rising&falling edges in dev/rxts_calibrator.c:rxts_calibration_update. It then computes the "transition" as (falling+rising)/2. That is, ttrans points 25% past the dangerous transition. Now that value arrives in one of the three copies of ptpd_netif_linearize_rx_timestamp (depending on build). In this method ttrans has +-1/4 period added to it to compute trip_lo and trip_hi. The intent as described by the comment (and common sense) is to avoid the rising edge when the phase is within +-1/4 period. Unfortunately, this code assumes that ttrans IS the rising edge, when in fact it is the rising edge+25%. Thus, the code ACTUALLY tests phase within 0-50%.
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
This fixes the previous commit, which prevented to build wrpc-sw with CONFIG_PTP_NOPOSIX (silly me). Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- Nov 04, 2013
-
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-