smartmax: allow using as default governor
tegra: disable core UV but support enabling it again more easily
arm: tegra: usb_phy: fix null pointer dereference

Fixing the null pointer dereference crash. Also
modifying USB driver not to give up in case if there
is no avdd_usb regulator.
workqueue: skip nr_running sanity check in worker_enter_idle() if tru…

…stee is active

commit 544ecf3 upstream.

worker_enter_idle() has WARN_ON_ONCE() which triggers if nr_running
isn't zero when every worker is idle.  This can trigger spuriously
while a cpu is going down due to the way trustee sets %WORKER_ROGUE
and zaps nr_running.

It first sets %WORKER_ROGUE on all workers without updating
nr_running, releases gcwq->lock, schedules, regrabs gcwq->lock and
then zaps nr_running.  If the last running worker enters idle
inbetween, it would see stale nr_running which hasn't been zapped yet
and trigger the WARN_ON_ONCE().

Fix it by performing the sanity check iff the trustee is idle.

workqueue: perform cpu down operations from low priority cpu_notifier()

commit 6575820 upstream.

Currently, all workqueue cpu hotplug operations run off
CPU_PRI_WORKQUEUE which is higher than normal notifiers.  This is to
ensure that workqueue is up and running while bringing up a CPU before
other notifiers try to use workqueue on the CPU.

Per-cpu workqueues are supposed to remain working and bound to the CPU
for normal CPU_DOWN_PREPARE notifiers.  This holds mostly true even
with workqueue offlining running with higher priority because
workqueue CPU_DOWN_PREPARE only creates a bound trustee thread which
runs the per-cpu workqueue without concurrency management without
explicitly detaching the existing workers.

However, if the trustee needs to create new workers, it creates
unbound workers which may wander off to other CPUs while
CPU_DOWN_PREPARE notifiers are in progress.  Furthermore, if the CPU
down is cancelled, the per-CPU workqueue may end up with workers which
aren't bound to the CPU.

While reliably reproducible with a convoluted artificial test-case
involving scheduling and flushing CPU burning work items from CPU down
notifiers, this isn't very likely to happen in the wild, and, even
when it happens, the effects are likely to be hidden by the following
successful CPU down.

Fix it by using different priorities for up and down notifiers - high
priority for up operations and low priority for down operations.

Workqueue cpu hotplug operations will soon go through further cleanup.
cpu-tegra: add proper transition latency - https://github.com/TripNRaVeR/tripndroid-endeavoru-3.1.10-htc/commit/f2d4998ba4d97b709740c484811625a1437ef936
ARM: Tegra: Omit L2 flush at disable

In Tegra kernel L2 is disabled only upon CPU cluster power down,
e.g. LP2 entry. Flushing L2 upon every LP2 entry is costly.
Since we are always in single core mode upon cluster power down
we can safely omit L2 flush upon L2 disable.
usb: gadget: tegra: remove unnecessary bus resume

Current Tegra UDC driver share same IRQ with OTG driver, and it will call
bus_resume() even if there is no UDC IRQ pending.

This patch will check UDC IRQ source and will not cause bus resume if no
IRQ pending for UDC driver.
ARM: tegra: usb: handle device connect in lp0

When a otg cable is connected along with device during lp0
system will wakeup but might not complete device enumeration
before going back to lp0. In this case we have to handle pmc
disable.
arm: tegra: fb: Update fix line_length

Update framebuffer's fix line_length parameter when changing
video mode dynamically.The new line_length should be according
to new x resolution. On addition, check the return value from
dc driver while setting a mode.
asoc: tegra: i2s: Fixes for audio_clock_2x rate

audio_clock_2x parent needs to be set first before
changing the rate, else it will not work.
media: video: tegra: Don't overwrite avp outbox

Before writing a new value in avp outbox register ensure the last
value written in it has been read by AVP. If AVP has not yet read
the current value in avp outbox register then wait until it is done

media: video: nvavp: Add bsea/vcp clocks for Audio

1) Enable bsea/vcp clocks for Audio support by ioctl
2) Send kernel event NVE276_OS_INTERRUPT_APP_NOTIFY
to user space
3) Suspend Resume support
arm: tegra: pcie: Fix Coverity issue

Fixed data type mismatch.
As irq was unsigned int following code was skipped always.

arch: arm: pcie: init TXBA registers

Setting default values in TXBA registers to avoid
unfair arbitration between downstream reads and
completions to upstream reads
enrc2b: reduced default panel brightness
arm: tegra: set core to 0.95V in LP1 - https://github.com/TripNRaVeR/tripndroid-endeavoru-3.1.10-htc/commit/97a13318af7ab09ef266d8c4a9a3060e71de9db9
enrc2b:settings for LP1 0.95V CoreV - https://github.com/TripNRaVeR/tripndroid-endeavoru-3.1.10-htc/commit/93cb8795262819166b87af521c3b4fac1dab2085
added CONFIG_TEGRA_LP1_950 to defconfig
Revert: Removing endeavoru lun_cdrom flag to let ums work rw instead of ro