diff mbox series

[U-Boot] firmware: ti_sci: Always request response from firmware

Message ID 20190429130411.23677-1-afd@ti.com
State Accepted
Commit efbfd448e51a75acbace51849e8bed63e0ea5ce0
Delegated to: Tom Rini
Headers show
Series [U-Boot] firmware: ti_sci: Always request response from firmware | expand

Commit Message

Andrew Davis April 29, 2019, 1:04 p.m. UTC
TI-SCI firmware will only respond to messages when the
TI_SCI_FLAG_REQ_ACK_ON_PROCESSED flag is set. Most messages
already do this, set this for the ones that do not.

Signed-off-by: Andrew F. Davis <afd@ti.com>
Tested-by: Alejandro Hernandez <ajhernandez@ti.com>
---
 drivers/firmware/ti_sci.c | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

Comments

Nishanth Menon April 29, 2019, 1:18 p.m. UTC | #1
On 09:04-20190429, Andrew F. Davis wrote:
> TI-SCI firmware will only respond to messages when the
> TI_SCI_FLAG_REQ_ACK_ON_PROCESSED flag is set. Most messages
> already do this, set this for the ones that do not.
> 
> Signed-off-by: Andrew F. Davis <afd@ti.com>
> Tested-by: Alejandro Hernandez <ajhernandez@ti.com>
> ---
>  drivers/firmware/ti_sci.c | 11 ++++++-----
>  1 file changed, 6 insertions(+), 5 deletions(-)

Acked-by: Nishanth Menon <nm@ti.com>
Tom Rini May 3, 2019, 6:21 p.m. UTC | #2
On Mon, Apr 29, 2019 at 09:04:11AM -0400, Andrew F. Davis wrote:

> TI-SCI firmware will only respond to messages when the
> TI_SCI_FLAG_REQ_ACK_ON_PROCESSED flag is set. Most messages
> already do this, set this for the ones that do not.
> 
> Signed-off-by: Andrew F. Davis <afd@ti.com>
> Tested-by: Alejandro Hernandez <ajhernandez@ti.com>
> Acked-by: Nishanth Menon <nm@ti.com>

Applied to u-boot/master, thanks!
diff mbox series

Patch

diff --git a/drivers/firmware/ti_sci.c b/drivers/firmware/ti_sci.c
index 1196ce0712..9139f9787f 100644
--- a/drivers/firmware/ti_sci.c
+++ b/drivers/firmware/ti_sci.c
@@ -257,7 +257,8 @@  static int ti_sci_cmd_get_revision(struct ti_sci_handle *handle)
 
 	info = handle_to_ti_sci_info(handle);
 
-	xfer = ti_sci_setup_one_xfer(info, TI_SCI_MSG_VERSION, 0x0,
+	xfer = ti_sci_setup_one_xfer(info, TI_SCI_MSG_VERSION,
+				     TI_SCI_FLAG_REQ_ACK_ON_PROCESSED,
 				     (u32 *)&hdr, sizeof(struct ti_sci_msg_hdr),
 				     sizeof(*rev_info));
 	if (IS_ERR(xfer)) {
@@ -499,8 +500,8 @@  static int ti_sci_get_device_state(const struct ti_sci_handle *handle,
 
 	info = handle_to_ti_sci_info(handle);
 
-	/* Response is expected, so need of any flags */
-	xfer = ti_sci_setup_one_xfer(info, TI_SCI_MSG_GET_DEVICE_STATE, 0,
+	xfer = ti_sci_setup_one_xfer(info, TI_SCI_MSG_GET_DEVICE_STATE,
+				     TI_SCI_FLAG_REQ_ACK_ON_PROCESSED,
 				     (u32 *)&req, sizeof(req), sizeof(*resp));
 	if (IS_ERR(xfer)) {
 		ret = PTR_ERR(xfer);
@@ -2574,8 +2575,8 @@  static int ti_sci_cmd_change_fwl_owner(const struct ti_sci_handle *handle,
 
 	info = handle_to_ti_sci_info(handle);
 
-	xfer = ti_sci_setup_one_xfer(info, TISCI_MSG_FWL_GET,
-				     TISCI_MSG_FWL_CHANGE_OWNER,
+	xfer = ti_sci_setup_one_xfer(info, TISCI_MSG_FWL_CHANGE_OWNER,
+				     TI_SCI_FLAG_REQ_ACK_ON_PROCESSED,
 				     (u32 *)&req, sizeof(req), sizeof(*resp));
 	if (IS_ERR(xfer)) {
 		ret = PTR_ERR(xfer);