diff --git a/src/message-protocol.adoc b/src/message-protocol.adoc index 4224168..e3fbe48 100644 --- a/src/message-protocol.adoc +++ b/src/message-protocol.adoc @@ -205,10 +205,10 @@ below. The RPMI events are defined separately for each RPMI service group. An RPMI service group must have a `ENABLE_NOTIFICATION` service with a fixed -`SERVICE_ID=0x01` which can be used by the application processors to enable -notification messages for a particular RPMI event defined by the RPMI service -groups. By default, notifications are disabled for all RPMI events of an RPMI -service group. The platform microcontroller only sends RPMI notification +`SERVICE_ID=0x01` which can be used by the application processors to enable or +disable notification messages for a particular RPMI event defined by the RPMI +service groups. By default, notifications are disabled for all RPMI events of +an RPMI service group. The platform microcontroller only sends RPMI notification messages for RPMI events which are enabled by the application processors. If multiple RPMI events are supported by an RPMI service group then the application processors must enable to each RPMI event individually. diff --git a/src/srvgrp-base.adoc b/src/srvgrp-base.adoc index c35658a..9f91154 100644 --- a/src/srvgrp-base.adoc +++ b/src/srvgrp-base.adoc @@ -120,6 +120,19 @@ described in <>. | EVENT_ID | uint32 | The event to be subscribed for notification. + +| 1 +| REQ_STATE +| uint32 +| Requested event notification state + +Change or query the current state of `EVENT_ID` notification. +---- +0: Disable +1: Enable +2: Return current state. +---- +Any other values of `REQ_STATE` field other than the defined ones are reserved +for future use. |=== [#table_base_ennotification_response_data] @@ -145,12 +158,24 @@ described in <>. ! Event is subscribed successfully. ! RPMI_ERR_INVALID_PARAM -! `EVENT_ID` is invalid. +! `EVENT_ID` or `REQ_STATE` is invalid. ! RPMI_ERR_NOT_SUPPORTED ! Notification is not supported. !=== - Other errors <> + +| 1 +| CURRENT_STATE +| uint32 +| Current `EVENT_ID` notification state +---- +0: Notification is disabled +1: Notification is enabled. +---- +In case of `REQ_STATE = 0` or `1`, the `CURRENT_STATE` will return the requested +state. + +In case of an error, the value of `CURRENT_STATE` is unspecified. |=== ==== Service: BASE_GET_IMPLEMENTATION_VERSION (SERVICE_ID: 0x02) diff --git a/src/srvgrp-clock.adoc b/src/srvgrp-clock.adoc index e7f49a4..7efbbb4 100644 --- a/src/srvgrp-clock.adoc +++ b/src/srvgrp-clock.adoc @@ -158,7 +158,7 @@ described in <>. [#table_clock_ennotification_request_data] .Request Data -[cols="1, 2, 1, 7", width=100%, align="center", options="header"] +[cols="1, 2, 1, 7a", width=100%, align="center", options="header"] |=== | Word | Name @@ -168,7 +168,20 @@ described in <>. | 0 | EVENT_ID | uint32 -| Event to be subscribed for notification. +| The event to be subscribed for notification. + +| 1 +| REQ_STATE +| uint32 +| Requested event notification state + +Change or query the current state of `EVENT_ID` notification. +---- +0: Disable +1: Enable +2: Return current state. +---- +Any other values of `REQ_STATE` field other than the defined ones are reserved +for future use. |=== [#table_clock_ennotification_response_data] @@ -185,7 +198,7 @@ described in <>. | int32 | Return error code -[cols="5,5", options="header"] +[cols="6,5a", options="header"] !=== ! Error Code ! Description @@ -194,14 +207,27 @@ described in <>. ! Event is subscribed successfully. ! RPMI_ERR_INVALID_PARAM -! `EVENT_ID` is invalid. +! `EVENT_ID` or `REQ_STATE` is invalid. ! RPMI_ERR_NOT_SUPPORTED ! Notification is not supported. !=== - Other errors <> + +| 1 +| CURRENT_STATE +| uint32 +| Current `EVENT_ID` notification state +---- +0: Notification is disabled +1: Notification is enabled. +---- +In case of `REQ_STATE = 0` or `1`, the `CURRENT_STATE` will return the requested +state. + +In case of an error, the value of `CURRENT_STATE` is unspecified. |=== + ==== Service: CLK_GET_NUM_CLOCKS (SERVICE_ID: 0x02) This service is used to query the number of clocks available in the system. All supported clocks in the system are designated by an integer identifier diff --git a/src/srvgrp-cppc.adoc b/src/srvgrp-cppc.adoc index ce4c543..40a5c0f 100644 --- a/src/srvgrp-cppc.adoc +++ b/src/srvgrp-cppc.adoc @@ -204,7 +204,7 @@ described in <>. [#table_cppc_ennotification_request_data] .Request Data -[cols="1, 2, 1, 7", width=100%, align="center", options="header"] +[cols="1, 2, 1, 7a", width=100%, align="center", options="header"] |=== | Word | Name @@ -214,7 +214,20 @@ described in <>. | 0 | EVENT_ID | uint32 -| Event to be subscribed for notification. +| The event to be subscribed for notification. + +| 1 +| REQ_STATE +| uint32 +| Requested event notification state + +Change or query the current state of `EVENT_ID` notification. +---- +0: Disable +1: Enable +2: Return current state. +---- +Any other values of `REQ_STATE` field other than the defined ones are reserved +for future use. |=== [#table_cppc_ennotification_response_data] @@ -230,7 +243,8 @@ described in <>. | STATUS | int32 | Return error code -[cols="5,5a", options="header"] + +[cols="6,5a", options="header"] !=== ! Error Code ! Description @@ -239,14 +253,27 @@ described in <>. ! Event is subscribed successfully. ! RPMI_ERR_INVALID_PARAM -! `EVENT_ID` is invalid. +! `EVENT_ID` or `REQ_STATE` is invalid. ! RPMI_ERR_NOT_SUPPORTED ! Notification is not supported. !=== - Other errors <> + +| 1 +| CURRENT_STATE +| uint32 +| Current `EVENT_ID` notification state +---- +0: Notification is disabled +1: Notification is enabled. +---- +In case of `REQ_STATE = 0` or `1`, the `CURRENT_STATE` will return the requested +state. + +In case of an error, the value of `CURRENT_STATE` is unspecified. |=== + ==== Service: CPPC_PROBE_REG (SERVICE_ID: 0x02) This service is used to probe a CPPC register implementation status for a application processor. If the CPPC register `reg_id` is implemented then diff --git a/src/srvgrp-device-power.adoc b/src/srvgrp-device-power.adoc index 2f88208..b3977fa 100644 --- a/src/srvgrp-device-power.adoc +++ b/src/srvgrp-device-power.adoc @@ -128,7 +128,7 @@ described in <>. [#table_devpower_ennotification_request_data] .Request Data -[cols="1, 2, 1, 7", width=100%, align="center", options="header"] +[cols="1, 2, 1, 7a", width=100%, align="center", options="header"] |=== | Word | Name @@ -138,7 +138,20 @@ described in <>. | 0 | EVENT_ID | uint32 -| Event to be subscribed for notification. +| The event to be subscribed for notification. + +| 1 +| REQ_STATE +| uint32 +| Requested event notification state + +Change or query the current state of `EVENT_ID` notification. +---- +0: Disable +1: Enable +2: Return current state. +---- +Any other values of `REQ_STATE` field other than the defined ones are reserved +for future use. |=== [#table_devpower_ennotification_response_data] @@ -155,7 +168,7 @@ described in <>. | int32 | Return error code -[cols="5,5", options="header"] +[cols="6,5a", options="header"] !=== ! Error Code ! Description @@ -164,14 +177,27 @@ described in <>. ! Event is subscribed successfully. ! RPMI_ERR_INVALID_PARAM -! `EVENT_ID` is invalid. +! `EVENT_ID` or `REQ_STATE` is invalid. ! RPMI_ERR_NOT_SUPPORTED ! Notification is not supported. !=== - Other errors <> + +| 1 +| CURRENT_STATE +| uint32 +| Current `EVENT_ID` notification state +---- +0: Notification is disabled +1: Notification is enabled. +---- +In case of `REQ_STATE = 0` or `1`, the `CURRENT_STATE` will return the requested +state. + +In case of an error, the value of `CURRENT_STATE` is unspecified. |=== + ==== Service: DPWR_GET_NUM_DOMAINS (SERVICE_ID: 0x02) This service is used to query the number of device power domains available which can be controlled by the client. The number of domains returned may be less than diff --git a/src/srvgrp-hart-state-management.adoc b/src/srvgrp-hart-state-management.adoc index 44dabae..4ad2aff 100644 --- a/src/srvgrp-hart-state-management.adoc +++ b/src/srvgrp-hart-state-management.adoc @@ -98,32 +98,46 @@ described in <>. [#table_hsm_ennotification_request_data] .Request Data -[cols="1, 2, 1, 7", width=100%, align="center", options="header"] +[cols="1, 2, 1, 7a", width=100%, align="center", options="header"] |=== | Word | Name | Type | Description -| 0 +| 0 | EVENT_ID | uint32 -| Event to be subscribed for notification. +| The event to be subscribed for notification. + +| 1 +| REQ_STATE +| uint32 +| Requested event notification state + +Change or query the current state of `EVENT_ID` notification. +---- +0: Disable +1: Enable +2: Return current state. +---- +Any other values of `REQ_STATE` field other than the defined ones are reserved +for future use. |=== [#table_hsm_ennotification_response_data] .Response Data -[cols="1, 1, 1, 7a", width=100%, align="center", options="header"] +[cols="1, 2, 1, 7a", width=100%, align="center", options="header"] |=== | Word | Name | Type | Description -| 0 +| 0 | STATUS | int32 | Return error code + [cols="6,5a", options="header"] !=== ! Error Code @@ -133,12 +147,24 @@ described in <>. ! Event is subscribed successfully. ! RPMI_ERR_INVALID_PARAM -! `EVENT_ID` is invalid. +! `EVENT_ID` or `REQ_STATE` is invalid. ! RPMI_ERR_NOT_SUPPORTED ! Notification is not supported. !=== - Other errors <> + +| 1 +| CURRENT_STATE +| uint32 +| Current `EVENT_ID` notification state +---- +0: Notification is disabled +1: Notification is enabled. +---- +In case of `REQ_STATE = 0` or `1`, the `CURRENT_STATE` will return the requested +state. + +In case of an error, the value of `CURRENT_STATE` is unspecified. |=== ==== Service: HSM_GET_HART_STATUS (SERVICE_ID: 0x02) diff --git a/src/srvgrp-management.adoc b/src/srvgrp-management.adoc index b7fa89c..78e68b1 100644 --- a/src/srvgrp-management.adoc +++ b/src/srvgrp-management.adoc @@ -59,7 +59,7 @@ described in <>. [#table_mm_ennotification_request_data] .Request Data -[cols="1, 2, 1, 7", width=100%, align="center", options="header"] +[cols="1, 2, 1, 7a", width=100%, align="center", options="header"] |=== | Word | Name @@ -69,7 +69,20 @@ described in <>. | 0 | EVENT_ID | uint32 -| Event to be subscribed for notification. +| The event to be subscribed for notification. + +| 1 +| REQ_STATE +| uint32 +| Requested event notification state + +Change or query the current state of `EVENT_ID` notification. +---- +0: Disable +1: Enable +2: Return current state. +---- +Any other values of `REQ_STATE` field other than the defined ones are reserved +for future use. |=== [#table_mm_ennotification_response_data] @@ -86,7 +99,7 @@ described in <>. | int32 | Return error code -[cols="5,5", options="header"] +[cols="6,5a", options="header"] !=== ! Error Code ! Description @@ -95,16 +108,28 @@ described in <>. ! Event is subscribed successfully. ! RPMI_ERR_INVALID_PARAM -! `EVENT_ID` is invalid. +! `EVENT_ID` or `REQ_STATE` is invalid. ! RPMI_ERR_NOT_SUPPORTED ! Notification is not supported. - !=== - Other errors <> + +| 1 +| CURRENT_STATE +| uint32 +| Current `EVENT_ID` notification state +---- +0: Notification is disabled +1: Notification is enabled. +---- +In case of `REQ_STATE = 0` or `1`, the `CURRENT_STATE` will return the requested +state. + +In case of an error, the value of `CURRENT_STATE` is unspecified. |=== + ==== Service: MM_GET_ATTRIBUTES (SERVICE_ID: 0x02) This RPMI service gets the attributes about Management Mode, including MM version, MM shared memory location, etc. diff --git a/src/srvgrp-performance.adoc b/src/srvgrp-performance.adoc index 9f1bc3b..d1f0517 100644 --- a/src/srvgrp-performance.adoc +++ b/src/srvgrp-performance.adoc @@ -215,7 +215,7 @@ described in <>. [#table_perf_ennotification_request_data] .Request Data -[cols="1, 2, 1, 7", width=100%, align="center", options="header"] +[cols="1, 2, 1, 7a", width=100%, align="center", options="header"] |=== | Word | Name @@ -225,7 +225,20 @@ described in <>. | 0 | EVENT_ID | uint32 -| Event to be subscribed for notification. +| The event to be subscribed for notification. + +| 1 +| REQ_STATE +| uint32 +| Requested event notification state + +Change or query the current state of `EVENT_ID` notification. +---- +0: Disable +1: Enable +2: Return current state. +---- +Any other values of `REQ_STATE` field other than the defined ones are reserved +for future use. |=== [#table_perf_ennotification_response_data] @@ -242,7 +255,7 @@ described in <>. | int32 | Return error code -[cols="5,5", options="header"] +[cols="6,5a", options="header"] !=== ! Error Code ! Description @@ -251,16 +264,28 @@ described in <>. ! Event is subscribed successfully. ! RPMI_ERR_INVALID_PARAM -! `EVENT_ID` is invalid. +! `EVENT_ID` or `REQ_STATE` is invalid. ! RPMI_ERR_NOT_SUPPORTED ! Notification is not supported. - !=== - Other errors <> + +| 1 +| CURRENT_STATE +| uint32 +| Current `EVENT_ID` notification state +---- +0: Notification is disabled +1: Notification is enabled. +---- +In case of `REQ_STATE = 0` or `1`, the `CURRENT_STATE` will return the requested +state. + +In case of an error, the value of `CURRENT_STATE` is unspecified. |=== + ==== Service: PERF_GET_NUM_DOMAINS (SERVICE_ID: 0x02) This service returns the number of performance domains supported by the system. The number of performance domains may vary depending on the hardware platform diff --git a/src/srvgrp-ras-agent.adoc b/src/srvgrp-ras-agent.adoc index 0f622e1..80b9d2a 100644 --- a/src/srvgrp-ras-agent.adoc +++ b/src/srvgrp-ras-agent.adoc @@ -83,7 +83,7 @@ described in <>. [#table_ras_ennotification_request_data] .Request Data -[cols="1, 2, 1, 7", width=100%, align="center", options="header"] +[cols="1, 2, 1, 7a", width=100%, align="center", options="header"] |=== | Word | Name @@ -93,7 +93,20 @@ described in <>. | 0 | EVENT_ID | uint32 -| Event to be subscribed for notification. +| The event to be subscribed for notification. + +| 1 +| REQ_STATE +| uint32 +| Requested event notification state + +Change or query the current state of `EVENT_ID` notification. +---- +0: Disable +1: Enable +2: Return current state. +---- +Any other values of `REQ_STATE` field other than the defined ones are reserved +for future use. |=== [#table_ras_ennotification_response_data] @@ -110,7 +123,7 @@ described in <>. | int32 | Return error code -[cols="5,5", options="header"] +[cols="6,5a", options="header"] !=== ! Error Code ! Description @@ -119,15 +132,27 @@ described in <>. ! Event is subscribed successfully. ! RPMI_ERR_INVALID_PARAM -! `EVENT_ID` is invalid. +! `EVENT_ID` or `REQ_STATE` is invalid. ! RPMI_ERR_NOT_SUPPORTED ! Notification is not supported. - !=== - Other errors <> + +| 1 +| CURRENT_STATE +| uint32 +| Current `EVENT_ID` notification state +---- +0: Notification is disabled +1: Notification is enabled. +---- +In case of `REQ_STATE = 0` or `1`, the `CURRENT_STATE` will return the requested +state. + +In case of an error, the value of `CURRENT_STATE` is unspecified. |=== + ==== Service: RAS_GET_NUM_ERR_SRCS (SERVICE_ID: 0x02) This service queries number of error sources available in the system. diff --git a/src/srvgrp-request-forward.adoc b/src/srvgrp-request-forward.adoc index d4e4900..faa8ed2 100644 --- a/src/srvgrp-request-forward.adoc +++ b/src/srvgrp-request-forward.adoc @@ -78,9 +78,9 @@ notification messages to the application processor if they are implemented and the application processor has subscribed to them. The supported events are described in <>. -[#table_reqfwd_enable_notif_request_data] +[#table_reqfwd_ennotification_request_data] .Request Data -[cols="1, 2, 1, 7", width=100%, align="center", options="header"] +[cols="1, 2, 1, 7a", width=100%, align="center", options="header"] |=== | Word | Name @@ -90,10 +90,23 @@ described in <>. | 0 | EVENT_ID | uint32 -| Event to be subscribed for notification. +| The event to be subscribed for notification. + +| 1 +| REQ_STATE +| uint32 +| Requested event notification state + +Change or query the current state of `EVENT_ID` notification. +---- +0: Disable +1: Enable +2: Return current state. +---- +Any other values of `REQ_STATE` field other than the defined ones are reserved +for future use. |=== -[#table_reqfwd_enable_notif_response_data] +[#table_reqfwd_ennotification_response_data] .Response Data [cols="1, 2, 1, 7a", width=100%, align="center", options="header"] |=== @@ -107,7 +120,7 @@ described in <>. | int32 | Return error code -[cols="5,5", options="header"] +[cols="6,5a", options="header"] !=== ! Error Code ! Description @@ -116,15 +129,27 @@ described in <>. ! Event is subscribed successfully. ! RPMI_ERR_INVALID_PARAM -! `EVENT_ID` is invalid. +! `EVENT_ID` or `REQ_STATE` is invalid. ! RPMI_ERR_NOT_SUPPORTED ! Notification is not supported. - !=== - Other errors <> + +| 1 +| CURRENT_STATE +| uint32 +| Current `EVENT_ID` notification state +---- +0: Notification is disabled +1: Notification is enabled. +---- +In case of `REQ_STATE = 0` or `1`, the `CURRENT_STATE` will return the requested +state. + +In case of an error, the value of `CURRENT_STATE` is unspecified. |=== + ==== Service: REQFWD_RETRIEVE_CURRENT_MESSAGE (SERVICE_ID: 0x02) This service allows application processors to retrieve the current forwarded RPMI request message. The current message may be the oldest forwarded RPMI request diff --git a/src/srvgrp-system-reset.adoc b/src/srvgrp-system-reset.adoc index 998f7de..4a89505 100644 --- a/src/srvgrp-system-reset.adoc +++ b/src/srvgrp-system-reset.adoc @@ -70,7 +70,7 @@ described in <>. [#table_sysreset_ennotification_request_data] .Request Data -[cols="1, 2, 1, 7", width=100%, align="center", options="header"] +[cols="1, 2, 1, 7a", width=100%, align="center", options="header"] |=== | Word | Name @@ -80,17 +80,31 @@ described in <>. | 0 | EVENT_ID | uint32 -| Event to be subscribed for notification. +| The event to be subscribed for notification. + +| 1 +| REQ_STATE +| uint32 +| Requested event notification state + +Change or query the current state of `EVENT_ID` notification. +---- +0: Disable +1: Enable +2: Return current state. +---- +Any other values of `REQ_STATE` field other than the defined ones are reserved +for future use. |=== [#table_sysreset_ennotification_response_data] .Response Data -[cols="1, 1, 1, 7a", width=100%, align="center", options="header"] +[cols="1, 2, 1, 7a", width=100%, align="center", options="header"] |=== | Word | Name | Type | Description + | 0 | STATUS | int32 @@ -105,12 +119,24 @@ described in <>. ! Event is subscribed successfully. ! RPMI_ERR_INVALID_PARAM -! `EVENT_ID` is invalid. +! `EVENT_ID` or `REQ_STATE` is invalid. ! RPMI_ERR_NOT_SUPPORTED ! Notification is not supported. !=== - Other errors <> + +| 1 +| CURRENT_STATE +| uint32 +| Current `EVENT_ID` notification state +---- +0: Notification is disabled +1: Notification is enabled. +---- +In case of `REQ_STATE = 0` or `1`, the `CURRENT_STATE` will return the requested +state. + +In case of an error, the value of `CURRENT_STATE` is unspecified. |=== ==== Service: SYSRST_GET_ATTRIBUTES (SERVICE_ID: 0x02) diff --git a/src/srvgrp-system-suspend.adoc b/src/srvgrp-system-suspend.adoc index a89e3b2..b87eb48 100644 --- a/src/srvgrp-system-suspend.adoc +++ b/src/srvgrp-system-suspend.adoc @@ -62,7 +62,7 @@ described in <>. [#table_syssuspend_ennotification_request_data] .Request Data -[cols="1, 2, 1, 7", width=100%, align="center", options="header"] +[cols="1, 2, 1, 7a", width=100%, align="center", options="header"] |=== | Word | Name @@ -72,7 +72,20 @@ described in <>. | 0 | EVENT_ID | uint32 -| Event to be subscribed for notification. +| The event to be subscribed for notification. + +| 1 +| REQ_STATE +| uint32 +| Requested event notification state + +Change or query the current state of `EVENT_ID` notification. +---- +0: Disable +1: Enable +2: Return current state. +---- +Any other values of `REQ_STATE` field other than the defined ones are reserved +for future use. |=== [#table_syssuspend_ennotification_response_data] @@ -98,12 +111,24 @@ described in <>. ! Event is subscribed successfully. ! RPMI_ERR_INVALID_PARAM -! `EVENT_ID` is invalid. +! `EVENT_ID` or `REQ_STATE` is invalid. ! RPMI_ERR_NOT_SUPPORTED ! Notification is not supported. !=== - Other errors <> + +| 1 +| CURRENT_STATE +| uint32 +| Current `EVENT_ID` notification state +---- +0: Notification is disabled +1: Notification is enabled. +---- +In case of `REQ_STATE = 0` or `1`, the `CURRENT_STATE` will return the requested +state. + +In case of an error, the value of `CURRENT_STATE` is unspecified. |=== ==== Service: SYSSUSP_GET_ATTRIBUTES (SERVICE_ID: 0x02) diff --git a/src/srvgrp-voltage.adoc b/src/srvgrp-voltage.adoc index 2362f2e..ad85980 100644 --- a/src/srvgrp-voltage.adoc +++ b/src/srvgrp-voltage.adoc @@ -165,7 +165,7 @@ described in <>. [#table_voltage_ennotification_request_data] .Request Data -[cols="1, 2, 1, 7", width=100%, align="center", options="header"] +[cols="1, 2, 1, 7a", width=100%, align="center", options="header"] |=== | Word | Name @@ -175,7 +175,20 @@ described in <>. | 0 | EVENT_ID | uint32 -| Event to be subscribed for notification. +| The event to be subscribed for notification. + +| 1 +| REQ_STATE +| uint32 +| Requested event notification state + +Change or query the current state of `EVENT_ID` notification. +---- +0: Disable +1: Enable +2: Return current state. +---- +Any other values of `REQ_STATE` field other than the defined ones are reserved +for future use. |=== [#table_voltage_ennotification_response_data] @@ -192,7 +205,7 @@ described in <>. | int32 | Return error code -[cols="5,5", options="header"] +[cols="6,5a", options="header"] !=== ! Error Code ! Description @@ -201,14 +214,27 @@ described in <>. ! Event is subscribed successfully. ! RPMI_ERR_INVALID_PARAM -! `EVENT_ID` is invalid. +! `EVENT_ID` or `REQ_STATE` is invalid. ! RPMI_ERR_NOT_SUPPORTED ! Notification is not supported. !=== - Other errors <> + +| 1 +| CURRENT_STATE +| uint32 +| Current `EVENT_ID` notification state +---- +0: Notification is disabled +1: Notification is enabled. +---- +In case of `REQ_STATE = 0` or `1`, the `CURRENT_STATE` will return the requested +state. + +In case of an error, the value of `CURRENT_STATE` is unspecified. |=== + ==== Service: VOLT_GET_NUM_DOMAINS (SERVICE_ID: 0x02) This service is used to query the number of voltage domains available in the system.