summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-08-05wandboard: modify mipi-csi to ipu mux setting3.0-wandboard-org-ts1John Weber
It appears that the default code copied from Freescale routes parallel CSI to IPU1, which is the IPU that we are using for MIPI-CSI. Change the route from parallel to MIPI
2013-08-04wandboard: Fix wand_reserve function for any wandboard versionStephan Rafin
(cherry picked from commit f77f22601e4f4bcbf3e14a48266a4fe3fa56e6e0)
2013-08-03wandboard: fix #ifdef to include line continuationJohn Weber
Fix error included when checkpatch errors were fixed
2013-08-03wandboard: Fix checkpatch errors and warningsJohn Weber
Running scripts/checkpatch.pl -f on baseboard-wand.c results in many formatting errors that are not critical but would cause some problems if we were to upstream this code.
2013-08-03wandboard: Remove hundreds of checkpatch errors warningswolfgar
2013-08-01wandboard: fix mipi-csi exclusion and reorgJohn Weber
Fix a small bug when excluding MIPI from the build configuration. There was a '2' missing at the end of the CONFIG_IMX_HAVE_PLATFORM_IMX_MIPI_CSI2 var. Also, reorganized the code so that all of the IPU capture, MIPI, and sensor init is called using wand_init_mipi_csi(), which is a stub now when MIPI is deslected.
2013-08-01Adapt video memory limit according to wandboard versionwolfgar
(cherry picked from commit 11a509c6d0958741af52fd85661c08975d1e271d)
2013-08-01Fix compilation when mipi-csi option is disabledwolfgar
2013-08-01Fix uninitialized variables warningswolfgar
2013-07-28Use 2GiB constant as memory limit for GPUwolfgar
(cherry picked from commit 1c1fd4c1721b3c778a583c41daaf6eaef86fc2f4)
2013-07-28Fix build when spdif support is not enabledwolfgar
(cherry picked from commit 65bdd402ba6967518794f3379339fb0a469a976c)
2013-07-28Enable to reserve GPU Memory in higher memory to avoid to shrink DMA zonewolfgar
(cherry picked from commit 26c6d7b49f9d59d43ec166a97eb2cb8d519d1441)
2013-07-28Set iMX6DQ/DL max speed back to 1GHzTapani
Commits 13c1310c and 7361e1f0 attempt to read undocumented memory bits (as of TRM released 2013-05-30) to determine CPU speed rating. This calculation appears to disable 1GHz mode for (some?) iMX6 Solo and DualLite CPUs sold by Freescale as 1GHz parts. This patch reverts the changes and hard-hacks the maximum speed to 1GHz for all iMX6 parts until more information is available. (cherry picked from commit 177c82740df1a817ccbe978ca687246e77a0718b)
2013-07-28Fix signal type for AUO 97G070 LVDS panelTapani
2013-07-28Add support for AUO 97G070 LVDS panelTapani
(cherry picked from commit 81a8ff3743ae3dd21b5a0225f1ecf6bc798cbad4)
2013-07-28Don't touch iMX6 SATA clock on other than iMX6Q.Tapani
The IOMUXC_GPR13 control register has different functionality on iMX6S/iMX6DL (cherry picked from commit 2a118bb2c07da80ad8906387d75c0b083ec9e619)
2013-07-28kernel header missing during installationjean charles mammana
Some video application require the "usb/video.h" header. So here the patch to add it during the kernel header installation : (cherry picked from commit c97d13e34c4f3d466cb3404e83a782ca11d3cf41)
2013-07-28Revert "ENGR00225875-2 i.MX6Q/Solo Sabreauto Bluetooth H4 fix uart rx timeouts."Tapani
This commit breaks Bluetooth UART connection on the WandBoard. This reverts commit e21b0b06f4b99a22f9cf5d63641c00a6d83d433a. (cherry picked from commit 7cdaeabf2df37efc5bc7d84319c58af8df6345a6)
2013-07-28brcmfmac: Handling the interrupt in ISR directly for non-OOBNi Wade
In case of inband interrupts, if we handle the interrupt in dpc thread, two level of thread switching takes place to process wifi interrupts. One in SDHCI driver and the other in Wifi driver. This may cause the system instability. Because the SDHCI calls sdio_irq_thread() to handle the irq, this thread locks mmc host and calls wifi handler. It expects WiFi handler to be quick and enables sdio interrupt from card at end. If wifi handler defers this work for a different thread, sdio_irq_thread() will be stuck on next wifi interrupt since mmc lock is not freed. Handling the interrupt in ISR directly will prevent thread context switching in wifi driver. It can fix the instability problems. Signed-off-by: Wei Ni <wni@nvidia.com> (cherry picked from commit c782ec69711573ee082fa78b80dae3897269266e)
2013-07-28[RFC PATCH] i2c-imx.c: Add support for I2C bus fault recoveryDavid Jander
In the event that a I2C bus is disturbed, for instance by a slave missing a clock pulse, it is desirable to have a way to get the bus back working other than by power-cycling the whole system. This patch makes it possible to to have a special function in board support code issue an I2C reset, since the IMX peripheral is not capable of doing this, and it needs to be done by bit-banging the corresponding pins in GPIO mode. The reset function needs to check if the bus is hung by checking the state of SDA and issue a reset by pulsing SCL a few times as long as SDA is low. Signed-off-by: David Jander <david@xxxxxxxxxxx> Conflicts: drivers/i2c/busses/i2c-imx.c (cherry picked from commit c1c409c8e9f96e1bd16717733c7456497b42d558)
2013-07-28Fix compile break in arch/arm/plat-mxc/dvfs_core.c when SMP is configured ↵Tapani
without CPU_FREQ Conflicts: arch/arm/plat-mxc/dvfs_core.c (cherry picked from commit 1195fac5d0324c267660b706f5e347e003728d13)
2013-07-28Fix compile break when OTG is used as gadget peripheral controllerTapani
(cherry picked from commit 59d6b4294f5f43c75a9cf4b3cc12bca9bf122e24)
2013-07-28sound/soc/imx: Make SGTL5000 selectable for any machineTapani
Previously the SGTL5000 was selectable only when certain machines were being built. Remove this option and make it manually selectable.
2013-07-28Fix compile break when sound is compiled as modules: ssi and esai were both ↵Tapani
compiled into the same module and both contain a module_init(). The fix is cleaning up sound/soc/imx/Makefile. A result is that HDMI config is not assumed always enabled. (cherry picked from commit 96b71a9a30690f3e4f8fed7e7b92dcbf7fc10a08)
2013-07-28Enable headphone jack by default on sgtl5000.Tapani
This patch reverts a change introduced by commit eec23c400e5c39ae338b9112031a302230220294 Conflicts: sound/soc/imx/imx-sgtl5000.c (cherry picked from commit 39405bfab671b5dbfc3ff7b41b77a0fc954b7824)
2013-07-28Revert "ENGR00171026 SGTL5000: remove mono support"Tapani
This reverts commit d6612bf5c36d7f93552921fcf09e29ad2b323413. (cherry picked from commit 1af57a1e6d9473a4de0c3708cfa50d9741d3d9b7)
2013-07-17Revert "gpu-viv: Avoid using uninitialized variables"John Weber
With the current default configuration, this commit is no longer needed. Avoid patching specialized driver files such as the GPU. This reverts commit c0fceed3315ed3167cd024a6b5a27b7c711a0d22.
2013-07-17wandboard: update defconfig fileJohn Weber
Update the wandboard defconfig file to reflect a closer alignment to the default configurations of the Freescale reference boards. Here is a high-level summary of changes: - Disable SWAP, as we do not have a swap partition - Enable/disable certain ARM errata workarounds - Enable audio and SGTL5000 - Build all cpufreq modes - Touchscreen and keyboard input support - DRM support converted from built-in to modules - Added some USB gadget support - Added default crypto options and hardware crypto support (FSL CAAM)
2013-07-17wandboard: adding Wandboard to list of SGTL5000 boardsJohn Weber
The sound subsystem Kconfig file uses MACH_<board> to select whether the SGTL5000 is selectable as a sound device. Add Wandboard to the list of boards that are used.
2013-07-17wandboard: add mipi csi supportJohn Weber
Adds MIPI-CSI support for Wandboard Upstream-Status: Inappropriate
2013-07-17wandboard: Add wireless support to defconfigJohn Weber
2013-07-17Add Broadcom FullMAC wireless driver, backported from kernel 3.5rc6Tapani
2013-07-17Remove old staging driver for Broadcom bcm4329 wifiTapani
(cherry picked from commit 076ad8b1528a6439e9bb629951d8fea6878d1dfc)
2013-07-17Remove brcm from staging area MakefileTapani
(cherry picked from commit 48df1ff3c9969b00f097b8030ce4c16d5aaeeb66)
2013-07-17Remove brcm config option from staging areaTapani
(cherry picked from commit 70a61be9a499b24484b4da3e1ea7f69f3c0c72dd)
2013-07-17ssi: add header fileJohn Weber
2013-07-17gpu-viv: Avoid using uninitialized variablesJohn Weber
2013-07-17wandboard: Add board supportJohn Weber
2013-07-16ENGR00271359 Add Multi-touch supportErik Boto
The previous behavior of the driver did not work properly with Qt5 QtQuick multi touch-point gestures, due to how touch-points are reported when removing a touch-point. My interpretation of the available documentation [1] was that the driver should report all touch-points between SYN_REPORTs, but it is not explicitly stated so. I've found another mail-thread [2] where the creator of the protocol states: "The protocol defines a generic way of sending a variable amount of contacts. The contact count is obtained by counting the number of non-empty finger packets between SYN_REPORT events."-Henrik Rydberg I think this verifies my assumption that all touch-points should be reported between SYN_REPORTs, otherwise it can not be used to obtain the count. [1] https://www.kernel.org/doc/Documentation/input/multi-touch-protocol.txt [2] http://lists.x.org/archives/xorg-devel/2010-March/006466.html Signed-off-by: Erik Boto <erik.boto@pelagicore.com> Signed-off-by: Mahesh Mahadevan <Mahesh.Mahadevan@freescale.com> (cherry picked from commit 7cba001c5a502680f6dbf902821726779a9c9287)
2013-07-15ENGR00271136 Fix build break when CONFIG_CLK_DEBUG is disabledMahesh Mahadevan
clk structure member name is defined only when CONFIG_CLK_DEBUG is enabled. Hence need to encapsulate the code with this config. Patch received from imx community: https://community.freescale.com/thread/308482 Signed-off-by: xiongweihuang Signed-off-by: Mahesh Mahadevan <Mahesh.Mahadevan@freescale.com>
2013-07-09ARM: 7670/1: fix the memset fixNicolas Pitre
Commit 455bd4c430b0 ("ARM: 7668/1: fix memset-related crashes caused by recent GCC (4.7.2) optimizations") attempted to fix a compliance issue with the memset return value. However the memset itself became broken by that patch for misaligned pointers. This fixes the above by branching over the entry code from the misaligned fixup code to avoid reloading the original pointer. Also, because the function entry alignment is wrong in the Thumb mode compilation, that fixup code is moved to the end. While at it, the entry instructions are slightly reworked to help dual issue pipelines. Signed-off-by: Nicolas Pitre <nico@linaro.org> Tested-by: Alexander Holler <holler@ahsoftware.de> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> (cherry picked from commit 418df63adac56841ef6b0f1fcf435bc64d4ed177)
2013-07-09ARM: 7668/1: fix memset-related crashes caused by recent GCC (4.7.2) ↵Ivan Djelic
optimizations Recent GCC versions (e.g. GCC-4.7.2) perform optimizations based on assumptions about the implementation of memset and similar functions. The current ARM optimized memset code does not return the value of its first argument, as is usually expected from standard implementations. For instance in the following function: void debug_mutex_lock_common(struct mutex *lock, struct mutex_waiter *waiter) { memset(waiter, MUTEX_DEBUG_INIT, sizeof(*waiter)); waiter->magic = waiter; INIT_LIST_HEAD(&waiter->list); } compiled as: 800554d0 <debug_mutex_lock_common>: 800554d0: e92d4008 push {r3, lr} 800554d4: e1a00001 mov r0, r1 800554d8: e3a02010 mov r2, #16 ; 0x10 800554dc: e3a01011 mov r1, #17 ; 0x11 800554e0: eb04426e bl 80165ea0 <memset> 800554e4: e1a03000 mov r3, r0 800554e8: e583000c str r0, [r3, #12] 800554ec: e5830000 str r0, [r3] 800554f0: e5830004 str r0, [r3, #4] 800554f4: e8bd8008 pop {r3, pc} GCC assumes memset returns the value of pointer 'waiter' in register r0; causing register/memory corruptions. This patch fixes the return value of the assembly version of memset. It adds a 'mov' instruction and merges an additional load+store into existing load/store instructions. For ease of review, here is a breakdown of the patch into 4 simple steps: Step 1 ====== Perform the following substitutions: ip -> r8, then r0 -> ip, and insert 'mov ip, r0' as the first statement of the function. At this point, we have a memset() implementation returning the proper result, but corrupting r8 on some paths (the ones that were using ip). Step 2 ====== Make sure r8 is saved and restored when (! CALGN(1)+0) == 1: save r8: - str lr, [sp, #-4]! + stmfd sp!, {r8, lr} and restore r8 on both exit paths: - ldmeqfd sp!, {pc} @ Now <64 bytes to go. + ldmeqfd sp!, {r8, pc} @ Now <64 bytes to go. (...) tst r2, #16 stmneia ip!, {r1, r3, r8, lr} - ldr lr, [sp], #4 + ldmfd sp!, {r8, lr} Step 3 ====== Make sure r8 is saved and restored when (! CALGN(1)+0) == 0: save r8: - stmfd sp!, {r4-r7, lr} + stmfd sp!, {r4-r8, lr} and restore r8 on both exit paths: bgt 3b - ldmeqfd sp!, {r4-r7, pc} + ldmeqfd sp!, {r4-r8, pc} (...) tst r2, #16 stmneia ip!, {r4-r7} - ldmfd sp!, {r4-r7, lr} + ldmfd sp!, {r4-r8, lr} Step 4 ====== Rewrite register list "r4-r7, r8" as "r4-r8". Signed-off-by: Ivan Djelic <ivan.djelic@parrot.com> Reviewed-by: Nicolas Pitre <nico@linaro.org> Signed-off-by: Dirk Behme <dirk.behme@gmail.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> (cherry picked from commit 455bd4c430b0c0a361f38e8658a0d6cb469942b5)
2013-07-05ENGR00269935 Fix the build breakMahesh Mahadevan
Add missing parenthesis Signed-off-by: Mahesh Mahadevan <Mahesh.Mahadevan@freescale.com>
2013-07-05ENGR00269604 Fix the set clock-rate for audio & videoMahesh Mahadevan
There is single method to set clock-rate for both audio and video pll-s in i.MX6q clock system implementation. That's possible due to they have similar set of registers with a different bases. But there is also one common register: CCM_ANALOG_MISC2, which contains post-dividers. In current implementation, independently of whether audio or video clock is going to be set, the mask 0xc0000000 is applied to MISC2 register. This means, that if the audio clock rate is changed, the video clock post-dividers possibly will be corrupted. This patch fixes the issue described above. Signed-off-by: Alexander Smirnov <alex.bluesman.smirnov@gmail.com> Signed-off-by: Mahesh Mahadevan <Mahesh.Mahadevan@freescale.com>
2013-06-20ENGR00267089 mx6: Amend the definitions of ANADIG_ANA_MISC2_REGx_STEP_TIME_MASKPeter Chan
Correct the definitions of ANADIG_ANA_MISC2_REG0_STEP_TIME_MASK and ANADIG_ANA_MISC2_REG2_STEP_TIME_MASK to 0x03000000 and 0x30000000 respectively Signed-off-by: Peter Chan <B18700@freescale.com>
2013-06-17ENGR00240112-2 crypto: caam: add ecb(aes) crypto algorithm to caam.Zhang Jiejing
add ecb(aes) support for caam algorithm, the caam H/W support both ecb and cbc, add the algorithm into template. Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
2013-06-17ENGR00240112-1 caam: fix user space crypto API support.Zhang Jiejing
This patch fix the CAAM support for Crypto User Space API support. in the dma_map_sg_chained() function, the chained mode will loop until the scatter list end, but when the scatter list end, it will return null and orignal code will set this to the sg list point used by dma_sync, so it will panic. When do chain dma, use a tmp do going through the list. Signed-off-by Zhang Jiejing <jiejing.zhang@freescale.com>
2013-06-17ENGR00181680-2 No audio when play 3 streams after 3~10 seconds sometimesb02247
sdma: bd is bufferable dma buffer, interrupt handler can not get correct data after sdma script updated. Which will cause there is no interrupt after failed period number times in the interrupt handler. This is a workaround. Signed-off-by: b02247 <b02247@freescale.com>
2013-06-17ENGR00181680-1 No audio when play 3 streams after 3~10 seconds sometimesb02247
sdma: bd is bufferable dma buffer, interrupt handler can not get correct data after sdma script updated. Which will cause there is no interrupt after failed period number times in the interrupt handler. This is a workaround. Signed-off-by: b02247 <b02247@freescale.com>
2013-06-09ENGR00266312 mx6dl: add i2c4 bus support for sabresd/auto, arm2 platformsFugang Duan
imx6dq have 3 i2c controllers and 5 ecspi,imx6dl have 4 i2c4 controllers and 4 ecspi. imx6dl i2c4 clock source is routed from pll3 through to ecspi_root gate. Add i2c4 bus support for sabresd/auto, and arm2 platforms. Signed-off-by: Fugang Duan <B38611@freescale.com>