Skip to content

Commit b05ff3c

Browse files
r-vigneshPaul Walmsley
authored andcommitted
ARM: OMAP2+: DRA7: Add hwmod entries for PWMSS
Add hwmod entries for the PWMSS on DRA7. Set l4_root_clk_div as the main_clk of PWMSS. It is fixed-factored clock equal to L4PER2_L3_GICLK/2(l3_iclk_div/2). Signed-off-by: Vignesh R <[email protected]> [[email protected]: Do not add eQEP, ePWM and eCAP hwmod entries] Signed-off-by: Franklin S Cooper Jr <[email protected]> [[email protected]: fixed sparse warnings; added missing comments] Signed-off-by: Paul Walmsley <[email protected]>
1 parent 9ad4d9a commit b05ff3c

File tree

1 file changed

+89
-0
lines changed

1 file changed

+89
-0
lines changed

arch/arm/mach-omap2/omap_hwmod_7xx_data.c

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -383,6 +383,68 @@ static struct omap_hwmod dra7xx_dcan2_hwmod = {
383383
},
384384
};
385385

386+
/* pwmss */
387+
static struct omap_hwmod_class_sysconfig dra7xx_epwmss_sysc = {
388+
.rev_offs = 0x0,
389+
.sysc_offs = 0x4,
390+
.sysc_flags = SYSC_HAS_SIDLEMODE | SYSC_HAS_SOFTRESET,
391+
.idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART),
392+
.sysc_fields = &omap_hwmod_sysc_type2,
393+
};
394+
395+
/*
396+
* epwmss class
397+
*/
398+
static struct omap_hwmod_class dra7xx_epwmss_hwmod_class = {
399+
.name = "epwmss",
400+
.sysc = &dra7xx_epwmss_sysc,
401+
};
402+
403+
/* epwmss0 */
404+
static struct omap_hwmod dra7xx_epwmss0_hwmod = {
405+
.name = "epwmss0",
406+
.class = &dra7xx_epwmss_hwmod_class,
407+
.clkdm_name = "l4per2_clkdm",
408+
.main_clk = "l4_root_clk_div",
409+
.prcm = {
410+
.omap4 = {
411+
.modulemode = MODULEMODE_SWCTRL,
412+
.clkctrl_offs = DRA7XX_CM_L4PER2_PWMSS1_CLKCTRL_OFFSET,
413+
.context_offs = DRA7XX_RM_L4PER2_PWMSS1_CONTEXT_OFFSET,
414+
},
415+
},
416+
};
417+
418+
/* epwmss1 */
419+
static struct omap_hwmod dra7xx_epwmss1_hwmod = {
420+
.name = "epwmss1",
421+
.class = &dra7xx_epwmss_hwmod_class,
422+
.clkdm_name = "l4per2_clkdm",
423+
.main_clk = "l4_root_clk_div",
424+
.prcm = {
425+
.omap4 = {
426+
.modulemode = MODULEMODE_SWCTRL,
427+
.clkctrl_offs = DRA7XX_CM_L4PER2_PWMSS2_CLKCTRL_OFFSET,
428+
.context_offs = DRA7XX_RM_L4PER2_PWMSS2_CONTEXT_OFFSET,
429+
},
430+
},
431+
};
432+
433+
/* epwmss2 */
434+
static struct omap_hwmod dra7xx_epwmss2_hwmod = {
435+
.name = "epwmss2",
436+
.class = &dra7xx_epwmss_hwmod_class,
437+
.clkdm_name = "l4per2_clkdm",
438+
.main_clk = "l4_root_clk_div",
439+
.prcm = {
440+
.omap4 = {
441+
.modulemode = MODULEMODE_SWCTRL,
442+
.clkctrl_offs = DRA7XX_CM_L4PER2_PWMSS3_CLKCTRL_OFFSET,
443+
.context_offs = DRA7XX_RM_L4PER2_PWMSS3_CONTEXT_OFFSET,
444+
},
445+
},
446+
};
447+
386448
/*
387449
* 'dma' class
388450
*
@@ -3693,6 +3755,30 @@ static struct omap_hwmod_ocp_if dra7xx_l4_wkup__wd_timer2 = {
36933755
.user = OCP_USER_MPU | OCP_USER_SDMA,
36943756
};
36953757

3758+
/* l4_per2 -> epwmss0 */
3759+
static struct omap_hwmod_ocp_if dra7xx_l4_per2__epwmss0 = {
3760+
.master = &dra7xx_l4_per2_hwmod,
3761+
.slave = &dra7xx_epwmss0_hwmod,
3762+
.clk = "l4_root_clk_div",
3763+
.user = OCP_USER_MPU,
3764+
};
3765+
3766+
/* l4_per2 -> epwmss1 */
3767+
static struct omap_hwmod_ocp_if dra7xx_l4_per2__epwmss1 = {
3768+
.master = &dra7xx_l4_per2_hwmod,
3769+
.slave = &dra7xx_epwmss1_hwmod,
3770+
.clk = "l4_root_clk_div",
3771+
.user = OCP_USER_MPU,
3772+
};
3773+
3774+
/* l4_per2 -> epwmss2 */
3775+
static struct omap_hwmod_ocp_if dra7xx_l4_per2__epwmss2 = {
3776+
.master = &dra7xx_l4_per2_hwmod,
3777+
.slave = &dra7xx_epwmss2_hwmod,
3778+
.clk = "l4_root_clk_div",
3779+
.user = OCP_USER_MPU,
3780+
};
3781+
36963782
static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
36973783
&dra7xx_l3_main_1__dmm,
36983784
&dra7xx_l3_main_2__l3_instr,
@@ -3814,6 +3900,9 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
38143900
&dra7xx_l3_main_1__vcp2,
38153901
&dra7xx_l4_per2__vcp2,
38163902
&dra7xx_l4_wkup__wd_timer2,
3903+
&dra7xx_l4_per2__epwmss0,
3904+
&dra7xx_l4_per2__epwmss1,
3905+
&dra7xx_l4_per2__epwmss2,
38173906
NULL,
38183907
};
38193908

0 commit comments

Comments
 (0)