drivers: ipm: ipm_mbox: fix qualifier warning in callback
mbox_msg::data is a const pointer, but ipm_callback_t expects a volatile void * payload. Passing the mailbox payload through the IPM callback was triggering compiler warnings about discarded qualifiers. Convert the mailbox payload pointer to the IPM callback payload type via a uintptr_t round-trip to avoid -Wdiscarded-qualifiers or -Wcast-qual noise without changing the runtime behavior. fix:https://github.com/zephyrproject-rtos/zephyr/issues/102057 Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
This commit is contained in:
committed by
Fabio Baltieri
parent
32b63c63ed
commit
a3f95c886a
@@ -48,7 +48,7 @@ static void ipm_mbox_callback(const struct device *mboxdev,
|
||||
{
|
||||
const struct device *ipmdev = user_data;
|
||||
struct ipm_mbox_data *ipm_mbox_data = ipmdev->data;
|
||||
void *payload = NULL;
|
||||
volatile void *payload = NULL;
|
||||
|
||||
if (!ipm_mbox_data || !ipm_mbox_data->callback) {
|
||||
return;
|
||||
@@ -56,7 +56,7 @@ static void ipm_mbox_callback(const struct device *mboxdev,
|
||||
|
||||
/* Only use the payload if the mailbox provides a non-empty buffer */
|
||||
if (data && data->data && data->size > 0) {
|
||||
payload = data->data;
|
||||
payload = (volatile void *)(uintptr_t)data->data;
|
||||
}
|
||||
|
||||
ipm_mbox_data->callback(ipmdev,
|
||||
|
||||
Reference in New Issue
Block a user