From 69476b25a4bac1186e9b6f091d5e3e9377a01f43 Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Fri, 13 Nov 2020 22:22:47 +0100 Subject: [PATCH] orinoco: Annotate firmware loading The ezusb_program() is invoked via ->program() in preemptible context during firmware loading. This is also true for the ->program_init() and ->program_end() callback. Use ezusb_req_ctx_wait_compl() in ezusb_program_init(), ezusb_program_bytes(), ezusb_program_end() which are part of firmware loading during device probe. Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Kalle Valo Link: https://lore.kernel.org/r/20201113212252.2243570-6-bigeasy@linutronix.de --- drivers/net/wireless/intersil/orinoco/orinoco_usb.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/net/wireless/intersil/orinoco/orinoco_usb.c b/drivers/net/wireless/intersil/orinoco/orinoco_usb.c index 3f49e15967a4..2c9c55569e8f 100644 --- a/drivers/net/wireless/intersil/orinoco/orinoco_usb.c +++ b/drivers/net/wireless/intersil/orinoco/orinoco_usb.c @@ -1172,7 +1172,7 @@ static int ezusb_program_init(struct hermes *hw, u32 entry_point) return ezusb_access_ltv(upriv, ctx, sizeof(data), &data, EZUSB_FRAME_CONTROL, NULL, 0, NULL, - ezusb_req_ctx_wait); + ezusb_req_ctx_wait_compl); } static int ezusb_program_end(struct hermes *hw) @@ -1186,7 +1186,7 @@ static int ezusb_program_end(struct hermes *hw) return ezusb_access_ltv(upriv, ctx, 0, NULL, EZUSB_FRAME_CONTROL, NULL, 0, NULL, - ezusb_req_ctx_wait); + ezusb_req_ctx_wait_compl); } static int ezusb_program_bytes(struct hermes *hw, const char *buf, @@ -1203,7 +1203,7 @@ static int ezusb_program_bytes(struct hermes *hw, const char *buf, err = ezusb_access_ltv(upriv, ctx, sizeof(data), &data, EZUSB_FRAME_CONTROL, NULL, 0, NULL, - ezusb_req_ctx_wait); + ezusb_req_ctx_wait_compl); if (err) return err; @@ -1213,7 +1213,7 @@ static int ezusb_program_bytes(struct hermes *hw, const char *buf, return ezusb_access_ltv(upriv, ctx, len, buf, EZUSB_FRAME_CONTROL, NULL, 0, NULL, - ezusb_req_ctx_wait); + ezusb_req_ctx_wait_compl); } static int ezusb_program(struct hermes *hw, const char *buf, -- 2.11.0