5158ee2d94cd06fd93491978b3cca79bd72ebb23
[openwrt/openwrt.git] / target / linux / omap / patches-3.12 / 203-ARM-OMAP2-hwmod-Cleanup-usag~RESET-and-HWMOD_INIT_NO_IDLE.patch
1 With DT bindings to specify which devices should not be idled and reset
2 at init being in place, and the corresponding dtsi files for am33xx/omap4
3 and omap5 updated using those bindings, we can now clean up hwmod internal
4 flags for HWMOD_INIT_NO_RESET and HWMOD_INIT_NO_IDLE which were infact used
5 to specify the exact same information.
6
7 For GPMC, the HWMOD_INIT_NO_RESET flag seems to be added in hwmod not due to
8 any errata around the GPMC IP, but rather because any timings
9 set by the bootloader are not being correctly programmed by the kernel.
10 This seems like something that needs to be fixed as part of GPMC driver
11 in the kernel, and hence the flag is left as is in hwmod, which can be
12 removed once the driver does what its expected to.
13
14 Signed-off-by: Rajendra Nayak <rnayak@ti.com>
15
16 ---
17 arch/arm/mach-omap2/omap_hwmod_33xx_data.c | 4 ++--
18 arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 4 +---
19 arch/arm/mach-omap2/omap_hwmod_54xx_data.c | 2 --
20 3 files changed, 3 insertions(+), 7 deletions(-)
21
22 --- a/arch/arm/mach-omap2/omap_hwmod_33xx_data.c
23 +++ b/arch/arm/mach-omap2/omap_hwmod_33xx_data.c
24 @@ -198,7 +198,7 @@ static struct omap_hwmod am33xx_wkup_m3_
25 .class = &am33xx_wkup_m3_hwmod_class,
26 .clkdm_name = "l4_wkup_aon_clkdm",
27 /* Keep hardreset asserted */
28 - .flags = HWMOD_INIT_NO_RESET | HWMOD_NO_IDLEST,
29 + .flags = HWMOD_NO_IDLEST,
30 .main_clk = "dpll_core_m4_div2_ck",
31 .prcm = {
32 .omap4 = {
33 @@ -932,7 +932,7 @@ static struct omap_hwmod am33xx_gpmc_hwm
34 .name = "gpmc",
35 .class = &am33xx_gpmc_hwmod_class,
36 .clkdm_name = "l3s_clkdm",
37 - .flags = (HWMOD_INIT_NO_IDLE | HWMOD_INIT_NO_RESET),
38 + .flags = HWMOD_INIT_NO_RESET,
39 .main_clk = "l3s_gclk",
40 .prcm = {
41 .omap4 = {
42 --- a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
43 +++ b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
44 @@ -914,7 +914,6 @@ static struct omap_hwmod omap44xx_emif1_
45 .name = "emif1",
46 .class = &omap44xx_emif_hwmod_class,
47 .clkdm_name = "l3_emif_clkdm",
48 - .flags = HWMOD_INIT_NO_IDLE,
49 .main_clk = "ddrphy_ck",
50 .prcm = {
51 .omap4 = {
52 @@ -930,7 +929,6 @@ static struct omap_hwmod omap44xx_emif2_
53 .name = "emif2",
54 .class = &omap44xx_emif_hwmod_class,
55 .clkdm_name = "l3_emif_clkdm",
56 - .flags = HWMOD_INIT_NO_IDLE,
57 .main_clk = "ddrphy_ck",
58 .prcm = {
59 .omap4 = {
60 @@ -1184,7 +1182,7 @@ static struct omap_hwmod omap44xx_gpmc_h
61 * the kernel from the board file or DT data.
62 * HWMOD_INIT_NO_RESET should be removed ASAP.
63 */
64 - .flags = HWMOD_INIT_NO_IDLE | HWMOD_INIT_NO_RESET,
65 + .flags = HWMOD_INIT_NO_RESET,
66 .prcm = {
67 .omap4 = {
68 .clkctrl_offs = OMAP4_CM_L3_2_GPMC_CLKCTRL_OFFSET,
69 --- a/arch/arm/mach-omap2/omap_hwmod_54xx_data.c
70 +++ b/arch/arm/mach-omap2/omap_hwmod_54xx_data.c
71 @@ -352,7 +352,6 @@ static struct omap_hwmod omap54xx_emif1_
72 .name = "emif1",
73 .class = &omap54xx_emif_hwmod_class,
74 .clkdm_name = "emif_clkdm",
75 - .flags = HWMOD_INIT_NO_IDLE,
76 .main_clk = "dpll_core_h11x2_ck",
77 .prcm = {
78 .omap4 = {
79 @@ -368,7 +367,6 @@ static struct omap_hwmod omap54xx_emif2_
80 .name = "emif2",
81 .class = &omap54xx_emif_hwmod_class,
82 .clkdm_name = "emif_clkdm",
83 - .flags = HWMOD_INIT_NO_IDLE,
84 .main_clk = "dpll_core_h11x2_ck",
85 .prcm = {
86 .omap4 = {