]> www.infradead.org Git - linux.git/commitdiff
power: reset: at91-reset: Optimize at91_reset()
authorAlexander Shiyan <eagle.alexander923@gmail.com>
Fri, 7 Mar 2025 05:38:09 +0000 (08:38 +0300)
committerSebastian Reichel <sebastian.reichel@collabora.com>
Sun, 27 Apr 2025 21:59:08 +0000 (23:59 +0200)
This patch adds a small optimization to the low-level at91_reset()
function, which includes:
- Removes the extra branch, since the following store operations
  already have proper condition checks.
- Removes the definition of the clobber register r4, since it is
  no longer used in the code.

Fixes: fcd0532fac2a ("power: reset: at91-reset: make at91sam9g45_restart() generic")
Signed-off-by: Alexander Shiyan <eagle.alexander923@gmail.com>
Reviewed-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Link: https://lore.kernel.org/r/20250307053809.20245-1-eagle.alexander923@gmail.com
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
drivers/power/reset/at91-reset.c

index 036b18a1f90f807ae95b7081cd0d30f284b744c8..511f5a8f8961cebf23ea19f3f4ed1d10ed5fc251 100644 (file)
@@ -129,12 +129,11 @@ static int at91_reset(struct notifier_block *this, unsigned long mode,
                "       str     %4, [%0, %6]\n\t"
                /* Disable SDRAM1 accesses */
                "1:     tst     %1, #0\n\t"
-               "       beq     2f\n\t"
                "       strne   %3, [%1, #" __stringify(AT91_DDRSDRC_RTR) "]\n\t"
                /* Power down SDRAM1 */
                "       strne   %4, [%1, %6]\n\t"
                /* Reset CPU */
-               "2:     str     %5, [%2, #" __stringify(AT91_RSTC_CR) "]\n\t"
+               "       str     %5, [%2, #" __stringify(AT91_RSTC_CR) "]\n\t"
 
                "       b       .\n\t"
                :
@@ -145,7 +144,7 @@ static int at91_reset(struct notifier_block *this, unsigned long mode,
                  "r" cpu_to_le32(AT91_DDRSDRC_LPCB_POWER_DOWN),
                  "r" (reset->data->reset_args),
                  "r" (reset->ramc_lpr)
-               : "r4");
+       );
 
        return NOTIFY_DONE;
 }