CHROMEOS: add chrome kernel infrastructure

The ChromeOS build environment expects to build the kernel using a splitconfig.
This change adds the scripts and configs required to satisfy this requirement.
Right now the chromeos-tegra3 config is the only supported configuration using
the splitconfigs.

Signed-off-by: Rhyland Klein <rklein@nvidia.com>
Change-Id: I21ac515261a03bdbe1c79bbd6cd02a6e34c82ef9
Reviewed-on: http://git-master/r/103683
Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com>
Reviewed-by: Dan Willemsen <dwillemsen@nvidia.com>
Reviewed-by: Allen Martin <amartin@nvidia.com>
video: tegra: nvmap: Change function declaration order.

Change function declaration order to avoid multiple
CONFIG_TEGRA_NVMAP #ifdef's.

Change-Id: Icb10380f8da4b8037b90e787f961a28e8528814f
Signed-off-by: Krishna Reddy <vdumpa@nvidia.com>
Reviewed-on: http://git-master/r/103990
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Bo Yan <byan@nvidia.com>
Reviewed-by: Jon Mayo <jmayo@nvidia.com>
video: tegra: nvmap: Clean up carveout to iovmm conversion.

Clean up carveout to iovmm conversion code.
Fixed bug in converting iovmm requests to carveout.

Change-Id: I35a5238c955d0478f0e1a295e501bae9ee52b0a8
Signed-off-by: Krishna Reddy <vdumpa@nvidia.com>
Reviewed-on: http://git-master/r/103991
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com>
video: tegra: nvmap: Fix debug allocations data shown.

Debug allocations data for iovmm has carvout allocations
also and vice versa. Fixed it to show only iovmm for iovmm
and carveout for carveout.
Add missing "FLAGS" print for iovmm allocations.

Change-Id: I0fd271be24d0d2d3924ca473fd32476776fdcf84
Signed-off-by: Krishna Reddy <vdumpa@nvidia.com>
Reviewed-on: http://git-master/r/104246
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com>
Reviewed-by: Jon Mayo <jmayo@nvidia.com>
arm: tegra: ahci/sata: Add SATA driver

Upgrade the Tegra 3 SATA driver to support kernel 3.1.

The driver supports runtime_pm when doing power-gating during idle.

A new CONFIG_TEGRA_SATA_IDLE_POWERGATE is provided to enable/disable
power-gating during idle.

When sata clocks (sata, sata-oob and pll_e clocks) are in the
core_dvfs_table[] table, CONFIG_TEGRA_SATA_IDLE_POWERGATE must not
be enabled.

Currently, sata clocks are in the core_dvfs_table[]. Those clocks
will not be in that table in the future. By then,
CONFIG_TEGRA_SATA_IDLE_POWERGATE can then be enabled.

Change-Id: I15b585713bfd891f8827fd028b21bf3e5c2b80d9
Signed-off-by: Yen Lin <yelin@nvidia.com>
Reviewed-on: http://git-master/r/89614
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Jon Mayo <jmayo@nvidia.com>
Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com>
Revert "video: tegra: host: t30: use max 2d clock"

This reverts commit 5bdd03b21f625d0a07c66e4894b79e557287a3a1.

The reverted commit kept vcore at 1.2 volts whenever 2D engine is on
and increased power consumption for use cases that utilize 2D but
doesn't require its full speed.

Bug 979545

Change-Id: I4297ab1fb83558501ff620952284c8590dc5f1dd
Signed-off-by: Wen Yi <wyi@nvidia.com>
Reviewed-on: http://git-master/r/104293
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Donghan Ryu <dryu@nvidia.com>
Tested-by: Donghan Ryu <dryu@nvidia.com>
GVS: Gerrit_Virtual_Submit
Revert "Revert "arm: tegra3: change min_rate for clocks""

This reverts commit 18ed77b122dd1fbb9a6a5373da36ab32d0f0cee1.
The noisy audio playback on Tegra3 with secure-OS issue is fixed by
updating TL's SDK to 1.08. Change min_rate for clocks back to 12Mhz.

Bug 939415

Change-Id: Ib0daf98faa85cc7cbc1dbfd4bf458427f914d830
Signed-off-by: Hunk Lin <hulin@nvidia.com>
Reviewed-on: http://git-master/r/104317
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Wen Yi <wyi@nvidia.com>
Reviewed-by: Aleksandr Frid <afrid@nvidia.com>
Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com>
GVS: Gerrit_Virtual_Submit
Arm: Tegra3: clocks: Disabled SSCCENTER bit for plle

Disabled SSCCENTRE bit for plle as per golden register
(value provided by syseng)

Bug 942384 978870

Change-Id: I3c2f8e8e220015b58f0c8bcbaac4e9998a5b6dcd
Reviewed-on: http://git-master/r/98381
Signed-off-by: Mohit Kataria <mkataria@nvidia.com>
Reviewed-on: http://git-master/r/102408
Reviewed-by: Simone Willett <swillett@nvidia.com>
Tested-by: Simone Willett <swillett@nvidia.com>
arm: tegra: kai: configure gpio direction for bluesleep

Bug 986813

Change-Id: Iaca0465041af3442da8e052e3efec1efa60d0d79
Signed-off-by: Om Prakash Singh <omp@nvidia.com>
Reviewed-on: http://git-master/r/103632
Reviewed-by: Simone Willett <swillett@nvidia.com>
Tested-by: Simone Willett <swillett@nvidia.com>
ASoC: resolve compilation time warnings

Bug 949219

Change-Id: If7b4dd928cc5a808fd1a674bcc5f31c9a396a043
Signed-off-by: Sanjay Singh Rawat <srawat@nvidia.com>
Reviewed-on: http://git-master/r/103772
Reviewed-by: Simone Willett <swillett@nvidia.com>
Tested-by: Simone Willett <swillett@nvidia.com>
ASoC: tegra: treat compilation warning as error

Bug 949219

Change-Id: Ic8976b008772220299369369427a80dd370df596
Signed-off-by: Sanjay Singh Rawat <srawat@nvidia.com>
Reviewed-on: http://git-master/r/104419
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
spi: tegra: fix fifo_depth to 32.

Slink controller have the fifo depth of 32 words in
rx and tx side. But some of places it was taken the
value as 4. Fixing this to 32 words.

Change-Id: I262127c59241ce75d4385464c21ee733a48b1475
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: http://git-master/r/104463
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Stephen Warren <swarren@nvidia.com>
GVS: Gerrit_Virtual_Submit
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
spi: tegra: use devm_* for resource allocation

Using of devm_* function for resource allocation does not require
to free resource on code and hence it reduces code sizes.

Change-Id: Id6f0ba3cde2f351d5668ed28b098e5a829716a30
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: http://git-master/r/104464
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
spi: tegra: use functions to avoid duplicated code

The dma allocation method for receive and transmit is
same and so instead of duplicating the same code for
rx and tx, making the function to have common code and
using the function for dma allocation.
This reduces duplicated code.

Change-Id: Ibe15eec896bc581bda8c68572eb1425c3bf6a7b2
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: http://git-master/r/104465
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
arm: tegra: cardhu: remove unused pinmux setting

Remove unsued pinmux for pn544 nfc which was introduced in
http://git-master/r/#change,62746

Bug 978207

Change-Id: I7724e9c17c8c5717e07fbc9e091f26f6e81cb422
Signed-off-by: Rakesh Goyal <rgoyal@nvidia.com>
Reviewed-on: http://git-master/r/104468
Reviewed-by: Simone Willett <swillett@nvidia.com>
Tested-by: Simone Willett <swillett@nvidia.com>
ARM: tegra: clock: Update secondary pll dividers resume

During resume from LP0 on Tegra2 always enable pll secondary dividers
before clocks restoration (to make sure clock sources are enabled).
Restore actual secondary dividers settings after clocks are restored.

Bug 965928
Bug 953030

Change-Id: Id0cd99b601f90ad9fe8452817810969e41002199
Signed-off-by: Prashant Gaikwad <pgaikwad@nvidia.com>

Reviewed on http://git-master/r/#change,104661
(cherry picked from commit 6350d1fd475373779cf5110403717b2c84e723ba)

Change-Id: Ic50477603b97a99d2ac2c926df1728faa107b108
Reviewed-on: http://git-master/r/104668
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Prashant Gaikwad <pgaikwad@nvidia.com>
Tested-by: Prashant Gaikwad <pgaikwad@nvidia.com>
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
GVS: Gerrit_Virtual_Submit
arm: tegra: p1852: Instantiated TDM mode driver

Instantiated TDM mode driver.
Changed clock values for TDM mode.

Bug 948478

Change-Id: I64fb6c6f3ff0d573494656ae04f29323a41da50a
Signed-off-by: Bob Johnston <bjohnston@nvidia.com>
Reviewed-on: http://git-master/r/103895
Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
ARM: tegra: Add ad5816 focuser board support

- Add support for new focuser ad5816 driver to
cardhu boards.
- Add regulator for new focuser ad5816.

Bug 947792

Change-Id: I62e89e9188d307704098e2d4e88d276914836d70
Signed-off-by: Sudhir vyas <svyas@nvidia.com>
Reviewed-on: http://git-master/r/103138
Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
usb: otg: tegra: change logic for 'from' in irq_work

Change-Id: I8e23c1d1afd67e5b7456d63b0aa2db254c6434cf
Signed-off-by: Tom Cherry <tcherry@nvidia.com>
Reviewed-on: http://git-master/r/105211
video: tegra: nvmap: Remove nvhost specific APIs

Remove nvmap_pin_array() and nvmap_patch_word() and their utility
functions.

Bug 965206

Change-Id: I217a427934b0b99b5252b33ab3ac4eaaa8c7e076
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com>
Reviewed-on: http://git-master/r/104451
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Mayuresh Kulkarni <mkulkarni@nvidia.com>
GVS: Gerrit_Virtual_Submit
Reviewed-by: Juha Tukkinen <jtukkinen@nvidia.com>