diff options
-rw-r--r-- | arch/arm/boot/dts/tegra-harmony.dts | 1 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra-seaboard.dts | 4 | ||||
-rw-r--r-- | arch/arm/configs/at91sam9g45_defconfig | 214 | ||||
-rw-r--r-- | arch/arm/mach-imx/Kconfig | 1 | ||||
-rw-r--r-- | arch/arm/mach-imx/mach-mx31_3ds.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-mx5/pm-imx5.c | 15 | ||||
-rw-r--r-- | arch/arm/mach-mxs/clock-mx28.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-omap2/board-2430sdp.c | 3 | ||||
-rw-r--r-- | arch/arm/mach-omap2/board-4430sdp.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-omap2/hsmmc.c | 12 | ||||
-rw-r--r-- | arch/arm/mach-omap2/irq.c | 4 | ||||
-rw-r--r-- | arch/arm/mach-omap2/usb-musb.c | 3 | ||||
-rw-r--r-- | arch/arm/mach-ux500/Kconfig | 1 | ||||
-rw-r--r-- | arch/arm/mach-ux500/cpu.c | 25 | ||||
-rw-r--r-- | arch/arm/plat-mxc/include/mach/iomux-v3.h | 10 | ||||
-rw-r--r-- | drivers/misc/Kconfig | 2 |
16 files changed, 274 insertions, 27 deletions
diff --git a/arch/arm/boot/dts/tegra-harmony.dts b/arch/arm/boot/dts/tegra-harmony.dts index e5818668d091..0e225b86b652 100644 --- a/arch/arm/boot/dts/tegra-harmony.dts +++ b/arch/arm/boot/dts/tegra-harmony.dts | |||
@@ -66,5 +66,6 @@ | |||
66 | cd-gpios = <&gpio 58 0>; /* gpio PH2 */ | 66 | cd-gpios = <&gpio 58 0>; /* gpio PH2 */ |
67 | wp-gpios = <&gpio 59 0>; /* gpio PH3 */ | 67 | wp-gpios = <&gpio 59 0>; /* gpio PH3 */ |
68 | power-gpios = <&gpio 70 0>; /* gpio PI6 */ | 68 | power-gpios = <&gpio 70 0>; /* gpio PI6 */ |
69 | support-8bit; | ||
69 | }; | 70 | }; |
70 | }; | 71 | }; |
diff --git a/arch/arm/boot/dts/tegra-seaboard.dts b/arch/arm/boot/dts/tegra-seaboard.dts index 64cedca6fc79..a72299b8e668 100644 --- a/arch/arm/boot/dts/tegra-seaboard.dts +++ b/arch/arm/boot/dts/tegra-seaboard.dts | |||
@@ -25,4 +25,8 @@ | |||
25 | wp-gpios = <&gpio 57 0>; /* gpio PH1 */ | 25 | wp-gpios = <&gpio 57 0>; /* gpio PH1 */ |
26 | power-gpios = <&gpio 70 0>; /* gpio PI6 */ | 26 | power-gpios = <&gpio 70 0>; /* gpio PI6 */ |
27 | }; | 27 | }; |
28 | |||
29 | sdhci@c8000600 { | ||
30 | support-8bit; | ||
31 | }; | ||
28 | }; | 32 | }; |
diff --git a/arch/arm/configs/at91sam9g45_defconfig b/arch/arm/configs/at91sam9g45_defconfig new file mode 100644 index 000000000000..c5876d244f4b --- /dev/null +++ b/arch/arm/configs/at91sam9g45_defconfig | |||
@@ -0,0 +1,214 @@ | |||
1 | CONFIG_EXPERIMENTAL=y | ||
2 | # CONFIG_LOCALVERSION_AUTO is not set | ||
3 | # CONFIG_SWAP is not set | ||
4 | CONFIG_SYSVIPC=y | ||
5 | CONFIG_LOG_BUF_SHIFT=14 | ||
6 | CONFIG_SYSFS_DEPRECATED=y | ||
7 | CONFIG_SYSFS_DEPRECATED_V2=y | ||
8 | CONFIG_BLK_DEV_INITRD=y | ||
9 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | ||
10 | CONFIG_EMBEDDED=y | ||
11 | CONFIG_SLAB=y | ||
12 | CONFIG_MODULES=y | ||
13 | CONFIG_MODULE_UNLOAD=y | ||
14 | # CONFIG_LBDAF is not set | ||
15 | # CONFIG_BLK_DEV_BSG is not set | ||
16 | # CONFIG_IOSCHED_DEADLINE is not set | ||
17 | # CONFIG_IOSCHED_CFQ is not set | ||
18 | CONFIG_ARCH_AT91=y | ||
19 | CONFIG_ARCH_AT91SAM9G45=y | ||
20 | CONFIG_MACH_AT91SAM9M10G45EK=y | ||
21 | CONFIG_AT91_PROGRAMMABLE_CLOCKS=y | ||
22 | CONFIG_AT91_SLOW_CLOCK=y | ||
23 | CONFIG_AEABI=y | ||
24 | # CONFIG_OABI_COMPAT is not set | ||
25 | CONFIG_LEDS=y | ||
26 | CONFIG_LEDS_CPU=y | ||
27 | CONFIG_UACCESS_WITH_MEMCPY=y | ||
28 | CONFIG_ZBOOT_ROM_TEXT=0x0 | ||
29 | CONFIG_ZBOOT_ROM_BSS=0x0 | ||
30 | CONFIG_CMDLINE="mem=128M console=ttyS0,115200 initrd=0x71100000,25165824 root=/dev/ram0 rw" | ||
31 | CONFIG_AUTO_ZRELADDR=y | ||
32 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
33 | CONFIG_NET=y | ||
34 | CONFIG_PACKET=y | ||
35 | CONFIG_UNIX=y | ||
36 | CONFIG_INET=y | ||
37 | CONFIG_IP_MULTICAST=y | ||
38 | # CONFIG_INET_XFRM_MODE_TRANSPORT is not set | ||
39 | # CONFIG_INET_XFRM_MODE_TUNNEL is not set | ||
40 | # CONFIG_INET_XFRM_MODE_BEET is not set | ||
41 | # CONFIG_INET_DIAG is not set | ||
42 | CONFIG_IPV6=y | ||
43 | # CONFIG_INET6_XFRM_MODE_TRANSPORT is not set | ||
44 | # CONFIG_INET6_XFRM_MODE_TUNNEL is not set | ||
45 | # CONFIG_INET6_XFRM_MODE_BEET is not set | ||
46 | CONFIG_IPV6_SIT_6RD=y | ||
47 | CONFIG_CFG80211=y | ||
48 | CONFIG_LIB80211=y | ||
49 | CONFIG_MAC80211=y | ||
50 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||
51 | CONFIG_DEVTMPFS=y | ||
52 | CONFIG_DEVTMPFS_MOUNT=y | ||
53 | # CONFIG_STANDALONE is not set | ||
54 | # CONFIG_PREVENT_FIRMWARE_BUILD is not set | ||
55 | CONFIG_MTD=y | ||
56 | CONFIG_MTD_CMDLINE_PARTS=y | ||
57 | CONFIG_MTD_CHAR=y | ||
58 | CONFIG_MTD_BLOCK=y | ||
59 | CONFIG_MTD_DATAFLASH=y | ||
60 | CONFIG_MTD_NAND=y | ||
61 | CONFIG_MTD_NAND_ATMEL=y | ||
62 | CONFIG_MTD_UBI=y | ||
63 | CONFIG_BLK_DEV_LOOP=y | ||
64 | CONFIG_BLK_DEV_RAM=y | ||
65 | CONFIG_BLK_DEV_RAM_COUNT=4 | ||
66 | CONFIG_BLK_DEV_RAM_SIZE=8192 | ||
67 | CONFIG_MISC_DEVICES=y | ||
68 | CONFIG_ATMEL_PWM=y | ||
69 | CONFIG_ATMEL_TCLIB=y | ||
70 | CONFIG_SCSI=y | ||
71 | CONFIG_BLK_DEV_SD=y | ||
72 | CONFIG_SCSI_MULTI_LUN=y | ||
73 | # CONFIG_SCSI_LOWLEVEL is not set | ||
74 | CONFIG_NETDEVICES=y | ||
75 | CONFIG_MII=y | ||
76 | CONFIG_DAVICOM_PHY=y | ||
77 | CONFIG_NET_ETHERNET=y | ||
78 | CONFIG_MACB=y | ||
79 | # CONFIG_NETDEV_1000 is not set | ||
80 | # CONFIG_NETDEV_10000 is not set | ||
81 | CONFIG_LIBERTAS_THINFIRM=m | ||
82 | CONFIG_LIBERTAS_THINFIRM_USB=m | ||
83 | CONFIG_AT76C50X_USB=m | ||
84 | CONFIG_USB_ZD1201=m | ||
85 | CONFIG_RTL8187=m | ||
86 | CONFIG_ATH_COMMON=m | ||
87 | CONFIG_ATH9K=m | ||
88 | CONFIG_CARL9170=m | ||
89 | CONFIG_B43=m | ||
90 | CONFIG_B43_PHY_N=y | ||
91 | CONFIG_LIBERTAS=m | ||
92 | CONFIG_LIBERTAS_USB=m | ||
93 | CONFIG_LIBERTAS_SDIO=m | ||
94 | CONFIG_LIBERTAS_SPI=m | ||
95 | CONFIG_RT2X00=m | ||
96 | CONFIG_RT2500USB=m | ||
97 | CONFIG_RT73USB=m | ||
98 | CONFIG_RT2800USB=m | ||
99 | CONFIG_RT2800USB_RT53XX=y | ||
100 | CONFIG_RT2800USB_UNKNOWN=y | ||
101 | CONFIG_RTL8192CU=m | ||
102 | CONFIG_WL1251=m | ||
103 | CONFIG_WL1251_SDIO=m | ||
104 | CONFIG_WL12XX_MENU=m | ||
105 | CONFIG_WL12XX=m | ||
106 | CONFIG_WL12XX_SDIO=m | ||
107 | CONFIG_ZD1211RW=m | ||
108 | CONFIG_MWIFIEX=m | ||
109 | CONFIG_MWIFIEX_SDIO=m | ||
110 | CONFIG_INPUT_POLLDEV=m | ||
111 | # CONFIG_INPUT_MOUSEDEV_PSAUX is not set | ||
112 | CONFIG_INPUT_MOUSEDEV_SCREEN_X=480 | ||
113 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=272 | ||
114 | CONFIG_INPUT_JOYDEV=y | ||
115 | CONFIG_INPUT_EVDEV=y | ||
116 | # CONFIG_KEYBOARD_ATKBD is not set | ||
117 | CONFIG_KEYBOARD_QT1070=m | ||
118 | CONFIG_KEYBOARD_QT2160=m | ||
119 | CONFIG_KEYBOARD_GPIO=y | ||
120 | # CONFIG_INPUT_MOUSE is not set | ||
121 | CONFIG_INPUT_TOUCHSCREEN=y | ||
122 | CONFIG_TOUCHSCREEN_ATMEL_MXT=m | ||
123 | CONFIG_TOUCHSCREEN_ATMEL_TSADCC=y | ||
124 | # CONFIG_SERIO is not set | ||
125 | CONFIG_LEGACY_PTY_COUNT=4 | ||
126 | CONFIG_SERIAL_ATMEL=y | ||
127 | CONFIG_SERIAL_ATMEL_CONSOLE=y | ||
128 | CONFIG_HW_RANDOM=y | ||
129 | CONFIG_I2C=y | ||
130 | CONFIG_I2C_GPIO=y | ||
131 | CONFIG_SPI=y | ||
132 | CONFIG_SPI_ATMEL=y | ||
133 | # CONFIG_HWMON is not set | ||
134 | # CONFIG_MFD_SUPPORT is not set | ||
135 | CONFIG_FB=y | ||
136 | CONFIG_FB_ATMEL=y | ||
137 | CONFIG_FB_UDL=m | ||
138 | CONFIG_BACKLIGHT_LCD_SUPPORT=y | ||
139 | # CONFIG_LCD_CLASS_DEVICE is not set | ||
140 | CONFIG_BACKLIGHT_CLASS_DEVICE=y | ||
141 | CONFIG_BACKLIGHT_ATMEL_LCDC=y | ||
142 | # CONFIG_BACKLIGHT_GENERIC is not set | ||
143 | CONFIG_SOUND=y | ||
144 | CONFIG_SND=y | ||
145 | CONFIG_SND_SEQUENCER=y | ||
146 | CONFIG_SND_MIXER_OSS=y | ||
147 | CONFIG_SND_PCM_OSS=y | ||
148 | # CONFIG_SND_SUPPORT_OLD_API is not set | ||
149 | # CONFIG_SND_VERBOSE_PROCFS is not set | ||
150 | # CONFIG_SND_DRIVERS is not set | ||
151 | # CONFIG_SND_ARM is not set | ||
152 | CONFIG_SND_ATMEL_AC97C=y | ||
153 | # CONFIG_SND_SPI is not set | ||
154 | CONFIG_SND_USB_AUDIO=m | ||
155 | # CONFIG_USB_HID is not set | ||
156 | CONFIG_USB=y | ||
157 | CONFIG_USB_ANNOUNCE_NEW_DEVICES=y | ||
158 | CONFIG_USB_DEVICEFS=y | ||
159 | # CONFIG_USB_DEVICE_CLASS is not set | ||
160 | CONFIG_USB_EHCI_HCD=y | ||
161 | CONFIG_USB_OHCI_HCD=y | ||
162 | CONFIG_USB_ACM=y | ||
163 | CONFIG_USB_STORAGE=y | ||
164 | CONFIG_USB_GADGET=y | ||
165 | CONFIG_USB_ATMEL_USBA=m | ||
166 | CONFIG_USB_ZERO=m | ||
167 | CONFIG_USB_AUDIO=m | ||
168 | CONFIG_USB_ETH=m | ||
169 | CONFIG_USB_ETH_EEM=y | ||
170 | CONFIG_USB_MASS_STORAGE=m | ||
171 | CONFIG_USB_G_SERIAL=m | ||
172 | CONFIG_USB_CDC_COMPOSITE=m | ||
173 | CONFIG_USB_G_MULTI=m | ||
174 | CONFIG_USB_G_MULTI_CDC=y | ||
175 | CONFIG_MMC=y | ||
176 | # CONFIG_MMC_BLOCK_BOUNCE is not set | ||
177 | CONFIG_SDIO_UART=m | ||
178 | CONFIG_MMC_ATMELMCI=y | ||
179 | CONFIG_MMC_ATMELMCI_DMA=y | ||
180 | CONFIG_LEDS_ATMEL_PWM=y | ||
181 | CONFIG_LEDS_GPIO=y | ||
182 | CONFIG_LEDS_TRIGGER_TIMER=y | ||
183 | CONFIG_LEDS_TRIGGER_HEARTBEAT=y | ||
184 | CONFIG_LEDS_TRIGGER_GPIO=y | ||
185 | CONFIG_RTC_CLASS=y | ||
186 | CONFIG_RTC_DRV_AT91RM9200=y | ||
187 | CONFIG_DMADEVICES=y | ||
188 | CONFIG_AT_HDMAC=y | ||
189 | CONFIG_DMATEST=m | ||
190 | # CONFIG_IOMMU_SUPPORT is not set | ||
191 | CONFIG_EXT2_FS=y | ||
192 | CONFIG_FANOTIFY=y | ||
193 | CONFIG_VFAT_FS=y | ||
194 | CONFIG_TMPFS=y | ||
195 | CONFIG_JFFS2_FS=y | ||
196 | CONFIG_JFFS2_SUMMARY=y | ||
197 | CONFIG_CRAMFS=m | ||
198 | CONFIG_SQUASHFS=m | ||
199 | CONFIG_SQUASHFS_EMBEDDED=y | ||
200 | CONFIG_NFS_FS=y | ||
201 | CONFIG_NFS_V3=y | ||
202 | CONFIG_NLS_CODEPAGE_437=y | ||
203 | CONFIG_NLS_CODEPAGE_850=y | ||
204 | CONFIG_NLS_ISO8859_1=y | ||
205 | CONFIG_STRIP_ASM_SYMS=y | ||
206 | # CONFIG_SCHED_DEBUG is not set | ||
207 | CONFIG_DEBUG_MEMORY_INIT=y | ||
208 | # CONFIG_FTRACE is not set | ||
209 | CONFIG_DEBUG_USER=y | ||
210 | CONFIG_CRYPTO_ECB=y | ||
211 | # CONFIG_CRYPTO_ANSI_CPRNG is not set | ||
212 | CONFIG_CRYPTO_USER_API_HASH=m | ||
213 | CONFIG_CRYPTO_USER_API_SKCIPHER=m | ||
214 | # CONFIG_CRYPTO_HW is not set | ||
diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig index 0519dd7f034b..e9c2968005dc 100644 --- a/arch/arm/mach-imx/Kconfig +++ b/arch/arm/mach-imx/Kconfig | |||
@@ -449,6 +449,7 @@ config MACH_MX31_3DS | |||
449 | select IMX_HAVE_PLATFORM_IMX_UART | 449 | select IMX_HAVE_PLATFORM_IMX_UART |
450 | select IMX_HAVE_PLATFORM_IPU_CORE | 450 | select IMX_HAVE_PLATFORM_IPU_CORE |
451 | select IMX_HAVE_PLATFORM_MXC_EHCI | 451 | select IMX_HAVE_PLATFORM_MXC_EHCI |
452 | select IMX_HAVE_PLATFORM_MXC_MMC | ||
452 | select IMX_HAVE_PLATFORM_MXC_NAND | 453 | select IMX_HAVE_PLATFORM_MXC_NAND |
453 | select IMX_HAVE_PLATFORM_SPI_IMX | 454 | select IMX_HAVE_PLATFORM_SPI_IMX |
454 | select MXC_ULPI if USB_ULPI | 455 | select MXC_ULPI if USB_ULPI |
diff --git a/arch/arm/mach-imx/mach-mx31_3ds.c b/arch/arm/mach-imx/mach-mx31_3ds.c index c20be7530927..5750ca55c1f7 100644 --- a/arch/arm/mach-imx/mach-mx31_3ds.c +++ b/arch/arm/mach-imx/mach-mx31_3ds.c | |||
@@ -542,7 +542,7 @@ static const struct mxc_nand_platform_data | |||
542 | mx31_3ds_nand_board_info __initconst = { | 542 | mx31_3ds_nand_board_info __initconst = { |
543 | .width = 1, | 543 | .width = 1, |
544 | .hw_ecc = 1, | 544 | .hw_ecc = 1, |
545 | #ifdef MACH_MX31_3DS_MXC_NAND_USE_BBT | 545 | #ifdef CONFIG_MACH_MX31_3DS_MXC_NAND_USE_BBT |
546 | .flash_bbt = 1, | 546 | .flash_bbt = 1, |
547 | #endif | 547 | #endif |
548 | }; | 548 | }; |
diff --git a/arch/arm/mach-mx5/pm-imx5.c b/arch/arm/mach-mx5/pm-imx5.c index e4529af0da72..be19e9ce839a 100644 --- a/arch/arm/mach-mx5/pm-imx5.c +++ b/arch/arm/mach-mx5/pm-imx5.c | |||
@@ -19,9 +19,13 @@ | |||
19 | 19 | ||
20 | static struct clk *gpc_dvfs_clk; | 20 | static struct clk *gpc_dvfs_clk; |
21 | 21 | ||
22 | static int mx5_suspend_prepare(void) | ||
23 | { | ||
24 | return clk_enable(gpc_dvfs_clk); | ||
25 | } | ||
26 | |||
22 | static int mx5_suspend_enter(suspend_state_t state) | 27 | static int mx5_suspend_enter(suspend_state_t state) |
23 | { | 28 | { |
24 | clk_enable(gpc_dvfs_clk); | ||
25 | switch (state) { | 29 | switch (state) { |
26 | case PM_SUSPEND_MEM: | 30 | case PM_SUSPEND_MEM: |
27 | mx5_cpu_lp_set(STOP_POWER_OFF); | 31 | mx5_cpu_lp_set(STOP_POWER_OFF); |
@@ -42,11 +46,14 @@ static int mx5_suspend_enter(suspend_state_t state) | |||
42 | __raw_writel(0, MXC_SRPG_EMPGC1_SRPGCR); | 46 | __raw_writel(0, MXC_SRPG_EMPGC1_SRPGCR); |
43 | } | 47 | } |
44 | cpu_do_idle(); | 48 | cpu_do_idle(); |
45 | clk_disable(gpc_dvfs_clk); | ||
46 | |||
47 | return 0; | 49 | return 0; |
48 | } | 50 | } |
49 | 51 | ||
52 | static void mx5_suspend_finish(void) | ||
53 | { | ||
54 | clk_disable(gpc_dvfs_clk); | ||
55 | } | ||
56 | |||
50 | static int mx5_pm_valid(suspend_state_t state) | 57 | static int mx5_pm_valid(suspend_state_t state) |
51 | { | 58 | { |
52 | return (state > PM_SUSPEND_ON && state <= PM_SUSPEND_MAX); | 59 | return (state > PM_SUSPEND_ON && state <= PM_SUSPEND_MAX); |
@@ -54,7 +61,9 @@ static int mx5_pm_valid(suspend_state_t state) | |||
54 | 61 | ||
55 | static const struct platform_suspend_ops mx5_suspend_ops = { | 62 | static const struct platform_suspend_ops mx5_suspend_ops = { |
56 | .valid = mx5_pm_valid, | 63 | .valid = mx5_pm_valid, |
64 | .prepare = mx5_suspend_prepare, | ||
57 | .enter = mx5_suspend_enter, | 65 | .enter = mx5_suspend_enter, |
66 | .finish = mx5_suspend_finish, | ||
58 | }; | 67 | }; |
59 | 68 | ||
60 | static int __init mx5_pm_init(void) | 69 | static int __init mx5_pm_init(void) |
diff --git a/arch/arm/mach-mxs/clock-mx28.c b/arch/arm/mach-mxs/clock-mx28.c index 5dcc59d5b9ec..ba532279d1a1 100644 --- a/arch/arm/mach-mxs/clock-mx28.c +++ b/arch/arm/mach-mxs/clock-mx28.c | |||
@@ -349,7 +349,7 @@ static int name##_set_rate(struct clk *clk, unsigned long rate) \ | |||
349 | \ | 349 | \ |
350 | reg = __raw_readl(CLKCTRL_BASE_ADDR + HW_CLKCTRL_##fr); \ | 350 | reg = __raw_readl(CLKCTRL_BASE_ADDR + HW_CLKCTRL_##fr); \ |
351 | reg &= ~BM_CLKCTRL_##fr##_##fs##FRAC; \ | 351 | reg &= ~BM_CLKCTRL_##fr##_##fs##FRAC; \ |
352 | reg |= frac; \ | 352 | reg |= frac << BP_CLKCTRL_##fr##_##fs##FRAC; \ |
353 | __raw_writel(reg, CLKCTRL_BASE_ADDR + HW_CLKCTRL_##fr); \ | 353 | __raw_writel(reg, CLKCTRL_BASE_ADDR + HW_CLKCTRL_##fr); \ |
354 | } \ | 354 | } \ |
355 | \ | 355 | \ |
diff --git a/arch/arm/mach-omap2/board-2430sdp.c b/arch/arm/mach-omap2/board-2430sdp.c index 2028464cf5b9..f79b7d2a8ed4 100644 --- a/arch/arm/mach-omap2/board-2430sdp.c +++ b/arch/arm/mach-omap2/board-2430sdp.c | |||
@@ -193,7 +193,8 @@ static int __init omap2430_i2c_init(void) | |||
193 | { | 193 | { |
194 | omap_register_i2c_bus(1, 100, sdp2430_i2c1_boardinfo, | 194 | omap_register_i2c_bus(1, 100, sdp2430_i2c1_boardinfo, |
195 | ARRAY_SIZE(sdp2430_i2c1_boardinfo)); | 195 | ARRAY_SIZE(sdp2430_i2c1_boardinfo)); |
196 | omap2_pmic_init("twl4030", &sdp2430_twldata); | 196 | omap_pmic_init(2, 100, "twl4030", INT_24XX_SYS_NIRQ, |
197 | &sdp2430_twldata); | ||
197 | return 0; | 198 | return 0; |
198 | } | 199 | } |
199 | 200 | ||
diff --git a/arch/arm/mach-omap2/board-4430sdp.c b/arch/arm/mach-omap2/board-4430sdp.c index c7cef44c75d4..9e423ac74997 100644 --- a/arch/arm/mach-omap2/board-4430sdp.c +++ b/arch/arm/mach-omap2/board-4430sdp.c | |||
@@ -129,7 +129,7 @@ static const int sdp4430_keymap[] = { | |||
129 | KEY(7, 6, KEY_OK), | 129 | KEY(7, 6, KEY_OK), |
130 | KEY(7, 7, KEY_DOWN), | 130 | KEY(7, 7, KEY_DOWN), |
131 | }; | 131 | }; |
132 | static struct omap_device_pad keypad_pads[] __initdata = { | 132 | static struct omap_device_pad keypad_pads[] = { |
133 | { .name = "kpd_col1.kpd_col1", | 133 | { .name = "kpd_col1.kpd_col1", |
134 | .enable = OMAP_WAKEUP_EN | OMAP_MUX_MODE1, | 134 | .enable = OMAP_WAKEUP_EN | OMAP_MUX_MODE1, |
135 | }, | 135 | }, |
diff --git a/arch/arm/mach-omap2/hsmmc.c b/arch/arm/mach-omap2/hsmmc.c index a9b45c76e1d3..097a42d81e59 100644 --- a/arch/arm/mach-omap2/hsmmc.c +++ b/arch/arm/mach-omap2/hsmmc.c | |||
@@ -137,8 +137,7 @@ static void omap4_hsmmc1_before_set_reg(struct device *dev, int slot, | |||
137 | */ | 137 | */ |
138 | reg = omap4_ctrl_pad_readl(control_pbias_offset); | 138 | reg = omap4_ctrl_pad_readl(control_pbias_offset); |
139 | reg &= ~(OMAP4_MMC1_PBIASLITE_PWRDNZ_MASK | | 139 | reg &= ~(OMAP4_MMC1_PBIASLITE_PWRDNZ_MASK | |
140 | OMAP4_MMC1_PWRDNZ_MASK | | 140 | OMAP4_MMC1_PWRDNZ_MASK); |
141 | OMAP4_USBC1_ICUSB_PWRDNZ_MASK); | ||
142 | omap4_ctrl_pad_writel(reg, control_pbias_offset); | 141 | omap4_ctrl_pad_writel(reg, control_pbias_offset); |
143 | } | 142 | } |
144 | 143 | ||
@@ -156,8 +155,7 @@ static void omap4_hsmmc1_after_set_reg(struct device *dev, int slot, | |||
156 | else | 155 | else |
157 | reg |= OMAP4_MMC1_PBIASLITE_VMODE_MASK; | 156 | reg |= OMAP4_MMC1_PBIASLITE_VMODE_MASK; |
158 | reg |= (OMAP4_MMC1_PBIASLITE_PWRDNZ_MASK | | 157 | reg |= (OMAP4_MMC1_PBIASLITE_PWRDNZ_MASK | |
159 | OMAP4_MMC1_PWRDNZ_MASK | | 158 | OMAP4_MMC1_PWRDNZ_MASK); |
160 | OMAP4_USBC1_ICUSB_PWRDNZ_MASK); | ||
161 | omap4_ctrl_pad_writel(reg, control_pbias_offset); | 159 | omap4_ctrl_pad_writel(reg, control_pbias_offset); |
162 | 160 | ||
163 | timeout = jiffies + msecs_to_jiffies(5); | 161 | timeout = jiffies + msecs_to_jiffies(5); |
@@ -171,16 +169,14 @@ static void omap4_hsmmc1_after_set_reg(struct device *dev, int slot, | |||
171 | if (reg & OMAP4_MMC1_PBIASLITE_VMODE_ERROR_MASK) { | 169 | if (reg & OMAP4_MMC1_PBIASLITE_VMODE_ERROR_MASK) { |
172 | pr_err("Pbias Voltage is not same as LDO\n"); | 170 | pr_err("Pbias Voltage is not same as LDO\n"); |
173 | /* Caution : On VMODE_ERROR Power Down MMC IO */ | 171 | /* Caution : On VMODE_ERROR Power Down MMC IO */ |
174 | reg &= ~(OMAP4_MMC1_PWRDNZ_MASK | | 172 | reg &= ~(OMAP4_MMC1_PWRDNZ_MASK); |
175 | OMAP4_USBC1_ICUSB_PWRDNZ_MASK); | ||
176 | omap4_ctrl_pad_writel(reg, control_pbias_offset); | 173 | omap4_ctrl_pad_writel(reg, control_pbias_offset); |
177 | } | 174 | } |
178 | } else { | 175 | } else { |
179 | reg = omap4_ctrl_pad_readl(control_pbias_offset); | 176 | reg = omap4_ctrl_pad_readl(control_pbias_offset); |
180 | reg |= (OMAP4_MMC1_PBIASLITE_PWRDNZ_MASK | | 177 | reg |= (OMAP4_MMC1_PBIASLITE_PWRDNZ_MASK | |
181 | OMAP4_MMC1_PWRDNZ_MASK | | 178 | OMAP4_MMC1_PWRDNZ_MASK | |
182 | OMAP4_MMC1_PBIASLITE_VMODE_MASK | | 179 | OMAP4_MMC1_PBIASLITE_VMODE_MASK); |
183 | OMAP4_USBC1_ICUSB_PWRDNZ_MASK); | ||
184 | omap4_ctrl_pad_writel(reg, control_pbias_offset); | 180 | omap4_ctrl_pad_writel(reg, control_pbias_offset); |
185 | } | 181 | } |
186 | } | 182 | } |
diff --git a/arch/arm/mach-omap2/irq.c b/arch/arm/mach-omap2/irq.c index 3a12f7586a4c..65f1be6a182c 100644 --- a/arch/arm/mach-omap2/irq.c +++ b/arch/arm/mach-omap2/irq.c | |||
@@ -165,8 +165,8 @@ static void __init omap_init_irq(u32 base, int nr_irqs) | |||
165 | 165 | ||
166 | omap_irq_bank_init_one(bank); | 166 | omap_irq_bank_init_one(bank); |
167 | 167 | ||
168 | for (i = 0, j = 0; i < bank->nr_irqs; i += 32, j += 0x20) | 168 | for (j = 0; j < bank->nr_irqs; j += 32) |
169 | omap_alloc_gc(bank->base_reg + j, i, 32); | 169 | omap_alloc_gc(bank->base_reg + j, j, 32); |
170 | 170 | ||
171 | nr_of_irqs += bank->nr_irqs; | 171 | nr_of_irqs += bank->nr_irqs; |
172 | nr_banks++; | 172 | nr_banks++; |
diff --git a/arch/arm/mach-omap2/usb-musb.c b/arch/arm/mach-omap2/usb-musb.c index a65145b02a55..19e4dac62a8c 100644 --- a/arch/arm/mach-omap2/usb-musb.c +++ b/arch/arm/mach-omap2/usb-musb.c | |||
@@ -137,9 +137,6 @@ void __init usb_musb_init(struct omap_musb_board_data *musb_board_data) | |||
137 | musb_plat.mode = board_data->mode; | 137 | musb_plat.mode = board_data->mode; |
138 | musb_plat.extvbus = board_data->extvbus; | 138 | musb_plat.extvbus = board_data->extvbus; |
139 | 139 | ||
140 | if (cpu_is_omap44xx()) | ||
141 | omap4430_phy_init(dev); | ||
142 | |||
143 | if (cpu_is_omap3517() || cpu_is_omap3505()) { | 140 | if (cpu_is_omap3517() || cpu_is_omap3505()) { |
144 | oh_name = "am35x_otg_hs"; | 141 | oh_name = "am35x_otg_hs"; |
145 | name = "musb-am35x"; | 142 | name = "musb-am35x"; |
diff --git a/arch/arm/mach-ux500/Kconfig b/arch/arm/mach-ux500/Kconfig index 4210cb434dbc..a3e0c8692f0d 100644 --- a/arch/arm/mach-ux500/Kconfig +++ b/arch/arm/mach-ux500/Kconfig | |||
@@ -6,6 +6,7 @@ config UX500_SOC_COMMON | |||
6 | select ARM_GIC | 6 | select ARM_GIC |
7 | select HAS_MTU | 7 | select HAS_MTU |
8 | select ARM_ERRATA_753970 | 8 | select ARM_ERRATA_753970 |
9 | select ARM_ERRATA_754322 | ||
9 | 10 | ||
10 | menu "Ux500 SoC" | 11 | menu "Ux500 SoC" |
11 | 12 | ||
diff --git a/arch/arm/mach-ux500/cpu.c b/arch/arm/mach-ux500/cpu.c index 1da23bb87c16..8aa104a4711a 100644 --- a/arch/arm/mach-ux500/cpu.c +++ b/arch/arm/mach-ux500/cpu.c | |||
@@ -99,7 +99,27 @@ static void ux500_l2x0_inv_all(void) | |||
99 | ux500_cache_sync(); | 99 | ux500_cache_sync(); |
100 | } | 100 | } |
101 | 101 | ||
102 | static int ux500_l2x0_init(void) | 102 | static int __init ux500_l2x0_unlock(void) |
103 | { | ||
104 | int i; | ||
105 | |||
106 | /* | ||
107 | * Unlock Data and Instruction Lock if locked. Ux500 U-Boot versions | ||
108 | * apparently locks both caches before jumping to the kernel. The | ||
109 | * l2x0 core will not touch the unlock registers if the l2x0 is | ||
110 | * already enabled, so we do it right here instead. The PL310 has | ||
111 | * 8 sets of registers, one per possible CPU. | ||
112 | */ | ||
113 | for (i = 0; i < 8; i++) { | ||
114 | writel_relaxed(0x0, l2x0_base + L2X0_LOCKDOWN_WAY_D_BASE + | ||
115 | i * L2X0_LOCKDOWN_STRIDE); | ||
116 | writel_relaxed(0x0, l2x0_base + L2X0_LOCKDOWN_WAY_I_BASE + | ||
117 | i * L2X0_LOCKDOWN_STRIDE); | ||
118 | } | ||
119 | return 0; | ||
120 | } | ||
121 | |||
122 | static int __init ux500_l2x0_init(void) | ||
103 | { | 123 | { |
104 | if (cpu_is_u5500()) | 124 | if (cpu_is_u5500()) |
105 | l2x0_base = __io_address(U5500_L2CC_BASE); | 125 | l2x0_base = __io_address(U5500_L2CC_BASE); |
@@ -108,6 +128,9 @@ static int ux500_l2x0_init(void) | |||
108 | else | 128 | else |
109 | ux500_unknown_soc(); | 129 | ux500_unknown_soc(); |
110 | 130 | ||
131 | /* Unlock before init */ | ||
132 | ux500_l2x0_unlock(); | ||
133 | |||
111 | /* 64KB way size, 8 way associativity, force WA */ | 134 | /* 64KB way size, 8 way associativity, force WA */ |
112 | l2x0_init(l2x0_base, 0x3e060000, 0xc0000fff); | 135 | l2x0_init(l2x0_base, 0x3e060000, 0xc0000fff); |
113 | 136 | ||
diff --git a/arch/arm/plat-mxc/include/mach/iomux-v3.h b/arch/arm/plat-mxc/include/mach/iomux-v3.h index ebbce33097a7..45099566fecc 100644 --- a/arch/arm/plat-mxc/include/mach/iomux-v3.h +++ b/arch/arm/plat-mxc/include/mach/iomux-v3.h | |||
@@ -89,11 +89,11 @@ typedef u64 iomux_v3_cfg_t; | |||
89 | #define PAD_CTL_HYS (1 << 8) | 89 | #define PAD_CTL_HYS (1 << 8) |
90 | 90 | ||
91 | #define PAD_CTL_PKE (1 << 7) | 91 | #define PAD_CTL_PKE (1 << 7) |
92 | #define PAD_CTL_PUE (1 << 6) | 92 | #define PAD_CTL_PUE (1 << 6 | PAD_CTL_PKE) |
93 | #define PAD_CTL_PUS_100K_DOWN (0 << 4) | 93 | #define PAD_CTL_PUS_100K_DOWN (0 << 4 | PAD_CTL_PUE) |
94 | #define PAD_CTL_PUS_47K_UP (1 << 4) | 94 | #define PAD_CTL_PUS_47K_UP (1 << 4 | PAD_CTL_PUE) |
95 | #define PAD_CTL_PUS_100K_UP (2 << 4) | 95 | #define PAD_CTL_PUS_100K_UP (2 << 4 | PAD_CTL_PUE) |
96 | #define PAD_CTL_PUS_22K_UP (3 << 4) | 96 | #define PAD_CTL_PUS_22K_UP (3 << 4 | PAD_CTL_PUE) |
97 | 97 | ||
98 | #define PAD_CTL_ODE (1 << 3) | 98 | #define PAD_CTL_ODE (1 << 3) |
99 | 99 | ||
diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig index 2d6423c2d193..166d149d931e 100644 --- a/drivers/misc/Kconfig +++ b/drivers/misc/Kconfig | |||
@@ -63,7 +63,7 @@ config AD525X_DPOT_SPI | |||
63 | 63 | ||
64 | config ATMEL_PWM | 64 | config ATMEL_PWM |
65 | tristate "Atmel AT32/AT91 PWM support" | 65 | tristate "Atmel AT32/AT91 PWM support" |
66 | depends on AVR32 || ARCH_AT91SAM9263 || ARCH_AT91SAM9RL || ARCH_AT91CAP9 | 66 | depends on HAVE_CLK |
67 | help | 67 | help |
68 | This option enables device driver support for the PWM channels | 68 | This option enables device driver support for the PWM channels |
69 | on certain Atmel processors. Pulse Width Modulation is used for | 69 | on certain Atmel processors. Pulse Width Modulation is used for |