Updated info block checksum calculation to use 24-bit crc
as per Atmel data sheet.
Updated eeprom field(nv_checksum) to accommodate 24-bits.
Removed HACK(powerconfig) code for low-power mode.
Change-Id: Ic38a695010fd519af5c87ac731e8582898058bbb
Signed-off-by: makarand.karvekar <makarand.karvekar@motorola.com>
Add driver to communicate shutdown request to mdm6600
modem, through gpio triplets.
Change-Id: I00ab47e64e8f398caebac83f7c734f2f2c1a2aa3
Signed-off-by: James Wylder <james.wylder@motorola.com>
Previously, Message Processor always generated
CRC byte at end of message.
Now(version 8), this CRC byte is generated only upon request.
To request that a checksum is generated, the MSBit
of the address of the Message Processor object is set to 1.
By default the CRC byte is not generated, reading the CRC byte
will remove new messages from IC causing lost touches.
Added control flag and message size correction for this feature.
Change-Id: I7d1a75528a59afcc95688ae1b7d6704d29ffe443
Signed-off-by: makarand.karvekar <makarand.karvekar@motorola.com>
This patch does some cleanup to nvmap, and adds kernel apis for
use from the new host1x driver.
Change-Id: I17dbdfe2df918f8684d09910132f69d0b244e0f3
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
Initial submission of the LM3559 driver for Stingray
Change-Id: Id18092f7b23248ea8e2fcca1116ddba89a9af9dc
Signed-off-by: Dan Murphy <wldm10@motorola.com>
driver provides ioctls for broadcom gps guci library to set gps
reset and standby lines for brcm 4750 chip
Signed-off-by: prabhu.annabathula <prabhu.annabathula@motorola.com>
1) Added detection of Whisper Smart dock
2) Now enable VBUS for USB hosts
3) Added support for Whisper daemon to enable/disable UART
4) Fixed issue resulting in extra ID Float interrupt
Change-Id: I1531429bc90241de6139390eb7a2ac19f13ca78b
Signed-off-by: Greg Meiste <w30289@motorola.com>
Initial submission of the National LP8550 driver for p1
Change-Id: I2d2dc42a1c06fbc682fd8f556fa89c864c749db8
Signed-off-by: Dan Murphy <wldm10@motorola.com>
Added 12-bit support for x,y co-ordinates.
x,y > 1023, x,y is reported as 12-bit.
x,y < 1024, x,y is reported as 10-bit.
Add firmware for second touch panel type.
Change-Id: Icfd687a37f5b3fcbb784665bac7d270317421a9a
Signed-off-by: makarand.karvekar <makarand.karvekar@motorola.com>
Commonized the CPCAP LED driver into a single driver for all LEDs
connected to the CPCAP.
Change-Id: Ic62356010f3e1b355f7da757c3f08608765a71da
Signed-off-by: Dan Murphy <wldm10@motorola.com>
This is the initial submission of code for the gyroscope.
Change-Id: Ie56f79dad42b616058ea59cf05508337cc002f18
Signed-off-by: Dan Murphy <wldm10@motorola.com>
Initial submission of the Home key LED code.
Code was ported from Sholes and updated with a work queue
Change-Id: Ib25313471cd21fb941b8fa4ecab3811b6ef35d74
Signed-off-by: Dan Murphy <wldm10@motorola.com>
Whisper detection changes for version 0.4, enabling Whisper proto board
to be detected. Now reporting dock type to system.
Change-Id: I22e9704a33afc0afcd02eb68fcb40c87b9b3e3fc
Signed-off-by: Greg Meiste <w30289@motorola.com>
The MAXIM 9635 IC is used for ALS sensing. This will report ambient
light data in LUX.
Change-Id: I93728eb804d748145fb17524cfd328c923f33eb3
Signed-off-by: Dan Murphy <wldm10@motorola.com>
Open source driver modified to work on K34.
Resolved open coding violations
Ensured no data would be reported if the device is not enabled
Change-Id: Ia23393a702dc193835313844260ccd1fd5b93cc0
Signed-off-by: Dan Murphy <wldm10@motorola.com>
Add driver for motorola's CPCAP PMIC. This includes the core in mfd,
the rtc driver, and regulator drivers.
Change-Id: I96e3a97673002f3264ae8a71f5c8db1fcb7846e3
Signed-off-by: Greg Meiste <w30289@motorola.com>
This is a simple driver that controls the AUO backlight and
registers to the LED class driver.
This code is not long term code. Once new displays are available
this code can be disabled and removed.
Change-Id: I91f4fdfe25060440643597f5419f67a87ef72a96
Signed-off-by: Dan Murphy <wldm10@motorola.com>
This adds a driver for the Quantum capacitive touch controllers
that use the Object Based Protocol (OBP) for communication
between the driver and the on-chip firmware.
Change-Id: Ib469d626d5f0d11562547f2cbeb71a48e11f6072
Cc: Dan Murphy <D.Murphy@motorola.com>
Cc: Mike Chan <mike@android.com>
Cc: Paul Eastham <eastham@google.com>
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
-- creates /dev/spdif_out and /dev/spdif_out_ctl for playback and control
settings.
-- playback only
Change-Id: I19af1d41e13dedef650784835339ef9718300d0c
Signed-off-by: Iliyan Malchev <malchev@google.com>
This patch replaces the error counter with two separate error counters, one for
late dma callbacks, and another for overruns (during recording) or underruns
(during playback). The ioctls TEGRA_AUDIO_IN_GET_ERROR_COUNT and
TEGRA_AUDIO_OUT_GET_ERROR_COUNT now take a pointer to a struct containing both
error counters.
Signed-off-by: Iliyan Malchev <malchev@google.com>
If the device connected to a port has out-of-band wakeup
signaling, the phy and controller may be powered off on bus suspend.
Change-Id: Ia206f05d01160411b97aefa83045cd759d35b66d
Signed-off-by: Benoit Goby <benoit@android.com>
the panjit touchscreen needs to be reset when returning from
deep sleep mode; add a platform data structure to specify
the reset GPIO.
perform the reset during _probe, since the code already needs
to exist for _resume
delete a bunch of unused preprocessor defines
Change-Id: I71ae65dec45710b0eab4625036edf75064d4cc2b
Signed-off-by: Gary King <gking@nvidia.com>
the csd sector count reported by eMMC 4.3+ cards includes the boot
partition size; subtract this from the size reported to the disk
since the boot partition is inaccessible
Change-Id: I601b83aa0159b7aa446409ea8c945b256dd0b5b1
Signed-off-by: Gary King <gking@nvidia.com>
Modern monitors/tvs have more extended EDID information blocks which can
contain extra detailed modes. This adds a fb_edid_add_monspecs function
which drivers can use to parse those additions blocks.
Signed-off-by: Erik Gilling <konkers@android.com>
The host (or host1x) bus sits between the cpu core and the 3d, 2d, camera,
display, and mpeg encoder functions. It contains provides DMA channels,
hardware mutexes, and synchronization points.
Signed-off-by: Erik Gilling <konkers@android.com>
Add an ioctl to allow the TX fifo to be loaded with data before playback
starts. Playback can then be started by calling write() on the FIFO, even
with a length of 0. This will cause the pending data to be played out.
Signed-off-by: Iliyan Malchev <malchev@google.com>
-- Use consistently the various state flags:
-- active is set only when there is a read or write in flight
-- recording_canncelled is set only when recording is stopped via the ioctl()
-- dma_has_it is used to determine whether DMA is already in flight; do not
use the state of the fifos for this (e.g., if the TX fifo is empty, do not
assume that playback is stopped)
-- added a stop_completion (implemented for readers only) so that readers
closing a stream can wait until DMA or PIO transactions are stopped
-- Split /dev/audio0_{in,out} into /dev/audio0_{in,in_ctl,out,out_ctl} where the
_ctl versions have the ioctl()s
-- Introduced an error count per audio_stream; error count is reset on open, can
be read back & reset through an ioctl
Signed-off-by: Iliyan Malchev <malchev@google.com>
-- Add ioctls for configuring buffer, threshold, and DMA-transaction sizes from
user space.
-- Buffer sizes are provided in orders of magnitude.
-- Allocate max-sized buffers during probe, and allow the user to resize them
only within the original allocation, to avoid the risk from kmalloc failing
due to kernel-heap fragmentation, and also to avoid race conditions on DMA
shut-down.
-- In tegra_audio_write(), moved the call to start_playback_if_necessary()
immediately after writing to the fifo. Otherwise, when the fifo size is
smaller than what the user is trying to write, the user will block before
playback is started.
-- Silenced printk spew on spinning on i2s registers after transactions are
completed.
-- Cleaned up a 80-col style violation in downsample()
Signed-off-by: Iliyan Malchev <malchev@google.com>
downsampling:
-- add ioctl()s to downsample recorded data
-- supported frequencies are 8kHz, 11.025kHz, 22.05kHz, and 44.1kHz
-- downsamping to stereo and mono
-- default is 11.025kHz mono
fixes:
-- fix crashes from dequeuing DMA requests twice
Signed-off-by: Iliyan Malchev <malchev@google.com>
-- add audio_in_stream (identical to audio_out_stream, may merge them later)
-- add support for DMA and PIO recording
-- add ioctls for /dev/audio<n>_in to start and stop recording
Signed-off-by: Iliyan Malchev <malchev@google.com>
this adds support for dynamically reprogramming the I2C controller's
pin mux on transaction boundaries to enable one controller to be
registered as multiple I2C bus adapters with the kernel. this allows
platform designers an additional tool to resolve clock rate, I/O
voltage and electrical loading restrictions between the platform's
peripherals.
the i2c-tegra platform data is extended to support this; platforms
which use this feature should pass in the number of busses which
should be created for each controller, the starting adapter number
to use and the clock rate and pin mux for each virtual bus.
Change-Id: I57a96deb7b7b793222ec3f8cc3a941917a023609
Signed-off-by: Gary King <gking@nvidia.com>
If you switch the cgroup of a sleeping thread, its vruntime does
not get adjusted correctly for the difference between the
min_vruntime values of the two groups.
This patch adds a new callback, prep_move_task, to struct sched_class
to give sched_fair the opportunity to adjust the task's vruntime
just before setting its new group. This allows us to properly normalize
a sleeping task's vruntime when moving it between different cgroups.
More details about the problem:
http://lkml.org/lkml/2010/9/28/24
Cc: Arve Hjønnevåg <arve@android.com>
Signed-off-by: Dima Zavin <dima@android.com>
the csd sector count reported by eMMC 4.3+ cards includes the boot
partition size; subtract this from the size reported to the disk
since the boot partition is inaccessible
Change-Id: I601b83aa0159b7aa446409ea8c945b256dd0b5b1
Signed-off-by: Gary King <gking@nvidia.com>
Adds a new file in /sys/block/<block>/<partition> called partition_name
that contains the name of the partition, if specified by the partition
handler.
Change-Id: I6648ed95eabefd1d00edbfdfd99eeb971d15f4b3
Signed-off-by: Colin Cross <ccross@android.com>
Platform must register cpu power function that return power in
milliWatt seconds.
Change-Id: I1caa0335e316c352eee3b1ddf326fcd4942bcbe8
Signed-off-by: Mike Chan <mike@android.com>
Introduce new platform callback hooks for cpuacct for tracking CPU frequencies
Not all platforms / architectures have a set CPU_FREQ_TABLE defined
for CPU transition speeds. In order to track time spent in at various
CPU frequencies, we enable platform callbacks from cpuacct for this accounting.
Architectures that support overclock boosting, or don't have pre-defined
frequency tables can implement their own bucketing system that makes sense
given their cpufreq scaling abilities.
New file:
cpuacct.cpufreq reports the CPU time (in nanoseconds) spent at each CPU
frequency.
Change-Id: I10a80b3162e6fff3a8a2f74dd6bb37e88b12ba96
Signed-off-by: Mike Chan <mike@android.com>
Originally written by HTC. Contributions by Motorola and AKM.
misc: Import akm8975 from Motorola
Major style and code cleanups by Praveen Bharathi <pbharathi@motorola.com>
misc: akm8975: clean up code violations in akm8975.c
misc: akm8975: Clean up coding style, add suspend and resume
Change-Id: I4196913f15aec2dfbed47506d3dc085aada8e92d
Signed-off-by: Dima Zavin <dima@android.com>
Use this rather than calling usb_gadget_disconnect and usb_gadget_connect
directly to avoid sending USB disconnect events to userspace when resetting
the bus.
Signed-off-by: Mike Lockwood <lockwood@android.com>