[U-Boot] [PATCH V3 05/11] ARM: OMAP: Change set_pl310_ctrl_reg to be generic

Tom Rini trini at konsulko.com
Tue Mar 3 18:08:50 CET 2015


On Wed, Feb 25, 2015 at 02:55:13PM -0600, Nishanth Menon wrote:

> set_pl310_ctrl_reg does use the Secure Monitor Call (SMC) to setup
> PL310 control register, however, that is something that is generic
> enough to be used for OMAP5 generation of processors as well. The
> only difference being the service being invoked for the function.
> 
> So, convert the service to a macro and use a generic name (same as
> that used in Linux for some consistency). While at that, also add
> a data barrier which is necessary as per recommendation.
> 
> Signed-off-by: Nishanth Menon <nm at ti.com>
> ---
>  arch/arm/cpu/armv7/omap-common/lowlevel_init.S |   13 ++++++++-----
>  arch/arm/cpu/armv7/omap4/hwinit.c              |    4 ++--
>  arch/arm/include/asm/arch-omap4/sys_proto.h    |    5 ++++-
>  3 files changed, 14 insertions(+), 8 deletions(-)
> 
> diff --git a/arch/arm/cpu/armv7/omap-common/lowlevel_init.S b/arch/arm/cpu/armv7/omap-common/lowlevel_init.S
> index 86c0e4217478..9b24369e4dc1 100644
> --- a/arch/arm/cpu/armv7/omap-common/lowlevel_init.S
> +++ b/arch/arm/cpu/armv7/omap-common/lowlevel_init.S
> @@ -22,11 +22,14 @@ ENTRY(save_boot_params)
>  	bx	lr
>  ENDPROC(save_boot_params)
>  
> -ENTRY(set_pl310_ctrl_reg)
> -	PUSH	{r4-r11, lr}	@ save registers - ROM code may pollute
> +ENTRY(omap_smc1)
> +	PUSH	{r4-r12, lr}	@ save registers - ROM code may pollute
>  				@ our registers
> -	LDR	r12, =0x102	@ Set PL310 control register - value in R0
> +	MOV	r12, r0		@ Service
> +	MOV	r0, r1		@ Argument
> +	DSB
> +	DMB
>  	.word	0xe1600070	@ SMC #0 - hand assembled because -march=armv5
>  				@ call ROM Code API to set control register

Lets stop hand-crafting that call, we just call smc #0 elsewhere in the
code base these days.

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20150303/8168b71a/attachment.sig>


More information about the U-Boot mailing list