• Stephen Warren's avatar
    ARM: Tegra: Make tegra_dma_init a postcore_initcall · dc54c23b
    Stephen Warren authored
    The following commit makes the Tegra APB DMA engine fail to initialize
    correctly: 0cf6230a
    ARM: tegra: Move tegra_common_init to tegra_init_early
    
    The reason is that tegra_init_early_ calls tegra_dma_init which calls
    request_threaded_irq, which fails since the IRQ hasn't yet been marked
    valid; that only happens in tegra_init_irq, which gets called after
    tegra_init_early.
    
    This used to work OK, since tegra_init_early was tegra_common_init, which
    got called after tegra_init_irq, basically from the beginning of
    tegra_harmony_init.
    
    Solve this by converting tegra_dma_init to a postcore_initcall. This makes
    it execute late enough that IRQs are marked valid, and avoids having to
    add it back to every machine's init function.
    Signed-off-by: default avatarStephen Warren <swarren@nvidia.com>
    Signed-off-by: default avatarColin Cross <ccross@android.com>
    dc54c23b
common.c 2.16 KB