White Rabbit Switch - Software:ffdd27e1dd569d06a464d28e34964f9d9bc19522 commitshttps://ohwr.org/project/wr-switch-sw/commits/ffdd27e1dd569d06a464d28e34964f9d9bc195222016-12-01T10:56:21Zhttps://ohwr.org/project/wr-switch-sw/commit/ffdd27e1dd569d06a464d28e34964f9d9bc19522userspace/libwr: remove at91_softpwm from libwr2016-12-01T10:56:21ZAdam Wujekadam.wujek@cern.ch
By this we drop support of wrs < 3.30. At least its fan.
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/ab15f874e359b44f1eaa5d1520fe446595bf80f0kernel:at91_softpwm: not use anymore2016-12-01T10:56:21ZFederico Vagafederico.vaga@cern.ch
On modern switches the fan are driver by a dedicated FPGA core
that does the PWM. This module is not necessary anymore and not even
the kernel patches to make this module work.
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9290"><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch"><img alt="Federico Vaga's avatar" src="https://secure.gravatar.com/avatar/4b8af29d6b4b6606c62b13d805ac22f7?s=32&d=identicon" class="avatar s16 avatar-inline" title="Federico Vaga"></a><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch">Federico Vaga</a> <<a href="mailto:federico.vaga@cern.ch" title="federico.vaga@cern.ch">federico.vaga@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/08e250b8731d2e5851e5eaaefcc99f2a2d90adf5userspace/libwr: use predefined constant for loops_per_msec2016-12-01T10:56:18ZAdam Wujekadam.wujek@cern.ch
Our software runs only on a single kind of CPU, so we don't need to calculate
it at every boot. The way how daemons are spawned at boot changed
since the function shw_udelay_init was written. Before daemons were spawned one
after another, now they are spawned at the same time and compete during
initialization phase for the CPU.
The loop calculating loops_per_msec was interrupted by few context switches.
When using the kernel 2.6.39, the problem was not visible and usually
loops_per_msec was estimated correctly.
However, introduction new kernel 3.16 lowered probability of getting
correct results. Probably due to the different behaviour of the scheduler.
Bug was found because HAL was not able to detect SFP with
vn=ZyXEL
pn=SFP-BX1310-10-D
vs=S131151000226
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/ecde84a675c17dee32f32c24b8219718c9e10ab7build: use BRVER for buildroot version2016-12-01T10:55:40ZAdam Wujekadam.wujek@cern.ch
Explicitly define which version of buildroot should be used.
It solves problem when there is more than one directory matching build/buildroot-2*
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/304dcae89581af5c65b68a03566d9c1cc72fa804userspace/snmpd: don't crash when number of kernel modules greater than expected2016-12-01T10:55:40ZAdam Wujekadam.wujek@cern.chSigned-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/66839567b33640cab9af2948f41c5aba2686d326userspace:initab: document why minit.sh is here2016-12-01T10:55:40ZFederico Vagafederico.vaga@cern.chSigned-off-by: <span data-trailer="Signed-off-by:" data-user="9290"><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch"><img alt="Federico Vaga's avatar" src="https://secure.gravatar.com/avatar/4b8af29d6b4b6606c62b13d805ac22f7?s=32&d=identicon" class="avatar s16 avatar-inline" title="Federico Vaga"></a><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch">Federico Vaga</a> <<a href="mailto:federico.vaga@cern.ch" title="federico.vaga@cern.ch">federico.vaga@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/5bd11a954f857f579c180ef9e152e8a40be85627userspace:tools: remove unused variable in wr_mon2016-12-01T10:55:40ZFederico Vagafederico.vaga@cern.ch
The variable is unused because there is no need to use it. The color is
white by default; indeed, this variable was set to "WHITE" everytime, but
then not used.
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9290"><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch"><img alt="Federico Vaga's avatar" src="https://secure.gravatar.com/avatar/4b8af29d6b4b6606c62b13d805ac22f7?s=32&d=identicon" class="avatar s16 avatar-inline" title="Federico Vaga"></a><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch">Federico Vaga</a> <<a href="mailto:federico.vaga@cern.ch" title="federico.vaga@cern.ch">federico.vaga@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/df775e03804ffab9b19d8ea73d9adf026e2c9f9bkernel: export ARCH and CROSS_COMPILE to all modules2016-12-01T10:55:40ZFederico Vagafederico.vaga@cern.ch
Today it is not really important to do this because all our modules are
within the project itself. But, at somepoint, we may use submodules
in order to integrate drivers from external sources; so, we need to export
our default values because we will not have control over the other projects
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9290"><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch"><img alt="Federico Vaga's avatar" src="https://secure.gravatar.com/avatar/4b8af29d6b4b6606c62b13d805ac22f7?s=32&d=identicon" class="avatar s16 avatar-inline" title="Federico Vaga"></a><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch">Federico Vaga</a> <<a href="mailto:federico.vaga@cern.ch" title="federico.vaga@cern.ch">federico.vaga@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/daa99f8096b7159b1bbad5c0713fe2d40e83b9b4userspace:startup: make clear why FPGA and LM32 must be programmed in order2016-12-01T10:55:40ZFederico Vagafederico.vaga@cern.chSigned-off-by: <span data-trailer="Signed-off-by:" data-user="9290"><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch"><img alt="Federico Vaga's avatar" src="https://secure.gravatar.com/avatar/4b8af29d6b4b6606c62b13d805ac22f7?s=32&d=identicon" class="avatar s16 avatar-inline" title="Federico Vaga"></a><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch">Federico Vaga</a> <<a href="mailto:federico.vaga@cern.ch" title="federico.vaga@cern.ch">federico.vaga@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/978907f904f3ef1cff8d2b230afbf70665cf770duserspace:startup: verify that the FPGA bitstream has been programmed2016-12-01T10:55:40ZFederico Vagafederico.vaga@cern.chSigned-off-by: <span data-trailer="Signed-off-by:" data-user="9290"><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch"><img alt="Federico Vaga's avatar" src="https://secure.gravatar.com/avatar/4b8af29d6b4b6606c62b13d805ac22f7?s=32&d=identicon" class="avatar s16 avatar-inline" title="Federico Vaga"></a><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch">Federico Vaga</a> <<a href="mailto:federico.vaga@cern.ch" title="federico.vaga@cern.ch">federico.vaga@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/3d9f88f79d26822b3321d2643dccf80b9f5574e9userspace:init: remove everything from /dev/shm at boot2016-12-01T10:55:40ZFederico Vagafederico.vaga@cern.ch
We want '/dev/shm' to be empty at boot time. It may happen that
while working with rootfs over NFS this directory is not empty.
With this patch we remove all files from this directory because
they should not be there at all.
What if I put something there on purpose? When using tmpfs,
files in '/dev/shm' will be automatically removed on shutdown.
We are keeping the same behavior. Put your own development files
in '/dev/shm' after the execution of this script by copying them
from another location.
Again, if we use rootfs over NFS and if tmpfs does not work then
the system will use the NFS and the system should continue to work.
In this case the performances will be much worst
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9290"><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch"><img alt="Federico Vaga's avatar" src="https://secure.gravatar.com/avatar/4b8af29d6b4b6606c62b13d805ac22f7?s=32&d=identicon" class="avatar s16 avatar-inline" title="Federico Vaga"></a><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch">Federico Vaga</a> <<a href="mailto:federico.vaga@cern.ch" title="federico.vaga@cern.ch">federico.vaga@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/c8ed6e760ea09115ac0ed31808a039306285fc64kernel:wr_rtu: add missing header2016-12-01T10:55:40ZFederico Vagafederico.vaga@cern.chSigned-off-by: <span data-trailer="Signed-off-by:" data-user="9290"><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch"><img alt="Federico Vaga's avatar" src="https://secure.gravatar.com/avatar/4b8af29d6b4b6606c62b13d805ac22f7?s=32&d=identicon" class="avatar s16 avatar-inline" title="Federico Vaga"></a><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch">Federico Vaga</a> <<a href="mailto:federico.vaga@cern.ch" title="federico.vaga@cern.ch">federico.vaga@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/8984921b4d8219a25b8fa1fc5fa164a62410157ckernel:wr_nic: fix printk string format2016-12-01T10:55:40ZFederico Vagafederico.vaga@cern.chSigned-off-by: <span data-trailer="Signed-off-by:" data-user="9290"><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch"><img alt="Federico Vaga's avatar" src="https://secure.gravatar.com/avatar/4b8af29d6b4b6606c62b13d805ac22f7?s=32&d=identicon" class="avatar s16 avatar-inline" title="Federico Vaga"></a><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch">Federico Vaga</a> <<a href="mailto:federico.vaga@cern.ch" title="federico.vaga@cern.ch">federico.vaga@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/54f423ae4fdfeac1d02a1fabf9c9ea83649c0296build:kernel: use variable to store version2016-12-01T10:55:40ZFederico Vagafederico.vaga@cern.ch
This way, next time we want to update the kernel we have just to change
the version without touching too much the code
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9290"><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch"><img alt="Federico Vaga's avatar" src="https://secure.gravatar.com/avatar/4b8af29d6b4b6606c62b13d805ac22f7?s=32&d=identicon" class="avatar s16 avatar-inline" title="Federico Vaga"></a><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch">Federico Vaga</a> <<a href="mailto:federico.vaga@cern.ch" title="federico.vaga@cern.ch">federico.vaga@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/722c336475bd2d6b199887dee2b3d2e5dfc646deuserspace:init: get kernel version at runtime2016-12-01T10:55:40ZFederico Vagafederico.vaga@cern.ch
The kernel version is hardcoded here. Take it at runtime by using
`uname -r`. This will reduce incompatibilities on kernel updates
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9290"><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch"><img alt="Federico Vaga's avatar" src="https://secure.gravatar.com/avatar/4b8af29d6b4b6606c62b13d805ac22f7?s=32&d=identicon" class="avatar s16 avatar-inline" title="Federico Vaga"></a><a href="https://ohwr.org/FedericoVaga" title="federico.vaga@cern.ch">Federico Vaga</a> <<a href="mailto:federico.vaga@cern.ch" title="federico.vaga@cern.ch">federico.vaga@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/9432210de322125a0f44994fe1f8a378add16289userspace/ppsi: uplift ppsi, use /etc/ppsi.conf as default config file2016-12-01T10:55:40ZAdam Wujekadam.wujek@cern.ch
Complement of a commit:
<a href="/project/wr-switch-sw/commit/02bb615327be128898c7a759111fa2834a5baf78" data-original="02bb6153" data-link="false" data-link-reference="false" data-project="10713" data-commit="02bb615327be128898c7a759111fa2834a5baf78" data-reference-type="commit" data-container="body" data-placement="bottom" title="rootfs: use /etc/ppsi.conf not /wr/etc/ppsi.conf" class="gfm gfm-commit has-tooltip">02bb6153</a> rootfs: use /etc/ppsi.conf not /wr/etc/ppsi.conf
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/afa7361d61c635cd9a54a988bc8156b81b6a1bdeppsi: new commits for pdelay and more2016-12-01T10:52:30ZAdam Wujekadam.wujek@cern.chSigned-off-by: <span data-trailer="Signed-off-by:" data-user="9028"><a href="https://ohwr.org/rubini" title="rubini@gnudd.com"><img alt="Alessandro Rubini's avatar" src="https://secure.gravatar.com/avatar/18e4fb369cda4873020839db5911d1d1?s=32&d=identicon" class="avatar s16 avatar-inline" title="Alessandro Rubini"></a><a href="https://ohwr.org/rubini" title="rubini@gnudd.com">Alessandro Rubini</a> <<a href="mailto:rubini@gnudd.com" title="rubini@gnudd.com">rubini@gnudd.com</a>></span>https://ohwr.org/project/wr-switch-sw/commit/8d5ed9f3f71847b14118e8ac392d084cab848bf0Merge branch 'adam-fix_hal_high_load'2016-12-01T10:48:30ZAdam Wujekadam.wujek@cern.chhttps://ohwr.org/project/wr-switch-sw/commit/9b27811ec0511326265dd9471e63efb0a911fb0cuserspace/libwr: (no tech change) rename get_monotonic_tics() to get_monotoni...2016-12-01T10:46:16ZAdam Wujekadam.wujek@cern.ch
Make clear what kind of resolution get_monotonic_tics function returns (micro
seconds).
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/8be9b1029dac353c04d2e8b6706f7b2a1e546955userspace/wrsw_hal: reduce a load of HAL2016-12-01T10:45:27ZAdam Wujekadam.wujek@cern.ch
Fix the bug introduced by a commit:
<a href="/project/wr-switch-sw/commit/291a32c76577c77260317a5322d69cc80aa6d1a7" data-original="291a32c7" data-link="false" data-link-reference="false" data-project="10713" data-commit="291a32c76577c77260317a5322d69cc80aa6d1a7" data-reference-type="commit" data-container="body" data-placement="bottom" title="userspace/wrsw_hal: use get_monotonic_* instead of clock_gettime" class="gfm gfm-commit has-tooltip">291a32c7</a> userspace/wrsw_hal: use get_monotonic_* instead of clock_gettime
get_monotonic_tics() return a value in us resolution, so to get ms it has to be
divided by 1000, not multiplied.
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/dfcea15f00442f588536b6a039a1b7b4aca26e17Merge branch 'sfp_diag'2016-11-03T16:17:32ZAdam Wujekadam.wujek@cern.ch
--Read DOM (Diagnostic Monitoring data) data from SFPs
--Fix the write to SFPs eeprom
--store DOM data in the HAL's shmem
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/579646e4410f4c464ebcb819db16ce57e804ec7cuserspace/libwr: Fixes to make shw_write_sfp() actually write SFP eeproms2016-11-03T16:16:39ZPaul Bovenboven@jive.eu
The SFP documentation "INF-8047.pdf" states:
"The serial interface uses the 2-wire serial CMOS E2PROM protocol defined for
the ATMEL AT24C01A/02/04 family of components."
Upon reading that datasheet, some important details stand out:
1) The eeprom can only write in pages, with pages being 8 or 16 bytes. Assuming
the smallest device, you can only write 8 bytes at a time. To be safe, I'm
assuming a pagesize of 8 bytes.
This explains why we only saw stuff change in the first 8 bytes, I guess.
2) A write needs to be preceded by the byte address which is a single byte for
these devices, and then up to 8 (or 16) data bytes to be written at that
location. If there are more bytes, or if the data wraps around the page
binary, it will still only end up on the page belonging to that first
address.
3) After writing, you need to poll the eeprom to see if it has finished writing
the byte. At the moment, I'm not doing that yet, instead I'm doing a 10ms
wait which seems sufficient.
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9273"><a href="https://ohwr.org/PaulBoven" title="boven@jive.eu"><img alt="Paul Boven's avatar" src="https://secure.gravatar.com/avatar/5a717ce9c62aba1e238149583cb87bd4?s=32&d=identicon" class="avatar s16 avatar-inline" title="Paul Boven"></a><a href="https://ohwr.org/PaulBoven" title="boven@jive.eu">Paul Boven</a> <<a href="mailto:boven@jive.eu" title="boven@jive.eu">boven@jive.eu</a>></span>
Acked-by: <span data-trailer="Acked-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/3f05b29c757613fe4e745c580541fe066016ac3cuserspace/wrsw_hal: save Diagnostic Monitoring data from SFP in HAL2016-11-03T16:16:37ZAdam Wujekadam.wujek@cern.ch
Kconfig:
--add CONFIG_READ_SFP_DIAG_ENABLE
libwr:
--add the function shw_sfp_update_dom to update only needed values in the future
--increase HAL_SHMEM_VERSION due to the changes in structures
wrs_dump_shmem
--add new fields
HAL:
--read DOM (Diagnostic Monitoring data) from SFP's eeprom at plug and once
per second
PPSI:
--uplift hal shmem header
wrs_sfp_dump:
--support reading SFP's DOM from HAL
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/de57d4ae54d763c1c5f81190cab075b1c018d22duserspace/libwr: read temperatures from SFPs2016-11-03T16:13:51ZAdam Wujekadam.wujek@cern.chSigned-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/79f88bdfed0fb8ea7003f550c1e7bc1455e7a4a4userspace/ppsi: uplift ppsi with pdelay code2016-11-03T16:11:20ZAdam Wujekadam.wujek@cern.ch
It fixes the bug described in the commit:
userspace/ppsi: uplift ppsi with compliance
(problem with "Support E2E build without P2P. Saves 5kB in wrpc-sw")
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/26c08a514604997085d81653e248847999322b02userspace/ppsi: uplift fixes of shmem in ppsi2016-11-03T16:09:52ZAdam Wujekadam.wujek@cern.chSigned-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/4060619b1cefa8b2807a8224af549f368134e0dcuserspace/ppsi: uplift ppsi with compliance2016-11-03T16:09:52ZAdam Wujekadam.wujek@cern.ch
This commit includes the commit in ppsi
"Support E2E build without P2P. Saves 5kB in wrpc-sw"
However when the option "Avoid building P2P code" is not enabled in
the ppsi's dot-config then I'm getting zeros in the wr_mon or the ppsi exits
with the message:
ERROR: failure in "clock_settime": Invalid argument
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/0af4f128a5065b8d0600f531dd1b5c9520f12b6auserspace/snmpd: don't print dot-config_source_url not found when try_dhcp2016-11-02T17:09:00ZAdam Wujekadam.wujek@cern.ch
Such error was printed to the syslog
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/5116833fad17f225e6f394edc9ed72f8d041d4a9Merge branch 'adam-shmem'2016-09-30T12:10:16ZAdam Wujekadam.wujek@cern.chSigned-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/77d598e4d3ac5733e6c77da188dfe732480a1423userspace/libwr: printout more details when wrs_shm_write is called2016-09-30T12:07:08ZAdam Wujekadam.wujek@cern.ch
It might be usefull to know whether caller wanted to lock or unlock the shmem
and which shmem.
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/b5ad0f12fdc4e60e4b2a19dc160fa4534277eb41userspace/libwr: in shmem, use pointers to structs intead of void pointers2016-09-30T12:07:08ZAdam Wujekadam.wujek@cern.ch
In shared memory functions take as parameters pinters to structures instead
of void pointers. By this compiler will warn when wrong type of pointer is
passed. For example when pointer to the data in shmem is passed instead of
pointer to the header.
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/8746815fb7da73b587a67e05efaaf59bb46f116duserspace/ppsi: uplift ppsi to follow changes in the shmem2016-09-30T12:07:08ZAdam Wujekadam.wujek@cern.chSigned-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/5c8eef33b388f942e367f36dd5bd261d511b7642userspace/libwr: update checking return val of wrs_shm_get_and_check2016-09-30T12:07:08ZAdam Wujekadam.wujek@cern.ch
Update callers of wrs_shm_get_and_check to recognize return value
WRS_SHM_INCONSISTENT_DATA. Update to use defined values instead of numbers.
Update:
--snmpd
--tools/rtu_stat
--tools/wr_mon
--tools/wr_phytool
--tools/wrs_sfp_dump
--tools/wrs_vlans
--wrs_watchdog
--wrsw_rtud
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/25028e46093bcd203c8028281a89d3ef547bcdaeuserspace/libwr: check shmem consistency in wrs_shm_get_and_check2016-09-30T12:07:08ZAdam Wujekadam.wujek@cern.ch
Check the consistency of shmem during opening with wrs_shm_get_and_check.
It was possible that sequence number was increased during the opening, but it
was interpreted as version error.
Add defines describing different return errors.
This change is backward compatible.
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/477f1cefdfed340bcb9045816dd0afe58eb4c178userspace/libwr: improve locking of shmem2016-09-30T12:07:08ZAdam Wujekadam.wujek@cern.ch
Keep explicitly lock bit in the sequence variable as a LSB bit.
This solution is backward compatible. The difference is only when shmem is
lock twice. Before it was treated as unlocked, now still as a lock.
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/656c655925980283629a6c11cd0bda91c8c7bfbfuserspace/libwr: Print error message on multiple shmem locks2016-09-30T12:07:08ZAdam Wujekadam.wujek@cern.ch
Print error message when shmem is locked or unlocked multiple times.
To be precise it will print error only on even locks or unlocks.
Move the increment of sequence before checking the flags to simplify further
if-conditions.
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/2305ff10c1c807559956034a480e8635ac463de7userspace/wrsw_rtud: fix double locking a shmem on write2016-09-30T12:07:08ZAdam Wujekadam.wujek@cern.ch
Remove excessive locks from the function delete_htab_entry.
Function rtu_fd_commit is always guarded with shmem lock. The function
rtu_fd_commit calls rtu_hw_commit, which calls delete_htab_entry. By this
function wrs_shm_write with a parameter WRS_SHM_WRITE_BEGIN was called twice
before it was called twice with a parameter WRS_SHM_WRITE_END.
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/1b6788cb90d29d7e0012ee1e0040cbc7ce09a156userspace/wrsw_hal: add locking shmem on write2016-09-30T12:07:08ZAdam Wujekadam.wujek@cern.ch
Lock HAL's shmem on write to let a reader know about potential inconsistent
data
List below indicates which functions requires a lock (marked as "UPDATE").
minipc:
--halexp_lock_cmd:
--hal_port_enable_tracking - not
--hal_port_start_lock - UPDATE
--hal_port_check_lock - not
--halexp_pps_cmd
--rts_adjust_phase - not
--shw_pps_gen_adjust - not
--shw_pps_gen_busy - not
--hal_port_pshifter_busy - not
--shw_pps_gen_enable_output - not
hal_port_update_all:
--poll_rts_state - not
--hal_port_poll_sfp:
--shw_sfp_module_scan - not
--hal_port_insert_sfp - UPDATE
--hal_port_remove_sfp - UPDATE
--hal_port_fsm - UPDATE
Signed-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/d8a817b8a15b11a5bd42cb7c587f6e8de1385b59[Feature: 1101] Merge branch 'adam-vlans' adding VLANs configuration in dot-c...2016-09-30T12:06:37ZAdam Wujekadam.wujek@cern.chSigned-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>https://ohwr.org/project/wr-switch-sw/commit/73f319c58d5d8b74bb5c2a097ad809dda4582240doc/wrs-user-manual: add the description of VLANs configuration2016-09-30T12:05:19ZAdam Wujekadam.wujek@cern.chSigned-off-by: <span data-trailer="Signed-off-by:" data-user="9297"><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch"><img alt="Adam Wujek's avatar" src="https://secure.gravatar.com/avatar/bee62ad02d8f8c7c40900167722fb9d3?s=32&d=identicon" class="avatar s16 avatar-inline" title="Adam Wujek"></a><a href="https://ohwr.org/awujek" title="adam.wujek@cern.ch">Adam Wujek</a> <<a href="mailto:adam.wujek@cern.ch" title="adam.wujek@cern.ch">adam.wujek@cern.ch</a>></span>