summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2011-11-02mmc: Fix pm_notifier obeying deferred resume (part 2)Dmitry Shmidt
Skip mmc_detect_change() in PM_POST_SUSPEND if Manual resume is used Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2011-11-02mmc: fix all hangs related to mmc/sd card insert/removal during suspend/resumeMaxim Levitsky
commit 4c2ef25fe0b847d2ae818f74758ddb0be1c27d8e upstream. If you don't use CONFIG_MMC_UNSAFE_RESUME, as soon as you attempt to suspend, the card will be removed, therefore this patch doesn't change the behavior of this option. However the removal will be done by pm notifier, which runs while userspace is still not frozen and thus can freely use del_gendisk, without the risk of deadlock which would happen otherwise. Card detect workqueue is now disabled while userspace is frozen, Therefore if you do use CONFIG_MMC_UNSAFE_RESUME, and remove the card during suspend, the removal will be detected as soon as userspace is unfrozen, again at the moment it is safe to call del_gendisk. Tested with and without CONFIG_MMC_UNSAFE_RESUME with suspend and hibernate. [akpm@linux-foundation.org: clean up function prototype] [akpm@linux-foundation.org: fix CONFIG_PM-n linkage, small cleanups] [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Maxim Levitsky <maximlevitsky@gmail.com> Cc: David Brownell <david-b@pacbell.net> Cc: Alan Stern <stern@rowland.harvard.edu> Cc: <linux-mmc@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Cc: Lee Jones <lee.jones@canonical.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-11-02mmc: core: Add deferred bus resume policy.San Mehat
A card driver can now specify that the underlying bus should *not* auto-resume with the rest of the system. This is useful for reducing resume latency as well as saving power when the card driver is not using the bus. In the future, we'll add support for manual suspend Signed-off-by: San Mehat <san@google.com>
2011-11-02ENGR00000001 Revert "mmc: core: Add deferred bus resume policy for android."Zhang Jiejing
This reverts commit 8ac7fbd32b8b72ccfd0511089e4fad2d828d8682. Conflicts: drivers/mmc/card/block.c Revert this commit because this patch changed in android 2.6.35 branch. I revert this patch and apply the new patch to avoid misunstanding. Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
2011-10-24ENGR00160401-1 usb: refine android gadget to support USB AccessoryXinyu Chen
Support different vendor/product id for different functions. Support USB connection status switch. Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
2011-10-24USB: gadget: f_accessory: Add string for accessory's unique serial numberMike Lockwood
Change-Id: I475072804e2134c971d45fdf77751791a1372bd6 Signed-off-by: Mike Lockwood <lockwood@android.com> Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org> Signed-off-by: Shruthi Krishna <skrish@codeaurora.org>
2011-10-24USB: gadget: f_accessory: Misc improvements and cleanup:Mike Lockwood
- Add URI string - Replace type string with a description string - Add a control call to retrieve accessory protocol version (currently 1) - Driver read() and write() calls now fail after USB disconnect until driver file is closed and reopened. - Misc cleanup work Change-Id: I966593522367b03613469fb2caed2e7f030fdf9a Signed-off-by: Mike Lockwood <lockwood@android.com> Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org> Signed-off-by: Shruthi Krishna <skrish@codeaurora.org>
2011-10-24USB: gadget: f_accessory: New gadget driver for android USB accesoriesMike Lockwood
Signed-off-by: Mike Lockwood <lockwood@android.com> [resolved conflicts in drivers/usb/gadget/Kconfig] Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org> Change-Id: I6da592d9b3e69c818fcd0c7cf223b52faaaed080 Signed-off-by: Shruthi Krishna <skrish@codeaurora.org>
2011-09-05net: Reorder incoming packets in PPPoLAC and PPPoPNS.Chia-chi Yeh
PPP handles packet loss but does not work with out of order packets. This change performs reordering of incoming data packets within a sliding window of one second. Since sequence number is optional, receiving a packet without it will drop all queued packets. Currently the logic is triggered by incoming packets, so queued packets have to wait till another packet is arrived. It is done for simplicity since no additional locks or threads are required. For reliable protocols, a retransmission will kick it. For unreliable protocols, queued packets just seem like packet loss. Time-critical protocols might be broken, but they never work with queueing anyway. Signed-off-by: Chia-chi Yeh <chiachi@android.com>
2011-09-05net: New iface_stat module to monitor persistent network statsAshish Sharma
Adding a new module that tracks the number of bytes/packets transfered by a network interface, even after the interface has been removed. This is relevant to track the total data usage in mobile devices whose interfaces are added and removed quite frequently (WiFi, Bluetooth, 3G,..). Monitoring is done only for devices that are configured with a valid IP address (check to exclude virtual/loopback/tunnel interfaces). Change-Id: I8ac642af1990433ebd0784e8dbd72bf0714b5bf6 Signed-off-by: Ashish Sharma <ashishsharma@google.com>
2011-09-05net: Add UDP stats and pkt count to uid_statAshish Sharma
Change-Id: If95374a6dbde66720a3c74b5b50cc7e774bbbbf8 Signed-off-by: Ashish Sharma <ashishsharma@google.com>
2011-09-05net: activity_stats: Add statistics for network transmission activityMike Chan
When enabled, tracks the frequency of network transmissions (inbound and outbound) and buckets them accordingly. Buckets are determined by time between network activity. Each bucket represents the number of network transmisions that were N sec or longer apart. Where N is defined as 1 << bucket index. This network pattern tracking is particularly useful for wireless networks (ie: 3G) where batching network activity closely together is more power efficient than far apart. New file: /proc/net/stat/activity output: Min Bucket(sec) Count 1 7 2 0 4 1 8 0 16 0 32 2 64 1 128 0 Change-Id: I4c4cd8627b872a55f326b1715c51bc3bdd6e8d92 Signed-off-by: Mike Chan <mike@android.com>
2011-09-02ENGR00153424-1 turn on ddr clock for audio buffers in external ramAlan Tull
Audio is broken if buffers are in external ram and the external ram clock is turned off. To fix it: * In platform data, ext_ram is replaced with two settings: ext_ram_rx and ext_ram_tx which control whether the buffer will be in iram or external ram. * imx-pcm.c no longer hardwired to put all capture streams in external ram. * if IRAM is disabled in the defconfig or if iram_alloc fails, then ext_ram_rx or ext_ram_tx are updated so they will show whether the buffers were allocated in external ram or iram. * During audio playback or capture, enable external ram clock if the buffer is in external ram. Signed-off-by: Alan Tull <alan.tull@freescale.com>
2011-07-01ENGR00152359-2 ipuv3: add VYU444 fmtJason Chen
1.add VYU444 fmt to support Sii902x hdmi yuv format 2.make pixel clock from internal ipu clock more accurate Signed-off-by: Jason Chen <b02280@freescale.com>
2011-06-24ENGR00152022 da9053: Fix a wrong macro definition of total register number.Wayne Zou
da9053: Fix a wrong macro definition of total register number, which leads to overwrite read pointer in struct da9052 when reading last register in da9053. Signed-off-by: Wayne Zou <b36644@freescale.com>
2011-06-20ENGR00151167 input: mpr121: add debug function and improve sensitivityZhang Jiejing
improve mpr121 capacitive key sensitivity by change threshold of release and touch and add a quick charge bit in init which is not documented in MPR121's data sheet. move macro define from header to source file. Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
2011-06-03ENGR00144287-2 header file: make hdmi work for both mx53 and mx50Jason Chen
After mx50 hdmi patches in, it make issues of mx53 platform. This patch fix such issues on mx53 like: 1. dual display will make edid video mode into both fb0 and fb1 2. after v4l2 output playback, fb0 will be blank. Signed-off-by: Jason Chen <b02280@freescale.com>
2011-06-03ENGR00142551-2 IPUv3 FB:Support HW triple bufferLiu Ying
This patch supports HW triple buffer for IPUv3 framebuffer. 1) Remove buf ready check in EOF irq handler, as we think the swap logic will not fail for HW triple buffer case. 2) When V4L2 output/overlay are used, switch to double buffer mode. 3) Changes IPU interface for IPUv1 framebuffer to pass building. Signed-off-by: Liu Ying <Ying.Liu@freescale.com> Signed-off-by: Jason Chen <b02280@freescale.com>
2011-06-03ENGR00142551-1 IPUv3:Support triple bufferLiu Ying
This patch supports IPUv3 triple buffer. Only channel 23, 27 and 28 are tested. Test was done on MX51 BBG and MX53 SMD. IPUv1 interface is changed accordingly to pass building. Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
2011-05-20ENGR00143697-2 Revert "ENGR00142551-2" for AndroidLiu Ying
This reverts commit fb0bc5a39d7d7ce9dc41e4775ae211c952a02658. Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
2011-05-20ENGR00143697-1 Revert "ENGR00142551-1" for AndroidLiu Ying
This reverts commit 91fa49f529b24f57eba1c0bdf234237829be362b. Conflicts: drivers/mxc/ipu3/ipu_common_tri_buf.c Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
2011-05-20ENGR00143296-2 Add Ripley mc34708 i2c driver supportZou Weihua -wayne zou
Add mc34708 i2c driver support for mx53 Ripley Quick Start board, and fix some compile warning. Signed-off-by: Zou Weihua -wayne zou <b36644@freescale.com>
2011-05-18ENGR00141131-2: MX53_ARD: MLB can't support 1024fs data transferTerry Lv
MLB can't support 1024fs data transfer. Need to enable MLBCLK_IN_INV in IOMUXC.IOMUXC_GPR0. Signed-off-by: Terry Lv <r65388@freescale.com>
2011-05-17ENGR00143396-1 Add DA9053 version detectionZhou Jingyu
Add DA9053 version detection Signed-off-by: Zhou Jingyu <Jingyu.Zhou@freescale.com>
2011-05-17ENGR00141552 ipuv3: fix display pin's power leakJason Chen
If you disable display, the display port's pin may keep high voltage which may cause power leakage. Fix this issue by make all pin go into low level after display disable. Signed-off-by: Jason Chen <b02280@freescale.com>
2011-05-16ENGR00143324-1 v4l2_capture: add camera rotate functionYuxi Sun
add four kinds of camera rotate function: rotate_none, rotate_vert rotate_horiz, rotate_180 Signed-off-by: Yuxi Sun <b36102@freescale.com>
2011-05-16ENGR00142551-2 IPUv3FB:Android support HW triple bufferLiu Ying
This patch supports HW triple buffer for IPUv3 framebuffer. 1) Remove buf ready check in EOF irq handler, as we think the swap logic will not fail for HW triple buffer case. 2) Sometimes HW doesn't clear buffer ready bit which is supposed to be, so we clear it in EOF handler to workaround it. 3) When V4L2 output/overlay are used, switch to double buffer mode. Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
2011-05-16ENGR00142551-1 IPUv3:Android support triple bufferLiu Ying
This patch supports IPUv3 triple buffer. Only channel 23, 27 and 28 are tested. Test was done on MX51 BBG and MX53 SMD. IPUv1 interface is changed accordingly to pass building. Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
2011-05-12ENGR00143239-1 MX53: add power off and reset functionZhou Jingyu
add power off interface for da9053 Signed-off-by: Zhou Jingyu <Jingyu.Zhou@freescale.com>
2011-05-09PM / Runtime: Fix pm_runtime_suspended()Rafael J. Wysocki
There are some situations (e.g. in __pm_generic_call()), where pm_runtime_suspended() is used to decide whether or not to execute a device's (system) ->suspend() callback. The callback is not executed if pm_runtime_suspended() returns true, but it does so for devices that don't even support runtime PM, because the power.disable_depth device field is ignored by it. This leads to problems (i.e. devices are not suspened when they should), so rework pm_runtime_suspended() so that it returns false if the device's power.disable_depth field is different from zero. Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Cc: stable@kernel.org
2011-05-08ENGR00143050-1 PMIC: Generalize the interface for PMIC via I2CRobby Cai
Abstract the interfaces in pmic_core_i2c.c, in order to accept new PMIC via I2C interface. Signed-off-by: Robby Cai <R63905@freescale.com>
2011-05-08ENGR00140983-4 - SII902X fb: Support HDMI driven through LCDIF moduleDanny Nold
- Defined new API to allow client display FB drivers to pass videomode information to the LCDIF. - SII902X added calls to enable/disable pins through platform-level function pointers. - Changed SII902X driver to ensure that HDMI detect routine gets called once FB is registered, if a hotplug interrupt has previously been detected. - Added call to display boot logo once FB is registered. - Modified LCDIF to incorporate videomodes passed in from client display FB drivers. Signed-off-by: Danny Nold <dannynold@freescale.com> (cherry picked from commit b78d67317ca2775920d8a988c243d51ffac00f22)
2011-05-08ENGR00140983-2 - FSL Devices: Add LCD device functions to enable/disable pinsDanny Nold
- Added function declarations to acquire/release/enable/disable device pins. Signed-off-by: Danny Nold <dannynold@freescale.com> (cherry picked from commit e4c417c322ec6d40ef373ac0f893d9d95e3f237c)
2011-05-08ENGR00141508-1 MX50 RD3: Add PMIC Ripley driverRobby Cai
Support Regulator, ADC, TouchScreen, Battery, RTC. PMIC issues are tracked on http://wiki.freescale.net/display/MADPlatMX508/RD3+board+Issues+Tracking Signed-off-by: Anson Huang <b20788@freescale.com> Signed-off-by: Zhou Jingyu <Jingyu.Zhou@freescale.com> Signed-off-by: Robby Cai <R63905@freescale.com> (cherry picked from commit 12156df7104dba860d59b4f3729bad220cb33711)
2011-05-08ENGR00141425-1 MX50: Restruct PMIC framework to accept new PMIC RipleyRobby Cai
- make MC13892 and MC34708 can co-exist, only one attached at run-time. - make the change as least as possible. - expect no functional impact (only SPI interface verified). Signed-off-by: Robby Cai <R63905@freescale.com> (cherry picked from commit fb123eee8b22774f491c0123cf4b6fb2befdd3e6)
2011-05-06ENGR00143019-1 GPU: add mxc_gpu_platform_data structureZhou, Jie
define mxc_gpu_platform_data data structure to transfer option values between kernel and gpu driver Signed-off-by: Zhou, Jie <b30303@freescale.com>
2011-05-05security: Add AID_NET_RAW and AID_NET_ADMIN capability check in ↵Chia-chi Yeh
cap_capable() for android. Signed-off-by: Chia-chi Yeh <chiachi@android.com>
2011-05-05Add android_aid.h for androidRobert Love
Add <linux/android_aid.h>, our mapping of AID defines to gid numbers. Signed-off-by: Robert Love <rlove@google.com>
2011-05-05net: PPPoPNS and PPPoLAC fixes for android.Chia-chi Yeh
* Fix a bitmask in PPPoPNS and rename constants in PPPoPNS and PPPoLAC. * Fix a potential deadlock while releasing PPPoLAC/PPPoPNS socket. PPP driver guarantees that no thread will be executing start_xmit() after returning from ppp_unregister_channel(). To achieve this, a spinlock (downl) is used. In pppolac_release(), ppp_unregister_channel() is called after sk_udp is locked. At the same time, another thread might be running in pppolac_xmit() with downl. Thus a deadlock will occur if the thread tries to lock sk_udp. The same situation might happen on sk_raw in pppopns_release(). * Force PPPoLAC and PPPoPNS to bind an interface before creating PPP channel. It is common to manipulate the routing table after configuring PPP device. Since both PPPoLAC and PPPoPNS run over IP, care must be taken to make sure that there is no loop in the routing table. Although this can be done by adding a host route, it might still cause problems when the interface is down for some reason. To solve this, this patch forces both drivers to bind an interface before creating PPP channel, so the system will not re-route the tunneling sockets to another interface when the original one is down. Another benefit is that now the host route is no longer required, so there is no need to remove it when PPP channel is closed. * Avoid sleep-inside-spinlock in PPPoLAC and PPPoPNS. Since recv() and xmit() are called with a spinlock held, routines which might sleep cannot be used. This issue is solved by following changes: Incoming packets are now processed in backlog handler, recv_core(), instead of recv(). Since backlog handler is always executed with socket spinlock held, the requirement of ppp_input() is still satisfied. Outgoing packets are now processed in workqueue handler, xmit_core(), instead of xmit(). Note that kernel_sendmsg() is no longer used to prevent touching dead sockets. In release(), lock_sock() and pppox_unbind_sock() ensure that no thread is in recv_core() or xmit(). Then socket handlers are restored before release_sock(), so no packets will leak in backlog queue. * Fix msg_iovlen in PPPoLAC and PPPoPNS. Although any positive value should work (which is always true in both drivers), the correct value should be 1. Signed-off-by: Chia-chi Yeh <chiachi@android.com>
2011-05-05net: add PPP on PPTP Network Server (PPPoPNS) driver for Android VPN.Chia-chi Yeh
Signed-off-by: Chia-chi Yeh <chiachi@android.com>
2011-05-05net: add PPP on L2TP Access Concentrator (PPPoLAC) driver for Android VPN.Chia-chi Yeh
Change-Id: I3ae3ee7520951ae24269db0ef2898c6455cf6bcc Signed-off-by: Chia-chi Yeh <chiachi@android.com>
2011-04-11ENGR00122019 SAHARA: Add padding around buffers to prevent cache incoherencyAnish Trivedi
Added padding of 64 bytes (cache line size for Cortex-A8) around buffers that are used by the hardware to prevent any cache coherency problems that could arise if buffers share a cache line with some other data that is used by the CPU. Signed-off-by: Anish Trivedi <anish@freescale.com>
2011-04-08ENGR00141478-2 SAHARA: Move header file to include directoryAnish Trivedi
The user mode libsahara library relied on header file drivers/mxc/security/sahara2/include/sahara.h. However, to make the lib build after headers_install step and to remove dependency on kernel source, moved this header to include/linux/mxc_sahara.h. These changes are specific to the include/linux folder. Signed-off-by: Anish Trivedi <anish@freescale.com> Acked-by: Lily Zhang
2011-03-28ENGR00141152-1 header file: make default display optionJason Chen
After this patch, default display for below platforms: mx51 bbg: DVI-XGA on DI0 mx53 ard: LVDS-XGA on DI0 mx53 evk: CLAA-WVGA on DI0 mx53 loco: VGA-XGA on DI1 mx53 smd: LVDS-XGA on DI1 The default options will work if you do not enter other video cmdline options. For platform need enable other drivers, it will enable it automatically. For example, under default option, mx53 loco will enable tve-vga driver automatically; before this patch, it need add 'vga' to cmdline to enable it. And 'di1_primary' option also will be enabled automatically if need. If you want to overwrite the default option, please refer to below: enable vga: 'vga' disable vga: 'vga=off' enable tve: 'tve' disable tve: 'tve=off' enable ddc: 'ddc' disable ddc: 'ddc=off' enable hdmi: 'hdmi' disable hdmi: 'hdmi=off' choose di0 as primary: 'di0_primary' choose di1 as primary: 'di1_primary' Signed-off-by: Jason Chen <b02280@freescale.com>
2011-03-21ENGR00140893-1 VPU: remove VPU IRAM config and add iram info to plat data.Sammy He
One kernel image is requested, however, we need to enable iram for performance improvement on mx53, and disable it on mx51 due to known issue. So use platform data to pass vpu iram disable/enable flag. And considering requested iram size also can be different per requirement, iram size is also set in platform data. Signed-off-by: Sammy He <r62914@freescale.com>
2011-03-14ENGR00140543 ISL29023:Add device head file to KbuildLiu Ying
This patch adds device head file to Kbuild to pass unit test build. Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
2011-03-10ENGR00140401 SET_BLOCKLEN shouldn't be sent when eanble DDRRichard Zhu
Customer provided this patch, the SET_BLOCKLEN shouldn't be sent when enable the DDR mode required by customer's iNand. Tested by customer on it's own board. BTW, this patch is not needed on 2.6.38 kernel, should be discarded after upgrade the kernel version. Signed-off-by: Richard Zhu <r65037@freescale.com>
2011-03-04ENGR00140086-1 - EPDC fb: Alternate buffer virtaul address handled incorrectlyDanny Nold
- Removed virtual address parameter (virt_addr) for alternate buffer feature, as it is no longer used. NOTE: This file was accidentally omitted from first commit for this CR. Signed-off-by: Danny Nold <dannynold@freescale.com>
2011-02-28ENGR00139383-1 Add ISL29023 light sensor supportLiu Ying
This patch adds ISL29023 light sensor support. Users may control the light sensor work at different modes/ranges/resolutions or read the lux value via sysfs. A power state node is also created in sysfs. If the light sensor works at ALS once mode, users need to power down/power up the sensor before read the lux value again. Currently, IR(Infra Red) mode is not supported. Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
2011-02-23ENGR00139643-2 header file: can not read edid at probe for first power onJason Chen
Need enable analog regulator. Signed-off-by: Jason Chen <b02280@freescale.com>