Age | Commit message (Collapse) | Author |
|
occassionally, the keyboard stops functioning after the system resumes from
suspend state; this may be due to a failure enabling keyboard scanning
mode during suspend.
disable suspend/resume calls from nvec keyboard driver until a solution
for this problem is resolved (e.g., converting nvec to a bus).
Change-Id: Id9f83a41852c8fec293bd43a94acaa287c184be0
|
|
the system Change-Id: Idb7f83fcfee31ad6accbbabb80bd98477ceca3f2" into android-tegra-2.6.29
|
|
Change-Id: Idb7f83fcfee31ad6accbbabb80bd98477ceca3f2
|
|
In OTG mode during suspend/resume functionalities both device driver and host
driver are accessing the USB1 controller registers with out checking the
operation mode. Host driver is reading wrong status values from the registers
causing the stack dump. This is fixed by checking the OTG state and guarding
the hardware to access by only one driver(host or device), which is currently
in operation.
Bug 651253 : [Whistler] : USB gadget and/or EHCI bus suspend/resume API causes
crash 1st after suspend/resume
Tested on : Android/whistler with suspend/resume framework enabled.
Suspend/resume sequence work fine with OTG enabled.
|
|
android-tegra-2.6.29
|
|
android-tegra-2.6.29
|
|
Using delayed suspend prevents the system from going into suspend.
The delayed suspend work queue acquires a wakelock and the power
manager kicks in before the delayed suspend gets scheduled.
|
|
android-tegra-2.6.29
|
|
add a field to the android_usb_platform_data structure to allow platforms
to specify the size of the bulk transfer buffer; if unspecified, default
to the BULK_BUFFER_SIZE defined by f_mass_storage.c (previously defined as
4KiB).
on harmony (tegra 2), performance of a class 10 SD card mounted
as USB mass storage through this gadget has been measured to increase
from ~7MB/sec read to ~17MB/sec read by increasing the buffer size
from 4KiB to 16KiB.
Change-Id: I0da025f1317506cbd3257fe697a9297b0516d9e9
|
|
Implement the enable and disable handlers introduced in the mmc_ops structure.
Use the enable and disable handlers for dynamic clocking of SD memory devices.
SD clock is enabled when the sdhci host is claimed and clk is disabled when
host is released.
Use delayed suspend for better performance.
Change-Id: Ied5e0f00c41abd4f6d0918405356a9983ae06552
|
|
With OTG disabled on whistler the suspend/resume code was hanging. The
reason is because register reads hang when clocks are disabled. This fix
tries to skip the suspend calls when device is already in suspend state.
This avoids attempts to read register with clocks disabled.
Bug 651253 : [Whistler] : USB gadget and/or EHCI bus suspend/resume
API causes crash 1st after suspend/resume
Reviewed by: vmoganty
Tested on : whistler with suspend/resume framework enabled. Suspend/resume
sequence seems to work fine on whistler and harmony with OTG
disabled in kernel and odm_query.
Change-Id: Iedc096648deab5c3b80350446c4ee67f625df27e
|
|
|
|
in order to implement user vs super-user protections for the nvmap
functionality, multiple device nodes need to be created with separate
file operations, similar to the mem vs kmem separation.
since nvmap is conceptually similar to the other "mem" class devices,
the multiple device nodes are added as new minor numbers in the mem
class, and the existing platform driver registration is removed.
Change-Id: Ie260e4c56679682133d90a69c0985eaaa5a4d071
|
|
tegra serial driver calculates the clock values based on baudrate requested.
while calculating clock values for higher baud rates, the intermediate
values are getting truncated because of 32-bit overflow. Redefining the
intermediate variables to 64-bit(unsigned long long instead of unsigned long)
is resolving the issue.
|
|
android-tegra-2.6.29
|
|
MMC hosts that support power saving can use the 'enable' and 'disable'
methods to exit and enter power saving states. An explanation of their
use is provided in the comments added to include/linux/mmc/host.h.
Signed-off-by: Adrian Hunter <adrian.hunter@nokia.com>
Acked-by: Matt Fleming <matt@console-pimps.org>
Cc: Ian Molton <ian@mnementh.co.uk>
Cc: "Roberto A. Foglietta" <roberto.foglietta@gmail.com>
Cc: Jarkko Lavinen <jarkko.lavinen@nokia.com>
Cc: Denis Karpov <ext-denis.2.karpov@nokia.com>
Cc: Pierre Ossman <pierre@ossman.eu>
Cc: Philip Langdale <philipl@overt.org>
Cc: "Madhusudhan" <madhu.cr@ti.com>
Cc: <linux-mmc@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Conflicts:
drivers/mmc/core/core.c
include/linux/mmc/host.h
tegra: cherry picked patch 8ea926b22e2d13238e4d65d8f61c48fe424e6f4f
Change-Id: Iaaaaecd00452760a9bcea43f41af97bcbccef058
|
|
This reverts commit 179fa807239b85a471b046a5ba75dce7c0f68dec.
Need to add dynamic clocking the right way, i.e. as part enable/disable
mmc_ops handler. Commit to follow soon.
Change-Id: I74245b0c7ba9da5c839b08fbe7dce293080a06a4
|
|
into android-tegra-2.6.29
|
|
Replacing the spin_lock(), spin_unlock() functions used in ISR with
spin_lock_irqsave(), spin_unlock_irqrequest() functions.
Change-Id: Ib7639e3dc790c2b8471098b8a435d8800adae72c
|
|
the previous change to tegra-odm.c introduced suspend & early suspend
codepaths, but the suspend code path didn't build.
fix the build break, and clean up some warnings caused by not
including <linux/tegra_devices.h>
Change-Id: I73b40a50e508ed95bbcccac1bf5234e057c88d5d
|
|
android-tegra-2.6.29
|
|
driver" into android-tegra-2.6.29
|
|
android-tegra-2.6.29
|
|
Additionally normal suspend and resume hooks have also been added in case
CONFIG_HAS_EARLYSUSPEND is not enabled.
Tested on Whistler by invoking suspend and resume
Change-Id: I13b7402d2703cc0fd3cb3070f172f4dd09f84597
|
|
Fix logic pinmux config select
Change-Id: I49f8c399d57455c85ed373a66db6696cdd997bec
|
|
into android-tegra-2.6.29
|
|
Also Fixed a bug of ordering. Don't check for the FIFO is drained when the PIO is in flight.
Change-Id: I0a0f81a2060f7f6a87dd8e5f6593d688c1c80d08
|
|
Bug 646822
Synopsis:[Harmony/android] Battery status is not updated whenever
there is any change in battery/power supply property
- Created a timer of interval 30 Secs which calls the function
tegra_battery_poll_timer_func().
This reports to the power supply core for power supply changes
for Battery, AC and USB.
Which gets the updated info from EC battery driver and signals the uvent.
The JNI and Battery Info application which is waiting on this uevent
then updates themselves with this lateset info from /sys/class/power_supply/*
- Unregsitered to power_supply in remove function.
- Added suspend-resume functions
- Deleting polling timer while suspend and creating it again while resume.
Change-Id: I5a09bd9c6566f1732e6d2abb2e446d1e29cfdba2
|
|
state" into android-tegra-2.6.29
|
|
android-tegra-2.6.29
|
|
DMA." into android-tegra-2.6.29
|
|
an uninitialized PMU may return a completely random value for the
number of seconds; when this value is interpreted as number of
seconds since 1970, this can cause severe instability if the value
is >= 0x80000000UL (which is January 2038, sign-overflowing the
32b signed time_t value used in the kernel)
to work-around this issue, when the RTC driver is probed, it
performs an initial read of the PMU's time; if the value returned
would result in a negative time_t value, the PMU RTC is reset to 0.
bug 648967
Change-Id: Icee9940b5433e7e22edf98f9fcd5c7193b5c4f1f
|
|
suspend/resume APIs defined for tegra usb host
Bug 635299
Tested on : harmony. suspend/resume calls success.
Change-Id: I5dad8bc2cc524de74c2fd3260b014de4764c604c
|
|
Given the constraints of Tx DMA to only use the dword aligned buffer start
and dword aligned size, it would prudent to allocate a uncached DMA buffer
and copy the data to that buffer before the trasmit.
Main reason if Flushing L2 is not a cheap operation and the UART driver
model is having to do all the operations while holding the spin-lock
will not work.
Change-Id: I0ca14d5809258e2a62111f0a8a5e8a8053de1a34
|
|
- all the EC client threads should be freezable while
going into suspend and so as the nvec keyboard thread.
bug 646208
Change-Id: I95285829b229d5e482f216507210258e05de792c
|
|
SMSC LAN9500 has dual purpose GPIO/LED pins, and by default at power-on
these are configured as GPIOs. This means that if LEDs are fitted they
won't ever light.
This patch sets them to be LED outputs for speed, duplex and
link/activity.
Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
|
|
nvmap-allocated memory is used primarily by DMA devices, and the cost
of L2 maintenance generally greatly outweighs the benefit of caching
the (mostly streaming) accesses.
a reserved region of the kernel's virtual address space (NVMAP_BASE to
NVMAP_BASE+NVMAP_SIZE) is used by nvmap as a temporary mapping area for
all operations (cache maintenance, read, write) on memory handles is
perfomed by mapping each page into the nvmap aperture with the same
cache attributes as other active mappings.
this change greatly improves the performance of drawing the drawer
and web pages in Android, since the primary bottleneck in both cases
has been the L2 cache maintenance operations (which no longer exist)
additionally, when cache writebacks are requested on large regions
(currently defined as >= 3 pages), the entire L1 data cache is flushed,
to avoid the loop costs of per-line operations.
Change-Id: I37e07c86eb316811f63e7200d52667debf4b7aa7
|
|
use tabs rather than spaces in nvmap.c, decompose nvmap_rw_handle to fit
within 80 columns
Change-Id: Ie29072ad9f32de4a0d418f487b73c0826637f551
|
|
|
|
|
|
cases" into android-tegra-2.6.29
|
|
suspend/resume APIs defined for Nand
Bug 635299
Tested on : harmony. suspend/resume calls success.
Change-Id: I6c962dd771903edd389aa50ec24e173da57ce93a
|
|
suspend/resume APIs defined for tegra usb gadget
Bug 635299
Tested on : harmony. suspend/resume calls success.
Change-Id: I564fdd5539d15d04762e3b7dede3e1267d5bd44b
|
|
- setting set_freezable_with_signal at the start of the thread
- replaced NvOsSemaphoreWaitTimeout by wait_event_freezable_timeout
- marked a shutdown variable and signalled the semaphore before joining
with the thread
Change-Id: I06a11848cc20498b57387a0c4bb55c330065768f
|
|
|
|
AP20 SDMMC controller has the following deviations from the specification.
1. Provides the specification version as 0 instead of 1.
2. Maximum allowed ADMA descriptor length is 32KB instead of 64KB.
Enabled ADMA2 option in the MMC driver by adding the sw WARs for the
above two issues.
Tested on: Android
Bug: 620234
|
|
Mix of hardcoded values and enums caused the code to take unexepcted paths causing Tx failures.
Tested with BT scanning of devices.
Change-Id: Ic82f1749304262487a4bf0d2e42e5edeadcf360c
|
|
Tested with BT device after enabling the suspend ops driver.
BT is working after multiple suspend/resume operations.
Change-Id: I71f4c34f93e16c15e3f03676c3e5c9c5e84b43b9
|
|
* changes:
fsl_udc_core: Fix USB chapter9 compliance tests.
|
|
since the mouse event thread expects to read from the embedded
controller following an event, it should be frozen while the system
goes into suspend
additionally, on operating systems which support early_suspend, the
mouse should cause the system to wake up; register an early_suspend
handler for the mouse based on the blank screen state.
bug 645292
Change-Id: Ib3dc161565da70893ccd1397e0a3be35f5283c3f
|