[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <32931694-b7ec-9678-92b6-f6b43558090a@ti.com>
Date: Mon, 12 Jun 2017 11:16:30 +0300
From: Tero Kristo <t-kristo@...com>
To: Sebastian Reichel <sre@...nel.org>,
Tony Lindgren <tony@...mide.com>,
Paul Walmsley <paul@...an.com>,
BenoƮt Cousson <bcousson@...libre.com>
CC: Russell King <linux@...linux.org.uk>, <linux-omap@...r.kernel.org>,
<linux-arm-kernel@...ts.infradead.org>,
<linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 3/3] ARM: OMAP4: hwmod data: add des
On 10/06/17 02:12, Sebastian Reichel wrote:
> This fixes the following error during kernel boot:
>
> platform 480a5000.des: Cannot lookup hwmod 'des'
>
> Unfortunately the DES module is only documented partly
> in the OMAP4430 TRM. I found an old patch from Joel,
> which I took over and updated for currently mainline.
>
> Signed-off-by: Joel Fernandes <joelf@...com>
> Signed-off-by: Sebastian Reichel <sre@...nel.org>
> ---
> arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 37 ++++++++++++++++++++++++++++++
> 1 file changed, 37 insertions(+)
>
> diff --git a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
> index 18feb49e813b..f2f13c678cfb 100644
> --- a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
> +++ b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
> @@ -993,6 +993,42 @@ static struct omap_hwmod_ocp_if omap44xx_l3_main_2__aes1 = {
> };
>
> /*
> + * 'des' class for DES3DES module
> + */
> +static struct omap_hwmod_class_sysconfig omap44xx_des_sysc = {
> + .rev_offs = 0x30,
> + .sysc_offs = 0x34,
> + .syss_offs = 0x38,
> + .sysc_flags = SYSS_HAS_RESET_STATUS,
> +};
> +
> +static struct omap_hwmod_class omap44xx_des_hwmod_class = {
> + .name = "des",
> + .sysc = &omap44xx_des_sysc,
> +};
> +
> +static struct omap_hwmod omap44xx_des_hwmod = {
> + .name = "des",
> + .class = &omap44xx_des_hwmod_class,
> + .clkdm_name = "l4_secure_clkdm",
> + .main_clk = "des_fck",
Change the above to l3_div_ck.
> + .prcm = {
> + .omap4 = {
> + .context_offs = OMAP4_RM_L4SEC_DES3DES_CONTEXT_OFFSET,
> + .clkctrl_offs = OMAP4_CM_L4SEC_DES3DES_CLKCTRL_OFFSET,
> + .modulemode = MODULEMODE_SWCTRL,
> + },
> + },
> +};
> +
> +struct omap_hwmod_ocp_if omap44xx_l4_per__des = {
> + .master = &omap44xx_l4_per_hwmod,
> + .slave = &omap44xx_des_hwmod,
> + .clk = "des_fck",
l3_div_ck.
> + .user = OCP_USER_MPU | OCP_USER_SDMA,
> +};
l4_per is wrong interconnect for this module. It is actually connected
to l3_main_2.
> +
> +/*
> * 'fdif' class
> * face detection hw accelerator module
> */
> @@ -4834,6 +4870,7 @@ static struct omap_hwmod_ocp_if *omap44xx_hwmod_ocp_ifs[] __initdata = {
> &omap44xx_mpu__emif1,
> &omap44xx_mpu__emif2,
> &omap44xx_l3_main_2__aes1,
> + &omap44xx_l4_per__des,
> NULL,
> };
>
>
Powered by blists - more mailing lists