| .. | .. |
|---|
| 1 | +// SPDX-License-Identifier: GPL-2.0-only |
|---|
| 1 | 2 | /* |
|---|
| 2 | 3 | * omap_hwmod_2420_data.c - hardware modules present on the OMAP2420 chips |
|---|
| 3 | 4 | * |
|---|
| .. | .. |
|---|
| 5 | 6 | * Copyright (C) 2012 Texas Instruments, Inc. |
|---|
| 6 | 7 | * Paul Walmsley |
|---|
| 7 | 8 | * |
|---|
| 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 | 9 | * XXX handle crossbar/shared link difference for L3? |
|---|
| 13 | 10 | * XXX these should be marked initdata for multi-OMAP kernels |
|---|
| 14 | 11 | */ |
|---|
| 15 | 12 | |
|---|
| 16 | 13 | #include <linux/platform_data/i2c-omap.h> |
|---|
| 17 | | -#include <linux/omap-dma.h> |
|---|
| 18 | 14 | |
|---|
| 19 | 15 | #include "omap_hwmod.h" |
|---|
| 20 | 16 | #include "l3_2xxx.h" |
|---|
| .. | .. |
|---|
| 91 | 87 | static struct omap_hwmod_class i2c_class = { |
|---|
| 92 | 88 | .name = "i2c", |
|---|
| 93 | 89 | .sysc = &i2c_sysc, |
|---|
| 94 | | - .rev = OMAP_I2C_IP_VERSION_1, |
|---|
| 95 | 90 | .reset = &omap_i2c_reset, |
|---|
| 96 | 91 | }; |
|---|
| 97 | 92 | |
|---|
| .. | .. |
|---|
| 128 | 123 | }, |
|---|
| 129 | 124 | .class = &i2c_class, |
|---|
| 130 | 125 | .flags = HWMOD_16BIT_REG, |
|---|
| 131 | | -}; |
|---|
| 132 | | - |
|---|
| 133 | | -/* dma attributes */ |
|---|
| 134 | | -static struct omap_dma_dev_attr dma_dev_attr = { |
|---|
| 135 | | - .dev_caps = RESERVE_CHANNEL | DMA_LINKED_LCH | GLOBAL_PRIORITY | |
|---|
| 136 | | - IS_CSSA_32 | IS_CDSA_32, |
|---|
| 137 | | - .lch_count = 32, |
|---|
| 138 | | -}; |
|---|
| 139 | | - |
|---|
| 140 | | -static struct omap_hwmod omap2420_dma_system_hwmod = { |
|---|
| 141 | | - .name = "dma", |
|---|
| 142 | | - .class = &omap2xxx_dma_hwmod_class, |
|---|
| 143 | | - .main_clk = "core_l3_ck", |
|---|
| 144 | | - .dev_attr = &dma_dev_attr, |
|---|
| 145 | | - .flags = HWMOD_NO_IDLEST, |
|---|
| 146 | 126 | }; |
|---|
| 147 | 127 | |
|---|
| 148 | 128 | /* mailbox */ |
|---|
| .. | .. |
|---|
| 284 | 264 | .user = OCP_USER_MPU | OCP_USER_SDMA, |
|---|
| 285 | 265 | }; |
|---|
| 286 | 266 | |
|---|
| 287 | | -/* l4_wkup -> timer1 */ |
|---|
| 288 | | -static struct omap_hwmod_ocp_if omap2420_l4_wkup__timer1 = { |
|---|
| 289 | | - .master = &omap2xxx_l4_wkup_hwmod, |
|---|
| 290 | | - .slave = &omap2xxx_timer1_hwmod, |
|---|
| 291 | | - .clk = "gpt1_ick", |
|---|
| 292 | | - .user = OCP_USER_MPU | OCP_USER_SDMA, |
|---|
| 293 | | -}; |
|---|
| 294 | | - |
|---|
| 295 | 267 | /* l4_wkup -> wd_timer2 */ |
|---|
| 296 | 268 | static struct omap_hwmod_ocp_if omap2420_l4_wkup__wd_timer2 = { |
|---|
| 297 | 269 | .master = &omap2xxx_l4_wkup_hwmod, |
|---|
| .. | .. |
|---|
| 329 | 301 | .master = &omap2xxx_l4_wkup_hwmod, |
|---|
| 330 | 302 | .slave = &omap2xxx_gpio4_hwmod, |
|---|
| 331 | 303 | .clk = "gpios_ick", |
|---|
| 332 | | - .user = OCP_USER_MPU | OCP_USER_SDMA, |
|---|
| 333 | | -}; |
|---|
| 334 | | - |
|---|
| 335 | | -/* dma_system -> L3 */ |
|---|
| 336 | | -static struct omap_hwmod_ocp_if omap2420_dma_system__l3 = { |
|---|
| 337 | | - .master = &omap2420_dma_system_hwmod, |
|---|
| 338 | | - .slave = &omap2xxx_l3_main_hwmod, |
|---|
| 339 | | - .clk = "core_l3_ck", |
|---|
| 340 | | - .user = OCP_USER_MPU | OCP_USER_SDMA, |
|---|
| 341 | | -}; |
|---|
| 342 | | - |
|---|
| 343 | | -/* l4_core -> dma_system */ |
|---|
| 344 | | -static struct omap_hwmod_ocp_if omap2420_l4_core__dma_system = { |
|---|
| 345 | | - .master = &omap2xxx_l4_core_hwmod, |
|---|
| 346 | | - .slave = &omap2420_dma_system_hwmod, |
|---|
| 347 | | - .clk = "sdma_ick", |
|---|
| 348 | 304 | .user = OCP_USER_MPU | OCP_USER_SDMA, |
|---|
| 349 | 305 | }; |
|---|
| 350 | 306 | |
|---|
| .. | .. |
|---|
| 388 | 344 | .flags = OMAP_FIREWALL_L4 | OCPIF_SWSUP_IDLE, |
|---|
| 389 | 345 | }; |
|---|
| 390 | 346 | |
|---|
| 391 | | - |
|---|
| 392 | | -/* l4_wkup -> 32ksync_counter */ |
|---|
| 393 | | -static struct omap_hwmod_ocp_if omap2420_l4_wkup__counter_32k = { |
|---|
| 394 | | - .master = &omap2xxx_l4_wkup_hwmod, |
|---|
| 395 | | - .slave = &omap2xxx_counter_32k_hwmod, |
|---|
| 396 | | - .clk = "sync_32k_ick", |
|---|
| 397 | | - .user = OCP_USER_MPU | OCP_USER_SDMA, |
|---|
| 398 | | -}; |
|---|
| 399 | | - |
|---|
| 400 | 347 | static struct omap_hwmod_ocp_if omap2420_l3__gpmc = { |
|---|
| 401 | 348 | .master = &omap2xxx_l3_main_hwmod, |
|---|
| 402 | 349 | .slave = &omap2xxx_gpmc_hwmod, |
|---|
| .. | .. |
|---|
| 418 | 365 | &omap2420_l4_core__i2c2, |
|---|
| 419 | 366 | &omap2420_l3__iva, |
|---|
| 420 | 367 | &omap2420_l3__dsp, |
|---|
| 421 | | - &omap2420_l4_wkup__timer1, |
|---|
| 422 | | - &omap2xxx_l4_core__timer2, |
|---|
| 423 | 368 | &omap2xxx_l4_core__timer3, |
|---|
| 424 | 369 | &omap2xxx_l4_core__timer4, |
|---|
| 425 | 370 | &omap2xxx_l4_core__timer5, |
|---|
| .. | .. |
|---|
| 439 | 384 | &omap2420_l4_wkup__gpio2, |
|---|
| 440 | 385 | &omap2420_l4_wkup__gpio3, |
|---|
| 441 | 386 | &omap2420_l4_wkup__gpio4, |
|---|
| 442 | | - &omap2420_dma_system__l3, |
|---|
| 443 | | - &omap2420_l4_core__dma_system, |
|---|
| 444 | 387 | &omap2420_l4_core__mailbox, |
|---|
| 445 | 388 | &omap2420_l4_core__mcbsp1, |
|---|
| 446 | 389 | &omap2420_l4_core__mcbsp2, |
|---|
| .. | .. |
|---|
| 449 | 392 | &omap2xxx_l4_core__sham, |
|---|
| 450 | 393 | &omap2xxx_l4_core__aes, |
|---|
| 451 | 394 | &omap2420_l4_core__hdq1w, |
|---|
| 452 | | - &omap2420_l4_wkup__counter_32k, |
|---|
| 453 | 395 | &omap2420_l3__gpmc, |
|---|
| 454 | 396 | NULL, |
|---|
| 455 | 397 | }; |
|---|