ARM: OMAP2+: hwmod: Add two new sysc_field types
[sitara-epos/sitara-epos-kernel.git] / arch / arm / mach-omap2 / omap_hwmod_common_data.c
1 /*
2  * omap_hwmod common data structures
3  *
4  * Copyright (C) 2010 Texas Instruments, Inc.
5  * Thara Gopinath <thara@ti.com>
6  * BenoĆ®t Cousson
7  *
8  * Copyright (C) 2010 Nokia Corporation
9  * Paul Walmsley
10  *
11  * This program is free software; you can redistribute it and/or modify
12  * it under the terms of the GNU General Public License version 2 as
13  * published by the Free Software Foundation.
14  *
15  * This data/structures are to be used while defining OMAP on-chip module
16  * data and their integration with other OMAP modules and Linux.
17  */
19 #include <plat/omap_hwmod.h>
21 #include "omap_hwmod_common_data.h"
23 /**
24  * struct omap_hwmod_sysc_type1 - TYPE1 sysconfig scheme.
25  *
26  * To be used by hwmod structure to specify the sysconfig offsets
27  * if the device ip is compliant with the original PRCM protocol
28  * defined for OMAP2420.
29  */
30 struct omap_hwmod_sysc_fields omap_hwmod_sysc_type1 = {
31         .midle_shift    = SYSC_TYPE1_MIDLEMODE_SHIFT,
32         .clkact_shift   = SYSC_TYPE1_CLOCKACTIVITY_SHIFT,
33         .sidle_shift    = SYSC_TYPE1_SIDLEMODE_SHIFT,
34         .enwkup_shift   = SYSC_TYPE1_ENAWAKEUP_SHIFT,
35         .srst_shift     = SYSC_TYPE1_SOFTRESET_SHIFT,
36         .autoidle_shift = SYSC_TYPE1_AUTOIDLE_SHIFT,
37 };
39 /**
40  * struct omap_hwmod_sysc_type2 - TYPE2 sysconfig scheme.
41  *
42  * To be used by hwmod structure to specify the sysconfig offsets if the
43  * device ip is compliant with the new PRCM protocol defined for new
44  * OMAP4 IPs.
45  */
46 struct omap_hwmod_sysc_fields omap_hwmod_sysc_type2 = {
47         .midle_shift    = SYSC_TYPE2_MIDLEMODE_SHIFT,
48         .sidle_shift    = SYSC_TYPE2_SIDLEMODE_SHIFT,
49         .srst_shift     = SYSC_TYPE2_SOFTRESET_SHIFT,
50 };
52 /**
53  * struct omap_hwmod_sysc_type3 - TYPE3 sysconfig scheme.
54  * Used by some IPs on AM33xx
55  */
56 struct omap_hwmod_sysc_fields omap_hwmod_sysc_type3 = {
57         .midle_shift    = SYSC_TYPE3_MIDLEMODE_SHIFT,
58         .sidle_shift    = SYSC_TYPE3_SIDLEMODE_SHIFT,
59 };
61 /**
62  * struct omap_hwmod_sysc_type4 - TYPE4 sysconfig scheme.
63  * Used by some IPs on AM33xx
64  */
65 struct omap_hwmod_sysc_fields omap_hwmod_sysc_type4 = {
66         .midle_shift    = SYSC_TYPE4_MIDLEMODE_SHIFT,
67         .clkact_shift   = SYSC_TYPE4_CLOCKACTIVITY_SHIFT,
68         .sidle_shift    = SYSC_TYPE4_SIDLEMODE_SHIFT,
69         .enwkup_shift   = SYSC_TYPE4_ENAWAKEUP_SHIFT,
70         .srst_shift     = SYSC_TYPE4_SOFTRESET_SHIFT,
71         .autoidle_shift = SYSC_TYPE4_AUTOIDLE_SHIFT,
72 };
74 struct omap_dss_dispc_dev_attr omap2_3_dss_dispc_dev_attr = {
75         .manager_count          = 2,
76         .has_framedonetv_irq    = 0
77 };