prm3xxx.c (c2148e5930cdd2dd964e18fb7057c1e07f63c363) prm3xxx.c (ba12c24286296159a1271eb19f2fc5c2ef59fbde)
1/*
2 * OMAP3xxx PRM module functions
3 *
4 * Copyright (C) 2010-2012 Texas Instruments, Inc.
5 * Copyright (C) 2010 Nokia Corporation
6 * Benoît Cousson
7 * Paul Walmsley
8 * Rajendra Nayak <rnayak@ti.com>

--- 14 unchanged lines hidden (view full) ---

23#include "vp.h"
24#include "powerdomain.h"
25#include "prm3xxx.h"
26#include "prm2xxx_3xxx.h"
27#include "cm2xxx_3xxx.h"
28#include "prm-regbits-34xx.h"
29#include "cm3xxx.h"
30#include "cm-regbits-34xx.h"
1/*
2 * OMAP3xxx PRM module functions
3 *
4 * Copyright (C) 2010-2012 Texas Instruments, Inc.
5 * Copyright (C) 2010 Nokia Corporation
6 * Benoît Cousson
7 * Paul Walmsley
8 * Rajendra Nayak <rnayak@ti.com>

--- 14 unchanged lines hidden (view full) ---

23#include "vp.h"
24#include "powerdomain.h"
25#include "prm3xxx.h"
26#include "prm2xxx_3xxx.h"
27#include "cm2xxx_3xxx.h"
28#include "prm-regbits-34xx.h"
29#include "cm3xxx.h"
30#include "cm-regbits-34xx.h"
31#include "control.h"
32
33static const struct omap_prcm_irq omap3_prcm_irqs[] = {
34 OMAP_PRCM_IRQ("wkup", 0, 0),
35 OMAP_PRCM_IRQ("io", 9, 1),
36};
37
38static struct omap_prcm_irq_setup omap3_prcm_irq_setup = {
39 .ack = OMAP3_PRM_IRQSTATUS_MPU_OFFSET,

--- 321 unchanged lines hidden (view full) ---

361 OMAP2_RM_RSTST);
362
363 /* Clear any pending PRCM interrupts */
364 omap2_prm_write_mod_reg(0, OCP_MOD, OMAP3_PRM_IRQSTATUS_MPU_OFFSET);
365
366 /* We need to idle iva2_pwrdm even on am3703 with no iva2. */
367 omap3xxx_prm_iva_idle();
368
31
32static const struct omap_prcm_irq omap3_prcm_irqs[] = {
33 OMAP_PRCM_IRQ("wkup", 0, 0),
34 OMAP_PRCM_IRQ("io", 9, 1),
35};
36
37static struct omap_prcm_irq_setup omap3_prcm_irq_setup = {
38 .ack = OMAP3_PRM_IRQSTATUS_MPU_OFFSET,

--- 321 unchanged lines hidden (view full) ---

360 OMAP2_RM_RSTST);
361
362 /* Clear any pending PRCM interrupts */
363 omap2_prm_write_mod_reg(0, OCP_MOD, OMAP3_PRM_IRQSTATUS_MPU_OFFSET);
364
365 /* We need to idle iva2_pwrdm even on am3703 with no iva2. */
366 omap3xxx_prm_iva_idle();
367
369 omap3_ctrl_setup_d2d_padconf();
370
371 omap3_prm_reset_modem();
372}
373
374/**
375 * omap3xxx_prm_reconfigure_io_chain - clear latches and reconfigure I/O chain
376 *
377 * Clear any previously-latched I/O wakeup events and ensure that the
378 * I/O wakeup gates are aligned with the current mux settings. Works

--- 86 unchanged lines hidden (view full) ---

465 OMAP3430_RST2_IVA2_MASK |
466 OMAP3430_RST3_IVA2_MASK,
467 OMAP3430_IVA2_MOD, OMAP2_RM_RSTCTRL);
468
469 /* Enable IVA2 clock */
470 omap2_cm_write_mod_reg(OMAP3430_CM_FCLKEN_IVA2_EN_IVA2_MASK,
471 OMAP3430_IVA2_MOD, CM_FCLKEN);
472
368 omap3_prm_reset_modem();
369}
370
371/**
372 * omap3xxx_prm_reconfigure_io_chain - clear latches and reconfigure I/O chain
373 *
374 * Clear any previously-latched I/O wakeup events and ensure that the
375 * I/O wakeup gates are aligned with the current mux settings. Works

--- 86 unchanged lines hidden (view full) ---

462 OMAP3430_RST2_IVA2_MASK |
463 OMAP3430_RST3_IVA2_MASK,
464 OMAP3430_IVA2_MOD, OMAP2_RM_RSTCTRL);
465
466 /* Enable IVA2 clock */
467 omap2_cm_write_mod_reg(OMAP3430_CM_FCLKEN_IVA2_EN_IVA2_MASK,
468 OMAP3430_IVA2_MOD, CM_FCLKEN);
469
473 /* Set IVA2 boot mode to 'idle' */
474 omap3_ctrl_set_iva_bootmode_idle();
475
476 /* Un-reset IVA2 */
477 omap2_prm_write_mod_reg(0, OMAP3430_IVA2_MOD, OMAP2_RM_RSTCTRL);
478
479 /* Disable IVA2 clock */
480 omap2_cm_write_mod_reg(0, OMAP3430_IVA2_MOD, CM_FCLKEN);
481
482 /* Reset IVA2 */
483 omap2_prm_write_mod_reg(OMAP3430_RST1_IVA2_MASK |

--- 195 unchanged lines hidden ---
470 /* Un-reset IVA2 */
471 omap2_prm_write_mod_reg(0, OMAP3430_IVA2_MOD, OMAP2_RM_RSTCTRL);
472
473 /* Disable IVA2 clock */
474 omap2_cm_write_mod_reg(0, OMAP3430_IVA2_MOD, CM_FCLKEN);
475
476 /* Reset IVA2 */
477 omap2_prm_write_mod_reg(OMAP3430_RST1_IVA2_MASK |

--- 195 unchanged lines hidden ---