Skip to content

Commit dfe0a97

Browse files
committed
fix bugs found in CI test
HalTimerOp has been changed to HalTimerOpExt
1 parent e77e040 commit dfe0a97

File tree

11 files changed

+33
-9
lines changed

11 files changed

+33
-9
lines changed

rtos/rtx/TARGET_CORTEX_M/RTX_CM_lib.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -361,6 +361,8 @@ extern void pre_main (void);
361361
static uint32_t thread_stack_main[DEFAULT_STACK_SIZE / sizeof(uint32_t)];
362362
#elif defined(TARGET_XDOT_L151CC)
363363
static uint32_t thread_stack_main[DEFAULT_STACK_SIZE * 6 / sizeof(uint32_t)];
364+
#elif defined(TARGET_REALTEK_RTL8195AM)
365+
static uint32_t thread_stack_main[DEFAULT_STACK_SIZE * 4 / sizeof(uint32_t)];
364366
#else
365367
static uint32_t thread_stack_main[DEFAULT_STACK_SIZE * 2 / sizeof(uint32_t)];
366368
#endif

targets/TARGET_Realtek/TARGET_AMEBA/analogin_api.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,10 @@ void analogin_init (analogin_t *obj, PinName pin){
3838

3939
HAL_ADC_INIT_DAT HalADCInitDataTmp;
4040
PHAL_ADC_INIT_DAT pHalADCInitDataTmp = &HalADCInitDataTmp;
41-
4241
/* To backup user config first */
43-
_memcpy(pHalADCInitDataTmp, &(obj->HalADCInitData), sizeof(HAL_ADC_INIT_DAT));
4442

43+
_memset(&(obj->HalADCInitData), 0, sizeof(HAL_ADC_INIT_DAT));
44+
_memcpy(pHalADCInitDataTmp, &(obj->HalADCInitData), sizeof(HAL_ADC_INIT_DAT));
4545
_memset(obj, 0x00, sizeof(analogin_t));
4646

4747
ConfigDebugErr &= (~(_DBG_ADC_|_DBG_GDMA_));
@@ -135,7 +135,7 @@ float analogin_read(analogin_t *obj){
135135
uint32_t AnaloginDatMsk = 0xFFFF;
136136
uint8_t AnaloginIdx = 0;
137137
uint32_t AnalogDat = 0;
138-
uint32_t Offset = 0x2C00;
138+
uint32_t Offset = 0x2980;//0x2C00;
139139
uint32_t AnalogDatFull = 0xAA00;
140140

141141
PSAL_ADC_MNGT_ADPT pSalADCMngtAdpt = NULL;

targets/TARGET_Realtek/TARGET_AMEBA/analogout_api.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ void analogout_init(dac_t *obj, PinName pin) {
8181

8282
pHalDacInitData->DACEn = DAC_ENABLE;
8383
HalDACEnableRtl8195a(pHalDacInitData);
84+
osDelay(10);
8485
}
8586

8687
/** \brief analogout_free:\n

targets/TARGET_Realtek/TARGET_AMEBA/gpio_irq_api.c

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ void gpio_irq_free(gpio_irq_t *obj)
4545

4646
void gpio_irq_set(gpio_irq_t *obj, gpio_irq_event event, uint32_t enable)
4747
{
48+
HAL_GPIO_MaskIrq(&obj->hal_pin);
4849
switch((uint32_t)event) {
4950
case IRQ_RISE:
5051
obj->hal_pin.pin_mode = INT_RISING;
@@ -73,6 +74,12 @@ void gpio_irq_set(gpio_irq_t *obj, gpio_irq_event event, uint32_t enable)
7374
HAL_GPIO_Init_8195a(&obj->hal_pin);
7475

7576
HAL_GPIO_IntCtrl(&obj->hal_pin, enable);
77+
if(enable){
78+
HAL_GPIO_UnMaskIrq(&obj->hal_pin);
79+
}
80+
else{
81+
HAL_GPIO_MaskIrq(&obj->hal_pin);
82+
}
7683
}
7784

7885
void gpio_irq_enable(gpio_irq_t *obj)

targets/TARGET_Realtek/TARGET_AMEBA/i2c_api.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -247,6 +247,7 @@ int i2c_read(i2c_t *obj, int address, char *data, int length, int stop) {
247247
u32 InStartCount = 0;
248248
pSalI2CMngtAdpt = &(obj->SalI2CMngtAdpt);
249249
pSalI2CHND = &(pSalI2CMngtAdpt->pSalHndPriv->SalI2CHndPriv);
250+
address = (address & 0xFE ) >>1;
250251

251252
if (i2c_target_addr[pSalI2CHND->DevNum] != address) {
252253
pSalI2CHND->pInitDat->I2CAckAddr = address;
@@ -316,6 +317,7 @@ int i2c_write(i2c_t *obj, int address, const char *data, int length, int stop) {
316317

317318
pSalI2CMngtAdpt = &(obj->SalI2CMngtAdpt);
318319
pSalI2CHND = &(pSalI2CMngtAdpt->pSalHndPriv->SalI2CHndPriv);
320+
address = (address & 0xFE ) >>1;
319321

320322
if (i2c_target_addr[pSalI2CHND->DevNum] != address) {
321323
pSalI2CHND->pInitDat->I2CAckAddr = address;
@@ -559,6 +561,7 @@ void i2c_slave_address(i2c_t *obj, int idx, uint32_t address, uint32_t mask) {
559561
PSAL_I2C_HND pSalI2CHND = NULL;
560562
pSalI2CMngtAdpt = &(obj->SalI2CMngtAdpt);
561563
pSalI2CHND = &(pSalI2CMngtAdpt->pSalHndPriv->SalI2CHndPriv);
564+
address = (address & 0xFE ) >>1;
562565

563566
uint16_t i2c_default_addr = (uint16_t) pSalI2CHND->I2CAckAddr;
564567
uint16_t i2c_user_addr = (uint16_t) address;

targets/TARGET_Realtek/TARGET_AMEBA/sdk/common/drivers/wlan/realtek/include/rtw_mlme.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,12 +103,14 @@ enum dot11AuthAlgrthmNum {
103103
};
104104

105105
// Scan type including active and passive scan.
106-
typedef enum _RT_SCAN_TYPE
106+
enum _RT_SCAN_TYPE
107107
{
108108
SCAN_PASSIVE,
109109
SCAN_ACTIVE,
110110
SCAN_MIX,
111-
} RT_SCAN_TYPE, *PRT_SCAN_TYPE;
111+
};
112+
typedef uint32_t RT_SCAN_TYPE;
113+
typedef uint32_t *PRT_SCAN_TYPE;
112114

113115
/*
114116
Binary file not shown.
Binary file not shown.

targets/TARGET_Realtek/TARGET_AMEBA/sdk/soc/realtek/8195a/fwlib/hal_timer.h

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,17 +44,24 @@ typedef struct _HAL_TIMER_OP_ {
4444
u32 (*HalGetTimerId)(u32 *TimerId);
4545
BOOL (*HalTimerInit)(VOID *Data);
4646
u32 (*HalTimerReadCount)(u32 TimerId);
47-
VOID (*HalTimerIrqEn)(u32 TimerId);
47+
//VOID (*HalTimerIrqEn)(u32 TimerId);
4848
VOID (*HalTimerIrqClear)(u32 TimerId);
4949
VOID (*HalTimerDis)(u32 TimerId);
5050
VOID (*HalTimerEn)(u32 TimerId);
5151
VOID (*HalTimerDumpReg)(u32 TimerId);
52-
VOID (*HalTimerReLoad)(u32 TimerId, u32 LoadUs);
52+
//VOID (*HalTimerReLoad)(u32 TimerId, u32 LoadUs);
5353
}HAL_TIMER_OP, *PHAL_TIMER_OP;
5454

55+
typedef struct _HAL_TIMER_OP_EXT_ {
56+
PHAL_TIMER_OP phal_timer_op_rom;
57+
VOID (*HalTimerIrqEn)(u32 TimerId);
58+
VOID (*HalTimerReLoad)(u32 TimerId, u32 LoadUs);
59+
}HAL_TIMER_OP_EXT, *PHAL_TIMER_OP_EXT;
60+
5561
#ifdef CONFIG_TIMER_MODULE
5662
// This variable declared in ROM code
5763
extern HAL_TIMER_OP HalTimerOp;
64+
extern HAL_TIMER_OP_EXT HalTimerOpExt;
5865
#endif
5966

6067
VOID HalTimerOpInit_Patch(

targets/TARGET_Realtek/TARGET_AMEBA/spi_api.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,7 @@ void spi_init (spi_t *obj, PinName mosi, PinName miso, PinName sclk, PinName sse
145145
pHalSsiAdaptor->HaveRxChannel = 0;
146146
#endif
147147
#endif
148+
osDelay(1);
148149
}
149150

150151
void spi_free (spi_t *obj)

targets/TARGET_Realtek/TARGET_AMEBA/us_ticker.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ static int us_ticker_inited = 0;
2727
static TIMER_ADAPTER TimerAdapter;
2828

2929
extern HAL_TIMER_OP HalTimerOp;
30+
extern HAL_TIMER_OP_EXT HalTimerOpExt;
3031

3132
VOID _us_ticker_irq_handler(IN VOID *Data)
3233
{
@@ -126,8 +127,8 @@ void us_ticker_set_interrupt(timestamp_t timestamp)
126127
time_def = TIMER_TICK_US; // at least 1 tick
127128
}
128129
HalTimerOp.HalTimerDis((u32)TimerAdapter.TimerId);
129-
HalTimerOp.HalTimerReLoad((u32)TimerAdapter.TimerId, time_def);
130-
HalTimerOp.HalTimerIrqEn((u32)TimerAdapter.TimerId);
130+
HalTimerOpExt.HalTimerReLoad((u32)TimerAdapter.TimerId, time_def);
131+
HalTimerOpExt.HalTimerIrqEn((u32)TimerAdapter.TimerId);
131132
HalTimerOp.HalTimerEn((u32)TimerAdapter.TimerId);
132133
//printf("us_ticker_set_interrupt %d\r\n",timestamp);
133134

0 commit comments

Comments
 (0)