rockchip: spi: add debug message for delay in CS toggle
authorPhilipp Tomsich <philipp.tomsich@theobroma-systems.com>
Sun, 3 Feb 2019 15:17:26 +0000 (16:17 +0100)
committerPhilipp Tomsich <philipp.tomsich@theobroma-systems.com>
Tue, 30 Apr 2019 22:00:04 +0000 (00:00 +0200)
In analysing delays introduced for large SPI reads, the absence of any
indication when a delay was inserted (to ensure the CS toggling is
observed by devices) became apparent.

Add an additional debug-only debug message to record the insertion and
duration of any delay (note that the debug-message will cause a delay
on-top of the delay-duration).

Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
drivers/spi/rk_spi.c

index 14437c0..4153240 100644 (file)
@@ -130,8 +130,13 @@ static void spi_cs_activate(struct udevice *dev, uint cs)
        if (plat->deactivate_delay_us && priv->last_transaction_us) {
                ulong delay_us;         /* The delay completed so far */
                delay_us = timer_get_us() - priv->last_transaction_us;
-               if (delay_us < plat->deactivate_delay_us)
-                       udelay(plat->deactivate_delay_us - delay_us);
+               if (delay_us < plat->deactivate_delay_us) {
+                       ulong additional_delay_us =
+                               plat->deactivate_delay_us - delay_us;
+                       debug("%s: delaying by %ld us\n",
+                             __func__, additional_delay_us);
+                       udelay(additional_delay_us);
+               }
        }
 
        debug("activate cs%u\n", cs);