From 19ed4aa95a88200ea2f9af836666ef92c1f17a8d Mon Sep 17 00:00:00 2001 From: Etienne Carriere Date: Tue, 10 Sep 2019 11:55:31 +0200 Subject: [PATCH 1/2] module/scmi: fix when built without notification Fix build issue when !BUILD_HAS_NOTIFICATION. Signed-off-by: Etienne Carriere Signed-off-by: Vincent Guittot --- module/scmi/src/mod_scmi.c | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/module/scmi/src/mod_scmi.c b/module/scmi/src/mod_scmi.c index 22ab7f269..b6e18500f 100644 --- a/module/scmi/src/mod_scmi.c +++ b/module/scmi/src/mod_scmi.c @@ -17,14 +17,17 @@ #include #include #include +#ifdef BUILD_HAS_MULTITHREADING #include +#else +#include +#endif #include #include #include #include #include #include -#include struct scmi_protocol { /* SCMI protocol message handler */ @@ -621,7 +624,11 @@ static int scmi_service_init(fwk_id_t service_id, unsigned int unused, ctx = &scmi_ctx.service_ctx_table[fwk_id_get_element_idx(service_id)]; ctx->config = config; +#ifdef BUILD_HAS_MULTITHREADING return fwk_thread_create(service_id); +#else + return FWK_SUCCESS; +#endif } static int scmi_bind(fwk_id_t id, unsigned int round) @@ -792,6 +799,7 @@ static int scmi_process_event(const struct fwk_event *event, static int scmi_start(fwk_id_t id) { +#ifdef BUILD_HAS_NOTIFICATION const struct mod_scmi_service_config *config; unsigned int notifications_sent; @@ -814,8 +822,12 @@ static int scmi_start(fwk_id_t id) return fwk_notification_subscribe(config->transport_notification_init_id, config->transport_id, id); +#else + return FWK_SUCCESS; +#endif } +#ifdef BUILD_HAS_NOTIFICATION static int scmi_process_notification(const struct fwk_event *event, struct fwk_event *resp_event) { @@ -839,13 +851,16 @@ static int scmi_process_notification(const struct fwk_event *event, return fwk_notification_notify(&scmi_services_initialized_notification, ¬ifications_sent); } +#endif /* SCMI module definition */ const struct fwk_module module_scmi = { .name = "SCMI", .api_count = MOD_SCMI_API_IDX_COUNT, .event_count = 1, + #ifdef BUILD_HAS_NOTIFICATION .notification_count = MOD_SCMI_NOTIFICATION_IDX_COUNT, + #endif .type = FWK_MODULE_TYPE_SERVICE, .init = scmi_init, .element_init = scmi_service_init, @@ -853,5 +868,7 @@ const struct fwk_module module_scmi = { .start = scmi_start, .process_bind_request = scmi_process_bind_request, .process_event = scmi_process_event, + #ifdef BUILD_HAS_NOTIFICATION .process_notification = scmi_process_notification, + #endif }; -- GitLab From 619f7fd19510ca5207a1c71363d0a816d99d389f Mon Sep 17 00:00:00 2001 From: Etienne Carriere Date: Tue, 17 Sep 2019 11:39:58 +0200 Subject: [PATCH 2/2] module/power_domain: fix build without notification support Changes module power_domain to support being built without notification support: BUILD_HAS_NOTIFICATION. Signed-off-by: Etienne Carriere Signed-off-by: Vincent Guittot --- module/power_domain/src/mod_power_domain.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/module/power_domain/src/mod_power_domain.c b/module/power_domain/src/mod_power_domain.c index 1691c043a..ce135351a 100644 --- a/module/power_domain/src/mod_power_domain.c +++ b/module/power_domain/src/mod_power_domain.c @@ -2053,7 +2053,9 @@ const struct fwk_module module_power_domain = { .type = FWK_MODULE_TYPE_HAL, .api_count = MOD_PD_API_IDX_COUNT, .event_count = PD_EVENT_COUNT, +#ifdef BUILD_HAS_NOTIFICATION .notification_count = MOD_PD_NOTIFICATION_COUNT, +#endif .init = pd_init, .element_init = pd_power_domain_init, .post_init = pd_post_init, -- GitLab