diff --git a/openair2/LAYER2/MAC/defs.h b/openair2/LAYER2/MAC/defs.h index 81c480d2c9fcbe3b1d2398af8085b82c74a6e1b9..5f3c67637c7e6cba44df8d5a48dc510096f327a7 100644 --- a/openair2/LAYER2/MAC/defs.h +++ b/openair2/LAYER2/MAC/defs.h @@ -621,7 +621,9 @@ typedef struct { uint8_t DLSCH_dci_size_bits; /// DCI buffer for DLSCH - uint8_t DLSCH_DCI[8][(MAX_DCI_SIZE_BITS>>3)+1]; + /* rounded to 32 bits unit (actual value should be 8 due to the logic + * of the function generate_dci0) */ + uint8_t DLSCH_DCI[8][(((MAX_DCI_SIZE_BITS)+31)>>5)*4]; /// Number of Allocated RBs for DL after scheduling (prior to frequency allocation) uint16_t nb_rb[8]; // num_max_harq @@ -645,7 +647,9 @@ typedef struct { uint8_t assigned_mcs_ul; /// DCI buffer for ULSCH - uint8_t ULSCH_DCI[8][(MAX_DCI_SIZE_BITS>>3)+1]; + /* rounded to 32 bits unit (actual value should be 8 due to the logic + * of the function generate_dci0) */ + uint8_t ULSCH_DCI[8][(((MAX_DCI_SIZE_BITS)+31)>>5)*4]; /// DL DAI uint8_t DAI; diff --git a/targets/ARCH/EXMIMO/USERSPACE/LIB/openair0_lib.c b/targets/ARCH/EXMIMO/USERSPACE/LIB/openair0_lib.c index ada82b8510ed1cbd3c7a2d8250c1378af156df66..eb02a99c6ad587c787fa0f63d0debd79b487ce8d 100644 --- a/targets/ARCH/EXMIMO/USERSPACE/LIB/openair0_lib.c +++ b/targets/ARCH/EXMIMO/USERSPACE/LIB/openair0_lib.c @@ -774,6 +774,7 @@ int device_init(openair0_device *device, openair0_config_t *openair0_cfg) { openair0_cfg[card].rxbase[ant] = (int32_t*)openair0_exmimo_pci[card].adc_head[ant]; openair0_cfg[card].txbase[ant] = (int32_t*)openair0_exmimo_pci[card].dac_head[ant]; } + openair0_cfg[card].mmapped_dma = 1; } create_watchdog(device);