summaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2014-04-28ENGR00310741-2 enable gpu low memory killer for 3.10 kernel.Xiaowen Liu
add CONFIG_GPU_LOW_MEMORY_KILLER to default config. Signed-off-by: Xiaowen Liu <b37945@freescale.com>
2014-04-28ENGR00310742 [#1087] fixed gpu database query failureXianzhong
this patch fix gpu database query failure with gmem_info Date: Apr 28, 2014 Signed-off-by: Xianzhong <b07117@freescale.com> Acked-by: Jason Liu (cherry picked from commit e04a8681a977153c7adf34c36d7ee33218cfcab3)
2014-04-28ENGR00310741 enable gpu low memory killer for 3.10 kernel.Xiaowen Liu
rename CONFIG_ANDROID_RESERVED_MEMORY_ACCOUNT to CONFIG_GPU_LOW_MEMORY_KILLER. refine gpu low memory killer code. remove some unused code. move CONFIG_GPU_LOW_MEMORY_KILLER to gpu-viv Kconfig. Signed-off-by: Xiaowen Liu <b37945@freescale.com>
2014-04-25Merge remote-tracking branch 'remotes/fsl-linux-sdk/imx_3.10.31_1.1.0_alpha' ↵Ke Qinghua
into imx_3.10.y_android
2014-04-24ENGR00301281 media: mxc vout: set input resolution back after PP check/processLiu Ying
In VDOA PP mode, the input resolution would be changed to be VDOA's output for PP to use as its input resolution to go on to do resizing or color space conversion. The input resolution will be different from the original one when VDOA input cropping is enabled. And, this finally causes a wrong input resolution being used if the users do rotation by calling the S_CTRL ioctrl in runtime. In order to fix this issue, this patch sets the original input resolution back after PP task check and process. The issue can be reproduced by the following command line(enable VDOA mode in the gst plugin configuration file first): gplay AVC_MP30_854x356_23.976_679_AACLC_44.1_96_2_TRON_LEGACY.flv (Enter 't 90' to change to rotate 90 degrees in runtime.) In this case, VDOA input cropping(854x356 -> 848x352) is enabled because VDOA input resolution should align to macro block size. Signed-off-by: Liu Ying <Ying.Liu@freescale.com> (cherry picked from commit 4c732ad69265d8e441e6c15a2e87f5aeef234624)
2014-04-24ENGR00309915 [#1087] enhanced video memory mutexXianzhong
this patch can fix NULL pointer issue in GPU kernel driver with the following log [<7f240438>] (gckEVENT_AddList+0x0/0x810 [galcore]) from [<7f239ebc>] (gckCOMMAND_Commit+0xf28/0x118c [galcore]) [<7f238f94>] (gckCOMMAND_Commit+0x0/0x118c [galcore]) from [<7f2362dc>] (gckKERNEL_Dispatch+0x120c/0x24e4 [galcore]) [<7f2350d0>] (gckKERNEL_Dispatch+0x0/0x24e4 [galcore]) from [<7f222280>] (drv_ioctl+0x390/0x540 [galcore]) [<7f221ef0>] (drv_ioctl+0x0/0x540 [galcore]) from [<800facd0>] (vfs_ioctl+0x30/0x44) The false code is at 0x217bc where the 0-pointer happens (r3 = 0) gcuVIDMEM_NODE_PTR node = (gcuVIDMEM_NODE_PTR)(gcmUINT64_TO_PTR(Record->info.u.FreeVideoMemory.node)); 217b8: e5953028 ldr r3, [r5, #40] ; 0x28 if (node->VidMem.memory->object.type == gcvOBJ_VIDMEM) 217bc: e5932000 ldr r2, [r3] 217c0: e5922000 ldr r2, [r2] 217c4: e152000a cmp r2, sl { gcmkVERIFY_OK(gckKERNEL_RemoveProcessDB(Event->kernel, Date: Apr 23, 2014 Signed-off-by: Xianzhong <b07117@freescale.com> Acked-by: Jason Liu (cherry picked from commit 13859c2276997dbfd1b45aff1ff598e2ee1d4f74)
2014-04-24ENGR00309915 [#1087] enhanced video memory mutexXianzhong
this patch can fix NULL pointer issue in GPU kernel driver with the following log [<7f240438>] (gckEVENT_AddList+0x0/0x810 [galcore]) from [<7f239ebc>] (gckCOMMAND_Commit+0xf28/0x118c [galcore]) [<7f238f94>] (gckCOMMAND_Commit+0x0/0x118c [galcore]) from [<7f2362dc>] (gckKERNEL_Dispatch+0x120c/0x24e4 [galcore]) [<7f2350d0>] (gckKERNEL_Dispatch+0x0/0x24e4 [galcore]) from [<7f222280>] (drv_ioctl+0x390/0x540 [galcore]) [<7f221ef0>] (drv_ioctl+0x0/0x540 [galcore]) from [<800facd0>] (vfs_ioctl+0x30/0x44) The false code is at 0x217bc where the 0-pointer happens (r3 = 0) gcuVIDMEM_NODE_PTR node = (gcuVIDMEM_NODE_PTR)(gcmUINT64_TO_PTR(Record->info.u.FreeVideoMemory.node)); 217b8: e5953028 ldr r3, [r5, #40] ; 0x28 if (node->VidMem.memory->object.type == gcvOBJ_VIDMEM) 217bc: e5932000 ldr r2, [r3] 217c0: e5922000 ldr r2, [r2] 217c4: e152000a cmp r2, sl { gcmkVERIFY_OK(gckKERNEL_RemoveProcessDB(Event->kernel, Date: Apr 23, 2014 Signed-off-by: Xianzhong <b07117@freescale.com> Acked-by: Jason Liu (cherry picked from commit 13859c2276997dbfd1b45aff1ff598e2ee1d4f74)
2014-04-23ENGR00310027 net:fec: return the suitable value in irq handlerFugang Duan
The current return value is not right beacause there may have irq interrupt that is processed. So correct the return value. Signed-off-by: Fugang Duan <B38611@freescale.com>
2014-04-23ENGR00309812 HDMI: no audio output from HDMI TV.Xiaowen Liu
android framework need seperated hdmi display and hdmi audio switch. add lost code when do merge. Signed-off-by: Xiaowen Liu <b37945@freescale.com>
2014-04-22ENGR00302224-2 sensor:update driver to work in 3.10Jianzheng Zhou
Align new sensor driver with 3.0.15. and do some interface changes to make it work in 3.10. Signed-off-by: Jianzheng Zhou <jianzheng.zhou@freescale.com> Acked-by: Jason Liu
2014-04-22ENGR00309727 net:fec: fix mdio timeout issueFugang Duan
The issue can be reproduced after overninght test, reproduced step: nfs mount rootfs, don't do any other ethernet test cases. If the issue generates, there has log: fec 2188000.ethernet eth0: MDIO read timeout The origin interrupt handler may ignore to process mdio interrupt in current irq handler until the next irq action. If the next irq comes in time that is less than the mdio wait time, the next irq handler wake up a single thread waiting on this completion, MDIO read function can get the single before time expired. Otherwise, MDIO read generate timeout issue. The patch just to fix the issue. Signed-off-by: Fugang Duan <B38611@freescale.com>
2014-04-21ENGR00305254-9 imx6sx sarbesd board bring upKe Qinghua
Enable/disable USB gadget(MTP/ADB) wakelock when USB device connect/disconnect. Signed-off-by: Ke Qinghua <qinghua.ke@freescale.com>
2014-04-21cpufreq: interactive: remove compilation error from commitRuchi Kandoi
49cc72365fb7ee87762a7ccc6a32ef68627216c5 Change-Id: I068b18281d03ac879ef64d8ff36ed43367293767 Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
2014-04-21cpufreq: interactive: turn boost_pulse off on boost offRuchi Kandoi
Change-Id: I36fe217fa047d68ea90e78b12c7db4537ea8010b Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
2014-04-21cpufreq: interactive: restructure CPUFREQ_GOV_LIMITSBadhri Jagan Sridharan
The cpufreq_interactive_timer gets cancelled and rescheduled whenever the cpufreq_policy is changed. When the cpufreq policy is changed at a rate faster than the sampling_rate of the interactive governor, then the governor misses to change the target frequency for long duration. The patch removes the need of cancelling the timers when policy->min is changed. Signed-off-by: Badhri Jagan Sridharan <Badhri@google.com> Change-Id: Ibd98d151e1c73b8bd969484583ff98ee9f1135ef
2014-04-21video: adf: adf_memblock_export symbol should be exportedGreg Hackmann
Change-Id: I228db28da885b47b6fa9fc7e4001663797d24f49 Signed-off-by: Greg Hackmann <ghackmann@google.com>
2014-04-21video: adf: add buffer padding quirkGreg Hackmann
Quirks specify common behaviors that vary slightly among devices, and which ADF must account for. The buffer padding quirk captures the way different devices fetch the last scanline in a buffer: some devices fetch an entire line (including padding to the pitch) while others only fetch up to the visible width. ADF's buffer size validation now takes this quirk into account. Change-Id: I828b13316e27621d8a9efd9d5fffa6ce12a525ff Signed-off-by: Greg Hackmann <ghackmann@google.com>
2014-04-21video: adf: document adf_format_validate_yuv's originGreg Hackmann
Change-Id: I929045a96a56bdb2c915be92b8ef11b560f3ab79 Signed-off-by: Greg Hackmann <ghackmann@google.com>
2014-04-21ENGR00305254-7 imx6sx sarbesd board bring upKe Qinghua
Enable early suspend/late resume code Signed-off-by: Ke Qinghua <qinghua.ke@freescale.com> Acked-by: Jason Liu
2014-04-21of: Support CONFIG_CMDLINE_EXTEND config optionDoug Anderson
The old logic assumes CMDLINE_FROM_BOOTLOADER vs. CMDLINE_FORCE and ignores CMDLINE_EXTEND. Here's the old logic: - CONFIG_CMDLINE_FORCE=true CONFIG_CMDLINE - dt bootargs=non-empty: dt bootargs - dt bootargs=empty, @data is non-empty string @data is left unchanged - dt bootargs=empty, @data is empty string CONFIG_CMDLINE (or "" if that's not defined) The new logic is now documented in of_fdt.h and is copied here for reference: - CONFIG_CMDLINE_FORCE=true CONFIG_CMDLINE - CONFIG_CMDLINE_EXTEND=true, @data is non-empty string @data + dt bootargs (even if dt bootargs are empty) - CONFIG_CMDLINE_EXTEND=true, @data is empty string CONFIG_CMDLINE + dt bootargs (even if dt bootargs are empty) - CMDLINE_FROM_BOOTLOADER=true, dt bootargs=non-empty: dt bootargs - CMDLINE_FROM_BOOTLOADER=true, dt bootargs=empty, @data is non-empty string @data is left unchanged - CMDLINE_FROM_BOOTLOADER=true, dt bootargs=empty, @data is empty string CONFIG_CMDLINE (or "" if that's not defined) Signed-off-by: Doug Anderson <dianders@chromium.org> CC: devicetree-discuss@lists.ozlabs.org CC: Grant Likely <grant.likely@secretlab.ca> CC: Benjamin Herrenschmidt <benh@kernel.crashing.org> CC: Rob Herring <rob.herring@calxeda.com> Change-Id: I40ace250847f813358125dfcaa8998fd32cf7ea3 Signed-off-by: Colin Cross <ccross@android.com>
2014-04-21video: adf: ensure consistent alignment on userspace facing structsGreg Hackmann
64-bit types in structs create alignment problems when a 32-bit x86 userspace talks to an x86_64 kernel. In most cases the 64-bit types can be replaced with 32-bit ones, since they're being used for fds and should have been __s32 in the first place. For adf_vsync_event, alignment can be enforced by making the timestamp an __aligned_u64. Change-Id: I87cf73d8f57730bd7bb43ffce6b7b411eb0ff198 Signed-off-by: Greg Hackmann <ghackmann@google.com>
2014-04-21video: adf: replace fbdev helper's open flag with refcountGreg Hackmann
A device's fb_info is shared between clients. fb_release() is called when each client is released, not just the last one. Since the fbdev helper needs to release its dma-buf when the last client goes away, it must keep its own reference count. fbmem and fbcon hold different locks while calling fb_release(), so explicit locking is needed. Change-Id: I42cd659f7633adba7c11f407d4b594bd43305d6a Signed-off-by: Greg Hackmann <ghackmann@google.com>
2014-04-21ENGR00303524 Plugout HDMI while video playing, the audio is blocked.Shengjiu Wang
The requirement for Android is different. it need the driver exit ASAP. Don't block the user space, android will restart the driver in user space. Yocto need the driver to start the transfer by itself. Add a specific kernel config for this case. Signed-off-by: Shengjiu Wang <b02247@freescale.com>
2014-04-21staging: android: Fix typo in staging/androidMasanari Iida
Fix "with with" in debug message. Issue: ABIT-21 Change-Id: Icd0b195524f4c77272276991a1e8a00aecef65c9 Signed-off-by: Masanari Iida <standby24x7@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Qiming Shi <qiming.shi@intel.com> Signed-off-by: Jun Tian <jun.j.tian@intel.com>
2014-04-21video: adf: export the adf_attachment_allow symbol to modules.Alistair Strachan
There are no in-tree users of adf_attachment_allow, but out-of-tree modules want to use it. It looks like this function should be EXPORT_SYMBOL. Change-Id: Iad522dc5d32ac09fec6483bbc317db8ecae12e97 Signed-off-by: Alistair Strachan <alistair.strachan@imgtec.com>
2014-04-21drivers: usb: gadget: 64-bit related type fixesGreg Hackmann
Change-Id: I2f9b12e1e0cdfe64ffe20db78d319a6221821184 Signed-off-by: Greg Hackmann <ghackmann@google.com>
2014-04-21ENGR00299402-2 Enable miniPCIE 3G modem in 3.10 kernelguoyin.chen
Add Huawei's EM770W, EM750, E180 support in USB option drivers Signed-off-by: guoyin.chen <guoyin.chen@freescale.com>
2014-04-21ENGR00300035 add ion function for Linux 3.10 kernel upgrade.Liu Xiaowen
add ion function for Linux 3.10 kernel upgrade. Signed-off-by: Liu Xiaowen <b37945@freescale.com>
2014-04-21ENGR00300059 On 3.10.17 kernel, Camera can't preview in most resolutionsFang Hui
when queue buffer, just compare input size with cam->v2f.fmt.pix.sizeimage, don't with PAGE_ALIGN(cam->v2f.fmt.pix.sizeimage). Signed-off-by: Fang Hui <b31070@freescale.com>
2014-04-21ENGR00241962 Add another hdmi switch for hdmi driver.Liu Xiaowen
android framework need seperated hdmi display and hdmi audio switch. Signed-off-by: Liu Xiaowen <b37945@freescale.com>
2014-04-21ENGR00174893 video: create a symbol link to export disp dev info.Liu Xiaowen
Create symbol link to export display device's info in related framebuffer device sysfs dir: /sys/class/graphics/fbx/disp_dev -> hdmi device: /sys/device/platform/mxc_hdmi ldb device: /sys/device/platform/mxc_ldb mipi device: /sys/device/platform/mxc_mipi_dsi Signed-off-by: Liu Xiaowen <b37945@freescale.com>
2014-04-21Staging: android: binder: More offset validation.Arve Hjønnevåg
Make sure offsets don't point to overlapping flat_binder_object structs. Change-Id: I425ab0c46fbe2b00ed679c5becf9e8140395eb40 Signed-off-by: Arve Hjønnevåg <arve@android.com>
2014-04-21ENGR00295554 wifi:port realtek wifiJianzheng Zhou
port realtek wifi to work on 3.10 branch. Signed-off-by: Jianzheng Zhou <jianzheng.zhou@freescale.com> Acked-by: Jason Liu
2014-04-21ENGR00300018-2 Update USB and Power Manager driver for android linux kernel 3.10Ke Qinghua
Add USB ADB driver for android linux kernel 3.10 Signed-off-by: Ke Qinghua <qinghua.ke@freescale.com> Acked-by: Jason Liu
2014-04-21ENGR00300008-3 Update touch screen, backlight,video,sound driver for ↵Ke Qinghua
android linux kernel 3.10 Port TS driver for android linux 3.10 kernel Signed-off-by: Ke Qinghua <qinghua.ke@freescale.com>
2014-04-21ENGR00300008-2 Update touch screen, backlight,video,sound driver for ↵Ke Qinghua
android linux kernel 3.10 Port video driver for android linux 3.10 kernel Signed-off-by: Ke Qinghua <qinghua.ke@freescale.com>
2014-04-21video: adf: use %zu when printing size_tGreg Hackmann
Change-Id: I9cf7ebc368bad0a83db9e5aa370feadf117b21c0 Signed-off-by: Greg Hackmann <ghackmann@google.com>
2014-04-21video: adf: fix compat ioctls calling ioctl with wrong cmdGreg Hackmann
Change-Id: Icdbac3edd123b3114103dc138a60e6955006cda4 Signed-off-by: Greg Hackmann <ghackmann@google.com>
2014-04-21video: adf: use ADF_IOCTL_TYPE in compat ioctl definitionsGreg Hackmann
Change-Id: I7451a282d9d972c9957568b366c164b67b4b47e8 Signed-off-by: Greg Hackmann <ghackmann@google.com>
2014-04-21Staging: android: binder: Fix death notificationsArve Hjønnevåg
The change (008fa749e0fe5b2fffd20b7fe4891bb80d072c6a) that moved the node release code to a separate function broke death notifications in some cases. When it encountered a reference without a death notification request, it would skip looking at the remaining references, and therefore fail to send death notifications for them. Change-Id: I12083a50709ccc30ba11a5f4d9eeb5f0ff4471c6 Signed-off-by: Arve Hjønnevåg <arve@android.com>
2014-04-21fix false disconnect due to a signal sent to the reading processkeunyoung
- In the current implementation, when a signal is sent to the reading process, read is cancelled by calling usb_ep_dequeue, which lead into calling acc_complete_out with ECONNRESET, but the current logic treats it as disconnection, which makes the device inaccessible until cable is actually disconnected. - The fix calls disconnect only when ESHUTDOWN error is passed. - If data has already arrived while trying cancelling, the data is marked as available, and it will be read out on the next read. This is necessary as USB bulk is assumed to guarantee no data loss. Signed-off-by: keunyoung <keunyoung@google.com>
2014-04-21cpufreq: don't leave stale policy pointer in cdbs->cur_policyJacob Shin
Clear ->cur_policy when stopping a governor, or the ->cur_policy pointer may be stale on systems with have_governor_per_policy when a new policy is allocated due to CPU hotplug offline/online. [rjw: Changelog] Suggested-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Jacob Shin <jacob.shin@amd.com> Acked-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2014-04-21cpufreq: governors: Move get_governor_parent_kobj() to cpufreq.cViresh Kumar
get_governor_parent_kobj() can be used by any governor, generic cpufreq governors or platform specific ones and so must be present in cpufreq.c instead of cpufreq_governor.c. This patch moves it to cpufreq.c. This also adds EXPORT_SYMBOL_GPL(get_governor_parent_kobj) so that modules can use this function too. Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2014-04-21cpufreq: Add EXPORT_SYMBOL_GPL for have_governor_per_policyViresh Kumar
This patch adds: EXPORT_SYMBOL_GPL(have_governor_per_policy), so that this routine can be used by modules too. Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2014-04-21ARM: tegra: flounder: stick to 32bit binder for now.JP Abgrall
Signed-off-by: JP Abgrall <jpa@google.com>
2014-04-21Staging: android: binder: Support concurrent 32 bit and 64 bit processes.Arve Hjønnevåg
Add binder_size_t and binder_uintptr_t that is used instead of size_t and void __user * in the user-space interface. Use 64 bit pointers on all systems unless CONFIG_ANDROID_BINDER_IPC_32BIT is set (which enables the old protocol on 32 bit systems). Change BINDER_CURRENT_PROTOCOL_VERSION to 8 if CONFIG_ANDROID_BINDER_IPC_32BIT is not set. Add compat ioctl. Change-Id: Ifbbde0209da0050011bcab34c547a4c30d6e8c49 Signed-off-by: Arve Hjønnevåg <arve@android.com>
2014-04-21staging: android: binder: fix ABI for 64bit AndroidSerban Constantinescu
This patch fixes the ABI for 64bit Android userspace. BC_REQUEST_DEATH_NOTIFICATION and BC_CLEAR_DEATH_NOTIFICATION claim to be using struct binder_ptr_cookie, but they are using a 32bit handle and a pointer. On 32bit systems the payload size is the same as the size of struct binder_ptr_cookie, however for 64bit systems this will differ. This patch adds struct binder_handle_cookie that fixes this issue for 64bit Android. Since there are no 64bit users of this interface that we know of this change should not affect any existing systems. Change-Id: I8909cbc50aad48ccf371270bad6f69ff242a8c22 Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
2014-04-21staging: android: binder: fix binder interface for 64bit compat layerSerban Constantinescu
The changes in this patch will fix the binder interface for use on 64bit machines and stand as the base of the 64bit compat support. The changes apply to the structures that are passed between the kernel and userspace. Most of the changes applied mirror the change to struct binder_version where there is no need for a 64bit wide protocol_version(on 64bit machines). The change inlines with the existing 32bit userspace(the structure has the same size) and simplifies the compat layer such that the same handler can service the BINDER_VERSION ioctl. Other changes make use of kernel types as well as user-exportable ones and fix format specifier issues. The changes do not affect existing 32bit ABI. Change-Id: Icccc8d47c302930cc61cddc5749b4cc74dc84117 Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com> Acked-by: Arve Hjønnevåg <arve@android.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-04-21staging: android: binder: replace types with portable onesSerban Constantinescu
Since this driver is meant to be used on different types of processors and a portable driver should specify the size a variable expects to be this patch changes the types used throughout the binder interface. We use "userspace" types since this header will be exported and used by the Android filesystem. The patch does not change in any way the functionality of the binder driver. Change-Id: Ib26daab8bc44b92d4a09badc8ecb64d37ee8773b Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com> Acked-by: Arve Hjønnevåg <arve@android.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-04-21staging: android: binder: fix alignment issuesSerban Constantinescu
The Android userspace aligns the data written to the binder buffers to 4bytes. Thus for 32bit platforms or 64bit platforms running an 32bit Android userspace we can have a buffer looking like this: platform buffer(binder_cmd pointer) size 32/32 32b 32b 8B 64/32 32b 64b 12B 64/64 32b 64b 12B Thus the kernel needs to check that the buffer size is aligned to 4bytes not to (void *) that will be 8bytes on 64bit machines. The change does not affect existing 32bit ABI. Change-Id: I7535f07301519623ea6334f525d312d687407ed4 Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com> Acked-by: Arve Hjønnevåg <arve@android.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>