You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
hardware/STM32/stm32/cores/arduino/stm32/twi.c: In function 'HAL_I2C_AddrCallback':
hardware/STM32/stm32/cores/arduino/stm32/twi.c:551:50: warning: passing argument 2 of 'HAL_I2C_Slave_Sequential_Transmit_IT' discards 'volatile' qualifier from pointer target type [-Wdiscarded-qualifiers]
HAL_I2C_Slave_Sequential_Transmit_IT(hi2c, obj->i2cTxRxBuffer,
^~~
In file included from hardware/STM32/stm32/variants/DISCO_F746NG/stm32f7xx_hal_conf.h:330:0,
from hardware/STM32/stm32/system/Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal.h:46,
from hardware/STM32/stm32/system/Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f7xx.h:219,
from hardware/STM32/stm32/cores/arduino/stm32/stm32_def.h:18,
from hardware/STM32/stm32/cores/arduino/stm32/twi.c:51:
hardware/STM32/stm32/system/Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_i2c.h:559:19: note: expected 'uint8_t * {aka unsigned char *}' but argument is of type 'volatile uint8_t * {aka volatile unsigned char *}'
HAL_StatusTypeDef HAL_I2C_Slave_Sequential_Transmit_IT(I2C_HandleTypeDef *hi2c, uint8_t *pData, uint16_t Size, uint32_t XferOptions);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hardware/STM32/stm32/cores/arduino/stm32/twi.c:558:49: warning: passing argument 2 of 'HAL_I2C_Slave_Sequential_Receive_IT' discards 'volatile' qualifier from pointer target type [-Wdiscarded-qualifiers]
HAL_I2C_Slave_Sequential_Receive_IT(hi2c, &(obj->i2cTxRxBuffer[obj->slaveRxNbData]),
^
In file included from hardware/STM32/stm32/variants/DISCO_F746NG/stm32f7xx_hal_conf.h:330:0,
from hardware/STM32/stm32/system/Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal.h:46,
from hardware/STM32/stm32/system/Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f7xx.h:219,
from hardware/STM32/stm32/cores/arduino/stm32/stm32_def.h:18,
from hardware/STM32/stm32/cores/arduino/stm32/twi.c:51:
hardware/STM32/stm32/system/Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_i2c.h:560:19: note: expected 'uint8_t * {aka unsigned char *}' but argument is of type 'volatile uint8_t * {aka volatile unsigned char *}'
HAL_StatusTypeDef HAL_I2C_Slave_Sequential_Receive_IT(I2C_HandleTypeDef *hi2c, uint8_t *pData, uint16_t Size, uint32_t XferOptions);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hardware/STM32/stm32/cores/arduino/stm32/twi.c: In function 'HAL_I2C_ListenCpltCallback':
hardware/STM32/stm32/cores/arduino/stm32/twi.c:579:31: warning: passing argument 1 of 'obj->i2c_onSlaveReceive' discards 'volatile' qualifier from pointer target type [-Wdiscarded-qualifiers]
obj->i2c_onSlaveReceive(obj->i2cTxRxBuffer, obj->slaveRxNbData);
^~~
hardware/STM32/stm32/cores/arduino/stm32/twi.c:579:31: note: expected 'uint8_t * {aka unsigned char *}' but argument is of type 'volatile uint8_t * {aka volatile unsigned char *}'
hardware/STM32/stm32/cores/arduino/stm32/twi.c: In function 'HAL_I2C_SlaveRxCpltCallback':
hardware/STM32/stm32/cores/arduino/stm32/twi.c:604:49: warning: passing argument 2 of 'HAL_I2C_Slave_Sequential_Receive_IT' discards 'volatile' qualifier from pointer target type [-Wdiscarded-qualifiers]
HAL_I2C_Slave_Sequential_Receive_IT(hi2c, &(obj->i2cTxRxBuffer[obj->slaveRxNbData]),
^
In file included from hardware/STM32/stm32/variants/DISCO_F746NG/stm32f7xx_hal_conf.h:330:0,
from hardware/STM32/stm32/system/Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal.h:46,
from hardware/STM32/stm32/system/Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f7xx.h:219,
from hardware/STM32/stm32/cores/arduino/stm32/stm32_def.h:18,
from hardware/STM32/stm32/cores/arduino/stm32/twi.c:51:
hardware/STM32/stm32/system/Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_i2c.h:560:19: note: expected 'uint8_t * {aka unsigned char *}' but argument is of type 'volatile uint8_t * {aka volatile unsigned char *}'
HAL_StatusTypeDef HAL_I2C_Slave_Sequential_Receive_IT(I2C_HandleTypeDef *hi2c, uint8_t *pData, uint16_t Size, uint32_t XferOptions);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The text was updated successfully, but these errors were encountered:
@fpistm I think it would be ok to cast it. I added volatile to make sure that the buffer being filled in in the function i2c_slave_write_IT will not be optimized out by the compiler.
// Check the communication status
for(i = 0; i < size; i++) {
obj->i2cTxRxBuffer[i] = *(data+i);
}
Since #306:
The text was updated successfully, but these errors were encountered: