History log of /arch/arm/mach-tegra/board-harmony.c
Revision Date Author Comments
2123552d12168e744271aaf206e5826760fbd857 04-Jan-2012 Stephen Warren <swarren@nvidia.com> ARM: tegra: Remove use of TEGRA_GPIO_TO_IRQ

Replace compile-time usage of TEGRA_GPIO_TO_IRQ with run-time calls to
gpio_to_irq(). This will allow the base IRQ number for the Tegra GPIO
driver to be dynamically allocated in a later patch.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Olof Johansson <olof@lixom.net>
abea3f2ce05f57e185b080e4a313f9fb519a0ecb 05-Nov-2011 Russell King <rmk+kernel@arm.linux.org.uk> ARM: restart: tegra: use new restart hook

Hook these platforms restart code into the new restart hook rather
than using arch_reset().

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
c37c07ddf26910f39cdc55df54640439d3a38083 14-Dec-2011 Peter De Schrijver <pdeschrijver@nvidia.com> arm/tegra: prepare early init for multiple tegra variants

This patch splits the early init code in a common and a tegra20 specific part.

Signed-off-by: Peter De Schrijver <pdeschrijver@nvidia.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Colin Cross <ccross@android.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
a0f203d384fadacba514748cd0095efeadeed96c 02-Dec-2011 Stephen Warren <swarren@nvidia.com> ASoC: WM8903: Fix platform data gpio_cfg confusion

wm8903_platform_data.gpio_cfg[] was intended to be interpreted as follows:
0: Don't touch this GPIO's configuration register
1..7fff: Write that value to the GPIO's configuration register
8000: Write zero to the GPIO's configuration register
other: Undefined (invalid)

The rationale is that platform data is usually global data, and a value of
zero means that the field wasn't explicitly set to anything (e.g. because
the field was new to the pdata type, and existing users weren't update to
initialize it) and hence the value zero should be ignored. 0x8000 is an
explicit way to get 0 in the register.

The code worked this way until commit 7cfe561 "ASoC: wm8903: Expose GPIOs
through gpiolib", where the behaviour was changed due to my lack of
awareness of the above rationale.

This patch reverts to the intended behaviour, and updates all in-tree users
to use the correct scheme. This also makes WM8903 consistent with other
devices that use a similar scheme.

WM8903_GPIO_NO_CONFIG is also renamed to WM8903_GPIO_CONFIG_ZERO so that
its name accurately reflects its purpose.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Cc: Olof Johansson <olof@lixom.net>
Cc: Colin Cross <ccross@android.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
afed2a261825e83cf9564dec60961e8aba6dc701 06-Sep-2011 Marc Zyngier <marc.zyngier@arm.com> ARM: tegra2: convert to CONFIG_MULTI_IRQ_HANDLER

Convert the tegra2 platforms to be using the gic_handle_irq
function as their primary interrupt handler.

Tested on harmony.

Cc: Colin Cross <ccross@android.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
0744a3ee37784dfda0025963716a36c3f1e3adcc 20-Dec-2010 Russell King <rmk+kernel@arm.linux.org.uk> ARM: platform fixups: remove mdesc argument to fixup function

Get rid of the mdesc pointer in the fixup function call. No one uses
the mdesc pointer, it shouldn't be modified anyway, and we can't wrap
it, so let's remove it.

Platform files found by:

$ regexp=$(git grep -h '\.fixup.*=' arch/arm |
sed 's!.*= *\([^,]*\),* *!\1!' | sort -u |
tr '\n' '|' | sed 's,|$,,;s,|,\\|,g')
$ git grep $regexp arch/arm

Acked-by: Nicolas Pitre <nicolas.pitre@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
b61cafee2e0b1c83f99be07d7aef6331b5e9f25d 06-Jul-2011 Nicolas Pitre <nicolas.pitre@linaro.org> ARM: mach-tegra: convert boot_params to atag_offset

Signed-off-by: Nicolas Pitre <nicolas.pitre@linaro.org>
Acked-by: Arnd Bergmann <arnd@arndb.de>
11b3adb45da636a839bd2b7c300c616e0e2c38d6 08-Aug-2011 Stephen Warren <swarren@nvidia.com> ARM: Tegra: Force PORT_TEGRA as the UART type

8250.c recently gained an explicit PORT_TEGRA port type. Specifically
request this in all Tegra boards' UART platform data.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
dd58bdbceb087238bead08e05226c0cef20aab4d 08-Aug-2011 Stephen Warren <swarren@nvidia.com> ARM: Tegra: Harmony: Add USB device

The Tegra USB port is attached an an SMSC9514; a combination USB hub
and Ethernet controller.

This change is extracted from a change in the ChromeOS 2.6.38 kernel.

Signed-off-by: Olof Johansson <olofj@chromium.org>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
78702e43c1cadd600e35374411caba82ad9354b6 10-Jul-2011 Colin Cross <ccross@android.com> ARM: tegra: remove copy-and-pasted i2c platform data in boards

Every board file includes the same platform data definition
for the i2c-tegra driver's bus speed. Move the platform data
into devices.c, and remove it from all the board files.

Signed-off-by: Colin Cross <ccross@android.com>
Tested-by: Konstantin Sinyuk <kostyas@compulab.co.il>
Acked-by: Olof Johansson <olof@lixom.net>
61a6d0764be43e014d265128c2af1b41e0fc96b0 12-Apr-2011 Stephen Warren <swarren@nvidia.com> ARM: Tegra: Add to tegra_wm8903_platform_data

Seaboard derivate Kaen has a GPIO to mute the headphone output. Add a field
to tegra_wm8903_platform_data so the board files can pass the GPIO number
for that to the ASoC machine driver.

Also, initialize this new field to a "not present" value for Harmony.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
7b33af252fbbf3beb694448da3ba6687022fd602 12-Apr-2011 Stephen Warren <swarren@nvidia.com> ASoC: Tegra: Rename pdev tegra-snd-harmony to tegra-snd-wm8903

Soon, this machine driver will be updated to handle a number of Tegra boards
using the WM8903 codec. Rename the platform device in advance to reflect this.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
4651d5566840e911b14a5052f18ed39558677937 12-Apr-2011 Stephen Warren <swarren@nvidia.com> ARM: Tegra: Rename harmony_audio.h -> tegra_wm8903_pdata.h

The audio driver will soon support more than just the Tegra Harmony board.
Rename the platform data header file and data type to reflect this.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
6f168f2fa60f87e85e0df25e87e2372f22f5eb7c 09-Mar-2011 Mike Rapoport <mike@compulab.co.il> ARM: tegra: harmony: initialize the TPS65862 PMIC

Initialize the PMIC voltage regulators and provide the supply map for
PCI-e clock supply. The rest of the supplies should be added together
with the drivers that use them.

Signed-off-by: Mike Rapoport <mike@compulab.co.il>
CC: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
06fc9a30052b82d87da4a34a9c0bb3bf7338412c 05-Mar-2011 Stephen Warren <swarren@nvidia.com> ARM: tegra: harmony: Set WM8903 gpio_base

This is the final patch to enable audio support on Harmony. It additionally
relies on the latest ASoC branch being merged in, which provides the header
defining the gpio_base field in the WM8903 platform data.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
fba3b2fc1b427696d004f5b22191620f90fe8412 05-Mar-2011 Stephen Warren <swarren@nvidia.com> ARM: tegra: harmony: I2C-related portions of audio support

This patch is the portion of the audio-related setup that relies additionally
on the latest Tegra I2C driver being merged.

* Define platform data for WM8903 audio codec
* Register WM8903 as an I2C device

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
de4855d928409caf9c366a9af643bb855aab6bf6 05-Mar-2011 Olof Johansson <olof@lixom.net> ARM: tegra: harmony: register i2c devices

Register the base i2c busses on harmony. Devices coming at a later date,
but this allows for hand-probing of some of them at least.

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Stephen Warren <swarren@nvidia.com>
ef2b1a0f1eb299c2d00addfee3a2631395d9bdb5 05-Mar-2011 Stephen Warren <swarren@nvidia.com> ARM: tegra: harmony: Beginnings of audio support

This change includes everything required to enable audio on Harmony, except
those parts which rely on code not currently in Tegra's for-next branch, i.e.
except those parts which rely on merges of the Tegra I2C driver or latest
ASoC subsystem.

* Define GPIO names for audio-related GPIOs
* Set up platform data and platform device for ASoC machine driver
* Register audio-related platform devices
* Initialize audio-related clocks
* Correctly configure pinmux and GPIO enables for audio-related pins

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
986afbe493b09846dffbe5c1bf9a428a839b6ca2 05-Mar-2011 Stephen Warren <swarren@nvidia.com> ARM: tegra: create defines for SD-related GPIO names

This ensures they're kept in sync between platform_data definitions and
the GPIO table initialization.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
875d4af6a3bdf548ebf069c1f4254c6ae1edae93 20-Feb-2011 Olof Johansson <olof@lixom.net> ARM: tegra: harmony: register sdhci devices

Add the 3 sdhci devices that are available on Harmony as
platform devices. Two go to slots (one 4-lane, one 8-lane),
and one goes to onboard wifi.

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Colin Cross <ccross@android.com>
ec243a071d32af0350449c220d1de7c437088879 20-Feb-2011 Olof Johansson <olof@lixom.net> ARM: tegra: remove stale nvidia atag handler

Remove dead atag handling code for nvidia-specific tags.

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Colin Cross <ccross@android.com>
0cf6230af909a86f81907455eca2a5c9b8f68fe6 22-Feb-2011 Colin Cross <ccross@android.com> ARM: tegra: Move tegra_common_init to tegra_init_early

Move tegra_common_init to tegra_init_early, and set it
as the init_early entry in the machine struct.
Initializes the clocks earlier so that timers can enable
their clocks.

Also reorders the members in the Harmony and Trimslice
boards' machine structs to match the order they are
called in.

Signed-off-by: Colin Cross <ccross@android.com>
Acked-by: Olof Johansson <olof@lixom.net>
6451d7783ba5ff24eb1a544eaa6665b890f30466 15-Oct-2010 Nicolas Pitre <nicolas.pitre@linaro.org> arm: remove machine_desc.io_pg_offst and .phys_io

Since we're now using addruart to establish the debug mapping, we can
remove the io_pg_offst and phys_io members of struct machine_desc.

The various declarations were removed using the following script:

grep -rl MACHINE_START arch/arm | xargs \
sed -i '/MACHINE_START/,/MACHINE_END/ { /\.\(phys_io\|io_pg_offst\)/d }'

[ Initial patch was from Jeremy Kerr, example script from Russell King ]

Signed-off-by: Nicolas Pitre <nicolas.pitre@linaro.org>
Acked-by: Eric Miao <eric.miao at canonical.com>
a68820db790351076039f936fa6317a2b3439e55 18-Aug-2010 Olof Johansson <olof@lixom.net> arm: tegra: fix compilation of board-harmony.c

The patch "ARM: Remove DISCONTIGMEM support" removed the node id from
the meminfo struct and the PHYS_TO_NID macro, causing compilation errors:

arch/arm/mach-tegra/board-harmony.c: In function 'tegra_harmony_fixup':
arch/arm/mach-tegra/board-harmony.c:94: error: 'struct membank' has no member named 'node'
arch/arm/mach-tegra/board-harmony.c:94: error: implicit declaration of function 'PHYS_TO_NID'
arch/arm/mach-tegra/board-harmony.c:97: error: 'struct membank' has no member named 'node'

Signed-off-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Colin Cross <ccross@google.com>
42a7bf4d2686145bea03ff9b87d83868cc514f47 11-Feb-2010 Colin Cross <ccross@android.com> [ARM] tegra: harmony: Add harmony board file

v2: fixes from Russell King
- include linux/io.h instead of mach/io.h

v3: fixes from Linus Walleij
- remove /16 * 16 from UART clock

v3:
- Fix checkpatch issues
- make board init calls explicit
- use clock init table to set clocks
- remove panel

Signed-off-by: Colin Cross <ccross@android.com>
Signed-off-by: Erik Gilling <konkers@android.com>