[PATCH 2/2] ARM: AM43XX: HWMOD: Add rtc hwmod

Paul Walmsley paul at pwsan.com
Wed Feb 17 22:42:32 PST 2016


Hi Keerthy

On Thu, 18 Feb 2016, Keerthy wrote:

> The patch adds rtc hwmod. RTC module The RTC module is physically
> present on the AM438x SoC used on AM43X-EPOS-EVM, but it is permanently
> disabled. A secure RTC is used instead on these devices, where needed.
> . Hence adding it selectively using a seprate list to get RTC Module
> functional on the other am43x SoCs used on am437x-gp-evm and
> am437x-sk-evm.
> 
> Signed-off-by: Keerthy <j-keerthy at ti.com>
> ---
> 
> No Public TRM is available for AM438x SoC as of now.
> 
>  arch/arm/mach-omap2/omap_hwmod_43xx_data.c | 14 +++++++++++++-
>  1 file changed, 13 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm/mach-omap2/omap_hwmod_43xx_data.c b/arch/arm/mach-omap2/omap_hwmod_43xx_data.c
> index e97a894..fcffaf8 100644
> --- a/arch/arm/mach-omap2/omap_hwmod_43xx_data.c
> +++ b/arch/arm/mach-omap2/omap_hwmod_43xx_data.c
> @@ -1020,9 +1020,21 @@ static struct omap_hwmod_ocp_if *am43xx_hwmod_ocp_ifs[] __initdata = {
>  	NULL,
>  };
>  
> +static struct omap_hwmod_ocp_if *am43xx_rtc_hwmod_ocp_ifs[] __initdata = {
> +	&am33xx_l4_wkup__rtc,
> +	NULL,
> +};
> +
>  int __init am43xx_hwmod_init(void)
>  {
> +	int ret;
> +
>  	omap_hwmod_am43xx_reg();
>  	omap_hwmod_init();
> -	return omap_hwmod_register_links(am43xx_hwmod_ocp_ifs);
> +	ret = omap_hwmod_register_links(am43xx_hwmod_ocp_ifs);
> +
> +	if (!(of_machine_is_compatible("ti,am438x")))
> +		ret = omap_hwmod_register_links(am43xx_rtc_hwmod_ocp_ifs);
> +
> +	return ret;
>  }

Could you please invert the test of this case such that the RTC hwmod is 
only registered on AM43xx SoCs where it is specifically known to be 
enabled?

That way, if another AM43xx SoC comes out that doesn't have the RTC 
module, it won't inadvertently be registered.  This seems like a safer 
approach.

- Paul



More information about the linux-arm-kernel mailing list