diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-08-08 14:14:29 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-08-08 14:14:29 -0400 |
commit | b3345d7c57d70e6cb6749af25cdbe80515582e99 (patch) | |
tree | 04cce706bc7e944ad1fb257108a8ae735948f97f /arch/arm/mach-omap2 | |
parent | 44c916d58b9ef1f2c4aec2def57fa8289c716a60 (diff) | |
parent | c2fff85e21818952aa0ee5778926beee6c03e579 (diff) |
Merge tag 'soc-for-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
Pull ARM SoC platform changes from Olof Johansson:
"This is the bulk of new SoC enablement and other platform changes for
3.17:
- Samsung S5PV210 has been converted to DT and multiplatform
- Clock drivers and bindings for some of the lower-end i.MX 1/2
platforms
- Kirkwood, one of the popular Marvell platforms, is folded into the
mvebu platform code, removing mach-kirkwood
- Hwmod data for TI AM43xx and DRA7 platforms
- More additions of Renesas shmobile platform support
- Removal of plat-samsung contents that can be removed with S5PV210
being multiplatform/DT-enabled and the other two old platforms
being removed
New platforms (most with only basic support right now):
- Hisilicon X5HD2 settop box chipset is introduced
- Mediatek MT6589 (mobile chipset) is introduced
- Broadcom BCM7xxx settop box chipset is introduced
+ as usual a lot other pieces all over the platform code"
* tag 'soc-for-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (240 commits)
ARM: hisi: remove smp from machine descriptor
power: reset: move hisilicon reboot code
ARM: dts: Add hix5hd2-dkb dts file.
ARM: debug: Rename Hi3716 to HIX5HD2
ARM: hisi: enable hix5hd2 SoC
ARM: hisi: add ARCH_HISI
MAINTAINERS: add entry for Broadcom ARM STB architecture
ARM: brcmstb: select GISB arbiter and interrupt drivers
ARM: brcmstb: add infrastructure for ARM-based Broadcom STB SoCs
ARM: configs: enable SMP in bcm_defconfig
ARM: add SMP support for Broadcom mobile SoCs
Documentation: arm: misc updates to Marvell EBU SoC status
Documentation: arm: add URLs to public datasheets for the Marvell Armada XP SoC
ARM: mvebu: fix build without platforms selected
ARM: mvebu: add cpuidle support for Armada 38x
ARM: mvebu: add cpuidle support for Armada 370
cpuidle: mvebu: add Armada 38x support
cpuidle: mvebu: add Armada 370 support
cpuidle: mvebu: rename the driver from armada-370-xp to mvebu-v7
ARM: mvebu: export the SCU address
...
Diffstat (limited to 'arch/arm/mach-omap2')
-rw-r--r-- | arch/arm/mach-omap2/Makefile | 1 | ||||
-rw-r--r-- | arch/arm/mach-omap2/cm2_7xx.h | 4 | ||||
-rw-r--r-- | arch/arm/mach-omap2/devices.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-omap2/dma.c | 3 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_2420_data.c | 14 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_2430_data.c | 13 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_2xxx_3xxx_interconnect_data.c | 9 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_2xxx_3xxx_ipblock_data.c | 40 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_33xx_43xx_interconnect_data.c | 10 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_43xx_data.c | 100 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 10 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 574 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_common_data.h | 1 | ||||
-rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_common_ipblock_data.c | 55 | ||||
-rw-r--r-- | arch/arm/mach-omap2/prcm43xx.h | 1 | ||||
-rw-r--r-- | arch/arm/mach-omap2/prm7xx.h | 4 |
16 files changed, 734 insertions, 107 deletions
diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile index fa7800015753..4481b6867902 100644 --- a/arch/arm/mach-omap2/Makefile +++ b/arch/arm/mach-omap2/Makefile | |||
@@ -202,6 +202,7 @@ obj-$(CONFIG_SOC_OMAP2420) += opp2420_data.o | |||
202 | obj-$(CONFIG_SOC_OMAP2430) += opp2430_data.o | 202 | obj-$(CONFIG_SOC_OMAP2430) += opp2430_data.o |
203 | 203 | ||
204 | # hwmod data | 204 | # hwmod data |
205 | obj-y += omap_hwmod_common_ipblock_data.o | ||
205 | obj-$(CONFIG_SOC_OMAP2420) += omap_hwmod_2xxx_ipblock_data.o | 206 | obj-$(CONFIG_SOC_OMAP2420) += omap_hwmod_2xxx_ipblock_data.o |
206 | obj-$(CONFIG_SOC_OMAP2420) += omap_hwmod_2xxx_3xxx_ipblock_data.o | 207 | obj-$(CONFIG_SOC_OMAP2420) += omap_hwmod_2xxx_3xxx_ipblock_data.o |
207 | obj-$(CONFIG_SOC_OMAP2420) += omap_hwmod_2xxx_interconnect_data.o | 208 | obj-$(CONFIG_SOC_OMAP2420) += omap_hwmod_2xxx_interconnect_data.o |
diff --git a/arch/arm/mach-omap2/cm2_7xx.h b/arch/arm/mach-omap2/cm2_7xx.h index 9ad7594e7622..e966e3a3c931 100644 --- a/arch/arm/mach-omap2/cm2_7xx.h +++ b/arch/arm/mach-omap2/cm2_7xx.h | |||
@@ -357,6 +357,10 @@ | |||
357 | #define DRA7XX_CM_L3INIT_SATA_CLKCTRL DRA7XX_CM_CORE_REGADDR(DRA7XX_CM_CORE_L3INIT_INST, 0x0088) | 357 | #define DRA7XX_CM_L3INIT_SATA_CLKCTRL DRA7XX_CM_CORE_REGADDR(DRA7XX_CM_CORE_L3INIT_INST, 0x0088) |
358 | #define DRA7XX_CM_PCIE_CLKSTCTRL_OFFSET 0x00a0 | 358 | #define DRA7XX_CM_PCIE_CLKSTCTRL_OFFSET 0x00a0 |
359 | #define DRA7XX_CM_PCIE_STATICDEP_OFFSET 0x00a4 | 359 | #define DRA7XX_CM_PCIE_STATICDEP_OFFSET 0x00a4 |
360 | #define DRA7XX_CM_L3INIT_PCIESS1_CLKCTRL_OFFSET 0x00b0 | ||
361 | #define DRA7XX_CM_L3INIT_PCIESS1_CLKCTRL DRA7XX_CM_CORE_REGADDR(DRA7XX_CM_CORE_L3INIT_INST, 0x00b0) | ||
362 | #define DRA7XX_CM_L3INIT_PCIESS2_CLKCTRL_OFFSET 0x00b8 | ||
363 | #define DRA7XX_CM_L3INIT_PCIESS2_CLKCTRL DRA7XX_CM_CORE_REGADDR(DRA7XX_CM_CORE_L3INIT_INST, 0x00b8) | ||
360 | #define DRA7XX_CM_GMAC_CLKSTCTRL_OFFSET 0x00c0 | 364 | #define DRA7XX_CM_GMAC_CLKSTCTRL_OFFSET 0x00c0 |
361 | #define DRA7XX_CM_GMAC_STATICDEP_OFFSET 0x00c4 | 365 | #define DRA7XX_CM_GMAC_STATICDEP_OFFSET 0x00c4 |
362 | #define DRA7XX_CM_GMAC_DYNAMICDEP_OFFSET 0x00c8 | 366 | #define DRA7XX_CM_GMAC_DYNAMICDEP_OFFSET 0x00c8 |
diff --git a/arch/arm/mach-omap2/devices.c b/arch/arm/mach-omap2/devices.c index b6f8f348296e..324f02bf8a51 100644 --- a/arch/arm/mach-omap2/devices.c +++ b/arch/arm/mach-omap2/devices.c | |||
@@ -432,9 +432,9 @@ static int __init omap2_init_devices(void) | |||
432 | */ | 432 | */ |
433 | omap_init_audio(); | 433 | omap_init_audio(); |
434 | omap_init_camera(); | 434 | omap_init_camera(); |
435 | omap_init_mbox(); | ||
436 | /* If dtb is there, the devices will be created dynamically */ | 435 | /* If dtb is there, the devices will be created dynamically */ |
437 | if (!of_have_populated_dt()) { | 436 | if (!of_have_populated_dt()) { |
437 | omap_init_mbox(); | ||
438 | omap_init_mcspi(); | 438 | omap_init_mcspi(); |
439 | omap_init_sham(); | 439 | omap_init_sham(); |
440 | omap_init_aes(); | 440 | omap_init_aes(); |
diff --git a/arch/arm/mach-omap2/dma.c b/arch/arm/mach-omap2/dma.c index a6d2cf1f8d02..e1a56d87599e 100644 --- a/arch/arm/mach-omap2/dma.c +++ b/arch/arm/mach-omap2/dma.c | |||
@@ -259,6 +259,9 @@ static int __init omap2_system_dma_init_dev(struct omap_hwmod *oh, void *unused) | |||
259 | if (cpu_is_omap34xx() && (omap_type() != OMAP2_DEVICE_TYPE_GP)) | 259 | if (cpu_is_omap34xx() && (omap_type() != OMAP2_DEVICE_TYPE_GP)) |
260 | d->dev_caps |= HS_CHANNELS_RESERVED; | 260 | d->dev_caps |= HS_CHANNELS_RESERVED; |
261 | 261 | ||
262 | if (platform_get_irq_byname(pdev, "0") < 0) | ||
263 | d->dev_caps |= DMA_ENGINE_HANDLE_IRQ; | ||
264 | |||
262 | /* Check the capabilities register for descriptor loading feature */ | 265 | /* Check the capabilities register for descriptor loading feature */ |
263 | if (dma_read(CAPS_0, 0) & DMA_HAS_DESCRIPTOR_CAPS) | 266 | if (dma_read(CAPS_0, 0) & DMA_HAS_DESCRIPTOR_CAPS) |
264 | dma_common_ch_end = CCDN; | 267 | dma_common_ch_end = CCDN; |
diff --git a/arch/arm/mach-omap2/omap_hwmod_2420_data.c b/arch/arm/mach-omap2/omap_hwmod_2420_data.c index 2f15979c2e9c..65b1647092bd 100644 --- a/arch/arm/mach-omap2/omap_hwmod_2420_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_2420_data.c | |||
@@ -16,7 +16,6 @@ | |||
16 | #include <linux/i2c-omap.h> | 16 | #include <linux/i2c-omap.h> |
17 | #include <linux/platform_data/spi-omap2-mcspi.h> | 17 | #include <linux/platform_data/spi-omap2-mcspi.h> |
18 | #include <linux/omap-dma.h> | 18 | #include <linux/omap-dma.h> |
19 | #include <linux/platform_data/mailbox-omap.h> | ||
20 | #include <plat/dmtimer.h> | 19 | #include <plat/dmtimer.h> |
21 | 20 | ||
22 | #include "omap_hwmod.h" | 21 | #include "omap_hwmod.h" |
@@ -163,18 +162,6 @@ static struct omap_hwmod omap2420_dma_system_hwmod = { | |||
163 | }; | 162 | }; |
164 | 163 | ||
165 | /* mailbox */ | 164 | /* mailbox */ |
166 | static struct omap_mbox_dev_info omap2420_mailbox_info[] = { | ||
167 | { .name = "dsp", .tx_id = 0, .rx_id = 1, .irq_id = 0, .usr_id = 0 }, | ||
168 | { .name = "iva", .tx_id = 2, .rx_id = 3, .irq_id = 1, .usr_id = 3 }, | ||
169 | }; | ||
170 | |||
171 | static struct omap_mbox_pdata omap2420_mailbox_attrs = { | ||
172 | .num_users = 4, | ||
173 | .num_fifos = 6, | ||
174 | .info_cnt = ARRAY_SIZE(omap2420_mailbox_info), | ||
175 | .info = omap2420_mailbox_info, | ||
176 | }; | ||
177 | |||
178 | static struct omap_hwmod omap2420_mailbox_hwmod = { | 165 | static struct omap_hwmod omap2420_mailbox_hwmod = { |
179 | .name = "mailbox", | 166 | .name = "mailbox", |
180 | .class = &omap2xxx_mailbox_hwmod_class, | 167 | .class = &omap2xxx_mailbox_hwmod_class, |
@@ -188,7 +175,6 @@ static struct omap_hwmod omap2420_mailbox_hwmod = { | |||
188 | .idlest_idle_bit = OMAP24XX_ST_MAILBOXES_SHIFT, | 175 | .idlest_idle_bit = OMAP24XX_ST_MAILBOXES_SHIFT, |
189 | }, | 176 | }, |
190 | }, | 177 | }, |
191 | .dev_attr = &omap2420_mailbox_attrs, | ||
192 | }; | 178 | }; |
193 | 179 | ||
194 | /* | 180 | /* |
diff --git a/arch/arm/mach-omap2/omap_hwmod_2430_data.c b/arch/arm/mach-omap2/omap_hwmod_2430_data.c index 6d1b60902179..c2555cb95e71 100644 --- a/arch/arm/mach-omap2/omap_hwmod_2430_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_2430_data.c | |||
@@ -17,7 +17,6 @@ | |||
17 | #include <linux/platform_data/asoc-ti-mcbsp.h> | 17 | #include <linux/platform_data/asoc-ti-mcbsp.h> |
18 | #include <linux/platform_data/spi-omap2-mcspi.h> | 18 | #include <linux/platform_data/spi-omap2-mcspi.h> |
19 | #include <linux/omap-dma.h> | 19 | #include <linux/omap-dma.h> |
20 | #include <linux/platform_data/mailbox-omap.h> | ||
21 | #include <plat/dmtimer.h> | 20 | #include <plat/dmtimer.h> |
22 | 21 | ||
23 | #include "omap_hwmod.h" | 22 | #include "omap_hwmod.h" |
@@ -161,17 +160,6 @@ static struct omap_hwmod omap2430_dma_system_hwmod = { | |||
161 | }; | 160 | }; |
162 | 161 | ||
163 | /* mailbox */ | 162 | /* mailbox */ |
164 | static struct omap_mbox_dev_info omap2430_mailbox_info[] = { | ||
165 | { .name = "dsp", .tx_id = 0, .rx_id = 1 }, | ||
166 | }; | ||
167 | |||
168 | static struct omap_mbox_pdata omap2430_mailbox_attrs = { | ||
169 | .num_users = 4, | ||
170 | .num_fifos = 6, | ||
171 | .info_cnt = ARRAY_SIZE(omap2430_mailbox_info), | ||
172 | .info = omap2430_mailbox_info, | ||
173 | }; | ||
174 | |||
175 | static struct omap_hwmod omap2430_mailbox_hwmod = { | 163 | static struct omap_hwmod omap2430_mailbox_hwmod = { |
176 | .name = "mailbox", | 164 | .name = "mailbox", |
177 | .class = &omap2xxx_mailbox_hwmod_class, | 165 | .class = &omap2xxx_mailbox_hwmod_class, |
@@ -185,7 +173,6 @@ static struct omap_hwmod omap2430_mailbox_hwmod = { | |||
185 | .idlest_idle_bit = OMAP24XX_ST_MAILBOXES_SHIFT, | 173 | .idlest_idle_bit = OMAP24XX_ST_MAILBOXES_SHIFT, |
186 | }, | 174 | }, |
187 | }, | 175 | }, |
188 | .dev_attr = &omap2430_mailbox_attrs, | ||
189 | }; | 176 | }; |
190 | 177 | ||
191 | /* mcspi3 */ | 178 | /* mcspi3 */ |
diff --git a/arch/arm/mach-omap2/omap_hwmod_2xxx_3xxx_interconnect_data.c b/arch/arm/mach-omap2/omap_hwmod_2xxx_3xxx_interconnect_data.c index 0413daba2dba..c1e98d589100 100644 --- a/arch/arm/mach-omap2/omap_hwmod_2xxx_3xxx_interconnect_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_2xxx_3xxx_interconnect_data.c | |||
@@ -152,15 +152,6 @@ struct omap_hwmod_addr_space omap2_dma_system_addrs[] = { | |||
152 | { } | 152 | { } |
153 | }; | 153 | }; |
154 | 154 | ||
155 | struct omap_hwmod_addr_space omap2_mailbox_addrs[] = { | ||
156 | { | ||
157 | .pa_start = 0x48094000, | ||
158 | .pa_end = 0x48094000 + SZ_512 - 1, | ||
159 | .flags = ADDR_TYPE_RT, | ||
160 | }, | ||
161 | { } | ||
162 | }; | ||
163 | |||
164 | struct omap_hwmod_addr_space omap2_mcbsp1_addrs[] = { | 155 | struct omap_hwmod_addr_space omap2_mcbsp1_addrs[] = { |
165 | { | 156 | { |
166 | .name = "mpu", | 157 | .name = "mpu", |
diff --git a/arch/arm/mach-omap2/omap_hwmod_2xxx_3xxx_ipblock_data.c b/arch/arm/mach-omap2/omap_hwmod_2xxx_3xxx_ipblock_data.c index 5da7a42a6d90..c6c6384de867 100644 --- a/arch/arm/mach-omap2/omap_hwmod_2xxx_3xxx_ipblock_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_2xxx_3xxx_ipblock_data.c | |||
@@ -37,46 +37,6 @@ struct omap_hwmod_class omap2_uart_class = { | |||
37 | }; | 37 | }; |
38 | 38 | ||
39 | /* | 39 | /* |
40 | * 'dss' class | ||
41 | * display sub-system | ||
42 | */ | ||
43 | |||
44 | static struct omap_hwmod_class_sysconfig omap2_dss_sysc = { | ||
45 | .rev_offs = 0x0000, | ||
46 | .sysc_offs = 0x0010, | ||
47 | .syss_offs = 0x0014, | ||
48 | .sysc_flags = (SYSC_HAS_SOFTRESET | SYSC_HAS_AUTOIDLE | | ||
49 | SYSS_HAS_RESET_STATUS), | ||
50 | .sysc_fields = &omap_hwmod_sysc_type1, | ||
51 | }; | ||
52 | |||
53 | struct omap_hwmod_class omap2_dss_hwmod_class = { | ||
54 | .name = "dss", | ||
55 | .sysc = &omap2_dss_sysc, | ||
56 | .reset = omap_dss_reset, | ||
57 | }; | ||
58 | |||
59 | /* | ||
60 | * 'rfbi' class | ||
61 | * remote frame buffer interface | ||
62 | */ | ||
63 | |||
64 | static struct omap_hwmod_class_sysconfig omap2_rfbi_sysc = { | ||
65 | .rev_offs = 0x0000, | ||
66 | .sysc_offs = 0x0010, | ||
67 | .syss_offs = 0x0014, | ||
68 | .sysc_flags = (SYSC_HAS_SIDLEMODE | SYSC_HAS_SOFTRESET | | ||
69 | SYSC_HAS_AUTOIDLE), | ||
70 | .idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART), | ||
71 | .sysc_fields = &omap_hwmod_sysc_type1, | ||
72 | }; | ||
73 | |||
74 | struct omap_hwmod_class omap2_rfbi_hwmod_class = { | ||
75 | .name = "rfbi", | ||
76 | .sysc = &omap2_rfbi_sysc, | ||
77 | }; | ||
78 | |||
79 | /* | ||
80 | * 'venc' class | 40 | * 'venc' class |
81 | * video encoder | 41 | * video encoder |
82 | */ | 42 | */ |
diff --git a/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_interconnect_data.c b/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_interconnect_data.c index e2db378b849e..8f5989d48a80 100644 --- a/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_interconnect_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_interconnect_data.c | |||
@@ -317,21 +317,11 @@ struct omap_hwmod_ocp_if am33xx_l4_per__i2c3 = { | |||
317 | .user = OCP_USER_MPU, | 317 | .user = OCP_USER_MPU, |
318 | }; | 318 | }; |
319 | 319 | ||
320 | static struct omap_hwmod_addr_space am33xx_mailbox_addrs[] = { | ||
321 | { | ||
322 | .pa_start = 0x480C8000, | ||
323 | .pa_end = 0x480C8000 + (SZ_4K - 1), | ||
324 | .flags = ADDR_TYPE_RT | ||
325 | }, | ||
326 | { } | ||
327 | }; | ||
328 | |||
329 | /* l4 ls -> mailbox */ | 320 | /* l4 ls -> mailbox */ |
330 | struct omap_hwmod_ocp_if am33xx_l4_per__mailbox = { | 321 | struct omap_hwmod_ocp_if am33xx_l4_per__mailbox = { |
331 | .master = &am33xx_l4_ls_hwmod, | 322 | .master = &am33xx_l4_ls_hwmod, |
332 | .slave = &am33xx_mailbox_hwmod, | 323 | .slave = &am33xx_mailbox_hwmod, |
333 | .clk = "l4ls_gclk", | 324 | .clk = "l4ls_gclk", |
334 | .addr = am33xx_mailbox_addrs, | ||
335 | .user = OCP_USER_MPU, | 325 | .user = OCP_USER_MPU, |
336 | }; | 326 | }; |
337 | 327 | ||
diff --git a/arch/arm/mach-omap2/omap_hwmod_43xx_data.c b/arch/arm/mach-omap2/omap_hwmod_43xx_data.c index 5c2cc8083fdd..fea01aa3ef42 100644 --- a/arch/arm/mach-omap2/omap_hwmod_43xx_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_43xx_data.c | |||
@@ -19,6 +19,8 @@ | |||
19 | #include "omap_hwmod.h" | 19 | #include "omap_hwmod.h" |
20 | #include "omap_hwmod_33xx_43xx_common_data.h" | 20 | #include "omap_hwmod_33xx_43xx_common_data.h" |
21 | #include "prcm43xx.h" | 21 | #include "prcm43xx.h" |
22 | #include "omap_hwmod_common_data.h" | ||
23 | |||
22 | 24 | ||
23 | /* IP blocks */ | 25 | /* IP blocks */ |
24 | static struct omap_hwmod am43xx_l4_hs_hwmod = { | 26 | static struct omap_hwmod am43xx_l4_hs_hwmod = { |
@@ -415,6 +417,72 @@ static struct omap_hwmod am43xx_qspi_hwmod = { | |||
415 | }, | 417 | }, |
416 | }; | 418 | }; |
417 | 419 | ||
420 | /* dss */ | ||
421 | |||
422 | static struct omap_hwmod am43xx_dss_core_hwmod = { | ||
423 | .name = "dss_core", | ||
424 | .class = &omap2_dss_hwmod_class, | ||
425 | .clkdm_name = "dss_clkdm", | ||
426 | .main_clk = "disp_clk", | ||
427 | .prcm = { | ||
428 | .omap4 = { | ||
429 | .clkctrl_offs = AM43XX_CM_PER_DSS_CLKCTRL_OFFSET, | ||
430 | .modulemode = MODULEMODE_SWCTRL, | ||
431 | }, | ||
432 | }, | ||
433 | }; | ||
434 | |||
435 | /* dispc */ | ||
436 | |||
437 | struct omap_dss_dispc_dev_attr am43xx_dss_dispc_dev_attr = { | ||
438 | .manager_count = 1, | ||
439 | .has_framedonetv_irq = 0 | ||
440 | }; | ||
441 | |||
442 | static struct omap_hwmod_class_sysconfig am43xx_dispc_sysc = { | ||
443 | .rev_offs = 0x0000, | ||
444 | .sysc_offs = 0x0010, | ||
445 | .syss_offs = 0x0014, | ||
446 | .sysc_flags = (SYSC_HAS_AUTOIDLE | SYSC_HAS_SOFTRESET | | ||
447 | SYSC_HAS_ENAWAKEUP | SYSC_HAS_SIDLEMODE | | ||
448 | SYSC_HAS_CLOCKACTIVITY | SYSC_HAS_MIDLEMODE), | ||
449 | .idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART | | ||
450 | MSTANDBY_FORCE | MSTANDBY_NO | MSTANDBY_SMART), | ||
451 | .sysc_fields = &omap_hwmod_sysc_type1, | ||
452 | }; | ||
453 | |||
454 | static struct omap_hwmod_class am43xx_dispc_hwmod_class = { | ||
455 | .name = "dispc", | ||
456 | .sysc = &am43xx_dispc_sysc, | ||
457 | }; | ||
458 | |||
459 | static struct omap_hwmod am43xx_dss_dispc_hwmod = { | ||
460 | .name = "dss_dispc", | ||
461 | .class = &am43xx_dispc_hwmod_class, | ||
462 | .clkdm_name = "dss_clkdm", | ||
463 | .main_clk = "disp_clk", | ||
464 | .prcm = { | ||
465 | .omap4 = { | ||
466 | .clkctrl_offs = AM43XX_CM_PER_DSS_CLKCTRL_OFFSET, | ||
467 | }, | ||
468 | }, | ||
469 | .dev_attr = &am43xx_dss_dispc_dev_attr, | ||
470 | }; | ||
471 | |||
472 | /* rfbi */ | ||
473 | |||
474 | static struct omap_hwmod am43xx_dss_rfbi_hwmod = { | ||
475 | .name = "dss_rfbi", | ||
476 | .class = &omap2_rfbi_hwmod_class, | ||
477 | .clkdm_name = "dss_clkdm", | ||
478 | .main_clk = "disp_clk", | ||
479 | .prcm = { | ||
480 | .omap4 = { | ||
481 | .clkctrl_offs = AM43XX_CM_PER_DSS_CLKCTRL_OFFSET, | ||
482 | }, | ||
483 | }, | ||
484 | }; | ||
485 | |||
418 | /* Interfaces */ | 486 | /* Interfaces */ |
419 | static struct omap_hwmod_ocp_if am43xx_l3_main__l4_hs = { | 487 | static struct omap_hwmod_ocp_if am43xx_l3_main__l4_hs = { |
420 | .master = &am33xx_l3_main_hwmod, | 488 | .master = &am33xx_l3_main_hwmod, |
@@ -654,6 +722,34 @@ static struct omap_hwmod_ocp_if am43xx_l3_s__qspi = { | |||
654 | .user = OCP_USER_MPU | OCP_USER_SDMA, | 722 | .user = OCP_USER_MPU | OCP_USER_SDMA, |
655 | }; | 723 | }; |
656 | 724 | ||
725 | static struct omap_hwmod_ocp_if am43xx_dss__l3_main = { | ||
726 | .master = &am43xx_dss_core_hwmod, | ||
727 | .slave = &am33xx_l3_main_hwmod, | ||
728 | .clk = "l3_gclk", | ||
729 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
730 | }; | ||
731 | |||
732 | static struct omap_hwmod_ocp_if am43xx_l4_ls__dss = { | ||
733 | .master = &am33xx_l4_ls_hwmod, | ||
734 | .slave = &am43xx_dss_core_hwmod, | ||
735 | .clk = "l4ls_gclk", | ||
736 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
737 | }; | ||
738 | |||
739 | static struct omap_hwmod_ocp_if am43xx_l4_ls__dss_dispc = { | ||
740 | .master = &am33xx_l4_ls_hwmod, | ||
741 | .slave = &am43xx_dss_dispc_hwmod, | ||
742 | .clk = "l4ls_gclk", | ||
743 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
744 | }; | ||
745 | |||
746 | static struct omap_hwmod_ocp_if am43xx_l4_ls__dss_rfbi = { | ||
747 | .master = &am33xx_l4_ls_hwmod, | ||
748 | .slave = &am43xx_dss_rfbi_hwmod, | ||
749 | .clk = "l4ls_gclk", | ||
750 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
751 | }; | ||
752 | |||
657 | static struct omap_hwmod_ocp_if *am43xx_hwmod_ocp_ifs[] __initdata = { | 753 | static struct omap_hwmod_ocp_if *am43xx_hwmod_ocp_ifs[] __initdata = { |
658 | &am33xx_l4_wkup__synctimer, | 754 | &am33xx_l4_wkup__synctimer, |
659 | &am43xx_l4_ls__timer8, | 755 | &am43xx_l4_ls__timer8, |
@@ -748,6 +844,10 @@ static struct omap_hwmod_ocp_if *am43xx_hwmod_ocp_ifs[] __initdata = { | |||
748 | &am43xx_l4_ls__ocp2scp1, | 844 | &am43xx_l4_ls__ocp2scp1, |
749 | &am43xx_l3_s__usbotgss0, | 845 | &am43xx_l3_s__usbotgss0, |
750 | &am43xx_l3_s__usbotgss1, | 846 | &am43xx_l3_s__usbotgss1, |
847 | &am43xx_dss__l3_main, | ||
848 | &am43xx_l4_ls__dss, | ||
849 | &am43xx_l4_ls__dss_dispc, | ||
850 | &am43xx_l4_ls__dss_rfbi, | ||
751 | NULL, | 851 | NULL, |
752 | }; | 852 | }; |
753 | 853 | ||
diff --git a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c index b4acc0a7576f..44e5634bba34 100644 --- a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c | |||
@@ -4138,21 +4138,11 @@ static struct omap_hwmod_ocp_if omap44xx_l4_wkup__kbd = { | |||
4138 | .user = OCP_USER_MPU | OCP_USER_SDMA, | 4138 | .user = OCP_USER_MPU | OCP_USER_SDMA, |
4139 | }; | 4139 | }; |
4140 | 4140 | ||
4141 | static struct omap_hwmod_addr_space omap44xx_mailbox_addrs[] = { | ||
4142 | { | ||
4143 | .pa_start = 0x4a0f4000, | ||
4144 | .pa_end = 0x4a0f41ff, | ||
4145 | .flags = ADDR_TYPE_RT | ||
4146 | }, | ||
4147 | { } | ||
4148 | }; | ||
4149 | |||
4150 | /* l4_cfg -> mailbox */ | 4141 | /* l4_cfg -> mailbox */ |
4151 | static struct omap_hwmod_ocp_if omap44xx_l4_cfg__mailbox = { | 4142 | static struct omap_hwmod_ocp_if omap44xx_l4_cfg__mailbox = { |
4152 | .master = &omap44xx_l4_cfg_hwmod, | 4143 | .master = &omap44xx_l4_cfg_hwmod, |
4153 | .slave = &omap44xx_mailbox_hwmod, | 4144 | .slave = &omap44xx_mailbox_hwmod, |
4154 | .clk = "l4_div_ck", | 4145 | .clk = "l4_div_ck", |
4155 | .addr = omap44xx_mailbox_addrs, | ||
4156 | .user = OCP_USER_MPU | OCP_USER_SDMA, | 4146 | .user = OCP_USER_MPU | OCP_USER_SDMA, |
4157 | }; | 4147 | }; |
4158 | 4148 | ||
diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c index 284324f2b98a..2757abf87fbc 100644 --- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c | |||
@@ -273,6 +273,56 @@ static struct omap_hwmod dra7xx_ctrl_module_wkup_hwmod = { | |||
273 | }; | 273 | }; |
274 | 274 | ||
275 | /* | 275 | /* |
276 | * 'gmac' class | ||
277 | * cpsw/gmac sub system | ||
278 | */ | ||
279 | static struct omap_hwmod_class_sysconfig dra7xx_gmac_sysc = { | ||
280 | .rev_offs = 0x0, | ||
281 | .sysc_offs = 0x8, | ||
282 | .syss_offs = 0x4, | ||
283 | .sysc_flags = (SYSC_HAS_SIDLEMODE | SYSC_HAS_MIDLEMODE | | ||
284 | SYSS_HAS_RESET_STATUS), | ||
285 | .idlemodes = (SIDLE_FORCE | SIDLE_NO | MSTANDBY_FORCE | | ||
286 | MSTANDBY_NO), | ||
287 | .sysc_fields = &omap_hwmod_sysc_type3, | ||
288 | }; | ||
289 | |||
290 | static struct omap_hwmod_class dra7xx_gmac_hwmod_class = { | ||
291 | .name = "gmac", | ||
292 | .sysc = &dra7xx_gmac_sysc, | ||
293 | }; | ||
294 | |||
295 | static struct omap_hwmod dra7xx_gmac_hwmod = { | ||
296 | .name = "gmac", | ||
297 | .class = &dra7xx_gmac_hwmod_class, | ||
298 | .clkdm_name = "gmac_clkdm", | ||
299 | .flags = (HWMOD_SWSUP_SIDLE | HWMOD_SWSUP_MSTANDBY), | ||
300 | .main_clk = "dpll_gmac_ck", | ||
301 | .mpu_rt_idx = 1, | ||
302 | .prcm = { | ||
303 | .omap4 = { | ||
304 | .clkctrl_offs = DRA7XX_CM_GMAC_GMAC_CLKCTRL_OFFSET, | ||
305 | .context_offs = DRA7XX_RM_GMAC_GMAC_CONTEXT_OFFSET, | ||
306 | .modulemode = MODULEMODE_SWCTRL, | ||
307 | }, | ||
308 | }, | ||
309 | }; | ||
310 | |||
311 | /* | ||
312 | * 'mdio' class | ||
313 | */ | ||
314 | static struct omap_hwmod_class dra7xx_mdio_hwmod_class = { | ||
315 | .name = "davinci_mdio", | ||
316 | }; | ||
317 | |||
318 | static struct omap_hwmod dra7xx_mdio_hwmod = { | ||
319 | .name = "davinci_mdio", | ||
320 | .class = &dra7xx_mdio_hwmod_class, | ||
321 | .clkdm_name = "gmac_clkdm", | ||
322 | .main_clk = "dpll_gmac_ck", | ||
323 | }; | ||
324 | |||
325 | /* | ||
276 | * 'dcan' class | 326 | * 'dcan' class |
277 | * | 327 | * |
278 | */ | 328 | */ |
@@ -343,19 +393,10 @@ static struct omap_dma_dev_attr dma_dev_attr = { | |||
343 | }; | 393 | }; |
344 | 394 | ||
345 | /* dma_system */ | 395 | /* dma_system */ |
346 | static struct omap_hwmod_irq_info dra7xx_dma_system_irqs[] = { | ||
347 | { .name = "0", .irq = 12 + DRA7XX_IRQ_GIC_START }, | ||
348 | { .name = "1", .irq = 13 + DRA7XX_IRQ_GIC_START }, | ||
349 | { .name = "2", .irq = 14 + DRA7XX_IRQ_GIC_START }, | ||
350 | { .name = "3", .irq = 15 + DRA7XX_IRQ_GIC_START }, | ||
351 | { .irq = -1 } | ||
352 | }; | ||
353 | |||
354 | static struct omap_hwmod dra7xx_dma_system_hwmod = { | 396 | static struct omap_hwmod dra7xx_dma_system_hwmod = { |
355 | .name = "dma_system", | 397 | .name = "dma_system", |
356 | .class = &dra7xx_dma_hwmod_class, | 398 | .class = &dra7xx_dma_hwmod_class, |
357 | .clkdm_name = "dma_clkdm", | 399 | .clkdm_name = "dma_clkdm", |
358 | .mpu_irqs = dra7xx_dma_system_irqs, | ||
359 | .main_clk = "l3_iclk_div", | 400 | .main_clk = "l3_iclk_div", |
360 | .prcm = { | 401 | .prcm = { |
361 | .omap4 = { | 402 | .omap4 = { |
@@ -939,6 +980,194 @@ static struct omap_hwmod dra7xx_i2c5_hwmod = { | |||
939 | }; | 980 | }; |
940 | 981 | ||
941 | /* | 982 | /* |
983 | * 'mailbox' class | ||
984 | * | ||
985 | */ | ||
986 | |||
987 | static struct omap_hwmod_class_sysconfig dra7xx_mailbox_sysc = { | ||
988 | .rev_offs = 0x0000, | ||
989 | .sysc_offs = 0x0010, | ||
990 | .sysc_flags = (SYSC_HAS_RESET_STATUS | SYSC_HAS_SIDLEMODE | | ||
991 | SYSC_HAS_SOFTRESET), | ||
992 | .idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART), | ||
993 | .sysc_fields = &omap_hwmod_sysc_type2, | ||
994 | }; | ||
995 | |||
996 | static struct omap_hwmod_class dra7xx_mailbox_hwmod_class = { | ||
997 | .name = "mailbox", | ||
998 | .sysc = &dra7xx_mailbox_sysc, | ||
999 | }; | ||
1000 | |||
1001 | /* mailbox1 */ | ||
1002 | static struct omap_hwmod dra7xx_mailbox1_hwmod = { | ||
1003 | .name = "mailbox1", | ||
1004 | .class = &dra7xx_mailbox_hwmod_class, | ||
1005 | .clkdm_name = "l4cfg_clkdm", | ||
1006 | .prcm = { | ||
1007 | .omap4 = { | ||
1008 | .clkctrl_offs = DRA7XX_CM_L4CFG_MAILBOX1_CLKCTRL_OFFSET, | ||
1009 | .context_offs = DRA7XX_RM_L4CFG_MAILBOX1_CONTEXT_OFFSET, | ||
1010 | }, | ||
1011 | }, | ||
1012 | }; | ||
1013 | |||
1014 | /* mailbox2 */ | ||
1015 | static struct omap_hwmod dra7xx_mailbox2_hwmod = { | ||
1016 | .name = "mailbox2", | ||
1017 | .class = &dra7xx_mailbox_hwmod_class, | ||
1018 | .clkdm_name = "l4cfg_clkdm", | ||
1019 | .prcm = { | ||
1020 | .omap4 = { | ||
1021 | .clkctrl_offs = DRA7XX_CM_L4CFG_MAILBOX2_CLKCTRL_OFFSET, | ||
1022 | .context_offs = DRA7XX_RM_L4CFG_MAILBOX2_CONTEXT_OFFSET, | ||
1023 | }, | ||
1024 | }, | ||
1025 | }; | ||
1026 | |||
1027 | /* mailbox3 */ | ||
1028 | static struct omap_hwmod dra7xx_mailbox3_hwmod = { | ||
1029 | .name = "mailbox3", | ||
1030 | .class = &dra7xx_mailbox_hwmod_class, | ||
1031 | .clkdm_name = "l4cfg_clkdm", | ||
1032 | .prcm = { | ||
1033 | .omap4 = { | ||
1034 | .clkctrl_offs = DRA7XX_CM_L4CFG_MAILBOX3_CLKCTRL_OFFSET, | ||
1035 | .context_offs = DRA7XX_RM_L4CFG_MAILBOX3_CONTEXT_OFFSET, | ||
1036 | }, | ||
1037 | }, | ||
1038 | }; | ||
1039 | |||
1040 | /* mailbox4 */ | ||
1041 | static struct omap_hwmod dra7xx_mailbox4_hwmod = { | ||
1042 | .name = "mailbox4", | ||
1043 | .class = &dra7xx_mailbox_hwmod_class, | ||
1044 | .clkdm_name = "l4cfg_clkdm", | ||
1045 | .prcm = { | ||
1046 | .omap4 = { | ||
1047 | .clkctrl_offs = DRA7XX_CM_L4CFG_MAILBOX4_CLKCTRL_OFFSET, | ||
1048 | .context_offs = DRA7XX_RM_L4CFG_MAILBOX4_CONTEXT_OFFSET, | ||
1049 | }, | ||
1050 | }, | ||
1051 | }; | ||
1052 | |||
1053 | /* mailbox5 */ | ||
1054 | static struct omap_hwmod dra7xx_mailbox5_hwmod = { | ||
1055 | .name = "mailbox5", | ||
1056 | .class = &dra7xx_mailbox_hwmod_class, | ||
1057 | .clkdm_name = "l4cfg_clkdm", | ||
1058 | .prcm = { | ||
1059 | .omap4 = { | ||
1060 | .clkctrl_offs = DRA7XX_CM_L4CFG_MAILBOX5_CLKCTRL_OFFSET, | ||
1061 | .context_offs = DRA7XX_RM_L4CFG_MAILBOX5_CONTEXT_OFFSET, | ||
1062 | }, | ||
1063 | }, | ||
1064 | }; | ||
1065 | |||
1066 | /* mailbox6 */ | ||
1067 | static struct omap_hwmod dra7xx_mailbox6_hwmod = { | ||
1068 | .name = "mailbox6", | ||
1069 | .class = &dra7xx_mailbox_hwmod_class, | ||
1070 | .clkdm_name = "l4cfg_clkdm", | ||
1071 | .prcm = { | ||
1072 | .omap4 = { | ||
1073 | .clkctrl_offs = DRA7XX_CM_L4CFG_MAILBOX6_CLKCTRL_OFFSET, | ||
1074 | .context_offs = DRA7XX_RM_L4CFG_MAILBOX6_CONTEXT_OFFSET, | ||
1075 | }, | ||
1076 | }, | ||
1077 | }; | ||
1078 | |||
1079 | /* mailbox7 */ | ||
1080 | static struct omap_hwmod dra7xx_mailbox7_hwmod = { | ||
1081 | .name = "mailbox7", | ||
1082 | .class = &dra7xx_mailbox_hwmod_class, | ||
1083 | .clkdm_name = "l4cfg_clkdm", | ||
1084 | .prcm = { | ||
1085 | .omap4 = { | ||
1086 | .clkctrl_offs = DRA7XX_CM_L4CFG_MAILBOX7_CLKCTRL_OFFSET, | ||
1087 | .context_offs = DRA7XX_RM_L4CFG_MAILBOX7_CONTEXT_OFFSET, | ||
1088 | }, | ||
1089 | }, | ||
1090 | }; | ||
1091 | |||
1092 | /* mailbox8 */ | ||
1093 | static struct omap_hwmod dra7xx_mailbox8_hwmod = { | ||
1094 | .name = "mailbox8", | ||
1095 | .class = &dra7xx_mailbox_hwmod_class, | ||
1096 | .clkdm_name = "l4cfg_clkdm", | ||
1097 | .prcm = { | ||
1098 | .omap4 = { | ||
1099 | .clkctrl_offs = DRA7XX_CM_L4CFG_MAILBOX8_CLKCTRL_OFFSET, | ||
1100 | .context_offs = DRA7XX_RM_L4CFG_MAILBOX8_CONTEXT_OFFSET, | ||
1101 | }, | ||
1102 | }, | ||
1103 | }; | ||
1104 | |||
1105 | /* mailbox9 */ | ||
1106 | static struct omap_hwmod dra7xx_mailbox9_hwmod = { | ||
1107 | .name = "mailbox9", | ||
1108 | .class = &dra7xx_mailbox_hwmod_class, | ||
1109 | .clkdm_name = "l4cfg_clkdm", | ||
1110 | .prcm = { | ||
1111 | .omap4 = { | ||
1112 | .clkctrl_offs = DRA7XX_CM_L4CFG_MAILBOX9_CLKCTRL_OFFSET, | ||
1113 | .context_offs = DRA7XX_RM_L4CFG_MAILBOX9_CONTEXT_OFFSET, | ||
1114 | }, | ||
1115 | }, | ||
1116 | }; | ||
1117 | |||
1118 | /* mailbox10 */ | ||
1119 | static struct omap_hwmod dra7xx_mailbox10_hwmod = { | ||
1120 | .name = "mailbox10", | ||
1121 | .class = &dra7xx_mailbox_hwmod_class, | ||
1122 | .clkdm_name = "l4cfg_clkdm", | ||
1123 | .prcm = { | ||
1124 | .omap4 = { | ||
1125 | .clkctrl_offs = DRA7XX_CM_L4CFG_MAILBOX10_CLKCTRL_OFFSET, | ||
1126 | .context_offs = DRA7XX_RM_L4CFG_MAILBOX10_CONTEXT_OFFSET, | ||
1127 | }, | ||
1128 | }, | ||
1129 | }; | ||
1130 | |||
1131 | /* mailbox11 */ | ||
1132 | static struct omap_hwmod dra7xx_mailbox11_hwmod = { | ||
1133 | .name = "mailbox11", | ||
1134 | .class = &dra7xx_mailbox_hwmod_class, | ||
1135 | .clkdm_name = "l4cfg_clkdm", | ||
1136 | .prcm = { | ||
1137 | .omap4 = { | ||
1138 | .clkctrl_offs = DRA7XX_CM_L4CFG_MAILBOX11_CLKCTRL_OFFSET, | ||
1139 | .context_offs = DRA7XX_RM_L4CFG_MAILBOX11_CONTEXT_OFFSET, | ||
1140 | }, | ||
1141 | }, | ||
1142 | }; | ||
1143 | |||
1144 | /* mailbox12 */ | ||
1145 | static struct omap_hwmod dra7xx_mailbox12_hwmod = { | ||
1146 | .name = "mailbox12", | ||
1147 | .class = &dra7xx_mailbox_hwmod_class, | ||
1148 | .clkdm_name = "l4cfg_clkdm", | ||
1149 | .prcm = { | ||
1150 | .omap4 = { | ||
1151 | .clkctrl_offs = DRA7XX_CM_L4CFG_MAILBOX12_CLKCTRL_OFFSET, | ||
1152 | .context_offs = DRA7XX_RM_L4CFG_MAILBOX12_CONTEXT_OFFSET, | ||
1153 | }, | ||
1154 | }, | ||
1155 | }; | ||
1156 | |||
1157 | /* mailbox13 */ | ||
1158 | static struct omap_hwmod dra7xx_mailbox13_hwmod = { | ||
1159 | .name = "mailbox13", | ||
1160 | .class = &dra7xx_mailbox_hwmod_class, | ||
1161 | .clkdm_name = "l4cfg_clkdm", | ||
1162 | .prcm = { | ||
1163 | .omap4 = { | ||
1164 | .clkctrl_offs = DRA7XX_CM_L4CFG_MAILBOX13_CLKCTRL_OFFSET, | ||
1165 | .context_offs = DRA7XX_RM_L4CFG_MAILBOX13_CONTEXT_OFFSET, | ||
1166 | }, | ||
1167 | }, | ||
1168 | }; | ||
1169 | |||
1170 | /* | ||
942 | * 'mcspi' class | 1171 | * 'mcspi' class |
943 | * | 1172 | * |
944 | */ | 1173 | */ |
@@ -1215,6 +1444,97 @@ static struct omap_hwmod dra7xx_ocp2scp1_hwmod = { | |||
1215 | }, | 1444 | }, |
1216 | }; | 1445 | }; |
1217 | 1446 | ||
1447 | /* ocp2scp3 */ | ||
1448 | static struct omap_hwmod dra7xx_ocp2scp3_hwmod = { | ||
1449 | .name = "ocp2scp3", | ||
1450 | .class = &dra7xx_ocp2scp_hwmod_class, | ||
1451 | .clkdm_name = "l3init_clkdm", | ||
1452 | .main_clk = "l4_root_clk_div", | ||
1453 | .prcm = { | ||
1454 | .omap4 = { | ||
1455 | .clkctrl_offs = DRA7XX_CM_L3INIT_OCP2SCP3_CLKCTRL_OFFSET, | ||
1456 | .context_offs = DRA7XX_RM_L3INIT_OCP2SCP3_CONTEXT_OFFSET, | ||
1457 | .modulemode = MODULEMODE_HWCTRL, | ||
1458 | }, | ||
1459 | }, | ||
1460 | }; | ||
1461 | |||
1462 | /* | ||
1463 | * 'PCIE' class | ||
1464 | * | ||
1465 | */ | ||
1466 | |||
1467 | static struct omap_hwmod_class dra7xx_pcie_hwmod_class = { | ||
1468 | .name = "pcie", | ||
1469 | }; | ||
1470 | |||
1471 | /* pcie1 */ | ||
1472 | static struct omap_hwmod dra7xx_pcie1_hwmod = { | ||
1473 | .name = "pcie1", | ||
1474 | .class = &dra7xx_pcie_hwmod_class, | ||
1475 | .clkdm_name = "pcie_clkdm", | ||
1476 | .main_clk = "l4_root_clk_div", | ||
1477 | .prcm = { | ||
1478 | .omap4 = { | ||
1479 | .clkctrl_offs = DRA7XX_CM_PCIE_CLKSTCTRL_OFFSET, | ||
1480 | .modulemode = MODULEMODE_SWCTRL, | ||
1481 | }, | ||
1482 | }, | ||
1483 | }; | ||
1484 | |||
1485 | /* pcie2 */ | ||
1486 | static struct omap_hwmod dra7xx_pcie2_hwmod = { | ||
1487 | .name = "pcie2", | ||
1488 | .class = &dra7xx_pcie_hwmod_class, | ||
1489 | .clkdm_name = "pcie_clkdm", | ||
1490 | .main_clk = "l4_root_clk_div", | ||
1491 | .prcm = { | ||
1492 | .omap4 = { | ||
1493 | .clkctrl_offs = DRA7XX_CM_PCIE_CLKSTCTRL_OFFSET, | ||
1494 | .modulemode = MODULEMODE_SWCTRL, | ||
1495 | }, | ||
1496 | }, | ||
1497 | }; | ||
1498 | |||
1499 | /* | ||
1500 | * 'PCIE PHY' class | ||
1501 | * | ||
1502 | */ | ||
1503 | |||
1504 | static struct omap_hwmod_class dra7xx_pcie_phy_hwmod_class = { | ||
1505 | .name = "pcie-phy", | ||
1506 | }; | ||
1507 | |||
1508 | /* pcie1 phy */ | ||
1509 | static struct omap_hwmod dra7xx_pcie1_phy_hwmod = { | ||
1510 | .name = "pcie1-phy", | ||
1511 | .class = &dra7xx_pcie_phy_hwmod_class, | ||
1512 | .clkdm_name = "l3init_clkdm", | ||
1513 | .main_clk = "l4_root_clk_div", | ||
1514 | .prcm = { | ||
1515 | .omap4 = { | ||
1516 | .clkctrl_offs = DRA7XX_CM_L3INIT_PCIESS1_CLKCTRL_OFFSET, | ||
1517 | .context_offs = DRA7XX_RM_L3INIT_PCIESS1_CONTEXT_OFFSET, | ||
1518 | .modulemode = MODULEMODE_SWCTRL, | ||
1519 | }, | ||
1520 | }, | ||
1521 | }; | ||
1522 | |||
1523 | /* pcie2 phy */ | ||
1524 | static struct omap_hwmod dra7xx_pcie2_phy_hwmod = { | ||
1525 | .name = "pcie2-phy", | ||
1526 | .class = &dra7xx_pcie_phy_hwmod_class, | ||
1527 | .clkdm_name = "l3init_clkdm", | ||
1528 | .main_clk = "l4_root_clk_div", | ||
1529 | .prcm = { | ||
1530 | .omap4 = { | ||
1531 | .clkctrl_offs = DRA7XX_CM_L3INIT_PCIESS2_CLKCTRL_OFFSET, | ||
1532 | .context_offs = DRA7XX_RM_L3INIT_PCIESS2_CONTEXT_OFFSET, | ||
1533 | .modulemode = MODULEMODE_SWCTRL, | ||
1534 | }, | ||
1535 | }, | ||
1536 | }; | ||
1537 | |||
1218 | /* | 1538 | /* |
1219 | * 'qspi' class | 1539 | * 'qspi' class |
1220 | * | 1540 | * |
@@ -1249,6 +1569,38 @@ static struct omap_hwmod dra7xx_qspi_hwmod = { | |||
1249 | }; | 1569 | }; |
1250 | 1570 | ||
1251 | /* | 1571 | /* |
1572 | * 'rtcss' class | ||
1573 | * | ||
1574 | */ | ||
1575 | static struct omap_hwmod_class_sysconfig dra7xx_rtcss_sysc = { | ||
1576 | .sysc_offs = 0x0078, | ||
1577 | .sysc_flags = SYSC_HAS_SIDLEMODE, | ||
1578 | .idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART | | ||
1579 | SIDLE_SMART_WKUP), | ||
1580 | .sysc_fields = &omap_hwmod_sysc_type3, | ||
1581 | }; | ||
1582 | |||
1583 | static struct omap_hwmod_class dra7xx_rtcss_hwmod_class = { | ||
1584 | .name = "rtcss", | ||
1585 | .sysc = &dra7xx_rtcss_sysc, | ||
1586 | }; | ||
1587 | |||
1588 | /* rtcss */ | ||
1589 | static struct omap_hwmod dra7xx_rtcss_hwmod = { | ||
1590 | .name = "rtcss", | ||
1591 | .class = &dra7xx_rtcss_hwmod_class, | ||
1592 | .clkdm_name = "rtc_clkdm", | ||
1593 | .main_clk = "sys_32k_ck", | ||
1594 | .prcm = { | ||
1595 | .omap4 = { | ||
1596 | .clkctrl_offs = DRA7XX_CM_RTC_RTCSS_CLKCTRL_OFFSET, | ||
1597 | .context_offs = DRA7XX_RM_RTC_RTCSS_CONTEXT_OFFSET, | ||
1598 | .modulemode = MODULEMODE_SWCTRL, | ||
1599 | }, | ||
1600 | }, | ||
1601 | }; | ||
1602 | |||
1603 | /* | ||
1252 | * 'sata' class | 1604 | * 'sata' class |
1253 | * | 1605 | * |
1254 | */ | 1606 | */ |
@@ -2007,6 +2359,19 @@ static struct omap_hwmod_ocp_if dra7xx_l4_wkup__ctrl_module_wkup = { | |||
2007 | .user = OCP_USER_MPU | OCP_USER_SDMA, | 2359 | .user = OCP_USER_MPU | OCP_USER_SDMA, |
2008 | }; | 2360 | }; |
2009 | 2361 | ||
2362 | static struct omap_hwmod_ocp_if dra7xx_l4_per2__cpgmac0 = { | ||
2363 | .master = &dra7xx_l4_per2_hwmod, | ||
2364 | .slave = &dra7xx_gmac_hwmod, | ||
2365 | .clk = "dpll_gmac_ck", | ||
2366 | .user = OCP_USER_MPU, | ||
2367 | }; | ||
2368 | |||
2369 | static struct omap_hwmod_ocp_if dra7xx_gmac__mdio = { | ||
2370 | .master = &dra7xx_gmac_hwmod, | ||
2371 | .slave = &dra7xx_mdio_hwmod, | ||
2372 | .user = OCP_USER_MPU, | ||
2373 | }; | ||
2374 | |||
2010 | /* l4_wkup -> dcan1 */ | 2375 | /* l4_wkup -> dcan1 */ |
2011 | static struct omap_hwmod_ocp_if dra7xx_l4_wkup__dcan1 = { | 2376 | static struct omap_hwmod_ocp_if dra7xx_l4_wkup__dcan1 = { |
2012 | .master = &dra7xx_l4_wkup_hwmod, | 2377 | .master = &dra7xx_l4_wkup_hwmod, |
@@ -2254,6 +2619,110 @@ static struct omap_hwmod_ocp_if dra7xx_l4_per1__i2c5 = { | |||
2254 | .user = OCP_USER_MPU | OCP_USER_SDMA, | 2619 | .user = OCP_USER_MPU | OCP_USER_SDMA, |
2255 | }; | 2620 | }; |
2256 | 2621 | ||
2622 | /* l4_cfg -> mailbox1 */ | ||
2623 | static struct omap_hwmod_ocp_if dra7xx_l4_cfg__mailbox1 = { | ||
2624 | .master = &dra7xx_l4_cfg_hwmod, | ||
2625 | .slave = &dra7xx_mailbox1_hwmod, | ||
2626 | .clk = "l3_iclk_div", | ||
2627 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2628 | }; | ||
2629 | |||
2630 | /* l4_per3 -> mailbox2 */ | ||
2631 | static struct omap_hwmod_ocp_if dra7xx_l4_per3__mailbox2 = { | ||
2632 | .master = &dra7xx_l4_per3_hwmod, | ||
2633 | .slave = &dra7xx_mailbox2_hwmod, | ||
2634 | .clk = "l3_iclk_div", | ||
2635 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2636 | }; | ||
2637 | |||
2638 | /* l4_per3 -> mailbox3 */ | ||
2639 | static struct omap_hwmod_ocp_if dra7xx_l4_per3__mailbox3 = { | ||
2640 | .master = &dra7xx_l4_per3_hwmod, | ||
2641 | .slave = &dra7xx_mailbox3_hwmod, | ||
2642 | .clk = "l3_iclk_div", | ||
2643 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2644 | }; | ||
2645 | |||
2646 | /* l4_per3 -> mailbox4 */ | ||
2647 | static struct omap_hwmod_ocp_if dra7xx_l4_per3__mailbox4 = { | ||
2648 | .master = &dra7xx_l4_per3_hwmod, | ||
2649 | .slave = &dra7xx_mailbox4_hwmod, | ||
2650 | .clk = "l3_iclk_div", | ||
2651 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2652 | }; | ||
2653 | |||
2654 | /* l4_per3 -> mailbox5 */ | ||
2655 | static struct omap_hwmod_ocp_if dra7xx_l4_per3__mailbox5 = { | ||
2656 | .master = &dra7xx_l4_per3_hwmod, | ||
2657 | .slave = &dra7xx_mailbox5_hwmod, | ||
2658 | .clk = "l3_iclk_div", | ||
2659 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2660 | }; | ||
2661 | |||
2662 | /* l4_per3 -> mailbox6 */ | ||
2663 | static struct omap_hwmod_ocp_if dra7xx_l4_per3__mailbox6 = { | ||
2664 | .master = &dra7xx_l4_per3_hwmod, | ||
2665 | .slave = &dra7xx_mailbox6_hwmod, | ||
2666 | .clk = "l3_iclk_div", | ||
2667 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2668 | }; | ||
2669 | |||
2670 | /* l4_per3 -> mailbox7 */ | ||
2671 | static struct omap_hwmod_ocp_if dra7xx_l4_per3__mailbox7 = { | ||
2672 | .master = &dra7xx_l4_per3_hwmod, | ||
2673 | .slave = &dra7xx_mailbox7_hwmod, | ||
2674 | .clk = "l3_iclk_div", | ||
2675 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2676 | }; | ||
2677 | |||
2678 | /* l4_per3 -> mailbox8 */ | ||
2679 | static struct omap_hwmod_ocp_if dra7xx_l4_per3__mailbox8 = { | ||
2680 | .master = &dra7xx_l4_per3_hwmod, | ||
2681 | .slave = &dra7xx_mailbox8_hwmod, | ||
2682 | .clk = "l3_iclk_div", | ||
2683 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2684 | }; | ||
2685 | |||
2686 | /* l4_per3 -> mailbox9 */ | ||
2687 | static struct omap_hwmod_ocp_if dra7xx_l4_per3__mailbox9 = { | ||
2688 | .master = &dra7xx_l4_per3_hwmod, | ||
2689 | .slave = &dra7xx_mailbox9_hwmod, | ||
2690 | .clk = "l3_iclk_div", | ||
2691 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2692 | }; | ||
2693 | |||
2694 | /* l4_per3 -> mailbox10 */ | ||
2695 | static struct omap_hwmod_ocp_if dra7xx_l4_per3__mailbox10 = { | ||
2696 | .master = &dra7xx_l4_per3_hwmod, | ||
2697 | .slave = &dra7xx_mailbox10_hwmod, | ||
2698 | .clk = "l3_iclk_div", | ||
2699 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2700 | }; | ||
2701 | |||
2702 | /* l4_per3 -> mailbox11 */ | ||
2703 | static struct omap_hwmod_ocp_if dra7xx_l4_per3__mailbox11 = { | ||
2704 | .master = &dra7xx_l4_per3_hwmod, | ||
2705 | .slave = &dra7xx_mailbox11_hwmod, | ||
2706 | .clk = "l3_iclk_div", | ||
2707 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2708 | }; | ||
2709 | |||
2710 | /* l4_per3 -> mailbox12 */ | ||
2711 | static struct omap_hwmod_ocp_if dra7xx_l4_per3__mailbox12 = { | ||
2712 | .master = &dra7xx_l4_per3_hwmod, | ||
2713 | .slave = &dra7xx_mailbox12_hwmod, | ||
2714 | .clk = "l3_iclk_div", | ||
2715 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2716 | }; | ||
2717 | |||
2718 | /* l4_per3 -> mailbox13 */ | ||
2719 | static struct omap_hwmod_ocp_if dra7xx_l4_per3__mailbox13 = { | ||
2720 | .master = &dra7xx_l4_per3_hwmod, | ||
2721 | .slave = &dra7xx_mailbox13_hwmod, | ||
2722 | .clk = "l3_iclk_div", | ||
2723 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2724 | }; | ||
2725 | |||
2257 | /* l4_per1 -> mcspi1 */ | 2726 | /* l4_per1 -> mcspi1 */ |
2258 | static struct omap_hwmod_ocp_if dra7xx_l4_per1__mcspi1 = { | 2727 | static struct omap_hwmod_ocp_if dra7xx_l4_per1__mcspi1 = { |
2259 | .master = &dra7xx_l4_per1_hwmod, | 2728 | .master = &dra7xx_l4_per1_hwmod, |
@@ -2334,6 +2803,62 @@ static struct omap_hwmod_ocp_if dra7xx_l4_cfg__ocp2scp1 = { | |||
2334 | .user = OCP_USER_MPU | OCP_USER_SDMA, | 2803 | .user = OCP_USER_MPU | OCP_USER_SDMA, |
2335 | }; | 2804 | }; |
2336 | 2805 | ||
2806 | /* l4_cfg -> ocp2scp3 */ | ||
2807 | static struct omap_hwmod_ocp_if dra7xx_l4_cfg__ocp2scp3 = { | ||
2808 | .master = &dra7xx_l4_cfg_hwmod, | ||
2809 | .slave = &dra7xx_ocp2scp3_hwmod, | ||
2810 | .clk = "l4_root_clk_div", | ||
2811 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2812 | }; | ||
2813 | |||
2814 | /* l3_main_1 -> pcie1 */ | ||
2815 | static struct omap_hwmod_ocp_if dra7xx_l3_main_1__pcie1 = { | ||
2816 | .master = &dra7xx_l3_main_1_hwmod, | ||
2817 | .slave = &dra7xx_pcie1_hwmod, | ||
2818 | .clk = "l3_iclk_div", | ||
2819 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2820 | }; | ||
2821 | |||
2822 | /* l4_cfg -> pcie1 */ | ||
2823 | static struct omap_hwmod_ocp_if dra7xx_l4_cfg__pcie1 = { | ||
2824 | .master = &dra7xx_l4_cfg_hwmod, | ||
2825 | .slave = &dra7xx_pcie1_hwmod, | ||
2826 | .clk = "l4_root_clk_div", | ||
2827 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2828 | }; | ||
2829 | |||
2830 | /* l3_main_1 -> pcie2 */ | ||
2831 | static struct omap_hwmod_ocp_if dra7xx_l3_main_1__pcie2 = { | ||
2832 | .master = &dra7xx_l3_main_1_hwmod, | ||
2833 | .slave = &dra7xx_pcie2_hwmod, | ||
2834 | .clk = "l3_iclk_div", | ||
2835 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2836 | }; | ||
2837 | |||
2838 | /* l4_cfg -> pcie2 */ | ||
2839 | static struct omap_hwmod_ocp_if dra7xx_l4_cfg__pcie2 = { | ||
2840 | .master = &dra7xx_l4_cfg_hwmod, | ||
2841 | .slave = &dra7xx_pcie2_hwmod, | ||
2842 | .clk = "l4_root_clk_div", | ||
2843 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2844 | }; | ||
2845 | |||
2846 | /* l4_cfg -> pcie1 phy */ | ||
2847 | static struct omap_hwmod_ocp_if dra7xx_l4_cfg__pcie1_phy = { | ||
2848 | .master = &dra7xx_l4_cfg_hwmod, | ||
2849 | .slave = &dra7xx_pcie1_phy_hwmod, | ||
2850 | .clk = "l4_root_clk_div", | ||
2851 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2852 | }; | ||
2853 | |||
2854 | /* l4_cfg -> pcie2 phy */ | ||
2855 | static struct omap_hwmod_ocp_if dra7xx_l4_cfg__pcie2_phy = { | ||
2856 | .master = &dra7xx_l4_cfg_hwmod, | ||
2857 | .slave = &dra7xx_pcie2_phy_hwmod, | ||
2858 | .clk = "l4_root_clk_div", | ||
2859 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2860 | }; | ||
2861 | |||
2337 | static struct omap_hwmod_addr_space dra7xx_qspi_addrs[] = { | 2862 | static struct omap_hwmod_addr_space dra7xx_qspi_addrs[] = { |
2338 | { | 2863 | { |
2339 | .pa_start = 0x4b300000, | 2864 | .pa_start = 0x4b300000, |
@@ -2352,6 +2877,14 @@ static struct omap_hwmod_ocp_if dra7xx_l3_main_1__qspi = { | |||
2352 | .user = OCP_USER_MPU | OCP_USER_SDMA, | 2877 | .user = OCP_USER_MPU | OCP_USER_SDMA, |
2353 | }; | 2878 | }; |
2354 | 2879 | ||
2880 | /* l4_per3 -> rtcss */ | ||
2881 | static struct omap_hwmod_ocp_if dra7xx_l4_per3__rtcss = { | ||
2882 | .master = &dra7xx_l4_per3_hwmod, | ||
2883 | .slave = &dra7xx_rtcss_hwmod, | ||
2884 | .clk = "l4_root_clk_div", | ||
2885 | .user = OCP_USER_MPU | OCP_USER_SDMA, | ||
2886 | }; | ||
2887 | |||
2355 | static struct omap_hwmod_addr_space dra7xx_sata_addrs[] = { | 2888 | static struct omap_hwmod_addr_space dra7xx_sata_addrs[] = { |
2356 | { | 2889 | { |
2357 | .name = "sysc", | 2890 | .name = "sysc", |
@@ -2650,6 +3183,8 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = { | |||
2650 | &dra7xx_l4_wkup__ctrl_module_wkup, | 3183 | &dra7xx_l4_wkup__ctrl_module_wkup, |
2651 | &dra7xx_l4_wkup__dcan1, | 3184 | &dra7xx_l4_wkup__dcan1, |
2652 | &dra7xx_l4_per2__dcan2, | 3185 | &dra7xx_l4_per2__dcan2, |
3186 | &dra7xx_l4_per2__cpgmac0, | ||
3187 | &dra7xx_gmac__mdio, | ||
2653 | &dra7xx_l4_cfg__dma_system, | 3188 | &dra7xx_l4_cfg__dma_system, |
2654 | &dra7xx_l3_main_1__dss, | 3189 | &dra7xx_l3_main_1__dss, |
2655 | &dra7xx_l3_main_1__dispc, | 3190 | &dra7xx_l3_main_1__dispc, |
@@ -2670,6 +3205,19 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = { | |||
2670 | &dra7xx_l4_per1__i2c3, | 3205 | &dra7xx_l4_per1__i2c3, |
2671 | &dra7xx_l4_per1__i2c4, | 3206 | &dra7xx_l4_per1__i2c4, |
2672 | &dra7xx_l4_per1__i2c5, | 3207 | &dra7xx_l4_per1__i2c5, |
3208 | &dra7xx_l4_cfg__mailbox1, | ||
3209 | &dra7xx_l4_per3__mailbox2, | ||
3210 | &dra7xx_l4_per3__mailbox3, | ||
3211 | &dra7xx_l4_per3__mailbox4, | ||
3212 | &dra7xx_l4_per3__mailbox5, | ||
3213 | &dra7xx_l4_per3__mailbox6, | ||
3214 | &dra7xx_l4_per3__mailbox7, | ||
3215 | &dra7xx_l4_per3__mailbox8, | ||
3216 | &dra7xx_l4_per3__mailbox9, | ||
3217 | &dra7xx_l4_per3__mailbox10, | ||
3218 | &dra7xx_l4_per3__mailbox11, | ||
3219 | &dra7xx_l4_per3__mailbox12, | ||
3220 | &dra7xx_l4_per3__mailbox13, | ||
2673 | &dra7xx_l4_per1__mcspi1, | 3221 | &dra7xx_l4_per1__mcspi1, |
2674 | &dra7xx_l4_per1__mcspi2, | 3222 | &dra7xx_l4_per1__mcspi2, |
2675 | &dra7xx_l4_per1__mcspi3, | 3223 | &dra7xx_l4_per1__mcspi3, |
@@ -2680,7 +3228,15 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = { | |||
2680 | &dra7xx_l4_per1__mmc4, | 3228 | &dra7xx_l4_per1__mmc4, |
2681 | &dra7xx_l4_cfg__mpu, | 3229 | &dra7xx_l4_cfg__mpu, |
2682 | &dra7xx_l4_cfg__ocp2scp1, | 3230 | &dra7xx_l4_cfg__ocp2scp1, |
3231 | &dra7xx_l4_cfg__ocp2scp3, | ||
3232 | &dra7xx_l3_main_1__pcie1, | ||
3233 | &dra7xx_l4_cfg__pcie1, | ||
3234 | &dra7xx_l3_main_1__pcie2, | ||
3235 | &dra7xx_l4_cfg__pcie2, | ||
3236 | &dra7xx_l4_cfg__pcie1_phy, | ||
3237 | &dra7xx_l4_cfg__pcie2_phy, | ||
2683 | &dra7xx_l3_main_1__qspi, | 3238 | &dra7xx_l3_main_1__qspi, |
3239 | &dra7xx_l4_per3__rtcss, | ||
2684 | &dra7xx_l4_cfg__sata, | 3240 | &dra7xx_l4_cfg__sata, |
2685 | &dra7xx_l4_cfg__smartreflex_core, | 3241 | &dra7xx_l4_cfg__smartreflex_core, |
2686 | &dra7xx_l4_cfg__smartreflex_mpu, | 3242 | &dra7xx_l4_cfg__smartreflex_mpu, |
diff --git a/arch/arm/mach-omap2/omap_hwmod_common_data.h b/arch/arm/mach-omap2/omap_hwmod_common_data.h index 2c38c6b0ee03..11ed5a17dd77 100644 --- a/arch/arm/mach-omap2/omap_hwmod_common_data.h +++ b/arch/arm/mach-omap2/omap_hwmod_common_data.h | |||
@@ -33,7 +33,6 @@ extern struct omap_hwmod_addr_space omap2_mcspi1_addr_space[]; | |||
33 | extern struct omap_hwmod_addr_space omap2_mcspi2_addr_space[]; | 33 | extern struct omap_hwmod_addr_space omap2_mcspi2_addr_space[]; |
34 | extern struct omap_hwmod_addr_space omap2430_mcspi3_addr_space[]; | 34 | extern struct omap_hwmod_addr_space omap2430_mcspi3_addr_space[]; |
35 | extern struct omap_hwmod_addr_space omap2_dma_system_addrs[]; | 35 | extern struct omap_hwmod_addr_space omap2_dma_system_addrs[]; |
36 | extern struct omap_hwmod_addr_space omap2_mailbox_addrs[]; | ||
37 | extern struct omap_hwmod_addr_space omap2_mcbsp1_addrs[]; | 36 | extern struct omap_hwmod_addr_space omap2_mcbsp1_addrs[]; |
38 | extern struct omap_hwmod_addr_space omap2_hdq1w_addr_space[]; | 37 | extern struct omap_hwmod_addr_space omap2_hdq1w_addr_space[]; |
39 | 38 | ||
diff --git a/arch/arm/mach-omap2/omap_hwmod_common_ipblock_data.c b/arch/arm/mach-omap2/omap_hwmod_common_ipblock_data.c new file mode 100644 index 000000000000..f21664da25a2 --- /dev/null +++ b/arch/arm/mach-omap2/omap_hwmod_common_ipblock_data.c | |||
@@ -0,0 +1,55 @@ | |||
1 | /* | ||
2 | * omap_hwmod_common_ipblock_data.c - common IP block data for OMAP2+ | ||
3 | * | ||
4 | * Copyright (C) 2011 Nokia Corporation | ||
5 | * Copyright (C) 2012 Texas Instruments, Inc. | ||
6 | * Paul Walmsley | ||
7 | * | ||
8 | * This program is free software; you can redistribute it and/or modify | ||
9 | * it under the terms of the GNU General Public License version 2 as | ||
10 | * published by the Free Software Foundation. | ||
11 | */ | ||
12 | |||
13 | #include "omap_hwmod.h" | ||
14 | #include "omap_hwmod_common_data.h" | ||
15 | |||
16 | /* | ||
17 | * 'dss' class | ||
18 | * display sub-system | ||
19 | */ | ||
20 | |||
21 | static struct omap_hwmod_class_sysconfig omap2_dss_sysc = { | ||
22 | .rev_offs = 0x0000, | ||
23 | .sysc_offs = 0x0010, | ||
24 | .syss_offs = 0x0014, | ||
25 | .sysc_flags = (SYSC_HAS_SOFTRESET | SYSC_HAS_AUTOIDLE | | ||
26 | SYSS_HAS_RESET_STATUS), | ||
27 | .sysc_fields = &omap_hwmod_sysc_type1, | ||
28 | }; | ||
29 | |||
30 | struct omap_hwmod_class omap2_dss_hwmod_class = { | ||
31 | .name = "dss", | ||
32 | .sysc = &omap2_dss_sysc, | ||
33 | .reset = omap_dss_reset, | ||
34 | }; | ||
35 | |||
36 | /* | ||
37 | * 'rfbi' class | ||
38 | * remote frame buffer interface | ||
39 | */ | ||
40 | |||
41 | static struct omap_hwmod_class_sysconfig omap2_rfbi_sysc = { | ||
42 | .rev_offs = 0x0000, | ||
43 | .sysc_offs = 0x0010, | ||
44 | .syss_offs = 0x0014, | ||
45 | .sysc_flags = (SYSC_HAS_SIDLEMODE | SYSC_HAS_SOFTRESET | | ||
46 | SYSC_HAS_AUTOIDLE), | ||
47 | .idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART), | ||
48 | .sysc_fields = &omap_hwmod_sysc_type1, | ||
49 | }; | ||
50 | |||
51 | struct omap_hwmod_class omap2_rfbi_hwmod_class = { | ||
52 | .name = "rfbi", | ||
53 | .sysc = &omap2_rfbi_sysc, | ||
54 | }; | ||
55 | |||
diff --git a/arch/arm/mach-omap2/prcm43xx.h b/arch/arm/mach-omap2/prcm43xx.h index 7785be984edd..ad7b3e9977f8 100644 --- a/arch/arm/mach-omap2/prcm43xx.h +++ b/arch/arm/mach-omap2/prcm43xx.h | |||
@@ -142,5 +142,6 @@ | |||
142 | #define AM43XX_CM_PER_USBPHYOCP2SCP0_CLKCTRL_OFFSET 0x05B8 | 142 | #define AM43XX_CM_PER_USBPHYOCP2SCP0_CLKCTRL_OFFSET 0x05B8 |
143 | #define AM43XX_CM_PER_USB_OTG_SS1_CLKCTRL_OFFSET 0x0268 | 143 | #define AM43XX_CM_PER_USB_OTG_SS1_CLKCTRL_OFFSET 0x0268 |
144 | #define AM43XX_CM_PER_USBPHYOCP2SCP1_CLKCTRL_OFFSET 0x05C0 | 144 | #define AM43XX_CM_PER_USBPHYOCP2SCP1_CLKCTRL_OFFSET 0x05C0 |
145 | #define AM43XX_CM_PER_DSS_CLKCTRL_OFFSET 0x0a20 | ||
145 | 146 | ||
146 | #endif | 147 | #endif |
diff --git a/arch/arm/mach-omap2/prm7xx.h b/arch/arm/mach-omap2/prm7xx.h index d92a8404edc7..4bb50fbf29be 100644 --- a/arch/arm/mach-omap2/prm7xx.h +++ b/arch/arm/mach-omap2/prm7xx.h | |||
@@ -374,6 +374,10 @@ | |||
374 | #define DRA7XX_RM_L3INIT_IEEE1500_2_OCP_CONTEXT_OFFSET 0x007c | 374 | #define DRA7XX_RM_L3INIT_IEEE1500_2_OCP_CONTEXT_OFFSET 0x007c |
375 | #define DRA7XX_PM_L3INIT_SATA_WKDEP_OFFSET 0x0088 | 375 | #define DRA7XX_PM_L3INIT_SATA_WKDEP_OFFSET 0x0088 |
376 | #define DRA7XX_RM_L3INIT_SATA_CONTEXT_OFFSET 0x008c | 376 | #define DRA7XX_RM_L3INIT_SATA_CONTEXT_OFFSET 0x008c |
377 | #define DRA7XX_PM_L3INIT_PCIESS1_WKDEP_OFFSET 0x00b0 | ||
378 | #define DRA7XX_RM_L3INIT_PCIESS1_CONTEXT_OFFSET 0x00b4 | ||
379 | #define DRA7XX_PM_L3INIT_PCIESS2_WKDEP_OFFSET 0x00b8 | ||
380 | #define DRA7XX_RM_L3INIT_PCIESS2_CONTEXT_OFFSET 0x00bc | ||
377 | #define DRA7XX_RM_GMAC_GMAC_CONTEXT_OFFSET 0x00d4 | 381 | #define DRA7XX_RM_GMAC_GMAC_CONTEXT_OFFSET 0x00d4 |
378 | #define DRA7XX_RM_L3INIT_OCP2SCP1_CONTEXT_OFFSET 0x00e4 | 382 | #define DRA7XX_RM_L3INIT_OCP2SCP1_CONTEXT_OFFSET 0x00e4 |
379 | #define DRA7XX_RM_L3INIT_OCP2SCP3_CONTEXT_OFFSET 0x00ec | 383 | #define DRA7XX_RM_L3INIT_OCP2SCP3_CONTEXT_OFFSET 0x00ec |