replace the TI patch with a smaller patchset
[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 diff --git a/arch/arm/mach-omap2/omap_hwmod_33xx_data.c b/arch/arm/mach-omap2/omap_hwmod_33xx_data.c
23 index 2815a91..e8dc72d 100644
24 --- a/arch/arm/mach-omap2/omap_hwmod_33xx_data.c
25 +++ b/arch/arm/mach-omap2/omap_hwmod_33xx_data.c
26 @@ -198,7 +198,7 @@ static struct omap_hwmod am33xx_wkup_m3_hwmod = {
27 .class = &am33xx_wkup_m3_hwmod_class,
28 .clkdm_name = "l4_wkup_aon_clkdm",
29 /* Keep hardreset asserted */
30 - .flags = HWMOD_INIT_NO_RESET | HWMOD_NO_IDLEST,
31 + .flags = HWMOD_NO_IDLEST,
32 .main_clk = "dpll_core_m4_div2_ck",
33 .prcm = {
34 .omap4 = {
35 @@ -932,7 +932,7 @@ static struct omap_hwmod am33xx_gpmc_hwmod = {
36 .name = "gpmc",
37 .class = &am33xx_gpmc_hwmod_class,
38 .clkdm_name = "l3s_clkdm",
39 - .flags = (HWMOD_INIT_NO_IDLE | HWMOD_INIT_NO_RESET),
40 + .flags = HWMOD_INIT_NO_RESET,
41 .main_clk = "l3s_gclk",
42 .prcm = {
43 .omap4 = {
44 diff --git a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
45 index 1e5b12c..a507a70 100644
46 --- a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
47 +++ b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
48 @@ -914,7 +914,6 @@ static struct omap_hwmod omap44xx_emif1_hwmod = {
49 .name = "emif1",
50 .class = &omap44xx_emif_hwmod_class,
51 .clkdm_name = "l3_emif_clkdm",
52 - .flags = HWMOD_INIT_NO_IDLE,
53 .main_clk = "ddrphy_ck",
54 .prcm = {
55 .omap4 = {
56 @@ -930,7 +929,6 @@ static struct omap_hwmod omap44xx_emif2_hwmod = {
57 .name = "emif2",
58 .class = &omap44xx_emif_hwmod_class,
59 .clkdm_name = "l3_emif_clkdm",
60 - .flags = HWMOD_INIT_NO_IDLE,
61 .main_clk = "ddrphy_ck",
62 .prcm = {
63 .omap4 = {
64 @@ -1184,7 +1182,7 @@ static struct omap_hwmod omap44xx_gpmc_hwmod = {
65 * the kernel from the board file or DT data.
66 * HWMOD_INIT_NO_RESET should be removed ASAP.
67 */
68 - .flags = HWMOD_INIT_NO_IDLE | HWMOD_INIT_NO_RESET,
69 + .flags = HWMOD_INIT_NO_RESET,
70 .prcm = {
71 .omap4 = {
72 .clkctrl_offs = OMAP4_CM_L3_2_GPMC_CLKCTRL_OFFSET,
73 diff --git a/arch/arm/mach-omap2/omap_hwmod_54xx_data.c b/arch/arm/mach-omap2/omap_hwmod_54xx_data.c
74 index e3caee1..e47f24d 100644
75 --- a/arch/arm/mach-omap2/omap_hwmod_54xx_data.c
76 +++ b/arch/arm/mach-omap2/omap_hwmod_54xx_data.c
77 @@ -352,7 +352,6 @@ static struct omap_hwmod omap54xx_emif1_hwmod = {
78 .name = "emif1",
79 .class = &omap54xx_emif_hwmod_class,
80 .clkdm_name = "emif_clkdm",
81 - .flags = HWMOD_INIT_NO_IDLE,
82 .main_clk = "dpll_core_h11x2_ck",
83 .prcm = {
84 .omap4 = {
85 @@ -368,7 +367,6 @@ static struct omap_hwmod omap54xx_emif2_hwmod = {
86 .name = "emif2",
87 .class = &omap54xx_emif_hwmod_class,
88 .clkdm_name = "emif_clkdm",
89 - .flags = HWMOD_INIT_NO_IDLE,
90 .main_clk = "dpll_core_h11x2_ck",
91 .prcm = {
92 .omap4 = {