Merge tag 'dm-9oct18' of git://git.denx.de/u-boot-dm
[platform/kernel/u-boot.git] / drivers / spi / sandbox_spi.c
index bad5660..906401e 100644 (file)
@@ -8,6 +8,8 @@
  * Licensed under the GPL-2 or later.
  */
 
+#define LOG_CATEGORY UCLASS_SPI
+
 #include <common.h>
 #include <dm.h>
 #include <malloc.h>
 #include <spi_flash.h>
 #include <os.h>
 
-#include <asm/errno.h>
+#include <linux/errno.h>
 #include <asm/spi.h>
 #include <asm/state.h>
 #include <dm/device-internal.h>
 
-DECLARE_GLOBAL_DATA_PTR;
-
 #ifndef CONFIG_SPI_IDLE_VAL
 # define CONFIG_SPI_IDLE_VAL 0xFF
 #endif
@@ -58,7 +58,6 @@ static int sandbox_spi_xfer(struct udevice *slave, unsigned int bitlen,
        struct udevice *emul;
        uint bytes = bitlen / 8, i;
        int ret;
-       u8 *tx = (void *)dout, *rx = din;
        uint busnum, cs;
 
        if (bitlen == 0)
@@ -89,37 +88,16 @@ static int sandbox_spi_xfer(struct udevice *slave, unsigned int bitlen,
        if (ret)
                return ret;
 
-       /* make sure rx/tx buffers are full so clients can assume */
-       if (!tx) {
-               debug("sandbox_spi: xfer: auto-allocating tx scratch buffer\n");
-               tx = malloc(bytes);
-               if (!tx) {
-                       debug("sandbox_spi: Out of memory\n");
-                       return -ENOMEM;
-               }
-       }
-       if (!rx) {
-               debug("sandbox_spi: xfer: auto-allocating rx scratch buffer\n");
-               rx = malloc(bytes);
-               if (!rx) {
-                       debug("sandbox_spi: Out of memory\n");
-                       return -ENOMEM;
-               }
-       }
-
        ops = spi_emul_get_ops(emul);
        ret = ops->xfer(emul, bitlen, dout, din, flags);
 
-       debug("sandbox_spi: xfer: got back %i (that's %s)\n rx:",
-             ret, ret ? "bad" : "good");
-       for (i = 0; i < bytes; ++i)
-               debug(" %u:%02x", i, rx[i]);
-       debug("\n");
-
-       if (tx != dout)
-               free(tx);
-       if (rx != din)
-               free(rx);
+       log_content("sandbox_spi: xfer: got back %i (that's %s)\n rx:",
+                   ret, ret ? "bad" : "good");
+       if (din) {
+               for (i = 0; i < bytes; ++i)
+                       log_content(" %u:%02x", i, ((u8 *)din)[i]);
+       }
+       log_content("\n");
 
        return ret;
 }