diff options
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/configs/ams_delta_defconfig | 24 | ||||
-rw-r--r-- | arch/arm/configs/omap3_pandora_defconfig | 49 | ||||
-rw-r--r-- | arch/arm/configs/omap_3430sdp_defconfig | 9 | ||||
-rw-r--r-- | arch/arm/mach-omap2/board-omap3beagle.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-omap2/board-omap3pandora.c | 78 | ||||
-rw-r--r-- | arch/arm/mach-omap2/gpmc.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-omap2/mailbox.c | 2 | ||||
-rw-r--r-- | arch/arm/plat-omap/cpu-omap.c | 2 | ||||
-rw-r--r-- | arch/arm/plat-omap/dma.c | 14 |
9 files changed, 126 insertions, 56 deletions
diff --git a/arch/arm/configs/ams_delta_defconfig b/arch/arm/configs/ams_delta_defconfig index 764732529ea3..e8f7380b67d6 100644 --- a/arch/arm/configs/ams_delta_defconfig +++ b/arch/arm/configs/ams_delta_defconfig | |||
@@ -55,10 +55,10 @@ CONFIG_BLK_DEV_INITRD=y | |||
55 | CONFIG_INITRAMFS_SOURCE="" | 55 | CONFIG_INITRAMFS_SOURCE="" |
56 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y | 56 | CONFIG_CC_OPTIMIZE_FOR_SIZE=y |
57 | CONFIG_SYSCTL=y | 57 | CONFIG_SYSCTL=y |
58 | # CONFIG_EMBEDDED is not set | 58 | CONFIG_EMBEDDED=y |
59 | CONFIG_UID16=y | 59 | CONFIG_UID16=y |
60 | CONFIG_SYSCTL_SYSCALL=y | 60 | CONFIG_SYSCTL_SYSCALL=y |
61 | CONFIG_KALLSYMS=y | 61 | # CONFIG_KALLSYMS is not set |
62 | # CONFIG_KALLSYMS_ALL is not set | 62 | # CONFIG_KALLSYMS_ALL is not set |
63 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | 63 | # CONFIG_KALLSYMS_EXTRA_PASS is not set |
64 | CONFIG_HOTPLUG=y | 64 | CONFIG_HOTPLUG=y |
@@ -224,7 +224,7 @@ CONFIG_CPU_CP15_MMU=y | |||
224 | # | 224 | # |
225 | # Processor Features | 225 | # Processor Features |
226 | # | 226 | # |
227 | # CONFIG_ARM_THUMB is not set | 227 | CONFIG_ARM_THUMB=y |
228 | # CONFIG_CPU_ICACHE_DISABLE is not set | 228 | # CONFIG_CPU_ICACHE_DISABLE is not set |
229 | # CONFIG_CPU_DCACHE_DISABLE is not set | 229 | # CONFIG_CPU_DCACHE_DISABLE is not set |
230 | CONFIG_CPU_DCACHE_WRITETHROUGH=y | 230 | CONFIG_CPU_DCACHE_WRITETHROUGH=y |
@@ -248,7 +248,7 @@ CONFIG_CPU_DCACHE_WRITETHROUGH=y | |||
248 | # CONFIG_HIGH_RES_TIMERS is not set | 248 | # CONFIG_HIGH_RES_TIMERS is not set |
249 | CONFIG_PREEMPT=y | 249 | CONFIG_PREEMPT=y |
250 | CONFIG_HZ=100 | 250 | CONFIG_HZ=100 |
251 | # CONFIG_AEABI is not set | 251 | CONFIG_AEABI=y |
252 | # CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set | 252 | # CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set |
253 | CONFIG_SELECT_MEMORY_MODEL=y | 253 | CONFIG_SELECT_MEMORY_MODEL=y |
254 | CONFIG_FLATMEM_MANUAL=y | 254 | CONFIG_FLATMEM_MANUAL=y |
@@ -299,7 +299,9 @@ CONFIG_BINFMT_ELF=y | |||
299 | # | 299 | # |
300 | # Power management options | 300 | # Power management options |
301 | # | 301 | # |
302 | # CONFIG_PM is not set | 302 | CONFIG_PM=y |
303 | # CONFIG_SUSPEND is not set | ||
304 | CONFIG_PM_RUNTIME=y | ||
303 | 305 | ||
304 | # | 306 | # |
305 | # Networking | 307 | # Networking |
@@ -670,7 +672,7 @@ CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 | |||
670 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 | 672 | CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 |
671 | # CONFIG_INPUT_JOYDEV is not set | 673 | # CONFIG_INPUT_JOYDEV is not set |
672 | # CONFIG_INPUT_TSDEV is not set | 674 | # CONFIG_INPUT_TSDEV is not set |
673 | # CONFIG_INPUT_EVDEV is not set | 675 | CONFIG_INPUT_EVDEV=y |
674 | # CONFIG_INPUT_EVBUG is not set | 676 | # CONFIG_INPUT_EVBUG is not set |
675 | 677 | ||
676 | # | 678 | # |
@@ -784,6 +786,7 @@ CONFIG_I2C_OMAP=y | |||
784 | # | 786 | # |
785 | # CONFIG_SPI is not set | 787 | # CONFIG_SPI is not set |
786 | # CONFIG_SPI_MASTER is not set | 788 | # CONFIG_SPI_MASTER is not set |
789 | CONFIG_GPIO_SYSFS=y | ||
787 | 790 | ||
788 | # | 791 | # |
789 | # Dallas's 1-wire bus | 792 | # Dallas's 1-wire bus |
@@ -820,6 +823,7 @@ CONFIG_LEDS_AMS_DELTA=y | |||
820 | CONFIG_LEDS_TRIGGERS=y | 823 | CONFIG_LEDS_TRIGGERS=y |
821 | CONFIG_LEDS_TRIGGER_TIMER=y | 824 | CONFIG_LEDS_TRIGGER_TIMER=y |
822 | CONFIG_LEDS_TRIGGER_HEARTBEAT=y | 825 | CONFIG_LEDS_TRIGGER_HEARTBEAT=y |
826 | CONFIG_LEDS_TRIGGER_DEFAULT_ON=y | ||
823 | 827 | ||
824 | # | 828 | # |
825 | # Multimedia devices | 829 | # Multimedia devices |
@@ -896,7 +900,13 @@ CONFIG_LOGO_LINUX_CLUT224=y | |||
896 | # | 900 | # |
897 | # Sound | 901 | # Sound |
898 | # | 902 | # |
899 | # CONFIG_SOUND is not set | 903 | CONFIG_SOUND=y |
904 | CONFIG_SND=y | ||
905 | CONFIG_SND_MIXER_OSS=y | ||
906 | CONFIG_SND_PCM_OSS=y | ||
907 | CONFIG_SND_SOC=y | ||
908 | CONFIG_SND_OMAP_SOC=y | ||
909 | CONFIG_SND_OMAP_SOC_AMS_DELTA=y | ||
900 | 910 | ||
901 | # | 911 | # |
902 | # HID Devices | 912 | # HID Devices |
diff --git a/arch/arm/configs/omap3_pandora_defconfig b/arch/arm/configs/omap3_pandora_defconfig index b54ad2e2da36..150deafb0a6a 100644 --- a/arch/arm/configs/omap3_pandora_defconfig +++ b/arch/arm/configs/omap3_pandora_defconfig | |||
@@ -611,7 +611,7 @@ CONFIG_INPUT_KEYBOARD=y | |||
611 | # CONFIG_KEYBOARD_XTKBD is not set | 611 | # CONFIG_KEYBOARD_XTKBD is not set |
612 | # CONFIG_KEYBOARD_NEWTON is not set | 612 | # CONFIG_KEYBOARD_NEWTON is not set |
613 | # CONFIG_KEYBOARD_STOWAWAY is not set | 613 | # CONFIG_KEYBOARD_STOWAWAY is not set |
614 | # CONFIG_KEYBOARD_GPIO is not set | 614 | CONFIG_KEYBOARD_GPIO=y |
615 | CONFIG_INPUT_MOUSE=y | 615 | CONFIG_INPUT_MOUSE=y |
616 | # CONFIG_MOUSE_PS2 is not set | 616 | # CONFIG_MOUSE_PS2 is not set |
617 | # CONFIG_MOUSE_SERIAL is not set | 617 | # CONFIG_MOUSE_SERIAL is not set |
@@ -634,7 +634,8 @@ CONFIG_TOUCHSCREEN_ADS7846=y | |||
634 | # CONFIG_TOUCHSCREEN_TOUCHWIN is not set | 634 | # CONFIG_TOUCHSCREEN_TOUCHWIN is not set |
635 | # CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set | 635 | # CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set |
636 | # CONFIG_TOUCHSCREEN_TOUCHIT213 is not set | 636 | # CONFIG_TOUCHSCREEN_TOUCHIT213 is not set |
637 | # CONFIG_INPUT_MISC is not set | 637 | CONFIG_INPUT_MISC=y |
638 | CONFIG_INPUT_TWL4030_PWRBUTTON=y | ||
638 | 639 | ||
639 | # | 640 | # |
640 | # Hardware I/O ports | 641 | # Hardware I/O ports |
@@ -834,7 +835,29 @@ CONFIG_DAB=y | |||
834 | # | 835 | # |
835 | # CONFIG_VGA_CONSOLE is not set | 836 | # CONFIG_VGA_CONSOLE is not set |
836 | CONFIG_DUMMY_CONSOLE=y | 837 | CONFIG_DUMMY_CONSOLE=y |
837 | # CONFIG_SOUND is not set | 838 | CONFIG_SOUND=y |
839 | CONFIG_SOUND_OSS_CORE=y | ||
840 | CONFIG_SOUND_OSS_CORE_PRECLAIM=y | ||
841 | CONFIG_SND=y | ||
842 | CONFIG_SND_TIMER=y | ||
843 | CONFIG_SND_PCM=y | ||
844 | CONFIG_SND_JACK=y | ||
845 | CONFIG_SND_OSSEMUL=y | ||
846 | CONFIG_SND_MIXER_OSS=y | ||
847 | CONFIG_SND_PCM_OSS=y | ||
848 | CONFIG_SND_PCM_OSS_PLUGINS=y | ||
849 | CONFIG_SND_SUPPORT_OLD_API=y | ||
850 | CONFIG_SND_VERBOSE_PROCFS=y | ||
851 | CONFIG_SND_VERBOSE_PRINTK=y | ||
852 | CONFIG_SND_DRIVERS=y | ||
853 | CONFIG_SND_USB=y | ||
854 | CONFIG_SND_SOC=y | ||
855 | CONFIG_SND_OMAP_SOC=y | ||
856 | CONFIG_SND_OMAP_SOC_MCBSP=y | ||
857 | CONFIG_SND_OMAP_SOC_OMAP3_PANDORA=y | ||
858 | CONFIG_SND_SOC_I2C_AND_SPI=y | ||
859 | CONFIG_SND_SOC_TWL4030=y | ||
860 | |||
838 | CONFIG_HID_SUPPORT=y | 861 | CONFIG_HID_SUPPORT=y |
839 | CONFIG_HID=y | 862 | CONFIG_HID=y |
840 | # CONFIG_HID_DEBUG is not set | 863 | # CONFIG_HID_DEBUG is not set |
@@ -1020,7 +1043,13 @@ CONFIG_MMC_BLOCK_BOUNCE=y | |||
1020 | # CONFIG_MMC_SPI is not set | 1043 | # CONFIG_MMC_SPI is not set |
1021 | # CONFIG_MEMSTICK is not set | 1044 | # CONFIG_MEMSTICK is not set |
1022 | # CONFIG_ACCESSIBILITY is not set | 1045 | # CONFIG_ACCESSIBILITY is not set |
1023 | # CONFIG_NEW_LEDS is not set | 1046 | CONFIG_NEW_LEDS=y |
1047 | CONFIG_LEDS_CLASS=y | ||
1048 | CONFIG_LEDS_GPIO=y | ||
1049 | CONFIG_LEDS_GPIO_PLATFORM=y | ||
1050 | CONFIG_LEDS_TRIGGERS=y | ||
1051 | CONFIG_LEDS_TRIGGER_DEFAULT_ON=y | ||
1052 | |||
1024 | CONFIG_RTC_LIB=y | 1053 | CONFIG_RTC_LIB=y |
1025 | CONFIG_RTC_CLASS=y | 1054 | CONFIG_RTC_CLASS=y |
1026 | CONFIG_RTC_HCTOSYS=y | 1055 | CONFIG_RTC_HCTOSYS=y |
@@ -1084,9 +1113,12 @@ CONFIG_RTC_DRV_TWL4030=y | |||
1084 | # on-CPU RTC drivers | 1113 | # on-CPU RTC drivers |
1085 | # | 1114 | # |
1086 | # CONFIG_DMADEVICES is not set | 1115 | # CONFIG_DMADEVICES is not set |
1087 | # CONFIG_REGULATOR is not set | ||
1088 | # CONFIG_UIO is not set | 1116 | # CONFIG_UIO is not set |
1089 | 1117 | ||
1118 | CONFIG_REGULATOR=y | ||
1119 | CONFIG_REGULATOR_FIXED_VOLTAGE=y | ||
1120 | CONFIG_REGULATOR_TWL4030=y | ||
1121 | |||
1090 | # | 1122 | # |
1091 | # File systems | 1123 | # File systems |
1092 | # | 1124 | # |
@@ -1407,3 +1439,10 @@ CONFIG_PLIST=y | |||
1407 | CONFIG_HAS_IOMEM=y | 1439 | CONFIG_HAS_IOMEM=y |
1408 | CONFIG_HAS_IOPORT=y | 1440 | CONFIG_HAS_IOPORT=y |
1409 | CONFIG_HAS_DMA=y | 1441 | CONFIG_HAS_DMA=y |
1442 | |||
1443 | # added by hand for now | ||
1444 | CONFIG_KEYBOARD_TWL4030=y | ||
1445 | CONFIG_USB_OTG_UTILS=y | ||
1446 | CONFIG_TWL4030_USB=y | ||
1447 | CONFIG_MMC_OMAP_HS=y | ||
1448 | |||
diff --git a/arch/arm/configs/omap_3430sdp_defconfig b/arch/arm/configs/omap_3430sdp_defconfig index 8a4a7e2ba87b..5a305f015307 100644 --- a/arch/arm/configs/omap_3430sdp_defconfig +++ b/arch/arm/configs/omap_3430sdp_defconfig | |||
@@ -1703,7 +1703,14 @@ CONFIG_RTC_DRV_TWL4030=y | |||
1703 | # on-CPU RTC drivers | 1703 | # on-CPU RTC drivers |
1704 | # | 1704 | # |
1705 | # CONFIG_DMADEVICES is not set | 1705 | # CONFIG_DMADEVICES is not set |
1706 | # CONFIG_REGULATOR is not set | 1706 | CONFIG_REGULATOR=y |
1707 | # CONFIG_REGULATOR_DEBUG is not set | ||
1708 | # CONFIG_REGULATOR_FIXED_VOLTAGE is not set | ||
1709 | # CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set | ||
1710 | # CONFIG_REGULATOR_USERSPACE_CONSUMER is not set | ||
1711 | # CONFIG_REGULATOR_BQ24022 is not set | ||
1712 | # CONFIG_REGULATOR_MAX1586 is not set | ||
1713 | CONFIG_REGULATOR_TWL4030=y | ||
1707 | # CONFIG_UIO is not set | 1714 | # CONFIG_UIO is not set |
1708 | # CONFIG_STAGING is not set | 1715 | # CONFIG_STAGING is not set |
1709 | 1716 | ||
diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c index 70df6b4dbcd4..08b0816afa61 100644 --- a/arch/arm/mach-omap2/board-omap3beagle.c +++ b/arch/arm/mach-omap2/board-omap3beagle.c | |||
@@ -162,7 +162,7 @@ static int beagle_twl_gpio_setup(struct device *dev, | |||
162 | 162 | ||
163 | /* TWL4030_GPIO_MAX + 0 == ledA, EHCI nEN_USB_PWR (out, active low) */ | 163 | /* TWL4030_GPIO_MAX + 0 == ledA, EHCI nEN_USB_PWR (out, active low) */ |
164 | gpio_request(gpio + TWL4030_GPIO_MAX, "nEN_USB_PWR"); | 164 | gpio_request(gpio + TWL4030_GPIO_MAX, "nEN_USB_PWR"); |
165 | gpio_direction_output(gpio + TWL4030_GPIO_MAX, 1); | 165 | gpio_direction_output(gpio + TWL4030_GPIO_MAX, 0); |
166 | 166 | ||
167 | /* TWL4030_GPIO_MAX + 1 == ledB, PMU_STAT (out, active low LED) */ | 167 | /* TWL4030_GPIO_MAX + 1 == ledB, PMU_STAT (out, active low LED) */ |
168 | gpio_leds[2].gpio = gpio + TWL4030_GPIO_MAX + 1; | 168 | gpio_leds[2].gpio = gpio + TWL4030_GPIO_MAX + 1; |
diff --git a/arch/arm/mach-omap2/board-omap3pandora.c b/arch/arm/mach-omap2/board-omap3pandora.c index 5326e0d61597..7519edb69155 100644 --- a/arch/arm/mach-omap2/board-omap3pandora.c +++ b/arch/arm/mach-omap2/board-omap3pandora.c | |||
@@ -134,50 +134,50 @@ static void __init pandora_keys_gpio_init(void) | |||
134 | } | 134 | } |
135 | 135 | ||
136 | static int board_keymap[] = { | 136 | static int board_keymap[] = { |
137 | /* col, row, code */ | 137 | /* row, col, code */ |
138 | KEY(0, 0, KEY_9), | 138 | KEY(0, 0, KEY_9), |
139 | KEY(0, 1, KEY_0), | 139 | KEY(0, 1, KEY_8), |
140 | KEY(0, 2, KEY_BACKSPACE), | 140 | KEY(0, 2, KEY_I), |
141 | KEY(0, 3, KEY_O), | 141 | KEY(0, 3, KEY_J), |
142 | KEY(0, 4, KEY_P), | 142 | KEY(0, 4, KEY_N), |
143 | KEY(0, 5, KEY_K), | 143 | KEY(0, 5, KEY_M), |
144 | KEY(0, 6, KEY_L), | 144 | KEY(1, 0, KEY_0), |
145 | KEY(0, 7, KEY_ENTER), | ||
146 | KEY(1, 0, KEY_8), | ||
147 | KEY(1, 1, KEY_7), | 145 | KEY(1, 1, KEY_7), |
148 | KEY(1, 2, KEY_6), | 146 | KEY(1, 2, KEY_U), |
149 | KEY(1, 3, KEY_5), | 147 | KEY(1, 3, KEY_H), |
150 | KEY(1, 4, KEY_4), | 148 | KEY(1, 4, KEY_B), |
151 | KEY(1, 5, KEY_3), | 149 | KEY(1, 5, KEY_SPACE), |
152 | KEY(1, 6, KEY_2), | 150 | KEY(2, 0, KEY_BACKSPACE), |
153 | KEY(1, 7, KEY_1), | 151 | KEY(2, 1, KEY_6), |
154 | KEY(2, 0, KEY_I), | ||
155 | KEY(2, 1, KEY_U), | ||
156 | KEY(2, 2, KEY_Y), | 152 | KEY(2, 2, KEY_Y), |
157 | KEY(2, 3, KEY_T), | 153 | KEY(2, 3, KEY_G), |
158 | KEY(2, 4, KEY_R), | 154 | KEY(2, 4, KEY_V), |
159 | KEY(2, 5, KEY_E), | 155 | KEY(2, 5, KEY_FN), |
160 | KEY(2, 6, KEY_W), | 156 | KEY(3, 0, KEY_O), |
161 | KEY(2, 7, KEY_Q), | 157 | KEY(3, 1, KEY_5), |
162 | KEY(3, 0, KEY_J), | 158 | KEY(3, 2, KEY_T), |
163 | KEY(3, 1, KEY_H), | ||
164 | KEY(3, 2, KEY_G), | ||
165 | KEY(3, 3, KEY_F), | 159 | KEY(3, 3, KEY_F), |
166 | KEY(3, 4, KEY_D), | 160 | KEY(3, 4, KEY_C), |
167 | KEY(3, 5, KEY_S), | 161 | KEY(4, 0, KEY_P), |
168 | KEY(3, 6, KEY_A), | 162 | KEY(4, 1, KEY_4), |
169 | KEY(3, 7, KEY_LEFTSHIFT), | 163 | KEY(4, 2, KEY_R), |
170 | KEY(4, 0, KEY_N), | 164 | KEY(4, 3, KEY_D), |
171 | KEY(4, 1, KEY_B), | ||
172 | KEY(4, 2, KEY_V), | ||
173 | KEY(4, 3, KEY_C), | ||
174 | KEY(4, 4, KEY_X), | 165 | KEY(4, 4, KEY_X), |
175 | KEY(4, 5, KEY_Z), | 166 | KEY(5, 0, KEY_K), |
176 | KEY(4, 6, KEY_DOT), | 167 | KEY(5, 1, KEY_3), |
177 | KEY(4, 7, KEY_COMMA), | 168 | KEY(5, 2, KEY_E), |
178 | KEY(5, 0, KEY_M), | 169 | KEY(5, 3, KEY_S), |
179 | KEY(5, 1, KEY_SPACE), | 170 | KEY(5, 4, KEY_Z), |
180 | KEY(5, 2, KEY_FN), | 171 | KEY(6, 0, KEY_L), |
172 | KEY(6, 1, KEY_2), | ||
173 | KEY(6, 2, KEY_W), | ||
174 | KEY(6, 3, KEY_A), | ||
175 | KEY(6, 4, KEY_DOT), | ||
176 | KEY(7, 0, KEY_ENTER), | ||
177 | KEY(7, 1, KEY_1), | ||
178 | KEY(7, 2, KEY_Q), | ||
179 | KEY(7, 3, KEY_LEFTSHIFT), | ||
180 | KEY(7, 4, KEY_COMMA), | ||
181 | }; | 181 | }; |
182 | 182 | ||
183 | static struct matrix_keymap_data board_map_data = { | 183 | static struct matrix_keymap_data board_map_data = { |
diff --git a/arch/arm/mach-omap2/gpmc.c b/arch/arm/mach-omap2/gpmc.c index 15876828db23..f8657568b1ba 100644 --- a/arch/arm/mach-omap2/gpmc.c +++ b/arch/arm/mach-omap2/gpmc.c | |||
@@ -366,7 +366,7 @@ int gpmc_cs_request(int cs, unsigned long size, unsigned long *base) | |||
366 | if (r < 0) | 366 | if (r < 0) |
367 | goto out; | 367 | goto out; |
368 | 368 | ||
369 | gpmc_cs_enable_mem(cs, res->start, res->end - res->start + 1); | 369 | gpmc_cs_enable_mem(cs, res->start, resource_size(res)); |
370 | *base = res->start; | 370 | *base = res->start; |
371 | gpmc_cs_set_reserved(cs, 1); | 371 | gpmc_cs_set_reserved(cs, 1); |
372 | out: | 372 | out: |
diff --git a/arch/arm/mach-omap2/mailbox.c b/arch/arm/mach-omap2/mailbox.c index c035ad3426d0..ef57b38a56a4 100644 --- a/arch/arm/mach-omap2/mailbox.c +++ b/arch/arm/mach-omap2/mailbox.c | |||
@@ -300,7 +300,7 @@ static int __devinit omap2_mbox_probe(struct platform_device *pdev) | |||
300 | dev_err(&pdev->dev, "invalid mem resource\n"); | 300 | dev_err(&pdev->dev, "invalid mem resource\n"); |
301 | return -ENODEV; | 301 | return -ENODEV; |
302 | } | 302 | } |
303 | mbox_base = ioremap(res->start, res->end - res->start); | 303 | mbox_base = ioremap(res->start, resource_size(res)); |
304 | if (!mbox_base) | 304 | if (!mbox_base) |
305 | return -ENOMEM; | 305 | return -ENOMEM; |
306 | 306 | ||
diff --git a/arch/arm/plat-omap/cpu-omap.c b/arch/arm/plat-omap/cpu-omap.c index 1868c0d8f9b5..341235c278ac 100644 --- a/arch/arm/plat-omap/cpu-omap.c +++ b/arch/arm/plat-omap/cpu-omap.c | |||
@@ -127,7 +127,7 @@ static int __init omap_cpu_init(struct cpufreq_policy *policy) | |||
127 | } | 127 | } |
128 | 128 | ||
129 | /* FIXME: what's the actual transition time? */ | 129 | /* FIXME: what's the actual transition time? */ |
130 | policy->cpuinfo.transition_latency = 10 * 1000 * 1000; | 130 | policy->cpuinfo.transition_latency = 300 * 1000; |
131 | 131 | ||
132 | return 0; | 132 | return 0; |
133 | } | 133 | } |
diff --git a/arch/arm/plat-omap/dma.c b/arch/arm/plat-omap/dma.c index b53125f41293..68eaae324b6a 100644 --- a/arch/arm/plat-omap/dma.c +++ b/arch/arm/plat-omap/dma.c | |||
@@ -691,13 +691,16 @@ static inline void disable_lnk(int lch) | |||
691 | static inline void omap2_enable_irq_lch(int lch) | 691 | static inline void omap2_enable_irq_lch(int lch) |
692 | { | 692 | { |
693 | u32 val; | 693 | u32 val; |
694 | unsigned long flags; | ||
694 | 695 | ||
695 | if (!cpu_class_is_omap2()) | 696 | if (!cpu_class_is_omap2()) |
696 | return; | 697 | return; |
697 | 698 | ||
699 | spin_lock_irqsave(&dma_chan_lock, flags); | ||
698 | val = dma_read(IRQENABLE_L0); | 700 | val = dma_read(IRQENABLE_L0); |
699 | val |= 1 << lch; | 701 | val |= 1 << lch; |
700 | dma_write(val, IRQENABLE_L0); | 702 | dma_write(val, IRQENABLE_L0); |
703 | spin_unlock_irqrestore(&dma_chan_lock, flags); | ||
701 | } | 704 | } |
702 | 705 | ||
703 | int omap_request_dma(int dev_id, const char *dev_name, | 706 | int omap_request_dma(int dev_id, const char *dev_name, |
@@ -799,10 +802,13 @@ void omap_free_dma(int lch) | |||
799 | 802 | ||
800 | if (cpu_class_is_omap2()) { | 803 | if (cpu_class_is_omap2()) { |
801 | u32 val; | 804 | u32 val; |
805 | |||
806 | spin_lock_irqsave(&dma_chan_lock, flags); | ||
802 | /* Disable interrupts */ | 807 | /* Disable interrupts */ |
803 | val = dma_read(IRQENABLE_L0); | 808 | val = dma_read(IRQENABLE_L0); |
804 | val &= ~(1 << lch); | 809 | val &= ~(1 << lch); |
805 | dma_write(val, IRQENABLE_L0); | 810 | dma_write(val, IRQENABLE_L0); |
811 | spin_unlock_irqrestore(&dma_chan_lock, flags); | ||
806 | 812 | ||
807 | /* Clear the CSR register and IRQ status register */ | 813 | /* Clear the CSR register and IRQ status register */ |
808 | dma_write(OMAP2_DMA_CSR_CLEAR_MASK, CSR(lch)); | 814 | dma_write(OMAP2_DMA_CSR_CLEAR_MASK, CSR(lch)); |
@@ -1108,6 +1114,14 @@ int omap_dma_running(void) | |||
1108 | { | 1114 | { |
1109 | int lch; | 1115 | int lch; |
1110 | 1116 | ||
1117 | /* | ||
1118 | * On OMAP1510, internal LCD controller will start the transfer | ||
1119 | * when it gets enabled, so assume DMA running if LCD enabled. | ||
1120 | */ | ||
1121 | if (cpu_is_omap1510()) | ||
1122 | if (omap_readw(0xfffec000 + 0x00) & (1 << 0)) | ||
1123 | return 1; | ||
1124 | |||
1111 | /* Check if LCD DMA is running */ | 1125 | /* Check if LCD DMA is running */ |
1112 | if (cpu_is_omap16xx()) | 1126 | if (cpu_is_omap16xx()) |
1113 | if (omap_readw(OMAP1610_DMA_LCD_CCR) & OMAP_DMA_CCR_EN) | 1127 | if (omap_readw(OMAP1610_DMA_LCD_CCR) & OMAP_DMA_CCR_EN) |