Commit graph

303504 commits

Author SHA1 Message Date
Devin Kim
3259f9d959 hdmi: able to build kernel without hdmi feature
If not using HDMI, compiling errors occur. it's fixes to build
kernel without HDMI feature

Change-Id: Ida5babdc2f8ebaf73cd5c52b3f4686b27f6f1aa1
2013-03-04 09:11:48 -08:00
Devin Kim
10f9899b30 mako: remove unused mhl codes
Change-Id: I319d5e5f84af5f88604523571e377e6698e583f7
2013-03-04 09:11:47 -08:00
Devin Kim
200817d015 mako: display: set the uninitialized variable
dsi_power_on was not uninitialized. set it to false

Change-Id: I777864097ca0d88ff1030b954db3403806701c54
2013-03-04 09:11:46 -08:00
Devin Kim
3a49b821bb mako: input: check the regulator instances
regulator_get shouldn't be called repeadtedly. if regulator instance
already got, do not invoke the regulator_get in the next.

Change-Id: I9daf98d212e67f29df3358fd04e7646fce97a25a
2013-03-04 09:11:46 -08:00
Jongrak Kwon
3190c37e63 mako: enable volume keys and rgb leds
Disabled unnecessary features in board definition files and
define RGB leds.

Change-Id: I5178eec0e6a62d3a1b113e5f5ede422fc40d1061
2013-03-04 09:11:45 -08:00
Jaeseong GIM
da8dc4323c mako: enable lgit lcd driver
bring-up lgit lcd for mako board.

Change-Id: I343064255935eacba4ea48bec4dbaff59fd7026d
Signed-off-by: Iliyan Malchev <malchev@google.com>
2013-03-04 09:11:42 -08:00
Jaeseong GIM
8b589d364f mako: enable lm3530 backlight driver
bring-up lm3530 backlight for mako board.

Change-Id: Ib1746f0ce13603e7f981e61f9b9ea83f91fa2b1a
2013-02-28 12:14:26 -08:00
Jongrak Kwon
000adcf065 mako: touch driver merge
- lge touch common driver
- synaptics touch driver integration with lge common driver

Change-Id: I72e53f8d16610155ab1a31a366e33910a41643be
2013-02-28 12:14:25 -08:00
Devin Kim
911aed249d mako: acpuclock-8960: Add PVS support on 8064
msm: acpuclock-8960: Add PVS support on 8064
Tianyi Gou <tgou@codeaurora.org>

PVS classification data is available for 8064. Therefore, add
this support in this patch.

Change-Id: I1b19171acb0e292f07935e39d6537bea9b8e4405
2013-02-28 12:14:25 -08:00
Jaeseong GIM
dec3684bfb mako: disable RTB for booting
RTB causes booting fail issue, because it records every register access.

Change-Id: I95ade61dc874c515cc9d332b97d0c93d93997fee
2013-02-28 12:14:25 -08:00
Devin Kim
e0c8d34749 mako: Increase LDO 25 voltage request from 1.225 V to 1.25 V
msm: board-8064: Increase LDO 25 voltage request from 1.225 V to 1.25 V
David Collins <collinsd@codeaurora.org>

Hardware characterization has shown that memory operates better
when its supply voltage (provided by LDO 25) is increased to
1.25 V. Therefore, increase the voltage constraints for LDO 25
so that 1.25 V is requested. This also requires modifying the
voltages requested by the consumers of LDO 25.

Change-Id: Ice86c3306ef9a2ffbc8b553666348f04443fd3fb
2013-02-28 12:14:25 -08:00
Devin Kim
1917cb28e6 mako: Remove 5V FRC gpio external regulator
msm: 8064-regulator: Remove 5V FRC gpio external regulator
Jay Chokshi <jchokshi@codeaurora.org>

On MPQ-8064, 5V FRC regulator coordinates with FRC
reset signal in certain timing sequence, which is
controlled by FRC driver powerup sequence. The FRC driver
is implemented in Userspace.

Since kernel claims the same GPIO line to control as a
gpio voltage regulator, FRC Userspace driver fails to
handle it. Relinquish the control of the gpio line
as there are no kernel clients of the gpio anyways.

Change-Id: Icc8560cfc52466c7f4f3a6463d408768f059fb2a
2013-02-28 12:14:24 -08:00
Devin Kim
cdd8e0323f mako: restart: use new restart infrastructure
msm: restart: use new restart infrastructure
Jeff Ohlstein <johlstei@codeaurora.org>

The hook for the restart function has been moved to the machine
descriptor, so clean this up for appropriate targets.

Change-Id: Ie7e0e7737d20881a080010ddc3dcee09f1ed7add
2013-02-28 12:14:24 -08:00
Devin Kim
9c32d5f545 mako: Overlap secure and non secure video firmware heaps.
board-8064 msm: Overlap secure and non secure video firmware heaps.
Hanumant Singh <hanumant@codeaurora.org>

Moves fixed area start address down, so that non secure
video firmware heap and secure video firmware area overlap.
Both use the region in a mutually exclusive manner.
ALso introduce a hole, that can be used by MM heap
lock down for content protection.

Change-Id: Icb653f3c0968e7cdc08edca85049ad3bb355cb70
2013-02-28 12:14:24 -08:00
Devin Kim
86e7561cc2 mako: Add cache dumping device for 8064
msm: Add cache dumping device for 8064
Laura Abbott <lauraa@codeaurora.org>

Add cache dumping support for 8064. This will dump the
L1 and L2 caches on panic and the L2 caches on an unexpected
reset.

Change-Id: I646cb1346975985c60e6526019abbbed21fd632c
2013-02-28 12:14:24 -08:00
Devin Kim
90b502b496 mako: temporarily enable fake display (for booting)
temporarily enable fake display for booting.

Change-Id: I55a5e11167c7c96c9de87952983c0189f2977f38
2013-02-28 12:14:24 -08:00
Devin Kim
03a9acbabb Add make_defconfig script
tools for save defconfig
$ ./make_defconfig.sh mako-perf_defconfig
it will update in arch/arm/configs

Change-Id: Ic4946b4ac020faf7026bde216b480994ff9a71a8
2013-02-28 12:14:23 -08:00
Devin Kim
06ce948e5c mako: temoprarily blocked mdp error message
blocked until enabling LCD. if not, too much errors in console

Change-Id: I38bc1bec4559f9d4d830d8f6e024cb5a121abf35
2013-02-28 12:14:23 -08:00
Devin Kim
ea89be9220 mako: initial bring up the mako hardware
support the initial mako hardware. enabled basic power, storage,
debug-uart.

Change-Id: Ie9f6d5ef1219cb0c3761bb69a3a8fcfdcbb86f19
2013-02-28 12:13:31 -08:00
Shubhraprakash Das
04f620de39 msm: kgsl: Map ebi memory to kernel
Implement the function to map ebi memory to the kernel.
This function is used when from postmortem or snapshot
when there is a hang and we are allocating memory from
kernel ebi space

Change-Id: I4f3e8b3fcb8c0107599ce3d3636c0ed33ace725a
Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
2013-02-27 18:21:37 -08:00
Vinay Kalia
1764bf5940 msm: vidc: Separate partition for shared memory
Create separate partition for shared command
queues. Virtual device addresses for shared
command queues need to be from upper 16MB
region of mon-secure virtual device address
space. This change creates a partition to
ensure this.

Change-Id: Iba22daf93b7d08c70f43685de7182a2f235a7690
Signed-off-by: Vinay Kalia <vkalia@codeaurora.org>
2013-02-27 18:21:37 -08:00
Hanumant Singh
e733efb493 msm: Fix for overflow cpu alive mask dump.
Remove unnecessary lines responsible for overflow.

Change-Id: Id30572d4b27870cfef292b9d5b4c5c89ecc73a75
Signed-off-by: Hanumant Singh <hanumant@codeaurora.org>
2013-02-27 18:21:36 -08:00
Hanumant Singh
6b2bb81491 msm: Turn off cpu alive mask messages.
Remove unnecessary, periodic print of cpu alive mask
as part of the petting logic.

Change-Id: I366f5107670b5d57742e168ac1f198acc68ba98c
Signed-off-by: Hanumant Singh <hanumant@codeaurora.org>
2013-02-27 18:21:35 -08:00
Michael Bohan
12eb83a820 platform: msm: Add driver for QPNP PMIC clkdiv peripherals
This driver supports the Qualcomm PNP clkdiv peripheral. It
allowed for configuring divide factors for various clock outputs
on the PMIC. The source clock is CXO.

The driver allows for configuration of the clkdiv device through
Device Tree. Some optional parameters may be specified instead at
runtime with the qpnp_clkdiv_config() API.

Change-Id: I393ed0e4389fb3c1dfe0bcdb40944102d2e09894
Signed-off-by: Michael Bohan <mbohan@codeaurora.org>
2013-02-27 18:21:35 -08:00
Adrian Salido-Moreno
371debce0b arm/dt: Move MDSS device nodes to separate dtsi file
Create new MDSS device node file to handle display specific
device nodes.

Change-Id: I04b4ee368b4fb4c532b467a19725c0db3f906bff
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
2013-02-27 18:21:35 -08:00
Chaithanya Krishna Bacharaju
2e868cd76c msm: audio: qdsp5: Add Support for AC3/EAC3 driver
Add new driver to support AC3/EAC3 playback.

Change-Id: I217d354d80ce1848e1c552416045a31b54a4a994
Signed-off-by: Chaithanya Krishna Bacharaju <chaithan@codeaurora.org>
2013-02-27 18:21:34 -08:00
Ashray Kulkarni
90752ebfb4 v4l2: Add mutex to streamon() and dqbuf()in v4l2 framework.
When v4l2 streamon() is called the framework moves to streamon state,
after queueing the buffer. A state check is performed during dqbuf().
Sometimes when dqbuf() is called streamon() function has not completed
setting the state transisiton flag. This results in failure to dqbuf() as
the framework has not moved to streamon. This patch adds a mutex
around state transitions and dqbuf() calls.

Change-Id: I0eadc4aaffbed62facd7dd250893e50448d7e52b
Signed-off-by: Ashray Kulkarni <ashrayk@codeaurora.org>
2013-02-27 18:21:34 -08:00
Kenneth Heitke
064dfc9c9e spi_qsd: set bus number based on the cell-index property
When using device tree, the bus number needs to be set based on the
cell-index property rather than the 'id' from the platform device.
This makes sure that the SPI bus number is set correctly.

Change-Id: I4489c28363a7fd79f3bc3db76207a1bc8ef507cb
Signed-off-by: Kenneth Heitke <kheitke@codeaurora.org>
2013-02-27 18:21:33 -08:00
Jayasena Sangaraboina
978b65ca45 ASoc: msm: Add low latency playback and recording support.
- Add lowlatency pcm driver for Playback and Recording.
- Add support in target board files
- Add Recording Path to Multimedia5 FE DAI
- Add support in routing, platform, machine drivers
- Add low latency interfaces support in ASM and ADM drivers.

Change-Id: I1beb11db9010534e5aa91179ac6040a41622185d
Signed-off-by: Jayasena Sangaraboina <jsanga@codeaurora.org>
2013-02-27 18:21:33 -08:00
Stepan Moskovchenko
d36cb2935a msm: timer: Add a stub for msm_timer_get_timer0_base
This function is not defined if native ARM timers are used,
leading to compilation errors in shared restart core.

Change-Id: Idbb393f9e5f884d31088be211a5456c1d76b5d02
Signed-off-by: Stepan Moskovchenko <stepanm@codeaurora.org>
2013-02-27 18:21:33 -08:00
Stepan Moskovchenko
4da9858a4c msm: iomap: Add mappings for the MPM PS_HOLD region
A static mapping is needed for PS_HOLD for increased
robustness of the restart code, especially during a kernel
panic.

Change-Id: I616d1a27024120a4c53d8dbc524c4c38349dc704
Signed-off-by: Stepan Moskovchenko <stepanm@codeaurora.org>
2013-02-27 18:21:32 -08:00
Praneeth Paladugu
f6827d5220 msm: vidc: Adds support for Rate Control
Adds support for Rate Control by setting correct
RC Mode and bit rate.

Change-Id: I0307417f3a517e0aa40f67c5d4835db3ef4ea444
Signed-off-by: Praneeth Paladugu <ppaladug@codeaurora.org>
2013-02-27 18:21:31 -08:00
Michael Bohan
a8deaf3447 gpio: qpnp-pin: Properly mask gpio get value
When gpios are set to input, we return the input buffer status
from the STATUS1 register when the 'get' gpiochip callback is
invoked. This register also includes a bit that indicates whether
the pin is enabled.

Check to verify the pin is enabled, and if it is then return the
properly masked 1-bit value. Otherwise return an error, since the
API is not valid in this state.

Change-Id: I715e17f076d0dbd67397812f98e308f863c59b7c
Signed-off-by: Michael Bohan <mbohan@codeaurora.org>
2013-02-27 18:21:31 -08:00
Michael Bohan
8dc45f1dc8 gpio: qpnp-pin: Fix bugs preventing MPP correctness
-fix address value updates when writing to register blocks
greater than 8 bytes.
-fix an invalid shift value being passed in for the 'invert' parameter.
-fix invalid use of MODE_CTL macros
-cleanup the control register read / write routines to
remove unused parameters.

Change-Id: I42223f30a8c6490370d9a8006ee13e028fe774e6
Signed-off-by: Michael Bohan <mbohan@codeaurora.org>
2013-02-27 18:21:30 -08:00
Pankaj Kumar
0ae4c556a7 msm: cpr: Add support for CPR in 8625
CPR (Core Power Reduction) is a new technology to reduce
the power consumption of SOC using sensors inside the SOC.
Based on the feedback by the CPR controller, we can adjust
the voltage requirement for the SOC.

Add initial driver support for CPR.

Change-Id: I4b59438deb2635c45e45c5efe850c050c14a9165
Signed-off-by: Pankaj Kumar <pakuma@codeaurora.org>
Signed-off-by: Sravan Kumar Ambapuram <asravan@codeaurora.org>
Signed-off-by: Kaushal Kumar <kaushalk@codeaurora.org>
2013-02-27 18:21:30 -08:00
Adrian Salido-Moreno
866e292afa defconfig: msm8974: enable genlock
Genlock is needed for synchronization of graphics buffers.

Change-Id: I00a9b54055dc89f6b34c60d543b7ec4e096a8fa7
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
2013-02-27 18:21:30 -08:00
Stephen Boyd
45d9286915 msm: Remove idle stats and cpuidle hooks
Calling RCU functions from within the RCU quiescent state is
illegal and probably a bug. The idlestats code uses an atomic
notifier called from msm_cpuidle_enter() and that atomic notifier
takes an rcu read lock. We could fix this with a raw notifier,
but this code is unused so let's just remove the code entirely.

Change-Id: I319f0eabb56a8721c19a3b2b4bc9a7f416c88384
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
2013-02-27 18:21:29 -08:00
Joonwoo Park
26a3b637b8 msm: add adsp loader driver
Add ADSP loader driver to bring ADSP out of reset on demand.
The MSM platforms that use APRv2 driver requires separate driver to
bring ADSP out of reset.

Change-Id: I7d64b0336fac76e71078a3bec0795007ee989643
Signed-off-by: Joonwoo Park <joonwoop@codeaurora.org>
2013-02-27 18:21:29 -08:00
Joonwoo Park
e212afbd12 msm: APRv2: Add APRv2 support
The MSM platforms that turn off LPASS core by default have to bring up
LPASS core prior to talk with it.
Current implementation is during bootup, before the slimbus slave device
is up, the slimbus master on apps would try to configure the slimbus
hardware.
Add APRv2 driver to let adsp loader to bring up LPASS core on and make
slimbus driver to configure hardware after bringing up LPASS core.

Change-Id: I9c45e229e6e4c5c142d8a327509d66d9662b52d4
Signed-off-by: Joonwoo Park <joonwoop@codeaurora.org>
2013-02-27 18:21:29 -08:00
Marek Szyprowski
5a28bdbf7c ARM: dma-mapping: remove offset parameter to prepare for generic dma_ops
This patch removes the need for the offset parameter in dma bounce
functions. This is required to let dma-mapping framework on ARM
architecture to use common, generic dma_map_ops based dma-mapping
helpers.

Background and more detailed explaination:

dma_*_range_* functions are available from the early days of the dma
mapping api. They are the correct way of doing a partial syncs on the
buffer (usually used by the network device drivers). This patch changes
only the internal implementation of the dma bounce functions to let
them tunnel through dma_map_ops structure. The driver api stays
unchanged, so driver are obliged to call dma_*_range_* functions to
keep code clean and easy to understand.

The only drawback from this patch is reduced detection of the dma api
abuse. Let us consider the following code:

dma_addr = dma_map_single(dev, ptr, 64, DMA_TO_DEVICE);
dma_sync_single_range_for_cpu(dev, dma_addr+16, 0, 32, DMA_TO_DEVICE);

Without the patch such code fails, because dma bounce code is unable
to find the bounce buffer for the given dma_address. After the patch
the above sync call will be equivalent to:

dma_sync_single_range_for_cpu(dev, dma_addr, 16, 32, DMA_TO_DEVICE);

which succeeds.

I don't consider this as a real problem, because DMA API abuse should be
caught by debug_dma_* function family. This patch lets us to simplify
the internal low-level implementation without chaning the driver visible
API.

Change-Id: I9a847e30f345bf5e69fded1747ff79057750fb66
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Tested-By: Subash Patel <subash.ramaswamy@linaro.org>
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
2013-02-27 18:21:28 -08:00
Marek Szyprowski
81fc7d89e7 ARM: dma-mapping: introduce DMA_ERROR_CODE constant
Replace all uses of ~0 with DMA_ERROR_CODE, what should make the code
easier to read.

Change-Id: I6c0fff904d8df3a9d2a8a727e62faf000a55c1b5
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Tested-By: Subash Patel <subash.ramaswamy@linaro.org>
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
2013-02-27 18:21:28 -08:00
Adrian Salido-Moreno
c5180403ed msm: mdss: fix suspend coming to MDP before panel drivers
If suspend event is received by MDP before panels, MDP needs to ensure
other panels are off before turning MDP clocks off. Remove handlers from
framebuffer driver and handle all suspend logic within MDP driver to
handle this scenario.

Change-Id: Idcda2dd29b28a9993edca78b7e0778985e44b664
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
2013-02-27 18:21:27 -08:00
Adrian Salido-Moreno
b6d7c6c8f9 msm: mdss: improve clock and bus scaling logic
Current clock logic only considers panel pixel clock to calculate mdp
clock speed, MDP clock speed should also consider other factors such
as surface scaling. Bus scaling should also consider surface scaling
factor. Update logic to consider these new factors and perform these
performance updates together.

Change-Id: If274a7f40f496e1a730e1d0e8d7c35fa4384a832
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
2013-02-27 18:21:27 -08:00
Marek Szyprowski
b172ee0dc3 ARM: dma-mapping: use pr_* instread of printk
Replace all calls to printk with pr_* functions family.

Change-Id: Id03dee8797cd736529ede3ef525a930b90a04042
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Tested-By: Subash Patel <subash.ramaswamy@linaro.org>
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
2013-02-27 18:21:27 -08:00
Marek Szyprowski
bacdd6a14e ARM: dma-mapping: use dma_mmap_from_coherent()
Change-Id: Ibc4086c0f48272356187966fce416a57160fab76
[lauraa: context conflicts]
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
2013-02-27 18:21:26 -08:00
Mona Hossain
3e4c65cb5a qseecom: Fix kernel panic
When qseecom_unload_app() is invoked, wait_event_freezable() is called
in an atomic context (within a spinlock).  wait_event_freezable() allows
sleep and should not  be called in an atomic context where sleep is not
allowed.

Change-Id: I8c9c6d28f9e492fbbf2ac74a5ee3d1067c7733ad
Signed-off-by: Mona Hossain <mhossain@codeaurora.org>
2013-02-27 18:21:26 -08:00
Bhakthavatsala Raghavendra
e1c9bdc3a9 Bluetooth: Enable BT&FM kernel modules for MSM8974
Enable the BT&FM modules for MSM8974's kernel configuration

Change-Id: Ia3c30b0f1a9ffed8ce9a49e2d7910c64b0729482
Signed-off-by: Bhakthavatsala Raghavendra <braghave@codeaurora.org>
2013-02-27 18:21:25 -08:00
Adrian Salido-Moreno
659be67242 msm: mdss: allocate framebuffer memory from ion pool
When panel size is increased dma_alloc_coherent is not able to find
a chunk of contiguous memory big enough to hold framebuffer, this causes
framebuffer initialization to fail. Allocate buffer from ion pool which
has reserved contiguous memory at earlier stage.

Change-Id: Ibf7e3f7fc2c7ad991d69c106bbb6a9dd4c7f0e79
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
2013-02-27 18:21:25 -08:00
Xiaobing Tu
7a899626b6 tty: hold lock across tty buffer finding and buffer filling
tty_buffer_request_room is well protected, but while after it returns,
 it releases the port->lock. tty->buf.tail might be modified
by either irq handler or other threads. The patch adds more protection
by holding the lock across tty buffer finding and buffer filling.

Signed-off-by: Alek Du <alek.du@intel.com>
Signed-off-by: Xiaobing Tu <xiaobing.tu@intel.com>
Cc: Jiri Slaby <jslaby@suse.cz>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Change-Id: I7561321a1e78c9730232f98085e01fc1749a48f5
CRs-Fixed: 387308
Signed-off-by: Vamsi Krishna <vskrishn@codeaurora.org>
2013-02-27 18:21:24 -08:00
Suman Tatiraju
eb44f614d6 msm: kgsl: Add GPU clock statistics.
The GPU clock statistics show the amount of time the
GPU was busy in the last one second and the time spent
at each individual clock level while it was busy.

Change-Id: I16f8973ca0c683d55406a1f37c1395cdfe43ef5a
Signed-off-by: Suman Tatiraju <sumant@codeaurora.org>
2013-02-27 18:21:24 -08:00