Remove unnecessary rf69_set_mode() function call when rx is waiting for
a telegram. There is waste to call rf69_set_mode() twice for becoming
standby mode.

Signed-off-by: Sidong Yang <realwa...@gmail.com>
---
 drivers/staging/pi433/pi433_if.c | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/drivers/staging/pi433/pi433_if.c b/drivers/staging/pi433/pi433_if.c
index 53928af696a6..e822f87fc533 100644
--- a/drivers/staging/pi433/pi433_if.c
+++ b/drivers/staging/pi433/pi433_if.c
@@ -650,21 +650,19 @@ pi433_tx_thread(void *data)
                disable_irq(device->irq_num[DIO0]);
                device->tx_active = true;
 
+               /* clear fifo, set fifo threshold, set payload length */
+               retval = rf69_set_mode(spi, standby); /* this clears the fifo */
+               if (retval < 0)
+                       return retval;
+
                if (device->rx_active && !rx_interrupted) {
                        /*
                         * rx is currently waiting for a telegram;
                         * we need to set the radio module to standby
                         */
-                       retval = rf69_set_mode(device->spi, standby);
-                       if (retval < 0)
-                               return retval;
                        rx_interrupted = true;
                }
 
-               /* clear fifo, set fifo threshold, set payload length */
-               retval = rf69_set_mode(spi, standby); /* this clears the fifo */
-               if (retval < 0)
-                       return retval;
                retval = rf69_set_fifo_threshold(spi, FIFO_THRESHOLD);
                if (retval < 0)
                        return retval;
-- 
2.11.0

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to