• Kalle Jokiniemi's avatar
    OMAP3: PM: Fix secure SRAM context save/restore · ba50ea7e
    Kalle Jokiniemi authored
    The secure sram context save uses dma channels 0 and 1.
    In order to avoid collision between kernel DMA transfers and
    ROM code dma transfers, we need to reserve DMA channels 0
    1 on high security devices.
    
    A bug in ROM code leaves dma irq status bits uncleared.
    Hence those irq status bits need to be cleared when restoring
    DMA context after off mode.
    
    There was also a faulty parameter given to PPA in the secure
    ram context save assembly code, which caused interrupts to
    be enabled during secure ram context save. This caused the
    save to fail sometimes, which resulted the saved context
    to be corrupted, but also left DMA channels in secure mode.
    The secure mode DMA channels caused "DMA secure error with
    device 0" errors to be displayed.
    Signed-off-by: default avatarKalle Jokiniemi <kalle.jokiniemi@digia.com>
    Signed-off-by: default avatarJouni Hogander <jouni.hogander@nokia.com>
    Signed-off-by: default avatarKevin Hilman <khilman@deeprootsystems.com>
    ba50ea7e
pm34xx.c 28.3 KB