summaryrefslogtreecommitdiff
path: root/cesar/mac/sar/test/functional
diff options
context:
space:
mode:
authordufour2010-04-14 08:57:04 +0000
committerdufour2010-04-14 08:57:04 +0000
commitf57b67f6b2c243c5acc90aa2a3e830c6ba2b0bd5 (patch)
treee3f2bb3d753fd98532ec28ca857a2e20948c90d8 /cesar/mac/sar/test/functional
parent00d554ff3f2bd8f7b047319c4c4a5f41bb5adc26 (diff)
cesar/{mac/sar,ce/rx}: update SAR callback to get BER, closes #1442
PB measurements are no longer given by the SAR CB: it directly pre-computes the BER sum (on PBs with no CRC error), the total count of PBs inside the frame and the count of PBs with CRC error in the frame. In the CE, measure now contains: - RX params, - channel data if there are some, - some statistics (total PBs count, total false PBs, BER sum) No need any more to give some pointer to the SAR, measure data are directly delivered from the SAR for copy. Configuration for "PB measurements get flag" is now removed from the CE. Tests have been updated. git-svn-id: svn+ssh://pessac/svn/cesar/trunk@6922 017c9cb6-072f-447c-8318-d5b54f68fe89
Diffstat (limited to 'cesar/mac/sar/test/functional')
-rw-r--r--cesar/mac/sar/test/functional/src/sar_rx.c2
-rw-r--r--cesar/mac/sar/test/functional/src/sar_tx.c2
-rw-r--r--cesar/mac/sar/test/functional/src/test_functions.c21
-rw-r--r--cesar/mac/sar/test/functional/test_functions.h9
4 files changed, 13 insertions, 21 deletions
diff --git a/cesar/mac/sar/test/functional/src/sar_rx.c b/cesar/mac/sar/test/functional/src/sar_rx.c
index 8c634be70b..455c98bc41 100644
--- a/cesar/mac/sar/test/functional/src/sar_rx.c
+++ b/cesar/mac/sar/test/functional/src/sar_rx.c
@@ -242,7 +242,7 @@ test_thread_process (cyg_addrword_t data)
sar_init_reassembly_data_cb (sar_ctx, rea_comp_sar_rea_done);
sar_init_reassembly_mme_cb (sar_ctx, rea_comp_sar_rea_done);
sar_init_measure_context (sar_ctx, sar_ctx);
- sar_init_measurement_cb (sar_ctx, ce_measurements_none);
+ sar_init_measurement_cb (sar_ctx, ce_measurements);
prepare_pbs (test);
diff --git a/cesar/mac/sar/test/functional/src/sar_tx.c b/cesar/mac/sar/test/functional/src/sar_tx.c
index 51024f0a4f..220b9a013c 100644
--- a/cesar/mac/sar/test/functional/src/sar_tx.c
+++ b/cesar/mac/sar/test/functional/src/sar_tx.c
@@ -206,7 +206,7 @@ test_thread_process (cyg_addrword_t data)
sar_init_data_context (sar_ctx, sar_ctx);
sar_init_mme_context (sar_ctx, sar_ctx);
- sar_init_measurement_cb (sar_ctx, ce_measurements_none);
+ sar_init_measurement_cb (sar_ctx, ce_measurements);
sar_init_segmentation_data_cb (sar_ctx, segmentation_done);
sar_init_segmentation_mme_cb (sar_ctx, segmentation_done);
diff --git a/cesar/mac/sar/test/functional/src/test_functions.c b/cesar/mac/sar/test/functional/src/test_functions.c
index c59a05f37d..86acf36f2b 100644
--- a/cesar/mac/sar/test/functional/src/test_functions.c
+++ b/cesar/mac/sar/test/functional/src/test_functions.c
@@ -48,20 +48,13 @@ static uint nb_frames_tx;
static uint nb_frames_rx;
/* Stubbed Functions. */
-bool
-ce_measurements_none (void *user, pbproc_rx_params_t *rx_params, uint pb_nb,
- blk_t **first, blk_t **last, pb_t *chandata,
- uint nb_chandata, u8 **ce_pb_crc_error)
+void
+ce_measurements (void *data, pbproc_rx_params_t *rx_params,
+ uint total_pb_count, pb_t *chan_data,
+ uint chan_data_count, u8 false_pb_count, u32 ber_sum)
{
- if (chandata)
- blk_release_desc_range_nb ((blk_t*) chandata, nb_chandata);
-
- if (pb_nb)
- {
- dbg_assert (ce_pb_crc_error);
- *ce_pb_crc_error = NULL;
- }
- return false;
+ if (chan_data)
+ blk_release_desc_range_nb ((blk_t*) chan_data, chan_data_count);
}
static void
@@ -115,7 +108,7 @@ sar_test_init (sar_test_ctx_t *test_ctx)
2);
/* CE. */
sar_init_measure_context (test_ctx->sar, INVALID_PTR);
- sar_init_measurement_cb (test_ctx->sar, ce_measurements_none);
+ sar_init_measurement_cb (test_ctx->sar, ce_measurements);
sar_init_data_context (test_ctx->sar, INVALID_PTR);
sar_init_segmentation_data_cb (test_ctx->sar,
sar_test_segmentation_done__do_nothing);
diff --git a/cesar/mac/sar/test/functional/test_functions.h b/cesar/mac/sar/test/functional/test_functions.h
index ca91ce7ed5..0fbfa36b10 100644
--- a/cesar/mac/sar/test/functional/test_functions.h
+++ b/cesar/mac/sar/test/functional/test_functions.h
@@ -25,11 +25,10 @@ typedef struct sar_test_ctx_t sar_test_ctx_t;
BEGIN_DECLS
-bool
-ce_measurements_none (void *user, pbproc_rx_params_t *rx_params, uint pb_nb,
- blk_t **first, blk_t **last, pb_t *chandata,
- uint nb_chandata, u8
- **ce_pb_crc_error)__attribute__((weak));
+void
+ce_measurements (void *data, pbproc_rx_params_t *rx_params,
+ uint total_pb_count, pb_t *chan_data,
+ uint chan_data_count, u8 false_pb_count, u32 ber_sum);
/**
* Initialise the test context.