Christoffer Dall | 18 Jun 2013 04:17
Favicon

[RFC PATCH 1/2] KVM: ARM: Transparent huge pages and hugetlbfs support

From: Christoffer Dall <cdall <at> cs.columbia.edu>

Support transparent huge pages in 32-bit KVM/ARM.  The whole
transparent_hugepage_adjust stuff is far from pretty, but this is how
it's solved on x86 so we duplicate their logic.  This should be shared
across architectures if possible (like many other things), but can
always be changed down the road.

The pud_huge checking on the unmap path may feel a bit silly as the
pud_huge check is always defined to false, but the compiler should be
smart about this.

Signed-off-by: Christoffer Dall <christoffer.dall <at> linaro.org>
---
 arch/arm/include/asm/kvm_host.h |   7 +-
 arch/arm/include/asm/kvm_mmu.h  |   6 +-
 arch/arm/kvm/mmu.c              | 158 +++++++++++++++++++++++++++++++++-------
 3 files changed, 137 insertions(+), 34 deletions(-)

diff --git a/arch/arm/include/asm/kvm_host.h b/arch/arm/include/asm/kvm_host.h
index 1f3cee2..45a165e 100644
--- a/arch/arm/include/asm/kvm_host.h
+++ b/arch/arm/include/asm/kvm_host.h
 <at>  <at>  -33,10 +33,9  <at>  <at> 

 #define KVM_VCPU_MAX_FEATURES 1

-/* We don't currently support large pages. */
-#define KVM_HPAGE_GFN_SHIFT(x)	0
-#define KVM_NR_PAGE_SIZES	1
(Continue reading)

Christoffer Dall | 18 Jun 2013 03:37
Favicon

[PATCH] arm64: Define PTE_TYPE_HUGEPAGE

PTE_TYPE_HUGEPAGE is referenced by pte_huge, but because nobody uses
this macro it doesn't fail yet.  KVM will be using this when 32-bit
support for huge pages is added so add it.

Signed-off-by: Christoffer Dall <christoffer.dall <at> linaro.org>
---
 arch/arm64/include/asm/pgtable-hwdef.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm64/include/asm/pgtable-hwdef.h b/arch/arm64/include/asm/pgtable-hwdef.h
index 66367c6..0219523 100644
--- a/arch/arm64/include/asm/pgtable-hwdef.h
+++ b/arch/arm64/include/asm/pgtable-hwdef.h
 <at>  <at>  -54,6 +54,7  <at>  <at> 
 #define PTE_TYPE_MASK		(_AT(pteval_t, 3) << 0)
 #define PTE_TYPE_FAULT		(_AT(pteval_t, 0) << 0)
 #define PTE_TYPE_PAGE		(_AT(pteval_t, 3) << 0)
+#define PTE_TYPE_HUGEPAGE	(_AT(pteval_t, 1) << 0)
 #define PTE_USER		(_AT(pteval_t, 1) << 6)		/* AP[1] */
 #define PTE_RDONLY		(_AT(pteval_t, 1) << 7)		/* AP[2] */
 #define PTE_SHARED		(_AT(pteval_t, 3) << 8)		/* SH[1:0], inner shareable */
--

-- 
1.8.1.2
Shawn Guo | 18 Jun 2013 03:23
Favicon

[RESEND 1/2] staging: drm/imx: Add LDB support

From: Sascha Hauer <s.hauer <at> pengutronix.de>

This adds support for the LVDS Display Bridge contained
in i.MX5 and i.MX6 SoCs.

Bit mapping, data width, and video timings are configurable
via device tree. Dual-channel mode is supported for a single
high-resolution source.

Signed-off-by: Sascha Hauer <s.hauer <at> pengutronix.de>
Signed-off-by: Philipp Zabel <p.zabel <at> pengutronix.de>
Signed-off-by: Shawn Guo <shawn.guo <at> linaro.org>
---
 .../devicetree/bindings/staging/imx-drm/ldb.txt    |   99 ++++
 drivers/staging/imx-drm/Kconfig                    |    8 +
 drivers/staging/imx-drm/Makefile                   |    1 +
 drivers/staging/imx-drm/imx-ldb.c                  |  609 ++++++++++++++++++++
 4 files changed, 717 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/staging/imx-drm/ldb.txt
 create mode 100644 drivers/staging/imx-drm/imx-ldb.c

diff --git a/Documentation/devicetree/bindings/staging/imx-drm/ldb.txt b/Documentation/devicetree/bindings/staging/imx-drm/ldb.txt
new file mode 100644
index 0000000..ed93778
--- /dev/null
+++ b/Documentation/devicetree/bindings/staging/imx-drm/ldb.txt
 <at>  <at>  -0,0 +1,99  <at>  <at> 
+Device-Tree bindings for LVDS Display Bridge (ldb)
+
+LVDS Display Bridge
(Continue reading)

Heiko Stübner | 18 Jun 2013 00:43
Picon
Gravatar

[PATCH 0/4] ARM: rockchip: add smp functionality

This series enables the use of the additional cores on Rockchip
Cortex-A9 SoCs.

To achieve this, add the scu, the needed sram and power-management-unit.

This is again new teritory for me, so I might've messed up something,
but overall I'm happy to have gained a bit of smp understanding :-)

This of course goes on top of the basic support series.

Heiko Stuebner (4):
  arm: rockchip: add snoop-control-unit
  arm: rockchip: add sram dt nodes and documentation
  arm: rockchip: add power-management-unit dt node
  arm: rockchip: add smp bringup code

 .../devicetree/bindings/arm/rockchip/pmu.txt       |   16 +++
 .../devicetree/bindings/arm/rockchip/smp-sram.txt  |   29 ++++
 arch/arm/boot/dts/rk3066a.dtsi                     |   24 ++++
 arch/arm/mach-rockchip/Kconfig                     |    1 +
 arch/arm/mach-rockchip/Makefile                    |    1 +
 arch/arm/mach-rockchip/core.h                      |   22 +++
 arch/arm/mach-rockchip/headsmp.S                   |   32 +++++
 arch/arm/mach-rockchip/platsmp.c                   |  145 ++++++++++++++++++++
 arch/arm/mach-rockchip/rockchip.c                  |    2 +
 9 files changed, 272 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/arm/rockchip/pmu.txt
 create mode 100644 Documentation/devicetree/bindings/arm/rockchip/smp-sram.txt
 create mode 100644 arch/arm/mach-rockchip/core.h
 create mode 100644 arch/arm/mach-rockchip/headsmp.S
(Continue reading)

André Hentschel | 18 Jun 2013 00:13
Picon
Favicon
Gravatar

[PATCH v6] arm: Preserve the user r/w register TPIDRURW on context, switch and fork

From: André Hentschel <nerv <at> dawncrow.de>

Since commit 6a1c53124aa1 the user writeable TLS register was zeroed to
prevent it from being used as a covert channel between two tasks.

There are more and more applications coming to Windows RT,
Wine could support them, but mostly they expect to have
the thread environment block (TEB) in TPIDRURW.

This patch preserves that register per thread instead of clearing it.
Unlike the TPIDRURO, which is already switched, the TPIDRURW
can be updated from userspace so needs careful treatment in the case that we
modify TPIDRURW and call fork(). To avoid this we must always read
TPIDRURW in copy_thread.

Signed-off-by: André Hentschel <nerv <at> dawncrow.de>
Signed-off-by: Will Deacon <will.deacon <at> arm.com>
Signed-off-by: Jonathan Austin <jonathan.austin <at> arm.com> 

---
This patch is against Linux 3.10-rc6 (7d132055814ef17a6c7b69f342244c410a5e000f)

v2: rework and fixup of v1, based on a suggested patch by Will Deacon
v3: total rework and fixup of v2
v4: removed condition on assembler instruction,
    adapted my code to kernel-style, both based on comments by Will Deacon
v5: rebased v4 on 3.10-rc2 and adding this version history
v6: moved loading the TLS registers to the macros
    (fixing the "LDRD is not supported on all the CPUs we have" problem)

(Continue reading)

Paul Gortmaker | 17 Jun 2013 23:11
Favicon

[PATCH] arm: delete __cpuinit usage from all users

The __cpuinit type of throwaway sections might have made sense
some time ago when RAM was more constrained, but now the savings
do not offset the cost and complications.  For example, the fix in
commit 5e427ec2d0 ("x86: Fix bit corruption at CPU resume time")
is a good example of the nasty type of bugs that can be created
with improper use of the various __init prefixes.

After a discussion on LKML[1] it was decided that cpuinit should go
the way of devinit and be phased out.  Once all the users are gone,
we can then finally remove the macros themselves from linux/init.h.

This removes all the ARM uses of the __cpuinit macros.

[1] https://lkml.org/lkml/2013/5/20/589

Signed-off-by: Paul Gortmaker <paul.gortmaker <at> windriver.com>
---

[This was generated against today's linux-next tree ; I'm assuming
 most/all pending ARM changes are in there currently.]

 arch/arm/common/mcpm_platsmp.c            |  4 ++--
 arch/arm/include/asm/arch_timer.h         |  2 +-
 arch/arm/kernel/hw_breakpoint.c           |  4 ++--
 arch/arm/kernel/perf_event_cpu.c          |  6 +++---
 arch/arm/kernel/psci_smp.c                |  3 +--
 arch/arm/kernel/smp.c                     | 18 +++++++++---------
 arch/arm/kernel/smp_twd.c                 |  6 +++---
 arch/arm/lib/delay.c                      |  2 +-
 arch/arm/mach-exynos/platsmp.c            |  4 ++--
(Continue reading)

Daniel Drake | 17 Jun 2013 17:54
Favicon

[PATCH 1/2] clk: mmp: use global clock lock

The mmp platform shares a lock between different clock types, and all
clocks are currently initialized by static bindings.

Move this static/private lock into global context so that it can
easily be shared by clocks that will be defined by the device tree in
followup patches.

Signed-off-by: Daniel Drake <dsd <at> laptop.org>
---
 drivers/clk/mmp/Makefile   |   2 +-
 drivers/clk/mmp/clk-apbc.c |  38 +++++----------
 drivers/clk/mmp/clk-apmu.c |  20 ++------
 drivers/clk/mmp/clk-mmp2.c | 116 ++++++++++++++++++++++-----------------------
 drivers/clk/mmp/clk.h      |   8 ++--
 drivers/clk/mmp/common.c   |  13 +++++
 6 files changed, 92 insertions(+), 105 deletions(-)
 create mode 100644 drivers/clk/mmp/common.c

diff --git a/drivers/clk/mmp/Makefile b/drivers/clk/mmp/Makefile
index 392d780..31aacb5 100644
--- a/drivers/clk/mmp/Makefile
+++ b/drivers/clk/mmp/Makefile
 <at>  <at>  -2,7 +2,7  <at>  <at> 
 # Makefile for mmp specific clk
 #

-obj-y += clk-apbc.o clk-apmu.o clk-frac.o
+obj-y += common.o clk-apbc.o clk-apmu.o clk-frac.o

 obj-$(CONFIG_CPU_PXA168) += clk-pxa168.o
(Continue reading)

Shawn Guo | 17 Jun 2013 15:53
Favicon

[GIT PULL] ARM: imx: device tree changes for 3.11

Hi Arnd, Olof,

Here is the imx device tree change set I collected for 3.11.  It's based
on imx-soc-3.11 change set for sake of dependency.  I'm including
drivers/bus/imx-weim.c change in the pull request, as it's been agreed
that we can do this before we find a maintainer for drivers/bus.

Shawn

The following changes since commit 3bfbc6cd9b41f937a134ba65a4a1eefba062b9a8:

  ARM: imx_v6_v7_defconfig: Enable Vybrid VF610 (2013-06-17 15:45:17 +0800)

are available in the git repository at:

  git://git.linaro.org/people/shawnguo/linux-2.6.git tags/imx-dt-3.11

for you to fetch changes up to 93b331cec9e15210af1da9782bf699e5d3a61f0f:

  ARM: dts: imx27: Add VPU devicetree node (2013-06-17 16:04:34 +0800)

----------------------------------------------------------------
imx device tree changes for 3.11:

* A bunch of new board additions, imx6sl-evk, vf610-twr, imx53-tx53,
  imx53-m53evk and imx27-phytec-phycore
* Various pinctrl setting updates and additions
* Enable various on board peripherals, usb, audio, nor, display etc.
* Configure L2 cache data and tag latency from device tree
* Add imx-weim bus driver
(Continue reading)

Shawn Guo | 17 Jun 2013 15:42
Favicon

[GIT PULL] ARM: imx: soc changes for 3.11

Hi Arnd, Olof,

This is the imx soc change set I queued for 3.11.  There is a trivial
merge conflict with branch mvebu/regmap, and linux-next should have
the resolution.

Shawn

The following changes since commit 7d132055814ef17a6c7b69f342244c410a5e000f:

  Linux 3.10-rc6 (2013-06-15 11:51:07 -1000)

are available in the git repository at:

  git://git.linaro.org/people/shawnguo/linux-2.6.git tags/imx-soc-3.11

for you to fetch changes up to 3bfbc6cd9b41f937a134ba65a4a1eefba062b9a8:

  ARM: imx_v6_v7_defconfig: Enable Vybrid VF610 (2013-06-17 15:45:17 +0800)

----------------------------------------------------------------
imx soc changes for 3.11:

* New SoCs i.MX6 Sololite and Vybrid VF610 support
* imx5 and imx6 clock fixes and additions
* Update clock driver to use of_clk_init() function
* Refactor restart routine mxc_restart() to get it work for DT boot
  as well
* Clean up mxc specific ulpi access ops
* imx defconfig updates
(Continue reading)

Shawn Guo | 17 Jun 2013 15:31
Favicon

Re: [GIT PULL] ARM: mxs: device tree changes for 3.11

On Mon, Jun 17, 2013 at 08:52:01PM +0800, Shawn Guo wrote:
> Arnd, Olof,
> 
> Here is the device tree changes for 3.11.  There are a couple of
> patches which should be soc changes.  I collected them on mxs/dt branch
> and sent them together with device tree pull request here, considering
> the volume for soc changes in this cycle is not high.  Hope it's fine.

Forgot mentioning that there is a trivial conflict with branch
machdesc/cleanup on arch/arm/mach-mxs/mach-mxs.c.  linux-next has
the resolution for reference.

Shawn

[PATCH 0/5] ARM: at91: rm9200 dt updates

Hi,

	The following patch series enable rm9200 in the dt defconfig and add
	- spi
	- pqfp package version

The following changes since commit 24ce10e142e7b063c4ae4437dd3b290fbfafe052:

  ARM: at91: sam9m10g45ek add udc DT support (2013-06-15 00:15:22 +0200)

are available in the git repository at:

  git://github.com/at91linux/linux-at91.git j/for-3.11-rm9200

for you to fetch changes up to 0dab9f12eab58fdf876be8bb39432f7426615230:

  ARM: at91: at91rm9200: set default mmc0 pinctrl-names (2013-06-17 20:37:26 +0800)

----------------------------------------------------------------
Jean-Christophe PLAGNIOL-VILLARD (5):
      ARM: at91: at91_dt_defconfig: enable rm9200 support
      ARM: at91: dt: rm9200: add spi support
      ARM: at91: dt: rm9200ek: add spi support
      ARM: AT91: dt: add at91rm9200 PQFP package version
      ARM: at91: at91rm9200: set default mmc0 pinctrl-names

 arch/arm/boot/dts/at91rm9200.dtsi      |   21 +++++++++++++++++++++
 arch/arm/boot/dts/at91rm9200_pqfp.dtsi |   17 +++++++++++++++++
 arch/arm/boot/dts/at91rm9200ek.dts     |   10 ++++++++++
 arch/arm/configs/at91_dt_defconfig     |    4 +++-
(Continue reading)


Gmane