Re: [PATCH V2] spi: tegra: add spi driver for SLINK controller

From: Laxman Dewangan
Date: Tue Oct 30 2012 - 01:58:06 EST


On Tuesday 30 October 2012 12:44 AM, Stephen Warren wrote:
On 10/29/2012 11:18 AM, Laxman Dewangan wrote:
Tegra20/Tegra30 supports the spi interface through its SLINK
controller. Add spi driver for SLINK controller.
diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig
+config SPI_TEGRA20_SLINK
+ tristate "Nvidia Tegra20/Tegra30 SLINK Controller"
+ depends on ARCH_TEGRA&& TEGRA20_APB_DMA
I think it depends on DMAENGINE, not the specific driver now, doesn't it?

I saw in MFD where the dependent driver depends on the actual drver, not on core. Also this driver need apb dma and hence if there is other dma driver based on dmaengine, not apb dma then this driver should not get invoked.

+ tegra_slink_writel(tspi, x, SLINK_TX_FIFO);
+ }
+ }
The if and the else there are basically identical now. Can't the else
branch simply be replaced by the if branch? At most I think the
difference comes down to max_n_32bit v.s. fifo_words_left calculations
being slight different; everything else is the same.

I suppose this isn't a big deal though; we could clean it up later if
necessary.


I like to do later.


+ tegra_slink_writel(tspi, val, SLINK_DMA_CTL);
+ udelay(1);
+ wmb();
Why the udelay() and wmb()?

Udelay() is required as suggested by ASIC.
wmb() is lying in our downstream code and hence it is here but I think it is not require now.

+ return tegra_slink_clk_prepare(tspi);
+}
Why not move the body of tegra_slink_clk_{un,prepare} inside those
functions, since they're only called from those functions?


Fine, I will do.

+MODULE_ALIAS("platform:tegra_slink-slink");
I think that's a typo.
I will fix this typo.

Thanks,
Laxman

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/