hc
2023-12-11 d2ccde1c8e90d38cee87a1b0309ad2827f3fd30d
kernel/drivers/spi/spi-mxs.c
....@@ -22,7 +22,6 @@
2222 #include <linux/ioport.h>
2323 #include <linux/of.h>
2424 #include <linux/of_device.h>
25
-#include <linux/of_gpio.h>
2625 #include <linux/platform_device.h>
2726 #include <linux/delay.h>
2827 #include <linux/interrupt.h>
....@@ -32,13 +31,14 @@
3231 #include <linux/clk.h>
3332 #include <linux/err.h>
3433 #include <linux/completion.h>
35
-#include <linux/gpio.h>
34
+#include <linux/pinctrl/consumer.h>
3635 #include <linux/regulator/consumer.h>
3736 #include <linux/pm_runtime.h>
3837 #include <linux/module.h>
3938 #include <linux/stmp_device.h>
4039 #include <linux/spi/spi.h>
4140 #include <linux/spi/mxs-spi.h>
41
+#include <trace/events/spi.h>
4242
4343 #define DRIVER_NAME "mxs-spi"
4444
....@@ -374,6 +374,8 @@
374374
375375 list_for_each_entry(t, &m->transfers, transfer_list) {
376376
377
+ trace_spi_transfer_start(m, t);
378
+
377379 status = mxs_spi_setup_transfer(m->spi, t);
378380 if (status)
379381 break;
....@@ -418,6 +420,8 @@
418420 t->rx_buf, t->len,
419421 flag);
420422 }
423
+
424
+ trace_spi_transfer_stop(m, t);
421425
422426 if (status) {
423427 stmp_reset_block(ssp->base);
....@@ -527,7 +531,6 @@
527531 struct spi_master *master;
528532 struct mxs_spi *spi;
529533 struct mxs_ssp *ssp;
530
- struct resource *iores;
531534 struct clk *clk;
532535 void __iomem *base;
533536 int devid, clk_freq;
....@@ -540,12 +543,11 @@
540543 */
541544 const int clk_freq_default = 160000000;
542545
543
- iores = platform_get_resource(pdev, IORESOURCE_MEM, 0);
544546 irq_err = platform_get_irq(pdev, 0);
545547 if (irq_err < 0)
546548 return irq_err;
547549
548
- base = devm_ioremap_resource(&pdev->dev, iores);
550
+ base = devm_platform_ioremap_resource(pdev, 0);
549551 if (IS_ERR(base))
550552 return PTR_ERR(base);
551553
....@@ -587,10 +589,10 @@
587589 if (ret)
588590 goto out_master_free;
589591
590
- ssp->dmach = dma_request_slave_channel(&pdev->dev, "rx-tx");
591
- if (!ssp->dmach) {
592
+ ssp->dmach = dma_request_chan(&pdev->dev, "rx-tx");
593
+ if (IS_ERR(ssp->dmach)) {
592594 dev_err(ssp->dev, "Failed to request DMA\n");
593
- ret = -ENODEV;
595
+ ret = PTR_ERR(ssp->dmach);
594596 goto out_master_free;
595597 }
596598