]> rtime.felk.cvut.cz Git - can-eth-gw-linux.git/log
can-eth-gw-linux.git
11 years agoMerge branch 'zynq/multiplatform' of git://git.monstr.eu/linux-2.6-microblaze into...
Olof Johansson [Wed, 21 Nov 2012 19:49:45 +0000 (11:49 -0800)]
Merge branch 'zynq/multiplatform' of git://git.monstr.eu/linux-2.6-microblaze into next/multiplatform

From Michal Simek:

This branch depends on arm-soc devel/debug_ll_init branch because
we needed Rob's "ARM: implement debug_ll_io_init()"
(sha1: afaee03511ba8002b26a9c6b1fe7d6baf33eac86)
patch.

This branch also depends on zynq/dt branch because of previous major
zynq changes.
zynq/cleanup branch is subset of zynq/dt.

* 'zynq/multiplatform' of git://git.monstr.eu/linux-2.6-microblaze:
  ARM: zynq: Remove all unused mach headers
  ARM: zynq: add support for ARCH_MULTIPLATFORM
  ARM: zynq: make use of debug_ll_io_init()
  ARM: zynq: remove TTC early mapping
  ARM: zynq: add clk binding support to the ttc
  ARM: zynq: use zynq clk bindings
  clk: Add support for fundamental zynq clks
  ARM: zynq: dts: split up device tree
  ARM: zynq: Allow UART1 to be used as DEBUG_LL console.
  ARM: zynq: dts: add description of the second uart
  ARM: zynq: move arm-specific sys_timer out of ttc
  zynq: move static peripheral mappings
  zynq: remove use of CLKDEV_LOOKUP
  zynq: use pl310 device tree bindings
  zynq: use GIC device tree bindings

Add/add conflict in arch/arm/Kconfig.debug.

Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: zynq: Remove all unused mach headers
Michal Simek [Tue, 20 Nov 2012 12:45:52 +0000 (13:45 +0100)]
ARM: zynq: Remove all unused mach headers

Remove empty unused mach/hardware.h.
mach/irqs.h is unused because SPARSE_IRQ are ON by default.
mach/timex.h is unused because of CONFIG_ARCH_MULTIPLATFORM.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Tested-by: Josh Cartwright <josh.cartwright@ni.com>
11 years agoARM: zynq: add support for ARCH_MULTIPLATFORM
Josh Cartwright [Mon, 19 Nov 2012 17:38:29 +0000 (11:38 -0600)]
ARM: zynq: add support for ARCH_MULTIPLATFORM

The majority of changes are necessary to remove dependencies on header
files within arch/arm/mach-zynq/include/mach:

  uncompress.h
    - Deleted. It is unused for ARCH_MULTIPLATFORM builds.

  uart.h:
    - Move uart definitions out of uart.h into debug/zynq.S, which is
      now the only user

  zynq_soc.h:
    - Move SCU address definitions into common.c.
    - Other #defines, such as PERIPHERAL_CLOCK_RATE, TTC0_BASE, etc, are
      unused and can be dropped

Signed-off-by: Josh Cartwright <josh.cartwright@ni.com>
Tested-by: Michal Simek <michal.simek@xilinx.com>
11 years agoARM: zynq: make use of debug_ll_io_init()
Josh Cartwright [Mon, 19 Nov 2012 16:16:01 +0000 (10:16 -0600)]
ARM: zynq: make use of debug_ll_io_init()

Convert low-level debugging routines to make use of debug_ll_io_init().
This is part of the preparation for ARCH_MULTIPLATFORM support for Zynq.

Signed-off-by: Josh Cartwright <josh.cartwright@ni.com>
Tested-by: Michal Simek <michal.simek@xilinx.com>
11 years agoARM: zynq: remove TTC early mapping
Josh Cartwright [Mon, 19 Nov 2012 16:01:03 +0000 (10:01 -0600)]
ARM: zynq: remove TTC early mapping

Now that the TTC driver has proper support for DT bindings, it is not
necessary for the registers to be mapped early.  They will be mapped
during clock initialization using of_iomap().  Remove the early mapping.

In addition, remove the extraneous zynq_soc.h include from the timer
driver.

Signed-off-by: Josh Cartwright <josh.cartwright@ni.com>
Tested-by: Michal Simek <michal.simek@xilinx.com>
11 years agoMerge branch 'devel/debug_ll_init' into zynq/multiplatform
Michal Simek [Wed, 21 Nov 2012 09:51:39 +0000 (10:51 +0100)]
Merge branch 'devel/debug_ll_init' into zynq/multiplatform

11 years agoMerge tag 'tegra-for-3.8-single-zimage' of git://git.kernel.org/pub/scm/linux/kernel...
Olof Johansson [Wed, 21 Nov 2012 08:31:08 +0000 (00:31 -0800)]
Merge tag 'tegra-for-3.8-single-zimage' of git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-tegra into next/multiplatform

From Stephen Warren:
ARM: tegra: single-zImage preparation work

Various cleanups and enhancements are made to core Tegra code towards the
aim of including Tegra in a multi-platform ARM kernel:

RTC, timer, and TWD are configured via device tree.

SPARSE_IRQ is enabled.

Tegra's debug_ll options are simplified, and the macros brought into
line with other multi-platform implementations, and moved to the new
common location.

Two headers still need to be eliminated in order to include Tegra in a
multi-platform kernel/ <mach/{clk,powergate}.h>. A new common API needs
to be invented to replace parts of clk.h. powergate.h might be replaced
by regulators; this needs more investigation.

This pull request is based on tegra-for-3.8-dt, followed by a merge of
arm-soc's devel/debug_ll_init branch.

* tag 'tegra-for-3.8-single-zimage' of git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-tegra: (58 commits)
  ARM: tegra: move debug-macro.S to include/debug
  ARM: tegra: don't include iomap.h from debug-macro.S
  ARM: tegra: decouple uncompress.h and debug-macro.S
  ARM: tegra: simplify DEBUG_LL UART selection options
  ARM: tegra: select SPARSE_IRQ
  ARM: tegra: enhance timer.c to get IO address from device tree
  ARM: tegra: enhance timer.c to get IRQ info from device tree
  ARM: timer: fix checkpatch warnings
  ARM: tegra: add TWD to device tree
  ARM: tegra: define DT bindings for and instantiate RTC
  ARM: tegra: define DT bindings for and instantiate timer
  ARM: tegra: whistler: enable HDMI port
  ARM: tegra: tec: Enable HDMI output
  ARM: tegra: plutux: Enable HDMI output
  ARM: tegra: tamonten: Add host1x support
  ARM: tegra: trimslice: enable HDMI port
  ARM: tegra: harmony: enable HDMI port
  ARM: tegra: Add Tegra30 host1x support
  ARM: tegra: Add Tegra20 host1x support
  ARM: tegra: trimslice: enable SPI flash
  ...

11 years agoARM: tegra: move debug-macro.S to include/debug
Stephen Warren [Tue, 25 Sep 2012 21:54:56 +0000 (15:54 -0600)]
ARM: tegra: move debug-macro.S to include/debug

Move Tegra's debug-macro.S over to the common debug macro directory.

Move Tegra's debug UART selection menu into ARM's Kconfig.debug, so that
all related options are selected in the same place.

Tegra's uncompress.h is left in mach-tegra/include/mach; it will be
removed whenever Tegra is converted to multi-platform.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: don't include iomap.h from debug-macro.S
Stephen Warren [Fri, 19 Oct 2012 18:27:58 +0000 (12:27 -0600)]
ARM: tegra: don't include iomap.h from debug-macro.S

In order to move Tegra's debug-macro.S to a common location for single
zImage, it must not rely on any machine-specific header files such as
<mach/iomap.h>. Duplicate the few physical address definitions that
debug-macro.S relies upon directly into the file.

To avoid tegra_io_desc[] requiring shared knowledge of the UART
mapping's virtual address, use a virtual address outside the ranges
in tegra_io_desc[]. Call debug_ll_io_init() to propagate the mapping
beyond the early pages tables.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: decouple uncompress.h and debug-macro.S
Stephen Warren [Mon, 1 Oct 2012 21:33:20 +0000 (15:33 -0600)]
ARM: tegra: decouple uncompress.h and debug-macro.S

Prior to this change, Tegra's debug-macro.S relied on uncompress.h having
determined which UART to use, and whether it was safe to use the UART
(i.e. is it not in reset, and is clocked). This determination was
communicated from uncompress.h to debug-macro.S using a few bytes of
Tegra's IRAM (an on-SoC RAM). This had the disadvantage that uncompress.h
was a required part of the kernel boot process; booting a non-compressed
kernel would not allow earlyprintk to operate.

This change duplicates the UART selection and validation logic into
debug-macro.S so that the reliance on uncompress.h is removed.

This also helps out with single-zImage work, since there is currently no
support for using any uncompress.h with single-zImage.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: simplify DEBUG_LL UART selection options
Stephen Warren [Mon, 1 Oct 2012 21:21:20 +0000 (15:21 -0600)]
ARM: tegra: simplify DEBUG_LL UART selection options

Delete CONFIG_TEGRA_DEBUG_UART_AUTO_SCRATCH; it's not useful any more:
* No upstream bootloader currently or will ever support this option.
* CONFIG_TEGRA_DEBUG_UART_AUTO_ODMDATA is a much more direct alternative.

Merge the fixed and automatic UART selection menus into a single choice
for simplicity; now you either pick AUTO_ODMDATA or a single fixed UART,
rather than potentially having an AUTO option override whatever fixed
option was chosen.

Remove TEGRA_DEBUG_UART_NONE; if you don't want a Tegra DEBUG_LL UART,
simply don't turn on DEBUG_LL. NONE used to be the default option, so
pick AUTO_ODMDATA as the new default.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: select SPARSE_IRQ
Stephen Warren [Wed, 19 Sep 2012 20:19:02 +0000 (14:19 -0600)]
ARM: tegra: select SPARSE_IRQ

SPARSE_IRQ is required for single zImage support.

With this enabled, we can delete <mach/irqs.h>. This requires removing
one unnecessary include of that file, and hard-coding the PCIe IRQ into
the PCIe driver. This is a hack that will be dealt with as part of
converting the PCIe driver into a true DT-supporting driver.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: enhance timer.c to get IO address from device tree
Stephen Warren [Tue, 23 Oct 2012 17:40:25 +0000 (11:40 -0600)]
ARM: tegra: enhance timer.c to get IO address from device tree

Modify Tegra's timer code to parse the IO address from device tree,
hence removing the dependency on <mach/iomap.h>. This will allow the
driver to be moved to drivers/clocksource/.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: enhance timer.c to get IRQ info from device tree
Stephen Warren [Wed, 19 Sep 2012 19:13:33 +0000 (13:13 -0600)]
ARM: tegra: enhance timer.c to get IRQ info from device tree

Modify Tegra's timer code to parse the Tegra timer IRQ from device tree,
and to instantiate the TWD from device tree, rather than relying on hard-
coded values from <mach/irqs.h>.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: timer: fix checkpatch warnings
Stephen Warren [Tue, 23 Oct 2012 18:21:39 +0000 (12:21 -0600)]
ARM: timer: fix checkpatch warnings

This prevents checkpatch complaining when this file is moved in a later
patch.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: add TWD to device tree
Stephen Warren [Wed, 19 Sep 2012 20:17:24 +0000 (14:17 -0600)]
ARM: tegra: add TWD to device tree

This will allow timer.c to use twd_local_timer_of_register(), and
hence not need to hard-code the TWD address or IRQ.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: define DT bindings for and instantiate RTC
Stephen Warren [Wed, 19 Sep 2012 18:13:16 +0000 (12:13 -0600)]
ARM: tegra: define DT bindings for and instantiate RTC

The Tegra RTC maintains seconds and milliseconds counters, and five alarm
registers. The alarms and other interrupts may wake the system from
low-power state.

Define a DT binding for this HW module, and add the module into the Tegra
device tree files.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: define DT bindings for and instantiate timer
Stephen Warren [Wed, 19 Sep 2012 18:02:31 +0000 (12:02 -0600)]
ARM: tegra: define DT bindings for and instantiate timer

The Tegra timer provides a number of 29-bit timer channels, a single
32-bit free running counter, and in the Tegra30 variant, 5 watchdog modules.
The first two channels may also trigger a legacy watchdog reset.

Define a DT binding for this HW module, and add the module into the Tegra
device tree files.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoMerge remote-tracking branch 'korg_arm-soc/devel/debug_ll_init' into for-3.8/single...
Stephen Warren [Fri, 16 Nov 2012 19:21:10 +0000 (12:21 -0700)]
Merge remote-tracking branch 'korg_arm-soc/devel/debug_ll_init' into for-3.8/single-zimage

11 years agoARM: tegra: whistler: enable HDMI port
Stephen Warren [Fri, 16 Nov 2012 17:53:04 +0000 (10:53 -0700)]
ARM: tegra: whistler: enable HDMI port

Enable host1x, and the HDMI output. Whistler also has a DSI-based LCD,
and a VGA output. tegradrm doesn't support either of those output types
yet.

Based on work by Thierry Reding for TrimSlice.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: tec: Enable HDMI output
Thierry Reding [Fri, 16 Nov 2012 15:56:52 +0000 (16:56 +0100)]
ARM: tegra: tec: Enable HDMI output

Enable the HDMI output found on Tamonten Evaluation Carrier boards.

Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: plutux: Enable HDMI output
Thierry Reding [Fri, 16 Nov 2012 15:56:51 +0000 (16:56 +0100)]
ARM: tegra: plutux: Enable HDMI output

Enable the HDMI output found on Plutux boards.

Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: tamonten: Add host1x support
Thierry Reding [Fri, 16 Nov 2012 15:56:50 +0000 (16:56 +0100)]
ARM: tegra: tamonten: Add host1x support

Hook up the required regulators, I2C DDC adapter and hotplug detect GPIO
to the Tamonten HDMI output. Carrier boards still need to explicitly
enable the output to use it.

Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: trimslice: enable HDMI port
Thierry Reding [Thu, 20 Sep 2012 08:39:20 +0000 (10:39 +0200)]
ARM: tegra: trimslice: enable HDMI port

Enable host1x, and the HDMI output. Harmony also has a DVI port with an
HDMI form-factor connector, driven by Tegra's LVDS output. This isn't
enabled yet, due to potential issues with having multiple outputs enabled.

Correct DDC I2C frequency to 100KHz.

Add dummy/fixed regulators to satisfy the HDMI driver.

Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
[swarren: add commit description, remove enable of DVI port]
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoMerge tag 'mtu-clk-for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel/git...
Arnd Bergmann [Fri, 16 Nov 2012 16:14:37 +0000 (17:14 +0100)]
Merge tag 'mtu-clk-for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson into next/multiplatform

From Linus Walleij <linus.walleij@linaro.org>:

This tag contains two MTU patches based on top of the ux500 sparse IRQ
commit to avoid merge clashes.

* tag 'mtu-clk-for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson:
  clocksource/mtu-nomadik: use apb_pclk
  clk: ux500: Register mtu apb_pclocks

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
11 years agoARM: tegra: harmony: enable HDMI port
Stephen Warren [Fri, 9 Nov 2012 23:58:11 +0000 (16:58 -0700)]
ARM: tegra: harmony: enable HDMI port

Enable host1x, and the HDMI output. Harmony also has an optional LCD,
and a VGA output. The former isn't enabled due to potential issues with
having multiple outputs enabled. The latter isn't enabled since the
driver doesn't support VGA yet anyway.

Correct DDC I2C frequency to 100KHz.

Based on work by Thierry Reding for TrimSlice.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoclocksource/mtu-nomadik: use apb_pclk
Ulf Hansson [Wed, 24 Oct 2012 12:13:41 +0000 (14:13 +0200)]
clocksource/mtu-nomadik: use apb_pclk

After improving the clock tree we need to make sure the the
MTU timer explicitly grabs and enables it silicon clock
(pclk).

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Acked-by: Mike Turquette <mturquette@ti.com>
Signed-off-by: Linus Walleij <linus.walleij@stericsson.com>
11 years agoARM: tegra: Add Tegra30 host1x support
Thierry Reding [Thu, 15 Nov 2012 21:07:57 +0000 (22:07 +0100)]
ARM: tegra: Add Tegra30 host1x support

Add the host1x node along with its children to the Tegra30 DTSI. Board-
specific DTS files are expected to enable the available outputs and
complement the device tree with data specific to the hardware.

Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: Add Tegra20 host1x support
Thierry Reding [Thu, 15 Nov 2012 21:07:54 +0000 (22:07 +0100)]
ARM: tegra: Add Tegra20 host1x support

Add the host1x node along with its children to the Tegra20 DTSI. Board-
specific DTS files are expected to enable the available outputs and
complement the device tree with data specific to the hardware.

Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: trimslice: enable SPI flash
Stephen Warren [Mon, 12 Nov 2012 19:51:22 +0000 (12:51 -0700)]
ARM: tegra: trimslice: enable SPI flash

TrimSlice contains a 1MiB SPI flash. Represent this in the device tree.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: dts: add sflash controller dt entry
Laxman Dewangan [Tue, 13 Nov 2012 05:03:39 +0000 (10:33 +0530)]
ARM: tegra: dts: add sflash controller dt entry

Nvidia's Tegra20 have the SPI (SFLASH) controller to
interface with spi flash device which is used for system
boot. Add DT entry for this controller.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
[swarren: move sflash node to keep file sorted]
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: ventana: Add NCT1008 temperature sensor
Thierry Reding [Fri, 9 Nov 2012 22:01:21 +0000 (23:01 +0100)]
ARM: tegra: ventana: Add NCT1008 temperature sensor

The Harmony board has an ON Semiconductors NCT1008 temperature sensor
connected to the DVC bus. It can be used to monitor the ambient (local)
and on-die (remote) temperatures.

Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
Tested-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: tamonten: Add NCT1008 temperature sensor
Thierry Reding [Fri, 9 Nov 2012 22:00:08 +0000 (23:00 +0100)]
ARM: tegra: tamonten: Add NCT1008 temperature sensor

The Tamonten SOM has an ON Semiconductor NCT1008 connected to the DVC
bus which is used to measure the ambient (local) temperature as well as
the on-die (remote) temperature.

Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: harmony: Add ADT7641 temperature sensor
Thierry Reding [Fri, 9 Nov 2012 21:58:43 +0000 (22:58 +0100)]
ARM: tegra: harmony: Add ADT7641 temperature sensor

The Harmony board has an Analog Devices ADT7461 temperature sensor
connected to the DVC bus. It can be used to monitor the ambient (local)
and on-die (remote) temperatures.

Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
Tested-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: tec: Remove redundant DT properties
Thierry Reding [Fri, 9 Nov 2012 13:04:51 +0000 (14:04 +0100)]
ARM: tegra: tec: Remove redundant DT properties

These properties are already set by the tegra20-tamonten.dtsi, so they
don't need to be repeated.

Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: tamonten: Add DDC/PTA pinmux
Thierry Reding [Fri, 9 Nov 2012 13:04:50 +0000 (14:04 +0100)]
ARM: tegra: tamonten: Add DDC/PTA pinmux

This commit allows the I2C2 controller on Tegra20 to be routed either to
the DDC or the PTA pin group at runtime. On Tamonten this allows the I2C
bus to be used for the DDC of the HDMI connector or to access I2C chips
on the carrier board.

Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: dts: cardhu: enable SLINK4
Laxman Dewangan [Wed, 31 Oct 2012 09:02:54 +0000 (14:32 +0530)]
ARM: tegra: dts: cardhu: enable SLINK4

Enable SLINK4 and connected device in Tegra30 based
platform Cardhu.
Setting maximum spi frequency to 25MHz.

SPI serial flash is connected on CS1 of SLINK4 on
cardhu platform.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
[swarren: swapped reg/compatible order to be consistent]
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: dts: add slink controller dt entry
Laxman Dewangan [Tue, 30 Oct 2012 07:05:23 +0000 (12:35 +0530)]
ARM: tegra: dts: add slink controller dt entry

Add slink controller details in the dts file of
Tegra20 and Tegra30.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: dt: tegra: ventana: define pinmux for ddc
Mark Zhang [Thu, 25 Oct 2012 06:52:30 +0000 (14:52 +0800)]
ARM: dt: tegra: ventana: define pinmux for ddc

Tegra 2's I2C2 controller can be routed to either the PTA
or DDC pin group on Ventana. So:
- Remove the HDMI function definition of pta pingroup
- Define child i2c adapters(ddc & pta) for I2C2 controller

Signed-off-by: Mark Zhang <markz@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: dt: t30 cardhu: set pinmux and power for wlan
Wei Ni [Fri, 21 Sep 2012 08:54:59 +0000 (16:54 +0800)]
ARM: dt: t30 cardhu: set pinmux and power for wlan

Configure pinmux as required for WiFi.
Enable the SDHCI1 controller for a02 and a04 board, which is connected to the
WiFi module.
For now, always enable the regulator that provides power to the Wifi module.

Signed-off-by: Wei Ni <wni@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: dt: t20 ventana: set pinmux and power for wlan
Wei Ni [Fri, 21 Sep 2012 08:54:58 +0000 (16:54 +0800)]
ARM: dt: t20 ventana: set pinmux and power for wlan

Configure pinmux as required for WiFi.
Enable the SDHCI1 controller, which is connectted to the WiFi module.

Signed-off-by: Wei Ni <wni@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: dt: t20 seaboard: turn on the power for wlan
Wei Ni [Fri, 21 Sep 2012 08:54:57 +0000 (16:54 +0800)]
ARM: dt: t20 seaboard: turn on the power for wlan

Enable the SDHCI1 controller. This is connected to the WiFi module.

Signed-off-by: Wei Ni <wni@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: Add Tegra30 host1x clock support
Thierry Reding [Thu, 15 Nov 2012 21:07:59 +0000 (22:07 +0100)]
ARM: tegra: Add Tegra30 host1x clock support

Setup the clock parents for the two display controllers and HDMI.

Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: Add AUXDATA for Tegra30 host1x
Thierry Reding [Thu, 15 Nov 2012 21:07:58 +0000 (22:07 +0100)]
ARM: tegra: Add AUXDATA for Tegra30 host1x

Add the OF_DEV_AUXDATA table entries required to associate the proper
names with host1x and its children. In turn, this allows the devices to
find the required clocks.

Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: Add Tegra20 host1x clock support
Thierry Reding [Thu, 15 Nov 2012 21:07:56 +0000 (22:07 +0100)]
ARM: tegra: Add Tegra20 host1x clock support

Extend the pll_d frequency table with a few entries to support common
HDMI and LVDS display modes and setup the clock parents for the two
display controllers and HDMI.

Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: Add AUXDATA for Tegra20 host1x
Thierry Reding [Thu, 15 Nov 2012 21:07:55 +0000 (22:07 +0100)]
ARM: tegra: Add AUXDATA for Tegra20 host1x

Add the OF_DEV_AUXDATA table entries required to associate the proper
names with host1x and its children. In turn, this allows the devices to
find the required clocks.

Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: Tegra30 speedo-based process identification
Danny Huang [Thu, 15 Nov 2012 07:42:34 +0000 (15:42 +0800)]
ARM: tegra: Tegra30 speedo-based process identification

This patch adds speedo-based process identification support for Tegra30.

Signed-off-by: Danny Huang <dahuang@nvidia.com>
[swarren s/Tegra3/Tegra30/ in log print,
s/T30/Tegra30/ in commit description]
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: Add speedo-based process identification
Danny Huang [Thu, 15 Nov 2012 07:42:33 +0000 (15:42 +0800)]
ARM: tegra: Add speedo-based process identification

Detect CPU and core process ID by checking speedo corner tables.
This can provide a more accurate process ID.

Signed-off-by: Danny Huang <dahuang@nvidia.com>
[swarren s/Tegra2/Tegra20/ in log print]
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: flexible spare fuse read function
Danny Huang [Thu, 15 Nov 2012 07:42:32 +0000 (15:42 +0800)]
ARM: tegra: flexible spare fuse read function

Change the spare fuse base from a definition to a variable.
It provides flexibilty to read spare fuse on different chip.

Signed-off-by: Danny Huang <dahuang@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoclk: ux500: Register mtu apb_pclocks
Ulf Hansson [Wed, 24 Oct 2012 12:13:40 +0000 (14:13 +0200)]
clk: ux500: Register mtu apb_pclocks

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Acked-by: Mike Turquette <mturquette@ti.com>
Signed-off-by: Linus Walleij <linus.walleij@stericsson.com>
11 years agoARM: tegra: Implement 6395/1 for Tegra
Peter De Schrijver [Wed, 14 Nov 2012 14:27:23 +0000 (16:27 +0200)]
ARM: tegra: Implement 6395/1 for Tegra

This patch implements ARM linux patch 6395/1 for Tegra. See commit
1a8e41c "ARM: 6395/1: VExpress: Set bit 22 in the PL310 (cache
controller) AuxCtlr register" for details.

Signed-off-by: Peter De Schrijver <pdeschrijver@nvidia.com>
[swarren: added commit subject for referenced patch]
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: zynq: add clk binding support to the ttc
Josh Cartwright [Wed, 31 Oct 2012 19:56:14 +0000 (13:56 -0600)]
ARM: zynq: add clk binding support to the ttc

Add support for retrieving TTC configuration from device tree.  This
includes the ability to pull information about the driving clocks from
the of_clk bindings.

Signed-off-by: Josh Cartwright <josh.cartwright@ni.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
11 years agoARM: zynq: use zynq clk bindings
Josh Cartwright [Thu, 8 Nov 2012 18:04:26 +0000 (12:04 -0600)]
ARM: zynq: use zynq clk bindings

Make the Zynq platform use the newly created zynq clk bindings.

Signed-off-by: Josh Cartwright <josh.cartwright@ni.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
11 years agoclk: Add support for fundamental zynq clks
Josh Cartwright [Tue, 13 Nov 2012 23:26:48 +0000 (17:26 -0600)]
clk: Add support for fundamental zynq clks

Provide simplified models for the necessary clocks on the zynq-7000
platform.  Currently, the PLLs, the CPU clock network, and the basic
peripheral clock networks (for SDIO, SMC, SPI, QSPI, UART) are modelled.

OF bindings are also provided and documented.

Signed-off-by: Josh Cartwright <josh.cartwright@ni.com>
Signed-off-by: Soren Brinkmann <soren.brinkmann@xilinx.com>
Acked-by: Mike Turquette <mturquette@linaro.org>
Acked-by: Michal Simek <michal.simek@xilinx.com>
11 years agoARM: tegra: Add OF_DEV_AUXDATA for sflash driver in board dt
Laxman Dewangan [Tue, 13 Nov 2012 05:03:40 +0000 (10:33 +0530)]
ARM: tegra: Add OF_DEV_AUXDATA for sflash driver in board dt

Add OF_DEV_AUXDATA for sflash controller driver for Tegra20
board dt files.
Set the parent clock of sflash controller to PLLP and configure
clock to 20MHz.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: zynq: dts: split up device tree
Josh Cartwright [Wed, 31 Oct 2012 18:24:48 +0000 (12:24 -0600)]
ARM: zynq: dts: split up device tree

The purpose of the created zynq-7000.dtsi file is to describe the
hardware common to all Zynq 7000-based boards.  Also, get rid of the
zynq-ep107 device tree, since it is not hardware anyone can purchase.

Add a zc702 dts file based on the zynq-7000.dtsi.  Add it to the
dts/Makefile so it is built with the 'dtbs' target.

Signed-off-by: Josh Cartwright <josh.cartwright@ni.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
11 years agoARM: tegra: enable data prefetch on L2
Joseph Lo [Fri, 9 Nov 2012 21:40:41 +0000 (14:40 -0700)]
ARM: tegra: enable data prefetch on L2

Enable the data prefetch on L2. The bit28 in aux ctrl register.

Signed-off-by: Joseph Lo <josephl@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Peter De Schrijver <pdeschrijver@nvidia.com>
11 years agoARM: zynq: Allow UART1 to be used as DEBUG_LL console.
Nick Bowler [Mon, 5 Nov 2012 21:45:49 +0000 (16:45 -0500)]
ARM: zynq: Allow UART1 to be used as DEBUG_LL console.

The main UART on the Xilinx ZC702 board is UART1, located at address
e0001000.  Add a Kconfig option to select this device as the low-level
debugging port.  This allows the really early boot printouts to reach
the USB serial adaptor on this board.

For consistency's sake, add a choice entry for UART0 even though it is
the the default if UART1 is not selected.

Signed-off-by: Nick Bowler <nbowler@elliptictech.com>
Tested-by: Josh Cartwright <josh.cartwright@ni.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
11 years agoMerge tag 'kill-plat-sparse-irq' of git://git.kernel.org/pub/scm/linux/kernel/git...
Olof Johansson [Tue, 6 Nov 2012 15:47:09 +0000 (07:47 -0800)]
Merge tag 'kill-plat-sparse-irq' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl into next/multiplatform

From Linus Walleij:

This patchset will:
- Move all remaining headers out of arch/arm/plat-nomadik/include/plat
  out to e.g. include/linux/platform_data
- Delete arch/arm/plat-nomadik
- Convert Nomadik and Ux500 to SPARSE_IRQ

* tag 'kill-plat-sparse-irq' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl:
  ARM: plat-nomadik: convert platforms to SPARSE_IRQ
  mfd/db8500-prcmu: use the irq_domain_add_simple()
  mfd/ab8500-core: use irq_domain_add_simple()
  ARM: plat-nomadik: move MTU, kill plat-nomadik
  ARM: plat-nomadik: move DMA40 header to <linux/platform_data>
  ARM: plat-nomadik: use DIV_ROUND_CLOSEST()
  ARM: plat-nomadik: pass IRQ to timer driver
  clk/ux500: explicitly include register header
  pinctrl/nomadik: merge old pincfg header
  pinctrl/nomadik: move the platform data header
  ARM: plat-nomadik: move NMK_GPIO_PER_CHIP into gpio-nomadik.h
  ARM: plat-nomadik: Introduce new DB8540 GPIO registers

11 years agoARM: tegra: Add OF_DEV_AUXDATA for SLINK driver in board dt
Laxman Dewangan [Tue, 30 Oct 2012 07:05:24 +0000 (12:35 +0530)]
ARM: tegra: Add OF_DEV_AUXDATA for SLINK driver in board dt

Add OF_DEV_AUXDATA for slink driver for Tegra20 and Tegra30
board dt files.
Set the parent clock of slink controller to PLLP and configure
clock to 100MHz.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: common: using OF api for L2 cache init
Joseph Lo [Mon, 29 Oct 2012 10:25:57 +0000 (18:25 +0800)]
ARM: tegra: common: using OF api for L2 cache init

Moving L2 cache init to DT support.

Signed-off-by: Joseph Lo <josephl@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: dt: add L2 cache controller
Joseph Lo [Mon, 29 Oct 2012 10:25:45 +0000 (18:25 +0800)]
ARM: tegra: dt: add L2 cache controller

Add L2 cache controller binding into DT for Tegra.

Signed-off-by: Joseph Lo <josephl@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra30: clocks: add AHB and APB clocks
Joseph Lo [Mon, 29 Oct 2012 10:25:29 +0000 (18:25 +0800)]
ARM: tegra30: clocks: add AHB and APB clocks

Adding the AHB and APB bus clock for Tegra30.

Signed-off-by: Joseph Lo <josephl@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: set up wlan clocks for tegra dt
Wei Ni [Fri, 21 Sep 2012 08:54:56 +0000 (16:54 +0800)]
ARM: tegra: set up wlan clocks for tegra dt

Set up the wlan clock tree for Tegra20 and Tegra30.

Signed-off-by: Wei Ni <wni@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: move irammap.h to mach-tegra
Stephen Warren [Thu, 4 Oct 2012 20:16:59 +0000 (14:16 -0600)]
ARM: tegra: move irammap.h to mach-tegra

Nothing outside mach-tegra uses this file, so there's no need for it to
be in <mach/>.

Since uncompress.h and debug-macro.S remain in include/mach, they need
to include "../../irammap.h" becaue of this change. Both these usages
will be removed shortly, when Tegra's DEBUG_LL implementation is updated
not to pass information through IRAM.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: move iomap.h to mach-tegra
Stephen Warren [Thu, 4 Oct 2012 20:24:09 +0000 (14:24 -0600)]
ARM: tegra: move iomap.h to mach-tegra

Nothing outside mach-tegra uses this file, so there's no need for it to
be in <mach/>.

Since uncompress.h and debug-macro.S remain in include/mach, they need
to include "../../iomap.h" becaue of this change. uncompress.h will soon
be deleted in later multi-platform/single-zImage patches. debug-macro.S
will need to continue to include this header using an explicit relative
path, to avoid duplicating the physical->virtual address mapping that
iomap.h dictates.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: remove <mach/dma.h>
Stephen Warren [Thu, 27 Sep 2012 21:55:04 +0000 (15:55 -0600)]
ARM: tegra: remove <mach/dma.h>

Remove includes of <mach/dma.h> from sound/soc; nothing from it is used.

Remove include of <mach/dma.h> from mach-tegra/apbio.c; since the DMA
transfers made by this file don't need flow-control with any peripheral,
there's no need to set any slave ID.

Once those changes are made, there are no remaining users of <mach/dma.h>
so remove it. Drivers should get this information from device tree. This
removal is necessary for single zImage.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
11 years agoARM: tegra: move tegra-ahb.h out of arch/arm/mach-tegra/
Stephen Warren [Wed, 19 Sep 2012 21:51:01 +0000 (15:51 -0600)]
ARM: tegra: move tegra-ahb.h out of arch/arm/mach-tegra/

We wish to empty arch/arm/mach-tegra/include/mach/ as much as possible
to enable single zImage. Move tegra-ahb.h to a more central location
(suggested by Arnd, OK'd by Greg KH), and actually make tegra-ahb.c
include the header to ensure client and provider agree on the prototype.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: remove unnecessary includes of <mach/*.h>
Stephen Warren [Thu, 4 Oct 2012 19:50:56 +0000 (13:50 -0600)]
ARM: tegra: remove unnecessary includes of <mach/*.h>

This should make it easier to delete or move <mach/*.h>; something that
is useful for single-zImage.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoiommu: tegra: remove include of <mach/iomap.h>
Stephen Warren [Tue, 2 Oct 2012 21:27:07 +0000 (15:27 -0600)]
iommu: tegra: remove include of <mach/iomap.h>

Nothing from this file is used, and the file will hopefully be deleted
soon.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Joerg Roedel <joerg.roedel@amd.com>
11 years agostaging: nvec: remove include of <mach/iomap.h>
Stephen Warren [Tue, 2 Oct 2012 21:30:44 +0000 (15:30 -0600)]
staging: nvec: remove include of <mach/iomap.h>

Nothing from this file is used, and the file will hopefully be deleted
soon.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-By: Marc Dietrich <marvin24@gmx.de>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agocrypto: tegra: remove include of <mach/clk.h>
Stephen Warren [Tue, 2 Oct 2012 21:25:10 +0000 (15:25 -0600)]
crypto: tegra: remove include of <mach/clk.h>

Nothing from this file is used, and the file will hopefully be deleted
soon.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
11 years agoARM: tegra: update *.dts for regulator-compatible deprecation
Stephen Warren [Thu, 20 Sep 2012 23:04:06 +0000 (17:04 -0600)]
ARM: tegra: update *.dts for regulator-compatible deprecation

Commit 13511de "regulator: deprecate regulator-compatible DT property"
now allows for simpler content within the regulators node within a PMIC.
Modify all the Tegra device tree files to take advantage of this.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Thierry Reding <thierry.reding@avionic-design.de>
11 years agousb: phy: tegra remove include of <mach/iomap.h>
Stephen Warren [Tue, 2 Oct 2012 22:50:02 +0000 (16:50 -0600)]
usb: phy: tegra remove include of <mach/iomap.h>

Almost nothing from this file is used, and the file will hopefully be
deleted soon. Copy the tiny portions that are used directly into
tegra_usb_phy.c. I believe that Venu Byravarasu is working on cleaning up
our USB driver, and those cleanups will remove the need for these
constants.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Venu Byravarasu <vbyravarasu@nvidia.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agousb: host: tegra remove include of <mach/iomap.h>
Stephen Warren [Tue, 2 Oct 2012 22:49:25 +0000 (16:49 -0600)]
usb: host: tegra remove include of <mach/iomap.h>

Almost nothing from this file is used, and the file will hopefully be
deleted soon. Copy the tiny portions that are used directly into
ehci-tegra.c. I believe that Venu Byravarasu is working on cleaning up
our USB driver, and those cleanups will remove the need for these
constants.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Venu Byravarasu <vbyravarasu@nvidia.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agoMerge branch 'devel/debug_ll_init' into next/multiplatform
Olof Johansson [Mon, 5 Nov 2012 17:50:33 +0000 (09:50 -0800)]
Merge branch 'devel/debug_ll_init' into next/multiplatform

* devel/debug_ll_init:
  ARM: implement debug_ll_io_init()
  + sync to Linux 3.7-rc4

11 years agoARM: implement debug_ll_io_init()
Rob Herring [Mon, 22 Oct 2012 17:42:54 +0000 (11:42 -0600)]
ARM: implement debug_ll_io_init()

When using DEBUG_LL, the UART's (or other HW's) registers are mapped
into early page tables based on the results of assembly macro addruart.
Later, when the page tables are replaced, the same virtual address must
remain valid. Historically, this has been ensured by using defines from
<mach/iomap.h> in both the implementation of addruart, and the machine's
.map_io() function. However, with the move to single zImage, we wish to
remove <mach/iomap.h>. To enable this, the macro addruart may be used
when constructing the late page tables too; addruart is exposed as a
C function debug_ll_addr(), and used to set up the required mapping in
debug_ll_io_init(), which may called on an opt-in basis from a machine's
.map_io() function.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
[swarren: Mask map.virtual with PAGE_MASK. Checked for NULL results from
 debug_ll_addr (e.g. when selected UART isn't valid). Fixed compile when
 either !CONFIG_DEBUG_LL or CONFIG_DEBUG_SEMIHOSTING.]
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: zynq: dts: add description of the second uart
Josh Cartwright [Wed, 31 Oct 2012 19:45:17 +0000 (13:45 -0600)]
ARM: zynq: dts: add description of the second uart

The zynq-7000 has an additional UART at 0xE0001000.  Describe it in the
device tree.

Signed-off-by: Josh Cartwright <josh.cartwright@ni.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
11 years agoARM: zynq: move arm-specific sys_timer out of ttc
Josh Cartwright [Wed, 31 Oct 2012 17:11:59 +0000 (11:11 -0600)]
ARM: zynq: move arm-specific sys_timer out of ttc

Move the sys_timer definition out of ttc driver and make it part of the
common zynq code.  This is preparation for renaming and COMMON_CLK
support.

Signed-off-by: Josh Cartwright <josh.cartwright@ni.com>
Tested-by: Michal Simek <michal.simek@xilinx.com>
11 years agoARM: plat-nomadik: convert platforms to SPARSE_IRQ
Linus Walleij [Thu, 18 Oct 2012 09:08:05 +0000 (11:08 +0200)]
ARM: plat-nomadik: convert platforms to SPARSE_IRQ

This converts the Nomadik and Ux500 platforms to use SPARSE_IRQ.

Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agomfd/db8500-prcmu: use the irq_domain_add_simple()
Linus Walleij [Thu, 18 Oct 2012 16:22:11 +0000 (18:22 +0200)]
mfd/db8500-prcmu: use the irq_domain_add_simple()

To be able to use SPARSE_IRQ while yet not using device tree,
we need to use irq_domain_add_simple() that will allocate
descriptors for the IRQs in the non-DT case, and fall back
to using the linear irqdomain in the DT case.

Cc: Lee Jones <lee.jones@linaro.org>
Cc: Samuel Ortiz <sameo@linux.intel.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agomfd/ab8500-core: use irq_domain_add_simple()
Linus Walleij [Thu, 18 Oct 2012 16:18:44 +0000 (18:18 +0200)]
mfd/ab8500-core: use irq_domain_add_simple()

To be able to use SPARSE_IRQ while yet not using device tree,
we need to use irq_domain_add_simple() that will allocate
descriptors for the IRQs in the non-DT case, and fall back
to using the linear irqdomain in the DT case.

Cc: Lee Jones <lee.jones@linaro.org>
Cc: Samuel Ortiz <sameo@linux.intel.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: plat-nomadik: move MTU, kill plat-nomadik
Linus Walleij [Thu, 18 Oct 2012 12:01:25 +0000 (14:01 +0200)]
ARM: plat-nomadik: move MTU, kill plat-nomadik

This moves the MTU timer driver from arch/arm/plat-nomadik
to drivers/clocksource and moves the header file to the
platform_data directory.

As this moves the last file being compiled to an object out
of arch/arm/plat-nomadik, we have to "turn off the light"
and delete the plat-nomadik directory, because it is not
allowed to have an empty Makefile in a plat-* directory.
This is probably also a desired side effect of depopulating
the arch/arm directory of drivers. Luckily we have just
deleted all the <plat/*> include files prior to this so
by moving the last one we may delete the directory.

After this all the Ux500 and Nomadik device drivers live
outside of the arch/arm hierarchy.

Cc: Alessandro Rubini <rubini@unipv.it>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: plat-nomadik: move DMA40 header to <linux/platform_data>
Linus Walleij [Thu, 18 Oct 2012 12:20:16 +0000 (14:20 +0200)]
ARM: plat-nomadik: move DMA40 header to <linux/platform_data>

This moves the DMA40 platform data header from <plat/ste_dma40.h>
to <linux/platform_data/dma-ste-dma40.h> where is belongs.

Cc: Dan Williams <djbw@fb.com>
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Ola Lilja <ola.o.lilja@stericsson.com>
Cc: Herbert Xu <herbert@gondor.apana.org.au>
Cc: Andreas Westin <andreas.westin@stericsson.com>
Acked-by: Vinod Koul <vinod.koul@intel.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: plat-nomadik: use DIV_ROUND_CLOSEST()
Linus Walleij [Thu, 18 Oct 2012 09:12:31 +0000 (11:12 +0200)]
ARM: plat-nomadik: use DIV_ROUND_CLOSEST()

Use DIV_ROUND_CLOSEST() to calculate the cycle counter for the
periodic mode instead of relying on homebrew reimplementation.

Cc: Alessandro Rubini <rubini@unipv.it>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoARM: plat-nomadik: pass IRQ to timer driver
Linus Walleij [Thu, 18 Oct 2012 09:06:02 +0000 (11:06 +0200)]
ARM: plat-nomadik: pass IRQ to timer driver

In order to convert the MTU timer to work with sparse IRQ we need
to pass the IRQ used when initializing instead of just letting
it rely on a special name being used in the IRQ header file.

Cc: Alessandro Rubini <rubini@unipv.it>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoclk/ux500: explicitly include register header
Linus Walleij [Thu, 18 Oct 2012 15:58:29 +0000 (17:58 +0200)]
clk/ux500: explicitly include register header

The ux500 clock driver file named u8500_clk.c does not compile
if it loose implicit dependencies to <mach/db8500-regs.h>
(I have no clue what files will include this) which manifests
itself as I'm experimenting with SPARSE_IRQ so make the
dependency explicit.

Cc: Mike Turquette <mturquette@linaro.org>
Acked-by: Ulf Hansson <ulf.hansson@linaro.org>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agopinctrl/nomadik: merge old pincfg header
Linus Walleij [Wed, 10 Oct 2012 12:35:17 +0000 (14:35 +0200)]
pinctrl/nomadik: merge old pincfg header

This merges the old <plat/pincfg.h> header into
<linux/platform_data/pinctrl-nomadik.h> and rids us of
yet one more <plat/*> include.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agopinctrl/nomadik: move the platform data header
Linus Walleij [Wed, 10 Oct 2012 12:27:58 +0000 (14:27 +0200)]
pinctrl/nomadik: move the platform data header

This moves the platform data header for the Nomadik pin controller
to <linux/platform_data/pinctrl-nomadik.h>.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
11 years agoLinux 3.7-rc4
Linus Torvalds [Sun, 4 Nov 2012 19:07:39 +0000 (11:07 -0800)]
Linux 3.7-rc4

11 years agoMerge tag 'nfs-for-3.7-4' of git://git.linux-nfs.org/projects/trondmy/linux-nfs
Linus Torvalds [Sat, 3 Nov 2012 22:27:21 +0000 (15:27 -0700)]
Merge tag 'nfs-for-3.7-4' of git://git.linux-nfs.org/projects/trondmy/linux-nfs

Pull NFS client bugfixes from Trond Myklebust:

 - Fix a bunch of deadlock situations:
   * State recovery can deadlock if we fail to release sequence ids
     before scheduling the recovery thread.
   * Calling deactivate_super() from an RPC workqueue thread can
     deadlock because of the call to rpc_shutdown_client.

 - Display the device name correctly in /proc/*/mounts

 - Fix a number of incorrect error return values:
   * When NFSv3 mounts fail due to a timeout.
   * On NFSv4.1 backchannel setup failure
   * On NFSv4 open access checks

 - pnfs_find_alloc_layout() must check the layout pointer for NULL

 - Fix a regression in the legacy DNS resolved

* tag 'nfs-for-3.7-4' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
  NFS4: nfs4_opendata_access should return errno
  NFSv4: Initialise the NFSv4.1 slot table highest_used_slotid correctly
  SUNRPC: return proper errno from backchannel_rqst
  NFS: add nfs_sb_deactive_async to avoid deadlock
  nfs: Show original device name verbatim in /proc/*/mount{s,info}
  nfsv3: Make v3 mounts fail with ETIMEDOUTs instead EIO on mountd timeouts
  nfs: Check whether a layout pointer is NULL before free it
  NFS: fix bug in legacy DNS resolver.
  NFSv4: nfs4_locku_done must release the sequence id
  NFSv4.1: We must release the sequence id when we fail to get a session slot
  NFS: Wait for session recovery to finish before returning

11 years agoMerge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux
Linus Torvalds [Sat, 3 Nov 2012 22:25:14 +0000 (15:25 -0700)]
Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux

Pull thermal management & ACPI update from Zhang Rui,

Ho humm.  Normally these things go through Len.  But it's just three
small fixes, I guess I can pull directly too.

* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux:
  exynos4_tmu_driver_ids should be exynos_tmu_driver_ids.
  ACPI video: Ignore errors after _DOD evaluation.
  thermal: solve compilation errors in rcar_thermal

11 years agoMerge branch 'i2c-embedded/for-current' of git://git.pengutronix.de/git/wsa/linux
Linus Torvalds [Sat, 3 Nov 2012 22:14:54 +0000 (15:14 -0700)]
Merge branch 'i2c-embedded/for-current' of git://git.pengutronix.de/git/wsa/linux

Pull i2c embedded fixes from Wolfram Sang:
 "Two patches are usual stuff.

  The bigger patch is needed to correct a wrong decision made in this
  merge window.  We hoped to get the PIOQUEUE mode in the mxs driver
  working with DMA, but it turned out to be too broken (leading to data
  loss), so we now think it is best to remove it entirely and work only
  with DMA now.  The patch should be in 3.7.  IMO, so users never get
  the chance to use both modes in parallel."

* 'i2c-embedded/for-current' of git://git.pengutronix.de/git/wsa/linux:
  i2c: tegra: set irq name as device name
  i2c-nomadik: Fixup clock handling
  i2c: mxs: remove broken PIOQUEUE support

11 years agoMerge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux
Linus Torvalds [Sat, 3 Nov 2012 22:13:49 +0000 (15:13 -0700)]
Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux

Pull drm fixes from Dave Airlie:
 "Scattered selection of fixes:

   - radeon: load detect fixes from SuSE/AMD
   - intel: misc i830, sdvo regression, vesafb kickoff ums fix
   - exynos: maintainers entry update + fixes
   - udl: fix stride scanout issue

  it's slightly bigger than I'd probably like, but nothing looked
  dangerous enough to hold off on."

* 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
  drm/udl: fix stride issues scanning out stride != width*bpp
  drm/radeon: add load detection support for ext DAC on R200 (v2)
  DRM/radeon: For single CRTC GPUs move handling of CRTC_CRT_ON to crtc_dpms().
  DRM/Radeon: Fix TV DAC Load Detection for single CRTC chips.
  DRM/Radeon: Clean up code in TV DAC load detection.
  drm/radeon: fix ATPX function documentation
  drivers/gpu/drm/radeon/evergreen_cs.c: Remove unnecessary semicolon
  DRM/Radeon: On DVI-I use Load Detection when EDID is bogus.
  DRM/Radeon: Fix primary DAC Load Detection for RV100 chips.
  DRM/Radeon: Fix Load Detection on legacy primary DAC.
  drm: exynos: removed warning due to missing typecast for mixer driver data
  drm/exynos: add support for ARCH_MULTIPLATFORM
  MAINTAINERS: Add git repository for Exynos DRM
  drm/exynos: fix display on issue
  drm/i915: Only kick out vesafb if we takeover the fbcon with KMS
  drm/i915: be less verbose about inability to provide vendor backlight
  drm/i915: clear the entire sdvo infoframe buffer
  drm/i915: VGA needs to be on pipe A on i830M
  drm/i915: fix overlay on i830M

11 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Linus Torvalds [Sat, 3 Nov 2012 03:48:41 +0000 (20:48 -0700)]
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net

Pull networking fixes from David Miller:
 "First post-Sandy pull request"

 1) Fix antenna gain handling and initialization of chan->max_reg_power
    in wireless, from Felix Fietkau.

 2) Fix nexthop handling in H.232 conntrack helper, from Julian
    Anastasov.

 3) Only process 80211 mesh config header in certain kinds of frames,
    from Javier Cardona.

 4) 80211 management frame header length needs to be validated, from
    Johannes Berg.

 5) Don't access free'd SKBs in ath9k driver, from Felix Fietkay.

 6) Test for permanent state correctly in VXLAN driver, from Stephen
    Hemminger.

 7) BNX2X bug fixes from Yaniv Rosner and Dmitry Kravkov.

 8) Fix off by one errors in bonding, from Nikolay ALeksandrov.

 9) Fix divide by zero in TCP-Illinois congestion control.  From Jesper
    Dangaard Brouer.

10) TCP metrics code says "Yo dawg, I heard you like sizeof, so I did a
    sizeof of a sizeof, so you can size your size" Fix from Julian
    Anastasov.

11) Several drivers do mdiobus_free without first doing an
    mdiobus_unregister leading to stray pointer references.  Fix from
    Peter Senna Tschudin.

12) Fix OOPS in l2tp_eth_create() error path, it's another danling
    pointer kinda situation.  Fix from Tom Parkin.

13) Hardware driven by the vmxnet driver can't handle larger than 16K
    fragments, so split them up when necessary.  From Eric Dumazet.

14) Handle zero length data length in tcp_send_rcvq() properly.  Fix
    from Pavel Emelyanov.

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (38 commits)
  tcp-repair: Handle zero-length data put in rcv queue
  vmxnet3: must split too big fragments
  l2tp: fix oops in l2tp_eth_create() error path
  cxgb4: Fix unable to get UP event from the LLD
  drivers/net/phy/mdio-bitbang.c: Call mdiobus_unregister before mdiobus_free
  drivers/net/ethernet/nxp/lpc_eth.c: Call mdiobus_unregister before mdiobus_free
  bnx2x: fix HW initialization using fw 7.8.x
  tcp: Fix double sizeof in new tcp_metrics code
  net: fix divide by zero in tcp algorithm illinois
  net: sctp: Fix typo in net/sctp
  bonding: fix second off-by-one error
  bonding: fix off-by-one error
  bnx2x: Disable FCoE for 57840 since not yet supported by FW
  bnx2x: Fix no link on 577xx 10G-baseT
  bnx2x: Fix unrecognized SFP+ module after driver is loaded
  bnx2x: Fix potential incorrect link speed provision
  bnx2x: Restore global registers back to default.
  bnx2x: Fix link down in 57712 following LFA
  bnx2x: Fix 57810 1G-KR link against certain switches.
  ixgbe: PTP get_ts_info missing software support
  ...

11 years agotcp-repair: Handle zero-length data put in rcv queue
Pavel Emelyanov [Mon, 29 Oct 2012 05:05:33 +0000 (05:05 +0000)]
tcp-repair: Handle zero-length data put in rcv queue

When sending data into a tcp socket in repair state we should check
for the amount of data being 0 explicitly. Otherwise we'll have an skb
with seq == end_seq in rcv queue, but tcp doesn't expect this to happen
(in particular a warn_on in tcp_recvmsg shoots).

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
Reported-by: Giorgos Mavrikas <gmavrikas@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
11 years agovmxnet3: must split too big fragments
Eric Dumazet [Mon, 29 Oct 2012 07:30:49 +0000 (07:30 +0000)]
vmxnet3: must split too big fragments

vmxnet3 has a 16Kbytes limit per tx descriptor, that happened to work
as long as we provided PAGE_SIZE fragments.

Our stack can now build larger fragments, so we need to split them to
the 16kbytes boundary.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Reported-by: jongman heo <jongman.heo@samsung.com>
Tested-by: jongman heo <jongman.heo@samsung.com>
Cc: Shreyas Bhatewara <sbhatewara@vmware.com>
Reviewed-by: Bhavesh Davda <bhavesh@vmware.com>
Signed-off-by: Shreyas Bhatewara <sbhatewara@vmware.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
11 years agol2tp: fix oops in l2tp_eth_create() error path
Tom Parkin [Mon, 29 Oct 2012 23:41:48 +0000 (23:41 +0000)]
l2tp: fix oops in l2tp_eth_create() error path

When creating an L2TPv3 Ethernet session, if register_netdev() should fail for
any reason (for example, automatic naming for "l2tpeth%d" interfaces hits the
32k-interface limit), the netdev is freed in the error path.  However, the
l2tp_eth_sess structure's dev pointer is left uncleared, and this results in
l2tp_eth_delete() then attempting to unregister the same netdev later in the
session teardown.  This results in an oops.

To avoid this, clear the session dev pointer in the error path.

Signed-off-by: Tom Parkin <tparkin@katalix.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
11 years agoexynos4_tmu_driver_ids should be exynos_tmu_driver_ids.
Jonghwan Choi [Tue, 23 Oct 2012 06:54:42 +0000 (14:54 +0800)]
exynos4_tmu_driver_ids should be exynos_tmu_driver_ids.

Signed-off-by: Jonghwan Choi <jhbird.choi@samsung.com>
Reviewed-by: Amit Daniel Kachhap <amit.kachhap@linaro.org>
Signed-off-by: Zhang Rui <rui.zhang@intel.com>
11 years agoACPI video: Ignore errors after _DOD evaluation.
Igor Murzov [Sat, 13 Oct 2012 00:41:25 +0000 (04:41 +0400)]
ACPI video: Ignore errors after _DOD evaluation.

There are systems where video module known to work fine regardless
of broken _DOD and ignoring returned value here doesn't cause
any issues later. This should fix brightness controls on some laptops.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=47861

Signed-off-by: Igor Murzov <e-mail@date.by>
Reviewed-by: Sergey V <sftp.mtuci@gmail.com>
Signed-off-by: Zhang Rui <rui.zhang@intel.com>