Merge tag 'arm-dt-5.7' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc
Pull ARM devicetree updates from Arnd Bergmann: "Most of the commits are for additional hardware support and minor fixes for existing machines for all the usual platforms: qcom, amlogic, at91, gemini, mediatek, ti, socfpga, i.mx, layerscape, uniphier, rockchip, exynos, ux500, mvebu, tegra, stm32, renesas, sunxi, broadcom, omap, and versatile. The conversion of binding files to machine-readable yaml format continues, along with fixes found during the validation. Andre Przywara takes over maintainership for the old Calxeda Highbank platform and provides a number of updates. The OMAP2+ platforms see a continued move from platform data into dts files, for many devices that relied on a mix of auxiliary data in addition to the DT description A moderate number of new SoCs and machines are added, here is a full list: - Two new Qualcomm SoCs with their evaluation boards: Snapdragon 865 (SM8250) is the current high-end phone chip, and IPQ6018 is a new WiFi-6 router chip. - Mediatek MT8516 application processor SoC for voice assistants, along with the "pumpkin" development board - NXP i.MX8M Plus SoC, a variant of the popular i.MX8M, along with an evaluation board. - Kontron "sl28" board family based on NXP LS1028A - Eleven variations of the new i.MX6 TechNexion Pico board, combining the "dwarf", "hobbit", "nymph" and "pi" baseboards with i.MX6/i.MX7 SoM carriers - Three additional variants of the Toradex Colibri board family, all based on versions of the NXP i.MX7. - The Pinebook Pro laptop based on Rockchip RK3399 - Samsung S7710 Galaxy Xcover 2, a 2013 vintage Android phone based on the ST-Ericsson u8500 platform - DH Electronics DHCOM SoM and PDK2 rev. 400 carrier based on STMicroelectronics stm32mp157 - Renesas M3ULCB starter kit for R-Car M3-W+ - Hoperun HiHope development board with Renesas RZ/G2M - Pine64 PineTab tablet and PinePhone phone, both based on Allwinner A64 - Linutronix Testbox v2 for the Lamobo R1 router, based on Allwinner A20 - PocketBook Touch Lux 3 ebook reader, based on Allwinner A13" * tag 'arm-dt-5.7' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (520 commits) ARM: dts: ux500: Fix missing node renames arm64: dts: Revert "specify console via command line" MAINTAINERS: Update Calxeda Highbank maintainership arm: dts: calxeda: Group port-phys and sgpio-gpio items arm: dts: calxeda: Fix interrupt grouping arm: dts: calxeda: Provide UART clock arm: dts: calxeda: Basic DT file fixes arm64: dts: specify console via command line ARM: dts: at91: sama5d27_wlsom1_ek: add USB device node ARM: dts: gemini: Add thermal zone to DIR-685 ARM: dts: gemini: Rename IDE nodes ARM: socfpga: arria10: Add ptp_ref clock to ethernet nodes arm64: dts: ti: k3-j721e-mcu: add scm node and phy-gmii-sel nodes arm64: dts: ti: k3-am65-mcu: add phy-gmii-sel node arm64: dts: ti: k3-am65-mcu: Add DMA entries for ADC arm64: dts: ti: k3-am65-main: Add DMA entries for main_spi0 arm64: dts: ti: k3-j721e-mcu-wakeup: Add DMA entries for ADC arm64: dts: ti: k3-am65: Add clocks to dwc3 nodes arm64: dts: meson-g12b-odroid-n2: add SPIFC controller node arm64: dts: khadas-vim3: add SPIFC controller node ...
This commit is contained in:
@@ -24,16 +24,11 @@ extern struct omap_hwmod_ocp_if am33xx_l3_s__l4_wkup;
|
||||
extern struct omap_hwmod_ocp_if am33xx_l3_main__l3_instr;
|
||||
extern struct omap_hwmod_ocp_if am33xx_mpu__prcm;
|
||||
extern struct omap_hwmod_ocp_if am33xx_l3_s__l3_main;
|
||||
extern struct omap_hwmod_ocp_if am33xx_pruss__l3_main;
|
||||
extern struct omap_hwmod_ocp_if am33xx_gfx__l3_main;
|
||||
extern struct omap_hwmod_ocp_if am33xx_l3_main__gfx;
|
||||
extern struct omap_hwmod_ocp_if am33xx_l4_wkup__rtc;
|
||||
extern struct omap_hwmod_ocp_if am33xx_l3_s__gpmc;
|
||||
extern struct omap_hwmod_ocp_if am33xx_l4_ls__timer2;
|
||||
extern struct omap_hwmod_ocp_if am33xx_l3_main__tpcc;
|
||||
extern struct omap_hwmod_ocp_if am33xx_l3_main__tptc0;
|
||||
extern struct omap_hwmod_ocp_if am33xx_l3_main__tptc1;
|
||||
extern struct omap_hwmod_ocp_if am33xx_l3_main__tptc2;
|
||||
extern struct omap_hwmod_ocp_if am33xx_l3_main__ocmc;
|
||||
|
||||
extern struct omap_hwmod am33xx_l3_main_hwmod;
|
||||
@@ -42,7 +37,6 @@ extern struct omap_hwmod am33xx_l3_instr_hwmod;
|
||||
extern struct omap_hwmod am33xx_l4_ls_hwmod;
|
||||
extern struct omap_hwmod am33xx_l4_wkup_hwmod;
|
||||
extern struct omap_hwmod am33xx_mpu_hwmod;
|
||||
extern struct omap_hwmod am33xx_pruss_hwmod;
|
||||
extern struct omap_hwmod am33xx_gfx_hwmod;
|
||||
extern struct omap_hwmod am33xx_prcm_hwmod;
|
||||
extern struct omap_hwmod am33xx_ocmcram_hwmod;
|
||||
@@ -52,10 +46,6 @@ extern struct omap_hwmod am33xx_gpmc_hwmod;
|
||||
extern struct omap_hwmod am33xx_rtc_hwmod;
|
||||
extern struct omap_hwmod am33xx_timer1_hwmod;
|
||||
extern struct omap_hwmod am33xx_timer2_hwmod;
|
||||
extern struct omap_hwmod am33xx_tpcc_hwmod;
|
||||
extern struct omap_hwmod am33xx_tptc0_hwmod;
|
||||
extern struct omap_hwmod am33xx_tptc1_hwmod;
|
||||
extern struct omap_hwmod am33xx_tptc2_hwmod;
|
||||
|
||||
extern struct omap_hwmod_class am33xx_emif_hwmod_class;
|
||||
extern struct omap_hwmod_class am33xx_l4_hwmod_class;
|
||||
|
@@ -74,14 +74,6 @@ struct omap_hwmod_ocp_if am33xx_l3_s__l3_main = {
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* pru-icss -> l3 main */
|
||||
struct omap_hwmod_ocp_if am33xx_pruss__l3_main = {
|
||||
.master = &am33xx_pruss_hwmod,
|
||||
.slave = &am33xx_l3_main_hwmod,
|
||||
.clk = "l3_gclk",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* gfx -> l3 main */
|
||||
struct omap_hwmod_ocp_if am33xx_gfx__l3_main = {
|
||||
.master = &am33xx_gfx_hwmod,
|
||||
@@ -122,38 +114,6 @@ struct omap_hwmod_ocp_if am33xx_l4_ls__timer2 = {
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
/* l3 main -> tpcc */
|
||||
struct omap_hwmod_ocp_if am33xx_l3_main__tpcc = {
|
||||
.master = &am33xx_l3_main_hwmod,
|
||||
.slave = &am33xx_tpcc_hwmod,
|
||||
.clk = "l3_gclk",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
/* l3 main -> tpcc0 */
|
||||
struct omap_hwmod_ocp_if am33xx_l3_main__tptc0 = {
|
||||
.master = &am33xx_l3_main_hwmod,
|
||||
.slave = &am33xx_tptc0_hwmod,
|
||||
.clk = "l3_gclk",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
/* l3 main -> tpcc1 */
|
||||
struct omap_hwmod_ocp_if am33xx_l3_main__tptc1 = {
|
||||
.master = &am33xx_l3_main_hwmod,
|
||||
.slave = &am33xx_tptc1_hwmod,
|
||||
.clk = "l3_gclk",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
/* l3 main -> tpcc2 */
|
||||
struct omap_hwmod_ocp_if am33xx_l3_main__tptc2 = {
|
||||
.master = &am33xx_l3_main_hwmod,
|
||||
.slave = &am33xx_tptc2_hwmod,
|
||||
.clk = "l3_gclk",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
/* l3 main -> ocmc */
|
||||
struct omap_hwmod_ocp_if am33xx_l3_main__ocmc = {
|
||||
.master = &am33xx_l3_main_hwmod,
|
||||
|
@@ -133,34 +133,6 @@ struct omap_hwmod_class am33xx_wkup_m3_hwmod_class = {
|
||||
.name = "wkup_m3",
|
||||
};
|
||||
|
||||
/*
|
||||
* 'pru-icss' class
|
||||
* Programmable Real-Time Unit and Industrial Communication Subsystem
|
||||
*/
|
||||
static struct omap_hwmod_class am33xx_pruss_hwmod_class = {
|
||||
.name = "pruss",
|
||||
};
|
||||
|
||||
static struct omap_hwmod_rst_info am33xx_pruss_resets[] = {
|
||||
{ .name = "pruss", .rst_shift = 1 },
|
||||
};
|
||||
|
||||
/* pru-icss */
|
||||
/* Pseudo hwmod for reset control purpose only */
|
||||
struct omap_hwmod am33xx_pruss_hwmod = {
|
||||
.name = "pruss",
|
||||
.class = &am33xx_pruss_hwmod_class,
|
||||
.clkdm_name = "pruss_ocp_clkdm",
|
||||
.main_clk = "pruss_ocp_gclk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.modulemode = MODULEMODE_SWCTRL,
|
||||
},
|
||||
},
|
||||
.rst_lines = am33xx_pruss_resets,
|
||||
.rst_lines_cnt = ARRAY_SIZE(am33xx_pruss_resets),
|
||||
};
|
||||
|
||||
/* gfx */
|
||||
/* Pseudo hwmod for reset control purpose only */
|
||||
static struct omap_hwmod_class am33xx_gfx_hwmod_class = {
|
||||
@@ -393,80 +365,6 @@ struct omap_hwmod am33xx_timer2_hwmod = {
|
||||
},
|
||||
};
|
||||
|
||||
/* tpcc */
|
||||
static struct omap_hwmod_class am33xx_tpcc_hwmod_class = {
|
||||
.name = "tpcc",
|
||||
};
|
||||
|
||||
struct omap_hwmod am33xx_tpcc_hwmod = {
|
||||
.name = "tpcc",
|
||||
.class = &am33xx_tpcc_hwmod_class,
|
||||
.clkdm_name = "l3_clkdm",
|
||||
.main_clk = "l3_gclk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.modulemode = MODULEMODE_SWCTRL,
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class_sysconfig am33xx_tptc_sysc = {
|
||||
.rev_offs = 0x0,
|
||||
.sysc_offs = 0x10,
|
||||
.sysc_flags = (SYSC_HAS_SIDLEMODE | SYSC_HAS_SOFTRESET |
|
||||
SYSC_HAS_MIDLEMODE),
|
||||
.idlemodes = (SIDLE_FORCE | SIDLE_SMART | MSTANDBY_FORCE),
|
||||
.sysc_fields = &omap_hwmod_sysc_type2,
|
||||
};
|
||||
|
||||
/* 'tptc' class */
|
||||
static struct omap_hwmod_class am33xx_tptc_hwmod_class = {
|
||||
.name = "tptc",
|
||||
.sysc = &am33xx_tptc_sysc,
|
||||
};
|
||||
|
||||
/* tptc0 */
|
||||
struct omap_hwmod am33xx_tptc0_hwmod = {
|
||||
.name = "tptc0",
|
||||
.class = &am33xx_tptc_hwmod_class,
|
||||
.clkdm_name = "l3_clkdm",
|
||||
.flags = HWMOD_SWSUP_SIDLE | HWMOD_SWSUP_MSTANDBY,
|
||||
.main_clk = "l3_gclk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.modulemode = MODULEMODE_SWCTRL,
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
/* tptc1 */
|
||||
struct omap_hwmod am33xx_tptc1_hwmod = {
|
||||
.name = "tptc1",
|
||||
.class = &am33xx_tptc_hwmod_class,
|
||||
.clkdm_name = "l3_clkdm",
|
||||
.flags = (HWMOD_SWSUP_SIDLE | HWMOD_SWSUP_MSTANDBY),
|
||||
.main_clk = "l3_gclk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.modulemode = MODULEMODE_SWCTRL,
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
/* tptc2 */
|
||||
struct omap_hwmod am33xx_tptc2_hwmod = {
|
||||
.name = "tptc2",
|
||||
.class = &am33xx_tptc_hwmod_class,
|
||||
.clkdm_name = "l3_clkdm",
|
||||
.flags = (HWMOD_SWSUP_SIDLE | HWMOD_SWSUP_MSTANDBY),
|
||||
.main_clk = "l3_gclk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.modulemode = MODULEMODE_SWCTRL,
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
static void omap_hwmod_am33xx_clkctrl(void)
|
||||
{
|
||||
CLKCTRL(am33xx_timer2_hwmod, AM33XX_CM_PER_TIMER2_CLKCTRL_OFFSET);
|
||||
@@ -481,12 +379,7 @@ static void omap_hwmod_am33xx_clkctrl(void)
|
||||
CLKCTRL(am33xx_l4_ls_hwmod, AM33XX_CM_PER_L4LS_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_l4_wkup_hwmod, AM33XX_CM_WKUP_L4WKUP_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_l3_main_hwmod, AM33XX_CM_PER_L3_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_tpcc_hwmod, AM33XX_CM_PER_TPCC_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_tptc0_hwmod, AM33XX_CM_PER_TPTC0_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_tptc1_hwmod, AM33XX_CM_PER_TPTC1_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_tptc2_hwmod, AM33XX_CM_PER_TPTC2_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_gfx_hwmod, AM33XX_CM_GFX_GFX_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_pruss_hwmod, AM33XX_CM_PER_PRUSS_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_mpu_hwmod , AM33XX_CM_MPU_MPU_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_l3_instr_hwmod , AM33XX_CM_PER_L3_INSTR_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_ocmcram_hwmod , AM33XX_CM_PER_OCMCRAM_CLKCTRL_OFFSET);
|
||||
@@ -494,7 +387,6 @@ static void omap_hwmod_am33xx_clkctrl(void)
|
||||
|
||||
static void omap_hwmod_am33xx_rst(void)
|
||||
{
|
||||
RSTCTRL(am33xx_pruss_hwmod, AM33XX_RM_PER_RSTCTRL_OFFSET);
|
||||
RSTCTRL(am33xx_gfx_hwmod, AM33XX_RM_GFX_RSTCTRL_OFFSET);
|
||||
RSTST(am33xx_gfx_hwmod, AM33XX_RM_GFX_RSTST_OFFSET);
|
||||
}
|
||||
@@ -518,12 +410,7 @@ static void omap_hwmod_am43xx_clkctrl(void)
|
||||
CLKCTRL(am33xx_l4_ls_hwmod, AM43XX_CM_PER_L4LS_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_l4_wkup_hwmod, AM43XX_CM_WKUP_L4WKUP_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_l3_main_hwmod, AM43XX_CM_PER_L3_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_tpcc_hwmod, AM43XX_CM_PER_TPCC_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_tptc0_hwmod, AM43XX_CM_PER_TPTC0_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_tptc1_hwmod, AM43XX_CM_PER_TPTC1_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_tptc2_hwmod, AM43XX_CM_PER_TPTC2_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_gfx_hwmod, AM43XX_CM_GFX_GFX_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_pruss_hwmod, AM43XX_CM_PER_PRUSS_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_mpu_hwmod , AM43XX_CM_MPU_MPU_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_l3_instr_hwmod , AM43XX_CM_PER_L3_INSTR_CLKCTRL_OFFSET);
|
||||
CLKCTRL(am33xx_ocmcram_hwmod , AM43XX_CM_PER_OCMCRAM_CLKCTRL_OFFSET);
|
||||
@@ -531,9 +418,7 @@ static void omap_hwmod_am43xx_clkctrl(void)
|
||||
|
||||
static void omap_hwmod_am43xx_rst(void)
|
||||
{
|
||||
RSTCTRL(am33xx_pruss_hwmod, AM43XX_RM_PER_RSTCTRL_OFFSET);
|
||||
RSTCTRL(am33xx_gfx_hwmod, AM43XX_RM_GFX_RSTCTRL_OFFSET);
|
||||
RSTST(am33xx_pruss_hwmod, AM43XX_RM_PER_RSTST_OFFSET);
|
||||
RSTST(am33xx_gfx_hwmod, AM43XX_RM_GFX_RSTST_OFFSET);
|
||||
}
|
||||
|
||||
|
@@ -233,14 +233,6 @@ static struct omap_hwmod_ocp_if am33xx_l4_wkup__wkup_m3 = {
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l4 hs -> pru-icss */
|
||||
static struct omap_hwmod_ocp_if am33xx_l4_hs__pruss = {
|
||||
.master = &am33xx_l4_hs_hwmod,
|
||||
.slave = &am33xx_pruss_hwmod,
|
||||
.clk = "dpll_core_m4_ck",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l3_main -> debugss */
|
||||
static struct omap_hwmod_ocp_if am33xx_l3_main__debugss = {
|
||||
.master = &am33xx_l3_main_hwmod,
|
||||
@@ -292,7 +284,6 @@ static struct omap_hwmod_ocp_if *am33xx_hwmod_ocp_ifs[] __initdata = {
|
||||
&am33xx_l3_main__l3_instr,
|
||||
&am33xx_l3_main__gfx,
|
||||
&am33xx_l3_s__l3_main,
|
||||
&am33xx_pruss__l3_main,
|
||||
&am33xx_wkup_m3__l4_wkup,
|
||||
&am33xx_gfx__l3_main,
|
||||
&am33xx_l3_main__debugss,
|
||||
@@ -302,13 +293,8 @@ static struct omap_hwmod_ocp_if *am33xx_hwmod_ocp_ifs[] __initdata = {
|
||||
&am33xx_l4_wkup__smartreflex1,
|
||||
&am33xx_l4_wkup__timer1,
|
||||
&am33xx_l4_wkup__rtc,
|
||||
&am33xx_l4_hs__pruss,
|
||||
&am33xx_l4_ls__timer2,
|
||||
&am33xx_l3_main__tpcc,
|
||||
&am33xx_l3_s__gpmc,
|
||||
&am33xx_l3_main__tptc0,
|
||||
&am33xx_l3_main__tptc1,
|
||||
&am33xx_l3_main__tptc2,
|
||||
&am33xx_l3_main__ocmc,
|
||||
NULL,
|
||||
};
|
||||
|
@@ -156,75 +156,6 @@ static struct omap_hwmod am43xx_usb_otg_ss1_hwmod = {
|
||||
},
|
||||
};
|
||||
|
||||
/* dss */
|
||||
|
||||
static struct omap_hwmod am43xx_dss_core_hwmod = {
|
||||
.name = "dss_core",
|
||||
.class = &omap2_dss_hwmod_class,
|
||||
.clkdm_name = "dss_clkdm",
|
||||
.main_clk = "disp_clk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = AM43XX_CM_PER_DSS_CLKCTRL_OFFSET,
|
||||
.modulemode = MODULEMODE_SWCTRL,
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
/* dispc */
|
||||
|
||||
static struct omap_dss_dispc_dev_attr am43xx_dss_dispc_dev_attr = {
|
||||
.manager_count = 1,
|
||||
.has_framedonetv_irq = 0
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class_sysconfig am43xx_dispc_sysc = {
|
||||
.rev_offs = 0x0000,
|
||||
.sysc_offs = 0x0010,
|
||||
.syss_offs = 0x0014,
|
||||
.sysc_flags = (SYSC_HAS_AUTOIDLE | SYSC_HAS_SOFTRESET |
|
||||
SYSC_HAS_ENAWAKEUP | SYSC_HAS_SIDLEMODE |
|
||||
SYSC_HAS_CLOCKACTIVITY | SYSC_HAS_MIDLEMODE),
|
||||
.idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
|
||||
MSTANDBY_FORCE | MSTANDBY_NO | MSTANDBY_SMART),
|
||||
.sysc_fields = &omap_hwmod_sysc_type1,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class am43xx_dispc_hwmod_class = {
|
||||
.name = "dispc",
|
||||
.sysc = &am43xx_dispc_sysc,
|
||||
};
|
||||
|
||||
static struct omap_hwmod am43xx_dss_dispc_hwmod = {
|
||||
.name = "dss_dispc",
|
||||
.class = &am43xx_dispc_hwmod_class,
|
||||
.clkdm_name = "dss_clkdm",
|
||||
.main_clk = "disp_clk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = AM43XX_CM_PER_DSS_CLKCTRL_OFFSET,
|
||||
},
|
||||
},
|
||||
.dev_attr = &am43xx_dss_dispc_dev_attr,
|
||||
.parent_hwmod = &am43xx_dss_core_hwmod,
|
||||
};
|
||||
|
||||
/* rfbi */
|
||||
|
||||
static struct omap_hwmod am43xx_dss_rfbi_hwmod = {
|
||||
.name = "dss_rfbi",
|
||||
.class = &omap2_rfbi_hwmod_class,
|
||||
.clkdm_name = "dss_clkdm",
|
||||
.main_clk = "disp_clk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = AM43XX_CM_PER_DSS_CLKCTRL_OFFSET,
|
||||
},
|
||||
},
|
||||
.parent_hwmod = &am43xx_dss_core_hwmod,
|
||||
};
|
||||
|
||||
|
||||
/* Interfaces */
|
||||
static struct omap_hwmod_ocp_if am43xx_l3_main__emif = {
|
||||
.master = &am33xx_l3_main_hwmod,
|
||||
@@ -254,13 +185,6 @@ static struct omap_hwmod_ocp_if am43xx_l4_wkup__wkup_m3 = {
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_ocp_if am43xx_l3_main__pruss = {
|
||||
.master = &am33xx_l3_main_hwmod,
|
||||
.slave = &am33xx_pruss_hwmod,
|
||||
.clk = "dpll_core_m4_ck",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_ocp_if am43xx_l4_wkup__smartreflex0 = {
|
||||
.master = &am33xx_l4_wkup_hwmod,
|
||||
.slave = &am33xx_smartreflex0_hwmod,
|
||||
@@ -310,37 +234,8 @@ static struct omap_hwmod_ocp_if am43xx_l3_s__usbotgss1 = {
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_ocp_if am43xx_dss__l3_main = {
|
||||
.master = &am43xx_dss_core_hwmod,
|
||||
.slave = &am33xx_l3_main_hwmod,
|
||||
.clk = "l3_gclk",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_ocp_if am43xx_l4_ls__dss = {
|
||||
.master = &am33xx_l4_ls_hwmod,
|
||||
.slave = &am43xx_dss_core_hwmod,
|
||||
.clk = "l4ls_gclk",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_ocp_if am43xx_l4_ls__dss_dispc = {
|
||||
.master = &am33xx_l4_ls_hwmod,
|
||||
.slave = &am43xx_dss_dispc_hwmod,
|
||||
.clk = "l4ls_gclk",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_ocp_if am43xx_l4_ls__dss_rfbi = {
|
||||
.master = &am33xx_l4_ls_hwmod,
|
||||
.slave = &am43xx_dss_rfbi_hwmod,
|
||||
.clk = "l4ls_gclk",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_ocp_if *am43xx_hwmod_ocp_ifs[] __initdata = {
|
||||
&am33xx_l4_wkup__synctimer,
|
||||
&am43xx_l3_main__pruss,
|
||||
&am33xx_mpu__l3_main,
|
||||
&am33xx_mpu__prcm,
|
||||
&am33xx_l3_s__l4_ls,
|
||||
@@ -351,7 +246,6 @@ static struct omap_hwmod_ocp_if *am43xx_hwmod_ocp_ifs[] __initdata = {
|
||||
&am33xx_l3_main__gfx,
|
||||
&am33xx_l3_s__l3_main,
|
||||
&am43xx_l3_main__emif,
|
||||
&am33xx_pruss__l3_main,
|
||||
&am43xx_wkup_m3__l4_wkup,
|
||||
&am33xx_gfx__l3_main,
|
||||
&am43xx_l4_wkup__wkup_m3,
|
||||
@@ -360,18 +254,10 @@ static struct omap_hwmod_ocp_if *am43xx_hwmod_ocp_ifs[] __initdata = {
|
||||
&am43xx_l4_wkup__smartreflex1,
|
||||
&am43xx_l4_wkup__timer1,
|
||||
&am33xx_l4_ls__timer2,
|
||||
&am33xx_l3_main__tpcc,
|
||||
&am33xx_l3_s__gpmc,
|
||||
&am33xx_l3_main__tptc0,
|
||||
&am33xx_l3_main__tptc1,
|
||||
&am33xx_l3_main__tptc2,
|
||||
&am33xx_l3_main__ocmc,
|
||||
&am43xx_l3_s__usbotgss0,
|
||||
&am43xx_l3_s__usbotgss1,
|
||||
&am43xx_dss__l3_main,
|
||||
&am43xx_l4_ls__dss,
|
||||
&am43xx_l4_ls__dss_dispc,
|
||||
&am43xx_l4_ls__dss_rfbi,
|
||||
NULL,
|
||||
};
|
||||
|
||||
|
@@ -355,306 +355,6 @@ static struct omap_hwmod omap44xx_debugss_hwmod = {
|
||||
},
|
||||
};
|
||||
|
||||
/*
|
||||
* 'dsp' class
|
||||
* dsp sub-system
|
||||
*/
|
||||
|
||||
static struct omap_hwmod_class omap44xx_dsp_hwmod_class = {
|
||||
.name = "dsp",
|
||||
};
|
||||
|
||||
/* dsp */
|
||||
static struct omap_hwmod_rst_info omap44xx_dsp_resets[] = {
|
||||
{ .name = "dsp", .rst_shift = 0 },
|
||||
};
|
||||
|
||||
static struct omap_hwmod omap44xx_dsp_hwmod = {
|
||||
.name = "dsp",
|
||||
.class = &omap44xx_dsp_hwmod_class,
|
||||
.clkdm_name = "tesla_clkdm",
|
||||
.rst_lines = omap44xx_dsp_resets,
|
||||
.rst_lines_cnt = ARRAY_SIZE(omap44xx_dsp_resets),
|
||||
.main_clk = "dpll_iva_m4x2_ck",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = OMAP4_CM_TESLA_TESLA_CLKCTRL_OFFSET,
|
||||
.rstctrl_offs = OMAP4_RM_TESLA_RSTCTRL_OFFSET,
|
||||
.context_offs = OMAP4_RM_TESLA_TESLA_CONTEXT_OFFSET,
|
||||
.modulemode = MODULEMODE_HWCTRL,
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
/*
|
||||
* 'dss' class
|
||||
* display sub-system
|
||||
*/
|
||||
|
||||
static struct omap_hwmod_class_sysconfig omap44xx_dss_sysc = {
|
||||
.rev_offs = 0x0000,
|
||||
.syss_offs = 0x0014,
|
||||
.sysc_flags = SYSS_HAS_RESET_STATUS,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class omap44xx_dss_hwmod_class = {
|
||||
.name = "dss",
|
||||
.sysc = &omap44xx_dss_sysc,
|
||||
.reset = omap_dss_reset,
|
||||
};
|
||||
|
||||
/* dss */
|
||||
static struct omap_hwmod_opt_clk dss_opt_clks[] = {
|
||||
{ .role = "sys_clk", .clk = "dss_sys_clk" },
|
||||
{ .role = "tv_clk", .clk = "dss_tv_clk" },
|
||||
{ .role = "hdmi_clk", .clk = "dss_48mhz_clk" },
|
||||
};
|
||||
|
||||
static struct omap_hwmod omap44xx_dss_hwmod = {
|
||||
.name = "dss_core",
|
||||
.flags = HWMOD_CONTROL_OPT_CLKS_IN_RESET,
|
||||
.class = &omap44xx_dss_hwmod_class,
|
||||
.clkdm_name = "l3_dss_clkdm",
|
||||
.main_clk = "dss_dss_clk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = OMAP4_CM_DSS_DSS_CLKCTRL_OFFSET,
|
||||
.context_offs = OMAP4_RM_DSS_DSS_CONTEXT_OFFSET,
|
||||
.modulemode = MODULEMODE_SWCTRL,
|
||||
},
|
||||
},
|
||||
.opt_clks = dss_opt_clks,
|
||||
.opt_clks_cnt = ARRAY_SIZE(dss_opt_clks),
|
||||
};
|
||||
|
||||
/*
|
||||
* 'dispc' class
|
||||
* display controller
|
||||
*/
|
||||
|
||||
static struct omap_hwmod_class_sysconfig omap44xx_dispc_sysc = {
|
||||
.rev_offs = 0x0000,
|
||||
.sysc_offs = 0x0010,
|
||||
.syss_offs = 0x0014,
|
||||
.sysc_flags = (SYSC_HAS_AUTOIDLE | SYSC_HAS_CLOCKACTIVITY |
|
||||
SYSC_HAS_ENAWAKEUP | SYSC_HAS_MIDLEMODE |
|
||||
SYSC_HAS_SIDLEMODE | SYSC_HAS_SOFTRESET |
|
||||
SYSS_HAS_RESET_STATUS),
|
||||
.idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
|
||||
MSTANDBY_FORCE | MSTANDBY_NO | MSTANDBY_SMART),
|
||||
.sysc_fields = &omap_hwmod_sysc_type1,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class omap44xx_dispc_hwmod_class = {
|
||||
.name = "dispc",
|
||||
.sysc = &omap44xx_dispc_sysc,
|
||||
};
|
||||
|
||||
/* dss_dispc */
|
||||
static struct omap_dss_dispc_dev_attr omap44xx_dss_dispc_dev_attr = {
|
||||
.manager_count = 3,
|
||||
.has_framedonetv_irq = 1
|
||||
};
|
||||
|
||||
static struct omap_hwmod omap44xx_dss_dispc_hwmod = {
|
||||
.name = "dss_dispc",
|
||||
.class = &omap44xx_dispc_hwmod_class,
|
||||
.clkdm_name = "l3_dss_clkdm",
|
||||
.main_clk = "dss_dss_clk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = OMAP4_CM_DSS_DSS_CLKCTRL_OFFSET,
|
||||
.context_offs = OMAP4_RM_DSS_DSS_CONTEXT_OFFSET,
|
||||
},
|
||||
},
|
||||
.dev_attr = &omap44xx_dss_dispc_dev_attr,
|
||||
.parent_hwmod = &omap44xx_dss_hwmod,
|
||||
};
|
||||
|
||||
/*
|
||||
* 'dsi' class
|
||||
* display serial interface controller
|
||||
*/
|
||||
|
||||
static struct omap_hwmod_class_sysconfig omap44xx_dsi_sysc = {
|
||||
.rev_offs = 0x0000,
|
||||
.sysc_offs = 0x0010,
|
||||
.syss_offs = 0x0014,
|
||||
.sysc_flags = (SYSC_HAS_AUTOIDLE | SYSC_HAS_CLOCKACTIVITY |
|
||||
SYSC_HAS_ENAWAKEUP | SYSC_HAS_SIDLEMODE |
|
||||
SYSC_HAS_SOFTRESET | SYSS_HAS_RESET_STATUS),
|
||||
.idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART),
|
||||
.sysc_fields = &omap_hwmod_sysc_type1,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class omap44xx_dsi_hwmod_class = {
|
||||
.name = "dsi",
|
||||
.sysc = &omap44xx_dsi_sysc,
|
||||
};
|
||||
|
||||
/* dss_dsi1 */
|
||||
static struct omap_hwmod_opt_clk dss_dsi1_opt_clks[] = {
|
||||
{ .role = "sys_clk", .clk = "dss_sys_clk" },
|
||||
};
|
||||
|
||||
static struct omap_hwmod omap44xx_dss_dsi1_hwmod = {
|
||||
.name = "dss_dsi1",
|
||||
.class = &omap44xx_dsi_hwmod_class,
|
||||
.clkdm_name = "l3_dss_clkdm",
|
||||
.main_clk = "dss_dss_clk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = OMAP4_CM_DSS_DSS_CLKCTRL_OFFSET,
|
||||
.context_offs = OMAP4_RM_DSS_DSS_CONTEXT_OFFSET,
|
||||
},
|
||||
},
|
||||
.opt_clks = dss_dsi1_opt_clks,
|
||||
.opt_clks_cnt = ARRAY_SIZE(dss_dsi1_opt_clks),
|
||||
.parent_hwmod = &omap44xx_dss_hwmod,
|
||||
};
|
||||
|
||||
/* dss_dsi2 */
|
||||
static struct omap_hwmod_opt_clk dss_dsi2_opt_clks[] = {
|
||||
{ .role = "sys_clk", .clk = "dss_sys_clk" },
|
||||
};
|
||||
|
||||
static struct omap_hwmod omap44xx_dss_dsi2_hwmod = {
|
||||
.name = "dss_dsi2",
|
||||
.class = &omap44xx_dsi_hwmod_class,
|
||||
.clkdm_name = "l3_dss_clkdm",
|
||||
.main_clk = "dss_dss_clk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = OMAP4_CM_DSS_DSS_CLKCTRL_OFFSET,
|
||||
.context_offs = OMAP4_RM_DSS_DSS_CONTEXT_OFFSET,
|
||||
},
|
||||
},
|
||||
.opt_clks = dss_dsi2_opt_clks,
|
||||
.opt_clks_cnt = ARRAY_SIZE(dss_dsi2_opt_clks),
|
||||
.parent_hwmod = &omap44xx_dss_hwmod,
|
||||
};
|
||||
|
||||
/*
|
||||
* 'hdmi' class
|
||||
* hdmi controller
|
||||
*/
|
||||
|
||||
static struct omap_hwmod_class_sysconfig omap44xx_hdmi_sysc = {
|
||||
.rev_offs = 0x0000,
|
||||
.sysc_offs = 0x0010,
|
||||
.sysc_flags = (SYSC_HAS_RESET_STATUS | SYSC_HAS_SIDLEMODE |
|
||||
SYSC_HAS_SOFTRESET),
|
||||
.idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
|
||||
SIDLE_SMART_WKUP),
|
||||
.sysc_fields = &omap_hwmod_sysc_type2,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class omap44xx_hdmi_hwmod_class = {
|
||||
.name = "hdmi",
|
||||
.sysc = &omap44xx_hdmi_sysc,
|
||||
};
|
||||
|
||||
/* dss_hdmi */
|
||||
static struct omap_hwmod_opt_clk dss_hdmi_opt_clks[] = {
|
||||
{ .role = "sys_clk", .clk = "dss_sys_clk" },
|
||||
{ .role = "hdmi_clk", .clk = "dss_48mhz_clk" },
|
||||
};
|
||||
|
||||
static struct omap_hwmod omap44xx_dss_hdmi_hwmod = {
|
||||
.name = "dss_hdmi",
|
||||
.class = &omap44xx_hdmi_hwmod_class,
|
||||
.clkdm_name = "l3_dss_clkdm",
|
||||
/*
|
||||
* HDMI audio requires to use no-idle mode. Hence,
|
||||
* set idle mode by software.
|
||||
*/
|
||||
.flags = HWMOD_SWSUP_SIDLE | HWMOD_OPT_CLKS_NEEDED,
|
||||
.main_clk = "dss_48mhz_clk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = OMAP4_CM_DSS_DSS_CLKCTRL_OFFSET,
|
||||
.context_offs = OMAP4_RM_DSS_DSS_CONTEXT_OFFSET,
|
||||
},
|
||||
},
|
||||
.opt_clks = dss_hdmi_opt_clks,
|
||||
.opt_clks_cnt = ARRAY_SIZE(dss_hdmi_opt_clks),
|
||||
.parent_hwmod = &omap44xx_dss_hwmod,
|
||||
};
|
||||
|
||||
/*
|
||||
* 'rfbi' class
|
||||
* remote frame buffer interface
|
||||
*/
|
||||
|
||||
static struct omap_hwmod_class_sysconfig omap44xx_rfbi_sysc = {
|
||||
.rev_offs = 0x0000,
|
||||
.sysc_offs = 0x0010,
|
||||
.syss_offs = 0x0014,
|
||||
.sysc_flags = (SYSC_HAS_AUTOIDLE | SYSC_HAS_SIDLEMODE |
|
||||
SYSC_HAS_SOFTRESET | SYSS_HAS_RESET_STATUS),
|
||||
.idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART),
|
||||
.sysc_fields = &omap_hwmod_sysc_type1,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class omap44xx_rfbi_hwmod_class = {
|
||||
.name = "rfbi",
|
||||
.sysc = &omap44xx_rfbi_sysc,
|
||||
};
|
||||
|
||||
/* dss_rfbi */
|
||||
static struct omap_hwmod_opt_clk dss_rfbi_opt_clks[] = {
|
||||
{ .role = "ick", .clk = "l3_div_ck" },
|
||||
};
|
||||
|
||||
static struct omap_hwmod omap44xx_dss_rfbi_hwmod = {
|
||||
.name = "dss_rfbi",
|
||||
.class = &omap44xx_rfbi_hwmod_class,
|
||||
.clkdm_name = "l3_dss_clkdm",
|
||||
.main_clk = "dss_dss_clk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = OMAP4_CM_DSS_DSS_CLKCTRL_OFFSET,
|
||||
.context_offs = OMAP4_RM_DSS_DSS_CONTEXT_OFFSET,
|
||||
},
|
||||
},
|
||||
.opt_clks = dss_rfbi_opt_clks,
|
||||
.opt_clks_cnt = ARRAY_SIZE(dss_rfbi_opt_clks),
|
||||
.parent_hwmod = &omap44xx_dss_hwmod,
|
||||
};
|
||||
|
||||
/*
|
||||
* 'venc' class
|
||||
* video encoder
|
||||
*/
|
||||
|
||||
static struct omap_hwmod_class omap44xx_venc_hwmod_class = {
|
||||
.name = "venc",
|
||||
};
|
||||
|
||||
/* dss_venc */
|
||||
static struct omap_hwmod_opt_clk dss_venc_opt_clks[] = {
|
||||
{ .role = "tv_clk", .clk = "dss_tv_clk" },
|
||||
};
|
||||
|
||||
static struct omap_hwmod omap44xx_dss_venc_hwmod = {
|
||||
.name = "dss_venc",
|
||||
.class = &omap44xx_venc_hwmod_class,
|
||||
.clkdm_name = "l3_dss_clkdm",
|
||||
.main_clk = "dss_tv_clk",
|
||||
.flags = HWMOD_OPT_CLKS_NEEDED,
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = OMAP4_CM_DSS_DSS_CLKCTRL_OFFSET,
|
||||
.context_offs = OMAP4_RM_DSS_DSS_CONTEXT_OFFSET,
|
||||
},
|
||||
},
|
||||
.parent_hwmod = &omap44xx_dss_hwmod,
|
||||
.opt_clks = dss_venc_opt_clks,
|
||||
.opt_clks_cnt = ARRAY_SIZE(dss_venc_opt_clks),
|
||||
};
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* 'emif' class
|
||||
* external memory interface no1
|
||||
@@ -737,39 +437,6 @@ static struct omap_hwmod omap44xx_gpmc_hwmod = {
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
/*
|
||||
* 'ipu' class
|
||||
* imaging processor unit
|
||||
*/
|
||||
|
||||
static struct omap_hwmod_class omap44xx_ipu_hwmod_class = {
|
||||
.name = "ipu",
|
||||
};
|
||||
|
||||
/* ipu */
|
||||
static struct omap_hwmod_rst_info omap44xx_ipu_resets[] = {
|
||||
{ .name = "cpu0", .rst_shift = 0 },
|
||||
{ .name = "cpu1", .rst_shift = 1 },
|
||||
};
|
||||
|
||||
static struct omap_hwmod omap44xx_ipu_hwmod = {
|
||||
.name = "ipu",
|
||||
.class = &omap44xx_ipu_hwmod_class,
|
||||
.clkdm_name = "ducati_clkdm",
|
||||
.rst_lines = omap44xx_ipu_resets,
|
||||
.rst_lines_cnt = ARRAY_SIZE(omap44xx_ipu_resets),
|
||||
.main_clk = "ducati_clk_mux_ck",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = OMAP4_CM_DUCATI_DUCATI_CLKCTRL_OFFSET,
|
||||
.rstctrl_offs = OMAP4_RM_DUCATI_RSTCTRL_OFFSET,
|
||||
.context_offs = OMAP4_RM_DUCATI_DUCATI_CONTEXT_OFFSET,
|
||||
.modulemode = MODULEMODE_HWCTRL,
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
/*
|
||||
* 'iss' class
|
||||
* external images sensor pixel data processor
|
||||
@@ -1236,22 +903,6 @@ static struct omap_hwmod_ocp_if omap44xx_ocp_wp_noc__l3_instr = {
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* dsp -> l3_main_1 */
|
||||
static struct omap_hwmod_ocp_if omap44xx_dsp__l3_main_1 = {
|
||||
.master = &omap44xx_dsp_hwmod,
|
||||
.slave = &omap44xx_l3_main_1_hwmod,
|
||||
.clk = "l3_div_ck",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* dss -> l3_main_1 */
|
||||
static struct omap_hwmod_ocp_if omap44xx_dss__l3_main_1 = {
|
||||
.master = &omap44xx_dss_hwmod,
|
||||
.slave = &omap44xx_l3_main_1_hwmod,
|
||||
.clk = "l3_div_ck",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l3_main_2 -> l3_main_1 */
|
||||
static struct omap_hwmod_ocp_if omap44xx_l3_main_2__l3_main_1 = {
|
||||
.master = &omap44xx_l3_main_2_hwmod,
|
||||
@@ -1284,14 +935,6 @@ static struct omap_hwmod_ocp_if omap44xx_debugss__l3_main_2 = {
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* ipu -> l3_main_2 */
|
||||
static struct omap_hwmod_ocp_if omap44xx_ipu__l3_main_2 = {
|
||||
.master = &omap44xx_ipu_hwmod,
|
||||
.slave = &omap44xx_l3_main_2_hwmod,
|
||||
.clk = "l3_div_ck",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* iss -> l3_main_2 */
|
||||
static struct omap_hwmod_ocp_if omap44xx_iss__l3_main_2 = {
|
||||
.master = &omap44xx_iss_hwmod,
|
||||
@@ -1364,14 +1007,6 @@ static struct omap_hwmod_ocp_if omap44xx_l4_cfg__l3_main_3 = {
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* dsp -> l4_abe */
|
||||
static struct omap_hwmod_ocp_if omap44xx_dsp__l4_abe = {
|
||||
.master = &omap44xx_dsp_hwmod,
|
||||
.slave = &omap44xx_l4_abe_hwmod,
|
||||
.clk = "ocp_abe_iclk",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l3_main_1 -> l4_abe */
|
||||
static struct omap_hwmod_ocp_if omap44xx_l3_main_1__l4_abe = {
|
||||
.master = &omap44xx_l3_main_1_hwmod,
|
||||
@@ -1476,142 +1111,6 @@ static struct omap_hwmod_ocp_if omap44xx_l3_instr__debugss = {
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* dsp -> iva */
|
||||
static struct omap_hwmod_ocp_if omap44xx_dsp__iva = {
|
||||
.master = &omap44xx_dsp_hwmod,
|
||||
.slave = &omap44xx_iva_hwmod,
|
||||
.clk = "dpll_iva_m5x2_ck",
|
||||
.user = OCP_USER_DSP,
|
||||
};
|
||||
|
||||
/* dsp -> sl2if */
|
||||
static struct omap_hwmod_ocp_if __maybe_unused omap44xx_dsp__sl2if = {
|
||||
.master = &omap44xx_dsp_hwmod,
|
||||
.slave = &omap44xx_sl2if_hwmod,
|
||||
.clk = "dpll_iva_m5x2_ck",
|
||||
.user = OCP_USER_DSP,
|
||||
};
|
||||
|
||||
/* l4_cfg -> dsp */
|
||||
static struct omap_hwmod_ocp_if omap44xx_l4_cfg__dsp = {
|
||||
.master = &omap44xx_l4_cfg_hwmod,
|
||||
.slave = &omap44xx_dsp_hwmod,
|
||||
.clk = "l4_div_ck",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l3_main_2 -> dss */
|
||||
static struct omap_hwmod_ocp_if omap44xx_l3_main_2__dss = {
|
||||
.master = &omap44xx_l3_main_2_hwmod,
|
||||
.slave = &omap44xx_dss_hwmod,
|
||||
.clk = "l3_div_ck",
|
||||
.user = OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l4_per -> dss */
|
||||
static struct omap_hwmod_ocp_if omap44xx_l4_per__dss = {
|
||||
.master = &omap44xx_l4_per_hwmod,
|
||||
.slave = &omap44xx_dss_hwmod,
|
||||
.clk = "l4_div_ck",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
/* l3_main_2 -> dss_dispc */
|
||||
static struct omap_hwmod_ocp_if omap44xx_l3_main_2__dss_dispc = {
|
||||
.master = &omap44xx_l3_main_2_hwmod,
|
||||
.slave = &omap44xx_dss_dispc_hwmod,
|
||||
.clk = "l3_div_ck",
|
||||
.user = OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l4_per -> dss_dispc */
|
||||
static struct omap_hwmod_ocp_if omap44xx_l4_per__dss_dispc = {
|
||||
.master = &omap44xx_l4_per_hwmod,
|
||||
.slave = &omap44xx_dss_dispc_hwmod,
|
||||
.clk = "l4_div_ck",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
/* l3_main_2 -> dss_dsi1 */
|
||||
static struct omap_hwmod_ocp_if omap44xx_l3_main_2__dss_dsi1 = {
|
||||
.master = &omap44xx_l3_main_2_hwmod,
|
||||
.slave = &omap44xx_dss_dsi1_hwmod,
|
||||
.clk = "l3_div_ck",
|
||||
.user = OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l4_per -> dss_dsi1 */
|
||||
static struct omap_hwmod_ocp_if omap44xx_l4_per__dss_dsi1 = {
|
||||
.master = &omap44xx_l4_per_hwmod,
|
||||
.slave = &omap44xx_dss_dsi1_hwmod,
|
||||
.clk = "l4_div_ck",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
/* l3_main_2 -> dss_dsi2 */
|
||||
static struct omap_hwmod_ocp_if omap44xx_l3_main_2__dss_dsi2 = {
|
||||
.master = &omap44xx_l3_main_2_hwmod,
|
||||
.slave = &omap44xx_dss_dsi2_hwmod,
|
||||
.clk = "l3_div_ck",
|
||||
.user = OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l4_per -> dss_dsi2 */
|
||||
static struct omap_hwmod_ocp_if omap44xx_l4_per__dss_dsi2 = {
|
||||
.master = &omap44xx_l4_per_hwmod,
|
||||
.slave = &omap44xx_dss_dsi2_hwmod,
|
||||
.clk = "l4_div_ck",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
/* l3_main_2 -> dss_hdmi */
|
||||
static struct omap_hwmod_ocp_if omap44xx_l3_main_2__dss_hdmi = {
|
||||
.master = &omap44xx_l3_main_2_hwmod,
|
||||
.slave = &omap44xx_dss_hdmi_hwmod,
|
||||
.clk = "l3_div_ck",
|
||||
.user = OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l4_per -> dss_hdmi */
|
||||
static struct omap_hwmod_ocp_if omap44xx_l4_per__dss_hdmi = {
|
||||
.master = &omap44xx_l4_per_hwmod,
|
||||
.slave = &omap44xx_dss_hdmi_hwmod,
|
||||
.clk = "l4_div_ck",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
/* l3_main_2 -> dss_rfbi */
|
||||
static struct omap_hwmod_ocp_if omap44xx_l3_main_2__dss_rfbi = {
|
||||
.master = &omap44xx_l3_main_2_hwmod,
|
||||
.slave = &omap44xx_dss_rfbi_hwmod,
|
||||
.clk = "l3_div_ck",
|
||||
.user = OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l4_per -> dss_rfbi */
|
||||
static struct omap_hwmod_ocp_if omap44xx_l4_per__dss_rfbi = {
|
||||
.master = &omap44xx_l4_per_hwmod,
|
||||
.slave = &omap44xx_dss_rfbi_hwmod,
|
||||
.clk = "l4_div_ck",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
/* l3_main_2 -> dss_venc */
|
||||
static struct omap_hwmod_ocp_if omap44xx_l3_main_2__dss_venc = {
|
||||
.master = &omap44xx_l3_main_2_hwmod,
|
||||
.slave = &omap44xx_dss_venc_hwmod,
|
||||
.clk = "l3_div_ck",
|
||||
.user = OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l4_per -> dss_venc */
|
||||
static struct omap_hwmod_ocp_if omap44xx_l4_per__dss_venc = {
|
||||
.master = &omap44xx_l4_per_hwmod,
|
||||
.slave = &omap44xx_dss_venc_hwmod,
|
||||
.clk = "l4_div_ck",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
/* l3_main_2 -> gpmc */
|
||||
static struct omap_hwmod_ocp_if omap44xx_l3_main_2__gpmc = {
|
||||
.master = &omap44xx_l3_main_2_hwmod,
|
||||
@@ -1620,14 +1119,6 @@ static struct omap_hwmod_ocp_if omap44xx_l3_main_2__gpmc = {
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l3_main_2 -> ipu */
|
||||
static struct omap_hwmod_ocp_if omap44xx_l3_main_2__ipu = {
|
||||
.master = &omap44xx_l3_main_2_hwmod,
|
||||
.slave = &omap44xx_ipu_hwmod,
|
||||
.clk = "l3_div_ck",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l3_main_2 -> iss */
|
||||
static struct omap_hwmod_ocp_if omap44xx_l3_main_2__iss = {
|
||||
.master = &omap44xx_l3_main_2_hwmod,
|
||||
@@ -1762,13 +1253,10 @@ static struct omap_hwmod_ocp_if *omap44xx_hwmod_ocp_ifs[] __initdata = {
|
||||
&omap44xx_iva__l3_instr,
|
||||
&omap44xx_l3_main_3__l3_instr,
|
||||
&omap44xx_ocp_wp_noc__l3_instr,
|
||||
&omap44xx_dsp__l3_main_1,
|
||||
&omap44xx_dss__l3_main_1,
|
||||
&omap44xx_l3_main_2__l3_main_1,
|
||||
&omap44xx_l4_cfg__l3_main_1,
|
||||
&omap44xx_mpu__l3_main_1,
|
||||
&omap44xx_debugss__l3_main_2,
|
||||
&omap44xx_ipu__l3_main_2,
|
||||
&omap44xx_iss__l3_main_2,
|
||||
&omap44xx_iva__l3_main_2,
|
||||
&omap44xx_l3_main_1__l3_main_2,
|
||||
@@ -1778,7 +1266,6 @@ static struct omap_hwmod_ocp_if *omap44xx_hwmod_ocp_ifs[] __initdata = {
|
||||
&omap44xx_l3_main_1__l3_main_3,
|
||||
&omap44xx_l3_main_2__l3_main_3,
|
||||
&omap44xx_l4_cfg__l3_main_3,
|
||||
&omap44xx_dsp__l4_abe,
|
||||
&omap44xx_l3_main_1__l4_abe,
|
||||
&omap44xx_mpu__l4_abe,
|
||||
&omap44xx_l3_main_1__l4_cfg,
|
||||
@@ -1792,25 +1279,7 @@ static struct omap_hwmod_ocp_if *omap44xx_hwmod_ocp_ifs[] __initdata = {
|
||||
&omap44xx_l4_wkup__ctrl_module_wkup,
|
||||
&omap44xx_l4_wkup__ctrl_module_pad_wkup,
|
||||
&omap44xx_l3_instr__debugss,
|
||||
&omap44xx_dsp__iva,
|
||||
/* &omap44xx_dsp__sl2if, */
|
||||
&omap44xx_l4_cfg__dsp,
|
||||
&omap44xx_l3_main_2__dss,
|
||||
&omap44xx_l4_per__dss,
|
||||
&omap44xx_l3_main_2__dss_dispc,
|
||||
&omap44xx_l4_per__dss_dispc,
|
||||
&omap44xx_l3_main_2__dss_dsi1,
|
||||
&omap44xx_l4_per__dss_dsi1,
|
||||
&omap44xx_l3_main_2__dss_dsi2,
|
||||
&omap44xx_l4_per__dss_dsi2,
|
||||
&omap44xx_l3_main_2__dss_hdmi,
|
||||
&omap44xx_l4_per__dss_hdmi,
|
||||
&omap44xx_l3_main_2__dss_rfbi,
|
||||
&omap44xx_l4_per__dss_rfbi,
|
||||
&omap44xx_l3_main_2__dss_venc,
|
||||
&omap44xx_l4_per__dss_venc,
|
||||
&omap44xx_l3_main_2__gpmc,
|
||||
&omap44xx_l3_main_2__ipu,
|
||||
&omap44xx_l3_main_2__iss,
|
||||
/* &omap44xx_iva__sl2if, */
|
||||
&omap44xx_l3_main_2__iva,
|
||||
|
@@ -226,240 +226,6 @@ static struct omap_hwmod omap54xx_counter_32k_hwmod = {
|
||||
},
|
||||
};
|
||||
|
||||
/*
|
||||
* 'dss' class
|
||||
* display sub-system
|
||||
*/
|
||||
static struct omap_hwmod_class_sysconfig omap54xx_dss_sysc = {
|
||||
.rev_offs = 0x0000,
|
||||
.syss_offs = 0x0014,
|
||||
.sysc_flags = SYSS_HAS_RESET_STATUS,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class omap54xx_dss_hwmod_class = {
|
||||
.name = "dss",
|
||||
.sysc = &omap54xx_dss_sysc,
|
||||
.reset = omap_dss_reset,
|
||||
};
|
||||
|
||||
/* dss */
|
||||
static struct omap_hwmod_opt_clk dss_opt_clks[] = {
|
||||
{ .role = "32khz_clk", .clk = "dss_32khz_clk" },
|
||||
{ .role = "sys_clk", .clk = "dss_sys_clk" },
|
||||
{ .role = "hdmi_clk", .clk = "dss_48mhz_clk" },
|
||||
};
|
||||
|
||||
static struct omap_hwmod omap54xx_dss_hwmod = {
|
||||
.name = "dss_core",
|
||||
.class = &omap54xx_dss_hwmod_class,
|
||||
.clkdm_name = "dss_clkdm",
|
||||
.flags = HWMOD_CONTROL_OPT_CLKS_IN_RESET,
|
||||
.main_clk = "dss_dss_clk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = OMAP54XX_CM_DSS_DSS_CLKCTRL_OFFSET,
|
||||
.context_offs = OMAP54XX_RM_DSS_DSS_CONTEXT_OFFSET,
|
||||
.modulemode = MODULEMODE_SWCTRL,
|
||||
},
|
||||
},
|
||||
.opt_clks = dss_opt_clks,
|
||||
.opt_clks_cnt = ARRAY_SIZE(dss_opt_clks),
|
||||
};
|
||||
|
||||
/*
|
||||
* 'dispc' class
|
||||
* display controller
|
||||
*/
|
||||
|
||||
static struct omap_hwmod_class_sysconfig omap54xx_dispc_sysc = {
|
||||
.rev_offs = 0x0000,
|
||||
.sysc_offs = 0x0010,
|
||||
.syss_offs = 0x0014,
|
||||
.sysc_flags = (SYSC_HAS_AUTOIDLE | SYSC_HAS_CLOCKACTIVITY |
|
||||
SYSC_HAS_ENAWAKEUP | SYSC_HAS_MIDLEMODE |
|
||||
SYSC_HAS_SIDLEMODE | SYSC_HAS_SOFTRESET |
|
||||
SYSS_HAS_RESET_STATUS),
|
||||
.idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
|
||||
MSTANDBY_FORCE | MSTANDBY_NO | MSTANDBY_SMART),
|
||||
.sysc_fields = &omap_hwmod_sysc_type1,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class omap54xx_dispc_hwmod_class = {
|
||||
.name = "dispc",
|
||||
.sysc = &omap54xx_dispc_sysc,
|
||||
};
|
||||
|
||||
/* dss_dispc */
|
||||
static struct omap_hwmod_opt_clk dss_dispc_opt_clks[] = {
|
||||
{ .role = "sys_clk", .clk = "dss_sys_clk" },
|
||||
};
|
||||
|
||||
/* dss_dispc dev_attr */
|
||||
static struct omap_dss_dispc_dev_attr dss_dispc_dev_attr = {
|
||||
.has_framedonetv_irq = 1,
|
||||
.manager_count = 4,
|
||||
};
|
||||
|
||||
static struct omap_hwmod omap54xx_dss_dispc_hwmod = {
|
||||
.name = "dss_dispc",
|
||||
.class = &omap54xx_dispc_hwmod_class,
|
||||
.clkdm_name = "dss_clkdm",
|
||||
.main_clk = "dss_dss_clk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = OMAP54XX_CM_DSS_DSS_CLKCTRL_OFFSET,
|
||||
.flags = HWMOD_OMAP4_NO_CONTEXT_LOSS_BIT,
|
||||
},
|
||||
},
|
||||
.opt_clks = dss_dispc_opt_clks,
|
||||
.opt_clks_cnt = ARRAY_SIZE(dss_dispc_opt_clks),
|
||||
.dev_attr = &dss_dispc_dev_attr,
|
||||
.parent_hwmod = &omap54xx_dss_hwmod,
|
||||
};
|
||||
|
||||
/*
|
||||
* 'dsi1' class
|
||||
* display serial interface controller
|
||||
*/
|
||||
|
||||
static struct omap_hwmod_class_sysconfig omap54xx_dsi1_sysc = {
|
||||
.rev_offs = 0x0000,
|
||||
.sysc_offs = 0x0010,
|
||||
.syss_offs = 0x0014,
|
||||
.sysc_flags = (SYSC_HAS_AUTOIDLE | SYSC_HAS_CLOCKACTIVITY |
|
||||
SYSC_HAS_ENAWAKEUP | SYSC_HAS_SIDLEMODE |
|
||||
SYSC_HAS_SOFTRESET | SYSS_HAS_RESET_STATUS),
|
||||
.idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART),
|
||||
.sysc_fields = &omap_hwmod_sysc_type1,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class omap54xx_dsi1_hwmod_class = {
|
||||
.name = "dsi1",
|
||||
.sysc = &omap54xx_dsi1_sysc,
|
||||
};
|
||||
|
||||
/* dss_dsi1_a */
|
||||
static struct omap_hwmod_opt_clk dss_dsi1_a_opt_clks[] = {
|
||||
{ .role = "sys_clk", .clk = "dss_sys_clk" },
|
||||
};
|
||||
|
||||
static struct omap_hwmod omap54xx_dss_dsi1_a_hwmod = {
|
||||
.name = "dss_dsi1",
|
||||
.class = &omap54xx_dsi1_hwmod_class,
|
||||
.clkdm_name = "dss_clkdm",
|
||||
.main_clk = "dss_dss_clk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = OMAP54XX_CM_DSS_DSS_CLKCTRL_OFFSET,
|
||||
.flags = HWMOD_OMAP4_NO_CONTEXT_LOSS_BIT,
|
||||
},
|
||||
},
|
||||
.opt_clks = dss_dsi1_a_opt_clks,
|
||||
.opt_clks_cnt = ARRAY_SIZE(dss_dsi1_a_opt_clks),
|
||||
.parent_hwmod = &omap54xx_dss_hwmod,
|
||||
};
|
||||
|
||||
/* dss_dsi1_c */
|
||||
static struct omap_hwmod_opt_clk dss_dsi1_c_opt_clks[] = {
|
||||
{ .role = "sys_clk", .clk = "dss_sys_clk" },
|
||||
};
|
||||
|
||||
static struct omap_hwmod omap54xx_dss_dsi1_c_hwmod = {
|
||||
.name = "dss_dsi2",
|
||||
.class = &omap54xx_dsi1_hwmod_class,
|
||||
.clkdm_name = "dss_clkdm",
|
||||
.main_clk = "dss_dss_clk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = OMAP54XX_CM_DSS_DSS_CLKCTRL_OFFSET,
|
||||
.flags = HWMOD_OMAP4_NO_CONTEXT_LOSS_BIT,
|
||||
},
|
||||
},
|
||||
.opt_clks = dss_dsi1_c_opt_clks,
|
||||
.opt_clks_cnt = ARRAY_SIZE(dss_dsi1_c_opt_clks),
|
||||
.parent_hwmod = &omap54xx_dss_hwmod,
|
||||
};
|
||||
|
||||
/*
|
||||
* 'hdmi' class
|
||||
* hdmi controller
|
||||
*/
|
||||
|
||||
static struct omap_hwmod_class_sysconfig omap54xx_hdmi_sysc = {
|
||||
.rev_offs = 0x0000,
|
||||
.sysc_offs = 0x0010,
|
||||
.sysc_flags = (SYSC_HAS_RESET_STATUS | SYSC_HAS_SIDLEMODE |
|
||||
SYSC_HAS_SOFTRESET),
|
||||
.idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
|
||||
SIDLE_SMART_WKUP),
|
||||
.sysc_fields = &omap_hwmod_sysc_type2,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class omap54xx_hdmi_hwmod_class = {
|
||||
.name = "hdmi",
|
||||
.sysc = &omap54xx_hdmi_sysc,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_opt_clk dss_hdmi_opt_clks[] = {
|
||||
{ .role = "sys_clk", .clk = "dss_sys_clk" },
|
||||
};
|
||||
|
||||
static struct omap_hwmod omap54xx_dss_hdmi_hwmod = {
|
||||
.name = "dss_hdmi",
|
||||
.class = &omap54xx_hdmi_hwmod_class,
|
||||
.clkdm_name = "dss_clkdm",
|
||||
.main_clk = "dss_48mhz_clk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = OMAP54XX_CM_DSS_DSS_CLKCTRL_OFFSET,
|
||||
.flags = HWMOD_OMAP4_NO_CONTEXT_LOSS_BIT,
|
||||
},
|
||||
},
|
||||
.opt_clks = dss_hdmi_opt_clks,
|
||||
.opt_clks_cnt = ARRAY_SIZE(dss_hdmi_opt_clks),
|
||||
.parent_hwmod = &omap54xx_dss_hwmod,
|
||||
};
|
||||
|
||||
/*
|
||||
* 'rfbi' class
|
||||
* remote frame buffer interface
|
||||
*/
|
||||
|
||||
static struct omap_hwmod_class_sysconfig omap54xx_rfbi_sysc = {
|
||||
.rev_offs = 0x0000,
|
||||
.sysc_offs = 0x0010,
|
||||
.syss_offs = 0x0014,
|
||||
.sysc_flags = (SYSC_HAS_AUTOIDLE | SYSC_HAS_SIDLEMODE |
|
||||
SYSC_HAS_SOFTRESET | SYSS_HAS_RESET_STATUS),
|
||||
.idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART),
|
||||
.sysc_fields = &omap_hwmod_sysc_type1,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class omap54xx_rfbi_hwmod_class = {
|
||||
.name = "rfbi",
|
||||
.sysc = &omap54xx_rfbi_sysc,
|
||||
};
|
||||
|
||||
/* dss_rfbi */
|
||||
static struct omap_hwmod_opt_clk dss_rfbi_opt_clks[] = {
|
||||
{ .role = "ick", .clk = "l3_iclk_div" },
|
||||
};
|
||||
|
||||
static struct omap_hwmod omap54xx_dss_rfbi_hwmod = {
|
||||
.name = "dss_rfbi",
|
||||
.class = &omap54xx_rfbi_hwmod_class,
|
||||
.clkdm_name = "dss_clkdm",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = OMAP54XX_CM_DSS_DSS_CLKCTRL_OFFSET,
|
||||
.flags = HWMOD_OMAP4_NO_CONTEXT_LOSS_BIT,
|
||||
},
|
||||
},
|
||||
.opt_clks = dss_rfbi_opt_clks,
|
||||
.opt_clks_cnt = ARRAY_SIZE(dss_rfbi_opt_clks),
|
||||
.parent_hwmod = &omap54xx_dss_hwmod,
|
||||
};
|
||||
|
||||
/*
|
||||
* 'emif' class
|
||||
* external memory interface no1 (wrapper)
|
||||
@@ -908,54 +674,6 @@ static struct omap_hwmod_ocp_if omap54xx_l4_wkup__counter_32k = {
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l3_main_2 -> dss */
|
||||
static struct omap_hwmod_ocp_if omap54xx_l3_main_2__dss = {
|
||||
.master = &omap54xx_l3_main_2_hwmod,
|
||||
.slave = &omap54xx_dss_hwmod,
|
||||
.clk = "l3_iclk_div",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l3_main_2 -> dss_dispc */
|
||||
static struct omap_hwmod_ocp_if omap54xx_l3_main_2__dss_dispc = {
|
||||
.master = &omap54xx_l3_main_2_hwmod,
|
||||
.slave = &omap54xx_dss_dispc_hwmod,
|
||||
.clk = "l3_iclk_div",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l3_main_2 -> dss_dsi1_a */
|
||||
static struct omap_hwmod_ocp_if omap54xx_l3_main_2__dss_dsi1_a = {
|
||||
.master = &omap54xx_l3_main_2_hwmod,
|
||||
.slave = &omap54xx_dss_dsi1_a_hwmod,
|
||||
.clk = "l3_iclk_div",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l3_main_2 -> dss_dsi1_c */
|
||||
static struct omap_hwmod_ocp_if omap54xx_l3_main_2__dss_dsi1_c = {
|
||||
.master = &omap54xx_l3_main_2_hwmod,
|
||||
.slave = &omap54xx_dss_dsi1_c_hwmod,
|
||||
.clk = "l3_iclk_div",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l3_main_2 -> dss_hdmi */
|
||||
static struct omap_hwmod_ocp_if omap54xx_l3_main_2__dss_hdmi = {
|
||||
.master = &omap54xx_l3_main_2_hwmod,
|
||||
.slave = &omap54xx_dss_hdmi_hwmod,
|
||||
.clk = "l3_iclk_div",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l3_main_2 -> dss_rfbi */
|
||||
static struct omap_hwmod_ocp_if omap54xx_l3_main_2__dss_rfbi = {
|
||||
.master = &omap54xx_l3_main_2_hwmod,
|
||||
.slave = &omap54xx_dss_rfbi_hwmod,
|
||||
.clk = "l3_iclk_div",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* mpu -> emif1 */
|
||||
static struct omap_hwmod_ocp_if omap54xx_mpu__emif1 = {
|
||||
.master = &omap54xx_mpu_hwmod,
|
||||
@@ -1030,12 +748,6 @@ static struct omap_hwmod_ocp_if *omap54xx_hwmod_ocp_ifs[] __initdata = {
|
||||
&omap54xx_l3_main_1__l4_wkup,
|
||||
&omap54xx_mpu__mpu_private,
|
||||
&omap54xx_l4_wkup__counter_32k,
|
||||
&omap54xx_l3_main_2__dss,
|
||||
&omap54xx_l3_main_2__dss_dispc,
|
||||
&omap54xx_l3_main_2__dss_dsi1_a,
|
||||
&omap54xx_l3_main_2__dss_dsi1_c,
|
||||
&omap54xx_l3_main_2__dss_hdmi,
|
||||
&omap54xx_l3_main_2__dss_rfbi,
|
||||
&omap54xx_mpu__emif1,
|
||||
&omap54xx_mpu__emif2,
|
||||
&omap54xx_l4_cfg__mpu,
|
||||
|
@@ -276,203 +276,6 @@ static struct omap_hwmod dra7xx_ctrl_module_wkup_hwmod = {
|
||||
},
|
||||
};
|
||||
|
||||
/*
|
||||
* 'tpcc' class
|
||||
*
|
||||
*/
|
||||
static struct omap_hwmod_class dra7xx_tpcc_hwmod_class = {
|
||||
.name = "tpcc",
|
||||
};
|
||||
|
||||
static struct omap_hwmod dra7xx_tpcc_hwmod = {
|
||||
.name = "tpcc",
|
||||
.class = &dra7xx_tpcc_hwmod_class,
|
||||
.clkdm_name = "l3main1_clkdm",
|
||||
.main_clk = "l3_iclk_div",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = DRA7XX_CM_L3MAIN1_TPCC_CLKCTRL_OFFSET,
|
||||
.context_offs = DRA7XX_RM_L3MAIN1_TPCC_CONTEXT_OFFSET,
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
/*
|
||||
* 'tptc' class
|
||||
*
|
||||
*/
|
||||
static struct omap_hwmod_class dra7xx_tptc_hwmod_class = {
|
||||
.name = "tptc",
|
||||
};
|
||||
|
||||
/* tptc0 */
|
||||
static struct omap_hwmod dra7xx_tptc0_hwmod = {
|
||||
.name = "tptc0",
|
||||
.class = &dra7xx_tptc_hwmod_class,
|
||||
.clkdm_name = "l3main1_clkdm",
|
||||
.flags = HWMOD_SWSUP_SIDLE | HWMOD_SWSUP_MSTANDBY,
|
||||
.main_clk = "l3_iclk_div",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = DRA7XX_CM_L3MAIN1_TPTC1_CLKCTRL_OFFSET,
|
||||
.context_offs = DRA7XX_RM_L3MAIN1_TPTC1_CONTEXT_OFFSET,
|
||||
.modulemode = MODULEMODE_HWCTRL,
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
/* tptc1 */
|
||||
static struct omap_hwmod dra7xx_tptc1_hwmod = {
|
||||
.name = "tptc1",
|
||||
.class = &dra7xx_tptc_hwmod_class,
|
||||
.clkdm_name = "l3main1_clkdm",
|
||||
.flags = HWMOD_SWSUP_SIDLE | HWMOD_SWSUP_MSTANDBY,
|
||||
.main_clk = "l3_iclk_div",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = DRA7XX_CM_L3MAIN1_TPTC2_CLKCTRL_OFFSET,
|
||||
.context_offs = DRA7XX_RM_L3MAIN1_TPTC2_CONTEXT_OFFSET,
|
||||
.modulemode = MODULEMODE_HWCTRL,
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
/*
|
||||
* 'dss' class
|
||||
*
|
||||
*/
|
||||
|
||||
static struct omap_hwmod_class_sysconfig dra7xx_dss_sysc = {
|
||||
.rev_offs = 0x0000,
|
||||
.syss_offs = 0x0014,
|
||||
.sysc_flags = SYSS_HAS_RESET_STATUS,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class dra7xx_dss_hwmod_class = {
|
||||
.name = "dss",
|
||||
.sysc = &dra7xx_dss_sysc,
|
||||
.reset = omap_dss_reset,
|
||||
};
|
||||
|
||||
/* dss */
|
||||
static struct omap_hwmod_opt_clk dss_opt_clks[] = {
|
||||
{ .role = "dss_clk", .clk = "dss_dss_clk" },
|
||||
{ .role = "hdmi_phy_clk", .clk = "dss_48mhz_clk" },
|
||||
{ .role = "32khz_clk", .clk = "dss_32khz_clk" },
|
||||
{ .role = "video2_clk", .clk = "dss_video2_clk" },
|
||||
{ .role = "video1_clk", .clk = "dss_video1_clk" },
|
||||
{ .role = "hdmi_clk", .clk = "dss_hdmi_clk" },
|
||||
{ .role = "hdcp_clk", .clk = "dss_deshdcp_clk" },
|
||||
};
|
||||
|
||||
static struct omap_hwmod dra7xx_dss_hwmod = {
|
||||
.name = "dss_core",
|
||||
.class = &dra7xx_dss_hwmod_class,
|
||||
.clkdm_name = "dss_clkdm",
|
||||
.flags = HWMOD_CONTROL_OPT_CLKS_IN_RESET,
|
||||
.main_clk = "dss_dss_clk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = DRA7XX_CM_DSS_DSS_CLKCTRL_OFFSET,
|
||||
.context_offs = DRA7XX_RM_DSS_DSS_CONTEXT_OFFSET,
|
||||
.modulemode = MODULEMODE_SWCTRL,
|
||||
},
|
||||
},
|
||||
.opt_clks = dss_opt_clks,
|
||||
.opt_clks_cnt = ARRAY_SIZE(dss_opt_clks),
|
||||
};
|
||||
|
||||
/*
|
||||
* 'dispc' class
|
||||
* display controller
|
||||
*/
|
||||
|
||||
static struct omap_hwmod_class_sysconfig dra7xx_dispc_sysc = {
|
||||
.rev_offs = 0x0000,
|
||||
.sysc_offs = 0x0010,
|
||||
.syss_offs = 0x0014,
|
||||
.sysc_flags = (SYSC_HAS_AUTOIDLE | SYSC_HAS_CLOCKACTIVITY |
|
||||
SYSC_HAS_ENAWAKEUP | SYSC_HAS_MIDLEMODE |
|
||||
SYSC_HAS_SIDLEMODE | SYSC_HAS_SOFTRESET |
|
||||
SYSS_HAS_RESET_STATUS),
|
||||
.idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
|
||||
MSTANDBY_FORCE | MSTANDBY_NO | MSTANDBY_SMART),
|
||||
.sysc_fields = &omap_hwmod_sysc_type1,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class dra7xx_dispc_hwmod_class = {
|
||||
.name = "dispc",
|
||||
.sysc = &dra7xx_dispc_sysc,
|
||||
};
|
||||
|
||||
/* dss_dispc */
|
||||
/* dss_dispc dev_attr */
|
||||
static struct omap_dss_dispc_dev_attr dss_dispc_dev_attr = {
|
||||
.has_framedonetv_irq = 1,
|
||||
.manager_count = 4,
|
||||
};
|
||||
|
||||
static struct omap_hwmod dra7xx_dss_dispc_hwmod = {
|
||||
.name = "dss_dispc",
|
||||
.class = &dra7xx_dispc_hwmod_class,
|
||||
.clkdm_name = "dss_clkdm",
|
||||
.main_clk = "dss_dss_clk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = DRA7XX_CM_DSS_DSS_CLKCTRL_OFFSET,
|
||||
.flags = HWMOD_OMAP4_NO_CONTEXT_LOSS_BIT,
|
||||
},
|
||||
},
|
||||
.dev_attr = &dss_dispc_dev_attr,
|
||||
.parent_hwmod = &dra7xx_dss_hwmod,
|
||||
};
|
||||
|
||||
/*
|
||||
* 'hdmi' class
|
||||
* hdmi controller
|
||||
*/
|
||||
|
||||
static struct omap_hwmod_class_sysconfig dra7xx_hdmi_sysc = {
|
||||
.rev_offs = 0x0000,
|
||||
.sysc_offs = 0x0010,
|
||||
.sysc_flags = (SYSC_HAS_RESET_STATUS | SYSC_HAS_SIDLEMODE |
|
||||
SYSC_HAS_SOFTRESET),
|
||||
.idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
|
||||
SIDLE_SMART_WKUP),
|
||||
.sysc_fields = &omap_hwmod_sysc_type2,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class dra7xx_hdmi_hwmod_class = {
|
||||
.name = "hdmi",
|
||||
.sysc = &dra7xx_hdmi_sysc,
|
||||
};
|
||||
|
||||
/* dss_hdmi */
|
||||
|
||||
static struct omap_hwmod_opt_clk dss_hdmi_opt_clks[] = {
|
||||
{ .role = "sys_clk", .clk = "dss_hdmi_clk" },
|
||||
};
|
||||
|
||||
static struct omap_hwmod dra7xx_dss_hdmi_hwmod = {
|
||||
.name = "dss_hdmi",
|
||||
.class = &dra7xx_hdmi_hwmod_class,
|
||||
.clkdm_name = "dss_clkdm",
|
||||
.main_clk = "dss_48mhz_clk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = DRA7XX_CM_DSS_DSS_CLKCTRL_OFFSET,
|
||||
.flags = HWMOD_OMAP4_NO_CONTEXT_LOSS_BIT,
|
||||
},
|
||||
},
|
||||
.opt_clks = dss_hdmi_opt_clks,
|
||||
.opt_clks_cnt = ARRAY_SIZE(dss_hdmi_opt_clks),
|
||||
.parent_hwmod = &dra7xx_dss_hwmod,
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* 'gpmc' class
|
||||
*
|
||||
@@ -1077,54 +880,6 @@ static struct omap_hwmod_ocp_if dra7xx_l4_wkup__ctrl_module_wkup = {
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l3_main_1 -> tpcc */
|
||||
static struct omap_hwmod_ocp_if dra7xx_l3_main_1__tpcc = {
|
||||
.master = &dra7xx_l3_main_1_hwmod,
|
||||
.slave = &dra7xx_tpcc_hwmod,
|
||||
.clk = "l3_iclk_div",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
/* l3_main_1 -> tptc0 */
|
||||
static struct omap_hwmod_ocp_if dra7xx_l3_main_1__tptc0 = {
|
||||
.master = &dra7xx_l3_main_1_hwmod,
|
||||
.slave = &dra7xx_tptc0_hwmod,
|
||||
.clk = "l3_iclk_div",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
/* l3_main_1 -> tptc1 */
|
||||
static struct omap_hwmod_ocp_if dra7xx_l3_main_1__tptc1 = {
|
||||
.master = &dra7xx_l3_main_1_hwmod,
|
||||
.slave = &dra7xx_tptc1_hwmod,
|
||||
.clk = "l3_iclk_div",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
/* l3_main_1 -> dss */
|
||||
static struct omap_hwmod_ocp_if dra7xx_l3_main_1__dss = {
|
||||
.master = &dra7xx_l3_main_1_hwmod,
|
||||
.slave = &dra7xx_dss_hwmod,
|
||||
.clk = "l3_iclk_div",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l3_main_1 -> dispc */
|
||||
static struct omap_hwmod_ocp_if dra7xx_l3_main_1__dispc = {
|
||||
.master = &dra7xx_l3_main_1_hwmod,
|
||||
.slave = &dra7xx_dss_dispc_hwmod,
|
||||
.clk = "l3_iclk_div",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l3_main_1 -> dispc */
|
||||
static struct omap_hwmod_ocp_if dra7xx_l3_main_1__hdmi = {
|
||||
.master = &dra7xx_l3_main_1_hwmod,
|
||||
.slave = &dra7xx_dss_hdmi_hwmod,
|
||||
.clk = "l3_iclk_div",
|
||||
.user = OCP_USER_MPU | OCP_USER_SDMA,
|
||||
};
|
||||
|
||||
/* l3_main_1 -> gpmc */
|
||||
static struct omap_hwmod_ocp_if dra7xx_l3_main_1__gpmc = {
|
||||
.master = &dra7xx_l3_main_1_hwmod,
|
||||
@@ -1309,12 +1064,6 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
|
||||
&dra7xx_l3_main_1__bb2d,
|
||||
&dra7xx_l4_wkup__counter_32k,
|
||||
&dra7xx_l4_wkup__ctrl_module_wkup,
|
||||
&dra7xx_l3_main_1__tpcc,
|
||||
&dra7xx_l3_main_1__tptc0,
|
||||
&dra7xx_l3_main_1__tptc1,
|
||||
&dra7xx_l3_main_1__dss,
|
||||
&dra7xx_l3_main_1__dispc,
|
||||
&dra7xx_l3_main_1__hdmi,
|
||||
&dra7xx_l3_main_1__gpmc,
|
||||
&dra7xx_l4_cfg__mpu,
|
||||
&dra7xx_l3_main_1__pciess1,
|
||||
|
@@ -129,13 +129,6 @@ static struct omap_hwmod dm81xx_alwon_l3_med_hwmod = {
|
||||
.flags = HWMOD_NO_IDLEST,
|
||||
};
|
||||
|
||||
static struct omap_hwmod dm81xx_alwon_l3_fast_hwmod = {
|
||||
.name = "l3_fast",
|
||||
.clkdm_name = "alwon_l3_fast_clkdm",
|
||||
.class = &l3_hwmod_class,
|
||||
.flags = HWMOD_NO_IDLEST,
|
||||
};
|
||||
|
||||
/*
|
||||
* L4 standard peripherals, see TRM table 1-12 for devices using this.
|
||||
* See TRM table 1-73 for devices using the 125MHz SYSCLK6 clock.
|
||||
@@ -867,62 +860,6 @@ static struct omap_hwmod_ocp_if dm816x_l4_ls__timer7 = {
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
/* CPSW on dm814x */
|
||||
static struct omap_hwmod_class_sysconfig dm814x_cpgmac_sysc = {
|
||||
.rev_offs = 0x0,
|
||||
.sysc_offs = 0x8,
|
||||
.syss_offs = 0x4,
|
||||
.sysc_flags = SYSC_HAS_SIDLEMODE | SYSC_HAS_MIDLEMODE |
|
||||
SYSS_HAS_RESET_STATUS,
|
||||
.idlemodes = SIDLE_FORCE | SIDLE_NO | MSTANDBY_FORCE |
|
||||
MSTANDBY_NO,
|
||||
.sysc_fields = &omap_hwmod_sysc_type3,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class dm814x_cpgmac0_hwmod_class = {
|
||||
.name = "cpgmac0",
|
||||
.sysc = &dm814x_cpgmac_sysc,
|
||||
};
|
||||
|
||||
static struct omap_hwmod dm814x_cpgmac0_hwmod = {
|
||||
.name = "cpgmac0",
|
||||
.class = &dm814x_cpgmac0_hwmod_class,
|
||||
.clkdm_name = "alwon_ethernet_clkdm",
|
||||
.flags = HWMOD_SWSUP_SIDLE | HWMOD_SWSUP_MSTANDBY,
|
||||
.main_clk = "cpsw_125mhz_gclk",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = DM81XX_CM_ALWON_ETHERNET_0_CLKCTRL,
|
||||
.modulemode = MODULEMODE_SWCTRL,
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class dm814x_mdio_hwmod_class = {
|
||||
.name = "davinci_mdio",
|
||||
};
|
||||
|
||||
static struct omap_hwmod dm814x_mdio_hwmod = {
|
||||
.name = "davinci_mdio",
|
||||
.class = &dm814x_mdio_hwmod_class,
|
||||
.clkdm_name = "alwon_ethernet_clkdm",
|
||||
.main_clk = "cpsw_125mhz_gclk",
|
||||
};
|
||||
|
||||
static struct omap_hwmod_ocp_if dm814x_l4_hs__cpgmac0 = {
|
||||
.master = &dm81xx_l4_hs_hwmod,
|
||||
.slave = &dm814x_cpgmac0_hwmod,
|
||||
.clk = "cpsw_125mhz_gclk",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_ocp_if dm814x_cpgmac0__mdio = {
|
||||
.master = &dm814x_cpgmac0_hwmod,
|
||||
.slave = &dm814x_mdio_hwmod,
|
||||
.user = OCP_USER_MPU,
|
||||
.flags = HWMOD_NO_IDLEST,
|
||||
};
|
||||
|
||||
/* EMAC Ethernet */
|
||||
static struct omap_hwmod_class_sysconfig dm816x_emac_sysc = {
|
||||
.rev_offs = 0x0,
|
||||
@@ -1321,154 +1258,6 @@ static struct omap_hwmod_ocp_if dm81xx_l4_ls__spinbox = {
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class dm81xx_tpcc_hwmod_class = {
|
||||
.name = "tpcc",
|
||||
};
|
||||
|
||||
static struct omap_hwmod dm81xx_tpcc_hwmod = {
|
||||
.name = "tpcc",
|
||||
.class = &dm81xx_tpcc_hwmod_class,
|
||||
.clkdm_name = "alwon_l3s_clkdm",
|
||||
.main_clk = "sysclk4_ck",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = DM81XX_CM_ALWON_TPCC_CLKCTRL,
|
||||
.modulemode = MODULEMODE_SWCTRL,
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
static struct omap_hwmod_ocp_if dm81xx_alwon_l3_fast__tpcc = {
|
||||
.master = &dm81xx_alwon_l3_fast_hwmod,
|
||||
.slave = &dm81xx_tpcc_hwmod,
|
||||
.clk = "sysclk4_ck",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class dm81xx_tptc0_hwmod_class = {
|
||||
.name = "tptc0",
|
||||
};
|
||||
|
||||
static struct omap_hwmod dm81xx_tptc0_hwmod = {
|
||||
.name = "tptc0",
|
||||
.class = &dm81xx_tptc0_hwmod_class,
|
||||
.clkdm_name = "alwon_l3s_clkdm",
|
||||
.main_clk = "sysclk4_ck",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = DM81XX_CM_ALWON_TPTC0_CLKCTRL,
|
||||
.modulemode = MODULEMODE_SWCTRL,
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
static struct omap_hwmod_ocp_if dm81xx_alwon_l3_fast__tptc0 = {
|
||||
.master = &dm81xx_alwon_l3_fast_hwmod,
|
||||
.slave = &dm81xx_tptc0_hwmod,
|
||||
.clk = "sysclk4_ck",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_ocp_if dm81xx_tptc0__alwon_l3_fast = {
|
||||
.master = &dm81xx_tptc0_hwmod,
|
||||
.slave = &dm81xx_alwon_l3_fast_hwmod,
|
||||
.clk = "sysclk4_ck",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class dm81xx_tptc1_hwmod_class = {
|
||||
.name = "tptc1",
|
||||
};
|
||||
|
||||
static struct omap_hwmod dm81xx_tptc1_hwmod = {
|
||||
.name = "tptc1",
|
||||
.class = &dm81xx_tptc1_hwmod_class,
|
||||
.clkdm_name = "alwon_l3s_clkdm",
|
||||
.main_clk = "sysclk4_ck",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = DM81XX_CM_ALWON_TPTC1_CLKCTRL,
|
||||
.modulemode = MODULEMODE_SWCTRL,
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
static struct omap_hwmod_ocp_if dm81xx_alwon_l3_fast__tptc1 = {
|
||||
.master = &dm81xx_alwon_l3_fast_hwmod,
|
||||
.slave = &dm81xx_tptc1_hwmod,
|
||||
.clk = "sysclk4_ck",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_ocp_if dm81xx_tptc1__alwon_l3_fast = {
|
||||
.master = &dm81xx_tptc1_hwmod,
|
||||
.slave = &dm81xx_alwon_l3_fast_hwmod,
|
||||
.clk = "sysclk4_ck",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class dm81xx_tptc2_hwmod_class = {
|
||||
.name = "tptc2",
|
||||
};
|
||||
|
||||
static struct omap_hwmod dm81xx_tptc2_hwmod = {
|
||||
.name = "tptc2",
|
||||
.class = &dm81xx_tptc2_hwmod_class,
|
||||
.clkdm_name = "alwon_l3s_clkdm",
|
||||
.main_clk = "sysclk4_ck",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = DM81XX_CM_ALWON_TPTC2_CLKCTRL,
|
||||
.modulemode = MODULEMODE_SWCTRL,
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
static struct omap_hwmod_ocp_if dm81xx_alwon_l3_fast__tptc2 = {
|
||||
.master = &dm81xx_alwon_l3_fast_hwmod,
|
||||
.slave = &dm81xx_tptc2_hwmod,
|
||||
.clk = "sysclk4_ck",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_ocp_if dm81xx_tptc2__alwon_l3_fast = {
|
||||
.master = &dm81xx_tptc2_hwmod,
|
||||
.slave = &dm81xx_alwon_l3_fast_hwmod,
|
||||
.clk = "sysclk4_ck",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_class dm81xx_tptc3_hwmod_class = {
|
||||
.name = "tptc3",
|
||||
};
|
||||
|
||||
static struct omap_hwmod dm81xx_tptc3_hwmod = {
|
||||
.name = "tptc3",
|
||||
.class = &dm81xx_tptc3_hwmod_class,
|
||||
.clkdm_name = "alwon_l3s_clkdm",
|
||||
.main_clk = "sysclk4_ck",
|
||||
.prcm = {
|
||||
.omap4 = {
|
||||
.clkctrl_offs = DM81XX_CM_ALWON_TPTC3_CLKCTRL,
|
||||
.modulemode = MODULEMODE_SWCTRL,
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
static struct omap_hwmod_ocp_if dm81xx_alwon_l3_fast__tptc3 = {
|
||||
.master = &dm81xx_alwon_l3_fast_hwmod,
|
||||
.slave = &dm81xx_tptc3_hwmod,
|
||||
.clk = "sysclk4_ck",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
static struct omap_hwmod_ocp_if dm81xx_tptc3__alwon_l3_fast = {
|
||||
.master = &dm81xx_tptc3_hwmod,
|
||||
.slave = &dm81xx_alwon_l3_fast_hwmod,
|
||||
.clk = "sysclk4_ck",
|
||||
.user = OCP_USER_MPU,
|
||||
};
|
||||
|
||||
/*
|
||||
* REVISIT: Test and enable the following once clocks work:
|
||||
* dm81xx_l4_ls__mailbox
|
||||
@@ -1499,19 +1288,8 @@ static struct omap_hwmod_ocp_if *dm814x_hwmod_ocp_ifs[] __initdata = {
|
||||
&dm814x_l4_ls__mmc1,
|
||||
&dm814x_l4_ls__mmc2,
|
||||
&ti81xx_l4_ls__rtc,
|
||||
&dm81xx_alwon_l3_fast__tpcc,
|
||||
&dm81xx_alwon_l3_fast__tptc0,
|
||||
&dm81xx_alwon_l3_fast__tptc1,
|
||||
&dm81xx_alwon_l3_fast__tptc2,
|
||||
&dm81xx_alwon_l3_fast__tptc3,
|
||||
&dm81xx_tptc0__alwon_l3_fast,
|
||||
&dm81xx_tptc1__alwon_l3_fast,
|
||||
&dm81xx_tptc2__alwon_l3_fast,
|
||||
&dm81xx_tptc3__alwon_l3_fast,
|
||||
&dm814x_l4_ls__timer1,
|
||||
&dm814x_l4_ls__timer2,
|
||||
&dm814x_l4_hs__cpgmac0,
|
||||
&dm814x_cpgmac0__mdio,
|
||||
&dm81xx_alwon_l3_slow__gpmc,
|
||||
&dm814x_default_l3_slow__usbss,
|
||||
&dm814x_alwon_l3_med__mmc3,
|
||||
@@ -1554,15 +1332,6 @@ static struct omap_hwmod_ocp_if *dm816x_hwmod_ocp_ifs[] __initdata = {
|
||||
&dm81xx_emac0__mdio,
|
||||
&dm816x_l4_hs__emac1,
|
||||
&dm81xx_l4_hs__sata,
|
||||
&dm81xx_alwon_l3_fast__tpcc,
|
||||
&dm81xx_alwon_l3_fast__tptc0,
|
||||
&dm81xx_alwon_l3_fast__tptc1,
|
||||
&dm81xx_alwon_l3_fast__tptc2,
|
||||
&dm81xx_alwon_l3_fast__tptc3,
|
||||
&dm81xx_tptc0__alwon_l3_fast,
|
||||
&dm81xx_tptc1__alwon_l3_fast,
|
||||
&dm81xx_tptc2__alwon_l3_fast,
|
||||
&dm81xx_tptc3__alwon_l3_fast,
|
||||
&dm81xx_alwon_l3_slow__gpmc,
|
||||
&dm816x_default_l3_slow__usbss,
|
||||
NULL,
|
||||
|
Reference in New Issue
Block a user