diff options
author | Herbert Xu <herbert@gondor.apana.org.au> | 2013-09-06 22:53:35 -0400 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2013-09-06 22:53:35 -0400 |
commit | eeca9fad52fc4bfdf42c38bfcf383e932eb3e9d6 (patch) | |
tree | cc51c880459d41c0e8d7576405bef4c987bc7aa0 /arch/arm/mach-omap2 | |
parent | ff6f83fc9d44db09997937c3475d525a6866fbb4 (diff) | |
parent | b48a97be8e6c2afdba2f3b61fd88c3c7743fbd73 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux
Merge upstream tree in order to reinstate crct10dif.
Diffstat (limited to 'arch/arm/mach-omap2')
-rw-r--r-- | arch/arm/mach-omap2/Kconfig | 153 | ||||
-rw-r--r-- | arch/arm/mach-omap2/Makefile | 4 | ||||
-rw-r--r-- | arch/arm/mach-omap2/am33xx-restart.c | 3 | ||||
-rw-r--r-- | arch/arm/mach-omap2/board-igep0020.c | 31 | ||||
-rw-r--r-- | arch/arm/mach-omap2/board-rx51-video.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-omap2/common.h | 17 | ||||
-rw-r--r-- | arch/arm/mach-omap2/devices.c | 5 | ||||
-rw-r--r-- | arch/arm/mach-omap2/fb.c | 5 | ||||
-rw-r--r-- | arch/arm/mach-omap2/gpmc.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-omap2/io.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap-headsmp.S | 2 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap-mpuss-lowpower.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap-smp.c | 4 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap-wakeupgen.c | 4 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap2-restart.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap3-restart.c | 3 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap4-common.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap4-restart.c | 3 | ||||
-rw-r--r-- | arch/arm/mach-omap2/pmu.c | 5 | ||||
-rw-r--r-- | arch/arm/mach-omap2/sleep44xx.S | 6 | ||||
-rw-r--r-- | arch/arm/mach-omap2/timer.c | 4 |
21 files changed, 145 insertions, 115 deletions
diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig index c7b32a966f67..627fa7e41fba 100644 --- a/arch/arm/mach-omap2/Kconfig +++ b/arch/arm/mach-omap2/Kconfig | |||
@@ -1,63 +1,10 @@ | |||
1 | config ARCH_OMAP | 1 | config ARCH_OMAP |
2 | bool | 2 | bool |
3 | 3 | ||
4 | config ARCH_OMAP2PLUS | ||
5 | bool "TI OMAP2/3/4/5 SoCs with device tree support" if (ARCH_MULTI_V6 || ARCH_MULTI_V7) | ||
6 | select ARCH_HAS_CPUFREQ | ||
7 | select ARCH_HAS_BANDGAP | ||
8 | select ARCH_HAS_HOLES_MEMORYMODEL | ||
9 | select ARCH_OMAP | ||
10 | select ARCH_REQUIRE_GPIOLIB | ||
11 | select CLKDEV_LOOKUP | ||
12 | select CLKSRC_MMIO | ||
13 | select GENERIC_CLOCKEVENTS | ||
14 | select GENERIC_IRQ_CHIP | ||
15 | select HAVE_CLK | ||
16 | select OMAP_DM_TIMER | ||
17 | select PINCTRL | ||
18 | select PROC_DEVICETREE if PROC_FS | ||
19 | select SOC_BUS | ||
20 | select SPARSE_IRQ | ||
21 | select TI_PRIV_EDMA | ||
22 | select USE_OF | ||
23 | help | ||
24 | Systems based on OMAP2, OMAP3, OMAP4 or OMAP5 | ||
25 | |||
26 | |||
27 | if ARCH_OMAP2PLUS | ||
28 | |||
29 | menu "TI OMAP2/3/4 Specific Features" | ||
30 | |||
31 | config ARCH_OMAP2PLUS_TYPICAL | ||
32 | bool "Typical OMAP configuration" | ||
33 | default y | ||
34 | select AEABI | ||
35 | select HIGHMEM | ||
36 | select I2C | ||
37 | select I2C_OMAP | ||
38 | select MENELAUS if ARCH_OMAP2 | ||
39 | select NEON if ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5 | ||
40 | select PM_RUNTIME | ||
41 | select REGULATOR | ||
42 | select TWL4030_CORE if ARCH_OMAP3 || ARCH_OMAP4 | ||
43 | select TWL4030_POWER if ARCH_OMAP3 || ARCH_OMAP4 | ||
44 | select VFP | ||
45 | help | ||
46 | Compile a kernel suitable for booting most boards | ||
47 | |||
48 | config SOC_HAS_OMAP2_SDRC | ||
49 | bool "OMAP2 SDRAM Controller support" | ||
50 | |||
51 | config SOC_HAS_REALTIME_COUNTER | ||
52 | bool "Real time free running counter" | ||
53 | depends on SOC_OMAP5 | ||
54 | default y | ||
55 | |||
56 | config ARCH_OMAP2 | 4 | config ARCH_OMAP2 |
57 | bool "TI OMAP2" | 5 | bool "TI OMAP2" |
58 | depends on ARCH_OMAP2PLUS | ||
59 | depends on ARCH_MULTI_V6 | 6 | depends on ARCH_MULTI_V6 |
60 | default y | 7 | select ARCH_OMAP2PLUS |
61 | select CPU_V6 | 8 | select CPU_V6 |
62 | select MULTI_IRQ_HANDLER | 9 | select MULTI_IRQ_HANDLER |
63 | select SOC_HAS_OMAP2_SDRC | 10 | select SOC_HAS_OMAP2_SDRC |
@@ -65,9 +12,8 @@ config ARCH_OMAP2 | |||
65 | 12 | ||
66 | config ARCH_OMAP3 | 13 | config ARCH_OMAP3 |
67 | bool "TI OMAP3" | 14 | bool "TI OMAP3" |
68 | depends on ARCH_OMAP2PLUS | ||
69 | depends on ARCH_MULTI_V7 | 15 | depends on ARCH_MULTI_V7 |
70 | default y | 16 | select ARCH_OMAP2PLUS |
71 | select ARCH_HAS_OPP | 17 | select ARCH_HAS_OPP |
72 | select ARM_CPU_SUSPEND if PM | 18 | select ARM_CPU_SUSPEND if PM |
73 | select CPU_V7 | 19 | select CPU_V7 |
@@ -81,9 +27,8 @@ config ARCH_OMAP3 | |||
81 | 27 | ||
82 | config ARCH_OMAP4 | 28 | config ARCH_OMAP4 |
83 | bool "TI OMAP4" | 29 | bool "TI OMAP4" |
84 | default y | ||
85 | depends on ARCH_OMAP2PLUS | ||
86 | depends on ARCH_MULTI_V7 | 30 | depends on ARCH_MULTI_V7 |
31 | select ARCH_OMAP2PLUS | ||
87 | select ARCH_HAS_OPP | 32 | select ARCH_HAS_OPP |
88 | select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP | 33 | select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP |
89 | select ARM_CPU_SUSPEND if PM | 34 | select ARM_CPU_SUSPEND if PM |
@@ -108,12 +53,87 @@ config ARCH_OMAP4 | |||
108 | config SOC_OMAP5 | 53 | config SOC_OMAP5 |
109 | bool "TI OMAP5" | 54 | bool "TI OMAP5" |
110 | depends on ARCH_MULTI_V7 | 55 | depends on ARCH_MULTI_V7 |
56 | select ARCH_OMAP2PLUS | ||
111 | select ARM_CPU_SUSPEND if PM | 57 | select ARM_CPU_SUSPEND if PM |
112 | select ARM_GIC | 58 | select ARM_GIC |
113 | select CPU_V7 | 59 | select CPU_V7 |
60 | select HAVE_ARM_SCU if SMP | ||
61 | select HAVE_ARM_TWD if LOCAL_TIMERS | ||
114 | select HAVE_SMP | 62 | select HAVE_SMP |
115 | select COMMON_CLK | 63 | select COMMON_CLK |
116 | select HAVE_ARM_ARCH_TIMER | 64 | select HAVE_ARM_ARCH_TIMER |
65 | select ARM_ERRATA_798181 | ||
66 | |||
67 | config SOC_AM33XX | ||
68 | bool "AM33XX support" | ||
69 | depends on ARCH_MULTI_V7 | ||
70 | select ARCH_OMAP2PLUS | ||
71 | select ARM_CPU_SUSPEND if PM | ||
72 | select CPU_V7 | ||
73 | select MULTI_IRQ_HANDLER | ||
74 | select COMMON_CLK | ||
75 | |||
76 | config SOC_AM43XX | ||
77 | bool "TI AM43x" | ||
78 | depends on ARCH_MULTI_V7 | ||
79 | select CPU_V7 | ||
80 | select ARCH_OMAP2PLUS | ||
81 | select MULTI_IRQ_HANDLER | ||
82 | select ARM_GIC | ||
83 | select COMMON_CLK | ||
84 | select MACH_OMAP_GENERIC | ||
85 | |||
86 | config ARCH_OMAP2PLUS | ||
87 | bool | ||
88 | select ARCH_HAS_BANDGAP | ||
89 | select ARCH_HAS_CPUFREQ | ||
90 | select ARCH_HAS_HOLES_MEMORYMODEL | ||
91 | select ARCH_OMAP | ||
92 | select ARCH_REQUIRE_GPIOLIB | ||
93 | select CLKDEV_LOOKUP | ||
94 | select CLKSRC_MMIO | ||
95 | select GENERIC_CLOCKEVENTS | ||
96 | select GENERIC_IRQ_CHIP | ||
97 | select HAVE_CLK | ||
98 | select OMAP_DM_TIMER | ||
99 | select PINCTRL | ||
100 | select PROC_DEVICETREE if PROC_FS | ||
101 | select SOC_BUS | ||
102 | select SPARSE_IRQ | ||
103 | select TI_PRIV_EDMA | ||
104 | select USE_OF | ||
105 | help | ||
106 | Systems based on OMAP2, OMAP3, OMAP4 or OMAP5 | ||
107 | |||
108 | |||
109 | if ARCH_OMAP2PLUS | ||
110 | |||
111 | menu "TI OMAP2/3/4 Specific Features" | ||
112 | |||
113 | config ARCH_OMAP2PLUS_TYPICAL | ||
114 | bool "Typical OMAP configuration" | ||
115 | default y | ||
116 | select AEABI | ||
117 | select HIGHMEM | ||
118 | select I2C | ||
119 | select I2C_OMAP | ||
120 | select MENELAUS if ARCH_OMAP2 | ||
121 | select NEON if ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5 | ||
122 | select PM_RUNTIME | ||
123 | select REGULATOR | ||
124 | select TWL4030_CORE if ARCH_OMAP3 || ARCH_OMAP4 | ||
125 | select TWL4030_POWER if ARCH_OMAP3 || ARCH_OMAP4 | ||
126 | select VFP | ||
127 | help | ||
128 | Compile a kernel suitable for booting most boards | ||
129 | |||
130 | config SOC_HAS_OMAP2_SDRC | ||
131 | bool "OMAP2 SDRAM Controller support" | ||
132 | |||
133 | config SOC_HAS_REALTIME_COUNTER | ||
134 | bool "Real time free running counter" | ||
135 | depends on SOC_OMAP5 | ||
136 | default y | ||
117 | 137 | ||
118 | comment "OMAP Core Type" | 138 | comment "OMAP Core Type" |
119 | depends on ARCH_OMAP2 | 139 | depends on ARCH_OMAP2 |
@@ -142,23 +162,6 @@ config SOC_TI81XX | |||
142 | depends on ARCH_OMAP3 | 162 | depends on ARCH_OMAP3 |
143 | default y | 163 | default y |
144 | 164 | ||
145 | config SOC_AM33XX | ||
146 | bool "AM33XX support" | ||
147 | depends on ARCH_MULTI_V7 | ||
148 | default y | ||
149 | select ARM_CPU_SUSPEND if PM | ||
150 | select CPU_V7 | ||
151 | select MULTI_IRQ_HANDLER | ||
152 | select COMMON_CLK | ||
153 | |||
154 | config SOC_AM43XX | ||
155 | bool "TI AM43x" | ||
156 | select CPU_V7 | ||
157 | select MULTI_IRQ_HANDLER | ||
158 | select ARM_GIC | ||
159 | select COMMON_CLK | ||
160 | select MACH_OMAP_GENERIC | ||
161 | |||
162 | config OMAP_PACKAGE_ZAF | 165 | config OMAP_PACKAGE_ZAF |
163 | bool | 166 | bool |
164 | 167 | ||
diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile index ea5a27ff9941..d4f671547c37 100644 --- a/arch/arm/mach-omap2/Makefile +++ b/arch/arm/mach-omap2/Makefile | |||
@@ -95,10 +95,6 @@ obj-$(CONFIG_POWER_AVS_OMAP_CLASS3) += smartreflex-class3.o | |||
95 | AFLAGS_sleep24xx.o :=-Wa,-march=armv6 | 95 | AFLAGS_sleep24xx.o :=-Wa,-march=armv6 |
96 | AFLAGS_sleep34xx.o :=-Wa,-march=armv7-a$(plus_sec) | 96 | AFLAGS_sleep34xx.o :=-Wa,-march=armv7-a$(plus_sec) |
97 | 97 | ||
98 | ifeq ($(CONFIG_PM_VERBOSE),y) | ||
99 | CFLAGS_pm_bus.o += -DDEBUG | ||
100 | endif | ||
101 | |||
102 | endif | 98 | endif |
103 | 99 | ||
104 | ifeq ($(CONFIG_CPU_IDLE),y) | 100 | ifeq ($(CONFIG_CPU_IDLE),y) |
diff --git a/arch/arm/mach-omap2/am33xx-restart.c b/arch/arm/mach-omap2/am33xx-restart.c index 88e4fa8af031..1eae96212315 100644 --- a/arch/arm/mach-omap2/am33xx-restart.c +++ b/arch/arm/mach-omap2/am33xx-restart.c | |||
@@ -6,6 +6,7 @@ | |||
6 | * published by the Free Software Foundation. | 6 | * published by the Free Software Foundation. |
7 | */ | 7 | */ |
8 | #include <linux/kernel.h> | 8 | #include <linux/kernel.h> |
9 | #include <linux/reboot.h> | ||
9 | 10 | ||
10 | #include "common.h" | 11 | #include "common.h" |
11 | #include "prm-regbits-33xx.h" | 12 | #include "prm-regbits-33xx.h" |
@@ -19,7 +20,7 @@ | |||
19 | * Resets the SoC. For @cmd, see the 'reboot' syscall in | 20 | * Resets the SoC. For @cmd, see the 'reboot' syscall in |
20 | * kernel/sys.c. No return value. | 21 | * kernel/sys.c. No return value. |
21 | */ | 22 | */ |
22 | void am33xx_restart(char mode, const char *cmd) | 23 | void am33xx_restart(enum reboot_mode mode, const char *cmd) |
23 | { | 24 | { |
24 | /* TODO: Handle mode and cmd if necessary */ | 25 | /* TODO: Handle mode and cmd if necessary */ |
25 | 26 | ||
diff --git a/arch/arm/mach-omap2/board-igep0020.c b/arch/arm/mach-omap2/board-igep0020.c index b54562d1235e..87e65dde8e13 100644 --- a/arch/arm/mach-omap2/board-igep0020.c +++ b/arch/arm/mach-omap2/board-igep0020.c | |||
@@ -553,6 +553,37 @@ static struct usbhs_omap_platform_data igep3_usbhs_bdata __initdata = { | |||
553 | 553 | ||
554 | #ifdef CONFIG_OMAP_MUX | 554 | #ifdef CONFIG_OMAP_MUX |
555 | static struct omap_board_mux board_mux[] __initdata = { | 555 | static struct omap_board_mux board_mux[] __initdata = { |
556 | /* Display Sub System */ | ||
557 | OMAP3_MUX(DSS_PCLK, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
558 | OMAP3_MUX(DSS_HSYNC, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
559 | OMAP3_MUX(DSS_VSYNC, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
560 | OMAP3_MUX(DSS_ACBIAS, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
561 | OMAP3_MUX(DSS_DATA0, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
562 | OMAP3_MUX(DSS_DATA1, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
563 | OMAP3_MUX(DSS_DATA2, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
564 | OMAP3_MUX(DSS_DATA3, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
565 | OMAP3_MUX(DSS_DATA4, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
566 | OMAP3_MUX(DSS_DATA5, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
567 | OMAP3_MUX(DSS_DATA6, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
568 | OMAP3_MUX(DSS_DATA7, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
569 | OMAP3_MUX(DSS_DATA8, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
570 | OMAP3_MUX(DSS_DATA9, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
571 | OMAP3_MUX(DSS_DATA10, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
572 | OMAP3_MUX(DSS_DATA11, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
573 | OMAP3_MUX(DSS_DATA12, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
574 | OMAP3_MUX(DSS_DATA13, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
575 | OMAP3_MUX(DSS_DATA14, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
576 | OMAP3_MUX(DSS_DATA15, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
577 | OMAP3_MUX(DSS_DATA16, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
578 | OMAP3_MUX(DSS_DATA17, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
579 | OMAP3_MUX(DSS_DATA18, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
580 | OMAP3_MUX(DSS_DATA19, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
581 | OMAP3_MUX(DSS_DATA20, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
582 | OMAP3_MUX(DSS_DATA21, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
583 | OMAP3_MUX(DSS_DATA22, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
584 | OMAP3_MUX(DSS_DATA23, OMAP_MUX_MODE0 | OMAP_PIN_OUTPUT), | ||
585 | /* TFP410 PanelBus DVI Transmitte (GPIO_170) */ | ||
586 | OMAP3_MUX(HDQ_SIO, OMAP_MUX_MODE4 | OMAP_PIN_OUTPUT), | ||
556 | /* SMSC9221 LAN Controller ETH IRQ (GPIO_176) */ | 587 | /* SMSC9221 LAN Controller ETH IRQ (GPIO_176) */ |
557 | OMAP3_MUX(MCSPI1_CS2, OMAP_MUX_MODE4 | OMAP_PIN_INPUT), | 588 | OMAP3_MUX(MCSPI1_CS2, OMAP_MUX_MODE4 | OMAP_PIN_INPUT), |
558 | { .reg_offset = OMAP_MUX_TERMINATOR }, | 589 | { .reg_offset = OMAP_MUX_TERMINATOR }, |
diff --git a/arch/arm/mach-omap2/board-rx51-video.c b/arch/arm/mach-omap2/board-rx51-video.c index bd74f9f6063b..bdd1e3a179e1 100644 --- a/arch/arm/mach-omap2/board-rx51-video.c +++ b/arch/arm/mach-omap2/board-rx51-video.c | |||
@@ -61,7 +61,7 @@ static struct omap_dss_board_info rx51_dss_board_info = { | |||
61 | 61 | ||
62 | static int __init rx51_video_init(void) | 62 | static int __init rx51_video_init(void) |
63 | { | 63 | { |
64 | if (!machine_is_nokia_rx51()) | 64 | if (!machine_is_nokia_rx51() && !of_machine_is_compatible("nokia,omap3-n900")) |
65 | return 0; | 65 | return 0; |
66 | 66 | ||
67 | if (omap_mux_init_gpio(RX51_LCD_RESET_GPIO, OMAP_PIN_OUTPUT)) { | 67 | if (omap_mux_init_gpio(RX51_LCD_RESET_GPIO, OMAP_PIN_OUTPUT)) { |
diff --git a/arch/arm/mach-omap2/common.h b/arch/arm/mach-omap2/common.h index 72cab3f4f16d..dfcc182ecff9 100644 --- a/arch/arm/mach-omap2/common.h +++ b/arch/arm/mach-omap2/common.h | |||
@@ -31,6 +31,7 @@ | |||
31 | #include <linux/i2c.h> | 31 | #include <linux/i2c.h> |
32 | #include <linux/i2c/twl.h> | 32 | #include <linux/i2c/twl.h> |
33 | #include <linux/i2c-omap.h> | 33 | #include <linux/i2c-omap.h> |
34 | #include <linux/reboot.h> | ||
34 | 35 | ||
35 | #include <asm/proc-fns.h> | 36 | #include <asm/proc-fns.h> |
36 | 37 | ||
@@ -119,33 +120,33 @@ static inline void omap_soc_device_init(void) | |||
119 | #endif | 120 | #endif |
120 | 121 | ||
121 | #if defined(CONFIG_SOC_OMAP2420) || defined(CONFIG_SOC_OMAP2430) | 122 | #if defined(CONFIG_SOC_OMAP2420) || defined(CONFIG_SOC_OMAP2430) |
122 | void omap2xxx_restart(char mode, const char *cmd); | 123 | void omap2xxx_restart(enum reboot_mode mode, const char *cmd); |
123 | #else | 124 | #else |
124 | static inline void omap2xxx_restart(char mode, const char *cmd) | 125 | static inline void omap2xxx_restart(enum reboot_mode mode, const char *cmd) |
125 | { | 126 | { |
126 | } | 127 | } |
127 | #endif | 128 | #endif |
128 | 129 | ||
129 | #ifdef CONFIG_SOC_AM33XX | 130 | #ifdef CONFIG_SOC_AM33XX |
130 | void am33xx_restart(char mode, const char *cmd); | 131 | void am33xx_restart(enum reboot_mode mode, const char *cmd); |
131 | #else | 132 | #else |
132 | static inline void am33xx_restart(char mode, const char *cmd) | 133 | static inline void am33xx_restart(enum reboot_mode mode, const char *cmd) |
133 | { | 134 | { |
134 | } | 135 | } |
135 | #endif | 136 | #endif |
136 | 137 | ||
137 | #ifdef CONFIG_ARCH_OMAP3 | 138 | #ifdef CONFIG_ARCH_OMAP3 |
138 | void omap3xxx_restart(char mode, const char *cmd); | 139 | void omap3xxx_restart(enum reboot_mode mode, const char *cmd); |
139 | #else | 140 | #else |
140 | static inline void omap3xxx_restart(char mode, const char *cmd) | 141 | static inline void omap3xxx_restart(enum reboot_mode mode, const char *cmd) |
141 | { | 142 | { |
142 | } | 143 | } |
143 | #endif | 144 | #endif |
144 | 145 | ||
145 | #if defined(CONFIG_ARCH_OMAP4) || defined(CONFIG_SOC_OMAP5) | 146 | #if defined(CONFIG_ARCH_OMAP4) || defined(CONFIG_SOC_OMAP5) |
146 | void omap44xx_restart(char mode, const char *cmd); | 147 | void omap44xx_restart(enum reboot_mode mode, const char *cmd); |
147 | #else | 148 | #else |
148 | static inline void omap44xx_restart(char mode, const char *cmd) | 149 | static inline void omap44xx_restart(enum reboot_mode mode, const char *cmd) |
149 | { | 150 | { |
150 | } | 151 | } |
151 | #endif | 152 | #endif |
diff --git a/arch/arm/mach-omap2/devices.c b/arch/arm/mach-omap2/devices.c index ba8d06598e55..afc201713131 100644 --- a/arch/arm/mach-omap2/devices.c +++ b/arch/arm/mach-omap2/devices.c | |||
@@ -15,7 +15,6 @@ | |||
15 | #include <linux/io.h> | 15 | #include <linux/io.h> |
16 | #include <linux/clk.h> | 16 | #include <linux/clk.h> |
17 | #include <linux/err.h> | 17 | #include <linux/err.h> |
18 | #include <linux/gpio.h> | ||
19 | #include <linux/slab.h> | 18 | #include <linux/slab.h> |
20 | #include <linux/of.h> | 19 | #include <linux/of.h> |
21 | #include <linux/pinctrl/machine.h> | 20 | #include <linux/pinctrl/machine.h> |
@@ -66,7 +65,7 @@ static int __init omap3_l3_init(void) | |||
66 | 65 | ||
67 | WARN(IS_ERR(pdev), "could not build omap_device for %s\n", oh_name); | 66 | WARN(IS_ERR(pdev), "could not build omap_device for %s\n", oh_name); |
68 | 67 | ||
69 | return IS_ERR(pdev) ? PTR_ERR(pdev) : 0; | 68 | return PTR_RET(pdev); |
70 | } | 69 | } |
71 | omap_postcore_initcall(omap3_l3_init); | 70 | omap_postcore_initcall(omap3_l3_init); |
72 | 71 | ||
@@ -100,7 +99,7 @@ static int __init omap4_l3_init(void) | |||
100 | 99 | ||
101 | WARN(IS_ERR(pdev), "could not build omap_device for %s\n", oh_name); | 100 | WARN(IS_ERR(pdev), "could not build omap_device for %s\n", oh_name); |
102 | 101 | ||
103 | return IS_ERR(pdev) ? PTR_ERR(pdev) : 0; | 102 | return PTR_RET(pdev); |
104 | } | 103 | } |
105 | omap_postcore_initcall(omap4_l3_init); | 104 | omap_postcore_initcall(omap4_l3_init); |
106 | 105 | ||
diff --git a/arch/arm/mach-omap2/fb.c b/arch/arm/mach-omap2/fb.c index 190ae493c6ef..2ca33cc0c484 100644 --- a/arch/arm/mach-omap2/fb.c +++ b/arch/arm/mach-omap2/fb.c | |||
@@ -83,10 +83,7 @@ static int __init omap_init_vrfb(void) | |||
83 | pdev = platform_device_register_resndata(NULL, "omapvrfb", -1, | 83 | pdev = platform_device_register_resndata(NULL, "omapvrfb", -1, |
84 | res, num_res, NULL, 0); | 84 | res, num_res, NULL, 0); |
85 | 85 | ||
86 | if (IS_ERR(pdev)) | 86 | return PTR_RET(pdev); |
87 | return PTR_ERR(pdev); | ||
88 | else | ||
89 | return 0; | ||
90 | } | 87 | } |
91 | 88 | ||
92 | omap_arch_initcall(omap_init_vrfb); | 89 | omap_arch_initcall(omap_init_vrfb); |
diff --git a/arch/arm/mach-omap2/gpmc.c b/arch/arm/mach-omap2/gpmc.c index 1c7969e965d7..f3fdd6afa213 100644 --- a/arch/arm/mach-omap2/gpmc.c +++ b/arch/arm/mach-omap2/gpmc.c | |||
@@ -1734,7 +1734,7 @@ static int __init omap_gpmc_init(void) | |||
1734 | pdev = omap_device_build(DEVICE_NAME, -1, oh, NULL, 0); | 1734 | pdev = omap_device_build(DEVICE_NAME, -1, oh, NULL, 0); |
1735 | WARN(IS_ERR(pdev), "could not build omap_device for %s\n", oh_name); | 1735 | WARN(IS_ERR(pdev), "could not build omap_device for %s\n", oh_name); |
1736 | 1736 | ||
1737 | return IS_ERR(pdev) ? PTR_ERR(pdev) : 0; | 1737 | return PTR_RET(pdev); |
1738 | } | 1738 | } |
1739 | omap_postcore_initcall(omap_gpmc_init); | 1739 | omap_postcore_initcall(omap_gpmc_init); |
1740 | 1740 | ||
diff --git a/arch/arm/mach-omap2/io.c b/arch/arm/mach-omap2/io.c index fe3253a100e7..4a3f06f02859 100644 --- a/arch/arm/mach-omap2/io.c +++ b/arch/arm/mach-omap2/io.c | |||
@@ -394,7 +394,7 @@ static void __init omap_hwmod_init_postsetup(void) | |||
394 | omap_pm_if_early_init(); | 394 | omap_pm_if_early_init(); |
395 | } | 395 | } |
396 | 396 | ||
397 | static void __init omap_common_late_init(void) | 397 | static void __init __maybe_unused omap_common_late_init(void) |
398 | { | 398 | { |
399 | omap_mux_late_init(); | 399 | omap_mux_late_init(); |
400 | omap2_common_pm_late_init(); | 400 | omap2_common_pm_late_init(); |
diff --git a/arch/arm/mach-omap2/omap-headsmp.S b/arch/arm/mach-omap2/omap-headsmp.S index 4ea308114165..75e92952c18e 100644 --- a/arch/arm/mach-omap2/omap-headsmp.S +++ b/arch/arm/mach-omap2/omap-headsmp.S | |||
@@ -20,8 +20,6 @@ | |||
20 | 20 | ||
21 | #include "omap44xx.h" | 21 | #include "omap44xx.h" |
22 | 22 | ||
23 | __CPUINIT | ||
24 | |||
25 | /* Physical address needed since MMU not enabled yet on secondary core */ | 23 | /* Physical address needed since MMU not enabled yet on secondary core */ |
26 | #define AUX_CORE_BOOT0_PA 0x48281800 | 24 | #define AUX_CORE_BOOT0_PA 0x48281800 |
27 | 25 | ||
diff --git a/arch/arm/mach-omap2/omap-mpuss-lowpower.c b/arch/arm/mach-omap2/omap-mpuss-lowpower.c index f993a4188701..f991016e2a6a 100644 --- a/arch/arm/mach-omap2/omap-mpuss-lowpower.c +++ b/arch/arm/mach-omap2/omap-mpuss-lowpower.c | |||
@@ -291,7 +291,7 @@ int omap4_enter_lowpower(unsigned int cpu, unsigned int power_state) | |||
291 | * @cpu : CPU ID | 291 | * @cpu : CPU ID |
292 | * @power_state: CPU low power state. | 292 | * @power_state: CPU low power state. |
293 | */ | 293 | */ |
294 | int __cpuinit omap4_hotplug_cpu(unsigned int cpu, unsigned int power_state) | 294 | int omap4_hotplug_cpu(unsigned int cpu, unsigned int power_state) |
295 | { | 295 | { |
296 | struct omap4_cpu_pm_info *pm_info = &per_cpu(omap4_pm_info, cpu); | 296 | struct omap4_cpu_pm_info *pm_info = &per_cpu(omap4_pm_info, cpu); |
297 | unsigned int cpu_state = 0; | 297 | unsigned int cpu_state = 0; |
diff --git a/arch/arm/mach-omap2/omap-smp.c b/arch/arm/mach-omap2/omap-smp.c index 98a11463a843..8708b2a9da45 100644 --- a/arch/arm/mach-omap2/omap-smp.c +++ b/arch/arm/mach-omap2/omap-smp.c | |||
@@ -51,7 +51,7 @@ void __iomem *omap4_get_scu_base(void) | |||
51 | return scu_base; | 51 | return scu_base; |
52 | } | 52 | } |
53 | 53 | ||
54 | static void __cpuinit omap4_secondary_init(unsigned int cpu) | 54 | static void omap4_secondary_init(unsigned int cpu) |
55 | { | 55 | { |
56 | /* | 56 | /* |
57 | * Configure ACTRL and enable NS SMP bit access on CPU1 on HS device. | 57 | * Configure ACTRL and enable NS SMP bit access on CPU1 on HS device. |
@@ -72,7 +72,7 @@ static void __cpuinit omap4_secondary_init(unsigned int cpu) | |||
72 | spin_unlock(&boot_lock); | 72 | spin_unlock(&boot_lock); |
73 | } | 73 | } |
74 | 74 | ||
75 | static int __cpuinit omap4_boot_secondary(unsigned int cpu, struct task_struct *idle) | 75 | static int omap4_boot_secondary(unsigned int cpu, struct task_struct *idle) |
76 | { | 76 | { |
77 | static struct clockdomain *cpu1_clkdm; | 77 | static struct clockdomain *cpu1_clkdm; |
78 | static bool booted; | 78 | static bool booted; |
diff --git a/arch/arm/mach-omap2/omap-wakeupgen.c b/arch/arm/mach-omap2/omap-wakeupgen.c index f8bb3b9b6a76..813c61558a5f 100644 --- a/arch/arm/mach-omap2/omap-wakeupgen.c +++ b/arch/arm/mach-omap2/omap-wakeupgen.c | |||
@@ -323,8 +323,8 @@ static void irq_save_secure_context(void) | |||
323 | #endif | 323 | #endif |
324 | 324 | ||
325 | #ifdef CONFIG_HOTPLUG_CPU | 325 | #ifdef CONFIG_HOTPLUG_CPU |
326 | static int __cpuinit irq_cpu_hotplug_notify(struct notifier_block *self, | 326 | static int irq_cpu_hotplug_notify(struct notifier_block *self, |
327 | unsigned long action, void *hcpu) | 327 | unsigned long action, void *hcpu) |
328 | { | 328 | { |
329 | unsigned int cpu = (unsigned int)hcpu; | 329 | unsigned int cpu = (unsigned int)hcpu; |
330 | 330 | ||
diff --git a/arch/arm/mach-omap2/omap2-restart.c b/arch/arm/mach-omap2/omap2-restart.c index 719b716a4494..68423e26399d 100644 --- a/arch/arm/mach-omap2/omap2-restart.c +++ b/arch/arm/mach-omap2/omap2-restart.c | |||
@@ -31,7 +31,7 @@ static struct clk *reset_virt_prcm_set_ck, *reset_sys_ck; | |||
31 | * Set the DPLL to bypass so that reboot completes successfully. No | 31 | * Set the DPLL to bypass so that reboot completes successfully. No |
32 | * return value. | 32 | * return value. |
33 | */ | 33 | */ |
34 | void omap2xxx_restart(char mode, const char *cmd) | 34 | void omap2xxx_restart(enum reboot_mode mode, const char *cmd) |
35 | { | 35 | { |
36 | u32 rate; | 36 | u32 rate; |
37 | 37 | ||
diff --git a/arch/arm/mach-omap2/omap3-restart.c b/arch/arm/mach-omap2/omap3-restart.c index 923c582189e5..5de2a0c2979d 100644 --- a/arch/arm/mach-omap2/omap3-restart.c +++ b/arch/arm/mach-omap2/omap3-restart.c | |||
@@ -12,6 +12,7 @@ | |||
12 | */ | 12 | */ |
13 | #include <linux/kernel.h> | 13 | #include <linux/kernel.h> |
14 | #include <linux/init.h> | 14 | #include <linux/init.h> |
15 | #include <linux/reboot.h> | ||
15 | 16 | ||
16 | #include "iomap.h" | 17 | #include "iomap.h" |
17 | #include "common.h" | 18 | #include "common.h" |
@@ -28,7 +29,7 @@ | |||
28 | * Resets the SoC. For @cmd, see the 'reboot' syscall in | 29 | * Resets the SoC. For @cmd, see the 'reboot' syscall in |
29 | * kernel/sys.c. No return value. | 30 | * kernel/sys.c. No return value. |
30 | */ | 31 | */ |
31 | void omap3xxx_restart(char mode, const char *cmd) | 32 | void omap3xxx_restart(enum reboot_mode mode, const char *cmd) |
32 | { | 33 | { |
33 | omap3_ctrl_write_boot_mode((cmd ? (u8)*cmd : 0)); | 34 | omap3_ctrl_write_boot_mode((cmd ? (u8)*cmd : 0)); |
34 | omap3xxx_prm_dpll3_reset(); /* never returns */ | 35 | omap3xxx_prm_dpll3_reset(); /* never returns */ |
diff --git a/arch/arm/mach-omap2/omap4-common.c b/arch/arm/mach-omap2/omap4-common.c index 38cd3a69cff3..57911430324e 100644 --- a/arch/arm/mach-omap2/omap4-common.c +++ b/arch/arm/mach-omap2/omap4-common.c | |||
@@ -23,6 +23,7 @@ | |||
23 | #include <linux/export.h> | 23 | #include <linux/export.h> |
24 | #include <linux/irqchip/arm-gic.h> | 24 | #include <linux/irqchip/arm-gic.h> |
25 | #include <linux/of_address.h> | 25 | #include <linux/of_address.h> |
26 | #include <linux/reboot.h> | ||
26 | 27 | ||
27 | #include <asm/hardware/cache-l2x0.h> | 28 | #include <asm/hardware/cache-l2x0.h> |
28 | #include <asm/mach/map.h> | 29 | #include <asm/mach/map.h> |
diff --git a/arch/arm/mach-omap2/omap4-restart.c b/arch/arm/mach-omap2/omap4-restart.c index f90e02e11898..41dfd7da8170 100644 --- a/arch/arm/mach-omap2/omap4-restart.c +++ b/arch/arm/mach-omap2/omap4-restart.c | |||
@@ -8,6 +8,7 @@ | |||
8 | */ | 8 | */ |
9 | 9 | ||
10 | #include <linux/types.h> | 10 | #include <linux/types.h> |
11 | #include <linux/reboot.h> | ||
11 | #include "prminst44xx.h" | 12 | #include "prminst44xx.h" |
12 | 13 | ||
13 | /** | 14 | /** |
@@ -18,7 +19,7 @@ | |||
18 | * Resets the SoC. For @cmd, see the 'reboot' syscall in | 19 | * Resets the SoC. For @cmd, see the 'reboot' syscall in |
19 | * kernel/sys.c. No return value. | 20 | * kernel/sys.c. No return value. |
20 | */ | 21 | */ |
21 | void omap44xx_restart(char mode, const char *cmd) | 22 | void omap44xx_restart(enum reboot_mode mode, const char *cmd) |
22 | { | 23 | { |
23 | /* XXX Should save 'cmd' into scratchpad for use after reboot */ | 24 | /* XXX Should save 'cmd' into scratchpad for use after reboot */ |
24 | omap4_prminst_global_warm_sw_reset(); /* never returns */ | 25 | omap4_prminst_global_warm_sw_reset(); /* never returns */ |
diff --git a/arch/arm/mach-omap2/pmu.c b/arch/arm/mach-omap2/pmu.c index 9ace8eae7ee8..33c8846b4193 100644 --- a/arch/arm/mach-omap2/pmu.c +++ b/arch/arm/mach-omap2/pmu.c | |||
@@ -54,10 +54,7 @@ static int __init omap2_init_pmu(unsigned oh_num, char *oh_names[]) | |||
54 | WARN(IS_ERR(omap_pmu_dev), "Can't build omap_device for %s.\n", | 54 | WARN(IS_ERR(omap_pmu_dev), "Can't build omap_device for %s.\n", |
55 | dev_name); | 55 | dev_name); |
56 | 56 | ||
57 | if (IS_ERR(omap_pmu_dev)) | 57 | return PTR_RET(omap_pmu_dev); |
58 | return PTR_ERR(omap_pmu_dev); | ||
59 | |||
60 | return 0; | ||
61 | } | 58 | } |
62 | 59 | ||
63 | static int __init omap_init_pmu(void) | 60 | static int __init omap_init_pmu(void) |
diff --git a/arch/arm/mach-omap2/sleep44xx.S b/arch/arm/mach-omap2/sleep44xx.S index 88ff83a0942e..9086ce03ae12 100644 --- a/arch/arm/mach-omap2/sleep44xx.S +++ b/arch/arm/mach-omap2/sleep44xx.S | |||
@@ -34,6 +34,8 @@ ppa_zero_params: | |||
34 | ppa_por_params: | 34 | ppa_por_params: |
35 | .word 1, 0 | 35 | .word 1, 0 |
36 | 36 | ||
37 | #ifdef CONFIG_ARCH_OMAP4 | ||
38 | |||
37 | /* | 39 | /* |
38 | * ============================= | 40 | * ============================= |
39 | * == CPU suspend finisher == | 41 | * == CPU suspend finisher == |
@@ -326,7 +328,9 @@ skip_l2en: | |||
326 | 328 | ||
327 | b cpu_resume @ Jump to generic resume | 329 | b cpu_resume @ Jump to generic resume |
328 | ENDPROC(omap4_cpu_resume) | 330 | ENDPROC(omap4_cpu_resume) |
329 | #endif | 331 | #endif /* CONFIG_ARCH_OMAP4 */ |
332 | |||
333 | #endif /* defined(CONFIG_SMP) && defined(CONFIG_PM) */ | ||
330 | 334 | ||
331 | #ifndef CONFIG_OMAP4_ERRATA_I688 | 335 | #ifndef CONFIG_OMAP4_ERRATA_I688 |
332 | ENTRY(omap_bus_sync) | 336 | ENTRY(omap_bus_sync) |
diff --git a/arch/arm/mach-omap2/timer.c b/arch/arm/mach-omap2/timer.c index 3bdb0fb02028..b37e1fcbad56 100644 --- a/arch/arm/mach-omap2/timer.c +++ b/arch/arm/mach-omap2/timer.c | |||
@@ -41,10 +41,10 @@ | |||
41 | #include <linux/of_irq.h> | 41 | #include <linux/of_irq.h> |
42 | #include <linux/platform_device.h> | 42 | #include <linux/platform_device.h> |
43 | #include <linux/platform_data/dmtimer-omap.h> | 43 | #include <linux/platform_data/dmtimer-omap.h> |
44 | #include <linux/sched_clock.h> | ||
44 | 45 | ||
45 | #include <asm/mach/time.h> | 46 | #include <asm/mach/time.h> |
46 | #include <asm/smp_twd.h> | 47 | #include <asm/smp_twd.h> |
47 | #include <asm/sched_clock.h> | ||
48 | 48 | ||
49 | #include "omap_hwmod.h" | 49 | #include "omap_hwmod.h" |
50 | #include "omap_device.h" | 50 | #include "omap_device.h" |
@@ -220,7 +220,7 @@ static int __init omap_dm_timer_init_one(struct omap_dm_timer *timer, | |||
220 | int posted) | 220 | int posted) |
221 | { | 221 | { |
222 | char name[10]; /* 10 = sizeof("gptXX_Xck0") */ | 222 | char name[10]; /* 10 = sizeof("gptXX_Xck0") */ |
223 | const char *oh_name; | 223 | const char *oh_name = NULL; |
224 | struct device_node *np; | 224 | struct device_node *np; |
225 | struct omap_hwmod *oh; | 225 | struct omap_hwmod *oh; |
226 | struct resource irq, mem; | 226 | struct resource irq, mem; |