Message ID | alpine.DEB.2.02.1501060640220.28771@utopia.booyaka.com (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
On Tue, Jan 06, 2015 at 06:44:56AM +0000, Paul Walmsley wrote: > > After commit ecc19d17868be9c9f8f00ed928791533c420f3e0 ("dmaengine: Add > a warning for drivers not using the generic slave caps retrieval"), > the Tegra APB DMA driver causes this warning during boot: > > WARNING: CPU: 0 PID: 1 at drivers/dma/dmaengine.c:830 dma_async_device_register+0x294/0x538() > this driver doesn't support generic slave capabilities reporting > > Fix by setting the appropriate reporting structure fields that are > passed to dma_async_device_register(). > > Signed-off-by: Paul Walmsley <paul@pwsan.com> > Cc: Paul Walmsley <pwalmsley@nvidia.com> > Cc: Laxman Dewangan <ldewangan@nvidia.com> > Cc: Vinod Koul <vinod.koul@intel.com> > Cc: Dan Williams <dan.j.williams@intel.com> > Cc: Stephen Warren <swarren@wwwdotorg.org> > Cc: Thierry Reding <thierry.reding@gmail.com> > Cc: Maxime Ripard <maxime.ripard@free-electrons.com> > Cc: Alexandre Courbot <gnurou@gmail.com> > --- > Applies on next-20150105. Boot-tested on Tegra132 Norrin FFD > (with a few unrelated patches not yet in mainline to get the board to > boot) Tested also on the Jetson TK1 and it fixes the same warning there: Tested-by: Thierry Reding <treding@nvidia.com> Acked-by: Thierry Reding <treding@nvidia.com>
On Tue, Jan 06, 2015 at 06:44:56AM +0000, Paul Walmsley wrote: > > After commit ecc19d17868be9c9f8f00ed928791533c420f3e0 ("dmaengine: Add > a warning for drivers not using the generic slave caps retrieval"), > the Tegra APB DMA driver causes this warning during boot: > > WARNING: CPU: 0 PID: 1 at drivers/dma/dmaengine.c:830 dma_async_device_register+0x294/0x538() > this driver doesn't support generic slave capabilities reporting > > Fix by setting the appropriate reporting structure fields that are > passed to dma_async_device_register(). > > Signed-off-by: Paul Walmsley <paul@pwsan.com> > Cc: Paul Walmsley <pwalmsley@nvidia.com> > Cc: Laxman Dewangan <ldewangan@nvidia.com> > Cc: Vinod Koul <vinod.koul@intel.com> > Cc: Dan Williams <dan.j.williams@intel.com> > Cc: Stephen Warren <swarren@wwwdotorg.org> > Cc: Thierry Reding <thierry.reding@gmail.com> > Cc: Maxime Ripard <maxime.ripard@free-electrons.com> > Cc: Alexandre Courbot <gnurou@gmail.com> Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com> Thanks! Maxime
On Tue, Jan 06, 2015 at 06:44:56AM +0000, Paul Walmsley wrote: > > After commit ecc19d17868be9c9f8f00ed928791533c420f3e0 ("dmaengine: Add > a warning for drivers not using the generic slave caps retrieval"), > the Tegra APB DMA driver causes this warning during boot: > > WARNING: CPU: 0 PID: 1 at drivers/dma/dmaengine.c:830 dma_async_device_register+0x294/0x538() > this driver doesn't support generic slave capabilities reporting > > Fix by setting the appropriate reporting structure fields that are > passed to dma_async_device_register(). > Applied, thanks
diff --git a/drivers/dma/tegra20-apb-dma.c b/drivers/dma/tegra20-apb-dma.c index 5695fb8..eaf585e 100644 --- a/drivers/dma/tegra20-apb-dma.c +++ b/drivers/dma/tegra20-apb-dma.c @@ -1425,6 +1425,21 @@ static int tegra_dma_probe(struct platform_device *pdev) tegra_dma_free_chan_resources; tdma->dma_dev.device_prep_slave_sg = tegra_dma_prep_slave_sg; tdma->dma_dev.device_prep_dma_cyclic = tegra_dma_prep_dma_cyclic; + tdma->dma_dev.src_addr_widths = BIT(DMA_SLAVE_BUSWIDTH_1_BYTE) | + BIT(DMA_SLAVE_BUSWIDTH_2_BYTES) | + BIT(DMA_SLAVE_BUSWIDTH_4_BYTES) | + BIT(DMA_SLAVE_BUSWIDTH_8_BYTES); + tdma->dma_dev.dst_addr_widths = BIT(DMA_SLAVE_BUSWIDTH_1_BYTE) | + BIT(DMA_SLAVE_BUSWIDTH_2_BYTES) | + BIT(DMA_SLAVE_BUSWIDTH_4_BYTES) | + BIT(DMA_SLAVE_BUSWIDTH_8_BYTES); + tdma->dma_dev.directions = BIT(DMA_DEV_TO_MEM) | BIT(DMA_MEM_TO_DEV); + /* + * XXX The hardware appears to support + * DMA_RESIDUE_GRANULARITY_BURST-level reporting, but it's + * only used by this driver during tegra_dma_terminate_all() + */ + tdma->dma_dev.residue_granularity = DMA_RESIDUE_GRANULARITY_SEGMENT; tdma->dma_dev.device_config = tegra_dma_slave_config; tdma->dma_dev.device_terminate_all = tegra_dma_terminate_all; tdma->dma_dev.device_tx_status = tegra_dma_tx_status;
After commit ecc19d17868be9c9f8f00ed928791533c420f3e0 ("dmaengine: Add a warning for drivers not using the generic slave caps retrieval"), the Tegra APB DMA driver causes this warning during boot: WARNING: CPU: 0 PID: 1 at drivers/dma/dmaengine.c:830 dma_async_device_register+0x294/0x538() this driver doesn't support generic slave capabilities reporting Fix by setting the appropriate reporting structure fields that are passed to dma_async_device_register(). Signed-off-by: Paul Walmsley <paul@pwsan.com> Cc: Paul Walmsley <pwalmsley@nvidia.com> Cc: Laxman Dewangan <ldewangan@nvidia.com> Cc: Vinod Koul <vinod.koul@intel.com> Cc: Dan Williams <dan.j.williams@intel.com> Cc: Stephen Warren <swarren@wwwdotorg.org> Cc: Thierry Reding <thierry.reding@gmail.com> Cc: Maxime Ripard <maxime.ripard@free-electrons.com> Cc: Alexandre Courbot <gnurou@gmail.com> --- Applies on next-20150105. Boot-tested on Tegra132 Norrin FFD (with a few unrelated patches not yet in mainline to get the board to boot) drivers/dma/tegra20-apb-dma.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+)