All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tony Lindgren <tony@atomide.com>
To: Marek Szyprowski <m.szyprowski@samsung.com>
Cc: linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	Tomasz Figa <tomasz.figa@gmail.com>,
	Kyungmin Park <kyungmin.park@samsung.com>,
	linux-samsung-soc@vger.kernel.org, linux-omap@vger.kernel.org,
	Arnd Bergmann <arnd@arndb.de>, Olof Johansson <olof@lixom.net>,
	Russell King - ARM Linux <linux@arm.linux.org.uk>,
	Kukjin Kim <kgene.kim@samsung.com>,
	lauraa@codeaurora.org, linus.walleij@linaro.org,
	drake@endlessm.com, loeliger@gmail.com,
	Mark Rutland <mark.rutland@arm.com>,
	nm@ti.com, khilman@linaro.org
Subject: Re: [PATCH v11 4/9] ARM: l2c: Add interface to ask hypervisor to configure L2C
Date: Mon, 5 Jan 2015 08:24:38 -0800	[thread overview]
Message-ID: <20150105162438.GD4081@atomide.com> (raw)
In-Reply-To: <1420460348-20302-5-git-send-email-m.szyprowski@samsung.com>

* Marek Szyprowski <m.szyprowski@samsung.com> [150105 04:22]:
> From: Tomasz Figa <t.figa@samsung.com>
> 
> Because certain secure hypervisor do not allow writes to individual L2C
> registers, but rather expect set of parameters to be passed as argument
> to secure monitor calls, there is a need to provide an interface for the
> L2C driver to ask the firmware to configure the hardware according to
> specified parameters. This patch adds such.
> 
> Signed-off-by: Tomasz Figa <t.figa@samsung.com>
> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>

Acked-by: Tony Lindgren <tony@atomide.com>

> ---
>  arch/arm/include/asm/outercache.h | 3 +++
>  arch/arm/mm/cache-l2x0.c          | 6 ++++++
>  2 files changed, 9 insertions(+)
> 
> diff --git a/arch/arm/include/asm/outercache.h b/arch/arm/include/asm/outercache.h
> index 891a56b35bcf..563b92fc2f41 100644
> --- a/arch/arm/include/asm/outercache.h
> +++ b/arch/arm/include/asm/outercache.h
> @@ -23,6 +23,8 @@
>  
>  #include <linux/types.h>
>  
> +struct l2x0_regs;
> +
>  struct outer_cache_fns {
>  	void (*inv_range)(unsigned long, unsigned long);
>  	void (*clean_range)(unsigned long, unsigned long);
> @@ -36,6 +38,7 @@ struct outer_cache_fns {
>  
>  	/* This is an ARM L2C thing */
>  	void (*write_sec)(unsigned long, unsigned);
> +	void (*configure)(const struct l2x0_regs *);
>  };
>  
>  extern struct outer_cache_fns outer_cache;
> diff --git a/arch/arm/mm/cache-l2x0.c b/arch/arm/mm/cache-l2x0.c
> index f9013320c8ce..dcde6086a228 100644
> --- a/arch/arm/mm/cache-l2x0.c
> +++ b/arch/arm/mm/cache-l2x0.c
> @@ -110,6 +110,11 @@ static inline void l2c_unlock(void __iomem *base, unsigned num)
>  
>  static void l2c_configure(void __iomem *base)
>  {
> +	if (outer_cache.configure) {
> +		outer_cache.configure(&l2x0_saved_regs);
> +		return;
> +	}
> +
>  	if (l2x0_data->configure)
>  		l2x0_data->configure(base);
>  
> @@ -910,6 +915,7 @@ static int __init __l2c_init(const struct l2c_init_data *data,
>  
>  	fns = data->outer_cache;
>  	fns.write_sec = outer_cache.write_sec;
> +	fns.configure = outer_cache.configure;
>  	if (data->fixup)
>  		data->fixup(l2x0_base, cache_id, &fns);
>  
> -- 
> 1.9.2
> 

WARNING: multiple messages have this Message-ID (diff)
From: tony@atomide.com (Tony Lindgren)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v11 4/9] ARM: l2c: Add interface to ask hypervisor to configure L2C
Date: Mon, 5 Jan 2015 08:24:38 -0800	[thread overview]
Message-ID: <20150105162438.GD4081@atomide.com> (raw)
In-Reply-To: <1420460348-20302-5-git-send-email-m.szyprowski@samsung.com>

* Marek Szyprowski <m.szyprowski@samsung.com> [150105 04:22]:
> From: Tomasz Figa <t.figa@samsung.com>
> 
> Because certain secure hypervisor do not allow writes to individual L2C
> registers, but rather expect set of parameters to be passed as argument
> to secure monitor calls, there is a need to provide an interface for the
> L2C driver to ask the firmware to configure the hardware according to
> specified parameters. This patch adds such.
> 
> Signed-off-by: Tomasz Figa <t.figa@samsung.com>
> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>

Acked-by: Tony Lindgren <tony@atomide.com>

> ---
>  arch/arm/include/asm/outercache.h | 3 +++
>  arch/arm/mm/cache-l2x0.c          | 6 ++++++
>  2 files changed, 9 insertions(+)
> 
> diff --git a/arch/arm/include/asm/outercache.h b/arch/arm/include/asm/outercache.h
> index 891a56b35bcf..563b92fc2f41 100644
> --- a/arch/arm/include/asm/outercache.h
> +++ b/arch/arm/include/asm/outercache.h
> @@ -23,6 +23,8 @@
>  
>  #include <linux/types.h>
>  
> +struct l2x0_regs;
> +
>  struct outer_cache_fns {
>  	void (*inv_range)(unsigned long, unsigned long);
>  	void (*clean_range)(unsigned long, unsigned long);
> @@ -36,6 +38,7 @@ struct outer_cache_fns {
>  
>  	/* This is an ARM L2C thing */
>  	void (*write_sec)(unsigned long, unsigned);
> +	void (*configure)(const struct l2x0_regs *);
>  };
>  
>  extern struct outer_cache_fns outer_cache;
> diff --git a/arch/arm/mm/cache-l2x0.c b/arch/arm/mm/cache-l2x0.c
> index f9013320c8ce..dcde6086a228 100644
> --- a/arch/arm/mm/cache-l2x0.c
> +++ b/arch/arm/mm/cache-l2x0.c
> @@ -110,6 +110,11 @@ static inline void l2c_unlock(void __iomem *base, unsigned num)
>  
>  static void l2c_configure(void __iomem *base)
>  {
> +	if (outer_cache.configure) {
> +		outer_cache.configure(&l2x0_saved_regs);
> +		return;
> +	}
> +
>  	if (l2x0_data->configure)
>  		l2x0_data->configure(base);
>  
> @@ -910,6 +915,7 @@ static int __init __l2c_init(const struct l2c_init_data *data,
>  
>  	fns = data->outer_cache;
>  	fns.write_sec = outer_cache.write_sec;
> +	fns.configure = outer_cache.configure;
>  	if (data->fixup)
>  		data->fixup(l2x0_base, cache_id, &fns);
>  
> -- 
> 1.9.2
> 

  reply	other threads:[~2015-01-05 16:28 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-05 12:18 [PATCH v11 0/9] Enable L2 cache support on Exynos4210/4x12 SoCs Marek Szyprowski
2015-01-05 12:18 ` Marek Szyprowski
2015-01-05 12:19 ` [PATCH v11 1/9] ARM: OMAP2+: use common l2cache initialization code Marek Szyprowski
2015-01-05 12:19   ` Marek Szyprowski
2015-01-05 16:21   ` Tony Lindgren
2015-01-05 16:21     ` Tony Lindgren
2015-01-05 20:25   ` Arnd Bergmann
2015-01-05 20:25     ` Arnd Bergmann
2015-01-07 14:37     ` Tomasz Figa
2015-01-07 14:37       ` Tomasz Figa
2015-01-07 14:37       ` Tomasz Figa
2015-01-05 12:19 ` [PATCH v11 2/9] ARM: l2c: use l2c_write_sec() for restoring latency and filter regs Marek Szyprowski
2015-01-05 12:19   ` Marek Szyprowski
2015-01-05 16:22   ` Tony Lindgren
2015-01-05 16:22     ` Tony Lindgren
2015-01-05 17:20   ` Nishanth Menon
2015-01-05 17:20     ` Nishanth Menon
2015-01-05 17:20     ` Nishanth Menon
2015-01-07 10:47     ` Marek Szyprowski
2015-01-07 10:47       ` Marek Szyprowski
2015-01-05 12:19 ` [PATCH v11 3/9] ARM: l2c: Refactor the driver to use commit-like interface Marek Szyprowski
2015-01-05 12:19   ` Marek Szyprowski
2015-01-05 16:23   ` Tony Lindgren
2015-01-05 16:23     ` Tony Lindgren
2015-01-05 17:22   ` Nishanth Menon
2015-01-05 17:22     ` Nishanth Menon
2015-01-05 17:22     ` Nishanth Menon
2015-01-07 11:28     ` Marek Szyprowski
2015-01-07 11:28       ` Marek Szyprowski
2015-01-05 12:19 ` [PATCH v11 4/9] ARM: l2c: Add interface to ask hypervisor to configure L2C Marek Szyprowski
2015-01-05 12:19   ` Marek Szyprowski
2015-01-05 12:19   ` Marek Szyprowski
2015-01-05 16:24   ` Tony Lindgren [this message]
2015-01-05 16:24     ` Tony Lindgren
2015-01-05 12:19 ` [PATCH v11 5/9] ARM: l2c: Get outer cache .write_sec callback from mach_desc only if not NULL Marek Szyprowski
2015-01-05 12:19   ` Marek Szyprowski
2015-01-05 16:25   ` Tony Lindgren
2015-01-05 16:25     ` Tony Lindgren
2015-01-05 12:19 ` [PATCH v11 6/9] ARM: l2c: Add support for overriding prefetch settings Marek Szyprowski
2015-01-05 12:19   ` Marek Szyprowski
2015-01-05 16:25   ` Tony Lindgren
2015-01-05 16:25     ` Tony Lindgren
2015-01-05 12:19 ` [PATCH v11 7/9] ARM: EXYNOS: Add .write_sec outer cache callback for L2C-310 Marek Szyprowski
2015-01-05 12:19   ` Marek Szyprowski
2015-01-05 12:19 ` [PATCH v11 8/9] ARM: EXYNOS: Add support for non-secure L2X0 resume Marek Szyprowski
2015-01-05 12:19   ` Marek Szyprowski
2015-01-05 12:19 ` [PATCH v11 9/9] ARM: dts: exynos4: Add nodes for L2 cache controller Marek Szyprowski
2015-01-05 12:19   ` Marek Szyprowski
2015-01-05 17:00 ` [PATCH v11 0/9] Enable L2 cache support on Exynos4210/4x12 SoCs Nishanth Menon
2015-01-05 17:00   ` Nishanth Menon
2015-01-05 17:00   ` Nishanth Menon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150105162438.GD4081@atomide.com \
    --to=tony@atomide.com \
    --cc=arnd@arndb.de \
    --cc=drake@endlessm.com \
    --cc=kgene.kim@samsung.com \
    --cc=khilman@linaro.org \
    --cc=kyungmin.park@samsung.com \
    --cc=lauraa@codeaurora.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=loeliger@gmail.com \
    --cc=m.szyprowski@samsung.com \
    --cc=mark.rutland@arm.com \
    --cc=nm@ti.com \
    --cc=olof@lixom.net \
    --cc=tomasz.figa@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.