diff options
| -rw-r--r-- | arch/arm/Makefile | 4 | ||||
| -rw-r--r-- | arch/arm/mach-omap2/Makefile | 163 | ||||
| -rw-r--r-- | arch/arm/mach-omap2/dma.c | 11 | ||||
| -rw-r--r-- | arch/arm/mach-omap2/include/mach/omap-wakeupgen.h | 8 | ||||
| -rw-r--r-- | arch/arm/mach-omap2/io.c | 30 | ||||
| -rw-r--r-- | arch/arm/mach-omap2/iomap.h | 28 | ||||
| -rw-r--r-- | arch/arm/plat-omap/dma.c | 4 | ||||
| -rw-r--r-- | arch/arm/plat-omap/include/plat/dma.h | 5 |
8 files changed, 93 insertions, 160 deletions
diff --git a/arch/arm/Makefile b/arch/arm/Makefile index 047a20780fc1..7a6bde07e787 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile | |||
| @@ -164,9 +164,7 @@ machine-$(CONFIG_ARCH_MXS) := mxs | |||
| 164 | machine-$(CONFIG_ARCH_NETX) := netx | 164 | machine-$(CONFIG_ARCH_NETX) := netx |
| 165 | machine-$(CONFIG_ARCH_NOMADIK) := nomadik | 165 | machine-$(CONFIG_ARCH_NOMADIK) := nomadik |
| 166 | machine-$(CONFIG_ARCH_OMAP1) := omap1 | 166 | machine-$(CONFIG_ARCH_OMAP1) := omap1 |
| 167 | machine-$(CONFIG_ARCH_OMAP2) := omap2 | 167 | machine-$(CONFIG_ARCH_OMAP2PLUS) := omap2 |
| 168 | machine-$(CONFIG_ARCH_OMAP3) := omap2 | ||
| 169 | machine-$(CONFIG_ARCH_OMAP4) := omap2 | ||
| 170 | machine-$(CONFIG_ARCH_ORION5X) := orion5x | 168 | machine-$(CONFIG_ARCH_ORION5X) := orion5x |
| 171 | machine-$(CONFIG_ARCH_PICOXCELL) := picoxcell | 169 | machine-$(CONFIG_ARCH_PICOXCELL) := picoxcell |
| 172 | machine-$(CONFIG_ARCH_PNX4008) := pnx4008 | 170 | machine-$(CONFIG_ARCH_PNX4008) := pnx4008 |
diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile index 49f92bc1c311..669e2b18e026 100644 --- a/arch/arm/mach-omap2/Makefile +++ b/arch/arm/mach-omap2/Makefile | |||
| @@ -24,10 +24,11 @@ endif | |||
| 24 | obj-$(CONFIG_TWL4030_CORE) += omap_twl.o | 24 | obj-$(CONFIG_TWL4030_CORE) += omap_twl.o |
| 25 | 25 | ||
| 26 | # SMP support ONLY available for OMAP4 | 26 | # SMP support ONLY available for OMAP4 |
| 27 | |||
| 27 | obj-$(CONFIG_SMP) += omap-smp.o omap-headsmp.o | 28 | obj-$(CONFIG_SMP) += omap-smp.o omap-headsmp.o |
| 28 | obj-$(CONFIG_HOTPLUG_CPU) += omap-hotplug.o | 29 | obj-$(CONFIG_HOTPLUG_CPU) += omap-hotplug.o |
| 29 | obj-$(CONFIG_ARCH_OMAP4) += omap4-common.o omap-wakeupgen.o \ | 30 | obj-$(CONFIG_ARCH_OMAP4) += omap4-common.o omap-wakeupgen.o |
| 30 | sleep44xx.o | 31 | obj-$(CONFIG_ARCH_OMAP4) += sleep44xx.o |
| 31 | 32 | ||
| 32 | plus_sec := $(call as-instr,.arch_extension sec,+sec) | 33 | plus_sec := $(call as-instr,.arch_extension sec,+sec) |
| 33 | AFLAGS_omap-headsmp.o :=-Wa,-march=armv7-a$(plus_sec) | 34 | AFLAGS_omap-headsmp.o :=-Wa,-march=armv7-a$(plus_sec) |
| @@ -64,10 +65,10 @@ endif | |||
| 64 | ifeq ($(CONFIG_PM),y) | 65 | ifeq ($(CONFIG_PM),y) |
| 65 | obj-$(CONFIG_ARCH_OMAP2) += pm24xx.o | 66 | obj-$(CONFIG_ARCH_OMAP2) += pm24xx.o |
| 66 | obj-$(CONFIG_ARCH_OMAP2) += sleep24xx.o | 67 | obj-$(CONFIG_ARCH_OMAP2) += sleep24xx.o |
| 67 | obj-$(CONFIG_ARCH_OMAP3) += pm34xx.o sleep34xx.o \ | 68 | obj-$(CONFIG_ARCH_OMAP3) += pm34xx.o sleep34xx.o |
| 68 | cpuidle34xx.o | 69 | obj-$(CONFIG_ARCH_OMAP3) += cpuidle34xx.o |
| 69 | obj-$(CONFIG_ARCH_OMAP4) += pm44xx.o omap-mpuss-lowpower.o \ | 70 | obj-$(CONFIG_ARCH_OMAP4) += pm44xx.o omap-mpuss-lowpower.o |
| 70 | cpuidle44xx.o | 71 | obj-$(CONFIG_ARCH_OMAP4) += cpuidle44xx.o |
| 71 | obj-$(CONFIG_PM_DEBUG) += pm-debug.o | 72 | obj-$(CONFIG_PM_DEBUG) += pm-debug.o |
| 72 | obj-$(CONFIG_OMAP_SMARTREFLEX) += sr_device.o smartreflex.o | 73 | obj-$(CONFIG_OMAP_SMARTREFLEX) += sr_device.o smartreflex.o |
| 73 | obj-$(CONFIG_OMAP_SMARTREFLEX_CLASS3) += smartreflex-class3.o | 74 | obj-$(CONFIG_OMAP_SMARTREFLEX_CLASS3) += smartreflex-class3.o |
| @@ -84,88 +85,84 @@ endif | |||
| 84 | # PRCM | 85 | # PRCM |
| 85 | obj-y += prm_common.o | 86 | obj-y += prm_common.o |
| 86 | obj-$(CONFIG_ARCH_OMAP2) += prcm.o cm2xxx_3xxx.o prm2xxx_3xxx.o | 87 | obj-$(CONFIG_ARCH_OMAP2) += prcm.o cm2xxx_3xxx.o prm2xxx_3xxx.o |
| 87 | obj-$(CONFIG_ARCH_OMAP3) += prcm.o cm2xxx_3xxx.o prm2xxx_3xxx.o \ | 88 | obj-$(CONFIG_ARCH_OMAP3) += prcm.o cm2xxx_3xxx.o prm2xxx_3xxx.o |
| 88 | vc3xxx_data.o vp3xxx_data.o | 89 | obj-$(CONFIG_ARCH_OMAP3) += vc3xxx_data.o vp3xxx_data.o |
| 89 | # XXX The presence of cm2xxx_3xxx.o on the line below is temporary and | 90 | obj-$(CONFIG_ARCH_OMAP4) += prcm.o cminst44xx.o cm44xx.o |
| 90 | # will be removed once the OMAP4 part of the codebase is converted to | 91 | obj-$(CONFIG_ARCH_OMAP4) += prcm_mpu44xx.o prminst44xx.o |
| 91 | # use OMAP4-specific PRCM functions. | 92 | obj-$(CONFIG_ARCH_OMAP4) += vc44xx_data.o vp44xx_data.o prm44xx.o |
| 92 | obj-$(CONFIG_ARCH_OMAP4) += prcm.o cm2xxx_3xxx.o cminst44xx.o \ | ||
| 93 | cm44xx.o prcm_mpu44xx.o \ | ||
| 94 | prminst44xx.o vc44xx_data.o \ | ||
| 95 | vp44xx_data.o prm44xx.o | ||
| 96 | 93 | ||
| 97 | # OMAP voltage domains | 94 | # OMAP voltage domains |
| 98 | voltagedomain-common := voltage.o vc.o vp.o | 95 | voltagedomain-common := voltage.o vc.o vp.o |
| 99 | obj-$(CONFIG_ARCH_OMAP2) += $(voltagedomain-common) \ | 96 | obj-$(CONFIG_ARCH_OMAP2) += $(voltagedomain-common) |
| 100 | voltagedomains2xxx_data.o | 97 | obj-$(CONFIG_ARCH_OMAP2) += voltagedomains2xxx_data.o |
| 101 | obj-$(CONFIG_ARCH_OMAP3) += $(voltagedomain-common) \ | 98 | obj-$(CONFIG_ARCH_OMAP3) += $(voltagedomain-common) |
| 102 | voltagedomains3xxx_data.o | 99 | obj-$(CONFIG_ARCH_OMAP3) += voltagedomains3xxx_data.o |
| 103 | obj-$(CONFIG_ARCH_OMAP4) += $(voltagedomain-common) \ | 100 | obj-$(CONFIG_ARCH_OMAP4) += $(voltagedomain-common) |
| 104 | voltagedomains44xx_data.o | 101 | obj-$(CONFIG_ARCH_OMAP4) += voltagedomains44xx_data.o |
| 105 | 102 | ||
| 106 | # OMAP powerdomain framework | 103 | # OMAP powerdomain framework |
| 107 | powerdomain-common += powerdomain.o powerdomain-common.o | 104 | powerdomain-common += powerdomain.o powerdomain-common.o |
| 108 | obj-$(CONFIG_ARCH_OMAP2) += $(powerdomain-common) \ | 105 | obj-$(CONFIG_ARCH_OMAP2) += $(powerdomain-common) |
| 109 | powerdomain2xxx_3xxx.o \ | 106 | obj-$(CONFIG_ARCH_OMAP2) += powerdomains2xxx_data.o |
| 110 | powerdomains2xxx_data.o \ | 107 | obj-$(CONFIG_ARCH_OMAP2) += powerdomain2xxx_3xxx.o |
| 111 | powerdomains2xxx_3xxx_data.o | 108 | obj-$(CONFIG_ARCH_OMAP2) += powerdomains2xxx_3xxx_data.o |
| 112 | obj-$(CONFIG_ARCH_OMAP3) += $(powerdomain-common) \ | 109 | obj-$(CONFIG_ARCH_OMAP3) += $(powerdomain-common) |
| 113 | powerdomain2xxx_3xxx.o \ | 110 | obj-$(CONFIG_ARCH_OMAP3) += powerdomain2xxx_3xxx.o |
| 114 | powerdomains3xxx_data.o \ | 111 | obj-$(CONFIG_ARCH_OMAP3) += powerdomains3xxx_data.o |
| 115 | powerdomains2xxx_3xxx_data.o | 112 | obj-$(CONFIG_ARCH_OMAP3) += powerdomains2xxx_3xxx_data.o |
| 116 | obj-$(CONFIG_ARCH_OMAP4) += $(powerdomain-common) \ | 113 | obj-$(CONFIG_ARCH_OMAP4) += $(powerdomain-common) |
| 117 | powerdomain44xx.o \ | 114 | obj-$(CONFIG_ARCH_OMAP4) += powerdomain44xx.o |
| 118 | powerdomains44xx_data.o | 115 | obj-$(CONFIG_ARCH_OMAP4) += powerdomains44xx_data.o |
| 119 | 116 | ||
| 120 | # PRCM clockdomain control | 117 | # PRCM clockdomain control |
| 121 | obj-$(CONFIG_ARCH_OMAP2) += clockdomain.o \ | 118 | obj-$(CONFIG_ARCH_OMAP2) += clockdomain.o |
| 122 | clockdomain2xxx_3xxx.o \ | 119 | obj-$(CONFIG_ARCH_OMAP2) += clockdomain2xxx_3xxx.o |
| 123 | clockdomains2xxx_3xxx_data.o | 120 | obj-$(CONFIG_ARCH_OMAP2) += clockdomains2xxx_3xxx_data.o |
| 124 | obj-$(CONFIG_SOC_OMAP2420) += clockdomains2420_data.o | 121 | obj-$(CONFIG_SOC_OMAP2420) += clockdomains2420_data.o |
| 125 | obj-$(CONFIG_SOC_OMAP2430) += clockdomains2430_data.o | 122 | obj-$(CONFIG_SOC_OMAP2430) += clockdomains2430_data.o |
| 126 | obj-$(CONFIG_ARCH_OMAP3) += clockdomain.o \ | 123 | obj-$(CONFIG_ARCH_OMAP3) += clockdomain.o |
| 127 | clockdomain2xxx_3xxx.o \ | 124 | obj-$(CONFIG_ARCH_OMAP3) += clockdomain2xxx_3xxx.o |
| 128 | clockdomains2xxx_3xxx_data.o \ | 125 | obj-$(CONFIG_ARCH_OMAP3) += clockdomains2xxx_3xxx_data.o |
| 129 | clockdomains3xxx_data.o | 126 | obj-$(CONFIG_ARCH_OMAP3) += clockdomains3xxx_data.o |
| 130 | obj-$(CONFIG_ARCH_OMAP4) += clockdomain.o \ | 127 | obj-$(CONFIG_ARCH_OMAP4) += clockdomain.o |
| 131 | clockdomain44xx.o \ | 128 | obj-$(CONFIG_ARCH_OMAP4) += clockdomain44xx.o |
| 132 | clockdomains44xx_data.o | 129 | obj-$(CONFIG_ARCH_OMAP4) += clockdomains44xx_data.o |
| 133 | 130 | ||
| 134 | # Clock framework | 131 | # Clock framework |
| 135 | obj-$(CONFIG_ARCH_OMAP2) += $(clock-common) clock2xxx.o \ | 132 | obj-$(CONFIG_ARCH_OMAP2) += $(clock-common) clock2xxx.o |
| 136 | clkt2xxx_sys.o \ | 133 | obj-$(CONFIG_ARCH_OMAP2) += clkt2xxx_sys.o |
| 137 | clkt2xxx_dpllcore.o \ | 134 | obj-$(CONFIG_ARCH_OMAP2) += clkt2xxx_dpllcore.o |
| 138 | clkt2xxx_virt_prcm_set.o \ | 135 | obj-$(CONFIG_ARCH_OMAP2) += clkt2xxx_virt_prcm_set.o |
| 139 | clkt2xxx_apll.o clkt2xxx_osc.o \ | 136 | obj-$(CONFIG_ARCH_OMAP2) += clkt2xxx_apll.o clkt2xxx_osc.o |
| 140 | clkt2xxx_dpll.o clkt_iclk.o | 137 | obj-$(CONFIG_ARCH_OMAP2) += clkt2xxx_dpll.o clkt_iclk.o |
| 141 | obj-$(CONFIG_SOC_OMAP2420) += clock2420_data.o | 138 | obj-$(CONFIG_SOC_OMAP2420) += clock2420_data.o |
| 142 | obj-$(CONFIG_SOC_OMAP2430) += clock2430.o clock2430_data.o | 139 | obj-$(CONFIG_SOC_OMAP2430) += clock2430.o clock2430_data.o |
| 143 | obj-$(CONFIG_ARCH_OMAP3) += $(clock-common) clock3xxx.o \ | 140 | obj-$(CONFIG_ARCH_OMAP3) += $(clock-common) clock3xxx.o |
| 144 | clock34xx.o clkt34xx_dpll3m2.o \ | 141 | obj-$(CONFIG_ARCH_OMAP3) += clock34xx.o clkt34xx_dpll3m2.o |
| 145 | clock3517.o clock36xx.o \ | 142 | obj-$(CONFIG_ARCH_OMAP3) += clock3517.o clock36xx.o |
| 146 | dpll3xxx.o clock3xxx_data.o \ | 143 | obj-$(CONFIG_ARCH_OMAP3) += dpll3xxx.o clock3xxx_data.o |
| 147 | clkt_iclk.o | 144 | obj-$(CONFIG_ARCH_OMAP3) += clkt_iclk.o |
| 148 | obj-$(CONFIG_ARCH_OMAP4) += $(clock-common) clock44xx_data.o \ | 145 | obj-$(CONFIG_ARCH_OMAP4) += $(clock-common) clock44xx_data.o |
| 149 | dpll3xxx.o dpll44xx.o | 146 | obj-$(CONFIG_ARCH_OMAP4) += dpll3xxx.o dpll44xx.o |
| 150 | 147 | ||
| 151 | # OMAP2 clock rate set data (old "OPP" data) | 148 | # OMAP2 clock rate set data (old "OPP" data) |
| 152 | obj-$(CONFIG_SOC_OMAP2420) += opp2420_data.o | 149 | obj-$(CONFIG_SOC_OMAP2420) += opp2420_data.o |
| 153 | obj-$(CONFIG_SOC_OMAP2430) += opp2430_data.o | 150 | obj-$(CONFIG_SOC_OMAP2430) += opp2430_data.o |
| 154 | 151 | ||
| 155 | # hwmod data | 152 | # hwmod data |
| 156 | obj-$(CONFIG_SOC_OMAP2420) += omap_hwmod_2xxx_ipblock_data.o \ | 153 | obj-$(CONFIG_SOC_OMAP2420) += omap_hwmod_2xxx_ipblock_data.o |
| 157 | omap_hwmod_2xxx_3xxx_ipblock_data.o \ | 154 | obj-$(CONFIG_SOC_OMAP2420) += omap_hwmod_2xxx_3xxx_ipblock_data.o |
| 158 | omap_hwmod_2xxx_interconnect_data.o \ | 155 | obj-$(CONFIG_SOC_OMAP2420) += omap_hwmod_2xxx_interconnect_data.o |
| 159 | omap_hwmod_2xxx_3xxx_interconnect_data.o \ | 156 | obj-$(CONFIG_SOC_OMAP2420) += omap_hwmod_2xxx_3xxx_interconnect_data.o |
| 160 | omap_hwmod_2420_data.o | 157 | obj-$(CONFIG_SOC_OMAP2420) += omap_hwmod_2420_data.o |
| 161 | obj-$(CONFIG_SOC_OMAP2430) += omap_hwmod_2xxx_ipblock_data.o \ | 158 | obj-$(CONFIG_SOC_OMAP2430) += omap_hwmod_2xxx_ipblock_data.o |
| 162 | omap_hwmod_2xxx_3xxx_ipblock_data.o \ | 159 | obj-$(CONFIG_SOC_OMAP2430) += omap_hwmod_2xxx_3xxx_ipblock_data.o |
| 163 | omap_hwmod_2xxx_interconnect_data.o \ | 160 | obj-$(CONFIG_SOC_OMAP2430) += omap_hwmod_2xxx_interconnect_data.o |
| 164 | omap_hwmod_2xxx_3xxx_interconnect_data.o \ | 161 | obj-$(CONFIG_SOC_OMAP2430) += omap_hwmod_2xxx_3xxx_interconnect_data.o |
| 165 | omap_hwmod_2430_data.o | 162 | obj-$(CONFIG_SOC_OMAP2430) += omap_hwmod_2430_data.o |
| 166 | obj-$(CONFIG_ARCH_OMAP3) += omap_hwmod_2xxx_3xxx_ipblock_data.o \ | 163 | obj-$(CONFIG_ARCH_OMAP3) += omap_hwmod_2xxx_3xxx_ipblock_data.o |
| 167 | omap_hwmod_2xxx_3xxx_interconnect_data.o \ | 164 | obj-$(CONFIG_ARCH_OMAP3) += omap_hwmod_2xxx_3xxx_interconnect_data.o |
| 168 | omap_hwmod_3xxx_data.o | 165 | obj-$(CONFIG_ARCH_OMAP3) += omap_hwmod_3xxx_data.o |
| 169 | obj-$(CONFIG_ARCH_OMAP4) += omap_hwmod_44xx_data.o | 166 | obj-$(CONFIG_ARCH_OMAP4) += omap_hwmod_44xx_data.o |
| 170 | 167 | ||
| 171 | # EMU peripherals | 168 | # EMU peripherals |
| @@ -203,23 +200,19 @@ obj-$(CONFIG_MACH_OMAP3EVM) += board-omap3evm.o | |||
| 203 | obj-$(CONFIG_MACH_OMAP3_PANDORA) += board-omap3pandora.o | 200 | obj-$(CONFIG_MACH_OMAP3_PANDORA) += board-omap3pandora.o |
| 204 | obj-$(CONFIG_MACH_OMAP_3430SDP) += board-3430sdp.o | 201 | obj-$(CONFIG_MACH_OMAP_3430SDP) += board-3430sdp.o |
| 205 | obj-$(CONFIG_MACH_NOKIA_N8X0) += board-n8x0.o | 202 | obj-$(CONFIG_MACH_NOKIA_N8X0) += board-n8x0.o |
| 206 | obj-$(CONFIG_MACH_NOKIA_RM680) += board-rm680.o \ | 203 | obj-$(CONFIG_MACH_NOKIA_RM680) += board-rm680.o sdram-nokia.o |
| 207 | sdram-nokia.o | 204 | obj-$(CONFIG_MACH_NOKIA_RX51) += board-rx51.o sdram-nokia.o |
| 208 | obj-$(CONFIG_MACH_NOKIA_RX51) += board-rx51.o \ | 205 | obj-$(CONFIG_MACH_NOKIA_RX51) += board-rx51-peripherals.o |
| 209 | sdram-nokia.o \ | 206 | obj-$(CONFIG_MACH_NOKIA_RX51) += board-rx51-video.o |
| 210 | board-rx51-peripherals.o \ | 207 | obj-$(CONFIG_MACH_OMAP_ZOOM2) += board-zoom.o board-zoom-peripherals.o |
| 211 | board-rx51-video.o | 208 | obj-$(CONFIG_MACH_OMAP_ZOOM2) += board-zoom-display.o |
| 212 | obj-$(CONFIG_MACH_OMAP_ZOOM2) += board-zoom.o \ | 209 | obj-$(CONFIG_MACH_OMAP_ZOOM2) += board-zoom-debugboard.o |
| 213 | board-zoom-peripherals.o \ | 210 | obj-$(CONFIG_MACH_OMAP_ZOOM3) += board-zoom.o board-zoom-peripherals.o |
| 214 | board-zoom-display.o \ | 211 | obj-$(CONFIG_MACH_OMAP_ZOOM3) += board-zoom-display.o |
| 215 | board-zoom-debugboard.o | 212 | obj-$(CONFIG_MACH_OMAP_ZOOM3) += board-zoom-debugboard.o |
| 216 | obj-$(CONFIG_MACH_OMAP_ZOOM3) += board-zoom.o \ | 213 | obj-$(CONFIG_MACH_OMAP_3630SDP) += board-3630sdp.o |
| 217 | board-zoom-peripherals.o \ | 214 | obj-$(CONFIG_MACH_OMAP_3630SDP) += board-zoom-peripherals.o |
| 218 | board-zoom-display.o \ | 215 | obj-$(CONFIG_MACH_OMAP_3630SDP) += board-zoom-display.o |
| 219 | board-zoom-debugboard.o | ||
| 220 | obj-$(CONFIG_MACH_OMAP_3630SDP) += board-3630sdp.o \ | ||
| 221 | board-zoom-peripherals.o \ | ||
| 222 | board-zoom-display.o | ||
| 223 | obj-$(CONFIG_MACH_CM_T35) += board-cm-t35.o | 216 | obj-$(CONFIG_MACH_CM_T35) += board-cm-t35.o |
| 224 | obj-$(CONFIG_MACH_CM_T3517) += board-cm-t3517.o | 217 | obj-$(CONFIG_MACH_CM_T3517) += board-cm-t3517.o |
| 225 | obj-$(CONFIG_MACH_IGEP0020) += board-igep0020.o | 218 | obj-$(CONFIG_MACH_IGEP0020) += board-igep0020.o |
diff --git a/arch/arm/mach-omap2/dma.c b/arch/arm/mach-omap2/dma.c index b19d8496c16e..ff75abe60af2 100644 --- a/arch/arm/mach-omap2/dma.c +++ b/arch/arm/mach-omap2/dma.c | |||
| @@ -227,10 +227,6 @@ static int __init omap2_system_dma_init_dev(struct omap_hwmod *oh, void *unused) | |||
| 227 | 227 | ||
| 228 | dma_stride = OMAP2_DMA_STRIDE; | 228 | dma_stride = OMAP2_DMA_STRIDE; |
| 229 | dma_common_ch_start = CSDP; | 229 | dma_common_ch_start = CSDP; |
| 230 | if (cpu_is_omap3630() || cpu_is_omap44xx()) | ||
| 231 | dma_common_ch_end = CCDN; | ||
| 232 | else | ||
| 233 | dma_common_ch_end = CCFN; | ||
| 234 | 230 | ||
| 235 | p = kzalloc(sizeof(struct omap_system_dma_plat_info), GFP_KERNEL); | 231 | p = kzalloc(sizeof(struct omap_system_dma_plat_info), GFP_KERNEL); |
| 236 | if (!p) { | 232 | if (!p) { |
| @@ -277,6 +273,13 @@ static int __init omap2_system_dma_init_dev(struct omap_hwmod *oh, void *unused) | |||
| 277 | dev_err(&pdev->dev, "%s: kzalloc fail\n", __func__); | 273 | dev_err(&pdev->dev, "%s: kzalloc fail\n", __func__); |
| 278 | return -ENOMEM; | 274 | return -ENOMEM; |
| 279 | } | 275 | } |
| 276 | |||
| 277 | /* Check the capabilities register for descriptor loading feature */ | ||
| 278 | if (dma_read(CAPS_0, 0) & DMA_HAS_DESCRIPTOR_CAPS) | ||
| 279 | dma_common_ch_end = CCDN; | ||
| 280 | else | ||
| 281 | dma_common_ch_end = CCFN; | ||
| 282 | |||
| 280 | return 0; | 283 | return 0; |
| 281 | } | 284 | } |
| 282 | 285 | ||
diff --git a/arch/arm/mach-omap2/include/mach/omap-wakeupgen.h b/arch/arm/mach-omap2/include/mach/omap-wakeupgen.h index d79321b0f2a2..548de90b58c2 100644 --- a/arch/arm/mach-omap2/include/mach/omap-wakeupgen.h +++ b/arch/arm/mach-omap2/include/mach/omap-wakeupgen.h | |||
| @@ -16,18 +16,10 @@ | |||
| 16 | #define OMAP_WKG_ENB_B_0 0x14 | 16 | #define OMAP_WKG_ENB_B_0 0x14 |
| 17 | #define OMAP_WKG_ENB_C_0 0x18 | 17 | #define OMAP_WKG_ENB_C_0 0x18 |
| 18 | #define OMAP_WKG_ENB_D_0 0x1c | 18 | #define OMAP_WKG_ENB_D_0 0x1c |
| 19 | #define OMAP_WKG_ENB_SECURE_A_0 0x20 | ||
| 20 | #define OMAP_WKG_ENB_SECURE_B_0 0x24 | ||
| 21 | #define OMAP_WKG_ENB_SECURE_C_0 0x28 | ||
| 22 | #define OMAP_WKG_ENB_SECURE_D_0 0x2c | ||
| 23 | #define OMAP_WKG_ENB_A_1 0x410 | 19 | #define OMAP_WKG_ENB_A_1 0x410 |
| 24 | #define OMAP_WKG_ENB_B_1 0x414 | 20 | #define OMAP_WKG_ENB_B_1 0x414 |
| 25 | #define OMAP_WKG_ENB_C_1 0x418 | 21 | #define OMAP_WKG_ENB_C_1 0x418 |
| 26 | #define OMAP_WKG_ENB_D_1 0x41c | 22 | #define OMAP_WKG_ENB_D_1 0x41c |
| 27 | #define OMAP_WKG_ENB_SECURE_A_1 0x420 | ||
| 28 | #define OMAP_WKG_ENB_SECURE_B_1 0x424 | ||
| 29 | #define OMAP_WKG_ENB_SECURE_C_1 0x428 | ||
| 30 | #define OMAP_WKG_ENB_SECURE_D_1 0x42c | ||
| 31 | #define OMAP_AUX_CORE_BOOT_0 0x800 | 23 | #define OMAP_AUX_CORE_BOOT_0 0x800 |
| 32 | #define OMAP_AUX_CORE_BOOT_1 0x804 | 24 | #define OMAP_AUX_CORE_BOOT_1 0x804 |
| 33 | #define OMAP_PTMSYNCREQ_MASK 0xc00 | 25 | #define OMAP_PTMSYNCREQ_MASK 0xc00 |
diff --git a/arch/arm/mach-omap2/io.c b/arch/arm/mach-omap2/io.c index 065bd768987c..595a5ddcad4b 100644 --- a/arch/arm/mach-omap2/io.c +++ b/arch/arm/mach-omap2/io.c | |||
| @@ -215,41 +215,11 @@ static struct map_desc omap44xx_io_desc[] __initdata = { | |||
| 215 | .type = MT_DEVICE, | 215 | .type = MT_DEVICE, |
| 216 | }, | 216 | }, |
| 217 | { | 217 | { |
| 218 | .virtual = OMAP44XX_GPMC_VIRT, | ||
| 219 | .pfn = __phys_to_pfn(OMAP44XX_GPMC_PHYS), | ||
| 220 | .length = OMAP44XX_GPMC_SIZE, | ||
| 221 | .type = MT_DEVICE, | ||
| 222 | }, | ||
| 223 | { | ||
| 224 | .virtual = OMAP44XX_EMIF1_VIRT, | ||
| 225 | .pfn = __phys_to_pfn(OMAP44XX_EMIF1_PHYS), | ||
| 226 | .length = OMAP44XX_EMIF1_SIZE, | ||
| 227 | .type = MT_DEVICE, | ||
| 228 | }, | ||
| 229 | { | ||
| 230 | .virtual = OMAP44XX_EMIF2_VIRT, | ||
| 231 | .pfn = __phys_to_pfn(OMAP44XX_EMIF2_PHYS), | ||
| 232 | .length = OMAP44XX_EMIF2_SIZE, | ||
| 233 | .type = MT_DEVICE, | ||
| 234 | }, | ||
| 235 | { | ||
| 236 | .virtual = OMAP44XX_DMM_VIRT, | ||
| 237 | .pfn = __phys_to_pfn(OMAP44XX_DMM_PHYS), | ||
| 238 | .length = OMAP44XX_DMM_SIZE, | ||
| 239 | .type = MT_DEVICE, | ||
| 240 | }, | ||
| 241 | { | ||
| 242 | .virtual = L4_PER_44XX_VIRT, | 218 | .virtual = L4_PER_44XX_VIRT, |
| 243 | .pfn = __phys_to_pfn(L4_PER_44XX_PHYS), | 219 | .pfn = __phys_to_pfn(L4_PER_44XX_PHYS), |
| 244 | .length = L4_PER_44XX_SIZE, | 220 | .length = L4_PER_44XX_SIZE, |
| 245 | .type = MT_DEVICE, | 221 | .type = MT_DEVICE, |
| 246 | }, | 222 | }, |
| 247 | { | ||
| 248 | .virtual = L4_EMU_44XX_VIRT, | ||
| 249 | .pfn = __phys_to_pfn(L4_EMU_44XX_PHYS), | ||
| 250 | .length = L4_EMU_44XX_SIZE, | ||
| 251 | .type = MT_DEVICE, | ||
| 252 | }, | ||
| 253 | #ifdef CONFIG_OMAP4_ERRATA_I688 | 223 | #ifdef CONFIG_OMAP4_ERRATA_I688 |
| 254 | { | 224 | { |
| 255 | .virtual = OMAP4_SRAM_VA, | 225 | .virtual = OMAP4_SRAM_VA, |
diff --git a/arch/arm/mach-omap2/iomap.h b/arch/arm/mach-omap2/iomap.h index 0812b154f5b5..80b88921faba 100644 --- a/arch/arm/mach-omap2/iomap.h +++ b/arch/arm/mach-omap2/iomap.h | |||
| @@ -37,9 +37,6 @@ | |||
| 37 | #define OMAP4_L3_PER_IO_OFFSET 0xb1100000 | 37 | #define OMAP4_L3_PER_IO_OFFSET 0xb1100000 |
| 38 | #define OMAP4_L3_PER_IO_ADDRESS(pa) IOMEM((pa) + OMAP4_L3_PER_IO_OFFSET) | 38 | #define OMAP4_L3_PER_IO_ADDRESS(pa) IOMEM((pa) + OMAP4_L3_PER_IO_OFFSET) |
| 39 | 39 | ||
| 40 | #define OMAP4_GPMC_IO_OFFSET 0xa9000000 | ||
| 41 | #define OMAP4_GPMC_IO_ADDRESS(pa) IOMEM((pa) + OMAP4_GPMC_IO_OFFSET) | ||
| 42 | |||
| 43 | #define OMAP2_EMU_IO_OFFSET 0xaa800000 /* Emulation */ | 40 | #define OMAP2_EMU_IO_OFFSET 0xaa800000 /* Emulation */ |
| 44 | #define OMAP2_EMU_IO_ADDRESS(pa) IOMEM((pa) + OMAP2_EMU_IO_OFFSET) | 41 | #define OMAP2_EMU_IO_ADDRESS(pa) IOMEM((pa) + OMAP2_EMU_IO_OFFSET) |
| 45 | 42 | ||
| @@ -170,28 +167,3 @@ | |||
| 170 | #define L4_ABE_44XX_VIRT (L4_ABE_44XX_PHYS + OMAP2_L4_IO_OFFSET) | 167 | #define L4_ABE_44XX_VIRT (L4_ABE_44XX_PHYS + OMAP2_L4_IO_OFFSET) |
| 171 | #define L4_ABE_44XX_SIZE SZ_1M | 168 | #define L4_ABE_44XX_SIZE SZ_1M |
| 172 | 169 | ||
| 173 | #define L4_EMU_44XX_PHYS L4_EMU_44XX_BASE | ||
| 174 | /* 0x54000000 --> 0xfe800000 */ | ||
| 175 | #define L4_EMU_44XX_VIRT (L4_EMU_44XX_PHYS + OMAP2_EMU_IO_OFFSET) | ||
| 176 | #define L4_EMU_44XX_SIZE SZ_8M | ||
| 177 | |||
| 178 | #define OMAP44XX_GPMC_PHYS OMAP44XX_GPMC_BASE | ||
| 179 | /* 0x50000000 --> 0xf9000000 */ | ||
| 180 | #define OMAP44XX_GPMC_VIRT (OMAP44XX_GPMC_PHYS + OMAP4_GPMC_IO_OFFSET) | ||
| 181 | #define OMAP44XX_GPMC_SIZE SZ_1M | ||
| 182 | |||
| 183 | |||
| 184 | #define OMAP44XX_EMIF1_PHYS OMAP44XX_EMIF1_BASE | ||
| 185 | /* 0x4c000000 --> 0xfd100000 */ | ||
| 186 | #define OMAP44XX_EMIF1_VIRT (OMAP44XX_EMIF1_PHYS + OMAP4_L3_PER_IO_OFFSET) | ||
| 187 | #define OMAP44XX_EMIF1_SIZE SZ_1M | ||
| 188 | |||
| 189 | #define OMAP44XX_EMIF2_PHYS OMAP44XX_EMIF2_BASE | ||
| 190 | /* 0x4d000000 --> 0xfd200000 */ | ||
| 191 | #define OMAP44XX_EMIF2_SIZE SZ_1M | ||
| 192 | #define OMAP44XX_EMIF2_VIRT (OMAP44XX_EMIF1_VIRT + OMAP44XX_EMIF1_SIZE) | ||
| 193 | |||
| 194 | #define OMAP44XX_DMM_PHYS OMAP44XX_DMM_BASE | ||
| 195 | /* 0x4e000000 --> 0xfd300000 */ | ||
| 196 | #define OMAP44XX_DMM_SIZE SZ_1M | ||
| 197 | #define OMAP44XX_DMM_VIRT (OMAP44XX_EMIF2_VIRT + OMAP44XX_EMIF2_SIZE) | ||
diff --git a/arch/arm/plat-omap/dma.c b/arch/arm/plat-omap/dma.c index c58d896cd5c3..807ce4c45ef3 100644 --- a/arch/arm/plat-omap/dma.c +++ b/arch/arm/plat-omap/dma.c | |||
| @@ -843,7 +843,7 @@ omap_dma_set_prio_lch(int lch, unsigned char read_prio, | |||
| 843 | } | 843 | } |
| 844 | l = p->dma_read(CCR, lch); | 844 | l = p->dma_read(CCR, lch); |
| 845 | l &= ~((1 << 6) | (1 << 26)); | 845 | l &= ~((1 << 6) | (1 << 26)); |
| 846 | if (cpu_is_omap2430() || cpu_is_omap34xx() || cpu_is_omap44xx()) | 846 | if (cpu_class_is_omap2() && !cpu_is_omap242x()) |
| 847 | l |= ((read_prio & 0x1) << 6) | ((write_prio & 0x1) << 26); | 847 | l |= ((read_prio & 0x1) << 6) | ((write_prio & 0x1) << 26); |
| 848 | else | 848 | else |
| 849 | l |= ((read_prio & 0x1) << 6); | 849 | l |= ((read_prio & 0x1) << 6); |
| @@ -2071,7 +2071,7 @@ static int __devinit omap_system_dma_probe(struct platform_device *pdev) | |||
| 2071 | } | 2071 | } |
| 2072 | } | 2072 | } |
| 2073 | 2073 | ||
| 2074 | if (cpu_is_omap2430() || cpu_is_omap34xx() || cpu_is_omap44xx()) | 2074 | if (cpu_class_is_omap2() && !cpu_is_omap242x()) |
| 2075 | omap_dma_set_global_params(DMA_DEFAULT_ARB_RATE, | 2075 | omap_dma_set_global_params(DMA_DEFAULT_ARB_RATE, |
| 2076 | DMA_DEFAULT_FIFO_DEPTH, 0); | 2076 | DMA_DEFAULT_FIFO_DEPTH, 0); |
| 2077 | 2077 | ||
diff --git a/arch/arm/plat-omap/include/plat/dma.h b/arch/arm/plat-omap/include/plat/dma.h index dc562a5c0a8a..77422041e7be 100644 --- a/arch/arm/plat-omap/include/plat/dma.h +++ b/arch/arm/plat-omap/include/plat/dma.h | |||
| @@ -312,6 +312,11 @@ | |||
| 312 | #define CLEAR_CSR_ON_READ BIT(0xC) | 312 | #define CLEAR_CSR_ON_READ BIT(0xC) |
| 313 | #define IS_WORD_16 BIT(0xD) | 313 | #define IS_WORD_16 BIT(0xD) |
| 314 | 314 | ||
| 315 | /* Defines for DMA Capabilities */ | ||
| 316 | #define DMA_HAS_TRANSPARENT_CAPS (0x1 << 18) | ||
| 317 | #define DMA_HAS_CONSTANT_FILL_CAPS (0x1 << 19) | ||
| 318 | #define DMA_HAS_DESCRIPTOR_CAPS (0x3 << 20) | ||
| 319 | |||
| 315 | enum omap_reg_offsets { | 320 | enum omap_reg_offsets { |
| 316 | 321 | ||
| 317 | GCR, GSCR, GRST1, HW_ID, | 322 | GCR, GSCR, GRST1, HW_ID, |
