]> rtime.felk.cvut.cz Git - can-eth-gw-linux.git/blob - arch/arm/mach-omap2/prcm.c
ARM: OMAP2+: PRCM: remove omap2_cm_wait_idlest()
[can-eth-gw-linux.git] / arch / arm / mach-omap2 / prcm.c
1 /*
2  * linux/arch/arm/mach-omap2/prcm.c
3  *
4  * OMAP 24xx Power Reset and Clock Management (PRCM) functions
5  *
6  * Copyright (C) 2005 Nokia Corporation
7  *
8  * Written by Tony Lindgren <tony.lindgren@nokia.com>
9  *
10  * Copyright (C) 2007 Texas Instruments, Inc.
11  * Rajendra Nayak <rnayak@ti.com>
12  *
13  * Some pieces of code Copyright (C) 2005 Texas Instruments, Inc.
14  * Upgraded with OMAP4 support by Abhijit Pagare <abhijitpagare@ti.com>
15  *
16  * This program is free software; you can redistribute it and/or modify
17  * it under the terms of the GNU General Public License version 2 as
18  * published by the Free Software Foundation.
19  */
20
21 #include <linux/kernel.h>
22 #include <linux/init.h>
23 #include <linux/clk.h>
24 #include <linux/io.h>
25 #include <linux/delay.h>
26 #include <linux/export.h>
27
28 #include "common.h"
29 #include <plat/prcm.h>
30
31 #include "soc.h"
32 #include "clock.h"
33 #include "clock2xxx.h"
34 #include "cm2xxx_3xxx.h"
35 #include "prm2xxx_3xxx.h"
36 #include "prm44xx.h"
37 #include "prminst44xx.h"
38 #include "cminst44xx.h"
39 #include "prm-regbits-24xx.h"
40 #include "prm-regbits-44xx.h"
41 #include "control.h"
42
43 void __iomem *prm_base;
44 void __iomem *cm_base;
45 void __iomem *cm2_base;
46 void __iomem *prcm_mpu_base;
47
48
49 void __init omap2_set_globals_prcm(void __iomem *prm, void __iomem *cm,
50                                    void __iomem *cm2, void __iomem *prcm_mpu)
51 {
52         prm_base = prm;
53         cm_base = cm;
54         cm2_base = cm2;
55         prcm_mpu_base = prcm_mpu;
56
57         if (cpu_is_omap44xx() || soc_is_omap54xx()) {
58                 omap_prm_base_init();
59                 omap_cm_base_init();
60         }
61 }
62
63 /*
64  * Stubbed functions so that common files continue to build when
65  * custom builds are used
66  * XXX These are temporary and should be removed at the earliest possible
67  * opportunity
68  */
69 int __weak omap4_cminst_wait_module_idle(u8 part, u16 inst, s16 cdoffs,
70                                         u16 clkctrl_offs)
71 {
72         return 0;
73 }
74
75 void __weak omap4_cminst_module_enable(u8 mode, u8 part, u16 inst,
76                                 s16 cdoffs, u16 clkctrl_offs)
77 {
78 }
79
80 void __weak omap4_cminst_module_disable(u8 part, u16 inst, s16 cdoffs,
81                                  u16 clkctrl_offs)
82 {
83 }