summaryrefslogtreecommitdiff
path: root/cesar
AgeCommit message (Collapse)Author
2012-12-12cesar/mac/sar: add jobs stats, refs #3344Nélio Laranjeiro
* Count number of jobs * Count number of waiting jobs (those which does not have a buffer)
2012-12-12cesar/mac/sar: add a config item to allow the creation of LID MFS, refs #3344Nélio Laranjeiro
2012-12-12cesar/mac/sar: avoid mfs cast in sar_clean__mfs_removeNélio Laranjeiro
2012-12-12cesar/mac/sar: add a config item to make MFS TX or RX permanent, refs #3344Nélio Laranjeiro
2012-12-12cesar/mac/sar: sort Config file, refs #3344Nélio Laranjeiro
2012-12-12cesar/cp/cco/action: fix EKS in NEK update process, closes #3346Yacine Belkadi
Periodically (each HPAV_NEK_CHANGE_MS), the CCO changes the NEK. It sends the new NEK and its EKS to the STA. The problem was that instead of sending a new EKS for the new NEK, it sent the current EKS. So the NEK update didn't work. On the first update, the STA was able to recover by sending a GET_KEY_REQ, but not on the second NEK update. So the traffic stopped after the second NEK update. Then the STA leaves the AVLN, re-joins, the cycle goes on. Below is the detailed explanation: Initially, after auth/assoc: CCO: Current: NEK[O] = { EKS:0, key:A }, Next: NEK[1] = { EKS:_, Key:_ } STA: Current: NEK[O] = { EKS:0, key:A }, Next: NEK[1] = { EKS:_, Key:_ } nek_change: CCO generates a new NEK (B), but because of data_req.new_eks = bsu_nek_index_current (ctx->bsu); in cp_av_cco_action_cm_set_key_cnf_receive, it sends the current EKS as the next one. So we get: CCO: Current: NEK[O] = { EKS:0, key:A }, Next: NEK[1] = { EKS:1, Key:B } STA: Current: NEK[O] = { EKS:0, key:A }, Next: NEK[1] = { EKS:0, Key:B } When the STA sees that the next EKS announced by the beacon is EKS=1, and that it doesn't have it, it sends a GET_KEY_REQ. The CCO responds with the correct new EKS and key. Thus we get: CCO: Current: NEK[O] = { EKS:0, key:A }, Next: NEK[1] = { EKS:1, Key:B } STA: Current: NEK[O] = { EKS:0, key:A }, Next: NEK[1] = { EKS:1, Key:B } and everything is fine on the nek_switch: CCO: Next: NEK[O] = { EKS:0, key:A }, Current: NEK[1] = { EKS:1, Key:B } STA: Next: NEK[O] = { EKS:0, key:A }, Current: NEK[1] = { EKS:1, Key:B } On the next nek_change, the CCO generates a new NEK (C). The exchange results in: CCO: Next: NEK[O] = { EKS:0, key:C }, Current: NEK[1] = { EKS:1, Key:B } STA: Next: NEK[O] = { EKS:1, key:C }, Current: NEK[1] = { EKS:1, Key:B } Then the STA sees new_EKS=0 in the beacon. It sends a GET_KEY_REQ. But when it receives the GET_KEY_CNF, it is unable to decrypt it. The received GET_Key_CNF was encrypted with { EKS:1, Key:B }. pbproc_frda__handle() looks in NEK[0] first and finds EKS:1, so it (wrongly) decrypts with Key:C. Thus, GET_KEY_CNF is not processed, the new NEK is not received, the STA resends a few GET_KEY_REQ in vain, traffic stops, and after a moment the STA leaves.
2012-12-11cesar/maximus/prototest/integration: embedded test no more usedThierry Carré
2012-12-11cesar/common/tools/traceviewer: add checkbox to show/hide all traces at ↵Yacine Belkadi
once, closes #3567
2012-12-11cesar/common/tools/traceviewer: support a hexadecimal delta/delay, closes #3541Yacine Belkadi
traceviewer now supports specifying a delay/delta in hexadecimal form. Like in: ---trace-bundle-begin[fatal=0x01ee7f41]--- or ---trace-begin[cp=0x01ee7f41]---
2012-12-06cesar/hal/clk/test: fix testsNicolas Schodet
2012-12-06cesar/hal/phy: use a different set of parameters for mode 500, refs #3431Nicolas Schodet
2012-12-06cesar/hal/clk: add dspclk_mhz parameter, refs #3431Nicolas Schodet
2012-12-06cesar/hal/clk: fix commentNicolas Schodet
2012-12-04cleo/buildroot/plcdrv: enable AES on MSE500, closes #3566Olivier Dufour
The plc rom works now for both SPC300 and MSE500.
2012-12-03cesar/mac/pbproc: increase tolerance on out of alloc detection, closes #3553Nicolas Schodet
2012-12-03cesar/mac/pbproc/test/int: move activate to thread contextNicolas Schodet
Fcalls are not done in thread context on maximus, which makes any synchronisation routine fails. This patch works around this problem.
2012-12-03cesar/mac/common/store: add bitqueue to find stations faster, refs #3340Nicolas Schodet
2012-12-03cesar/lib: add new bitqueue tool, refs #3340Nicolas Schodet
2012-12-03cesar/station: add lib/perf initNicolas Schodet
2012-11-30cesar/mac/ca: always lock ISR in ca_mfs_update/hold, closes #3453Nicolas Schodet
This is rest of old and slow ISR locking functions.
2012-11-30cesar/mac/ca: inline ca_mfs_update and ca_mfs_hold, refs #3453Nicolas Schodet
There is no tail call optimization on our sparc compiler, reduce call depth.
2012-11-30cesar/{hal/arch,ecos}: use a faster and smaller ISR lock, closes #3404Nicolas Schodet
Original eCos code used a trap to atomically change PSR. This is not needed on our system as PSR is always restored after an ISR execution, therefore read/modify/write sequence is safe. ET bit is cleared to lock ISR. This is acceptable as: - trap instruction is never used in our code, - on error trap, the CPU will stop, but this is the case yet due to DSU configuration (break on error), - no save or restore is used in flat mode, and therefore no window under/overflow. Clearing ET is simpler and faster. This is actually the solution which is used today on phy VSR which never sets ET.
2012-11-30cesar/project/plc: add high level for ilramNélio Laranjeiro
Add missing CONFIG_ARCH_ILRAM_PRIO_HIGH and replace last CONFIG_ARCH_ILRAM_PRIO to CONFIG_ARCH_ILRAM_PRIO_LOW.
2012-11-29cleo/buildroot: add MSE500 in bundle generation, closes #3418Olivier Dufour
BR2_TARGET_SPIDCOM_BOARD allows generic board configuration. BR2_TARGET_SPIDCOM_CHIP allows to use chip specific binaries. It is now easier to add a new board, and support multiple chips.
2012-11-29cesar/hal/arch: add two levels for ilram, closes #3457Nélio Laranjeiro
2012-11-29cesar/test_general/station/compliance: remove board compilationNélio Laranjeiro
2012-11-29cesar/hal/arch/dlink: do not assert if ILRAM2 is empty, refs #3459Cyril Jourdan
2012-11-29cesar/tools/sniffer_phy: implement boot params, refs #3459Cyril Jourdan
2012-11-07cesar/ce/rx/bl: remove tonemap update code, closes #3310Jalil Chemseddine
2012-11-07cesar/ce/rx/bl: remove tonemap update tests, refs #3310Jalil Chemseddine
2012-11-07cesar/hal/phy: add param to bypass Rx Filter (MSE500-300), closes #3415Yacine Belkadi
On MSE500, new bits are available in register "MAGIC parameters 3" to allow Rx Mem, MAGIC or MAFADESE to bypass the Rx filter. Add support for that. Get the parameters' values from http://stestephe/svn/spidcom_digital_svn/projects/DSP_350/DSP_chain/SW/ Phy_params_config, r19132
2012-11-05cesar/cp/msg: fix nf_mi for vs mme, closes #3437Thierry Carré
Factorize the header validation on unit tests for : - VS_GET_PB_STATS_CNF - VS_GET_MACTOTEI_CNF For this both mme, the condition is never satisfy to have the bug.
2012-10-31cesar/lib/trace: work around eCos snprintf bug, refs #673, closes #3434Nicolas Schodet
When the output buffer is too small, eCos snprintf returns the number of characters written instead of the needed space. Make sure this does not happen.
2012-10-31cesar/common/make: fix problem with coverage and eCos, closes #3454Nicolas Schodet
Problem introduced in 979d492489aac93721f90918efa4ed75250a162b.
2012-10-23cesar/tools/sniffer_phy: add missing ")", refs #3414Nélio Laranjeiro
2012-10-22cesar/mac/pbproc: add more function to ilram2, refs #3455Nélio Laranjeiro
2012-10-22cesar/mac/common: add mac_store_mfs_{get,add}_ to ilram2, refs #3455Nélio Laranjeiro
2012-10-22cesar/mac/ca: add ca_mfs_update* function to ilram2, refs #3455Nélio Laranjeiro
2012-10-22cesar/lib: add mac_lookup_table_find_* to ilram2, refs #3455Nélio Laranjeiro
2012-10-22cesar/bufmgr: add give back and get to ilram2, closes #3455Nélio Laranjeiro
2012-10-22cesar/hal/ipmbox: add function to ilram2, refs #3455Nélio Laranjeiro
2012-10-22cesar/cl: add functions to ilram2, refs #3455Nélio Laranjeiro
2012-10-22cesar/mac/sar: add some functions to ilram2 section, refs #3455Nélio Laranjeiro
2012-10-22cesar: use CALLBACK macro to register callbacks, refs #3414Nélio Laranjeiro
2012-10-22cesar/hal/arch: add ARCH_ILRAM2_PRIO with special behavior, refs #3414Nélio Laranjeiro
For ARCH_ILRAM_PRIO(n) < CONFIG_ARCH_ILRAM_PRIO = n, all function declared as ARCH_ILRAM_PRIO(n) with n > 1, are stored in ARCH_ILRAM2_PRIO(n). All CONFIG_ARCH_ILRAM2_PRIO With a PRIO = 0 the ILRAM2 is disabled.
2012-10-22cesar/common/tools: add ilram2 size verification to lram-size, refs #3414Nélio Laranjeiro
2012-10-22cesar/{common,eoc,hal}: add the second ilram section, refs #3414Nélio Laranjeiro
The following files have been changed because they are included in eCos: - cesar/hal/arch/inc/regs_addr.h: change u32 by unsigned long - cesar/hal/arch/platform.h: put BEGIN_DECLS between #ifdef (__sparc__)
2012-10-19{cesar, cleo}/ipmbox: adapt init after moving DATA on RAM, closes #3441Jean-Philippe SAVE
- Change queues initialisation: now, all queues head and tail pointers are respectively set by plcdrv at the begining and end of there areas. Cesar just have, for all queues, to set the tail pointer at head pointer. - Unitary tests have also been updating.
2012-10-19cesar/tools/sniffer_phy: integrate mmtcgen, closes #3442Nélio Laranjeiro
2012-10-19cesar/mac/pbproc/test/int: use a single Makefile for sparc and maximus buildNicolas Schodet