/* The maximum bytes that a sdma BD can transfer. */
 #define MAX_SDMA_BD_BYTES (1 << 15)
 #define MX51_ECSPI_CTRL_MAX_BURST      512
-/* The maximum bytes that IMX53_ECSPI can transfer in slave mode.*/
+/* The maximum bytes that IMX53_ECSPI can transfer in target mode.*/
 #define MX53_MAX_TRANSFER_BYTES                512
 
 enum spi_imx_devtype {
        void (*setup_wml)(struct spi_imx_data *spi_imx);
        void (*disable)(struct spi_imx_data *spi_imx);
        bool has_dmamode;
-       bool has_slavemode;
+       bool has_targetmode;
        unsigned int fifo_size;
        bool dynamic_burst;
        /*
        unsigned int dynamic_burst;
        bool rx_only;
 
-       /* Slave mode */
-       bool slave_mode;
-       bool slave_aborted;
-       unsigned int slave_burst;
+       /* Target mode */
+       bool target_mode;
+       bool target_aborted;
+       unsigned int target_burst;
 
        /* DMA */
        bool usedma;
        if (!controller->dma_rx)
                return false;
 
-       if (spi_imx->slave_mode)
+       if (spi_imx->target_mode)
                return false;
 
        if (transfer->len < spi_imx->devtype_data->fifo_size)
        writel(val, spi_imx->base + MXC_CSPITXDATA);
 }
 
-static void mx53_ecspi_rx_slave(struct spi_imx_data *spi_imx)
+static void mx53_ecspi_rx_target(struct spi_imx_data *spi_imx)
 {
        u32 val = be32_to_cpu(readl(spi_imx->base + MXC_CSPIRXDATA));
 
        if (spi_imx->rx_buf) {
-               int n_bytes = spi_imx->slave_burst % sizeof(val);
+               int n_bytes = spi_imx->target_burst % sizeof(val);
 
                if (!n_bytes)
                        n_bytes = sizeof(val);
                       ((u8 *)&val) + sizeof(val) - n_bytes, n_bytes);
 
                spi_imx->rx_buf += n_bytes;
-               spi_imx->slave_burst -= n_bytes;
+               spi_imx->target_burst -= n_bytes;
        }
 
        spi_imx->remainder -= sizeof(u32);
 }
 
-static void mx53_ecspi_tx_slave(struct spi_imx_data *spi_imx)
+static void mx53_ecspi_tx_target(struct spi_imx_data *spi_imx)
 {
        u32 val = 0;
        int n_bytes = spi_imx->count % sizeof(val);
        u32 current_cfg = cfg;
        int channel = mx51_ecspi_channel(spi);
 
-       /* set Master or Slave mode */
-       if (spi_imx->slave_mode)
+       /* set Host or Target mode */
+       if (spi_imx->target_mode)
                ctrl &= ~MX51_ECSPI_CTRL_MODE_MASK;
        else
                ctrl |= MX51_ECSPI_CTRL_MODE_MASK;
        writel(testreg, spi_imx->base + MX51_ECSPI_TESTREG);
 
        /*
-        * eCSPI burst completion by Chip Select signal in Slave mode
+        * eCSPI burst completion by Chip Select signal in Target mode
         * is not functional for imx53 Soc, config SPI burst completed when
         * BURST_LENGTH + 1 bits are received
         */
-       if (spi_imx->slave_mode && is_imx53_ecspi(spi_imx))
+       if (spi_imx->target_mode && is_imx53_ecspi(spi_imx))
                cfg &= ~MX51_ECSPI_CONFIG_SBBCTRL(channel);
        else
                cfg |= MX51_ECSPI_CONFIG_SBBCTRL(channel);
 
        /* Clear BL field and set the right value */
        ctrl &= ~MX51_ECSPI_CTRL_BL_MASK;
-       if (spi_imx->slave_mode && is_imx53_ecspi(spi_imx))
-               ctrl |= (spi_imx->slave_burst * 8 - 1)
+       if (spi_imx->target_mode && is_imx53_ecspi(spi_imx))
+               ctrl |= (spi_imx->target_burst * 8 - 1)
                        << MX51_ECSPI_CTRL_BL_OFFSET;
        else {
                if (spi_imx->count >= 512)
 #define MX31_INTREG_RREN       (1 << 3)
 
 #define MX31_CSPICTRL_ENABLE   (1 << 0)
-#define MX31_CSPICTRL_MASTER   (1 << 1)
+#define MX31_CSPICTRL_HOST     (1 << 1)
 #define MX31_CSPICTRL_XCH      (1 << 2)
 #define MX31_CSPICTRL_SMC      (1 << 3)
 #define MX31_CSPICTRL_POL      (1 << 4)
 static int mx31_prepare_transfer(struct spi_imx_data *spi_imx,
                                 struct spi_device *spi)
 {
-       unsigned int reg = MX31_CSPICTRL_ENABLE | MX31_CSPICTRL_MASTER;
+       unsigned int reg = MX31_CSPICTRL_ENABLE | MX31_CSPICTRL_HOST;
        unsigned int clk;
 
        reg |= spi_imx_clkdiv_2(spi_imx->spi_clk, spi_imx->spi_bus_clk, &clk) <<
 #define MX21_CSPICTRL_SSPOL    (1 << 8)
 #define MX21_CSPICTRL_XCH      (1 << 9)
 #define MX21_CSPICTRL_ENABLE   (1 << 10)
-#define MX21_CSPICTRL_MASTER   (1 << 11)
+#define MX21_CSPICTRL_HOST     (1 << 11)
 #define MX21_CSPICTRL_DR_SHIFT 14
 #define MX21_CSPICTRL_CS_SHIFT 19
 
 static int mx21_prepare_transfer(struct spi_imx_data *spi_imx,
                                 struct spi_device *spi)
 {
-       unsigned int reg = MX21_CSPICTRL_ENABLE | MX21_CSPICTRL_MASTER;
+       unsigned int reg = MX21_CSPICTRL_ENABLE | MX21_CSPICTRL_HOST;
        unsigned int max = is_imx27_cspi(spi_imx) ? 16 : 18;
        unsigned int clk;
 
 #define MX1_CSPICTRL_PHA       (1 << 5)
 #define MX1_CSPICTRL_XCH       (1 << 8)
 #define MX1_CSPICTRL_ENABLE    (1 << 9)
-#define MX1_CSPICTRL_MASTER    (1 << 10)
+#define MX1_CSPICTRL_HOST      (1 << 10)
 #define MX1_CSPICTRL_DR_SHIFT  13
 
 static void mx1_intctrl(struct spi_imx_data *spi_imx, int enable)
 static int mx1_prepare_transfer(struct spi_imx_data *spi_imx,
                                struct spi_device *spi)
 {
-       unsigned int reg = MX1_CSPICTRL_ENABLE | MX1_CSPICTRL_MASTER;
+       unsigned int reg = MX1_CSPICTRL_ENABLE | MX1_CSPICTRL_HOST;
        unsigned int clk;
 
        reg |= spi_imx_clkdiv_2(spi_imx->spi_clk, spi_imx->spi_bus_clk, &clk) <<
        .fifo_size = 8,
        .has_dmamode = false,
        .dynamic_burst = false,
-       .has_slavemode = false,
+       .has_targetmode = false,
        .devtype = IMX1_CSPI,
 };
 
        .fifo_size = 8,
        .has_dmamode = false,
        .dynamic_burst = false,
-       .has_slavemode = false,
+       .has_targetmode = false,
        .devtype = IMX21_CSPI,
 };
 
        .fifo_size = 8,
        .has_dmamode = false,
        .dynamic_burst = false,
-       .has_slavemode = false,
+       .has_targetmode = false,
        .devtype = IMX27_CSPI,
 };
 
        .fifo_size = 8,
        .has_dmamode = false,
        .dynamic_burst = false,
-       .has_slavemode = false,
+       .has_targetmode = false,
        .devtype = IMX31_CSPI,
 };
 
        .fifo_size = 8,
        .has_dmamode = true,
        .dynamic_burst = false,
-       .has_slavemode = false,
+       .has_targetmode = false,
        .devtype = IMX35_CSPI,
 };
 
        .fifo_size = 64,
        .has_dmamode = true,
        .dynamic_burst = true,
-       .has_slavemode = true,
+       .has_targetmode = true,
        .disable = mx51_ecspi_disable,
        .devtype = IMX51_ECSPI,
 };
        .reset = mx51_ecspi_reset,
        .fifo_size = 64,
        .has_dmamode = true,
-       .has_slavemode = true,
+       .has_targetmode = true,
        .disable = mx51_ecspi_disable,
        .devtype = IMX53_ECSPI,
 };
        .fifo_size = 64,
        .has_dmamode = true,
        .dynamic_burst = true,
-       .has_slavemode = true,
+       .has_targetmode = true,
        .tx_glitch_fixed = true,
        .disable = mx51_ecspi_disable,
        .devtype = IMX51_ECSPI,
                spi_imx->txfifo++;
        }
 
-       if (!spi_imx->slave_mode)
+       if (!spi_imx->target_mode)
                spi_imx->devtype_data->trigger(spi_imx);
 }
 
         * words, we have to use multiple word-size bursts, we can't use
         * dynamic_burst in that case.
         */
-       if (spi_imx->devtype_data->dynamic_burst && !spi_imx->slave_mode &&
+       if (spi_imx->devtype_data->dynamic_burst && !spi_imx->target_mode &&
            !(spi->mode & SPI_CS_WORD) &&
            (spi_imx->bits_per_word == 8 ||
            spi_imx->bits_per_word == 16 ||
        spi_imx->rx_only = ((t->tx_buf == NULL)
                        || (t->tx_buf == spi->controller->dummy_tx));
 
-       if (is_imx53_ecspi(spi_imx) && spi_imx->slave_mode) {
-               spi_imx->rx = mx53_ecspi_rx_slave;
-               spi_imx->tx = mx53_ecspi_tx_slave;
-               spi_imx->slave_burst = t->len;
+       if (is_imx53_ecspi(spi_imx) && spi_imx->target_mode) {
+               spi_imx->rx = mx53_ecspi_rx_target;
+               spi_imx->tx = mx53_ecspi_tx_target;
+               spi_imx->target_burst = t->len;
        }
 
        spi_imx->devtype_data->prepare_transfer(spi_imx, spi);
        return 0;
 }
 
-static int spi_imx_pio_transfer_slave(struct spi_device *spi,
-                                     struct spi_transfer *transfer)
+static int spi_imx_pio_transfer_target(struct spi_device *spi,
+                                      struct spi_transfer *transfer)
 {
        struct spi_imx_data *spi_imx = spi_controller_get_devdata(spi->controller);
        int ret = 0;
        spi_imx->remainder = 0;
 
        reinit_completion(&spi_imx->xfer_done);
-       spi_imx->slave_aborted = false;
+       spi_imx->target_aborted = false;
 
        spi_imx_push(spi_imx);
 
        spi_imx->devtype_data->intctrl(spi_imx, MXC_INT_TE | MXC_INT_RDR);
 
        if (wait_for_completion_interruptible(&spi_imx->xfer_done) ||
-           spi_imx->slave_aborted) {
+           spi_imx->target_aborted) {
                dev_dbg(&spi->dev, "interrupted\n");
                ret = -EINTR;
        }
 
-       /* ecspi has a HW issue when works in Slave mode,
+       /* ecspi has a HW issue when works in Target mode,
         * after 64 words writtern to TXFIFO, even TXFIFO becomes empty,
         * ECSPI_TXDATA keeps shift out the last word data,
-        * so we have to disable ECSPI when in slave mode after the
+        * so we have to disable ECSPI when in target mode after the
         * transfer completes
         */
        if (spi_imx->devtype_data->disable)
        while (spi_imx->devtype_data->rx_available(spi_imx))
                readl(spi_imx->base + MXC_CSPIRXDATA);
 
-       if (spi_imx->slave_mode)
-               return spi_imx_pio_transfer_slave(spi, transfer);
+       if (spi_imx->target_mode)
+               return spi_imx_pio_transfer_target(spi, transfer);
 
        /*
         * If we decided in spi_imx_can_dma() that we want to do a DMA
        return 0;
 }
 
-static int spi_imx_slave_abort(struct spi_controller *controller)
+static int spi_imx_target_abort(struct spi_controller *controller)
 {
        struct spi_imx_data *spi_imx = spi_controller_get_devdata(controller);
 
-       spi_imx->slave_aborted = true;
+       spi_imx->target_aborted = true;
        complete(&spi_imx->xfer_done);
 
        return 0;
        int ret, irq, spi_drctl;
        const struct spi_imx_devtype_data *devtype_data =
                        of_device_get_match_data(&pdev->dev);
-       bool slave_mode;
+       bool target_mode;
        u32 val;
 
-       slave_mode = devtype_data->has_slavemode &&
-                       of_property_read_bool(np, "spi-slave");
-       if (slave_mode)
-               controller = spi_alloc_slave(&pdev->dev,
-                                            sizeof(struct spi_imx_data));
-       else
-               controller = spi_alloc_master(&pdev->dev,
+       target_mode = devtype_data->has_targetmode &&
+                     of_property_read_bool(np, "spi-slave");
+       if (target_mode)
+               controller = spi_alloc_target(&pdev->dev,
                                              sizeof(struct spi_imx_data));
+       else
+               controller = spi_alloc_host(&pdev->dev,
+                                           sizeof(struct spi_imx_data));
        if (!controller)
                return -ENOMEM;
 
        spi_imx = spi_controller_get_devdata(controller);
        spi_imx->controller = controller;
        spi_imx->dev = &pdev->dev;
-       spi_imx->slave_mode = slave_mode;
+       spi_imx->target_mode = target_mode;
 
        spi_imx->devtype_data = devtype_data;
 
        controller->cleanup = spi_imx_cleanup;
        controller->prepare_message = spi_imx_prepare_message;
        controller->unprepare_message = spi_imx_unprepare_message;
-       controller->slave_abort = spi_imx_slave_abort;
+       controller->target_abort = spi_imx_target_abort;
        controller->mode_bits = SPI_CPOL | SPI_CPHA | SPI_CS_HIGH | SPI_NO_CS |
                                SPI_MOSI_IDLE_LOW;