All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tomasz Figa <tomasz.figa@gmail.com>
To: Tomasz Figa <t.figa@samsung.com>, linux-samsung-soc@vger.kernel.org
Cc: linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	Kukjin Kim <kgene.kim@samsung.com>,
	Russell King - ARM Linux <linux@arm.linux.org.uk>,
	lauraa@codeaurora.org, linux-omap@vger.kernel.org,
	linus.walleij@linaro.org, santosh.shilimkar@ti.com,
	tony@atomide.com, drake@endlessm.com,
	Marek Szyprowski <m.szyprowski@samsung.com>,
	loeliger@gmail.com
Subject: Re: [PATCH v3 0/7] Enable L2 cache support on Exynos4210/4x12 SoCs
Date: Thu, 31 Jul 2014 21:08:53 +0200	[thread overview]
Message-ID: <53DA9445.1090201@gmail.com> (raw)
In-Reply-To: <1405615142-21426-1-git-send-email-t.figa@samsung.com>

On 17.07.2014 18:38, Tomasz Figa wrote:
> This series intends to add support for L2 cache on Exynos4 SoCs on boards
> running under secure firmware, which requires certain initialization steps
> to be done with help of firmware, as selected registers are writable only
> from secure mode.
> 
> First four patches extend existing support for secure write in L2C driver
> to account for design of secure firmware running on Exynos. Namely:
>  1) direct read access to certain registers is needed on Exynos, because
>     secure firmware calls set several registers at once,
>  2) not all boards are running secure firmware, so .write_sec callback
>     needs to be installed in Exynos firmware ops initialization code,
>  3) write access to {DATA,TAG}_LATENCY_CTRL registers fron non-secure world
>     is not allowed and so must use l2c_write_sec as well,
>  4) on certain boards, default value of prefetch register is incorrect
>     and must be overridden at L2C initialization.
> For boards running with firmware that provides access to individual
> L2C registers this series should introduce no functional changes. However
> since the driver is widely used on other platforms I'd like to kindly ask
> any interested people for testing.
> 
> Further two patches add impelmentation of .write_sec for Exynos secure
> firmware and necessary DT nodes to enable L2 cache.
> 
> Tested on Exynos4210-based Universal C210 and Trats (both without secure
> firmware) and Exynos4412-based TRATS2 and ODROID-U3 boards (both with secure
> firmware).
> 
> Depends on:
>  - [PATCH] ARM: make it easier to check the CPU part number correctly
>    (http://thread.gmane.org/gmane.linux.ports.arm.kernel/335126
>     already in linux-next)
>  - [PATCH v2 0/2] Firmware-assisted suspend/resume of Exynos SoCs
>    (https://lkml.org/lkml/2014/7/17/431)
> 
> Changes since v2:
> (https://lkml.org/lkml/2014/6/25/416)
>  - refactored L2C driver to use commit-like interface and make it no longer
>    depend on availability of writes to individual registers,
>  - moved L2C resume to assembly code, because doing it later makes some
>    systems unstable - this is also needed for deeper cpuidle modes,
>  - dropped unnecessary patch hacking around the .write_sec interface,
>  - dropped patch making the driver use l2c_write_sec() for LATENCY_CTRL
>    registers as Exynos is no longer affected and I'm not aware of any
>    reports that this is also needed on other platforms (can be applied
>    separately if it turns out to be so),
>  - rebased onto next-20140717 tag of linux-next tree.
> 
> Changes since v1:
> (https://www.mail-archive.com/linux-omap@vger.kernel.org/msg106323.html)
>  - rebased onto for-next branch of linux-samsung tree,
>  - changed argument order of outer_cache.write_sec() callback to match
>    l2c_write_sec() function in cache-l2x0.c,
>  - added support of overriding of prefetch settings to work around incorrect
>    default settings on certain Exynos4x12-based boards,
>  - added call to firmware to invalidate whole L2 cache before setting enable
>    bit in L2C control register (required by Exynos secure firmware).
> 
> Tomasz Figa (7):
>   ARM: l2c: Refactor the driver to use commit-like interface
>   ARM: l2c: Add interface to ask hypervisor to configure L2C
>   ARM: l2c: Get outer cache .write_sec callback from mach_desc only if
>     not NULL
>   ARM: l2c: Add support for overriding prefetch settings
>   ARM: EXYNOS: Add .write_sec outer cache callback for L2C-310
>   ARM: EXYNOS: Add support for non-secure L2X0 resume
>   ARM: dts: exynos4: Add nodes for L2 cache controller
> 
>  Documentation/devicetree/bindings/arm/l2cc.txt |  10 +
>  arch/arm/boot/dts/exynos4210.dtsi              |   9 +
>  arch/arm/boot/dts/exynos4x12.dtsi              |  14 ++
>  arch/arm/include/asm/outercache.h              |   3 +
>  arch/arm/kernel/irq.c                          |   3 +-
>  arch/arm/mach-exynos/common.h                  |   1 +
>  arch/arm/mach-exynos/firmware.c                |  40 ++++
>  arch/arm/mach-exynos/sleep.S                   |  41 +++++
>  arch/arm/mm/cache-l2x0.c                       | 245 ++++++++++++++++---------
>  9 files changed, 274 insertions(+), 92 deletions(-)
> 

Any comments for this series?

Best regards,
Tomasz

WARNING: multiple messages have this Message-ID (diff)
From: tomasz.figa@gmail.com (Tomasz Figa)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 0/7] Enable L2 cache support on Exynos4210/4x12 SoCs
Date: Thu, 31 Jul 2014 21:08:53 +0200	[thread overview]
Message-ID: <53DA9445.1090201@gmail.com> (raw)
In-Reply-To: <1405615142-21426-1-git-send-email-t.figa@samsung.com>

On 17.07.2014 18:38, Tomasz Figa wrote:
> This series intends to add support for L2 cache on Exynos4 SoCs on boards
> running under secure firmware, which requires certain initialization steps
> to be done with help of firmware, as selected registers are writable only
> from secure mode.
> 
> First four patches extend existing support for secure write in L2C driver
> to account for design of secure firmware running on Exynos. Namely:
>  1) direct read access to certain registers is needed on Exynos, because
>     secure firmware calls set several registers at once,
>  2) not all boards are running secure firmware, so .write_sec callback
>     needs to be installed in Exynos firmware ops initialization code,
>  3) write access to {DATA,TAG}_LATENCY_CTRL registers fron non-secure world
>     is not allowed and so must use l2c_write_sec as well,
>  4) on certain boards, default value of prefetch register is incorrect
>     and must be overridden at L2C initialization.
> For boards running with firmware that provides access to individual
> L2C registers this series should introduce no functional changes. However
> since the driver is widely used on other platforms I'd like to kindly ask
> any interested people for testing.
> 
> Further two patches add impelmentation of .write_sec for Exynos secure
> firmware and necessary DT nodes to enable L2 cache.
> 
> Tested on Exynos4210-based Universal C210 and Trats (both without secure
> firmware) and Exynos4412-based TRATS2 and ODROID-U3 boards (both with secure
> firmware).
> 
> Depends on:
>  - [PATCH] ARM: make it easier to check the CPU part number correctly
>    (http://thread.gmane.org/gmane.linux.ports.arm.kernel/335126
>     already in linux-next)
>  - [PATCH v2 0/2] Firmware-assisted suspend/resume of Exynos SoCs
>    (https://lkml.org/lkml/2014/7/17/431)
> 
> Changes since v2:
> (https://lkml.org/lkml/2014/6/25/416)
>  - refactored L2C driver to use commit-like interface and make it no longer
>    depend on availability of writes to individual registers,
>  - moved L2C resume to assembly code, because doing it later makes some
>    systems unstable - this is also needed for deeper cpuidle modes,
>  - dropped unnecessary patch hacking around the .write_sec interface,
>  - dropped patch making the driver use l2c_write_sec() for LATENCY_CTRL
>    registers as Exynos is no longer affected and I'm not aware of any
>    reports that this is also needed on other platforms (can be applied
>    separately if it turns out to be so),
>  - rebased onto next-20140717 tag of linux-next tree.
> 
> Changes since v1:
> (https://www.mail-archive.com/linux-omap at vger.kernel.org/msg106323.html)
>  - rebased onto for-next branch of linux-samsung tree,
>  - changed argument order of outer_cache.write_sec() callback to match
>    l2c_write_sec() function in cache-l2x0.c,
>  - added support of overriding of prefetch settings to work around incorrect
>    default settings on certain Exynos4x12-based boards,
>  - added call to firmware to invalidate whole L2 cache before setting enable
>    bit in L2C control register (required by Exynos secure firmware).
> 
> Tomasz Figa (7):
>   ARM: l2c: Refactor the driver to use commit-like interface
>   ARM: l2c: Add interface to ask hypervisor to configure L2C
>   ARM: l2c: Get outer cache .write_sec callback from mach_desc only if
>     not NULL
>   ARM: l2c: Add support for overriding prefetch settings
>   ARM: EXYNOS: Add .write_sec outer cache callback for L2C-310
>   ARM: EXYNOS: Add support for non-secure L2X0 resume
>   ARM: dts: exynos4: Add nodes for L2 cache controller
> 
>  Documentation/devicetree/bindings/arm/l2cc.txt |  10 +
>  arch/arm/boot/dts/exynos4210.dtsi              |   9 +
>  arch/arm/boot/dts/exynos4x12.dtsi              |  14 ++
>  arch/arm/include/asm/outercache.h              |   3 +
>  arch/arm/kernel/irq.c                          |   3 +-
>  arch/arm/mach-exynos/common.h                  |   1 +
>  arch/arm/mach-exynos/firmware.c                |  40 ++++
>  arch/arm/mach-exynos/sleep.S                   |  41 +++++
>  arch/arm/mm/cache-l2x0.c                       | 245 ++++++++++++++++---------
>  9 files changed, 274 insertions(+), 92 deletions(-)
> 

Any comments for this series?

Best regards,
Tomasz

  parent reply	other threads:[~2014-07-31 19:08 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-17 16:38 [PATCH v3 0/7] Enable L2 cache support on Exynos4210/4x12 SoCs Tomasz Figa
2014-07-17 16:38 ` Tomasz Figa
2014-07-17 16:38 ` Tomasz Figa
2014-07-17 16:38 ` [PATCH v3 1/7] ARM: l2c: Refactor the driver to use commit-like interface Tomasz Figa
2014-07-17 16:38   ` Tomasz Figa
2014-08-02 22:09   ` Russell King - ARM Linux
2014-08-02 22:09     ` Russell King - ARM Linux
2014-08-02 22:16     ` Tomasz Figa
2014-08-02 22:16       ` Tomasz Figa
2014-07-17 16:38 ` [PATCH v3 2/7] ARM: l2c: Add interface to ask hypervisor to configure L2C Tomasz Figa
2014-07-17 16:38   ` Tomasz Figa
2014-07-17 16:38   ` Tomasz Figa
2014-07-17 16:38 ` [PATCH v3 3/7] ARM: l2c: Get outer cache .write_sec callback from mach_desc only if not NULL Tomasz Figa
2014-07-17 16:38   ` Tomasz Figa
2014-07-17 16:38   ` Tomasz Figa
2014-07-17 16:38 ` [PATCH v3 4/7] ARM: l2c: Add support for overriding prefetch settings Tomasz Figa
2014-07-17 16:38   ` Tomasz Figa
2014-07-17 16:38   ` Tomasz Figa
2014-07-17 16:39 ` [PATCH v3 5/7] ARM: EXYNOS: Add .write_sec outer cache callback for L2C-310 Tomasz Figa
2014-07-17 16:39   ` Tomasz Figa
2014-07-17 16:39 ` [PATCH v3 6/7] ARM: EXYNOS: Add support for non-secure L2X0 resume Tomasz Figa
2014-07-17 16:39   ` Tomasz Figa
2014-07-17 16:39 ` [PATCH v3 7/7] ARM: dts: exynos4: Add nodes for L2 cache controller Tomasz Figa
2014-07-17 16:39   ` Tomasz Figa
2014-07-31 19:08 ` Tomasz Figa [this message]
2014-07-31 19:08   ` [PATCH v3 0/7] Enable L2 cache support on Exynos4210/4x12 SoCs Tomasz Figa

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=53DA9445.1090201@gmail.com \
    --to=tomasz.figa@gmail.com \
    --cc=drake@endlessm.com \
    --cc=kgene.kim@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=santosh.shilimkar@ti.com \
    --cc=t.figa@samsung.com \
    --cc=tony@atomide.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.