- Current implementation supports only fixed buffer size
of 320 bytes only for audio recording. This results in
performance overhead for recording at higher sample rate.
- Added support for flexible period size so that user can
use larger buffers for recording at higher sample rates.
Signed-off-by: SathishKumar Mani<smani@codeaurora.org>
Signed-off-by: Iliyan Malchev <malchev@google.com>
Do not put sync point if it has been added to
a fence successfully in error handling
Signed-off-by: Ken Zhang <kenz@codeaurora.org>
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
irq enable and disable need to be called symmetrically.
Remove an extra dmap irq disable call.
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
We deleted some registers which isn't needed and reduced delay times.
It will be made sleep in/out duration time shorten.
Change-Id: I679c3a84313df394e5f0063513b1c014873bce2e
Sometimes OTP value cause an abnormal display initialization.
We don't use anymore otp register to fix this issue. And
We use default value instead of OTP value.
Change-Id: Iec5f18b8453ff60a397a0d0f6576c56b5b8926e5
When battery is forced to stop charging by overheat, re-charging
should not be initiated even if re-charging condition is satisfied.
Change-Id: I0070039a186ccf3f12c0e79a8696a7aa3c61e538
When usb mode is changed from MTP to Tethering, chg_gone_irq_handler is called
and then disconnect tethering by turning off ovpfet from unplug_ovp_fet_open.
So we add under threshold to protect this error while usb is being connected.
Change-Id: Id66a3db0822c291ba348cf93d2e7a72f6ae857ae
With the recent change in tabla shutdown, turning off the clocks
were being taken care after all the slimbus ports are closed.
But, there are instants where tabla startup is being called
during bootup, which keeps the runtime PM votes running,
and as there are no ports open, clocks are on all the time,
due to one of the votes. Bringing back tabla shutdown, but
turn off the clocks only if there are no slimbus ports
open at the time of shutdown, else it will taken care when
the slimbus ports are getting closed
Change-Id: Iaa9378b171d7c169a0f3306d55698e18d28dd111
CRs-fixed: 390003
Signed-off-by: Swaminathan Sathappan <Swami@codeaurora.org>
Signed-off-by: Ajay Dudani <adudani@codeaurora.org>
There are pretty long delay between cable plug-in and
image display on TV.
So this patch optimize the delay and remove unnecessary
register access.
Change-Id: I1fb334d9603c15bb3c0562cef852b1cc41d61e52
If preemted during ion_free after the refcount is updated but
before the handle can be removed from the rb_tree, import
might find that handle in the tree and try to reuse it
when execution returns to free, the handle will be cleaned
up leaving the caller of import with a corrupt handle.
This patch modifies the locking to protect agains this race.
Change-Id: I31d18cc6398f0ca18e05cd919e2bcf86fa18d568
CRs-Fixed: 385283
Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
[lauraa@codeaurora.org: Whitespace change and move unlock]
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
Signed-off-by: Ajay Dudani <adudani@codeaurora.org>
On windows 7 platform, previously allocated ip address is maintained.
However, Host MAC address of 'usb0' interface is changed when the
tethering driver re-enumerated. Thus, the tethering network driver
can't be allocated ip address from dhcp. It causes connection delay
between host and phone for usb tethering.
This patch prevents from changing Host MAC address of 'usb0' interface.
In other words, this patch maintains the Host MAC address allocated when
first tethering driver although the driver is re-enumerated. However,
after reboot, the Host MAC address can be changed.
Change-Id: I43add9925e9d6d90c56cffbd3ed999104448f818
During boot up, we observe random lines on screen between the
splash_screen image and the android animation. MDP clocks
were turned off during bootup. Fix this issue by enabling
the clocks when this feature is enabled.
Add check to see that the video mode engine is not busy before
turning off the dsi controller to avoid any underruns.
CRs-Fixed: 399634
Change-Id: I8fdb50fa848362a548b8cdd53ee1817346b57716
Signed-off-by: Chandan Uddaraju <chandanu@codeaurora.org>
earjack debugger driver can enable the uart console. so fsa8008 doesn't
need to enable the uart console. It will remove the noise.
Change-Id: I6a3880f40717329034631d4488dd7b376fff8ef6
A "usb0" interface that has never been connected to a host has an unknown
operstate, and therefore the IFF_RUNNING flag is (incorrectly) asserted
when queried by ifconfig, ifplugd, etc. This is a result of calling
netif_carrier_off() too early in the probe function; it should be called
after register_netdev().
Similar problems have been fixed in many other drivers, e.g.:
e826eafa6 (bonding: Call netif_carrier_off after register_netdevice)
0d672e9f8 (drivers/net: Call netif_carrier_off at the end of the probe)
6a3c869a6 (cxgb4: fix reported state of interfaces without link)
Fix is to move netif_carrier_off() to the end of the function.
Change-Id: Idf42a032774d652eeb1acb83df9d90789c10e183
Cc: stable@vger.kernel.org
Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
git://codeaurora.org/external/wlan/prima.git
2e61bd3 wlan: Release 3.2.1.3b
000442c RX async detect and reloading bug fix
ad02ec2 wlan: Release 3.2.1.3
a91fd8f Invalid WLAN driver reloading fix
a0ccd8a Handle WMM params when concurrent sessions are on the same channel
9f50814 Support for dynamic MC/BC HW filter setting
c9af20f wlan: Release 3.2.1.2
0cba033 prima: Revert log level changes
25d894e prima: p2p_discovery fails when wifi is set to 5GHz in advanced settings.
6e8d09b prima: Fix for driver crash if the nv file is old.
1872ee6 prima: Fix for scanning 5GHz upper band channels.
0cfe5a2 prima: Fix for a double free and recover logic in DXE
1e044e1 prima: Fix lock used while doing any modification on vos packet lists.
88a8d91 prima: Fixed problem of SAP stop beaconing after SSR
d405d83 prima: Enable statically linked driver to support FTM mode
ec808f6 prima: Clean the WDI global variables in shutdown method
ed6c480 prima: Handling De-auth from AP in Roaming State machines
7ca77d0 prima: CSR pre-auth timer is made larger than Lim timer
428bdf2 prima: Fix for memory corrution in TL.
624fd21 prima: Freeing the memory to avoid the memory leak
f7965a0 prima: Deregister with TL and flush all data packets prior to reassoc
56ff1f2 prima: MCC support for different beacon intervals
f3d6bac prima: Fix to avoid sleep in invalid context.
c4620d1 prima: Wlan host driver logging improvements
7b3b4a2 Changes related to BMPS workaround enable/disable dynamically
307e37b prima: Fix for crash in wlan_hdd_cfg80211_connect
18caa01 Revert "prima: Scan optimizations to support concurrency"
Signed-off-by: Iliyan Malchev <malchev@google.com>
Only enable the uart console when detected earjack debugger.
Uart signal interferes audio signal. you might listen to noise via
headset. So this patch fixes this issue.
Change-Id: I9174f0f243043138304aced16b49c70ce317a2de
Blt mode may be enabled during system suspend. Need to make
sure blt overlay done before turn off video/lcdc timig generator.
Change-Id: Iad54ee544499213bb7c9cfe60d00919f819aacb1
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
Add MSMFB_BUFFER_SYNC ioctl for the communication of
the acquired and released fence fd between kernel and hwc.
Wait for acquired fence before pan display.
Release the previous released fence after pan display
Change-Id: I6534aed574a025d948581e70465f06a86b46c868
Signed-off-by: Ken Zhang <kenz@codeaurora.org>
fix the issue when changing camera mode between still shot mode and
record mode, preview frames are not come out sometimes.
Change-Id: I0369c72c540713cb8e938e0915ee156b41d898a5
The dup and has_signaled functions are not called outside kgsl_sync.c
Change-Id: I69d746f4e4acae9b4f5a3a2cac79ac812e5eff5c
Signed-off-by: Jeff Boody <jboody@codeaurora.org>
The compare callback is required to test the order that
sync pts will signal. Failing to implement the compare
callback results in kernel panics for some use cases.
Change-Id: Ibea1497c12fd8cc66087ff52d3709a07793f215f
Signed-off-by: Jeff Boody <jboody@codeaurora.org>
git://codeaurora.org/external/wlan/prima.git
commit 1a5942e30953311dce805e6b3b473bf1baea2c2d
Author: Jeff Johnson <jjohnson@codeaurora.org>
Date: Wed Sep 19 08:54:34 2012 -0700
prima: Scan optimizations to support concurrency
New Features:
1. Sessionize SME scan cache
2. Separate beacon & porbe rsp entry for PE scan cache
3. Enable scan break down logic in SME for multi-session
Fixes:
The change fixes issue with host initiated scans interferring with WFD
connection and causing jitter in the video stream on the WFD
connection. This partially addresses b/7138968.
Signed-off-by: Iliyan Malchev <malchev@google.com>
The following changes were merged in this release:
-- Scan optimizations to support concurrency:
New Features:
1. Sessionize SME scan cache
2. Separate beacon & porbe rsp entry for PE scan cache
3. Enable scan break down logic in SME for multi-session
Fixes:
The change fixes issue with host initiated scans interferring with WFD
connection and causing jitter in the video stream on the WFD
connection
-- IMPS mode, TX COMP interrupt flooding fix:
To stop TX COMP interrupt with IMPS mode, RIVA shuld power down. But
whatever reason, if RIVA could not power down, TX COMP INT could not
be cleared and infinite INT may happen
-- Fix for issue RIVA does not seem to be getting into BMPS mode:
The reason riva does not enter in to power save is because after the
connection to the AP (Configured 40Mhz channel in 2.4Ghz) the driver
sends the invalid cb mode in the finish scan request to the Riva if we
are in scan window. The issue does not show up if we are not in scan
window.
The reason driver sends the invalid cb mode is because after receiving
the join beacon the variable psessionEntry->htSecondaryChannelOffset
in the function limCheckAndAnnounceJoinSuccess is over writing with
the AP secondary offset.
Signed-off-by: Iliyan Malchev <malchev@google.com>
Clear original pipe attributes in the pipe free call.
Change-Id: I776869e7997e5b70e4c2b102e1a394034247bbcd
Signed-off-by: Kalyan Thota <kalyant@codeaurora.org>
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
Use wait_for_completion_timeout instead of wait_for_completion
not to stuck in the kernel even when the DMA fails.
Change-Id: I29702c3c62f78399c173d660bbbc17a07ed27468
Signed-off-by: Iliyan Malchev <malchev@google.com>
Preserve original dsi-off sequence to remove DMA failure. Previously the power
off sequence was modified to resolve display turn on/off issue, but the changes
were not necessary in current kernel and just caused side effects which
resulted in fb_blank being stuck due to occasional DMA failures.
This reverts commit e1a9b1bda7691e4f62728d09e1993eb9ae9db8d6.
Change-Id: Ia0a60cfdf697675d34066852f106d9e37578073d
Signed-off-by: Iliyan Malchev <malchev@google.com>
Preserve original mdp off sequence to remove DMA failure. Previously the power
off sequence was modified to resolve display turn on / off issue, but the
changes is not necessary in current kernel and just causes side effects
resulting in fb_blank being stuck due to occasional DMA failures.
This reverts commit 0b3bc7e958f98432538a8537739fbaa560761434.
Change-Id: Ia82fb79b56b57f6696c55d9b079eeadebe8c40bf
Signed-off-by: Iliyan Malchev <malchev@google.com>
There are more sensors on APQ8064 and MSM8930 whose status registers are to be
read and checked against enabled sensors if thresholds interrupts are crossed.
This causes delay in processing the ISR before it is returned causing other
timer events to be delayed.
Fix this by performing the status register reads for the sensors in a separate
workqueue.
CRs-Fixed: 390508
Change-Id: I7b254d0d73dfefb667e7bf9484ae704fe4ff38a8
Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
Signed-off-by: Ajay Dudani <adudani@codeaurora.org>
Signed-off-by: Iliyan Malchev <malchev@google.com>
The Android sync point framework will replace the synchronization
previously implemented by genlock. This change implements the KGSL
component of the sync point framework by creating a fence that is
automatically signaled by KGSL when it's timestamp expires. The
fence FD is returned to the user driver so that another process
can wait for the sync point.
Change-Id: Ifee38dfde00e551f3524f7a37833938dcdb64905
Signed-off-by: Jeff Boody <jboody@codeaurora.org>
You can set the value of amp from 0 to 100.
If you want to vibrate inversely, you can set from 0 to -100.
Change-Id: Icdb392d1601aa61f41a9f22e3c070a86723bacfd
Non-root user-space processes can send Netlink messages to other
processes that are well-known for being subscribed to Netlink
asynchronous notifications. This allows ilegitimate non-root
process to send forged messages to Netlink subscribers.
The userspace process usually verifies the legitimate origin in
two ways:
a) Socket credentials. If UID != 0, then the message comes from
some ilegitimate process and the message needs to be dropped.
b) Netlink portID. In general, portID == 0 means that the origin
of the messages comes from the kernel. Thus, discarding any
message not coming from the kernel.
However, ctnetlink sets the portID in event messages that has
been triggered by some user-space process, eg. conntrack utility.
So other processes subscribed to ctnetlink events, eg. conntrackd,
know that the event was triggered by some user-space action.
Neither of the two ways to discard ilegitimate messages coming
from non-root processes can help for ctnetlink.
This patch adds capability validation in case that dst_pid is set
in netlink_sendmsg(). This approach is aggressive since existing
applications using any Netlink bus to deliver messages between
two user-space processes will break. Note that the exception is
NETLINK_USERSOCK, since it is reserved for netlink-to-netlink
userspace communication.
Still, if anyone wants that his Netlink bus allows netlink-to-netlink
userspace, then they can set NL_NONROOT_SEND. However, by default,
I don't think it makes sense to allow to use NETLINK_ROUTE to
communicate two processes that are sending no matter what information
that is not related to link/neighbouring/routing. They should be using
NETLINK_USERSOCK instead for that.
Change-Id: Ib1c38cb798391b51dedddf62a862346d36119ec7
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Pablo Neira Ayuso discovered that avahi and
potentially NetworkManager accept spoofed Netlink messages because of a
kernel bug. The kernel passes all-zero SCM_CREDENTIALS ancillary data
to the receiver if the sender did not provide such data, instead of not
including any such data at all or including the correct data from the
peer (as it is the case with AF_UNIX).
This bug was introduced in commit 16e5726269
(af_unix: dont send SCM_CREDENTIALS by default)
This patch forces passing credentials for netlink, as
before the regression.
Another fix would be to not add SCM_CREDENTIALS in
netlink messages if not provided by the sender, but it
might break some programs.
With help from Florian Weimer & Petr Matousek
This issue is designated as CVE-2012-3520
Change-Id: Id4f36301d407ef5c8218c5ef9f66d299766cdf57
Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Petr Matousek <pmatouse@redhat.com>
Cc: Florian Weimer <fweimer@redhat.com>
Cc: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
msleep in the panic handler causes another panic.
bad: scheduling from the idle thread!
[<c00144ac>] (unwind_backtrace+0x0/0x11c)
[<c00a4a08>] (dequeue_task_idle+0x18/0x28)
[<c009f864>] (dequeue_task+0xb0/0xc0)
[<c08294d4>] (__schedule+0xfc/0x6d4)
[<c0828294>] (schedule_timeout+0x2fc/0x358)
[<c0085804>] (msleep+0x14/0x20)
[<c0057368>] (ssr_panic_handler+0x24/0x44)
[<c082cf90>] (notifier_call_chain+0x38/0x68)
[<c082cff4>] (__atomic_notifier_call_chain+0x34/0x44)
[<c082d018>] (atomic_notifier_call_chain+0x14/0x18)
[<c081e814>] (panic+0xb0/0x1d8)
[<c0011bb4>] (die+0x1d0/0x218)
[<c081e498>] (__do_kernel_fault.part.8+0x54/0x74)
[<c082ce5c>] (do_page_fault+0x39c/0x3c0)
[<c0008524>] (do_PrefetchAbort+0x34/0x98)
this panic loop is not terminated until watchdog timer expiration.
msleep is replaced by mdelay. it should be checked if this 3 seconds
delay is reqired or not.
CONFIG_MSM_JTAG causes data abort in some case. for JTAG debugging
and tracing across power collapse, disable this feature.
Change-Id: I1c71dc45763a39e1dd61889ed119e8de402a7ae2