diff options
Diffstat (limited to 'drivers/scmi-msg/entry.c')
-rw-r--r-- | drivers/scmi-msg/entry.c | 41 |
1 files changed, 39 insertions, 2 deletions
diff --git a/drivers/scmi-msg/entry.c b/drivers/scmi-msg/entry.c index ea3efa24b9..5ac68e1e6b 100644 --- a/drivers/scmi-msg/entry.c +++ b/drivers/scmi-msg/entry.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: BSD-3-Clause /* - * Copyright (c) 2015-2020, Arm Limited and Contributors. All rights reserved. + * Copyright (c) 2015-2022, Arm Limited and Contributors. All rights reserved. * Copyright (c) 2019-2020, Linaro Limited */ @@ -11,6 +11,37 @@ #include "common.h" +#pragma weak scmi_msg_get_clock_handler +#pragma weak scmi_msg_get_rstd_handler +#pragma weak scmi_msg_get_pd_handler +#pragma weak scmi_msg_get_voltage_handler +#pragma weak scmi_msg_get_sensor_handler + +scmi_msg_handler_t scmi_msg_get_clock_handler(struct scmi_msg *msg __unused) +{ + return NULL; +} + +scmi_msg_handler_t scmi_msg_get_rstd_handler(struct scmi_msg *msg __unused) +{ + return NULL; +} + +scmi_msg_handler_t scmi_msg_get_pd_handler(struct scmi_msg *msg __unused) +{ + return NULL; +} + +scmi_msg_handler_t scmi_msg_get_voltage_handler(struct scmi_msg *msg __unused) +{ + return NULL; +} + +scmi_msg_handler_t scmi_msg_get_sensor_handler(struct scmi_msg *msg __unused) +{ + return NULL; +} + void scmi_status_response(struct scmi_msg *msg, int32_t status) { assert(msg->out && msg->out_size >= sizeof(int32_t)); @@ -47,6 +78,12 @@ void scmi_process_message(struct scmi_msg *msg) case SCMI_PROTOCOL_ID_RESET_DOMAIN: handler = scmi_msg_get_rstd_handler(msg); break; + case SCMI_PROTOCOL_ID_POWER_DOMAIN: + handler = scmi_msg_get_pd_handler(msg); + break; + case SCMI_PROTOCOL_ID_SENSOR: + handler = scmi_msg_get_sensor_handler(msg); + break; default: break; } @@ -56,7 +93,7 @@ void scmi_process_message(struct scmi_msg *msg) return; } - ERROR("Agent %u Protocol 0x%x Message 0x%x: not supported", + ERROR("Agent %u Protocol 0x%x Message 0x%x: not supported\n", msg->agent_id, msg->protocol_id, msg->message_id); scmi_status_response(msg, SCMI_NOT_SUPPORTED); |