@@ -52,7 +52,7 @@ MODULE_PARM_DESC(polling_limit_us,
52
52
/* The maximum bytes that a sdma BD can transfer. */
53
53
#define MAX_SDMA_BD_BYTES (1 << 15)
54
54
#define MX51_ECSPI_CTRL_MAX_BURST 512
55
- /* The maximum bytes that IMX53_ECSPI can transfer in slave mode.*/
55
+ /* The maximum bytes that IMX53_ECSPI can transfer in target mode.*/
56
56
#define MX53_MAX_TRANSFER_BYTES 512
57
57
58
58
enum spi_imx_devtype {
@@ -77,7 +77,7 @@ struct spi_imx_devtype_data {
77
77
void (* setup_wml )(struct spi_imx_data * spi_imx );
78
78
void (* disable )(struct spi_imx_data * spi_imx );
79
79
bool has_dmamode ;
80
- bool has_slavemode ;
80
+ bool has_targetmode ;
81
81
unsigned int fifo_size ;
82
82
bool dynamic_burst ;
83
83
/*
@@ -113,10 +113,10 @@ struct spi_imx_data {
113
113
unsigned int dynamic_burst ;
114
114
bool rx_only ;
115
115
116
- /* Slave mode */
117
- bool slave_mode ;
118
- bool slave_aborted ;
119
- unsigned int slave_burst ;
116
+ /* Target mode */
117
+ bool target_mode ;
118
+ bool target_aborted ;
119
+ unsigned int target_burst ;
120
120
121
121
/* DMA */
122
122
bool usedma ;
@@ -240,7 +240,7 @@ static bool spi_imx_can_dma(struct spi_controller *controller, struct spi_device
240
240
if (!controller -> dma_rx )
241
241
return false;
242
242
243
- if (spi_imx -> slave_mode )
243
+ if (spi_imx -> target_mode )
244
244
return false;
245
245
246
246
if (transfer -> len < spi_imx -> devtype_data -> fifo_size )
@@ -404,12 +404,12 @@ static void spi_imx_buf_tx_swap(struct spi_imx_data *spi_imx)
404
404
writel (val , spi_imx -> base + MXC_CSPITXDATA );
405
405
}
406
406
407
- static void mx53_ecspi_rx_slave (struct spi_imx_data * spi_imx )
407
+ static void mx53_ecspi_rx_target (struct spi_imx_data * spi_imx )
408
408
{
409
409
u32 val = be32_to_cpu (readl (spi_imx -> base + MXC_CSPIRXDATA ));
410
410
411
411
if (spi_imx -> rx_buf ) {
412
- int n_bytes = spi_imx -> slave_burst % sizeof (val );
412
+ int n_bytes = spi_imx -> target_burst % sizeof (val );
413
413
414
414
if (!n_bytes )
415
415
n_bytes = sizeof (val );
@@ -418,13 +418,13 @@ static void mx53_ecspi_rx_slave(struct spi_imx_data *spi_imx)
418
418
((u8 * )& val ) + sizeof (val ) - n_bytes , n_bytes );
419
419
420
420
spi_imx -> rx_buf += n_bytes ;
421
- spi_imx -> slave_burst -= n_bytes ;
421
+ spi_imx -> target_burst -= n_bytes ;
422
422
}
423
423
424
424
spi_imx -> remainder -= sizeof (u32 );
425
425
}
426
426
427
- static void mx53_ecspi_tx_slave (struct spi_imx_data * spi_imx )
427
+ static void mx53_ecspi_tx_target (struct spi_imx_data * spi_imx )
428
428
{
429
429
u32 val = 0 ;
430
430
int n_bytes = spi_imx -> count % sizeof (val );
@@ -535,8 +535,8 @@ static int mx51_ecspi_prepare_message(struct spi_imx_data *spi_imx,
535
535
u32 current_cfg = cfg ;
536
536
int channel = mx51_ecspi_channel (spi );
537
537
538
- /* set Master or Slave mode */
539
- if (spi_imx -> slave_mode )
538
+ /* set Host or Target mode */
539
+ if (spi_imx -> target_mode )
540
540
ctrl &= ~MX51_ECSPI_CTRL_MODE_MASK ;
541
541
else
542
542
ctrl |= MX51_ECSPI_CTRL_MODE_MASK ;
@@ -564,11 +564,11 @@ static int mx51_ecspi_prepare_message(struct spi_imx_data *spi_imx,
564
564
writel (testreg , spi_imx -> base + MX51_ECSPI_TESTREG );
565
565
566
566
/*
567
- * eCSPI burst completion by Chip Select signal in Slave mode
567
+ * eCSPI burst completion by Chip Select signal in Target mode
568
568
* is not functional for imx53 Soc, config SPI burst completed when
569
569
* BURST_LENGTH + 1 bits are received
570
570
*/
571
- if (spi_imx -> slave_mode && is_imx53_ecspi (spi_imx ))
571
+ if (spi_imx -> target_mode && is_imx53_ecspi (spi_imx ))
572
572
cfg &= ~MX51_ECSPI_CONFIG_SBBCTRL (channel );
573
573
else
574
574
cfg |= MX51_ECSPI_CONFIG_SBBCTRL (channel );
@@ -655,8 +655,8 @@ static int mx51_ecspi_prepare_transfer(struct spi_imx_data *spi_imx,
655
655
656
656
/* Clear BL field and set the right value */
657
657
ctrl &= ~MX51_ECSPI_CTRL_BL_MASK ;
658
- if (spi_imx -> slave_mode && is_imx53_ecspi (spi_imx ))
659
- ctrl |= (spi_imx -> slave_burst * 8 - 1 )
658
+ if (spi_imx -> target_mode && is_imx53_ecspi (spi_imx ))
659
+ ctrl |= (spi_imx -> target_burst * 8 - 1 )
660
660
<< MX51_ECSPI_CTRL_BL_OFFSET ;
661
661
else {
662
662
if (spi_imx -> count >= 512 )
@@ -721,7 +721,7 @@ static void mx51_ecspi_reset(struct spi_imx_data *spi_imx)
721
721
#define MX31_INTREG_RREN (1 << 3)
722
722
723
723
#define MX31_CSPICTRL_ENABLE (1 << 0)
724
- #define MX31_CSPICTRL_MASTER (1 << 1)
724
+ #define MX31_CSPICTRL_HOST (1 << 1)
725
725
#define MX31_CSPICTRL_XCH (1 << 2)
726
726
#define MX31_CSPICTRL_SMC (1 << 3)
727
727
#define MX31_CSPICTRL_POL (1 << 4)
@@ -778,7 +778,7 @@ static int mx31_prepare_message(struct spi_imx_data *spi_imx,
778
778
static int mx31_prepare_transfer (struct spi_imx_data * spi_imx ,
779
779
struct spi_device * spi )
780
780
{
781
- unsigned int reg = MX31_CSPICTRL_ENABLE | MX31_CSPICTRL_MASTER ;
781
+ unsigned int reg = MX31_CSPICTRL_ENABLE | MX31_CSPICTRL_HOST ;
782
782
unsigned int clk ;
783
783
784
784
reg |= spi_imx_clkdiv_2 (spi_imx -> spi_clk , spi_imx -> spi_bus_clk , & clk ) <<
@@ -848,7 +848,7 @@ static void mx31_reset(struct spi_imx_data *spi_imx)
848
848
#define MX21_CSPICTRL_SSPOL (1 << 8)
849
849
#define MX21_CSPICTRL_XCH (1 << 9)
850
850
#define MX21_CSPICTRL_ENABLE (1 << 10)
851
- #define MX21_CSPICTRL_MASTER (1 << 11)
851
+ #define MX21_CSPICTRL_HOST (1 << 11)
852
852
#define MX21_CSPICTRL_DR_SHIFT 14
853
853
#define MX21_CSPICTRL_CS_SHIFT 19
854
854
@@ -882,7 +882,7 @@ static int mx21_prepare_message(struct spi_imx_data *spi_imx,
882
882
static int mx21_prepare_transfer (struct spi_imx_data * spi_imx ,
883
883
struct spi_device * spi )
884
884
{
885
- unsigned int reg = MX21_CSPICTRL_ENABLE | MX21_CSPICTRL_MASTER ;
885
+ unsigned int reg = MX21_CSPICTRL_ENABLE | MX21_CSPICTRL_HOST ;
886
886
unsigned int max = is_imx27_cspi (spi_imx ) ? 16 : 18 ;
887
887
unsigned int clk ;
888
888
@@ -924,7 +924,7 @@ static void mx21_reset(struct spi_imx_data *spi_imx)
924
924
#define MX1_CSPICTRL_PHA (1 << 5)
925
925
#define MX1_CSPICTRL_XCH (1 << 8)
926
926
#define MX1_CSPICTRL_ENABLE (1 << 9)
927
- #define MX1_CSPICTRL_MASTER (1 << 10)
927
+ #define MX1_CSPICTRL_HOST (1 << 10)
928
928
#define MX1_CSPICTRL_DR_SHIFT 13
929
929
930
930
static void mx1_intctrl (struct spi_imx_data * spi_imx , int enable )
@@ -957,7 +957,7 @@ static int mx1_prepare_message(struct spi_imx_data *spi_imx,
957
957
static int mx1_prepare_transfer (struct spi_imx_data * spi_imx ,
958
958
struct spi_device * spi )
959
959
{
960
- unsigned int reg = MX1_CSPICTRL_ENABLE | MX1_CSPICTRL_MASTER ;
960
+ unsigned int reg = MX1_CSPICTRL_ENABLE | MX1_CSPICTRL_HOST ;
961
961
unsigned int clk ;
962
962
963
963
reg |= spi_imx_clkdiv_2 (spi_imx -> spi_clk , spi_imx -> spi_bus_clk , & clk ) <<
@@ -996,7 +996,7 @@ static struct spi_imx_devtype_data imx1_cspi_devtype_data = {
996
996
.fifo_size = 8 ,
997
997
.has_dmamode = false,
998
998
.dynamic_burst = false,
999
- .has_slavemode = false,
999
+ .has_targetmode = false,
1000
1000
.devtype = IMX1_CSPI ,
1001
1001
};
1002
1002
@@ -1010,7 +1010,7 @@ static struct spi_imx_devtype_data imx21_cspi_devtype_data = {
1010
1010
.fifo_size = 8 ,
1011
1011
.has_dmamode = false,
1012
1012
.dynamic_burst = false,
1013
- .has_slavemode = false,
1013
+ .has_targetmode = false,
1014
1014
.devtype = IMX21_CSPI ,
1015
1015
};
1016
1016
@@ -1025,7 +1025,7 @@ static struct spi_imx_devtype_data imx27_cspi_devtype_data = {
1025
1025
.fifo_size = 8 ,
1026
1026
.has_dmamode = false,
1027
1027
.dynamic_burst = false,
1028
- .has_slavemode = false,
1028
+ .has_targetmode = false,
1029
1029
.devtype = IMX27_CSPI ,
1030
1030
};
1031
1031
@@ -1039,7 +1039,7 @@ static struct spi_imx_devtype_data imx31_cspi_devtype_data = {
1039
1039
.fifo_size = 8 ,
1040
1040
.has_dmamode = false,
1041
1041
.dynamic_burst = false,
1042
- .has_slavemode = false,
1042
+ .has_targetmode = false,
1043
1043
.devtype = IMX31_CSPI ,
1044
1044
};
1045
1045
@@ -1054,7 +1054,7 @@ static struct spi_imx_devtype_data imx35_cspi_devtype_data = {
1054
1054
.fifo_size = 8 ,
1055
1055
.has_dmamode = true,
1056
1056
.dynamic_burst = false,
1057
- .has_slavemode = false,
1057
+ .has_targetmode = false,
1058
1058
.devtype = IMX35_CSPI ,
1059
1059
};
1060
1060
@@ -1069,7 +1069,7 @@ static struct spi_imx_devtype_data imx51_ecspi_devtype_data = {
1069
1069
.fifo_size = 64 ,
1070
1070
.has_dmamode = true,
1071
1071
.dynamic_burst = true,
1072
- .has_slavemode = true,
1072
+ .has_targetmode = true,
1073
1073
.disable = mx51_ecspi_disable ,
1074
1074
.devtype = IMX51_ECSPI ,
1075
1075
};
@@ -1083,7 +1083,7 @@ static struct spi_imx_devtype_data imx53_ecspi_devtype_data = {
1083
1083
.reset = mx51_ecspi_reset ,
1084
1084
.fifo_size = 64 ,
1085
1085
.has_dmamode = true,
1086
- .has_slavemode = true,
1086
+ .has_targetmode = true,
1087
1087
.disable = mx51_ecspi_disable ,
1088
1088
.devtype = IMX53_ECSPI ,
1089
1089
};
@@ -1099,7 +1099,7 @@ static struct spi_imx_devtype_data imx6ul_ecspi_devtype_data = {
1099
1099
.fifo_size = 64 ,
1100
1100
.has_dmamode = true,
1101
1101
.dynamic_burst = true,
1102
- .has_slavemode = true,
1102
+ .has_targetmode = true,
1103
1103
.tx_glitch_fixed = true,
1104
1104
.disable = mx51_ecspi_disable ,
1105
1105
.devtype = IMX51_ECSPI ,
@@ -1164,7 +1164,7 @@ static void spi_imx_push(struct spi_imx_data *spi_imx)
1164
1164
spi_imx -> txfifo ++ ;
1165
1165
}
1166
1166
1167
- if (!spi_imx -> slave_mode )
1167
+ if (!spi_imx -> target_mode )
1168
1168
spi_imx -> devtype_data -> trigger (spi_imx );
1169
1169
}
1170
1170
@@ -1268,7 +1268,7 @@ static int spi_imx_setupxfer(struct spi_device *spi,
1268
1268
* words, we have to use multiple word-size bursts, we can't use
1269
1269
* dynamic_burst in that case.
1270
1270
*/
1271
- if (spi_imx -> devtype_data -> dynamic_burst && !spi_imx -> slave_mode &&
1271
+ if (spi_imx -> devtype_data -> dynamic_burst && !spi_imx -> target_mode &&
1272
1272
!(spi -> mode & SPI_CS_WORD ) &&
1273
1273
(spi_imx -> bits_per_word == 8 ||
1274
1274
spi_imx -> bits_per_word == 16 ||
@@ -1300,10 +1300,10 @@ static int spi_imx_setupxfer(struct spi_device *spi,
1300
1300
spi_imx -> rx_only = ((t -> tx_buf == NULL )
1301
1301
|| (t -> tx_buf == spi -> controller -> dummy_tx ));
1302
1302
1303
- if (is_imx53_ecspi (spi_imx ) && spi_imx -> slave_mode ) {
1304
- spi_imx -> rx = mx53_ecspi_rx_slave ;
1305
- spi_imx -> tx = mx53_ecspi_tx_slave ;
1306
- spi_imx -> slave_burst = t -> len ;
1303
+ if (is_imx53_ecspi (spi_imx ) && spi_imx -> target_mode ) {
1304
+ spi_imx -> rx = mx53_ecspi_rx_target ;
1305
+ spi_imx -> tx = mx53_ecspi_tx_target ;
1306
+ spi_imx -> target_burst = t -> len ;
1307
1307
}
1308
1308
1309
1309
spi_imx -> devtype_data -> prepare_transfer (spi_imx , spi );
@@ -1568,8 +1568,8 @@ static int spi_imx_poll_transfer(struct spi_device *spi,
1568
1568
return 0 ;
1569
1569
}
1570
1570
1571
- static int spi_imx_pio_transfer_slave (struct spi_device * spi ,
1572
- struct spi_transfer * transfer )
1571
+ static int spi_imx_pio_transfer_target (struct spi_device * spi ,
1572
+ struct spi_transfer * transfer )
1573
1573
{
1574
1574
struct spi_imx_data * spi_imx = spi_controller_get_devdata (spi -> controller );
1575
1575
int ret = 0 ;
@@ -1588,22 +1588,22 @@ static int spi_imx_pio_transfer_slave(struct spi_device *spi,
1588
1588
spi_imx -> remainder = 0 ;
1589
1589
1590
1590
reinit_completion (& spi_imx -> xfer_done );
1591
- spi_imx -> slave_aborted = false;
1591
+ spi_imx -> target_aborted = false;
1592
1592
1593
1593
spi_imx_push (spi_imx );
1594
1594
1595
1595
spi_imx -> devtype_data -> intctrl (spi_imx , MXC_INT_TE | MXC_INT_RDR );
1596
1596
1597
1597
if (wait_for_completion_interruptible (& spi_imx -> xfer_done ) ||
1598
- spi_imx -> slave_aborted ) {
1598
+ spi_imx -> target_aborted ) {
1599
1599
dev_dbg (& spi -> dev , "interrupted\n" );
1600
1600
ret = - EINTR ;
1601
1601
}
1602
1602
1603
- /* ecspi has a HW issue when works in Slave mode,
1603
+ /* ecspi has a HW issue when works in Target mode,
1604
1604
* after 64 words writtern to TXFIFO, even TXFIFO becomes empty,
1605
1605
* ECSPI_TXDATA keeps shift out the last word data,
1606
- * so we have to disable ECSPI when in slave mode after the
1606
+ * so we have to disable ECSPI when in target mode after the
1607
1607
* transfer completes
1608
1608
*/
1609
1609
if (spi_imx -> devtype_data -> disable )
@@ -1626,8 +1626,8 @@ static int spi_imx_transfer_one(struct spi_controller *controller,
1626
1626
while (spi_imx -> devtype_data -> rx_available (spi_imx ))
1627
1627
readl (spi_imx -> base + MXC_CSPIRXDATA );
1628
1628
1629
- if (spi_imx -> slave_mode )
1630
- return spi_imx_pio_transfer_slave (spi , transfer );
1629
+ if (spi_imx -> target_mode )
1630
+ return spi_imx_pio_transfer_target (spi , transfer );
1631
1631
1632
1632
/*
1633
1633
* If we decided in spi_imx_can_dma() that we want to do a DMA
@@ -1693,11 +1693,11 @@ spi_imx_unprepare_message(struct spi_controller *controller, struct spi_message
1693
1693
return 0 ;
1694
1694
}
1695
1695
1696
- static int spi_imx_slave_abort (struct spi_controller * controller )
1696
+ static int spi_imx_target_abort (struct spi_controller * controller )
1697
1697
{
1698
1698
struct spi_imx_data * spi_imx = spi_controller_get_devdata (controller );
1699
1699
1700
- spi_imx -> slave_aborted = true;
1700
+ spi_imx -> target_aborted = true;
1701
1701
complete (& spi_imx -> xfer_done );
1702
1702
1703
1703
return 0 ;
@@ -1712,17 +1712,17 @@ static int spi_imx_probe(struct platform_device *pdev)
1712
1712
int ret , irq , spi_drctl ;
1713
1713
const struct spi_imx_devtype_data * devtype_data =
1714
1714
of_device_get_match_data (& pdev -> dev );
1715
- bool slave_mode ;
1715
+ bool target_mode ;
1716
1716
u32 val ;
1717
1717
1718
- slave_mode = devtype_data -> has_slavemode &&
1719
- of_property_read_bool (np , "spi-slave" );
1720
- if (slave_mode )
1721
- controller = spi_alloc_slave (& pdev -> dev ,
1722
- sizeof (struct spi_imx_data ));
1723
- else
1724
- controller = spi_alloc_master (& pdev -> dev ,
1718
+ target_mode = devtype_data -> has_targetmode &&
1719
+ of_property_read_bool (np , "spi-slave" );
1720
+ if (target_mode )
1721
+ controller = spi_alloc_target (& pdev -> dev ,
1725
1722
sizeof (struct spi_imx_data ));
1723
+ else
1724
+ controller = spi_alloc_host (& pdev -> dev ,
1725
+ sizeof (struct spi_imx_data ));
1726
1726
if (!controller )
1727
1727
return - ENOMEM ;
1728
1728
@@ -1741,7 +1741,7 @@ static int spi_imx_probe(struct platform_device *pdev)
1741
1741
spi_imx = spi_controller_get_devdata (controller );
1742
1742
spi_imx -> controller = controller ;
1743
1743
spi_imx -> dev = & pdev -> dev ;
1744
- spi_imx -> slave_mode = slave_mode ;
1744
+ spi_imx -> target_mode = target_mode ;
1745
1745
1746
1746
spi_imx -> devtype_data = devtype_data ;
1747
1747
@@ -1761,7 +1761,7 @@ static int spi_imx_probe(struct platform_device *pdev)
1761
1761
controller -> cleanup = spi_imx_cleanup ;
1762
1762
controller -> prepare_message = spi_imx_prepare_message ;
1763
1763
controller -> unprepare_message = spi_imx_unprepare_message ;
1764
- controller -> slave_abort = spi_imx_slave_abort ;
1764
+ controller -> target_abort = spi_imx_target_abort ;
1765
1765
controller -> mode_bits = SPI_CPOL | SPI_CPHA | SPI_CS_HIGH | SPI_NO_CS |
1766
1766
SPI_MOSI_IDLE_LOW ;
1767
1767
0 commit comments