Re: [PATCH v20 2/2] dmaengine: tegra: Add tegra gpcdma driver

Nathan Chancellor
2022-02-22T15:31:12Z

Hi Akhil,

On Mon, Feb 21, 2022 at 09:09:34PM +0530, Akhil R wrote:
> Adding GPC DMA controller driver for Tegra. The driver supports dma
> transfers between memory to memory, IO peripheral to memory and
> memory to IO peripheral.
>
> Co-developed-by: Pavan Kunapuli <pkunapuli@nvidia.com>
> Signed-off-by: Pavan Kunapuli <pkunapuli@nvidia.com>
> Co-developed-by: Rajesh Gumasta <rgumasta@nvidia.com>
> Signed-off-by: Rajesh Gumasta <rgumasta@nvidia.com>
> Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
> Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
> Reviewed-by: Dmitry Osipenko <digetx@gmail.com>
> ---
> drivers/dma/Kconfig | 11 +
> drivers/dma/Makefile | 1 +
> drivers/dma/tegra186-gpc-dma.c | 1507 ++++++++++++++++++++++++++++++++
> 3 files changed, 1519 insertions(+)
> create mode 100644 drivers/dma/tegra186-gpc-dma.c

<snip>

> +static const struct __maybe_unused dev_pm_ops tegra_dma_dev_pm_ops = {

The __maybe_unused cannot split the type ("struct dev_pm_ops") otherwise
it causes a clang warning:

https://lore.kernel.org/r/202202221207.lQ53BwKp-lkp@intel.com/

static const struct dev_pm_ops tegra_dma_dev_pm_ops __maybe_unused = {

would look a litle better I think. However, is this attribute even
needed? The variable is unconditionally used below, so there should be
no warning about it being unused?

Cheers,
Nathan

> + SET_SYSTEM_SLEEP_PM_OPS(tegra_dma_pm_suspend, tegra_dma_pm_resume)
> +};
> +
> +static struct platform_driver tegra_dma_driver = {
> + .driver = {
> + .name = "tegra-gpcdma",
> + .pm = &tegra_dma_dev_pm_ops,
> + .of_match_table = tegra_dma_of_match,
> + },
> + .probe = tegra_dma_probe,
> + .remove = tegra_dma_remove,
> +};
> +
> +module_platform_driver(tegra_dma_driver);
> +
> +MODULE_DESCRIPTION("NVIDIA Tegra GPC DMA Controller driver");
> +MODULE_AUTHOR("Pavan Kunapuli <pkunapuli@nvidia.com>");
> +MODULE_AUTHOR("Rajesh Gumasta <rgumasta@nvidia.com>");
> +MODULE_LICENSE("GPL");
> --
> 2.17.1
>
>