- Jan 21, 2025
-
-
Adam Wujek authored
To e.g. be able tl check help message if another instance is running. Signed-off-by:
Adam Wujek <dev_public@wujek.eu>
-
- May 08, 2023
-
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <dev_public@wujek.eu>
-
- Mar 31, 2020
-
-
Maciej Lipinski authored
-
Maciej Lipinski authored
Make sure that the status LED does go green before the LPDC tx calibration is finished.
-
- Oct 11, 2019
-
-
Jean-Claude BAU authored
The time-out was set before to 10ms to accelerate the TX and RX calibration process. After making some measures, it appears that it does affect the calibration time.
-
Jean-Claude BAU authored
-
-
Jean-Claude BAU authored
NOTE: work ported from Tom's commits on Low Phase Drift Calibration
-
Jean-Claude BAU authored
- Change method names - Change variable location - Change includes - ...
-
Jean-Claude BAU authored
New implementation of HAL using sub state machines. The objective is to facilitate the integration of the new feature "Low Phase Drift Calibration" which needs two new state machines. The HAL state machine is available by opening the hal.html file
-
- Jun 26, 2019
-
-
Maciej Lipinski authored
Logger can interpret get log facility & level (error, info, etc) from log message if such info is provided properly. I.e. it needs to be enclosed in <> and the first thing in the message. The wrs-msg.c file in the libwr was changed such that the log facility & level ares properly printed in log messages, and thus later properly interpreted by the syslog elastic search on the server. For this, wrs_msg lib needs to know the faciltiy of the application that uses it. Thus, the wrs_msg_init() function was updated (in the library and all its calls in applications)
-
- Dec 02, 2016
-
-
Adam Wujek authored
In hal_main.c, use timeout functions from libwr. Use two different timeouts for temperature/fan updates and for port information. In hal_ports.c use different timeouts for sync LEDs, link LEDs and SFPs' DOMs updates. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
- Dec 01, 2016
-
-
Adam Wujek authored
Make clear what kind of resolution get_monotonic_tics function returns (micro seconds). Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Fix the bug introduced by a commit: 291a32c7 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:
Adam Wujek <adam.wujek@cern.ch>
-
- Sep 30, 2016
-
-
Adam Wujek authored
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:
Adam Wujek <adam.wujek@cern.ch>
-
- Aug 11, 2016
-
-
Adam Wujek authored
Hal creates shmem before waiting for SoftPLL to lock. By this other programs waiting for HAL's shmem can start. Please note that after this fix PPSi does not create shmem before lock. It waits for HALs minipc server to be ready. Before shmem is created, read hal mode first. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
- Mar 02, 2016
-
-
- Feb 24, 2016
-
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
- Feb 18, 2016
-
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
- Feb 05, 2016
-
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
- Aug 11, 2015
-
-
Adam Wujek authored
There was a problem with calculating fan timeout in libwr. Problem occurs when there was a jump back in time. Since gettimeofday was used, delta for timeout calculation became negative. One solution was to use monotonic clock like in main function of HAL, or use the same timeout calculations as main function. Second solution was chosen since it is much simpler. --remove calculation of fan/temperature read timeout in function shw_update_fans --remove function shw_pwm_update_timeout and variable fan_update_timeout from libwr/fan.c as not needed anymore --remove function shw_get_tics from libwr/util.c and libwr/util.h (not needed anymore) --remove SHW_FAN_UPDATETO_DEFAULT from libwr/fan.h (not needed anymore) --increase PORT_FAN_MS_PERIOD to 250ms (trade-off 200ms of port update and 500ms of temperatures update) --remove increasing t1 in HAL;s main, since t1 was overwritten anyway by t2. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
- Jul 22, 2015
-
-
Alessandro Rubini authored
And force the compiler to complain. It used to be on by default, bah.... Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Meanwhile, this cleans up declaration of functions that were not prototypes in wrsw_hal. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- Jul 06, 2015
-
-
Adam Wujek authored
Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
- Jun 29, 2015
-
-
Adam Wujek authored
It is good to have in logs when and what version of hal started. Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
- Jun 18, 2015
-
-
Adam Wujek authored
--Move assert_init macro to libwr/wrs-msg.h --Add printout to assert_init macro to know which function fails. --Remove assert_init macro duplication from rsw_hal/hal_main.c --Remove #include <libwr/shw_io.h> from libwr/shw_io.h (no need to include file from itself) Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
- Mar 04, 2015
-
-
Adam Wujek authored
HAL at update of fan speed reads Switch's temperature sensors. Sensors read: -FPGA -PLL (was read before to drive PWM for fan) -Power supply left -Power supply right Additionally: -add hal_temp_sensors structure to hal shmem, add current temperature and threshold values (to be implemented in later commits) -increment HAL_SHMEM_VERSION -update hal_shmem.h in ppsi -update dump_shmem with new structure, add specific type for temperature sensors -in hal_ports.c --rename struct wrs_shm_head *head to struct wrs_shm_head *hal_shmem_hdr --remove void *hal_port_shmem as not needed, --make struct hal_shmem_header *hal_shmem extern, defined in hal_main.c Signed-off-by:
Adam Wujek <adam.wujek@cern.ch>
-
- Jan 16, 2015
-
-
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- Jan 06, 2015
-
-
Alessandro Rubini authored
run hal_ports_update_all() only 5 times per second (with some jitter). However the overall load is not lowered. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Every two months I've been wondering what this 100%-cpu main loop was, to later acknowledge it was not really 100%. This commit reorders items and makes it clear where the delay is. I tried raising it to 100ms from 25ms, but the cpu load of wrsw_hal didn't change, because most of the time we return to the main loop before the timeout, due to an RPC call being served. In my opinion we should add a check in the main loop, to call port_update_all only 10 times per second, to actually lower the CPU load of this process. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- Jan 04, 2015
-
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
This commit uses dot-config (previous commit), in exactly the same way as previous code. No change in behaviour is there, as confirmed by looking at shared memory values. However, the alpha value is not part of the SFP definition any more, but it is part of the fiber type (later commits). So it is currently hardwired in the code, matching previous config values. The data structures are slightly changed, so the version in shared memory is increased too. wrs_dump_shmem is updated at the same time and ppsi is updated to get the new headers. As a side effect, this uses calloc() instead of malloc(), and sets a sensible (though unused) value in the "flags" field of the sfp data. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
This commit uses dot-config (previous commit), in exactly the same way as previous code. No change in behaviour is there, as confirmed by looking at shared memory values. As a side effect, the ports as listed in shared memory (wrs_dump_shmem) are in the right order instead of random order (this was due to use of lua's hash functions). Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
- Nov 28, 2014
-
-
Alessandro Rubini authored
This has no effect on the code functionality. Even if it affects libwr, this is a hal-only change. The functions in libwr that the hal itself uses, now receive a pointer to ports[], which is thus back a static pointer within wrsw_hal/hal_ports.c. This change allows moving the RPC queries to be shared memory lookups, by using the ports[] pointer in the client; so both the client and the server can access the same shared mamory using libwr functions. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
This allows other process to access port information without making several RPC calls. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
The stdout and stderr of the basic WR tools are piled to the "logger" process, to get actual logs saved, if so configured for. Thus, we should not reopen the output channels to /dev/null Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-
Alessandro Rubini authored
This is the first step to move the "get_port_state" query to shared memory. The internal structures of hal_ports.c will be allocated in shared memory, so the calls to halexp_* will just convert the data, without context-switching to the hal process. I couldn't add the functions to libwr/hal_client.c where they belong, because the choice of using the same "halexp" names for local and remote calls would lead to duplicate symbol definitions when linking the hal (the hal process links libwr, but can't link hal_client.o). Thus, libwr/hal_shmem.c is created, to host the parts of hal/hal_ports.c that are needed to convert data. Signed-off-by:
Alessandro Rubini <rubini@gnudd.com>
-